BasicLightManager Class Reference#include <basicLightManager.h>
Inheritance diagram for BasicLightManager:
[legend]List of all members.
|
Public Member Functions |
| | BasicLightManager () |
| virtual | ~BasicLightManager () |
| virtual bool | canActivate () |
| virtual void | activate () |
| virtual void | deactivate () |
| virtual const char * | getId () const |
| virtual AvailableSLInterfaces * | getSceneLightingInterface () |
| virtual LightInfo * | createLightInfo () |
| virtual LightInfo * | getDefaultLight () |
| virtual BasicLightInfo * | createBasicLightInfo () |
| virtual LightInfo * | getSpecialLight (LightManager::SpecialLightTypesEnum type) |
| virtual void | setSpecialLight (LightManager::SpecialLightTypesEnum type, LightInfo *light) |
| virtual void | registerGlobalLight (LightInfo *light, SimObject *obj, bool zonealreadyset) |
| virtual void | unregisterGlobalLight (LightInfo *light) |
| virtual void | registerLocalLight (LightInfo *light) |
| virtual void | unregisterLocalLight (LightInfo *light) |
| virtual void | registerGlobalLights (bool staticlighting) |
| virtual void | unregisterAllLights () |
| virtual void | getAllUnsortedLights (LightInfoList &list) |
| | Returns all unsorted and un-scored lights (both global and local).
|
| virtual void | setupLights (SceneObject *obj) |
| | For DTS objects.
|
| virtual void | setupLights (SceneObject *obj, const Point3F &camerapos, const Point3F &cameradir, F32 viewdist, S32 maxlights) |
| | For the terrain and Atlas.
|
| virtual void | setupLights (SceneObject *obj, const Box3F &box, S32 maxlights) |
| | Finds the best lights that overlap with the bounding box based on the box center.
|
| virtual void | getBestLights (LightInfoList &list) |
| | Copies the best lights list - this DOESN'T find the lights! Call setupLights to populate the list.
|
| virtual void | resetLights () |
| | Reset the best lights list and all associated data.
|
| virtual void | setLightInfo (ProcessedMaterial *pmat, const Material *mat, const SceneGraphData &sgData, U32 pass, GFXShaderConstBuffer *shaderConsts) |
| | Sets shader constants / textures for light infos.
|
| virtual bool | initTextureStateBlock (const U32 currTexFlag, const U32 textureSlot, GFXStateBlockDesc *stateblock) |
| | Allows us to setup texture states, return true if we've done work.
|
| virtual bool | setTextureStage (const SceneGraphData &sgData, const U32 currTexFlag, const U32 textureSlot, GFXShaderConstBuffer *shaderConsts, ShaderConstHandles *handles) |
| | Allows us to set textures during the Material::setTextureStage call, return true if we've done work.
|
| bool | lightScene (const char *callback, const char *param) |
| virtual void | hdrPrepare (const Point2I &offset, const Point2I &extent) |
| virtual void | hdrRender () |
Static Public Member Functions |
| static BasicLightManager * | get () |
| static void | cleanup () |
| static AvailableSLInterfaces * | getBLSceneLightingInterface () |
Public Attributes |
| Signal< void(bool)> | mActivate |
Private Types |
| typedef LightManager | Parent |
Private Attributes |
| BasicLightInfo * | mDefaultLight |
| BasicLightInfo * | mSpecialLights [LightManager::slSpecialLightTypesCount] |
| BasicLightInfo * | mTranslatedSun |
| Map< GFXShader *, LightingShaderConstants > | mConstantLookup |
| GFXShader * | mLastShader |
| LightingShaderConstants * | mLastConstants |
Static Private Attributes |
| static BasicLightManager * | smBasicLightManagerSingleton |
| static AvailableSLInterfaces * | smAvailableSLInterfaces |
Classes |
| struct | LightingShaderConstants |
Member Typedef Documentation
Constructor & Destructor Documentation
| BasicLightManager::BasicLightManager |
( |
|
) |
|
| virtual BasicLightManager::~BasicLightManager |
( |
|
) |
[virtual] |
Member Function Documentation
| static void BasicLightManager::cleanup |
( |
|
) |
[static] |
| virtual bool BasicLightManager::canActivate |
( |
|
) |
[virtual] |
| virtual void BasicLightManager::activate |
( |
|
) |
[virtual] |
| virtual void BasicLightManager::deactivate |
( |
|
) |
[virtual] |
| virtual const char* BasicLightManager::getId |
( |
|
) |
const [virtual] |
| virtual LightInfo* BasicLightManager::createLightInfo |
( |
|
) |
[virtual] |
| virtual LightInfo* BasicLightManager::getDefaultLight |
( |
|
) |
[virtual] |
| virtual BasicLightInfo* BasicLightManager::createBasicLightInfo |
( |
|
) |
[virtual] |
| virtual void BasicLightManager::unregisterGlobalLight |
( |
LightInfo * |
light |
) |
[inline, virtual] |
| virtual void BasicLightManager::registerLocalLight |
( |
LightInfo * |
light |
) |
[inline, virtual] |
| virtual void BasicLightManager::unregisterLocalLight |
( |
LightInfo * |
light |
) |
[inline, virtual] |
| virtual void BasicLightManager::registerGlobalLights |
( |
bool |
staticlighting |
) |
[virtual] |
| virtual void BasicLightManager::unregisterAllLights |
( |
|
) |
[virtual] |
| virtual void BasicLightManager::getAllUnsortedLights |
( |
LightInfoList & |
list |
) |
[virtual] |
Returns all unsorted and un-scored lights (both global and local).
Implements LightManager.
| virtual void BasicLightManager::setupLights |
( |
SceneObject * |
obj |
) |
[inline, virtual] |
For DTS objects.
Finds the best lights including a composite based on the environmental ambient lighting amount *and installs them in OpenGL*.
Implements LightManager.
For the terrain and Atlas.
Finds the best lights in the viewing area based on distance to camera.
Implements LightManager.
| virtual void BasicLightManager::setupLights |
( |
SceneObject * |
obj, |
|
|
const Box3F & |
box, |
|
|
S32 |
maxlights | |
|
) |
| | [inline, virtual] |
Finds the best lights that overlap with the bounding box based on the box center.
Implements LightManager.
Copies the best lights list - this DOESN'T find the lights! Call setupLights to populate the list.
Implements LightManager.
| virtual void BasicLightManager::resetLights |
( |
|
) |
[inline, virtual] |
Reset the best lights list and all associated data.
Implements LightManager.
Sets shader constants / textures for light infos.
Implements LightManager.
| virtual bool BasicLightManager::initTextureStateBlock |
( |
const U32 |
currTexFlag, |
|
|
const U32 |
textureSlot, |
|
|
GFXStateBlockDesc * |
stateblock | |
|
) |
| | [inline, virtual] |
Allows us to setup texture states, return true if we've done work.
Implements LightManager.
Allows us to set textures during the Material::setTextureStage call, return true if we've done work.
Implements LightManager.
| bool BasicLightManager::lightScene |
( |
const char * |
callback, |
|
|
const char * |
param | |
|
) |
| | [virtual] |
| virtual void BasicLightManager::hdrPrepare |
( |
const Point2I & |
offset, |
|
|
const Point2I & |
extent | |
|
) |
| | [inline, virtual] |
| virtual void BasicLightManager::hdrRender |
( |
|
) |
[inline, virtual] |
Member Data Documentation
|