Open-source игровой движок подходит, если нужна полная видимость кода, отсутствие привязки к закрытой лицензии и возможность собрать игру под конкретную платформу. Ниже сравниваются пять проектов из каталога Stackora: Godot, Bevy, Babylon.js, Luanti и Traktor. Они решают разные задачи, поэтому выбор начинается с типа игры и языка, на котором команда пишет код.

Критерии выбора

При сравнении движков полезно опираться на несколько вопросов:

  • Какой тип игры нужен: 2D, 3D, браузерная графика или игра на блоках.
  • На каком языке работает команда: GDScript, C#, Rust, JavaScript или TypeScript.
  • Куда нужно экспортировать игру: десктоп, мобильные устройства, веб, консоли.
  • Какая лицензия допустима для проекта.
  • Насколько зрелое сообщество и документация вокруг проекта, в том числе по числу звёзд на GitHub.

Godot

Godot - бесплатный кроссплатформенный движок с лицензией MIT для 2D и 3D игр. Один редактор покрывает разработку и экспорт в desktop, mobile, web и на консоли. По числу звёзд на GitHub это самый популярный проект в списке, около 118 тысяч.

Сильные стороны:

  • Один редактор для нескольких платформ.
  • Лицензия MIT без ограничений на коммерческое использование.
  • Широкий выбор типов игр, от платформеров до трёхмерных проектов.

Компромиссы: для сложных трёхмерных сцен с продвинутым рендерингом может потребоваться дополнительная проверка возможностей под конкретную задачу.

Bevy

Bevy - движок на Rust с архитектурой Entity Component System. Лицензия Apache-2.0, около 49 тысяч звёзд. Подходит командам, которые уже пишут на Rust и хотят строить данные игры через компоненты и системы.

Сильные стороны:

  • Data-driven подход, удобный для больших симуляций и игровой логики.
  • Нативная работа в экосистеме Rust.

Компромиссы: движок требует знания Rust и программной работы с редактором, поэтому порог входа выше, чем у визуальных инструментов.

Babylon.js

Babylon.js - 3D движок на JavaScript и TypeScript для интерактивных веб-приложений с WebGL, WebGPU и WebXR. Лицензия Apache-2.0, около 26 тысяч звёзд.

Сильные стороны:

  • Игры и интерактивные 3D сцены прямо в браузере без установки.
  • Поддержка WebXR для сценариев виртуальной и дополненной реальности.

Компромиссы: движок ориентирован на веб, поэтому для нативных консольных или мобильных игр он не подойдёт.

Luanti

Luanti, ранее Minetest, - открытый движок для блочных игр с возможностью создавать моды. Это десктопное приложение из категории Desktop Apps. Лицензия в данных каталога не указана, поэтому её нужно проверить в репозитории перед использованием.

Сильные стороны:

  • Готовая основа для игр в стиле воксельных миров.
  • Возможность создавать и распространять моды.

Компромиссы: движок узко специализирован на блочных играх, и для других жанров он не подходит.

Traktor

Traktor - игровой движок с лицензией MPL-2.0 и около 577 звёздами на GitHub. В каталоге он отнесён к категории MCP Servers, что может не отражать его основное назначение, поэтому перед выбором стоит изучить репозиторий напрямую. Публикует проект apistol78.

Компромисс здесь очевиден: небольшая известность проекта означает меньше обсуждений, примеров и сторонних материалов, чем у крупных движков.

Кому что выбрать

  • Команде, которая делает 2D или 3D игры для нескольких платформ и не хочет привязки к коммерческой лицензии: Godot.
  • Разработчикам на Rust, которым нужна архитектура Entity Component System: Bevy.
  • Студиям и разработчикам интерактивного 3D в браузере с WebXR: Babylon.js.
  • Тем, кто хочет делать блочные игры и моды в стиле Minetest: Luanti.
  • Экспериментам с небольшим сообществом и готовностью самостоятельно изучать код: Traktor.

Для большинства новых проектов разумная отправная точка - Godot, если нет жёстких требований к языку или веб-запуску. Если команда уже работает на Rust или нужна игра в браузере, выбор сужается до Bevy или Babylon.js соответственно. Подробнее о других категориях можно посмотреть в разделах Developer tools и Libraries & SDKs.