![]() |
OGRE 1.12.10
Object-Oriented Graphics Rendering Engine
|
Describes the stencil buffer operation. More...
#include <OgreRenderSystem.h>
Public Member Functions | |
StencilState () | |
Public Attributes | |
uint32 | compareMask |
The bitmask applied to both the stencil value and the reference value before comparison. | |
CompareFunction | compareOp |
Comparison operator for the stencil test. | |
StencilOperation | depthFailOp |
The action to perform when the stencil check passes, but the depth buffer check fails. | |
StencilOperation | depthStencilPassOp |
The action to take when both the stencil and depth check pass. | |
bool | enabled: 1 |
Turns stencil buffer checking on or off. | |
uint32 | referenceValue |
The reference value used in the stencil comparison. | |
StencilOperation | stencilFailOp |
The action to perform when the stencil check fails. | |
bool | twoSidedOperation: 1 |
If set to true, then if you render both back and front faces (you'll have to turn off culling) then these parameters will apply for front faces, and the inverse of them will happen for back faces (keep remains the same) | |
uint32 | writeMask |
The bitmask the controls which bits from stencilRefValue will be written to stencil buffer (valid for operations such as SOP_REPLACE) | |
Describes the stencil buffer operation.
The stencil buffer is used to mask out pixels in the render target, allowing you to do effects like mirrors, cut-outs, stencil shadows and more. Each of your batches of rendering is likely to ignore the stencil buffer, update it with new values, or apply it to mask the output of the render.
The stencil test is: $$(referenceValue\,\&\,compareMask)\;compareOp\;(stencilBuffer\,\&\,compareMask)$$
The result of this will cause one of 3 actions depending on whether
|
inline |
CompareFunction Ogre::StencilState::compareOp |
Comparison operator for the stencil test.
StencilOperation Ogre::StencilState::stencilFailOp |
The action to perform when the stencil check fails.
StencilOperation Ogre::StencilState::depthFailOp |
The action to perform when the stencil check passes, but the depth buffer check fails.
StencilOperation Ogre::StencilState::depthStencilPassOp |
The action to take when both the stencil and depth check pass.
uint32 Ogre::StencilState::referenceValue |
The reference value used in the stencil comparison.
uint32 Ogre::StencilState::compareMask |
The bitmask applied to both the stencil value and the reference value before comparison.
uint32 Ogre::StencilState::writeMask |
The bitmask the controls which bits from stencilRefValue will be written to stencil buffer (valid for operations such as SOP_REPLACE)
bool Ogre::StencilState::enabled |
Turns stencil buffer checking on or off.
bool Ogre::StencilState::twoSidedOperation |
If set to true, then if you render both back and front faces (you'll have to turn off culling) then these parameters will apply for front faces, and the inverse of them will happen for back faces (keep remains the same)