00001 00010 #ifndef ANIMTEXPLANE_H 00011 #define ANIMTEXPLANE_H 00012 00013 #include "DrawObj.H" 00014 #include "Color.H" 00015 00016 // Gluebase includes 00017 #define OUTSIDE_GLUE_CORE 00018 #include <std/strings.H> 00019 00020 00021 class AnimTexPlane : public DrawObj 00022 { 00023 public: 00024 00025 AnimTexPlane(str_ptr texNameList, double frameTimeInterval, 00026 int blendTransitions); 00027 virtual ~AnimTexPlane(); 00028 00029 void preFrame(); 00030 00031 Color color() { return _color; } 00032 void setColor(Color c) { _color = c; } 00033 00034 void draw(); 00035 00036 protected: 00037 00038 void loadTextures(char *filelist); 00039 00040 ARRAY<str_ptr> _textures; 00041 double _frameTimeInterval; 00042 double _lastFrameTime; 00043 int _curFrame; 00044 int _nextFrame; 00045 double _alpha; 00046 Color _color; 00047 int _blendTransitions; 00048 00049 // default material properties 00050 double _shininess; 00051 Color _diffuse; 00052 Color _specular; 00053 Color _emission; 00054 Color _ambient; 00055 00056 }; 00057 00058 #endif