NL3D::CLightTrav Class Reference

The light traversal. More...

#include <light_trav.h>

Inherits NL3D::CTraversal.

List of all members.

Public Member Functions

 CLightTrav (bool bSmallScene)
 Constructor.



void traverse ()
 ITrav/ITravScene Implementation.
LightingList. Filled during clip traversal.



void clearLightedList ()
 Clear the list of lighted models.
void addLightedModel (CTransform *m)
 Add a model to the list of lighted models. DOESN'T CHECK if already inserted.
void reserveLightedList (uint numModels)
LightingList. Add a PointLightModel to the list.



void addPointLightModel (CPointLightModel *pl)

Public Attributes

bool LightingSystemEnabled
CLightingManager LightingManager
 The lightingManager, where objects/lights are inserted, and modelContributions are computed.

Private Attributes

std::vector< CTransform * > _LightedList
uint32 _CurrentNumVisibleModels
CFastPtrList< CPointLightModel_DynamicLightList

Detailed Description

The light traversal.

The purpose of this traversal is to compute lighting on lightable objects.

Lightable objects can be CTransform only.

NB: see CScene for 3d conventions (orthonormal basis...)

Author:
Lionel Berenguier
Nevrax France
Date:
2000

Definition at line 58 of file light_trav.h.


Constructor & Destructor Documentation

NL3D::CLightTrav::CLightTrav ( bool  bSmallScene  ) 

Constructor.

Definition at line 44 of file light_trav.cpp.

References _CurrentNumVisibleModels, _LightedList, and LightingSystemEnabled.


Member Function Documentation

void NL3D::CLightTrav::addLightedModel ( CTransform m  )  [inline]

Add a model to the list of lighted models. DOESN'T CHECK if already inserted.

Definition at line 75 of file light_trav.h.

References _CurrentNumVisibleModels, and _LightedList.

Referenced by NL3D::CClipTrav::clipShadowCasters(), NL3D::CParticleSystemModel::insertInVisibleList(), and NL3D::CTransform::traverseClip().

void NL3D::CLightTrav::addPointLightModel ( CPointLightModel pl  ) 
void NL3D::CLightTrav::clearLightedList (  ) 

Clear the list of lighted models.

Definition at line 53 of file light_trav.cpp.

References _CurrentNumVisibleModels.

Referenced by NL3D::CClipTrav::traverse().

void NL3D::CLightTrav::reserveLightedList ( uint  numModels  ) 

Definition at line 128 of file light_trav.cpp.

References _LightedList.

Referenced by NL3D::CScene::createModel().

void NL3D::CLightTrav::traverse (  ) 

Member Data Documentation

Definition at line 103 of file light_trav.h.

Referenced by addLightedModel(), clearLightedList(), CLightTrav(), and traverse().

Definition at line 106 of file light_trav.h.

Referenced by addPointLightModel(), and traverse().

std::vector<CTransform*> NL3D::CLightTrav::_LightedList [private]

Definition at line 102 of file light_trav.h.

Referenced by addLightedModel(), CLightTrav(), reserveLightedList(), and traverse().

Definition at line 92 of file light_trav.h.

Referenced by CLightTrav(), NL3D::CScene::enableLightingSystem(), and traverse().


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

Generated on Thu Jan 7 08:30:04 2010 for NeL by  doxygen 1.6.1