Classes | Public Types | Public Member Functions | List of all members
SkyX::VClouds::DataManager Class Reference

#include <DataManager.h>

Classes

struct  Cell
 Cell struct. More...
 

Public Types

enum  VolTextureId { VOL_TEX0 = 0, VOL_TEX1 = 1 }
 Volumetric textures enumeration. More...
 

Public Member Functions

 DataManager (VClouds *vc)
 Constructor. More...
 
 ~DataManager ()
 Destructor. More...
 
const Ogre::Real _getInterpolation () const
 Get current interpolation factor. More...
 
void addEllipsoid (Ellipsoid *e, const bool &UpdateProbabilities=true)
 Add ellipsoid: clouds are modelled as ellipsoids in our simulation approach, so. More...
 
void create (const int &nx, const int &ny, const int &nz)
 Create. More...
 
void forceToUpdateData ()
 Forces the data manager to calculate the next step right now. More...
 
const Ogre::Real & getUpdateTime () const
 Get update time. More...
 
const bool & isCreated () const
 Has been create(...) already called? More...
 
void remove ()
 Remove. More...
 
void setUpdateTime (const float &UpdateTime)
 Set update time. More...
 
void setWheater (const float &Humidity, const float &AverageCloudsSize, const bool &delayedResponse=true)
 Set wheater parameters Use this funtion to update the cloud field parameters, you'll get a smart and smooth transition from your old setting to your new ones. More...
 
void update (const Ogre::Real &timeSinceLastFrame)
 Update. More...
 

Member Enumeration Documentation

Volumetric textures enumeration.

Enumerator
VOL_TEX0 
VOL_TEX1 

Constructor & Destructor Documentation

SkyX::VClouds::DataManager::DataManager ( VClouds vc)

Constructor.

Parameters
vcVClouds parent pointer
SkyX::VClouds::DataManager::~DataManager ( )

Destructor.

Member Function Documentation

const Ogre::Real SkyX::VClouds::DataManager::_getInterpolation ( ) const
inline

Get current interpolation factor.

Returns
Interpolation factor
Remarks
Only for internal use
void SkyX::VClouds::DataManager::addEllipsoid ( Ellipsoid e,
const bool &  UpdateProbabilities = true 
)

Add ellipsoid: clouds are modelled as ellipsoids in our simulation approach, so.

. different kind of clouds can be modelled with ellipsoids compositions.

Parameters
eEllipsoid
UpdateProbabilitiesUpdate probabilities?
void SkyX::VClouds::DataManager::create ( const int &  nx,
const int &  ny,
const int &  nz 
)

Create.

Parameters
nxX complexity
nyY complexity
nzZ complexity
void SkyX::VClouds::DataManager::forceToUpdateData ( )

Forces the data manager to calculate the next step right now.

const Ogre::Real& SkyX::VClouds::DataManager::getUpdateTime ( ) const
inline

Get update time.

Returns
Update time
const bool& SkyX::VClouds::DataManager::isCreated ( ) const
inline

Has been create(...) already called?

Returns
true if created() have been already called

References SkyX::mCreated.

void SkyX::VClouds::DataManager::remove ( )

Remove.

void SkyX::VClouds::DataManager::setUpdateTime ( const float &  UpdateTime)
inline

Set update time.

Parameters
UpdateTimeTime elapsed between data calculations, a little freeze could be experimented during these calculations on old CPU's
void SkyX::VClouds::DataManager::setWheater ( const float &  Humidity,
const float &  AverageCloudsSize,
const bool &  delayedResponse = true 
)

Set wheater parameters Use this funtion to update the cloud field parameters, you'll get a smart and smooth transition from your old setting to your new ones.

Parameters
HumidityHumidity, in other words: the percentage of clouds in [0,1] range.
AverageCloudsSizeAverage clouds size, for example: if previous wheater clouds size parameter was very different from new one(i.e: more little) only the old biggest clouds are going to be keept and the little ones are going to be replaced
delayedResponsefalse to change wheather conditions over several updates, true to change it at the moment
void SkyX::VClouds::DataManager::update ( const Ogre::Real &  timeSinceLastFrame)

Update.

Parameters
timeSinceLastFrameTime elapsed since last frame

The documentation for this class was generated from the following file: