|
Revision 11262, 0.9 kB
(checked in by mplatings, 3 years ago)
|
|
Workaround for files exported from SoftImage? that don't tag skeleton nodes correctly.
|
| Line | |
|---|
| 1 | #ifndef FBXRNODE_H |
|---|
| 2 | #define FBXRNODE_H |
|---|
| 3 | |
|---|
| 4 | #include "fbxMaterialToOsgStateSet.h" |
|---|
| 5 | namespace osgAnimation |
|---|
| 6 | { |
|---|
| 7 | class AnimationManagerBase; |
|---|
| 8 | class RigGeometry; |
|---|
| 9 | } |
|---|
| 10 | |
|---|
| 11 | typedef std::map<std::pair<KFbxNode*, osgAnimation::RigGeometry*>, osg::Matrix> BindMatrixMap; |
|---|
| 12 | |
|---|
| 13 | osgAnimation::Skeleton* getSkeleton(KFbxNode*, |
|---|
| 14 | const std::set<const KFbxNode*>& fbxSkeletons, |
|---|
| 15 | std::map<KFbxNode*, osgAnimation::Skeleton*>&); |
|---|
| 16 | |
|---|
| 17 | osgDB::ReaderWriter::ReadResult readFbxNode( |
|---|
| 18 | FBXFILESDK_NAMESPACE::KFbxSdkManager& pSdkManager, |
|---|
| 19 | FBXFILESDK_NAMESPACE::KFbxNode* pNode, |
|---|
| 20 | osg::ref_ptr<osgAnimation::AnimationManagerBase>& pAnimationManager, |
|---|
| 21 | bool& bIsBone, |
|---|
| 22 | int& nLightCount, |
|---|
| 23 | FbxMaterialToOsgStateSet& fbxMaterialToOsgStateSet, |
|---|
| 24 | std::map<KFbxNode*, osg::Node*>& nodeMap, |
|---|
| 25 | BindMatrixMap& boneBindMatrices, |
|---|
| 26 | const std::set<const KFbxNode*>& fbxSkeletons, |
|---|
| 27 | std::map<KFbxNode*, osgAnimation::Skeleton*>& skeletonMap, |
|---|
| 28 | const osgDB::Options* options = NULL); |
|---|
| 29 | |
|---|
| 30 | #endif |
|---|