# Home    # nevrax.com   
Nevrax
Nevrax.org
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
Docs
 
Documentation  
Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  

NL3D::CCloudScape Class Reference

#include <cloud_scape.h>

List of all members.

Public Methods

 CCloudScape (NL3D::IDriver *pDriver)
 ~CCloudScape ()
void init (SCloudScapeSetup *pCSS=NULL, NL3D::CCamera *pCamera=NULL)
void set (SCloudScapeSetup &css)
void anim (double dt, NL3D::CCamera *pCamera)
void render ()
uint32 getMemSize ()
void setQuality (float threshold)
void setNbCloudToUpdateIn80ms (uint32 n)
bool isDebugQuadEnabled ()
void setDebugQuad (bool b)

Private Methods

void makeHalfCloud ()

Private Attributes

uint32 _NbHalfCloudToUpdate
double _GlobalTime
double _DeltaTime
double _DTRest
NLMISC::CValueSmoother _AverageFrameRate
bool _Generate
CCloud_CurrentCloudInProcess
double _CurrentCloudInProcessFuturTime
std::vector< uint8_CloudPower
std::vector< bool > _ShouldProcessCloud
SCloudScapeSetup _CurrentCSS
SCloudScapeSetup _NewCSS
SCloudScapeSetup _OldCSS
double _TimeNewCSS
bool _IsIncomingCSS
SCloudScapeSetup _IncomingCSS
CNoise3d _Noise3D
std::vector< CCloud_AllClouds
std::list< SCloudSchedulerEntry_CloudScheduler
uint32 _CloudSchedulerSize
std::vector< SCloudSchedulerAccel_CloudSchedulerLastAdded
uint32 _FrameCounter
std::vector< float > _ExtrapolatedPriorities
std::vector< SSortedCloudEntry_SortedClouds
float _LODQualityThreshold
bool _DebugQuad
NL3D::IDriver_Driver
NL3D::CVertexBuffer _VertexBuffer
NL3D::CMaterial _MatClear
NL3D::CMaterial _MatBill
NL3D::CCamera_ViewerCam
SCloudTexture3D Tex3DTemp
SCloudTextureClamp TexClamp

Friends

class CCloud


Constructor & Destructor Documentation

NL3D::CCloudScape::CCloudScape NL3D::IDriver   pDriver
 

Definition at line 217 of file cloud_scape.cpp.

References _DebugQuad, _Driver, _IsIncomingCSS, _LODQualityThreshold, _MatBill, _MatClear, _NbHalfCloudToUpdate, _VertexBuffer, NL3D::CMaterial::initUnlit, NL3D::CMaterial::setAlphaTest, NL3D::CMaterial::setAlphaTestThreshold, NL3D::CMaterial::setBlend, NL3D::CMaterial::setBlendFunc, NL3D::CMaterial::setDoubleSided, NL3D::CVertexBuffer::setNumVertices, NL3D::CMaterial::setShader, NL3D::CVertexBuffer::setVertexFormat, NL3D::CMaterial::setZFunc, NL3D::CMaterial::setZWrite, NL3D::CMaterial::texEnvArg0Alpha, NL3D::CMaterial::texEnvArg0RGB, NL3D::CMaterial::texEnvArg1Alpha, NL3D::CMaterial::texEnvArg1RGB, NL3D::CMaterial::texEnvOpAlpha, and NL3D::CMaterial::texEnvOpRGB.

NL3D::CCloudScape::~CCloudScape  
 

Definition at line 263 of file cloud_scape.cpp.


Member Function Documentation

void NL3D::CCloudScape::anim double    dt,
NL3D::CCamera   pCamera
 

Definition at line 405 of file cloud_scape.cpp.

References _AllClouds, _AverageFrameRate, _CloudPower, _CurrentCSS, _DeltaTime, _DTRest, _GlobalTime, _IncomingCSS, _IsIncomingCSS, _NbHalfCloudToUpdate, _NewCSS, _OldCSS, _ShouldProcessCloud, _TimeNewCSS, _ViewerCam, NLMISC::CValueSmoother::addValue, CCloud, makeHalfCloud, and MAX_CLOUDS.

Referenced by init.

uint32 NL3D::CCloudScape::getMemSize  
 

Definition at line 789 of file cloud_scape.cpp.

References _AllClouds, CCloud, and MAX_CLOUDS.

void NL3D::CCloudScape::init SCloudScapeSetup   pCSS = NULL,
NL3D::CCamera   pCamera = NULL
 

Definition at line 268 of file cloud_scape.cpp.

References _AllClouds, _AverageFrameRate, _CloudPower, _CloudScheduler, _CloudSchedulerLastAdded, _CloudSchedulerSize, _CurrentCSS, _DTRest, _ExtrapolatedPriorities, _FrameCounter, _Generate, _GlobalTime, _IsIncomingCSS, _NbHalfCloudToUpdate, _NewCSS, _Noise3D, _OldCSS, _ShouldProcessCloud, _SortedClouds, _TimeNewCSS, _ViewerCam, NLMISC::CValueSmoother::addValue, anim, CCloud, NLMISC::CValueSmoother::init, MAX_CLOUDS, MAX_DIST, QUEUE_SIZE, SQR, Tex3DTemp, and TexClamp.

bool NL3D::CCloudScape::isDebugQuadEnabled   [inline]
 

Definition at line 97 of file cloud_scape.h.

References _DebugQuad.

void NL3D::CCloudScape::makeHalfCloud   [private]
 

Definition at line 514 of file cloud_scape.cpp.

References _AllClouds, _CloudPower, _CloudScheduler, _CloudSchedulerLastAdded, _CurrentCloudInProcess, _CurrentCloudInProcessFuturTime, _CurrentCSS, _ExtrapolatedPriorities, _FrameCounter, _Generate, _LODQualityThreshold, _NbHalfCloudToUpdate, _Noise3D, _ShouldProcessCloud, _ViewerCam, CCloud, MAX_CLOUDS, MAX_DIST, nlassert, QUEUE_SIZE, r, NLMISC::raiseToNextPowerOf2, SQR, and x.

Referenced by anim.

void NL3D::CCloudScape::render  
 

Definition at line 737 of file cloud_scape.cpp.

References _AllClouds, _Driver, _SortedClouds, _ViewerCam, CCloud, NL3D::CCamera::getFrustum, NL3D::ITransformable::getMatrix, MAX_CLOUDS, s, NL3D::IDriver::setFrustum, NL3D::IDriver::setupModelMatrix, NL3D::IDriver::setupScissor, NL3D::IDriver::setupViewMatrix, NL3D::IDriver::setupViewport, SQR, and v.

void NL3D::CCloudScape::set SCloudScapeSetup   css
 

Definition at line 398 of file cloud_scape.cpp.

References _IncomingCSS, and _IsIncomingCSS.

void NL3D::CCloudScape::setDebugQuad bool    b [inline]
 

Definition at line 98 of file cloud_scape.h.

References _DebugQuad.

void NL3D::CCloudScape::setNbCloudToUpdateIn80ms uint32    n [inline]
 

Definition at line 95 of file cloud_scape.h.

References _NbHalfCloudToUpdate.

void NL3D::CCloudScape::setQuality float    threshold [inline]
 

Definition at line 93 of file cloud_scape.h.

References _LODQualityThreshold.


Friends And Related Function Documentation

friend class CCloud [friend]
 

Definition at line 186 of file cloud_scape.h.

Referenced by anim, getMemSize, init, makeHalfCloud, and render.


Member Data Documentation

std::vector<CCloud> NL3D::CCloudScape::_AllClouds [private]
 

Definition at line 128 of file cloud_scape.h.

Referenced by anim, getMemSize, init, makeHalfCloud, and render.

NLMISC::CValueSmoother NL3D::CCloudScape::_AverageFrameRate [private]
 

Definition at line 110 of file cloud_scape.h.

Referenced by anim, and init.

std::vector<uint8> NL3D::CCloudScape::_CloudPower [private]
 

Definition at line 115 of file cloud_scape.h.

Referenced by anim, init, and makeHalfCloud.

std::list<SCloudSchedulerEntry> NL3D::CCloudScape::_CloudScheduler [private]
 

Definition at line 156 of file cloud_scape.h.

Referenced by init, and makeHalfCloud.

std::vector<SCloudSchedulerAccel> NL3D::CCloudScape::_CloudSchedulerLastAdded [private]
 

Definition at line 158 of file cloud_scape.h.

Referenced by init, and makeHalfCloud.

uint32 NL3D::CCloudScape::_CloudSchedulerSize [private]
 

Definition at line 157 of file cloud_scape.h.

Referenced by init.

CCloud* NL3D::CCloudScape::_CurrentCloudInProcess [private]
 

Definition at line 112 of file cloud_scape.h.

Referenced by makeHalfCloud.

double NL3D::CCloudScape::_CurrentCloudInProcessFuturTime [private]
 

Definition at line 113 of file cloud_scape.h.

Referenced by makeHalfCloud.

SCloudScapeSetup NL3D::CCloudScape::_CurrentCSS [private]
 

Definition at line 118 of file cloud_scape.h.

Referenced by anim, init, and makeHalfCloud.

bool NL3D::CCloudScape::_DebugQuad [private]
 

Definition at line 174 of file cloud_scape.h.

Referenced by CCloudScape, isDebugQuadEnabled, and setDebugQuad.

double NL3D::CCloudScape::_DeltaTime [private]
 

Definition at line 108 of file cloud_scape.h.

Referenced by anim.

NL3D::IDriver* NL3D::CCloudScape::_Driver [private]
 

Definition at line 176 of file cloud_scape.h.

Referenced by CCloudScape, and render.

double NL3D::CCloudScape::_DTRest [private]
 

Definition at line 109 of file cloud_scape.h.

Referenced by anim, and init.

std::vector<float> NL3D::CCloudScape::_ExtrapolatedPriorities [private]
 

Definition at line 160 of file cloud_scape.h.

Referenced by init, and makeHalfCloud.

uint32 NL3D::CCloudScape::_FrameCounter [private]
 

Definition at line 159 of file cloud_scape.h.

Referenced by init, and makeHalfCloud.

bool NL3D::CCloudScape::_Generate [private]
 

Definition at line 111 of file cloud_scape.h.

Referenced by init, and makeHalfCloud.

double NL3D::CCloudScape::_GlobalTime [private]
 

Definition at line 107 of file cloud_scape.h.

Referenced by anim, and init.

SCloudScapeSetup NL3D::CCloudScape::_IncomingCSS [private]
 

Definition at line 124 of file cloud_scape.h.

Referenced by anim, and set.

bool NL3D::CCloudScape::_IsIncomingCSS [private]
 

Definition at line 123 of file cloud_scape.h.

Referenced by anim, CCloudScape, init, and set.

float NL3D::CCloudScape::_LODQualityThreshold [private]
 

Definition at line 173 of file cloud_scape.h.

Referenced by CCloudScape, makeHalfCloud, and setQuality.

NL3D::CMaterial NL3D::CCloudScape::_MatBill [private]
 

Definition at line 179 of file cloud_scape.h.

Referenced by CCloudScape.

NL3D::CMaterial NL3D::CCloudScape::_MatClear [private]
 

Definition at line 178 of file cloud_scape.h.

Referenced by CCloudScape.

uint32 NL3D::CCloudScape::_NbHalfCloudToUpdate [private]
 

Definition at line 106 of file cloud_scape.h.

Referenced by anim, CCloudScape, init, makeHalfCloud, and setNbCloudToUpdateIn80ms.

SCloudScapeSetup NL3D::CCloudScape::_NewCSS [private]
 

Definition at line 119 of file cloud_scape.h.

Referenced by anim, and init.

CNoise3d NL3D::CCloudScape::_Noise3D [private]
 

Definition at line 126 of file cloud_scape.h.

Referenced by init, and makeHalfCloud.

SCloudScapeSetup NL3D::CCloudScape::_OldCSS [private]
 

Definition at line 120 of file cloud_scape.h.

Referenced by anim, and init.

std::vector<bool> NL3D::CCloudScape::_ShouldProcessCloud [private]
 

Definition at line 116 of file cloud_scape.h.

Referenced by anim, init, and makeHalfCloud.

std::vector<SSortedCloudEntry> NL3D::CCloudScape::_SortedClouds [private]
 

Definition at line 169 of file cloud_scape.h.

Referenced by init, and render.

double NL3D::CCloudScape::_TimeNewCSS [private]
 

Definition at line 121 of file cloud_scape.h.

Referenced by anim, and init.

NL3D::CVertexBuffer NL3D::CCloudScape::_VertexBuffer [private]
 

Definition at line 177 of file cloud_scape.h.

Referenced by CCloudScape.

NL3D::CCamera* NL3D::CCloudScape::_ViewerCam [private]
 

Definition at line 181 of file cloud_scape.h.

Referenced by anim, init, makeHalfCloud, and render.

SCloudTexture3D NL3D::CCloudScape::Tex3DTemp [private]
 

Definition at line 183 of file cloud_scape.h.

Referenced by init.

SCloudTextureClamp NL3D::CCloudScape::TexClamp [private]
 

Definition at line 184 of file cloud_scape.h.

Referenced by init.


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