'''OpenGL extension DFX.multisample This module customises the behaviour of the OpenGL.raw.GL.DFX.multisample to provide a more Python-friendly API Overview (from the spec) This extension provides a mechanism to antialias all GL primitives: points, lines, polygons, bitmaps, and images. The technique is to sample all primitives multiple times at each pixel. The color sample values are resolved to a single, displayable color each time a pixel is updated, so the antialiasing appears to be automatic at the application level. Because each sample includes depth and stencil information, the depth and stencil functions perform equivalently to the single-sample mode. An additional buffer, called the multisample buffer, is added to the framebuffer. Pixel sample values, including color, depth, and stencil values, are stored in this buffer. When the framebuffer includes a multisample buffer, it does not also include separate depth or stencil buffers, even if the multisample buffer does not store depth or stencil values. Color buffers (left/right, front/back, and aux) do coexist with the multisample buffer, however. Multisample antialiasing is most valuable for rendering polygons, because it requires no sorting for hidden surface elimination, and it correctly handles adjacent polygons, object silhouettes, and even intersecting polygons. If only points or lines are being rendered, the "smooth" antialiasing mechanism provided by the base GL may result in a higher quality image. This extension is a subset of SGIS_multisample. It differs in these key ways: * Fragment alpha values are not affected by the fragment sample mask * The sample locations may or may not be fixed. Thus, there is no support for rendering the scene multiple times with different sample points. * Fragment masks are not computed for images or for bitmasks. Because of these differences a new extension was created. However, it is not expected that this extension will co-exist with SGIS_multisample. Because of this and the fact that there are only 32 push/pop bits the MULTISAMPLE_BIT_SGIS state value is the same as MUTLISAMPLE_BIT_3DFX. The official definition of this extension is available here: http://www.opengl.org/registry/specs/DFX/multisample.txt ''' from OpenGL import platform, constant, arrays from OpenGL import extensions, wrapper import ctypes from OpenGL.raw.GL import _types, _glgets from OpenGL.raw.GL.DFX.multisample import * from OpenGL.raw.GL.DFX.multisample import _EXTENSION_NAME def glInitMultisampleDFX(): '''Return boolean indicating whether this extension is available''' from OpenGL import extensions return extensions.hasGLExtension( _EXTENSION_NAME ) ### END AUTOGENERATED SECTION