OGRE
13.6
Object-Oriented Graphics Rendering Engine
|
Implement a sub render state which performs hardware skinning. More...
#include <OgreShaderExHardwareSkinning.h>
Classes | |
struct | SkinningData |
Public Member Functions | |
HardwareSkinning () | |
Class default constructor. More... | |
void | _setCreator (const HardwareSkinningFactory *pCreator) |
Set the factory which created this sub render state. More... | |
void | copyFrom (const SubRenderState &rhs) override |
ushort | getBoneCount () |
Returns the number of bones in the model assigned to the material. More... | |
int | getExecutionOrder () const override |
SkinningType | getSkinningType () |
Returns the current skinning type in use. More... | |
const String & | getType () const override |
ushort | getWeightCount () |
Returns the number of weights/bones affecting a vertex. More... | |
bool | hasCorrectAntipodalityHandling () |
Only applicable for dual quaternion skinning. More... | |
bool | hasScalingShearingSupport () |
Only applicable for dual quaternion skinning. More... | |
bool | preAddToRenderState (const RenderState *renderState, Pass *srcPass, Pass *dstPass) override |
void | setHardwareSkinningParam (ushort boneCount, ushort weightCount, SkinningType skinningType=ST_LINEAR, bool correctAntipodalityHandling=false, bool scalingShearingSupport=false) |
Set the hardware skinning parameters. More... | |
Public Member Functions inherited from Ogre::RTShader::SubRenderState | |
SubRenderState () | |
Class default constructor. More... | |
virtual | ~SubRenderState () |
Class destructor. More... | |
virtual bool | createCpuSubPrograms (ProgramSet *programSet) |
Create sub programs that represents this sub render state as part of a program set. More... | |
SubRenderStateAccessorPtr | getAccessor () |
Return the accessor object to this sub render state. More... | |
SubRenderStateAccessorPtr | getAccessor () const |
Return the accessor object to this sub render state. More... | |
SubRenderState & | operator= (const SubRenderState &rhs) |
Operator = declaration. More... | |
virtual bool | setParameter (const String &name, const String &value) |
generic set method for parameters that connot be derived in preAddToRenderState More... | |
virtual void | updateGpuProgramsParams (Renderable *rend, const Pass *pass, const AutoParamDataSource *source, const LightList *pLightList) |
Update GPU programs parameters before a rendering operation occurs. More... | |
Static Public Attributes | |
static String | Type |
Implement a sub render state which performs hardware skinning.
Meaning, this sub render states adds calculations which multiply the points and normals by their assigned bone matricies.
Ogre::RTShader::HardwareSkinning::HardwareSkinning | ( | ) |
Class default constructor.
|
overridevirtual |
Implements Ogre::RTShader::SubRenderState.
|
overridevirtual |
Implements Ogre::RTShader::SubRenderState.
|
overridevirtual |
Implements Ogre::RTShader::SubRenderState.
void Ogre::RTShader::HardwareSkinning::setHardwareSkinningParam | ( | ushort | boneCount, |
ushort | weightCount, | ||
SkinningType | skinningType = ST_LINEAR , |
||
bool | correctAntipodalityHandling = false , |
||
bool | scalingShearingSupport = false |
||
) |
Set the hardware skinning parameters.
boneCount | The maximum number of bones in the model this material is assigned to. Note that this parameter can be higher but not lower than the actual number of bones. |
weightCount | The maximum number of weights/bones affecting a vertex. |
skinningType | The type of skinning desired. |
correctAntipodalityHandling | If correct antipodality handling should be utilized (Only applicable for dual quaternion skinning). |
scalingShearingSupport | If scaling and shearing support should be enabled (Only applicable for dual quaternion skinning). |
ushort Ogre::RTShader::HardwareSkinning::getBoneCount | ( | ) |
Returns the number of bones in the model assigned to the material.
ushort Ogre::RTShader::HardwareSkinning::getWeightCount | ( | ) |
Returns the number of weights/bones affecting a vertex.
SkinningType Ogre::RTShader::HardwareSkinning::getSkinningType | ( | ) |
Returns the current skinning type in use.
bool Ogre::RTShader::HardwareSkinning::hasCorrectAntipodalityHandling | ( | ) |
Only applicable for dual quaternion skinning.
bool Ogre::RTShader::HardwareSkinning::hasScalingShearingSupport | ( | ) |
Only applicable for dual quaternion skinning.
|
overridevirtual |
Reimplemented from Ogre::RTShader::SubRenderState.
|
inline |
Set the factory which created this sub render state.
|
static |