Собственные игровые движки: небольшое исследование

в 7:13, , рубрики: custom game engines, game engines, monogame, sdl, SFML, Дизайн игр, игровые движки, Игры и игровые приставки, инди-разработчики, разработка игр, самописные движки
Собственные игровые движки: небольшое исследование - 1

Пару недель назад я играл в A Plague Tale студии Asobo Studio (и прошёл её). Меня очень захватила эта игра, благодаря не только красивой графике, но и сюжету с локациями. Я решил немного изучить технологии, использовавшиеся при её разработке, и был удивлён, обнаружив, что игра создавалась на собственном движке относительно небольшой студии. Я знаю, что некоторые компании используют собственные движки, но очень сложно найти подробное маркетинговое исследование с подобной информацией. Поэтому я написал эту статью.

Сегодня многие компании выбирают для разработки игр такие движки, как Unreal или Unity (или, по крайней мере, так думают многие люди), потому что для разработки собственного движка AAA-уровня требуется множество ресурсов. Поэтому я решил составить список некоторых из самых популярных самописных движков с указанием размеров студий и значимых игр, выпущенных на этих движках.

Большинство представленных здесь движков разрабатывалось на протяжении многих лет, множества итераций и для множества видеоигр, эти движки имели несколько версий или даже полностью (частично) переписывались с нуля с последующей сменой названия. Кроме того, важно заметить, что большинство этих движков для реализации определённой функциональности (совместимость с платформами, физика, сеть, растительность, UI, рендеринг, звук...) использует всевозможное промежуточное ПО.

*Примечание: я стремился к максимальной точности при указании количества сотрудников (сверялся с веб-сайтами компании, Википедией или LinkedIn компании), но не стоит относиться к этим показателям с особым доверием (некоторые значения могут уже быть неактуальными).

КРУПНЫЕ компании

Собственные игровые движки: небольшое исследование - 2

Слева направо: 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; наверняка он обладает определённым влиянием на азиатский рынок.

Студии среднего размера

Собственные игровые движки: небольшое исследование - 3

Слева направо: Rise of the Tomb Raider, Uncharted 4, A Plague Tale

Здесь мы рассмотрим средние компании, решившие создавать для своих игр собственные движки.

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

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

Также интересно было бы узнать больше об инструментарии в составе этих движков, получить доступ к подобной информации очень сложно. Инструментарий движков обычно хранится в секрете (исключение составляют только презентации на GDC и короткие видео с демонстрацией возможностей движка).

Собственные игровые движки: небольшое исследование - 4

Слева направо: 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, благодаря которой началось это маркетинговое исследование, кажется не особо маленькой… но, как и другие компании, она параллельно работает над несколькими играми.
  • Очень здорово, что в Википедии есть подробности о некоторых движках со списком выпущенных игр, это должно стать обязательной практикой.

Небольшие студии (инди-студии)

Собственные игровые движки: небольшое исследование - 5

Слева направо: The Witness, No Man's Sky, X-Morph Defense

Здесь мы рассмотрим очень маленькие студии, тоже решившие создать для своих игр собственные движки. Стоит заметить, что для отдельных частей игры в таких движках применяются другие библиотеки/фреймворки. Чаще всего среди них встречаются SDL (кроссплатформенная библиотека графики и ввода), OGRE (движок рендеринга), MonoGame (кроссплатформенный игровой фреймворк, в котором также используются SDL, SharpDX, OpenTK, OpenAL-Soft...).

Многих людей может заинтересовать такой вопрос: какие же части движка на самом деле пишутся разработчиками? Бывает по-разному, но чаще сего кодеры занимаются менеджером экрана, менеджером сущностей и менеджером контента, а также обёртками/интерфейсами для внешних библиотек.

Второй вопрос: в каких частях движка обычно используются внешние библиотеки/промежуточное ПО? Это тоже зависит от ресурсов компании, но обычно это звуковая система, физика, рендеринг, работа с сетью, система UI, система рельефа, система растительности и некоторые другие элементы.

Собственные игровые движки: небольшое исследование - 6

Слева направо: 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 была командой из одного человека (Криса Ханта)!
  • На разработку некоторых игр в списке было потрачено пять с лишним лет!
  • Игр не так много… всего по паре хитов в год...

Движки, написанные одним человеком

Собственные игровые движки: небольшое исследование - 7

Слева направо: Stardew Valley, ScourgeBringer, Eagle Island

В конце мы приведём список героев.

Игры, разработанные одним-двумя людьми на собственных движках, причём эти движки в основном писались одним человеком!

Создание движка и игры с нуля до этапа издания — огромное достижение, немногие в мире к этому готовы. Почти все из них — 2D-игры, обычно с очень низкими бюджетами, которые разрабатывались в течение нескольких лет. Разработчиков можно поздравить!

Собственные игровые движки: небольшое исследование - 8

Слева направо: 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 в учёбе позволяет студентам быстро создать красивый проект, но это ошибочный путь. В конце концов, кто-то же должен писать движок и все инструменты!

Автор: PatientZero

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js