Для тех, кто спрашивал - а как мне игру сделать?

Добрый день, уважаемые посетители портала GoodGame.ru

 

Этот пост меня был написан под воздействием ряда факторов :

Я видел часть тем, с вопросами о том, с чего начать делать игры, но мне лениво комментировать и писать, что в интернете кто-то не прав.

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

Давно ничего не писал на форуме, а по срачикам соскучился.

 

Так с чего начать-то ?

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

 

Первое, с чего начать – это поймите, что вам интересно и фокусируйтесь на этом. Если мы говорим об индивидуальном проекте, то вариантов кем быть у вас всего два – либо вы клепаете 3д модели, либо вы клепаете механики. И я сознательно не пишу такие термины как программист и 3д художник. Если вы работаете в юнити или анриле, или даже 2д движке в духе дефолта (о них потом), то вы очень далеки от серверного программирования или написания приложений. Для того, чтобы сделать механики в игре, вам надо дружить с логикой и в минимальной степени понимать законы программирования. Абсолютно такая же история с 3д художником – для своей игры вам не надо знать все пакеты 3 моделирования (хотя врать не буду, изучить надо очень много даже по верхам) и уметь рисовать академ. Для некоторых механик достаточно просто намоделить кубиков, а это учится за час.

 

Отлично, вы немного почитали о том, кем хотим быть. Второй шаг может быть очень сложным для многих. Найдите напарника или команду. В современных реалиях один человек потратит огромное количество времени на адекватный проект. Я поздравляю тебя, уважаемый посетитель гудгейма, если у тебя есть 12 свободных часов в день на протяжении года. У большинства такой возможности нет. Более того – распыление в духе « я и программист, и художник» не приводит к хорошему результату. Есть случаи исключения, но поверьте – найти команду намного проще, чем выучить весь софт на нужном уровне. Конечно, ряд моментов решается платным/бесплатным контентом в магазинах, но это половинчатое решение.

 

Следующий пункт. Предположим вы нашли команду и поняли, кто какую роль будет играть. Настало время понять инструменты и научиться в них работать. Самое печальное, что некоторым придется научиться учиться. Если вы думаете, что софт учится сам, то вы сильно ошибаетесь. Это большой труд, который заключается в повторении одного и того же – сначала вы повторяете тюторы, потом чужие стримы и техники, потом начинаете делать свое. Не рвитесь делать свое сразу – это не приведет к хорошему. Для того, чтобы понять какие инструменты вам надо выбрать начните «слушать» индустрию. Начните со стримов и подкастов – к счастью или сожалению, на русском языке их очень мало, однако, довольно приличного качества. Сбор информации – один из важнейших этапов в вашем обучении. Послушали людей поумнее меня – поймете какие инструменты вам нужны – юнити или анриал, а может вообще дефолт или что-нибудь из 2д движков. Нужен ли вам Збраш или сейчас вы будете работать в майе или 3д максе.

Когда вы поймете в чем работаете, и ваш пайплайн (производственный процесс) , тогда начинайте фигачить. Постепенно, планомерно улучшайте свои навыки. Усложняйте задачи и постепенно приводите их к тому виду, который вам будет полезен в будущем. Не решайте сразу ваши задачи для игры – в геймдеве огромнейшее количество методов решения различных задач, но это вовсе не значит, что ваш текущий метод эффективен. Я на личном опыте убедился, что правильными инструментами можно экономить время раз в 10 (например, лепить одежду руками или использовать симуляцию)

 

Ну и последнее – вы собрались, поняли, что делать и таки приступили к выполнению вашего проекта. Теперь самое сложное для некоторых – научитесь работать регулярно. Если вы умеете правильно учиться – это не станет большой проблемой для вас. Но если нет – вам придется выстроить себе расписание работы. Прототип игры делается за пару десятков часов, полноценная – за сотни. Будьте готовы к тому, что даже небольшой проект хорошего качества потребует от вас минимум полгода работы над проектом. Полгода вы должны держать себя в режиме и регулярно трудиться над вещью, за которую вам никто не заплатит и, более того, через пару лет смотря на этот проект у вас будет литься кровь из глаз. Задайте себе вопрос – оно вам надо? Нет, я не пытаюсь тонко затроллить, а абсолютно серьезно – готовы ли вы к тому, что вы потратите полгода на проект, который уйдет в утиль, для того, чтобы просто улучшить свои навыки. А потом сделать еще один, который может постигнуть та же судьба. Разработка игры – это очень часто не о таланте (хотя он тут присутствует, но явно не в области скриптов или моделинга), а том, чтобы задрачивать и повышать свой уровень.

 

Конечно, я тут привел информацию ну в оооооочень в общих чертах, но это достаточно для понимания – а что мне делать. Специально не стал раздувать тонну текста, хотя по каждому пункту можно расписать несколько страниц. Если есть вопросы – я готов на них ответить, хотя по уровню от краба до про, я оцениваю свои текущие навыки на уровне креветки. Потому что индустрия большая и сложная. Однако, даже со своего креветочного уровня что-то да понимаю и хочется поделиться с теми, кому это может быть интересно. Я очень рад, что мы смогли довести наш проект до какого-то вида, который можно демонстрировать – Ссылка (чтобы не быть голословным, я работаю над всей 3д частью). Если вы со мной не согласны – опять-таки, буду рад подискутировать, возможно, что узнаю что-то новое для себя.

В дневники осознанно не пошел, потому что хотел какого-то интерактива. Если кому-то вдруг будет интересно узнать о нашем проекте – готов буду рассказать в следующей части, но уже в дневниках. Если же нужны будут ссылки что откуда качать - в ЛС, так же и по подкастам, дабы не было рекламы. 

 

P.S.

Понял, что немного не пояснил современный процесс разработки. Сейчас он состоит из следующих элементов. Арт - 2д или 3д. Модели, который создаются художником, которые затем красятся (текстурятся), а затем им создаются анимации. Программы которые сейчас существуют на рынке (популярные): 

Maya, 3ds max, Modo, Blender - Основные программы моделирования

Zbrush, 3d coat, Mudbox - Более высокий уровень моделирования, лепка и прочие фишки. С них начинать не стоит. 

Mari, Substance Painter, PhotoShop - Программы для текстурирования 

Есть еще программ 10, с которым вы столкнетесь, но если вы о них знаете, то, наверное, статья для вас не очень полезна.

 

Все, что натворил художник (модель, текстура, анимация), отправляется в игровой движок. Я не шибко силен в движках, особенно 2д шных. Сейчас самые топовые - это Unity и Unreal Engine, так как они очень сильные и бесплатные. Однако, если вы делаете визуальную новеллу, то есть специальные игровые движки специально для этого (тут мы приходим к тому анализу, о котором я писал выше) . Писать игровой движок сейчас НЕ НАДО. Псевдо программист закидывает модели в движок и начинает скриптовать, чтобы при ударе по объекту он ломался и так далее. 

 

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


Вот на этом, пожалуй, и можно остановиться. Надеюсь, кому-то будет полезна эта стена текста.