*/
virtual ssgBranch * getBranch () { return _branch; }
+ /**
+ * Initialize the animation, after children have been added.
+ */
+ virtual void init ();
+
/**
* Update the animation.
*/
- virtual void update () = 0;
+ virtual void update ();
protected:
public:
NullAnimation (SGPropertyNode_ptr props);
virtual ~NullAnimation ();
- virtual void update ();
};
public:
RangeAnimation (SGPropertyNode_ptr props);
virtual ~RangeAnimation ();
- virtual void update ();
};
public:
BillboardAnimation (SGPropertyNode_ptr props);
virtual ~BillboardAnimation ();
- virtual void update ();
};
};
+/**
+ * Animation to draw objects for a specific amount of time each.
+ */
+class TimedAnimation : public Animation
+{
+public:
+ TimedAnimation (SGPropertyNode_ptr props);
+ virtual ~TimedAnimation ();
+ virtual void update ();
+private:
+ double _duration_sec;
+ double _last_time_sec;
+ int _step;
+};
+
+
/**
* Animation to rotate an object around a center point.
*
};
#endif // __MODEL_HXX
-
-
-