Это мечта многих геймеров. Но надо помнить, что работа создателя игр при всей внешней привлекательности очень непростая. Разработчикам приходится проводить долгие часы, оттачивая каждую деталь проекта.
А если вы хотите выпустить инди-игру, кроме кода вам, скорее всего, придётся заниматься тестированием, разработкой концепта, дизайном. Зато в результате могут получиться новые What Remains of Edith Finch или Untitled Goose Game. Готовы действовать? Рассказываем как и с чего начать.
Что нужно уметь
Требования к начинающим разработчикам игр в большинстве вакансий одни и те же:
- геймерский опыт;
- понимание основ объектно-ориентированного программирования и баз данных;
- знание Git;
- умение работать в Unity или Unreal Engine.
Хорошо, если вы разбираетесь в математике, физике и теоретической механике. Большинство игровых студий используют гибкие методологии управления проектами, поэтому нужно понимать, что такое Agile и Scrum, и уметь пользоваться канбан-досками.
Какой игровой движок выбрать
На рынке игровой разработки когда-то доминировал движок Unity. Он был первой полноценной бесплатной средой для создания игр. Сейчас не менее популярным стал Unreal Engine 4.
Преимущества Unity
Unity ориентирован на небольшие 2D-проекты, отлично подходит для разработки мобильных игр. У него ниже системные требования, можно создавать простые игры даже на слабом ПК. Программировать нужно на C# , который несложно изучить с нуля. Можно подключить внешние плагины и использовать другие языки, например Python.
Преимущества Unreal Engine 4
UE4 подходит для сложных 3D-игр. У него выше системные требования, но можно добиться более впечатляющих графических эффектов. Движок интуитивно понятный. Благодаря системе визуального создания скриптов Blueprints можно создать полноценную игру практически без кода.
Выбирайте движок в зависимости от жанра игры, которую планируете создать. Если это мобильная 2D-игра или, например, простая RPG — попробуйте Unity. Если в планах файтинг, гонка, сложный шутер — используйте UE4.
Какие языки нужно знать
Выбор языка программирования зависит от движка, которым вы будете пользоваться. Unity требует знания C# , Unreal Engine 4 — С++. Для разных целей вам потребуется также разбираться в основах Java, HTML5, CSS3, JavaScript, SQL.
Если планируете заниматься мобильной разработкой, изучите Swift для iOS и macOS. Для браузерных игр понадобятся PHP и JavaScript.
Сколько зарабатывает разработчик игр
На hh.ru сейчас открыто более двух тысяч вакансий со средней зарплатой 150 тысяч рублей. Получать такую сумму вы сможете при наличии опыта от года и портфолио.
Начинающий разработчик в крупной студии может зарабатывать 50–60 тысяч рублей в месяц. Требования к его навыкам обычно минимальны. Первое время придётся работать под присмотром старших коллег, но зато можно набраться опыта и прокачать навыки.
Разработчики мобильных игр в среднем получают немного меньше. При этом минимальная зарплата на рынке у тех, кто пишет игры под Android. Разработчики игр для iOS зарабатывают больше — это связано с тем, что стоимость их продукта в App Store выше.
Можно ли научиться самостоятельно
В интернете много бесплатных видеоуроков с пошаговыми инструкциями. Можно даже найти руководства и сделать свою первую простую игру на Unity или UE4.
Информация в сети разрозненная и часто устаревшая. Нужно тратить время не только на обучение, но и на поиск материалов и проверку их на актуальность. К тому же если в процессе разработки игры возникнут сложности, разбираться придётся самостоятельно или с помощью ответов на форумах.
На факультетах GeekBrains вы получите актуальную информацию от преподавателей, которые работают в игровых студиях. Глубоко разберётесь в том, как работают движки и как создать игры в разных жанрах. Сможете задать любой вопрос и получить обратную связь по своим проектам.
На факультете разработки игр на Unity вы научитесь писать на C# и создадите 3D-игру с видом от первого лица, браузерный 2D-платформер, мобильную гонку, стратегию, гиперказуальную игру и Action RPG.
На факультете разработки игр на Unreal Engine 4 вы научитесь работать с C++ и создадите двухмерный платформер и мультиплеерные игры.