Video Tutorials
Interface
Essentials
Advanced
Полезные советы
UnigineEditor
Interface Overview
Assets Workflow
Settings and Preferences
Working With Projects
Adjusting Node Parameters
Setting Up Materials
Setting Up Properties
Lighting
Landscape Tool
Using Editor Tools for Specific Tasks
Extending Editor Functionality
Программирование
Fundamentals
Setting Up Development Environment
Usage Examples
UnigineScript
C++
C#
UUSL (Unified UNIGINE Shader Language)
File Formats
Rebuilding the Engine Tools
GUI
Double Precision Coordinates
API
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
Работа с контентом
Materials
Art Samples
Tutorials

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

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

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 для деревьев-импосторов и т.д.).
Последнее обновление: 02.10.2020