|
| enum | Function {
NEVER = GL_NEVER,
LESS = GL_LESS,
EQUAL = GL_EQUAL,
LEQUAL = GL_LEQUAL,
GREATER = GL_GREATER,
NOTEQUAL = GL_NOTEQUAL,
GEQUAL = GL_GEQUAL,
ALWAYS = GL_ALWAYS
} |
| |
| enum | Operation {
KEEP = GL_KEEP,
ZERO = GL_ZERO,
REPLACE = GL_REPLACE,
INCR = GL_INCR,
DECR = GL_DECR,
INVERT = GL_INVERT,
INCR_WRAP = GL_INCR_WRAP,
DECR_WRAP = GL_DECR_WRAP
} |
| |
| enum | Values {
OFF = 0x0,
ON = 0x1,
OVERRIDE = 0x2,
PROTECTED = 0x4,
INHERIT = 0x8
} |
| |
| enum | Type {
TEXTURE,
POLYGONMODE,
POLYGONOFFSET,
MATERIAL,
ALPHAFUNC,
ANTIALIAS,
COLORTABLE,
CULLFACE,
FOG,
FRONTFACE,
LIGHT,
POINT,
LINEWIDTH,
LINESTIPPLE,
POLYGONSTIPPLE,
SHADEMODEL,
TEXENV,
TEXENVFILTER,
TEXGEN,
TEXMAT,
LIGHTMODEL,
BLENDFUNC,
BLENDEQUATION,
LOGICOP,
STENCIL,
COLORMASK,
DEPTH,
VIEWPORT,
SCISSOR,
BLENDCOLOR,
MULTISAMPLE,
CLIPPLANE,
COLORMATRIX,
VERTEXPROGRAM,
FRAGMENTPROGRAM,
POINTSPRITE,
PROGRAM,
CLAMPCOLOR,
HINT,
SAMPLEMASKI,
PRIMITIVERESTARTINDEX,
VALIDATOR,
VIEWMATRIXEXTRACTOR,
OSGNV_PARAMETER_BLOCK,
OSGNVEXT_TEXTURE_SHADER,
OSGNVEXT_VERTEX_PROGRAM,
OSGNVEXT_REGISTER_COMBINERS,
OSGNVCG_PROGRAM,
OSGNVSLANG_PROGRAM,
OSGNVPARSE_PROGRAM_PARSER,
UNIFORMBUFFERBINDING,
TRANSFORMFEEDBACKBUFFERBINDING,
ATOMICCOUNTERBUFFERBINDING,
PATCH_PARAMETER
} |
| |
| typedef GLenum | GLMode |
| |
| typedef unsigned int | GLModeValue |
| |
| typedef unsigned int | OverrideValue |
| |
typedef std::pair< Type,
unsigned int > | TypeMemberPair |
| |
| typedef std::vector< StateSet * > | ParentList |
| |
| typedef osg::StateAttributeCallback | Callback |
| |
| enum | DataVariance { DYNAMIC,
STATIC,
UNSPECIFIED
} |
| |
|
| | Stencil () |
| |
| | Stencil (const Stencil &stencil, const CopyOp ©op=CopyOp::SHALLOW_COPY) |
| |
| | META_StateAttribute (osg, Stencil, STENCIL) |
| |
| virtual int | compare (const StateAttribute &sa) const |
| |
| virtual bool | getModeUsage (StateAttribute::ModeUsage &usage) const |
| |
| void | setFunction (Function func, int ref, unsigned int mask) |
| |
| void | setFunction (Function func) |
| |
| Function | getFunction () const |
| |
| void | setFunctionRef (int ref) |
| |
| int | getFunctionRef () const |
| |
| void | setFunctionMask (unsigned int mask) |
| |
| unsigned int | getFunctionMask () const |
| |
| void | setOperation (Operation sfail, Operation zfail, Operation zpass) |
| |
| void | setStencilFailOperation (Operation sfail) |
| |
| Operation | getStencilFailOperation () const |
| |
| void | setStencilPassAndDepthFailOperation (Operation zfail) |
| |
| Operation | getStencilPassAndDepthFailOperation () const |
| |
| void | setStencilPassAndDepthPassOperation (Operation zpass) |
| |
| Operation | getStencilPassAndDepthPassOperation () const |
| |
| void | setWriteMask (unsigned int mask) |
| |
| unsigned int | getWriteMask () const |
| |
| virtual void | apply (State &state) const |
| |
| | StateAttribute () |
| |
| | StateAttribute (const StateAttribute &sa, const CopyOp ©op=CopyOp::SHALLOW_COPY) |
| |
| virtual Object * | cloneType () const =0 |
| |
| virtual Object * | clone (const CopyOp &) const =0 |
| |
| virtual bool | isSameKindAs (const Object *obj) const |
| |
| virtual const char * | libraryName () const |
| |
| virtual const char * | className () const |
| |
| virtual Texture * | asTexture () |
| |
| virtual const Texture * | asTexture () const |
| |
| virtual Type | getType () const =0 |
| |
| virtual unsigned int | getMember () const |
| |
| TypeMemberPair | getTypeMemberPair () const |
| |
| virtual bool | isTextureAttribute () const |
| |
| bool | operator< (const StateAttribute &rhs) const |
| |
| bool | operator== (const StateAttribute &rhs) const |
| |
| bool | operator!= (const StateAttribute &rhs) const |
| |
| const ParentList & | getParents () const |
| |
| StateSet * | getParent (unsigned int i) |
| |
| const StateSet * | getParent (unsigned int i) const |
| |
| unsigned int | getNumParents () const |
| |
| void | setShaderComponent (ShaderComponent *sc) |
| |
| ShaderComponent * | getShaderComponent () |
| |
| const ShaderComponent * | getShaderComponent () const |
| |
| virtual bool | checkValidityOfAssociatedModes (osg::State &) const |
| |
| void | setUpdateCallback (StateAttributeCallback *uc) |
| |
| StateAttributeCallback * | getUpdateCallback () |
| |
| const StateAttributeCallback * | getUpdateCallback () const |
| |
| void | setEventCallback (StateAttributeCallback *ec) |
| |
| StateAttributeCallback * | getEventCallback () |
| |
| const StateAttributeCallback * | getEventCallback () const |
| |
| virtual void | compileGLObjects (State &) const |
| |
| virtual void | resizeGLObjectBuffers (unsigned int) |
| |
| virtual void | releaseGLObjects (State *=0) const |
| |
| | Object () |
| |
| | Object (bool threadSafeRefUnref) |
| |
| | Object (const Object &, const CopyOp ©op=CopyOp::SHALLOW_COPY) |
| |
| 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) |
| |
| template<typename T > |
BoolValueObject
UCharValueObject
UShortValueObject
UIntValueObject
DoubleValueObject
Vec3fValueObject
Vec2dValueObject
Vec4dValueObject
PlaneValueObject
MatrixdValueObject 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 |
| |
Encapsulate OpenGL glStencilFunc/Op/Mask functions.
All functionality except INCR_WRAP and DECR_WRAP is supported by OpenGL 1.1. INCR_WRAP an DECR_WRAP are available since OpenGL 1.4 or when GL_EXT_stencil_wrap extension is present.
If INCR_WRAP or DECR_WRAP values are used while they are detected to be not supported, the INCR or DECR values are sent to OpenGL instead. Note: do not use Stencil::getFunction() to detect whether WRAP operations is used as the object's value is kept intact. Use osg::Stencil::getExtensions() method instead.
OpenGL 2.0 introduced two side stenciling that is available through osg::StencilTwoSided class.