Профессия Gamedev (разработчик игр)

Артём Орлов 5
Профессия Gamedev (разработчик игр)

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

Рекомендуем вам пройти Тест на профориентацию по объектам труда
Профессия подходит тем, кого интересует информатика (см. выбор профессии по интересу к школьным предметам).

Содержание

Краткое описание

Gamedev может работать как самостоятельно, так и в команде, которая состоит:

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

Игровых девелоперов условно можно разделить на несколько групп:

  • настоящие мэтры, которые делают популярные игры в известных компаниях;
  • профессионалы, создающие качественные продукты среднего сегмента;
  • создатели простых игр (браузерных, мобильных и других);
  • геймеры и любители, которые выпускают дополнения и индии-игры.

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

  • Хотите стать профориентологом всего за 2 месяца?
    Получите полезную профессию, помогающую людям. Курс Эльмиры Давыдовой.

Языки разработки игр

Больше всего в геймдеве используются:

  • C, C++ (большие игры на UE – Unreal Engine);
  • C#, Java (игры на Unity);
  • PHP, JavaScript (браузерные);
  • C++, C#, Objective-C, Java, Python (массовые многопользовательские мобильные типа Crash Arena Turbo Stars, King of Thieves и Bullet Echo (мидкорный тактический командный шутер));
  • TypeScript, JavaScript, Ruby (мини-игры и виртуальная expo-зона на платформе WN Hub – входит в группу проектов WN Media Group);
  • Swift (для iOS);
  • Java/Kotlin (для Android);
  • Python (для Panda 3D, Blender Game Engine, PYGame);
  • С++, C# (для графической разработки на Unity – чтобы работать с алгоритмами для повышения качества и реалистичности графики).

В целом чаще всего в геймдеве пишут на C++. Утилиты и сборки в Unreal Engine написаны на C#. В UE широко используется CSS-фреймворк Blueprints. В этой системе визуального скриптинга сделана большая часть поверхностных систем Unreal Engine, к примеру, анимационные графы. Если интересует мобильная разработка, то понадобится знание нативных языков (Objective-С, Java и др.).

Специфика профессии

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

  • инструмент Unity и другие движки, которые необходимы для создания 2D- и 3D-игр;
  • объектно-ориентированное программирование;
  • языки программирования C#, C++, Java и другие;
  • оптимизация 2D- и 3D-игр;
  • 3D-редакторы;
  • этапы проектировки игрового процесса, прорисовки, визуализации, анимации, физики и других аспектов игры; 
  • основы разработки игр для мобильных устройств и многое другое.

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

Специализации gamedev-программистов

Gamedev – универсальный специалист, который должен уметь создавать анимацию, визуальные эффекты, концепцию игры, дизайн, знать основы моделирования и юриспруденции. Да, геймдев-разработчик, если он работает на себя, должен уметь не только защитить, но и запатентовать разработанную игру или ПО для нее.

Это пока преобладающий на российском рынке геймдева подход к определению обязанностей разработчика игр и пониманию его задач.

В западных gamedev-компаниях у разработчиков игр обычно разные профессиональные роли:

  • Gameplay Developer – разрабатывает механику. Геймплеи работают в тандеме с гейм-дизайнерами, поставляющими механику.
  • Engine Developer – программирует движок: пишет утилиты, инструменты для других разработчиков, отвечает за SDK-интеграцию.
  • Graphics Programmer – обеспечивает качество игровой картинки, работает с низкими уровнями OpenGL, DirectX. Программист игровой 3D-графики пишет шейдеры, оптимизирует графику продукта под разные устройства – планшеты, смартфоны, ПК.
  • Animation Developer – разрабатывает анимационные системы, занимается скелетной анимацией (Skeletal animation), пишет утилиты для аниматоров и разработчиков. Обычно нужен в gamedev-студиях, работающих с кастомными движками (Deep Silver, Ubisoft, Gameloft и др.).
  • Tools Developer – пишет на фреймворке Qt или внутри движка тулзы (небольшие вспомогательные программы, утилиты) для гейм-дизайнеров.
  • UI Developer – совершенствует интерфейс, например, создает меню, продумывает переходы между ними. Из более сложных задач – разработка кастомизации (индивидуальной настройки на вкус пользователя) внешнего вида игрового персонажа.
  • Audio Developer – занимается звуком, создает всевозможные саунд-эффекты (шум воды, гром, эхо и т. д.) Эта специализация набирает популярность с развитием технологий VR (виртуальной реальности), в которой нужен трехмерный звук.
  • Client Developer – программирует верхний интерфейс, пишет клиентский код, который обрабатывает события в игре. Игровой клиент используется в основном в многопользовательских играх, он подключает каждого пользователя к основному игровому серверу. Этот сетевой клиент собирает данные о счете, статусе игрока и т. д. и отправляет их на главный игровой сервер, чтобы он показывал каждого геймера в игре. Задача Client Developer′а – сделать так, чтобы все это правильно работало на разных платформах.
  • Back-end Developer – разрабатывает серверную часть игры, создает и поддерживает масштабируемые архитектуры сервера: профили игроков, лидерборды, кланы и др. Занимается парсерами, сбором данных, но не касается непосредственно игры.
  • DevOps Developer – одна из новых gamedev-специализаций. Задача девопса – микросервисы. Он работает с игровыми онлайн-сервисами (например, Battle.net от Blizzard Entertainment или Ubisoft Connect (бывший Uplay), через которые пользователи могут обновлять и покупать игры, вместе играть через интернет).

В странах СНГ принято считать, что один gamedev-разработчик должен обладать компетенциями всех этих десяти программистов. В зарубежных компаниях, как правило, предлагают концентрироваться на одном из направлений разработки и совершенствоваться именно в нем. Справедливости ради надо отметить, что российские студии все чаще размещают вакансии с четким объемом задач и соответствующие зарубежным специализациям геймдевов.    

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

Плюсы:

  1. Опытный и талантливый Gamedev получает достойную заработную плату.
  2. Сделать игру своей работой – такое возможно в очень ограниченном кругу профессий. 
  3. Игры для компьютеров и мобильных устройств пользуются популярностью, поэтому инвесторы охотно вкладывают средства в продвижение игровых программных продуктов.
  4. Зная языки программирования, программы для создания 3D-графики, основы разработки мобильных приложений и другие направления, связанные с профессией, специалист сможет попробовать свои силы в каждой из этих сфер.
  5. Творческая работа с возможностью самовыражаться. 

Минусы:

  1. В крупных студиях приходится отодвигать свои амбиции и творческие замыслы на второй план, ставя на первое место требования инвестора или заказчика.
  2. Ответственность за коммерческий успех. 

Личные качества

  • Стрессоустойчивость.
  • Выносливость.
  • Склонность к длительной монотонной работе.
  • Задатки руководителя.
  • Умение работать в коллективе.
  • Предпринимательская жилка.
  • Хорошо развитая фантазия.

Обучение на разработчика игр

Учиться созданию игр можно по-разному – в зависимости от будущей специализации в геймдеве. Освоить программирование на популярных в создании игр языках (C++, C# или Java, Python) можно на ИТ-направлениях подготовки в вузах или колледжах. Игровую графику, конечно, лучше изучать на дизайнерских направлениях и специальностях. Несколько примеров программ подготовки разработчиков игр в вузах:

  • «Информационные системы и технологии» (09.03.02), профили:
    • «Программное обеспечение игровой компьютерной индустрии» (Московский политех);
    • «Технологии визуального программирования» (МИРЭА);
    • «Информационные технологии в дизайне» (РГУ им. Косыгина, СПбГУПТД, МИЭТ, ГУАП, РГПУ им. Герцена, ВГТУ, НГТУ, БГТУ, ИВГПУ, ГГНТУ им. Миллионщикова);
    • «Гейм-дизайн и виртуальная реальность» (МПГУ).
  • «Прикладная информатика» (09.03.03), профили:
    • «Разработка компьютерных игр и мультимедийных приложений» (МГТУ им. Носова, ДГТУ, МИДиС;
    • «3D-дизайн» (МИСиС);
    • «Прикладная информатика в дизайне» (СПбГУПТД, ВХУТЕИН, ДВГУПС, УдГУ, ИГУ, АлтГУ, ЧГУ им. Ульянова, ДГТУ, НГПУ, ХГУ им. Катанова);
    • «Компьютерная графика» (РУДН).
  • «Программная инженерия» (09.03.04), профиль:
    • «Разработка и дизайн компьютерных игр и мультимедийных приложений» (МИРЭА).
  • «Дизайн» (54.03.01), профили:
    • «Гейм-дизайн и виртуальная реальность» (ВШЭ, B&D, ВятГУ);
    • «3D-моделирование для компьютерных игр и анимация» (ВШЭ, МИДиС);
    • «Дизайн. CGI и визуальные эффекты» (ВШЭ);
    • «Анимация и графика компьютерных игр» (МАГУ – Мурманский государственный арктический университет, БГПУ им. Акмуллы – Башкирский государственный педуниверситет).

Изучать разработку игр можно даже в педагогическом вузе, на педагогической специальности. Например, в Балтийском федеральном университете им. Канта на направлении 44.03.05 «Педагогическое образование» есть профиль «Начальное образование. Дополнительное образование (Game Design)».

Получив общую базу, большинство узких профессий игровой индустрии можно получить на курсах. Например в онлайн-школах и университетах за 10–12 месяцев можно стать разработчиком на Unreal Engine 4 (UE4) или на Unity.

Курсы


Вузы

Курсы по разработке игр

Место работы

Gamedev может трудоустроиться в агентства и компании, которые занимаются разработкой всех видов игр. Есть возможность работать удаленно, часто компании помогают с релокацией в европейские страны (Испания, Кипр и др.) Увлеченные одиночки-энтузиасты создают инди-игры.

Вакансии для разработчиков игр размещаются не только на обычных порталах поиска работы, есть специализированные сайты, через которые студии ищут нужных специалистов: программистов игр, дизайнеров, художников и т. д. Самые известные сайты для поиска работы в геймдеве: InGame Job, Talents In Games.

Доходы 

Труд разработчиков игр может оплачиваться поэтапно – по факту выполненной работы, но обычно геймдевов нанимают на ставку. Размер зарплаты зависит от обязанностей и сложности проекта. Небольшие студии могут выплачивать процент прибыли от каждого запущенного проекта. Стабильные заработки в сегменте браузерных и социальных игр, мобильных приложений, игр для PlayStation.

Зарплата gamedev (разработчика игр) на октябрь 2024

Россия 35000—120000₽
Москва 30000—50000₽

Информации о зарплатах предоставлена порталом hh.ru.

Карьера

Разработчик игрового ПО может реализовать свой талант практически в любой IT-специальности. Gamedev может открывать собственные компании, создавать продукты, которые интересны ему, а потом заниматься поиском инвесторов, работать на компанию или агентство, получая стабильную прибыль.

Профессиональные знания

  1. Языки программирования.
  2. Обязательно знание английского языка.
  3. Умение рисовать от руки или с помощью специальных программ.
  4. Знание Unity и других игровых движков.
  5. Умение работать с 3D-редакторами, программами для 3D-моделирования и другими инструментами для разработки игрового ПО.

Известные представители профессии

  1. Американ Макги.
  2. Уилл Райт.
  3. Хидэо Кодзима.

Примеры компаний с вакансиями gamedev (разработчика игр)

  • Lead Unity Developer (Middle)
  • Senior Game Server Developer (мобильные шутеры, удаленно)
  • Team Lead Unity
  • Lead Unity Developer (Middle)
  • UX/UI Designer (NFT-гейминг, удаленно)
  • Senior C++ developer (ReSharperC++/Rider C++)

Материал может содержать рекламу. Информация о рекламодателе по ссылкам в статье.

4 комментария
Оценка:
  • Vlad
    Я не дочитал до конца, но...
    Юити-джава?
    Концепция и код? -к этому даже отдельный вопрос, зачем писать в заголовке на столько общие навыки, если профессий много(извините за столько дизайнеров,просто в основном я только их и знаю) - UI дизайнер, нарративный геймдизайнер, ведущий геймдизайнер,саунд дизайнер, технический геймдизайнер, левел дизайнер, игровой сценарист, концепт художник, и это только малый список без программистов которые отвечают каждый за своё
    Вот чем сценаристу нужен код и 3д редакторы а программисту навыки разработки концепции?
    Ответить
    0
  • Николай Катков
    Блииин как это круто!!!)))Я пока учусь в 8 классе, но
    мечтаю создавать игры, пока я только изучаю про
    геймдев все! Я
    стану разработчиком игр))
    Ответить
    24
  • Ilya Chernikov
    Ajax это не ЯП. Это технология для асинхронных запросов на javascript и использованием Promise. Аналог Task из C#. И ооп не обязательно, вон некоторые на расте делают, где ооп и нет вовсе
    Ответить
    16
  • Остап Позюбан
    Отличная статья! Она будет моим толчком к профессии, ведь я как раз хотел искать "успешных" в IT и разбить эту глобальную цель на части. (мне 13 лет)
    Ответить
    39