Думаю многие геймеры в душе мечтают сделать свою 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