00001 00006 #ifndef __IMGPARTICLE_H__ 00007 #define __IMGPARTICLE_H__ 00008 00009 #ifdef __APPLE__ 00010 #include <GLUT/glut.h> 00011 #else 00012 #include <GL/glut.h> 00013 #endif 00014 00015 #include "Particle.h" 00016 #include "Texture.h" 00017 #include "TGALoader.h" 00018 #include "Debugger.h" 00019 00020 namespace ParticleSystems { 00022 00029 class ImgParticle : public Particle { 00030 public: 00031 00033 00040 ImgParticle(int sysId, Solver *sol,Texture *text); 00041 00043 00057 ImgParticle(int sysId, 00058 Solver *sol, 00059 GraphicsLib::Point3 pos, 00060 GraphicsLib::Vector vel, 00061 GraphicsLib::Colour c, 00062 GraphicsLib::Colour fc, 00063 GLfloat size, 00064 GLfloat fs, 00065 GLfloat maxLife, 00066 Texture *text); 00067 00069 00072 virtual ~ImgParticle(); 00073 00075 00078 virtual void draw(void); 00079 00081 00085 virtual void update(void); 00086 00088 00092 virtual bool isDead(void); 00093 00095 00098 Texture *texture; 00099 private : 00101 00104 unsigned int TextureID; 00105 }; 00106 } 00107 #endif