Введение
Разработчики игр отлично знают о выдающихся возможностях Android. Из 100 топовых приложений в магазине Google Play около половины – это игры (они же составляют более 90% из 100 самых прибыльных приложений). Для внедрения на этот рынок скорость разработки имеет ключевое значение. Некоторые начинающие и независимые разработчики предпочитают создавать собственный код с нуля, и при этом хотят добиться высокого качества, не затрачивая годы на разработку. Другие же выбирают уже существующие игровые движки. При его выборе стоит учитывать несколько факторов:
- Цена: сколько средств вы готовы потратить?
- Количество измерений пространства игры: 2D или 3D?
- Языки: какие языки программирования известны вашим разработчикам?
- Художественная доработка: Как хорошо движок интегрируется с инструментами по созданию контента?
- Полный доступ к исходникам: Необходим ли вам доступ для глубоких изменений параметров движка?
Существует множество Android-движков, но по большей части они различаются именно по этим критериям. В связи с растущим проникновением на рынок высокопроизводительных Android-устройств с процессорами Intel®, как никогда важно выбрать движок, оптимизированный под Android-устройства на базе x86. Эта статья поможет выбрать подходящий движок для наиболее успешной работы игры на Android-устройствах ваших потребителей.
Конкуренты на выбор
Рассмотрим трех лучших претендентов в свете обозначенных критериев.
Unreal* Engineот Epic Games – давнишний авторитетный движок, который может похвастаться большим количеством успешных проектов на PC, консолях и мобильных платформах с момента своего первого релиза в 1998 году. Unreal Engine оснащен следующими инструментами:
- Unreal Editor (редактор 3D-контента)
- Blueprint visual scripting (drag-and-drop редактирование)
- Анимационные инструменты
- Редакторы и инструменты для искусственного интеллекта, освещения и других эффектов
Project Anarchy* - недавняя разработка Havok. Он вобрал в себя все ключевые игровые технологии компании, став полноценным движком для мобильной разработки. В Project Anarchy вы найдете следующие компоненты:
- Havok Vision Editor (редактор 3D-контента)
- Движок Havok Vision с Havok Physics
- Havok Animation Studio (drag-and-drop редактирование)
- Autodesk Scaleform* (UI-инструмент)
- Редакторы и инструменты для искусственного интеллекта, освещения и других эффектов
Marmalade* - это кроссплатформенный SDK, созданный для быстрой разработки мобильных игр. Более молодая технология, чем обе предыдущие, Marmalade была выпущена в качестве игрового движка в 2011 году. Посмотрим, что полезного есть у Marmalade:
- Marmalade C++ SDK
- Marmalade Quick (Lua)
- Marmalade Juice (Obj-C)
- Web Marmalade (HTML5/JavaScript*)
Вопрос цены
Многие движки предлагают целый ряд ценовых опций, в зависимости от требуемого функционала. Факторами, зачастую определяющими цену, являются тип платформы и число сотрудников вашей команды. Unreal Engine просит $19 за ежемесячную подписку, а также 5% от общего дохода от всех программ, основанных на их технологии. Также доступны индивидуальные ценовые структуры, дополнительная поддержка и опции для разработки под консоли.
Project Anarchy является (и будет являться) бесплатным инструментом для разработки мобильных игр компаниями любого размера. Опции покупки включают средства для разработки под PC или консоли, а также для более глубокого доступа и прочие инструменты. Для базовой разработки игр Project Anarchy является наиболее оптимальным вариантом в ценовом отношении. Единственное, чего он требует - это совместного маркетинга в рамках ваших игр.
На момент написания этой статьи Marmalade является бесплатным сроком на 1 год для команд численностью до 3-х разработчиков и доходом менее $500,000. Это можно считать временной акцией, учитывая, что обычная лицензия движка стоит $149 + налоги. Более высокие ценовые варианты предусматривают разработку на большем количестве платформ и безвозмездную прямую поддержку разработчиков.
Количество измерений пространства игры
Привлекательность 3D-игр неоспорима, однако 2D лучше подходит для многих простых игр и требует гораздо меньших затрат времени и ресурсов. Диапазон характеристик вашей игры напрямую влияет на выбор движка.
Да, у Marmalade есть поддержка 3D-графики, но стоит учесть, что оба других Unreal Engine и Project Anarchy были созданы целенаправленно для 3D. Эти движки не раз совершенствовались, чтобы обеспечить наилучший опыт 3D-разработки.
Точно также все три движка могут быть использованы для 2D-игр, но для Unreal Engine и Project Anarchy это может стать роковым излишеством. На данный момент Project Anarchy имеет набор шаблонных 2D-инструментов альфа-уровня, и оба Unreal Engine и Marmalade имеют шаблонный 2D-код. Одна из подгрупп инструментов Marmalade для быстрой разработки, Marmalade Quick, специализируется исключительно на 2D.
Выходит, все три движка могут быть использованы для 3D- и 2D-игр, при этом Marmalade больше подходит для 2D, а Project Anarchy и Unreal Engine – для 3D.
Языки
Если разработчики в вашей команде знакомы (а лучше, если имели опыт) с языком программирования, используемом в движке, производительность их работы будет существенно выше.
До выпуска Unreal Engine 4 программирование геймплея в Unreal Engine осуществлялось через UnrealScript, собственный скриптовый язык Epic с похожим на «С» синтаксисом. С выходом Unreal Engine 4 C++ стал основным языком разработки.
Project Anarchy базируется на C++ с Lua для скриптинга. Многие движки используют легковесный скриптовый язык, вроде Lua, чтобы минимизировать риски, связанные с низкоуровневыми задачами, к примеру, с управлением памятью.
В Marmalade есть множество наборов инструментов в зависимости от выбранного языка. Базовый SDK использует C++, Marmalade Juice использует Objective-C*, Marmalade Quick – Lua, а Web Marmalade рассчитан на разработку с HTML5/JavaScript.
Благодаря такому многообразию языковых опций, Marmalade выделяется на фоне других. Ваши разработчики могут использовать несколько форм Marmalade с тем языком, который они предпочитают. Эти возможности напрямую исходят из их главного девиза «напиши единожды, используй везде».
Художественная доработка
Давно прошли те дни, когда команда разработчиков состояла только из программистов. В наши дни игровые студии, как большие, так и маленькие, разбиты на группы программистов и художников. Движки, включающие тесную интеграцию с инструментами по созданию контента, имеют весомое конкурентное преимущество.
И Unreal Engine и Project Anarchy имеют 3D-редакторы для макетов, дизайна уровней, управления цифровыми объектами и прочее. Эти инструменты особенно пригодятся 3D-художникам, поскольку имеют интерфейс, схожий с большинством художественных 3D-инструментов (которые также могут быть использованы в совокупности с редактором по созданию цифровых объектов).
Unreal* Editor (слева) и Havok Vision Editor (справа)
У Unreal Engine есть опция «blueprint scripting», где такие компоненты скрипта, как, к примеру, действия, визуализированы в качестве компонентов drag-and-drop.
Blueprint scripting в Unreal* Editor
У Project Anarchy есть похожий инструмент для дизайна анимации.
Инструмент для дизайна анимации ProjectAnarchy*
Пусть Marmalade и располагает крупным сообществом разработчиков open-source плагинов и инструментов для помощи в разработке (многие из которых доступны на http://github.com/marmalade), официальные сборки Marmalade не включают ничего для тех, кто не занимается кодингом.
Полный доступ к исходникам
Говоря языком возможностей, следующий большой шаг в отношении вашего движка – это способность его модифицировать. С полным доступом к исходному коду вы можете изменить в нем абсолютно всё или самостоятельно добавить в него поддержку других целевых платформ.
В этом ключе Unreal Engine – самый великодушный: оплатив подписку на Unreal Engine 4,вы получаете полный доступ ко всему.
Project Anarchy предлагает исходники для некоторых компонентов, а полный исходный код доступен только на максимальной отметке вложений. В бесплатной версии модификации ограничены.
Несмотря на наличие большой подборки open-source плагинов, Marmalade представляет собой закрытый исходный код. Наивысший уровень владения предоставляет лишь адресную поддержку, но при этом нет никакого дополнительного доступа к исходникам.
Большинство разработчиков обходят этот вопрос стороной, однако чем сложнее конструкция движка вашей игры, тем больше контроля над каждой отдельной деталью вам может понадобиться.
Сравнение характеристик
| Marmalade | Project Anarchy | Unreal Engine | |
---|---|---|---|---|
Наименьшая цена | Бесплатное промо/$149+VAT | Бесплатно | $19/месяц + 5% | |
Размерность | 3D | Выполнимо | Встроено | Встроено |
2D | Очень просто | В стадии альфы | Выполнимо | |
Языки | C++, Obj-C, Lua, HTML5 | C++, Lua | C++ | |
Возможности для не-программиста | Третьих фирм | 3D редактор, инструменты анимации | 3D редактор, Blueprint - скрипты | |
Исходники | Нет | Некоторые высокоуровневые | Да |
Выводы
Каждый из движков, представленных в сравнении, имеет свои сильные стороны. Если цена становится камнем преткновения, Project Anarchy станет оптимальным выбором. Если у вас есть навыки и желание глубоко модифицировать и расширить возможности движка, Unreal Engine поможет сделать это с наименьшими затратами. Для быстрой разработки 2D-игры Marmalade – вне конкуренции. Существует масса других движков, бесплатных и с открытым исходным кодом, которые могут соответствовать по характеристикам изученным движкам. Однако возможности этой троицы сделать вашу игру превосходной для широкого перечня Android-устройств выводят их на топовую позицию среди остальных.
Ссылки
- Unreal Engine https://www.unrealengine.com/
- Project Anarchy http://www.projectanarchy.com/
- Marmalade https://www.madewithmarmalade.com/
- Статистика Google Play Store http://www.appannie.com/apps/google-play/top/
Об авторе
Брэд Хилл – инженер по программному обеспечению в Intel в отделе по взаимодействию с разработчиками. Он исследует новые технологии инженерных решений Intel и делится лучшими методами с разработчиками через the Intel® Developer Zone и в рамках проходящих конференций. Также Брэд Хилл является инженерным директором Student Hackathons, организующего хакатоны Code for Good в колледжах и университетах США.