23

5 советов как в одиночку доделать свою 3D игру

Думаю многие геймеры в душе мечтают сделать свою 3D игру. И не только для заработка денег, а просто для самореализации. Если это так, то я постараюсь вам в этом помочь.


После моего поста 2 года хобби-разработки. Dark Fantasy пошаговая стратегия в стиле старой школы. Воины средневековых стен. Warriors of medieval walls хочу продолжать делиться своим опытом с сообществом разработчиков. Мне 31 год. В общей сложности я увлекаюсь этой темой около 3х лет (1 год учебная проба пера и 2 года работы над текущим проектом "Воины средневековых стен"), и всё это на фоне IT высшего и длительного опыта разработки коммерческих проектов, не относящихся к играм, в продуктовой IT-компании. Некоторые практики я освоил как раз на основной работе.


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


Думаю мои советы будут полезны не только одиночкам, но и небольшим начинающим командам в разы ускорить процесс разработки. Сразу скажу, что речь пойдёт только о разработке.


1. Используйте Low Poly графику.


Почему именно Low Poly, а например не воксельная или вообще проработанная 3D графика? Когда я учился делать первые модельки в Blender, я понял, что на разработку 1 проработанной модели с детализированными текстурами и прочими примочками уходит очень много времени (вечерами не меньше нескольких недель), даже если вы опытный 3D-моделлер. А для своей 3D-игры вам понадобится очень много таких моделек (персонажи и другие объекты сцены). Low Poly позволяет очень сэкономить время, т.к. не нужно детально рисовать текстуры. На определенном отдалении камеры вообще визуально всё выглядит достаточно прилично, благодаря узнаваемости силуэта и простым цветам в текстурах. Вы научитесь на простой графике делать качественные модельки. Кроме того при желании можно прокачать наработанные модели в будущем, у воксельной графики этой возможности нет.

Мои примеры:

2. Используйте игровой движок Unity.


Многие бы со мной поспорили, но я не вижу альтернативы. Бесплатное использование (до 100 тыс. $ в год), огромное комьюнити, огромное количество туториалов, статей и готовых решений, нетребовательность движка к железу, возможность быстро портировать свой проект на любые платформы, использование языка C# и куча других плюсов.


3. Детально распишите проект своей игры.


Совету купить бумажный блокнот. Разбейте ваш проект на маленькие задачи и запишите туда в виде плана. Если задача вам кажется большой, разбейте её на подзадачи и дополните план. Этот метод называется декомпозиция. Он позволит вам понять, сколько работы потребуется для реализации каждой маленькой задачки, а в целом вы сможете оценить объём работ достаточно детально. Можно еще вычеркивать ручкой сделанные задачи и это прям доставляет удовольствие.


Кто-то скажет, есть куча софта для ведения задач. Но это не нужно, если вы одиночка или маленькая команда. Вам на начальном этапе не нужно выстраивать инфраструктуру. Это нужно делать, если ваш проект перерос во что-то серьёзное.


И очень важно - следуйте плану. В ходе работы у вас будут появляться новые идеи по проекту. Записывайте их в блокнот в раздел на будущее и продолжайте делать запланированные ранее работы. Это нужно чтобы не отвлекаться.


4. Найдите ресурсы с бесплатными звуками и иконками в едином стиле.


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


5. Распространяйте информацию о своём проекте в социальных сетях и среди знакомых на этапе рабочей демо-версии.


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


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

Моя пошаговая стратегия (Воины средневековых стен. Warriors of medieval walls.) находится пока в закрытом альфа-тесте в Google Play, но на днях планирую открытый бета-тест.

Блог разработки VK: https://vk.com/warriorsofmedievalwalls

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

- Интервью с опытными разработчиками

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

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

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

- Публиковать бессодержательные посты с рекламой Вашего проекта (см. следующий пункт), а также все прочие посты, содержащие рекламу/рекламные интеграции

- Выдавать чужой труд за свой

Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

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

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"

Автор поста оценил этот комментарий

В юньке всё приивязано к префабам, или как они там.
Вот к примеру хочу я все пули на экране повернуть, так мне придется у пресета пули сделать метод "повернуть", и дальше что-то типа
Сцена.НайтиВсеОбъекты("Пуля").ВызватьМетод("Повернуть")

Это изврат же.

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

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

раскрыть ветку (1)
3
Автор поста оценил этот комментарий
Возможно не на те уроки наткнулся. Не вижу ничего плохого в префабах, во первых можно в префабе исправить правильный угол поворота пули и проблема решена. Во-вторых искать все пули на сцене таким методом вообще плохой тон, да и зачем, можно их кэшировать при создании и всегда иметь к ним доступ. Накодить там можно много чего, вплоть до полного переписывания родной физики движка или поиска путей. В общем считаю не обоснованным обвинения Unity, сначала лучше изучить вопрос, перед тем как делать громкие заявления.
показать ответы
0
DIY OR DIE
Автор поста оценил этот комментарий

Поделитесь пожалуйста, чем Юнити лучше и мощнее Анрила?

раскрыть ветку (1)
1
Автор поста оценил этот комментарий
Можно целую статью написать. Для инди-проектов лучше Unity, для крупных проектов лучше Анрил. Unity лучше: 1) Бесплатная лицензия до дохода в 100 тыс. долларов год (в Анрил существенно ниже, вроде 3 тыс., но это не точно). 2) Менее требователен к железу (для использования Анрил требуется более мощный комп) 3) Более низкий порог вхождения из-за C# (в анриле С++ на нем сложнее войти с нуля) 4) Интеграция со средами разработки от Microsoft (для кого-то будет спорно). Найдутся и другие, если подумать подольше.
показать ответы
Автор поста оценил этот комментарий

Unity - это конструктор. Мощный, крутой, но конструктор. Если вы хотите написать свою игру, то НЕ пишите на юнити.

раскрыть ветку (1)
1
Автор поста оценил этот комментарий
Это не конструктор, конструктор имеет только готовые детали. А для Unity вы можете создавать сами любые новые детальки (скрипты, модели, музыку и т.д.). Движки подобные этому делают для того, чтобы каждый разработчик игр заново не работал над типовыми задачами и предоставляют по ним качественные готовые решения. Это сильно автоматизирует и ускоряет процесс разработки самой игры, а не компонентов движка. Да и крупные геймдев компании часто создают свои игры на готовых движках.
показать ответы
2
DIY OR DIE
Автор поста оценил этот комментарий

Субъективщина. Это всё плюсы именно в вашем случае, при всем уважении. Про мощнее так и не написали. Я вижу недостаток только в том, что анрил более прожорлив в плане памяти и там этому нужно уделять больше внимания. Ну и вес билдов. Если по пунктам, 1-да, это плюс, роялити у Анрила начинается с 5к валовых продаж. Но если распространяться через егс, роялити отсутствует. 2-нууу..я работаю за компом 8 летней давности и он даже не подвисает.. 3-это субъективно. Мне легче выкатиться оказалось. 4-даже комментировать не буду. :) Я работаю на работе на Юнити (пилим игру под мобильные устройства, planetation в gp) , а дома на Анриле. Не считаю, что какой-то движок лучше или хуже. Но Юнити всегда по инструментарию и функционалу находится в статусе догоняющих, к сожалению. И да, я не знаю такой вещи, которую можно было бы сделать на одном из движков, которую нельзя повторить на другом.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Я не считаю свое мнение истиной в последней инстанции. Абсолютно субъективен) Почему на работе руководство выбрало юнити? По 3ему пункту вы считаете, что программировать на C# и C++ одинаково сложно и одинаковый порог вхождения?
Автор поста оценил этот комментарий

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

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Послать могут везде, при чем тут геймдев. Я не пытался тебя переубедить, скорее тех кто читает эти комменты. Это частая тема для холивара, юнити не идеальна конечно, но позволяет любому создать свой проект, в статье я это аргументировал. Взрослая позиция - это мочь обосновать свои утверждения. За маты не банят не Пикабу?

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества