Esempio n. 1
0
def glDrawElementsTyped(type, suffix):
    arrayType = arrays.GL_CONSTANT_TO_ARRAY_TYPE[type]
    function = wrapper.wrapper(
        simple.glDrawElements).setPyConverter('type').setCConverter(
            'type', type).setPyConverter('count').setCConverter(
                'count',
                arrays.AsArrayTypedSize('indices', arrayType),
            ).setPyConverter(
                'indices',
                arrays.AsArrayTyped('indices', arrayType),
            ).setReturnValues(wrapper.returnPyArgument('indices'))
    return function
Esempio n. 2
0
    'pointer', arrays.AsArrayOfType( 'pointer', 'type' ),
).setStoreValues(
    arrays.storePointerType( 'pointer', simple.GL_NORMAL_ARRAY_POINTER )
).setReturnValues(
    wrapper.returnPyArgument( 'pointer' )
)
glIndexPointer = wrapper.wrapper( simple.glIndexPointer ).setPyConverter(
    'pointer', arrays.AsArrayOfType( 'pointer', 'type' ),
).setStoreValues(
    arrays.storePointerType( 'pointer', simple.GL_INDEX_ARRAY_POINTER )
).setReturnValues(
    wrapper.returnPyArgument( 'pointer' )
)
glEdgeFlagPointer = wrapper.wrapper( simple.glEdgeFlagPointer ).setPyConverter(
    # XXX type is wrong!
    'pointer', arrays.AsArrayTyped( 'pointer', arrays.GLushortArray ),
).setStoreValues(
    arrays.storePointerType( 'pointer', simple.GL_EDGE_FLAG_ARRAY_POINTER )
).setReturnValues(
    wrapper.returnPyArgument( 'pointer' )
)
glColorPointer = wrapper.wrapper( simple.glColorPointer ).setPyConverter(
    'pointer', arrays.AsArrayOfType( 'pointer', 'type' ),
).setStoreValues(
    arrays.storePointerType( 'pointer', simple.GL_COLOR_ARRAY_POINTER )
).setReturnValues(
    wrapper.returnPyArgument( 'pointer' )
)
glInterleavedArrays = wrapper.wrapper( simple.glInterleavedArrays ).setStoreValues(
    arrays.storePointerType( 'pointer', GL_INTERLEAVED_ARRAY_POINTER )
).setReturnValues(
Esempio n. 3
0
'''OpenGL extension ARB.draw_buffers

This module customises the behaviour of the 
OpenGL.raw.GL.ARB.draw_buffers to provide a more 
Python-friendly API
'''
from OpenGL import platform, constants, constant, arrays
from OpenGL import extensions, wrapper
from OpenGL.GL import glget
import ctypes
from OpenGL.raw.GL.ARB.draw_buffers import *
### END AUTOGENERATED SECTION
# This is untested...
glDrawBuffersARB = wrapper.wrapper(
    glDrawBuffersARB, ).setPyConverter('n').setCConverter(
        'n',
        arrays.AsArrayTypedSize('bufs', arrays.GLenumArray),
    ).setPyConverter(
        'bufs',
        arrays.AsArrayTyped('bufs', arrays.GLenumArray),
    ).setCResolver(
        'bufs',
        arrays.GLenumArray.dataPointer,
    ).setReturnValues(wrapper.returnPyArgument('bufs'))

from OpenGL.GL import glget
glget.addGLGetConstant(GL_MAX_DRAW_BUFFERS_ARB, (1, ))
# Should have output arrays for the buffers too???