Skip to content

UiPostEffectUniforms

Container for post-processing shader uniforms with static values and dynamic suppliers.

Overview

UiPostEffectUniforms provides a fluent builder for binding uniforms to a post-effect pass. Unlike standard static uniforms, it supports dynamic suppliers (Supplier<Float>, Supplier<ShaderUniform>), allowing real-time animation (such as time-based wave phases or game health percentages) without rebuilding the pass.

Binding Dynamic Uniforms

UiPostEffectUniforms uniforms = UiPostEffectUniforms.create()
    .floatValue("intensity", 0.85f)
    .vec2("center", 0.5f, 0.5f)
    .floatSupplier("time", () -> (System.currentTimeMillis() % 10000) / 1000.0f);

API

UiPostEffectUniforms::boolValue(String, boolean)

boolValue(String, boolean)

Sets a boolean uniform as 0 or 1.

Parameter Type Description
name String Uniform name.
value boolean Boolean value.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..

UiPostEffectUniforms::color(String, ColorView)

color(String, ColorView)

Sets a color as a 4-component vector uniform.

Parameter Type Description
name String Uniform name.
color ColorView ColorView instance.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..

UiPostEffectUniforms::copy()

copy()

Returns an independent copy of this container.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..

UiPostEffectUniforms::create()

create()

Creates a new empty uniforms container.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..

UiPostEffectUniforms::empty()

empty()

Returns an empty uniforms container.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..

UiPostEffectUniforms::floatSupplier(String, Supplier)

floatSupplier(String, Supplier)

Sets a dynamic float supplier uniform.

Parameter Type Description
name String Uniform name.
supplier Supplier Float supplier.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..

UiPostEffectUniforms::floatValue(String, float)

floatValue(String, float)

Sets a static float uniform.

Parameter Type Description
name String Uniform name.
value float Float value.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..

UiPostEffectUniforms::intValue(String, int)

intValue(String, int)

Sets a static integer uniform.

Parameter Type Description
name String Uniform name.
value int Int value.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..

UiPostEffectUniforms::isEmpty()

isEmpty()

Returns true if this container has no uniforms.

Returns boolean: Resulting boolean..

UiPostEffectUniforms::resolve()

resolve()

Resolves all static and dynamic values into a ShaderUniforms snapshot.

Returns ShaderUniforms: Resulting ShaderUniforms..

UiPostEffectUniforms::set(String, ShaderUniform)

set(String, ShaderUniform)

Sets a static shader uniform value.

Parameter Type Description
name String Uniform name.
uniform ShaderUniform ShaderUniform value.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..

UiPostEffectUniforms::setDynamic(String, Supplier)

setDynamic(String, Supplier)

Sets a dynamic supplier evaluated before each pass.

Parameter Type Description
name String Uniform name.
supplier Supplier Supplier function.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..

UiPostEffectUniforms::vec2(String, float, float)

vec2(String, float, float)

Sets a 2-component vector uniform.

Parameter Type Description
name String Uniform name.
x float X component.
y float Y component.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..

UiPostEffectUniforms::vec3(String, float, float, float)

vec3(String, float, float, float)

Sets a 3-component vector uniform.

Parameter Type Description
name String Uniform name.
x float X component.
y float Y component.
z float Z component.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..

UiPostEffectUniforms::vec4(String, float, float, float, float)

vec4(String, float, float, float, float)

Sets a 4-component vector uniform.

Parameter Type Description
name String Uniform name.
x float X component.
y float Y component.
z float Z component.
w float W component.

Returns UiPostEffectUniforms: Resulting UiPostEffectUniforms..