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
Работа с контентом
Content Optimization
Materials
Art Samples
Tutorials

Отображение теней с параллельным разделением

Параллельно-разделенное отображение теней (PSSM) - это усовершенствованная техника отображения теней, которая устраняет некоторые проблемы, возникающие при использовании стандартной карты теней.

Идея PSSM состоит в разделении пирамиды обзора на слои глубины, параллельные плоскости обзора, и визуализации независимых карт теней для разделенных частей. В зависимости от расстояния от зрителя для отображаемых точек требуется разная частота дискретизации. Обеспечить достаточную плотность дискретизации во всем диапазоне сложно из-за сложности геометрии сцены. Однако разделение пирамиды обзора на более мелкие части с разными диапазонами глубины оптимизирует распределение пикселей текстуры и обеспечивает повышенную частоту дискретизации.

Создание PSSM#

Есть 4 основных шага в создании карты теней с параллельным разделением.

Шаг 1. Разбиение пирамиды вида на несколько частей по глубине.#

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

PSSMs distribution

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

Шаг 2. Разделение усеченной пирамиды источника света.#

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

PSSM range

Шкала дальности определяет точное протяженность разделенных частей усеченной пирамиды источника света. Например, выбор большего масштаба позволяет высоким объектам (например, деревьям или домам) отбрасывать тень на сцену, даже если они не включены в нее напрямую.

Шаг 3. Визуализация PSSM.#

Каждая карта теней последовательно визуализируется с соответствующим разрешением и параметрами для каждой разделенной части.

Шаг 4. Синтезирование теней.#

Сгенерированные PSSM позволяют синтезировать теневые эффекты для всей сцены. Алгоритм такой же, как и при стандартном отображении теней. Единственная разница заключается в выборе правильной карты теней из PSSM при определении, затенен ли пиксель.

Преимущества и недостатки#

По сравнению со стандартной техникой отображения теней, отображение теней с параллельным разделением имеет следующие преимущества, которые важны для крупномасштабных виртуальных сред:

  • Значительное уменьшение ошибок наложения спектров за счет увеличения частоты дискретизации в пространстве текстур.
  • Успешная обработка случая дуэльной фруста, когда направления света и обзора почти противоположны.
  • Полное использование доступного разрешения карты теней при улучшении динамических эффектов затенения.
  • Схема разделения, не требующая дорогостоящего анализа сцены.

Также возникают трудности с практической реализацией PSSM:

  • Для создания карт теней и синтеза теней требуется несколько проходов рендеринга, в результате чего стоимость производительности меняется на качество: в типичных случаях количество полигонов, визуализируемых с использованием метода PSSM, намного больше по сравнению со стандартной картой теней.
  • Следует тщательно выбирать стратегию хранения, в противном случае это может вызвать значительную нагрузку на доступные интерполяторы.
  • Плоскости разделения в PSSM создают неоднородности, которые могут мешать фильтрации текстур.
Примечание
Принимая во внимание все преимущества и недостатки этой техники, рекомендуется использовать PSSM только с глобальными источниками света, которые освещают всю сцену.
Последнее обновление: 10.10.2020