Public Types | |
typedef std::vector < osg::ref_ptr < osg::Uniform > > | UniformList |
typedef std::vector < osg::ref_ptr < osg::Shader > > | ShaderList |
Public Member Functions | |
ShadowMap () | |
ShadowMap (const ShadowMap &es, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
META_Object (osgShadow, ShadowMap) | |
void | setTextureUnit (unsigned int unit) |
Set the texture unit that the shadow texture will be applied on. | |
unsigned int | getTextureUnit () const |
Get the texture unit that the shadow texture will be applied on. | |
void | setAmbientBias (const osg::Vec2 &ambientBias) |
Set the values for the ambient bias the shader will use. | |
const osg::Vec2 & | getAmbientBias () const |
Get the values that are used for the ambient bias in the shader. | |
void | setTextureSize (const osg::Vec2s &textureSize) |
set the size in pixels x / y for the shadow texture. | |
const osg::Vec2s & | getTextureSize () const |
Get the values that are used for the ambient bias in the shader. | |
void | setLight (osg::Light *light) |
Set the Light that will cast shadows. | |
void | setLight (osg::LightSource *ls) |
void | addShader (osg::Shader *shader) |
Add a shader to internal list, will be used instead of the default ones. | |
void | clearShaderList () |
Reset internal shader list. | |
virtual void | init () |
initialize the ShadowedScene and local cached data structures. | |
virtual void | update (osg::NodeVisitor &nv) |
run the update traversal of the ShadowedScene and update any loca chached data structures. | |
virtual void | cull (osgUtil::CullVisitor &cv) |
run the cull traversal of the ShadowedScene and set up the rendering for this ShadowTechnique. | |
virtual void | cleanSceneGraph () |
Clean scene graph from any shadow technique specific nodes, state and drawables. | |
osg::ref_ptr < osg::Camera > | makeDebugHUD () |
Protected Member Functions | |
virtual | ~ShadowMap (void) |
void | createUniforms () |
Create the managed Uniforms. | |
void | createShaders () |
Protected Attributes | |
osg::ref_ptr < osg::Camera > | _camera |
osg::ref_ptr < osg::TexGen > | _texgen |
osg::ref_ptr < osg::Texture2D > | _texture |
osg::ref_ptr < osg::StateSet > | _stateset |
osg::ref_ptr < osg::Program > | _program |
osg::ref_ptr < osg::Light > | _light |
osg::ref_ptr < osg::LightSource > | _ls |
UniformList | _uniformList |
ShaderList | _shaderList |
unsigned int | _baseTextureUnit |
unsigned int | _shadowTextureUnit |
osg::Vec2 | _ambientBias |
osg::Vec2s | _textureSize |
typedef std::vector< osg::ref_ptr<osg::Uniform> > osgShadow::ShadowMap::UniformList |
typedef std::vector< osg::ref_ptr<osg::Shader> > osgShadow::ShadowMap::ShaderList |
osgShadow::ShadowMap::ShadowMap | ( | ) |
osgShadow::ShadowMap::ShadowMap | ( | const ShadowMap & | es, | |
const osg::CopyOp & | copyop = osg::CopyOp::SHALLOW_COPY | |||
) |
virtual osgShadow::ShadowMap::~ShadowMap | ( | void | ) | [inline, protected, virtual] |
osgShadow::ShadowMap::META_Object | ( | osgShadow | , | |
ShadowMap | ||||
) |
void osgShadow::ShadowMap::setTextureUnit | ( | unsigned int | unit | ) |
Set the texture unit that the shadow texture will be applied on.
unsigned int osgShadow::ShadowMap::getTextureUnit | ( | ) | const [inline] |
Get the texture unit that the shadow texture will be applied on.
void osgShadow::ShadowMap::setAmbientBias | ( | const osg::Vec2 & | ambientBias | ) |
Set the values for the ambient bias the shader will use.
const osg::Vec2& osgShadow::ShadowMap::getAmbientBias | ( | ) | const [inline] |
Get the values that are used for the ambient bias in the shader.
void osgShadow::ShadowMap::setTextureSize | ( | const osg::Vec2s & | textureSize | ) |
set the size in pixels x / y for the shadow texture.
const osg::Vec2s& osgShadow::ShadowMap::getTextureSize | ( | ) | const [inline] |
Get the values that are used for the ambient bias in the shader.
void osgShadow::ShadowMap::setLight | ( | osg::Light * | light | ) |
Set the Light that will cast shadows.
void osgShadow::ShadowMap::setLight | ( | osg::LightSource * | ls | ) |
void osgShadow::ShadowMap::addShader | ( | osg::Shader * | shader | ) | [inline] |
Add a shader to internal list, will be used instead of the default ones.
void osgShadow::ShadowMap::clearShaderList | ( | ) | [inline] |
Reset internal shader list.
virtual void osgShadow::ShadowMap::init | ( | ) | [virtual] |
initialize the ShadowedScene and local cached data structures.
Reimplemented from osgShadow::ShadowTechnique.
virtual void osgShadow::ShadowMap::update | ( | osg::NodeVisitor & | nv | ) | [virtual] |
run the update traversal of the ShadowedScene and update any loca chached data structures.
Reimplemented from osgShadow::ShadowTechnique.
virtual void osgShadow::ShadowMap::cull | ( | osgUtil::CullVisitor & | cv | ) | [virtual] |
run the cull traversal of the ShadowedScene and set up the rendering for this ShadowTechnique.
Reimplemented from osgShadow::ShadowTechnique.
virtual void osgShadow::ShadowMap::cleanSceneGraph | ( | ) | [virtual] |
Clean scene graph from any shadow technique specific nodes, state and drawables.
Reimplemented from osgShadow::ShadowTechnique.
osg::ref_ptr<osg::Camera> osgShadow::ShadowMap::makeDebugHUD | ( | ) |
void osgShadow::ShadowMap::createUniforms | ( | ) | [protected] |
Create the managed Uniforms.
void osgShadow::ShadowMap::createShaders | ( | ) | [protected] |
osg::ref_ptr<osg::Camera> osgShadow::ShadowMap::_camera [protected] |
osg::ref_ptr<osg::TexGen> osgShadow::ShadowMap::_texgen [protected] |
osg::ref_ptr<osg::Texture2D> osgShadow::ShadowMap::_texture [protected] |
osg::ref_ptr<osg::StateSet> osgShadow::ShadowMap::_stateset [protected] |
osg::ref_ptr<osg::Program> osgShadow::ShadowMap::_program [protected] |
osg::ref_ptr<osg::Light> osgShadow::ShadowMap::_light [protected] |
osg::ref_ptr<osg::LightSource> osgShadow::ShadowMap::_ls [protected] |
UniformList osgShadow::ShadowMap::_uniformList [protected] |
ShaderList osgShadow::ShadowMap::_shaderList [protected] |
unsigned int osgShadow::ShadowMap::_baseTextureUnit [protected] |
unsigned int osgShadow::ShadowMap::_shadowTextureUnit [protected] |
osg::Vec2 osgShadow::ShadowMap::_ambientBias [protected] |
osg::Vec2s osgShadow::ShadowMap::_textureSize [protected] |