This page has been translated automatically.
Видеоуроки
Интерфейс
Основы
Продвинутый уровень
Подсказки и советы
Основы
Программирование на C#
Рендеринг
Профессиональный уровень (SIM)
Принципы работы
Свойства (properties)
Компонентная Система
Рендер
Режимы вывода изображения
Физика
Браузер SDK 2
Лицензирование и типы лицензий
Дополнения (Add-Ons)
Демонстрационные проекты
API Samples
Редактор UnigineEditor
Обзор интерфейса
Работа с ассетами
Контроль версий
Настройки и предпочтения
Работа с проектами
Настройка параметров ноды
Setting Up Materials
Настройка свойств
Освещение
Sandworm
Использование инструментов редактора для конкретных задач
Расширение функционала редактора
Встроенные объекты
Ноды (Nodes)
Объекты (Objects)
Эффекты
Декали
Источники света
Geodetics
World-ноды
Звуковые объекты
Объекты поиска пути
Player-ноды
Программирование
Основы
Настройка среды разработки
Примеры использования
C++
C#
UnigineScript
Унифицированный язык шейдеров UUSL (Unified UNIGINE Shader Language)
Плагины
Форматы файлов
Материалы и шейдеры
Rebuilding the Engine Tools
Интерфейс пользователя (GUI)
Двойная точность координат
API
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
Работа с контентом
Оптимизация контента
Материалы
Визуальный редактор материалов
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Учебные материалы

Переход на UNIGINE с Unreal Engine

Этот раздел дает краткий обзор UNIGINE с точки зрения пользователя Unreal Engine и предоставляет основную информацию, которая поможет вам перенести ваш опыт работы с Unreal Engine на UNIGINE.

Примечание
Пожалуйста, сначала ознакомьтесь с требованиями к оборудованию .

Быстрый глоссарий#

В этой главе сопоставляются общие термины Unreal Engine слева и их эквиваленты в UNIGINE (или приблизительный эквивалент) справа. Ключевые слова UNIGINE напрямую связаны со связанными статьями, чтобы предоставить вам более подробную информацию.

CategoryUnreal EngineUNIGINE
Editor UIWorld Outliner World Nodes Hierarchy window
Details PanelParameters window
Content BrowserAsset Browser window
ViewportEditor Viewport
SceneLevelWorld
Gameplay TypesActor, Pawn Node
Blueprint ClassNodeReference + Component System
MeshesStatic MeshStatic Mesh, Dynamic Mesh
Skeletal MeshSkinned Mesh
EffectsEffect, Particle, Cascade Particle System
Game UIUMG (Unreal Motion Graphics)GUI
MaterialsMaterial, Material EditorBase Material
Material InstanceUser Material
ProgrammingC++C++ / C#
BlueprintUnigineScript
PhysicsLine TracegetIntersection
Primitive ComponentRigid Body
CollisionShape
Physics ConstraintJoint
AnimationSequencerTracker

Управление проектами и SDK#

Как пользователь Unreal Engine вы привыкли использовать Epic Games Launcher - приложение, которое упрощает поиск, загрузку и управление вашими проектами и установками. В дополнение к этому вы можете управлять своими проектами напрямую через Unreal Editor: создавать новый проект и переключаться между существующими.

UNIGINE SDK Browser - это первый шаг к началу работы с UNIGINE Engine. Это приложение включает в себя все задачи, связанные с проектом, и позволяет вам управлять своими проектами и установленными SDK, а также предоставляет вам доступ к примерам и базе знаний.

Epic Games Launcher and UNIGINE SDK Browser Comparison (click to enlarge)

Epic Games Launcher и сравнение браузера UNIGINE SDK

UNIGINE предоставляет несколько рабочих процессов программирования , чтобы легко адаптировать ваш опыт программирования в Unreal Engine, вам рекомендуется использовать C ++ Component System . Создание проекта с использованием этого рабочего процесса в SDK Browser выполняется следующим образом:

  1. Нажмите Create New в разделе My Projects;
  2. Среди других опций выберите тип проекта C++ (Visual Studio 2022) в поле API + IDE;
  3. Если вы хотите сделать проект совместимым с поддерживаемыми гарнитурами VR, выберите опцию VR в поле Template. Это позволит включить необходимые плагины и добавить ассеты шаблона (подробнее о VR-совместимости );
  4. Отметьте функцию Component System, если она еще не включена.
  5. Щелкните Create New Project.
  6. По завершении щелкните Open Editor, чтобы запустить UnigineEditor; щелкните Open Code IDE, чтобы открыть исходный код проекта через IDE по умолчанию.
Примечание
Экземпляры редактора UNIGINE запускаются для каждого проекта. Вам нужно будет запустить еще один экземпляр UNIGINE Editor для другого проекта.

Интерфейс редактора#

Ниже вы можете увидеть интерфейсы файлов Unreal Editor и UnigineEditor. Элементы интерфейса на изображениях имеют цветовую кодировку для обозначения общих функций. Каждый элемент имеет метку для отображения эквивалента UNIGINE. Макет UnigineEditor полностью настраиваемый путем изменения размера, перетаскивания окон с вкладками.

Unreal and UNIGINE Editor UI Comparison (click to enlarge)

Сравнение пользовательского интерфейса редактора Unreal и UNIGINE

Чтобы узнать больше об интерфейсе UnigineEditor, прочтите эту статью .

Окна просмотра (Viewports)#

Unreal Editor Viewports и Editor Viewports в UnigineEditor очень похожи. Вы можете использовать столько окон просмотра Editor , сколько вам нужно.

По умолчанию Viewport Editor отображает собственное представление Editor Camera, и вы можете переключиться на другую камеру , присутствующую в сцене, и управлять ею так же, как вы пилотируете CameraActor в UE.

Навигация внутри видовых экранов редактора почти такая же, как и в видовых экранах UE. Однако ознакомьтесь с навигацией по сценам , чтобы не упустить детали.

Unreal Editor Viewport
UNIGINE Editor Viewport

Вы можете использовать:

  • Camera panel для переключения между камерами и настройки текущей.
  • Rendering Debug для отображения содержимого буферов рендеринга так же, как при использовании Buffer Visualization Mode в UE4.
  • Navigation panel для быстрой настройки и переключения между предустановками скорости камеры и изменения положения камеры.
  • ViewCube для переключения между перспективной / ортогональной проекцией и управлением ориентацией камеры.

Также, набор переключателей доступен глобально на верхней панели инструментов:

Игра и моделирование#

Вы привыкли, что Unreal Editor имеет режим Play In Editor (PIE), запускающий игру в текущем окне просмотра и представляющий вашу окончательную сборку. Вы также можете играть в других режимах и использовать режим Simulate In Editor (SIE) для предварительного просмотра логики чертежей, анимации и моделирования физики.

В UNIGINE вы можете включить анимацию и моделирование физики , используя переключатели на верхней панели инструментов. Вы можете открыть окно просмотра Engine (меню: Windows -> Engine Viewport), где вы можете управлять текущим Main Player.

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

  • Через браузер SDK , нажав Run:

    Вы также можете запустить приложение с пользовательскими настройками , щелкнув многоточие под кнопкой Run (например, выберите двоичные файлы отладки).

  • Используя соответствующий launcher, созданный по умолчанию в папке проекта:
    • launch_debug - лаунчер отладочной версии проекта.
    • launch_release - лаунчер релизной версии проекта.
  • Запуская проект прямо из используемой IDE.

По умолчанию курсор мыши захватывается при нажатии во время выполнения, обеспечивая управление движением камеры, нажмите Esc, чтобы освободить курсор. Есть два способа установить привязки ввода по умолчанию (состояния клавиш и поведение мыши):

Консоль#

Как и UE4, UNIGINE имеет Console , используемую для стандартного ввода, вывода и регистрации ошибок. Предоставляется набор консольных команд .

Он доступен как в UnigineEditor, так и в работающем приложении. Чтобы открыть окно консоли в редакторе, перейдите в меню Windows -> Console:

Встроенная консоль вызывается нажатием клавиши grave accent (`):

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

Финальная сборка проекта для публикации#

В Unreal Engine вы привыкли создавать свои проекты через редактор. В UNIGINE финальная сборка проекта также выполняется через UnigineEditor.

Проекты и файлы#

Каталоги и файлы#

Проект в UNIGINE, как и проект UE, хранится в собственной папке, настройки проекта хранятся в файле *.project. Внутри папки проекта есть различные подпапки, в которых хранятся ваш контент и исходные файлы, а также различные файлы конфигурации и двоичные файлы. Наиболее важными являются подпапки data и source.

В UNIGINE у каждого проекта есть папка data. Подобно папке Content проекта UE, здесь хранятся ассеты вашего проекта. Чтобы импортировать ассеты в проект, просто перетащите файлы в каталог проекта data, и они будут автоматически импортированы и появятся в Asset Browser . Ассеты в редакторе обновляются автоматически, когда вы вносите изменения в файлы с помощью внешней программы.

Взаимосвязь между содержимым папки data в корне вашего проекта на вашем компьютере и папкой Project в окне Asset Browser

Папка core содержит встроенные основные ассеты. Эти ассеты доступны только для чтения и по умолчанию доступны для каждого проекта.

Поддерживаемые типы файлов#

UNIGINE, как и UE, поддерживает наиболее часто используемые типы файлов и некоторые специфические :

Типы ассетов Поддерживаемые форматы
Геометрия .fbx, .obj, .3ds, .dae, .glb/.gltf, .stp/.step, .igs/.iges, .brep, .stl
Текстуры .png, .jpeg, .tif, .tga, .rgba, .psd, .hdr, .dds, and more
Звук и видео .wav, .mp3, .oga/.ogg, .ogv
Шрифты .ttf

Перенос ваших ассетов из Unreal Engine#

Ассеты Unreal Engine (.uasset) не поддерживаются для импорта UNIGINE. Используйте исходные файлы содержимого, которые вы использовали в своих проектах UE, или экспортируйте ассеты в один из форматов, поддерживаемых UNIGINE.

Меши

Вы можете импортировать ассеты, которые вы использовали в UE, в UNIGINE: экспортировать ваш меш как модель FBX и импортировать в UNIGINE, проверяя необходимые параметры импорта в зависимости от модели.

Примечание
Обратите внимание, что основная единица измерения в UNIGINE - один метр, а в UE4 - сантиметры. Рекомендуется уменьшить масштаб геометрии в 100 раз, установив множитель геометрии Scale на значение 0.01 при импорте.

Материалы

Подобно другим движкам, UNIGINE работает с материалами PBR . Более того, UNIGINE поддерживает рабочие процессы Metalness и Specular и имеет богатую готовую библиотеку материалов, которую можно использовать для создания практически любого материала. Следовательно, материалы, созданные для модели в UE, могут быть воссозданы в UNIGINE с использованием материала mesh_base , базового материала в UNIGINE, используемого для физически обоснованных материалов.

Текстуры

Текстуры можно импортировать как часть модели или отдельно, а затем применять к мешу. Чтобы импортировать текстуры , вам, возможно, придется заранее внести некоторые изменения. Например, текстура Shading в UNIGINE хранит карты металличности, шероховатости, отражения и микрофибры в своих соответствующих каналах (RGBA), поэтому вам необходимо изменить текстуру с помощью стороннего программного обеспечения, такого как GIMP или Photoshop, а затем импортировать ее. в UNIGINE.

Текстура Normal, используемая в UE, совместима с UNIGINE, поэтому вы можете импортировать свои обычные текстуры в UNIGINE без каких-либо изменений.

Анимация

Если вы хотите импортировать модель с анимацией костей, экспортируйте ее из UE в виде файла FBX и включите параметр Import Animations во время импорта в UNIGINE. У вас также будут дополнительные параметры для точной настройки импорта.

Для получения дополнительных сведений см. рекомендации по импорту .

Levels#

Концепция 3D сцены в обоих движках одинакова. Однако Unreal Engine и UNIGINE используют разные системы координат.

Unreal EngineUNIGINE

Unreal Engine Coordinate System (left-handed)

Отдельные 3D-сцены называются Levels (также называются Maps).

UE использует левостороннюю систему координат, в которой вертикальное направление обычно представлено осью +Z.

Оси и направления:

  • X - вперед (+), назад (-)
  • Y - вправо (+), влево (-)
  • Z - вверх (+), вниз (-)

Положительный угол поворота устанавливает вращение по часовой стрелке.

Формат файла: *.umap

UNIGINE Coordinate System (right-handed)

Отдельные 3D-сцены называются Worlds.

UNIGINE использует правостороннюю систему координат, в которой вертикальное направление обычно представлено осью +Z.

Оси и направления:

  • X - вправо (+), влево (-)
  • Y - вперед (+), назад (-)
  • Z - вверх (+), вниз (-)

Положительный угол поворота устанавливает вращение против часовой стрелки.

Формат файла: *.world


Чтобы изменить начальную карту вашего проекта в UE4, вы открываете Project Settings -> Maps & Modes и указываете карту по умолчанию для игры и редактора. В UNIGINE вы указываете Default World проекта при создании сборки (File -> Create Build). Что касается UnigineEditor и сборок для разработки, вы можете явно переопределить мир по умолчанию, запустив проект или редактор с пользовательскими настройками :

  1. В браузере SDK щелкните многоточие под кнопкой Run или Open Editor;
  2. В открывшейся форме Customize Run Options укажите следующий параметр командной строки запуска в поле Arguments:
    Shell-команды
    -console_command "world_load your_world_name"

Объекты сцены#

В этом разделе дается краткое описание основных объектов сцены в обоих движках, а также их основные сходства и различия.

Unreal EngineUNIGINE

Мировой Outliner

Базовый объект сцены - Actor.

Это базовый объект, который можно разместить или создать в мире.

Акторы могут быть организованы в иерархию (отношения родитель-потомок).

Actor - это контейнер для Components, определяющий его функциональность.

Положение, поворот и масштаб Актера хранятся в Scene Component. Обычно Actors имеет корневой компонент, который по умолчанию может быть любым подклассом Scene Component.

Программисты могут наследовать от UActorComponent по умолчанию, чтобы создать собственный компонент с использованием C ++ или Blueprint Script.

Окно иерархии мира

Node - это базовый тип, от которого наследуются все типы объектов сцены. Некоторые из них выглядят визуально: Objects , Decals и Effects - все они имеют поверхности для представления их геометрии (меш), а другие ( Источники света , Игроки и т. д.) невидимы.

Ноды могут быть организованы в иерархию (отношения родитель-потомок).

Базовая функциональность ноды определяется ее типом. Дополнительные функции можно добавить с помощью свойств и системы компонентов .

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

Примечание
Все объекты сцены, добавленные в сцену, независимо от их типа, называются нодами.

Классы Blueprint#

Рабочий процесс в UE основан на Blueprint Classes. Обычно вы строите сложный объект (Actor) из компонентов, выбираете его и нажимаете кнопку Blueprint / Add Script (на панели Details). Затем вы выбираете место для сохранения вашего Blueprint Class и нажимаете Create Blueprint, чтобы сохранить новый Blueprint Class.

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

Чтобы сделать сложный объект экземпляром в вашем мире, вы сохраняете ноду или иерархию нод как Node Reference , которую можно создать и отредактировать в редакторе или во время выполнения столько раз, сколько необходимо.

Чтобы узнать больше о создании Node References и управлении ими, перейдите по ссылке ниже:

Организация совместной работы#

Unreal Editor предоставляет возможность Source Control из коробки. Кроме того, его рабочий процесс многопользовательского редактирования построен на модели сервер-клиент, поддерживая ряд сеансов в общей среде для совместной работы.

В UNIGINE все собственные форматы файлов по умолчанию основаны на тексте, поэтому вы можете использовать любую VCS , к которой вы привыкли, и объединять миры, ноды и другие ресурсы. Вы можете расширить файловую систему, чтобы сохранить общие ресурсы, используя точки монтирования . Кроме того, обычным рабочим процессом является разделение работы разных членов команды с использованием отдельного Node Layers, поэтому не будет необходимости сопоставлять конфликтующие файлы при объединении изменений проекта.

Ознакомьтесь с соответствующей статьей для получения более подробной информации:

Камеры#

Камеры , сущности, необходимые для рендеринга, обрабатываются в обоих движках немного по-разному.

В UE4 CameraComponent отвечает за захват представления и отправку его на рендеринг. Обычно вы устанавливаете актера Pawn с присоединенным CameraComponent в качестве символа по умолчанию, указав его в настройках GameMode.

В UNIGINE Camera - это объект, связанный с рендерингом, который реализуется нодами Player в мире. Предусмотрено несколько типов игроков с различным поведением, чтобы упростить создание наиболее часто используемых камер, управляемых через устройства ввода (клавиатура, мышь, джойстик):

  • Dummy - это простая оболочка камеры. Вы можете использовать ее для статических камер или расширить ее функционал с помощью пользовательской логики.
  • Spectator - это свободно летающая камера.
  • Persecutor - это летающая камера, которая имеет цель и вращается вокруг нее на указанном расстоянии. Это готовое простое решение для камеры от третьего лица.
  • Actor - это игрок, способный обеспечить физическое взаимодействие с декорациями. Он имеет твердое физическое тело, которое приближается к форме капсулы. Это готовое к использованию простое решение для персонажа от первого лица.

Одновременно во вьюпорте может отображаться только один player. Для переключения между камерами в окне просмотра Editor UnigineEditor используйте панель Camera:

Проверяя флаг Main Player игрока, вы устанавливаете проигрыватель по умолчанию, который будет отображаться в окне просмотра Engine редактора и при запуске мира при запуске приложения.

Настройки проекта#

Общая настройка параметров проекта в Unreal Editor обычно выполняется через окно Project Settings. Аудио, рендеринг, физика, уровни ввода и другие параметры влияют на весь проект. Также панель World Settings предоставляет настройки для текущего Уровня.

В UNIGINE общие настройки и предпочтения доступны через меню Windows -> Settings в разделе Runtime. Настройки World устанавливаются для каждого мира отдельно.

Сохраненные конфигурации#

Вы используете кнопки Экспорт и Импорт в настройках проекта Unreal Editor, чтобы сохранить значения настроек во внешний файл конфигурации (.ini) и загрузить их при необходимости.

В UNIGINE вы можете сохранять и загружать общие настройки физики, звука и рендеринга таким же образом. Пресеты хранятся как ассеты с расширениями *.physics, *.sound и *.render соответственно. Для работы с пресетами соответствующего раздела настроек используйте кнопки Load и Save .* asset окна Settings.

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

Примечание
По умолчанию проект UNIGINE предоставляет настройки для предустановок качества low, medium, high, ultra и virtual reality, хранящиеся в папке data/template_render_settings.

Предустановки не доступны только для редактора в UNIGINE. Вы можете использовать Physics , Sound и Render классы для управления предустановками для соответствующих настроек, например, для переключения между уровнями качества во время выполнения.

Графика#

В UE4 настройки качества графики в основном собраны в разделе Engine - Rendering.

В UNIGINE настройки рендеринга мира можно найти в разделе Render окна Settings. Вы также можете включать и выключать наиболее распространенные функции рендеринга с помощью меню Rendering:

В UNIGINE нет настроек качества, зависящих от платформы, вы должны написать свою собственную логику для контроля уровня качества. Для этой цели вы можете использовать Presets Render Presets .

Отложенное и прямое затенение#

По умолчанию Unreal Engine использует отложенный рендерер . Вы можете переключиться на Forward Shading Renderer , который в некоторых случаях обеспечит лучшую производительность, в разделе Project Setting -> Rendering.

UNIGINE имеет фиксированную последовательность рендеринга , представленную комбинацией полного отложенного рендерера с методами прямого рендеринга:

  • Вся непрозрачная (непрозрачная) геометрия визуализируется в отложенном проходе.
  • Прозрачная геометрия отображается в прямом проходе.

Вы можете снизить вычислительную нагрузку, пропустив определенные этапы рендеринга. Посмотрите специальный видеоурок по использованию инструмента Microprofile для оптимизации рендеринга:

Постобработка#

Unreal Engine использует PostProcessVolume для определения объемов, в которых параметры и эффекты постобработки переопределяются локально (или глобально), параметры смешиваются с использованием линейной интерполяции. В UNIGINE вам нужно будет написать свою собственную логику для плавной интерполяции между настройками в разных местах (если появляется такое требование).

В этом разделе перечислены все распространенные методы постобработки UE4, которые также могут быть реализованы в UNIGINE.

Unreal Engine UNIGINE
Anti-aliasing methods:
  • FXAA
  • MSAA
  • TAA
Anti-aliasing methods:
Eye Adaptation (Auto-Exposure) Camera Effects:
Bloom
Filmic Tonemapper
White Balance
Dirt Mask
Lens Flare
Color Grading LUT (Lookup Texture)
Depth of Field Depth of Field
Post Process Materials Postprocess Materials
Chromatic Aberration The post_color_correction postprocess material
Film Grain
Screen Space Reflections SSR
Screen-Space Ambient Occlusion Screen-Space Ambient Occlusion
Screen Space Global Illumination SSRTGI
Contact Shadows Screen Space Shadows
Motion Blur Motion Blur
Screen Percentage Supersampling

Что дальше?#

Куда идти дальше?

Не забудьте прочитать другие темы этого руководства:

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

Последнее обновление: 24.06.2024
Build: ()