D3D11ShaderUniforms class
Manages the loose-uniform caches of a program (aliased as RHI::ShaderUniforms).
Owns a D3D11UniformCache for every active uniform of a program that is not part of a block, distributes a shared host data buffer across them, and on CommitUniforms() publishes every dirty value to the program. The managed set can be restricted to an include-only or exclude list of null-separated names.
Public types
Constructors, destructors, conversion operators
- D3D11ShaderUniforms()
- D3D11ShaderUniforms(D3D11ShaderProgram* shaderProgram) explicit
- D3D11ShaderUniforms(D3D11ShaderProgram* shaderProgram, const char* includeOnly, const char* exclude)
Public functions
- void SetProgram(D3D11ShaderProgram* shaderProgram)
- void SetProgram(D3D11ShaderProgram* shaderProgram, const char* includeOnly, const char* exclude)
-
void SetUniformsDataPointer(std::
uint8_t* dataPointer) - void SetDirty(bool isDirty)
-
auto GetUniformCount() const -> std::
uint32_t - auto HasUniform(const char* name) const -> bool
- auto GetUniform(const char* name) -> D3D11UniformCache*
- auto GetAllUniforms() const -> const UniformHashMapType&
- Returns the container of all managed uniform caches (range-iterates as
D3D11UniformCache&). - void MarkDirty()
- void CommitUniforms()