Struct Shader::Descriptor
Defined in File libcacaoasset.hpp
Nested Relationships
This struct is a nested type of Struct Shader.
Nested Types
Struct Documentation
-
struct Descriptor
Public Types
-
enum class Domain : uint8_t
The dimensional domain that the shader expects for input.
Values:
-
enumerator Geometry3D
3D world geometry
-
enumerator Canvas2D
2D canvas
-
enumerator Geometry3D
-
enum class VertexMode : uint8_t
Vertex processing mode for a shader.
Values:
-
enumerator NoProcess
No shader-controlled vertex processing.
-
enumerator PreprocessOnly
Shader-controlled vertex processing before engine transform.
-
enumerator PostprocessOnly
Shader controlled vertex processing after engine transform.
-
enumerator PreprocessPostprocess
Shader-controlled vertex processing before and after engine transform.
-
enumerator Custom
Shader implements fully-custom vertex pipeline.
-
enumerator NoProcess
Public Members
-
enum libcacaoasset::Shader::Descriptor::Domain domain
Type of this shader.
-
enum libcacaoasset::Shader::Descriptor::VertexMode mode
Vertex processing mode.
-
std::vector<UniformParameter> uniformParams
Uniform parameters list.
-
std::vector<TextureParameter> texParams
Texture parameters list.
-
struct TextureParameter
Information about a texture parameter.
Public Members
-
std::string name
Parameter name.
-
unsigned int binding
Descriptor binding index.
-
bool isCubemap
If the texture is a Cubemap or a Tex2D.
-
std::string name
-
struct UniformParameter
Info about a uniform parameter.
Public Types
-
enum class DataType : uint8_t
Values:
-
enumerator Int
32-bit signed integer
-
enumerator UInt
32-bit unsigned integer
-
enumerator Float
Single-precision floating point number (32-bit)
-
enumerator Bool
Boolean.
-
enumerator Int2
2-component int vector
-
enumerator Int3
3-component int vector
-
enumerator Int4
4-component int vector
-
enumerator UInt2
2-component unsigned int vector
-
enumerator UInt3
3-component unsigned int vector
-
enumerator UInt4
4-component unsigned int vector
-
enumerator Float2
2-component float vector
-
enumerator Float3
3-component float vector
-
enumerator Float4
4-component float vector
-
enumerator Float2x2
2x2 matrix of floats
-
enumerator Float3x3
3x3 matrix of floats
-
enumerator Float4x4
4x4 matrix of floats
-
enumerator Int
Public Members
-
enum libcacaoasset::Shader::Descriptor::UniformParameter::DataType type
Type of stored data.
-
std::string name
Parameter name.
-
unsigned int bufferOffset
Offset into the parameters constant buffer at which to write the data.
-
enum class DataType : uint8_t
-
enum class Domain : uint8_t