Obi-Wanya
Создание игр
10.01.13
MegaKerma: Создание колышащейся травы без использования навыка моделирования
Недавно я начал осваивать очень интересный и простой конструктор - MegaKerma и теперь хочу поделиться своими скромными знаниями со всеми, кто хотел бы создать свою игру с помощью этого конструктора, но еще не уверен в своих силах.
А начнем мы с создания простенькой колыхающейся травы, которая даже не использует 3D-модели, что, я надеюсь поможет тем, кто не дружит с их изготовлением)
Для начала создадим рисунок - пучок травы на черном фоне и сохраним его в формате *.bmp. Лучше если высота и длина рисунка будут равны, иначе потом придется немного повозиться с масштабом. Не обязательно тянуть траву до самого верха холста, главное чтобы она прилегала к низу рисунка. У меня получилось вот что:
Теперь заходим в MegaKerma видим своеобразное главное меню. Нажимаем кнопку Textures (думаю вы ее сразу увидите). Перед нами появится меню текстур. Сразу нажимаем "Add new".
Нам нужно загрузить 2 текстуры. Первая будет служить текстурой земли (я подобрал такую чтоб сочеталась по цвету с моим рисунком), а вот вторая - это по сути спрайт нашей будущей травы, вот тут то мы и загружаем наш рисунок.
Когда в списке текстур появится миниатюра с нашим рисунком кликаем по ней правой кнопкой мыши (ПКМ) и ставим галочку на пункте "Use RGB (0,0,0) as trnasperent mask" - это сделает черные пиксели прозрачными.
Нажимаем "Ок", возвращаемся в главное меню и там нажимаем кнопку "Scenes". Приступаем к визуальному редактированию сцены...
Сбоку вы вероятно увидите ваш рисунок, кликните по нему и в появившимся списке выберите текстуру земли, так как начнем мы с нее. Затем кликните кнопку "Select Items" и в списке выберите "Floor" (пол). Давайте замостим этим полом участок сцены - для этого просто кликайте ЛКМ по сетке в нижней половине окна (старайтесь избегать нахлестов параллельных плоскостей, иначе образуется не приятный эффект).
Теперь, когда у нас есть небольшая поляна, настало время покрыть ее травой. Вместо "Floor" теперь выберите "Wall" (стена), а текстуру почвы поменяйте обратно на ваш рисунок травы. Создайте одну (только одну!) стену, где-нибудь посреди поляны и убедитесь что она выглядит как спрайт травы. Замените "Wall" на "Select item", а затем нажмите пробел (должна появиться тонкая желтая рамочка по краю экрана).
Кликните ЛКМ по спрайту вашей травы, который вы разместили на поляне. Должно появиться вот такое окно с кучей параметров и вкладок:
На вкладке "General" я выделил те параметры которые поменял, можете задать им такие же значения.
Кэп поясняет:
Name - это название нашего объекта (пучка травы), им мы будем оперировать, когда напишим скрипт для этого объекта, так что используйте подходящие названия для объектов, если не хотите запутаться.
NORMAL STATE и ANIMATED STATE - это начальное и конечное положение объекта, т.е. при проигрывании анимации объект плавно переходит из Normal State в Animated state, а в некоторых случаях и обратно. Если анимации нет, то объект всегда соответсвует параметрам Normal State. Здесь я поменял угол наклона (Rotation) ведь наша трава будет как бы колыхаться на ветру.
ANIMATION SETTINGS - настройки анимации. Length - продолжительность анимации.
Type - тип перехода объекта от Normal State к Animated state. Я поставил значение "Ping pong" - для того чтобы трава постоянно плавно переходила из первого состояния во второе, а затем также плавно возвращалась обратно.
Следующая вкладка которая нас интересует это "Behaviour", тут всего-то и нужно убрать галочку из пункта "Collision checking", иначе наш персонаж будет стучаться коленями об траву.
Переходим к следующей вкладке - "Events". Слева вы увидите список доступных этому объекту событий, поскольку трава должна колыхаться с момента своего появления нам резонно выбрать событие "Create" (Создание) и нажать кнопку "Edite", расположенную чуть ниже списка.
Приступим же к написанию длинного и затейливого скрипта:
Если ваш объект называется по-другому, то замените в этой строчке Grass0001 и дело в шляпе. Нажимаем "Ок" и наша трава в принципе готова, но прежде чем мы сможем убедиться в этом Выберите тип объекта "Start" (это там где "Select items") и поставьте его где-нибудь на поляне. Теперь в главном меню сохраните проект и нажмите кнопку "Create game".
Скачать пример
А начнем мы с создания простенькой колыхающейся травы, которая даже не использует 3D-модели, что, я надеюсь поможет тем, кто не дружит с их изготовлением)
Для начала создадим рисунок - пучок травы на черном фоне и сохраним его в формате *.bmp. Лучше если высота и длина рисунка будут равны, иначе потом придется немного повозиться с масштабом. Не обязательно тянуть траву до самого верха холста, главное чтобы она прилегала к низу рисунка. У меня получилось вот что:
Теперь заходим в MegaKerma видим своеобразное главное меню. Нажимаем кнопку Textures (думаю вы ее сразу увидите). Перед нами появится меню текстур. Сразу нажимаем "Add new".
Нам нужно загрузить 2 текстуры. Первая будет служить текстурой земли (я подобрал такую чтоб сочеталась по цвету с моим рисунком), а вот вторая - это по сути спрайт нашей будущей травы, вот тут то мы и загружаем наш рисунок.
Когда в списке текстур появится миниатюра с нашим рисунком кликаем по ней правой кнопкой мыши (ПКМ) и ставим галочку на пункте "Use RGB (0,0,0) as trnasperent mask" - это сделает черные пиксели прозрачными.
Нажимаем "Ок", возвращаемся в главное меню и там нажимаем кнопку "Scenes". Приступаем к визуальному редактированию сцены...
Сбоку вы вероятно увидите ваш рисунок, кликните по нему и в появившимся списке выберите текстуру земли, так как начнем мы с нее. Затем кликните кнопку "Select Items" и в списке выберите "Floor" (пол). Давайте замостим этим полом участок сцены - для этого просто кликайте ЛКМ по сетке в нижней половине окна (старайтесь избегать нахлестов параллельных плоскостей, иначе образуется не приятный эффект).
Теперь, когда у нас есть небольшая поляна, настало время покрыть ее травой. Вместо "Floor" теперь выберите "Wall" (стена), а текстуру почвы поменяйте обратно на ваш рисунок травы. Создайте одну (только одну!) стену, где-нибудь посреди поляны и убедитесь что она выглядит как спрайт травы. Замените "Wall" на "Select item", а затем нажмите пробел (должна появиться тонкая желтая рамочка по краю экрана).
Кликните ЛКМ по спрайту вашей травы, который вы разместили на поляне. Должно появиться вот такое окно с кучей параметров и вкладок:
На вкладке "General" я выделил те параметры которые поменял, можете задать им такие же значения.
Кэп поясняет:
Name - это название нашего объекта (пучка травы), им мы будем оперировать, когда напишим скрипт для этого объекта, так что используйте подходящие названия для объектов, если не хотите запутаться.
NORMAL STATE и ANIMATED STATE - это начальное и конечное положение объекта, т.е. при проигрывании анимации объект плавно переходит из Normal State в Animated state, а в некоторых случаях и обратно. Если анимации нет, то объект всегда соответсвует параметрам Normal State. Здесь я поменял угол наклона (Rotation) ведь наша трава будет как бы колыхаться на ветру.
ANIMATION SETTINGS - настройки анимации. Length - продолжительность анимации.
Type - тип перехода объекта от Normal State к Animated state. Я поставил значение "Ping pong" - для того чтобы трава постоянно плавно переходила из первого состояния во второе, а затем также плавно возвращалась обратно.
Следующая вкладка которая нас интересует это "Behaviour", тут всего-то и нужно убрать галочку из пункта "Collision checking", иначе наш персонаж будет стучаться коленями об траву.
Переходим к следующей вкладке - "Events". Слева вы увидите список доступных этому объекту событий, поскольку трава должна колыхаться с момента своего появления нам резонно выбрать событие "Create" (Создание) и нажать кнопку "Edite", расположенную чуть ниже списка.
Приступим же к написанию длинного и затейливого скрипта:
Код
STARTANIMATION Grass0001 1
Если ваш объект называется по-другому, то замените в этой строчке Grass0001 и дело в шляпе. Нажимаем "Ок" и наша трава в принципе готова, но прежде чем мы сможем убедиться в этом Выберите тип объекта "Start" (это там где "Select items") и поставьте его где-нибудь на поляне. Теперь в главном меню сохраните проект и нажмите кнопку "Create game".
Скачать пример