Сейчас рассматриваю различные игровые движки для своих нужд, попутно изучая индустрию и комьюнити. Хочу поделиться информацией которую в результате различных проб и оценок удалось добыть. Людям, кто задумывается о создании своей игры, но не знает с чего начать может быть полезно.

Игровой движок отличается от фреймворков наличием своего редактора и в более высокоуровневым и дружелюбным для новичков подходом к разработке игр. Для рассмотрения брал либо популярные, либо интересные лично мне движки. Фреймворков в мобильной и веб разработке тоже достаточно, но здесь они рассматриваться не будут. Рассматриваемые сферы разработки игр: мобильные, десктопные, консольные.

Темы, где сравнивается одна технология с другой очень субъективны. И эта не исключение. Каждый популярный движок это огромный пласт информации с большим комьюнити, различиями в версиях, лучшими практиками применения и серьёзным функционалом. Поэтому не претендую на конечную истину. Каждый из рассмотренных постарался изучить внимательно: сделать прототип, посмотреть документацию и комьюнити, поиграть в игры на каждом движке.

Движки будут рассмотрены очень разные от самых простых, до весьма сложных. Поэтому разбил аудиторию, которой могут быть интересны игры, на следующие сегменты:

  1. Просто геймеры, которые не умеют программировать, но хотят создавать игры. Это могут быть художники, дизайнеры или совсем молодые игроки.
  2. Те, кто с кодом знаком в той или иной степени. Понимают конструкции языка. Но кодирование не является их основной деятельностью. Архитектура, паттерны проектирования, производительность — это всё не про них. Геймдизайнеры, менеджеры, джуны-разработчики.
  3. Разработчики хорошего уровня, например работающие не в геймдеве или которые хотят сменить технологию.
  4. Малый бизнес. Кто-то кто не будет заниматься разработкой напрямую, а собирает свою инди-команду.
  5. Те, кто ищет работу в офисе в геймдеве.

Unity

Сайт — https://unity.com/ru

Unity — самый популярный игровой движок на сегодняшний день. Появился в 2005 году. Большое распространение получил с выходом версии Unity3d. На этом движке сделано большое количество мобильных игр и игр в steam. В том числе и инди. По ссылке — https://docs.google.com/spreadsheets/d/1teGFwbh_Ov1si_9aa8RAk1PANOd5AWL-56yJNuTpUec/edit?source=post_page—————————#gid=0 топ 100 игр в стиме, которые имеют тег «Indie» и 5k+ ревью разбитые по движкам.

У Unity самое большое количество разработчиков, у большинства компаний процессы заточены именно под Unity (и под используемый там язык C#). Кроме того готовых ассетов у движка примерно столько же, сколько суммарно у всех других рассматриваемых в этой статье. Ассеты — это готовые решения: 3d модели, картинки, уровни и даже целые игры которые можно использовать в своей игре.

На движке сделано много популярных игр: Heartstone, Pokemon GO, Cuphead, Subnautica, Hollow Knight, Escape From Tarkov и тд.

Но при этом это и самый критикуемый движок. Причём соотношение критикуемых выше среднего по другим движкам. Часто можно увидеть такие посты:

На Unity можно сделать игры практически под любую платформу и из-за огромного объёма всего, что есть там вылезают ошибки. И правят их не очень быстро. В приоритете всегда премиальный сегмент пользователей. Кроме того кому-то не нравится физика, кому-то анимация, кому-то интерфейс (и мне в том числе). Кому-то не хватает графики как в Unreal. Кто-то сетует, что из-за готовых ассетов Unity-программисты это не совсем программисты. И задачи дальше подправить что-то в готовом шаблоне, они решать не смогут.

На самом деле это не так, там есть всякие программисты.

Мои за и против.

За:

  • Самое большое комьюнити
  • Встроенные реклама и аналитика от самой Unity
  • Мультиплатформенность
  • Бесплатная версия, если оборот не превышает 100 000 $ с минимальными ограничениями
  • Самый большой выбор ассетов
  • Самый большой выбор обучающих материалов, курсов и книг
  • C# неплохой язык. Мощный и понятный
  • Сам движок имеет большие возможности как в 2d, так и в 3d

Против:

  • По сравнению с другими движками не очень удобная структура и интерфейс
  • Файлы на выходе весят много. Из-за чего его мало используют в вебе и на мобильных они многим уступают по части веса и производительности
  • Ошибки, которые бывают тянутся из версии в версию
  • Даже при наличии инструмента визуального программирования Playmaker и большого количества ассетов для совсем новичков движок будет слишком сложный
  • 3d графика неплоха, но таки прилично уступает Unreal. По моим ощущениям как PS3 сравнить с современными компами (всё имхо конечно)

По сегментам пользователей:

  1. Для совсем новичков будет слишком сложно и непонятно
  2. Для второй категории — вполне неплохо. Много гайдов помогут в освоении.
  3. В третьей категории обитают как раз большое кол-во хейтеров Unity. Если не нравится — сейчас хороший выбор других движков. Но в Unity также есть и Best practices и замечательная технология ECS. И профессионалов там тоже хватает.
  4. Для инди команд существует много рисков при создании игры. А Unity в данном случае наименее рискованный вариант. Так как много разработчиков которых можно сменить и много гайдов и ассетов для старта.
  5. Для офисной работы у нас практически кроме Unity и Unreal других движков не существует. Особенно Unity. И все процессы заточены под них.

Полезные ссылки:

https://docs.google.com/spreadsheets/d/1b8-0uDTgweaCWbYNwqKeVSbSAUItXFOdvbqMCXehFoo/edit#gid=0

Unreal

Сайт — https://www.unrealengine.com/

Легендарный движок повлиявший на всю индустрию шутеров впервые был использован в 1998 году в игре Unreal. Впоследствии много раз использовался для игр ААА-класса: Deus Ex, Clive Barker’s Undying, Unreal, Tom Clancy’s Splinter Cell, Gears of War, BioShock, Mass Effect, серия Batman: Arkham, Medal of Honor, Mortal Kombat, Street Fighter 5, Tekken 7, XCOM, Fornite и др.

С 2015 года бесплатный для использования. Если игра приносит более 3000$ за квартал, производители берут 5% прибыли.

Язык программирования — C++, который считается самым сложным в изучении и в работе. Но и самым производительным. Но помимо него есть система визуального программирования Blueprints из коробки и можно создавать игры не написав и строчки кода. Этим и занимаются в основном инди-разработчики на Unreal, которые не хотят связываться с C++. Надо учесть только проблемы с производительностью, она на Blueprints существенно ниже, чем на живом коде. Поэтому надо читать гайды по оптимизации.

Unreal engine предоставляет самую лучшую графику (только CryEngine бы поспорил), самые лучшие эффекты, отличное моделирование и дизайн уровней. Движок популярен у 3d-художников, моделлеров и левел-дизайнеров. Кроме того отличный набор готовых ассетов и тутоиалы на самые разные темы.

Ругают его обычно за низкую производительность, высокий порог входа и периодические баги. Используют в основном для 3d игр на компьютеры и приставки. Но с ростом технологий часто стали встречаться игры на этом движке и на мобильных. Для 2d-игр есть специальная система 2d Paper.

Мои за и против.

За:

1) Отличная графика

2) Хорошие инструменты для моделирования уровней

3) Большое комьюнити и большое количество туториалов

4) Визуальный скриптинг Blueprints из коробки

5) Бесплатный

6) Отличный набор готовых ассетов. Меньше чем у Unity, но все качественные

Против:

1) Занимает много места сама программа и её игры

2) Высокий порог входа, который частично снижен визуальным программированием

3) Интерфейс достаточно громоздкий с десятками элементов. Хотя если привыкнуть — логичнее чем в Unity

4) Есть проблемы с производительностью

По сегментам пользователей:

1) Для самой первой категории не подойдёт. Несмотря на визуальный скриптинг это инструмент слишком сложный и масштабный для новичка

2) Те кто имеют некоторый опыт и навыки программирования могут попробовать сделать игру. Но начинать наверное лучше с других движков. Тем не менее есть примеры инди разработчиков в одиночку делающих игру на Blueprints

3) Для программистов C++ подойдёт хорошо

4) Команды могут вполне использовать. Людей на проект подобрать можно.

5) Для офиса подойдёт. После Unity — второй движок по популярности. Не только у программистов и гейм-дизайнеров, но и у 3d-художников и левел-дизайнеров.

Полезные ссылки:

https://docs.google.com/spreadsheets/d/1b8-0uDTgweaCWbYNwqKeVSbSAUItXFOdvbqMCXehFoo/edit#gid=1457545190

Defold

Сайт — https://www.defold.com/

Движок от шведской команды King, одного из лидеров по продажам мобильных игр. Появился в 2011 году. Стал бесплатным в 2016. Язык программирования — Lua.

Это движок ориентированный в первую очередь на мобильные и браузерные 2d игры. Но есть и 3d функционал. По возможностям несколько уступает Godot и Unity, но превосходит Gamemaker.

Основными особенностями являются упор на маленький вес приложений и высокую производительность. Большой упор на удобство для пользователей: удобный интерфейс, подробная документация и маленькое, но приветливое комьюнити.

А в России развитием сообщества занимается целый евангелист, чего не замечено у других движков. Русский представитель из компании king.

Мои за и против.

За:

1) Хорошая документация и туториалы

2) Бесплатен

3) Одно из самых приветливых и полезных сообществ. В том числе и русское

4) Есть своя аналитика и интеграция с Google Analytics

5) Есть интеграция с внутриигровыми покупками в Google Play и App Store и с сервисами мобильной рекламы

Против:

1) Функционал в 2d и 3d уступает основным конкурентам Godot и Unity

2) Периодически ловятся разные ошибки. Были жалобы на стадии продакшена при выкатывании новой версии

3) Нет деплоя на популярные приставки

4) Очень мало материалов в интернете по сравнению с конкурентами. Новые материалы создаются в основном силами King и нескольких энтузиастов

5) Фактически нет хитов кроме King’овских игр и с натяжкой одной белоруской фермы)

По сегментам пользователей:

1) Для самой первой категории не подойдёт — необходимо знать программирование

2) Для второй категории может подойти из-за удобства и дружелюбного комьюнити

3) Для программистов может подойти, если достаточно функционала, нравится Lua и не нравится Unity

4) Для команд слишком мало специалистов и не до конца отлажен продакшен, лучше пробовать более популярные движки

5) Для офиса — вакансий таких мизер. Я только одну видел

Полезные ссылки:

https://docs.google.com/spreadsheets/d/1b8-0uDTgweaCWbYNwqKeVSbSAUItXFOdvbqMCXehFoo/edit#gid=1212337481

Godot

Сайт — https://godotengine.org/

Один из самых современных и наверное самый хайповый движок. Часто можно увидеть статьи или ролики с названием типа «27 причин почему я выбрал Godot вмеcто Unity». Название отсылает к абсурдистской пьесе Сэмюэля Бэккета «В ожидании Годо».

Опенсорсный движок с лицензией MIT. Появился в 2014 году, стабильная версия 2.0 вышла в 2016. В 2018 разработчики добавили поддержку 3d и движок получил название версии 3.0.

Мультиплатформенный, имеет большие возможности в 2d и несколько ограниченные в 3d. Ожидается поддержка Vulkan API, что позволит использовать фотореалистичные текстуры и сильно улучшит качества 3d движка. Имеет много контрибьютеров, самое большое количество среди опенсорсных движков. Но также имеет и недостатки, местами сыроват и имеет проблемы с производительностью если на экране находится большое количество объектов. Что обещают пофиксить в грядущей версии 3.2.

Мои за и против.

За:

1) Хорошая документация, большая часть переведена на русский

2) Бесплатен

3) Достаточно большое и активное сообщество. Уступает наверное только Unity и Unreal

4) Опенсорсный, достаточно быстро фиксятся баги

5) Работает на всех платформах и деплой почти на все платформы

6) Быстрый, игры мало весят. По некотором данным выигрывает в 2d у Unity до 30%

7) Хорошо организована структура файлов внутри движка

8) Поддержка нескольких языков: GDScript, C#, C++. C# — пока не полная

Против:

1) Сыроват. Некоторые вещи в больших движках из коробки, здесь что-то надо искать, доустанавливать или даже самим допиливать

2) Проседания по производительности с большим количеством объектов

3) По сравнению с большими движками мало туториалов, баз знаний и возможности решить проблему. А из-за смены версий, те что есть часто устаревают

4) Есть неплохие игры https://www.youtube.com/watch?v=JF60CfSLjew, но хитов пока нет

По сегментам пользователей:

1) Для самой первой категории не совсем подойдёт. Есть визуальный скриптинг, есть достаточно дружелюбный интерфейс и сам движок полностью русифицирован. Но мне кажется новичку здесь запуститься будет всё-таки непросто.

2) Для второй категории подойдёт, много плюшек и несложно. Но могут возникнуть проблемы о которых писал выше

3) Для программистов подойдёт. Они в основном самые ярые фанаты. Но есть и которые скептически настроены.

4) Команды уже начинают использовать. Но пока рисков явно побольше, чем с Unity

5) Для офиса не подойдёт. Была только одна вакансия. Возможно позже.

Полезные ссылки:

https://docs.google.com/spreadsheets/d/1b8-0uDTgweaCWbYNwqKeVSbSAUItXFOdvbqMCXehFoo/edit#gid=18102079

Gamemaker Studio

Сайт — https://www.yoyogames.com/gamemaker

Прародителем этого движка был gamemaker, который появился ещё в 1999 году. Изначально миссией компании YoYo Games было предоставление простого конструктора для игр и долгое время продукт был бесплатен. Позже появились спонсоры Playtech, которые купили YoYo Games. Результатом в 2017 году стала вторая версия известного движка.

Это и следующие два рассматриваемых движка отличает самый низкий порог входа и возможность создавать игры без программирования. Gamemaker простой как палка и при этом весьма эффективный. На движке создано немало инди-хитов, некоторые из них перешагнули миллионные отметки скачиваний в стиме. Такие изветсные игры как: Hotline Miami, Nuclear Throne, Undertale, Hyper Light Drifter, The Swords of Ditto, Forager, недавний Katana Zero и многие другие.

Это в основном инди-2d игры под стим, мобильные или приставки. Создаются в основном при помощи визуального программирования drag-n-drop. Есть возможность программировать на собственном совсем простом языке gml, напоминающим javascript.

С лицензиями сейчас ситуация странная: под каждую платформу своя лицензия https://accounts.yoyogames.com/products. Что не очень удобно. Минимальная версия для Windows стоит 39$, есть бесплатный 30-дневный период. Есть свой магазин ассетов, по сравнению с Unity совсем жидкий.

Комьюнити достаточно большое и активное, в том числе и русское. Собираются в основном на форуме.

Мои за и против.

За:

1) Низкий порог вхождения, не обязательно знание программирования

2) Активное комьюнити

3) Не слишком современный и красивый, но при этом очень удобный интерфейс

4) Высокая скорость разработки

5) Большое количество успешных игр на платформе

6) Есть своя аналитика

Против:

1) Только 2d игры, при том даже 2d уступает ведущим движкам. Есть ограниченная поддержка 3d, но не используется в основном.

2) Видно наследие старых времён. Документация и форум как из начала нулевых по визуалу

3) Программистами не воспринимается серьёзно и часто критикуем из-за архитектуры проекта и сложности поддержки таких проектов

4) Интерфейс становится неудобен на более-менее больших проектах

По сегментам пользователей:

1) Для совсем новичков подойдёт хорошо

2) Для второй категории — тоже хорошо

3, 4, 5) Для других категорий, лучше выбрать другой движок. Только инди-команды иногда его ещё берут.

Полезные ссылки:

https://docs.google.com/spreadsheets/d/1b8-0uDTgweaCWbYNwqKeVSbSAUItXFOdvbqMCXehFoo/edit#gid=783326159

Construct 2 / Contruct 3

Сайт — https://www.construct.net/en

Конструктор двумерных игр , разрабатываемый компанией Scirra. Первая версия вышла в 2007 году. Если Gamemaker Studio простой как палка — то этот ещё проще. Тем не менее мультиплатформенный. На нём делают игры и на компьютеры и на телефоны и для веба. Игры создаются без программирования с помощью выбора уже предустановленных вариантов, заложенных как методы Box 2D Physics.

Разработчиками не воспринимается всерьёз. Тем не менее игры создаются, создаются быстро и потом монетизируются. Есть достаточно активное комьюнити. Но хитов, как у Gamemaker Studio — не наблюдается.

Есть две поддерживаемые версии 2 и 3. Вторая скачивается на компьютер, третья в браузере и русифицирована полностью. Обе платные — 518 рублей в месяц. Есть бесплатный период.

Мои за и против.

За:

1) Низкий порог вхождения, знание программирования не требуется

2) Высокая скорость разработки

Активное комьюнити

Против:

1) Слабый движок. Слабее Gamemaker studio. Хотя имеет начальную поддержку 3d.

2) При своей простоте показался менее удобен чем Gamemaker Studio и GDevelop

3) Платные версии

По сегментам пользователей:

1, 2, 3, 4, 5) Подходит только самой первой категории ввиду полной простоты и наличия уроков в интернете

Полезные ссылки:

https://docs.google.com/spreadsheets/d/1b8-0uDTgweaCWbYNwqKeVSbSAUItXFOdvbqMCXehFoo/edit#gid=1296936389

GDevelop

Сайт — https://gdevelop-app.com/

Третий и последний движок для начинающих. Понравился мне больше двух предыдущих. И похоже не только мне https://www.slant.co/versus/1049/6630/~gamemaker-studio_vs_gdevelop и https://www.slant.co/versus/1058/6630/~construct-2_vs_gdevelop.

Это Open Source движок. Не имеет компании владельца, а поддерживается и развивается сообществом программистов. Бесплатен, удобен. Очень быстрая разработка без программирования, есть возможность писать на javascript. Имеет хорошую документацию и развивается. Но по возможностям конечно очень скуден и служит для быстрой разработки типа 8-битных игр или прототипирования.

Мои за и против.

За:

1) Хорошая документация

2) Бесплатен

3) Возможность работы из браузера

4) Низкий порог вхождения, знание программирования не требуется

5) Высокая скорость разработки

6) В планах есть 3d

7) Очень быстрый экспорт игр на популярные платформы

Против:

1) Слабый движок.

2) Неразвитое комьюнити. Особенно русское

3) Нет хитов

4) Нет магазина ассетов

По сегментам пользователей:

1, 2, 3, 4, 5) Подходит только самой первой категории и для прототипирования и дальнейшей разработки на более мощных движках. А также для обучения

Полезные ссылки:

https://docs.google.com/spreadsheets/d/1b8-0uDTgweaCWbYNwqKeVSbSAUItXFOdvbqMCXehFoo/edit#gid=1255028817

Есть ещё много различных движков. Есть и фреймворки, без графической оболочки. Но и этого набора вполне хватит для человека с любым опытом в игрострое от нулевого до высокого, чтобы начать делать свою игру.

0 CommentsОтменить комментарий

Оставить комментарий

shares