Header menu logo Mibo

Mibo.Elmish.Graphics3D.Pipelines Namespace

Type/Module Description

ForwardFrame (Type)

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

ForwardFrame (Type)

Per-frame scene state passed to ForwardPipelineBase.Shade.

ForwardPbrPipeline

The default raylib 3D forward PBR pipeline: a thin ForwardPipelineBase that inherits the camera/light/shadow gather and forward-pass orchestration unchanged, using the base's default Cook-Torrance PBR ForwardPipelineBase.Shade.

ForwardPipeline

The default MonoGame 3D forward pipeline: a thin ForwardPipelineBase that inherits the camera/light/shadow gather and forward-pass orchestration unchanged, using the base's default Cook-Torrance PBR ForwardPipelineBase.Shade.

ForwardPipelineBase (Type)

Staged forward 3D pipeline base for the MonoGame backend. Implements IRenderPipeline3D by dispatching Command3D values, split into reusable stages — ForwardPipelineBase.Execute (orchestration), the pre-scan gather, the shadow pass, and a virtual ForwardPipelineBase.Shade for per-draw shading. The default Shade routes the shaded draw kinds (model / animated model / primitive / instanced) through the custom Cook-Torrance PBR effect (ForwardPbr.fx), so imported models and instanced geometry get PBR + point/spot lights + shadows automatically. The only native-effect paths left are the billboards/lines (unlit BasicEffect) and DrawMeshEffect (user-supplied effect escape hatch).

ForwardPipelineBase (Type)

Abstract staged forward 3D pipeline base for the raylib backend. Implements IRenderPipeline3D by dispatching Command3D values, split into reusable stages — ForwardPipelineBase.Execute (orchestration), the pre-scan gather, the shadow pass, and a virtual ForwardPipelineBase.Shade for per-draw shading. The default Shade routes the shaded draw kinds (mesh / skinned mesh / model / instanced) through the cached Cook-Torrance PBR shaders, so models and instanced geometry get PBR + point/spot lights + shadows automatically. When a user-effect scope is open (beginEffect/endEffect), the default Shade uploads the scene data to the user shader by name via SceneUpload.

ForwardState

Per-frame forward-rendering state, threaded byref through dispatch.

LightBuffers (Module)

Convenience builders for LightBuffers.

LightBuffers (Module)

Convenience builders for LightBuffers.

LightBuffers (Type)

Per-pipeline light accumulator. Created once at construction; cleared and repopulated each frame (mirrors the canonical raylib LightBuffers double-scan pattern).

LightBuffers (Type)

Per-pipeline light accumulator. Created once at construction; cleared and repopulated each frame.

SceneContext (Type)

The scene state passed to a Draw3D.drawImmediate callback: the raw graphics device plus everything the pipeline gathered for the current frame (active camera, lights, the shadow pass output, elapsed time). Use it for fully-custom draws that need both device control and the scene data — water/refraction, screen-space effects, multi-pass.

SceneContext (Type)

The scene state passed to a Draw3D.drawImmediate callback: everything the pipeline gathered for the current frame (active camera, view/projection matrices, lights, the shadow pass output, elapsed time). Use it for fully-custom draws that need the scene data — water/refraction, screen-space effects, multi-pass.

SceneData (Module)

The reusable scene-gather: walks the buffer once for camera + lights + shadow origin.

SceneData (Type)

The per-frame gather of scene-global state that the shadow pass and the shading pass both need: the active camera's view/projection, the accumulated lights, and the shadow origin override.

SceneUpload (Module)

Effect-agnostic scene-data upload: resolves uniform names on any Effect.

SceneUpload (Module)

Shader-agnostic scene-data upload: resolves uniform names on any Shader.

Shaders

Built-in GLSL shader generators for the Forward PBR pipeline.

ShadowAtlas (Type)

Manages a texture atlas for multiple shadow maps. MonoGame port of the canonical raylib ShadowAtlas.

ShadowAtlas (Type)

Manages a texture atlas for multiple shadow maps. Supports directional, point (cubemap), and spot light shadows.

ShadowAtlasConfig (Module)

Convenience values for ShadowAtlasConfig.

ShadowAtlasConfig (Module)

ShadowAtlasConfig (Type)

Configuration for the shadow atlas system.

ShadowAtlasConfig (Type)

Configuration for the shadow atlas system.

ShadowBiasConfig (Module)

Convenience values for ShadowBiasConfig.

ShadowBiasConfig (Module)

ShadowBiasConfig (Type)

Global shadow bias configuration.

ShadowBiasConfig (Type)

Global shadow bias configuration.

ShadowCasterData (Type)

Data for a single shadow caster in the atlas.

ShadowCasterData (Type)

Data for a single shadow caster in the atlas.

ShadowCasterId (Type)

Unique identifier for a shadow caster in the atlas.

ShadowCasterId (Type)

Unique identifier for a shadow caster in the atlas.

ShadowCasterType (Type)

Type of shadow caster determines projection and face count.

ShadowCasterType (Type)

Type of shadow caster determines projection and face count.

ShadowEffectParams

Cached EffectParameter handles for the depth-only shadow pass effect (DepthShadow.fx).

ShadowInstancedDraw

An instanced caster draw collected for the shadow pass.

ShadowMeshDraw

A mesh draw collected for the shadow pass (caster geometry).

ShadowModelPartDraw

A static ModelMeshPart caster collected for the shadow pass.

ShadowOriginStrategy (Type)

Strategy for determining the origin point of shadow maps.

ShadowOriginStrategy (Type)

Strategy for determining the origin point of shadow maps.

ShadowResources

Owns the shadow atlas + depth effect + pooled scratch the shadow pass needs, reused across frames. Constructed once by the pipeline; EnsureResources allocates the GPU atlas lazily against the real device on the first shadow pass.

ShadowResult (Type)

The shadow pass output for a frame: the atlas texture + the packed shadow-sampling uniforms a shader consumes. ShadowResult.Atlas is the depth atlas (sampler slot 5, PointClamp); the arrays are already sized to the active caster count.

ShadowResult (Type)

The shadow pass output for a frame: the atlas texture + the packed shadow-sampling uniforms a shader consumes. ShadowResult.Atlas is the depth atlas; the arrays are sized to the active caster count.

ShadowSkinnedDraw

A skinned caster draw collected for the shadow pass (B12).

Type something to start searching.