Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/network/src/lib/graphics/effects/lense_flare.h @ 6786

Last change on this file since 6786 was 6786, checked in by patrick, 18 years ago

network: compiles again

File size: 1.1 KB
Line 
1/**
2 * @file lense_flare.h
3 *  lense flare effect
4 */
5
6#ifndef _LENSE_FLARE
7#define _LENSE_FLARE
8
9#include "graphics_effect.h"
10
11#include <vector>
12
13#include "vector.h"
14
15class TiXmlElement;
16class Light;
17class Billboard;
18
19//! A class that handles LenseFlares. The LenseFlareManager operates on this.
20class LenseFlare : public GraphicsEffect
21{
22  public:
23    LenseFlare(const TiXmlElement* root = NULL);
24    virtual ~LenseFlare();
25
26    virtual void loadParams(const TiXmlElement* root);
27
28    virtual bool init();
29
30    virtual bool activate();
31    virtual bool deactivate();
32
33    virtual void draw() const;
34    virtual void tick(float dt);
35
36    void addFlare(const char* textureName);
37
38
39  private:
40    GLint charToFogMode(const char* mode);
41
42
43  private:
44    Light*                   lightSource;        //!< reference to the sun (or primary light source)
45    std::vector<Billboard*>  flares;             //!< the flares array
46
47    Vector                   flareVector;        //!< the axis to draw the flares on
48    Vector                   screenCenter;       //!< the vector marking the center of the screen
49};
50
51
52#endif /* _LENSE_FLARE */
Note: See TracBrowser for help on using the repository browser.