1 // Copyright (C) 2002-2012 Nikolaus Gebhardt
\r
2 // This file is part of the "Irrlicht Engine".
\r
3 // For conditions of distribution and use, see copyright notice in irrlicht.h
\r
5 #ifndef __C_SCENE_NODE_ANIMATOR_TEXTURE_H_INCLUDED__
\r
6 #define __C_SCENE_NODE_ANIMATOR_TEXTURE_H_INCLUDED__
\r
8 #include "irrArray.h"
\r
9 #include "ISceneNodeAnimatorFinishing.h"
\r
15 class CSceneNodeAnimatorTexture : public ISceneNodeAnimatorFinishing
\r
20 CSceneNodeAnimatorTexture(const core::array<video::ITexture*>& textures,
\r
21 s32 timePerFrame, bool loop, u32 now);
\r
24 virtual ~CSceneNodeAnimatorTexture();
\r
26 //! animates a scene node
\r
27 virtual void animateNode(ISceneNode* node, u32 timeMs) _IRR_OVERRIDE_;
\r
29 //! Writes attributes of the scene node animator.
\r
30 virtual void serializeAttributes(io::IAttributes* out, io::SAttributeReadWriteOptions* options=0) const _IRR_OVERRIDE_;
\r
32 //! Reads attributes of the scene node animator.
\r
33 virtual void deserializeAttributes(io::IAttributes* in, io::SAttributeReadWriteOptions* options=0) _IRR_OVERRIDE_;
\r
35 //! Returns type of the scene node animator
\r
36 virtual ESCENE_NODE_ANIMATOR_TYPE getType() const _IRR_OVERRIDE_ { return ESNAT_TEXTURE; }
\r
38 //! Creates a clone of this animator.
\r
39 /** Please note that you will have to drop
\r
40 (IReferenceCounted::drop()) the returned pointer after calling
\r
42 virtual ISceneNodeAnimator* createClone(ISceneNode* node, ISceneManager* newManager=0) _IRR_OVERRIDE_;
\r
47 void clearTextures();
\r
49 core::array<video::ITexture*> Textures;
\r
55 } // end namespace scene
\r
56 } // end namespace irr
\r