nCine::RHI::Metal::MetalVertexFormat class

Vertex layout description of the Metal backend (aliased as RHI::VertexFormat).

Records the set of vertex attributes (component count, type, stride, offset and source buffer) the way the OpenGL backend does, so the pipeline's attribute setup code compiles unchanged. The backend builds the render pipeline's MTL::VertexDescriptor from the recorded layout (fed by the offline shader reflection).

Public types

class Attribute
A single vertex attribute within a vertex format.

Public static variables

static std::uint32_t MaxAttributes constexpr
The maximum number of vertex attributes.

Constructors, destructors, conversion operators

MetalVertexFormat()

Public functions

auto GetAttributeCount() const -> std::uint32_t
auto GetIbo() const -> const MetalBufferObject*
void SetIbo(const MetalBufferObject* ibo)
void Define()
Applies the vertex format (no-op; the recorded layout is consumed at pipeline creation).
void Reset()
Disables all attributes and clears the index buffer.
auto CalculateFingerprint() const -> std::uint64_t
auto operator[](std::uint32_t index) -> Attribute&
auto operator[](std::uint32_t index) const -> const Attribute&
auto operator==(const MetalVertexFormat& other) const -> bool
auto operator!=(const MetalVertexFormat& other) const -> bool