Дневник разработки игры про Магнолию. Запись №2
Всем привет!
Меня зовут Мария и сегодня я расскажу вам о том, как идет разработка игры, которую мы с моим мужем Алексеем разрабатываем сейчас.
В прошлый раз я рассказывала, как все начиналось. От идеи, до первого прототипа в 2д, а после, перехода в 3д и смену движка.
Итак напоминаю, о том, что сюжет в игре довольно простой.
Девочка по имени Магнолия играет в прятки со своей подругой Рут. И задача игрока, как раз заключается в том, чтобы найти Рут спрятавшуюся где-то на локации.
За прошедшее время наша работа заметно продвинулась.
Например, Алексей написал две главные игровые механики, поиск Рут и взаимодействие с предметами.
И сейчас я расскажу, как это работает.
У объекта есть область взаимодействия, когда Магнолия заходит в область, эта область подсвечивается.
Игрок может нажать на кнопку и тогда появится фраза. Обычно Магнолия говорит свои мысли или замечания о данном предмете, делится с игроком информацией о мире.
Эффект выделения области я делала сама. И мне очень нравиться, как он смотрится в итоге.
Выглядит ярко и заметно. Я делала этот эффект с помощью системы частиц.
Изначально я ориентировалась на то, как такого рода подсветка выполнена в игре Genshin Impact.
Но в случае Геншина сразу становится понятно с какими объектами можно взаимодействовать, а с какими нельзя.
А моя геймдизанейрская задумка заключалась именно в том, чтобы игрок изучал локацию и участвовал в поиске.
Поэтому я решила остановится на области, которая подсвечивается при пересечении.
Поиск Рут работает так же, как и взаимодействие с предметами.
У Рут есть набор мест, где она может прятаться. В каком месте спрячется Рут выбирается в начале игры случайным образом.
Игрок может взаимодействовать с возможными местами пряток точно так же, как с другими интерактивными предметами. И если текущее место оказалось верным, Рут появляется рядом с Магнолией, и после небольшого диалога игра заканчивается.
Если Рут в этом месте нет, то Магнолия просто сообщает об этом игроку. И игра продолжается.
После добавления Рут в игру я продолжала работать над наполнением локации.
В самом начале стартовая локация у дома Магнолии выглядела довольно пустой.
И мы уже подумывали о сокращении расстояния от одного ее края до другого, чтобы было не так скучно ходить.
Но постепенно, когда двор домика начал заполняться разными предметами, ходить стало намного интереснее.
Так во дворе у Магнолии появилась поленница с дровами и небольшой сарай. Их я сделала довольно быстро.
Но настоящей гордостью для меня стал мой огород.
Точнее огород у домика Магнолии. Я получила просто огромное удовольствие работая над ним.
Текстуры для капустных листьев и всей зелени я рисовала на айпаде в Procreate. А потом просто собирала модельки из плашек в блендере.
Об этом мне бы хотелось рассказать по подробнее.
Началось все с кустов.
Деревья для игры я сгенерировала в специальной программе, а вот кусты сделала вручную.
Без материалов кусты выглядят как нагромождение серых прямоугольников. Эти прямоугольники представляют из себя простые квадратные полигоны.
А с применённым материалами кусты выглядят довольно выгодно и красиво.
Таки образом моделька кустов получается малополигональной, что хорошо сказывается на производительности в игре.
В общем куда не посмотри одни плюсы.
Это был мой первый опыт работы с плашками. И вот применяя полученные знания я много пробую и экспериментирую.
Особенно мне нравится использовать альфа карты.
Альфа карты отвечают за прозрачность текстуры. Именно с их помощью я отрезаю белый фон.
Имея изначальную текстуру, я легко генерирую альфа карты в фотошопе.
Вот так я сделала капусту и всю зелень для овощей.
Геометрия у овощей довольно простая. Я точно знала, что их никто не будет рассматривать в близи, поэтому тратила при их создании совсем небольшое количество полигонов.
Еще мне очень нравится, что в Unreal Engine есть стандартный ветер для материалов.
Я добавила его для зелени и получила просто отличный результат. Теперь овощи стройными рядами расположились на грядках.
Сейчас я работаю над цветами для игры, и мне очень нравится то, что у меня получается.
Я и раньше знала про эту технику, видела, что её очень часто используют в разных играх, но попробовать сама не решалась.
Мне казалось, что это очень сложно, и что у меня будет очень небольшой контроль над массой из полигонов.
Но сейчас, попробовав, я понимаю, что эта техника лучше всего совмещает в себе мои навыки 2д и 3д художника.
Работая над проектом постоянно хочется приструнить своего внутреннего перфекциониста.
Делая модели и смотря на них через время, иногда хочется вернуться и переделать их с уже имеющимися навыками.
В этом плане хорошо иметь в команде второго человека. Особенно такого как Алексей, который всегда подскажет и поможет.
Посмотрит на работу свежим взглядом и скажет - "Эта работа выполнена хорошо. Этого достаточно."
А лучшее, как известно враг хорошего.
Я очень боюсь затянуть с созданием моделек.
Ведь изначально этот проект планировался небольшим по размеру, поэтому я стараюсь тратить не особо много времени на каждую модельку.
А еще всё хочется сделать на приличном уровне, чтобы было не стыдно показать людям то, что у меня получилось.
Поэтому часто я себя утешаю тем, что модельки, которые я делаю сейчас можно с легкостью перенести в наш следующий проект.
И двигаюсь в своем темпе.
Так же мне очень хотелось поближе познакомиться с системой искусственного интеллекта.
В предыдущем проекте Алексей уже занимался созданием поведения у NPC, но в тот раз, я видела только итог.
И на этот раз захотелось узнать, как работает эта система на практике.
Поэтому я сделала вот таких вот слаймов.
Делала я их по туториалу из интернета, но в процессе создания всё равно пришлось просить помощи и спрашивает совета у Лёши.
Мне очень нравится то, как они выглядят. В итоге получились такие веселые малыши кругляши.
Поведение у них самое простое.
Они время от времени передвигаются по локации прыжками.
Я все еще думаю буду ли добавлять их в игру. Скорее всего нет, но один из слаймов в данный момент прыгает по двору Магнолий.
Сама работа с системой мне очень понравилась.
Думаю если будет свободное время было бы очень интересно сделать каких-нибудь животных с помощью этой системы.
Еще мы наконец-то привели в порядок общий вид проекта в Unreal Engine.
И это было сопряжено с некоторыми трудностями.
С одной стороны, когда начинаешь новый проект ты не знаешь, как он будет выглядеть в конце.
Поэтому легче просто создавать папки и накидывать в них модельки и материалы.
Что-то работает не сразу, у каких-то моделек не подгружаются текстуры.
Ты пробуешь снова и снова и со второй или третьей попытки все работает.
Но к этому моменту у тебя уже накапливается некоторое количество папок, которые называются примерно Тест1, Тест2, Тест3, Деревья, ДеревьяРаботают, ДеревьяПравильныеКарты и так далее.
Так что только поработав некоторое время, становится понятно какой именно порядок тебе требуется.
Понятно какие виды и подвиды ресурсов будут в проекте и, как их нужно объединять и сортировать по папкам.
Я твердо решила навести порядок в папках проекта. С учетом того, что весь беспорядок пришелся как раз на мою часть работы. Х)
И приступив я обнаружила удивительную вещь.
Когда меняешь имя папки в Unreal он не переименовывает эту папку в стандартном понимании, а создает ее копию.
То есть первая папка с неправильным именем остается на месте. И теперь их просто две.
И естественно все ресурсы из этой папки Unreal зачем-то копирует. И если удалять папку с неправильным именем и файлы которые лежали в ней уже задействованы в проекте, из проекта они конечно же удаляются.
Это ожидаемо, но очень неудобно.
Еще пару раз возникал такой баг, когда папку из движка вроде бы удалили, а в файлах проекта она осталась.
Приходилось возвращаться в файлы проекта и подчищать там все еще раз.
Эти проблемы конечно очень мешали выполнению задач.
И пару раз поломали уже работающие штуки в игре, но нам удалось все починить и вернуть проекту аккуратный вид.
Вот как-то так идут наши дела.
Впереди еще очень много работы.
В ближайшее время у нас в планах сделать главное меню и настройки графики к нему, а также продолжить наполнять локацию разными моделями.
Пожелайте нам удачи в разработке!
Следить за актуальным ходом разработки можно перейдя по этим ссылкам:
А на этом все.
Всем спасибо за чтение, думаю мы с Вами еще обязательно увидимся в моих следующих заметках о разработке.
Может, подсветку объектов лучше сделать outline'ом? Будет более органично смотреться, чем кружок.
Рассматривали такой вариант, но после обсуждения пришли к варианту с пересечением.
Но возможно этот вариант выделения не окончательный. 🤔
Вам нужно для создания интересности к игре добавить враждебного моба, собаку какую то к примеру. Или волка. Потому что слаймы это миленько конечно, но они как будто не враждебные вовсе и скорее как нейтральные npc
Спасибо за совет! Хорошая идея. Вот только нужно подумать, как вписать ее в игру...🤔