Skip to content

ludus::graphics::renderer::ReferenceRenderingOptions

Ludus Wiki · API overview · Browse API

Struct

Opt-in retained CPU geometry and native query setup; call before creating meshes. Buffers are admitted against explicit budgets, rather than silently truncating geometry, paths or pixels. Default zero budgets intentionally require authoring.

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

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

Fields

Traversal

ReferenceTraversal ludus::graphics::renderer::ReferenceRenderingOptions::Traversal = ReferenceTraversal::NativeQueries
Explicit traversal choice; native is the default request.

Related types: ReferenceTraversal

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

CpuByteBudget

ludus::foundation::usize ludus::graphics::renderer::ReferenceRenderingOptions::CpuByteBudget = 0
Renderer-owned retained mesh/capture CPU bytes, including transient setup work.

Related types: ludus::foundation::usize

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

RayByteBudget

ludus::foundation::usize ludus::graphics::renderer::ReferenceRenderingOptions::RayByteBudget = 0
Device-wide known ray buffer/AS bytes plus pending build scratch. Ordinary raster allocations and opaque driver/pipeline allocations are reported separately.

Related types: ludus::foundation::usize

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

TilePixels

ludus::foundation::uint32 ludus::graphics::renderer::ReferenceRenderingOptions::TilePixels = 0
At most this many pixels advance in one tile; positive and at most 2048. Native mode also requires twice this count within RayCapabilities::MaxRays, and a ResampledProjectedSolidAngle or ResampledFormFactor capture three times it (two shadow rays per vertex); a capture whose count exceeds MaxRays is rejected as Unsupported. GpuCompute advances every pixel by one sample per dispatch and ignores the value.

Related types: ludus::foundation::uint32

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

GpuByteBudget

ludus::foundation::usize ludus::graphics::renderer::ReferenceRenderingOptions::GpuByteBudget = 0
GpuCompute only: renderer-owned packed scene, texel, uniform, accumulation and status buffer bytes across live captures, including a replacement built by UpdateReferenceCapture, plus the renderer's LTC table (3407872 bytes), which every capture shares and which is charged when rendering is enabled. Excludes RHI registries, transfer rings, pipelines and driver padding. At least the table's size for GpuCompute; other traversals ignore it.

Related types: ludus::foundation::usize

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