14 #ifndef OSGSHADOW_SHADOWEMAP
15 #define OSGSHADOW_SHADOWEMAP 1
18 #include <osg/Material>
19 #include <osg/MatrixTransform>
20 #include <osg/LightSource>
22 #include <osgShadow/ShadowTechnique>
37 void setTextureUnit(
unsigned int unit);
43 void setPolygonOffset(
const osg::Vec2& polyOffset);
49 void setAmbientBias(
const osg::Vec2& ambientBias );
55 void setTextureSize(
const osg::Vec2s& textureSize);
64 typedef std::vector< osg::ref_ptr<osg::Uniform> >
UniformList;
66 typedef std::vector< osg::ref_ptr<osg::Shader> >
ShaderList;
84 virtual void cleanSceneGraph();
94 virtual void createUniforms();
96 virtual void createShaders();
99 class DrawableDrawWithDepthShadowComparisonOffCallback;
osg::ref_ptr< osg::Uniform > _ambientBiasUniform
std::vector< osg::ref_ptr< osg::Shader > > ShaderList
std::vector< osg::ref_ptr< osg::Uniform > > UniformList
const osg::Vec2s & getTextureSize() const
osg::ref_ptr< osg::Light > _light
const osg::Vec2 & getPolygonOffset() const
unsigned int _shadowTextureUnit
const osg::Vec2 & getAmbientBias() const
unsigned int getTextureUnit() const
osg::ref_ptr< osg::Texture2D > _texture
#define META_Object(library, name)
void addShader(osg::Shader *shader)
osg::ref_ptr< osg::TexGen > _texgen
osg::ref_ptr< osg::LightSource > _ls
unsigned int _baseTextureUnit
osg::ref_ptr< osg::Program > _program
osg::ref_ptr< osg::StateSet > _stateset
osg::ref_ptr< osg::Camera > _camera