Инди
Zed
1017

И снова я иду по стопам Raft

Итак спустя некоторое время пора продолжить ту саму легендарную повесть про столь же легендарный проект, который создается вдохновляясь не менее легендарным проектом. ╰(*°▽°*)╯

В закладки
Слушать

Впечатления о блогинге на DTF

Начну свой пост с того, что я был приятно удивлен хорошей реакцией на мою прошлую статью, что и послужило мотивацией делать дальше этот проект! 😉

Спасибо кто отписывался в комментариях и подписался! Ну а теперь:

Алё, ну как там с Remains?

За то время, что прошло я очень усердно трудился над проектом и добавил много всего... или нет (●'◡'●)

Эта история содержит в себе взлеты и падения, радость и горе, страдание, мучения, доблесть и отвагу. Будьте осторожны!

Изменения

Ну пожалуй для начала расскажу про изменения в игре по сравнению с прошлым постом:

Моя гордость, это как я поработал над планетой. Теперь это не просто шар который заставляет выкалывать глаза игроку, теперь это красивый шар.

Ну не красота?

Для понимания разницы того, что было:

Теперь летая в космосе и собирая предметы, мне не хочется убивать. Я так же поработал над позицией и размерами планеты, и в данный момент она не находится под ногами игрока, а ощущается как действительно большой объект на далеком расстояние.

В процессе переработки планеты я думал над различными решениями лучшей реализации планеты как заднего фона (Если игра выйдет куда либо, на старте это будет просто фон, но кто знает, кто знает), я изучил реализации различных игр, и в большинстве случаев это был обычный Skybox, и я сразу решил попробовать реализовать так же, нашел на ассет сторе бесплатный скайбокс для дальнейшей перерисовки под свою планету. После установки и добавления скайбокса на игровую сцену, я понял, что это довольно не плохо.

Скриншоты я не делал, не видел смысла, но кому интересно использую скрин ассета:

Если кому интересно что за ассет, то вот:

На сцене сразу появилась глубина уровня(в тот момент на уровне была еще та ужасная планета), плюс это положительно сказывалось на оптимизацию, ведь я мог уменьшать дальность прорисовки камеры до минимума. Да и весь уровень сразу централизовался у игрока и его платформы.

Но как только я начал подгонять свою планету под скайбокс, я понял, что идея ужасная, я даже рад что я не делал скрины. По мимо не приятного вида скайбокса, я выявил еще несколько проблем:

  • Сложность в изменение после "запекания" картинки, то есть, если я вдруг захочу изменить или подвинуть планету, или сделать что то еще, то это займет довольно много времени и сил.
  • Никакого интерактива - по сколько это скайбокс, я не могу с легкостью менять стиль планеты. Например, если я захочу сделать взрыв на планете, или что бы она казалась уничтоженной в зависимости от логики игры, то это будет ужасно сложно, придется делать все через шейдер, но шейдер это не беда, беда это то, что это СКАЙБОКС и он живым не дастся.
  • Не удобная работа с HDR и Bloom в Post Proccesing'е

После осознания всего этого, я решил все таки использовать 3D модель, ведь с моделью я могу делать все что захочу. Для всех визуальных частей я могу писать шейдеры, причем обычные которые не занимаю 999999999% времени из за того, что я пытаюсь сделать то, что никто бы даже не думал делать.

Я разместил планету подальше, увеличил максимальную дальность прорисовки, пока не особо парюсь по оптимизации, оптимизирую только код.

Сделал ей что то в стиле атмосферы, путем добавления обычных прозрачных шаров, один для отрисовки передних граней , другой задних.

Настроил стандартный шейдер на самой планете, добавил ей HDR и подогнал интенсивность для приятного свечения через Bloom в процесинге.

Итог

После этих действий сцена стала выглядеть в миллион раз приятней.

Далее я решил доработать систему строительства

Я решил добавит отображение доступности постройки на превью:

И да, платформа строится за еду ¯\_(ツ)_/¯ не баг а фича.

Так выглядит постройка стен, не обращайте внимание на иконку пластика из неважно какой игры. У меня не появилось идей что можно сделать иконкой.

Уменьшил размер всех построек в 2 раза. Высота стен потом будет увеличена.

Само меню выбора постройки тоже изменилось, я решил не делать огромный круг выбора как в каком нибудь расте или гта.

Если навести на постройку, то снизу покажет компоненты, ну как и в любой нормальной игре.

Настало время грусти

Был прекрасный денек, и молодой амбициозный разработчик игр делал свою игру, а я смотрел его видео на ютубе, и как вдруг в момент билда моего проекта в WebGL(я подумал почему бы не залить веб демку на Itch.io) вылетает ошибка. В который было сказано:

Эй ты быдло, ты библиотеку UnityEditor в билд хочешь запихнуть? А больше ты ниче не хочешь?

UnityEngine
Процесс билда

Я сначала не понял, но потом я выявил то, что за неделю до этого я написал СУУУПЕР(по моему мнению конечно) удобную систему для аниматора.

Дальше будет много технической фигни, так что сильно не бейте если что.

Если вкратце то, когда я делал анимацию рук и предметов в них, я задумался:
-Хммм а почему бы не сделать что бы у всех анимаций был только Pull_State (стейт который отвечает за вытаскивание предмета), а State с убиранием оставить с пустым полем motion. И закидывать в стейт убирания клип и текущего стейта, и проигрывать его. Работает в духе:

Как показываете зеленая стрелка, мы сначала переносим Motion из Pull в Убрать, а затем проигрываем Убрать.

Лично мне нужна вся эта штука для того, что бы упростить процесс, ибо я не хочу создавать дубликат анимации Объект_Убрать с обычным -1 speed для каждого предмета.

Ну и я приступил к реализации всего этого, вышло вот это:

Для тех кто не понимает поясню максимально просто по действиям:

  1. Объявляю все типы которые мне будут нужны в дальнейшем
  2. Ищу в Animator'е нужный мне State, в нашем случае это Item_Remove
  3. И при вызове функции убирания предмета, я заменяю Motion в Item_Remove на Motion и того стейта который сейчас, и проигрываю Item_Remove

Казалось бы все, работает, все отлично. Но осознание небытия возникло когда я увидел это:

Опять же для гуманитариев, это пространство имен говорит о том, что я могу использовать все что находится в UnityEditor, а суть в том, что все что находится в UnityEditor нельзя забилдить без диких танцев с бубном и дальнейших багов самого билда.

Реальная запись состояния разработчика Remains Кот красавчик

Пока что я еще не совсем придумал как реализовать подобное.

Если вдруг вам есть в чем меня исправить в этой теме, я буду очень рад видеть это в комментариях! Мне будет интересно почитать ваши реализации или замечания.

Ну о грустном пока можно забыть.

Так же я после первого поста накидал немного моделей на ту самую кат сцену:

Один в один.

Пока что еще не приступал к самому процессу анимирования.

Накидал концепт главного меню, здесь еще нужно заменить планету.

Как вам такая концепция главного меню? Очень интересно знать мнение по этому поводу, ибо показывал это нескольким людям, и мнения разошлись.

  • У предметов тоже праздник, у некоторых появились иконки:
  • Интерфейс подвергся небольшим изменениям:
  • Решил сделать что то вроде маленькой оранжереи:

Пока что работает просто от нажатия, но в дальнейшем что нибудь придумаю.

  • Добавил шанс появления предметов которые пролетают мимо

Скорее всего это не все изменения, я в любом случае что то забыл.

Мне было скучно

Уставший после рабочего дня, я решил отдохнуть и заняться какой нибудь фигней. И я не придумал ничего лучше, чем:

-Хм у меня вроде валяется купленный доступ для стим игры, может накидать туда скринов из этого проекта, посмотреть как это выглядит со стороны.

По быстрому сделал скринов, на коленке в фотошопе создал хедер для страницы, ну и вышло это:

WORLD PREMIERE 

Лично мне пока что не заходит, выглядит очень дешево.

Дальнейшие планы

В данный момент я еще в раздумьях о том, что делать дальше с проектом, делать абсолютный клон рафта я не хочу, ибо мне начинает нравится то, что я сделал. И я хочу все же сделать из этого достойный проект. Этот пост скорее был для меня самого, весь прошлый день я не понимал то, что мне делать сейчас. И этим постом я хочу утвердить то, что уже сделано, что бы понять куда двигаться дальше.

Ближайшие планы на разработку:

  • Доделать крафт полностью
  • Изменить UI крафта, сделать более удобны и приятный
  • Добавить разрушенные корабли и спутники, для изучения игроком
  • Усложнить игру каким нибудь "противником"(Это не значит, что прилетят инопришеленцы и будут стрелять)
  • Добавлю инструменты такие как: Бур(для добычи астероидов), что то в стиле Ключа который будет ломать и чинить

А так же с самого начала разработки я вынашивал идею реализации герметичной постройки, как вы видели на некоторых скринах у игрока нет показателя кислорода(голубой). Это связано с тем, что у персонажа не стоит режим "В космосе", это будет работать когда игрок будет строить блок из стен и потолков и дверей, затем делать герметизацию. Скорее всего это будет производится путем использования какого то инструмента.

Так же я хочу что бы игра была бесконечно-конечная, и для этого будет введен сюжет, но я со 100% уверенностью даже на этой стадии разработке могу сказать, что сюжет не будет реализован заданиями!

Я не хочу что бы у игрока было слева сверху написано "Лети туда, сделай это, найди это", у меня есть задумка дать возможность игроку изучать все самому, и я буду стараться сделать его не нудными записками с миллионном текста.

А еще, по скольку проблема билда была решена, я могу сделать билд(Exe, WebGL мне не понравился) и в следующем посте прикрепить ссылку.

Нужна ли демка?
Конечно
Конечно нет
Показать результаты
Переголосовать
Проголосовать

Конечная

Ну на этом мой пост закончился, надеюсь было интересно. Если есть вопросы или какие либо замечания, то буду рад видеть в комментариях.

С вами был DJ Razrabotchik ᓚᘏᗢ

{ "author_name": "Zed", "author_type": "self", "tags": ["indie","gamedev"], "comments": 18, "likes": 42, "favorites": 21, "is_advertisement": false, "subsite_label": "indie", "id": 210578, "is_wide": false, "is_ugc": true, "date": "Tue, 15 Sep 2020 09:45:51 +0300", "is_special": false }
Объявление на DTF
0
18 комментариев
Популярные
По порядку
Написать комментарий...
4

Демка точно нужна, и чем раньше ты её начнёшь кому-то давать играть, имею в виду вне круга разработки, тем лучше. И не бойся закидывать гифки на реддит. Проверка «виральности» очень кстати порой бывает и дополнительно мотивирует.

Почитал, что ты скорее со свободным подходом к этому проекту, но будь уверен, в нём огромный потенциал :) 

Ответить
0

Проверка «виральности» очень кстати порой бывает и дополнительно мотивирует.

Это прям в точку. После первого поста, после общения в комментариях да и в целом мое удивление интереса людей очень сильно придало мотивацию делать этот проект.

И не бойся закидывать гифки на реддит

Да пока лень в реддит писать. Их интерфейс написания новости вызывает тотальный дискомфорт, я как то давно постил там одну из своих работ.
Делал как то клон южного парка на Unity, проект из разряда "Максимально для удовольствия" xD
https://www.reddit.com/r/Unity3D/comments/9uotyt/i_made_south_park_in_unity3d/

Демка точно нужна

Демку думаю залью на Itch.io, и наверное разошлю в каких нибудь серверах дискорд с такой тематикой.

Почитал, что ты скорее со свободным подходом к этому проекту

По сути я этот проект начал для того, что бы начать блогинг и посмотреть как это все работает :) 

Ответить
2

Держи вариант иконки для пластика.
КМК визуальная и логическая читаемость имеется.

Ответить
1

Это самое первое, что пришло в голову, но на старте я решил это слишком банальным, и надо придумать что то свое, ну и где я теперь...

Ответить
2

Иконки и не должны быть оригинальными, а даже наоборот, чем стериотипнее и узнаваемее - тем лучше, тем комфортней будет игроку.
Оригинальность лучше оставить для геймплея и механик.

Ответить
0
Ответить
2

Прикольно.
Если интересно, я бы мог чуть-чуть помочь. Я могу делать 3д модельки и рисовать иконки з̶а̶ ̶е̶д̶у̶ бесплатно разумеется.

Ответить
0

Да я пока не нуждаюсь :) 
Весь этот проект я по сути работаю спонтанно, за это и нравится работа над ним. Захотел добавил что то, захотел убрал. Не расписываю задачи. На данном этапе не могу принять твою помощь :( 
Если передумаю, то свяжусь с тобой!

Ответить
1

Захотел добавил что то, захотел убрал

Как будто если будешь работать с кем-то, то ситуация изменится
На данном этапе не могу принять твою помощь

Ну, как хочешь

Ответить
0

Ну для работы в команде спонтанная работа не подойдет(именно в этом случае), к примеру лежу я на диване и до меня доходит "Хм надо сделать то то и то то", я начинаю реализовывать, потом пишу своей "команде" что нужно сделать. Мы делаем делаем, и я такой "Чет не то", и пишу всем, что "не народ, отменяется, не надо", и так кучу раз на дню. И представь ты делая одну работу получаешь сообщение о том, что уже не надо, а надо что то другое или же вообще ничего. Да и по сути я сам в команде не особо люблю, одно дело на какой то должности, где все прописано лидами, а тут инди, по мимо того, что нужно самому все понять, нужно и команде объяснить.
Но все равно спасибо за твое предложение!

Ответить
3

Не, это не так работает. Вот например ты говоришь "Нужно сделать космический корабль" я беру, делаю его. Потом всё отменяется, но корабль ведь не выкидывается, а идёт в портфолио того, кто его делал.

Лично мне, например, просто скучно на работе, и я бы с удовольствием что-нибудь помоделил/порисовал

Но раз ты не хочешь, то занудствовать не буду

Ответить
2

сюда конечно акула не прикрепишь, но в космосе всяких опасностей хватает, в том числе мусора с большой скоростью, астероидов и всякого рода радиаций. Тут наверно сам вопрос опасностей для космонавтов стоит подробно изучить. 
Продолжай в том же духе!

Ответить
1

А что конкретно там лежит в пространстве редактора? Мне вообще кажется зря ты так упоролся в подмену клипа на лету, мне вот сложно было понять что происходет вообще. Не могу объяснить пока, что конкретно мне в этом не нравится, но работай я над такой системой, первое что бы я подумал, это "чё?".

В Рафте есть акула. Тут можно ломать базу микрометеоритами. Ещё хочу солнечные панели и радиаторы с механикой перегрева. И ионные двигатели. Можно и химические, но придется на метеоритах топливо искать. Можно сделать уникальные ресурсы и те же метеориты на более высоких орбитах, что потребует изготовления двигателя.

Меню мне пока не нравится. Оно какое-простоватое и говорит: "Я меню из дешевого Инди". Возможно, я бы попробовал сделать его в триде, интегрировав в кокпит (или что там на фоне). Как в Метро. Но это не точно.

А так повторюсь: пеши исчо, хорошая работа. Я пытался в итоге уже раза 3 написать что-то, но останавливался на этапе "Боже, какая же все это х**ня, какой смысл?". 

Ответить
0

А что конкретно там лежит в пространстве редактора? 

Все компоненты на первом скрине кроме самого Animator, как я теперь понял без дикой переработки движка и выковыривания этих компонентов из UnityEditor, менять motion в рил тайме как я собирался видимо не получится. По сути то, что я хотел сделать, сейчас выглядит как дикий костыль, но когда проект будет развиваться, то эта систему будет максимально упрощать работу. И я даже хз почему Unity не дают такую возможность, ибо все прекрасно работает в рил тайме, я проверял через все возможные дебаги, даже в профайлере самого движка не было проблем. Я уже работал над играми где есть куча предметов и у каждого предмета своя анимация, свой интерактив, и во всех с учетом того, что везде реализация была разной, везде была проблема в том, что на момент когда в проекте появляется большое количество анимаций и всего подобного, появляется дикая рутина для добавления новой или изменения старой анимации. Но буду думать над решением, и наверное придумаю что то другое :)

В Рафте есть акула. Тут можно ломать базу микрометеоритами.

Да, "противники" будут в таком духе, по сути я уже думал над тем, что ты писал дальше. Сейчас продумываю саму систему корабля.

 Меню мне пока не нравится. Оно какое-простоватое

Это еще только концепт, мне пока тоже кажется дешевым

"Боже, какая же все это х**ня, какой смысл?"

А зачем нужен смысл? Я например пишу эти посты для интереса и в целях изучить как, что работает. Плюс я делаю проект в сфере которая мне нравится, и рассказываю это людям. Причем пишу не особо напрягаясь, ибо если будет провал, то я ничего не теряю.

Ответить
1

Хм у меня вроде валяется купленный доступ для стим игры, может накидать туда скринов из этого проекта, посмотреть как это выглядит со стороны.

Купленный доступ у него валяется...
По-существу, выглядит реально интересно, я жду демку пощупать и дать отзыв от начинающего инди-разраба.

Ответить
0

Да просто у стима есть прикол один, что после покупки доступа нужно что бы он 30 дней лежал(ну по крайне мере было так, когда я последний раз покупал). Ну и я закупил сразу несколько, мало ли создам СУПЕРПУПЕРВОРЛДПРИМЬЕР проект за неделю xD

Ответить
1

Проект выглядит крайне многообещающе, надеюсь, не будет заброшен и выйдет конфетка, ибо лично для меня концепция "рафт в космосе" крайне интересна, и визуал вырисовывается приятный. Удачи в работе и вдохновения!:3

Ответить

Комментарии

{ "jsPath": "/static/build/dtf.ru/specials/DeliveryCheats/js/all.min.js?v=05.02.2020", "cssPath": "/static/build/dtf.ru/specials/DeliveryCheats/styles/all.min.css?v=05.02.2020", "fontsPath": "https://fonts.googleapis.com/css?family=Roboto+Mono:400,700,700i&subset=cyrillic" }