В статье рассказывается:
- Понятие игрового движка
- Классификация игровых движков
- Самые популярные игровые движки
- Менее известные, но эффективные игровые движки
- Выбор между готовым движком и написанием своего
- Где научиться разрабатывать игры
-
Пройди тест и узнай, какая сфера тебе подходит:
айти, дизайн или маркетинг.Бесплатно от Geekbrains
Про игровые движки слышали, вероятно, все, кто так или иначе связан с играми. У простых пользователей может быть превратное понимание того, зачем нужен движок, и насколько использование того или иного варианта влияет на конечное качество самой игры. Для тех, кто собирается делать первые шаги в области геймдева, важно еще и то, насколько движок будет прост в освоении и пригоден для решения поставленных задач.
Чтобы ответить на все эти вопросы, необходимо разобраться с самим понятием «игровой движок», посмотреть на отличия разных вариантов и сферу применения. В нашей статье мы разберемся со всеми поставленными вопросами и дадим небольшой обзор на популярные игровые движки.
Понятие игрового движка
Само понятие происходит от английского «Game Engine». При дословном переводе означает то, что знаем все мы, - игровой движок. В действительности это простое словосочетание скрывает под собой целый комплекс программ, задействованных с целью «оживить» героев и события. Одни отвечают за физику, другие - обеспечивают визуализацию и звук, третьи - заставляют персонажей двигаться в соответствии с заложенными скриптами, четвертые - отвечают за сцены и так далее.
Впервые термин «игровые движки» начал употребляться только в 90-х годах прошлого века, и был связан с кодом одной популярной игры, которая находит упоминание и сегодня. Она создана в распространенном тогда жанре «шутер от первого лица» и называется Doom. Там было все: от объемной графики и звуков до расчета столкновений и скриптов.
входят в ТОП-30 с доходом
от 210 000 ₽/мес
Скачивайте и используйте уже сегодня:
Топ-30 самых востребованных и высокооплачиваемых профессий 2023
Поможет разобраться в актуальной ситуации на рынке труда
Подборка 50+ бесплатных нейросетей для упрощения работы и увеличения заработка
Только проверенные нейросети с доступом из России и свободным использованием
ТОП-100 площадок для поиска работы от GeekBrains
Список проверенных ресурсов реальных вакансий с доходом от 210 000 ₽
Проделана настолько объемная работа, что другие программисты решили ничего не выдумывать, а просто брать части готового кода и переделывать их, создавая новое: графику, уровни, оружие, правила. Таким образом, Doom заложила базу для многих последующих игр.
В связи с очевидным удобством использования готовых движков ряд компаний сосредоточился на их разработке и последующей реализации по лицензии. Так, например, появились Unreal Engine и id Tech 3. Стоимость лицензий колебалась от нескольких тысяч долларов до миллионов. Однако, для личного пользования можно было приобрести и бесплатные игровые движки, среди которых есть популярные Unity и Unreal Engine 4.
Классификация игровых движков
По большей части они схожи между собой. Различие состоит лишь в количестве предлагаемых возможностей. В связи с этим деление на группы происходит по критериям.
Так, игровые движки можно разделить по использованным для них программам:
- Специальное ПО — фактически помогает собрать игру посредством комфортного редактора.
- Фреймворк — набор функций и классов, которые придется объединять самостоятельно, зато можно отследить все процессы.
В последнем случае игру надо программировать на том же языке, на котором прописаны готовые части кода. При использовании ПО, в свою очередь, можно задействовать:
- Полноценный язык программирования. Это и общеизвестные C++, C#, Javascript, и чуть менее популярный, но тоже применяемый Lua.
- Адаптированный скриптовый язык. По сравнению с использованной для своего создания базой имеет синтаксические доработки и более широкие возможности. Создается специально под разработку игры. Может быть взят любой подходящий, поскольку в основе своей они схожи, но универсальных нет.
- Визуальный интерфейс. Упрощенный вариант программирования, при котором вместо прописывания кода надо работать с узлами, обозначающими какое-либо действие. Для него все равно понадобится освоить принципы разработки, а сам способ отличается громоздкостью, поскольку необходимо работать с огромным множеством блоков.
По типам лицензии игровые движки для создания игр делятся на следующие категории:
- Платные — доступ предоставляется после разового платежа либо по подписке.
- Бесплатные — не требуют денег за использование, но от реализуемых на них игр придется отчислять процент.
- С открытым исходным кодом — можно использовать, как угодно, ограничения в них минимальны.
Перечень возможностей, которыми может быть снабжен движок:
- Уровни.
- Диалоги.
- Свет и тень.
- Физика.
- Система частиц.
- Анимация 2D и 3D.
- Навигация.
- Карты тайлов.
- Редактор местности (terrain).
- Шейдеры.
Приведенный список не является исчерпывающим. Однако, по мере увеличения количества возможностей усложняется и сам движок. Программисту требуется больше сил и времени, чтобы вникнуть в управление им. Помимо прочего удлиняется и процесс компиляции. В связи с этим не гонитесь за возможностями, берите то, что удовлетворит текущие потребности, с небольшим запасом.
Самые популярные игровые движки
Сначала речь пойдет о тех, что уже зарекомендовали себя ценой и качественными играми. У них широких инструментарий и они позволяют создавать проект для реализации сразу на нескольких платформах. Помимо прочего, такие движки за много лет снабдились гайдами по изучению для любого уровня пользователя, поэтому браться за них можно, минуя более простые и легкие варианты, без опаски.
Unity
Игровой движок, являющийся самым распространенным на сегодняшний день.
на курсы от GeekBrains до 24 ноября
Платформы, на которых он работает: смартфоны, планшеты, ноутбуки и ПК, ОС Mac и Linux, Facebook*, VR, консоли и т.д.
Unity позволяет программировать игры под мобильные телефоны и не только. На нем написаны нашумевшие Angry Birds 2, Hitman Go, Heartstone, а также Monument Valley, Fallout Shelter, Ori and the Blind Forest. Также движок использовался для создания Pillars of Eternity, Firewatch, Inside, Pokémon Go, Super Mario Run, Cuphead, невероятно актуальной на сегодня игры Escape from Tarkov, Life Is Strange: Before the Storm и многих других.
В Unity реально сделать игры с обоими типами визуализации: и 2D, и 3D. Для упрощения работы в Asset Store можно за разную оплату (и даже бесплатно) скачать готовые модели, текстуры и даже целые проекты (шутеры, например). Разнообразие обучающих материалов как от самих разработчиков, так и от энтузиастов не даст запутаться и поможет сделать первые шаги новичкам, а также улучшить свои творения опытным программистам. Отдельно стоит упомянуть, что у Unity есть удобные плагины, благодаря которым можно добавить в игру возможность совершения внутренних покупок и рекламу.
Читайте также!
Безусловно, есть те, кто категорически недоволен графикой. Однако, усреднена она была еще в самом начале, чтобы не оттягивать на себя слишком много ресурсов. К слову, последнее обновление движка содержит в себе Rendering Pipeline, с которым игру можно отрисовать даже на уровне топовых AAA-проектов.
Unreal Engine
Игровой движок, популярность которого постоянно растет, чему немало способствует компания Epic Games. По разработке на нем регулярно проводятся стримы и встречи, недавно даже состоялась первая конференция.
Unreal делает акцент на графике, которая требует немалых ресурсов, поэтому используется преимущественно для разработки под консоли и ПК. Периодически его используют и для мобильных платформ, но игр такого формата известно немного: Fortnite и PUBG. Также на Unreal созданы Infinity Blade, Batman: Arkham Knight и Life is Strange.
Что касается графики, есть те, кто утверждает, что данный движок существенно превосходит Unity. Действительно некоторые объекты и эффекты более привлекательны. Однако, эти движки слишком отличаются между собой, чтобы их сравнивать.
CryEngine
Создание этого игрового движка оправдалось после выхода Crysis, собравшей немало фанатов в свое время. Также на нем были написаны Far Cry, MechWarrior Online, Sniper: Ghost Warrior 3. На этом движке сделаны Armored Warfare и Homefront: The Revolution, а также Prey 2017-го года.
Используется для разработки игр под консоли, VR и ПК. По поводу мобильных платформ нет никакой информации, поскольку их поддержка не осуществляется. Однако, по некоторым данным можно говорить о том, что в принципе разработка реальна.
Код движка открыт для использования и изменения. С одной стороны, это приятный момент. С другой — есть немало подводных камней.
Менее известные, но эффективные игровые движки
- GameMaker Studio 2
Простые игровые движки примечательны тем, что на них удобно стартовать в геймдеве. GameMaker Studio благодаря визуализации легко дается новичкам и позволяет разрабатывать игры в 2D, а также РПГ. Еще одним приятным бонусом является прямой экспорт готового проекта по нажатию кнопки в Steam или Facebook*.
- Cocos Creator
Приятно удивит тех, кто уже знаком с Unity, а все потому, что имеет схожий интерфейс. Представляет собой надстройку над Cocos 2D для разработки под мобильные платформы. Механика основывается на спрайтах и узлах. Иначе говоря, работа ведется с более простыми 2Dмоделями, с которыми можно производить разные манипуляции.
- Corona (Solar2D)
С этим движком можно программировать на Lua. До 2020 года он носил название Corona Labs Inc, после чего был переименован Solar2D и стал распространяться бесплатно с доступом к коду.
- Godot
Отличный вариант для новичков. Легкий в освоении и очень мощный, позволяет продумывать игры с 2D и 3D. Имеет собственный, основанный на Python, язык программирования GDScript, помимо которого можно использовать C# и C++, а также визуальный. Его архитектура основана на древовидной структуре, поэтому любой элемент в нем может быть по необходимости превращен в сцену, что очень удобно.
- Ren’Py
Подходит всем, кто знаком с Python и хочет его закрепить, а также помогает перестать бояться разработки. Подходит для создания визуальных новелл, квестов, но не платформеров, да и для экшенов функционал не тот. Имеет простой и интуитивно понятный интерфейс.
Выбор между готовым движком и написанием своего
Есть два варианта: пользоваться тем, что есть, или сделать новое. Первый способ хорош в том, что движком уже кто-то занимается и можно попросить совета, когда что-то идет не так или не работает. Второй же позволяет создать нечто исключительное под свои нужды и никому за это не платить. Правда, ресурсы все-таки придется потратить, а именно: время, знания и умения, поскольку движку нужны алгоритмы и графика, а также бесперебойная работа. Именно поэтому второй способ не для начинающих.
В некоторых случаях, если разработчик понимает C++ и разбирается в графическим библиотеках типа OpenGL, попробовать можно. Однако, необходимо быть готовым к долгому периоду доработок, поскольку многое проявится только на практике.
Корректировки и дополнения требуются всем, даже большим компаниям, создающим лучшие игровые движки. Например, Electronic Arts, на счету которой Battlefield и Mass Effect, постоянно пополняет свои разработки новыми полезными функциями и вписывает Frostbite то в один, то в другой проект.
Читайте также!
Для первого опыта лучше обратиться в сторону готового решения, чтобы не перемудрить. Это нормальная практика даже для крупных разработчиков игр. Достаточно вспомнить, что многие известные проекты и серии выпущены на Unreal Engine или Unity.
Где научиться разрабатывать игры
На факультете гейм-дизайна в GeekBrains опытные наставники помогут постичь азы разработки и создать свои первые проекты, даже если ученик мало смыслит в программировании, но готов стараться. Руководить прототипированием будет опытный эксперт и наставник из международной компании.
Курс подойдет, если вы:
- Новичок и хотите попробовать себя в этой отрасли, потому что любите видеоигры и настолки.
- Начинающий гейм-дизайнер и хотите прокачать свои навыки и умения, пополнить копилку знаний, структурировать имеющиеся, актуализировать с помощью опытных наставников.
- Маркетолог и хотите разобраться во всем, что касается геймификации, в том числе пополнить базу знаний понятиями баланса, расчета нагрузки, сеттинга и прочими.
Программирование игрового движка — сложный и увлекательный процесс. Для того чтобы написать свою игру, можно использовать готовое ПО и фреймворки, пользоваться их платными и триал версиями, применять мощные и простые инструменты, включая визуальные, работать самостоятельно или в команде. При ответственном подходе, терпении и упорстве можно достичь впечатляющих результатов во всех вариантах. Если вы настроены серьезно и нацелены на полноценный вход в профессию, то знаете, куда обратиться. Желаем вам успехов!
*Facebook — организация, деятельность которой признана экстремистской на территории Российской Федерации.