Агрегатор онлайн-курсов Checkroi.ru Блог Профессии Как стать разработчиком игр: задачи, знания, навыки

Как стать разработчиком игр: задачи, знания, навыки

от Мария Грищенко
Опубликовано: Страница обновлена: 808 просмотров Время прочтения: 16 минут

Разработчик или геймдевелопер создаёт концепцию игры, дизайн персонажей, игровые механики и доводит проект до продакшена. Если вы обожаете играть и мечтаете сделать собственный Minecraft или Greenlight, то профессия для вас. Разбираемся, как стать разработчиком игр: как освоить профессию с нуля и какие знания и навыки для этого нужны.

Кто такой разработчик игр и чем занимается

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

По сути это тот же программист, но с уклоном в игровую специфику. Его главная задача — написать код и подобрать такие инструменты, чтобы этот мир «ожил», а игра стала интересной для пользователя. 

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

Утопия «Мор» принесла российской студии Ice-Pick Lodge мировую славуЛегендарный симулятор жизни «Мор» принёс российской студии Ice-Pick Lodge мировую славу. В 2005 г. он стал игрой года по версии журнала «Лучшие компьютерные игры». Игра продавалась по всей Европе, большей части Азии и в Латинской Америке

Ежедневные советы от диджитал-наставника Checkroi прямо в твоем телеграме!
Подписывайся на канал
Подписаться

Что нужно знать, чтобы стать разработчиком игр

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

Общие знания 

Особенности игр и жанров. Важно знать закономерности построения игрового процесса и игровых миров, ориентироваться в жанрах и знать их особенности. Трудно создать игру, не умея отличать гонку от файтинга. А ещё во многих вакансиях работодатели прямо запрашивают опыт работы в определённых проектах. 

Математика и физика. Именно математика помогает играм работать. Рассчитать траекторию полёта брошенной гранаты, отправить снаряд на вражескую территорию, спрыгнуть с высоты на землю или подняться по ступенькам — все эти действия рассчитываются математическим путём.  

При разработке игр используют такие области математики: 

  • линейная алгебра,
  • аналитическая геометрия, 
  • дискретная математика,
  • тригонометрия, 
  • математический анализ.

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

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

Английский язык. Техническая документация обычно написана на английском — знать его обязательно хотя бы на уровне чтения. Велика вероятность, что во время работы над проектом вам понадобится помощь игрового комьюнити — тогда придётся идти на многочисленные англоязычные форумы и общаться с другими разработчиками. 

Игровые движки

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

Поэтому так важно тщательно изучить один из движков: CryEngine, GameSalad, HeroEngine, Chrome Engine, Frostbite, Source, Id Tech или Creation Engine. Наиболее популярные — Unity и Unreal Engine 4. Они же и наиболее конкурирующие. У разработчиков существует извечный спор: какой движок выбрать начинающему разработчику — Unity или Unreal Engine 4. Давайте сравним. 

Критерий 

Unity

Unreal Engine 4

Создатель  Unity Technologies Epic Games
Язык программирования C# С++
Особенности 
  • удобная визуальная среда разработки 
  • большая библиотека ассетов и плагинов
  • возможность портировать игр на разные платформы
  • возможность интегрировать игры со многими графическими или анимационными приложениями
  • мультиплатформенность
  • бóльшие графические возможности 
  • простота работы 
  • широкий встроенный инструментарий разработки
Известные игры, созданные на движке  Cuphead, Hearthstone, Cities: Skylines, Rust, 7 Days To Die, Hitman: Sniper, The Forest Mass Effect, Bioshock Infinite, Mortal Combat 11, Fortnite, Borderlands, Batman: Arkham Asylum
Для каких игр подойдёт  мобильные 2D и 3D-игры, одиночные и сетевые игры для десктопа  ААА-игры с большим бюджетом, шутеры и приключенческие экшены
Что ещё можно сделать на движке  анимированные видео, игровые трейлеры, кат-сцены, VR-игры  VR-игры 
Для кого подойдёт  для новичков  для более опытных программистов 

Новичку будет проще начать свой путь в профессии разработчика игр с подборки «Топ-8 курсов для разработчиков игр на Unity»

Языки программирования

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

В случае с Unity — это C# или «Си шарп». Unreal Engine 4 требует знания С++. Также не будут лишними Python, Java, JavaScript, HTML5, CSS3 и SQL. 

Курсы по C# помогут разобраться, как делать игры, сайты, серверные, десктопные и мобильные приложения
Курсы по С++ помогут освоить процесс создания сложных микросервисов, операционных систем, программирования компьютерного железа и игровых движков

Программы для 3D-моделирования

Трёхмерная графика — неотъемлемый элемент любых видеоигр. Она помогает создавать объёмные объекты, добавлять им движения, накладывать текстуры и настраивать освещение сцены. Поэтому вам понадобится овладеть программами для 3D-моделирования. Есть бесплатные — Blender и платные — ZBrush, 3ds Max. 

3D-эффекты для фильмов «Притяжение» и «Вторжение» Фёдора Бондарчука делала российская студия Main Road|Post. Студия разрабатывала графику и для многих других отчественных фильмов 

На онлайн-курсах 3D-моделирования вы за короткое время научитесь разрабатывать текстуры, прорисовывать детали и движения персонажей

Git и GitHub

Git — наиболее популярная система контроля версий, которая позволяет вести историю разработки проекта. В Git к каждой сохранённой версии можно получить доступ и посмотреть её. GitHub — онлайн-хостинг, где хранятся сами проекты. Для начала достаточно освоить только основные операции в этих системах. Полезно будет изучить проекты с открытым исходным кодом, которые разработали и опубликовали другие программисты. Вы можете делиться своими собственными наработками и получать по ним обратную связь. 

Софт-скилы 

Усердие и усидчивость, аккуратность и внимание к деталям приветствуются. Ведь создать игру — это долгий и сложный процесс со множеством нюансов. Ещё пригодятся умение рисовать от руки, развитая фантазия и нестандартное мышление. И, конечно, горячая любовь к играм

Игра Red Dead Redemption 2 от Rockstar GamesИгра Red Dead Redemption 2 от Rockstar Games сочетает в себе элементы приключенческого боевика и шутера от третьего лица с открытым миром, — одна из самых известных AAA-игр с большой армией поклонников. По состоянию на 6 февраля 2020 года было продано более 29 миллиона копий. А за первые три дня продаж игра принесла более $725 млн

С чего начать 

Чтобы получить соответствующий опыт, первые шаги придётся делать самостоятельно. Без опыта тут делать нечего — компании при трудоустройстве требуют примеры проектов и минимальный набор навыков. 

Разрабатывать простые мини-игры. По типу змейки — в интернете полно кусков кода и шаблонов, из которых вы сможете собрать свою игру. Не пытайтесь сразу сделать большой проект мечты. Пусть они будут примитивными и даже незаконченными, зато вы набьёте руку и не будете отвлекаться на более сложные детали вроде анимации. В будущем вы всегда можете доработать их. 

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

Дорожная карта по геймдевуДорожная карта по геймдеву от одного из пользователей GitHub

Устроиться в игровую студию. Готовые игры и моды вы можете положить в портфолио и показать работодателю — тогда ваши шансы найти стажировку или устроиться на вакансию младшего специалиста — джуниора в студии повысятся. Это обязательная ступень. Ведь именно в компании вы сможете поработать над реальными проектами. А значит, прокачать скилы и вырасти. 

Подходящие вакансии для начинающих разработчиков можно найти в российских игровых студиях: Nival, Alawar и Playrix 

Читать профильную литературу. Практику следует подкреплять теорией. Подавляющее большинство полезных книг по геймдеву написано на английском языке. Вот некоторых из них: 

Общаться на форумах и чатах. Во время изучения у вас возникнет много вопросов — задать их можно в тематических сообществах. Вот наиболее популярные среди разработчиков: 

За сколько можно стать геймдевелопером 

Срок обучения зависит от формата. 

Вузы

Прежде чем стать геймдевелопером, нужно стать сначала просто программистом. Для этого можно пойти в университет. Специальности «Разработчик игр» в чистом виде в российских вузах почти нет. Университет «Синергия» один их немногих даёт возможность обучиться на специальности «Разработка компьютерных игр, дополненной и виртуальной реальности»

Большинство же университетов предлагают программы, посвящённые информатике и информационным системам: 

  • Уфимский государственный нефтяной технический университет, «Прикладная информатика»
  • Московский государственный технический университет им. Н.Э. Баумана, «Информационные системы и технологии»;
  • Московский государственный университет геодезии и картографии, «Информационные системы и технологии»
  • Российский государственный социальный университет, «Информационные системы и технологии».

Длительность обучения 4–4,5 года. 

Онлайн-курсы

Фундаментальное образование — это хорошо. Но университеты дают только общие понятия и мало практики — после обучения у вас не получится самостоятельно делать крупномасштабные проекты. Другая история с обучением на онлайн-курсах — они делают упор на практике. 

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

Длительность обучения — от 4 месяцев. 

На коротком курсе «Gamecode» от XYZ School вы за 4 месяца научитесь писать игровой код, создавать персонажей и оружие и разрабатывать искусственный интеллект. В качестве дипломного проекта вы создадите и реализуете одну из геймплейных систем: бой, хит-реакции или продвинутое перемещение 

Как я стал разработчиком игр 

«Профессия разработчика игр меня манила ещё в детстве, когда я рубился в Dendy или Sega. Ведь это так круто создавать собственные миры, воплощать свои идеи в жизнь. 

Жаль, что я не занимался разработкой игр пока учился в школе и институте. Однажды я увидел вакансию в геймдев-компанию и решил попробовать. Я знал технологии, описанные в вакансии. На интервью мы обсудили различные технические вопросы, и мне предложили работу. Так я стал разработчиком игр.

Часть моих коллег работают без профильного образования, и это не мешает им делать невероятно крутые продукты. У меня тоже его нет, но я учусь каждый день, не упускаю возможность пройти интересный курс от Otus или Udemy»

 

Сергей Голицын, старший инженер-разработчик Zillion Whales

Компания Zillion Whales разрабатывает стратегии в реальном времениКомпания Zillion Whales разрабатывает стратегии в реальном времени 

Коротко о главном 

  • Разработчик или геймдевелопер создаёт игры: прописывает концепцию, придумывает дизайн, создаёт персонажей и разрабатывает прототип. Он реализует игровую логику и сценарии взаимодействия и следит, чтобы проект дошёл до продакшена. 
  • Чтобы освоить профессию, нужно разбираться в особенностях игр и жанров, понимать алгоритмы и структуры данных, знать математику, физику и английский язык. 
  • Для новичков подойдёт игровой движок Unity. 
  • Начать можно с разработки простых мини-игр или модов игр — эти небольшие проекты помогут устроиться на стажировку или на начальную позицию в студии. 
  • Чтобы стать разработчиком игр, нужно прежде всего научиться программировать. Язык зависит от движка. Освойте C#, если планируете писать на Unity или C++ — если на Unreal Engine 4. Ещё потребуется изучить программы для 3D-моделирования и систему контроля версий Git. 

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

0 Коментариев
1

Почитаем еще?

Оставьте комментарий

Мы иногда используем cookie-файлы, чтобы получше узнать вас и персонализировать контент :) Замечательно!