Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Changeset 9686 in orxonox.OLD for branches/new_class_id/src/lib/graphics


Ignore:
Timestamp:
Aug 22, 2006, 2:36:54 PM (18 years ago)
Author:
bensch
Message:

new_class_id: many more classes done

Location:
branches/new_class_id/src/lib/graphics/effects
Files:
14 edited

Legend:

Unmodified
Added
Removed
  • branches/new_class_id/src/lib/graphics/effects/cloud_effect.cc

    r9406 r9686  
    2929#include "script_class.h"
    3030
    31 #include "parser/tinyxml/tinyxml.h"
     31#include "class_id.h"
    3232
    3333Vector    CloudEffect::cloudColor;
     
    4848
    4949
    50 CREATE_SCRIPTABLE_CLASS(CloudEffect, CL_CLOUD_EFFECT,
     50CREATE_SCRIPTABLE_CLASS(CloudEffect, CloudEffect::classID(),
    5151                        addMethod("skyColor", ExecutorLua4<CloudEffect,float,float,float,float>(&CloudEffect::shellSkyColor))
    5252                        ->addMethod("cloudColor", ExecutorLua4<CloudEffect,float,float,float,float>(&CloudEffect::shellCloudColor))
     
    5757
    5858CREATE_FACTORY(CloudEffect, CL_CLOUD_EFFECT);
     59NewObjectListDefinitionID(CloudEffect, CL_CLOUD_EFFECT);
    5960
    6061CloudEffect::CloudEffect(const TiXmlElement* root) {
    61     this->setClassID(CL_CLOUD_EFFECT, "CloudEffect");
     62  this->registerObject(this, CloudEffect::_objectList);
    6263
    6364    this->init();
  • branches/new_class_id/src/lib/graphics/effects/cloud_effect.h

    r9112 r9686  
    3737
    3838class CloudEffect : public WeatherEffect {
     39  NewObjectListDeclaration(CloudEffect);
    3940
    4041public:
  • branches/new_class_id/src/lib/graphics/effects/fog_effect.cc

    r9406 r9686  
    2828SHELL_COMMAND(fadeout, FogEffect, fadeOutFog);
    2929
    30 
    31 
    32 CREATE_SCRIPTABLE_CLASS(FogEffect, CL_FOG_EFFECT,
     30#include "class_id.h"
     31
     32CREATE_SCRIPTABLE_CLASS(FogEffect, FogEffect::classID(),
    3333                        addMethod("fadeIn", ExecutorLua0<FogEffect>(&FogEffect::fadeInFog))
    3434                            ->addMethod("fadeOut", ExecutorLua0<FogEffect>(&FogEffect::fadeOutFog))
     
    3838
    3939CREATE_FACTORY(FogEffect, CL_FOG_EFFECT);
     40NewObjectListDefinition(FogEffect);
    4041
    4142/**
     
    4344 */
    4445FogEffect::FogEffect(const TiXmlElement* root) {
    45     this->setClassID(CL_FOG_EFFECT, "FogEffect");
    46 
     46  this->registerObject(this, FogEffect::_objectList);
    4747    // Initialize values
    4848    this->init();
     
    8585  this->fogFadeInActivate = false;
    8686  this->fogFadeOutActivate = false;
    87  
     87
    8888  this->cloudColor = Vector(0.2f, 0.3f, 0.3f);
    8989  this->skyColor = Vector(0.2f, 0.3f, 0.3f);
     
    105105    LoadParam(root, "cloudcolor", this, FogEffect, setCloudColor);
    106106    LoadParam(root, "skycolor", this, FogEffect, setSkyColor);
    107    
     107
    108108    LOAD_PARAM_START_CYCLE(root, element);
    109109    {
     
    131131
    132132    glEnable(GL_FOG);
    133    
     133
    134134    // Store cloud- and sky color before the snow
    135135    this->oldCloudColor = CloudEffect::cloudColor;
    136136    this->oldSkyColor   = CloudEffect::skyColor;
    137    
     137
    138138    // Change the colors
    139139    CloudEffect::changeCloudColor(this->cloudColor, this->fogFadeInDuration);
     
    241241    this->fogFadeInActivate = false;
    242242
    243    
     243
    244244    // If Fog is off, turn it on first
    245245    if (!this->fogActivate)
  • branches/new_class_id/src/lib/graphics/effects/fog_effect.h

    r9235 r9686  
    1515class FogEffect : public WeatherEffect
    1616{
     17  NewObjectListDeclaration(FogEffect);
    1718public:
    1819  FogEffect(const TiXmlElement* root = NULL);
     
    7576      this->fogActivate = true;
    7677  }
    77  
     78
    7879  inline void setCloudColor(float colorX, float colorY, float colorZ)
    7980  {
     
    119120
    120121  Vector        colorVector;
    121   float         localTimer; 
    122  
     122  float         localTimer;
     123
    123124  Vector oldSkyColor;
    124125  Vector oldCloudColor;
  • branches/new_class_id/src/lib/graphics/effects/lense_flare.cc

    r9406 r9686  
    3333#include "camera.h"
    3434
    35 
    36 
    37 
     35#include "class_id.h"
    3836
    3937CREATE_FACTORY(LenseFlare, CL_LENSE_FLARE);
    40 
     38NewObjectListDefinitionID(LenseFlare, CL_LENSE_FLARE);
    4139
    4240/**
     
    4543 */
    4644LenseFlare::LenseFlare(const TiXmlElement* root) {
    47     this->setClassID(CL_LENSE_FLARE, "LenseFlare");
     45  this->registerObject(this, LenseFlare::_objectList);
    4846
    4947    /*          length                      image scale */
  • branches/new_class_id/src/lib/graphics/effects/lense_flare.h

    r8619 r9686  
    2626class LenseFlare : public GraphicsEffect
    2727{
     28  NewObjectListDeclaration(LenseFlare);
    2829  public:
    2930    LenseFlare(const TiXmlElement* root = NULL);
  • branches/new_class_id/src/lib/graphics/effects/lightning_effect.cc

    r9406 r9686  
    2323#include "effects/billboard.h"
    2424
    25 #include "glincl.h"
    26 #include "parser/tinyxml/tinyxml.h"
    27 
    2825#include "shell_command.h"
    2926#include "light.h"
    3027#include "cloud_effect.h"
    3128#include "script_class.h"
     29#include "class_id.h"
    3230
    3331SHELL_COMMAND(activate, LightningEffect, activateLightning);
    3432SHELL_COMMAND(deactivate, LightningEffect, deactivateLightning);
    3533
    36 
    37 
    38 CREATE_SCRIPTABLE_CLASS(LightningEffect, CL_LIGHTNING_EFFECT,
     34CREATE_SCRIPTABLE_CLASS(LightningEffect, LightningEffect::classID(),
    3935                        addMethod("activate", ExecutorLua0<LightningEffect>(&LightningEffect::activate))
    4036                            ->addMethod("deactivate", ExecutorLua0<LightningEffect>(&LightningEffect::deactivate))
     
    4238
    4339CREATE_FACTORY(LightningEffect, CL_LIGHTNING_EFFECT);
     40NewObjectListDefinitionID(LightningEffect, CL_LIGHTNING_EFFECT);
    4441
    4542LightningEffect::LightningEffect(const TiXmlElement* root) {
    46     this->setClassID(CL_LIGHTNING_EFFECT, "LightningEffect");
    47 
     43  this->registerObject(this, LightningEffect::_objectList);
    4844    this->init();
    4945
  • branches/new_class_id/src/lib/graphics/effects/lightning_effect.h

    r9006 r9686  
    1717class Light;
    1818
    19 class LightningEffect : public WeatherEffect {
     19class LightningEffect : public WeatherEffect
     20{
     21  NewObjectListDeclaration(LightningEffect);
    2022public:
    21     LightningEffect(const TiXmlElement* root = NULL);
    22     virtual ~LightningEffect();
     23  LightningEffect(const TiXmlElement* root = NULL);
     24  virtual ~LightningEffect();
    2325
    24     virtual void loadParams(const TiXmlElement* root);
     26  virtual void loadParams(const TiXmlElement* root);
    2527
    26     virtual void init();
     28  virtual void init();
    2729
    28     virtual void activate();
    29     virtual void deactivate();
     30  virtual void activate();
     31  virtual void deactivate();
    3032
    31     inline  void activateLightning() {
    32         this->activate();
    33     }
    34     inline  void deactivateLightning() {
    35         this->deactivate();
    36     }
     33  inline  void activateLightning()
     34  {
     35    this->activate();
     36  }
     37  inline  void deactivateLightning()
     38  {
     39    this->deactivate();
     40  }
    3741
    38     virtual void tick(float dt);
     42  virtual void tick(float dt);
    3943
    40     void coord(float x, float y, float z);
    41     void setFlashSize(float width, float height, float seedWidth, float seedHeight);
     44  void coord(float x, float y, float z);
     45  void setFlashSize(float width, float height, float seedWidth, float seedHeight);
    4246
    43     inline void setLightningOption(const std::string& option) {
    44         if (option == "activate")
    45             this->lightningActivate = true;
    46         if (option == "movelightning")
    47             this->lightningMove = true;
    48     }
     47  inline void setLightningOption(const std::string& option)
     48  {
     49    if (option == "activate")
     50      this->lightningActivate = true;
     51    if (option == "movelightning")
     52      this->lightningMove = true;
     53  }
    4954
    50     inline void setFlashFrequency(float baseFrequency, float seedTime) {
    51         this->flashFrequencyBase = baseFrequency;
    52         this->flashFrequency = baseFrequency;
    53         this->flashFrequencySeed = seedTime;
    54     }
     55  inline void setFlashFrequency(float baseFrequency, float seedTime)
     56  {
     57    this->flashFrequencyBase = baseFrequency;
     58    this->flashFrequency = baseFrequency;
     59    this->flashFrequencySeed = seedTime;
     60  }
    5561
    56     inline void setFlashConstTime(float holdTime) {
    57         this->flashHoldTime = holdTime;
    58     }
     62  inline void setFlashConstTime(float holdTime)
     63  {
     64    this->flashHoldTime = holdTime;
     65  }
    5966
    60     inline void setFlashRisingTime(float flashRisingTime) {
    61         if(flashRisingTime > this->flashHoldTime)
    62             this->flashRisingTime = this->flashHoldTime * 0.5;
    63         else
    64             this->flashRisingTime = flashRisingTime;
    65     }
     67  inline void setFlashRisingTime(float flashRisingTime)
     68  {
     69    if(flashRisingTime > this->flashHoldTime)
     70      this->flashRisingTime = this->flashHoldTime * 0.5;
     71    else
     72      this->flashRisingTime = flashRisingTime;
     73  }
    6674
    67     inline void setFlashSeed(float seedX, float seedZ) {
    68         this->seedX = seedX;
    69         this->seedZ = seedZ;
    70     }
     75  inline void setFlashSeed(float seedX, float seedZ)
     76  {
     77    this->seedX = seedX;
     78    this->seedZ = seedZ;
     79  }
    7180
    7281
    7382private:
    7483
    75     void newCoordinates();
    76     void setTexture();
    77     void switchTexture();
     84  void newCoordinates();
     85  void setTexture();
     86  void switchTexture();
    7887
    79     Billboard* thunderBolt[4];
    80     bool thunderTextureA;
     88  Billboard* thunderBolt[4];
     89  bool thunderTextureA;
    8190
    82     bool lightningActivate;
    83     bool lightningMove;
     91  bool lightningActivate;
     92  bool lightningMove;
    8493
    85     float flashFrequency;
    86     float flashFrequencyBase;
    87     float flashHoldTime;
    88     float flashRisingTime;
     94  float flashFrequency;
     95  float flashFrequencyBase;
     96  float flashHoldTime;
     97  float flashRisingTime;
    8998
    90     float time;
     99  float time;
    91100
    92     float width;
    93     float height;
    94     float seedWidth;
    95     float seedHeight;
     101  float width;
     102  float height;
     103  float seedWidth;
     104  float seedHeight;
    96105
    97     float seedX;
    98     float seedZ;
    99     float flashFrequencySeed;
     106  float seedX;
     107  float seedZ;
     108  float flashFrequencySeed;
    100109
    101     float mainPosX;
    102     float mainPosY;
    103     float mainPosZ;
     110  float mainPosX;
     111  float mainPosY;
     112  float mainPosZ;
    104113
    105     Vector origSkyColor;
    106     Vector cameraCoor;
     114  Vector origSkyColor;
     115  Vector cameraCoor;
    107116
    108     Light* flashLight;
     117  Light* flashLight;
    109118
    110     OrxSound::SoundSource    soundSource;
    111     OrxSound::SoundBuffer*   thunderBuffer;
     119  OrxSound::SoundSource    soundSource;
     120  OrxSound::SoundBuffer*   thunderBuffer;
    112121
    113122};
  • branches/new_class_id/src/lib/graphics/effects/rain_effect.cc

    r9406 r9686  
    3131#include "script_class.h"
    3232
    33 #include "parser/tinyxml/tinyxml.h"
     33#include "class_id.h"
    3434
    3535// Define shell commands
     
    4141
    4242
    43 CREATE_SCRIPTABLE_CLASS(RainEffect, CL_RAIN_EFFECT,
     43CREATE_SCRIPTABLE_CLASS(RainEffect, RainEffect::classID(),
    4444                        addMethod("startRaining", ExecutorLua0<RainEffect>(&RainEffect::startRaining))
    4545                            ->addMethod("stopRaining", ExecutorLua0<RainEffect>(&RainEffect::stopRaining))
     
    4949
    5050CREATE_FACTORY(RainEffect, CL_RAIN_EFFECT);
     51NewObjectListDefinitionID(RainEffect, CL_RAIN_EFFECT);
    5152
    5253/**
     
    5455 */
    5556RainEffect::RainEffect(const TiXmlElement* root) {
    56     this->setClassID(CL_RAIN_EFFECT, "RainEffect");
    57 
     57  this->registerObject(this, RainEffect::_objectList);
    5858    this->init();
    5959
  • branches/new_class_id/src/lib/graphics/effects/rain_effect.h

    r9235 r9686  
    2525class RainEffect : public WeatherEffect
    2626{
     27  NewObjectListDeclaration(RainEffect);
    2728public:
    2829  RainEffect(const TiXmlElement* root = NULL);
     
    136137  Vector                      skyColor;
    137138  Vector                      cloudColor;
    138  
     139
    139140  LightManager*               lightMan;
    140141
  • branches/new_class_id/src/lib/graphics/effects/snow_effect.cc

    r9406 r9686  
    3030#include "cloud_effect.h"
    3131
    32 #include "parser/tinyxml/tinyxml.h"
     32#include "class_id.h"
    3333
    3434SHELL_COMMAND(activate, SnowEffect, activateSnow);
     
    3636
    3737
    38 CREATE_SCRIPTABLE_CLASS(SnowEffect, CL_SNOW_EFFECT,
     38CREATE_SCRIPTABLE_CLASS(SnowEffect, SnowEffect::classID(),
    3939                            addMethod("activate", ExecutorLua0<SnowEffect>(&SnowEffect::activate))
    4040                            ->addMethod("deactivate", ExecutorLua0<SnowEffect>(&SnowEffect::deactivate))
     
    4242
    4343CREATE_FACTORY(SnowEffect, CL_SNOW_EFFECT);
     44NewObjectListDefinitionID(SnowEffect, CL_SNOW_EFFECT);
    4445
    4546SnowEffect::SnowEffect(const TiXmlElement* root)
    4647{
    47         this->setClassID(CL_SNOW_EFFECT, "SnowEffect");
     48  this->registerObject(this, SnowEffect::_objectList);
    4849
    4950        this->init();
  • branches/new_class_id/src/lib/graphics/effects/snow_effect.h

    r9406 r9686  
    2121#include "sound_buffer.h"
    2222
    23 class SnowEffect : public WeatherEffect {
     23class SnowEffect : public WeatherEffect
     24{
     25  NewObjectListDeclaration(SnowEffect);
    2426public:
    25     SnowEffect(const TiXmlElement* root = NULL);
    26     virtual ~SnowEffect();
     27  SnowEffect(const TiXmlElement* root = NULL);
     28  virtual ~SnowEffect();
    2729
    28     virtual void loadParams(const TiXmlElement* root);
     30  virtual void loadParams(const TiXmlElement* root);
    2931
    30     virtual void init();
     32  virtual void init();
    3133
    32     virtual void activate();
    33     virtual void deactivate();
     34  virtual void activate();
     35  virtual void deactivate();
    3436
    35     inline void activateSnow() {
    36         this->activate();
    37     }
    38     inline void deactivateSnow() {
    39         this->deactivate();
    40     }
     37  inline void activateSnow()
     38  {
     39    this->activate();
     40  }
     41  inline void deactivateSnow()
     42  {
     43    this->deactivate();
     44  }
    4145
    42     virtual void draw() const;
    43     virtual void tick(float dt);
     46  virtual void draw() const;
     47  virtual void tick(float dt);
    4448
    4549
    46     inline void numParticles(int n) {
    47         this->particles = n;
    48     }
    49     inline void materialTexture(const std::string& texture) {
    50         this->texture = texture;
    51     }
    52     inline void lifeSpan(float lifeSpan, float randomLifeSpan) {
    53         this->snowLife = lifeSpan;
    54         this->randomLife = randomLifeSpan;
    55     }
    56     inline void radius(float radius, float randomRadius) {
    57         this->snowRadius = radius;
    58         this->randomRadius = randomRadius;
    59     }
    60     inline void mass(float mass, float randomMass) {
    61         this->snowMass = mass;
    62         this->randomMass = randomMass;
    63     }
    64     inline void emissionRate(float emissionRate) {
    65         this->rate = emissionRate;
    66     }
    67     inline void emissionVelocity(float velocity, float randomVelocity) {
    68         this->velocity = velocity;
    69         this->randomVelocity = randomVelocity;
    70     }
    71     inline void size(float sizeX, float sizeY) {
    72         this->snowSize = Vector2D(sizeX, sizeY);
    73     }
    74     inline void coord(float x, float y, float z) {
    75         this->snowCoord = Vector(x, y, z);
    76     }
    77     inline void wind(int force) {
    78         this->snowWindForce = force;
    79     }
    80     inline void setCloudColor(float colorX, float colorY, float colorZ)
    81     {
    82       this->cloudColor = Vector(colorX, colorY, colorZ);
    83     }
    84     inline void setSkyColor(float colorX, float colorY, float colorZ)
    85     {
    86       this->skyColor = Vector(colorX, colorY, colorZ);
    87     }
    88     inline void setFadeTime(float time)
    89     {
    90       this->fadeTime = time;
    91     }
     50  inline void numParticles(int n)
     51  {
     52    this->particles = n;
     53  }
     54  inline void materialTexture(const std::string& texture)
     55  {
     56    this->texture = texture;
     57  }
     58  inline void lifeSpan(float lifeSpan, float randomLifeSpan)
     59  {
     60    this->snowLife = lifeSpan;
     61    this->randomLife = randomLifeSpan;
     62  }
     63  inline void radius(float radius, float randomRadius)
     64  {
     65    this->snowRadius = radius;
     66    this->randomRadius = randomRadius;
     67  }
     68  inline void mass(float mass, float randomMass)
     69  {
     70    this->snowMass = mass;
     71    this->randomMass = randomMass;
     72  }
     73  inline void emissionRate(float emissionRate)
     74  {
     75    this->rate = emissionRate;
     76  }
     77  inline void emissionVelocity(float velocity, float randomVelocity)
     78  {
     79    this->velocity = velocity;
     80    this->randomVelocity = randomVelocity;
     81  }
     82  inline void size(float sizeX, float sizeY)
     83  {
     84    this->snowSize = Vector2D(sizeX, sizeY);
     85  }
     86  inline void coord(float x, float y, float z)
     87  {
     88    this->snowCoord = Vector(x, y, z);
     89  }
     90  inline void wind(int force)
     91  {
     92    this->snowWindForce = force;
     93  }
     94  inline void setCloudColor(float colorX, float colorY, float colorZ)
     95  {
     96    this->cloudColor = Vector(colorX, colorY, colorZ);
     97  }
     98  inline void setSkyColor(float colorX, float colorY, float colorZ)
     99  {
     100    this->skyColor = Vector(colorX, colorY, colorZ);
     101  }
     102  inline void setFadeTime(float time)
     103  {
     104    this->fadeTime = time;
     105  }
    92106
    93     inline void setSnowOption(const std::string& option) {
    94         /*if (option == "fade") this->snowFade = true;*/
    95         if (option == "movesnow")
    96             this->snowMove = true;
    97         if (option == "activate")
    98             this->snowActivate = true;
    99     }
     107  inline void setSnowOption(const std::string& option)
     108  {
     109    /*if (option == "fade") this->snowFade = true;*/
     110    if (option == "movesnow")
     111      this->snowMove = true;
     112    if (option == "activate")
     113      this->snowActivate = true;
     114  }
    100115
    101116
    102117private:
    103     int               particles;
    104     std::string       texture;
    105     float             snowLife, randomLife;
    106     float             snowRadius, randomRadius;
    107     float             snowMass, randomMass;
    108     float             rate;
    109     float             velocity, randomVelocity;
    110     float             angle, randomAngle;
    111     float             alpha;
    112     float             fadeTime;
    113     Vector            snowCoord;
    114     Vector2D          snowSize;
    115     int               snowWindForce;
     118  int               particles;
     119  std::string       texture;
     120  float             snowLife, randomLife;
     121  float             snowRadius, randomRadius;
     122  float             snowMass, randomMass;
     123  float             rate;
     124  float             velocity, randomVelocity;
     125  float             angle, randomAngle;
     126  float             alpha;
     127  float             fadeTime;
     128  Vector            snowCoord;
     129  Vector2D          snowSize;
     130  int               snowWindForce;
    116131
    117     bool              snowMove;
    118     bool              snowActivate;
     132  bool              snowMove;
     133  bool              snowActivate;
    119134
    120     PlaneEmitter*     emitter;
     135  PlaneEmitter*     emitter;
    121136
    122     static SpriteParticles*   snowParticles;
    123     OrxSound::SoundSource     soundSource;
    124     OrxSound::SoundBuffer*    windBuffer;
     137  static SpriteParticles*   snowParticles;
     138  OrxSound::SoundSource     soundSource;
     139  OrxSound::SoundBuffer*    windBuffer;
    125140
    126     Vector            oldSkyColor;
    127     Vector            oldCloudColor;
    128     Vector            skyColor;
    129     Vector            cloudColor;
     141  Vector            oldSkyColor;
     142  Vector            oldCloudColor;
     143  Vector            skyColor;
     144  Vector            cloudColor;
    130145};
    131146
  • branches/new_class_id/src/lib/graphics/effects/volfog_effect.cc

    r9406 r9686  
    4747
    4848
    49 
     49#include "class_id.h"
    5050
    5151CREATE_FACTORY(VolFogEffect, CL_VOLFOG_EFFECT);
     52NewObjectListDefinitionID(VolFogEffect, CL_VOLFOG_EFFECT);
    5253
    5354VolFogEffect::VolFogEffect(const TiXmlElement* root) {
    54     this->setClassID(CL_VOLFOG_EFFECT, "VolFogEffect");
     55  this->registerObject(this, VolFogEffect::_objectList);
    5556
    5657    if (root != NULL)
  • branches/new_class_id/src/lib/graphics/effects/volfog_effect.h

    r8495 r9686  
    1111#include "glincl.h"
    1212
    13 class VolFogEffect : public WeatherEffect {
     13class VolFogEffect : public WeatherEffect
     14{
     15  NewObjectListDeclaration(VolFogEffect);
    1416public:
    15     VolFogEffect(const TiXmlElement* root = NULL);
    16     virtual ~VolFogEffect();
     17  VolFogEffect(const TiXmlElement* root = NULL);
     18  virtual ~VolFogEffect();
    1719
    18     virtual void loadParams(const TiXmlElement* root);
     20  virtual void loadParams(const TiXmlElement* root);
    1921
    20     virtual void init();
     22  virtual void init();
    2123
    22     virtual void activate();
    23     virtual void deactivate();
     24  virtual void activate();
     25  virtual void deactivate();
    2426
    25     virtual void draw() const;
    26     virtual void tick(float dt);
     27  virtual void draw() const;
     28  virtual void tick(float dt);
    2729
    2830private:
    29     GLfloat fogColor[4];
     31  GLfloat fogColor[4];
    3032
    3133};
Note: See TracChangeset for help on using the changeset viewer.