'''OpenGL extension AMD.multi_draw_indirect This module customises the behaviour of the OpenGL.raw.GL.AMD.multi_draw_indirect to provide a more Python-friendly API Overview (from the spec) The ARB_draw_indirect extension (included in OpenGL 4.0) introduced mechanisms whereby the parameters for a draw function may be provided in a structure contained in a buffer object rather than as parameters to the drawing procedure. This is known as an indirect draw and is exposed as two new functions, glDrawArraysIndirect and glDrawElementsIndirect. Each of these functions generates a single batch of primitives. This extension builds on this functionality by providing procedures to invoke multiple draws from a single procedure call. This allows large batches of drawing commands to be assembled in server memory (via a buffer object) which may then be dispatched through a single function call. The official definition of this extension is available here: http://www.opengl.org/registry/specs/AMD/multi_draw_indirect.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.AMD.multi_draw_indirect import * from OpenGL.raw.GL.AMD.multi_draw_indirect import _EXTENSION_NAME def glInitMultiDrawIndirectAMD(): '''Return boolean indicating whether this extension is available''' from OpenGL import extensions return extensions.hasGLExtension( _EXTENSION_NAME ) ### END AUTOGENERATED SECTION