Public Member Functions |
| virtual void | init (ThisClass *st, osgUtil::CullVisitor *cv) |
| virtual osg::BoundingBox | computeShadowReceivingCoarseBounds () |
| virtual void | cullShadowReceivingScene () |
| virtual void | aimShadowCastingCamera (const osg::BoundingSphere &bounds, const osg::Light *light, const osg::Vec4 &worldLightPos, const osg::Vec3 &worldLightDir, const osg::Vec3 &worldLightUp=osg::Vec3(0, 1, 0)) |
| virtual void | aimShadowCastingCamera (const osg::Light *light, const osg::Vec4 &worldLightPos, const osg::Vec3 &worldLightDir, const osg::Vec3 &worldLightUp=osg::Vec3(0, 1, 0)) |
| virtual void | frameShadowCastingCamera (const osg::Camera *cameraMain, osg::Camera *cameraShadow, int pass=1) |
| void | cutScenePolytope (const osg::Matrix &matrix, const osg::Matrix &inverse, const osg::BoundingBox &bb=osg::BoundingBox(-1,-1,-1, 1, 1, 1)) |
| osg::BoundingBox | computeScenePolytopeBounds (const osg::Matrix &m=*(osg::Matrix *)(NULL)) |
Static Public Member Functions |
| static void | trimProjection (osg::Matrixd &projection, osg::BoundingBox subrange, unsigned int trimMask=(1|2|4|8|16|32)) |
| static void | clampProjection (osg::Matrixd &projection, float n=0, float f=FLT_MAX) |
| static void | extendProjection (osg::Matrixd &projection, osg::Viewport *viewport, const osg::Vec2 &margin) |
Public Attributes |
| osg::Matrix * | _modellingSpaceToWorldPtr |
| float * | _maxFarPlanePtr |
| float * | _minLightMarginPtr |
| int | _frameShadowCastingCameraPasses |
| ConvexPolyhedron | _sceneReceivingShadowPolytope |
| std::vector< osg::Vec3d > | _sceneReceivingShadowPolytopePoints |
| osg::Matrixd | _clampedProjection |