OSG
3.4.0
|
#include <SoftShadowMap.h>
Public Member Functions | |
SoftShadowMap () | |
SoftShadowMap (const SoftShadowMap &es, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
META_Object (osgShadow, SoftShadowMap) | |
void | setSoftnessWidth (float softnessWidth) |
float | getSoftnessWidth () const |
void | setJitteringScale (float jitteringScale) |
float | getJitteringScale () const |
void | setJitterTextureUnit (unsigned int jitterTextureUnit) |
unsigned int | getJitterTextureUnit () const |
void | setBias (float bias) |
float | getBias () const |
![]() | |
ShadowMap () | |
ShadowMap (const ShadowMap &es, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
META_Object (osgShadow, ShadowMap) | |
void | setTextureUnit (unsigned int unit) |
unsigned int | getTextureUnit () const |
void | setPolygonOffset (const osg::Vec2 &polyOffset) |
const osg::Vec2 & | getPolygonOffset () const |
void | setAmbientBias (const osg::Vec2 &ambientBias) |
const osg::Vec2 & | getAmbientBias () const |
void | setTextureSize (const osg::Vec2s &textureSize) |
const osg::Vec2s & | getTextureSize () const |
void | setLight (osg::Light *light) |
void | setLight (osg::LightSource *ls) |
void | addShader (osg::Shader *shader) |
void | clearShaderList () |
virtual void | init () |
virtual void | update (osg::NodeVisitor &nv) |
virtual void | cull (osgUtil::CullVisitor &cv) |
virtual void | cleanSceneGraph () |
osg::ref_ptr< osg::Camera > | makeDebugHUD () |
![]() | |
ShadowTechnique () | |
ShadowTechnique (const ShadowTechnique &es, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
META_Object (osgShadow, ShadowTechnique) | |
ShadowedScene * | getShadowedScene () |
const ShadowedScene * | getShadowedScene () const |
virtual void | traverse (osg::NodeVisitor &nv) |
virtual void | dirty () |
![]() | |
Object () | |
Object (bool threadSafeRefUnref) | |
Object (const Object &, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
virtual Object * | cloneType () const =0 |
virtual Object * | clone (const CopyOp &) const =0 |
virtual bool | isSameKindAs (const Object *) const |
virtual const char * | libraryName () const =0 |
virtual const char * | className () const =0 |
std::string | getCompoundClassName () const |
virtual Node * | asNode () |
virtual const Node * | asNode () const |
virtual NodeVisitor * | asNodeVisitor () |
virtual const NodeVisitor * | asNodeVisitor () const |
virtual StateAttribute * | asStateAttribute () |
virtual const StateAttribute * | asStateAttribute () const |
virtual Uniform * | asUniform () |
virtual const Uniform * | asUniform () const |
virtual void | setThreadSafeRefUnref (bool threadSafe) |
virtual void | setName (const std::string &name) |
void | setName (const char *name) |
const std::string & | getName () const |
void | setDataVariance (DataVariance dv) |
DataVariance | getDataVariance () const |
virtual void | computeDataVariance () |
void | setUserDataContainer (osg::UserDataContainer *udc) |
osg::UserDataContainer * | getUserDataContainer () |
const osg::UserDataContainer * | getUserDataContainer () const |
osg::UserDataContainer * | getOrCreateUserDataContainer () |
virtual void | setUserData (Referenced *obj) |
virtual Referenced * | getUserData () |
virtual const Referenced * | getUserData () const |
template<typename T > | |
bool | getUserValue (const std::string &name, T &value) const |
template<typename T > | |
void | setUserValue (const std::string &name, const T &value) |
virtual void | resizeGLObjectBuffers (unsigned int) |
virtual void | releaseGLObjects (osg::State *=0) const |
template<typename T > | |
BoolValueObject UCharValueObject UShortValueObject UIntValueObject DoubleValueObject Vec3fValueObject Vec2dValueObject Vec4dValueObject PlaneValueObject MatrixdValueObject BoundingBoxdValueObject BoundingSpheredValueObject bool | getUserValue (const std::string &name, T &value) const |
![]() | |
Referenced () | |
Referenced (bool threadSafeRefUnref) | |
Referenced (const Referenced &) | |
Referenced & | operator= (const Referenced &) |
bool | getThreadSafeRefUnref () const |
OpenThreads::Mutex * | getRefMutex () const |
int | ref () const |
int | unref () const |
int | unref_nodelete () const |
int | referenceCount () const |
ObserverSet * | getObserverSet () const |
ObserverSet * | getOrCreateObserverSet () const |
void | addObserver (Observer *observer) const |
void | removeObserver (Observer *observer) const |
Protected Member Functions | |
virtual | ~SoftShadowMap (void) |
void | createUniforms () |
void | createShaders () |
void | initJittering (osg::StateSet *ss) |
![]() | |
virtual | ~ShadowMap (void) |
![]() | |
osg::Vec3 | computeOrthogonalVector (const osg::Vec3 &direction) const |
virtual | ~ShadowTechnique () |
![]() | |
virtual | ~Object () |
![]() | |
virtual | ~Referenced () |
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
void | deleteUsingDeleteHandler () const |
Additional Inherited Members | |
![]() | |
typedef std::vector < osg::ref_ptr< osg::Uniform > > | UniformList |
typedef std::vector < osg::ref_ptr< osg::Shader > > | ShaderList |
![]() | |
enum | DataVariance { DYNAMIC, STATIC, UNSPECIFIED } |
![]() | |
static OpenThreads::Mutex * | getGlobalReferencedMutex () |
static void | setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting) |
static bool | getThreadSafeReferenceCounting () |
static void | setDeleteHandler (DeleteHandler *handler) |
static DeleteHandler * | getDeleteHandler () |
SoftShadowMap provides an implementation of soft shadows with shadow maps.
Definition at line 27 of file SoftShadowMap.h.
osgShadow::SoftShadowMap::SoftShadowMap | ( | ) |
osgShadow::SoftShadowMap::SoftShadowMap | ( | const SoftShadowMap & | es, |
const osg::CopyOp & | copyop = osg::CopyOp::SHALLOW_COPY |
||
) |
|
inlineprotectedvirtual |
Definition at line 73 of file SoftShadowMap.h.
|
protectedvirtual |
Reimplemented from osgShadow::ShadowMap.
|
protectedvirtual |
Create the managed Uniforms
Reimplemented from osgShadow::ShadowMap.
|
inline |
Return the bias value
Definition at line 69 of file SoftShadowMap.h.
|
inline |
Get the value used for jittering scale in the shader.
Definition at line 52 of file SoftShadowMap.h.
|
inline |
Get the texture unit that the jitter texture will be applied on.
Definition at line 58 of file SoftShadowMap.h.
|
inline |
Get the value used for width of the soft penumbra in the shader.
Definition at line 42 of file SoftShadowMap.h.
|
protected |
osgShadow::SoftShadowMap::META_Object | ( | osgShadow | , |
SoftShadowMap | |||
) |
|
inline |
Add a small bias to the z-value, this can reduce shadow acne problem. This is the same as calling setPolygonOffset(osg::Vec2(bias,0)); Suitable values are 0-0.005 Default is 0.
Definition at line 66 of file SoftShadowMap.h.
void osgShadow::SoftShadowMap::setJitteringScale | ( | float | jitteringScale | ) |
Set the values for jittering scale the shader will use. Zero is no jittering (i.e. see the banding in penumbra) High values (>64) cause 'pixelization' of the penumbra. Usually but not necessarily power of two number. Default is 32.
void osgShadow::SoftShadowMap::setJitterTextureUnit | ( | unsigned int | jitterTextureUnit | ) |
Set the texture unit that the jitter texture will be applied on.
void osgShadow::SoftShadowMap::setSoftnessWidth | ( | float | softnessWidth | ) |
Set the values for width of the soft penumbra the shader will use. Zero is for hard shadow (no penumbra). 0.01 is already very soft penumbra. Default is 0.005.
|
protected |
Definition at line 83 of file SoftShadowMap.h.
|
protected |
Definition at line 81 of file SoftShadowMap.h.
|
protected |
Definition at line 84 of file SoftShadowMap.h.
|
protected |
Definition at line 82 of file SoftShadowMap.h.
|
protected |
Definition at line 80 of file SoftShadowMap.h.