|
Nameless Engine
|
#include <PipelineShaderConstantsManager.hpp>
Classes | |
| struct | SpecialConstantsNames |
Public Types | |
| using | variable_type = unsigned int |
Public Member Functions | |
| PipelineShaderConstantsManager (const PipelineShaderConstantsManager &)=delete | |
| PipelineShaderConstantsManager & | operator= (const PipelineShaderConstantsManager &)=delete |
| PipelineShaderConstantsManager (size_t iVariableCount) | |
| void | copyValueToShaderConstant (size_t iShaderConstantIndex, unsigned int iValueToCopy) |
| unsigned int | getTotalSizeInBytes () const |
| unsigned int | getVariableCount () const |
| void * | getData () |
Static Public Member Functions | |
| static constexpr size_t | getMaxConstantsSizeInBytes () |
Private Attributes | |
| std::vector< variable_type > | vConstantsData |
Static Private Attributes | |
| static constexpr size_t | iMaxShaderConstantsSizeInBytes |
Stores data to copy to push constants (Vulkan) or root constants (DirectX).
| using ne::PipelineShaderConstantsManager::variable_type = unsigned int |
Type of the variables the manager stores.
|
inline |
Creates a new manager that stores the specified number of unsigned int variables as push/root constants.
unsigned ints) will exceed getMaxConstantsSizeInBytes.| iVariableCount | Defines how much unsigned ints to store as push/root constants. |
|
inline |
Copies the specified value into the specified push/root constant.
| iShaderConstantIndex | Index of the push/root constant to copy the data to. |
| iValueToCopy | Value to copy. |
|
inline |
Returns pointer to the beginning of the push/root constants data.
|
inlinestaticconstexpr |
Returns the maximum size of constants data that the manager allows to have.
|
inline |
Returns total size of push/root constants data in bytes.
unsigned int since Vulkan and DirectX operate on uints.
|
inline |
Returns the total number of unsigned ints stored as push/root constants.
|
staticconstexprprivate |
Defines the maximum size of constants in total (in bytes).
|
private |
Data that will be copied to push/root constants.