Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/atmospheric_engine/src/lib/graphics/effects/rain_effect.h @ 7628

Last change on this file since 7628 was 7628, checked in by amaechler, 18 years ago

branches/atmospheric_engine: Basic RainEffect working

File size: 1.1 KB
Line 
1/**
2 * @file rain_effect.h
3 */
4
5#ifndef _RAIN_EFFECT
6#define _RAIN_EFFECT
7
8#include "vector.h"
9#include "vector2D.h"
10
11#include "particle_system.h"
12
13class SparkParticles;
14class PlainEmitter;
15
16#include "weather_effect.h"
17
18
19class RainEffect : public WeatherEffect
20{
21  public:
22    RainEffect(const TiXmlElement* root = NULL);
23    virtual ~RainEffect();
24
25    virtual void loadParams(const TiXmlElement* root);
26
27    virtual bool init();
28
29    virtual bool activate();
30    virtual bool deactivate();
31
32    inline void setRainCoord(float x, float y, float z) { this->rainCoord = Vector(x, y, z); }
33    inline void setRainSize(float x, float y) { this->rainSize = Vector2D(x, y); }
34    inline void setRainRate(float rate) { this->rainRate = rate;}
35    inline void setRainVelocity(float velocity) { this->rainVelocity = velocity; }
36
37  private:
38    static SparkParticles*            rainParticles;
39    ParticleEmitter*                  emitter;
40
41    Vector                            rainCoord;
42    Vector2D                          rainSize;
43    GLfloat                           rainRate;
44    GLfloat                           rainVelocity;
45};
46
47
48#endif  /* _RAIN_EFFECT */
Note: See TracBrowser for help on using the repository browser.