Header menu logo Mibo

ForwardFrame Type

Per-frame scene state the PBR handlers read (passed byref, no allocation).

Record fields

Record Field Description

BonePaletteScratch

Full Usage: BonePaletteScratch

Field type: Matrix[]

The pooled bone-palette scratch (shared with the shadow pass) for skinned draws.

Field type: Matrix[]

Lights

Full Usage: Lights

Field type: LightBuffers

The frame's accumulated lights.

Field type: LightBuffers

PointShadowSlots

Full Usage: PointShadowSlots

Field type: int[]

Per-light shadow atlas slots (-1 = no shadow), indexed by PointLights position.

Field type: int[]

Shadows

Full Usage: Shadows

Field type: ShadowResult voption

The frame's shadow pass output — ValueNone when no shadow-casting light / missing DepthShadow.fx. The user-effect scope (PbrShading.shadeWithEffect) uploads these uniforms by name so a custom effect can opt into shadow sampling.

Field type: ShadowResult voption

SpotShadowSlots

Full Usage: SpotShadowSlots

Field type: int[]

Per-light shadow atlas slots (-1 = no shadow), indexed by SpotLights position.

Field type: int[]

Time

Full Usage: Time

Field type: float32

The total elapsed game time, in seconds (Game.TotalGameTime.TotalSeconds). Uploaded as the time uniform so an animated shader (water ripples, flowing textures, pulsing emissive) has a clock to read — the only animation input the scene-data contract provides.

Field type: float32

Type something to start searching.