#include <OgreHlms.h>
◆ Blendblock
const IdString Ogre::HlmsPsoProp::Blendblock |
|
static |
◆ InputLayoutId
const IdString Ogre::HlmsPsoProp::InputLayoutId |
|
static |
◆ Macroblock
const IdString Ogre::HlmsPsoProp::Macroblock |
|
static |
◆ StrongBlendblockBits
const IdString Ogre::HlmsPsoProp::StrongBlendblockBits |
|
static |
Similar to StrongMacroblockBits but used for overrides of Blendblocks.
◆ StrongMacroblockBits
const IdString Ogre::HlmsPsoProp::StrongMacroblockBits |
|
static |
The property holds the bits from StrongMacroblockBits enum to indicate the override of the HlmsPso's macroblock.
This can be used to override all macroblocks from all renderables rendered by current pass. Note that the implementation doesn't need to use this property. It can introduce its own property or mechanism for the overrides. There are couple of details necessary to keep in mind if implementing own mechanism:
- the values are cached are stored in HlmsDiskCache
- the implementation must be consistent between setting the flags and interpreting them
- if a value changed its meaning, the cache must be manually deleted as Ogre cannot detect such changes!
- It is not sufficient to just set HlmsPassPso::NeedStrongMacroblock in HlmsPassPso::strongBasicBlocks as it will lead to the same PassCache values. It is necessary to indicate the override fully and distinguish between 2 different overrides by setting a property with value describing the override (bit mask) or setting multiple properties (a property per specific override).
The documentation for this struct was generated from the following file: