diff options
Diffstat (limited to 'nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/stencilfunc.gl')
-rw-r--r-- | nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/stencilfunc.gl | 159 |
1 files changed, 159 insertions, 0 deletions
diff --git a/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/stencilfunc.gl b/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/stencilfunc.gl new file mode 100644 index 000000000..7d284a33d --- /dev/null +++ b/nx-X11/extras/ogl-sample/main/doc/man/mangl/standard/stencilfunc.gl @@ -0,0 +1,159 @@ +_C_ License Applicability. Except to the extent portions of this file are +_C_ made subject to an alternative license as permitted in the SGI Free +_C_ Software License B, Version 1.1 (the "License"), the contents of this +_C_ file are subject only to the provisions of the License. You may not use +_C_ this file except in compliance with the License. You may obtain a copy +_C_ of the License at Silicon Graphics, Inc., attn: Legal Services, 1600 +_C_ Amphitheatre Parkway, Mountain View, CA 94043-1351, or at: +_C_ +_C_ http://oss.sgi.com/projects/FreeB +_C_ +_C_ Note that, as provided in the License, the Software is distributed on an +_C_ "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS +_C_ DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND +_C_ CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A +_C_ PARTICULAR PURPOSE, AND NON-INFRINGEMENT. +_C_ +_C_ Original Code. The Original Code is: OpenGL Sample Implementation, +_C_ Version 1.2.1, released January 26, 2000, developed by Silicon Graphics, +_C_ Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc. +_C_ Copyright in any portions created by third parties is as indicated +_C_ elsewhere herein. All Rights Reserved. +_C_ +_C_ Additional Notice Provisions: The application programming interfaces +_C_ established by SGI in conjunction with the Original Code are The +_C_ OpenGL(R) Graphics System: A Specification (Version 1.2.1), released +_C_ April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version +_C_ 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X +_C_ Window System(R) (Version 1.3), released October 19, 1998. This software +_C_ was created using the OpenGL(R) version 1.2.1 Sample Implementation +_C_ published by SGI, but has not been independently verified as being +_C_ compliant with the OpenGL(R) version 1.2.1 Specification. +_C_ +_C_ The first character in this file must be an '_'! +_C_ Anything on a line after _C_ is ignored +_define(_filters,tbl|eqn)_C_ +_C_ eqn is automatically replaced with neqn for nroff +_header(StencilFunc,set function and reference value for stencil testing) +.EQ +delim $$ +.EN +_names(StencilFunc) +.SH PARAMETERS +_phead(_param1) +Specifies the test function. +Eight tokens are valid: +_const(NEVER), +_const(LESS), +_const(LEQUAL), +_const(GREATER), +_const(GEQUAL), +_const(EQUAL), +_const(NOTEQUAL), and +_const(ALWAYS). The initial value is _const(ALWAYS). +_phead(_param2) +Specifies the reference value for the stencil test. +_param2 is clamped to the range [0,$2 sup n - 1$], +where $n$ is the number of bitplanes in the stencil buffer. The +initial value is 0. +_phead(_param3) +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 1's. +.SH 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. +.P +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 _cmnd(Enable) and _cmnd(Disable) +with argument _const(STENCIL_TEST). +To specify actions based on the outcome of the stencil test, call +_cmnd(StencilOp). +.P +_param1 is a symbolic constant that determines the stencil comparison function. +It accepts one of eight values, +shown in the following list. +_param2 is an integer reference value that is used in the stencil comparison. +It is clamped to the range [0,$2 sup n - 1$], +where $n$ is the number of bitplanes in the stencil buffer. +_param3 is bitwise ANDed with both the reference value +and the stored stencil value, +with the ANDed values participating in the comparison. +.P +If \f2stencil\fP 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 _param1. +Only if the comparison succeeds is the pixel passed through +to the next stage in the rasterization process +(see _cmnd(StencilOp)). +All tests treat \f2stencil\fP values as unsigned integers in the range +[0,$2 sup n - 1$], +where $n$ is the number of bitplanes in the stencil buffer. +.P +The following values are accepted by _param1: +.TP 18 +_const(NEVER) +Always fails. +.TP +_const(LESS) +Passes if ( _param2 & _param3 ) < ( \f2stencil\fP & _param3 ). +.TP +_const(LEQUAL) +Passes if ( _param2 & _param3 ) \(<= ( \f2stencil\fP & _param3 ). +.TP +_const(GREATER) +Passes if ( _param2 & _param3 ) > ( \f2stencil\fP & _param3 ). +.TP +_const(GEQUAL) +Passes if ( _param2 & _param3 ) \(>= ( \f2stencil\fP & _param3 ). +.TP +_const(EQUAL) +Passes if ( _param2 & _param3 ) = ( \f2stencil\fP & _param3 ). +.TP +_const(NOTEQUAL) +Passes if ( _param2 & _param3 ) \(!= ( \f2stencil\fP & _param3 ). +.TP +_const(ALWAYS) +Always passes. +.SH NOTES +Initially, the stencil test is disabled. +If there is no stencil buffer, +no stencil modification can occur and it is as if +the stencil test always passes. +.SH ERRORS +_const(INVALID_ENUM) is generated if _param1 is not one of the eight +accepted values. +.P +_const(INVALID_OPERATION) is generated if _cmnd +is executed between the execution of _cmnd(Begin) +and the corresponding execution of _cmnd(End). +.SH ASSOCIATED GETS +_cmnd(Get) with argument _const(STENCIL_FUNC) +.br +_cmnd(Get) with argument _const(STENCIL_VALUE_MASK) +.br +_cmnd(Get) with argument _const(STENCIL_REF) +.br +_cmnd(Get) with argument _const(STENCIL_BITS) +.br +_cmnd(IsEnabled) with argument _const(STENCIL_TEST) +.SH SEE ALSO +_cmnd(AlphaFunc), +_cmnd(BlendFunc), +_cmnd(DepthFunc), +_cmnd(Enable), +_cmnd(IsEnabled), +_cmnd(LogicOp), +_cmnd(StencilOp) |