This page has been translated automatically.
Видеоуроки
Интерфейс
Основы
Продвинутый уровень
Подсказки и советы
Основы
Программирование на C#
Рендеринг
Профессиональный уровень (SIM)
Принципы работы
Свойства (properties)
Компонентная Система
Рендер
Физика
Редактор 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
Учебные материалы
Внимание! Эта версия документация УСТАРЕЛА, поскольку относится к более ранней версии SDK! Пожалуйста, переключитесь на самую актуальную документацию для последней версии SDK.
Внимание! Эта версия документации описывает устаревшую версию SDK, которая больше не поддерживается! Пожалуйста, обновитесь до последней версии SDK.

Использование импосторов

Когда сцена содержит много объектов, которые должны быть видны на большом расстоянии, производительность приложения страдает. Чтобы уменьшить количество таких объектов, используются импосторы . Они позволяют ускорить рендеринг геометрии при сохранении визуальной точности: каждый импостор повторяет преобразование и внешний вид исходного объекта.

UNIGINE предоставляет инструмент Impostors Creator, который позволяет генерировать импосторы для одного объекта или для объектов, запеченных в Mesh Clutter :

  • В первом случае вместо реального объекта будет отображаться импостор на основе объекта Billboards .
  • Во втором случае будет отображаться объект Grass вместо Mesh Clutter.

Например, вы можете заменить деревья вдали импосторами, чтобы оптимизировать рендеринг леса:

Лес, оптимизированный с помощью деревьев-импосторов
Примечание
Создание импосторов показано в видеоуроке Content Optimization , оно доступно как для одиночного объекта , так и для объектов, запеченных в Mesh Cluster .

1. Генерация импосторов#

Примечание
Генерация импосторов не поддерживается для объектов с прозрачными материалами. Например. если у вас есть объект, использующий материал с включенным пресетом прозрачности Alpha Blend, созданный для него импостор не будет отображаться.

Чтобы сгенерировать импосторы с помощью инструмента Impostors Creator, выполните следующие действия:

  1. В строке меню выберите Tools -> Impostors Creator. Откроется инструмент Impostors Creator.

  2. В окне World Hierarchy выберите одиночный меш или клаттер , для которого нужно создать импостор.
    Примечание
    Импосторы могут быть созданы только для объектов Mesh Clutter,World Clutterне поддерживается.
    • Если вы выберете меш, будет создан одиночный импостор , представленный объектом Billboards.
    • Если вы выберете клаттер, будут созданы импосторы для всех клаттер-объектов , представленных объектом Grass.
  3. В окне Impostors Creator укажите необходимые текстуры и настройки .
    Примечание
    Если вы собираетесь сгенерировать импосторы для растительности, вы должны указать опцию For Vegetation для текстур (если она доступна).
  4. Щелкните Create и укажите имя текстур в открывшемся диалоговом окне файла.

Созданные импосторы будут добавлены в качестве дочерних узлов к исходному мешу / клаттеру:

  • Для объектов, запеченных в клаттер, будет добавлен объект Grass с материалом, унаследованным от grass_impostor_base. Все необходимые настройки будут скопированы с оригинала Mesh Clutter в объект Grass автоматически.

    Реальный клаттер и его импосторы в сцене
    Объекты и каркасы импосторов
  • Для одного объекта Billboards будет добавлен объект с материалом, унаследованным от billboards_impostor_base .

    Реальный объект (слева) и его импостор (справа) в сцене
    Каркасы объектов и импосторов

2. Настройка материала импостора#

Все текстуры, указанные в Impostors Creator, генерируются в папке data и автоматически применяются к материалу. Материал импостора может потребовать дополнительной настройки:

  • Если вы захватите только текстуры Albedo и Normal, вам придется вручную настроить другие параметры затенения материала импостора (Specular, Translucence и т. д.), чтобы импостор визуально соответствовал исходному объекту. Однако, если исходный объект имеет несколько поверхностей с разными оттенками, импосторы могут значительно отличаться (поэтому в этом случае лучше захватить все текстуры).
  • Для импосторов с растительностью параметр Specular должен быть установлен на 0 , чтобы избежать ненужных пятен на деревьях.
  • Если вы просто хотите улучшить визуальное представление импосторов, вы можете настроить параметры затенения (например, увеличить Translucence для деревьев-импосторов и т.д.).
Последнее обновление: 19.04.2024
Build: ()