The purpose of this class is to contain a set of both auto and manual parameters that may apply to multiple shaders; without having the shader to be created first (the drawback of GpuProgramParameters).
More...
#include <OgreShaderParams.h>
The purpose of this class is to contain a set of both auto and manual parameters that may apply to multiple shaders; without having the shader to be created first (the drawback of GpuProgramParameters).
- Useful when loading an Hlms material via JSON (e.g. a Compute Job) which may generate multiple shaders depending on the property settings.
- Parameters are kept unsorted in mParams
◆ ParamVec
◆ ElementType
Enumerator |
---|
ElementInt | |
ElementUInt | |
ElementFloat | |
◆ ShaderParams()
Ogre::ShaderParams::ShaderParams |
( |
| ) |
|
◆ findParameter()
Param* Ogre::ShaderParams::findParameter |
( |
const String & |
name | ) |
|
Finds a parameter.
Returns null if not found. This operation is O(N) as it makes a linear search. You can cache the return pointer (as long as the iterators from mParams aren't invalidated)
◆ getUpdateCounter()
uint32 Ogre::ShaderParams::getUpdateCounter |
( |
| ) |
const |
|
inline |
◆ removeParameterNoThrow()
bool Ogre::ShaderParams::removeParameterNoThrow |
( |
const String & |
name | ) |
|
Removes a parameter if it matches the name.
Calling this function may alter the order of entries in mParams!
- Parameters
-
- Returns
- Returns true if we removed a parameter with such name. Returns false if said parameter couldn't be found.
◆ setDirty()
void Ogre::ShaderParams::setDirty |
( |
| ) |
|
|
inline |
Call this whenever you've updated a parameter in mParams.
◆ updateParameters()
◆ mParams
◆ mSilenceMissingParameterWarnings
bool Ogre::ShaderParams::mSilenceMissingParameterWarnings |
Don't log exceptions about missing parameters.
◆ mUpdateCounter
uint32 Ogre::ShaderParams::mUpdateCounter |
The documentation for this class was generated from the following file: