'''OpenGL extension NV.draw_texture This module customises the behaviour of the OpenGL.raw.GL.NV.draw_texture to provide a more Python-friendly API Overview (from the spec) This extension provides a new function, DrawTextureNV(), allowing applications to draw an screen-aligned rectangle displaying some or all of the contents of a two-dimensional or rectangle texture. Callers specify a texture object, an optional sampler object, window coordinates of the rectangle to draw, and texture coordinates corresponding to the corners of the rectangle. For each fragment produced by the rectangle, DrawTextureNV interpolates the texture coordinates, performs a texture lookup, and uses the texture result as the fragment color. No shaders are used by DrawTextureNV; the results of the texture lookup are used in lieu of a fragment shader output. The fragments generated are processed by all per-fragment operations. In particular, DrawTextureNV() fully supports blending and multisampling. While this functionality can be obtained in unextended OpenGL by drawing a rectangle and using a fragment shader to do a texture lookup, DrawTextureNV() is likely to have better power efficiency on implementations supporting this extension. Additionally, use of this extension frees the application developer from having to set up specialized shaders, transformation matrices, vertex attributes, and various other state in order to render the rectangle. The official definition of this extension is available here: http://www.opengl.org/registry/specs/NV/draw_texture.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.NV.draw_texture import * from OpenGL.raw.GL.NV.draw_texture import _EXTENSION_NAME def glInitDrawTextureNV(): '''Return boolean indicating whether this extension is available''' from OpenGL import extensions return extensions.hasGLExtension( _EXTENSION_NAME ) ### END AUTOGENERATED SECTION