
S
glStencilFunc
Chapter 17
403
glStencilFunc
glStencilFunc
: set function and reference value for stencil testing.
C Specification
void glStencilFunc(
GLenum func,
GLint ref,
GLuint mask)
Parameters
func
Specifies the test function. Eight tokens are valid: GL_NEVER,
GL_LESS, GL_LEQUAL, GL_GREATER, GL_GEQUAL, GL_EQUAL,
GL_NOTEQUAL, and GL_ALWAYS. The initial value is GL_ALWAYS.
ref
Specifies the reference value for the stencil test. ref is clamped to the
range [0, 2
n
- 1], where n is the number of bitplanes in the stencil
buffer. The initial value is 0.
mask
Specifies a mask that is ANDed with both the reference value and the
stored stencil value when the test is done. The initial value is all 1s.
Description
Stenciling, like depth-buffering, enables and disables drawing on a per-pixel basis. You
draw into the stencil planes using GL drawing primitives, then render geometry and
images, using the stencil planes to mask out portions of the screen. Stenciling is typically
used in multipass rendering algorithms to achieve special effects, such as decals,
outlining, and constructive solid geometry rendering.
The stencil test conditionally eliminates a pixel based on the outcome of a comparison
between the reference value and the value in the stencil buffer. To enable and disable the
test, call glEnable and glDisable with argument GL_STENCIL_TEST. To specify actions
based on the outcome of the stencil test, call glStencilOp.
func is a symbolic constant that determines the stencil comparison function. It accepts
one of eight values, shown in the following list. ref is an integer reference value that is
used in the stencil comparison. It is clamped to the range [0, 2
n
- 1], where n is the
number of bitplanes in the stencil buffer. mask is bitwise anded with both the reference
value and the stored stencil value, with the anded values participating in the
comparison.
If stencil represents the value stored in the corresponding stencil buffer location, the
following list shows the effect of each comparison function that can be specified by func.
Only if the comparison succeeds is the pixel passed through to the next stage in the
rasterization process (see glStencilOp). All tests treat stencil values as unsigned integers
in the range [0, 2
n
- 1], where n is the number of bitplanes in the stencil buffer.
Содержание c3700 - Workstation
Страница 9: ...Chapter 1 9 1 A ...
Страница 12: ...A glAccum Chapter 1 12 glLogicOp glPixelStore glPixelTransfer glReadBuffer glReadPixels glScissor glStencilOp ...
Страница 18: ...A glArrayElement Chapter 1 18 glNormalPointer glTexCoordPointer glVertexPointer ...
Страница 19: ...Chapter 2 19 2 B ...
Страница 40: ...B gluBuild2DMipmaps Chapter 2 40 ...
Страница 41: ...Chapter 3 41 3 C ...
Страница 49: ...C glXChooseVisual Chapter 3 49 See Also glXCreateContext glXGetConfig ...
Страница 73: ...C glCopyPixels Chapter 3 73 glReadBuffer glReadPixels glStencilFunc ...
Страница 84: ...C glCopyTexSubImage2D Chapter 3 84 glTexParameter glTexSubImage1D glTexSubImage2D ...
Страница 93: ...Chapter 4 93 4 D ...
Страница 99: ...D glDeleteTextures Chapter 4 99 glTexImage1D glTexImage2D glTexParameter ...
Страница 127: ...Chapter 5 127 5 E ...
Страница 148: ...E glEvalPoint Chapter 5 148 ...
Страница 149: ...Chapter 6 149 6 F ...
Страница 161: ...Chapter 7 161 7 G ...
Страница 164: ...G glGenTextures Chapter 7 164 glTexImage1D glTexImage2D glTexParameter ...
Страница 185: ...G glGet Chapter 7 185 glGetTexGen glGetTexImage glGetTexLevelParameter glGetTexParameter glIsEnabled ...
Страница 207: ...G glGetPointer Chapter 7 207 glSelectBuffer glTexCoordPointer glVertexPointer ...
Страница 224: ...G glGetTexParameter Chapter 7 224 See Also glAreTexturesResident glPrioritizeTextures glTexParameter ...
Страница 225: ...Chapter 8 225 8 H ...
Страница 228: ...H glHint Chapter 8 228 ...
Страница 229: ...Chapter 9 229 9 I ...
Страница 248: ...I glIsTexture Chapter 9 248 ...
Страница 249: ...Chapter 10 249 10 L ...
Страница 256: ...L glLightModel Chapter 10 256 See Also glLight glMaterial ...
Страница 271: ...Chapter 11 271 11 M ...
Страница 291: ...Chapter 12 291 12 N ...
Страница 312: ...N gluNurbsSurface Chapter 12 312 ...
Страница 313: ...Chapter 13 313 13 O ...
Страница 317: ...Chapter 14 317 14 P ...
Страница 345: ...P glPolygonStipple Chapter 14 345 See Also glDrawPixels glLineStipple glPixelStore glPixelTransfer ...
Страница 360: ...P glPushName Chapter 14 360 See Also glInitNames glLoadName glRenderMode glSelectBuffer ...
Страница 362: ...P gluPwlCurve Chapter 14 362 ...
Страница 363: ...Chapter 15 363 15 Q ...
Страница 372: ...Q glXQueryVersion Chapter 15 372 glXQueryVersion ...
Страница 373: ...Chapter 16 373 16 R ...
Страница 390: ...R glRotate Chapter 16 390 ...
Страница 391: ...Chapter 17 391 17 S ...
Страница 397: ...S glScissor Chapter 17 397 See Also glEnable glViewport ...
Страница 409: ...Chapter 18 409 18 T ...
Страница 430: ...T glTexEnv Chapter 18 430 glCopyTexSubImage2D glTexImage1D glTexImage2D glTexParameter glTexSubImage1D glTexSubImage2D ...
Страница 448: ...T glTexImage3DEXT Chapter 18 448 glTexGen glTexImage1D glTexImage2D glTexParameter ...
Страница 457: ...T glTexSubImage1D Chapter 18 457 glTexImage2D glTexParameter glTexSubImage2D ...
Страница 465: ...T glTranslate Chapter 18 465 See Also glMatrixMode glMultMatrix glPushMatrix glScale ...
Страница 466: ...T glTranslate Chapter 18 466 ...
Страница 467: ...Chapter 19 467 19 U ...
Страница 469: ...U gluUnProject Chapter 19 469 See Also glGet gluProject ...
Страница 471: ...U glXUseXFont Chapter 19 471 See Also glBitmap glXMakeCurrent ...
Страница 472: ...U glXUseXFont Chapter 19 472 ...
Страница 473: ...Chapter 20 473 20 V ...
Страница 482: ...V glVisibilityBufferhp Chapter 20 482 ...
Страница 483: ...Chapter 21 483 21 W ...
Страница 486: ...W glXWaitX Chapter 21 486 ...