⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 animationblender.h

📁 DirectX群共享的好东西啊 ! 希望能对你有帮助
💻 H
字号:
#pragma once
#ifndef AnimationBlender_Incl
#define AnimationBlender_Incl

#include <Ogre.h>
using namespace Ogre;
class AnimationBlender
{
public:
	enum BlendingTransition		//不同的混合方式
	{
		BlendSwitch,         // 直接切换到目标动画
		BlendWhileAnimating,   // 交叉淡入淡出(源动画比例缩小,同时目标动画比例增大)
		BlendThenAnimate      // 淡出源动画到目标动画第一帧,然后开始目标动画 
	};

private:
	Entity *mEntity;
	AnimationState *mSource;
	AnimationState *mTarget;

	BlendingTransition mTransition;

	bool loop; //是否循环

	~AnimationBlender() {}

public: 
	Real mTimeleft, mDuration;	//持续时间

	bool complete;

	void blend( const String &animation, BlendingTransition transition, Real duration, bool l );
	void addTime( Real );
	Real getProgress() { return mTimeleft/ mDuration; }
	AnimationState *getSource() { return mSource; }
	AnimationState *getTarget() { return mTarget; }
	AnimationBlender( Entity *);
	void init( const String &animation );
};

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -