Public Types |
| 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
} |
Public Methods |
| | Stencil () |
| | Stencil (const Stencil &stencil, const CopyOp ©op=CopyOp::SHALLOW_COPY) |
| | Copy constructor using CopyOp to manage deep vs shallow copy.
|
| | META_StateAttribute (osg, Stencil, STENCIL) |
| virtual int | compare (const StateAttribute &sa) const |
| | return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.
|
| virtual void | getAssociatedModes (std::vector< GLMode > &modes) const |
| | return the modes associated with this StateSet
|
| void | setFunction (const Function func, int ref, uint mask) |
| const Function | getFunction () const |
| const int | getFunctionRef () const |
| const uint | getFunctionMask () const |
| void | setOperation (const Operation sfail, const Operation zfail, const Operation zpass) |
| | set the operations to apply when the various stencil and depth tests fail or pass.
|
| const Operation | getStencilFailOperation () const |
| | get the operation when the stencil test fails.
|
| const Operation | getStencilPassAndDepthFailOperation () const |
| | get the operation when the stencil test passes but the depth test fails
|
| const Operation | getStencilPassAndDepthPassOperation () const |
| | get the operation when both the stencil test and the depth test pass
|
| void | setWriteMask (uint mask) |
| const uint | getWriteMask () const |
| virtual void | apply (State &state) const |
| | apply the OpenGL state attributes.
|
Protected Methods |
| virtual | ~Stencil () |
Protected Attributes |
| Function | _func |
| int | _funcRef |
| uint | _funcMask |
| Operation | _sfail |
| Operation | _zfail |
| Operation | _zpass |
| uint | _writeMask |