26#ifndef OSGSHADOW_ParallelSplitShadowMap
27#define OSGSHADOW_ParallelSplitShadowMap 1
76 inline void setMaxFarDistance(
double farDist) { _setMaxFarDistance = farDist; _isSetMaxFarDistance =
true; }
199 unsigned int _textureUnitOffset;
201 unsigned int _number_of_splits;
203 bool _debug_color_in_GLSL;
206 bool _user_polgyonOffset_set;
208 unsigned int _resolution;
210 double _setMaxFarDistance;
211 bool _isSetMaxFarDistance;
213 double _split_min_near_dist;
215 double _move_vcam_behind_rcam_factor;
220 bool _GLSL_shadow_filtered;
Definition ParallelSplitShadowMap:111
virtual std::string generateGLSL_FragmentShader_BaseTex(bool debug, unsigned int splitCount, double textureRes, bool filtered, unsigned int nbrSplits, unsigned int textureOffset)
Definition ParallelSplitShadowMap:39
void setPolygonOffset(const osg::Vec2f &p)
Definition ParallelSplitShadowMap:64
virtual void cull(osgUtil::CullVisitor &cv)
ParallelSplitShadowMap(const ParallelSplitShadowMap &es, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY)
void setFragmentShaderGenerator(FragmentShaderGenerator *fsw)
Definition ParallelSplitShadowMap:120
ParallelSplitShadowMap(osg::Geode **debugGroup=NULL, int icountplanes=3)
SplitCalcMode
Definition ParallelSplitShadowMap:125
@ SPLIT_LINEAR
Definition ParallelSplitShadowMap:126
PSSMShadowSplitTextureMap _PSSMShadowSplitTextureMap
Definition ParallelSplitShadowMap:188
void setMoveVCamBehindRCamFactor(double distFactor)
Definition ParallelSplitShadowMap:82
void setSplitCalculationMode(SplitCalcMode scm=SPLIT_EXP)
Definition ParallelSplitShadowMap:131
void setDebugColorOn()
Definition ParallelSplitShadowMap:61
META_Object(osgShadow, ParallelSplitShadowMap)
std::map< unsigned int, PSSMShadowSplitTexture > PSSMShadowSplitTextureMap
Definition ParallelSplitShadowMap:187
double getMaxFarDistance() const
Definition ParallelSplitShadowMap:79
virtual ~ParallelSplitShadowMap()
Definition ParallelSplitShadowMap:147
void setMaxFarDistance(double farDist)
Definition ParallelSplitShadowMap:76
double getMinNearDistanceForSplits() const
Definition ParallelSplitShadowMap:91
void setTextureResolution(unsigned int resolution)
Definition ParallelSplitShadowMap:70
void setMinNearDistanceForSplits(double nd)
Definition ParallelSplitShadowMap:88
const osg::Light * getUserLight() const
Definition ParallelSplitShadowMap:100
void enableShadowGLSLFiltering(bool filtering=true)
Definition ParallelSplitShadowMap:123
void setAmbientBias(const osg::Vec2 &ambientBias)
double getMoveVCamBehindRCamFactor() const
Definition ParallelSplitShadowMap:85
unsigned int getTextureResolution() const
Definition ParallelSplitShadowMap:73
virtual void update(osg::NodeVisitor &nv)
const osg::Vec2f & getPolygonOffset() const
Definition ParallelSplitShadowMap:67
const osg::Vec2 & getAmbientBias() const
Definition ParallelSplitShadowMap:106
virtual void cleanSceneGraph()
virtual void resizeGLObjectBuffers(unsigned int maxSize)
virtual void releaseGLObjects(osg::State *=0) const
void setUserLight(osg::Light *light)
Definition ParallelSplitShadowMap:97
SplitCalcMode getSplitCalculationMode() const
Definition ParallelSplitShadowMap:134
Definition ShadowTechnique:32
Definition CullVisitor:49
@ SHALLOW_COPY
Definition CopyOp:47
Definition NodeVisitor:82
Definition ConvexPolyhedron:33
#define OSGSHADOW_EXPORT
Definition osgShadow/Export:39
#define NULL
Definition osg/Export:55
Definition ParallelSplitShadowMap:150
double _lightFar
Definition ParallelSplitShadowMap:172
double _lightNear
Definition ParallelSplitShadowMap:171
osg::Vec3d _frustumSplitCenter
Definition ParallelSplitShadowMap:169
void releaseGLObjects(osg::State *=0) const
unsigned int _splitID
Definition ParallelSplitShadowMap:177
osg::ref_ptr< osg::TexGen > _texgen
Definition ParallelSplitShadowMap:153
osg::ref_ptr< osg::Texture2D > _texture
Definition ParallelSplitShadowMap:154
osg::Vec3d _lightCameraTarget
Definition ParallelSplitShadowMap:168
osg::ref_ptr< osg::Texture2D > _debug_texture
Definition ParallelSplitShadowMap:162
double _split_far
Definition ParallelSplitShadowMap:159
osg::Vec3d _lightDirection
Definition ParallelSplitShadowMap:170
osg::ref_ptr< osg::StateSet > _debug_stateset
Definition ParallelSplitShadowMap:163
unsigned int _resolution
Definition ParallelSplitShadowMap:178
osg::Matrix _cameraView
Definition ParallelSplitShadowMap:174
osg::ref_ptr< osg::Camera > _camera
Definition ParallelSplitShadowMap:152
osg::ref_ptr< osg::StateSet > _stateset
Definition ParallelSplitShadowMap:155
osg::ref_ptr< osg::Uniform > _farDistanceSplit
Definition ParallelSplitShadowMap:180
void resizeGLObjectBuffers(unsigned int maxSize)
osg::Matrix _cameraProj
Definition ParallelSplitShadowMap:175
unsigned int _textureUnit
Definition ParallelSplitShadowMap:156
osg::ref_ptr< osg::Camera > _debug_camera
Definition ParallelSplitShadowMap:161
unsigned int _debug_textureUnit
Definition ParallelSplitShadowMap:164
osg::Vec3d _lightCameraSource
Definition ParallelSplitShadowMap:167