| """Version 1.2 Image-handling functions |
| |
| Almost all of the 1.2 enhancements are image-handling-related, |
| so this is, most of the 1.2 wrapper code... |
| |
| Note that the functions that manually wrap certain operations are |
| guarded by if simple.functionName checks, so that you can use |
| if functionName to see if the function is available at run-time. |
| """ |
| from OpenGL import wrapper, constants, arrays |
| from OpenGL.raw.GL.ARB import imaging |
| from OpenGL.raw.GL.VERSION import GL_1_2 as _simple |
| from OpenGL.GL.ARB.imaging import * |
|
|
| from OpenGL.GL import images |
| import ctypes |
|
|
| for suffix,arrayConstant in [ |
| ('b', constants.GL_BYTE), |
| ('f', constants.GL_FLOAT), |
| ('i', constants.GL_INT), |
| ('s', constants.GL_SHORT), |
| ('ub', constants.GL_UNSIGNED_BYTE), |
| ('ui', constants.GL_UNSIGNED_INT), |
| ('us', constants.GL_UNSIGNED_SHORT), |
| ]: |
| for functionName in ( |
| 'glTexImage3D', |
| 'glTexSubImage3D', |
| ): |
| functionName, function = images.typedImageFunction( |
| suffix, arrayConstant, getattr(_simple, functionName), |
| ) |
| globals()[functionName] = function |
| try: |
| del function, functionName |
| except NameError as err: |
| pass |
| try: |
| del suffix,arrayConstant |
| except NameError as err: |
| pass |
|
|
| glTexImage3D = images.setDimensionsAsInts( |
| images.setImageInput( |
| _simple.glTexImage3D, |
| typeName = 'type', |
| ) |
| ) |
| glTexSubImage3D = images.setDimensionsAsInts( |
| images.setImageInput( |
| _simple.glTexSubImage3D, |
| typeName = 'type', |
| ) |
| ) |
|
|