/ it Новости / Сравнение движков: Unreal Engine 4 против Unity 5

Сравнение движков: Unreal Engine 4 против Unity 5

Сравнение движков: Unreal Engine 4 против Unity 5

3 269 · 22 августа 2018 в 18:01 ·
Выбрать движок дело не простое, а особенно когда оба очень хороши. В статье мы проведем сравнение двух программ и выясним какой движок использовать именно Вам!

Первоочередная сфера сравнения - UI-редакторы для разработки уровней. 


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


Для влияния на объекты, расположенные внутри редактора, используем встроенные инструменты: масштаб, поворот, отражение, изменение позиции и т.д. По функциям редактора колоссальных отличий не наблюдаем. Все свойства объектов, разработанных с помощью Unity, отражаются в «Инспекторе», а в случае с UE4 – всё размещено в «Деталях».


Обеим движкам характерно наличие static meshes, которые можем передвигать, вертеть, масштабировать и т. д. Скелетные меши также присущи обоим вариантам – геометрические сущности, связывающиеся со скелетными костями, их задача сводится к анимированию персонажей. Разрабатывать skeletal meshes рекомендуем в Maya или Blender.



Движки поддерживают импорт скелетных мешей с анимацией. В случае с Unity действия соединяются с самим объектом, становясь клипами анимации. На движке Unreal 4 импорт представлен последовательностями анимации. При использовании Юнити для управления анимацией используются специальные контроллеры, по аналогичному принципу в UE4 реализуется Blueprints.


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


Редактирование анимации

Важным отличием UE4 является возможность редактирования анимации, чего в аналоге не представлено. На Unity особенно сложно реализовать реалистичные движения гуманоидов. В общем движки не являются инструментами профессионального анимирования, для этих целей стоит задействовать приложения, вроде Maya. С программы просто импортируем файлы с расширением FBX. В файле представлен объект и весь прикреплённый материал, их легко добавить в рабочий проект. Недостатком подхода является необходимость вручную задавать шейдер и некоторые другие свойства.


Для выполнения поставленной задачи в Unity следует придать заготовке шейдер и дополнить его текстурами: картой неровностей, диффузией, нормалей. Создавать шейдеры можно самостоятельно или воспользоваться сторонними приспособлениями: ASE и Shader Forge. Непосредственно в UE4 есть встроенный и мощный редактор, который в основе использует ноды.


Написание кода

Для написания кода в UE4 используется C++, хотя многие его недолюбливают по причине длительного процесса компиляции и сложности написания. Движок обладает доступным для понимания API и вполне сносной длительностью компиляции. Движок обладает проработанной и крайне мощной системой для визуализации скриптов на Blueprints, обеспечивающей результаты, практически не отличающиеся от C++.



В Unity 5 одновременно внедрены C# и UnityScripts. По API и концепции движок подобен аналогу. Благодаря использованию в роли управляющего языка C#, нет необходимости делать указатели, а компиляция выполняется значительно быстрее. Система визуализации скрипта в Unity напрочь отсутствует, для воссоздания чего-то подобного UE4 разработчику приходится платить за дополнения со стороны, к примеру, Playmaker.


Разработчики двумерной графики по достоинству оценят Unity благодаря прекрасным инструментам, здесь есть различные спрайты: editor, creator, packer. В UE4 дополнительно встроены спрайты типа Paper 2D, но в предыдущем движке система мощнее и реализован отдельный физический движок.



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


В UE4 есть Sequencer для разработки синемантиков. Является мощным инструментом, взаимодействующим с временной шкалой, в которую можем добавлять объекты. В Unity 5.6 всё ещё не создана система синематиков, но редактор-timeline внесли в Unity 2017.



Отметим, что рассматриваемые движки весьма мощные, но по гибкости UE4 несколько выигрывает у конкурента. Зато при необходимости разработки 2D-игр предпочтение стоит отдать Unity 5. Дорогостоящий проект в 3D с необходимостью реализации открытого мира лучше делать на UE4.

Перевод статьи с поратала 80.lv


Больше интересных новостей