'''OpenGL extension OES.sample_variables This module customises the behaviour of the OpenGL.raw.GLES2.OES.sample_variables to provide a more Python-friendly API Overview (from the spec) This extension allows fragment shaders more control over multisample rendering. The mask of samples covered by a fragment can be read by the shader and individual samples can be masked out. Additionally fragment shaders can be run on individual samples and the sample's ID and position read to allow better interaction with multisample resources such as textures. In multisample rendering, an implementation is allowed to assign the same sets of fragment shader input values to each sample, which then allows the optimization where the shader is only evaluated once and then distributed to the samples that have been determined to be covered by the primitive currently being rasterized. This extension does not change how values are interpolated, but it makes some details of the current sample available. This means that where these features are used (gl_SampleID and gl_SamplePosition), implementations must run the fragment shader for each sample. In order to obtain per-sample interpolation on fragment inputs, either OES_sample_shading or OES_shader_multisample_interpolation must be used in conjunction with the features from this extension. The official definition of this extension is available here: http://www.opengl.org/registry/specs/OES/sample_variables.txt ''' from OpenGL import platform, constant, arrays from OpenGL import extensions, wrapper import ctypes from OpenGL.raw.GLES2 import _types, _glgets from OpenGL.raw.GLES2.OES.sample_variables import * from OpenGL.raw.GLES2.OES.sample_variables import _EXTENSION_NAME def glInitSampleVariablesOES(): '''Return boolean indicating whether this extension is available''' from OpenGL import extensions return extensions.hasGLExtension( _EXTENSION_NAME ) ### END AUTOGENERATED SECTION