|
[ На главную ] -- [ Список участников ] -- [ Правила форума ] -- [ Зарегистрироваться ] |
On-line: |
Game Maker Форум / Вопросы и Ответы (Для Опытных) / Кривой Тайл |
Страницы: 1 2 Next>> |
Автор | Сообщение | |
CRYSTALL m маэстро Группа: Сообщество GM Сообщений: 812 |
Добавлено: 09-10-2006 04:15 | |
Вообщем вот что я делаю: Я в мапере создаю карту - загружаю бэкграунды и каждому объекту назначаю рисование его части их 4 вида: сурфэсы, тайлы и 2 вида стен. Далее я сохраняю всё это в виде скрипта добавления объектов и тайлов в комнату и создание сурфъйсы-бэкграунда. Так вот когда я загружаю карту, то вроде всё нормально, пока не замечаю, что тайлы РАЗНОЦВЕТНЫЕ!!! Добавляю я их функцией room_tile_add()... Это функция рабоет, когда мы ещё не находимся в новой комнате. Как убрать этот косяк? |
||
DreamRunner магистр Группа: Сообщество GM Сообщений: 320 |
Добавлено: 09-10-2006 05:17 | |
слушайте, а откудова пошёл этот изврат писать в файле карты уже готовые команды? Там должны быть только координаты, хотя мне до лампочки) Сюда кинь пару строк из файла карты пока что) |
||
Mitrul гроссмейстер Группа: Сообщество GM Сообщений: 254 |
Добавлено: 09-10-2006 16:54 | |
Раз уж название подходит, чтобы не создавать темы напишу сюда... Можно ли какимнибудь способом поворачивать тайл? |
||
DG Soft popww Группа: Администраторы Сообщений: 736 |
Добавлено: 09-10-2006 17:09 | |
Ну вот tile_set_position(id,x,y), но интерактивна ли функция, я незнаю, надо и самому попробовать | ||
CRYSTALL m маэстро Группа: Сообщество GM Сообщений: 812 |
Добавлено: 09-10-2006 19:59 | |
Вообщем вот эта функция. room_tile_add(ActiveRoom,global.tbk[3],0,0,32,32,192,0,-32);
А ты как предлогаешь? Писать координаты? А кусок бэкграунда и ширину и длинну тайла дядя Вася писать будет? По моему куда проще воткнуть кусок кода, чем каким то извратным способом его считывать из файла. Файл выглядит так: //Установка параметров комнаты room_set_width(ActiveRoom,640); room_set_height(ActiveRoom,480); //Загрузка нужных бэкграундов global.tbk[0]=background_add("Tiles\TlWalls.bmp",0,0,1); global.tbk[1]=background_add("Tiles\TlBack.bmp",0,0,1); global.tbk[2]=background_add("Tiles\TlEmpty.bmp",0,0,1); global.tbk[3]=background_add("Tiles\TlNew.bmp",1,0,1); //Здесь идёт рисование поверхности global.bk=surface_create(640,480); surface_set_target(global.bk) draw_background_part(global.tbk[2],128,0,32,32,64,64); surface_reset_target() //Далее создание стен room_instance_add(ActiveRoom,16,16,Wall2); room_instance_add(ActiveRoom,48,16,Wall2); //Создание тайлов room_tile_add(ActiveRoom,global.tbk[3],0,0,32,32,192,0,-32); //Добавлеие главного персонажа room_instance_add(ActiveRoom,144,144,Tank); |
||
DreamRunner магистр Группа: Сообщество GM Сообщений: 320 |
Добавлено: 09-10-2006 20:45 | |
так. а что значит получаются цветные тайлы? | ||
snack_aae магистр Группа: Сообщество GM Сообщений: 316 |
Добавлено: 10-10-2006 08:42 | |
А если их через ГМ (без кода) поставить, они тоже цветные? | ||
CRYSTALL m маэстро Группа: Сообщество GM Сообщений: 812 |
Добавлено: 10-10-2006 19:32 | |
Видите две разноцветные полосы?
Нет, всё нормально. Весь прикол, что это только с тайлами. Сурфэйс нормально грузится. |
||
snack_aae магистр Группа: Сообщество GM Сообщений: 316 |
Добавлено: 12-10-2006 08:27 | |
Тогда не знаю в чём проблемма??? | ||
DreamRunner магистр Группа: Сообщество GM Сообщений: 320 |
Добавлено: 12-10-2006 08:50 | |
CRYSTALL m, а у тебя есть картинки с такими цветами как на полосах? И при движении вида что с полосами происходит? Попробуй выдвинуть тайлы на самый передний план, не грузить часть тайлов. короче отключить всё и включать постепенно пока глюк не проявится. | ||
CRYSTALL m маэстро Группа: Сообщество GM Сообщений: 812 |
Добавлено: 12-10-2006 19:45 | |
Нет. Бэкграунд грузится из файла, а потом из этого бэкгракнда выдираются куски и либо рисуются на сурфэйсе либо делаются тайлом. Так вот косячит именно делание тайлом.
Я немного не понял тебя... С каждым запуском расцветка разная. Ди и цветные только тайлы, т.е. эти две полосы - тайлы(больше тайлов в комнате нет), а всё остальное либо спрайты стен, либо сурфэйс. |
||
snack_aae магистр Группа: Сообщество GM Сообщений: 316 |
Добавлено: 13-10-2006 07:53 | |
Сделай тайлы сурфейсами и не заморачивайся... | ||
CRYSTALL m маэстро Группа: Сообщество GM Сообщений: 812 |
Добавлено: 13-10-2006 19:39 | |
Понимаешь, в игре тайлы играют роль верхнего бэкграунда... Хотя довольно хорошая идея - экономия памяти. Рисуем только видимый кусок сурфэйса. Однако следует понять что за косяк. Это косяк Гм или же у программиста кривые руки. Это сводится к вопросу Кривой тайл или кривой программист. |
||
CRYSTALL m маэстро Группа: Сообщество GM Сообщений: 812 |
Добавлено: 14-10-2006 19:03 | |
Хотя нет. Сурфэйсами не получится. У меня тайлы прозрачные, а сурфэйс будет закрывать весь экран, ну если только нелзя сделать так, чтоб сурфэйс стал тоже прозрачным. | ||
snack_aae магистр Группа: Сообщество GM Сообщений: 316 |
Добавлено: 15-10-2006 10:09 | |
Можно использовать сурфейс как карту прозрачности, и создавать с неё спрайт... короче всё это есть в примере с разрушаемым ландшафтом, или с рахрушаемыми стенами (я покрайней мере знаю только эти два примера с сурфейсами). | ||
CRYSTALL m маэстро Группа: Сообщество GM Сообщений: 812 |
Добавлено: 16-10-2006 04:49 | |
Хочешь сказать, что я могув редакторе создать большой спрайт, который создаётся с сурфэйса - это спрайт маски. Далее при загрузке уровня я создаю с сурфэйса ещё один спрайт и для него загружаю карту. И если рисовать часть спрайта можно выиграть в оптимизации... | ||
snack_aae магистр Группа: Сообщество GM Сообщений: 316 |
Добавлено: 16-10-2006 08:08 | |
Кстати... вроде можно задавать тайлам цвет... попробуй всем белый задать... | ||
CRYSTALL m маэстро Группа: Сообщество GM Сообщений: 812 |
Добавлено: 16-10-2006 19:37 | |
Уже смотрел. Не помогло. Я думаю твой способ лучше. Буду экономить память. У меня получится 2 сурфэйса, а отображать я буду только ту часть, которая находится в виде. | ||
CRYSTALL m маэстро Группа: Сообщество GM Сообщений: 812 |
Добавлено: 28-10-2006 04:55 | |
Ура1 Я победил!!! Вместо создания тайлов в комнате я создаю в комнате объект и назначаю ему в креат создание тайлов, теперь всё оьлично Только вот не понимаю, почемуне работает функция tile_set_blend(ind,blrnd_color) если мы создаём его в другой комнате. room_tile_add должен возвращать id тайла, нг ГМ пишет ошибку. Тайла не существует. |
||
DreamRunner магистр Группа: Сообщество GM Сообщений: 320 |
Добавлено: 28-10-2006 19:28 | |
потому что тайл ты создаёшь в другой комнате, а блендить пытаешься в настоящей. |
Страницы: 1 2 Next>> |
Game Maker Форум / Вопросы и Ответы (Для Опытных) / Кривой Тайл |