refactoring and fixes
only change in design: decouplage between MorphGeometry and MorphTransform technique no real change in behavior (i hope)
This commit is contained in:
@@ -57,14 +57,14 @@ namespace osgAnimation
|
||||
|
||||
META_Object(osgAnimation, RigGeometry);
|
||||
|
||||
void setInfluenceMap(VertexInfluenceMap* vertexInfluenceMap) { _vertexInfluenceMap = vertexInfluenceMap; }
|
||||
const VertexInfluenceMap* getInfluenceMap() const { return _vertexInfluenceMap.get();}
|
||||
VertexInfluenceMap* getInfluenceMap() { return _vertexInfluenceMap.get();}
|
||||
inline void setInfluenceMap(VertexInfluenceMap* vertexInfluenceMap) { _vertexInfluenceMap = vertexInfluenceMap; }
|
||||
inline const VertexInfluenceMap* getInfluenceMap() const { return _vertexInfluenceMap.get();}
|
||||
inline VertexInfluenceMap* getInfluenceMap() { return _vertexInfluenceMap.get();}
|
||||
|
||||
const Skeleton* getSkeleton() const;
|
||||
Skeleton* getSkeleton();
|
||||
inline const Skeleton* getSkeleton() const { return _root.get(); }
|
||||
inline Skeleton* getSkeleton() { return _root.get(); }
|
||||
// will be used by the update callback to init correctly the rig mesh
|
||||
void setSkeleton(Skeleton*);
|
||||
inline void setSkeleton(Skeleton* root){ _root = root;}
|
||||
|
||||
void setNeedToComputeMatrix(bool state) { _needToComputeMatrix = state;}
|
||||
bool getNeedToComputeMatrix() const { return _needToComputeMatrix;}
|
||||
@@ -72,25 +72,25 @@ namespace osgAnimation
|
||||
|
||||
// this build the internal database about vertex influence and bones
|
||||
void buildVertexInfluenceSet();
|
||||
const VertexInfluenceSet& getVertexInfluenceSet() const;
|
||||
inline const VertexInfluenceSet& getVertexInfluenceSet() const { return _vertexInfluenceSet;}
|
||||
|
||||
void computeMatrixFromRootSkeleton();
|
||||
|
||||
|
||||
// set implementation of rig method
|
||||
void setRigTransformImplementation(RigTransform*);
|
||||
RigTransform* getRigTransformImplementation();
|
||||
const RigTransform* getRigTransformImplementation() const { return _rigTransformImplementation.get(); }
|
||||
inline RigTransform* getRigTransformImplementation() { return _rigTransformImplementation.get(); }
|
||||
inline void setRigTransformImplementation(RigTransform* rig) { _rigTransformImplementation = rig; }
|
||||
inline const RigTransform* getRigTransformImplementation() const { return _rigTransformImplementation.get(); }
|
||||
|
||||
virtual void drawImplementation(osg::RenderInfo& renderInfo) const;
|
||||
void update();
|
||||
|
||||
const osg::Matrix& getMatrixFromSkeletonToGeometry() const;
|
||||
const osg::Matrix& getInvMatrixFromSkeletonToGeometry() const;
|
||||
|
||||
osg::Geometry* getSourceGeometry();
|
||||
const osg::Geometry* getSourceGeometry() const;
|
||||
void setSourceGeometry(osg::Geometry* geometry);
|
||||
|
||||
inline osg::Geometry* getSourceGeometry() { return _geometry.get(); }
|
||||
inline const osg::Geometry* getSourceGeometry() const { return _geometry.get(); }
|
||||
inline void setSourceGeometry(osg::Geometry* geometry) { _geometry = geometry; }
|
||||
|
||||
void copyFrom(osg::Geometry& from);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user