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 |