Какие движки наиболее популярны в 2021 году — да и вообще в последнее десятилетие? Очевидно, по всем параметрам лидирует Unity. Unreal, в свою очередь, — пожалуй, наиболее очевидный выбор для AAA. О таких выводах догадаться несложно, даже не имея на руках никаких численных данных. Но что, если все-таки попытаться их собрать? Сайт gamedatacrunch.com максимально приблизился к реализации этой задачи, и его основатель Ларс Дусе на днях выкатил анализ движков paid-игр в Steam, выпущенных с 2010 года. В этой статье по нему мы тоже пройдемся, но и вспомним о том, какие еще движки сейчас в обиходе (и не только в Steam). Итак, самый популярный движок не только в мобильной игровой разработке (где он занимает более 50% рынка), но и на Steam для ПК — Unity. Здесь никакой интриги нет, это видно и из диаграммы ниже, на которой показана популярность игровых движков в Steam по годам, начиная с 2010. Как мы видим, Unity действительно является доминирующим движком, начиная с 2016 года. Статистика эта все еще не безукоризненно точная (Unknown — игры, движки которых не удалось идентифицировать), но в определенной степени на нее можно полагаться. Почти то же самое, но в виде круговой диаграммы: Unity (Unity Technologies). Впервые выпущенный в 2005 году как движок только для Mac OS X, теперь Unity поддерживается и Windows, и Linux, а также известен своей кроссплатформенностью на все мобильные, консольные, ПК-платформы и даже AR/VR. Отличается мощным комьюнити и обилием обучающих материалов, а также наличием огромной библиотеки ассетов и плагинов, с помощью которых можно значительно ускорить процесс игровой разработки. Это самый популярный движок среди разработчиков игр, причем как среди инди, так и более крупных студий. Движок сосредоточен на идее «доступности»: у него довольно низкий порог входа, его легко освоить, он бесплатен для независимых разработчиков (подписка же Unity Pro стоит $1,800/год).  Из минусов? Да, движок довольно прост в освоении, но если вы хотите создавать что-то сложнее примитивных платформеров, то вам понадобится хорошее знание C# для написания скриптов и объектов и последующего внедрения их в игру. Также нужно понимать, что Unity — уже довольно старый движок, поэтому в нем есть свои особенности и артефакты, а вместе с тем — порядочная медлительность и необходимость допиливать некоторые инструменты своими силами. Например, игры, использующие uNet для работы в сети, вскоре должны будут поддерживать инфраструктуру самостоятельно, поскольку поддержка этого инструмента постепенно прекращается. Примеры тайтлов: Among Us Cities: Skylines Fall Guys: Ultimate Knockout Phasmophobia Hollow Knight Escape from Tarkov Ori and the Blind Forest Unreal Engine (Epic Games). Названный в честь игры 1998 года, в которой он и был впервые использован, Unreal Engine с годами все больше снижал лицензионные сборы и требования к revenue, так что теперь доступен практически для каждого, кто хочет создавать на нем игры. Тем не менее, чаще он используется все-таки для AAA-проектов.  В нем заложен практически тот же инструментарий, что и в Unity: работа с физикой, 3D-графикой и не только, — но существуют и некоторые другие решения, способные склонить разработчиков в его пользу. Впрочем, для всего этого уже требуется определенный уровень скиллов. Это мощный движок для создания высокореалистичных игр «из коробки», поддерживающий быстрое прототипирование и визуализированный кодинг, а также имеющий обширную кастомизацию. Его широко используют не только в ПК, консольной и мобильной игровой разработке, но и вне геймдева: например, в кино (один из наиболее ярких и свежих тому примеров — сериал «Мандалорец»), архитектуре и автомобильной промышленности. Примеры тайтлов: PlayerUnknown's Battlegrounds Sea of Thieves Fortnite Final Fantasy VII Remake Dead by Daylight BioShock: Infinite Star Wars Jedi: Fallen Order GameMaker Studio (YoYo Games). Выпущенный в 1999 году, GameMaker ориентирован на начинающих разработчиков и обладает интуитивно понятным Drag & Drop: для его использования нет необходимости написания каких-либо скриптов и тонн кода, как и вообще знания языков программирования. Готовую игру можно сразу экспортировать в Steam.  В нем нет таких возможностей для работы с 3D, как в Unity и Unreal: вместо этого он фокусируется на 2D-играх. Другой недостаток — высокая цена при работе с несколькими платформами. Но если вы готовы заплатить за покупку нескольких лицензий, то GameMaker Studio 2 может оказаться неплохим решением для кроссплатформенной игровой разработки. Примеры тайтлов: Hotline Miami Katana Zero Risk of Rain Undertale Spelunky Hyper Light Drifter Ren'Py (Tom "PyTom" Rothamel). Запущенный в 2004 году под лицензией Массачусетского технологического института (MIT), Ren'Py (от англ. Ren'ai (恋愛) — «романтическая любовь» по-японски, и Python, на котором он построен) — это кроссплатформенный бесплатный движок с открытым исходным кодом для создания визуальных новелл с более чем 450 играми в Steam и более 4800 в целом. Как конструктор типичного представителя жанра, движок интуитивно понятен для любого пользователя, но для создания более сложных игр требует уже знания Python.  Примеры тайтлов: Ladykiller in a Bind Long Live the Queen Analogue: A Hate Story RPGMaker. Самый старый из этого списка, разработанный аж в 1992 году, RPG Maker представляет собой скорее серию связанных движков, ориентированных на создание JRPG (японских ролевых игр). У него было несколько издателей на протяжении многих лет в разных странах, включая неавторизованные локализации. Прост в освоении даже новичками, не требует знания языков программирования и в целом представляет собой скорее конструктор для создания игр определенного жанра, благодаря чему и пользуется особой популярностью. Примеры тайтлов: To The Moon Corpse Party Ao Oni Rakuen Adobe AIR (раньше Adobe, с 2020 года — Harman International). Adobe Integrated Runtime (AIR) вышел в 2008 году и позволил разработчикам Flash/ActionScript перенести на ПК написанные на различных языках программирования web-приложения, не требуя их запуска через браузер, так что многие из самых популярных игр Steam являются адаптациями браузерных игр на Flash. Это кроссплатформенная среда, позволяющая небольшими усилиями создавать билды для Windows, OS X, Linux, QNX и Android.  Примеры тайтлов: The Banner Saga The Henry Stickmin Collection Samorost 3 OGRE. Объектно-ориентированный графический движок с открытым исходным кодом, на котором базировался Roblox вплоть до 2014 года. Имеет неплохие возможности, такие как поддержка OpenGL и Direct3D, совместимость с платформами Windows, Linux, Mac OS X и iOS, программирование GPU и шейдеров на ассемблере и языках высокого уровня, и многое другое. Это не игровой движок как таковой — это графический движок для рендеринга трехмерной графики. В нем нет встроенной поддержки сети, звука и многих других функций, но есть портированные под движок библиотеки, расширяющие его функционал:  PhysX SDK, OpenGUI и другие. Примеры тайтлов: Rebel Galaxy Rebel Galaxy Outlaw Kenshi Torchlight XNA (Microsoft). XNA's Not Acronymed был выпущен в 2006 году как набор инструментов, позволяющий упростить игровую разработку под Windows и Xbox и освобождающий от написания повторяющихся шаблонных кодов. Эдакий DirectX на .NET. Впрочем, уже в 2013 году стало известно, что новые версии XNA более разрабатываться не будут. Примеры тайтлов: Celeste Rogue Legacy Stardew Valley MonoGame. Не столько игровой движок, сколько реализация все того же фреймворка Microsoft XNA c открытым кодом, который широко используется инди-разработчиками для кросс-платформенной разработки. Включает в себя редактор среды, графический пользовательский интерфейс, систему частиц, физику и многое другое. Отличается большой гибкостью, так что часто выступает в качестве основы для других игровых движков. Примеры тайтлов: Axiom Verge Bastion Infinite Flight KiriKiri (w.dee). Еще один «классический» японский движок-конструктор для создания визуальных новелл, JS-ориентированный и с встроенным Drag & Drop. С 2013 года реинкарнировал в KiriKiri Z. Примеры тайтлов: Fate Stay Night Nekopara CryEngine (Crytek). На самом деле, согласно другим данным по Steam, CryEngine тоже занимает на этой платформе далеко не последнее место. Как и Unreal Engine, CryEngine тоже нацелен на AAA-сегмент, но, в отличие от него, имеет меньше обучающих материалов, в целом сложнее для изучения, да и комьюнити не такое дружественное, как у соперников. Это кроссплатформенный движок, заточенный больше всего на создание фотореалистичных шутеров от первого лица: в комплекте с базовой версией движка даже идет GameSDK — полноценный шутер, который можно адаптировать под ваши нужды. Впрочем, мобильные платформы и портативные консоли в его кроссплатформенность не входят.  Впоследствии лег в основу Amazon Lumberyard. С выпуском в 2016 году CryEngine V перешел на модель распространения «плати сколько хочешь». Известные тайтлы: Far Cry Crysis Prey Kingdom Come: Deliverance Sniper Ghost Warrior Hunt: Showdown Amazon Lumberyard (Amazon). Бесплатный кросс-платформенный движок класса AAA, разрабатываемый Amazon с 2016 года. В его основу легла архитектура CryEngine. Хороший выбор не только для AAA-сегмента, но и для старт-апов и инди-студий. Как минимум, о многом говорит то, что Star Citizen перешла именно на него.  Тем не менее, страдает движок от тех же недостатков, что и CryEngine: небольшое комьюнити, мало материалов, меньший уровень надежности, чем у более популярных конкурентов. Известные тайтлы:  New World Star Citizen Godot (MIT). Довольно новое решение в экосистеме игровых движков, но имеющее ряд интересных особенностей. И пусть пока Godot не может похвастаться какими-то особыми игровыми хитами, он обладает всеми возможностями передовых движков — при этом он полностью бесплатный, с открытым исходным кодом и довольно легок в освоении. Тем более, вокруг него уже собралось крепкое комьюнити и существует довольно много полезных инструментов.  Godot поддерживает несколько языков программирования: C#, C++, GDScript, основанный на Python, и язык визуального программирования. Все игровые ресурсы хранятся в папке проекта в виде обычных файлов, что во многом упрощает работу с системой управления версиями для разработчиков. Из минусов: пожалуй, можно отметить, что он даже слишком заточен на новичков. Примеры тайтлов: Cruelty Squad Carol Reed Mysteries 1000 Days To Escape Здесь мы сосредоточились на игровых движках, наиболее популярных в Steam, но список существующих движков непрерывно растет. Многие крупные игроки на рынке геймдева пользуются собственными движками: Electronic Arts — Frostbite, CD Projekt RED — REDengine, Remedy Entertainment — Northlight. Одни движки уходят, на смену им набирают популярность другие, разрабатываемые как компаниями, так и независимыми разработчиками на коленке, на основе старых и с нуля.