blob: 3a2233bc868d75dfaf51d2949226aa6f8393d49e [file] [log] [blame]
// Copyright (C) 2015 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glActiveShaderProgramEXT(PipelineId pipeline, ProgramId program) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_alpha_test.txt","GL_QCOM_alpha_test")
cmd void glAlphaFuncQCOM(GLenum func, GLclampf ref) {
requiresExtension(GL_QCOM_alpha_test)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/conditional_render.txt","GL_NV_conditional_render")
cmd void glBeginConditionalRenderNV(GLuint id, GLenum mode) {
requiresExtension(GL_NV_conditional_render)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/AMD/performance_monitor.txt","GL_AMD_performance_monitor")
cmd void glBeginPerfMonitorAMD(GLuint monitor) {
requiresExtension(GL_AMD_performance_monitor)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/INTEL/performance_query.txt","GL_INTEL_performance_query")
cmd void glBeginPerfQueryINTEL(GLuint queryHandle) {
requiresExtension(GL_INTEL_performance_query)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_disjoint_timer_query.txt","GL_EXT_disjoint_timer_query")
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_occlusion_query_boolean.txt","GL_EXT_occlusion_query_boolean")
cmd void glBeginQueryEXT(GLenum target, QueryId query) {
requiresExtension(GL_EXT_disjoint_timer_query)
requiresExtension(GL_EXT_occlusion_query_boolean)
// TODO: Multiple extensions
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glBindProgramPipelineEXT(PipelineId pipeline) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_vertex_array_object.txt","GL_OES_vertex_array_object")
cmd void glBindVertexArrayOES(VertexArrayId array) {
requiresExtension(GL_OES_vertex_array_object)
ctx := GetContext()
if !(array in ctx.Instances.VertexArrays) {
ctx.Instances.VertexArrays[array] = new!VertexArray()
}
ctx.BoundVertexArray = array
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/blend_equation_advanced.txt","GL_NV_blend_equation_advanced")
cmd void glBlendBarrierNV() {
requiresExtension(GL_NV_blend_equation_advanced)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_draw_buffers_indexed.txt","GL_OES_draw_buffers_indexed")
cmd void glBlendEquationSeparateiOES(GLuint buf, GLenum modeRGB, GLenum modeAlpha) {
requiresExtension(GL_OES_draw_buffers_indexed)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_draw_buffers_indexed.txt","GL_OES_draw_buffers_indexed")
cmd void glBlendEquationiOES(GLuint buf, GLenum mode) {
requiresExtension(GL_OES_draw_buffers_indexed)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_draw_buffers_indexed.txt","GL_OES_draw_buffers_indexed")
cmd void glBlendFuncSeparateiOES(GLuint buf,
GLenum srcRGB,
GLenum dstRGB,
GLenum srcAlpha,
GLenum dstAlpha) {
requiresExtension(GL_OES_draw_buffers_indexed)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_draw_buffers_indexed.txt","GL_OES_draw_buffers_indexed")
cmd void glBlendFunciOES(GLuint buf, GLenum src, GLenum dst) {
requiresExtension(GL_OES_draw_buffers_indexed)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/blend_equation_advanced.txt","GL_NV_blend_equation_advanced")
cmd void glBlendParameteriNV(GLenum pname, GLint value) {
requiresExtension(GL_NV_blend_equation_advanced)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/ANGLE/ANGLE_framebuffer_blit.txt","GL_ANGLE_framebuffer_blit")
cmd void glBlitFramebufferANGLE(GLint srcX0,
GLint srcY0,
GLint srcX1,
GLint srcY1,
GLint dstX0,
GLint dstY0,
GLint dstX1,
GLint dstY1,
GLbitfield mask,
GLenum filter) {
requiresExtension(GL_ANGLE_framebuffer_blit)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_framebuffer_blit.txt","GL_NV_framebuffer_blit")
cmd void glBlitFramebufferNV(GLint srcX0,
GLint srcY0,
GLint srcX1,
GLint srcY1,
GLint dstX0,
GLint dstY0,
GLint dstX1,
GLint dstY1,
GLbitfield mask,
GLenum filter) {
requiresExtension(GL_NV_framebuffer_blit)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_buffer_storage.txt","GL_EXT_buffer_storage")
cmd void glBufferStorageEXT(GLenum target, GLsizeiptr size, const void* data, GLbitfield flag) {
requiresExtension(GL_EXT_buffer_storage)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/APPLE/APPLE_sync.txt","GL_APPLE_sync")
cmd GLenum glClientWaitSyncAPPLE(GLsync sync, GLbitfield flag, GLuint64 timeout) {
requiresExtension(GL_APPLE_sync)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_draw_buffers_indexed.txt","GL_OES_draw_buffers_indexed")
cmd void glColorMaskiOES(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a) {
requiresExtension(GL_OES_draw_buffers_indexed)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_3D.txt","GL_OES_texture_3D")
cmd void glCompressedTexImage3DOES(GLenum target,
GLint level,
GLenum internalformat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLint border,
GLsizei imageSize,
const void* data) {
requiresExtension(GL_OES_texture_3D)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_3D.txt","GL_OES_texture_3D")
cmd void glCompressedTexSubImage3DOES(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLsizei width,
GLsizei height,
GLsizei depth,
GLenum format,
GLsizei imageSize,
const void* data) {
requiresExtension(GL_OES_texture_3D)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_copy_buffer.txt","GL_NV_copy_buffer")
cmd void glCopyBufferSubDataNV(GLenum readTarget,
GLenum writeTarget,
GLintptr readOffset,
GLintptr writeOffset,
GLsizeiptr size) {
requiresExtension(GL_NV_copy_buffer)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_copy_image.txt","GL_OES_copy_image")
cmd void glCopyImageSubDataOES(GLuint srcName,
GLenum srcTarget,
GLint srcLevel,
GLint srcX,
GLint srcY,
GLint srcZ,
GLuint dstName,
GLenum dstTarget,
GLint dstLevel,
GLint dstX,
GLint dstY,
GLint dstZ,
GLsizei srcWidth,
GLsizei srcHeight,
GLsizei srcDepth) {
requiresExtension(GL_OES_copy_image)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glCopyPathNV(GLuint resultPath, GLuint srcPath) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_3D.txt","GL_OES_texture_3D")
cmd void glCopyTexSubImage3DOES(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLint x,
GLint y,
GLsizei width,
GLsizei height) {
requiresExtension(GL_OES_texture_3D)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/APPLE/APPLE_copy_texture_levels.txt","GL_APPLE_copy_texture_levels")
cmd void glCopyTextureLevelsAPPLE(GLuint destinationTexture,
GLuint sourceTexture,
GLint sourceBaseLevel,
GLsizei sourceLevelCount) {
requiresExtension(GL_APPLE_copy_texture_levels)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glCoverFillPathInstancedNV(GLsizei numPaths,
GLenum pathNameType,
const void* paths,
GLuint pathBase,
GLenum coverMode,
GLenum transformType,
const GLfloat* transformValues) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glCoverFillPathNV(GLuint path, GLenum coverMode) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glCoverStrokePathInstancedNV(GLsizei numPaths,
GLenum pathNameType,
const void* paths,
GLuint pathBase,
GLenum coverMode,
GLenum transformType,
const GLfloat* transformValues) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glCoverStrokePathNV(GLuint path, GLenum coverMode) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/EGL_NV_coverage_sample.txt","GL_NV_coverage_sample")
cmd void glCoverageMaskNV(GLboolean mask) {
requiresExtension(GL_NV_coverage_sample)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/EGL_NV_coverage_sample.txt","GL_NV_coverage_sample")
cmd void glCoverageOperationNV(GLenum operation) {
requiresExtension(GL_NV_coverage_sample)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/INTEL/performance_query.txt","GL_INTEL_performance_query")
cmd void glCreatePerfQueryINTEL(GLuint queryId, GLuint* queryHandle) {
requiresExtension(GL_INTEL_performance_query)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd GLuint glCreateShaderProgramvEXT(GLenum type, GLsizei count, const GLchar** strings) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/fence.txt","GL_NV_fence")
cmd void glDeleteFencesNV(GLsizei n, const GLuint* fences) {
requiresExtension(GL_NV_fence)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glDeletePathsNV(GLuint path, GLsizei range) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/AMD/performance_monitor.txt","GL_AMD_performance_monitor")
cmd void glDeletePerfMonitorsAMD(GLsizei n, GLuint* monitors) {
requiresExtension(GL_AMD_performance_monitor)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/INTEL/performance_query.txt","GL_INTEL_performance_query")
cmd void glDeletePerfQueryINTEL(GLuint queryHandle) {
requiresExtension(GL_INTEL_performance_query)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glDeleteProgramPipelinesEXT(GLsizei n, const PipelineId* pipelines) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_disjoint_timer_query.txt","GL_EXT_disjoint_timer_query")
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_occlusion_query_boolean.txt","GL_EXT_occlusion_query_boolean")
cmd void glDeleteQueriesEXT(GLsizei count, const QueryId* queries) {
requiresExtension(GL_EXT_disjoint_timer_query)
requiresExtension(GL_EXT_occlusion_query_boolean)
// TODO: Multiple extensions
q := queries[0:count]
ctx := GetContext()
for i in (0 .. count) {
ctx.Instances.Queries[q[i]] = null
}
}
@Doc("https://www.khronos.org/registry/gles/extensions/APPLE/APPLE_sync.txt","GL_APPLE_sync")
cmd void glDeleteSyncAPPLE(GLsync sync) {
requiresExtension(GL_APPLE_sync)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_vertex_array_object.txt","GL_OES_vertex_array_object")
cmd void glDeleteVertexArraysOES(GLsizei count, const VertexArrayId* arrays) {
requiresExtension(GL_OES_vertex_array_object)
ctx := GetContext()
a := arrays[0:count]
for i in (0 .. count) {
ctx.Instances.VertexArrays[a[i]] = null
}
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_viewport_array.txt","GL_NV_viewport_array")
cmd void glDepthRangeArrayfvNV(GLuint first, GLsizei count, const GLfloat* v) {
requiresExtension(GL_NV_viewport_array)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_viewport_array.txt","GL_NV_viewport_array")
cmd void glDepthRangeIndexedfNV(GLuint index, GLfloat n, GLfloat f) {
requiresExtension(GL_NV_viewport_array)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_driver_control.txt","GL_QCOM_driver_control")
cmd void glDisableDriverControlQCOM(GLuint driverControl) {
requiresExtension(GL_QCOM_driver_control)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_viewport_array.txt","GL_NV_viewport_array")
cmd void glDisableiNV(GLenum target, GLuint index) {
requiresExtension(GL_NV_viewport_array)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_draw_buffers_indexed.txt","GL_OES_draw_buffers_indexed")
cmd void glDisableiOES(GLenum target, GLuint index) {
requiresExtension(GL_OES_draw_buffers_indexed)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_discard_framebuffer.txt","GL_EXT_discard_framebuffer")
cmd void glDiscardFramebufferEXT(GLenum target,
GLsizei numAttachments,
const GLenum* attachments) {
requiresExtension(GL_EXT_discard_framebuffer)
}
@Doc("https://www.khronos.org/registry/gles/extensions/ANGLE/ANGLE_instanced_arrays.txt","GL_ANGLE_instanced_arrays")
cmd void glDrawArraysInstancedANGLE(GLenum mode, GLint first, GLsizei count, GLsizei primcount) {
requiresExtension(GL_ANGLE_instanced_arrays)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_base_instance.txt","GL_EXT_base_instance")
cmd void glDrawArraysInstancedBaseInstanceEXT(GLenum mode,
GLint first,
GLsizei count,
GLsizei instancecount,
GLuint baseinstance) {
requiresExtension(GL_EXT_base_instance)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/draw_instanced.txt","GL_EXT_draw_instanced")
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_instanced_arrays.txt","GL_EXT_instanced_arrays")
cmd void glDrawArraysInstancedEXT(GLenum mode, GLint start, GLsizei count, GLsizei primcount) {
requiresExtension(GL_EXT_draw_instanced)
requiresExtension(GL_EXT_instanced_arrays)
// TODO: Multiple extensions
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_draw_instanced.txt","GL_NV_draw_instanced")
cmd void glDrawArraysInstancedNV(GLenum mode, GLint first, GLsizei count, GLsizei primcount) {
requiresExtension(GL_NV_draw_instanced)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_draw_buffers.txt","GL_EXT_draw_buffers")
cmd void glDrawBuffersEXT(GLsizei n, const GLenum* bufs) {
requiresExtension(GL_EXT_draw_buffers)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_multiview_draw_buffers.txt","GL_EXT_multiview_draw_buffers")
cmd void glDrawBuffersIndexedEXT(GLint n, const GLenum* location, const GLint* indices) {
requiresExtension(GL_EXT_multiview_draw_buffers)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_draw_buffers.txt","GL_NV_draw_buffers")
cmd void glDrawBuffersNV(GLsizei n, const GLenum* bufs) {
requiresExtension(GL_NV_draw_buffers)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_draw_elements_base_vertex.txt","GL_EXT_draw_elements_base_vertex")
cmd void glDrawElementsBaseVertexEXT(GLenum mode,
GLsizei count,
GLenum type,
const void* indices,
GLint basevertex) {
requiresExtension(GL_EXT_draw_elements_base_vertex)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_draw_elements_base_vertex.txt","GL_OES_draw_elements_base_vertex")
cmd void glDrawElementsBaseVertexOES(GLenum mode,
GLsizei count,
GLenum type,
const void* indices,
GLint basevertex) {
requiresExtension(GL_OES_draw_elements_base_vertex)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/ANGLE/ANGLE_instanced_arrays.txt","GL_ANGLE_instanced_arrays")
cmd void glDrawElementsInstancedANGLE(GLenum mode,
GLsizei count,
GLenum type,
const void* indices,
GLsizei primcount) {
requiresExtension(GL_ANGLE_instanced_arrays)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_base_instance.txt","GL_EXT_base_instance")
cmd void glDrawElementsInstancedBaseInstanceEXT(GLenum mode,
GLsizei count,
GLenum type,
const void* indices,
GLsizei instancecount,
GLuint baseinstance) {
requiresExtension(GL_EXT_base_instance)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_draw_elements_base_vertex.txt","GL_EXT_draw_elements_base_vertex")
cmd void glDrawElementsInstancedBaseVertexEXT(GLenum mode,
GLsizei count,
GLenum type,
const void* indices,
GLsizei instancecount,
GLint basevertex) {
requiresExtension(GL_EXT_draw_elements_base_vertex)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_draw_elements_base_vertex.txt","GL_OES_draw_elements_base_vertex")
cmd void glDrawElementsInstancedBaseVertexOES(GLenum mode,
GLsizei count,
GLenum type,
const void* indices,
GLsizei instancecount,
GLint basevertex) {
requiresExtension(GL_OES_draw_elements_base_vertex)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_base_instance.txt","GL_EXT_base_instance")
cmd void glDrawElementsInstancedBaseVertexBaseInstanceEXT(GLenum mode,
GLsizei count,
GLenum type,
const void* indices,
GLsizei instancecount,
GLint basevertex,
GLuint baseinstance) {
requiresExtension(GL_EXT_base_instance)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/draw_instanced.txt","GL_EXT_draw_instanced")
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_instanced_arrays.txt","GL_EXT_instanced_arrays")
cmd void glDrawElementsInstancedEXT(GLenum mode,
GLsizei count,
GLenum type,
const void* indices,
GLsizei primcount) {
requiresExtension(GL_EXT_draw_instanced)
requiresExtension(GL_EXT_instanced_arrays)
// TODO: Multiple extensions
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_draw_instanced.txt","GL_NV_draw_instanced")
cmd void glDrawElementsInstancedNV(GLenum mode,
GLsizei count,
GLenum type,
const void* indices,
GLsizei primcount) {
requiresExtension(GL_NV_draw_instanced)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_draw_elements_base_vertex.txt","GL_EXT_draw_elements_base_vertex")
cmd void glDrawRangeElementsBaseVertexEXT(GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
GLenum type,
const void* indices,
GLint basevertex) {
requiresExtension(GL_EXT_draw_elements_base_vertex)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_draw_elements_base_vertex.txt","GL_OES_draw_elements_base_vertex")
cmd void glDrawRangeElementsBaseVertexOES(GLenum mode,
GLuint start,
GLuint end,
GLsizei count,
GLenum type,
const void* indices,
GLint basevertex) {
requiresExtension(GL_OES_draw_elements_base_vertex)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_EGL_image.txt","GL_OES_EGL_image")
cmd void glEGLImageTargetRenderbufferStorageOES(GLenum target, GLeglImageOES image) {
requiresExtension(GL_OES_EGL_image)
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_EGL_image.txt","GL_OES_EGL_image")
cmd void glEGLImageTargetTexture2DOES(GLenum target, GLeglImageOES image) {
requiresExtension(GL_OES_EGL_image)
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_driver_control.txt","GL_QCOM_driver_control")
cmd void glEnableDriverControlQCOM(GLuint driverControl) {
requiresExtension(GL_QCOM_driver_control)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_viewport_array.txt","GL_NV_viewport_array")
cmd void glEnableiNV(GLenum target, GLuint index) {
requiresExtension(GL_NV_viewport_array)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_draw_buffers_indexed.txt","GL_OES_draw_buffers_indexed")
cmd void glEnableiOES(GLenum target, GLuint index) {
requiresExtension(GL_OES_draw_buffers_indexed)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/conditional_render.txt","GL_NV_conditional_render")
cmd void glEndConditionalRenderNV() {
requiresExtension(GL_NV_conditional_render)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/AMD/performance_monitor.txt","GL_AMD_performance_monitor")
cmd void glEndPerfMonitorAMD(GLuint monitor) {
requiresExtension(GL_AMD_performance_monitor)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/INTEL/performance_query.txt","GL_INTEL_performance_query")
cmd void glEndPerfQueryINTEL(GLuint queryHandle) {
requiresExtension(GL_INTEL_performance_query)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_disjoint_timer_query.txt","GL_EXT_disjoint_timer_query")
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_occlusion_query_boolean.txt","GL_EXT_occlusion_query_boolean")
cmd void glEndQueryEXT(GLenum target) {
requiresExtension(GL_EXT_disjoint_timer_query)
requiresExtension(GL_EXT_occlusion_query_boolean)
// TODO: Multiple extensions
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_tiled_rendering.txt","GL_QCOM_tiled_rendering")
cmd void glEndTilingQCOM(GLbitfield preserve_mask) {
requiresExtension(GL_QCOM_tiled_rendering)
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_extended_get.txt","GL_QCOM_extended_get")
cmd void glExtGetBufferPointervQCOM(GLenum target, void** params) {
requiresExtension(GL_QCOM_extended_get)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_extended_get.txt","GL_QCOM_extended_get")
cmd void glExtGetBuffersQCOM(BufferId* buffers, GLint maxBuffers, GLint* numBuffers) {
requiresExtension(GL_QCOM_extended_get)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_extended_get.txt","GL_QCOM_extended_get")
cmd void glExtGetFramebuffersQCOM(FramebufferId* framebuffers,
GLint maxFramebuffers,
GLint* numFramebuffers) {
requiresExtension(GL_QCOM_extended_get)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_extended_get2.txt","GL_QCOM_extended_get2")
cmd void glExtGetProgramBinarySourceQCOM(ProgramId program,
GLenum shadertype,
GLchar* source,
GLint* length) {
requiresExtension(GL_QCOM_extended_get2)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_extended_get2.txt","GL_QCOM_extended_get2")
cmd void glExtGetProgramsQCOM(ProgramId* programs, GLint maxPrograms, GLint* numPrograms) {
requiresExtension(GL_QCOM_extended_get2)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_extended_get.txt","GL_QCOM_extended_get")
cmd void glExtGetRenderbuffersQCOM(RenderbufferId* renderbuffers,
GLint maxRenderbuffers,
GLint* numRenderbuffers) {
requiresExtension(GL_QCOM_extended_get)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_extended_get2.txt","GL_QCOM_extended_get2")
cmd void glExtGetShadersQCOM(ShaderId* shaders, GLint maxShaders, GLint* numShaders) {
requiresExtension(GL_QCOM_extended_get2)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_extended_get.txt","GL_QCOM_extended_get")
cmd void glExtGetTexLevelParameterivQCOM(TextureId texture,
GLenum face,
GLint level,
GLenum pname,
GLint* params) {
requiresExtension(GL_QCOM_extended_get)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_extended_get.txt","GL_QCOM_extended_get")
cmd void glExtGetTexSubImageQCOM(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLsizei width,
GLsizei height,
GLsizei depth,
GLenum format,
GLenum type,
void* texels) {
requiresExtension(GL_QCOM_extended_get)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_extended_get.txt","GL_QCOM_extended_get")
cmd void glExtGetTexturesQCOM(TextureId* textures, GLint maxTextures, GLint* numTextures) {
requiresExtension(GL_QCOM_extended_get)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_extended_get2.txt","GL_QCOM_extended_get2")
cmd GLboolean glExtIsProgramBinaryQCOM(ProgramId program) {
requiresExtension(GL_QCOM_extended_get2)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_extended_get.txt","GL_QCOM_extended_get")
cmd void glExtTexObjectStateOverrideiQCOM(GLenum target, GLenum pname, GLint param) {
requiresExtension(GL_QCOM_extended_get)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/APPLE/APPLE_sync.txt","GL_APPLE_sync")
cmd GLsync glFenceSyncAPPLE(GLenum condition, GLbitfield flag) {
requiresExtension(GL_APPLE_sync)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/fence.txt","GL_NV_fence")
cmd void glFinishFenceNV(GLuint fence) {
requiresExtension(GL_NV_fence)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_map_buffer_range.txt","GL_EXT_map_buffer_range")
cmd void glFlushMappedBufferRangeEXT(GLenum target, GLintptr offset, GLsizeiptr length) {
requiresExtension(GL_EXT_map_buffer_range)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_multisampled_render_to_texture.txt","GL_EXT_multisampled_render_to_texture")
cmd void glFramebufferTexture2DMultisampleEXT(GLenum target,
GLenum attachment,
GLenum textarget,
TextureId texture,
GLint level,
GLsizei samples) {
requiresExtension(GL_EXT_multisampled_render_to_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/IMG/IMG_multisampled_render_to_texture.txt","GL_IMG_multisampled_render_to_texture")
cmd void glFramebufferTexture2DMultisampleIMG(GLenum target,
GLenum attachment,
GLenum textarget,
TextureId texture,
GLint level,
GLsizei samples) {
requiresExtension(GL_IMG_multisampled_render_to_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_3D.txt","GL_OES_texture_3D")
cmd void glFramebufferTexture3DOES(GLenum target,
GLenum attachment,
GLenum textarget,
TextureId texture,
GLint level,
GLint zoffset) {
requiresExtension(GL_OES_texture_3D)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_geometry_shader.txt","GL_OES_geometry_shader")
cmd void glFramebufferTextureOES(GLenum target, GLenum attachment, TextureId texture, GLint level) {
requiresExtension(GL_OES_geometry_shader)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OVR/multiview.txt","GL_OVR_multiview")
cmd void glFramebufferTextureMultiviewOVR(GLenum target,
GLenum attachment,
TextureId texture,
GLint level,
GLint baseViewIndex,
GLsizei numViews) {
requiresExtension(GL_OVR_multiview)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/fence.txt","GL_NV_fence")
cmd void glGenFencesNV(GLsizei n, GLuint* fences) {
requiresExtension(GL_NV_fence)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd GLuint glGenPathsNV(GLsizei range) {
requiresExtension(GL_NV_path_rendering)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/AMD/performance_monitor.txt","GL_AMD_performance_monitor")
cmd void glGenPerfMonitorsAMD(GLsizei n, GLuint* monitors) {
requiresExtension(GL_AMD_performance_monitor)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glGenProgramPipelinesEXT(GLsizei n, PipelineId* pipelines) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_disjoint_timer_query.txt","GL_EXT_disjoint_timer_query")
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_occlusion_query_boolean.txt","GL_EXT_occlusion_query_boolean")
cmd void glGenQueriesEXT(GLsizei count, QueryId* queries) {
requiresExtension(GL_EXT_disjoint_timer_query)
requiresExtension(GL_EXT_occlusion_query_boolean)
// TODO: Multiple extensions
q := queries[0:count]
ctx := GetContext()
for i in (0 .. count) {
id := as!QueryId(?)
ctx.Instances.Queries[id] = new!Query()
q[i] = id
}
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_vertex_array_object.txt","GL_OES_vertex_array_object")
cmd void glGenVertexArraysOES(GLsizei count, VertexArrayId* arrays) {
requiresExtension(GL_OES_vertex_array_object)
a := arrays[0:count]
ctx := GetContext()
for i in (0 .. count) {
id := as!VertexArrayId(?)
ctx.Instances.VertexArrays[id] = new!VertexArray()
a[i] = id
}
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_mapbuffer.txt","GL_OES_mapbuffer")
cmd void glGetBufferPointervOES(GLenum target, GLenum pname, void** params) {
requiresExtension(GL_OES_mapbuffer)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_driver_control.txt","GL_QCOM_driver_control")
cmd void glGetDriverControlStringQCOM(GLuint driverControl,
GLsizei bufSize,
GLsizei* length,
GLchar* driverControlString) {
requiresExtension(GL_QCOM_driver_control)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_driver_control.txt","GL_QCOM_driver_control")
cmd void glGetDriverControlsQCOM(GLint* num, GLsizei size, GLuint* driverControls) {
requiresExtension(GL_QCOM_driver_control)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/fence.txt","GL_NV_fence")
cmd void glGetFenceivNV(GLuint fence, GLenum pname, GLint* params) {
requiresExtension(GL_NV_fence)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/INTEL/performance_query.txt","GL_INTEL_performance_query")
cmd void glGetFirstPerfQueryIdINTEL(GLuint* queryId) {
requiresExtension(GL_INTEL_performance_query)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_viewport_array.txt","GL_NV_viewport_array")
cmd void glGetFloati_vNV(GLenum target, GLuint index, GLfloat* data) {
requiresExtension(GL_NV_viewport_array)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_robustness.txt","GL_EXT_robustness")
cmd GLenum glGetGraphicsResetStatusEXT() {
requiresExtension(GL_EXT_robustness)
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/KHR/robustness.txt","GL_KHR_robustness")
cmd GLenum glGetGraphicsResetStatusKHR() {
requiresExtension(GL_KHR_robustness)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd GLuint64 glGetImageHandleNV(TextureId texture,
GLint level,
GLboolean layered,
GLint layer,
GLenum format) {
requiresExtension(GL_NV_bindless_texture)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/APPLE/APPLE_sync.txt","GL_APPLE_sync")
cmd void glGetInteger64vAPPLE(GLenum pname, GLint64* params) {
requiresExtension(GL_APPLE_sync)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_multiview_draw_buffers.txt","GL_EXT_multiview_draw_buffers")
cmd void glGetIntegeri_vEXT(GLenum target, GLuint index, GLint* data) {
requiresExtension(GL_EXT_multiview_draw_buffers)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/internalformat_sample_query.txt","GL_NV_internalformat_sample_query")
cmd void glGetInternalformatSampleivNV(GLenum target,
GLenum internalformat,
GLsizei samples,
GLenum pname,
GLsizei bufSize,
GLint* params) {
requiresExtension(GL_NV_internalformat_sample_query)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/INTEL/performance_query.txt","GL_INTEL_performance_query")
cmd void glGetNextPerfQueryIdINTEL(GLuint queryId, GLuint* nextQueryId) {
requiresExtension(GL_INTEL_performance_query)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_debug_label.txt","GL_EXT_debug_label")
cmd void glGetObjectLabelEXT(GLenum type,
GLuint object,
GLsizei bufSize,
GLsizei* length,
GLchar* label) {
requiresExtension(GL_EXT_debug_label)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glGetPathCommandsNV(GLuint path, GLubyte* commands) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glGetPathCoordsNV(GLuint path, GLfloat* coords) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glGetPathDashArrayNV(GLuint path, GLfloat* dashArray) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd GLfloat glGetPathLengthNV(GLuint path, GLsizei startSegment, GLsizei numSegments) {
requiresExtension(GL_NV_path_rendering)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glGetPathMetricRangeNV(GLbitfield metricQueryMask,
GLuint firstPathName,
GLsizei numPaths,
GLsizei stride,
GLfloat* metrics) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glGetPathMetricsNV(GLbitfield metricQueryMask,
GLsizei numPaths,
GLenum pathNameType,
const void* paths,
GLuint pathBase,
GLsizei stride,
GLfloat* metrics) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glGetPathParameterfvNV(GLuint path, GLenum pname, GLfloat* value) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glGetPathParameterivNV(GLuint path, GLenum pname, GLint* value) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glGetPathSpacingNV(GLenum pathListMode,
GLsizei numPaths,
GLenum pathNameType,
const void* paths,
GLuint pathBase,
GLfloat advanceScale,
GLfloat kerningScale,
GLenum transformType,
GLfloat* returnedSpacing) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/INTEL/performance_query.txt","GL_INTEL_performance_query")
cmd void glGetPerfCounterInfoINTEL(GLuint queryId,
GLuint counterId,
GLuint counterNameLength,
GLchar* counterName,
GLuint counterDescLength,
GLchar* counterDesc,
GLuint* counterOffset,
GLuint* counterDataSize,
GLuint* counterTypeEnum,
GLuint* counterDataTypeEnum,
GLuint64* rawCounterMaxValue) {
requiresExtension(GL_INTEL_performance_query)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/AMD/performance_monitor.txt","GL_AMD_performance_monitor")
cmd void glGetPerfMonitorCounterDataAMD(GLuint monitor,
GLenum pname,
GLsizei dataSize,
GLuint* data,
GLint* bytesWritten) {
requiresExtension(GL_AMD_performance_monitor)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/AMD/performance_monitor.txt","GL_AMD_performance_monitor")
cmd void glGetPerfMonitorCounterInfoAMD(GLuint group, GLuint counter, GLenum pname, void* data) {
requiresExtension(GL_AMD_performance_monitor)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/AMD/performance_monitor.txt","GL_AMD_performance_monitor")
cmd void glGetPerfMonitorCounterStringAMD(GLuint group,
GLuint counter,
GLsizei bufSize,
GLsizei* length,
GLchar* counterString) {
requiresExtension(GL_AMD_performance_monitor)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/AMD/performance_monitor.txt","GL_AMD_performance_monitor")
cmd void glGetPerfMonitorCountersAMD(GLuint group,
GLint* numCounters,
GLint* maxActiveCounters,
GLsizei counterSize,
GLuint* counters) {
requiresExtension(GL_AMD_performance_monitor)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/AMD/performance_monitor.txt","GL_AMD_performance_monitor")
cmd void glGetPerfMonitorGroupStringAMD(GLuint group,
GLsizei bufSize,
GLsizei* length,
GLchar* groupString) {
requiresExtension(GL_AMD_performance_monitor)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/AMD/performance_monitor.txt","GL_AMD_performance_monitor")
cmd void glGetPerfMonitorGroupsAMD(GLint* numGroups, GLsizei groupsSize, GLuint* groups) {
requiresExtension(GL_AMD_performance_monitor)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/INTEL/performance_query.txt","GL_INTEL_performance_query")
cmd void glGetPerfQueryDataINTEL(GLuint queryHandle,
GLuint flag,
GLsizei dataSize,
GLvoid* data,
GLuint* bytesWritten) {
requiresExtension(GL_INTEL_performance_query)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/INTEL/performance_query.txt","GL_INTEL_performance_query")
cmd void glGetPerfQueryIdByNameINTEL(GLchar* queryName, GLuint* queryId) {
requiresExtension(GL_INTEL_performance_query)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/INTEL/performance_query.txt","GL_INTEL_performance_query")
cmd void glGetPerfQueryInfoINTEL(GLuint queryId,
GLuint queryNameLength,
GLchar* queryName,
GLuint* dataSize,
GLuint* noCounters,
GLuint* noInstances,
GLuint* capsMask) {
requiresExtension(GL_INTEL_performance_query)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_get_program_binary.txt","GL_OES_get_program_binary")
cmd void glGetProgramBinaryOES(ProgramId program,
GLsizei buffer_size,
GLsizei* bytes_written,
GLenum* binary_format,
void* binary) {
requiresExtension(GL_OES_get_program_binary)
l := as!GLsizei(?)
bytes_written[0] = l
binary_format[0] = ?
write(binary[0:l])
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glGetProgramPipelineInfoLogEXT(PipelineId pipeline,
GLsizei bufSize,
GLsizei* length,
GLchar* infoLog) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glGetProgramPipelineivEXT(PipelineId pipeline, GLenum pname, GLint* params) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glGetProgramResourcefvNV(ProgramId program,
GLenum programInterface,
GLuint index,
GLsizei propCount,
const GLenum* props,
GLsizei bufSize,
GLsizei* length,
GLfloat* params) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_disjoint_timer_query.txt","GL_EXT_disjoint_timer_query")
cmd void glGetQueryObjecti64vEXT(QueryId query, GLenum parameter, GLint64* value) {
requiresExtension(GL_EXT_disjoint_timer_query)
value[0] = ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_disjoint_timer_query.txt","GL_EXT_disjoint_timer_query")
cmd void glGetQueryObjectivEXT(QueryId query, GLenum parameter, GLint* value) {
requiresExtension(GL_EXT_disjoint_timer_query)
value[0] = ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_disjoint_timer_query.txt","GL_EXT_disjoint_timer_query")
cmd void glGetQueryObjectui64vEXT(QueryId query, GLenum parameter, GLuint64* value) {
requiresExtension(GL_EXT_disjoint_timer_query)
value[0] = ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_disjoint_timer_query.txt","GL_EXT_disjoint_timer_query")
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_occlusion_query_boolean.txt","GL_EXT_occlusion_query_boolean")
cmd void glGetQueryObjectuivEXT(QueryId query, GLenum parameter, GLuint* value) {
requiresExtension(GL_EXT_disjoint_timer_query)
requiresExtension(GL_EXT_occlusion_query_boolean)
// TODO: Multiple extensions
value[0] = ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_disjoint_timer_query.txt","GL_EXT_disjoint_timer_query")
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_occlusion_query_boolean.txt","GL_EXT_occlusion_query_boolean")
cmd void glGetQueryivEXT(GLenum target, GLenum parameter, GLint* value) {
requiresExtension(GL_EXT_disjoint_timer_query)
requiresExtension(GL_EXT_occlusion_query_boolean)
// TODO: Multiple extensions
value[0] = ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_border_clamp.txt","GL_OES_texture_border_clamp")
cmd void glGetSamplerParameterIivOES(SamplerId sampler, GLenum pname, GLint* params) {
requiresExtension(GL_OES_texture_border_clamp)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_border_clamp.txt","GL_OES_texture_border_clamp")
cmd void glGetSamplerParameterIuivOES(SamplerId sampler, GLenum pname, GLuint* params) {
requiresExtension(GL_OES_texture_border_clamp)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/APPLE/APPLE_sync.txt","GL_APPLE_sync")
cmd void glGetSyncivAPPLE(GLsync sync,
GLenum pname,
GLsizei bufSize,
GLsizei* length,
GLint* values) {
requiresExtension(GL_APPLE_sync)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_border_clamp.txt","GL_OES_texture_border_clamp")
cmd void glGetTexParameterIivOES(GLenum target, GLenum pname, GLint* params) {
requiresExtension(GL_OES_texture_border_clamp)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_border_clamp.txt","GL_OES_texture_border_clamp")
cmd void glGetTexParameterIuivOES(GLenum target, GLenum pname, GLuint* params) {
requiresExtension(GL_OES_texture_border_clamp)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd GLuint64 glGetTextureHandleNV(TextureId texture) {
requiresExtension(GL_NV_bindless_texture)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd GLuint64 glGetTextureSamplerHandleNV(TextureId texture, SamplerId sampler) {
requiresExtension(GL_NV_bindless_texture)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/ANGLE/ANGLE_translated_shader_source.txt","GL_ANGLE_translated_shader_source")
cmd void glGetTranslatedShaderSourceANGLE(ShaderId shader,
GLsizei bufsize,
GLsizei* length,
GLchar* source) {
requiresExtension(GL_ANGLE_translated_shader_source)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_robustness.txt","GL_EXT_robustness")
cmd void glGetnUniformfvEXT(ProgramId program,
UniformLocation location,
GLsizei bufSize,
GLfloat* params) {
requiresExtension(GL_EXT_robustness)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/KHR/robustness.txt","GL_KHR_robustness")
cmd void glGetnUniformfvKHR(ProgramId program,
UniformLocation location,
GLsizei bufSize,
GLfloat* params) {
requiresExtension(GL_KHR_robustness)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_robustness.txt","GL_EXT_robustness")
cmd void glGetnUniformivEXT(ProgramId program,
UniformLocation location,
GLsizei bufSize,
GLint* params) {
requiresExtension(GL_EXT_robustness)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/KHR/robustness.txt","GL_KHR_robustness")
cmd void glGetnUniformivKHR(ProgramId program,
UniformLocation location,
GLsizei bufSize,
GLint* params) {
requiresExtension(GL_KHR_robustness)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/KHR/robustness.txt","GL_KHR_robustness")
cmd void glGetnUniformuivKHR(ProgramId program,
UniformLocation location,
GLsizei bufSize,
GLuint* params) {
requiresExtension(GL_KHR_robustness)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_debug_marker.txt","GL_EXT_debug_marker")
cmd void glInsertEventMarkerEXT(GLsizei length, const GLchar* marker) {
requiresExtension(GL_EXT_debug_marker)
if length > 0 {
read(marker[0:length])
} else {
// TODO: Remove the extra cast.
_ = as!string(as!char*(marker))
}
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glInterpolatePathsNV(GLuint resultPath, GLuint pathA, GLuint pathB, GLfloat weight) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_draw_buffers_indexed.txt","GL_OES_draw_buffers_indexed")
cmd GLboolean glIsEnablediOES(GLenum target, GLuint index) {
requiresExtension(GL_OES_draw_buffers_indexed)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_viewport_array.txt","GL_NV_viewport_array")
cmd GLboolean glIsEnablediNV(GLenum target, GLuint index) {
requiresExtension(GL_NV_viewport_array)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/fence.txt","GL_NV_fence")
cmd GLboolean glIsFenceNV(GLuint fence) {
requiresExtension(GL_NV_fence)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd GLboolean glIsImageHandleResidentNV(GLuint64 handle) {
requiresExtension(GL_NV_bindless_texture)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd GLboolean glIsPathNV(GLuint path) {
requiresExtension(GL_NV_path_rendering)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd GLboolean glIsPointInFillPathNV(GLuint path, GLuint mask, GLfloat x, GLfloat y) {
requiresExtension(GL_NV_path_rendering)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd GLboolean glIsPointInStrokePathNV(GLuint path, GLfloat x, GLfloat y) {
requiresExtension(GL_NV_path_rendering)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd GLboolean glIsProgramPipelineEXT(PipelineId pipeline) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_disjoint_timer_query.txt","GL_EXT_disjoint_timer_query")
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_occlusion_query_boolean.txt","GL_EXT_occlusion_query_boolean")
cmd GLboolean glIsQueryEXT(QueryId query) {
requiresExtension(GL_EXT_disjoint_timer_query)
requiresExtension(GL_EXT_occlusion_query_boolean)
// TODO: Multiple extensions
ctx := GetContext()
return as!GLboolean(query in ctx.Instances.Queries)
}
@Doc("https://www.khronos.org/registry/gles/extensions/APPLE/APPLE_sync.txt","GL_APPLE_sync")
cmd GLboolean glIsSyncAPPLE(GLsync sync) {
requiresExtension(GL_APPLE_sync)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd GLboolean glIsTextureHandleResidentNV(GLuint64 handle) {
requiresExtension(GL_NV_bindless_texture)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_vertex_array_object.txt","GL_OES_vertex_array_object")
cmd GLboolean glIsVertexArrayOES(VertexArrayId array) {
requiresExtension(GL_OES_vertex_array_object)
ctx := GetContext()
return as!GLboolean(array in ctx.Instances.VertexArrays)
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_debug_label.txt","GL_EXT_debug_label")
cmd void glLabelObjectEXT(GLenum type, GLuint object, GLsizei length, const GLchar* label) {
requiresExtension(GL_EXT_debug_label)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd void glMakeImageHandleNonResidentNV(GLuint64 handle) {
requiresExtension(GL_NV_bindless_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd void glMakeImageHandleResidentNV(GLuint64 handle, GLenum access) {
requiresExtension(GL_NV_bindless_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd void glMakeTextureHandleNonResidentNV(GLuint64 handle) {
requiresExtension(GL_NV_bindless_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd void glMakeTextureHandleResidentNV(GLuint64 handle) {
requiresExtension(GL_NV_bindless_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_mapbuffer.txt","GL_OES_mapbuffer")
cmd void* glMapBufferOES(GLenum target, GLenum access) {
requiresExtension(GL_OES_mapbuffer)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_map_buffer_range.txt","GL_EXT_map_buffer_range")
cmd void* glMapBufferRangeEXT(GLenum target,
GLintptr offset,
GLsizeiptr length,
GLbitfield access) {
requiresExtension(GL_EXT_map_buffer_range)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glMatrixLoad3x2fNV(GLenum matrixMode, const GLfloat* m) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glMatrixLoad3x3fNV(GLenum matrixMode, const GLfloat* m) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glMatrixLoadTranspose3x3fNV(GLenum matrixMode, const GLfloat* m) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glMatrixMult3x2fNV(GLenum matrixMode, const GLfloat* m) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glMatrixMult3x3fNV(GLenum matrixMode, const GLfloat* m) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glMatrixMultTranspose3x3fNV(GLenum matrixMode, const GLfloat* m) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/multi_draw_arrays.txt","GL_EXT_multi_draw_arrays")
cmd void glMultiDrawArraysEXT(GLenum mode,
const GLint* first,
const GLsizei* count,
GLsizei primcount) {
requiresExtension(GL_EXT_multi_draw_arrays)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_multi_draw_indirect.txt","GL_EXT_multi_draw_indirect")
cmd void glMultiDrawArraysIndirectEXT(GLenum mode,
const void* indirect,
GLsizei drawcount,
GLsizei stride) {
requiresExtension(GL_EXT_multi_draw_indirect)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_draw_elements_base_vertex.txt","GL_EXT_draw_elements_base_vertex")
cmd void glMultiDrawElementsBaseVertexEXT(GLenum mode,
const GLsizei* count,
GLenum type,
const void* const* indices,
GLsizei primcount,
const GLint* basevertex) {
requiresExtension(GL_EXT_draw_elements_base_vertex)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_draw_elements_base_vertex.txt","GL_OES_draw_elements_base_vertex")
cmd void glMultiDrawElementsBaseVertexOES(GLenum mode,
const GLsizei* count,
GLenum type,
const void* const* indices,
GLsizei primcount,
const GLint* basevertex) {
requiresExtension(GL_OES_draw_elements_base_vertex)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/multi_draw_arrays.txt","GL_EXT_multi_draw_arrays")
cmd void glMultiDrawElementsEXT(GLenum mode,
const GLsizei* count,
GLenum type,
const void* const* indices,
GLsizei primcount) {
requiresExtension(GL_EXT_multi_draw_arrays)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_multi_draw_indirect.txt","GL_EXT_multi_draw_indirect")
cmd void glMultiDrawElementsIndirectEXT(GLenum mode,
GLenum type,
const void* indirect,
GLsizei drawcount,
GLsizei stride) {
requiresExtension(GL_EXT_multi_draw_indirect)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_tessellation_shader.txt","GL_OES_tessellation_shader")
cmd void glPatchParameteriOES(GLenum pname, GLint value) {
requiresExtension(GL_OES_tessellation_shader)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathCommandsNV(GLuint path,
GLsizei numCommands,
const GLubyte* commands,
GLsizei numCoords,
GLenum coordType,
const void* coords) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathCoordsNV(GLuint path, GLsizei numCoords, GLenum coordType, const void* coords) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathCoverDepthFuncNV(GLenum func) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathDashArrayNV(GLuint path, GLsizei dashCount, const GLfloat* dashArray) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd GLenum glPathGlyphIndexArrayNV(GLuint firstPathName,
GLenum fontTarget,
const void* fontName,
GLbitfield fontStyle,
GLuint firstGlyphIndex,
GLsizei numGlyphs,
GLuint pathParameterTemplate,
GLfloat emScale) {
requiresExtension(GL_NV_path_rendering)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd GLenum glPathGlyphIndexRangeNV(GLenum fontTarget,
const void* fontName,
GLbitfield fontStyle,
GLuint pathParameterTemplate,
GLfloat emScale,
GLuint baseAndCount) {
requiresExtension(GL_NV_path_rendering)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathGlyphRangeNV(GLuint firstPathName,
GLenum fontTarget,
const void* fontName,
GLbitfield fontStyle,
GLuint firstGlyph,
GLsizei numGlyphs,
GLenum handleMissingGlyphs,
GLuint pathParameterTemplate,
GLfloat emScale) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathGlyphsNV(GLuint firstPathName,
GLenum fontTarget,
const void* fontName,
GLbitfield fontStyle,
GLsizei numGlyphs,
GLenum type,
const void* charcodes,
GLenum handleMissingGlyphs,
GLuint pathParameterTemplate,
GLfloat emScale) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd GLenum glPathMemoryGlyphIndexArrayNV(GLuint firstPathName,
GLenum fontTarget,
GLsizeiptr fontSize,
const void* fontData,
GLsizei faceIndex,
GLuint firstGlyphIndex,
GLsizei numGlyphs,
GLuint pathParameterTemplate,
GLfloat emScale) {
requiresExtension(GL_NV_path_rendering)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathParameterfNV(GLuint path, GLenum pname, GLfloat value) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathParameterfvNV(GLuint path, GLenum pname, const GLfloat* value) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathParameteriNV(GLuint path, GLenum pname, GLint value) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathParameterivNV(GLuint path, GLenum pname, const GLint* value) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathStencilDepthOffsetNV(GLfloat factor, GLfloat units) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathStencilFuncNV(GLenum func, GLint ref, GLuint mask) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathStringNV(GLuint path, GLenum format, GLsizei length, const void* pathString) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathSubCommandsNV(GLuint path,
GLsizei commandStart,
GLsizei commandsToDelete,
GLsizei numCommands,
const GLubyte* commands,
GLsizei numCoords,
GLenum coordType,
const void* coords) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glPathSubCoordsNV(GLuint path,
GLsizei coordStart,
GLsizei numCoords,
GLenum coordType,
const void* coords) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd GLboolean glPointAlongPathNV(GLuint path,
GLsizei startSegment,
GLsizei numSegments,
GLfloat distance,
GLfloat* x,
GLfloat* y,
GLfloat* tangentX,
GLfloat* tangentY) {
requiresExtension(GL_NV_path_rendering)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_polygon_mode.txt","GL_NV_polygon_mode")
cmd void glPolygonModeNV(GLenum face, GLenum mode) {
requiresExtension(GL_NV_polygon_mode)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_debug_marker.txt","GL_EXT_debug_marker")
cmd void glPopGroupMarkerEXT() {
requiresExtension(GL_EXT_debug_marker)
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_primitive_bounding_box.txt","GL_OES_primitive_bounding_box")
cmd void glPrimitiveBoundingBoxOES(GLfloat minX,
GLfloat minY,
GLfloat minZ,
GLfloat minW,
GLfloat maxX,
GLfloat maxY,
GLfloat maxZ,
GLfloat maxW) {
requiresExtension(GL_OES_primitive_bounding_box)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_get_program_binary.txt","GL_OES_get_program_binary")
cmd void glProgramBinaryOES(ProgramId program,
GLenum binary_format,
const void* binary,
GLint binary_size) {
requiresExtension(GL_OES_get_program_binary)
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramParameteriEXT(ProgramId program, GLenum pname, GLint value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glProgramPathFragmentInputGenNV(ProgramId program,
GLint location,
GLenum genMode,
GLint components,
const GLfloat* coeffs) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform1fEXT(ProgramId program, UniformLocation location, GLfloat v0) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform1fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform1iEXT(ProgramId program, UniformLocation location, GLint v0) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform1ivEXT(ProgramId program,
UniformLocation location,
GLsizei count,
const GLint* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform1uiEXT(ProgramId program, UniformLocation location, GLuint v0) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform1uivEXT(ProgramId program,
UniformLocation location,
GLsizei count,
const GLuint* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform2fEXT(ProgramId program,
UniformLocation location,
GLfloat v0,
GLfloat v1) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform2fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform2iEXT(ProgramId program, UniformLocation location, GLint v0, GLint v1) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform2ivEXT(ProgramId program,
UniformLocation location,
GLsizei count,
const GLint* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform2uiEXT(ProgramId program, UniformLocation location, GLuint v0, GLuint v1) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform2uivEXT(ProgramId program,
UniformLocation location,
GLsizei count,
const GLuint* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform3fEXT(ProgramId program,
UniformLocation location,
GLfloat v0,
GLfloat v1,
GLfloat v2) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform3fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform3iEXT(ProgramId program,
UniformLocation location,
GLint v0,
GLint v1,
GLint v2) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform3ivEXT(ProgramId program,
UniformLocation location,
GLsizei count,
const GLint* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform3uiEXT(ProgramId program,
UniformLocation location,
GLuint v0,
GLuint v1,
GLuint v2) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform3uivEXT(ProgramId program,
UniformLocation location,
GLsizei count,
const GLuint* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform4fEXT(ProgramId program,
UniformLocation location,
GLfloat v0,
GLfloat v1,
GLfloat v2,
GLfloat v3) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform4fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform4iEXT(ProgramId program,
UniformLocation location,
GLint v0,
GLint v1,
GLint v2,
GLint v3) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform4ivEXT(ProgramId program,
UniformLocation location,
GLsizei count,
const GLint* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform4uiEXT(ProgramId program,
UniformLocation location,
GLuint v0,
GLuint v1,
GLuint v2,
GLuint v3) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniform4uivEXT(ProgramId program,
UniformLocation location,
GLsizei count,
const GLuint* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd void glProgramUniformHandleui64NV(ProgramId program, UniformLocation location, GLuint64 value) {
requiresExtension(GL_NV_bindless_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd void glProgramUniformHandleui64vNV(ProgramId program,
UniformLocation location,
GLsizei count,
const GLuint64* values) {
requiresExtension(GL_NV_bindless_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniformMatrix2fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniformMatrix2x3fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniformMatrix2x4fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniformMatrix3fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniformMatrix3x2fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniformMatrix3x4fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniformMatrix4fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniformMatrix4x2fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glProgramUniformMatrix4x3fvEXT(ProgramId program,
UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_debug_marker.txt","GL_EXT_debug_marker")
cmd void glPushGroupMarkerEXT(GLsizei length, const GLchar* marker) {
requiresExtension(GL_EXT_debug_marker)
if length > 0 {
read(marker[0:length])
} else {
_ = as!string(as!char*(marker))
}
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_disjoint_timer_query.txt","GL_EXT_disjoint_timer_query")
cmd void glQueryCounterEXT(QueryId query, GLenum target) {
requiresExtension(GL_EXT_disjoint_timer_query)
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_multiview_draw_buffers.txt","GL_EXT_multiview_draw_buffers")
cmd void glReadBufferIndexedEXT(GLenum src, GLint index) {
requiresExtension(GL_EXT_multiview_draw_buffers)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_read_buffer.txt","GL_NV_read_buffer")
cmd void glReadBufferNV(GLenum mode) {
requiresExtension(GL_NV_read_buffer)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_robustness.txt","GL_EXT_robustness")
cmd void glReadnPixelsEXT(GLint x,
GLint y,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
GLsizei bufSize,
void* data) {
requiresExtension(GL_EXT_robustness)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/KHR/robustness.txt","GL_KHR_robustness")
cmd void glReadnPixelsKHR(GLint x,
GLint y,
GLsizei width,
GLsizei height,
GLenum format,
GLenum type,
GLsizei bufSize,
void* data) {
requiresExtension(GL_KHR_robustness)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/ANGLE/ANGLE_framebuffer_multisample.txt","GL_ANGLE_framebuffer_multisample")
cmd void glRenderbufferStorageMultisampleANGLE(GLenum target,
GLsizei samples,
GLenum internalformat,
GLsizei width,
GLsizei height) {
requiresExtension(GL_ANGLE_framebuffer_multisample)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/APPLE/APPLE_framebuffer_multisample.txt","GL_APPLE_framebuffer_multisample")
cmd void glRenderbufferStorageMultisampleAPPLE(GLenum target,
GLsizei samples,
GLenum internalformat,
GLsizei width,
GLsizei height) {
requiresExtension(GL_APPLE_framebuffer_multisample)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_multisampled_render_to_texture.txt","GL_EXT_multisampled_render_to_texture")
cmd void glRenderbufferStorageMultisampleEXT(GLenum target,
GLsizei samples,
GLenum internalformat,
GLsizei width,
GLsizei height) {
requiresExtension(GL_EXT_multisampled_render_to_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/IMG/IMG_multisampled_render_to_texture.txt","GL_IMG_multisampled_render_to_texture")
cmd void glRenderbufferStorageMultisampleIMG(GLenum target,
GLsizei samples,
GLenum internalformat,
GLsizei width,
GLsizei height) {
requiresExtension(GL_IMG_multisampled_render_to_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_framebuffer_multisample.txt","GL_NV_framebuffer_multisample")
cmd void glRenderbufferStorageMultisampleNV(GLenum target,
GLsizei samples,
GLenum internalformat,
GLsizei width,
GLsizei height) {
requiresExtension(GL_NV_framebuffer_multisample)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/APPLE/APPLE_framebuffer_multisample.txt","GL_APPLE_framebuffer_multisample")
cmd void glResolveMultisampleFramebufferAPPLE() {
requiresExtension(GL_APPLE_framebuffer_multisample)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_border_clamp.txt","GL_OES_texture_border_clamp")
cmd void glSamplerParameterIivOES(SamplerId sampler, GLenum pname, const GLint* param) {
requiresExtension(GL_OES_texture_border_clamp)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_border_clamp.txt","GL_OES_texture_border_clamp")
cmd void glSamplerParameterIuivOES(SamplerId sampler, GLenum pname, const GLuint* param) {
requiresExtension(GL_OES_texture_border_clamp)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_viewport_array.txt","GL_NV_viewport_array")
cmd void glScissorArrayvNV(GLuint first, GLsizei count, const GLint* v) {
requiresExtension(GL_NV_viewport_array)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_viewport_array.txt","GL_NV_viewport_array")
cmd void glScissorIndexedNV(GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height) {
requiresExtension(GL_NV_viewport_array)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_viewport_array.txt","GL_NV_viewport_array")
cmd void glScissorIndexedvNV(GLuint index, const GLint* v) {
requiresExtension(GL_NV_viewport_array)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/AMD/performance_monitor.txt","GL_AMD_performance_monitor")
cmd void glSelectPerfMonitorCountersAMD(GLuint monitor,
GLboolean enable,
GLuint group,
GLint numCounters,
GLuint* counterList) {
requiresExtension(GL_AMD_performance_monitor)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/fence.txt","GL_NV_fence")
cmd void glSetFenceNV(GLuint fence, GLenum condition) {
requiresExtension(GL_NV_fence)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/QCOM/QCOM_tiled_rendering.txt","GL_QCOM_tiled_rendering")
cmd void glStartTilingQCOM(GLuint x,
GLuint y,
GLuint width,
GLuint height,
GLbitfield preserveMask) {
requiresExtension(GL_QCOM_tiled_rendering)
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glStencilFillPathInstancedNV(GLsizei numPaths,
GLenum pathNameType,
const void* paths,
GLuint pathBase,
GLenum fillMode,
GLuint mask,
GLenum transformType,
const GLfloat* transformValues) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glStencilFillPathNV(GLuint path, GLenum fillMode, GLuint mask) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glStencilStrokePathInstancedNV(GLsizei numPaths,
GLenum pathNameType,
const void* paths,
GLuint pathBase,
GLint reference,
GLuint mask,
GLenum transformType,
const GLfloat* transformValues) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glStencilStrokePathNV(GLuint path, GLint reference, GLuint mask) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glStencilThenCoverFillPathInstancedNV(GLsizei numPaths,
GLenum pathNameType,
const void* paths,
GLuint pathBase,
GLenum fillMode,
GLuint mask,
GLenum coverMode,
GLenum transformType,
const GLfloat* transformValues) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glStencilThenCoverFillPathNV(GLuint path, GLenum fillMode, GLuint mask, GLenum coverMode) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glStencilThenCoverStrokePathInstancedNV(GLsizei numPaths,
GLenum pathNameType,
const void* paths,
GLuint pathBase,
GLint reference,
GLuint mask,
GLenum coverMode,
GLenum transformType,
const GLfloat* transformValues) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glStencilThenCoverStrokePathNV(GLuint path,
GLint reference,
GLuint mask,
GLenum coverMode) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/fence.txt","GL_NV_fence")
cmd GLboolean glTestFenceNV(GLuint fence) {
requiresExtension(GL_NV_fence)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_buffer.txt","GL_OES_texture_buffer")
cmd void glTexBufferOES(GLenum target, GLenum internalformat, BufferId buffer) {
requiresExtension(GL_OES_texture_buffer)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_buffer.txt","GL_OES_texture_buffer")
cmd void glTexBufferRangeOES(GLenum target,
GLenum internalformat,
BufferId buffer,
GLintptr offset,
GLsizeiptr size) {
requiresExtension(GL_OES_texture_buffer)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_3D.txt","GL_OES_texture_3D")
cmd void glTexImage3DOES(GLenum target,
GLint level,
GLenum internalformat,
GLsizei width,
GLsizei height,
GLsizei depth,
GLint border,
GLenum format,
GLenum type,
const void* pixels) {
requiresExtension(GL_OES_texture_3D)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_sparse_texture.txt","GL_EXT_sparse_texture")
cmd void glTexPageCommitmentARB(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLsizei width,
GLsizei height,
GLsizei depth,
GLboolean commit) {
requiresExtension(GL_EXT_sparse_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_border_clamp.txt","GL_OES_texture_border_clamp")
cmd void glTexParameterIivOES(GLenum target, GLenum pname, const GLint* params) {
requiresExtension(GL_OES_texture_border_clamp)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_border_clamp.txt","GL_OES_texture_border_clamp")
cmd void glTexParameterIuivOES(GLenum target, GLenum pname, const GLuint* params) {
requiresExtension(GL_OES_texture_border_clamp)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_texture_storage.txt","GL_EXT_texture_storage")
cmd void glTexStorage1DEXT(GLenum target, GLsizei levels, GLenum format, GLsizei width) {
requiresExtension(GL_EXT_texture_storage)
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_texture_storage.txt","GL_EXT_texture_storage")
cmd void glTexStorage2DEXT(GLenum target,
GLsizei levels,
GLenum format,
GLsizei width,
GLsizei height) {
requiresExtension(GL_EXT_texture_storage)
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_texture_storage.txt","GL_EXT_texture_storage")
cmd void glTexStorage3DEXT(GLenum target,
GLsizei levels,
GLenum format,
GLsizei width,
GLsizei height,
GLsizei depth) {
requiresExtension(GL_EXT_texture_storage)
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_3D.txt","GL_OES_texture_3D")
cmd void glTexSubImage3DOES(GLenum target,
GLint level,
GLint xoffset,
GLint yoffset,
GLint zoffset,
GLsizei width,
GLsizei height,
GLsizei depth,
GLenum format,
GLenum type,
const void* pixels) {
requiresExtension(GL_OES_texture_3D)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_texture_storage.txt","GL_EXT_texture_storage")
cmd void glTextureStorage1DEXT(TextureId texture,
GLenum target,
GLsizei levels,
GLenum format,
GLsizei width) {
requiresExtension(GL_EXT_texture_storage)
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_texture_storage.txt","GL_EXT_texture_storage")
cmd void glTextureStorage2DEXT(TextureId texture,
GLenum target,
GLsizei levels,
GLenum format,
GLsizei width,
GLsizei height) {
requiresExtension(GL_EXT_texture_storage)
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_texture_storage.txt","GL_EXT_texture_storage")
cmd void glTextureStorage3DEXT(TextureId texture,
GLenum target,
GLsizei levels,
GLenum format,
GLsizei width,
GLsizei height,
GLsizei depth) {
requiresExtension(GL_EXT_texture_storage)
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_texture_view.txt","GL_EXT_texture_view")
cmd void glTextureViewEXT(TextureId texture,
GLenum target,
GLuint origtexture,
GLenum internalformat,
GLuint minlevel,
GLuint numlevels,
GLuint minlayer,
GLuint numlayers) {
requiresExtension(GL_EXT_texture_view)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_texture_view.txt","GL_OES_texture_view")
cmd void glTextureViewOES(TextureId texture,
GLenum target,
GLuint origtexture,
GLenum internalformat,
GLuint minlevel,
GLuint numlevels,
GLuint minlayer,
GLuint numlayers) {
requiresExtension(GL_OES_texture_view)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glTransformPathNV(GLuint resultPath,
GLuint srcPath,
GLenum transformType,
const GLfloat* transformValues) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd void glUniformHandleui64NV(UniformLocation location, GLuint64 value) {
requiresExtension(GL_NV_bindless_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/bindless_texture.txt","GL_NV_bindless_texture")
cmd void glUniformHandleui64vNV(UniformLocation location, GLsizei count, const GLuint64* value) {
requiresExtension(GL_NV_bindless_texture)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_non_square_matrices.txt","GL_NV_non_square_matrices")
cmd void glUniformMatrix2x3fvNV(UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_NV_non_square_matrices)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_non_square_matrices.txt","GL_NV_non_square_matrices")
cmd void glUniformMatrix2x4fvNV(UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_NV_non_square_matrices)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_non_square_matrices.txt","GL_NV_non_square_matrices")
cmd void glUniformMatrix3x2fvNV(UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_NV_non_square_matrices)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_non_square_matrices.txt","GL_NV_non_square_matrices")
cmd void glUniformMatrix3x4fvNV(UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_NV_non_square_matrices)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_non_square_matrices.txt","GL_NV_non_square_matrices")
cmd void glUniformMatrix4x2fvNV(UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_NV_non_square_matrices)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_non_square_matrices.txt","GL_NV_non_square_matrices")
cmd void glUniformMatrix4x3fvNV(UniformLocation location,
GLsizei count,
GLboolean transpose,
const GLfloat* value) {
requiresExtension(GL_NV_non_square_matrices)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/OES/OES_mapbuffer.txt","GL_OES_mapbuffer")
cmd GLboolean glUnmapBufferOES(GLenum target) {
requiresExtension(GL_OES_mapbuffer)
// TODO
return ?
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glUseProgramStagesEXT(PipelineId pipeline, GLbitfield stages, ProgramId program) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_separate_shader_objects.txt","GL_EXT_separate_shader_objects")
cmd void glValidateProgramPipelineEXT(PipelineId pipeline) {
requiresExtension(GL_EXT_separate_shader_objects)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/ANGLE/ANGLE_instanced_arrays.txt","GL_ANGLE_instanced_arrays")
cmd void glVertexAttribDivisorANGLE(AttributeLocation index, GLuint divisor) {
requiresExtension(GL_ANGLE_instanced_arrays)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/EXT_instanced_arrays.txt","GL_EXT_instanced_arrays")
cmd void glVertexAttribDivisorEXT(AttributeLocation index, GLuint divisor) {
requiresExtension(GL_EXT_instanced_arrays)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_instanced_arrays.txt","GL_NV_instanced_arrays")
cmd void glVertexAttribDivisorNV(AttributeLocation index, GLuint divisor) {
requiresExtension(GL_NV_instanced_arrays)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_viewport_array.txt","GL_NV_viewport_array")
cmd void glViewportArrayvNV(GLuint first, GLsizei count, const GLfloat* v) {
requiresExtension(GL_NV_viewport_array)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_viewport_array.txt","GL_NV_viewport_array")
cmd void glViewportIndexedfNV(GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h) {
requiresExtension(GL_NV_viewport_array)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/NV_viewport_array.txt","GL_NV_viewport_array")
cmd void glViewportIndexedfvNV(GLuint index, const GLfloat* v) {
requiresExtension(GL_NV_viewport_array)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/APPLE/APPLE_sync.txt","GL_APPLE_sync")
cmd void glWaitSyncAPPLE(GLsync sync, GLbitfield flag, GLuint64 timeout) {
requiresExtension(GL_APPLE_sync)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/path_rendering.txt","GL_NV_path_rendering")
cmd void glWeightPathsNV(GLuint resultPath,
GLsizei numPaths,
const GLuint* paths,
const GLfloat* weights) {
requiresExtension(GL_NV_path_rendering)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/framebuffer_mixed_samples.txt","GL_NV_framebuffer_mixed_samples")
cmd void glCoverageModulationNV(GLenum components) {
requiresExtension(GL_NV_framebuffer_mixed_samples)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/framebuffer_mixed_samples.txt","GL_NV_framebuffer_mixed_samples")
cmd void glCoverageModulationTableNV(GLsizei n, const GLfloat* v) {
requiresExtension(GL_NV_framebuffer_mixed_samples)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/fragment_coverage_to_color.txt","GL_NV_fragment_coverage_to_color")
cmd void glFragmentCoverageColorNV(GLuint color) {
requiresExtension(GL_NV_fragment_coverage_to_color)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/sample_locations.txt","GL_NV_sample_locations")
cmd void glFramebufferSampleLocationsfvNV(GLenum target,
GLuint start,
GLsizei count,
const GLfloat* v) {
requiresExtension(GL_NV_sample_locations)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/framebuffer_mixed_samples.txt","GL_NV_framebuffer_mixed_samples")
cmd void glGetCoverageModulationTableNV(GLsizei bufsize, GLfloat* v) {
requiresExtension(GL_NV_framebuffer_mixed_samples)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/sample_locations.txt","GL_NV_sample_locations")
cmd void glNamedFramebufferSampleLocationsfvNV(FramebufferId framebuffer,
GLuint start,
GLsizei count,
const GLfloat* v) {
requiresExtension(GL_NV_sample_locations)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/raster_multisample.txt","GL_EXT_raster_multisample")
@Doc("https://www.khronos.org/registry/gles/extensions/EXT/texture_filter_minmax.txt","GL_EXT_texture_filter_minmax")
@Doc("https://www.khronos.org/registry/gles/extensions/NV/framebuffer_mixed_samples.txt","GL_NV_framebuffer_mixed_samples")
cmd void glRasterSamplesEXT(GLuint samples, GLboolean fixedsamplelocations) {
requiresExtension(GL_EXT_raster_multisample)
requiresExtension(GL_EXT_texture_filter_minmax)
requiresExtension(GL_NV_framebuffer_mixed_samples)
// TODO: Multiple extensions
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/sample_locations.txt","GL_NV_sample_locations")
cmd void glResolveDepthValuesNV() {
requiresExtension(GL_NV_sample_locations)
// TODO
}
@Doc("https://www.khronos.org/registry/gles/extensions/NV/conservative_raster.txt","GL_NV_conservative_raster")
cmd void glSubpixelPrecisionBiasNV(GLuint xbits, GLuint ybits) {
requiresExtension(GL_NV_conservative_raster)
// TODO
}