Name SGIX_vertex_preclip Name Strings GL_SGIX_vertex_preclip GL_SGIX_vertex_preclip_hint Contact John Francis, Silicon Graphics (jfrancis 'at' sgi.com) Dave Gorgen, Silicon Graphics (dgorgen 'at' sgi.com) Status XXX - Not complete yet!!! Version Last Modified Date: April 19, 2000 Number 210 Dependencies OpenGL 1.2 is required. Overview Certain graphics subsystems are capable of performing fast 2D viewport or, in some cases, 3D volume "scissoring" operations within some coordinate range much faster that the host CPU could re-tesselate clipped primitives. This extension introduces the notion of an extended rasterizable view volume that is an expansion of the clip-space view volume. This volume is the space within which a particular graphics system is much more efficient at rejecting fragments that lie outside the view volume than it is at performing strict view volume clipping. Clip-checking can be turned on or off through the glEnable/glDisable mechanism, and can be further controlled by using glHint. IP Status None Issues Should more precise control be given, instead of just a hint? NO. (Or not yet, anyway). New Procedures and Functions None New Tokens Accepted by the parameter of Enable, Disable, and IsEnabled, and the parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev: VERTEX_PRECLIP_SGIX 0x83EE Accepted by the parameter of Hint and the parameter of GetBooleanv, GetIntegerv, GetFloatv, and GetDoublev: VERTEX_PRECLIP_HINT_SGIX 0x83EF Additions to Chapter 2 of the OpenGL 1.2.1 Specification (OpenGL Operation) At the end of section 2.11 Clipping Add: The precision of the arithmetic used in the clipping operation is undefined. Some implementations may be able to maintain full accuracy for all primitives, while other implementations may have limits on the extent of a primitive, or retain full accuracy only within some rasterizable volume (larger than the clip volume). Such implementations can make use of the VERTEX_PRECLIP extension. If this feature is enabled, all primitives will be pre-clipped to the rasterizable volume before any other processing. Additions to Chapter 3 of the OpenGL 1.2.1 Specification (Rasterization) None Additions to Chapter 4 of the OpenGL 1.2.1 Specification (Per-Fragment Operations and the Frame Buffer) None Additions to Chapter 5 of the OpenGL 1.2.1 Specification (Special Functions) In section 5.6 Hints: remove the word 'and' in front of FOG_HINT replace the period after the description of FOG_HINT with ; and VERTEX_PRECLIP_HINT, indicating the strictness of checking for primitives which extend beyond the rasterizable volume. Additions to Chapter 6 of the OpenGL 1.2.1 Specification (State and State Requests) Only the changes to tables 6.7 and 6.23 detailed below Additions to Appendix A of the OpenGL 1.2.1 Specification (Invariance) None Additions to the AGL/GLX/WGL Specifications None Errors None New State (table 6.7, Transformation State) Initial Get Value Type Get Command Value Description Sec. Attribute --------- ---- ----------- ------- ----------- ---- --------- VERTEX_PRECLIP B IsEnabled False Pre-clip On/Off 2.11 transform/enable (table 6.23, Hints) Initial Get Value Type Get Command Value Description Sec. Attribute --------- ---- ----------- ------- ----------- ---- --------- VERTEX_PRECLIP_HINT Z3 GetIntegerv DONT_CARE Pre-clip Hint 5.6 hint New Implementation Dependent State None Revision History