Какой движок выбрать для игры: Какой игровой движок выбрать? / Хабр

Какой игровой движок выбрать? / Хабр

Всём привет! Меня зовут Дядиченко Григорий, и я CTO Foxsys. В разработке я порядка 8 лет, а занимаюсь игровой или AR/VR разработкой последние лет 6. Сразу скажу, что в данной статье нет простого ответа “этот игровой движок лучше”, и она не претендует на объективность. Я лишь расскажу мнение с точки зрения технического директора и человека за плечами которого порядка 40 коммерческих проектов. Если вам интересно — добро пожаловать под кат.

Как выбираются технологии для проекта?

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

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

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

Бизнес-часть принятия решения составляет из себя ответы на вопросы: “Насколько просто найти специалистов на рынке на данной технологии?”, “Какую технологию дороже поддерживать?”, “Какой экспертизой на данный момент обладает команда?” + возможности партнёрства и прочие бизнес-причины.

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

Какой движок лучше выбрать новичку?

Конечно, с моим бекграундом в 6 лет Unity разработке можно было бы предположить, что выбор уже решён и что тут дальше читать то. Но мой ответ вас, возможно, удивит. На данный момент я считаю, что, если вы совсем новичок, ещё не погрузились ни в один движок и только начинаете свой путь лучшим выбором будет Unreal Engine. И пока сообщество не начало обвинять меня в предательстве я объясню свою точку зрения.

Я считаю, что эти движки в большинстве задач связанных с 3д графикой по сути идентичны. Чуть ниже я подробнее распишу почему. Мой выбор на данный момент связан не столько с технологическими причинами, сколько с работой компаний со своими комьюнити. И на данный момент я вижу в разы больше интересных программ, активностей, образовательных мероприятий и прочего со стороны Epic Games. На Unity, конечно, сидит почти весь мобильный геймдев, в 3 раза больше вакансий чем на UE и так далее. Но думаю, это со временем изменится. Да и 134 (на момент написания статьи) открытых позиций это немало. Современная разработка устроена так, что в целом вы можете учить что угодно, что вам больше нравится, и вы всегда найдёте себе работу. Поэтому это мнение на тему новичков, так как если вы выбрали для себя Unity — это отличный выбор. 6 лет работаю на Unity и горя не знаю. А вот для совсем новичков я вижу просто больше образовательных возможностей и интересного со стороны эпиков. Но всё может измениться.

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

На Unreal Engine лучше графика?

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

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

Графика — это вопрос пряморукости людей, которые подготавливают контент и рендер программистов. Давайте возьмём за правило то, что вы конечно можете быть универсалом, но в игровой разработке программисты, отвечающие за графику, за игровую логику, за ИИ и так далее — это разные программисты. Компьютерная графика — это весьма глубокая область, как и скажем программирование ИИ, и если вы хотите стать гуру — вам нужно понимать, что такое графический конвейер, как вообще работает реалтайм рендер и так далее. На этот счёт могу порекомендовать книги Real-Time Rendering Tomas Akenine-Möller и серию GPU Gems.

Так вот, если вы понимаете, как пишутся оптимальные шейдеры, из чего вообще складываются графические эффекты и т. п. — вам в среднем плевать какой у вас в руках движок. Исключением являются технологии. Скажем вроде как (тут меня могут поправить UE разработчики) у Unreal Engine всё лучше с поддержкой технологий Nvidia. Тот же DLSS вроде появится 2021.2, хотя в UE его вроде уже можно использовать. Но скажем из Nvidia GameWorks есть поддержка Nvidia Flex и так далее. В общем это уже совсем тонкие нюансы, зависящие от контекста вашего проекта. В среднем по рендеру движки если не идентичны, то очень похожи. А в паре с бесплатными плагинами каждый различается по-своему в тонких нюансах.

Что же лучше для проекта?

Всё всегда зависит от специалистов и бюджетов. И если мы берём среднебюджетный проект (коих сейчас большинство), то я вообще не вижу разницы между движками. Если мы берём аутсорс которым я занимаюсь, то вообще без разницы. В те бюджеты, которыми обладает средний проект у вас не будет даже возможности добраться до багов движков, до проблем с невозможностью что-то сделать, да и вы не будете этим заниматься. Любой эксперт при имеющемся бюджете знает, как сделать проект на технологии Х в этот бюджет качественно.

Единственное, хотя я немного не в контексте движка UE, но я бы его не стал бы брать для 2D проектов в принципе. Так как последние время Unity выпускает много крутых инструментов для 2D разработки. Поэтому мне кажется, что пока в этой области UE рассматривать нет особого смысла. Есть конечно менее популярные движки для этой задачи типа Defold или же Game Maker, но их я бы не стал брать по бизнес-причинам. Потому что я не уверен, что не столкнусь с проблемой того, что мне неоткуда будет расширять команду, так как специалистов на них днём с огнём не сыщешь.

И оба движка я бы в целом не рассматривал бы для web проектов. Если в UE я просто не знаю, что с поддержкой веба (может её там и нет) То с Unity прикол в двух основных проблемах. Первая, что там до сих пор нет поддержки мобильных браузеров. Да, на топовых телефонах оно даже как-то работает, но это очень рискованная затея брать технологию, которая официально не поддерживается для продакшен решения. А второе и самое главное — это время загрузки. Основной прикол веба в быстрой доставке контента до пользователей (помимо того, что там нет ограничений и правил сторов). Поэтому время загрузки Unity убивает эту фишку напрочь. Для веб проектов я чаще всего беру pixi.js, three.js, playcanvas и react. Что в этом списке забыл реакт? Это длинная история для другой статьи, если кому-то это интересно.

Собственно, по этим же причинам я для себя пока не вижу смысла переходить с Unity. За 40 коммерческих проектов разного масштаба я ни разу не упирался в стену, чтобы что-то было нереально сделать на Unity и реально на Unreal Engine. Плюс для меня, как для бывшего С++ разработчика (невысокого уровня) основным минусом UE является С++. C# как язык в разы приятнее. Кто знает undefined behavior и сложные утечки памяти, тот поймёт. 

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

Открытые исходники — это хорошо?

Нет, нет и ещё раз нет. И в этом я довольно категоричен. Даже беря в работу Unreal Engine, я рассматриваю его как чёрный ящик. Потому что фреймворк берётся в работу не для того, чтобы поддерживать свою версию этого фреймворка. Наличие такой возможности для компаний, которые могут заниматься подобной деятельностью есть и в Unity, но вы никогда не хотите этим заниматься. И причин этого целая масса. Начиная от ада с конфликтами версий в случае необходимости переезда на новую версию. Движок берётся не для того, чтобы исправлять его баги. Безусловно важной является не открытость исходников, а возможность надстройки своей системы поверх движка. И этой возможностью обладают и юнити, и анреал. Открытость к расширению и закрытость к модификации так сказать. Потому что в этом случае обновляться можно спокойнее, хотя обновление — это всегда важный шаг в отношениях с любой технологией, и делать это надо крайне осторожно.

Подводя некий итог

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

7 простых утилит для игровой разработки без программирования для новичков

Валентин Шакун

мечтает сделать игру про караваны

Профиль автора

Сегодня игровая разработка доступна как никогда: в сети можно найти сотни руководств и десятки движков под любые запросы.

Из-за этого новичкам сложно найти подходящий вариант — многие просто устанавливают самые популярные программы.

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

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

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

Почему лучше выбрать готовый движок

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

Большие игровые движки постоянно дорабатываются разработчиками — выходят новые версии и утилиты. Вокруг них складываются большие сообщества авторов игр, которые делятся советами и руководствами между собой. Нередко при движках существуют еще и магазины ассетов — предметов, которые используются в играх, будь то 3D-модель или текстура.

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

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

/list/cozy-videogames/

Атмосфера и минимализм: 15 уютных видеоигр для расслабления

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

Даже у больших издателей проприетарные движки, то есть разработанные внутри компании, постоянно обновляют из-за недостатка функций. Например, Electronic Arts, известная по Battlefield и Mass Effect, постоянно пытается приспособить Frostbite под разные жанры.

Для разработки первой игры лучше выбрать один из готовых движков — ничего стыдного в этом нет. Тем более что крупные разработчики тоже ими не брезгуют: весомая доля известных проектов выпущена на Unreal Engine или Unity.

Unity

Цена: бесплатный для разработчиков с прибылью меньше 100 000 $⁣ (7 325 290 Р) за последний год, далее нужно платить за одну из подписок от 399 $⁣ (29 227 Р) в год. Для консольной разработки нужно оформить подписку Unity Pro за 1800 $⁣ (131 855 Р) в год либо получить ключ бесплатно от платформодержателя
Сильные черты: универсальность, встроенный магазин ассетов, конструктор шейдеров
Недостатки: оптимизация игр часто хромает, не подходит для больших проектов
Игры на движке: Escape from Tarkov, Cuphead

Unity появился аж в 2005 году, и это до сих пор один из любимых движков в инди-среде наравне с более продвинутым Unreal Engine 4. Главное преимущество движка — большое сообщество и множество официальных и неофициальных «обучалок». Создатели программы даже запустили портал Unity Learn с курсами о разных аспектах работы с движком.

Unity практически не ограничивает пользователя: в движке можно работать с 2D и 3D, VR и любыми жанрами от «три в ряд» до шутеров от первого лица.

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

Новичкам особенно удобна система Shader Graph для создания сложных шейдеров — специальных эффектов отображения объектов.

Источник: unity.com

Unity подходит для мобильной разработки и инди. В нем можно быстро создавать прототипы, что особенно кстати для разработки гиперказуальных проектов — игр для смартфонов с очень простыми механиками и высокой степенью вовлечения, например Helix Jump или Flappy Bird.

К тому же на Unity несложно портировать проект, то есть оптимизировать его для работы на других платформах. Но с недавнего времени для консольной разработки придется оплачивать подписку Unity Pro за 1800 $⁣ (131 914 Р) в год.

Unity часто винят в плохой оптимизации и визуальной бедности: тот же Unreal Engine 4 часто используют 3D-художники для того, чтобы выставить свет и красиво настроить сцену. В Unity же нужно время, чтобы достичь такой картинки.

А еще обновления Unity нередко «ломают» проекты или отдельные его части вроде текстур.

Unreal Engine

Цена: бесплатный, при доходе от миллиона долларов за все время существования игры Epic Games забирает 5%
Сильные черты: графика, встроенное визуальное программирование, открытый исходный код
Недостатки: высокие требования к навыкам разработчика
Игры на движке: Fortnite, Star Wars: Jedi Fallen Order, Mortal Kombat 11

Источник: unrealengine. com

Unreal Engine и Unity — «большая двойка» игровых движков. Но в UE по умолчанию гораздо более продвинутая картинка, чем у конкурентов, и заточен он под 3D. А система визуального программирования Blueprint упрощает работу для новичков, которые не хотят писать код: благодаря ей в движке очень удобно собирать небольшие прототипы. К тому же в официальном магазине каждый месяц проводятся бесплатные раздачи ассетов для коммерческого использования.

Новая версия движка, Unreal Engine 5, — потенциальный прорыв для всей индустрии. Благодаря системе Nanite художникам больше не нужно беспокоиться об оптимизации ассетов под разные системы: движок сделает это самостоятельно. А технология Lumen автоматически обрабатывает источники света — раньше на подобные системы приходилось тратить немало ресурсов.

В последнее время Epic Games делает все, чтобы у пользователей Unreal Engine был доступ к самым продвинутым технологиям — взять хотя бы конструктор людей MetaHuman, который позволяет за пару секунд создать реалистичную модель человека.

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

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

Unreal Engine — хороший выбор для тех, кто хочется сразу погрузиться в профессиональный геймдев и в перспективе работать над высокобюджетными проектами. Разработка на нем требует большей технической подкованности, чем на других движках, так что он больше подойдет тем, кто уже немного знаком с особенностями создания игр. Например, для тех, кто уже работал в Unity, в документации UE есть отдельный гайд.

Цена: бесплатная версия не позволяет опубликовать проект, инди-лицензия стоит 259 Р в месяц, корпоративная — 1389 Р в месяц
Сильные черты: программирование необязательно, drag-and-drop-разработка
Недостатки: почти не работает с 3D, бедный встроенный магазин ассетов
Игры на движке: Katana Zero, Hyper Light Drifter

Источник: store. steampowered.com

GameMaker Studio — один из самых известных игровых движков наравне с Unity и Unreal Engine. На нем сделаны многие инди-хиты вроде Undertale, а еще у него очень низкий порог вхождения: для GameMaker необязательно умение программировать, и все взаимодействия можно настраивать буквально «перетягиванием».

Впрочем, писать код в нем тоже можно — создатели даже разработали специальный язык, GML (Game Maker Language). У него меньше возможностей, чем у того же C#, а некоторые его особенности не встречаются в других языках, зато он очень прост в освоении и подойдет как опытным программистам, так и новичкам.

GameMaker Studio не просто хорошо оптимизирован — в нем немало инструментов для работы над играми в любых жанрах. Так что это хороший выбор для тех, кто хочет погрузиться в геймдизайн и не тратить время на «математику» и поиск расширений.

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

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

Цена: бесплатный для коммерческого использования
Сильные черты: хорошая оптимизация и поддержка всех платформ
Недостатки: относительная неизвестность, отсутствие 3D
Игры на движке: Family Island, Marginalia Hero

Источник: steampowered.com

Defold — один из главных конкурентов Unity, но используют его намного реже. Он рассчитан на двухмерные игры, которые программируются на языке Lua и запускаются почти на всех платформах — от HTML5 (веб-страницы) до Nintendo Switch. Поэтому он быстро работает и компилирует маловесные билды, в отличие от того же Unity.

У Defold нет встроенного визуального программирования, но есть фанатский плагин, который его добавляет. Также в сети опубликовано много обучающего материала по нему, но меньше, чем у конкурентов.

Как и любой молодой движок, Defold постоянно развивается, так что все недостатки могут исправить в будущем. Сейчас же это необычная альтернатива Unity для тех, кто хочет попробовать себя в программировании, но не желает погружаться в трудности семейства C, общепринятого в «большой» индустрии.

Цена: бесплатный для коммерческого использования, можно поддержать разработчиков на «Патреоне»
Сильные черты: постоянное развитие, множество поддерживаемых языков программирования
Недостатки: пока с трудом работает с 3D и не поддерживает консоли
Игры на движке: Rogue State Revolution, Kingdoms of the Dump (в разработке)

Источник: github.com

Godot — это «выбор на перспективу», который примечателен постоянными обновлениями. Он максимально открыт — за движок не надо платить, а на GitHub лежит его исходный код, в котором может покопаться любой желающий. А еще в Godot большой выбор языков программирования соседствует с визуальным скриптованием: сегодня утилита поддерживает C, C# и собственный GDScript, который напоминает Python.

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

Главная проблема движка в его «перспективности»: Godot разрабатывают уже 14 лет, но в нем до сих пор не очень удобно работать в 3D, а сообщество намного меньше в сравнении с другими продуктами. Ну и разрабатывать консольные игры в нем сложно из-за того, что там нельзя издавать игры, сделанные на полностью открытом ПО без лицензии. К счастью, сооснователь компании-разработчика движка как раз открыл студию для портирования игр с Godot на консоли.

/list/honk-honk/

Вместо «Симс», «Героев» и «Казаков»: 15 видеоигр, которые заменят любимые игры детства

Godot вполне может оказаться очень востребованным на рынке через несколько лет, когда в нем появятся все те функции, которые давно есть у конкурентов. Тогда у Godot появятся все шансы стать главным «противником» Unity.

Цена: бесплатный для разработки веб-игр, 100 $⁣ (7329 Р) в год для ПК и 200 $⁣ (14 650 Р) для ПК, веба и телефонов
Сильные черты: очень простое визуальное программирование, drag-and-drop-разработка
Недостатки: не подходит для 3D и больших проектов
Игры на движке: Super Dangerous Dungeons

Источник: stencyl.com

Stencyl — это максимально простой 2D-конструктор. Его часто используют для того, чтобы обучать детей программированию. В первую очередь он предназначен для мобильных игр и небольших прототипов в духе флеш-игр. Из-за этого работать над большими проектами в нем довольно сложно, зато можно делать небольшие игры в духе популярной Super Dangerous Dungeons.

Также в движке есть Code Mode — возможность писать собственный код на языке Haxe, который синтаксисом напоминает C#.

Недостатки Stencyl похожи на проблемы других простых движков — здесь нет 3D и поддержки консолей. Скорее всего, все это и не появится, так что стоит сразу определить для себя, нужны ли вам эти особенности. Если нет, и вы хотите просто побыстрее выпустить маленькую игру и не возиться с кодом или просто набросать прототип перед переходом на «большой» движок, Stencyl — хороший выбор. Это что-то вроде аналога игровых конструкторов в духе Super Mario Maker, где вы можете сосредоточиться на геймдизайне и картинке, а не технической составляющей.

Цена: бесплатный с ограничениями, персональная версия стоит 525 Р в месяц или 4199 Р в год
Сильные черты: работает в браузере, не требует программирования
Недостатки: не подходит для 3D и консолей
Игры на движке: Hypnospace Outlaw, Mighty Goose

Источник: www.construct.net

Construct очень похож на Stencyl — это тоже простой, пусть и более известный конструктор двухмерных проектов, который используют в обучении детей. Как и Stencyl, Construct — это хороший инструмент прототипирования. Если функций местного визуального программирования не хватит, то прямо в блочную систему можно встроить код на JavaScript.

Даже проблемы у движков общие: Construct тоже не подходит для крупных проектов, не работает с 3D и на консолях. На нем можно собрать игру под Xbox, но производительность там оставляет желать лучшего.

Зато Construct основан на JavaScript, поэтому игры на нем могут запускаться на всех остальных платформах, а попробовать движок можно прямо в браузере — не надо скачивать никаких дистрибутивов. Причем всего за пару минут там можно создать первый прототип простым перетаскиванием блоков и выбором действий.

Какие курсы по геймдизайну стоят своих денег?

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

Какой игровой движок выбрать

ДвижокЦенаПлюсыМинусы
UnityБесплатно при малой выручке, 1800 $⁣ (131 855 Р) в год для консольной разработкиУниверсальностьОптимизация
Unreal EngineБесплатно при малой выручкеКрасивая картинка, визуальное программированиеСложнее остальных, нет 2D
GameMaker StudioБесплатно без возможности публикации или от 259 Р в месяц«Перетягивание» вместо программированияНет 3D. Бедный магазин ассетов
DefoldБесплатноСкорость, простое программированиеНебольшое сообщество по сравнению с конкурентами
GodotБесплатноПерспективностьНе хватает важных функций из других движков
StencylДо 200 $⁣ (14 650 Р) в годПростой конструктор под мобильные игрыДля большого и сложного проекта лучше выбрать что-то другое
ConstructБесплатно с ограничениями, 525 Р в месяц или 4199 Р в годБольшое сообщество, простой конструкторТе же, что и у Stencyl

Цена

Бесплатно при малой выручке, 1800 $⁣ (131 855 Р) в год для консольной разработки

Плюсы

Универсальность

Минусы

Оптимизация

Unreal Engine

Цена

Бесплатно при малой выручке

Плюсы

Красивая картинка, визуальное программирование

Минусы

Сложнее остальных, нет 2D

GameMaker Studio

Цена

Бесплатно без возможности публикации или от 259 Р в месяц

Плюсы

«Перетягивание» вместо программирования

Минусы

Нет 3D. Бедный магазин ассетов

Defold

Цена

Бесплатно

Плюсы

Скорость, простое программирование

Минусы

Небольшое сообщество по сравнению с конкурентами

Цена

Бесплатно

Плюсы

Перспективность

Минусы

Не хватает важных функций из других движков

Stencyl

Цена

До 200 $⁣ (14 650 Р) в год

Плюсы

Простой конструктор под мобильные игры

Минусы

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

Construct

Цена

Бесплатно с ограничениями, 525 Р в месяц или 4199 Р в год

Плюсы

Большое сообщество, простой конструктор

Минусы

Те же, что и у Stencyl

лучших игровых движков на 2023 год — какой выбрать? – GameDev Academy

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

  • Какую игру вы пытаетесь сделать?
  • Ваша игра 2D или 3D?
  • Насколько вы опытны?
  • Насколько активно сообщество движка или фреймворка?
  • Какие виды ресурсов доступны для двигателя?

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

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

Перед тем, как приступить к работе, мы рекомендуем прочитать наши статьи «Как кодировать игру» и «Как создать игру», если это ваше первое знакомство с разработкой игр, так как они помогут вам сделать первые шаги, прежде чем сразу перейти к выбору движка. Вам также может понравиться наша статья «Лучшие языки программирования для изучения кода», чтобы сузить круг ваших языковых предпочтений!

Содержание

Что такое игровой движок?

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

Игровые движки

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

Например, как в былые времена можно было вывести на экран такую ​​сложную вещь, как 3D-модель? Не вдаваясь в технические подробности, скажем, что даже 3D-модели — это просто набор крошечных квадратов с назначенными значениями цвета (то есть пикселями). По сути, нам нужно сообщить компьютеру, как взять то, что мы видим в 3D-модели, преобразовать ее в 2D-изображение, а затем назначить все эти маленькие значения цвета на нашем экране.

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

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

  • Рендеринг графики (как описано выше)
  • Расчет физики
  • Обработка обнаружения столкновений
  • Воспроизведение анимации и звуков
  • Компиляция кода
  • … и многое другое!

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

Игровые библиотеки и фреймворки

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

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

Так какое это имеет значение? Ну, есть некоторые плюсы и минусы между ними.

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

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

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

Точно так же большинство игровых библиотек и фреймворков не так мощны, как игры, созданные на движке. Это не значит, что они не могут доставлять массу удовольствия, но не ожидайте, что вы получите оценку AAA  9.0069 Клон Elden Ring будет сделан только с каркасом.

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

Unity 

Игровой движок Unity, разрабатываемый с 2005 года, стал основным продуктом индустрии инди-игр. С постоянными обновлениями и новыми важными функциями, такими как Unity Reflect, которые добавляются каждый год, поддержка движка невероятна. Движок не только хорошо подходит как для 2D-, так и для 3D-игр любого типа, но также является популярным выбором для создания игр виртуальной реальности и разработки дополненной реальности благодаря тому, что многие компании и разработчики создают удобные SDK для движка.

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

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

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

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

  • Бесплатно для начинающих, зарабатывающих менее 100 тыс. Долл. США
  • Отлично для 2D и 3D Games
  • Поддержка мобильной игры
  • VR и AR SDK.

    Слабые стороны:

    • Дорогое количество лицензий для профессионалов
    • более высокие технологии Требуются лучшие компьютеры
    • Многие изменения пользовательского интерфейса

    Примеры игр, изготовленных с Unity

    • Osiris: New Dawn
    • Hollow Knight
    • Rick и Sporty: New Dawn
    • Hollow Knight
    • Rick и Spearty: New Dawn
    • Hollow Knight
    • Rick и Spearty: New Dawn
    • . Virtual Rick-ality
    • Genshin Impact

    Является ли Unity для вас лучшим движком для видеоигр? Ознакомьтесь с некоторыми курсами Unity, созданными сертифицированными разработчиками Unity, чтобы приступить к работе! Вы также можете ознакомиться с бесплатными учебными пособиями по Unity в этом блоге. Мы также рекомендуем вам ознакомиться с нашей статьей Unity vs. Unreal Engine, если ваш выбор сузился между этими движками!

    Unreal Engine

    Благодаря мощным графическим возможностям с освещением, шейдерами и многим другим, Unreal Engine является движущей силой многих самых популярных современных игр класса «ААА». Учитывая его безудержное использование в этом секторе, движок был специально разработан для решения множества сложных задач более эффективно, чем другие движки. Как и другие в этом списке, движок также имеет открытый исходный код, что означает, что сообщество также постоянно совершенствует движок.

    Наряду с визуальной схемой, благодаря которой даже непрограммисты могут разрабатывать свои игры, Unreal действительно является мощным двигателем, который способен практически на все, включая виртуальную реальность. Мы также упоминали, что, как и в Unity, существует Marketplace, где вы можете получить бесплатные активы?

    Однако многие разработчики игр сообщают, что Unreal Engine лучше подходит для более крупных проектов и проектов, над которыми вы собираетесь работать в команде. Кроме того, поскольку программа тяжела с точки зрения графики, многие люди сочтут, что для нее требуется более мощный компьютер по сравнению с другими движками, такими как Unity. Помимо этого, также следует отметить, что, хотя Unreal Engine может создавать 2D-игры в дополнение к 3D-играм, этот движок не обязательно лучше всего подходит для этой задачи.

    На видео ниже представлены лишь некоторые из удивительных вещей, созданных студентами со всего мира с помощью Unreal Engine.

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

    • Отлично для высококачественной графики
    • больше, чем другие двигатели
    • Лучший выбор для VR
    • Визуальный блюдринг для непрограммных
    • Siaitable Markets со свободными активами

    9008 55555555505.

    • Не лучший вариант для простых или сольных проектов
    • Высококачественная графика требует более мощных компьютеров
    • лучше для 3D, чем 2D игр

    Примеры игр, сделанных с нереальным двигателем

    • Soulcalibur VI
    • Gears 5
    • Quest Xi

    It Unclee Engine 5

  • Quest XI

It Unclever Engine. звучит как лучший движок для видеоигр, ознакомьтесь с этими курсами, чтобы начать работу над своими проектами по разработке игр Unreal! Кроме того, вы можете ознакомиться с некоторыми из наших бесплатных руководств или даже просмотреть нашу статью Unity vs. Unreal Engine (если вы еще этого не сделали), чтобы получить больше информации.

Godot

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

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

Что касается слабостей, Godot использует свой собственный язык для написания сценариев, который называется GDScript. Хотя язык работает фантастически и напоминает Python (любимый язык многих разработчиков), поскольку он был специально разработан для Godot, опытные разработчики игр могут счесть утомительной адаптацию к еще одному языку. Кроме того, поскольку Godot не так известен, как некоторые другие движки, доступных ресурсов не так много, как у основных движков, таких как Unity или Unreal.

Ищете примеры? Ниже представлена ​​демонстрация некоторых игр, созданных для мобильных устройств с использованием игрового движка Godot!

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

  • Работы для 2D и 3D Games
  • Полностью бесплатно и с открытым источником-даже коммерчески
  • Страстные сообщества
  • Уникальная архитектура для разработки игры

Слабые. может не понравиться GDScript

  • Не так много ресурсов, как у других движков
  • Примеры игр, созданных с помощью Godot

    • ProtoCorgi
    • Deep Sixed
    • Gun-Toting Cats

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

    Phaser

    Phaser начал свою жизнь примерно в 2013 году, хотя самая последняя версия, Phaser 3, существует только с 2018 года. Тем не менее, это не помешало платформе быть чрезвычайно популярной, особенно для тех, кто хочет для создания мобильных или браузерных игр.

    Поскольку технология, лежащая в основе Phaser, в значительной степени основана на тех же технологиях, которые используются для веб-разработки, это также относительно стабильная структура, даже когда выходят разные версии. Помимо этого, Phaser поставляется с физикой и другими дополнениями, которые, как ожидается, будет иметь любой движок, а это означает, что вы можете делать с ним любое количество игр, включая MMORPG, с правильными дополнениями!

    В целом, Phaser — это 2D-фреймворк, поэтому он может не подойти, если вы пытаетесь создать 3D-игру. Кроме того, хотя фреймворк является кроссплатформенным, так как он в основном ориентирован на браузеры, он имеет некоторые ограничения, которых нет у более мощных автономных движков.

    Ниже приведены несколько примеров различных игр, сделанных с помощью Phaser, ссылки на которые вы можете найти в приведенных ниже примерах!

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

    • Отлично подходит для браузеров и мобильных игр
    • .

    Примеры игр, созданных с помощью Phaser

    • Magikmon
    • Gems ‘n Ropes
    • Pickem’s Tiny Adventure

    Если вы готовы расширить свои навыки разработки HTML5-игр с помощью Phaser, ознакомьтесь с этими курсами! Кроме того, вам также могут понравиться совершенно бесплатные учебные пособия, доступные здесь и здесь.

    GameMaker Studio 2

    Этот популярный движок для видеоигр, созданный в 2017 году, представляет собой новейшую версию GameMaker Studio, которая существует с 1999 года и имеет множество итераций и имен. GameMaker широко поддерживается на многих платформах, включая Nintendo Switch. Это также очень удобный выбор для тех, у кого нет опыта программирования, поскольку он в основном использует язык визуальных сценариев с перетаскиванием, созданный им самим, чтобы позволить пользователям любого уровня навыков создавать игры своей мечты.

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

    В отличие от многих других движков и фреймворков в этом списке, GameMaker Studio 2 является проприетарным, поэтому он может быть не лучшим выбором для тех, кто ищет что-то с ограниченным бюджетом. Кроме того, как и Phaser, этот движок предназначен специально для 2D-игр. Хотя у него есть ограниченные 3D-возможности, он не может сравниться с тем, что могут сделать Unity, Unreal или Godot.

    Посмотрите представленную ниже презентацию игр, созданных с помощью GameMaker Studio!

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

    • Поддержаны на тоннах платформ
    • Легкие программы перетаскивания
    • Чрезвычайно благоприятные для начинающих

    Слабые стороны:

    • Ориентация на 27-й игры
    • Стоимость: День.

    Примеры игр, созданных с помощью GameMaker Studio 2

    • Hyper Light Drifter
    • UNDERTALE
    • Forager

    Почетные упоминания

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

    • RPG Maker
    • Ren’Py
    • PixiJS
    • Three. js
    • GDevelop
    • Open 3D Engine

    Заключение

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

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

    Что бы вы ни решили, нам не терпится увидеть ваши игры!

    В ПРОДАЖЕ – ПОСЛЕДНИЕ ДНИ

    Строительные игры

    Стройте свои собственные игры

    ✓ 250+ Курсов кодирования

    ✓ Интерактивные уроки

    ✓ Пути управляемых. NOW

    Related Posts

    5 лучших игровых движков для начинающих в разработке видеоигр

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

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

    По данным Unity Technologies, 71% всех мобильных игр используют его движок, что обеспечивает в общей сложности пять миллиардов загрузок приложений, созданных с помощью Unity, в месяц. Этот игровой движок идеально подходит для новичков, поскольку в нем есть центр учебных ресурсов, оснащенный учебными пособиями, проектами, курсами и обучающими семинарами в режиме реального времени, которые помогут вам быстро перейти от новичка к профессионалу.

    Unity обеспечивает разработку 3D-игр в режиме реального времени. Доступно несколько вариантов подписки, но Unity Personal — единственный бесплатный вариант. Этот тип подписки предоставляет доступ ко всем функциям движка, а также к облачным сервисам. Главный недостаток Unity Personal заключается в том, что вы не можете удалить заставку Unity из своей игры, пока не перейдете на одну из платных версий.

    Связано: Языки разработки игр Unity: какие вы должны выучить?

    Начиная с первого квартала 2022 года, Unity поддерживает установку для Windows и macOS с предварительной поддержкой для Linux. Однако для установки и использования Unity в любой из этих операционных систем необходимо выполнить ряд требований.

    Например, для запуска Unity в Windows вам потребуется операционная система версии 7 (SP1+), 10 или 11. Для macOS операционная система должна быть High Sierra 10.13+; для Linux операционная система должна быть Ubuntu 20.04, Ubuntu 18.04 или CentOS 7. Нажмите здесь, чтобы получить полные системные требования для последней стабильной версии Unity (версия 2021.2).

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

    • Загрузка Unity Hub.
    • Выбор версии Unity.
    • Запускаем свой проект.

    Unreal Engine — это движок разработки, который гордится тем, что является одним из самых продвинутых инструментов для создания 3D в реальном времени. Тем не менее, он отлично подходит для начинающих, и вы даже найдете раздел учебных ресурсов на его веб-сайте.

    Связанный: Как Unreal Engine 5 улучшит видеоигры

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

    • Лицензия Creator
    • Лицензия на публикацию
    • Индивидуальная лицензия

    Лицензия создателя полностью бесплатна и не требует отчислений. Лицензия на публикацию бесплатна, но требует 5% отчислений, когда ваша игра «становится успешной». Индивидуальная лицензия — это возможность работать с Unreal Engine для создания лицензионного соглашения специально для вас.

    Каждое лицензионное соглашение предоставляет неограниченный доступ ко всем функциям Unreal Engine. Unreal предоставляет полный доступ к своему исходному коду C++, предоставляя разработчикам игр беспрепятственный доступ к настройке или даже расширению кода Unreal Engine.

    Он имеет инструмент Unreal Editor, который представляет собой среду разработки, позволяющую всем членам команды разработчиков игры сотрудничать. Это делается с помощью многопользовательского редактирования. Как и все лучшие игровые движки, Unreal Engine предоставляет некоторые высококачественные функции построения мира, анимации, рендеринга и игрового процесса.

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

    Godot имеет сотни узлов, разработанных для удовлетворения ваших потребностей в разработке игр. Однако, если доступные не в достаточной степени соответствуют вашим потребностям, у вас есть возможность создать собственные узлы. Godot хорошо работает на нескольких платформах, таких как Windows, macOS и Linux. Движок также допускает развертывание на нескольких платформах.

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

    • GDScript (который очень похож на Python)
    • C#
    • C++
    • Visual script
    • Rust
    • Nim
    • D

    Defold — это не только полностью бесплатный игровой движок; это также с открытым исходным кодом. Таким образом, разработчики игр имеют возможность настраивать код этого игрового движка по своему усмотрению и даже использовать разнообразный набор функций, созданных другими членами сообщества.

    Фонд Defold обещает всегда держать движок бесплатным и полагается на пожертвования членов сообщества. Этот движок создает 2D- и 3D-игры с особым акцентом на производительность. Он имеет визуальный редактор и редактор кода, который позволяет разработчикам игр писать свою игровую логику на языке сценариев Lua.

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

    Solar2D (ранее известный как Corona) — игровой движок с открытым исходным кодом. Как следует из названия, Solar2D создает потрясающие 2D-игры с использованием языка сценариев Lua. Этот игровой движок полностью бесплатен и имеет большой ресурс руководств и учебных пособий, которые идеально подходят для начинающих.

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

    • Android
    • IOS
    • Windows
    • macOS
    • Linux

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

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

    Leave a Comment