Пару недель назад я играл в A Plague Tale студии Asobo Studio (и прошёл её). Меня очень захватила эта игра, благодаря не только красивой графике, но и сюжету с локациями. Я решил немного изучить технологии, использовавшиеся при её разработке, и был удивлён, обнаружив, что игра создавалась на собственном движке относительно небольшой студии. Я знаю, что некоторые компании используют собственные движки, но очень сложно найти подробное маркетинговое исследование с подобной информацией. Поэтому я написал эту статью.
Сегодня многие компании выбирают для разработки игр такие движки, как Unreal или Unity (или, по крайней мере, так думают многие люди), потому что для разработки собственного движка AAA-уровня требуется множество ресурсов. Поэтому я решил составить список некоторых из самых популярных самописных движков с указанием размеров студий и значимых игр, выпущенных на этих движках.
Большинство представленных здесь движков разрабатывалось на протяжении многих лет, множества итераций и для множества видеоигр, эти движки имели несколько версий или даже полностью (частично) переписывались с нуля с последующей сменой названия. Кроме того, важно заметить, что большинство этих движков для реализации определённой функциональности (совместимость с платформами, физика, сеть, растительность, UI, рендеринг, звук...) использует всевозможное промежуточное ПО.
*Примечание: я стремился к максимальной точности при указании количества сотрудников (сверялся с веб-сайтами компании, Википедией или LinkedIn компании), но не стоит относиться к этим показателям с особым доверием (некоторые значения могут уже быть неактуальными).
КРУПНЫЕ компании
Слева направо: Assassin's Creed Odyssey, Final Fantasy XV, Red Dead Redemption 2
Ниже представлен список очень больших корпораций, иногда имеющих сложные корпоративные структуры с несколькими отделами (которые занимаются не только видеоиграми) и разными студиями/подрядчиками, создающими игры. Некоторые из них работают с несколькими движками, не только с собственными, но и с лицензированными.
Компания | Сотрудники | Студии | Движки | Notable Games |
---|---|---|---|---|
Activision/Blizzard | ~9200 | ~9 | собственные движки | Серия Call of Duty, Overwatch, Starcraft II |
Electronic Arts | ~9300 | ~36 | Frostbite | Star Wars Battlefront II, Anthem, Battlefield 1/V, FIFA 20, серия Need for Speed |
Ubisoft | ~16000 | ~54 | AnvilNext 2.0 | Серия Assassin's Creed |
Disrupt engine | Серия Watch Dogs | |||
UbiArt Framework | Rayman Legends, Child of Light, Valiant Hearts | |||
Snowdrop | Tom Clancy's The Division 2, The Settlers | |||
Dunia (на основе CryEngine) | Серия FarCry | |||
Silex (на основе Anvil) | Ghost Recon Wildlands | |||
LEAD engine | Серия Tom Clancy's Splinter Cell | |||
На основе Dunia | The Crew | |||
Capcom | +2800 | ~15 | MT Framework | Monster Hunter: World |
RE Engine | Resident Evil 7, Devil May Cry 5, RE2:Remake, RE3:Remake | |||
Konami | +10000 | ~30 | Fox Engine | Серия Pro Evolution Soccer, Metal Gear Solid V |
Square Enix | +4600 | ~18 | Luminous Studio | Final Fantasy XV |
Nintendo | +6100 | ~8 | собственные движки | Zelda: BOTW, Mario Odyssey |
Riot Games | ~2500 | ~3 | собственный движок | League of Legends |
Rockstar | +2000 | ~9 | RAGE engine | GTA V, Red Dead Redemption 2 |
CD Projekt | +1100 | ~4 | REDEngine 3 | The Witcher 3 |
Epic | +1000 | ~11 | Unreal Engine 4 | Fortnite |
Обычно такие компании вкладываются в собственные движки, чтобы иметь полный контроль над технологиями, а также избежать затрат на отчисления, требуемые лицензируемыми движками. Несмотря на это, есть некоторые большие компании, которые в последние годы выбрали для разработки Unreal Engine. Самые примечательные из них:
- Capcom использует Unreal для новых игр Street Fighter IV/V.
- В последних крупных хитах Bandai Namco используется Unreal: Jump Force, Dragon Ball Fighter Z, Dragon Ball Z: Kakarot, Tales of Arise.
- Square Enix при разработке нескольких новых игр тоже перешла на Unreal: Dragon Quest XI, Kingdom Hearts III, Final Fantasy VII Remake
Любопытно заметить, что все три компании из Японии, возможно, это какой-то региональная рыночная тенденция. Также стоит сказать, что китайский холдинг Tencent владеет 40% Epic Games; наверняка он обладает определённым влиянием на азиатский рынок.
Студии среднего размера
Слева направо: Rise of the Tomb Raider, Uncharted 4, A Plague Tale
Здесь мы рассмотрим средние компании, решившие создавать для своих игр собственные движки.
Количество сотрудников — хороший параметр, который нужно учитывать, ведь собственные движки обычно разрабатываются силами компании (то есть не отдаются на аутсорс), но стоит заметить, что некоторые из этих компаний могут иметь большой штат из-за собственных художественных/звуковых отделов, в то время как другие компании отдают эту работу на аутсорс.
Было бы очень интересно знать, сколько инженеров работает в отделе разработки движков каждой компании; я уверен, что нас бы ждал сюрприз: вероятно, над движком и инструментами трудится совсем небольшой коллектив инженеров!
Также интересно было бы узнать больше об инструментарии в составе этих движков, получить доступ к подобной информации очень сложно. Инструментарий движков обычно хранится в секрете (исключение составляют только презентации на GDC и короткие видео с демонстрацией возможностей движка).
Слева направо: Horizon Zero Dawn, God of War, Death Stranding
Компания | Сотрудники | Движок | Примечательные игры |
---|---|---|---|
Creative Assembly | +650 | Warscape Engine | Серия Total War |
Bungie | ~600 | Tiger Engine | Серия Destiny |
Infinity Ward | +500 | IW 7.0 | Call of Duty: Infinite Warfare |
Eidos-Montréal | ~500 | Dawn Engine (на основе Glacier2) | Deus Ex: Mankind Divided |
Bethesda | ~400 | Creation Engine | Skyrim, Fallout 4, Fallout 76 |
Valve Corp. | ~360 | Source 2 | Dota 2, Half-Life: Alyx |
Crystal Dynamics | ~350 | Foundation Engine | Rise/Shadow of the Tomb Raider |
Avalanche Studios | ~320 | Apex engine | Серия Just Cause, Renegade Ops, Mad Max, RAGE 2 |
Naughty Dog | +300 | Naughty Dog Game Engine | Серия Uncharted, Last of Us |
Rebellion Developments | ~300 | Asura engine | Серия Alien vs. Predator, серия Sniper Elite |
Techland | ~300 | Chrome Engine 6 | Dying Light |
Crytek | ~290 | CryEngine V | The Climb, Hunt:Showdown |
From Software | +280 | Dark Souls engine | Bloodborne, Dark Souls III, Sekiro |
Remedy | +250 | Northlight Engine | Quantum Break, Control |
Guerrilla Games | +250 | Decima | Killzone Shadow Fall, Until Dawn, Horizon Zero Dawn |
Larian Studios | +250 | Divinity Engine | Серия Divinity |
Platinum Games | ~250 | Platinum Engine | NieR Automata, Bayonetta, Vanquish |
Santa Monica Studio | +200 | собственный движок | Серия God Of War |
id Software | +200 | idTech 6/7 | Doom, Doom Eternal, серия Wolfenstein |
Sucker Punch | +200 | собственный движок | Infamous Second Son, Ghost of Tsushima? |
Insomniac Games | ~180 | Insomniac Engine | Серия Rachet&Clank, Marvel's Spider-Man |
Quantic Dreams | ~180 | собственный движок | Detroit: Become Human |
IO Interactive | ~170 | Glacier2 | Серия Hitman |
Asobo Studio | +140 | Zouna | A Plague Tale |
Ready At Dawn | ~120 | собственный движок | The Order: 1886, Lone Echo |
Mercury Steam | ~110 | собственный движок | Spacelords, серия Castlevania:Lords of Shadow |
Monolith Productions | +100 | LithTech | Серия F.E.A.R., серия Condemned, Shadow of Mordor/War |
11 Bit Studios | ~100 | Liquid Engine | Frostpunk |
Frozenbyte | ~100 | Storm3D | Серия Trine, Shadowgrounds |
Kylotonn | ~100 | KtEngine | Серия WRC, серия TT Isle of Man, V-Rally 4 |
TaleWorlds Entertainment | ~100 | собственный движок | Mount & Blade II: Bannerlord |
Daedalic Entertainment | ~90 | Visionaire Studio | The Whispered World, серия Deponia |
Media Molecule | ~80 | Bubblebath Engine | Dreams |
Paradox Development Studio | ~80 | Clausewitz Engine | Imperator: Rome, Stellaris, серия Europa Universalis |
Deck13 | ~70 | Fledge | Lords of the Fallen, The Surge, The Surge 2 |
Nihon Falcom | ~60 | Yamaneko Engine | Ys VII, Ys VIII, Ys IX |
Croteam | +40 | Serious Engine | The Talos Principle, серия Serious Sam |
Выводы, которые можно сделать из списка:
- Судя по информации в титрах игры Rise of the Tomb Raider, над Foundation engine работает всего 10 программистов, это число можно использовать для понимания того, сколько людей обычно работает над ядром движка.
- В Death Stranding Kojima Productions использует Decima engine, разработанный Guerrilla Games; ранее она использовала Fox Engine в Metal Gear Solid V.
- Похоже, что последнюю игру/движок Media Molecule (Dreams) разрабатывали всего около 15 кодеров, потрясающе!
- Компании, выполняющие разработку под одну платформу, обычно имеют меньше ограничений и могут максимально использовать возможности этой платформы. К сожалению, большинство компаний не может позволить себе такую роскошь.
- Компания Asobo Studio, благодаря которой началось это маркетинговое исследование, кажется не особо маленькой… но, как и другие компании, она параллельно работает над несколькими играми.
- Очень здорово, что в Википедии есть подробности о некоторых движках со списком выпущенных игр, это должно стать обязательной практикой.
Небольшие студии (инди-студии)
Слева направо: The Witness, No Man's Sky, X-Morph Defense
Здесь мы рассмотрим очень маленькие студии, тоже решившие создать для своих игр собственные движки. Стоит заметить, что для отдельных частей игры в таких движках применяются другие библиотеки/фреймворки. Чаще всего среди них встречаются SDL (кроссплатформенная библиотека графики и ввода), OGRE (движок рендеринга), MonoGame (кроссплатформенный игровой фреймворк, в котором также используются SDL, SharpDX, OpenTK, OpenAL-Soft...).
Многих людей может заинтересовать такой вопрос: какие же части движка на самом деле пишутся разработчиками? Бывает по-разному, но чаще сего кодеры занимаются менеджером экрана, менеджером сущностей и менеджером контента, а также обёртками/интерфейсами для внешних библиотек.
Второй вопрос: в каких частях движка обычно используются внешние библиотеки/промежуточное ПО? Это тоже зависит от ресурсов компании, но обычно это звуковая система, физика, рендеринг, работа с сетью, система UI, система рельефа, система растительности и некоторые другие элементы.
Слева направо: Factorio, Thimbleweed Park, Owlboy
В представленном ниже списке (и в следующем за ним тоже) я добавил дату издания (только от 2012 года и далее), а также ссылку на страницы всех игр в Steam… Не так много игр с собственными движками от небольших студий, и я считаю, что они заслуживают известности и поддержки.
Компания | Сотрудники | Движок | Примечательные игры |
---|---|---|---|
Runic Games | ~40 | На основе OGRE | Hob (2017 год), Tochlight II (2012 год) |
Klei Entertainment | 35 | собственный движок | Invisible, Inc. (2016 год), Don't Starve Together (2016 год), серия Shank |
Shiro Games | ~30 | Heaps.io | Northgard (2018 год), Evoland (2013 год), Evoland II (2015 год) |
Hello Games | ~25 | No Man's Sky Engine | No Man's Sky (2016 год) |
Frictional Games | ~25 | HPL engine | SOMA (2015 год), серия Amnesia |
DrinkBox Studios | ~25 | собственный движок | Guacamelee (2013 год), Guacamelee! 2 (2018 год), Severed (2016 год) |
Supergiant Games | ~20 | На основе MonoGame | Hades (2019 год), Pyre (2017 год), Transistor (2014 год) |
Wube Software | ~20 | На основе Allegro/SDL | Factorio (2019 год) |
Chucklefish | ~20 | Halley Engine | Wargroove (2019 год), Starbound (2016 год) |
Ronimo Games | ~17 | RoniTech Engine (SDL) | Awesomenauts (2017 год) |
Lab Zero Games | ~17 | Z-Engine | Indivisible (2019 год), Skullgirls (2013 год) |
Introversion Software | ~14 | SystemIV (SDL) | Prison Architect (2015 год) |
Exor Studios | ~14 | Schmetterling (на основе OGRE) | The Riftbreaker (2020 год), X-Morph: Defense (2017 год) |
Tribute Games | ~11 | На основе MonoGame | Flinthook (2017 год), Mercenary Kings (2014 год) |
Thekla Inc. (Джонатан Блоу) | ~10 | собственный движок | The Witness (2016 год) |
Numantian Games | ~10 | собственный движок | They Are Billions (2019 год), Lords of Xulimia (2014 год) |
Nysko Games Ltd. | ~10 | собственный движок | The Dwarves of Glistenveld (2019 год) |
Passtech Games | 10 | OEngine | Curse of the Dead Gods (2020 год) |
Terrible Toybox (Рон Гилберт) | 9 | собственный движок (SDL) | Thimbleweed Park (2017 год) |
Radical Fish Games | 8 | На основе Impact (JS) | CrossCode (2018 год) |
Matt Makes Games (Мэтт Торсон) | ~7 | На основе MonoGame | Celeste (2018 год), TowerFall Ascension (2014 год) |
Coilworks | ~7 | собственный движок | Super Cloudbuilt (2017 год), Cloudbuilt (2014 год) |
Lo-fi Games (Крис Хант) | 6 | На основе OGRE | Kenshi (2018 год) |
D-Pad Studio | 6 | На основе MonoGame | Owlboy (2016 год) |
BitKid, Inc. | 6 | На основе MonoGame | CHASM (2020 год) |
Double Damage Games | 5 | На основе OGRE | Rebel Galaxy Outlaw (2019 год), Rebel Galaxy (2015 год) |
Almost Human Games | 4 | собственный движок | Legend of Grimrock (2012 год), Legend of Grimrock 2 (2014 год) |
Wolfire Games | 4 | Phoenix Engine | Overgrowth (2017 год) |
Nuke Nine | 3 | собственный движок | Vagante (2019 год) |
Mega Crit Games | 3 | собственный движок | Slay the Spire (2017 год) |
Интересные факты об этом списке:
- Сооснователь Shiro Games Николя Каннасс является разработчиком языка программирования Haxe и движка Heaps, использованного Motion Twin для создания Dead Cells (2017 год).
- Hello Games — очень маленькая студия, учитывая масштаб No Man's Sky и использование собственного движка. Очень впечатляет!
- Runic Games была распущена в ноябре 2017 года, её основатели создали Double Damage, а теперь работают в Echtra Games над Torchlight III.
- Генеральный директор Chucklefish Родриго Браз Монтейро отвечает за разработку движка Halley, который является open-source!
- В большинстве этих студий за создание движка отвечают всего 1-3 человека!
- Более шести лет Lo-fi Games была командой из одного человека (Криса Ханта)!
- На разработку некоторых игр в списке было потрачено пять с лишним лет!
- Игр не так много… всего по паре хитов в год...
Движки, написанные одним человеком
Слева направо: Stardew Valley, ScourgeBringer, Eagle Island
В конце мы приведём список героев.
Игры, разработанные одним-двумя людьми на собственных движках, причём эти движки в основном писались одним человеком!
Создание движка и игры с нуля до этапа издания — огромное достижение, немногие в мире к этому готовы. Почти все из них — 2D-игры, обычно с очень низкими бюджетами, которые разрабатывались в течение нескольких лет. Разработчиков можно поздравить!
Слева направо: Axiom Verge, Ghost 1.0, Remnants of Naezith
Компания/разработчик | Участники | Движок | Примечательные игры |
---|---|---|---|
Lizardcube (Бен Фике и Омар Корнут) | 2 | собственный движок | Wonder Boy: The Dragon's Trap (2017 год) |
Guard Crush Games (Жорди Асенсио и Сирилл Лагариг) | 2 | На основе MonoGame | Streets of Rage 4 |
Pocketwatch Games (Энди Шэтц) | 2? | На основе MonoGame | Tooth and Tail (2017 год) |
Джастин Ма и Мэттью Дэвис | 2 | собственный движок | FTL: Faster Than Light (2012 год) |
Эд Ки и Дэвид Канага | 2 | собственный движок | Proteus (2013 год) |
Mountain Sheep | 2 | собственный движок | Hardland (2019 год) |
Flying Oak Games (Томас Алтенбюргер и Флориан Урто) | 2 | На основе MonoGame | Neuro Voider (2016 год), ScourgeBringer(2020 год) |
Марк Флури и Брайан Гибсон | 2 | собственный движок | Thumper (2016 год) |
Йохум Скоглунд и Никлас Мирберг | 2 | собственный движок | Heroes of Hammerwatch (2018 год), Hammerwatch (2013 год) |
Villa Gorilla (Йенс Андерссон и Маттиас Снигг) | 2 | собственный движок | Yoku's Island Express (2018 год) |
Two Mammoths (Пётр Турецки и Мартин Турецки) | 2 | собственный движок | Archaica: The Path of Light (2017 год) |
Bare Mettle Entertainment (Мэдок Эванс) | 1? | собственный движок | Exanima (2015 год) |
Лукас Поуп | 1 | На основе OpenFL | Papers, Please (2013 год) |
Терри Кавана | 1 | собственный движок | Super Hexagon (2012 год) |
Франциско Теллес | 1 | На основе SDL | Ghost 1.0 (2016 год), UnEpic (2014 год) |
Grid Sage Games (Джош Ге) | 1 | На основе SDL | Cogmind (2017 год) |
Люк Ходорович | 1 | собственный движок | Banished (2014 год) |
Томас Хэпп | 1 (5 лет) | На основе MonoGame | Axiom Verge (2015 год) |
Джеймс Силва | 1 | На основе MonoGame | Salt and Sanctuary (2016 год) |
Эрик Бэрон | 1 (4 года) | На основе MonoGame | Stardew Valley (2016 год) |
Толга Ай | 1 | На основе SFML | Remnant of Naezith (2018 год) |
Ник Грегори | 1 (5 лет) | На основе MonoGame | Eagle Island (2019 год) |
bitBull Ltd. (Джеймс Клосс) | 1 (4 года) | На основе MonoGame | Jetboard Joust (2020 год) |
Бенджамин Портер | 1 (8 лет) | На основе SFML | MoonQuest (2020 год) |
Рэнделл Фостер | 1 (7 лет) | собственный движок | Kid Baby: Starchild (2019 год) |
Деннис Густафссон | 1 | собственный движок | Teardown (2020 год) |
Кристиан Уайтхед | 1 | Star Engine | Sonic Mania (2017 год) |
Positech Games (Клифф Харрис) | 1 | собственный движок | Production Line (2019 год), Democracy 3 (2013 год), Gratuitous Space Battles (2015 год) |
Фрэнк Лукас | 1 | собственный движок | Angeldust (2019 год) |
Zachtronics (Зак Барт) | 1 | собственный движок | MOLEK-SYNTEZ (2019 год), EXAPUNKS (2018 год), SHENZHEN I/O (2016 год), Opus Magnum (2017 год) |
Lunar Ray Games (Боди Ли) | 1 | собственный движок | Timespinner (2018 год) |
sebagamesdev | 1 | собственный движок | Fight And Rage (2017 год) |
Лоик Дансарт | 1 | собственный движок | Melody's Escape (2016 год) |
Примечания по поводу этого списка:
- Некоторые из этих команд были сформированы одним-двумя людьми, но на определённом этапе или выросли, или отдали часть разработки на аутсорс (графику, звук...). Обычно с ресурсами также помогает издатель (локализация, маркетинг...).
- Омар Корнут из Lizardcube является основным программистом движка Wonder Boy: The Dragon's Trap, а также разработчиком Dear ImGui — бесплатной библиотеки GUI режима immediate-mode с открытыми исходниками, которая используется во многих самописных AAA-движках.
- Бен Фике из Lizardcube также является главным художником Streets of Rage 4, собственный движок для которой написал Сирилл Лагариг из Guard Crush Games.
- Марк Флури программировал игровой движок Thumper, отказавшись от парадигмы ООП в пользу процедурного программирования.
- Кристиан Уайтхед — создатель Star Engine, использованного в игре Sonic Mania, но в разработке игры также участвовали Headcannon (Саймон Томли) и PagodaWest Games (Джаред Касл и Том Фрай).
- Для разработки некоторых игр из этого списка потребовалось пять с лишним лет!
- Не так много игр… по паре хитов в год...
Вот ещё несколько примечательных игр, в которых используются собственные движки: Minecraft (2011 год), Braid (2009 год), Super Meat Boy (2010 год), Terraria (2011 год), Dustforce (2012 год), Sword and Sorcery EP (2012 год), FEZ (2013 год), Dust: An Elysian Tail (2013 год), Rogue Legacy (2013 год), Dyad (2012 год), SpaceChem (2013 год), Darkest Dungeon (2016 год), Scrap Mechanic (2016 год), Battle Brothers (2015 год), Renowned Explorers (2015 год), Yuppie Psycho (2019 год), Surviving Mars (2018 год), The End Is Nigh (2017 год), The Binding of Isaac: Afterbirth (2017 год), The Binding of Isaac: Rebirth (2014 год), BattleBlock Theater (2013 год), Full Metal Furies (2017 год), Binding of Isaac (2011 год), Rusted Warfare (2017 год).
Выводы
Начну с того, что я пристрастен, мне очень нравятся технологии создания видоеигр и я обожаю собственные движки и инструменты для создания игр. Я тоже сделал свой вклад в экосистему собственных движков: raylib и несколько инструментов для создания игр. Я предпочитаю лицензируемым движкам самописные, потому что считаю, что дополнительные усилия, вложенные в разработку продукта, обычно оборачиваются созданием особо потрясающей механики или удивительных особенностей.
Несмотря на это, нужно признать, что создание собственного движка — серьёзное предприятие, и к нему готовые немногие люди и компании. Я признаю, что Unity (и в меньшей мере Unreal) демократизировала разработку видеоигр, сегодня многие мелкие и средние компании могут использовать этот движок для быстрой разработки игр, иногда с очень низкими бюджетами… Тем не менее, многие крупные компании предпочитают полагаться на собственные технологии.
С точки зрения преподавателя разработки игр я считаю, что студенты должны как можно подробнее изучать внутреннее устройство игровых движков. Использование движков наподобие Unity/Unreal в учёбе позволяет студентам быстро создать красивый проект, но это ошибочный путь. В конце концов, кто-то же должен писать движок и все инструменты!