diff --git a/libs/pyglet/gl/gl.py b/libs/pyglet/gl/gl.py index 0a9e117..4c17b2c 100644 --- a/libs/pyglet/gl/gl.py +++ b/libs/pyglet/gl/gl.py @@ -38,6 +38,7 @@ GLintptr = c_ptrdiff_t GLsizeiptr = c_ptrdiff_t GLint64 = c_int64 GLuint64 = c_uint64 +GLuint64EXT = c_uint64 GLsync = POINTER(struct___GLsync) GLDEBUGPROC = CFUNCTYPE(None, GLenum, GLenum, GLuint, GLenum, GLsizei, POINTER(GLchar), POINTER(GLvoid)) @@ -87,8 +88,10 @@ GL_SHADER_IMAGE_ACCESS_BARRIER_BIT = 32 GL_COMPUTE_SHADER_BIT = 32 GL_COMMAND_BARRIER_BIT = 64 GL_MAP_PERSISTENT_BIT = 64 +GL_MESH_SHADER_BIT_NV = 64 GL_PIXEL_BUFFER_BARRIER_BIT = 128 GL_MAP_COHERENT_BIT = 128 +GL_TASK_SHADER_BIT_NV = 128 GL_DEPTH_BUFFER_BIT = 256 GL_TEXTURE_UPDATE_BARRIER_BIT = 256 GL_DYNAMIC_STORAGE_BIT = 256 @@ -218,6 +221,8 @@ GL_FLOAT = 5126 GL_DOUBLE = 5130 GL_HALF_FLOAT = 5131 GL_FIXED = 5132 +GL_INT64_ARB = 5134 +GL_UNSIGNED_INT64_ARB = 5135 GL_CLEAR = 5376 GL_AND = 5377 GL_AND_REVERSE = 5378 @@ -1165,6 +1170,22 @@ GL_MAX_FRAGMENT_INTERPOLATION_OFFSET = 36444 GL_FRAGMENT_INTERPOLATION_OFFSET_BITS = 36445 GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET = 36446 GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET = 36447 +GL_MAX_MESH_UNIFORM_BLOCKS_NV = 36448 +GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV = 36449 +GL_MAX_MESH_IMAGE_UNIFORMS_NV = 36450 +GL_MAX_MESH_UNIFORM_COMPONENTS_NV = 36451 +GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV = 36452 +GL_MAX_MESH_ATOMIC_COUNTERS_NV = 36453 +GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV = 36454 +GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV = 36455 +GL_MAX_TASK_UNIFORM_BLOCKS_NV = 36456 +GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV = 36457 +GL_MAX_TASK_IMAGE_UNIFORMS_NV = 36458 +GL_MAX_TASK_UNIFORM_COMPONENTS_NV = 36459 +GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV = 36460 +GL_MAX_TASK_ATOMIC_COUNTERS_NV = 36461 +GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV = 36462 +GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV = 36463 GL_MAX_TRANSFORM_FEEDBACK_BUFFERS = 36464 GL_MAX_VERTEX_STREAMS = 36465 GL_PATCH_VERTICES = 36466 @@ -1231,6 +1252,12 @@ GL_RGBA16_SNORM = 36763 GL_SIGNED_NORMALIZED = 36764 GL_PRIMITIVE_RESTART = 36765 GL_PRIMITIVE_RESTART_INDEX = 36766 +GL_INT64_VEC2_ARB = 36841 +GL_INT64_VEC3_ARB = 36842 +GL_INT64_VEC4_ARB = 36843 +GL_UNSIGNED_INT64_VEC2_ARB = 36853 +GL_UNSIGNED_INT64_VEC3_ARB = 36854 +GL_UNSIGNED_INT64_VEC4_ARB = 36855 GL_DOUBLE_VEC2 = 36860 GL_DOUBLE_VEC3 = 36861 GL_DOUBLE_VEC4 = 36862 @@ -1411,6 +1438,7 @@ GL_ACTIVE_ATOMIC_COUNTER_BUFFERS = 37593 GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX = 37594 GL_UNSIGNED_INT_ATOMIC_COUNTER = 37595 GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = 37596 +GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV = 37599 GL_DEBUG_OUTPUT = 37600 GL_UNIFORM = 37601 GL_UNIFORM_BLOCK = 37602 @@ -1477,10 +1505,39 @@ GL_NEGATIVE_ONE_TO_ONE = 37726 GL_ZERO_TO_ONE = 37727 GL_CLEAR_TEXTURE = 37733 GL_NUM_SAMPLE_COUNTS = 37760 +GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV = 38198 +GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV = 38199 +GL_MAX_MESH_OUTPUT_VERTICES_NV = 38200 +GL_MAX_MESH_OUTPUT_PRIMITIVES_NV = 38201 +GL_MAX_TASK_OUTPUT_COUNT_NV = 38202 +GL_MAX_MESH_WORK_GROUP_SIZE_NV = 38203 +GL_MAX_TASK_WORK_GROUP_SIZE_NV = 38204 +GL_MAX_DRAW_MESH_TASKS_COUNT_NV = 38205 +GL_MESH_WORK_GROUP_SIZE_NV = 38206 +GL_TASK_WORK_GROUP_SIZE_NV = 38207 +GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV = 38211 GL_SHADER_BINARY_FORMAT_SPIR_V = 38225 GL_SPIR_V_BINARY = 38226 GL_SPIR_V_EXTENSIONS = 38227 GL_NUM_SPIR_V_EXTENSIONS = 38228 +GL_MAX_MESH_VIEWS_NV = 38231 +GL_MESH_SHADER_NV = 38233 +GL_TASK_SHADER_NV = 38234 +GL_MESH_VERTICES_OUT_NV = 38265 +GL_MESH_PRIMITIVES_OUT_NV = 38266 +GL_MESH_OUTPUT_TYPE_NV = 38267 +GL_MESH_SUBROUTINE_NV = 38268 +GL_TASK_SUBROUTINE_NV = 38269 +GL_MESH_SUBROUTINE_UNIFORM_NV = 38270 +GL_TASK_SUBROUTINE_UNIFORM_NV = 38271 +GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV = 38300 +GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV = 38301 +GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV = 38302 +GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV = 38303 +GL_REFERENCED_BY_MESH_SHADER_NV = 38304 +GL_REFERENCED_BY_TASK_SHADER_NV = 38305 +GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV = 38306 +GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV = 38307 GL_MULTISAMPLE_BIT_ARB = 536870912 GL_INVALID_INDEX = 4294967295 GL_ALL_SHADER_BITS = 4294967295 @@ -1641,6 +1698,8 @@ glDrawElementsInstanced = _link_function('glDrawElementsInstanced', None, [GLenu glDrawElementsInstancedBaseInstance = _link_function('glDrawElementsInstancedBaseInstance', None, [GLenum, GLsizei, GLenum, POINTER(GLvoid), GLsizei, GLuint], requires='OpenGL 4.2') glDrawElementsInstancedBaseVertex = _link_function('glDrawElementsInstancedBaseVertex', None, [GLenum, GLsizei, GLenum, POINTER(GLvoid), GLsizei, GLint], requires='OpenGL 3.2') glDrawElementsInstancedBaseVertexBaseInstance = _link_function('glDrawElementsInstancedBaseVertexBaseInstance', None, [GLenum, GLsizei, GLenum, POINTER(GLvoid), GLsizei, GLint, GLuint], requires='OpenGL 4.2') +glDrawMeshTasksIndirectNV = _link_function('glDrawMeshTasksIndirectNV', None, [GLintptr], requires='None') +glDrawMeshTasksNV = _link_function('glDrawMeshTasksNV', None, [GLuint, GLuint], requires='None') glDrawRangeElements = _link_function('glDrawRangeElements', None, [GLenum, GLuint, GLuint, GLsizei, GLenum, POINTER(GLvoid)], requires='OpenGL 1.2') glDrawRangeElementsBaseVertex = _link_function('glDrawRangeElementsBaseVertex', None, [GLenum, GLuint, GLuint, GLsizei, GLenum, POINTER(GLvoid), GLint], requires='OpenGL 3.2') glDrawTransformFeedback = _link_function('glDrawTransformFeedback', None, [GLenum, GLuint], requires='OpenGL 4.0') @@ -1719,6 +1778,7 @@ glGetFramebufferAttachmentParameteriv = _link_function('glGetFramebufferAttachme glGetFramebufferAttachmentParameterivEXT = _link_function('glGetFramebufferAttachmentParameterivEXT', None, [GLenum, GLenum, GLenum, POINTER(GLint)], requires='None') glGetFramebufferParameteriv = _link_function('glGetFramebufferParameteriv', None, [GLenum, GLenum, POINTER(GLint)], requires='OpenGL 4.3') glGetGraphicsResetStatus = _link_function('glGetGraphicsResetStatus', GLenum, [], requires='OpenGL 4.5') +glGetImageHandleARB = _link_function('glGetImageHandleARB', GLuint64, [GLuint, GLint, GLboolean, GLint, GLenum], requires='None') glGetInteger64i_v = _link_function('glGetInteger64i_v', None, [GLenum, GLuint, POINTER(GLint64)], requires='OpenGL 3.2') glGetInteger64v = _link_function('glGetInteger64v', None, [GLenum, POINTER(GLint64)], requires='OpenGL 3.2') glGetIntegeri_v = _link_function('glGetIntegeri_v', None, [GLenum, GLuint, POINTER(GLint)], requires='OpenGL 3.1') @@ -1780,6 +1840,7 @@ glGetTexParameterIiv = _link_function('glGetTexParameterIiv', None, [GLenum, GLe glGetTexParameterIuiv = _link_function('glGetTexParameterIuiv', None, [GLenum, GLenum, POINTER(GLuint)], requires='OpenGL 3.0') glGetTexParameterfv = _link_function('glGetTexParameterfv', None, [GLenum, GLenum, POINTER(GLfloat)], requires='OpenGL 1.0') glGetTexParameteriv = _link_function('glGetTexParameteriv', None, [GLenum, GLenum, POINTER(GLint)], requires='OpenGL 1.0') +glGetTextureHandleARB = _link_function('glGetTextureHandleARB', GLuint64, [GLuint], requires='None') glGetTextureImage = _link_function('glGetTextureImage', None, [GLuint, GLint, GLenum, GLenum, GLsizei, POINTER(GLvoid)], requires='OpenGL 4.5') glGetTextureLevelParameterfv = _link_function('glGetTextureLevelParameterfv', None, [GLuint, GLint, GLenum, POINTER(GLfloat)], requires='OpenGL 4.5') glGetTextureLevelParameteriv = _link_function('glGetTextureLevelParameteriv', None, [GLuint, GLint, GLenum, POINTER(GLint)], requires='OpenGL 4.5') @@ -1787,6 +1848,7 @@ glGetTextureParameterIiv = _link_function('glGetTextureParameterIiv', None, [GLu glGetTextureParameterIuiv = _link_function('glGetTextureParameterIuiv', None, [GLuint, GLenum, POINTER(GLuint)], requires='OpenGL 4.5') glGetTextureParameterfv = _link_function('glGetTextureParameterfv', None, [GLuint, GLenum, POINTER(GLfloat)], requires='OpenGL 4.5') glGetTextureParameteriv = _link_function('glGetTextureParameteriv', None, [GLuint, GLenum, POINTER(GLint)], requires='OpenGL 4.5') +glGetTextureSamplerHandleARB = _link_function('glGetTextureSamplerHandleARB', GLuint64, [GLuint, GLuint], requires='None') glGetTextureSubImage = _link_function('glGetTextureSubImage', None, [GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, GLsizei, POINTER(GLvoid)], requires='OpenGL 4.5') glGetTransformFeedbackVarying = _link_function('glGetTransformFeedbackVarying', None, [GLuint, GLuint, GLsizei, POINTER(GLsizei), POINTER(GLsizei), POINTER(GLenum), POINTER(GLchar)], requires='OpenGL 3.0') glGetTransformFeedbacki64_v = _link_function('glGetTransformFeedbacki64_v', None, [GLuint, GLenum, GLuint, POINTER(GLint64)], requires='OpenGL 4.5') @@ -1798,7 +1860,9 @@ glGetUniformLocation = _link_function('glGetUniformLocation', GLint, [GLuint, PO glGetUniformSubroutineuiv = _link_function('glGetUniformSubroutineuiv', None, [GLenum, GLint, POINTER(GLuint)], requires='OpenGL 4.0') glGetUniformdv = _link_function('glGetUniformdv', None, [GLuint, GLint, POINTER(GLdouble)], requires='OpenGL 4.0') glGetUniformfv = _link_function('glGetUniformfv', None, [GLuint, GLint, POINTER(GLfloat)], requires='OpenGL 2.0') +glGetUniformi64vARB = _link_function('glGetUniformi64vARB', None, [GLuint, GLint, POINTER(GLint64)], requires='None') glGetUniformiv = _link_function('glGetUniformiv', None, [GLuint, GLint, POINTER(GLint)], requires='OpenGL 2.0') +glGetUniformui64vARB = _link_function('glGetUniformui64vARB', None, [GLuint, GLint, POINTER(GLuint64)], requires='None') glGetUniformuiv = _link_function('glGetUniformuiv', None, [GLuint, GLint, POINTER(GLuint)], requires='OpenGL 3.0') glGetVertexArrayIndexed64iv = _link_function('glGetVertexArrayIndexed64iv', None, [GLuint, GLuint, GLenum, POINTER(GLint64)], requires='OpenGL 4.5') glGetVertexArrayIndexediv = _link_function('glGetVertexArrayIndexediv', None, [GLuint, GLuint, GLenum, POINTER(GLint)], requires='OpenGL 4.5') @@ -1806,6 +1870,7 @@ glGetVertexArrayiv = _link_function('glGetVertexArrayiv', None, [GLuint, GLenum, glGetVertexAttribIiv = _link_function('glGetVertexAttribIiv', None, [GLuint, GLenum, POINTER(GLint)], requires='OpenGL 3.0') glGetVertexAttribIuiv = _link_function('glGetVertexAttribIuiv', None, [GLuint, GLenum, POINTER(GLuint)], requires='OpenGL 3.0') glGetVertexAttribLdv = _link_function('glGetVertexAttribLdv', None, [GLuint, GLenum, POINTER(GLdouble)], requires='OpenGL 4.1') +glGetVertexAttribLui64vARB = _link_function('glGetVertexAttribLui64vARB', None, [GLuint, GLenum, POINTER(GLuint64EXT)], requires='None') glGetVertexAttribPointerv = _link_function('glGetVertexAttribPointerv', None, [GLuint, GLenum, POINTER(GLvoid)], requires='OpenGL 2.0') glGetVertexAttribdv = _link_function('glGetVertexAttribdv', None, [GLuint, GLenum, POINTER(GLdouble)], requires='OpenGL 2.0') glGetVertexAttribfv = _link_function('glGetVertexAttribfv', None, [GLuint, GLenum, POINTER(GLfloat)], requires='OpenGL 2.0') @@ -1826,7 +1891,9 @@ glGetnSeparableFilter = _link_function('glGetnSeparableFilter', None, [GLenum, G glGetnTexImage = _link_function('glGetnTexImage', None, [GLenum, GLint, GLenum, GLenum, GLsizei, POINTER(GLvoid)], requires='OpenGL 4.5') glGetnUniformdv = _link_function('glGetnUniformdv', None, [GLuint, GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.5') glGetnUniformfv = _link_function('glGetnUniformfv', None, [GLuint, GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 4.5') +glGetnUniformi64vARB = _link_function('glGetnUniformi64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLint64)], requires='None') glGetnUniformiv = _link_function('glGetnUniformiv', None, [GLuint, GLint, GLsizei, POINTER(GLint)], requires='OpenGL 4.5') +glGetnUniformui64vARB = _link_function('glGetnUniformui64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLuint64)], requires='None') glGetnUniformuiv = _link_function('glGetnUniformuiv', None, [GLuint, GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 4.5') glHint = _link_function('glHint', None, [GLenum, GLenum], requires='OpenGL 1.0') glInvalidateBufferData = _link_function('glInvalidateBufferData', None, [GLuint], requires='OpenGL 4.3') @@ -1842,6 +1909,7 @@ glIsEnabled = _link_function('glIsEnabled', GLboolean, [GLenum], requires='OpenG glIsEnabledi = _link_function('glIsEnabledi', GLboolean, [GLenum, GLuint], requires='OpenGL 3.0') glIsFramebuffer = _link_function('glIsFramebuffer', GLboolean, [GLuint], requires='OpenGL 3.0') glIsFramebufferEXT = _link_function('glIsFramebufferEXT', GLboolean, [GLuint], requires='None') +glIsImageHandleResidentARB = _link_function('glIsImageHandleResidentARB', GLboolean, [GLuint64], requires='None') glIsProgram = _link_function('glIsProgram', GLboolean, [GLuint], requires='OpenGL 2.0') glIsProgramPipeline = _link_function('glIsProgramPipeline', GLboolean, [GLuint], requires='OpenGL 4.1') glIsQuery = _link_function('glIsQuery', GLboolean, [GLuint], requires='OpenGL 1.5') @@ -1851,11 +1919,16 @@ glIsSampler = _link_function('glIsSampler', GLboolean, [GLuint], requires='OpenG glIsShader = _link_function('glIsShader', GLboolean, [GLuint], requires='OpenGL 2.0') glIsSync = _link_function('glIsSync', GLboolean, [GLsync], requires='OpenGL 3.2') glIsTexture = _link_function('glIsTexture', GLboolean, [GLuint], requires='OpenGL 1.1') +glIsTextureHandleResidentARB = _link_function('glIsTextureHandleResidentARB', GLboolean, [GLuint64], requires='None') glIsTransformFeedback = _link_function('glIsTransformFeedback', GLboolean, [GLuint], requires='OpenGL 4.0') glIsVertexArray = _link_function('glIsVertexArray', GLboolean, [GLuint], requires='OpenGL 3.0') glLineWidth = _link_function('glLineWidth', None, [GLfloat], requires='OpenGL 1.0') glLinkProgram = _link_function('glLinkProgram', None, [GLuint], requires='OpenGL 2.0') glLogicOp = _link_function('glLogicOp', None, [GLenum], requires='OpenGL 1.0') +glMakeImageHandleNonResidentARB = _link_function('glMakeImageHandleNonResidentARB', None, [GLuint64], requires='None') +glMakeImageHandleResidentARB = _link_function('glMakeImageHandleResidentARB', None, [GLuint64, GLenum], requires='None') +glMakeTextureHandleNonResidentARB = _link_function('glMakeTextureHandleNonResidentARB', None, [GLuint64], requires='None') +glMakeTextureHandleResidentARB = _link_function('glMakeTextureHandleResidentARB', None, [GLuint64], requires='None') glMapBuffer = _link_function('glMapBuffer', POINTER(None), [GLenum, GLenum], requires='OpenGL 1.5') glMapBufferRange = _link_function('glMapBufferRange', POINTER(None), [GLenum, GLintptr, GLsizeiptr, GLbitfield], requires='OpenGL 3.0') glMapNamedBuffer = _link_function('glMapNamedBuffer', POINTER(None), [GLuint, GLenum], requires='OpenGL 4.5') @@ -1870,6 +1943,8 @@ glMultiDrawElements = _link_function('glMultiDrawElements', None, [GLenum, POINT glMultiDrawElementsBaseVertex = _link_function('glMultiDrawElementsBaseVertex', None, [GLenum, POINTER(GLsizei), GLenum, POINTER(GLvoid), GLsizei, POINTER(GLint)], requires='OpenGL 3.2') glMultiDrawElementsIndirect = _link_function('glMultiDrawElementsIndirect', None, [GLenum, GLenum, POINTER(GLvoid), GLsizei, GLsizei], requires='OpenGL 4.3') glMultiDrawElementsIndirectCount = _link_function('glMultiDrawElementsIndirectCount', None, [GLenum, GLenum, POINTER(GLvoid), GLintptr, GLsizei, GLsizei], requires='OpenGL 4.6') +glMultiDrawMeshTasksIndirectCountNV = _link_function('glMultiDrawMeshTasksIndirectCountNV', None, [GLintptr, GLintptr, GLsizei, GLsizei], requires='None') +glMultiDrawMeshTasksIndirectNV = _link_function('glMultiDrawMeshTasksIndirectNV', None, [GLintptr, GLsizei, GLsizei], requires='None') glMultiTexCoordP1ui = _link_function('glMultiTexCoordP1ui', None, [GLenum, GLenum, GLuint], requires='OpenGL 3.3') glMultiTexCoordP1uiv = _link_function('glMultiTexCoordP1uiv', None, [GLenum, GLenum, POINTER(GLuint)], requires='OpenGL 3.3') glMultiTexCoordP2ui = _link_function('glMultiTexCoordP2ui', None, [GLenum, GLenum, GLuint], requires='OpenGL 3.3') @@ -1916,33 +1991,51 @@ glProgramUniform1dv = _link_function('glProgramUniform1dv', None, [GLuint, GLint glProgramUniform1f = _link_function('glProgramUniform1f', None, [GLuint, GLint, GLfloat], requires='OpenGL 4.1') glProgramUniform1fv = _link_function('glProgramUniform1fv', None, [GLuint, GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 4.1') glProgramUniform1i = _link_function('glProgramUniform1i', None, [GLuint, GLint, GLint], requires='OpenGL 4.1') +glProgramUniform1i64ARB = _link_function('glProgramUniform1i64ARB', None, [GLuint, GLint, GLint64], requires='None') +glProgramUniform1i64vARB = _link_function('glProgramUniform1i64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLint64)], requires='None') glProgramUniform1iv = _link_function('glProgramUniform1iv', None, [GLuint, GLint, GLsizei, POINTER(GLint)], requires='OpenGL 4.1') glProgramUniform1ui = _link_function('glProgramUniform1ui', None, [GLuint, GLint, GLuint], requires='OpenGL 4.1') +glProgramUniform1ui64ARB = _link_function('glProgramUniform1ui64ARB', None, [GLuint, GLint, GLuint64], requires='None') +glProgramUniform1ui64vARB = _link_function('glProgramUniform1ui64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLuint64)], requires='None') glProgramUniform1uiv = _link_function('glProgramUniform1uiv', None, [GLuint, GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 4.1') glProgramUniform2d = _link_function('glProgramUniform2d', None, [GLuint, GLint, GLdouble, GLdouble], requires='OpenGL 4.1') glProgramUniform2dv = _link_function('glProgramUniform2dv', None, [GLuint, GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.1') glProgramUniform2f = _link_function('glProgramUniform2f', None, [GLuint, GLint, GLfloat, GLfloat], requires='OpenGL 4.1') glProgramUniform2fv = _link_function('glProgramUniform2fv', None, [GLuint, GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 4.1') glProgramUniform2i = _link_function('glProgramUniform2i', None, [GLuint, GLint, GLint, GLint], requires='OpenGL 4.1') +glProgramUniform2i64ARB = _link_function('glProgramUniform2i64ARB', None, [GLuint, GLint, GLint64, GLint64], requires='None') +glProgramUniform2i64vARB = _link_function('glProgramUniform2i64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLint64)], requires='None') glProgramUniform2iv = _link_function('glProgramUniform2iv', None, [GLuint, GLint, GLsizei, POINTER(GLint)], requires='OpenGL 4.1') glProgramUniform2ui = _link_function('glProgramUniform2ui', None, [GLuint, GLint, GLuint, GLuint], requires='OpenGL 4.1') +glProgramUniform2ui64ARB = _link_function('glProgramUniform2ui64ARB', None, [GLuint, GLint, GLuint64, GLuint64], requires='None') +glProgramUniform2ui64vARB = _link_function('glProgramUniform2ui64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLuint64)], requires='None') glProgramUniform2uiv = _link_function('glProgramUniform2uiv', None, [GLuint, GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 4.1') glProgramUniform3d = _link_function('glProgramUniform3d', None, [GLuint, GLint, GLdouble, GLdouble, GLdouble], requires='OpenGL 4.1') glProgramUniform3dv = _link_function('glProgramUniform3dv', None, [GLuint, GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.1') glProgramUniform3f = _link_function('glProgramUniform3f', None, [GLuint, GLint, GLfloat, GLfloat, GLfloat], requires='OpenGL 4.1') glProgramUniform3fv = _link_function('glProgramUniform3fv', None, [GLuint, GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 4.1') glProgramUniform3i = _link_function('glProgramUniform3i', None, [GLuint, GLint, GLint, GLint, GLint], requires='OpenGL 4.1') +glProgramUniform3i64ARB = _link_function('glProgramUniform3i64ARB', None, [GLuint, GLint, GLint64, GLint64, GLint64], requires='None') +glProgramUniform3i64vARB = _link_function('glProgramUniform3i64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLint64)], requires='None') glProgramUniform3iv = _link_function('glProgramUniform3iv', None, [GLuint, GLint, GLsizei, POINTER(GLint)], requires='OpenGL 4.1') glProgramUniform3ui = _link_function('glProgramUniform3ui', None, [GLuint, GLint, GLuint, GLuint, GLuint], requires='OpenGL 4.1') +glProgramUniform3ui64ARB = _link_function('glProgramUniform3ui64ARB', None, [GLuint, GLint, GLuint64, GLuint64, GLuint64], requires='None') +glProgramUniform3ui64vARB = _link_function('glProgramUniform3ui64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLuint64)], requires='None') glProgramUniform3uiv = _link_function('glProgramUniform3uiv', None, [GLuint, GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 4.1') glProgramUniform4d = _link_function('glProgramUniform4d', None, [GLuint, GLint, GLdouble, GLdouble, GLdouble, GLdouble], requires='OpenGL 4.1') glProgramUniform4dv = _link_function('glProgramUniform4dv', None, [GLuint, GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.1') glProgramUniform4f = _link_function('glProgramUniform4f', None, [GLuint, GLint, GLfloat, GLfloat, GLfloat, GLfloat], requires='OpenGL 4.1') glProgramUniform4fv = _link_function('glProgramUniform4fv', None, [GLuint, GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 4.1') glProgramUniform4i = _link_function('glProgramUniform4i', None, [GLuint, GLint, GLint, GLint, GLint, GLint], requires='OpenGL 4.1') +glProgramUniform4i64ARB = _link_function('glProgramUniform4i64ARB', None, [GLuint, GLint, GLint64, GLint64, GLint64, GLint64], requires='None') +glProgramUniform4i64vARB = _link_function('glProgramUniform4i64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLint64)], requires='None') glProgramUniform4iv = _link_function('glProgramUniform4iv', None, [GLuint, GLint, GLsizei, POINTER(GLint)], requires='OpenGL 4.1') glProgramUniform4ui = _link_function('glProgramUniform4ui', None, [GLuint, GLint, GLuint, GLuint, GLuint, GLuint], requires='OpenGL 4.1') +glProgramUniform4ui64ARB = _link_function('glProgramUniform4ui64ARB', None, [GLuint, GLint, GLuint64, GLuint64, GLuint64, GLuint64], requires='None') +glProgramUniform4ui64vARB = _link_function('glProgramUniform4ui64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLuint64)], requires='None') glProgramUniform4uiv = _link_function('glProgramUniform4uiv', None, [GLuint, GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 4.1') +glProgramUniformHandleui64ARB = _link_function('glProgramUniformHandleui64ARB', None, [GLuint, GLint, GLuint64], requires='None') +glProgramUniformHandleui64vARB = _link_function('glProgramUniformHandleui64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLuint64)], requires='None') glProgramUniformMatrix2dv = _link_function('glProgramUniformMatrix2dv', None, [GLuint, GLint, GLsizei, GLboolean, POINTER(GLdouble)], requires='OpenGL 4.1') glProgramUniformMatrix2fv = _link_function('glProgramUniformMatrix2fv', None, [GLuint, GLint, GLsizei, GLboolean, POINTER(GLfloat)], requires='OpenGL 4.1') glProgramUniformMatrix2x3dv = _link_function('glProgramUniformMatrix2x3dv', None, [GLuint, GLint, GLsizei, GLboolean, POINTER(GLdouble)], requires='OpenGL 4.1') @@ -2052,34 +2145,52 @@ glUniform1dv = _link_function('glUniform1dv', None, [GLint, GLsizei, POINTER(GLd glUniform1f = _link_function('glUniform1f', None, [GLint, GLfloat], requires='OpenGL 2.0') glUniform1fv = _link_function('glUniform1fv', None, [GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 2.0') glUniform1i = _link_function('glUniform1i', None, [GLint, GLint], requires='OpenGL 2.0') +glUniform1i64ARB = _link_function('glUniform1i64ARB', None, [GLint, GLint64], requires='None') +glUniform1i64vARB = _link_function('glUniform1i64vARB', None, [GLint, GLsizei, POINTER(GLint64)], requires='None') glUniform1iv = _link_function('glUniform1iv', None, [GLint, GLsizei, POINTER(GLint)], requires='OpenGL 2.0') glUniform1ui = _link_function('glUniform1ui', None, [GLint, GLuint], requires='OpenGL 3.0') +glUniform1ui64ARB = _link_function('glUniform1ui64ARB', None, [GLint, GLuint64], requires='None') +glUniform1ui64vARB = _link_function('glUniform1ui64vARB', None, [GLint, GLsizei, POINTER(GLuint64)], requires='None') glUniform1uiv = _link_function('glUniform1uiv', None, [GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 3.0') glUniform2d = _link_function('glUniform2d', None, [GLint, GLdouble, GLdouble], requires='OpenGL 4.0') glUniform2dv = _link_function('glUniform2dv', None, [GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.0') glUniform2f = _link_function('glUniform2f', None, [GLint, GLfloat, GLfloat], requires='OpenGL 2.0') glUniform2fv = _link_function('glUniform2fv', None, [GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 2.0') glUniform2i = _link_function('glUniform2i', None, [GLint, GLint, GLint], requires='OpenGL 2.0') +glUniform2i64ARB = _link_function('glUniform2i64ARB', None, [GLint, GLint64, GLint64], requires='None') +glUniform2i64vARB = _link_function('glUniform2i64vARB', None, [GLint, GLsizei, POINTER(GLint64)], requires='None') glUniform2iv = _link_function('glUniform2iv', None, [GLint, GLsizei, POINTER(GLint)], requires='OpenGL 2.0') glUniform2ui = _link_function('glUniform2ui', None, [GLint, GLuint, GLuint], requires='OpenGL 3.0') +glUniform2ui64ARB = _link_function('glUniform2ui64ARB', None, [GLint, GLuint64, GLuint64], requires='None') +glUniform2ui64vARB = _link_function('glUniform2ui64vARB', None, [GLint, GLsizei, POINTER(GLuint64)], requires='None') glUniform2uiv = _link_function('glUniform2uiv', None, [GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 3.0') glUniform3d = _link_function('glUniform3d', None, [GLint, GLdouble, GLdouble, GLdouble], requires='OpenGL 4.0') glUniform3dv = _link_function('glUniform3dv', None, [GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.0') glUniform3f = _link_function('glUniform3f', None, [GLint, GLfloat, GLfloat, GLfloat], requires='OpenGL 2.0') glUniform3fv = _link_function('glUniform3fv', None, [GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 2.0') glUniform3i = _link_function('glUniform3i', None, [GLint, GLint, GLint, GLint], requires='OpenGL 2.0') +glUniform3i64ARB = _link_function('glUniform3i64ARB', None, [GLint, GLint64, GLint64, GLint64], requires='None') +glUniform3i64vARB = _link_function('glUniform3i64vARB', None, [GLint, GLsizei, POINTER(GLint64)], requires='None') glUniform3iv = _link_function('glUniform3iv', None, [GLint, GLsizei, POINTER(GLint)], requires='OpenGL 2.0') glUniform3ui = _link_function('glUniform3ui', None, [GLint, GLuint, GLuint, GLuint], requires='OpenGL 3.0') +glUniform3ui64ARB = _link_function('glUniform3ui64ARB', None, [GLint, GLuint64, GLuint64, GLuint64], requires='None') +glUniform3ui64vARB = _link_function('glUniform3ui64vARB', None, [GLint, GLsizei, POINTER(GLuint64)], requires='None') glUniform3uiv = _link_function('glUniform3uiv', None, [GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 3.0') glUniform4d = _link_function('glUniform4d', None, [GLint, GLdouble, GLdouble, GLdouble, GLdouble], requires='OpenGL 4.0') glUniform4dv = _link_function('glUniform4dv', None, [GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.0') glUniform4f = _link_function('glUniform4f', None, [GLint, GLfloat, GLfloat, GLfloat, GLfloat], requires='OpenGL 2.0') glUniform4fv = _link_function('glUniform4fv', None, [GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 2.0') glUniform4i = _link_function('glUniform4i', None, [GLint, GLint, GLint, GLint, GLint], requires='OpenGL 2.0') +glUniform4i64ARB = _link_function('glUniform4i64ARB', None, [GLint, GLint64, GLint64, GLint64, GLint64], requires='None') +glUniform4i64vARB = _link_function('glUniform4i64vARB', None, [GLint, GLsizei, POINTER(GLint64)], requires='None') glUniform4iv = _link_function('glUniform4iv', None, [GLint, GLsizei, POINTER(GLint)], requires='OpenGL 2.0') glUniform4ui = _link_function('glUniform4ui', None, [GLint, GLuint, GLuint, GLuint, GLuint], requires='OpenGL 3.0') +glUniform4ui64ARB = _link_function('glUniform4ui64ARB', None, [GLint, GLuint64, GLuint64, GLuint64, GLuint64], requires='None') +glUniform4ui64vARB = _link_function('glUniform4ui64vARB', None, [GLint, GLsizei, POINTER(GLuint64)], requires='None') glUniform4uiv = _link_function('glUniform4uiv', None, [GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 3.0') glUniformBlockBinding = _link_function('glUniformBlockBinding', None, [GLuint, GLuint, GLuint], requires='OpenGL 3.1') +glUniformHandleui64ARB = _link_function('glUniformHandleui64ARB', None, [GLint, GLuint64], requires='None') +glUniformHandleui64vARB = _link_function('glUniformHandleui64vARB', None, [GLint, GLsizei, POINTER(GLuint64)], requires='None') glUniformMatrix2dv = _link_function('glUniformMatrix2dv', None, [GLint, GLsizei, GLboolean, POINTER(GLdouble)], requires='OpenGL 4.0') glUniformMatrix2fv = _link_function('glUniformMatrix2fv', None, [GLint, GLsizei, GLboolean, POINTER(GLfloat)], requires='OpenGL 2.0') glUniformMatrix2x3dv = _link_function('glUniformMatrix2x3dv', None, [GLint, GLsizei, GLboolean, POINTER(GLdouble)], requires='OpenGL 4.0') @@ -2176,6 +2287,8 @@ glVertexAttribIFormat = _link_function('glVertexAttribIFormat', None, [GLuint, G glVertexAttribIPointer = _link_function('glVertexAttribIPointer', None, [GLuint, GLint, GLenum, GLsizei, POINTER(GLvoid)], requires='OpenGL 3.0') glVertexAttribL1d = _link_function('glVertexAttribL1d', None, [GLuint, GLdouble], requires='OpenGL 4.1') glVertexAttribL1dv = _link_function('glVertexAttribL1dv', None, [GLuint, POINTER(GLdouble)], requires='OpenGL 4.1') +glVertexAttribL1ui64ARB = _link_function('glVertexAttribL1ui64ARB', None, [GLuint, GLuint64EXT], requires='None') +glVertexAttribL1ui64vARB = _link_function('glVertexAttribL1ui64vARB', None, [GLuint, POINTER(GLuint64EXT)], requires='None') glVertexAttribL2d = _link_function('glVertexAttribL2d', None, [GLuint, GLdouble, GLdouble], requires='OpenGL 4.1') glVertexAttribL2dv = _link_function('glVertexAttribL2dv', None, [GLuint, POINTER(GLdouble)], requires='OpenGL 4.1') glVertexAttribL3d = _link_function('glVertexAttribL3d', None, [GLuint, GLdouble, GLdouble, GLdouble], requires='OpenGL 4.1') @@ -2229,6 +2342,7 @@ __all__ = [ 'GLsizeiptr', 'GLint64', 'GLuint64', + 'GLuint64EXT', 'GLsync', 'GLDEBUGPROC', 'GL_DEPTH_BUFFER_BIT', @@ -3675,6 +3789,62 @@ __all__ = [ 'GL_RENDERBUFFER_ALPHA_SIZE_EXT', 'GL_RENDERBUFFER_DEPTH_SIZE_EXT', 'GL_RENDERBUFFER_STENCIL_SIZE_EXT', + 'GL_UNSIGNED_INT64_ARB', + 'GL_INT64_ARB', + 'GL_INT64_VEC2_ARB', + 'GL_INT64_VEC3_ARB', + 'GL_INT64_VEC4_ARB', + 'GL_UNSIGNED_INT64_VEC2_ARB', + 'GL_UNSIGNED_INT64_VEC3_ARB', + 'GL_UNSIGNED_INT64_VEC4_ARB', + 'GL_MESH_SHADER_NV', + 'GL_TASK_SHADER_NV', + 'GL_MAX_MESH_UNIFORM_BLOCKS_NV', + 'GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV', + 'GL_MAX_MESH_IMAGE_UNIFORMS_NV', + 'GL_MAX_MESH_UNIFORM_COMPONENTS_NV', + 'GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV', + 'GL_MAX_MESH_ATOMIC_COUNTERS_NV', + 'GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV', + 'GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV', + 'GL_MAX_TASK_UNIFORM_BLOCKS_NV', + 'GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV', + 'GL_MAX_TASK_IMAGE_UNIFORMS_NV', + 'GL_MAX_TASK_UNIFORM_COMPONENTS_NV', + 'GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV', + 'GL_MAX_TASK_ATOMIC_COUNTERS_NV', + 'GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV', + 'GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV', + 'GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV', + 'GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV', + 'GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV', + 'GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV', + 'GL_MAX_MESH_OUTPUT_VERTICES_NV', + 'GL_MAX_MESH_OUTPUT_PRIMITIVES_NV', + 'GL_MAX_TASK_OUTPUT_COUNT_NV', + 'GL_MAX_DRAW_MESH_TASKS_COUNT_NV', + 'GL_MAX_MESH_VIEWS_NV', + 'GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV', + 'GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV', + 'GL_MAX_MESH_WORK_GROUP_SIZE_NV', + 'GL_MAX_TASK_WORK_GROUP_SIZE_NV', + 'GL_MESH_WORK_GROUP_SIZE_NV', + 'GL_TASK_WORK_GROUP_SIZE_NV', + 'GL_MESH_VERTICES_OUT_NV', + 'GL_MESH_PRIMITIVES_OUT_NV', + 'GL_MESH_OUTPUT_TYPE_NV', + 'GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV', + 'GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV', + 'GL_REFERENCED_BY_MESH_SHADER_NV', + 'GL_REFERENCED_BY_TASK_SHADER_NV', + 'GL_MESH_SHADER_BIT_NV', + 'GL_TASK_SHADER_BIT_NV', + 'GL_MESH_SUBROUTINE_NV', + 'GL_TASK_SUBROUTINE_NV', + 'GL_MESH_SUBROUTINE_UNIFORM_NV', + 'GL_TASK_SUBROUTINE_UNIFORM_NV', + 'GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV', + 'GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV', 'glActiveShaderProgram', 'glActiveTexture', 'glAttachShader', @@ -3828,6 +3998,8 @@ __all__ = [ 'glDrawElementsInstancedBaseInstance', 'glDrawElementsInstancedBaseVertex', 'glDrawElementsInstancedBaseVertexBaseInstance', + 'glDrawMeshTasksIndirectNV', + 'glDrawMeshTasksNV', 'glDrawRangeElements', 'glDrawRangeElementsBaseVertex', 'glDrawTransformFeedback', @@ -3906,6 +4078,7 @@ __all__ = [ 'glGetFramebufferAttachmentParameterivEXT', 'glGetFramebufferParameteriv', 'glGetGraphicsResetStatus', + 'glGetImageHandleARB', 'glGetInteger64i_v', 'glGetInteger64v', 'glGetIntegeri_v', @@ -3967,6 +4140,7 @@ __all__ = [ 'glGetTexParameterIuiv', 'glGetTexParameterfv', 'glGetTexParameteriv', + 'glGetTextureHandleARB', 'glGetTextureImage', 'glGetTextureLevelParameterfv', 'glGetTextureLevelParameteriv', @@ -3974,6 +4148,7 @@ __all__ = [ 'glGetTextureParameterIuiv', 'glGetTextureParameterfv', 'glGetTextureParameteriv', + 'glGetTextureSamplerHandleARB', 'glGetTextureSubImage', 'glGetTransformFeedbackVarying', 'glGetTransformFeedbacki64_v', @@ -3985,7 +4160,9 @@ __all__ = [ 'glGetUniformSubroutineuiv', 'glGetUniformdv', 'glGetUniformfv', + 'glGetUniformi64vARB', 'glGetUniformiv', + 'glGetUniformui64vARB', 'glGetUniformuiv', 'glGetVertexArrayIndexed64iv', 'glGetVertexArrayIndexediv', @@ -3993,6 +4170,7 @@ __all__ = [ 'glGetVertexAttribIiv', 'glGetVertexAttribIuiv', 'glGetVertexAttribLdv', + 'glGetVertexAttribLui64vARB', 'glGetVertexAttribPointerv', 'glGetVertexAttribdv', 'glGetVertexAttribfv', @@ -4013,7 +4191,9 @@ __all__ = [ 'glGetnTexImage', 'glGetnUniformdv', 'glGetnUniformfv', + 'glGetnUniformi64vARB', 'glGetnUniformiv', + 'glGetnUniformui64vARB', 'glGetnUniformuiv', 'glHint', 'glInvalidateBufferData', @@ -4029,6 +4209,7 @@ __all__ = [ 'glIsEnabledi', 'glIsFramebuffer', 'glIsFramebufferEXT', + 'glIsImageHandleResidentARB', 'glIsProgram', 'glIsProgramPipeline', 'glIsQuery', @@ -4038,11 +4219,16 @@ __all__ = [ 'glIsShader', 'glIsSync', 'glIsTexture', + 'glIsTextureHandleResidentARB', 'glIsTransformFeedback', 'glIsVertexArray', 'glLineWidth', 'glLinkProgram', 'glLogicOp', + 'glMakeImageHandleNonResidentARB', + 'glMakeImageHandleResidentARB', + 'glMakeTextureHandleNonResidentARB', + 'glMakeTextureHandleResidentARB', 'glMapBuffer', 'glMapBufferRange', 'glMapNamedBuffer', @@ -4057,6 +4243,8 @@ __all__ = [ 'glMultiDrawElementsBaseVertex', 'glMultiDrawElementsIndirect', 'glMultiDrawElementsIndirectCount', + 'glMultiDrawMeshTasksIndirectCountNV', + 'glMultiDrawMeshTasksIndirectNV', 'glMultiTexCoordP1ui', 'glMultiTexCoordP1uiv', 'glMultiTexCoordP2ui', @@ -4103,33 +4291,51 @@ __all__ = [ 'glProgramUniform1f', 'glProgramUniform1fv', 'glProgramUniform1i', + 'glProgramUniform1i64ARB', + 'glProgramUniform1i64vARB', 'glProgramUniform1iv', 'glProgramUniform1ui', + 'glProgramUniform1ui64ARB', + 'glProgramUniform1ui64vARB', 'glProgramUniform1uiv', 'glProgramUniform2d', 'glProgramUniform2dv', 'glProgramUniform2f', 'glProgramUniform2fv', 'glProgramUniform2i', + 'glProgramUniform2i64ARB', + 'glProgramUniform2i64vARB', 'glProgramUniform2iv', 'glProgramUniform2ui', + 'glProgramUniform2ui64ARB', + 'glProgramUniform2ui64vARB', 'glProgramUniform2uiv', 'glProgramUniform3d', 'glProgramUniform3dv', 'glProgramUniform3f', 'glProgramUniform3fv', 'glProgramUniform3i', + 'glProgramUniform3i64ARB', + 'glProgramUniform3i64vARB', 'glProgramUniform3iv', 'glProgramUniform3ui', + 'glProgramUniform3ui64ARB', + 'glProgramUniform3ui64vARB', 'glProgramUniform3uiv', 'glProgramUniform4d', 'glProgramUniform4dv', 'glProgramUniform4f', 'glProgramUniform4fv', 'glProgramUniform4i', + 'glProgramUniform4i64ARB', + 'glProgramUniform4i64vARB', 'glProgramUniform4iv', 'glProgramUniform4ui', + 'glProgramUniform4ui64ARB', + 'glProgramUniform4ui64vARB', 'glProgramUniform4uiv', + 'glProgramUniformHandleui64ARB', + 'glProgramUniformHandleui64vARB', 'glProgramUniformMatrix2dv', 'glProgramUniformMatrix2fv', 'glProgramUniformMatrix2x3dv', @@ -4239,34 +4445,52 @@ __all__ = [ 'glUniform1f', 'glUniform1fv', 'glUniform1i', + 'glUniform1i64ARB', + 'glUniform1i64vARB', 'glUniform1iv', 'glUniform1ui', + 'glUniform1ui64ARB', + 'glUniform1ui64vARB', 'glUniform1uiv', 'glUniform2d', 'glUniform2dv', 'glUniform2f', 'glUniform2fv', 'glUniform2i', + 'glUniform2i64ARB', + 'glUniform2i64vARB', 'glUniform2iv', 'glUniform2ui', + 'glUniform2ui64ARB', + 'glUniform2ui64vARB', 'glUniform2uiv', 'glUniform3d', 'glUniform3dv', 'glUniform3f', 'glUniform3fv', 'glUniform3i', + 'glUniform3i64ARB', + 'glUniform3i64vARB', 'glUniform3iv', 'glUniform3ui', + 'glUniform3ui64ARB', + 'glUniform3ui64vARB', 'glUniform3uiv', 'glUniform4d', 'glUniform4dv', 'glUniform4f', 'glUniform4fv', 'glUniform4i', + 'glUniform4i64ARB', + 'glUniform4i64vARB', 'glUniform4iv', 'glUniform4ui', + 'glUniform4ui64ARB', + 'glUniform4ui64vARB', 'glUniform4uiv', 'glUniformBlockBinding', + 'glUniformHandleui64ARB', + 'glUniformHandleui64vARB', 'glUniformMatrix2dv', 'glUniformMatrix2fv', 'glUniformMatrix2x3dv', @@ -4363,6 +4587,8 @@ __all__ = [ 'glVertexAttribIPointer', 'glVertexAttribL1d', 'glVertexAttribL1dv', + 'glVertexAttribL1ui64ARB', + 'glVertexAttribL1ui64vARB', 'glVertexAttribL2d', 'glVertexAttribL2dv', 'glVertexAttribL3d', diff --git a/libs/pyglet/gl/gl_compat.py b/libs/pyglet/gl/gl_compat.py index 10e1af6..833b3ce 100644 --- a/libs/pyglet/gl/gl_compat.py +++ b/libs/pyglet/gl/gl_compat.py @@ -38,6 +38,7 @@ GLintptr = c_ptrdiff_t GLsizeiptr = c_ptrdiff_t GLint64 = c_int64 GLuint64 = c_uint64 +GLuint64EXT = c_uint64 GLsync = POINTER(struct___GLsync) GLDEBUGPROC = CFUNCTYPE(None, GLenum, GLenum, GLuint, GLenum, GLsizei, POINTER(GLchar), POINTER(GLvoid)) @@ -98,9 +99,11 @@ GL_COMPUTE_SHADER_BIT = 32 GL_LIGHTING_BIT = 64 GL_COMMAND_BARRIER_BIT = 64 GL_MAP_PERSISTENT_BIT = 64 +GL_MESH_SHADER_BIT_NV = 64 GL_FOG_BIT = 128 GL_PIXEL_BUFFER_BARRIER_BIT = 128 GL_MAP_COHERENT_BIT = 128 +GL_TASK_SHADER_BIT_NV = 128 GL_DEPTH_BUFFER_BIT = 256 GL_ACCUM = 256 GL_TEXTURE_UPDATE_BARRIER_BIT = 256 @@ -427,6 +430,8 @@ GL_4_BYTES = 5129 GL_DOUBLE = 5130 GL_HALF_FLOAT = 5131 GL_FIXED = 5132 +GL_INT64_ARB = 5134 +GL_UNSIGNED_INT64_ARB = 5135 GL_CLEAR = 5376 GL_AND = 5377 GL_AND_REVERSE = 5378 @@ -1586,6 +1591,22 @@ GL_MAX_FRAGMENT_INTERPOLATION_OFFSET = 36444 GL_FRAGMENT_INTERPOLATION_OFFSET_BITS = 36445 GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET = 36446 GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET = 36447 +GL_MAX_MESH_UNIFORM_BLOCKS_NV = 36448 +GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV = 36449 +GL_MAX_MESH_IMAGE_UNIFORMS_NV = 36450 +GL_MAX_MESH_UNIFORM_COMPONENTS_NV = 36451 +GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV = 36452 +GL_MAX_MESH_ATOMIC_COUNTERS_NV = 36453 +GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV = 36454 +GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV = 36455 +GL_MAX_TASK_UNIFORM_BLOCKS_NV = 36456 +GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV = 36457 +GL_MAX_TASK_IMAGE_UNIFORMS_NV = 36458 +GL_MAX_TASK_UNIFORM_COMPONENTS_NV = 36459 +GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV = 36460 +GL_MAX_TASK_ATOMIC_COUNTERS_NV = 36461 +GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV = 36462 +GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV = 36463 GL_MAX_TRANSFORM_FEEDBACK_BUFFERS = 36464 GL_MAX_VERTEX_STREAMS = 36465 GL_PATCH_VERTICES = 36466 @@ -1652,6 +1673,12 @@ GL_RGBA16_SNORM = 36763 GL_SIGNED_NORMALIZED = 36764 GL_PRIMITIVE_RESTART = 36765 GL_PRIMITIVE_RESTART_INDEX = 36766 +GL_INT64_VEC2_ARB = 36841 +GL_INT64_VEC3_ARB = 36842 +GL_INT64_VEC4_ARB = 36843 +GL_UNSIGNED_INT64_VEC2_ARB = 36853 +GL_UNSIGNED_INT64_VEC3_ARB = 36854 +GL_UNSIGNED_INT64_VEC4_ARB = 36855 GL_DOUBLE_VEC2 = 36860 GL_DOUBLE_VEC3 = 36861 GL_DOUBLE_VEC4 = 36862 @@ -1832,6 +1859,7 @@ GL_ACTIVE_ATOMIC_COUNTER_BUFFERS = 37593 GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX = 37594 GL_UNSIGNED_INT_ATOMIC_COUNTER = 37595 GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = 37596 +GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV = 37599 GL_DEBUG_OUTPUT = 37600 GL_UNIFORM = 37601 GL_UNIFORM_BLOCK = 37602 @@ -1898,10 +1926,39 @@ GL_NEGATIVE_ONE_TO_ONE = 37726 GL_ZERO_TO_ONE = 37727 GL_CLEAR_TEXTURE = 37733 GL_NUM_SAMPLE_COUNTS = 37760 +GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV = 38198 +GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV = 38199 +GL_MAX_MESH_OUTPUT_VERTICES_NV = 38200 +GL_MAX_MESH_OUTPUT_PRIMITIVES_NV = 38201 +GL_MAX_TASK_OUTPUT_COUNT_NV = 38202 +GL_MAX_MESH_WORK_GROUP_SIZE_NV = 38203 +GL_MAX_TASK_WORK_GROUP_SIZE_NV = 38204 +GL_MAX_DRAW_MESH_TASKS_COUNT_NV = 38205 +GL_MESH_WORK_GROUP_SIZE_NV = 38206 +GL_TASK_WORK_GROUP_SIZE_NV = 38207 +GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV = 38211 GL_SHADER_BINARY_FORMAT_SPIR_V = 38225 GL_SPIR_V_BINARY = 38226 GL_SPIR_V_EXTENSIONS = 38227 GL_NUM_SPIR_V_EXTENSIONS = 38228 +GL_MAX_MESH_VIEWS_NV = 38231 +GL_MESH_SHADER_NV = 38233 +GL_TASK_SHADER_NV = 38234 +GL_MESH_VERTICES_OUT_NV = 38265 +GL_MESH_PRIMITIVES_OUT_NV = 38266 +GL_MESH_OUTPUT_TYPE_NV = 38267 +GL_MESH_SUBROUTINE_NV = 38268 +GL_TASK_SUBROUTINE_NV = 38269 +GL_MESH_SUBROUTINE_UNIFORM_NV = 38270 +GL_TASK_SUBROUTINE_UNIFORM_NV = 38271 +GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV = 38300 +GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV = 38301 +GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV = 38302 +GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV = 38303 +GL_REFERENCED_BY_MESH_SHADER_NV = 38304 +GL_REFERENCED_BY_TASK_SHADER_NV = 38305 +GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV = 38306 +GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV = 38307 GL_EVAL_BIT = 65536 GL_LIST_BIT = 131072 GL_TEXTURE_BIT = 262144 @@ -2118,6 +2175,8 @@ glDrawElementsInstanced = _link_function('glDrawElementsInstanced', None, [GLenu glDrawElementsInstancedBaseInstance = _link_function('glDrawElementsInstancedBaseInstance', None, [GLenum, GLsizei, GLenum, POINTER(GLvoid), GLsizei, GLuint], requires='OpenGL 4.2') glDrawElementsInstancedBaseVertex = _link_function('glDrawElementsInstancedBaseVertex', None, [GLenum, GLsizei, GLenum, POINTER(GLvoid), GLsizei, GLint], requires='OpenGL 3.2') glDrawElementsInstancedBaseVertexBaseInstance = _link_function('glDrawElementsInstancedBaseVertexBaseInstance', None, [GLenum, GLsizei, GLenum, POINTER(GLvoid), GLsizei, GLint, GLuint], requires='OpenGL 4.2') +glDrawMeshTasksIndirectNV = _link_function('glDrawMeshTasksIndirectNV', None, [GLintptr], requires='None') +glDrawMeshTasksNV = _link_function('glDrawMeshTasksNV', None, [GLuint, GLuint], requires='None') glDrawPixels = _link_function('glDrawPixels', None, [GLsizei, GLsizei, GLenum, GLenum, POINTER(GLvoid)], requires='OpenGL 1.0') glDrawRangeElements = _link_function('glDrawRangeElements', None, [GLenum, GLuint, GLuint, GLsizei, GLenum, POINTER(GLvoid)], requires='OpenGL 1.2') glDrawRangeElementsBaseVertex = _link_function('glDrawRangeElementsBaseVertex', None, [GLenum, GLuint, GLuint, GLsizei, GLenum, POINTER(GLvoid), GLint], requires='OpenGL 3.2') @@ -2228,6 +2287,7 @@ glGetFramebufferAttachmentParameteriv = _link_function('glGetFramebufferAttachme glGetFramebufferAttachmentParameterivEXT = _link_function('glGetFramebufferAttachmentParameterivEXT', None, [GLenum, GLenum, GLenum, POINTER(GLint)], requires='None') glGetFramebufferParameteriv = _link_function('glGetFramebufferParameteriv', None, [GLenum, GLenum, POINTER(GLint)], requires='OpenGL 4.3') glGetGraphicsResetStatus = _link_function('glGetGraphicsResetStatus', GLenum, [], requires='OpenGL 4.5') +glGetImageHandleARB = _link_function('glGetImageHandleARB', GLuint64, [GLuint, GLint, GLboolean, GLint, GLenum], requires='None') glGetInteger64i_v = _link_function('glGetInteger64i_v', None, [GLenum, GLuint, POINTER(GLint64)], requires='OpenGL 3.2') glGetInteger64v = _link_function('glGetInteger64v', None, [GLenum, POINTER(GLint64)], requires='OpenGL 3.2') glGetIntegeri_v = _link_function('glGetIntegeri_v', None, [GLenum, GLuint, POINTER(GLint)], requires='OpenGL 3.1') @@ -2305,6 +2365,7 @@ glGetTexParameterIiv = _link_function('glGetTexParameterIiv', None, [GLenum, GLe glGetTexParameterIuiv = _link_function('glGetTexParameterIuiv', None, [GLenum, GLenum, POINTER(GLuint)], requires='OpenGL 3.0') glGetTexParameterfv = _link_function('glGetTexParameterfv', None, [GLenum, GLenum, POINTER(GLfloat)], requires='OpenGL 1.0') glGetTexParameteriv = _link_function('glGetTexParameteriv', None, [GLenum, GLenum, POINTER(GLint)], requires='OpenGL 1.0') +glGetTextureHandleARB = _link_function('glGetTextureHandleARB', GLuint64, [GLuint], requires='None') glGetTextureImage = _link_function('glGetTextureImage', None, [GLuint, GLint, GLenum, GLenum, GLsizei, POINTER(GLvoid)], requires='OpenGL 4.5') glGetTextureLevelParameterfv = _link_function('glGetTextureLevelParameterfv', None, [GLuint, GLint, GLenum, POINTER(GLfloat)], requires='OpenGL 4.5') glGetTextureLevelParameteriv = _link_function('glGetTextureLevelParameteriv', None, [GLuint, GLint, GLenum, POINTER(GLint)], requires='OpenGL 4.5') @@ -2312,6 +2373,7 @@ glGetTextureParameterIiv = _link_function('glGetTextureParameterIiv', None, [GLu glGetTextureParameterIuiv = _link_function('glGetTextureParameterIuiv', None, [GLuint, GLenum, POINTER(GLuint)], requires='OpenGL 4.5') glGetTextureParameterfv = _link_function('glGetTextureParameterfv', None, [GLuint, GLenum, POINTER(GLfloat)], requires='OpenGL 4.5') glGetTextureParameteriv = _link_function('glGetTextureParameteriv', None, [GLuint, GLenum, POINTER(GLint)], requires='OpenGL 4.5') +glGetTextureSamplerHandleARB = _link_function('glGetTextureSamplerHandleARB', GLuint64, [GLuint, GLuint], requires='None') glGetTextureSubImage = _link_function('glGetTextureSubImage', None, [GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, GLsizei, POINTER(GLvoid)], requires='OpenGL 4.5') glGetTransformFeedbackVarying = _link_function('glGetTransformFeedbackVarying', None, [GLuint, GLuint, GLsizei, POINTER(GLsizei), POINTER(GLsizei), POINTER(GLenum), POINTER(GLchar)], requires='OpenGL 3.0') glGetTransformFeedbacki64_v = _link_function('glGetTransformFeedbacki64_v', None, [GLuint, GLenum, GLuint, POINTER(GLint64)], requires='OpenGL 4.5') @@ -2323,7 +2385,9 @@ glGetUniformLocation = _link_function('glGetUniformLocation', GLint, [GLuint, PO glGetUniformSubroutineuiv = _link_function('glGetUniformSubroutineuiv', None, [GLenum, GLint, POINTER(GLuint)], requires='OpenGL 4.0') glGetUniformdv = _link_function('glGetUniformdv', None, [GLuint, GLint, POINTER(GLdouble)], requires='OpenGL 4.0') glGetUniformfv = _link_function('glGetUniformfv', None, [GLuint, GLint, POINTER(GLfloat)], requires='OpenGL 2.0') +glGetUniformi64vARB = _link_function('glGetUniformi64vARB', None, [GLuint, GLint, POINTER(GLint64)], requires='None') glGetUniformiv = _link_function('glGetUniformiv', None, [GLuint, GLint, POINTER(GLint)], requires='OpenGL 2.0') +glGetUniformui64vARB = _link_function('glGetUniformui64vARB', None, [GLuint, GLint, POINTER(GLuint64)], requires='None') glGetUniformuiv = _link_function('glGetUniformuiv', None, [GLuint, GLint, POINTER(GLuint)], requires='OpenGL 3.0') glGetVertexArrayIndexed64iv = _link_function('glGetVertexArrayIndexed64iv', None, [GLuint, GLuint, GLenum, POINTER(GLint64)], requires='OpenGL 4.5') glGetVertexArrayIndexediv = _link_function('glGetVertexArrayIndexediv', None, [GLuint, GLuint, GLenum, POINTER(GLint)], requires='OpenGL 4.5') @@ -2331,6 +2395,7 @@ glGetVertexArrayiv = _link_function('glGetVertexArrayiv', None, [GLuint, GLenum, glGetVertexAttribIiv = _link_function('glGetVertexAttribIiv', None, [GLuint, GLenum, POINTER(GLint)], requires='OpenGL 3.0') glGetVertexAttribIuiv = _link_function('glGetVertexAttribIuiv', None, [GLuint, GLenum, POINTER(GLuint)], requires='OpenGL 3.0') glGetVertexAttribLdv = _link_function('glGetVertexAttribLdv', None, [GLuint, GLenum, POINTER(GLdouble)], requires='OpenGL 4.1') +glGetVertexAttribLui64vARB = _link_function('glGetVertexAttribLui64vARB', None, [GLuint, GLenum, POINTER(GLuint64EXT)], requires='None') glGetVertexAttribPointerv = _link_function('glGetVertexAttribPointerv', None, [GLuint, GLenum, POINTER(GLvoid)], requires='OpenGL 2.0') glGetVertexAttribdv = _link_function('glGetVertexAttribdv', None, [GLuint, GLenum, POINTER(GLdouble)], requires='OpenGL 2.0') glGetVertexAttribfv = _link_function('glGetVertexAttribfv', None, [GLuint, GLenum, POINTER(GLfloat)], requires='OpenGL 2.0') @@ -2351,7 +2416,9 @@ glGetnSeparableFilter = _link_function('glGetnSeparableFilter', None, [GLenum, G glGetnTexImage = _link_function('glGetnTexImage', None, [GLenum, GLint, GLenum, GLenum, GLsizei, POINTER(GLvoid)], requires='OpenGL 4.5') glGetnUniformdv = _link_function('glGetnUniformdv', None, [GLuint, GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.5') glGetnUniformfv = _link_function('glGetnUniformfv', None, [GLuint, GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 4.5') +glGetnUniformi64vARB = _link_function('glGetnUniformi64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLint64)], requires='None') glGetnUniformiv = _link_function('glGetnUniformiv', None, [GLuint, GLint, GLsizei, POINTER(GLint)], requires='OpenGL 4.5') +glGetnUniformui64vARB = _link_function('glGetnUniformui64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLuint64)], requires='None') glGetnUniformuiv = _link_function('glGetnUniformuiv', None, [GLuint, GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 4.5') glHint = _link_function('glHint', None, [GLenum, GLenum], requires='OpenGL 1.0') glIndexMask = _link_function('glIndexMask', None, [GLuint], requires='OpenGL 1.0') @@ -2381,6 +2448,7 @@ glIsEnabled = _link_function('glIsEnabled', GLboolean, [GLenum], requires='OpenG glIsEnabledi = _link_function('glIsEnabledi', GLboolean, [GLenum, GLuint], requires='OpenGL 3.0') glIsFramebuffer = _link_function('glIsFramebuffer', GLboolean, [GLuint], requires='OpenGL 3.0') glIsFramebufferEXT = _link_function('glIsFramebufferEXT', GLboolean, [GLuint], requires='None') +glIsImageHandleResidentARB = _link_function('glIsImageHandleResidentARB', GLboolean, [GLuint64], requires='None') glIsList = _link_function('glIsList', GLboolean, [GLuint], requires='OpenGL 1.0') glIsProgram = _link_function('glIsProgram', GLboolean, [GLuint], requires='OpenGL 2.0') glIsProgramPipeline = _link_function('glIsProgramPipeline', GLboolean, [GLuint], requires='OpenGL 4.1') @@ -2391,6 +2459,7 @@ glIsSampler = _link_function('glIsSampler', GLboolean, [GLuint], requires='OpenG glIsShader = _link_function('glIsShader', GLboolean, [GLuint], requires='OpenGL 2.0') glIsSync = _link_function('glIsSync', GLboolean, [GLsync], requires='OpenGL 3.2') glIsTexture = _link_function('glIsTexture', GLboolean, [GLuint], requires='OpenGL 1.1') +glIsTextureHandleResidentARB = _link_function('glIsTextureHandleResidentARB', GLboolean, [GLuint64], requires='None') glIsTransformFeedback = _link_function('glIsTransformFeedback', GLboolean, [GLuint], requires='OpenGL 4.0') glIsVertexArray = _link_function('glIsVertexArray', GLboolean, [GLuint], requires='OpenGL 3.0') glLightModelf = _link_function('glLightModelf', None, [GLenum, GLfloat], requires='OpenGL 1.0') @@ -2412,6 +2481,10 @@ glLoadName = _link_function('glLoadName', None, [GLuint], requires='OpenGL 1.0') glLoadTransposeMatrixd = _link_function('glLoadTransposeMatrixd', None, [POINTER(GLdouble)], requires='OpenGL 1.3') glLoadTransposeMatrixf = _link_function('glLoadTransposeMatrixf', None, [POINTER(GLfloat)], requires='OpenGL 1.3') glLogicOp = _link_function('glLogicOp', None, [GLenum], requires='OpenGL 1.0') +glMakeImageHandleNonResidentARB = _link_function('glMakeImageHandleNonResidentARB', None, [GLuint64], requires='None') +glMakeImageHandleResidentARB = _link_function('glMakeImageHandleResidentARB', None, [GLuint64, GLenum], requires='None') +glMakeTextureHandleNonResidentARB = _link_function('glMakeTextureHandleNonResidentARB', None, [GLuint64], requires='None') +glMakeTextureHandleResidentARB = _link_function('glMakeTextureHandleResidentARB', None, [GLuint64], requires='None') glMap1d = _link_function('glMap1d', None, [GLenum, GLdouble, GLdouble, GLint, GLint, POINTER(GLdouble)], requires='OpenGL 1.0') glMap1f = _link_function('glMap1f', None, [GLenum, GLfloat, GLfloat, GLint, GLint, POINTER(GLfloat)], requires='OpenGL 1.0') glMap2d = _link_function('glMap2d', None, [GLenum, GLdouble, GLdouble, GLint, GLint, GLdouble, GLdouble, GLint, GLint, POINTER(GLdouble)], requires='OpenGL 1.0') @@ -2443,6 +2516,8 @@ glMultiDrawElements = _link_function('glMultiDrawElements', None, [GLenum, POINT glMultiDrawElementsBaseVertex = _link_function('glMultiDrawElementsBaseVertex', None, [GLenum, POINTER(GLsizei), GLenum, POINTER(GLvoid), GLsizei, POINTER(GLint)], requires='OpenGL 3.2') glMultiDrawElementsIndirect = _link_function('glMultiDrawElementsIndirect', None, [GLenum, GLenum, POINTER(GLvoid), GLsizei, GLsizei], requires='OpenGL 4.3') glMultiDrawElementsIndirectCount = _link_function('glMultiDrawElementsIndirectCount', None, [GLenum, GLenum, POINTER(GLvoid), GLintptr, GLsizei, GLsizei], requires='OpenGL 4.6') +glMultiDrawMeshTasksIndirectCountNV = _link_function('glMultiDrawMeshTasksIndirectCountNV', None, [GLintptr, GLintptr, GLsizei, GLsizei], requires='None') +glMultiDrawMeshTasksIndirectNV = _link_function('glMultiDrawMeshTasksIndirectNV', None, [GLintptr, GLsizei, GLsizei], requires='None') glMultiTexCoord1d = _link_function('glMultiTexCoord1d', None, [GLenum, GLdouble], requires='OpenGL 1.3') glMultiTexCoord1dv = _link_function('glMultiTexCoord1dv', None, [GLenum, POINTER(GLdouble)], requires='OpenGL 1.3') glMultiTexCoord1f = _link_function('glMultiTexCoord1f', None, [GLenum, GLfloat], requires='OpenGL 1.3') @@ -2547,33 +2622,51 @@ glProgramUniform1dv = _link_function('glProgramUniform1dv', None, [GLuint, GLint glProgramUniform1f = _link_function('glProgramUniform1f', None, [GLuint, GLint, GLfloat], requires='OpenGL 4.1') glProgramUniform1fv = _link_function('glProgramUniform1fv', None, [GLuint, GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 4.1') glProgramUniform1i = _link_function('glProgramUniform1i', None, [GLuint, GLint, GLint], requires='OpenGL 4.1') +glProgramUniform1i64ARB = _link_function('glProgramUniform1i64ARB', None, [GLuint, GLint, GLint64], requires='None') +glProgramUniform1i64vARB = _link_function('glProgramUniform1i64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLint64)], requires='None') glProgramUniform1iv = _link_function('glProgramUniform1iv', None, [GLuint, GLint, GLsizei, POINTER(GLint)], requires='OpenGL 4.1') glProgramUniform1ui = _link_function('glProgramUniform1ui', None, [GLuint, GLint, GLuint], requires='OpenGL 4.1') +glProgramUniform1ui64ARB = _link_function('glProgramUniform1ui64ARB', None, [GLuint, GLint, GLuint64], requires='None') +glProgramUniform1ui64vARB = _link_function('glProgramUniform1ui64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLuint64)], requires='None') glProgramUniform1uiv = _link_function('glProgramUniform1uiv', None, [GLuint, GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 4.1') glProgramUniform2d = _link_function('glProgramUniform2d', None, [GLuint, GLint, GLdouble, GLdouble], requires='OpenGL 4.1') glProgramUniform2dv = _link_function('glProgramUniform2dv', None, [GLuint, GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.1') glProgramUniform2f = _link_function('glProgramUniform2f', None, [GLuint, GLint, GLfloat, GLfloat], requires='OpenGL 4.1') glProgramUniform2fv = _link_function('glProgramUniform2fv', None, [GLuint, GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 4.1') glProgramUniform2i = _link_function('glProgramUniform2i', None, [GLuint, GLint, GLint, GLint], requires='OpenGL 4.1') +glProgramUniform2i64ARB = _link_function('glProgramUniform2i64ARB', None, [GLuint, GLint, GLint64, GLint64], requires='None') +glProgramUniform2i64vARB = _link_function('glProgramUniform2i64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLint64)], requires='None') glProgramUniform2iv = _link_function('glProgramUniform2iv', None, [GLuint, GLint, GLsizei, POINTER(GLint)], requires='OpenGL 4.1') glProgramUniform2ui = _link_function('glProgramUniform2ui', None, [GLuint, GLint, GLuint, GLuint], requires='OpenGL 4.1') +glProgramUniform2ui64ARB = _link_function('glProgramUniform2ui64ARB', None, [GLuint, GLint, GLuint64, GLuint64], requires='None') +glProgramUniform2ui64vARB = _link_function('glProgramUniform2ui64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLuint64)], requires='None') glProgramUniform2uiv = _link_function('glProgramUniform2uiv', None, [GLuint, GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 4.1') glProgramUniform3d = _link_function('glProgramUniform3d', None, [GLuint, GLint, GLdouble, GLdouble, GLdouble], requires='OpenGL 4.1') glProgramUniform3dv = _link_function('glProgramUniform3dv', None, [GLuint, GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.1') glProgramUniform3f = _link_function('glProgramUniform3f', None, [GLuint, GLint, GLfloat, GLfloat, GLfloat], requires='OpenGL 4.1') glProgramUniform3fv = _link_function('glProgramUniform3fv', None, [GLuint, GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 4.1') glProgramUniform3i = _link_function('glProgramUniform3i', None, [GLuint, GLint, GLint, GLint, GLint], requires='OpenGL 4.1') +glProgramUniform3i64ARB = _link_function('glProgramUniform3i64ARB', None, [GLuint, GLint, GLint64, GLint64, GLint64], requires='None') +glProgramUniform3i64vARB = _link_function('glProgramUniform3i64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLint64)], requires='None') glProgramUniform3iv = _link_function('glProgramUniform3iv', None, [GLuint, GLint, GLsizei, POINTER(GLint)], requires='OpenGL 4.1') glProgramUniform3ui = _link_function('glProgramUniform3ui', None, [GLuint, GLint, GLuint, GLuint, GLuint], requires='OpenGL 4.1') +glProgramUniform3ui64ARB = _link_function('glProgramUniform3ui64ARB', None, [GLuint, GLint, GLuint64, GLuint64, GLuint64], requires='None') +glProgramUniform3ui64vARB = _link_function('glProgramUniform3ui64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLuint64)], requires='None') glProgramUniform3uiv = _link_function('glProgramUniform3uiv', None, [GLuint, GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 4.1') glProgramUniform4d = _link_function('glProgramUniform4d', None, [GLuint, GLint, GLdouble, GLdouble, GLdouble, GLdouble], requires='OpenGL 4.1') glProgramUniform4dv = _link_function('glProgramUniform4dv', None, [GLuint, GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.1') glProgramUniform4f = _link_function('glProgramUniform4f', None, [GLuint, GLint, GLfloat, GLfloat, GLfloat, GLfloat], requires='OpenGL 4.1') glProgramUniform4fv = _link_function('glProgramUniform4fv', None, [GLuint, GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 4.1') glProgramUniform4i = _link_function('glProgramUniform4i', None, [GLuint, GLint, GLint, GLint, GLint, GLint], requires='OpenGL 4.1') +glProgramUniform4i64ARB = _link_function('glProgramUniform4i64ARB', None, [GLuint, GLint, GLint64, GLint64, GLint64, GLint64], requires='None') +glProgramUniform4i64vARB = _link_function('glProgramUniform4i64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLint64)], requires='None') glProgramUniform4iv = _link_function('glProgramUniform4iv', None, [GLuint, GLint, GLsizei, POINTER(GLint)], requires='OpenGL 4.1') glProgramUniform4ui = _link_function('glProgramUniform4ui', None, [GLuint, GLint, GLuint, GLuint, GLuint, GLuint], requires='OpenGL 4.1') +glProgramUniform4ui64ARB = _link_function('glProgramUniform4ui64ARB', None, [GLuint, GLint, GLuint64, GLuint64, GLuint64, GLuint64], requires='None') +glProgramUniform4ui64vARB = _link_function('glProgramUniform4ui64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLuint64)], requires='None') glProgramUniform4uiv = _link_function('glProgramUniform4uiv', None, [GLuint, GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 4.1') +glProgramUniformHandleui64ARB = _link_function('glProgramUniformHandleui64ARB', None, [GLuint, GLint, GLuint64], requires='None') +glProgramUniformHandleui64vARB = _link_function('glProgramUniformHandleui64vARB', None, [GLuint, GLint, GLsizei, POINTER(GLuint64)], requires='None') glProgramUniformMatrix2dv = _link_function('glProgramUniformMatrix2dv', None, [GLuint, GLint, GLsizei, GLboolean, POINTER(GLdouble)], requires='OpenGL 4.1') glProgramUniformMatrix2fv = _link_function('glProgramUniformMatrix2fv', None, [GLuint, GLint, GLsizei, GLboolean, POINTER(GLfloat)], requires='OpenGL 4.1') glProgramUniformMatrix2x3dv = _link_function('glProgramUniformMatrix2x3dv', None, [GLuint, GLint, GLsizei, GLboolean, POINTER(GLdouble)], requires='OpenGL 4.1') @@ -2788,34 +2881,52 @@ glUniform1dv = _link_function('glUniform1dv', None, [GLint, GLsizei, POINTER(GLd glUniform1f = _link_function('glUniform1f', None, [GLint, GLfloat], requires='OpenGL 2.0') glUniform1fv = _link_function('glUniform1fv', None, [GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 2.0') glUniform1i = _link_function('glUniform1i', None, [GLint, GLint], requires='OpenGL 2.0') +glUniform1i64ARB = _link_function('glUniform1i64ARB', None, [GLint, GLint64], requires='None') +glUniform1i64vARB = _link_function('glUniform1i64vARB', None, [GLint, GLsizei, POINTER(GLint64)], requires='None') glUniform1iv = _link_function('glUniform1iv', None, [GLint, GLsizei, POINTER(GLint)], requires='OpenGL 2.0') glUniform1ui = _link_function('glUniform1ui', None, [GLint, GLuint], requires='OpenGL 3.0') +glUniform1ui64ARB = _link_function('glUniform1ui64ARB', None, [GLint, GLuint64], requires='None') +glUniform1ui64vARB = _link_function('glUniform1ui64vARB', None, [GLint, GLsizei, POINTER(GLuint64)], requires='None') glUniform1uiv = _link_function('glUniform1uiv', None, [GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 3.0') glUniform2d = _link_function('glUniform2d', None, [GLint, GLdouble, GLdouble], requires='OpenGL 4.0') glUniform2dv = _link_function('glUniform2dv', None, [GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.0') glUniform2f = _link_function('glUniform2f', None, [GLint, GLfloat, GLfloat], requires='OpenGL 2.0') glUniform2fv = _link_function('glUniform2fv', None, [GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 2.0') glUniform2i = _link_function('glUniform2i', None, [GLint, GLint, GLint], requires='OpenGL 2.0') +glUniform2i64ARB = _link_function('glUniform2i64ARB', None, [GLint, GLint64, GLint64], requires='None') +glUniform2i64vARB = _link_function('glUniform2i64vARB', None, [GLint, GLsizei, POINTER(GLint64)], requires='None') glUniform2iv = _link_function('glUniform2iv', None, [GLint, GLsizei, POINTER(GLint)], requires='OpenGL 2.0') glUniform2ui = _link_function('glUniform2ui', None, [GLint, GLuint, GLuint], requires='OpenGL 3.0') +glUniform2ui64ARB = _link_function('glUniform2ui64ARB', None, [GLint, GLuint64, GLuint64], requires='None') +glUniform2ui64vARB = _link_function('glUniform2ui64vARB', None, [GLint, GLsizei, POINTER(GLuint64)], requires='None') glUniform2uiv = _link_function('glUniform2uiv', None, [GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 3.0') glUniform3d = _link_function('glUniform3d', None, [GLint, GLdouble, GLdouble, GLdouble], requires='OpenGL 4.0') glUniform3dv = _link_function('glUniform3dv', None, [GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.0') glUniform3f = _link_function('glUniform3f', None, [GLint, GLfloat, GLfloat, GLfloat], requires='OpenGL 2.0') glUniform3fv = _link_function('glUniform3fv', None, [GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 2.0') glUniform3i = _link_function('glUniform3i', None, [GLint, GLint, GLint, GLint], requires='OpenGL 2.0') +glUniform3i64ARB = _link_function('glUniform3i64ARB', None, [GLint, GLint64, GLint64, GLint64], requires='None') +glUniform3i64vARB = _link_function('glUniform3i64vARB', None, [GLint, GLsizei, POINTER(GLint64)], requires='None') glUniform3iv = _link_function('glUniform3iv', None, [GLint, GLsizei, POINTER(GLint)], requires='OpenGL 2.0') glUniform3ui = _link_function('glUniform3ui', None, [GLint, GLuint, GLuint, GLuint], requires='OpenGL 3.0') +glUniform3ui64ARB = _link_function('glUniform3ui64ARB', None, [GLint, GLuint64, GLuint64, GLuint64], requires='None') +glUniform3ui64vARB = _link_function('glUniform3ui64vARB', None, [GLint, GLsizei, POINTER(GLuint64)], requires='None') glUniform3uiv = _link_function('glUniform3uiv', None, [GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 3.0') glUniform4d = _link_function('glUniform4d', None, [GLint, GLdouble, GLdouble, GLdouble, GLdouble], requires='OpenGL 4.0') glUniform4dv = _link_function('glUniform4dv', None, [GLint, GLsizei, POINTER(GLdouble)], requires='OpenGL 4.0') glUniform4f = _link_function('glUniform4f', None, [GLint, GLfloat, GLfloat, GLfloat, GLfloat], requires='OpenGL 2.0') glUniform4fv = _link_function('glUniform4fv', None, [GLint, GLsizei, POINTER(GLfloat)], requires='OpenGL 2.0') glUniform4i = _link_function('glUniform4i', None, [GLint, GLint, GLint, GLint, GLint], requires='OpenGL 2.0') +glUniform4i64ARB = _link_function('glUniform4i64ARB', None, [GLint, GLint64, GLint64, GLint64, GLint64], requires='None') +glUniform4i64vARB = _link_function('glUniform4i64vARB', None, [GLint, GLsizei, POINTER(GLint64)], requires='None') glUniform4iv = _link_function('glUniform4iv', None, [GLint, GLsizei, POINTER(GLint)], requires='OpenGL 2.0') glUniform4ui = _link_function('glUniform4ui', None, [GLint, GLuint, GLuint, GLuint, GLuint], requires='OpenGL 3.0') +glUniform4ui64ARB = _link_function('glUniform4ui64ARB', None, [GLint, GLuint64, GLuint64, GLuint64, GLuint64], requires='None') +glUniform4ui64vARB = _link_function('glUniform4ui64vARB', None, [GLint, GLsizei, POINTER(GLuint64)], requires='None') glUniform4uiv = _link_function('glUniform4uiv', None, [GLint, GLsizei, POINTER(GLuint)], requires='OpenGL 3.0') glUniformBlockBinding = _link_function('glUniformBlockBinding', None, [GLuint, GLuint, GLuint], requires='OpenGL 3.1') +glUniformHandleui64ARB = _link_function('glUniformHandleui64ARB', None, [GLint, GLuint64], requires='None') +glUniformHandleui64vARB = _link_function('glUniformHandleui64vARB', None, [GLint, GLsizei, POINTER(GLuint64)], requires='None') glUniformMatrix2dv = _link_function('glUniformMatrix2dv', None, [GLint, GLsizei, GLboolean, POINTER(GLdouble)], requires='OpenGL 4.0') glUniformMatrix2fv = _link_function('glUniformMatrix2fv', None, [GLint, GLsizei, GLboolean, POINTER(GLfloat)], requires='OpenGL 2.0') glUniformMatrix2x3dv = _link_function('glUniformMatrix2x3dv', None, [GLint, GLsizei, GLboolean, POINTER(GLdouble)], requires='OpenGL 4.0') @@ -2936,6 +3047,8 @@ glVertexAttribIFormat = _link_function('glVertexAttribIFormat', None, [GLuint, G glVertexAttribIPointer = _link_function('glVertexAttribIPointer', None, [GLuint, GLint, GLenum, GLsizei, POINTER(GLvoid)], requires='OpenGL 3.0') glVertexAttribL1d = _link_function('glVertexAttribL1d', None, [GLuint, GLdouble], requires='OpenGL 4.1') glVertexAttribL1dv = _link_function('glVertexAttribL1dv', None, [GLuint, POINTER(GLdouble)], requires='OpenGL 4.1') +glVertexAttribL1ui64ARB = _link_function('glVertexAttribL1ui64ARB', None, [GLuint, GLuint64EXT], requires='None') +glVertexAttribL1ui64vARB = _link_function('glVertexAttribL1ui64vARB', None, [GLuint, POINTER(GLuint64EXT)], requires='None') glVertexAttribL2d = _link_function('glVertexAttribL2d', None, [GLuint, GLdouble, GLdouble], requires='OpenGL 4.1') glVertexAttribL2dv = _link_function('glVertexAttribL2dv', None, [GLuint, POINTER(GLdouble)], requires='OpenGL 4.1') glVertexAttribL3d = _link_function('glVertexAttribL3d', None, [GLuint, GLdouble, GLdouble, GLdouble], requires='OpenGL 4.1') @@ -3006,6 +3119,7 @@ __all__ = [ 'GLsizeiptr', 'GLint64', 'GLuint64', + 'GLuint64EXT', 'GLsync', 'GLDEBUGPROC', 'GL_DEPTH_BUFFER_BIT', @@ -4880,6 +4994,62 @@ __all__ = [ 'GL_RENDERBUFFER_ALPHA_SIZE_EXT', 'GL_RENDERBUFFER_DEPTH_SIZE_EXT', 'GL_RENDERBUFFER_STENCIL_SIZE_EXT', + 'GL_UNSIGNED_INT64_ARB', + 'GL_INT64_ARB', + 'GL_INT64_VEC2_ARB', + 'GL_INT64_VEC3_ARB', + 'GL_INT64_VEC4_ARB', + 'GL_UNSIGNED_INT64_VEC2_ARB', + 'GL_UNSIGNED_INT64_VEC3_ARB', + 'GL_UNSIGNED_INT64_VEC4_ARB', + 'GL_MESH_SHADER_NV', + 'GL_TASK_SHADER_NV', + 'GL_MAX_MESH_UNIFORM_BLOCKS_NV', + 'GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV', + 'GL_MAX_MESH_IMAGE_UNIFORMS_NV', + 'GL_MAX_MESH_UNIFORM_COMPONENTS_NV', + 'GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV', + 'GL_MAX_MESH_ATOMIC_COUNTERS_NV', + 'GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV', + 'GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV', + 'GL_MAX_TASK_UNIFORM_BLOCKS_NV', + 'GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV', + 'GL_MAX_TASK_IMAGE_UNIFORMS_NV', + 'GL_MAX_TASK_UNIFORM_COMPONENTS_NV', + 'GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV', + 'GL_MAX_TASK_ATOMIC_COUNTERS_NV', + 'GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV', + 'GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV', + 'GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV', + 'GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV', + 'GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV', + 'GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV', + 'GL_MAX_MESH_OUTPUT_VERTICES_NV', + 'GL_MAX_MESH_OUTPUT_PRIMITIVES_NV', + 'GL_MAX_TASK_OUTPUT_COUNT_NV', + 'GL_MAX_DRAW_MESH_TASKS_COUNT_NV', + 'GL_MAX_MESH_VIEWS_NV', + 'GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV', + 'GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV', + 'GL_MAX_MESH_WORK_GROUP_SIZE_NV', + 'GL_MAX_TASK_WORK_GROUP_SIZE_NV', + 'GL_MESH_WORK_GROUP_SIZE_NV', + 'GL_TASK_WORK_GROUP_SIZE_NV', + 'GL_MESH_VERTICES_OUT_NV', + 'GL_MESH_PRIMITIVES_OUT_NV', + 'GL_MESH_OUTPUT_TYPE_NV', + 'GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV', + 'GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV', + 'GL_REFERENCED_BY_MESH_SHADER_NV', + 'GL_REFERENCED_BY_TASK_SHADER_NV', + 'GL_MESH_SHADER_BIT_NV', + 'GL_TASK_SHADER_BIT_NV', + 'GL_MESH_SUBROUTINE_NV', + 'GL_TASK_SUBROUTINE_NV', + 'GL_MESH_SUBROUTINE_UNIFORM_NV', + 'GL_TASK_SUBROUTINE_UNIFORM_NV', + 'GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV', + 'GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV', 'glAccum', 'glActiveShaderProgram', 'glActiveTexture', @@ -5082,6 +5252,8 @@ __all__ = [ 'glDrawElementsInstancedBaseInstance', 'glDrawElementsInstancedBaseVertex', 'glDrawElementsInstancedBaseVertexBaseInstance', + 'glDrawMeshTasksIndirectNV', + 'glDrawMeshTasksNV', 'glDrawPixels', 'glDrawRangeElements', 'glDrawRangeElementsBaseVertex', @@ -5192,6 +5364,7 @@ __all__ = [ 'glGetFramebufferAttachmentParameterivEXT', 'glGetFramebufferParameteriv', 'glGetGraphicsResetStatus', + 'glGetImageHandleARB', 'glGetInteger64i_v', 'glGetInteger64v', 'glGetIntegeri_v', @@ -5269,6 +5442,7 @@ __all__ = [ 'glGetTexParameterIuiv', 'glGetTexParameterfv', 'glGetTexParameteriv', + 'glGetTextureHandleARB', 'glGetTextureImage', 'glGetTextureLevelParameterfv', 'glGetTextureLevelParameteriv', @@ -5276,6 +5450,7 @@ __all__ = [ 'glGetTextureParameterIuiv', 'glGetTextureParameterfv', 'glGetTextureParameteriv', + 'glGetTextureSamplerHandleARB', 'glGetTextureSubImage', 'glGetTransformFeedbackVarying', 'glGetTransformFeedbacki64_v', @@ -5287,7 +5462,9 @@ __all__ = [ 'glGetUniformSubroutineuiv', 'glGetUniformdv', 'glGetUniformfv', + 'glGetUniformi64vARB', 'glGetUniformiv', + 'glGetUniformui64vARB', 'glGetUniformuiv', 'glGetVertexArrayIndexed64iv', 'glGetVertexArrayIndexediv', @@ -5295,6 +5472,7 @@ __all__ = [ 'glGetVertexAttribIiv', 'glGetVertexAttribIuiv', 'glGetVertexAttribLdv', + 'glGetVertexAttribLui64vARB', 'glGetVertexAttribPointerv', 'glGetVertexAttribdv', 'glGetVertexAttribfv', @@ -5315,7 +5493,9 @@ __all__ = [ 'glGetnTexImage', 'glGetnUniformdv', 'glGetnUniformfv', + 'glGetnUniformi64vARB', 'glGetnUniformiv', + 'glGetnUniformui64vARB', 'glGetnUniformuiv', 'glHint', 'glIndexMask', @@ -5345,6 +5525,7 @@ __all__ = [ 'glIsEnabledi', 'glIsFramebuffer', 'glIsFramebufferEXT', + 'glIsImageHandleResidentARB', 'glIsList', 'glIsProgram', 'glIsProgramPipeline', @@ -5355,6 +5536,7 @@ __all__ = [ 'glIsShader', 'glIsSync', 'glIsTexture', + 'glIsTextureHandleResidentARB', 'glIsTransformFeedback', 'glIsVertexArray', 'glLightModelf', @@ -5376,6 +5558,10 @@ __all__ = [ 'glLoadTransposeMatrixd', 'glLoadTransposeMatrixf', 'glLogicOp', + 'glMakeImageHandleNonResidentARB', + 'glMakeImageHandleResidentARB', + 'glMakeTextureHandleNonResidentARB', + 'glMakeTextureHandleResidentARB', 'glMap1d', 'glMap1f', 'glMap2d', @@ -5407,6 +5593,8 @@ __all__ = [ 'glMultiDrawElementsBaseVertex', 'glMultiDrawElementsIndirect', 'glMultiDrawElementsIndirectCount', + 'glMultiDrawMeshTasksIndirectCountNV', + 'glMultiDrawMeshTasksIndirectNV', 'glMultiTexCoord1d', 'glMultiTexCoord1dv', 'glMultiTexCoord1f', @@ -5511,33 +5699,51 @@ __all__ = [ 'glProgramUniform1f', 'glProgramUniform1fv', 'glProgramUniform1i', + 'glProgramUniform1i64ARB', + 'glProgramUniform1i64vARB', 'glProgramUniform1iv', 'glProgramUniform1ui', + 'glProgramUniform1ui64ARB', + 'glProgramUniform1ui64vARB', 'glProgramUniform1uiv', 'glProgramUniform2d', 'glProgramUniform2dv', 'glProgramUniform2f', 'glProgramUniform2fv', 'glProgramUniform2i', + 'glProgramUniform2i64ARB', + 'glProgramUniform2i64vARB', 'glProgramUniform2iv', 'glProgramUniform2ui', + 'glProgramUniform2ui64ARB', + 'glProgramUniform2ui64vARB', 'glProgramUniform2uiv', 'glProgramUniform3d', 'glProgramUniform3dv', 'glProgramUniform3f', 'glProgramUniform3fv', 'glProgramUniform3i', + 'glProgramUniform3i64ARB', + 'glProgramUniform3i64vARB', 'glProgramUniform3iv', 'glProgramUniform3ui', + 'glProgramUniform3ui64ARB', + 'glProgramUniform3ui64vARB', 'glProgramUniform3uiv', 'glProgramUniform4d', 'glProgramUniform4dv', 'glProgramUniform4f', 'glProgramUniform4fv', 'glProgramUniform4i', + 'glProgramUniform4i64ARB', + 'glProgramUniform4i64vARB', 'glProgramUniform4iv', 'glProgramUniform4ui', + 'glProgramUniform4ui64ARB', + 'glProgramUniform4ui64vARB', 'glProgramUniform4uiv', + 'glProgramUniformHandleui64ARB', + 'glProgramUniformHandleui64vARB', 'glProgramUniformMatrix2dv', 'glProgramUniformMatrix2fv', 'glProgramUniformMatrix2x3dv', @@ -5752,34 +5958,52 @@ __all__ = [ 'glUniform1f', 'glUniform1fv', 'glUniform1i', + 'glUniform1i64ARB', + 'glUniform1i64vARB', 'glUniform1iv', 'glUniform1ui', + 'glUniform1ui64ARB', + 'glUniform1ui64vARB', 'glUniform1uiv', 'glUniform2d', 'glUniform2dv', 'glUniform2f', 'glUniform2fv', 'glUniform2i', + 'glUniform2i64ARB', + 'glUniform2i64vARB', 'glUniform2iv', 'glUniform2ui', + 'glUniform2ui64ARB', + 'glUniform2ui64vARB', 'glUniform2uiv', 'glUniform3d', 'glUniform3dv', 'glUniform3f', 'glUniform3fv', 'glUniform3i', + 'glUniform3i64ARB', + 'glUniform3i64vARB', 'glUniform3iv', 'glUniform3ui', + 'glUniform3ui64ARB', + 'glUniform3ui64vARB', 'glUniform3uiv', 'glUniform4d', 'glUniform4dv', 'glUniform4f', 'glUniform4fv', 'glUniform4i', + 'glUniform4i64ARB', + 'glUniform4i64vARB', 'glUniform4iv', 'glUniform4ui', + 'glUniform4ui64ARB', + 'glUniform4ui64vARB', 'glUniform4uiv', 'glUniformBlockBinding', + 'glUniformHandleui64ARB', + 'glUniformHandleui64vARB', 'glUniformMatrix2dv', 'glUniformMatrix2fv', 'glUniformMatrix2x3dv', @@ -5900,6 +6124,8 @@ __all__ = [ 'glVertexAttribIPointer', 'glVertexAttribL1d', 'glVertexAttribL1dv', + 'glVertexAttribL1ui64ARB', + 'glVertexAttribL1ui64vARB', 'glVertexAttribL2d', 'glVertexAttribL2dv', 'glVertexAttribL3d', diff --git a/libs/pyglet/lib.py b/libs/pyglet/lib.py index d264fcf..6d5fc37 100644 --- a/libs/pyglet/lib.py +++ b/libs/pyglet/lib.py @@ -125,8 +125,9 @@ class LibraryLoader: if _debug_trace: lib = _TraceLibrary(lib) return lib - except OSError: - pass + except OSError as e: + if _debug_lib: + print(f"Unexpected error loading library {name}: {str(e)}") elif self.platform == "win32" and o.winerror != 126: if _debug_lib: print(f"Unexpected error loading library {name}: {str(o)}") diff --git a/libs/pyglet/media/codecs/__init__.py b/libs/pyglet/media/codecs/__init__.py index ec094a8..4ac81fb 100644 --- a/libs/pyglet/media/codecs/__init__.py +++ b/libs/pyglet/media/codecs/__init__.py @@ -1,3 +1,5 @@ +import warnings + from pyglet.util import CodecRegistry, Decoder, Encoder from .base import * @@ -94,10 +96,22 @@ def have_ffmpeg(): try: from . import ffmpeg_lib if _debug: - print('FFmpeg available, using to load media files. Versions: {}'.format(ffmpeg_lib.compat.versions)) + print('FFmpeg available, using to load media files.') + + found = False + for release_versions, build_versions in ffmpeg_lib.release_versions.items(): + if ffmpeg_lib.compat.versions == build_versions: + if _debug: + print(f'FFMpeg Release Version: {release_versions}. Versions Loaded: {ffmpeg_lib.compat.versions}') + found = True + break + + if not found: + warnings.warn(f'FFmpeg release version not found. This may be a new or untested release. Unknown behavior may occur. Versions Loaded: {ffmpeg_lib.compat.versions}') + return True - except (ImportError, FileNotFoundError, AttributeError): + except (ImportError, FileNotFoundError, AttributeError) as err: if _debug: - print('FFmpeg not available.') + print(f'FFmpeg not available: {err}') return False diff --git a/libs/pyglet/media/codecs/ffmpeg_lib/compat.py b/libs/pyglet/media/codecs/ffmpeg_lib/compat.py index 7e18c96..22283ab 100644 --- a/libs/pyglet/media/codecs/ffmpeg_lib/compat.py +++ b/libs/pyglet/media/codecs/ffmpeg_lib/compat.py @@ -1,6 +1,7 @@ from collections import namedtuple -CustomField = namedtuple("CustomField", "fields removals") +CustomField = namedtuple("CustomField", "fields removals repositions") +Reposition = namedtuple("Reposition", "field after") # Versions of the loaded libraries versions = { @@ -12,10 +13,11 @@ versions = { } # Group codecs by version they are usually packaged with. -release_versions = [ - {'avcodec': 58, 'avformat': 58, 'avutil': 56, 'swresample': 3, 'swscale': 5}, - {'libavcodec': 59, 'avformat': 59, 'avutil': 57, 'swresample': 4, 'swscale': 6} -] +release_versions = { + 4: {'avcodec': 58, 'avformat': 58, 'avutil': 56, 'swresample': 3, 'swscale': 5}, # 4.x + 5: {'avcodec': 59, 'avformat': 59, 'avutil': 57, 'swresample': 4, 'swscale': 6}, # 5.x + 6: {'avcodec': 60, 'avformat': 60, 'avutil': 58, 'swresample': 4, 'swscale': 7}, # 6.x +} # Removals done per library and version. _version_changes = { @@ -31,7 +33,7 @@ def set_version(library, version): versions[library] = version -def add_version_changes(library, version, structure, fields, removals): +def add_version_changes(library, version, structure, fields, removals, repositions=None): if version not in _version_changes[library]: _version_changes[library][version] = {} @@ -41,7 +43,7 @@ def add_version_changes(library, version, structure, fields, removals): version) ) - _version_changes[library][version][structure] = CustomField(fields, removals) + _version_changes[library][version][structure] = CustomField(fields, removals, repositions) def apply_version_changes(): @@ -60,4 +62,20 @@ def apply_version_changes(): if field[0] == remove_field: cf_data.fields.remove(field) + if cf_data.repositions: + for reposition in cf_data.repositions: + data = None + insertId = None + for idx, field in enumerate(list(cf_data.fields)): + if field[0] == reposition.field: + data = field + elif field[0] == reposition.after: + insertId = idx + + if data and insertId: + cf_data.fields.remove(data) + cf_data.fields.insert(insertId+1, data) + else: + print(f"Warning: {reposition} for {library} was not able to be processed.") + structure._fields_ = cf_data.fields diff --git a/libs/pyglet/media/codecs/ffmpeg_lib/libavcodec.py b/libs/pyglet/media/codecs/ffmpeg_lib/libavcodec.py index 5d39627..c09ccf8 100644 --- a/libs/pyglet/media/codecs/ffmpeg_lib/libavcodec.py +++ b/libs/pyglet/media/codecs/ffmpeg_lib/libavcodec.py @@ -14,8 +14,8 @@ _debug = debug_print('debug_media') avcodec = pyglet.lib.load_library( 'avcodec', - win32=('avcodec-59', 'avcodec-58'), - darwin=('avcodec.59', 'avcodec.58') + win32=('avcodec-60', 'avcodec-59', 'avcodec-58'), + darwin=('avcodec.60', 'avcodec.59', 'avcodec.58') ) avcodec.avcodec_version.restype = c_int @@ -67,6 +67,8 @@ compat.add_version_changes('avcodec', 58, AVPacket, AVPacket_Fields, compat.add_version_changes('avcodec', 59, AVPacket, AVPacket_Fields, removals=('convergence_duration',)) +compat.add_version_changes('avcodec', 60, AVPacket, AVPacket_Fields, + removals=('convergence_duration',)) class AVCodecParserContext(Structure): pass @@ -377,6 +379,17 @@ compat.add_version_changes('avcodec', 59, AVCodecContext, AVCodecContext_Fields, 'skip_count', 'misc_bits', 'frames_bits', 'coded_frame', 'vbv_delay', 'side_data_only_packets') ) +compat.add_version_changes('avcodec', 60, AVCodecContext, AVCodecContext_Fields, + removals=('b_frame_strategy', 'mpeg_quant', 'prediction_method', 'pre_me', 'scenechange_threshold', + 'noise_reduction', 'me_penalty_compensation', 'brd_scale', 'chromaoffset', 'b_sensitivity', + 'refcounted_frames', 'coder_type', 'context_model', 'coder_type', 'context_model', + 'frame_skip_threshold', 'frame_skip_factor', 'frame_skip_exp', 'frame_skip_cmp', + 'min_prediction_order', 'max_prediction_order', 'timecode_frame_start', 'rtp_callback', + 'rtp_payload_size', 'mv_bits', 'header_bits', 'i_tex_bits', 'p_tex_bits', 'i_count', 'p_count', + 'skip_count', 'misc_bits', 'frames_bits', 'coded_frame', 'vbv_delay', 'side_data_only_packets') +) + + AV_CODEC_ID_VP8 = 139 AV_CODEC_ID_VP9 = 167 diff --git a/libs/pyglet/media/codecs/ffmpeg_lib/libavformat.py b/libs/pyglet/media/codecs/ffmpeg_lib/libavformat.py index 50fa1b4..f62c160 100644 --- a/libs/pyglet/media/codecs/ffmpeg_lib/libavformat.py +++ b/libs/pyglet/media/codecs/ffmpeg_lib/libavformat.py @@ -14,8 +14,8 @@ _debug = debug_print('debug_media') avformat = pyglet.lib.load_library( 'avformat', - win32=('avformat-59', 'avformat-58'), - darwin=('avformat.59', 'avformat.58') + win32=('avformat-60', 'avformat-59', 'avformat-58'), + darwin=('avformat.60', 'avformat.59', 'avformat.58') ) avformat.avformat_version.restype = c_int @@ -115,6 +115,7 @@ class AVStream(Structure): pass AVStream_Fields = [ + ('av_class', POINTER(AVClass)), ('index', c_int), ('id', c_int), ('codec', POINTER(AVCodecContext)), # Deprecated. Removed in 59. @@ -139,11 +140,14 @@ AVStream_Fields = [ ('pts_wrap_bits', c_int), ] -compat.add_version_changes('avformat', 58, AVStream, AVStream_Fields, removals=None) +compat.add_version_changes('avformat', 58, AVStream, AVStream_Fields, removals=('av_class',)) compat.add_version_changes('avformat', 59, AVStream, AVStream_Fields, - removals=('codec', 'recommended_encoder_configuration', 'info')) + removals=('av_class', 'codec', 'recommended_encoder_configuration', 'info')) +compat.add_version_changes('avformat', 60, AVStream, AVStream_Fields, + removals=('codec', 'recommended_encoder_configuration', 'info'), + repositions=(compat.Reposition("codecpar", "id"),)) class AVProgram(Structure): pass @@ -259,6 +263,8 @@ compat.add_version_changes('avformat', 58, AVFormatContext, AVFormatContext_Fiel compat.add_version_changes('avformat', 59, AVFormatContext, AVFormatContext_Fields, removals=('filename', 'internal')) +compat.add_version_changes('avformat', 60, AVFormatContext, AVFormatContext_Fields, + removals=('filename', 'internal')) avformat.av_find_input_format.restype = c_int avformat.av_find_input_format.argtypes = [c_int] diff --git a/libs/pyglet/media/codecs/ffmpeg_lib/libavutil.py b/libs/pyglet/media/codecs/ffmpeg_lib/libavutil.py index 6969a0c..881259a 100644 --- a/libs/pyglet/media/codecs/ffmpeg_lib/libavutil.py +++ b/libs/pyglet/media/codecs/ffmpeg_lib/libavutil.py @@ -12,8 +12,8 @@ _debug = debug_print('debug_media') avutil = pyglet.lib.load_library( 'avutil', - win32=('avutil-57', 'avutil-56'), - darwin=('avutil.57', 'avutil.56') + win32=('avutil-58', 'avutil-57', 'avutil-56'), + darwin=('avutil.58', 'avutil.57', 'avutil.56') ) avutil.avutil_version.restype = c_int @@ -169,6 +169,9 @@ compat.add_version_changes('avutil', 56, AVFrame, AVFrame_Fields, compat.add_version_changes('avutil', 57, AVFrame, AVFrame_Fields, removals=('pkt_pts', 'error', 'qscale_table', 'qstride', 'qscale_type', 'qp_table_buf')) +compat.add_version_changes('avutil', 58, AVFrame, AVFrame_Fields, + removals=('pkt_pts', 'error', 'qscale_table', 'qstride', 'qscale_type', 'qp_table_buf')) + AV_NOPTS_VALUE = -0x8000000000000000 AV_TIME_BASE = 1000000 AV_TIME_BASE_Q = AVRational(1, AV_TIME_BASE) diff --git a/libs/pyglet/media/codecs/ffmpeg_lib/libswscale.py b/libs/pyglet/media/codecs/ffmpeg_lib/libswscale.py index 8c13587..fc7de93 100644 --- a/libs/pyglet/media/codecs/ffmpeg_lib/libswscale.py +++ b/libs/pyglet/media/codecs/ffmpeg_lib/libswscale.py @@ -13,8 +13,8 @@ _debug = debug_print('debug_media') swscale = pyglet.lib.load_library( 'swscale', - win32=('swscale-6', 'swscale-5'), - darwin=('swscale.6', 'swscale.5') + win32=('swscale-7', 'swscale-6', 'swscale-5'), + darwin=('swscale.7', 'swscale.6', 'swscale.5') ) swscale.swscale_version.restype = c_int diff --git a/libs/pyglet/media/codecs/wmf.py b/libs/pyglet/media/codecs/wmf.py index fedbd08..c739c59 100644 --- a/libs/pyglet/media/codecs/wmf.py +++ b/libs/pyglet/media/codecs/wmf.py @@ -821,7 +821,7 @@ class WMFDecoder(MediaDecoder): extensions.extend(['.3g2', '.3gp', '.3gp2', '.3gp', '.aac', '.adts', '.avi', - '.m4a', '.m4v', '.mov', '.mp4', + '.m4a', '.m4v', # '.wav' # Can do wav, but we have a WAVE decoder. ]) diff --git a/libs/pyglet/media/drivers/directsound/adaptation.py b/libs/pyglet/media/drivers/directsound/adaptation.py index af53dab..d23341a 100644 --- a/libs/pyglet/media/drivers/directsound/adaptation.py +++ b/libs/pyglet/media/drivers/directsound/adaptation.py @@ -236,7 +236,7 @@ class DirectSoundAudioPlayer(AbstractAudioPlayer): assert _debug('Remaining events: {}'.format(self._events)) for event in pending_events: - event._sync_dispatch_to_player(self.player) + event.sync_dispatch_to_player(self.player) def _cleanup_timestamps(self): while self._timestamps and self._timestamps[0][0] < self._play_cursor: diff --git a/libs/pyglet/media/drivers/openal/adaptation.py b/libs/pyglet/media/drivers/openal/adaptation.py index 0c70ce1..cebbbdd 100644 --- a/libs/pyglet/media/drivers/openal/adaptation.py +++ b/libs/pyglet/media/drivers/openal/adaptation.py @@ -220,7 +220,7 @@ class OpenALAudioPlayer(AbstractAudioPlayer): def _dispatch_events(self): while self._events and self._events[0][0] <= self._play_cursor: _, event = self._events.pop(0) - event._sync_dispatch_to_player(self.player) + event.sync_dispatch_to_player(self.player) def _get_write_size(self): self._update_play_cursor() diff --git a/libs/pyglet/media/drivers/pulse/adaptation.py b/libs/pyglet/media/drivers/pulse/adaptation.py index 5b85114..71e302d 100644 --- a/libs/pyglet/media/drivers/pulse/adaptation.py +++ b/libs/pyglet/media/drivers/pulse/adaptation.py @@ -237,7 +237,7 @@ class PulseAudioPlayer(AbstractAudioPlayer): while self._events and self._events[0][0] <= read_index: _, event = self._events.pop(0) assert _debug('PulseAudioPlayer: Dispatch event', event) - event._sync_dispatch_to_player(self.player) + event.sync_dispatch_to_player(self.player) def _add_event_at_write_index(self, event_name): assert _debug('PulseAudioPlayer: Add event at index {}'.format(self._write_index)) diff --git a/libs/pyglet/media/drivers/xaudio2/adaptation.py b/libs/pyglet/media/drivers/xaudio2/adaptation.py index 0287edf..e47d2f0 100644 --- a/libs/pyglet/media/drivers/xaudio2/adaptation.py +++ b/libs/pyglet/media/drivers/xaudio2/adaptation.py @@ -230,7 +230,7 @@ class XAudio2AudioPlayer(AbstractAudioPlayer): assert _debug('Remaining events: {}'.format(self._events)) for event in pending_events: - event._sync_dispatch_to_player(self.player) + event.sync_dispatch_to_player(self.player) def _cleanup_timestamps(self): while self._timestamps and self._timestamps[0][0] < self._play_cursor: