Skip to content

ludus::graphics::renderer::ViewDescription

Ludus Wiki · API overview · Browse API

Struct

Finite canonical clip transform: XY [-1,1], Z [0,1], Y up.

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

#include <ludus/graphics/renderer/renderer.hpp>
struct ludus::graphics::renderer::ViewDescription final

Fields

WorldToClip

ludus::foundation::math::Matrix4 ludus::graphics::renderer::ViewDescription::WorldToClip = ludus::foundation::math::Matrix4::Identity()
Finite world-to-clip matrix matching the explicit Depth convention.

Related types: ludus::foundation::math::Matrix4

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

CullMargin

ludus::foundation::float32 ludus::graphics::renderer::ViewDescription::CullMargin = 0
Finite nonnegative world-unit margin for conservative opaque AABB culling.

Related types: ludus::foundation::float32

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

Reference

bool ludus::graphics::renderer::ViewDescription::Reference = false
Keep source order and one draw per object, with visibility disabled, for image comparison.

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

DirectLighting

bool ludus::graphics::renderer::ViewDescription::DirectLighting = false
L5 diagnostic: evaluate all admitted lights while retaining ordinary culling/batching.

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

EnableLod

bool ludus::graphics::renderer::ViewDescription::EnableLod = false
Opt-in screen-size LOD; Reference bypasses LOD, ShadowCasters always uses full geometry.

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

LodWidth

ludus::foundation::uint32 ludus::graphics::renderer::ViewDescription::LodWidth = 0
Physical viewport dimensions used only for LOD; both positive when EnableLod is true.

Related types: ludus::foundation::uint32

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

LodHeight

ludus::foundation::uint32 ludus::graphics::renderer::ViewDescription::LodHeight = 0
Physical viewport height for LOD, positive when EnableLod is true.

Related types: ludus::foundation::uint32

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

LodHysteresis

ludus::foundation::float32 ludus::graphics::renderer::ViewDescription::LodHysteresis = 0.1F
Fractional transition band [0,0.5]; previous selection comes from SceneItem::PreviousLod.

Related types: ludus::foundation::float32

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

ScheduledUpload

bool ludus::graphics::renderer::ViewDescription::ScheduledUpload = false
Schedule a bounded R2 upload version instead of immediate immutable creation. PrepareView then returns Pending; poll GetStatus between frames before drawing. Caller snapshots/arrays may be released immediately; accepted GPU versions never change.

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

Depth

DepthConvention ludus::graphics::renderer::ViewDescription::Depth = DepthConvention::Conventional
Defaults preserve existing L0 projection behavior; reverse-Z requires InitializeViews.

Related types: DepthConvention

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

InfiniteFar

bool ludus::graphics::renderer::ViewDescription::InfiniteFar = false
Select five-plane culling for an infinite reverse-Z perspective projection.

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

CameraPosition

ludus::foundation::math::Vector3 ludus::graphics::renderer::ViewDescription::CameraPosition {0, 0, 1}
Finite world-space camera position in meters, [-1000000,1000000]; required for lit shading.

Related types: ludus::foundation::math::Vector3

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

ShadowCasters

bool ludus::graphics::renderer::ViewDescription::ShadowCasters = false
Prepare an opaque/masked caster view; skips overlays and disables camera visibility shortcuts. ShadowAtlas preparation sets this; ordinary callers should keep false.

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

OrthographicCamera

bool ludus::graphics::renderer::ViewDescription::OrthographicCamera = false
Use constant CameraForward for orthographic specular evaluation; perspective uses CameraPosition.

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

CameraForward

ludus::foundation::math::Vector3 ludus::graphics::renderer::ViewDescription::CameraForward {0, 0, -1}
Nonzero finite world direction from camera into scene, normalized during preparation.

Related types: ludus::foundation::math::Vector3

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

OverlayToClip

ludus::foundation::math::Matrix4 ludus::graphics::renderer::ViewDescription::OverlayToClip = ludus::foundation::math::Matrix4::Identity()
Canonical overlay crop transform, applied independently of the world camera.

Related types: ludus::foundation::math::Matrix4

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

DebugDepthRange

ludus::foundation::math::Vector2 ludus::graphics::renderer::ViewDescription::DebugDepthRange {0, 0}
World-unit camera distances {near, far} that MaterialDebugView::LinearDepth maps to black and white. Perspective views measure radial distance from CameraPosition; orthographic views measure distance along CameraForward. Finite, 0 <= near < far <= 1e7, or {0, 0} (the default) to leave depth unmapped (black). Ignored by ordinary lit programs.

Related types: ludus::foundation::math::Vector2

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp

WorldGrid

WorldGridDescription ludus::graphics::renderer::ViewDescription::WorldGrid {}
Optional depth-tested world coordinate guide. It does not alter scene bounds, item counts or shadows. Ignored by reference/path tracing captures; raster drawing retains guide buffers with this view.

Related types: WorldGridDescription

Declared in modules/graphics/renderer/include/ludus/graphics/renderer/renderer.hpp