Skip to content

ludus::graphics::rhi::FormatRequirement

Ludus Wiki · API overview · Browse API

Struct

Required or preferred use of one known format. Uses are checked together.

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

#include <ludus/graphics/rhi/profile.h>
struct ludus::graphics::rhi::FormatRequirement final

Fields

Format

RasterFormat ludus::graphics::rhi::FormatRequirement::Format = RasterFormat::Rgba8Unorm
Format identity; malformed values reject before any backend request.

Related types: RasterFormat

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

Uses

TextureUses ludus::graphics::rhi::FormatRequirement::Uses
Requested implemented uses; at least one must be selected.

Related types: TextureUses

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

MinDimension2D

ludus::foundation::uint32 ludus::graphics::rhi::FormatRequirement::MinDimension2D = 0
Minimum width/height in pixels for every selected sampled/attachment use.

Related types: ludus::foundation::uint32

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

MinMipLevels

ludus::foundation::uint32 ludus::graphics::rhi::FormatRequirement::MinMipLevels = 1
Minimum mip count for selected uses; multisampled attachments require one.

Related types: ludus::foundation::uint32

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

SampleCount

ludus::foundation::uint32 ludus::graphics::rhi::FormatRequirement::SampleCount = 1
Required attachment sample count; a power of two, 1..64. No MSAA is implied.

Related types: ludus::foundation::uint32

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

Dimension

TextureDimension ludus::graphics::rhi::FormatRequirement::Dimension = TextureDimension::D2
Required allocation dimension; attachments exclude D3.

Related types: TextureDimension

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

MinDepthOrLayers

ludus::foundation::uint32 ludus::graphics::rhi::FormatRequirement::MinDepthOrLayers = 0
Minimum array layer count or volume depth; zero adds no count constraint.

Related types: ludus::foundation::uint32

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

PartialViews

bool ludus::graphics::rhi::FormatRequirement::PartialViews = false
Require implemented sampled mip/layer subrange views of this format.

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

AttachmentViews

bool ludus::graphics::rhi::FormatRequirement::AttachmentViews = false
Require enabled single-mip/layer writable color views.

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

DepthSampled

bool ludus::graphics::rhi::FormatRequirement::DepthSampled = false
Require enabled private depth aspect loads.

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

StencilAttachment

bool ludus::graphics::rhi::FormatRequirement::StencilAttachment = false
Require private stencil allocation and raster testing/writes.

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

StencilSampled

bool ludus::graphics::rhi::FormatRequirement::StencilSampled = false
Require enabled unsigned private stencil aspect loads.

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

RequiresUnalignedBlockExtents

bool ludus::graphics::rhi::FormatRequirement::RequiresUnalignedBlockExtents = false
Require compressed base dimensions not divisible by block width/height; sampled BC formats only.

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