Перейти к содержанию

UiPostEffectChain

Неизменяемая ссылка на конвейер пост-эффектов для UI-слоя.

Обзор

UiPostEffectChain инкапсулирует последовательность шейдерных проходов (pass), применяемых к закадровому буферу слоя. Цепочка может быть пустой (none()), ссылаться на ID зарегистрированного эффекта (of("unigui:tint")) или содержать встроенные проходы.

Бэкенд разрешает цепочки лениво в момент отрисовки. Если указанный ID не найден или бэкенд не поддерживает пост-эффекты, конвейер прозрачно откатывается к стандартному рендерингу без сбоев.

Создание цепочек эффектов

// Ссылка на зарегистрированный эффект
UiPostEffectChain vignetteChain = UiPostEffectChain.of("unigui:vignette");

// Пустая цепочка без эффектов
UiPostEffectChain cleanChain = UiPostEffectChain.none();

API

UiPostEffectChain::copy()

copy()

Возвращает независимую копию этой цепочки.

Возвращает UiPostEffectChain: Экземпляр UiPostEffectChain..

UiPostEffectChain::effectId()

effectId()

Возвращает идентификатор эффекта или null.

Возвращает String: Экземпляр String..

UiPostEffectChain::inlinePasses()

inlinePasses()

Возвращает список встроенных проходов, если они заданы напрямую.

Возвращает List: Экземпляр List..

UiPostEffectChain::isNone()

isNone()

Возвращает true, если цепочка пуста и не выполняет пост-обработку.

Возвращает boolean: Экземпляр boolean..

UiPostEffectChain::none()

none()

Возвращает пустую цепочку без пост-обработки.

Возвращает UiPostEffectChain: Экземпляр UiPostEffectChain..

UiPostEffectChain::of(List)

of(List)

Создает встроенную цепочку из списка шейдерных проходов.

Параметр Тип Описание
passes List Список проходов UiPostEffectPass.

Возвращает UiPostEffectChain: Экземпляр UiPostEffectChain..

UiPostEffectChain::of(String)

of(String)

Создает цепочку, ссылающуюся на ID зарегистрированного эффекта.

Параметр Тип Описание
effectId String Строковый идентификатор эффекта.

Возвращает UiPostEffectChain: Экземпляр UiPostEffectChain..

UiPostEffectChain::of(UiPostEffectDefinition)

of(UiPostEffectDefinition)

Создает цепочку с проходами из указанной дефиниции.

Параметр Тип Описание
definition UiPostEffectDefinition Дефиниция пост-эффекта.

Возвращает UiPostEffectChain: Экземпляр UiPostEffectChain..

UiPostEffectChain::resolve(UiPostEffectRegistry)

resolve(UiPostEffectRegistry)

Разрешает цепочку в упорядоченный список проходов через реестр.

Параметр Тип Описание
registry UiPostEffectRegistry Реестр UiPostEffectRegistry.

Возвращает List: Экземпляр List..