Игровой конструктор для создания игр

Обновлено: 26.04.2024

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

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

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

Раз пошла такая пьянка - начнем с самого популярного игрового движка в мире - Unity. Это кросс-платформенный игровой движок для разработки 2D и 3D игр любого жанра и формата.

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

Стоимость: Бесплатно и Платные тарифы для больших команд

Плюсы Unity:

Минусы Unity:

  • Для разработки хорошей игры нужно глубоко погрузиться в аспекты движка;
  • Много сырых версий, огромное количество багов;
  • Отсутствие открытого кода для небольших команд разработчиков;
  • Огромный размер;
  • В приоритете разработки обновлений движка - мобильные платформы;
  • Движок создан в первую очередь для бизнеса. Поэтому его модель поддержки нацелена на бизнес, а не на удобство для разработчиков.

Следующий монструозный игровой движок - это Unreal Engine. Его история длится десятилетиями, однако сейчас - он кажется достиг своего величия. Движок разрабатывается компанией Epic Games и является передовым решением для создания крупных AAA-игр.

Язык программирования: C++, NoCode (Blueprints)

Стоимость: Бесплатно (с условиями)

Плюсы Unreal Engine:

  • Мощный редактор на все случаи жизни;
  • Гибкая архитектура игрового движка;
  • Игровой движок разрабатывается в том числе для игр создателя. Поэтому он в первую очередь нацелен на других разработчиков, а не бизнес, как в случае с Unity;
  • Готовый к AAA-проектам из коробки;
  • Кросс-платформенный;

Минусы Unreal Engine:

  • Более высокий порог входа;
  • Более закрытое и не такое многочисленное сообщество;
  • Акцент - на AAA-проекты;
  • Размер движка и его требовательность;

Близкий по духу к Unity игровой движок с открытым исходным кодом. Его разработка началась не так давно (ранее он назывался Xenko), однако он будет хорошим выбором для тех - кому важна бесплатность и открытость исходного кода.

Стоимость: Бесплатно (Open Source)

Плюсы Stride:

Минусы Stride:

  • Движок и сообщество еще молодое;
  • Не такое обилие примеров и обучающих материалов;
  • Сырость некоторых компонентов;
  • Более бедная кросс-платформа;

Мощный конструктор игр с открытым исходным кодом для создания кросс-платформенных 2D игр любой сложности без знания программирования.

Язык программирования: не требуется. На базе событий.

Стоимость: Бесплатно (Open-Source)

Плюсы GDevelop:

  • Разработка кросс-платформенных игр без программирования;
  • Гибкий и расширяемый редактор;
  • Бесплатный с открытым исходным кодом;
  • Поддержка шейдеров

Минусы GDevelop:

  • Не самое большое сообещство;
  • Мало примеров;
  • Не самый понятный интерфейс со старта;
  • Ограниченность 2D играми;

Один из набирающих популярность игровых движков для разработки 2D (и в некоторых случаев 3D) проектов. Движок бесплатен и поддерживает множество платформ.

Язык программирования: Lua (верхний уровень), C++ (нижний уровень) и другие (расширения движка).

Стоимость: Бесплатно

Плюсы Defold:

  • Бесплатный движок;
  • Кросс-платформенный;
  • Мощные инструменты;
  • Низкий порог входа и хорошая документация;

Минусы Defold:

  • Не самый приятный интерфейс, к которому нужно привыкнуть;
  • Не очень большое (пока) сообщество;
  • В первую очередь все же заточен под 2D;

Простой, удобный и гибкий конструктор игр, с поддержкой кросс-платформы, позволяющий создавать крутые 2D игры любого жанра без знаний программирования.

Язык программирования: Не требуется. На основе событий. Но поддерживает JS.

Стоимость: Бесплатно (с сильными ограничениями), полный набор от 524,99 ₽ в месяц

Плюсы Construct 3:

  • Не требует программирования, но поддерживает JS скрипты;
  • Большое количество плагинов и расширений;
  • Удобный и простой интерфейс, доступный с любого устройства из браузера;
  • Кросс-платформенный;
  • Большое сообщество, много примеров;

Минусы Construct 3:

  • Стоимость может быть велика;
  • Акцент на 2D проекты;
  • Не самая хорошая оптимизация;
  • Для полноценной работы требует подключение к интернету;

Еще один представитель конструкторов игр - Game Maker Studio 2. Включает в себя огромное количество функций, шаблонов и примеров для ваших игр.

Язык программирования: не требуется, но поддерживает скрипты.

Стоимость: Бесплатно (с ограничениями), полный набор - от 90Р в месяц.

Плюсы Game Maker Studio:

  • Не требует программирования;
  • Мощные инструменты;
  • Большое количество шаблонов и примеров;
  • Большое сообщество;

Минусы Game Maker Studio:

  • Не самый оптимизированный вариант;
  • В некоторых моментах достаточно сыроват;

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

Плюсы NeoAxis:

  • Легок в изучении;
  • Множество крутых инструментов для разработки;
  • Поддержка Visual Studio;

Минусы NeoAxis:

  • Не самое большое сообщество;
  • Кастрированная кросс-платформа;
  • Не самый удобный интерфейс;
  • Не так много примеров;

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

Стоимость: Бесплатно (с ограничениями)

Плюсы CryEngine:

  • Мощный игровой редактор-песочница;
  • Огромный потенциал для AAA-проектов;
  • Один из самых мощных рендеров;
  • Хорошая документация;

Минусы CryEngine:

  • Сильный упор на шутерную составляющую;
  • Не самый удобный для сборки инструментарий;
  • Для крутых игр требуются серьезные познания в C++;

Естественно это далеко не все представители игровых движков и конструкторов, но мы рассмотрели одни из них. Ниже я предоставил список не менее интересных претендентов с кратким описанием преимуществ.

Список интересных движков:

  • Play Canvas - JS движок с браузерным редактором. Очень мощный, кросс-платформенный движок с низким порогом входа;
  • Babylon JS - JS движок с мощным 3D рендерингом для разработки кросс-платформенных игр.
  • ThreeJS - пожалуй, одна из самых продвинутых технологий для отрисовки графики в браузере, как 2D так и 3D с кучей примеров;
  • Godot - очень интересный игровой движок, нацеленный на новичков.

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

И помните, что не так важно, какой игровой движок вы используете, чем важно то, как вы это делаете. Игровой движок - это лишь инструмент для достижения целей.

И как всегда, буду рад обсудить с вами возможности игровых движков. Возможно, у вас есть свои крутые примеры, которые вы используете в работе и можете посоветовать.

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

Godot, с его 40к звездами на гитхабе, огромным растущим сообществом и общей простотой освоения лежит под катом в "другие интересные движки". Почему?

Все игровые движки представленные здесь - это актуальные и живые. Я расписал те - которые успел пощупать, а Godot я как-то не задел.

Игровой движок разрабатывается в том числе для игр создателя. Поэтому он в первую очередь нацелен на других разработчиков, а не бизнес, как в случае с Unity;

Объясните мне кто-нибудь, что значит "движок создаётся для бизнеса"?

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

Когда юнити встраивает в 21 версии jobs в пакеты по умолчанию - это вот бизнес. А когда анреал выпускает наните - это для души, молниеносной разработке и для радости бабушки с дедушкой. Вот как-то так

Упомянул его, но не щупал лично, поэтому сложно про него что-то сказать.

-Для разработки хорошей игры нужно глубоко погрузиться в аспекты движка;

согласен, с этим минусом Unity
Он только кажется простым.

мне больше нравится UE, он для меня очень честный движок, оч приятный.
Но если полезешь в C++ то шишек можно набить много.
Но С++ практически не нужен, я с ним иногда играюсь ради баловства, вдруг пригодится. Считаю, что это баловство и есть.

Unreal очень дружелюбен для дизайнеров и создателей контента. Очень круто то, что условно гейм-дизайнер сможет создать что-то крутое, при условии его трудолюбия и упорства, не уходя глубоко в C++

чем сложнее игра, тем глубже погружение, логично

Unigine, Flax Engine

Забыл про легендарный Unigine, но вроде как он перепрофилировался под индастриал решения

Я, кстати говоря хоть и работаю на Unity, но то же самое могу сказать про них. Это стагнирующий движок, зарывающий сам себя в могилу. Большая часть их нововведений за последние годы - мертворожденные библиотеки, созданные только для того, чтобы повысить свою капитализацию.

Unity, UE, GameMaker. Годот четвертый, Unigine пятый, но будет 4-м

Популярный движок среди тех, кто хочет сделать свою бюджетную РПГ-игру. На ней вышло интересных инди-игр, например OMORI, To The Moon, Corpse Party и прочие. Движок обновляют и периодически перевыпускают цельным ремастером за отдельную цену.
Плюсы:
- Относительная простота использования, что в нём смогут разобраться и школьники.
- С помощью дефолтных ресурсов уже можно сделать игру.
- С помощью плагинов можно преобразить игру на любой вкус и цвет.
- Возможность создать игру без знаний языка программирования.
- JavaScript (не знаю, плюс это или минус)
- В новых ревизиях теперь возможно сделать игру под Android, и даже для браузера, благодаря поддержке HTML5.

Минусы:
- Подмоченная репутация из-за повального количества игр плохого качества.
- Движок способен лишь на сюжетно-ориентированные игры.
- Ограниченные возможности по графике.

Движок платный распространяется по типу buy-2-use. Последние две ревизии: RPG Maker MV, и RPG Maker MZ

Обе стоят примерно по 1400 рублей. Плюс куча платных DLC в виде ресурс-паков, спрайтов, текстур, звуков и музыки. Но если вы сами хоть немного умеете рисовать и сочинять музыку (или знаете источники royalty-free ресурсов) то их покупка не обязательна.

Уже с 5 лет дети могут учиться программировать и создавать крутые игры. Расскажем об основных программах, которые в этом помогут.

Сегодня маленькие «цифровые аборигены» рано берут в руки гаджеты и осваивают компьютерные игры. Это увлечение можно сразу развить и превратить во что-нибудь полезное: почему бы ребенку самому не начать создавать игры?

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

Мы рассмотрим как платформы для дошкольников (визуальные среды), так и для подростков (здесь уже понадобится текстовое программирование). Почти все программы либо имеют яркую визуализацию, либо связаны с популярными у детей игровыми площадками (Minecraft, Roblox). Игровой формат, знакомая среда вовлекают детей, мотивируют и помогают концентрировать внимание, что очень важно для обучения.

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

Scratch Junior (Скретч Джуниор) — это визуальная среда, младший брат популярной среды программирования Scratch. Он предназначен для совсем маленьких детей (от 5 лет).

Изначально Scratch Jr появилось как приложение на планшет с главным персонажем котиком (работает на iPad, Android и на читалках Kindle), а затем была создана версия для ПК с героем-инопланетянином по имени Тик.

Устроена программа довольно просто: посередине игровая сцена, снизу категории блоков и область программирования. Слева можно выбрать спрайта (то есть героя или объект), для которого будет создаваться программа. Справа можно добавить нового спрайта или переключиться между сценами.

Scratch Jr — это цифровой конструктор наподобие Lego, где ребёнок должен перетаскивать блоки и соединять их вместе в нужном порядке. Процесс несложный: блоки «примагничиваются» друг к другу.

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

Библиотека спрайтов и коллекция ландшафтов довольно большие.

Добавлять свои картинки для спрайтов не получится, но в программу встроен Paint-редактор, где можно нарисовать своего персонажа или пейзаж.

Ребята не только создают простые линейные программы, но и узнают, что такое циклы и подпрограммы. Даже самый простой проект на Scratch Jr может состоять из параллельных программ: можно создать «коды» для нескольких спрайтов и запустить их одновременно. Так как сцен может быть несколько, есть возможность создать несколько уровней игры.

Эта визуальная среда, разработанная компанией Microsoft, предназначена для создания несложных 3D-игр.

Здесь можно создавать трехмерные игровые миры и менять их. Инструментов довольно много: можно изменить форму, цвет и материал рельефа, создать подводный мир или лабиринт, добавить небо, изменить освещение и силу ветра и др.

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

Для программирования нужно манипулировать графическими блоками, как и в Scratch Jr. Чтобы создать программу, необходимо нажать на правую кнопку мыши и выбрать пункт «Программа». Область программирования появится на переднем плане.

Есть две основные категории блоков для программы: «когда» и «делать». И в каждой из них множество подкатегорий, детализирующих действие. Пример создания программы для шутера: когда клавиша W нажата, персонаж стреляет на север красными пульками.

В этой программе ребята уже создают полноценные 3D-миры, добавляют в игры таймер, подсчёт очков и жизней, уровни и многое другое.

А еще они изучают циклы и условия, развивают алгоритмическое и пространственное мышление. Они уже могут придумывать свои идеи и искать пути их воплощения, анализировать задачу и структурировать её решение.

О Скретче вы наверняка уже что-то слышали. Это визуальная среда и одноимённый визуальный язык программирования, разработанные медиалабораторией Массачусетского технологического университета. Со Скретча начинают программировать не только дети, но и взрослые: он даже включён в знаменитый гарвардский курс CS50, который знакомит студентов с программированием.

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

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

Интерфейс простой: посередине экрана находится среда программирования, слева блоки, справа — сцена, на которой происходят изменения. Под сценой область, где можно выбрать, для какого спрайта создается программа, его размер и координаты (по осям Х и Y).

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

Изучение лучше всего начать с категорий движения и внешнего вида спрайтов — так будет проще и удобнее, ведь спрайты — это основное в ваших играх на Скретч. После изучите циклы и условия, разберитесь, как сделать клонов в игре и задать переменные. После простых мини-проектов можно взяться за создание полноценного шутера, раннера или гонок.

Помимо встроенной библиотеки спрайтов и звуков, в Скретче можно добавлять свои собственные материалы. А также есть Paint-редактор, где можно нарисовать спрайта, и аудиоредактор, где пользователь записывает своё аудио.

Такое большое количество инструментов позволяет создать в Скретче практически любую игру.

Чтобы потренироваться и получше изучить возможности Скретч, дети могут воссоздать свои любимые игры. Например, сделать копию Among Us, Brawl Stars или Friday Night Funkin.

Еще интересно, что Скретч — это открытая площадка, где все могут обмениваться идеями, брать работы других пользователей и модифицировать их. Если проект «публичный», то можно воспользоваться его кодом и сделать свой ремикс.

В Скретч дети могут поближе познакомиться с логикой программирования и сразу создавать свои игры и анимацию. Работая над своими проектами, ребята развивают креативное и алгоритмическое мышление, учатся воплощать комплексные задачи. Набор инструментов достаточно широкий, чтобы воплотить практически любую задумку ребенка: нужно только проанализировать задачу и постараться найти решение.

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

Это хорошая возможность научить детей программировать в знакомой и любимой среде. Как это работает? Мы скачиваем игру Майнкрафт и среду для разработки Python, а также Java, интегрируем всё вместе. Включаем сервер на компьютере, пишем код и запускаем его в игре.

К Майнкрафт также можно подключить другие языки. Например, Lua, о котором будем говорить чуть ниже в разделе о Roblox. Но Python — самый лучший выбор, так как он не только простой и интуитивно понятный для детей, но в то же время это активно развивающийся и востребованный язык, который пригодится ребятам в будущем.

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

Код на Python для создания куба из динамита

Трёхмерный куб из 125 блоков динамита

А ещё в Майнкрафт можно познакомиться с концептом искусственного интеллекта и применением случайных чисел. Например, задать настроение персонажу-боту: он будет обижаться, когда мы отдаляемся от него, и прощать нас, когда приближаемся к нему.

Код, который мы запускаем, чтобы персонаж-бот мог на нас обидеться и затем простить

В первую очередь в Майнкрафт мы изучаем программирование, но также классно внутри этой песочницы делать свои игры. Например, лабиринт, игру с препятствиями (с появлением и исчезновением блоков и другими условиями) и др.

Создание игр в Minecraft — это, конечно, не то же, что создавать игры в программах по разработке игр. Здесь мы больше фокусируемся на программировании: осваиваем Python и учимся писать код на очень популярном языке (знание Python точно пригодится детям в будущем, какую профессию они бы не выбрали), ищем баги и исправляем их, как настоящие программисты.

Но, во-первых, Minecraft — это популярная у детей игра, а значит это хороший способ привить детям любовь к программированию и разработке игр. А во-вторых, создание игр в Майнкрафт раздвигает рамки и развивает воображение: дети понимают, что нет ничего невозможного (можно программировать в любимой игре!) и экспериментируют, создавая оригинальные, ни на что не похожие проекты.

Если в Minecraft дети больше учатся Python-программированию, то в Roblox они смогут почувствовать себя настоящими разработчиками игр. Это тоже знакомая для них среда: здесь ребята играют в популярные игры Adopt Me, Piggy, Murder Mystery 2 и многие другие.

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

У Roblox Studio непростой интерфейс, поскольку набор функций и вкладок велик. Сложность ещё и в том, что названия в программе даны на английском языке, а к этому ещё нужно привыкнуть. Когда вы только начинаете работу над проектом, перед вами открывается библиотека шаблонов: можно создавать игру на обычной равнине (Flat Terrain) или, например, в замке (Castle) или в деревне (Village). Выбор шаблона также может определять жанр игры: например, есть ландшафт для гонок или для игры Obby (игра с препятствиями).

Далее вы переходите в рабочее пространство. Посередине экрана находится сцена, а вокруг — разные вкладки, которые можно открывать и скрывать. Наверху в разделе Home вы найдёте инструменты, которые позволяют работать с объектами на сцене: создавать, двигать (Move), вращать (Rotate), изменять их размер (Scale).

Справа расположен Explorer, где находятся инструменты для настройки уровней. Самый важный из них — Workspace, куда попадают все объекты, добавленные на игровую сцену. Если нажать на объект, то под Explorer заполнится окно Properties, где можно изменить свойства объекта (например, размер или цвет).

Слева находится Toolbox — коллекция моделей, созданных разработчиками Roblox и обычными пользователями. Их можно добавлять в игровой мир. Слева же должна быть вкладка Editor (чтобы открыть её, нажмите на название Editor в верхней панели), где находятся инструменты для изменения ландшафта.

Если вы потеряли какую-либо вкладку, просто нажмите в верхнем меню на View, там можно будет выбрать любое нужное окно (такой вопрос у начинающих ребят возникает часто).

Чтобы передвигаться по игровому миру (движение камеры), нужно нажимать на клавиши W, A, S, D и зажимать правую кнопку мыши.

Создаем симулятор копателя в Roblox Studio (ночной режим)

Область программирования открывается через Explorer. Нужно нажать на плюсик рядом с Workspace (или там же рядом с объектом, для которого нужно создать код) и добавить скрипт.

Пишем код на языке Lua для симулятора копателя

Также в Roblox Studio можно подключить плагины, которые расширяют набор инструментов. Они позволяют быстрее изменять цвет, создавать окружности, разрезать блоки на тонкие пластины и др.

В Roblox можно создавать игры самых разных жанров: Obby, шутер, гонки, симуляторы (например, симулятор копателя), раннеры и многое другое.

Игры публикуются на сайте Roblox, там же можно играть в них вместе с друзьями, комментировать и ставить лайки, получать фидбек от пользователей. В Roblox также можно получать внутриигровую валюту Robux, например, за продажу мерча или когда в вашу игру играют пользователи с премиум-аккаунтом.

Roblox Studio — это полноценный инструмент, который познакомит детей с разработкой игр. Он приближен к профессиональным движкам, но упрощён и адаптирован так, что дети могут без проблем создавать в этой среде свои игры. А язык программирования Lua доступен для понимания ребенка и станет отличным началом на пути освоения программирования.

Моделирование 3D-миров поможет развить пространственное и алгоритмическое мышление ребенка. Дети смогут познакомиться с тем, как работают профессиональные разработчики игр и, возможно, загорятся в будущем освоить эту специальность.

В январе я участвовала в своем первом геймджеме — Global Game Jam 2022, в Стамбуле. На джеме все участники писали игры на движках — ибо надо быстро. Игровой движок — это физика, рендеринг, скрипты, искусственный интеллект. Создавать игру с нуля или пользоваться движком — вопрос вкуса. Вон, Джонатан Блоу вообще пишет свой движок, чтобы писать на нем игру.

Я обратила внимание, что большинство студентов использовали либо Unity либо GameMaker. Сама я питаю нежные чувства к Construct, но на нем всего одна команда делала игру. Я решила поискать альтернативу для себя, заодно запилила подборку бесплатных движков для начинающих (а может и продолжающих) игроделов.

Еще я веду канал в Telegram GameDEVils (на русском) и блог на Substack (на английском), делюсь там клевыми материалами (про геймдизайн, разработку и историю игр).

Популярные движки Steam и itch.io

Вот статистика, игры на каких движках выкладывают в Steam:




Топ-11 движков в Steam:

  1. Unity (27148)
  2. Unreal (6869)
  3. GameMaker: Studio (2806)
  4. RPGMaker (1938)
  5. Ren'Py (1235)
  6. XNA (572)
  7. Adobe AIR (398)
  8. Godot (384)
  9. Cocos2d (326)
  10. MonoGame (280)
  11. Construct (201)

И на каких движках чаще публикуют на itch.io:


Топ-11 движков на itch.io:

  1. Unity (82 000)
  2. Construct (18 300)
  3. GameMaker: Studio (12 100)
  4. Godot (8 640)
  5. Twine (7 800)
  6. Unreal Engine (4 800)
  7. Bitsy (4 800)
  8. RPG Maker (4 500)(не бесплатно, но есть триалка)
  9. PICO-8 (4 200)($15)
  10. Ren'Py (3 100)
  11. LÖVE (1 500)

1. Unity


На Unity разработали много игр, прям МНОГО. Вот ссылочка на Википедию. Unity поддерживается на iOS, Android, Windows Phone, Tizen и Fire OS.

Если оборот или объем привлеченных инвестиций не превышает $100 тыс. за последние 12 месяцев, то можно пользоваться бесплатной подпиской Personal.

Про Unity на Хабре:

2. Unreal


Игровой движок от компании Epic Games, тоже очень популярный, вот список игр из Википедии.

Unreal Engine бесплатный аж с 2015 года, но разработчики игр должны передавать 5% от выручки с продаж игры компании Epic Games, если ежеквартальная выручка превышает $1 000 000.

Про Unreal на Хабре:

3. GameMaker: Studio2


Интерфейс Game Maker объединяет в себе редакторы спрайтов, объектов, комнат, скриптов, а также тайм-лайнов (последовательностей действий с привязкой по времени), путей (маршрутов) движения и констант. Летом 2021 года YoYo Games сделали беплатный доступ без ограничений по времени. Изначально они выдавали триалку только на месяц, для знакомства. Правда экспортировать на бесплатной версии можно разве что на GXC.

За базовую подписку CREATOR (≈ 80 руб./мес.) появляется экспорт для Windows, macOS и Linux. За INDIE (≈ 260 руб./мес.) появляется экспорт для HTML5 и мобилки.

Проблема GameMaker, и других движков типа «наведи и щелкни» в том, что разработчики более ограничены. С другой стороны, GameMaker популярен, потому что позволяет создать игру без предварительных навыков программирования.

Про GameMaker на Хабре:

4. Godot


Про Godot на Хабре:

Cocos2d


Крос-платформенный опенсорсный фрейворк для разработки игр и приложений, преимущественно для мобилки с лицензией MIT. Cocos2d-x развертывается в iOS, Android, HTML5, Windows и Mac.

Фреймворк поддерживает создание 2D и 3D игр, предоставляет такие функции, такие как рендеринг графики, графический интерфейс, аудио, сеть, физика, пользовательский ввод и т.д. Ядро написано на C++ и поддерживает разработку на C++, Lua или JavaScript. У фрейворка есть множество ответвлений: Cocos2d-ObjC, Cocos2d-x, Cocos2d-html5 и Cocos2d-XNA.

Про Cocos2d на Хабре:

5. Construct


Ноу-код движок для создания 2D игр. Запускается в браузере, работает из десктопа офлайн. Движок не дает большой гибкости, как GameMaker, и также дружелюбен к новичкам без технического бэкграунда + на ютубе выложена куча туториалов.

Есть бесплатная версия Construct, основное ограничение — 2 слоя и максимум 25 «событий» (если авторизоваться, то 50 «событий») в проекте. За события считается любое действие / поведение объекта. Но чтобы попробовать, и даже собрать элементарный платформер — хватает. Персональная лицензия стоит около $5.

6. Twine


Платформа для интерактивного сторителлинга и визуальных новелл, бесплатная, с бесплатной публичной лицензией (GPL).


Чтобы создать простенький сторителлинг с помощью Twine, код писать не нужно. Но можно. Можно дополнить свои истории с за счет переменных, условной логики, изображений, CSS и JavaScript.

Про Twine на Хабре:

7. Adobe AIR SDK (HARMAN)

Кроссплатформенный движок (Windows, OS X, Linux, QNX, Android) от компании Adobe, которая пару лет назад передала на нее права компании HARMAN. Этот движок можно использовать бесплатно, если вы зарабатываете менее 50 тысяч долларов в год. Движок все еще популярен в Steam, от части из-за адаптаций браузерных игр на Flash.

На Хабре про AIR:

8. Ren'Py


Опенсорсный движок для создания визуальных новелл в 2D-графике с бесплатным коммерческим использованием.

Про Ren'Py на Хабре:

9. Bitsy

Крошечный онлайн редактор для мини-игр. Это какой-то супер-милый проект и милым сайтом. Разработчик выкладывает логи проекта на itch.io. И там же можно поиграть в игры, сделанные с помощью Bitsy движка.

10. LÖVE


Фреймворк для создания 2D игр на Lua. Он бесплатный, с открытым исходным кодом и работает на Windows, Mac OS X, Linux, Android и iOS. Лицензия zlib, позволяет свободное использовать движок даже в коммерческих проектах с закрытыми исходниками.

Про LÖVE на Хабре:

11/12. XNA и/или MonoGame

НЕбесплатные движки с itch.io и Steam

PICO-8

RPG Maker

Это серия движков для создания РПГ, точнее JRPG, японских ролевых игр. Для RPG Maker тоже нет бесплатной подписки, но есть пробная триалка. RPG Maker поддерживает только Windows. В Steam он лежит для разовой покупки от 500 до 3000 рублей, в зависимости от продукта, там есть несколько «комплектаций». Менять скрипты под себя можно на Ruby-подобном языке.

Больше бесплатных движков

Вот бонусом еще 11 бесплатных вариантов движков:

1. Amazon Lumberyard


Бесплатный кросс-платформенный игровой движок, разработанный Amazon. Визуальная технология Lumberyard основана на CryEngine, но команда разработчиков Amazon уже внесла в систему значительные обновления. Роялти нет, лицензионных сборов нет. Amazon зарабатывает деньги через Amazon Web Service. Естественно, у этого игрового движка прекрасная совместимости с AWS. Помимо бесшовной интеграции с AWS, Lumberyard также предлагает интеграцию с Twitch.

Про Amazon Lumberyard на Хабре:

2. Solar2D (бывший Corona SDK)

Кросплатформенный движок с открытым исходным кодом для создания мобильных 2D-игр и приложений. Поддерживает такие платформы, как Android, iOS, Kindle, macOS, Windows, Linux. Предусмотрена сборка веб-приложений (HTML5). Solar 2D использует интегрированный Lua, наложенный поверх C++ / OpenGL.

Про Solar2D на Хабре:

3. jMonkeyEngine


Движок с открытым исходным кодом, написанный на Java для создания игр и приложений для Android или iOS. Точнее jMonkeyEngine — это набор библиотек для низкоуровневой разработки, а в высокоуровневый инструментарий его превращает интегрированная среда разработки, к примеру jMonkeyEngine 3 SDK.

Про jMonkeyEngine на Хабре:

4. SpriteKit

Это движок для 2-D игр, разработанный Apple и предназначенный для устройств Apple.

Про SpriteKit на Хабре:

5. Box2D


Физический движок от разработчика из Blizzard Entertainment, написан на C++, лицензия MIT.

Про Box2D на Хабре:

6. LibGDX

Кросплатформенная среда разработки на Java, которая предоставляет унифицированный API для создания 2D- и 3D-игр. LibGDX дружит с движком Box2D (физика реального мира), можно добавить поддержку TrueType шрифтов или работать с 3D объектами.

А еще коммьюнити LibGDX проводит геймджемы раз в сезон (март, июнь, сентябрь, декабрь), вот ссылочка на подробную информацию: Game Jams.

Про LibGDX на Хабре:

7. Urho3D


Бесплатный 2D и 3D игровой движок, запускается на Windows, Linux, macOS/iOS/tvOS, Android, и даже на Raspberry Pi и в браузере. Вики Urho3D содержит всю инфу для начала работы с движком, включая практические руководства по настройке.

Про Urho3D на Хабре:

8. CryEngine


Если вы использовали версию движка 5.5+ и заработали 5000$, то придется выплачивать 5% от прибыли. Если вы используете более ранние версии, то можете подать заявку на освобождение от выплат.

Про CryEngine на Хабре:

9. Panda 3D

Движок с открытым исходным кодом для 3D-игр. Язык разработки игр — Python. Сам движок написан на C++ и использует автоматический wrapper-генератор для предоставления полной функциональности движка в интерфейсе Python. Panda 3D может работать практически на всех основных платформах.

10. Bitty


Небольшой кроссплатформенный движок и опенсорсный фреймворк для создания 2D-игр на Lua…

11. Phaser


HTML5-опенсорсный движок для тех, кому хочется писать JavaScript or TypeScript браузерные 2D игры. Для начала работы с движком создатель предлагает просто начать вносить свои правки в уже существующие общедоступные игры и смотреть, что из этого получается. Плюс есть форум, где чувачки из комьюнити активно отвечают.


Кстати, про геймджем по-турецки скоро отдельный пост запилю. Вот пока моя фотка во время джема:


(Это я в шапочке, честное слово)


Мой канал в Telegram с находками про разработку игр, историю игр и геймдизайн: GameDevils (на русском) и блог на Substack (на английском).

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

Unity 5

image


Лучший выбор для разработчика, позволяет создавать игры как 2D, так и 3D.

Construct 2

image


Система для создания двумерных игр через простой интерфейс на базе HTML5. Программирования не требуется.

libGDX

image



Кросплатформенный фрейморк, написанный на Java и работающий с OpenGL (ES).

image


Бесплатный фреймворк с открытым кодом для разработки двумерных игр на Lua. Использование бесплатно.

MONKEY X

image


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

GDevApp

image


Позволяет создавать игры на HTML5 для устройств на Android.

Angel 2D

image


Кросплатформенный фреймворк для прототипирования двумерных игр на основе OpenGL и C++. Имеет встроенную базовую игровую функциональность.

GameMaker

image


Помогает сделать программирование легче, включает визуальную систему создания игр.

HaxeFlixel

image


Открытый софт, полностью бесплатный, имеет собственный встроенный язык.

MOAI SDK

image



Игровой движок с открытым кодом. Для разработки используется Lua, C++ и OpenGL, предназначен для создания мобильных игр.


Первое знакомство

Однажды мне довелось побывать на мастер-классе по прототипированию у одного известного левел-дизайнера, работавшего в одной из крупнейших IT-компаний в России. На мастер-классе каждому участнику предложили создать свою игру за 1 час, а в конце часа показать игру остальным. То есть я первый раз запускаю программу и через час должен создать игру? Обладая некоторым опытом работы в программах, где необходимо писать код, я не поверил, что такое возможно. К моему удивлению, все (я в том числе) успели сделать свою первую маленькую игру. Пусть и простую, но в нее можно было играть. Так во мне зародилась любовь к конструктору под названием Clickteam Fusion 2.5 (раньше назывался Multimedia Fusion). Ещё популярными конструкторами являются Game Maker Studio и Construct 2. В основном, я работаю в Clickteam Fusion 2.5 (далее CF 2.5). На её примере раскрою принцип работы таких программ и их возможности.

image

Как это работает

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

При создании новой игры необходимо определить, для какой платформы хотите творить. Конструкторы дают возможность создавать игры для PC, IOS, Android, Html 5, Flash и т.д. Например, чтобы создать игру не только для PC, но и для IOS в программе CF 2.5, придётся докупить или скачать export module ios. Модуль конвертирует игру в код платформы – Xcode. Затем, через несколько нажатий, вы уже сможете тестировать игру на устройствах Apple (также нужен аккаунт разработчика Apple).


Ваша игра будет состоять из кадров (сцен). В каждом кадре можно создавать объекты, которые помогут вам решить любую задачу. Например, если это главное меню и вы хотите создать кнопку «Start», вам необходимо создать объект «active».


Окно «Редактор кадра».


Нажимаем правую кнопку мыши и выбираем «Insert object».


Выбираем объект «active».

Затем, нужно вставить в объект изображение кнопки или нарисовать во встроенном редакторе. В этом окне также можно создать покадровую анимацию. Один объект может иметь несколько анимаций (герой стоит, герой бежит, герой летит).


Окно «Графический редактор».

Осталось придумать событие, которое будет происходить с этим объектом.
Для этого, переходим с вкладки «редактор кадра» на вкладку «редактор событий».


Выбираем из списка необходимые события (условия), при которых, произойдут установленные вами действия над выбранным объектом, группой объектов, кадром.



Если игрок нажимает левой кнопкой мыши на объект «Start», то —

— происходит переход на следующий кадр.


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

Ещё несколько примеров:
— Если объект «шар» коснулся объекта «шип», то на экране появляется надпись «вы проиграли», а объект «шар» меняет анимацию на «шар лопнул».
— Если прошло более 5 секунд с начала запуска кадра, то в правом верхнем углу появляется объект «аптечка».
— Если объект «птичка» коснулся объекта «червяк», то «червяк» исчезает, в объект «счётчик очков» прибавляется единица и один раз проигрывается звук «жалобный крик червя».

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

Active object – самый популярный объект, его используют для создания объектов взаимодействия (главный герой, враги, платформы, ящики и т.д.). Он может содержать много разных анимаций (герой стоит, герой бежит, герой стреляет), иметь встроенные стандартные механики движения и управления.

Counter object – создает всевозможные счётчики жизней, денег, очков и т. д. Может быть представлен как в виде цифр, так и в виде шкалы.

INI object – сохраняет данные после выхода игрока из игры. Можно использовать для сохранения месторасположения любых объектов в кадре.

Physic engine object – появление этого объекта в кадре создаёт гравитацию, параметры которой можно регулировать.

Joystick control object– для touch-устройств создаёт эмулятор джойстика.

IOS store object – даёт возможность сделать внутриигровые покупки для AppStore.

Admob object – позволяет поместить баннерную рекламу в игру.

Touch object – учитывает все касания к экрану touch-устройства. Например, можно создать такое событие:
если игрок одновременно коснулся экрана тремя пальцами, то игра останавливается на паузу.

Если что-то не получается


Список популярных игр созданных на конструкторах

  • Five nights at fraddy's
  • Hotline miami
  • Uncanny valley
  • Hiper light drifter
  • Gods will be watching
  • Echo of the wilds
  • Arcane Soul
  • Savant – Ascent
  • Brazin' Aces
  • Super Ubie Land
  • Airscape: The Fall of Gravity
  • Our Darker Purpose
  • Mortar Melon
  • Who Is The Killer (Episode I)
  • Magnrtized
  • The Next Penelope
  • Concert jungle
  • Fort meow
  • Pitiri 1977


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

Читайте также: