00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef CAL_MORPHTARGETMIXER_H
00012 #define CAL_MORPHTARGETMIXER_H
00013
00014
00015 #include "cal3d/global.h"
00016
00017
00018 class CalModel;
00019
00020
00021 class CAL3D_API CalMorphTargetMixer
00022 {
00023 public:
00024 CalMorphTargetMixer(CalModel* model);
00025 ~CalMorphTargetMixer() { }
00026
00027 bool blend(int id, float weight, float delay);
00028 bool clear(int id, float delay);
00029 float getCurrentWeight(int id);
00030 float getCurrentWeightBase();
00031 int getMorphTargetCount();
00032 void update(float deltaTime);
00033
00034 private:
00035 std::vector<float> m_vectorCurrentWeight;
00036 std::vector<float> m_vectorEndWeight;
00037 std::vector<float> m_vectorDuration;
00038 CalModel *m_pModel;
00039 };
00040
00041 #endif
00042
00043