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

UiPostEffectPass

Конфигурация одного шейдерного прохода внутри конвейера пост-эффектов.

Обзор

UiPostEffectPass задает состояние рендера для одного вызова шейдера в цепочке. Объединяет ShaderHandle, параметры uniforms (UiPostEffectUniforms), дополнительные сэмплеры текстур (TextureHandle) и режим смешивания (UiPostEffectBlendMode).

Стандартные входные данные (SourceTexture, SourceSize, SourceFlipY) автоматически передаются графическим бэкендом.

Настройка прохода с параметрами и текстурой

UiPostEffectPass pass = UiPostEffectPass.shader("mymod:overlay")
    .blendMode(UiPostEffectBlendMode.ALPHA_BLEND)
    .texture("NoiseTexture", noiseTexHandle)
    .uniforms(u -> u.floatValue("intensity", 0.75f));

API

UiPostEffectPass::blendMode()

blendMode()

Возвращает режим смешивания прохода.

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

UiPostEffectPass::blendMode(UiPostEffectBlendMode)

blendMode(UiPostEffectBlendMode)

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

Параметр Тип Описание
blendMode UiPostEffectBlendMode Режим UiPostEffectBlendMode.

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

UiPostEffectPass::copy()

copy()

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

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

UiPostEffectPass::shader()

shader()

Возвращает копию дескриптора шейдера.

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

UiPostEffectPass::shader(ShaderHandle)

shader(ShaderHandle)

Создает проход из экземпляра ShaderHandle.

Параметр Тип Описание
shader ShaderHandle Экземпляр ShaderHandle.

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

UiPostEffectPass::shader(String)

shader(String)

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

Параметр Тип Описание
shaderId String ID ресурса шейдера.

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

UiPostEffectPass::shaderId()

shaderId()

Возвращает стабильный идентификатор шейдера.

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

UiPostEffectPass::texture(String, TextureHandle)

texture(String, TextureHandle)

Возвращает копию прохода с добавленной текстурой сэмплера.

Параметр Тип Описание
uniformName String Имя uniform-сэмплера.
texture TextureHandle Экземпляр TextureHandle.

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

UiPostEffectPass::textures()

textures()

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

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

UiPostEffectPass::uniforms()

uniforms()

Возвращает копию параметров uniforms прохода.

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

UiPostEffectPass::uniforms(Consumer)

uniforms(Consumer)

Возвращает копию прохода с настройкой uniforms через колбэк.

Параметр Тип Описание
config Consumer Конфигуратор uniforms.

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

UiPostEffectPass::uniforms(UiPostEffectUniforms)

uniforms(UiPostEffectUniforms)

Возвращает копию прохода с новым набором uniforms.

Параметр Тип Описание
uniforms UiPostEffectUniforms Новый набор uniforms.

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