glPolygonStipple

glPolygonStipple: man2/glPolygonStipple.xml

Polygon stippling, like line stippling (see glLineStipple ), masks out certain fragments produced by rasterization, creating a pattern. Stippling is independent of polygon antialiasing. pattern is a pointer to a 32 × 32 stipple pattern that is stored in memory just like the pixel data supplied to a glDrawPixels call with height and both equal to 32, a pixel format of GL_COLOR_INDEX, and data type of GL_BITMAP. That is, the stipple pattern is represented as a 32 × 32 array of 1-bit color indices packed in unsigned bytes. glPixelStore parameters like GL_UNPACK_SWAP_BYTES and GL_UNPACK_LSB_FIRST affect the assembling of the bits into a stipple pattern. Pixel transfer operations (shift, offset, pixel map) are not applied to the stipple image, however. If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target (see glBindBuffer ) while a stipple pattern is specified, pattern is treated as a byte offset into the buffer object's data store. To enable and disable polygon stippling, call glEnable and glDisable with argument GL_POLYGON_STIPPLE. Polygon stippling is initially disabled. If it's enabled, a rasterized polygon fragment with window coordinates x w and y w is sent to the next stage of the GL if and only if the ( x w % 32 )th bit in the ( y w % 32 )th row of the stipple pattern is 1 (one). When polygon stippling is disabled, it is as if the stipple pattern consists of all 1's.

@OpenGL_Version(OGLIntroducedIn.V1P0)
fn_glPolygonStipple glPolygonStipple;

See Also

glDrawPixels, glLineStipple, glPixelStore, glPixelTransfer

Meta