|
|
virtual void | set_texture (const std::string_view aName, texture_ptr_type aTexturePointer)=0 |
| | assigns a texture to the material, which shares it; a null texture unsets the name
|
| virtual void | set_float (const std::string_view aName, float aValue)=0 |
| | assigns a float to the material.
|
| virtual void | set_vector2 (const std::string_view aName, vector2_type aValue)=0 |
| | assigns a 2 component vector
|
| virtual void | set_vector3 (const std::string_view aName, vector3_type aValue)=0 |
| | assigns a 3 component vector
|
| virtual void | set_vector4 (const std::string_view aName, vector4_type aValue)=0 |
| | assigns a 4 component vector
|
| virtual void | set_vector4 (const std::string_view aName, const color &aValue)=0 |
| | assign an RGBA colour to a vec4 uniform
|
| virtual void | set_integer (const std::string_view aName, int aValue)=0 |
| | assigns an integer to the material.
|
| virtual void | set_integer2 (const std::string_view aName, int aValue1, int aValue2)=0 |
| | assigns a 2 integer array to the material.
|
| virtual void | set_integer3 (const std::string_view aName, int aValue1, int aValue2, int aValue3)=0 |
| | assigns a 3 integer array to the material.
|
| virtual void | set_integer4 (const std::string_view aName, int aValue1, int aValue2, int aValue3, int aValue4)=0 |
| | assigns a 4 integer array to the material.
|
| virtual void | set_int_vector2_array (const std::string_view aName, const std::vector< intvector2_type > &aValue)=0 |
| | assigns an array of integer vector2s to the material
|
decides how models using the material should be drawn.
This includes expected effects, such as texture colors, lightning, but can also include unexpected effects, like vertex displacements, transformations. Material is really pipeline state and persistent uniform values