Ogre手动添加骨骼动画

///初始化骨骼动画参数

 Animation::setDefaultInterpolationMode(Animation::IM_LINEAR);
 Animation::setDefaultRotationInterpolationMode(Animation::RIM_LINEAR);

 

///得到实体

 Ogre::Entity* ent = m_pRenderBox->getEntity(name);
 ///添加骨骼动画
 ent->getSkeleton()->addLinkedSkeletonAnimationSource("walk.skeleon");
 ent->refreshAvailableAnimationState();

///得到动画集
 Ogre::AnimationStateSet* animSet = ent->getAllAnimationStates();

 

 mAnimationState = ogreHead->getAnimationState("Idle");
 mAnimationState->setLoop(true);
 mAnimationState->setEnabled(true);

 

///在每帧刷新函数里调用

 if (mAnimationState)
  mAnimationState->addTime(timeSinceLastFrame);

你可能感兴趣的:(Ogre手动添加骨骼动画)