ó
    š3j7	  ã                   óè   • S r SSKJrJrJr  SSKJrJr  SSKrSSKJ	r	J
r
  SSK7  SSKJr  S r\R                  " \5      R                  S	S5      r\R                  " \5      R                  S	S5      rg)
a  OpenGL extension ARB.base_instance

This module customises the behaviour of the 
OpenGL.raw.GL.ARB.base_instance to provide a more 
Python-friendly API

Overview (from the spec)
        
        This extension allows the offset within buffer objects used for instanced
        rendering to be specified. This is congruent with the <first> parameter
        in glDrawArrays and the <basevertex> parameter in glDrawElements. When
        instanced rendering is performed (for example, through
        glDrawArraysInstanced), instanced vertex attributes whose vertex attribute
        divisors are non-zero are fetched from enabled vertex arrays per-instance
        rather than per-vertex. However, in unextended OpenGL, there is no way to
        define the offset into those arrays from which the attributes are fetched.
        This extension adds that offset in the form of a <baseinstance> parameter
        to several new procedures.
        
        The <baseinstance> parameter is added to the index of the array element,
        after division by the vertex attribute divisor. This allows several sets of
        instanced vertex attribute data to be stored in a single vertex array, and
        the base offset of that data to be specified for each draw. Further, this
        extension exposes the <baseinstance> parameter as the final and previously
        undefined structure member of the draw-indirect data structure.

The official definition of this extension is available here:
http://www.opengl.org/registry/specs/ARB/base_instance.txt
é    )ÚplatformÚconstantÚarrays)Ú
extensionsÚwrapperN)Ú_typesÚ_glgets)Ú*)Ú_EXTENSION_NAMEc                  ó:   • SSK Jn   U R                  " [        5      $ )z=Return boolean indicating whether this extension is availabler   ©r   )ÚOpenGLr   ÚhasGLExtensionr   r   s    ÚU/home/wildlama/miniconda3/lib/python3.13/site-packages/OpenGL/GL/ARB/base_instance.pyÚglInitBaseInstanceARBr   %   s   € å!Ø×$Ò$¤oÓ7Ð7ó    Úindices)Ú__doc__r   r   r   r   r   r   ÚctypesÚOpenGL.raw.GLr   r	   ÚOpenGL.raw.GL.ARB.base_instancer   r   Ú#glDrawElementsInstancedBaseInstanceÚsetInputArraySizeÚ-glDrawElementsInstancedBaseVertexBaseInstance© r   r   Ú<module>r      sj   ðñ÷: .Ñ -ß &Û ß )Ü -Ý ;ò8ð %,§O¢OÐ4WÓ$X×$jÑ$jØˆtó%Ð #ð /6¯oªoÐ>kÓ.l×.~Ñ.~Øˆtó/Ñ -r   