Актуальность движка Godot в индустрии разработки инди-игр

Логотип Godot  | © Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0).
Логотип Godot | © Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0).

Делюсь переводом статьи за авторством Юлиана Холфельда. Наткнулся на неё, когда искал что-то по теме распространённости Godot, и решил перевести и опубликовать здесь.

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

Примечание: оригинал статьи опубликован 10 января 2024 года, и все рассуждения и выводы строятся на основе информации за предыдущие годы.

Юлиан Холфельд
Магистр в области компьютерных наук, Кассельский университет

Оглавление

Аннотация

В данной статье рассматривается значимость движка Godot Engine в индустрии инди-игр. Godot — относительно новый игровой движок, выпущенный в 2014 году и конкурирующий с ведущими игроками на рынке. Чтобы определить его актуальность, анализируются две крупные платформы для продажи игр и используемые на них движки — Steam и itch.io. Основное внимание уделяется сравнению полученных данных с референсными показателями 2018 года. Результаты показывают, что движок Godot значительно укрепил позиции в 2020 году и сейчас, похоже, является одним из лидеров в индустрии инди-разработки. Точные причины этого явления сложно установить, однако в статье даётся много предпосылок для дальнейших исследований в данной области.

1. Введение

В сфере видеоигровой разработки методы создания игр с течением времени претерпели значительные изменения. Уже в 1980-х годах некоторые компании начали использовать собственные внутренние движки. Например, для игры Super Mario Bros. (1985) Nintendo использовала движок с плавной прокруткой экрана, изначально разработанный для Excitebike (1984). Идея лицензирования игровых движков другим компаниям в качестве самостоятельных продуктов возникла с середины 90-х. В тот период игры, подобные Doom (1993), создавались с использованием движка id Tech. Он был разработан специально для 3D-шутеров, хотя в данной итерации пока и не являлся полноценным трёхмерным движком. С годами количество игровых движков росло, что ускоряло процесс разработки видеоигр.

Следует отметить, что определение игрового движка варьируется в зависимости от литературы. В данной статье под игровым движком понимается фреймворк, ускоряющий процесс разработки и обеспечивающий поддержку по крайней мере 2D- или 3D-рендеринга. Важно учитывать, что различия заключаются не только в определении, но и в сценариях использования игрового движка. Яркий пример — id Tech, созданный исключительно для определённого жанра игр. Существуют также движки вроде Unity, которые можно назвать универсальными. Поэтому прямое сравнение движков затруднительно: каждый из них служит конкретной цели, и нет «идеального» движка, превосходящего остальные. В этой работе подробно рассматривается роль игровых движков в инди-разработке, с фокусом на Godot Engine. Решение исследовать именно этот движок обусловлено данными, полученными из нескольких наборов статистики, которые будут раскрыты далее в статье.

2. Движок Godot

Интерфейс редактора Godot | © Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0).
Интерфейс редактора Godot | © Juan Linietsky, Ariel Manzur and the Godot community (CC BY 3.0).

Движок Godot был выпущен как проект с открытым исходным кодом под лицензией MIT на GitHub 10 февраля 2014 года. Первый стабильный релиз состоялся чуть позже, в декабре. Это делает его относительно новым по сравнению с популярными движками, такими как Unity и Unreal Engine, выпущенными в 2005 и 1998 годах соответственно. Учитывая разницу в датах релиза, очевидно, что экосистема вокруг Godot Engine, в силу его молодости, всё ещё уступает по масштабу более старым движкам.

Godot поддерживает кроссплатформенный экспорт и облегчает разработку 2D- и 3D-игр. Видеоигры можно адаптировать для ПК, мобильных устройств или веб-платформ. Для написания кода используется специально созданный язык программирования — GDScript. Это динамически типизированный язык, по синтаксису похожий на Python. Однако Godot также официально поддерживает C# и включает технологию GDNative, позволяющую создавать привязки к другим языкам. Официально поддерживаются C и C++, а неофициально — языки вроде D, Kotlin, Nim, Python и Rust, адаптированные сообществом (в 2021 г. была представлена технология-преемник GDNative, GDExtension — прим. пер.).

Примечательно, что Godot вызывает интерес не только небольших студий, но и таких крупных компаний, как Microsoft, Epic Games и Reality Labs. В 2017 году Microsoft пожертвовала команде Godot 24000 долларов для внедрения C# в качестве языка программирования. В 2020 году движок Godot получил Epic MegaGrant в размере 250000 долларов — грант от Epic Games для проектов, расширяющих экосистему технологий 3D-графики с открытым исходным кодом. Это вызывает особый интерес, ведь Epic Games разрабатывает Unreal Engine, и может свидетельствовать о заинтересованности компании в поддержке других движков ради взаимной выгоды. Использование лицензии MIT, как в случае с Godot, способствует внедрению новых технологий без риска для интеллектуальной собственности. В декабре 2020 и 2021 годов Godot получил пожертвования от Reality Labs. Средства направлены на разработку в области расширенной реальности (XR). Точные суммы не раскрываются, что подтвердил в комментарии на Reddit проектный менеджер Godot Реми Вершельде (akien-mga). Он также отметил, что команда сама активно обращается к компаниям, а не наоборот.

3. Методика исследования

Актуальность движка Godot в индустрии разработки инди-игр

В предыдущем разделе стало очевидно, что движок Godot сумел привлечь внимание крупных компаний, что свидетельствует о некоторой его значимости в видеоигровой индустрии. Однако это не даёт прямого ответа на ключевой вопрос: насколько Godot актуален для разработчиков инди-игр. Чтобы эффективно на него ответить, сначала мы должны дать чёткое определение инди-разработке. Подобно тому, как определение игрового движка остаётся размытым, определение инди-игр также неоднозначно. Здесь мы используем определение О'Доннелла, утверждающего, что инди-игры сосредоточены на ограниченном количестве целей и могут разрабатываться с меньшими затратами человеческих ресурсов. Команда разработчиков инди-игр работает без финансовой поддержки со стороны крупных компаний, что отличает их от ААА-игр, созданных более крупными командами с привлечением существенных бюджетов.

Чтобы исследовать актуальность Godot Engine для инди-разработчиков, был проведён всесторонний обзор литературы. Важно отметить, что данное исследование не ограничивалось научными статьями, но также включало «серую литературу». Это обусловлено тем, что Godot — относительно новый игровой движок, и ему посвящено недостаточно научных публикаций. «Серая литература», использованная в этой статье, была тщательно отобрана, чтобы обеспечить надёжность и достоверность информации.

Для данного исследования были выбраны платформы продаж Steam и itch.io. Во-первых, это согласуется с исследованием, проведенным Тофтедалом и Энгстрёмом, в котором приводятся сравнительные данные за 2018 год. Во-вторых, мы ссылаемся на опрос «Состояние игровой индустрии» от 2023 года, в котором приняли участие 2300 разработчиков видеоигр. Стоит отметить, что основное внимание в данной статье уделяется ПК, а не консольным или мобильным играм. Это связано с тем, что упомянутый опрос 2023 года показал: 65 % респондентов активно разрабатывают игры для ПК, а 57 % планируют делать это и в следующих проектах. В 2019 году опрос, охвативший около 4000 разработчиков видеоигр, показал, что, за исключением сайтов издателей и личных страниц, большинство игр продаётся в основном в Steam и на itch.io.

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

Список движков и количество игр на них, скриншот с сайта steamdb.info
Список движков и количество игр на них, скриншот с сайта steamdb.info

Альтернативный метод распознавания игровых движков заключается анализе имён файлов и сопоставлении их с шаблоном. Сайт SteamDB использует именно этот подход. Хотя метод позволяет получить ценные сведения, всё же он не лишён недостатков, включая возможность возникновения пробелов или ложных срабатываний из-за неоднозначных имён файлов. В этой работе используются данные из SteamDB, поскольку сопоставление имён файлов с игровыми движками даёт более точные результаты, чем сопоставление данных с Википедией. Кроме того, различные версии движка id Tech были объединены в одну категорию.

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

4. Результаты

При анализе присутствие различных игровых движков в Steam в 2018, 2022 и 2023 годах важно понять значимость этих результатов в контексте разработки инди-игр. В таблице 1 представлены проценты использования игровых движков в Steam за указанные годы.

<b>Таблица 1</b>: Процентное соотношение общего числа идентифицированных в Steam игр (данные собраны 30.09.2022 и 21.10.2023)
Таблица 1: Процентное соотношение общего числа идентифицированных в Steam игр (данные собраны 30.09.2022 и 21.10.2023)

Игровые движки, доля которых в общем количестве разработанных игр увеличилась по сравнению с предыдущими годами, выделены зелёным цветом, что указывает на положительную тенденцию, в то время как те, чьё использование снизилось, выделены красным, что свидетельствует о снижении их популярности за тот же период. Данные за 2018 год были собраны с использованием метода Википедии, тогда как данные за 2022 и 2023 годы — с использованием метода сопоставления с шаблоном. В таблице 1 отсутствует цветовая маркировка для столбца 2022 года. Это связано с тем, что в 2018 году использовались другие методы сбора данных, и поэтому трудно сказать, это новый метод выявляет большее количество игровых движков, или же просто больше игр было создано с использованием определённого движка. Например, Unity увеличил свою долю среди всех идентифицированных игр на 35,62% с 2018 по 2022 год. Кроме того, стоит отметить, что среди проанализированных игровых движков только Unreal Engine демонстрировал стабильный рост на протяжении всех лет. Эта тенденция сохраняется при рассмотрении как полного датасета, включающего данные за 2018 год, так и набора данных только за 2022 и 2023 годы. Godot не представлен в таблице 1, поскольку в статье Тофтедаля и Энгстрёма он не был включён в анализ. Несмотря на это, представленные данные остаются полезными для понимания изменяющейся рыночной динамики.

Следует отметить рост популярности других игровых движков в период с 2022 по 2023, что указывает на изменения в конкурентной среде. На момент сбора данных в 2022 году 1,15% игр были созданы на движке Godot. Однако в 2023 году этот процент увеличился до 1,44%. По сравнению с другими игровыми движками на SteamDB, Godot Engine занимает 6-е место из 65 признанных игровых движков. Кроме того, важно понимать, что проценты из таблицы 1 представляют собой нижнюю границу. В частности, на движке Godot может быть гораздо больше игр, так как он позволяет экспортировать исполняемые файлы без узнаваемой сигнатуры в именах, что делает их неидентифицируемыми алгоритмом SteamDB. Следовательно, мы можем сопоставить только подмножество игр с определёнными паттернами имён файлов.

<b>График 1</b>: Количество выпущенных приложений в Steam в месяц
График 1: Количество выпущенных приложений в Steam в месяц

При изучении выпущенных в каждом месяце приложений, изображенных на графике 1, заметна чёткая тенденция: в 2020 году значительно увеличилось количество выпущенных игр. Она побуждает к дальнейшему исследованию, чтобы понять предпосылки к этому. Перед более глубоким анализом причин проведём параллель, сравнив данные с itch.io. В противоположность Steam, на платформе цифровых продаж itch.io преимущественно представлены инди-игры, что соответствует специфике данной статьи. В отличие от Steam, на itch.io представлена официальная статистика с информацией об игровых движках. Однако важно признать, что эти данные могут быть неполными из-за того, что базируются на самоотчётах, и в информации могут быть присущие таким данным пробелы и неточности.

<b>Таблица 2</b>: Процент от общего числа игр, обнаруженных на itch.io (данные собраны 30.09.2022 и 21.10.2023)
Таблица 2: Процент от общего числа игр, обнаруженных на itch.io (данные собраны 30.09.2022 и 21.10.2023)

Аналогично данным Steam, информацию с сайта itch.io можно сравнить с референсным исследованием 2018 года, используя самые актуальные данные за 2022 и 2023 годы. Единообразный метод сбора информации позволяет проводить прямые сравнения, как показано в таблице 2. При сравнении данных, представленных в таблицах 1 и 2, Unity выделяется как наиболее распространённый игровой движок: как в 2022, так и в 2023 г. более половины всех игр в Steam и почти половина на itch.io созданы на нём. Это доминирование особенно заметно, если учесть, что в 2023 г. на долю игровых движков, занимающих второе место, приходится около 16% игр в Steam и около 14% на itch.io. Аналогичная тенденция наблюдается и в 2022 году.

Также можно заметить, что лишь три игровых движка постоянно набирают популярность на itch.io: Construct, Unreal и Godot. Construct — это игровой движок, ориентированный в первую очередь на людей без навыков программирования. Он призван облегчить начинающим разработчикам знакомство с созданием игр при помощи визуального программирования. Заметный рост процента игр, созданных на этом движке, может быть связан с привлекательностью разработки для более широкой аудитории с ограниченным опытом в написании кода. Однако это лишь предположение, требующее дальнейшего изучения.

Если взглянуть на таблицу 2, становится очевидным, что Godot пережил заметный рост популярности на itch.io. Чтобы глубже изучить эту тенденцию, был использован упомянутый ранее скрипт для сбора данных об играх с itch.io вместе с датами их выпуска. Следует отметить, что не все игры удалось обработать с помощью этого скрипта. Несмотря на отсутствие данных примерно для 10% игр, всё ещё возможно построить график тренда для игровых движков, перечисленных в таблице 2.

<b>График 2</b>: Общее количество проектов на itch.io
График 2: Общее количество проектов на itch.io

Это отражено на графике 2. Отметим, что в силу большого количества проектов, созданных на Unity, этот движок был исключён из графика для обеспечения лучшей наглядности и читаемости данных по другим движкам. Становится заметно, что в 2020 году популярность Godot значительно возросла, обогнав и Bitsy, и Twine. Однако данный анализ имеет свои ограничения, так как опирается только на количество опубликованных игр. Качество и количество игр, разработанных отдельными издателями, не были учтены. Определить точный процент инди-студий сложно, так как не все издатели были проанализированы индивидуально.

<b>Таблица 3</b>: Игровые движки, использовавшиеся участниками GMTK Game Jam на протяжении нескольких лет
Таблица 3: Игровые движки, использовавшиеся участниками GMTK Game Jam на протяжении нескольких лет

Интересной особенностью itch.io, в отличие от Steam, является преобладание игр, созданных во время геймджемов — мероприятий по ускоренному созданию игр, в ходе которых они разрабатываются за относительно короткий промежуток времени с учётом заданных ограничений дизайна, а конечные результаты публикуются в открытом доступе.

Насчитывая 18000–23000 тыс. участников и примерно 6000–7000 заявок, GMTK Game Jam является крупнейшим геймджемом на itch.io. В таблице 3 показаны игровые движки, использовавшиеся участниками мероприятия с 2020 по 2023 год. Она ясно демонстрирует, что Godot — единственный игровой движок из таблицы, который в каждом году превосходит свои показатели за предыдущий год.

Чтобы узнать о Godot больше, был проведён опрос сообщества данного движка за 2022 и 2023 годы. В 2022 году в опросе приняли участие 5315 респондентов, а в 2023 году их число увеличилось до 7671. Эти опросы содержат ответы на самые разные вопросы. Относительно предыдущего опыта работы с другими игровыми движками в опросе 2022 года респонденты упоминали Unity, а также другие сторонние движки, включая GameMaker. В опросе 2023 года тенденция сохранилась. Большинство респондентов впервые услышали о Godot в период с 2018 по 2020 год. Однако большинство из них не использовали его при разработке до 2019–2022 гг. Опросы также ясно показывают, что данный движок в основном используется для разработки 2D-игр.

Опрос 2022 года проливает свет и на другие факты, имеющие отношение к разработке инди-игр. Подавляющее большинство участников (84%) заявили, что используют Godot в качестве хобби, в то время как 9% идентифицировали себя как разработчиков инди-игр на полный рабочий день. Согласно определению, приведённому в этой статье, разработчики-хоббисты относятся к категории инди-разработчиков, поскольку они обладают общими характеристиками, такими как фокус на ограниченном количестве целей, отсутствие финансовой поддержки со стороны крупных компаний и работа в небольших командах. Это также подтверждается и тем, что 97,9% работают над своим проектом в одиночку или в команде до пяти человек. Кроме того, опрос показывает, что 83,7% респондентов не получают никакого дохода от своих игр, что подчеркивает их статус инди. Что касается цифровых торговых платформ, то наиболее популярными среди участников являются itch.io (7,1%) и Steam (6%).

5. Выводы

Игра Cassette Beasts (2023), созданная на движке Godot | © Bytten Studio
Игра Cassette Beasts (2023), созданная на движке Godot | © Bytten Studio

При анализе различных наборов данных становится очевидным рост популярности Godot. На платформе цифровой дистрибуции Steam движок Godot занимает 6-е место из 65, что указывает на его важность даже с учётом возможных погрешностей, возникающих из-за особенностей сбора данных. Для более содержательного обсуждения в этом разделе также будут рассмотрены Unity и Unreal Engine. Согласно таблице 1, с 2022 по 2023 год доля Unity сократилась на несколько процентов, тогда как Unreal Engine, напротив, показал рост. Возможной причиной этого может быть то, что в Steam публикуются в том числе и AAA-игры, а для их разработки широко используется Unreal Engine.

С другой стороны, этот аргумент объясняет медленный рост популярности Unreal Engine по сравнению с Godot на такой платформе, как itch.io. Хотя UE занимает второе место среди самых используемых игровых движков в Steam, его присутствие на itch.io за последние четыре–пять лет увеличилось лишь незначительно — примерно на 0,2%. Кроме того, согласно таблице 2, за тот же период времени доля Godot увеличилась примерно на 5%. Это свидетельствует о том, что Unreal Engine имеет ограниченное значение среди инди-разработчиков, тогда как Godot со временем стал всё более востребованным в сфере инди-игр. Данный вывод также подтверждается тем, что Godot занимает третье место по популярности на itch.io.

Brotato (2023), также разработанная на Godot, имеет крайне положительные отзывы в Steam на основе более чем 88 тысяч рецензий | © Blobfish <br />
Brotato (2023), также разработанная на Godot, имеет крайне положительные отзывы в Steam на основе более чем 88 тысяч рецензий | © Blobfish

Хотя Unity и является лидером в секторе инди, таблица 2 ясно показывает, что в разработке инди-проектов набирают популярность другие игровые движки. Под давлением конкуренции оказался и GameMaker, чья доля за последние годы сократилась примерно на 4%. Эта тенденция также прослеживается в контексте геймджемов: Unity постепенно вытесняется другими конкурентами, а GameMaker в последние годы стремительно теряет позиции. Популярность Godot на геймджемах, напротив, значительно выросла, и он стал вторым по использованию игровым движком на GMTK Game Jam. Важно учитывать, что более широкому использованию игрового движка на геймджеме может способствовать его общая популярность. Кроме того, следует отметить, что некоторые игры, созданные в рамках GMTK Game Jam, впоследствии публикуются на itch.io, тем самым увеличивая количество проектов, разработанных на Godot. Для более глубокого понимания этой взаимосвязи требуется детальный анализ.

В опросах сообщества Godot Engine будут продолжать упоминаться Unity и GameMaker, так как они имеют отношение к участникам с опытом работы с этими игровыми движками. Учитывая снижение их доли, можно предположить, что некоторые разработчики полностью перешли на Godot. Причин для этого может быть много. С одной стороны, лицензия Godot предлагает широкую свободу, с другой — определённые функциональные возможности движка могут быть более предпочтительными. Однако для проведения прямого сравнения необходим более глубокий анализ. Также стоит отметить, что далеко не все игровые движки можно сравнивать друг с другом, о чём было сказано в начале. У каждого движка — своё собственное предназначение, что затрудняет подобные сравнения. Если сравнение всё же необходимо, уместным было бы сравнить Unity и Godot как универсальные игровые движки, подходящие для широкого спектра жанров.

Godot подходит не только для разработки игр, но ещё и приложений — например, с его помощью был создан Material Maker  | © R0dZill4
Godot подходит не только для разработки игр, но ещё и приложений — например, с его помощью был создан Material Maker | © R0dZill4

Результаты данного исследования показывают, что Godot определённо играет значительную роль в индустрии инди-игр. Во всех трёх проанализированных наборах данных (Steam, itch.io и GMTK Game Jams) Godot занимает более высокие позиции по сравнению с большинством других игровых движков. В дополнение к этому можно сказать, что интерес к Godot Engine проявили и некоторые крупные компании, оказывая ему финансовую поддержку, что дополнительно подтверждает его востребованность в индустрии. Единственный вопрос, оставшийся без ответа — почему это происходит. Графики 1 и 2 ясно дают понять, что 2020 год был успешным для Godot. Если объединить этот вывод с данными опроса сообщества Godot, можно заметить, что многие разработчики знали о движке ещё до 2020 года, но начали разработку на нём лишь после этой даты. Вполне возможно, что события, произошедшие до 2020 года, стали ключевыми для быстрого роста популярности Godot в индустрии инди-игр. Однако имеющиеся данные мало что говорят о причинах этого роста. Даже после тщательного исследования сложно точно определить, что именно стало решающим фактором. Вероятно, это связано с тем, что на данный рост повлияли многие факторы.

Ещё одно наблюдение заключается в том, что большинство игр, созданных на Godot Engine, являются 2D-проектами. Это также подтверждается результатами опроса сообщества Godot. С одной стороны, этот движок может предлагать более продвинутые функции для разработки 2D-игр по сравнению со своими возможностями в области трёхмерной графики. С другой — объём работы при разработке 3D-игр обычно выше по сравнению с двумерными проектами, что может быть сложной задачей для инди-разработчиков, заставляя их чаще выбирать разработку в 2D.

Однако 3D-игры на Godot также существуют — например, Cruelty Squad, отличающая вызывающим визуалом  | © 
Consumer Softproducts
Однако 3D-игры на Godot также существуют — например, Cruelty Squad, отличающая вызывающим визуалом | © Consumer Softproducts

Использованные здесь методы анализа вызвали множество новых вопросов, требующих дальнейшего исследования. Можно глубже проанализировать актуальность рынка в целом или конкретно для инди-студий. Кроме того, в случае с Unity и GameMaker было бы интересно провести дополнительное исследование, чтобы узнать, действительно ли Godot Engine медленно вытесняет их с рынка.

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

7
1
1
1
47 комментариев