Nameless Engine
|
#include <Pipeline.h>
Public Member Functions | |
void | findOffsetAndCopySpecialValueToConstant (Pipeline *pPipeline, const char *pConstantName, unsigned int iValueToCopy) |
Public Attributes | |
std::unique_ptr< PipelineShaderConstantsManager > | pConstantsManager |
std::unordered_map< std::string, size_t > | uintConstantsOffsets |
Groups information related to push/root constants.
void ne::Pipeline::ShaderConstantsData::findOffsetAndCopySpecialValueToConstant | ( | Pipeline * | pPipeline, |
const char * | pConstantName, | ||
unsigned int | iValueToCopy | ||
) |
Looks for and index of the specified shader constant in the specified pipeline and copies the specified value into the constant's slot.
pPipeline | Pipeline to look for offset of the constant. |
pConstantName | Name of the constant from shader code. |
iValueToCopy | Value to copy as constant. |
std::unique_ptr<PipelineShaderConstantsManager> ne::Pipeline::ShaderConstantsData::pConstantsManager |
Stores root/push constants. nullptr
if root/push constants are not used.
std::unordered_map<std::string, size_t> ne::Pipeline::ShaderConstantsData::uintConstantsOffsets |
Stores names of fields defined in GLSL as push constants or as root constants in HLSL (all with uint
type) and offset of the constant from the beginning of the layout/struct.