diff options
author | Campbell Barton <ideasman42@gmail.com> | 2009-06-15 14:11:08 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2009-06-15 14:11:08 +0400 |
commit | 2773464561e5e2e19295b96684a4fd0d9bb60361 (patch) | |
tree | 8ad4d46d76a1e048ab9bb062d71fbb6f5b094d90 /source/gameengine/Converter/KX_BlenderScalarInterpolator.h | |
parent | e6aa552e25cd2c8ff6582b3f8fb2a91b8aad2711 (diff) |
Game Engine working with the new animation system for Ipos (IpoActuator)
FCurves are used for animation evaluation so FCurve modifiers work :).
Tested with object location and object color animation.
Armature and Shape Keys next.
Diffstat (limited to 'source/gameengine/Converter/KX_BlenderScalarInterpolator.h')
-rw-r--r-- | source/gameengine/Converter/KX_BlenderScalarInterpolator.h | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/source/gameengine/Converter/KX_BlenderScalarInterpolator.h b/source/gameengine/Converter/KX_BlenderScalarInterpolator.h index 94d15aff6be..396a7d197df 100644 --- a/source/gameengine/Converter/KX_BlenderScalarInterpolator.h +++ b/source/gameengine/Converter/KX_BlenderScalarInterpolator.h @@ -38,29 +38,26 @@ typedef unsigned short BL_IpoChannel; class BL_ScalarInterpolator : public KX_IScalarInterpolator { public: BL_ScalarInterpolator() {} // required for use in STL list - BL_ScalarInterpolator(struct Ipo *ipo, BL_IpoChannel channel) : - m_blender_ipo(ipo), - m_channel(channel) + BL_ScalarInterpolator(struct FCurve* fcu) : + m_fcu(fcu) {} virtual ~BL_ScalarInterpolator() {} virtual float GetValue(float currentTime) const; - - BL_IpoChannel GetChannel() const { return m_channel; } + struct FCurve *GetFCurve() { return m_fcu;}; private: - struct Ipo *m_blender_ipo; - BL_IpoChannel m_channel; + struct FCurve *m_fcu; }; class BL_InterpolatorList : public std::vector<KX_IScalarInterpolator *> { public: - BL_InterpolatorList(struct Ipo *ipo); + BL_InterpolatorList(struct AnimData *adt); ~BL_InterpolatorList(); - KX_IScalarInterpolator *GetScalarInterpolator(BL_IpoChannel channel); + KX_IScalarInterpolator *GetScalarInterpolator(char *rna_path, int array_index); }; #endif //__KX_SCALARINTERPOLATOR_H |