![]() |
VR-Forces 5.0.2 Developer's Guide
|
LightManager class which allows creation/deletion of lights.
Public Member Functions | |
| DtLightManager (const AxisAlignedBoundingBox_64 &box, size_t depth) | |
| virtual | ~DtLightManager () |
| virtual DtLight * | createLight (LightType lightType) |
| virtual void | destroyLight (DtLight *pLight) |
| virtual size_t | numLights (void) const |
| virtual DtLight * | light (size_t index) |
| virtual const VectorLights & | allLights (void) const |
| virtual bool | lightExists (const DtLight *pLight) const |
| virtual void | getClosestLights (VectorLights &closestLights, const Vector3_64 &vPosition, size_t n) |
| virtual const VectorLights & | frustumAffectingLights (void) const |
| virtual void | setlodDistance (float fDistance) |
| virtual float | lodDistance (void) const |
| virtual float | lodDistanceSquared (void) const |
| virtual void | initOctree (const AxisAlignedBoundingBox_64 &box) |
| virtual void | lightUpdated (const DtLight *pLight) |
| virtual void | lightBoundsUpdated (const DtLight *pLight) |
| virtual void | lightDestroyed (const DtLight *pLight) |
| virtual void | createOctreeNode (DtLight *pLight) |
| virtual void | destroyOctreeNode (DtLight *pLight) |
| virtual OctreeNode_64 * | octreeNode (const DtLight *pLight) const |
| virtual void | update (Camera_64 *pCamera) |
| virtual void | update (Frustum_64 *pFrustum, const Vector3_64 &vRefPosition) |
Protected Member Functions | |
| virtual void | findVisibleObjects (const Camera_64 *pCamera) |
| virtual void | findVisibleObjects (const Frustum_64 *pCamera, const Vector3_64 &vRefPosition) |
Protected Attributes | |
| ListLights | myLights |
| bool | mybVectorLightsdirty |
| VectorLights | myVectorLights |
| Octree_64 * | myOctree |
| Octree_64::NodeVector | myVisibleOctreeNodes |
| VectorLights | myFrustumAffectingLights |
| VectorLights | myFrustumAffectingLightsSortingScratchPad |
| float | myLODDistance |
| tbb::mutex | myOctreeMutex |
Private Member Functions | |
| DtLightManager ()=delete | |
| DtLightManager (const DtLightManager &rhs)=delete | |
| DtLightManager & | operator= (const DtLightManager &rhs)=delete |
| makVrv::DtLightManager::DtLightManager | ( | const AxisAlignedBoundingBox_64 & | box, |
| size_t | depth | ||
| ) |
CTOR.
|
virtual |
DTOR.
|
privatedelete |
not allowed
|
privatedelete |
not allowed
|
privatedelete |
not allowed
|
virtual |
destroy a light
|
virtual |
number of lights
|
virtual |
light for an index
|
virtual |
Get all the lights that have been registered/created.
Find if a light exists in this manager.
|
virtual |
Call these before calling either of the 2 queries below.
|
virtual |
Call these before calling either of the 2 queries below.
|
virtual |
Get the 'n' closest lights to vPosition. Must be called after LightManager::Update.
|
virtual |
Get all the lights that affect the view frustum. Must be called after LightManager::Update.
|
virtual |
set the lod distance
|
virtual |
get the lod distance
|
virtual |
get the lod distance squared
|
virtual |
initailize the internal octress with box extens
|
virtual |
indicate that this light changed
|
virtual |
indicate that light bounds were updated
|
virtual |
indicate that light was destroyed
|
virtual |
create an octree node for this light
|
virtual |
destroy the octree node for this light
|
virtual |
Get the octree node for this light.
|
protectedvirtual |
|
protectedvirtual |
|
protected |
|
mutableprotected |
|
mutableprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |