Skip to content

ludus::graphics::rhi::RasterBinding

Ludus Wiki · API overview · Browse API

Struct

One immutable layout entry; binding numbers must be unique and below the enabled Interface.MaxBindings.

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/raster.h

#include <ludus/graphics/rhi/raster.h>
struct ludus::graphics::rhi::RasterBinding final

Fields

Binding

ludus::foundation::uint32 ludus::graphics::rhi::RasterBinding::Binding = 0
Group/set-zero binding number.

Related types: ludus::foundation::uint32

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/raster.h

Kind

RasterBindingKind ludus::graphics::rhi::RasterBinding::Kind = RasterBindingKind::UniformBuffer
Resource type; storage textures remain outside the binding profile.

Related types: RasterBindingKind

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/raster.h

Visibility

RasterVisibility ludus::graphics::rhi::RasterBinding::Visibility = RasterVisibility::Both
Stages allowed to use this entry.

Related types: RasterVisibility

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/raster.h

MinSize

ludus::foundation::usize ludus::graphics::rhi::RasterBinding::MinSize = 0
Minimum occupied uniform bytes or storage element stride from target reflection; zero for textures/samplers/ray scenes. Storage ranges contain at least one element.

Related types: ludus::foundation::usize

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/raster.h

HasDynamicOffset

bool ludus::graphics::rhi::RasterBinding::HasDynamicOffset = false
Add the packet offset for this binding to the snapshot buffer offset. Buffer bindings only; alignment and the final range are checked before encoding. This layout property does not change shader reflection or buffer ownership.

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/raster.h

Count

ludus::foundation::uint32 ludus::graphics::rhi::RasterBinding::Count = 1
Fixed descriptor count, or the allocation ceiling for a runtime-sized binding. Must be positive; array kinds and counts obey the enabled binding profile.

Related types: ludus::foundation::uint32

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/raster.h

Indexing

RasterBindingIndexing ludus::graphics::rhi::RasterBinding::Indexing = RasterBindingIndexing::Constant
Required shader selection mode, independently verified by target reflection.

Related types: RasterBindingIndexing

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/raster.h

IsRuntimeSized

bool ludus::graphics::rhi::RasterBinding::IsRuntimeSized = false
Unsized shader array. Layout Count bounds allocation; shader Count is the verified minimum allocation required by its accesses. Vulkan-only, sampled color textures at RUNTIME_BINDING_ARRAY_SLOT. RUNTIME_BINDING_LENGTH_SLOT is reserved for an immutable RHI-owned length buffer, created per snapshot.

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/raster.h

HasPartialBinding

bool ludus::graphics::rhi::RasterBinding::HasPartialBinding = false
Permit omitted array elements, with element zero required as a fallback. Holes sample/bind that retained fallback and cannot produce host index tokens. Allocation and descriptor budgets charge the complete table, including holes.

Declared in modules/graphics/rhi/include/ludus/graphics/rhi/raster.h