Header menu logo Mibo

IRenderPipeline3D Type

Interface for a pluggable 3D rendering pipeline. Owns how to turn a sorted buffer into pixels: pass order, shadow maps, lighting math, post-process.

The pipeline is the consumer of geometry, not the definer. It receives a buffer of Command3D and interprets them. The built-in forward pipeline (B5–B10) is the reference implementation; users may swap it for a deferred, SDF, or visibility-buffer pipeline without changing their view functions.

Instance members

Instance member Description

this.Execute

Full Usage: this.Execute

Parameters:
    gameCtx : GameContext - The current game context (window dimensions, services).
    gameTime : GameTime - The frame's time (total + elapsed) — surfaced to shaders as the time uniform for animation.
    buffer : RenderBuffer3D - The accumulated render commands for this frame.
    rtPool : IRenderTargetPool3D - Pooled render textures for intermediate targets (shadow maps, post-process ping-pong).

Modifiers: abstract

Executes all commands in the buffer, turning them into pixels. The pipeline dispatches each Command3D directly, handling pass order, shader binding, and render target management.

gameCtx : GameContext

The current game context (window dimensions, services).

gameTime : GameTime

The frame's time (total + elapsed) — surfaced to shaders as the time uniform for animation.

buffer : RenderBuffer3D

The accumulated render commands for this frame.

rtPool : IRenderTargetPool3D

Pooled render textures for intermediate targets (shadow maps, post-process ping-pong).

this.Initialize

Full Usage: this.Initialize

Modifiers: abstract

Called once when the renderer is created. Use for shader loading, mesh generation, and other one-time initialization.

this.Shutdown

Full Usage: this.Shutdown

Modifiers: abstract

Called once when the renderer is disposed. Use for shader unloading and resource cleanup.

Type something to start searching.