YOUNG

Программист и хотите попасть в гейминдустрию? Вот что для этого нужно

YOUNG
Антон Громов
Антон Громов

Руководитель студии RIKOR GAMES, куратор курса по разработке игр в Scream School

Алина Алещенко

Индустрия игр в России растет в среднем на 15-20% в год, а в мировом масштабе рынок игр уже обогнал по объемам музыку и кино. Что нужно знать и уметь программисту, чтобы попасть в геймдев, рассказал Антон Громов, руководитель студии RIKOR GAMES, куратор курса по разработке игр в Scream School

Программист и хотите попасть в гейминдустрию? Вот что для этого нужно

По данным исследования сервиса Values Value и платформы InGame Job, треть всех вакансий, представленных на джоб- и индустриальных порталах в геймдеве в 2020 году, — это программисты и разработчики. 

С точки зрения карьеры индустрия игр — очень перспективна в России: топовые программисты в геймдеве зарабатывают 250-350 тысяч рублей. Но программистов привлекает в геймдев не столько деньги, сколько желание поучаствовать в интересных игровых проектах.

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

 

Почему в гейминдустрии наблюдается нехватка программистов

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

К примеру, в нашей студии работает около 30 человек, до конца года планируем вырасти до 50-60 сотрудников, в следующем, может быть, — до 100-120. Надо сказать, что в играх работа программиста хуже всего поддается переводу на удаленку (важно личное присутствие в команде) и на аутсорс — из соображений безопасности и сложности рабочего процесса. 

Почему так нужны люди? Допустим, есть студия, которая владеет известным IP и хочет сделать вторую или третью серию или какой-нибудь DLC, но у них не хватает ресурсов. И тогда они обращаются к сторонней продакшн-команде. 

Еще один фактор — это тренд на ремастеры старых игр. Компании начинают делать ремастеры игр, которые были популярны в 2005-м, в 2006-м, в 2010-м годах. Появляются новые разработки, более мощные компьютеры, более современные движки, на которых можно сделать более интересные визуальные продукты, оживить игру, в которую играли 20 лет назад.

Успех зачастую кроется в выпуске игр по уже очень известным IP.

Есть, к примеру, Assassin's Creed, и если я выпускаю Assassin's Creed 8, то он будет популярен, потому что в него будут играть все, кто вообще играет в эту серию игр. А новый IP выходит не так часто. Обычно его выпускают относительно новые компании, которые угадывают каким-то образом тренд.

Самый последний пример такого типа — это Valheim, который вышел в Steam и стал суперпопулярным. Думаю, никто не сможет объяснить, почему это сработало именно сейчас. Успешность игры измеряется только двумя показателями: это либо количество людей, которые в нее играют, либо деньгами, которые она зарабатывает.

 

Что нужно знать и уметь программисту, чтобы попасть в геймдев

Разработка игр почти всегда подразумевает какой-то фреймворк, будто то Unreal Engine, Unity или другой движок. У каждого движка есть свои особенности. 

  • Unreal Engine появился на основе Unreal Tournament.
Изначально он использовался, в основном, для шутеров, и сейчас этот движок — самый подходящий для разработки шутеров. Unreal Engine до определенного момента был несколько закрытым, можно сказать, элитным движком, и поэтому его поддержка не была на фантастическом уровне. Но после успеха Fortnight этот движок стал развиваться и на ПК, и на мобилках, подтянулась его производительность и функциональность. 

На сегодняшний день Unreal Engine — самый универсальный движок, независимо от проекта.

  • Unity появился как мобильный движок и свою популярность получил в мобильных играх.
До определенного момента Unity был самым поддерживаемым движком в силу того, что очень много людей и компаний использовали его на мобильных играх. Вообще, чем меньше проект, тем больше для него подходит Unity, и чем больше проект, тем больше для него подходит Unreal Engine, — просто в силу технологии, подхода и функционала движка. 
  • CryEngine — движок, который вырос из игры, и лучше всего подходит для игр вроде PUBG.
В последнее время CryEngine не очень активно развивается, — в него мало вкладываются, поэтому он отстает от Unity и от Unreal с точки зрения универсальности и функционала. 

 


Входные требования к будущему разработчику игр на Unreal Engine:

  • Знание C++, понимание структур данных и алгоритмов. Поскольку Unreal Engine использует C++, то базовое понимание того, как устроен этот язык, и вообще знание алгоритмов — это необходимые условия, чтобы обучить человека специфике конкретно Unreal Engine.
  • Опыт коммерческого программирования. Вообще, коммерческое программирование отличается тем, что у сотрудника-программиста всегда есть понимание сроков и задач. Это особенно важно, когда несколько людей работают над одним проектом и есть четкие правила, по которым ведется совместная разработка.
Это касается умения работать с системами контроля версий (GitHub, Perforce), системами контроля и учета ведения задач (например, Confluence) и с таск-трекерами (Jira, Redmine). 
  • Понимание игровых механик и увлеченность играми разных жанров. Если человек не играет в игры и не понимает, как работают те или иные механики, ему будет очень сложно их реализовать. Разработка игр — это не программирование в вакууме, это понимание того, что должно получиться в итоге. Да, всегда есть документация, которую пишут геймдизайнеры, но этого недостаточно.

 

Где учиться на программиста в индустрии игр

Будущий программист в геймдеве должен знать язык, который используется в движке: Unity — «си шарп», в Unreal — «плюсы». Дальше, уже внутри компании или на курсах, можно глубоко разбираться в особенностях конкретного движка, как в нем строится работа и какие фичи у него есть.

Сейчас Unreal Engine — это самый перспективный движок и на ПК, и на консолях, и точно самый популярный из существующих движков. Но он достаточно требовательный к качеству, потому что «плюсы» сложнее выучить, чем «си шарп». Соответственно, Unreal сложнее выучить, чем Unity. 

  • Фундаментальное образование с акцентом на программирование в играх можно получить в технических вузах: например, в МФТИ есть британский бакалавриат по программированию в индустрии игр, в ИТМО — магистратура по внутриигровым технологиям. 
  • Уже опытные программисты могут прокачать свои знания движков и другие точечные навыки на отдельных курсах. Так, Epic Games запустили бесплатные онлайн-курсы по Unreal Engine на своей платформе. Множество курсов предлагают онлайн-школы XYZ School, Skillbox. Geek Brains. В очном формате разрабатывать игры на Unreal Engine 5 учат ребята из Rikor Games в Scream School.

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

Фото на обложке: unsplash.com

Нашли опечатку? Выделите текст и нажмите Ctrl + Enter

Материалы по теме

  1. 1 Российская киберспортивная команда проведет матч за $18,2 млн
  2. 2 «Пока дроны орошают поля, фермер играет в Farming Simulator»: Сооснователь 5518 Studios об изнанке гейм-индустрии
  3. 3 Игра в Го помогает принимать важные решения в бизнесе. Как это работает?
  4. 4 Хотите сотрудничать с блогером? Есть 5 способов кроме рекламных интеграций
  5. 5 Сейчас лучшее время для стартапа, чтобы поднимать инвестиции — мнение