![]() |
VR-Forces 4.5 Class Documentation
|
LightManager class which allows creation/deletion of lights. More...
Public Member Functions | |
| DtLightManager (const AxisAlignedBoundingBox_64 &box, size_t depth) | |
| virtual | ~DtLightManager () |
| const VectorLights & | getAllLights (void) const |
| Get all the lights that have been registered/created. | |
| bool | lightExists (const DtLight *pLight) const |
| Find if a light exists in this manager. | |
| void | getClosestLights (VectorLights &closestLights, const Vector3_64 &vPosition, size_t n) |
| Get the 'n' closest lights to vPosition. Must be called after LightManager::Update. | |
| const VectorLights & | getFrustumAffectingLights (void) const |
| Get all the lights that affect the view frustum. Must be called after LightManager::Update. | |
| void | setlodDistance (float fDistance) |
| float | lodDistance (void) const |
| float | lodDistanceSquared (void) const |
| DtLight * | createLight (LightType lightType) |
| create/destroy/get lights | |
| void | destroyLight (DtLight *pLight) |
| size_t | numLights (void) const |
| DtLight * | getLight (size_t index) |
| void | update (Camera_64 *pCamera) |
| Call these before calling either of the 2 queries below. | |
| void | update (Frustum_64 *pFrustum, const Vector3_64 &vRefPosition) |
Private Member Functions | |
| void | initOctree (const AxisAlignedBoundingBox_64 &box) |
| void | lightUpdated (const DtLight *pLight) |
| void | lightBoundsUpdated (const DtLight *pLight) |
| void | lightDestroyed (const DtLight *pLight) |
| void | connectSignals (DtLight *pSceneNode) |
| void | disconnectSignals (const DtLight *pLight) |
| void | createOctreeNode (DtLight *pLight) |
| void | destroyOctreeNode (DtLight *pLight) |
| OctreeNode_64 * | getOctreeNode (const DtLight *pLight) const |
| void | findVisibleObjects (Camera_64 *pCamera) |
| void | findVisibleObjects (Frustum_64 *pCamera, const Vector3_64 &vRefPosition) |
| DtLightManager () | |
Private Attributes | |
| ListLights | myLights |
| bool | mybVectorLightsdirty |
| VectorLights | myVectorLights |
| Octree_64 * | myOctree |
| Octree_64::NodeList | myVisibleOctreeNodes |
| VectorLights | myFrustumAffectingLights |
| VectorLights | myFrustumAffectingLightsSortingScratchPad |
| float | myLODDistance |
LightManager class which allows creation/deletion of lights.
| makVrv::DtLightManager::DtLightManager | ( | const AxisAlignedBoundingBox_64 & | box, |
| size_t | depth | ||
| ) |
|
virtual |
|
inlineprivate |
| void makVrv::DtLightManager::destroyLight | ( | DtLight * | pLight | ) |
| size_t makVrv::DtLightManager::numLights | ( | void | ) | const |
| DtLight* makVrv::DtLightManager::getLight | ( | size_t | index | ) |
| const VectorLights& makVrv::DtLightManager::getAllLights | ( | void | ) | const |
Get all the lights that have been registered/created.
Find if a light exists in this manager.
| void makVrv::DtLightManager::update | ( | Camera_64 * | pCamera | ) |
Call these before calling either of the 2 queries below.
| void makVrv::DtLightManager::update | ( | Frustum_64 * | pFrustum, |
| const Vector3_64 & | vRefPosition | ||
| ) |
| void makVrv::DtLightManager::getClosestLights | ( | VectorLights & | closestLights, |
| const Vector3_64 & | vPosition, | ||
| size_t | n | ||
| ) |
Get the 'n' closest lights to vPosition. Must be called after LightManager::Update.
| const VectorLights& makVrv::DtLightManager::getFrustumAffectingLights | ( | void | ) | const |
Get all the lights that affect the view frustum. Must be called after LightManager::Update.
| void makVrv::DtLightManager::setlodDistance | ( | float | fDistance | ) |
| float makVrv::DtLightManager::lodDistance | ( | void | ) | const |
| float makVrv::DtLightManager::lodDistanceSquared | ( | void | ) | const |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
mutableprivate |
|
mutableprivate |
|
private |
|
private |
|
private |
|
private |
|
private |