|
Nebula
|
#include <csmutil.h>
Helper class for creating and rendering Cascading Shadow Maps.
Classes | |
| struct | CascadeFrustum |
Public Member Functions | |
| CSMUtil (const uint numCascades) | |
| constructor | |
| virtual | ~CSMUtil () |
| destructor | |
| void | SetCameraEntity (const Graphics::GraphicsEntityId camera) |
| sets the camera entity | |
| const Graphics::GraphicsEntityId | GetCameraEntity () const |
| get the camera entity | |
| void | SetShadowBox (const Math::bbox &sceneBox) |
| sets the scene bounding box | |
| void | SetGlobalLight (const Graphics::GraphicsEntityId globalLight) |
| sets the global light entity | |
| const Graphics::GraphicsEntityId | GetGlobalLight () const |
| gets the global light entity | |
| void | SetTextureWidth (int width) |
| sets the texture width for the CSM texture buffer | |
| void | SetBlurSize (int size) |
| sets the CSM blur size | |
| void | SetFitTexels (bool state) |
| sets whether or not the CSM should clamp the cascades to fit the size of the texels | |
| const Math::mat4 & | GetCascadeViewProjection (IndexT cascadeIndex) const |
| gets computed view projection transform (valid after Compute) | |
| const Math::mat4 & | GetShadowView () const |
| gets the shadow view transform (valid after Compute) | |
| const Util::FixedArray< Math::mat4 > & | GetCascadeProjectionTransforms () const |
| returns raw pointer to array of cascade transforms | |
| const Util::FixedArray< float > & | GetCascadeDistances () const |
| returns raw pointer to array of cascade distances | |
| const Math::mat4 & | GetCascadeCamera (IndexT index) const |
| gets cascade debug camera (only valid after Compute, and if the debug flag is set) | |
| void | Compute (const Graphics::GraphicsEntityId camera, const Graphics::GraphicsEntityId light) |
| computes the splits | |
| Lighting::CSMUtil::CSMUtil | ( | const uint | numCascades | ) |
constructor
|
virtual |
destructor
| void Lighting::CSMUtil::Compute | ( | const Graphics::GraphicsEntityId | camera, |
| const Graphics::GraphicsEntityId | light ) |
computes the splits
|
inline |
get the camera entity
| const Math::mat4 & Lighting::CSMUtil::GetCascadeCamera | ( | IndexT | index | ) | const |
gets cascade debug camera (only valid after Compute, and if the debug flag is set)
|
inline |
returns raw pointer to array of cascade distances
|
inline |
returns raw pointer to array of cascade transforms
|
inline |
gets computed view projection transform (valid after Compute)
|
inline |
gets the global light entity
|
inline |
gets the shadow view transform (valid after Compute)
| void Lighting::CSMUtil::SetBlurSize | ( | int | size | ) |
sets the CSM blur size
|
inline |
sets the camera entity
| void Lighting::CSMUtil::SetFitTexels | ( | bool | state | ) |
sets whether or not the CSM should clamp the cascades to fit the size of the texels
|
inline |
sets the global light entity
|
inline |
sets the scene bounding box
| void Lighting::CSMUtil::SetTextureWidth | ( | int | width | ) |
sets the texture width for the CSM texture buffer
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |