Сравнение unity и unreal engine

Сравнение unity и unreal engine

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

Первоочередная сфера сравнения — 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

Всем доброго оборота земли вокруг своей оси в вашей широте и долготе дней. Сей опус будет полезен “Сомневающимся” и поможет пролить немного излучения звезды по имени Солнце на коварную маркетинговую кампанию самых популярных игровых движков. Я занимаюсь разработкой игр уже больше 10 лет, поэтому нескромно могу выразить свое ЛИЧНОЕ мнение о всех достоинствах и недостатках. Добро пожаловать ниже…

Итак, начнем немного с истории. Unreal Engine — движок созданный профессиональной командой разработчиков игр серии Unreal Tournament в 1998 году для создания одноименной игры, а Unity3d в 2005 году профессиональной командой разработчиков, но отнюдь не игр. Целью Unity было создание движка нового поколения, который существенно должен был понизить порог вхождения для новичков в разработке игр и максимально упростить портирование готовых игр на различные платформы. Во главе угла стояла простота использования. Юнити стал по настоящему первым “Народным движком”. Я могу вспомнить ещё несколько популярных на то время, но они все погибли. В то дикое время под каждую игру писали свой собственный велосипед, потому что до Юнити получить готовый движок без огромного количества денег(десятки и даже сотни тысяч долларов) на лицензирование просто не было возможности.

Unity сразу обрел огромную базу фанатов и разработчиков за счет своей простоты и удобства, а Unreal в это время мог оперировать только обученными профессионалами с большим опытом. Порог вхождения в Unreal неприлично высок, чтобы начать программировать игры на нём, вам нужно знать С++ и тонну мелких деталей работы движка, а это не один год обучения на программиста и изучения самого движка. В юнити любой человек не обделенный логикой и азами Pascal сможет написать простенькую игру за неделю. В Unreal на подобное уйдет в 10 раз больше времени и это неоспоримый Факт.

Epic Games (разработчики Unreal) знают свои слабые и сильные стороны, поэтому выпуск Blue Print не заставил себя долго ждать и действительно понизил порог вхождения в UE, но всего лишь для “прототипирования”. Серьезные проекты по прежнему “крайне рекомендуется” писать на С++ со всеми последствиями. На рынке сейчас “на глаз” разработчиков на Unreal 1 к 10 или даже к 20 по сравнению с Unity.

Отсюда следует основной минус UE — Разработка под него на порядок Дороже и Сложнее. Специалистов мало, по факту хороших спецов учат только “уже состоявшиеся спецы” из самой Epic или других крупных контор, которые годами разрабатывают игры на Unreal. Если вы маленькая команда или Indie разработчик, то ваш предел в играх на Unreal это уже готовые мультиплеер FPS стрелялки, по тому что по факту UE был и остается движком для игры Unreal Tournament. Вся логика движка заточена под шутеры от первого/третьего лица по сети. На этом историю закончим, потому что писать об этом я могу часами, далее рассмотрим конкретные примеры работы в каждом движке.

Работа с редактором

Unreal Editor — это просто издевательство над художниками и всеми кто так или иначе связан с созданием арта, звука, анимаций, текстур и прочего. Его основной и гигантский минус — не связанность с файловой системой вашего PC, то есть нельзя просто перетащить файл из папки в папку или даже “О Б-ЖЕ!!” в само окно редактора. Теперь любой файл 3д модели или текстуры вам придется Импортировать с помощью КНОПКИ и никак иначе. Если вам надо немного поменять модель, то вам придется Удалять Руками Импортнутые объекты и Заново их Импортировать столько раз, сколько вы захотите улучшать ваш файл. Реимпорт там конечно “существует”, но он работает настолько нестабильно, что у меня теряется дар речи. Например Vertex Color никогда не реимпортится заново, все созданные клипы анимаций затираются при реимпорте и т д. Если вы не отстрадали своё в этом редакторе огромное количество времени, то готовьтесь к тому что 80% времени вы будете заниматься импортом и реимпортом, а если объектов в вашей локации 100-200-300….

Читайте также:  Сравнение таблиц эксель через впр

Просто знайте, нельзя нажать кнопку экспорт в вашем любимом 3д пакете и получить всё в том же виде в UE, вам придется каждый объект заботливо расставлять руками, про материалы и прочее естественно забудьте тоже, потому что UE кроме Diffuse+spec+Ao+metallic импортировать ничего не будет, не говоря уже про второй UV канал на назначенной текстуре или тайлинг и прочие подробности. Я страдал достаточно для того чтобы написать свой собственный экспортер из 3ds max Vray в Unreal и потратил на это несколько месяцев лишь бы не мучаться с редактором Unreal. Это позволило переводить сцены с 1000 объектов в Unreal за каких то 30 минут компьютерного времени, но даже это не помогло мне 🙂

Если вы хотите делать мобильные игры, то приготовьтесь к Аду, каждый ребут редактора отключает Mobile Preview режим и вам придется вручную каждый раз включать его заново и ждать пока перекомпилируется весь рендер движок под мобильные устройства, а это занимает несколько минут. Умножьте это на поистине Эпичную стабильность редактора, который может крашится каждые 10 минут, запускается заново несколько минут на топовом железе…

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

После этого Unity Editor покажется вам МАННОЙ НЕБЕСНОЙ. Это абсолютно понятный, простой в использовании механизм, полностью контролируемый и безусловно его киллер фичей является то, что писать под него плагины можно на самом Unity, а вот написать простейший скрипт в UE редакторе по расстановке объектов — только на С++ используя исходники движка. Отсюда и нереальное количество плагинов для юнити и единицы полезных для UE.

Но при этом UE до сих пор является лидером рынка по Графену, потому что им заведуют всё теже Профессиональные Разработчики Игр, которые двигают индустрию вперед. В Epic Games проблема решается просто — Нужен качественный персонаж? Берем специально обученного человека и даем ему месяц на задрачивание этого персонажа и так с каждым более менее сложным игровым объектом. Студии по разработки на УЕ насчитывает ГИГАНТСКОЕ количество людей, которые работают в редакторе со своими отдельными объектами.

Epic очень богатая контора и она может себе позволить многое: бесплатный движок (в первую очередь для того чтобы хоть как то выращивать новых специалистов для их внутренних потребностей в разработке игр), провальные игры и щедрость с ними связанную (PARAGON) в отличии от Unity, которая перебивается продажами самого движка и подписок, если бы денег было больше, то отставание в графическом плане не было бы настолько заметным, но даже сейчас 2018 версия уже не слишком сильно уступает UE.

Читайте также:  Беруши с системой акустического ослабления шумов quieton

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

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

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

решила я начать с Unity, нашла книжку на эту тему ("Unity а действии" — Джозеф Хокинг, всем советую, кто хочет начать что то мутить с юнити), её почти полностью освоила, чё то сделала там для себя, а потом всё это ушло на третий план ибо навалилась учёба, поступление и прочее

Но вот сейчас я снова готова впитывать в себя знания, особенно потому что это меня действительно интересует, но вот в чём загвостка, передо мной встал выбор Unreal или Unity,

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

В языках у меня проблема выбора в том что вот Unity, для него можно юзать как C# так и JS, C# лично для меня спорный и пользы в его изучении (в моём случае настолько углублённом насколько это возможно, ибо такая вот я требовательная и любознательная, а ещё пока не пойму как это устроенно не успокоюсь. ) то что потом будет чуть проще (наверно) влиться в другие С-подобные языки,

JS вот менее спорен, ибо помимо gamedev-а меня интересует ещё и webdev, где я уже освоила азы front-end-а и хочу дальше углубляться, но нужен JS, и вот в итоге двух зайцев сразу, Unreal требует C++ — язык который я в любом случае собираюсь рано или поздно осваивать, ибо надо и ибо хочу в принципе. В плане рабочего пространства разумеется Unity прекрасен лично для меня, он достаточно приятный на вид и достаточно удобный в использовании, Unreal же 0.0! я просто ужаснулась тому что там творится, внутренний перфекционист негодует, но конечно работать можно, просто привыкнуть надо будет, но всё равно такое себе. Ну а последний пункт, тут я не лично не шарю, но все говорят что по Unity инфы больше, понятнее, доступнее да и вообще ляпота несусветная, а Unreal страшно, сложно и всё что остаётся это страдать уткнувшись в документацию и терроризировать знающих людей своими тупыми вопросами. Вооот, вопрос ко всем кто дочитал до этого момента, что вы думаете? что по таким критериям лучше? что вы выбрали? почему выбрали? жалеете о своём выборе? (и памагите мне с выбором т.т пажалуйста т.т)

Ссылка на основную публикацию
Adblock detector