для чего нужен unreal engine в epic games
Обзор: что такое Unreal Engine в Epic Games
Что такое Unreal Engine в Epic Games, почему продукт пользуется популярностью и какие игры связаны с этим названием? Обо всем расскажем – будет очень интересно!
Небольшой обзор движка
Unreal Engine от Epic Games – продукт, представленной одной из самых крупных компаний по разработке игр и программного обеспечения. Это бесплатный игровой движок, первоначально предназначенный для разработки шутеров от первого лица, хотя позже он активно использовался при создании игр других жанров. Придуман Тимом Суини, основателем EG.
Unsupported Graphics Card Epic Games: как исправить ошибку? Прочитай ответ здесь
Вот лишь несколько игр, которые написаны на этом движке – без сомнения, продукт действительно классный.
Этих примеров достаточно, чтобы понять, насколько хорош Unreal Engine от Epic Games. Полный список выпущенных игр насчитывает сотни наименований!
Распространяется продукт бесплатно, но с определенной оговоркой – если прибыль проекта перешагнет отметку в миллион долларов, разработчик будет должен выплатить роялти в размере 5%. Поэтому этот вариант идеально подходит начинающим (ведь далеко не каждая игрушка добирается до такой цифры выручки).
Последняя активная версия доступного движка Epic Games – Unreal Engine 4, хотя в 2021 году в свободный доступ вышло пятое обновление. Тем не менее, пока именно четвертый выпуск используется наибольшим числом разработчиков (можно бесплатно и без проблем «переехать» с 4 на 5 уровень, так обещает EG).
По состоянию на 2014 год – это самый успешный среди подобных продукт, отмеченный Книгой рекордов Гиннеса. Отличается удобным редактором с мощным функционалом, возможностью доступа к исходному коду, отличной оптимизацией. Для полноценной работы достаточно минимальных знаний С++, есть отличная база ассетов для любых нужд.
Все про поддержку в Эпик Геймс по ссылке
Вот что такое Unreal Engine в Epic Games – если вы интересуетесь игровой историей, вам стоит знать, что лежит в основе многих классных приложений!
Туториал по Unreal Engine. Часть 1: знакомство с движком
Unreal Engine 4 — это набор инструментов для разработки игр, имеющий широкие возможности: от создания двухмерных игр на мобильные до AAA-проектов для консолей. Этот движок использовался при разработке таких игр, как ARK: Survival Evolved, Tekken 7 и Kingdom Hearts III.
Разработка в Unreal Engine 4 очень проста для начинающих. С помощью системы визуального создания скриптов Blueprints Visual Scripting можно создавать готовые игры, не написав ни строчки кода! В сочетании с удобным интерфейсом это позволяет быстро изготавливать рабочие прототипы.
В этой части туториала по Unreal Engine 4 мы ознакомимся с основными возможностями программы. Вот основные темы, которые будут в нём рассмотрены:
Примечание: туториал будет состоять из восьми частей:
Установка Unreal Engine 4
Для установки Unreal Engine 4 используется Epic Games Launcher. Перейдите на сайт Unreal Engine и нажмите на кнопку Get Unreal в правом верхнем углу.
Перед загрузкой программы запуска необходимо будет создать учётную запись. После её создания скачайте программу запуска, соответствующую вашей операционной системе.
После скачивания и установки программы запуска откройте её. Появится следующее окно:
Введите адрес электронной почты и пароль, использованный для скачивания программы загрузки и нажмите на Sign In. После выполнения входа откроется такое окно:
Нажмите на Install Engine в левом верхнем углу. Программа запуска перейдёт к экрану, на котором можно будет выбрать устанавливаемые компоненты.
Примечание: Epic Games постоянно обновляет Unreal Engine, поэтому ваша версия движка может слегка отличаться от представленной на скриншотах. Например, после написания первого черновика этого туториала версия уже обновилась до 4.14.3! Туториал подойдёт вам, если у вас есть версия не ниже 4.14.
По умолчанию выбраны Starter Content, Templates and Feature Packs и Engine Source. Лучше так всё и оставить. Они будут полезны по следующим причинам:
Выбрав нужные компоненты, нажмите на Install. После завершения установки движок появится в библиотеке. Теперь настало время создать проект.
Создание проекта
Нажмите на одну из кнопок Launch, чтобы открыть браузер проектов (Project Browser). После его открытия нажмите на вкладку New Project.
Нажмите на вкладку Blueprint. Здесь можно выбрать один из шаблонов. Однако, поскольку мы начинаем с нуля, то выберем шаблон Blank.
Ниже будут перечисленные дополнительные параметры.
Вот, за что отвечает каждая опция:
Сменить папку хранения проекта можно, нажав на многоточие в конце поля Folder.
Имя проекта не является названием игры, так что не волнуйтесь, если хотите название позже. Выберите текст в поле Name и введите BananaTurntable.
И наконец нажмите на Create Project.
Навигация по интерфейсу
После создания проекта откроется редактор. Он разделён на несколько панелей:
Импорт ассетов
Какой смысл в поворотном столе, если на нём нечего показывать? Скачайте эту модель банана. Внутри находятся два файла: Banana_Model.fbx и Banana_Texture.jpg. Можете также использовать собственную модель, но зачем, если есть такой потрясающий банан?
Чтобы Unreal мог использовать файлы, их нужно импортировать. Перейдите в Content Browser и нажмите на Import.
С помощью диспетчера файлов найдите папку, в которой находятся Banana_Model.fbx и Banana_Texture.jpg are. Выделите оба файла и нажмите Open.
Нажмите на Import. Два файла появятся в Content Browser.
При импорте файла на самом деле он не сохраняется в проект, если не указать этого явным образом. Сохранять файлы можно, нажав на файл правой клавишей мыши и выбрав Save. Также можно сохранить все файлы за раз, выбрав File\Save All. Старайтесь сохраняться почаще!
Учтите, что в Unreal модели называются «мешами» (meshes). Теперь у нас есть меш банана, настало время добавить его на уровень.
Добавление мешей на уровень
Пока уровень выглядит довольно пустым, давайте сделаем его интереснее.
Чтобы добавить на уровень меш, нажмите правой клавишу мыши и перетащите Banana_Model из Content Browser во Viewport. Отпустите левую клавишу мыши и меш добавится на уровень.
Объекты на уровне можно перемещать, поворачивать и масштабировать. Горячие клавиши для этих действий — W, E и R. После нажатия на них можно использовать манипулятор:
О материалах
Если внимательно посмотреть на банан, то можно увидеть, что он не жёлтый! На самом деле. он выглядит почти полностью серым.
Чтобы придать банану цвет и детали, необходимо создать материал.
Что такое «материал»?
Материал задаёт внешний вид поверхности. На базовом уровне материал определяет четыре аспекта:
Создание материала
Для создания материала нужно перейти в Content Browser и нажать на зелёную кнопку Add New. Появится меню со списком ассетов, которые можно создать. Выберите Material.
Назовите материал Banana_Material, а затем дважды нажмите левой клавишей мыши на файле, чтобы открыть его в редакторе материалов.
Редактор материалов (Material Editor)
Редактор материалов состоит из пяти основных панелей:
Что такое нод (узел)?
Прежде чем приступать к созданию своего материала, нужно узнать про объекты, которые используются для его создания: ноды.
Ноды составляют бОльшую часть материала. Существует множество типов нодов, имеющих различные функции.
У нодов есть входы и выходы, представленные кругом со стрелкой. Входы расположены слева, а выходы — справа.
Вот пример с использованием нодов Multiply и Constant3Vector, добавляющих текстуре жёлтого цвета:
У материалов есть особый нод, называемый нодом Result, который в нашем случае уже создан как Banana_Material. Здесь заканчиваются со временем все ноды. То, что подключено к этому ноду, определяет внешний вид конечного материала.
Добавление текстур
Для добавления модели цвета и деталей нам необходима текстура. Текстура — это просто двухмерное изображение. Обычно они проецируются на трёхмерные модели, придавая им цвет и детали.
Для текстурирования банана мы используем Banana_Texture.jpg. Применить в материале текстуру позволяет нод TextureSample.
Перейдите к панели Palette и найдите TextureSample. Добавьте нод, удерживая левую клавишу мыши и перетащив его на схему.
Для выбора текстуры необходимо сначала выделить нод TextureSample. Перейдите в панель Details и нажмите на раскрывающийся список, расположенный справа от Texture.
Откроется меню, в котором перечислены все текстуры проекта. Выберите Banana_Texture.
Чтобы увидеть текстуру на меше предварительного просмотра, нужно подключить её к ноду Result. Удерживайте левую клавишу мыши на белом контакте выхода нода TextureSample. Перетащите его на входной контакт Base Color нода Result.
Вернитесь во Viewport, чтобы увидеть текстуру на меше предварительного просмотра. Можно поворачивать его (удерживая левую клавишу мыши и перемещая мышь), чтобы рассмотреть другие детали.
Нажмите на Apply в Toolbar, чтобы обновить материал, и закройте редактор материалов после завершения.
Использование материалов
Чтобы применить материал на банан, нужно его назначить. Вернитесь к Content Browser и дважды нажмите на Banana_Model, чтобы открыть его. Появится следующее окно редактора:
Перейдите в панель Details и найдите раздел Materials. Нажмите на раскрывающееся меню, расположенное справа от Element 0, и выберите Banana_Material.
Закройте редактор мешей, вернитесь к основному редактору и посмотрите на Viewport. Вы увидите, что теперь на банане есть текстура. Поздравляю, вы теперь знаете всё необходимео, чтобы стать дизайнером уровней!
Примечание: если освещение слишком тёмное, можно изменить его, зайдя в World Outliner и нажав на Light Source. В панели Details найдите параметр Intensity и увеличьте его значение.
Про Blueprints
Даже несмотря на то, что банан выглядит отлично, будет ещё лучше, если он начнёт вращаться на поворотном столе. Проще всего создать его с помощью «чертежей» Blueprints.
В простейшем случае Blueprint представляет собой «вещь». Blueprints позволяют создавать свои поведения для объектов. Объект может быть чем-то физическим (типа поворотного стола) или чем-то абстрактным, например, системой здоровья.
Хотите создать движущийся автомобиль? Используйте Blueprint. А как насчёт летающей свинки? Используйте Blueprints. А если нужен взрывающийся при касании котик? Blueprints.
Как и в материалах, в Blueprints используется система на основе нодов. Это значит, что достаточно создать ноды и соединить их — никакого кода не требуется!
Примечание: если вы предпочитаете писать код, то используйте вместо этого C++.
Blueprints просты в использовании, однако не так быстры, как код на C++. То есть если вам нужно создать что-то «тяжёлое» с точки зрения вычислений, например, сложный алгоритм, то лучше воспользоваться C++.
Но даже если вы предпочитаете C++, то бывают случаи, когда оптимальнее использовать Blueprints. Вот некоторые из преимуществ Blueprints:
Создание Blueprint
Перейдите в Content Browser и нажмите на Add New. Выберите в списке Blueprint Class.
Откроется окно с запросом выбора родительского класса. Ваш Blueprint будет наследовать все переменные, функции и компоненты из выбранного родительского класса. Уделите время на изучение возможностей каждого класса.
Примечание: поскольку мы можем расположить классы Pawn и Character, они также являются акторами (Actors).
Поворотный стол будет находиться на месте, поэтому самым подходящим будет класс Actor. Выберите Actor и назовите новый файл Banana_Blueprint.
Дважды нажмите на Banana_Blueprint, чтобы открыть его. Нажмите на Open Full Blueprint Editor, если появится подобное окно:
Blueprint Editor
Во-первых, выберите в редакторе Blueprint editor вкладку Event Graph.
Blueprint editor состоит из четырёх основных панелей:
Создание поворотного стола
Для создания стола нам нужно две вещи — основание и подставка. Их можно создать с помощью компонентов.
Что такое «компоненты»?
Если Blueprint — это автомобиль, то компоненты — это строительные элементы, из которых он состоит. Примерами компонентов могут быть двери, колёса и двигатель.
Однако компоненты могут быть не только физическими объектами.
Например, чтобы автомобиль мог двигаться, можно добавить компонент движения. Можно даже заставить машину летать, если добавить компонент полёта.
Добавление компонентов
Чтобы увидеть компоненты, необходимо переключиться в режим Viewport. Нажмите на вкладку Viewport, чтобы переключиться на неё. Вот как это выглядит:
Примечание: компонент DefaultSceneRoot при запуске приложения не отображается, он виден только в редакторе.
Поворотный стол будет использовать два компонента:
Неплохо было бы сделать основание чуть короче. Активируйте манипулятор масштаба, нажав R, а затем уменьшите масштаб (точный размер неважен, можно будет изменить его позже).
Теперь пора добавить меш. Вернитесь в панель компонентов Components и нажмите левой клавишей на пустой области, чтобы снять выделение с компонента Cylinder. Благодаря этому следующий добавляемый компонент не будет прикреплён к компонентуCylinder.
Примечание: если этого не сделать, то следующий компонент будет прикреплён к компоненту Cylinder. Это значит, что он также унаследует масштаб компонента Cylinder. Поскольку мы уменьшили масштаб цилиндра, следующий компонент тоже будет уменьшен.
Затем нажмите на Add Component и выберите из списка Static Mesh.
Для отображения банана выберите компонент Static Mesh, а затем нажмите на вкладку Details. Нажмите на раскрывающий списков в правой части Static Mesh и выберите Banana_Model.
Переместите банан, если он находится в неправильном положении. Для этого активируйте манипулятор перемещения, нажав W, а затем переместите его вверх.
Про ноды Blueprint
Теперь нужно сделать так, чтобы поворотный стол вращался. И здесь нам потребуются ноды Blueprint.
В отличие от своих близких родственников — нодов материалов — ноды Blueprint имеют особые контакты, называемые контактами Execution. Контакт слева — это вход, контакт справа — выход. У всех нодов есть хотя бы по одному входу и выходу.
Если нод имеет контакт входа, то его нужно подключить, чтобы он заработал. Если нод не поключен, все последующие ноды не будут выполняться.
Node A и Node B будут выполняться, потому что у их входных контактов есть подключение. Node C и Node D никогда не выполняются, потому что входной контакт Node C не имеет подключения.
Вращение поворотного стола
Прежде чем начать, давайте посмотрим на панель Components. Можно заметить, что у Cylinder и Static Mesh есть отступ, а у DefaultSceneRoot — нет, потому что они подключены к DefaultSceneRoot.
Если переместить, повернуть или отмасштабировать корневой компонент, то тоже самое произойдёт и с прикреплёнными к нему компонентами. Благодаря этому поведению можно поворачивать Cylinder и Static Mesh одновременно, а не по отдельности.
Создание нода
Чтобы приступить к созданию скриптов, переключитесь назад на вкладку Event Graph.
Реализация вращения объекта настолько проста, что требует всего одного нода. Нажмите правой клавишей на пустое пространство в графе, чтобы открыть меню доступных нодов. Найдите AddLocalRotation. Нам нужно поворачивать основание и банан, поэтому мы просто будем вращать корневой компонент. Выберите AddLocalRotation (DefaultSceneRoot).
Примечание: если нода нет в списке, снимите флажок Context Sensitive в правом верхней части меню.
В вашем графе теперь появится новый нод AddLocalRotation. Вход Target автоматически подключится к выбранному компоненту.
Чтобы задать значение вращения, перейдите к входу Delta Rotation и измените значение Z на 1.0. Благодаря этому Blueprint сможет выполнять вращение относительно оси Z. Чем выше значения, тем быстрее будет вращаться стол.
Чтобы поворотный стол вращался постоянно, нужно вызывать AddLocalRotation в каждом кадре. Для выполнения нода в каждом кадре воспользуемся нодом Event Tick. Он уже находится в графе. Если его нет, то создайте его тем же способом, что и ранее.
Перетащите выходной контакт нода Event Tick ко входному контакту нода AddLocalRotation.
Примечание: в этой реализации скорость вращения зависит от частоты кадров. Это значит, что поворотный стол на медленных компьютерах будет вращаться с меньшей скоростью, и наоборот. Для туториала это нас вполне устраивает, потому что я не хочу ничего усложнять, но в будущем я покажу, как это исправить.
Наконец, перейдите в Toolbar и нажмите на Compile, чтобы обновить Blueprint, а затем закройте Blueprint editor.
Добавление Blueprints на уровень
Прежде чем добавлять Blueprint, вернитесь ко Viewport в основном редакторе и удалите модель банана. Для этого выберите модель, а затем выберите Edit\Delete или нажмите клавишу Delete.
Добавление Blueprint — это тот же процесс, что и добавление меша. Удерживайте левую клавишу мыши на файле и перетащите его во Viewport.
Перейдите к Toolbar и нажмите Play, чтобы увидеть результаты своих трудов!
Примечание: если вы не удалите исходную модель банана, то можете получить предупреждение о необходимости перестройки освещения. Если удалить модель, то ошибка больше не будет проявляться.
Что делать дальше?
Готовый проект можно скачать отсюда.
В этой части туториала вы многое узнали, но это только небольшая часть Unreal. Если вы хотите продолжить изучение, то ждите следующей части туториала, в которой мы подробнее рассмотрим Blueprints.
Какие прелести нас ждут в Unreal Engine 5
Epic Games провела 26 мая презентацию Unreal Engine 5, на которой показала новые возможности движка, включая системы по работе с ассетами, светом, анимациями и звуком. Старые системы и инструменты тоже получили множество улучшений.
Уже можно скачать альфу UE5 и семпл проект Valley of the Ancient.
Рекомендуемые системные требования для демки: 12-ядерный процессор с частотой 3,4 ГГц, видеокарта NVIDIA RTX 2080 или AMD Radeon 5700+ XT, оперативная память от 64 ГБ.
Можно уже начинать изучать доки. Подробно описаны все ключевые моменты.
Наконец-то обновили интерфейс редактора.
Nanite
Виртуальная геометрия позволяет использовать больше полигонов и должна заменить привычные LOD’ы, делая прозрачным весь процесс замены высококачественных ассетов на более простые. Становится возможным отображать миллионы трианглов без проблем.
Работает с новым внутренним форматом мешей, который сильно сжат и поддерживает потоковую передачу с автоматическим уровнем детализации. LOD’ы самим больше делать не надо.
Контент для Nanite ничем не отличается от обычных статичных мешей, но Nanite может обрабатывать на порядки больше треугольников и инстансов, чем при рендеринге обычной геометрии. Рекомендуется использовать виртуальные текстуры.
Во время импорта меши разбиваются на иерархические кластеры групп треугольников. А уже во время рендеринга кластеры меняются местами на лету с разными уровнями детализации в зависимости от обзора камеры и без разрывов соединяются с соседними кластерами в одном объекте. В памяти находятся только видимые детали. Как следствие, чтобы это всё нормально стримилось, нужен SSD.
Для прокси-мешей можно настроить уровень детализации.
Прокси-меши используются для коллизий на уровне полигонов, трассировки лучей, запекания света и другого. При этом по умолчанию используются авто-генерируемый LOD0, что весьма странно.
По крайней мере, есть возможность выбрать кастомный прокси и настроить традиционные LOD’ы.
Независимо от геометрической сложности исходных данных в сцене, количество треугольников в целом пропорционально количеству пикселей, т. к. нет смысла рисовать больше треугольников, чем пикселей на экране.
Могут быть проблемы с occlusion culling. Если есть сложнная геометрия близко друг к другу около самой верхней поверхности, Nanite не сможет определить, какая из них находится сверху или снизу, что приведет к отрисовке обоих. Вблизи Nanite нормально разделяет слои, но при удалении разница в расстоянии между геометрией может быть меньше пикселя, что приводит к лишней отрисовке.
Если верить доке, то у Nanite меша и качество лучше, и размер меньше.
Антиалиасинг система Temporal super resolution позволяет при меньших затратах по ресурсам получить почти нативные 4K по цене 1080p.
Системы для работы со светом и атмосферой
Новая система для глобального освещения Lumen позволяет настроить реалистичный реалтайм свет. Если ещё совмещать с фотореалистичными ассетами из Мегасканс, то картинка просто на новый уровень выходит.
Lumen Global Illumination заменяет Global Illumination Screen Space (SSGI) и Distance Field Ambient Occlusion (DFAO). Lumen Reflections заменяет Screen Space Reflections в Unreal Engine 4.
Lumen генерирует Surface Cache для ближайших поверхностей сцены (где-то 200 метров от камеры). За этим расстоянием работает только screen traces.
Есть экспериментальное представление Distant Scene. Оно как раз было использовано в прошлой демке Unreal Engine 5 «Lumen in the Land of Nanite» для достижения непрямого освещения в каньоне. Покрывает диапазон от 200 метров до 1 километра от камеры. Работает путём рендеринга Reflective Shadowmap с низким разрешением от солнца с использованием Nanite и отслеживает это поле высот, чтобы уловить один отскок непрямого освещения солнца. В проде пока не рекомендуется использовать.
При трассировке сначала прогоняется Screen Tracing, т. к. он меньше жрёт ресурсов.
Потом уже Lumen Ray Tracing, состоящий из двух методов: программная трассировка, работающая на самом широком спектре железа и платформ, и аппаратная трассировка лучей, для работы которой требуются поддерживаемые видеокарты и системы.
По умолчанию работает Signed Distance Fields. Требует поддержка Shader Model 5 у железа. Много ограничений: работает только со статикой, World Position Offset не поддерживается, с прозрачностью проблемы.
Hardware Ray Tracing поддерживает больший спектр доступной геометрии. Проседает, если больше 100 000 инстансов. Динамическая деформация мешей может загнать фпс в 0.
Для работы Lumen нужна карта NVIDIA RTX-2000 серии и выше или AMD RX-6000 и выше.
Система для атмосферы позволяет легко всё настраивать, в том числе и объёмные облака. На уровне настроек куча модификаторов и параметров, которые позволяют твикнуть всё.
Работа с фотореалистичными ассетами
Quixel Bridge теперь полностью интегрирован в движок.
Можно просто перетаскивать ассеты мышкой из браузера ассетов и сразу приступать к работе.
Добавили новый тип ассетов Mega Assemblies. Это что-то типа сборки из существующих ассетов.
Главная цель состояла в том, чтобы художникам было проще совместно работать и обмениваться ассетами.
Работа с миром и уровнями
Новый инструмент World Partition позволяет дизайнерам работать с миром не как с набором стриминг уровней, а как с одним большим миром, который автоматически разбивается на более мелкие ячейки.
Их можно загружать/выгружать в редакторе кусками, что кучу времени и ресурсов при работе в редакторе экономит.
Сами изменения (добавить кустик, например) происходят на уровне акторов, а не карты. В итоге можно работать с одной картой одновременно нескольким людям и не будет головной боли при мёрдже.
World Partition позволяет стримить из коробки. Ассеты вне установленного радиуса выгружаются и заменяются другими с меньшим разрешением.
Это всё на уровне конфигов вынесено. Можно настроить под свой проект.
Система Data layers позволят художникам работать вместе над одной сценой и переосмыслить её, создавая различные её вариации.
Эти слои можно переключать в рантайме, что позволяет загружать/выгружать тысячи ассетов на лету.
Как пример, переход в другой мир через портал. Правда, тут, всё же, есть переходный момент с подзагрузкой. Но, всё равно, довольно резво.
Анимация
Добавили для анимаций Full body IK solver. Может автоматически подстраиваться под тип пола/земли и высоту. «Детерминированный надёжный и в 10 раз быстрее, чем раньше».
Появился новый фреймворк Game Feature Plugins, который позволяет разбить контент на модули. Может связать экшены, анимации, другие системы.
К примеру, в другом измерении у ГГ меняется абилка. Это всё задаётся на уровне конфига.
Все vfx, звуки, анимации, инпуты, блюпринты, относящиеся к абилке, в виде одного плагина в проекте, что позволяет отделять фичи и сделать проект более модульным и конфигурируемым.
Animation Motion Warping позволяют адаптировать рут анимации под мир. Можно переиспользовать одни и те же элементы.
Позволяет настроить нотификации для реакции на трансформы из блюпринтов.
Система реагирует на высоту препятствий, поворот персонажа и прочее.
Control Rig позволяет редактировать анимации прям в движке.
Full body IK даёт возможность настроить анимацию в ответ на какие-то внешние факторы: позиция противника и т. п. Всё на уровне конфига.
Например, настроить направление и дальность атаки в зависимости от положения ГГ.
С помощью новой системы Meta sounds можно теперь использовать всю мощь редактора материалов для создания сложного процедурного звука.
Хорошо забытое старое
Но это не только про новые фичи. Всё, что вам нравилось в UE4, тоже проапгрейдили. Niagara particles, visual effects, chaos physics, блюпринты получили множество улучшений.
В плане физики, теперь можно, например, влиять на симуляцию Chaos Physics в отдельных регионах. В таких областях можно, например, прикладывать силы к телам, разрушать кластеры геометрии и т. д.
Новые инструмента для отладки появились: Memory Insights для поиска утечек, Unreal Turnkey, который позволяет настроить проект под различные платформы, чтобы потом любой участник проекта одним нажатием мог поднять у себя нужное окружение.
И, как заверяют Эпики, миграция с UE4 должна пройти без проблем, т. к. полная обратная совместимость между версиями движка.
Уже можно скачать альфу UE5 и семпл проект Valley of the Ancient.
Саму презентацию можно посмотрел на канале Unreal Engine.











