Vertex input/output attribute structure.
More...
#include <VertexAttribute.h>
|
| | VertexAttribute ()=default |
| | VertexAttribute (StringLiteral name, const Format format, std::uint32_t location=0, std::uint32_t instanceDivisor=0, const SystemValue systemValue=SystemValue::Undefined) |
| | Constructor for minimal vertex attribute information and system value semantics, e.g. SV_VertexID (HLSL) or gl_VertexID (GLSL).
|
| | VertexAttribute (StringLiteral semanticName, std::uint32_t semanticIndex, const Format format, std::uint32_t location=0, std::uint32_t instanceDivisor=0) |
| | Constructor for basic vertex attribute information.
|
| | VertexAttribute (StringLiteral name, const Format format, std::uint32_t location, std::uint32_t offset, std::uint32_t stride, std::uint32_t slot=0, std::uint32_t instanceDivisor=0) |
| | Constructor for common vertex attribute information.
|
| | VertexAttribute (StringLiteral semanticName, std::uint32_t semanticIndex, const Format format, std::uint32_t location, std::uint32_t offset, std::uint32_t stride, std::uint32_t slot=0, std::uint32_t instanceDivisor=0) |
| | Constructor for the most vertex attribute information, including semantic index.
|
| std::uint32_t | GetSize () const |
| | Returns the size (in bytes) which is required for this vertex attribute, or zero if the format is not a valid vertex format.
|
◆ VertexAttribute() [1/5]
| LLGL::VertexAttribute::VertexAttribute |
( |
| ) |
|
|
default |
◆ VertexAttribute() [2/5]
Constructor for minimal vertex attribute information and system value semantics, e.g. SV_VertexID (HLSL) or gl_VertexID (GLSL).
◆ VertexAttribute() [3/5]
| LLGL::VertexAttribute::VertexAttribute |
( |
StringLiteral | semanticName, |
|
|
std::uint32_t | semanticIndex, |
|
|
const Format | format, |
|
|
std::uint32_t | location = 0, |
|
|
std::uint32_t | instanceDivisor = 0 ) |
Constructor for basic vertex attribute information.
◆ VertexAttribute() [4/5]
| LLGL::VertexAttribute::VertexAttribute |
( |
StringLiteral | name, |
|
|
const Format | format, |
|
|
std::uint32_t | location, |
|
|
std::uint32_t | offset, |
|
|
std::uint32_t | stride, |
|
|
std::uint32_t | slot = 0, |
|
|
std::uint32_t | instanceDivisor = 0 ) |
Constructor for common vertex attribute information.
◆ VertexAttribute() [5/5]
| LLGL::VertexAttribute::VertexAttribute |
( |
StringLiteral | semanticName, |
|
|
std::uint32_t | semanticIndex, |
|
|
const Format | format, |
|
|
std::uint32_t | location, |
|
|
std::uint32_t | offset, |
|
|
std::uint32_t | stride, |
|
|
std::uint32_t | slot = 0, |
|
|
std::uint32_t | instanceDivisor = 0 ) |
Constructor for the most vertex attribute information, including semantic index.
◆ GetSize()
| std::uint32_t LLGL::VertexAttribute::GetSize |
( |
| ) |
const |
◆ format
◆ instanceDivisor
| std::uint32_t LLGL::VertexAttribute::instanceDivisor = 0 |
Instance data divisor (or instance data step rate).
- Note
- For Vulkan, this must only be 0 or 1.
◆ location
| std::uint32_t LLGL::VertexAttribute::location = 0 |
Vertex attribute location (only for OpenGL, Vulkan, Metal) or stream-output number (only for Direct3D).
◆ name
Vertex attribute name (for GLSL) or semantic name (for HLSL).
◆ offset
| std::uint32_t LLGL::VertexAttribute::offset = 0 |
Byte offset within each vertex and each buffer for input attributes, or component offset for output attributes. By default 0.
◆ semanticIndex
| std::uint32_t LLGL::VertexAttribute::semanticIndex = 0 |
◆ slot
| std::uint32_t LLGL::VertexAttribute::slot = 0 |
◆ stride
| std::uint32_t LLGL::VertexAttribute::stride = 0 |
Specifies the vertex data stride which describes the byte offset between consecutive vertices.
◆ systemValue
The documentation for this struct was generated from the following file: