|  | OGRE
    1.11.6
    Object-Oriented Graphics Rendering Engine | 
Implement a sub render state which performs hardware skinning. More...
#include <OgreShaderExHardwareSkinning.h>
 Inheritance diagram for Ogre::RTShader::HardwareSkinning:
 Inheritance diagram for Ogre::RTShader::HardwareSkinning:| 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... | |
| virtual void | copyFrom (const SubRenderState &rhs) | 
| 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... | |
| ushort | getBoneCount () | 
| Returns the number of bones in the model assigned to the material.  More... | |
| virtual int | getExecutionOrder () const | 
| SkinningType | getSkinningType () | 
| Returns the current skinning type in use.  More... | |
| virtual const String & | getType () const | 
| 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... | |
| virtual bool | preAddToRenderState (const RenderState *renderState, Pass *srcPass, Pass *dstPass) | 
| void | setHardwareSkinningParam (ushort boneCount, ushort weightCount, SkinningType skinningType=ST_LINEAR, bool correctAntipodalityHandling=false, bool scalingShearingSupport=false) | 
| Set the hardware skinning parameters.  More... | |
| virtual void | updateGpuProgramsParams (Renderable *rend, 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.
| 
 | virtual | 
Implements Ogre::RTShader::SubRenderState.
| 
 | virtual | 
Implements Ogre::RTShader::SubRenderState.
| 
 | virtual | 
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.
| 
 | virtual | 
Reimplemented from Ogre::RTShader::SubRenderState.
| 
 | inline | 
Set the factory which created this sub render state.
| 
 | virtualinherited | 
Create sub programs that represents this sub render state as part of a program set.
The given program set contains CPU programs that represents a vertex shader and pixel shader. One should use these program class API to create a representation of the sub state he wished to implement.
| programSet | container class of CPU and GPU programs that this sub state will affect on. | 
Reimplemented in Ogre::RTShader::FFPTransform.
| 
 | inlinevirtualinherited | 
Update GPU programs parameters before a rendering operation occurs.
This method is called in the context of SceneManager::renderSingle object via the RenderObjectListener interface and lets this sub render state instance opportunity to update custom GPU program parameters before the rendering action occurs.
| rend | The renderable that is about to be rendered. | 
| pass | The pass that used for this rendering. | 
| source | The auto parameter source. | 
| pLightList | The light list used in the current rendering context. | 
Reimplemented in Ogre::RTShader::TriplanarTexturing, Ogre::RTShader::TextureAtlasSampler, Ogre::RTShader::FFPAlphaTest, Ogre::RTShader::FFPFog, Ogre::RTShader::IntegratedPSSM3, Ogre::RTShader::FFPTexturing, Ogre::RTShader::FFPLighting, and Ogre::RTShader::NormalMapLighting.
| 
 | inherited | 
Return the accessor object to this sub render state.
| 
 | inherited | 
Return the accessor object to this sub render state.
| 
 | static |