PixelLightAPI
.
|
Spot light scene node. More...
#include <SNSpotLight.h>
Public Types | |
enum | EFlags { NoCone = 1<<13 } |
Scene node flags (SceneNode flags extension) More... | |
Public Member Functions | |
pl_enum (EFlags) pl_enum_base(SNPointLight | |
Scene node debug flags (SceneNode debug flags extension) | |
PLS_API void | SetOuterAngle (float fValue) |
PLS_API float | GetInnerAngle () const |
PLS_API void | SetInnerAngle (float fValue) |
PLS_API float | GetZNear () const |
PLS_API void | SetZNear (float fValue) |
PLS_API float | GetAspect () const |
PLS_API void | SetAspect (float fValue) |
PLS_API | SNSpotLight () |
Default constructor. | |
virtual PLS_API | ~SNSpotLight () |
Destructor. | |
PLS_API const PLMath::Matrix4x4 & | GetProjectionMatrix () |
Returns the projection matrix. | |
PLS_API const PLMath::Matrix3x4 & | GetViewMatrix () |
Returns the view matrix. | |
PLS_API const PLMath::Frustum & | GetFrustum () |
Returns the spot light frustum. | |
PLS_API const PLCore::Array < PLMath::Vector3 > & | GetFrustumVertices () |
Returns the 8 spot light frustum vertices. | |
virtual PLS_API bool | IsSpotLight () const override |
Returns whether this scene node is a spot light (SNSpotLight) or not. | |
virtual PLS_API void | DrawDebug (PLRenderer::Renderer &cRenderer, const VisNode *pVisNode=nullptr) override |
This function is called when the debug parts of the scene are drawn. | |
Protected Types | |
enum | EInternalLightFlags { RecalculateProjectionMatrix = 1<<1, RecalculateViewMatrix = 1<<2, RecalculateFrustum = 1<<3, RecalculateFrustumVertices = 1<<4 } |
Flags which hold ínternal light information ('SNPointLight::EInternalLightFlags' extension) More... | |
Protected Member Functions | |
virtual PLS_API void | UpdateAABoundingBox () override |
Updates the axis align bounding box in 'scene node space'. | |
virtual PLS_API void | GetBoundingSphere (PLMath::Sphere &cSphere) override |
Returns the bounding sphere in 'scene node space'. | |
virtual PLS_API void | GetContainerBoundingSphere (PLMath::Sphere &cSphere) override |
Returns the current bounding sphere in 'scene container space'. |
Spot light scene node.
Scene node flags (SceneNode flags extension)
Reimplemented from PLScene::SNLight.
Reimplemented in PLScene::SNProjectiveSpotLight.
enum PLScene::SNSpotLight::EInternalLightFlags [protected] |
Flags which hold ínternal light information ('SNPointLight::EInternalLightFlags' extension)
Reimplemented from PLScene::SNPointLight.
PLS_API PLScene::SNSpotLight::SNSpotLight | ( | ) |
Default constructor.
virtual PLS_API PLScene::SNSpotLight::~SNSpotLight | ( | ) | [virtual] |
Destructor.
PLScene::SNSpotLight::pl_enum | ( | EFlags | ) | [inline] |
Scene node debug flags (SceneNode debug flags extension)
< Perform a depth test when render the debug stuff like lines
< Do not draw the (green) frustum
< Draw the (green) frustum vertices
Reimplemented from PLScene::SceneNode.
PLS_API void PLScene::SNSpotLight::SetOuterAngle | ( | float | fValue | ) |
PLS_API float PLScene::SNSpotLight::GetInnerAngle | ( | ) | const |
PLS_API void PLScene::SNSpotLight::SetInnerAngle | ( | float | fValue | ) |
PLS_API float PLScene::SNSpotLight::GetZNear | ( | ) | const |
PLS_API void PLScene::SNSpotLight::SetZNear | ( | float | fValue | ) |
PLS_API float PLScene::SNSpotLight::GetAspect | ( | ) | const |
PLS_API void PLScene::SNSpotLight::SetAspect | ( | float | fValue | ) |
PLS_API const PLMath::Matrix4x4& PLScene::SNSpotLight::GetProjectionMatrix | ( | ) |
Returns the projection matrix.
PLS_API const PLMath::Matrix3x4& PLScene::SNSpotLight::GetViewMatrix | ( | ) |
Returns the view matrix.
PLS_API const PLMath::Frustum& PLScene::SNSpotLight::GetFrustum | ( | ) |
Returns the spot light frustum.
PLS_API const PLCore::Array<PLMath::Vector3>& PLScene::SNSpotLight::GetFrustumVertices | ( | ) |
Returns the 8 spot light frustum vertices.
virtual PLS_API bool PLScene::SNSpotLight::IsSpotLight | ( | ) | const [override, virtual] |
Returns whether this scene node is a spot light (SNSpotLight) or not.
Reimplemented from PLScene::SNLight.
virtual PLS_API void PLScene::SNSpotLight::DrawDebug | ( | PLRenderer::Renderer & | cRenderer, |
const VisNode * | pVisNode = nullptr |
||
) | [override, virtual] |
This function is called when the debug parts of the scene are drawn.
[in] | cRenderer | The used renderer |
[in] | pVisNode | The current visibility node of this scene node, can be a null pointer |
Reimplemented from PLScene::SNPointLight.
virtual PLS_API void PLScene::SNSpotLight::UpdateAABoundingBox | ( | ) | [override, protected, virtual] |
Updates the axis align bounding box in 'scene node space'.
Reimplemented from PLScene::SNPointLight.
virtual PLS_API void PLScene::SNSpotLight::GetBoundingSphere | ( | PLMath::Sphere & | cSphere | ) | [override, protected, virtual] |
Returns the bounding sphere in 'scene node space'.
[out] | cSphere | Receives the bounding sphere in 'scene node space' |
Reimplemented from PLScene::SNPointLight.
virtual PLS_API void PLScene::SNSpotLight::GetContainerBoundingSphere | ( | PLMath::Sphere & | cSphere | ) | [override, protected, virtual] |
Returns the current bounding sphere in 'scene container space'.
[out] | cSphere | Receives the current bounding in 'scene container space' |
Reimplemented from PLScene::SNPointLight.
|