Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/atmospheric_engine/src/lib/graphics/effects/cloud_effect.h @ 8242

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

branches/atmospheric_engine: general activate, cleanups

File size: 1.1 KB
RevLine 
[7679]1/**
2* @file cloud_effect.h
3*/
4
5#ifndef _CLOUD_EFFECT
6#define _CLOUD_EFFECT
7
8#include "weather_effect.h"
9
10#include "sound_buffer.h"
11#include "sound_source.h"
12
[8079]13#include "world_entity.h"
14#include "glincl.h"
15
[8175]16#include "sglmodel.h"
17
18class Shader;
[8052]19class Material;
[8079]20class Vector;
[8052]21
[7679]22class CloudEffect : public WeatherEffect
23{
24        public:
25                CloudEffect(const TiXmlElement* root = NULL);
26                virtual ~CloudEffect();
27
28                virtual void loadParams(const TiXmlElement* root);
29
30                virtual bool init();
31
32                virtual bool activate();
33                virtual bool deactivate();
34
[8242]35                inline void activateCloud() { this->activate(); }
36                inline void deactivateCloud() { this->deactivate(); }
37               
[7768]38                virtual void draw() const;
[7679]39                virtual void tick(float dt);
40
[8242]41                inline void setCloudOption(const std::string& option) {
42                        if (option == "activate") this->cloudActivate = true;
43                }
[7784]44
[8079]45
[7679]46        private:
[8079]47                void initialize(char* fileName);
[7768]48
[8242]49                bool                            cloudActivate;
50
[8119]51                Material*                       cloudMaterial;          // A Material for the Sphere.
[7768]52
[8119]53                std::string                     cloudTexture;
54
[8242]55                Sglmodel_sgl                    cloudModel;
56                Shader*                         cloudShader;
[7768]57
[8242]58                GLfloat                         cloudTint[4];
59                GLfloat                         cloudScroll;
[8175]60
[8242]61                float                           time;
[8175]62
[7679]63};
64
65#endif  /* _CLOUD_EFFECT */
Note: See TracBrowser for help on using the repository browser.