Go to the documentation of this file.
29 #ifndef __ShadowCameraSetupFocused_H__
30 #define __ShadowCameraSetupFocused_H__
104 void build(
const ConvexBody& body,
bool filterDuplicates =
true);
115 void buildAndIncludeDirection(
const ConvexBody& body,
124 void addPoint(
const Vector3& point);
132 const Vector3& getPoint(
size_t cnt)
const;
136 size_t getPointCount(
void)
const;
316 #endif // __ShadowCameraSetupFocused_H__
static const Matrix4 msNormalToLightSpace
Transform to or from light space as defined by Wimmer et al.
A viewpoint from which the scene will be rendered.
Internal class holding a point list representation of a convex body.
PointListBody mPointListBodyB
This class allows you to plug in new ways to define the camera setup when rendering and projecting sh...
bool mUseAggressiveRegion
Use tighter focus region?
void setUseAggressiveFocusRegion(bool aggressive)
Sets whether or not to use the more aggressive approach to deciding on the focus region or not.
Representation of a dynamic light source in the scene.
static const Matrix4 msLightSpaceToNormal
Implements the uniform shadow mapping algorithm in focused mode.
Polygon::VertexList mBodyPoints
Class encapsulating a standard 4x4 homogeneous matrix.
Manages the organisation and rendering of a 'scene' i.e.
An abstraction of a viewport, i.e.
Holds a solid representation of a convex body.
vector< Vector3 >::type VertexList
A 3D box aligned with the x/y/z axes.
Camera * mLightFrustumCamera
Temporary preallocated camera to set up a light frustum for clipping in FocusedShadowCameraSetup::cal...
A frustum represents a pyramid, capped at the near and far end which is used to represent either a vi...
Frustum * mTempFrustum
Temporary preallocated frustum to set up a projection matrix in calculateShadowMappingMatrix().
float Real
Software floating point type.
bool mLightFrustumCameraCalculated
PointListBody mPointListBodyLVS
bool getUseAggressiveFocusRegion() const
Standard 3-dimensional vector.
Copyright © 2012 Torus Knot Software Ltd

This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.