|
CeresEngine 0.2.0
A game development framework
|
A ShaderSource is an object responsible for wrapping the textual representation of a shader (i.e. More...
#include <CeresEngine/Material/ShaderSource.hpp>
Public Member Functions | |
| ShaderSource (ShaderType type, String source) noexcept | |
| Creates a new shader from a string. | |
| ShaderSource (ShaderType type, const char *source) | |
| Creates a new shader from a string. | |
| ShaderSource (const ShaderSource &other) | |
| Creates a new shader source by copying the contents of another. | |
| ShaderSource & | operator= (const ShaderSource &other) |
| Assigns the contents from another shader source object. | |
| ShaderSource (ShaderSource &&other) noexcept | |
| Creates a new shader source by moving the contents of another. | |
| ShaderSource & | operator= (ShaderSource &&other) noexcept |
| Assigns the contents from another shader source object. | |
Static Public Member Functions | |
| template<typename Processor > | |
| static constexpr void | reflect (Processor &&RTTI) |
| Executes the given processor for every field of the struct. | |
Public Attributes | |
| ShaderType | type = ShaderType::Undefined |
| The shader stage type. | |
| String | source |
| The shader source code. | |
A ShaderSource is an object responsible for wrapping the textual representation of a shader (i.e.
its source code).
This shader source object can be copied, moved and passed by reference to a shader implementation. The shader implementations will use the contents of this object to compile a binary representation of the shader that can run on the GPU.
|
explicitnoexcept |
Creates a new shader from a string.
| type | The shader stage type |
| source | The shader source code string |
|
explicit |
Creates a new shader from a string.
| type | The shader stage type |
| source | The shader source code string |
| CeresEngine::ShaderSource::ShaderSource | ( | const ShaderSource & | other | ) |
Creates a new shader source by copying the contents of another.
| other | The shader source to copy the contents from |
|
noexcept |
Creates a new shader source by moving the contents of another.
| other | The shader source to copy the contents from |
| ShaderSource & CeresEngine::ShaderSource::operator= | ( | const ShaderSource & | other | ) |
Assigns the contents from another shader source object.
| other | The shader source to copy the contents from |
|
noexcept |
Assigns the contents from another shader source object.
| other | The shader source to move the contents from |
Executes the given processor for every field of the struct.
| RTTI | The processor to be ran for every field. |
| String CeresEngine::ShaderSource::source |
The shader source code.
| ShaderType CeresEngine::ShaderSource::type = ShaderType::Undefined |
The shader stage type.