Импорт и конвертация ресурсов
Проекты Unreal Engine 5 содержат ряд ресурсов, которые входят в окончательный вариант игры. Некоторые из этих типов ресурсов характерны только для Unreal Engine, например классы Blueprint, а другие — это универсальные форматы файлов, которые можно импортировать в движок.
В этом документе описаны типы ресурсов, которые можно импортировать в Unreal Engine, а также способы их импорта и ссылки на дополнительную информацию.
Распространённые типы ресурсов
В Unreal Engine 5 поддерживаются следующие типы ресурсов:
| Тип ресурса Unreal | Аналог в Unity | Поддерживаемые форматы |
|---|---|---|
| Сетка |
|
| Сетка оболочки |
|
| Анимация, Mecanim |
|
Текстура |
| |
| аудиофайл (audio file) |
|
| Клип |
|
| Ресурс шрифта |
|
| Файл glTF |
|
SpeedTree |
|
Что нужно учитывать перед импортом ресурсов в Unreal Engine
Система координат в Unreal Engine
Unreal Engine использует декартову систему координат для размещения элементов в трёхмерном евклидовом пространстве. Система координат в Unreal Editor является левосторонней и использует ось X для указания направлений вперёд/назад, ось Y — направлений вправо/влево и ось Z для направлений вверх/вниз.
Система координат в Unity также является левосторонней. Однако в Unity ось X указывает направления вправо/влево, ось Y — вверх/вниз, ось Z — вперёд/назад.
Это может привести к неправильной ориентации ресурсов при их импорте из Unity в Unreal Engine. Для устранения разногласий можно изменить ориентацию ресурса в пакете для создания цифрового контента (DCC), таком как Maya или Blender, или непосредственно в диалоговом окне импорта в Unreal Engine.
Подробнее о системе координат в Unreal Engine см. в разделе Coordinate System and Spaces (Система координат и пространства)
Единицы измерения в Unreal Engine
В Unreal Engine для измерения размера объекта и расстояний используется метрическая система. В Unreal Engine для внутренних измерений есть специальная единица Unreal Unit (UU). Одна единица Unreal Unit равна 1 см.
Эта информация необходима, чтобы задать правильный масштаб при создании сеток во внешней программе для создания цифрового контента.
В Unity также есть своя внутренняя метрическая система, в которой одна единица Unity равна 1 метру (100 см). Это отражается на масштабе объектов, импортируемых непосредственно из Unity в Unreal Engine.
Подробнее о единицах измерения в Unreal Engine см. в статье Units of Measurement (Единицы измерения).
Конвейер контента FBX
В Unreal Engine поддерживается ряд форматов файлов для импорта контента в проект. Один из наиболее популярных форматов ресурсов — Autodesk FBX.
Формат FBX обеспечивает совместимость между многими инструментами для создания цифрового контента и обладает следующими преимуществами:
использование единого формата файлов для статичных сеток, скелетных сеток, анимации и целевых объектов морфинга;
импорт нескольких LOD (уровней детализации) и объектов морфинга / переходных форм за одну операцию импорта;
импорт ресурсов материалов и текстур и их автоматическое наложение на статичные сетки.
В конвейере FBX Unreal Engine используется FBX 2020.2, поэтому во избежание возможной несовместимости при импорте ресурсов лучше использовать эту версию.
Подробнее о конвейере FBX см. в статье FBX Content Pipeline (Конвейер материалов FBX).
Информация о версиях
На момент написания этого текста снимки экрана и термины соответствуют следующим версиям Unreal Engine и движка Unity:
Unreal Engine 5.4.3
Unity 6 (6000.0.2f1)
Подготовка ресурсов к экспорту из Unity
Перед экспортом ресурсов из Unity выполните следующие действия, чтобы включить пакет Exporter (Экспортёр FBX):
В Unity нажмите Window (Окно) > Package Manager (Диспетчер пакетов), чтобы открыть окно Package Manager (Диспетчер пакетов).
Нажмите на категорию Unity Registry (Реестр Unity) слева и найдите FBX Exporter (Экспортёр FBX). Нажмите Install (Установить), чтобы установить пакет.
После установки пакета закройте окно Package Manager (Диспетчер пакетов).
Затем нажмите правой кнопкой мыши на готовом элементе в окне Hierarchy (Иерархия) и выберите Export to FBX (Экспортировать в FBX), чтобы экспортировать его в формате .fbx .
Вы также можете открыть исходную папку проекта Unity и напрямую скопировать определённые файлы, например текстуры.
Сетки/статичные сетки
Статичные сетки — это трёхмерные сетки, геометрия которых не изменяется. В Unreal Engine статичные сетки можно импортировать в форматах .fbx или .obj (наиболее предпочтителен формат .fbx). Подробнее о статичных сетках в Unreal Engine см. в статье Static Meshes (Статичные сетки)
В этом примере показано, как экспортировать статичную сетку шара из материалов Unreal Engine из Unity в Unreal.
Этот готовый элемент состоит из одной сетки и трёх материалов. Однако ваш готовый элемент с сеткой может содержать несколько сеток в иерархии.
Экспорт статичной сетки из Unity
Выполните следующие действия, чтобы экспортировать статичную сетку из Unity:
Нажмите правой кнопкой мыши на готовом элементе в окне Hierarchy (Иерархия) и выберите в меню Export FBX… (Экспорт FBX…).
В окне Export Options (Настройки экспорта) введите Export Name (Имя экспорта) и Export Path (Путь экспорта).
В категории Options (Настройки) выберите ASCII Export Format (Экспорт в формате ASCII).
Нажмите на выпадающее меню Include (Добавить) и выберите Model(s) Only (Только модель(-и)).
Если у вашей сетки есть уровни детализации (LOD), выберите соответствующий уровень.
Поставьте флажок Embed Textures (Вложенные текстуры), если вы хотите экспортировать материалы сетки с соответствующими текстурами.
Нажмите Export (Экспортировать), чтобы экспортировать свою статичную сетку.
Перейдите в папку Export Path (Путь экспорта) и найдите файл статичной сетки в формате .fbx. Это файл, который вы будете импортировать в Unreal Engine.
Импорт статичной сетки в Unreal Engine
Чтобы импортировать статичную сетку в Unreal Engine, выполните следующие действия:
Откройте Unreal Engine и нажмите Импорт в Каталоге ресурсов.
Перейдите в папку, в которую выполнен экспорт и выберите файл сетки в формате .fbx, а затем нажмите Открыть.
Также после использования настройки Show in Explorer (Показать в Проводнике) в Unity вы можете перетащить файл из проводника прямо в Каталог ресурсов Unreal Engine для импорта.
Откроется окно Настройки импорта FBX, где будут отображены настройки импорта статичной сетки.
Прокрутите страницу вниз до раздела Информация о файле FBX, чтобы просмотреть подробную информацию о ресурсе. Обратите внимание, что Приложение автора будет указано как Unity FBX Exporter 5.1.1 и Направление осей файла будет Y-ВВЕРХ.
Прокрутите вверх до раздела Сетка и поставьте флажок Сгенерировать недостающую коллизию.
Разверните раздел Расширенные настройки и поставьте флажок Объединить сетки, если вам нужно объединить несколько сеток в одну. Вы также можете поставить флажок Импортировать LOD сетки, если в вашей сетке есть уровни детализации.
Прокрутите вниз до раздела Прочие настройки и поставьте флажки Преобразовать сцену и Использовать переднюю ось X.
Прокрутите вниз до раздела Материал, нажмите на выпадающее меню Способ импорта материала и выберите Создать новые материалы. Так вы автоматически создадите новые материалы для статичной сетки.
Более подробную информация о настройках в FBX Importer (Импортёре FBX) можно найти на странице FBX Import Options (Настройки импорта в FBX).
Нажмите Импортировать всё, чтобы импортировать статичную сетку в Unreal Engine.
Ресурс статичной сетки, а также материалы и текстуры теперь импортированы в Unreal Engine.
Чтобы увидеть окончательный результат, перетащите ресурс статичной сетки из Каталога ресурсов на уровень.
Подробнее о конвейере статичных сеток в FBX: раздел FBX Static Mesh Pipeline in Unreal Engine (Конвейер статичных сеток в FBX в Unreal Engine).
Обтянутые сетки / скелетные сетки
В Unreal Engine персонажи создаются с помощью ряда уникальных ресурсов, которые отрисовывают визуальную геометрию, воспроизводят анимацию и создают логику, управляющую поведением персонажа в реальном времени.
Основным ресурсом для создания персонажей в Unreal Engine является ресурс скелетной сетки, которая содержит визуальную сетку персонажа, или отрисовку геометрической модели персонажа, и скелет, содержащий данные о костях персонажа, необходимые для его анимации.
Подробнее о скелетных сетках в Unreal Engine: раздел Skeletal Meshes (Скелетные сетки).
В этом примере показано, как экспортировать персонажа Unreal Engine Quinn из Unity в Unreal.
Этот готовый элемент содержит корневой компонент, который в свою очередь содержит несколько преобразований для обработки ИК, а также компонент скелетной сетки, который содержит модуль отрисовки обтянутой сетки и два материала.
Экспорт скелетной сетки из Unity
Выполните следующие действия, чтобы экспортировать скелетную сетку из Unity:
Нажмите правой кнопкой мыши на готовом элементе в окне Hierarchy (Иерархия) и выберите в меню Export FBX… (Экспорт FBX…).
В окне Export Options (Настройки экспорта) введите Export Name (Имя экспорта) и Export Path (Путь экспорта).
В категории Options (Настройки) выберите ASCII Export Format (Экспорт в формате ASCII), затем нажмите на выпадающее меню Include (Добавить) и выберите Model(s) + Animations (Модель(-и) + анимации). Так вы добавите к скелетной сетке любые назначенные ей анимации.
Если у вашей сетки есть уровни детализации (LOD), выберите соответствующий уровень.
Поставьте флажок Animated Skinned Mesh (Анимированная обтянутая сетка).
Поставьте флажок Embed Textures (Вложенные текстуры), если вы хотите экспортировать материалы сетки с соответствующими текстурами.
Нажмите Export (Экспортировать), чтобы экспортировать свою статичную сетку.
Перейдите в папку Export Path (Путь экспорта) и найдите файл скелетной сетки в формате
.fbx. Это файл, который вы будете импортировать в Unreal Engine.
Импорт скелетной сетки в Unreal Engine
Чтобы импортировать скелетную сетку в Unreal Engine, выполните следующие действия:
Откройте Unreal Engine и нажмите Импорт в Каталоге ресурсов.
Перейдите в папку Export Path (Путь экспорта) и выберите файл скелетной сетки в формате
.fbx, затем нажмите Открыть.Также после использования настройки Show in Explorer (Показать в Проводнике) в Unity вы можете перетащить файл из проводника прямо в Каталог ресурсов Unreal Engine для импорта.
Откроется окно Настройки импорта FBX, где будут отображены настройки импорта статичной сетки.
Прокрутите страницу вниз до раздела Информация о файле FBX, чтобы просмотреть подробную информацию о ресурсе. Обратите внимание, что Приложение автора будет указано как Unity FBX Exporter 5.1.1 и Направление осей файла будет Y-ВВЕРХ.
Прокрутите вверх до раздела Сетка и поставьте флажки Скелетная сетка и Импортировать сетку. Нажмите на выпадающее меню Тип импортируемого контента и выберите Геометрия и веса привязки оболочки.
Если ваш проект в Unreal Engine уже содержит ресурс скелета, совместимый со скелетом персонажа, который вы импортируете, вы можете дополнительно выбрать совместимый скелет из выпадающего меню Скелет. Если ресурсы скелета не идентичны, вы можете импортировать скелеты как отдельные ресурсы, а затем определить их как совместимые. Подробнее: раздел Compatible Skeletons (Совместимые скелеты).
Если вы экспортировали скелетную сетку вместе с анимацией, прокрутите вниз до раздела Анимация и поставьте флажок Импортировать анимации. В этом разделе скелетная сетка не содержит анимаций.
Прокрутите вниз до раздела Материал, нажмите на выпадающее меню Способ импорта материала и выберите Создать новые материалы. Так вы автоматически создадите новые материалы для скелетной сетки.
Более подробную информация о настройках в FBX Importer (Импортёре FBX) можно найти на странице FBX Import Options (Настройки импорта в FBX). |
Нажмите Импортировать всё, чтобы импортировать скелетную сетку в Unreal Engine.
Ресурс скелетной сетки, а также материалы и текстуры теперь импортированы в Unreal Engine. Помимо этого на основе скелетной сетки также были созданы скелет и физический ресурс.
Чтобы увидеть окончательный результат, перетащите ресурс скелетной сетки из Каталога ресурсов на уровень.
Подробнее о конвейере скелетных сеток в FBX: раздел FBX Skeletal Mesh Pipeline (Конвейер скелетных сеток в FBX).
Анимации
С помощью набора эффективных инструментов и редакторов анимации Unreal Engine вы сможете создавать системы анимации персонажей и объектов в среде выполнения, отрисовывать кинематографический контент и создавать новые анимационные материалы прямо в движке.
Анимации персонажей в Unreal Engine создаются с использованием системы анимаций скелетной сетки. Анимации применяются к скелетной сетке и реализуются через анимационные ресурсы, такие как схема с анимацией.
В Unreal Engine есть ряд анимационных инструментов для работы со скелетными сетками, позволяющих улучшить ваши анимации.
Подробнее о системе анимации скелетной сетки и наборе анимационных редакторов, ресурсах и функциях в Unreal Engine см. в разделе Animating Characters and Objects (Анимирование персонажей и объектов).
Экспорт анимационных роликов из Unity
Анимационные ролики можно экспортировать из Unity в формате .fbx с помощью пакета FBX Exporter (Экспортёр FBX). Затем эти экспортированные файлы можно импортировать в Unreal Engine в виде последовательностей анимации для использования в вашем проекте.
Чтобы экспортировать анимационный ролик из Unity, выполните следующие действия:
Перейдите на панель Hierarchy (Иерархия) в проекте Unity и выберите готовый элемент персонажа с анимационным роликом, который вы хотите экспортировать.
Нажмите правой кнопкой на готовый элемент и выберите настройку Export to FBX… (Экспортировать в FBX…).
Задайте значения в свойствах Export Name (Имя экспорта) и Export Path (Путь экспорта), чтобы присвоить имя экспортируемому файлу и указать место его хранения на вашем компьютере.
Задайте для свойства Export Format (Формат экспорта) значение ASCII, а для Include (Добавить) — значение Model(s) + Animation (Модель(-и) + анимация). Вы можете также добавить все модели уровня детализации персонажа (LOD) с помощью свойства LOD Level (Уровень LOD) и настроить свойство Object(s) Position (Позиция объекта(-ов)), чтобы задать пользовательское значение преобразования.
Значение Model(s) + Animation (Модель(-и) + анимация) свойства Include (Добавить) позволяет экспортировать анимационный ролик, а также модель и иерархию скелета вашего персонажа и сохранить всё в одном файле .fbx . Это может пригодиться при импорте ресурсов в Unreal Engine, ведь это позволит сохранить все ваши ресурсы в одном месте.
Поставьте флажок Animated Skinned Mesh (Анимированная обтянутая сетка), а затем экспортируйте ресурсы, нажав Export (Экспортировать).
Импорт анимаций в Unreal Engine
Чтобы импортировать анимацию в Unreal Engine, выполните следующие действия:
Нажмите Импорт в Каталоге ресурсов Unreal Engine.
Перейдите в папку на вашем компьютере, в которую вы сохранили экспортированный анимационный ролик Unity, выберите файл и нажмите Открыть.
Также после использования настройки Show in Explorer (Показать в Проводнике) в Unity вы можете перетащить файл из проводника прямо в Каталог ресурсов Unreal Engine для импорта.
Задайте следующие настройки в окне Настройки импорта в FBX.
Включите свойство Скелетная сетка.
Чтобы импортировать анимационный ролик и создать новый ресурс скелетной сетки с помощью ресурса последовательности анимации, включите свойство Импортировать сетку. Если вам нужно просто импортировать анимацию как последовательность анимации, отключите это свойство. В этом примере импортируется только анимация без сетки, поскольку скелетная сетка уже была импортирована ранее.
Если вы импортируете нового персонажа и хотите создать новый ресурс скелета во время импорта, ничего не делайте со свойством Скелет. Если вы импортируете анимацию, чтобы использовать её с существующим скелетом персонажа в вашем проекте, выберите ресурс скелета в выпадающем меню выбора ресурсов. В этом примере анимация предназначена для скелетной сетки персонажа Quinn, поэтому для использования выбран ресурс SK_Mannequin.
Если ваш проект в Unreal Engine уже содержит ресурс скелета, совместимый со скелетом персонажа, который вы импортируете, вы можете дополнительно определить это свойство Скелет через совместимый скелет. Если ресурсы скелета не идентичны, вы можете импортировать скелеты как отдельные ресурсы, а затем определить их как совместимые. Подробнее: раздел Compatible Skeletons (Совместимые скелеты).
После определения свойств в окне «Настройки импорта в FBX» нажмите Импортировать, чтобы импортировать ресурс.
Для запуска процесса импорта скелетной сетки и ресурсов анимации через окно «Настройки импорта в FBX» можно выбрать либо Импортировать всё, либо Импортировать. Кнопка Импортировать всё позволяет импортировать связанные ресурсы сетки, скелета, материала и текстуры из файла .fbx . Лучше всего использовать её при импорте всех элементов персонажа. При импорте дополнительных анимаций, связанных с уже импортированным персонажем, выберите настройку Импортировать, чтобы импортировать только отдельные ресурсы анимации.
После завершения импорта вы можете открыть свою последовательность анимации в Редакторе ресурсов или перетащить ресурс на уровень и воспроизвести проект в редакторе.
Устранение неполадок при импорте скелетной сетки
При импорте персонажей и объектов со скелетной сеткой в Unreal Engine из других систем для создания цифрового контента или игровых движков можно столкнуться с проблемами. Например, объекты могут быть неверно масштабированы или развёрнуты из-за различий между программами и их соответствующими системами координат.
Меню FBX Import Settings (Настройки импорта в FBX) в Unreal Engine поможет исправить некоторые проблемы в процессе импорта, однако, если ваши объекты импортированы неправильно, пожалуйста, изучите следующие разделы, для того чтобы понять, как исправить ошибки при импорте.
Масштаб
В Unreal Engine используется система координат с единицей измерения масштаба Unreal Unit, равной 1 см. В других программах используются другие единицы измерения масштаба. Поэтому перенос файла из одной программы в другую может привести к тому, что символы или объекты будут больше или меньше, чем они должны быть. При переносе файла в Unreal Engine из Unity, в котором используются единицы измерения, эквивалентные 1 метру, ваши персонажи и объекты могут оказаться меньше.
Чтобы устранить эту проблему, перейдите в редакторе скелетной сетки на панель Сведения о ресурсе и задайте новое значение для сетки с помощью свойства Импортировать с равномерным масштабированием. После этого на панели инструментов редактора нажмите на кнопку Повторно импортировать базовую сетку.
Вращение
Если скелет, скелетная сетка или ресурсы анимации вашего персонажа неправильно повёрнуты в окне просмотра, это можно исправить, открыв ресурс в соответствующем редакторе.
На панели Сведения о ресурсе задайте значение для свойства Поворот при импорте, затем нажмите Повторно импортировать базовую сетку на панели инструментов редактора ресурсов. После завершения процесса ресурс в Unreal Engine должен быть повёрнут правильно.
Из-за различий в системах координат между Unity и Unreal Engine значение 90,0 для оси X должно устранить любые проблемы с поворотом для ресурсов вашей скелетной сетки или последовательностей анимации.
Свойства преобразования сцены
На панели ресурса Сведения о ресурсе можно включить свойства Преобразовать сцену, Использовать переднюю ось и Преобразовать единицы сцены, чтобы во время воспроизведения исправить любые разорванные сетки или сетки неправильной формы. После включения любого из этих свойств для применения изменений нажмите Повторно импортировать базовую сетку на панели инструментов редактора ресурса.
Одновременное редактирование нескольких ресурсов
При импорте ресурсов в Unreal Engine может возникнуть необходимость внести одинаковые изменения в настройки нескольких ресурсов, например скорректировать поворот или масштаб при импорте. Вместо того чтобы редактировать каждый ресурс по отдельности, можно воспользоваться пакетным редактированием и применить одно и то же значение настройки или свойства ко всем выбранным ресурсам одновременно.
Выполните для этого следующие действия:
Выберите каждый ресурс, который вы хотите отредактировать, в Каталоге ресурсов, нажав Shift + ЛКМ.
Нажмите правой кнопкой мыши на выбранные ресурсы и выберите в контекстном меню настройку Действия с ресурсами > Редактировать выбор в матрице свойств.
Свойства каждого ресурса теперь доступны на панели Сведения о ресурсе, где можно выполнить поиск или перейти к определённому свойству, чтобы применить настройку ко всем ресурсам сразу.
Схемы с анимацией
После импорта ресурсов персонажа со скелетной сеткой и его последовательности анимации для управления воспроизведением анимации и логикой во время выполнения можно использовать Animation Blueprint. С помощью графов схемы можно выбирать анимации для воспроизведения, смешивать их и накладывать друг на друга. Подробнее об использовании схем Animation Blueprint для воспроизведения анимаций в проекте: раздел Animation Blueprint.
Текстуры
Текстуры представляют собой ресурсы изображений, в основном используемые в материалах и применяемые к объектам. Их также можно использовать и для других целей, к примеру для HUD-интерфейса.
Unreal Engine отрисовывает текстуры, используя подгрузку текстур для оптимизации загрузки текстур в сцену. Система подгрузки текстур использует мип-карты. Это предварительно рассчитанная последовательность изображений одной текстуры в разных разрешениях.
Подробнее о текстурах в Unreal Engine см. в разделе Textures (Текстуры).
Экспорт текстуры из Unity
Unity хранит файлы текстур, сохранённые в их исходном формате, в каталоге проекта, поэтому экспортировать текстуру из Unity нет необходимости. Вместо этого вы можете просто скопировать файлы из каталога проекта.
Выполните следующие действия, чтобы найти файл текстуры в каталоге проекта Unity:
Нажмите правой кнопкой мыши на файле текстуры в окне Project (Проект) и выберите Show in Explorer (Показать в Проводнике).
Теперь вы видите файлы внутри каталога проекта. Вы можете скопировать файлы из каталога или использовать путь к этой папке для поиска файлов из Unreal Engine.
Импорт текстуры в Unreal Engine
Чтобы импортировать текстуру в Unreal Engine, выполните следующие действия:
Откройте Unreal Engine и нажмите Импорт в Каталоге ресурсов.
Перейдите в папку проекта Unity, где находятся текстуры, выберите файлы текстур и нажмите Открыть.
Также после использования настройки Show in Explorer (Показать в Проводнике) в Unity вы можете перетащить файлы из проводника прямо в Каталог ресурсов Unreal Engine для импорта.
Теперь текстуры импортированы в Unreal Engine.
Чтобы узнать, как использовать текстуры в материале, ознакомьтесь с разделом Шейдеры и материалы ниже.
Шейдеры и материалы
Материалы в Unreal Engine определяют свойства поверхности объектов в сцене. В самом широком смысле материал можно представить как «краску», которая наносится на сетку для изменения её внешнего вида.
В более техническом смысле материалы точно сообщают движку отрисовки, как поверхность должна взаимодействовать со светом в сцене. От материалов зависит каждый аспект поверхности: цвет, отражательная способность, неровности, прозрачность и т. д. Эти расчёты выполняются с использованием данных, которые поступают в материал из различных изображений (текстур) и выражений материала, основанных на узлах, а также из различных настроек свойств, присущих самому материалу.
Подробнее о материалах в Unreal Engine: раздел Materials (Материалы).
Экспорт материала из Unity
Shader Graph (Граф шейдера) в Unity используется для визуального построения шейдеров. В Unity также есть материалы, которые могут ссылаться на ресурс Shader Graph (Граф шейдера) и напрямую применяться к объектам GameObject.
Материалы Unreal Engine преобразуются в шейдеры внутри системы и создаются с использованием Редактора материалов, в котором материалы также создаются на основе узлов.
Ресурс Shader Graph (Граф шейдера) нельзя напрямую экспортировать из Unity и преобразовать в Material Graph (Граф материала) в Unreal Engine. Однако можно экспортировать все соответствующие текстуры из Unity в Unreal Engine и перестроить сеть узлов Shader Graph (Граф шейдера) в Редакторе материалов Unreal Engine.
В этом примере представлен Lit Shader Graph (Граф подсвеченного шейдера), содержащий текстуру, применённую к базовому цвету, и ещё одну текстуру, применённую в качестве карты нормалей.
Экспортируйте обе эти текстуры из Unity, выполнив действия, описанные в разделе Текстуры этого документа.
Импорт материала в Unreal Engine
Поскольку напрямую импортировать материал из Unity нельзя, нужно перестроить Shader Graph (Граф шейдера), представленный выше, в Material Editor (Редакторе материалов) Unreal Engine.
Для создания материала выполните следующие действия:
Импортируйте текстуры в Unreal Engine, выполнив действия, описанные в разделе Текстуры этого документа.
Нажмите правой кнопкой мыши в Каталоге ресурсов, а затем нажмите Материал, чтобы создать новый материал. Назовите ресурс M_Bricks.
Дважды нажмите M_Bricks, чтобы открыть Редактор материалов.
Выберите текстуры в Каталоге ресурсов и перетащите их в Редактор материалов, чтобы создать два узла Образец текстуры.
Соедините узел Образец текстуры который ссылается на рассеянную текстуру, с выводом Базовый цвет узла материала. Затем соедините узел Образец текстуры, который ссылается на текстуру карты нормалей, с выводом Нормаль узла материала.
В узле материала введите значения 0,2 для параметра Глянец и 0,8 для параметра Шероховатость. Нажмите Сохранить, чтобы скомпилировать и сохранить материал.
В окне просмотра нажмите Добавить + > Формы > Куб, чтобы добавить статичную сетку в форме куба на уровень.
Выберите M_Bricks в Каталоге ресурсов и перетащите его на статичную сетку в форме куба на уровне, чтобы применить материал.
Подробнее о конвейере материалов в FBX: раздел FBX Material Pipeline (Конвейер материалов в FBX).
Эффекты частиц
В Unity для создания симуляций частиц графическим процессором используется Visual Effects Graph (Граф визуальных эффектов). Эта система использует интерфейс на основе узлов для создания эффектов и может симулировать большое количество частиц во время игрового процесса.
Система визуальных эффектов Niagara — это система визуальных эффектов Unreal Engine нового поколения. В Niagara можно программировать и настраивать каждую деталь, а также использовать расширенные инструменты для отладки, визуализации и оценки производительности.
Системы Niagara содержат один или несколько генераторов, которые можно объединять для создания сложных эффектов. Генераторы могут создавать частицы на ЦП или ГПУ независимо друг от друга и могут отрисовывать свои частицы в виде спрайтов, сеток, декалей, источников освещения и лент. Системы Niagara также имеют функцию наследования, то есть вы можете создать главную систему Niagara и получить из неё несколько дочерних систем.
Опытные пользователи могут создавать пользовательские модули непосредственно в системе, чтобы полностью контролировать поведение генератора. В Niagara также есть готовые шаблоны, в том числе полный набор примеров симуляции текучих сред для 2D- и 3D-газов, жидкостей и мелководья.
Частицы Niagara могут взаимодействовать с окружением с помощью полей расстояний сеток, коллизии и модуля NeighborGrid3D, который позволяет задать сложное поведение частиц BOID, например скопление.
Niagara поддерживает входные данные из других систем Unreal Engine, к примеру данные физики, анимации и кода Blueprint. Она также поддерживает входные данные из внешних источников.
Visual Effects Graph (Граф визуальных эффектов) Unity нельзя напрямую экспортировать и импортировать в Unreal — вам придётся воссоздавать свои эффекты в Niagara. Во многих эффектах используются материалы и текстуры, которые можно экспортировать. Процесс экспорта текстур из Unity описан в разделе Текстуры этого документа.
Подробнее о Niagara см. в разделе Creating Visual Effects (Создание визуальных эффектов).
Звук
Звуковая система Unity может импортировать и воспроизводить различные форматы аудиофайлов в трёхмерном пространстве. Она также может применять множество дополнительных эффектов в среде выполнения, к примеру реверберацию.
Unreal Audio Engine — это надёжный звуковой движок с огромным количеством функций на всех платформах, поддерживаемых Unreal Engine.
Он поставляется вместе с мультиплатформенным микшером, который обеспечивает цифровую обработку звуковых сигналов (DSP), процедурный синтез, настраиваемый граф субмикса и универсальный API C++.
Функции нового поколения, такие как MetaSounds, звуковая модуляция, звуковой анализ и поддержка настраиваемых интерактивных и процедурных музыкальных систем, позволяют создавать насыщенные интерактивные звуки для ваших игр без необходимости использовать промежуточное звуковое программное обеспечение, такое как FMOD или Wwise.
Подробнее о звуках в Unreal Engine см. в разделе Audio in Unreal Engine 5 (Звук в Unreal Engine 5).
Экспорт аудиофайла из Unity
Unity хранит аудиофайлы, сохранённые в их исходном формате, в каталоге проекта, поэтому экспортировать аудиофайлы из Unity нет необходимости. Вместо этого вы можете просто скопировать файл из каталога проекта.
Выполните следующие действия, чтобы найти аудиофайл в каталоге проекта Unity:
Нажмите правой кнопкой мыши на аудиофайле в окне Project (Проект) и выберите Show in Explorer (Показать в Проводнике).
Аудиофайл появится в каталоге проекта. Вы можете скопировать файл из каталога или использовать путь к этой папке для поиска файла из Unreal Engine.
Импорт аудиофайла в Unreal Engine
Чтобы импортировать аудиофайл в Unreal Engine, выполните следующие действия:
Откройте Unreal Engine и нажмите Импорт в Каталоге ресурсов.
Перейдите в папку проекта Unity, где находится аудиофайл, выберите аудиофайл и нажмите Открыть.
Также после использования настройки Show in Explorer (Показать в Проводнике) в Unity вы можете перетащить файл из проводника прямо в Каталог ресурсов Unreal Engine для импорта.
Теперь аудиофайл импортирован в Unreal Engine.
Нажмите правой кнопкой мыши на аудиофайл в Каталоге ресурсов, а затем нажмите Создать звуковую схему, чтобы создать ресурс звуковой схемы. Это стандартный звуковой ресурс в движке, который используется для воспроизведения звуков в игре.
Подробнее о звуковых схемах см. в разделе Sound Cues (Звуковые схемы). Также рекомендуем изучить раздел MetaSounds, поскольку эти инструменты предусматривают более расширенные функции в сравнении со звуковыми схемами.
Видео
Компонент проигрывателя видео Unity прикрепляет видеофайлы к объектам GameObject и предусматривает несколько вариантов воспроизведения видеофайлов в сцене.
В Unreal Engine предусмотрен полнофункциональный фреймворк Media Framework, который содержит схожие функции. Она поддерживает различные форматы видеофайлов и оптимизирует воспроизведение. Она также поддерживает аппаратное обеспечение для записи аудио/видео на устройствах Windows и Android.
Подробнее о воспроизведении видеофайла в Unreal Engine: раздел Play a Video File (Воспроизведение видеофайла).
Экспорт видеофайла из Unity
Unity хранит видеофайлы, сохранённые в их исходном формате, в каталоге проекта, поэтому экспортировать видео из Unity нет необходимости. Вместо этого вы можете просто скопировать файл из каталога проекта.
Выполните следующие действия, чтобы найти видеофайл в каталоге проекта Unity:
Нажмите правой кнопкой мыши на видеофайле в окне Project (Проект) и выберите Show in Explorer (Показать в Проводнике).
Файл появится в каталоге проекта. Вы можете скопировать файл из каталога или использовать путь к этой папке для поиска файла из Unreal Engine.
Импорт видеофайла в Unreal Engine
Чтобы импортировать видеофайл в Unreal Engine, выполните следующие действия:
Откройте Unreal Engine и нажмите Импорт в Каталоге ресурсов.
Перейдите в папку проекта Unity, где находится видео, выберите видеофайл и нажмите Открыть.
Также после использования настройки Show in Explorer (Показать в Проводнике) в Unity вы можете перетащить файл из проводника прямо в Каталог ресурсов Unreal Engine для импорта.
Теперь видеофайл импортирован в Unreal Engine. В Каталоге ресурсов автоматически создаётся актор Проектор медиа, который можно перетащить на уровень для воспроизведения видеофайла.
Выберите видеофайл в Каталоге ресурсов и перетащите его на уровень.
Перейдите к панели Сведения и прокрутите вниз до раздела Управление (актор Проектор медиа должен быть выбран).
Установите флажки Воспроизводить при открытии, Автоматическое воспроизведение и Включить звук.
Если необходимо, поставьте флажок Зациклить, чтобы видео воспроизводилось по кругу бесконечно.
Вы также можете прокрутить вниз до раздела Геометрия и скорректировать настройки геометрии, установленные для воспроизведения видео («Плоскость», «Сфера» или «Настраиваемая»), Соотношение сторон, а также Соотношение сторон Letterbox. В этом примере включена настройка Автоматическое соотношение сторон, чтобы при воспроизведении форма соответствовала исходному соотношению сторон видеофайла.
Нажмите Симулировать, чтобы воспроизвести видео внутри уровня.
Подробнее об акторе проектора медиа см. в разделе Media Plate Actor (Актор проектора медиа).
Управление камерой и последовательности внутриигрового видео
В Unity есть несколько инструментов для создания кинематографического контента. Инструмент Timeline (Временная шкала) используется для создания последовательностей внутриигрового видео в редакторе, а Cinemachine — это набор инструментов для управления камерой.
При их совместном использовании разработчики могут создавать динамичные последовательности внутриигрового видео в среде выполнения.
Sequencer — это многодорожечный редактор Unreal Engine, используемый для создания и предварительного просмотра последовательностей внутриигрового видео в реальном времени.
Он содержит надёжные инструменты кинематографии для создания последовательностей анимации и внутриигрового видео. Вы можете управлять камерами для создания эффектов пролёта по уровню, анимации освещения, перемещения объектов и персонажей, отрисовки выходных последовательностей и проч.
Анимации и поведение камеры, созданные в Timeline (Временная шкала) и Cinemachine, нельзя напрямую экспортировать из Unity в Unreal Engine. Для этого нужно воссоздать это поведение с помощью Sequencer.
Подробнее о Sequencer см. в разделе Cinematics and Sequencer (Внутриигровое видео и Sequencer).
Код и визуальные сценарии
Языком программирования Unity по умолчанию является C#, а в Unreal в качестве нативного языка используется C++. В Unity также есть язык визуальных сценариев Bolt, который схож с языком визуальных сценариев Blueprint.
Сценарии Unity C# и файлы сценариев Bolt нельзя напрямую экспортировать из Unity и импортировать в Unreal Engine. Для этого необходимо создать функции с помощью C++ или Blueprints.
Подробнее о наиболее часто встречающихся элементах и практических рекомендациях к программированию в Unreal Engine см. в разделе Creating Gameplay in Unreal Engine (Создание игрового процесса в Unreal Engine).
2D-ресурсы
Paper 2D — это основанная на спрайтах система для создания 2D и 2D/3D гибридных игр на движке Unreal Engine. Система Paper 2D использует файлы текстур, привязанные к плоским игровым объектам, для представления 2D-персонажей, объектов и фона в проекте Unreal Engine.
Подробнее о Paper 2D и создании 2D-проектов в Unreal Engine см. в разделе Paper 2D.
Экспорт 2D-ресурсов из Unity
Для экспорта 2D-ресурсов из Unity сделайте следующее:
Нажмите правой кнопкой мыши в окне Project (Проект) и выберите Show In Explorer (Показать в проводнике), чтобы открыть место расположения ресурса на вашем компьютере.
Файл появится в каталоге проекта. Вы можете скопировать файл из каталога или использовать путь к этой папке для поиска файла из Unreal Engine.
Импорт 2D-ресурсов в Unreal Engine
Чтобы импортировать 2D-ресурс в Unreal Engine, выполните следующие действия:
Откройте Unreal Engine и нажмите Импорт в Каталоге ресурсов.
Перейдите в папку проекта Unity, где находится 2D-файл, выберите 2D-файл и нажмите Открыть, чтобы импортировать ресурс.
Теперь 2D-ресурс импортирован в Unreal Engine
После импорта файла вы можете использовать его для создания 2D-ресурсов или анимаций с помощью Paper 2D.
Подробнее об импорте ресурсов, создании спрайтов и анимаций кинеографа см. в разделе Paper 2D.
Ресурсы SpeedTree
SpeedTree — это набор продуктов для создания растительности, изменяющейся в реальном времени, а также потокового мультимедиа. Он включает в себя инструмент моделирования деревьев и готовые ресурсы, которые можно приобрести и импортировать непосредственно в Unreal Engine.
Подробнее об использовании SpeedTree в Unreal Engine см. в разделе Introduction to SpeedTree for Unreal Engine (Знакомство со SpeedTree для Unreal Engine) документации SpeedTree.