Баннер мобильный (3) Пройти тест

Кто такой разработчик игр?

Разбираемся, достаточно ли любви к играм, чтобы стать крутым геймдевом

Гид по профессии

25 июля 2024

Поделиться

Скопировано
Кто такой разработчик игр?

Содержание

    Разработчики игр воплощают мечту многих геймеров — создают игровые миры, механики и сложные интересные уровни. Преподаватель Unity и C# Василий Горелкин рассказывает, кто такие инди-разработчики, почему рынок игр вырос на 35% и что нужно, чтобы сделать вымышленные вселенные реальностью.

    Чем занимаются разработчики игр?

    Когда игры были простыми, их самостоятельно писали программисты. Например, игру «Змейка» разработал финский программист Танели Арманто, а пасьянс «Косынка» — стажер Microsoft Уэс Черри.

    Со временем игры стали сложнее, и в их разработке теперь участвует много разных специалистов: гейм-дизайнеры, 2D-3D артисты, художники и дизайнеры, композиторы и саунд-дизайнеры, сценаристы и другие. Но именно программисты создают из отдельных ассетов (моделей, звуков, анимаций, сценариев и т. д.) целый мир со своими правилами и законами. Они делают это c помощью игрового движка и языка программирования: самые популярные — Unity (C#) и Unreal Engine (C++).

    Где они нужны?

    Разработчики игр работают в студиях, которые создают, продают и продвигают игры. Студии, как правило, специализируются на видах и жанрах игр. Так, американская компания Bethesda создает трехмерные игры для компьютеров и приставок, например Fallout и Doom. Финская компания Rovio создает только 2D-игры для смартфонов и планшетов, например Angry Birds и Bad Piggies.

    В больших игровых компаниях работает много разработчиков и дизайнеров игр, поэтому у каждого есть специализация. Например, game developer может заниматься только программированием 3D-графики игрового мира или только созданием уровней игры, например, механикой битвы героя с боссом.

    Небольшие студии — их еще называют инди-сегментом (от английского independent, — независимый) издают всего несколько игр. Бывают и индивидуальные разработчики, которые создают игру сами от начала до конца.

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

    Эй, геймдев, почему ты все время носишь эту маску? / Векторная математика, 3D-моделирование, настройка света, процедурная анимация, кастомные шейдеры, отрисовка текстур, балансировка, дизайн уровней / Давай оставим.

    Что нужно знать и уметь разработчику игр?

    1. Готовые ассеты есть в интернете, но код, который реализует механику, пишут самостоятельно. Именно поэтому для создания своей игры в первую очередь изучите программирование.  Программистам компьютерных игр нужно владеть языком C#. Иногда используют C++, Java и Ajax. Для программирования обмена данных игр с сервером понадобится SQL и MySQL.
    2. Хорошо представлять, как работают компьютеры и сети, — игры используют много разных ресурсов, например звуковую и видеокарты, серверы.
    3. Знать математику: то, как выглядят элементы игры и механики, — все основано на алгоритмах и моделях.
    4. Работать в одной из платформ для создания игр — чаще всего в Unity или Unreal Engine.
    5. Знать английский, чтобы быстрее осваивать возможности платформ.
    6. Разбираться в других специализациях на базовом уровне. Например, как анимировать персонажа и добавить звуковые эффекты.
    7. Представлять структуру проектов и задач и организовывать свою работу.

    Новички часто недооценивают сложность процесса создания игр. После нескольких уроков Unity они хотят создавать большие игры вроде Skyrim или Dota 2. На практике это нельзя сделать, даже если собрать целую команду. По мере изучения движка и индустрии им становится понятно, что делать небольшие игры даже интереснее. Главное в профессии — не масштаб игр, а их техническая уникальность.

    Насколько это востребованная профессия?

    Игровая индустрия — один из самых растущих IT-рынков в США.

    Рынок разработки игр для разных девайсов в США, 2016–2027. Источник

    В России в 2020 году объем рынка игр составил 163,4 млрд руб. — это на 35% больше, чем в 2019 году.

    В 2020 году время, которое пользователи проводили в играх на ПК, выросло на 38%, а количество платежей в мобильных играх увеличилось на 50%.

    В сентябре 2021 года на сайте hh.ru было около 1400 вакансий только для разработчиков на Unity.

    Сколько получают разработчики игр?

    На старте карьеры после обучения можно стать джуниором с медианной зарплатой от 30 до 60 тыс. руб. в зависимости от специализации. Начинающие программисты игровой логики могут зарабатывать и до 80 тыс. руб.

    Медианный заработок мидла — 110 тыс. руб. Синьорами становятся с опытом работы от пяти лет, в среднем их зарплата выше 200 тыс. руб. Судя по рейтингам, в этой профессии получают и 300 тыс. руб. в месяц.

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

    Как строят карьеру разработчики игр?

    Джуниоры обычно работают с багами и над небольшими задачами, которые ставят старшие разработчики. Примерно через 2 года специалист становится мидлом и занимается простыми замкнутыми системами внутри игры, например интерфейсами или механикой движения персонажей.

    Еще через два года специалисты переходят на уровень синьора. Они собирают работающую игру из созданных систем и программируют сложную игровую логику.

    С опытом работы от трех лет можно стать тимлидом или техлидом: управлять командой или организовывать весь процесс создания игр. По ходу карьеры гейм-девелоперы специализируются на отдельных этапах разработки, видах и жанрах игр. Иногда уходят в смежные области — геймдизайн, 3D-дизайн или дизайн нарративов (сценариев).

    Плюсы и минусы профессии

    Плюсы

    • Интересные творческие задачи — создание персонажей, механик и целых игровых миров.
    • Низкий порог входа — C# на Unity сравнительно легко освоить, есть обучающие материалы и готовые элементы кода игр (ассеты).
    • Возможности для горизонтального развития — в индустрии есть разные профессии, в которые можно перейти, если программирование наскучит, например, можно получить опыт в 3D-дизайне или создании игровых сценариев.
    • Глобальный рынок — можно найти работу в представительстве западной компании в России, а затем переехать за рубеж.

    Минусы

    • Крупных компаний, создающих масштабные игры вроде Dota 2 или FIFA, ограниченное количество, сразу попасть в них на работу не получится. Больше всего на рынке средних и небольших студий, которые создают несложные однотипные мобильные игры.
    • Высокая конкуренция — из-за низкого порога входа и большого объема рынка игр есть много претендентов на вакансии.

    Где искать работу?

    • Сайты поиска работы HH.ru и с множеством вакансий в геймдеве.
    • Вакансии на сайте Хабр.Карьера.
    • Страница с вакансиями в геймдеве на сайте Talents in Games.
    • Биржа фриланса Kwork, где можно найти фриланс в геймдеве.

    С чего начать?

    Разработчиками игр становятся, если:

    • любят играть в игры, хорошо знают игровую индустрию и хотят создать что-то свое;
    • умеют программировать и хотят освоить новый язык и перейти в игровую индустрию;
    • работают в игровых студиях, например гейм-дизайнерами или создателями нарративов, и хотят освоить C# и Unity;
    • хотят начать карьеру в IT в перспективной игровой индустрии.

    Специфических требований к гейм-девелоперам нет: в профессию можно попасть с любым бэкграундом, если любить игры и хорошо освоить инструменты. С# достаточно прост для изучения, особенно с базовыми знаниями C, C++ или Java.

    Программирование на C# в Unity напоминает работу в среде Visual Basic, которую многие изучали на информатике в школе.

    Интерфейс Unity

    Большинство типовых игровых элементов и механик (ассетов), например движок 3D-шутера, не нужно создавать с нуля. Ассеты можно скачать в интернете, например на Unity Asset Store, и использовать в своих учебных и рабочих проектах. Также издатели Unity постоянно публикуют обучающие материалы: курсы, статьи, мастер-классы и сертификационные тесты.

    В разработке участвуют много разных специалистов, даже при создании игр в одиночку с ними придется общаться и взаимодействовать. Поэтому важно учиться работать в команде и овладеть совместной работой над кодом в Git. Для эффективной работы в команде нужно изучать смежные области, например гейм-дизайн, 3D-дизайн, анимацию и UI. Эти знания помогают команде общаться на одном языке.

    Начинать создавать собственные игры стоит как можно раньше. К первому собеседованию уже нужно иметь портфолио работ: работодателям легче понять уровень разработчика по завершенным проектам.

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

    Скопировано
    0 комментариев
    Комментарии