paulxstretch/deps/juce/modules/juce_opengl/opengl/juce_gles2.h
essej 25bd5d8adb git subrepo clone --branch=sono6good https://github.com/essej/JUCE.git deps/juce
subrepo:
  subdir:   "deps/juce"
  merged:   "b13f9084e"
upstream:
  origin:   "https://github.com/essej/JUCE.git"
  branch:   "sono6good"
  commit:   "b13f9084e"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"
2022-04-18 17:51:22 -04:00

5271 lines
312 KiB
C++

/*
==============================================================================
This file is part of the JUCE library.
Copyright (c) 2020 - Raw Material Software Limited
JUCE is an open source library subject to commercial or open-source
licensing.
By using JUCE, you agree to the terms of both the JUCE 6 End-User License
Agreement and JUCE Privacy Policy (both effective as of the 16th June 2020).
End User License Agreement: www.juce.com/juce-6-licence
Privacy Policy: www.juce.com/juce-privacy-policy
Or: You may also use this code under the terms of the GPL v3 (see
www.gnu.org/licenses).
JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
DISCLAIMED.
==============================================================================
*/
// This file was generated automatically using data from the opengl-registry
// https://github.com/KhronosGroup/OpenGL-Registry
#pragma once
// IMPORTANT! Include this before any platform gl files.
#if defined (ES1_GL_H_GUARD) || defined (__gl_es20_h_) || defined (__gl_es30_h_)
#error gl.h included before juce_gles2.h
#endif
#if defined (__gltypes_h_)
#error gltypes.h included before juce_gles2.h
#endif
#define ES1_GL_H_GUARD
#define __gl_es20_h_
#define __gl_es30_h_
#include <juce_core/system/juce_CompilerWarnings.h>
JUCE_BEGIN_IGNORE_WARNINGS_GCC_LIKE ("-Wlanguage-extension-token")
#include "juce_khrplatform.h"
typedef unsigned int GLenum;
typedef unsigned char GLboolean;
typedef unsigned int GLbitfield;
typedef void GLvoid;
typedef khronos_int8_t GLbyte;
typedef khronos_uint8_t GLubyte;
typedef khronos_int16_t GLshort;
typedef khronos_uint16_t GLushort;
typedef int GLint;
typedef unsigned int GLuint;
typedef khronos_int32_t GLclampx;
typedef int GLsizei;
typedef khronos_float_t GLfloat;
typedef khronos_float_t GLclampf;
typedef double GLdouble;
typedef double GLclampd;
typedef void *GLeglClientBufferEXT;
typedef void *GLeglImageOES;
typedef char GLchar;
typedef char GLcharARB;
#ifdef __APPLE__
typedef void *GLhandleARB;
#else
typedef unsigned int GLhandleARB;
#endif
typedef khronos_uint16_t GLhalf;
typedef khronos_uint16_t GLhalfARB;
typedef khronos_int32_t GLfixed;
typedef khronos_intptr_t GLintptr;
typedef khronos_intptr_t GLintptrARB;
typedef khronos_ssize_t GLsizeiptr;
typedef khronos_ssize_t GLsizeiptrARB;
typedef khronos_int64_t GLint64;
typedef khronos_int64_t GLint64EXT;
typedef khronos_uint64_t GLuint64;
typedef khronos_uint64_t GLuint64EXT;
typedef struct __GLsync *GLsync;
struct _cl_context;
struct _cl_event;
typedef void ( *GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam);
typedef void ( *GLDEBUGPROCARB)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam);
typedef void ( *GLDEBUGPROCKHR)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam);
typedef void ( *GLDEBUGPROCAMD)(GLuint id,GLenum category,GLenum severity,GLsizei length,const GLchar *message,void *userParam);
typedef unsigned short GLhalfNV;
typedef GLintptr GLvdpauSurfaceNV;
typedef void ( *GLVULKANPROCNV)(void);
JUCE_END_IGNORE_WARNINGS_GCC_LIKE
namespace juce
{
namespace gl
{
#ifndef GL_ES_VERSION_2_0
#define GL_ES_VERSION_2_0 1
enum : GLenum
{
GL_DEPTH_BUFFER_BIT = 0x00000100,
GL_STENCIL_BUFFER_BIT = 0x00000400,
GL_COLOR_BUFFER_BIT = 0x00004000,
GL_FALSE = 0,
GL_TRUE = 1,
GL_POINTS = 0x0000,
GL_LINES = 0x0001,
GL_LINE_LOOP = 0x0002,
GL_LINE_STRIP = 0x0003,
GL_TRIANGLES = 0x0004,
GL_TRIANGLE_STRIP = 0x0005,
GL_TRIANGLE_FAN = 0x0006,
GL_ZERO = 0,
GL_ONE = 1,
GL_SRC_COLOR = 0x0300,
GL_ONE_MINUS_SRC_COLOR = 0x0301,
GL_SRC_ALPHA = 0x0302,
GL_ONE_MINUS_SRC_ALPHA = 0x0303,
GL_DST_ALPHA = 0x0304,
GL_ONE_MINUS_DST_ALPHA = 0x0305,
GL_DST_COLOR = 0x0306,
GL_ONE_MINUS_DST_COLOR = 0x0307,
GL_SRC_ALPHA_SATURATE = 0x0308,
GL_FUNC_ADD = 0x8006,
GL_BLEND_EQUATION = 0x8009,
GL_BLEND_EQUATION_RGB = 0x8009,
GL_BLEND_EQUATION_ALPHA = 0x883D,
GL_FUNC_SUBTRACT = 0x800A,
GL_FUNC_REVERSE_SUBTRACT = 0x800B,
GL_BLEND_DST_RGB = 0x80C8,
GL_BLEND_SRC_RGB = 0x80C9,
GL_BLEND_DST_ALPHA = 0x80CA,
GL_BLEND_SRC_ALPHA = 0x80CB,
GL_CONSTANT_COLOR = 0x8001,
GL_ONE_MINUS_CONSTANT_COLOR = 0x8002,
GL_CONSTANT_ALPHA = 0x8003,
GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004,
GL_BLEND_COLOR = 0x8005,
GL_ARRAY_BUFFER = 0x8892,
GL_ELEMENT_ARRAY_BUFFER = 0x8893,
GL_ARRAY_BUFFER_BINDING = 0x8894,
GL_ELEMENT_ARRAY_BUFFER_BINDING = 0x8895,
GL_STREAM_DRAW = 0x88E0,
GL_STATIC_DRAW = 0x88E4,
GL_DYNAMIC_DRAW = 0x88E8,
GL_BUFFER_SIZE = 0x8764,
GL_BUFFER_USAGE = 0x8765,
GL_CURRENT_VERTEX_ATTRIB = 0x8626,
GL_FRONT = 0x0404,
GL_BACK = 0x0405,
GL_FRONT_AND_BACK = 0x0408,
GL_TEXTURE_2D = 0x0DE1,
GL_CULL_FACE = 0x0B44,
GL_BLEND = 0x0BE2,
GL_DITHER = 0x0BD0,
GL_STENCIL_TEST = 0x0B90,
GL_DEPTH_TEST = 0x0B71,
GL_SCISSOR_TEST = 0x0C11,
GL_POLYGON_OFFSET_FILL = 0x8037,
GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E,
GL_SAMPLE_COVERAGE = 0x80A0,
GL_NO_ERROR = 0,
GL_INVALID_ENUM = 0x0500,
GL_INVALID_VALUE = 0x0501,
GL_INVALID_OPERATION = 0x0502,
GL_OUT_OF_MEMORY = 0x0505,
GL_CW = 0x0900,
GL_CCW = 0x0901,
GL_LINE_WIDTH = 0x0B21,
GL_ALIASED_POINT_SIZE_RANGE = 0x846D,
GL_ALIASED_LINE_WIDTH_RANGE = 0x846E,
GL_CULL_FACE_MODE = 0x0B45,
GL_FRONT_FACE = 0x0B46,
GL_DEPTH_RANGE = 0x0B70,
GL_DEPTH_WRITEMASK = 0x0B72,
GL_DEPTH_CLEAR_VALUE = 0x0B73,
GL_DEPTH_FUNC = 0x0B74,
GL_STENCIL_CLEAR_VALUE = 0x0B91,
GL_STENCIL_FUNC = 0x0B92,
GL_STENCIL_FAIL = 0x0B94,
GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95,
GL_STENCIL_PASS_DEPTH_PASS = 0x0B96,
GL_STENCIL_REF = 0x0B97,
GL_STENCIL_VALUE_MASK = 0x0B93,
GL_STENCIL_WRITEMASK = 0x0B98,
GL_STENCIL_BACK_FUNC = 0x8800,
GL_STENCIL_BACK_FAIL = 0x8801,
GL_STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802,
GL_STENCIL_BACK_PASS_DEPTH_PASS = 0x8803,
GL_STENCIL_BACK_REF = 0x8CA3,
GL_STENCIL_BACK_VALUE_MASK = 0x8CA4,
GL_STENCIL_BACK_WRITEMASK = 0x8CA5,
GL_VIEWPORT = 0x0BA2,
GL_SCISSOR_BOX = 0x0C10,
GL_COLOR_CLEAR_VALUE = 0x0C22,
GL_COLOR_WRITEMASK = 0x0C23,
GL_UNPACK_ALIGNMENT = 0x0CF5,
GL_PACK_ALIGNMENT = 0x0D05,
GL_MAX_TEXTURE_SIZE = 0x0D33,
GL_MAX_VIEWPORT_DIMS = 0x0D3A,
GL_SUBPIXEL_BITS = 0x0D50,
GL_RED_BITS = 0x0D52,
GL_GREEN_BITS = 0x0D53,
GL_BLUE_BITS = 0x0D54,
GL_ALPHA_BITS = 0x0D55,
GL_DEPTH_BITS = 0x0D56,
GL_STENCIL_BITS = 0x0D57,
GL_POLYGON_OFFSET_UNITS = 0x2A00,
GL_POLYGON_OFFSET_FACTOR = 0x8038,
GL_TEXTURE_BINDING_2D = 0x8069,
GL_SAMPLE_BUFFERS = 0x80A8,
GL_SAMPLES = 0x80A9,
GL_SAMPLE_COVERAGE_VALUE = 0x80AA,
GL_SAMPLE_COVERAGE_INVERT = 0x80AB,
GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2,
GL_COMPRESSED_TEXTURE_FORMATS = 0x86A3,
GL_DONT_CARE = 0x1100,
GL_FASTEST = 0x1101,
GL_NICEST = 0x1102,
GL_GENERATE_MIPMAP_HINT = 0x8192,
GL_BYTE = 0x1400,
GL_UNSIGNED_BYTE = 0x1401,
GL_SHORT = 0x1402,
GL_UNSIGNED_SHORT = 0x1403,
GL_INT = 0x1404,
GL_UNSIGNED_INT = 0x1405,
GL_FLOAT = 0x1406,
GL_FIXED = 0x140C,
GL_DEPTH_COMPONENT = 0x1902,
GL_ALPHA = 0x1906,
GL_RGB = 0x1907,
GL_RGBA = 0x1908,
GL_LUMINANCE = 0x1909,
GL_LUMINANCE_ALPHA = 0x190A,
GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033,
GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034,
GL_UNSIGNED_SHORT_5_6_5 = 0x8363,
GL_FRAGMENT_SHADER = 0x8B30,
GL_VERTEX_SHADER = 0x8B31,
GL_MAX_VERTEX_ATTRIBS = 0x8869,
GL_MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB,
GL_MAX_VARYING_VECTORS = 0x8DFC,
GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D,
GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C,
GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872,
GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD,
GL_SHADER_TYPE = 0x8B4F,
GL_DELETE_STATUS = 0x8B80,
GL_LINK_STATUS = 0x8B82,
GL_VALIDATE_STATUS = 0x8B83,
GL_ATTACHED_SHADERS = 0x8B85,
GL_ACTIVE_UNIFORMS = 0x8B86,
GL_ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87,
GL_ACTIVE_ATTRIBUTES = 0x8B89,
GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A,
GL_SHADING_LANGUAGE_VERSION = 0x8B8C,
GL_CURRENT_PROGRAM = 0x8B8D,
GL_NEVER = 0x0200,
GL_LESS = 0x0201,
GL_EQUAL = 0x0202,
GL_LEQUAL = 0x0203,
GL_GREATER = 0x0204,
GL_NOTEQUAL = 0x0205,
GL_GEQUAL = 0x0206,
GL_ALWAYS = 0x0207,
GL_KEEP = 0x1E00,
GL_REPLACE = 0x1E01,
GL_INCR = 0x1E02,
GL_DECR = 0x1E03,
GL_INVERT = 0x150A,
GL_INCR_WRAP = 0x8507,
GL_DECR_WRAP = 0x8508,
GL_VENDOR = 0x1F00,
GL_RENDERER = 0x1F01,
GL_VERSION = 0x1F02,
GL_EXTENSIONS = 0x1F03,
GL_NEAREST = 0x2600,
GL_LINEAR = 0x2601,
GL_NEAREST_MIPMAP_NEAREST = 0x2700,
GL_LINEAR_MIPMAP_NEAREST = 0x2701,
GL_NEAREST_MIPMAP_LINEAR = 0x2702,
GL_LINEAR_MIPMAP_LINEAR = 0x2703,
GL_TEXTURE_MAG_FILTER = 0x2800,
GL_TEXTURE_MIN_FILTER = 0x2801,
GL_TEXTURE_WRAP_S = 0x2802,
GL_TEXTURE_WRAP_T = 0x2803,
GL_TEXTURE = 0x1702,
GL_TEXTURE_CUBE_MAP = 0x8513,
GL_TEXTURE_BINDING_CUBE_MAP = 0x8514,
GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515,
GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516,
GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517,
GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518,
GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519,
GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A,
GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C,
GL_TEXTURE0 = 0x84C0,
GL_TEXTURE1 = 0x84C1,
GL_TEXTURE2 = 0x84C2,
GL_TEXTURE3 = 0x84C3,
GL_TEXTURE4 = 0x84C4,
GL_TEXTURE5 = 0x84C5,
GL_TEXTURE6 = 0x84C6,
GL_TEXTURE7 = 0x84C7,
GL_TEXTURE8 = 0x84C8,
GL_TEXTURE9 = 0x84C9,
GL_TEXTURE10 = 0x84CA,
GL_TEXTURE11 = 0x84CB,
GL_TEXTURE12 = 0x84CC,
GL_TEXTURE13 = 0x84CD,
GL_TEXTURE14 = 0x84CE,
GL_TEXTURE15 = 0x84CF,
GL_TEXTURE16 = 0x84D0,
GL_TEXTURE17 = 0x84D1,
GL_TEXTURE18 = 0x84D2,
GL_TEXTURE19 = 0x84D3,
GL_TEXTURE20 = 0x84D4,
GL_TEXTURE21 = 0x84D5,
GL_TEXTURE22 = 0x84D6,
GL_TEXTURE23 = 0x84D7,
GL_TEXTURE24 = 0x84D8,
GL_TEXTURE25 = 0x84D9,
GL_TEXTURE26 = 0x84DA,
GL_TEXTURE27 = 0x84DB,
GL_TEXTURE28 = 0x84DC,
GL_TEXTURE29 = 0x84DD,
GL_TEXTURE30 = 0x84DE,
GL_TEXTURE31 = 0x84DF,
GL_ACTIVE_TEXTURE = 0x84E0,
GL_REPEAT = 0x2901,
GL_CLAMP_TO_EDGE = 0x812F,
GL_MIRRORED_REPEAT = 0x8370,
GL_FLOAT_VEC2 = 0x8B50,
GL_FLOAT_VEC3 = 0x8B51,
GL_FLOAT_VEC4 = 0x8B52,
GL_INT_VEC2 = 0x8B53,
GL_INT_VEC3 = 0x8B54,
GL_INT_VEC4 = 0x8B55,
GL_BOOL = 0x8B56,
GL_BOOL_VEC2 = 0x8B57,
GL_BOOL_VEC3 = 0x8B58,
GL_BOOL_VEC4 = 0x8B59,
GL_FLOAT_MAT2 = 0x8B5A,
GL_FLOAT_MAT3 = 0x8B5B,
GL_FLOAT_MAT4 = 0x8B5C,
GL_SAMPLER_2D = 0x8B5E,
GL_SAMPLER_CUBE = 0x8B60,
GL_VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622,
GL_VERTEX_ATTRIB_ARRAY_SIZE = 0x8623,
GL_VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624,
GL_VERTEX_ATTRIB_ARRAY_TYPE = 0x8625,
GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A,
GL_VERTEX_ATTRIB_ARRAY_POINTER = 0x8645,
GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F,
GL_IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A,
GL_IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B,
GL_COMPILE_STATUS = 0x8B81,
GL_INFO_LOG_LENGTH = 0x8B84,
GL_SHADER_SOURCE_LENGTH = 0x8B88,
GL_SHADER_COMPILER = 0x8DFA,
GL_SHADER_BINARY_FORMATS = 0x8DF8,
GL_NUM_SHADER_BINARY_FORMATS = 0x8DF9,
GL_LOW_FLOAT = 0x8DF0,
GL_MEDIUM_FLOAT = 0x8DF1,
GL_HIGH_FLOAT = 0x8DF2,
GL_LOW_INT = 0x8DF3,
GL_MEDIUM_INT = 0x8DF4,
GL_HIGH_INT = 0x8DF5,
GL_FRAMEBUFFER = 0x8D40,
GL_RENDERBUFFER = 0x8D41,
GL_RGBA4 = 0x8056,
GL_RGB5_A1 = 0x8057,
GL_RGB565 = 0x8D62,
GL_DEPTH_COMPONENT16 = 0x81A5,
GL_STENCIL_INDEX8 = 0x8D48,
GL_RENDERBUFFER_WIDTH = 0x8D42,
GL_RENDERBUFFER_HEIGHT = 0x8D43,
GL_RENDERBUFFER_INTERNAL_FORMAT = 0x8D44,
GL_RENDERBUFFER_RED_SIZE = 0x8D50,
GL_RENDERBUFFER_GREEN_SIZE = 0x8D51,
GL_RENDERBUFFER_BLUE_SIZE = 0x8D52,
GL_RENDERBUFFER_ALPHA_SIZE = 0x8D53,
GL_RENDERBUFFER_DEPTH_SIZE = 0x8D54,
GL_RENDERBUFFER_STENCIL_SIZE = 0x8D55,
GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0,
GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1,
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2,
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3,
GL_COLOR_ATTACHMENT0 = 0x8CE0,
GL_DEPTH_ATTACHMENT = 0x8D00,
GL_STENCIL_ATTACHMENT = 0x8D20,
GL_NONE = 0,
GL_FRAMEBUFFER_COMPLETE = 0x8CD5,
GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6,
GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7,
GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 0x8CD9,
GL_FRAMEBUFFER_UNSUPPORTED = 0x8CDD,
GL_FRAMEBUFFER_BINDING = 0x8CA6,
GL_RENDERBUFFER_BINDING = 0x8CA7,
GL_MAX_RENDERBUFFER_SIZE = 0x84E8,
GL_INVALID_FRAMEBUFFER_OPERATION = 0x0506,
};
extern void (KHRONOS_APIENTRY* const& glActiveTexture) (GLenum texture);
extern void (KHRONOS_APIENTRY* const& glAttachShader) (GLuint program, GLuint shader);
extern void (KHRONOS_APIENTRY* const& glBindAttribLocation) (GLuint program, GLuint index, const GLchar *name);
extern void (KHRONOS_APIENTRY* const& glBindBuffer) (GLenum target, GLuint buffer);
extern void (KHRONOS_APIENTRY* const& glBindFramebuffer) (GLenum target, GLuint framebuffer);
extern void (KHRONOS_APIENTRY* const& glBindRenderbuffer) (GLenum target, GLuint renderbuffer);
extern void (KHRONOS_APIENTRY* const& glBindTexture) (GLenum target, GLuint texture);
extern void (KHRONOS_APIENTRY* const& glBlendColor) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
extern void (KHRONOS_APIENTRY* const& glBlendEquation) (GLenum mode);
extern void (KHRONOS_APIENTRY* const& glBlendEquationSeparate) (GLenum modeRGB, GLenum modeAlpha);
extern void (KHRONOS_APIENTRY* const& glBlendFunc) (GLenum sfactor, GLenum dfactor);
extern void (KHRONOS_APIENTRY* const& glBlendFuncSeparate) (GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha);
extern void (KHRONOS_APIENTRY* const& glBufferData) (GLenum target, GLsizeiptr size, const void *data, GLenum usage);
extern void (KHRONOS_APIENTRY* const& glBufferSubData) (GLenum target, GLintptr offset, GLsizeiptr size, const void *data);
extern GLenum (KHRONOS_APIENTRY* const& glCheckFramebufferStatus) (GLenum target);
extern void (KHRONOS_APIENTRY* const& glClear) (GLbitfield mask);
extern void (KHRONOS_APIENTRY* const& glClearColor) (GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha);
extern void (KHRONOS_APIENTRY* const& glClearDepthf) (GLfloat d);
extern void (KHRONOS_APIENTRY* const& glClearStencil) (GLint s);
extern void (KHRONOS_APIENTRY* const& glColorMask) (GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha);
extern void (KHRONOS_APIENTRY* const& glCompileShader) (GLuint shader);
extern void (KHRONOS_APIENTRY* const& glCompressedTexImage2D) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data);
extern void (KHRONOS_APIENTRY* const& glCompressedTexSubImage2D) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data);
extern void (KHRONOS_APIENTRY* const& glCopyTexImage2D) (GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border);
extern void (KHRONOS_APIENTRY* const& glCopyTexSubImage2D) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height);
extern GLuint (KHRONOS_APIENTRY* const& glCreateProgram) ();
extern GLuint (KHRONOS_APIENTRY* const& glCreateShader) (GLenum type);
extern void (KHRONOS_APIENTRY* const& glCullFace) (GLenum mode);
extern void (KHRONOS_APIENTRY* const& glDeleteBuffers) (GLsizei n, const GLuint *buffers);
extern void (KHRONOS_APIENTRY* const& glDeleteFramebuffers) (GLsizei n, const GLuint *framebuffers);
extern void (KHRONOS_APIENTRY* const& glDeleteProgram) (GLuint program);
extern void (KHRONOS_APIENTRY* const& glDeleteRenderbuffers) (GLsizei n, const GLuint *renderbuffers);
extern void (KHRONOS_APIENTRY* const& glDeleteShader) (GLuint shader);
extern void (KHRONOS_APIENTRY* const& glDeleteTextures) (GLsizei n, const GLuint *textures);
extern void (KHRONOS_APIENTRY* const& glDepthFunc) (GLenum func);
extern void (KHRONOS_APIENTRY* const& glDepthMask) (GLboolean flag);
extern void (KHRONOS_APIENTRY* const& glDepthRangef) (GLfloat n, GLfloat f);
extern void (KHRONOS_APIENTRY* const& glDetachShader) (GLuint program, GLuint shader);
extern void (KHRONOS_APIENTRY* const& glDisable) (GLenum cap);
extern void (KHRONOS_APIENTRY* const& glDisableVertexAttribArray) (GLuint index);
extern void (KHRONOS_APIENTRY* const& glDrawArrays) (GLenum mode, GLint first, GLsizei count);
extern void (KHRONOS_APIENTRY* const& glDrawElements) (GLenum mode, GLsizei count, GLenum type, const void *indices);
extern void (KHRONOS_APIENTRY* const& glEnable) (GLenum cap);
extern void (KHRONOS_APIENTRY* const& glEnableVertexAttribArray) (GLuint index);
extern void (KHRONOS_APIENTRY* const& glFinish) ();
extern void (KHRONOS_APIENTRY* const& glFlush) ();
extern void (KHRONOS_APIENTRY* const& glFramebufferRenderbuffer) (GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer);
extern void (KHRONOS_APIENTRY* const& glFramebufferTexture2D) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level);
extern void (KHRONOS_APIENTRY* const& glFrontFace) (GLenum mode);
extern void (KHRONOS_APIENTRY* const& glGenBuffers) (GLsizei n, GLuint *buffers);
extern void (KHRONOS_APIENTRY* const& glGenerateMipmap) (GLenum target);
extern void (KHRONOS_APIENTRY* const& glGenFramebuffers) (GLsizei n, GLuint *framebuffers);
extern void (KHRONOS_APIENTRY* const& glGenRenderbuffers) (GLsizei n, GLuint *renderbuffers);
extern void (KHRONOS_APIENTRY* const& glGenTextures) (GLsizei n, GLuint *textures);
extern void (KHRONOS_APIENTRY* const& glGetActiveAttrib) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
extern void (KHRONOS_APIENTRY* const& glGetActiveUniform) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name);
extern void (KHRONOS_APIENTRY* const& glGetAttachedShaders) (GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders);
extern GLint (KHRONOS_APIENTRY* const& glGetAttribLocation) (GLuint program, const GLchar *name);
extern void (KHRONOS_APIENTRY* const& glGetBooleanv) (GLenum pname, GLboolean *data);
extern void (KHRONOS_APIENTRY* const& glGetBufferParameteriv) (GLenum target, GLenum pname, GLint *params);
extern GLenum (KHRONOS_APIENTRY* const& glGetError) ();
extern void (KHRONOS_APIENTRY* const& glGetFloatv) (GLenum pname, GLfloat *data);
extern void (KHRONOS_APIENTRY* const& glGetFramebufferAttachmentParameteriv) (GLenum target, GLenum attachment, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetIntegerv) (GLenum pname, GLint *data);
extern void (KHRONOS_APIENTRY* const& glGetProgramiv) (GLuint program, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetProgramInfoLog) (GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
extern void (KHRONOS_APIENTRY* const& glGetRenderbufferParameteriv) (GLenum target, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetShaderiv) (GLuint shader, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetShaderInfoLog) (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
extern void (KHRONOS_APIENTRY* const& glGetShaderPrecisionFormat) (GLenum shadertype, GLenum precisiontype, GLint *range, GLint *precision);
extern void (KHRONOS_APIENTRY* const& glGetShaderSource) (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
extern const GLubyte * (KHRONOS_APIENTRY* const& glGetString) (GLenum name);
extern void (KHRONOS_APIENTRY* const& glGetTexParameterfv) (GLenum target, GLenum pname, GLfloat *params);
extern void (KHRONOS_APIENTRY* const& glGetTexParameteriv) (GLenum target, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetUniformfv) (GLuint program, GLint location, GLfloat *params);
extern void (KHRONOS_APIENTRY* const& glGetUniformiv) (GLuint program, GLint location, GLint *params);
extern GLint (KHRONOS_APIENTRY* const& glGetUniformLocation) (GLuint program, const GLchar *name);
extern void (KHRONOS_APIENTRY* const& glGetVertexAttribfv) (GLuint index, GLenum pname, GLfloat *params);
extern void (KHRONOS_APIENTRY* const& glGetVertexAttribiv) (GLuint index, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetVertexAttribPointerv) (GLuint index, GLenum pname, void **pointer);
extern void (KHRONOS_APIENTRY* const& glHint) (GLenum target, GLenum mode);
extern GLboolean (KHRONOS_APIENTRY* const& glIsBuffer) (GLuint buffer);
extern GLboolean (KHRONOS_APIENTRY* const& glIsEnabled) (GLenum cap);
extern GLboolean (KHRONOS_APIENTRY* const& glIsFramebuffer) (GLuint framebuffer);
extern GLboolean (KHRONOS_APIENTRY* const& glIsProgram) (GLuint program);
extern GLboolean (KHRONOS_APIENTRY* const& glIsRenderbuffer) (GLuint renderbuffer);
extern GLboolean (KHRONOS_APIENTRY* const& glIsShader) (GLuint shader);
extern GLboolean (KHRONOS_APIENTRY* const& glIsTexture) (GLuint texture);
extern void (KHRONOS_APIENTRY* const& glLineWidth) (GLfloat width);
extern void (KHRONOS_APIENTRY* const& glLinkProgram) (GLuint program);
extern void (KHRONOS_APIENTRY* const& glPixelStorei) (GLenum pname, GLint param);
extern void (KHRONOS_APIENTRY* const& glPolygonOffset) (GLfloat factor, GLfloat units);
extern void (KHRONOS_APIENTRY* const& glReadPixels) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels);
extern void (KHRONOS_APIENTRY* const& glReleaseShaderCompiler) ();
extern void (KHRONOS_APIENTRY* const& glRenderbufferStorage) (GLenum target, GLenum internalformat, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glSampleCoverage) (GLfloat value, GLboolean invert);
extern void (KHRONOS_APIENTRY* const& glScissor) (GLint x, GLint y, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glShaderBinary) (GLsizei count, const GLuint *shaders, GLenum binaryFormat, const void *binary, GLsizei length);
extern void (KHRONOS_APIENTRY* const& glShaderSource) (GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length);
extern void (KHRONOS_APIENTRY* const& glStencilFunc) (GLenum func, GLint ref, GLuint mask);
extern void (KHRONOS_APIENTRY* const& glStencilFuncSeparate) (GLenum face, GLenum func, GLint ref, GLuint mask);
extern void (KHRONOS_APIENTRY* const& glStencilMask) (GLuint mask);
extern void (KHRONOS_APIENTRY* const& glStencilMaskSeparate) (GLenum face, GLuint mask);
extern void (KHRONOS_APIENTRY* const& glStencilOp) (GLenum fail, GLenum zfail, GLenum zpass);
extern void (KHRONOS_APIENTRY* const& glStencilOpSeparate) (GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass);
extern void (KHRONOS_APIENTRY* const& glTexImage2D) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels);
extern void (KHRONOS_APIENTRY* const& glTexParameterf) (GLenum target, GLenum pname, GLfloat param);
extern void (KHRONOS_APIENTRY* const& glTexParameterfv) (GLenum target, GLenum pname, const GLfloat *params);
extern void (KHRONOS_APIENTRY* const& glTexParameteri) (GLenum target, GLenum pname, GLint param);
extern void (KHRONOS_APIENTRY* const& glTexParameteriv) (GLenum target, GLenum pname, const GLint *params);
extern void (KHRONOS_APIENTRY* const& glTexSubImage2D) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels);
extern void (KHRONOS_APIENTRY* const& glUniform1f) (GLint location, GLfloat v0);
extern void (KHRONOS_APIENTRY* const& glUniform1fv) (GLint location, GLsizei count, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniform1i) (GLint location, GLint v0);
extern void (KHRONOS_APIENTRY* const& glUniform1iv) (GLint location, GLsizei count, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glUniform2f) (GLint location, GLfloat v0, GLfloat v1);
extern void (KHRONOS_APIENTRY* const& glUniform2fv) (GLint location, GLsizei count, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniform2i) (GLint location, GLint v0, GLint v1);
extern void (KHRONOS_APIENTRY* const& glUniform2iv) (GLint location, GLsizei count, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glUniform3f) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
extern void (KHRONOS_APIENTRY* const& glUniform3fv) (GLint location, GLsizei count, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniform3i) (GLint location, GLint v0, GLint v1, GLint v2);
extern void (KHRONOS_APIENTRY* const& glUniform3iv) (GLint location, GLsizei count, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glUniform4f) (GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
extern void (KHRONOS_APIENTRY* const& glUniform4fv) (GLint location, GLsizei count, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniform4i) (GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
extern void (KHRONOS_APIENTRY* const& glUniform4iv) (GLint location, GLsizei count, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix2fv) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix3fv) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix4fv) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUseProgram) (GLuint program);
extern void (KHRONOS_APIENTRY* const& glValidateProgram) (GLuint program);
extern void (KHRONOS_APIENTRY* const& glVertexAttrib1f) (GLuint index, GLfloat x);
extern void (KHRONOS_APIENTRY* const& glVertexAttrib1fv) (GLuint index, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glVertexAttrib2f) (GLuint index, GLfloat x, GLfloat y);
extern void (KHRONOS_APIENTRY* const& glVertexAttrib2fv) (GLuint index, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glVertexAttrib3f) (GLuint index, GLfloat x, GLfloat y, GLfloat z);
extern void (KHRONOS_APIENTRY* const& glVertexAttrib3fv) (GLuint index, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glVertexAttrib4f) (GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w);
extern void (KHRONOS_APIENTRY* const& glVertexAttrib4fv) (GLuint index, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glVertexAttribPointer) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer);
extern void (KHRONOS_APIENTRY* const& glViewport) (GLint x, GLint y, GLsizei width, GLsizei height);
#endif
#ifndef GL_ES_VERSION_3_0
#define GL_ES_VERSION_3_0 1
enum : GLenum
{
GL_READ_BUFFER = 0x0C02,
GL_UNPACK_ROW_LENGTH = 0x0CF2,
GL_UNPACK_SKIP_ROWS = 0x0CF3,
GL_UNPACK_SKIP_PIXELS = 0x0CF4,
GL_PACK_ROW_LENGTH = 0x0D02,
GL_PACK_SKIP_ROWS = 0x0D03,
GL_PACK_SKIP_PIXELS = 0x0D04,
GL_COLOR = 0x1800,
GL_DEPTH = 0x1801,
GL_STENCIL = 0x1802,
GL_RED = 0x1903,
GL_RGB8 = 0x8051,
GL_RGBA8 = 0x8058,
GL_RGB10_A2 = 0x8059,
GL_TEXTURE_BINDING_3D = 0x806A,
GL_UNPACK_SKIP_IMAGES = 0x806D,
GL_UNPACK_IMAGE_HEIGHT = 0x806E,
GL_TEXTURE_3D = 0x806F,
GL_TEXTURE_WRAP_R = 0x8072,
GL_MAX_3D_TEXTURE_SIZE = 0x8073,
GL_UNSIGNED_INT_2_10_10_10_REV = 0x8368,
GL_MAX_ELEMENTS_VERTICES = 0x80E8,
GL_MAX_ELEMENTS_INDICES = 0x80E9,
GL_TEXTURE_MIN_LOD = 0x813A,
GL_TEXTURE_MAX_LOD = 0x813B,
GL_TEXTURE_BASE_LEVEL = 0x813C,
GL_TEXTURE_MAX_LEVEL = 0x813D,
GL_MIN = 0x8007,
GL_MAX = 0x8008,
GL_DEPTH_COMPONENT24 = 0x81A6,
GL_MAX_TEXTURE_LOD_BIAS = 0x84FD,
GL_TEXTURE_COMPARE_MODE = 0x884C,
GL_TEXTURE_COMPARE_FUNC = 0x884D,
GL_CURRENT_QUERY = 0x8865,
GL_QUERY_RESULT = 0x8866,
GL_QUERY_RESULT_AVAILABLE = 0x8867,
GL_BUFFER_MAPPED = 0x88BC,
GL_BUFFER_MAP_POINTER = 0x88BD,
GL_STREAM_READ = 0x88E1,
GL_STREAM_COPY = 0x88E2,
GL_STATIC_READ = 0x88E5,
GL_STATIC_COPY = 0x88E6,
GL_DYNAMIC_READ = 0x88E9,
GL_DYNAMIC_COPY = 0x88EA,
GL_MAX_DRAW_BUFFERS = 0x8824,
GL_DRAW_BUFFER0 = 0x8825,
GL_DRAW_BUFFER1 = 0x8826,
GL_DRAW_BUFFER2 = 0x8827,
GL_DRAW_BUFFER3 = 0x8828,
GL_DRAW_BUFFER4 = 0x8829,
GL_DRAW_BUFFER5 = 0x882A,
GL_DRAW_BUFFER6 = 0x882B,
GL_DRAW_BUFFER7 = 0x882C,
GL_DRAW_BUFFER8 = 0x882D,
GL_DRAW_BUFFER9 = 0x882E,
GL_DRAW_BUFFER10 = 0x882F,
GL_DRAW_BUFFER11 = 0x8830,
GL_DRAW_BUFFER12 = 0x8831,
GL_DRAW_BUFFER13 = 0x8832,
GL_DRAW_BUFFER14 = 0x8833,
GL_DRAW_BUFFER15 = 0x8834,
GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49,
GL_MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A,
GL_SAMPLER_3D = 0x8B5F,
GL_SAMPLER_2D_SHADOW = 0x8B62,
GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B,
GL_PIXEL_PACK_BUFFER = 0x88EB,
GL_PIXEL_UNPACK_BUFFER = 0x88EC,
GL_PIXEL_PACK_BUFFER_BINDING = 0x88ED,
GL_PIXEL_UNPACK_BUFFER_BINDING = 0x88EF,
GL_FLOAT_MAT2x3 = 0x8B65,
GL_FLOAT_MAT2x4 = 0x8B66,
GL_FLOAT_MAT3x2 = 0x8B67,
GL_FLOAT_MAT3x4 = 0x8B68,
GL_FLOAT_MAT4x2 = 0x8B69,
GL_FLOAT_MAT4x3 = 0x8B6A,
GL_SRGB = 0x8C40,
GL_SRGB8 = 0x8C41,
GL_SRGB8_ALPHA8 = 0x8C43,
GL_COMPARE_REF_TO_TEXTURE = 0x884E,
GL_MAJOR_VERSION = 0x821B,
GL_MINOR_VERSION = 0x821C,
GL_NUM_EXTENSIONS = 0x821D,
GL_RGBA32F = 0x8814,
GL_RGB32F = 0x8815,
GL_RGBA16F = 0x881A,
GL_RGB16F = 0x881B,
GL_VERTEX_ATTRIB_ARRAY_INTEGER = 0x88FD,
GL_MAX_ARRAY_TEXTURE_LAYERS = 0x88FF,
GL_MIN_PROGRAM_TEXEL_OFFSET = 0x8904,
GL_MAX_PROGRAM_TEXEL_OFFSET = 0x8905,
GL_MAX_VARYING_COMPONENTS = 0x8B4B,
GL_TEXTURE_2D_ARRAY = 0x8C1A,
GL_TEXTURE_BINDING_2D_ARRAY = 0x8C1D,
GL_R11F_G11F_B10F = 0x8C3A,
GL_UNSIGNED_INT_10F_11F_11F_REV = 0x8C3B,
GL_RGB9_E5 = 0x8C3D,
GL_UNSIGNED_INT_5_9_9_9_REV = 0x8C3E,
GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 0x8C76,
GL_TRANSFORM_FEEDBACK_BUFFER_MODE = 0x8C7F,
GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 0x8C80,
GL_TRANSFORM_FEEDBACK_VARYINGS = 0x8C83,
GL_TRANSFORM_FEEDBACK_BUFFER_START = 0x8C84,
GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = 0x8C85,
GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88,
GL_RASTERIZER_DISCARD = 0x8C89,
GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 0x8C8A,
GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 0x8C8B,
GL_INTERLEAVED_ATTRIBS = 0x8C8C,
GL_SEPARATE_ATTRIBS = 0x8C8D,
GL_TRANSFORM_FEEDBACK_BUFFER = 0x8C8E,
GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = 0x8C8F,
GL_RGBA32UI = 0x8D70,
GL_RGB32UI = 0x8D71,
GL_RGBA16UI = 0x8D76,
GL_RGB16UI = 0x8D77,
GL_RGBA8UI = 0x8D7C,
GL_RGB8UI = 0x8D7D,
GL_RGBA32I = 0x8D82,
GL_RGB32I = 0x8D83,
GL_RGBA16I = 0x8D88,
GL_RGB16I = 0x8D89,
GL_RGBA8I = 0x8D8E,
GL_RGB8I = 0x8D8F,
GL_RED_INTEGER = 0x8D94,
GL_RGB_INTEGER = 0x8D98,
GL_RGBA_INTEGER = 0x8D99,
GL_SAMPLER_2D_ARRAY = 0x8DC1,
GL_SAMPLER_2D_ARRAY_SHADOW = 0x8DC4,
GL_SAMPLER_CUBE_SHADOW = 0x8DC5,
GL_UNSIGNED_INT_VEC2 = 0x8DC6,
GL_UNSIGNED_INT_VEC3 = 0x8DC7,
GL_UNSIGNED_INT_VEC4 = 0x8DC8,
GL_INT_SAMPLER_2D = 0x8DCA,
GL_INT_SAMPLER_3D = 0x8DCB,
GL_INT_SAMPLER_CUBE = 0x8DCC,
GL_INT_SAMPLER_2D_ARRAY = 0x8DCF,
GL_UNSIGNED_INT_SAMPLER_2D = 0x8DD2,
GL_UNSIGNED_INT_SAMPLER_3D = 0x8DD3,
GL_UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4,
GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7,
GL_BUFFER_ACCESS_FLAGS = 0x911F,
GL_BUFFER_MAP_LENGTH = 0x9120,
GL_BUFFER_MAP_OFFSET = 0x9121,
GL_DEPTH_COMPONENT32F = 0x8CAC,
GL_DEPTH32F_STENCIL8 = 0x8CAD,
GL_FLOAT_32_UNSIGNED_INT_24_8_REV = 0x8DAD,
GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 0x8210,
GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 0x8211,
GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = 0x8212,
GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 0x8213,
GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 0x8214,
GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 0x8215,
GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 0x8216,
GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 0x8217,
GL_FRAMEBUFFER_DEFAULT = 0x8218,
GL_FRAMEBUFFER_UNDEFINED = 0x8219,
GL_DEPTH_STENCIL_ATTACHMENT = 0x821A,
GL_DEPTH_STENCIL = 0x84F9,
GL_UNSIGNED_INT_24_8 = 0x84FA,
GL_DEPTH24_STENCIL8 = 0x88F0,
GL_UNSIGNED_NORMALIZED = 0x8C17,
GL_DRAW_FRAMEBUFFER_BINDING = 0x8CA6,
GL_READ_FRAMEBUFFER = 0x8CA8,
GL_DRAW_FRAMEBUFFER = 0x8CA9,
GL_READ_FRAMEBUFFER_BINDING = 0x8CAA,
GL_RENDERBUFFER_SAMPLES = 0x8CAB,
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4,
GL_MAX_COLOR_ATTACHMENTS = 0x8CDF,
GL_COLOR_ATTACHMENT1 = 0x8CE1,
GL_COLOR_ATTACHMENT2 = 0x8CE2,
GL_COLOR_ATTACHMENT3 = 0x8CE3,
GL_COLOR_ATTACHMENT4 = 0x8CE4,
GL_COLOR_ATTACHMENT5 = 0x8CE5,
GL_COLOR_ATTACHMENT6 = 0x8CE6,
GL_COLOR_ATTACHMENT7 = 0x8CE7,
GL_COLOR_ATTACHMENT8 = 0x8CE8,
GL_COLOR_ATTACHMENT9 = 0x8CE9,
GL_COLOR_ATTACHMENT10 = 0x8CEA,
GL_COLOR_ATTACHMENT11 = 0x8CEB,
GL_COLOR_ATTACHMENT12 = 0x8CEC,
GL_COLOR_ATTACHMENT13 = 0x8CED,
GL_COLOR_ATTACHMENT14 = 0x8CEE,
GL_COLOR_ATTACHMENT15 = 0x8CEF,
GL_COLOR_ATTACHMENT16 = 0x8CF0,
GL_COLOR_ATTACHMENT17 = 0x8CF1,
GL_COLOR_ATTACHMENT18 = 0x8CF2,
GL_COLOR_ATTACHMENT19 = 0x8CF3,
GL_COLOR_ATTACHMENT20 = 0x8CF4,
GL_COLOR_ATTACHMENT21 = 0x8CF5,
GL_COLOR_ATTACHMENT22 = 0x8CF6,
GL_COLOR_ATTACHMENT23 = 0x8CF7,
GL_COLOR_ATTACHMENT24 = 0x8CF8,
GL_COLOR_ATTACHMENT25 = 0x8CF9,
GL_COLOR_ATTACHMENT26 = 0x8CFA,
GL_COLOR_ATTACHMENT27 = 0x8CFB,
GL_COLOR_ATTACHMENT28 = 0x8CFC,
GL_COLOR_ATTACHMENT29 = 0x8CFD,
GL_COLOR_ATTACHMENT30 = 0x8CFE,
GL_COLOR_ATTACHMENT31 = 0x8CFF,
GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56,
GL_MAX_SAMPLES = 0x8D57,
GL_HALF_FLOAT = 0x140B,
GL_MAP_READ_BIT = 0x0001,
GL_MAP_WRITE_BIT = 0x0002,
GL_MAP_INVALIDATE_RANGE_BIT = 0x0004,
GL_MAP_INVALIDATE_BUFFER_BIT = 0x0008,
GL_MAP_FLUSH_EXPLICIT_BIT = 0x0010,
GL_MAP_UNSYNCHRONIZED_BIT = 0x0020,
GL_RG = 0x8227,
GL_RG_INTEGER = 0x8228,
GL_R8 = 0x8229,
GL_RG8 = 0x822B,
GL_R16F = 0x822D,
GL_R32F = 0x822E,
GL_RG16F = 0x822F,
GL_RG32F = 0x8230,
GL_R8I = 0x8231,
GL_R8UI = 0x8232,
GL_R16I = 0x8233,
GL_R16UI = 0x8234,
GL_R32I = 0x8235,
GL_R32UI = 0x8236,
GL_RG8I = 0x8237,
GL_RG8UI = 0x8238,
GL_RG16I = 0x8239,
GL_RG16UI = 0x823A,
GL_RG32I = 0x823B,
GL_RG32UI = 0x823C,
GL_VERTEX_ARRAY_BINDING = 0x85B5,
GL_R8_SNORM = 0x8F94,
GL_RG8_SNORM = 0x8F95,
GL_RGB8_SNORM = 0x8F96,
GL_RGBA8_SNORM = 0x8F97,
GL_SIGNED_NORMALIZED = 0x8F9C,
GL_PRIMITIVE_RESTART_FIXED_INDEX = 0x8D69,
GL_COPY_READ_BUFFER = 0x8F36,
GL_COPY_WRITE_BUFFER = 0x8F37,
GL_COPY_READ_BUFFER_BINDING = 0x8F36,
GL_COPY_WRITE_BUFFER_BINDING = 0x8F37,
GL_UNIFORM_BUFFER = 0x8A11,
GL_UNIFORM_BUFFER_BINDING = 0x8A28,
GL_UNIFORM_BUFFER_START = 0x8A29,
GL_UNIFORM_BUFFER_SIZE = 0x8A2A,
GL_MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B,
GL_MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D,
GL_MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E,
GL_MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F,
GL_MAX_UNIFORM_BLOCK_SIZE = 0x8A30,
GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31,
GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33,
GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34,
GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 0x8A35,
GL_ACTIVE_UNIFORM_BLOCKS = 0x8A36,
GL_UNIFORM_TYPE = 0x8A37,
GL_UNIFORM_SIZE = 0x8A38,
GL_UNIFORM_NAME_LENGTH = 0x8A39,
GL_UNIFORM_BLOCK_INDEX = 0x8A3A,
GL_UNIFORM_OFFSET = 0x8A3B,
GL_UNIFORM_ARRAY_STRIDE = 0x8A3C,
GL_UNIFORM_MATRIX_STRIDE = 0x8A3D,
GL_UNIFORM_IS_ROW_MAJOR = 0x8A3E,
GL_UNIFORM_BLOCK_BINDING = 0x8A3F,
GL_UNIFORM_BLOCK_DATA_SIZE = 0x8A40,
GL_UNIFORM_BLOCK_NAME_LENGTH = 0x8A41,
GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42,
GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43,
GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44,
GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46,
GL_INVALID_INDEX = 0xFFFFFFFF,
GL_MAX_VERTEX_OUTPUT_COMPONENTS = 0x9122,
GL_MAX_FRAGMENT_INPUT_COMPONENTS = 0x9125,
GL_MAX_SERVER_WAIT_TIMEOUT = 0x9111,
GL_OBJECT_TYPE = 0x9112,
GL_SYNC_CONDITION = 0x9113,
GL_SYNC_STATUS = 0x9114,
GL_SYNC_FLAGS = 0x9115,
GL_SYNC_FENCE = 0x9116,
GL_SYNC_GPU_COMMANDS_COMPLETE = 0x9117,
GL_UNSIGNALED = 0x9118,
GL_SIGNALED = 0x9119,
GL_ALREADY_SIGNALED = 0x911A,
GL_TIMEOUT_EXPIRED = 0x911B,
GL_CONDITION_SATISFIED = 0x911C,
GL_WAIT_FAILED = 0x911D,
GL_SYNC_FLUSH_COMMANDS_BIT = 0x00000001,
};
enum : GLuint64
{
GL_TIMEOUT_IGNORED = 0xFFFFFFFFFFFFFFFF,
};
enum : GLenum
{
GL_VERTEX_ATTRIB_ARRAY_DIVISOR = 0x88FE,
GL_ANY_SAMPLES_PASSED = 0x8C2F,
GL_ANY_SAMPLES_PASSED_CONSERVATIVE = 0x8D6A,
GL_SAMPLER_BINDING = 0x8919,
GL_RGB10_A2UI = 0x906F,
GL_TEXTURE_SWIZZLE_R = 0x8E42,
GL_TEXTURE_SWIZZLE_G = 0x8E43,
GL_TEXTURE_SWIZZLE_B = 0x8E44,
GL_TEXTURE_SWIZZLE_A = 0x8E45,
GL_GREEN = 0x1904,
GL_BLUE = 0x1905,
GL_INT_2_10_10_10_REV = 0x8D9F,
GL_TRANSFORM_FEEDBACK = 0x8E22,
GL_TRANSFORM_FEEDBACK_PAUSED = 0x8E23,
GL_TRANSFORM_FEEDBACK_ACTIVE = 0x8E24,
GL_TRANSFORM_FEEDBACK_BINDING = 0x8E25,
GL_PROGRAM_BINARY_RETRIEVABLE_HINT = 0x8257,
GL_PROGRAM_BINARY_LENGTH = 0x8741,
GL_NUM_PROGRAM_BINARY_FORMATS = 0x87FE,
GL_PROGRAM_BINARY_FORMATS = 0x87FF,
GL_COMPRESSED_R11_EAC = 0x9270,
GL_COMPRESSED_SIGNED_R11_EAC = 0x9271,
GL_COMPRESSED_RG11_EAC = 0x9272,
GL_COMPRESSED_SIGNED_RG11_EAC = 0x9273,
GL_COMPRESSED_RGB8_ETC2 = 0x9274,
GL_COMPRESSED_SRGB8_ETC2 = 0x9275,
GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9276,
GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9277,
GL_COMPRESSED_RGBA8_ETC2_EAC = 0x9278,
GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 0x9279,
GL_TEXTURE_IMMUTABLE_FORMAT = 0x912F,
GL_MAX_ELEMENT_INDEX = 0x8D6B,
GL_NUM_SAMPLE_COUNTS = 0x9380,
GL_TEXTURE_IMMUTABLE_LEVELS = 0x82DF,
};
extern void (KHRONOS_APIENTRY* const& glReadBuffer) (GLenum src);
extern void (KHRONOS_APIENTRY* const& glDrawRangeElements) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices);
extern void (KHRONOS_APIENTRY* const& glTexImage3D) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
extern void (KHRONOS_APIENTRY* const& glTexSubImage3D) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
extern void (KHRONOS_APIENTRY* const& glCopyTexSubImage3D) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glCompressedTexImage3D) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
extern void (KHRONOS_APIENTRY* const& glCompressedTexSubImage3D) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
extern void (KHRONOS_APIENTRY* const& glGenQueries) (GLsizei n, GLuint *ids);
extern void (KHRONOS_APIENTRY* const& glDeleteQueries) (GLsizei n, const GLuint *ids);
extern GLboolean (KHRONOS_APIENTRY* const& glIsQuery) (GLuint id);
extern void (KHRONOS_APIENTRY* const& glBeginQuery) (GLenum target, GLuint id);
extern void (KHRONOS_APIENTRY* const& glEndQuery) (GLenum target);
extern void (KHRONOS_APIENTRY* const& glGetQueryiv) (GLenum target, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetQueryObjectuiv) (GLuint id, GLenum pname, GLuint *params);
extern GLboolean (KHRONOS_APIENTRY* const& glUnmapBuffer) (GLenum target);
extern void (KHRONOS_APIENTRY* const& glGetBufferPointerv) (GLenum target, GLenum pname, void **params);
extern void (KHRONOS_APIENTRY* const& glDrawBuffers) (GLsizei n, const GLenum *bufs);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix2x3fv) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix3x2fv) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix2x4fv) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix4x2fv) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix3x4fv) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix4x3fv) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glBlitFramebuffer) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
extern void (KHRONOS_APIENTRY* const& glRenderbufferStorageMultisample) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glFramebufferTextureLayer) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer);
extern void * (KHRONOS_APIENTRY* const& glMapBufferRange) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
extern void (KHRONOS_APIENTRY* const& glFlushMappedBufferRange) (GLenum target, GLintptr offset, GLsizeiptr length);
extern void (KHRONOS_APIENTRY* const& glBindVertexArray) (GLuint array);
extern void (KHRONOS_APIENTRY* const& glDeleteVertexArrays) (GLsizei n, const GLuint *arrays);
extern void (KHRONOS_APIENTRY* const& glGenVertexArrays) (GLsizei n, GLuint *arrays);
extern GLboolean (KHRONOS_APIENTRY* const& glIsVertexArray) (GLuint array);
extern void (KHRONOS_APIENTRY* const& glGetIntegeri_v) (GLenum target, GLuint index, GLint *data);
extern void (KHRONOS_APIENTRY* const& glBeginTransformFeedback) (GLenum primitiveMode);
extern void (KHRONOS_APIENTRY* const& glEndTransformFeedback) ();
extern void (KHRONOS_APIENTRY* const& glBindBufferRange) (GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size);
extern void (KHRONOS_APIENTRY* const& glBindBufferBase) (GLenum target, GLuint index, GLuint buffer);
extern void (KHRONOS_APIENTRY* const& glTransformFeedbackVaryings) (GLuint program, GLsizei count, const GLchar *const*varyings, GLenum bufferMode);
extern void (KHRONOS_APIENTRY* const& glGetTransformFeedbackVarying) (GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name);
extern void (KHRONOS_APIENTRY* const& glVertexAttribIPointer) (GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer);
extern void (KHRONOS_APIENTRY* const& glGetVertexAttribIiv) (GLuint index, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetVertexAttribIuiv) (GLuint index, GLenum pname, GLuint *params);
extern void (KHRONOS_APIENTRY* const& glVertexAttribI4i) (GLuint index, GLint x, GLint y, GLint z, GLint w);
extern void (KHRONOS_APIENTRY* const& glVertexAttribI4ui) (GLuint index, GLuint x, GLuint y, GLuint z, GLuint w);
extern void (KHRONOS_APIENTRY* const& glVertexAttribI4iv) (GLuint index, const GLint *v);
extern void (KHRONOS_APIENTRY* const& glVertexAttribI4uiv) (GLuint index, const GLuint *v);
extern void (KHRONOS_APIENTRY* const& glGetUniformuiv) (GLuint program, GLint location, GLuint *params);
extern GLint (KHRONOS_APIENTRY* const& glGetFragDataLocation) (GLuint program, const GLchar *name);
extern void (KHRONOS_APIENTRY* const& glUniform1ui) (GLint location, GLuint v0);
extern void (KHRONOS_APIENTRY* const& glUniform2ui) (GLint location, GLuint v0, GLuint v1);
extern void (KHRONOS_APIENTRY* const& glUniform3ui) (GLint location, GLuint v0, GLuint v1, GLuint v2);
extern void (KHRONOS_APIENTRY* const& glUniform4ui) (GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
extern void (KHRONOS_APIENTRY* const& glUniform1uiv) (GLint location, GLsizei count, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glUniform2uiv) (GLint location, GLsizei count, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glUniform3uiv) (GLint location, GLsizei count, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glUniform4uiv) (GLint location, GLsizei count, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glClearBufferiv) (GLenum buffer, GLint drawbuffer, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glClearBufferuiv) (GLenum buffer, GLint drawbuffer, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glClearBufferfv) (GLenum buffer, GLint drawbuffer, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glClearBufferfi) (GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil);
extern const GLubyte * (KHRONOS_APIENTRY* const& glGetStringi) (GLenum name, GLuint index);
extern void (KHRONOS_APIENTRY* const& glCopyBufferSubData) (GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
extern void (KHRONOS_APIENTRY* const& glGetUniformIndices) (GLuint program, GLsizei uniformCount, const GLchar *const*uniformNames, GLuint *uniformIndices);
extern void (KHRONOS_APIENTRY* const& glGetActiveUniformsiv) (GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params);
extern GLuint (KHRONOS_APIENTRY* const& glGetUniformBlockIndex) (GLuint program, const GLchar *uniformBlockName);
extern void (KHRONOS_APIENTRY* const& glGetActiveUniformBlockiv) (GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetActiveUniformBlockName) (GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName);
extern void (KHRONOS_APIENTRY* const& glUniformBlockBinding) (GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding);
extern void (KHRONOS_APIENTRY* const& glDrawArraysInstanced) (GLenum mode, GLint first, GLsizei count, GLsizei instancecount);
extern void (KHRONOS_APIENTRY* const& glDrawElementsInstanced) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount);
extern GLsync (KHRONOS_APIENTRY* const& glFenceSync) (GLenum condition, GLbitfield flags);
extern GLboolean (KHRONOS_APIENTRY* const& glIsSync) (GLsync sync);
extern void (KHRONOS_APIENTRY* const& glDeleteSync) (GLsync sync);
extern GLenum (KHRONOS_APIENTRY* const& glClientWaitSync) (GLsync sync, GLbitfield flags, GLuint64 timeout);
extern void (KHRONOS_APIENTRY* const& glWaitSync) (GLsync sync, GLbitfield flags, GLuint64 timeout);
extern void (KHRONOS_APIENTRY* const& glGetInteger64v) (GLenum pname, GLint64 *data);
extern void (KHRONOS_APIENTRY* const& glGetSynciv) (GLsync sync, GLenum pname, GLsizei count, GLsizei *length, GLint *values);
extern void (KHRONOS_APIENTRY* const& glGetInteger64i_v) (GLenum target, GLuint index, GLint64 *data);
extern void (KHRONOS_APIENTRY* const& glGetBufferParameteri64v) (GLenum target, GLenum pname, GLint64 *params);
extern void (KHRONOS_APIENTRY* const& glGenSamplers) (GLsizei count, GLuint *samplers);
extern void (KHRONOS_APIENTRY* const& glDeleteSamplers) (GLsizei count, const GLuint *samplers);
extern GLboolean (KHRONOS_APIENTRY* const& glIsSampler) (GLuint sampler);
extern void (KHRONOS_APIENTRY* const& glBindSampler) (GLuint unit, GLuint sampler);
extern void (KHRONOS_APIENTRY* const& glSamplerParameteri) (GLuint sampler, GLenum pname, GLint param);
extern void (KHRONOS_APIENTRY* const& glSamplerParameteriv) (GLuint sampler, GLenum pname, const GLint *param);
extern void (KHRONOS_APIENTRY* const& glSamplerParameterf) (GLuint sampler, GLenum pname, GLfloat param);
extern void (KHRONOS_APIENTRY* const& glSamplerParameterfv) (GLuint sampler, GLenum pname, const GLfloat *param);
extern void (KHRONOS_APIENTRY* const& glGetSamplerParameteriv) (GLuint sampler, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetSamplerParameterfv) (GLuint sampler, GLenum pname, GLfloat *params);
extern void (KHRONOS_APIENTRY* const& glVertexAttribDivisor) (GLuint index, GLuint divisor);
extern void (KHRONOS_APIENTRY* const& glBindTransformFeedback) (GLenum target, GLuint id);
extern void (KHRONOS_APIENTRY* const& glDeleteTransformFeedbacks) (GLsizei n, const GLuint *ids);
extern void (KHRONOS_APIENTRY* const& glGenTransformFeedbacks) (GLsizei n, GLuint *ids);
extern GLboolean (KHRONOS_APIENTRY* const& glIsTransformFeedback) (GLuint id);
extern void (KHRONOS_APIENTRY* const& glPauseTransformFeedback) ();
extern void (KHRONOS_APIENTRY* const& glResumeTransformFeedback) ();
extern void (KHRONOS_APIENTRY* const& glGetProgramBinary) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
extern void (KHRONOS_APIENTRY* const& glProgramBinary) (GLuint program, GLenum binaryFormat, const void *binary, GLsizei length);
extern void (KHRONOS_APIENTRY* const& glProgramParameteri) (GLuint program, GLenum pname, GLint value);
extern void (KHRONOS_APIENTRY* const& glInvalidateFramebuffer) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
extern void (KHRONOS_APIENTRY* const& glInvalidateSubFramebuffer) (GLenum target, GLsizei numAttachments, const GLenum *attachments, GLint x, GLint y, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glTexStorage2D) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glTexStorage3D) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
extern void (KHRONOS_APIENTRY* const& glGetInternalformativ) (GLenum target, GLenum internalformat, GLenum pname, GLsizei count, GLint *params);
#endif
#ifndef GL_ES_VERSION_3_1
#define GL_ES_VERSION_3_1 1
enum : GLenum
{
GL_COMPUTE_SHADER = 0x91B9,
GL_MAX_COMPUTE_UNIFORM_BLOCKS = 0x91BB,
GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS = 0x91BC,
GL_MAX_COMPUTE_IMAGE_UNIFORMS = 0x91BD,
GL_MAX_COMPUTE_SHARED_MEMORY_SIZE = 0x8262,
GL_MAX_COMPUTE_UNIFORM_COMPONENTS = 0x8263,
GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS = 0x8264,
GL_MAX_COMPUTE_ATOMIC_COUNTERS = 0x8265,
GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS = 0x8266,
GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS = 0x90EB,
GL_MAX_COMPUTE_WORK_GROUP_COUNT = 0x91BE,
GL_MAX_COMPUTE_WORK_GROUP_SIZE = 0x91BF,
GL_COMPUTE_WORK_GROUP_SIZE = 0x8267,
GL_DISPATCH_INDIRECT_BUFFER = 0x90EE,
GL_DISPATCH_INDIRECT_BUFFER_BINDING = 0x90EF,
GL_COMPUTE_SHADER_BIT = 0x00000020,
GL_DRAW_INDIRECT_BUFFER = 0x8F3F,
GL_DRAW_INDIRECT_BUFFER_BINDING = 0x8F43,
GL_MAX_UNIFORM_LOCATIONS = 0x826E,
GL_FRAMEBUFFER_DEFAULT_WIDTH = 0x9310,
GL_FRAMEBUFFER_DEFAULT_HEIGHT = 0x9311,
GL_FRAMEBUFFER_DEFAULT_SAMPLES = 0x9313,
GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS = 0x9314,
GL_MAX_FRAMEBUFFER_WIDTH = 0x9315,
GL_MAX_FRAMEBUFFER_HEIGHT = 0x9316,
GL_MAX_FRAMEBUFFER_SAMPLES = 0x9318,
GL_UNIFORM = 0x92E1,
GL_UNIFORM_BLOCK = 0x92E2,
GL_PROGRAM_INPUT = 0x92E3,
GL_PROGRAM_OUTPUT = 0x92E4,
GL_BUFFER_VARIABLE = 0x92E5,
GL_SHADER_STORAGE_BLOCK = 0x92E6,
GL_ATOMIC_COUNTER_BUFFER = 0x92C0,
GL_TRANSFORM_FEEDBACK_VARYING = 0x92F4,
GL_ACTIVE_RESOURCES = 0x92F5,
GL_MAX_NAME_LENGTH = 0x92F6,
GL_MAX_NUM_ACTIVE_VARIABLES = 0x92F7,
GL_NAME_LENGTH = 0x92F9,
GL_TYPE = 0x92FA,
GL_ARRAY_SIZE = 0x92FB,
GL_OFFSET = 0x92FC,
GL_BLOCK_INDEX = 0x92FD,
GL_ARRAY_STRIDE = 0x92FE,
GL_MATRIX_STRIDE = 0x92FF,
GL_IS_ROW_MAJOR = 0x9300,
GL_ATOMIC_COUNTER_BUFFER_INDEX = 0x9301,
GL_BUFFER_BINDING = 0x9302,
GL_BUFFER_DATA_SIZE = 0x9303,
GL_NUM_ACTIVE_VARIABLES = 0x9304,
GL_ACTIVE_VARIABLES = 0x9305,
GL_REFERENCED_BY_VERTEX_SHADER = 0x9306,
GL_REFERENCED_BY_FRAGMENT_SHADER = 0x930A,
GL_REFERENCED_BY_COMPUTE_SHADER = 0x930B,
GL_TOP_LEVEL_ARRAY_SIZE = 0x930C,
GL_TOP_LEVEL_ARRAY_STRIDE = 0x930D,
GL_LOCATION = 0x930E,
GL_VERTEX_SHADER_BIT = 0x00000001,
GL_FRAGMENT_SHADER_BIT = 0x00000002,
GL_ALL_SHADER_BITS = 0xFFFFFFFF,
GL_PROGRAM_SEPARABLE = 0x8258,
GL_ACTIVE_PROGRAM = 0x8259,
GL_PROGRAM_PIPELINE_BINDING = 0x825A,
GL_ATOMIC_COUNTER_BUFFER_BINDING = 0x92C1,
GL_ATOMIC_COUNTER_BUFFER_START = 0x92C2,
GL_ATOMIC_COUNTER_BUFFER_SIZE = 0x92C3,
GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS = 0x92CC,
GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS = 0x92D0,
GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS = 0x92D1,
GL_MAX_VERTEX_ATOMIC_COUNTERS = 0x92D2,
GL_MAX_FRAGMENT_ATOMIC_COUNTERS = 0x92D6,
GL_MAX_COMBINED_ATOMIC_COUNTERS = 0x92D7,
GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE = 0x92D8,
GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = 0x92DC,
GL_ACTIVE_ATOMIC_COUNTER_BUFFERS = 0x92D9,
GL_UNSIGNED_INT_ATOMIC_COUNTER = 0x92DB,
GL_MAX_IMAGE_UNITS = 0x8F38,
GL_MAX_VERTEX_IMAGE_UNIFORMS = 0x90CA,
GL_MAX_FRAGMENT_IMAGE_UNIFORMS = 0x90CE,
GL_MAX_COMBINED_IMAGE_UNIFORMS = 0x90CF,
GL_IMAGE_BINDING_NAME = 0x8F3A,
GL_IMAGE_BINDING_LEVEL = 0x8F3B,
GL_IMAGE_BINDING_LAYERED = 0x8F3C,
GL_IMAGE_BINDING_LAYER = 0x8F3D,
GL_IMAGE_BINDING_ACCESS = 0x8F3E,
GL_IMAGE_BINDING_FORMAT = 0x906E,
GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT = 0x00000001,
GL_ELEMENT_ARRAY_BARRIER_BIT = 0x00000002,
GL_UNIFORM_BARRIER_BIT = 0x00000004,
GL_TEXTURE_FETCH_BARRIER_BIT = 0x00000008,
GL_SHADER_IMAGE_ACCESS_BARRIER_BIT = 0x00000020,
GL_COMMAND_BARRIER_BIT = 0x00000040,
GL_PIXEL_BUFFER_BARRIER_BIT = 0x00000080,
GL_TEXTURE_UPDATE_BARRIER_BIT = 0x00000100,
GL_BUFFER_UPDATE_BARRIER_BIT = 0x00000200,
GL_FRAMEBUFFER_BARRIER_BIT = 0x00000400,
GL_TRANSFORM_FEEDBACK_BARRIER_BIT = 0x00000800,
GL_ATOMIC_COUNTER_BARRIER_BIT = 0x00001000,
GL_ALL_BARRIER_BITS = 0xFFFFFFFF,
GL_IMAGE_2D = 0x904D,
GL_IMAGE_3D = 0x904E,
GL_IMAGE_CUBE = 0x9050,
GL_IMAGE_2D_ARRAY = 0x9053,
GL_INT_IMAGE_2D = 0x9058,
GL_INT_IMAGE_3D = 0x9059,
GL_INT_IMAGE_CUBE = 0x905B,
GL_INT_IMAGE_2D_ARRAY = 0x905E,
GL_UNSIGNED_INT_IMAGE_2D = 0x9063,
GL_UNSIGNED_INT_IMAGE_3D = 0x9064,
GL_UNSIGNED_INT_IMAGE_CUBE = 0x9066,
GL_UNSIGNED_INT_IMAGE_2D_ARRAY = 0x9069,
GL_IMAGE_FORMAT_COMPATIBILITY_TYPE = 0x90C7,
GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE = 0x90C8,
GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS = 0x90C9,
GL_READ_ONLY = 0x88B8,
GL_WRITE_ONLY = 0x88B9,
GL_READ_WRITE = 0x88BA,
GL_SHADER_STORAGE_BUFFER = 0x90D2,
GL_SHADER_STORAGE_BUFFER_BINDING = 0x90D3,
GL_SHADER_STORAGE_BUFFER_START = 0x90D4,
GL_SHADER_STORAGE_BUFFER_SIZE = 0x90D5,
GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS = 0x90D6,
GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS = 0x90DA,
GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS = 0x90DB,
GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS = 0x90DC,
GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS = 0x90DD,
GL_MAX_SHADER_STORAGE_BLOCK_SIZE = 0x90DE,
GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT = 0x90DF,
GL_SHADER_STORAGE_BARRIER_BIT = 0x00002000,
GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES = 0x8F39,
GL_DEPTH_STENCIL_TEXTURE_MODE = 0x90EA,
GL_STENCIL_INDEX = 0x1901,
GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5E,
GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5F,
GL_SAMPLE_POSITION = 0x8E50,
GL_SAMPLE_MASK = 0x8E51,
GL_SAMPLE_MASK_VALUE = 0x8E52,
GL_TEXTURE_2D_MULTISAMPLE = 0x9100,
GL_MAX_SAMPLE_MASK_WORDS = 0x8E59,
GL_MAX_COLOR_TEXTURE_SAMPLES = 0x910E,
GL_MAX_DEPTH_TEXTURE_SAMPLES = 0x910F,
GL_MAX_INTEGER_SAMPLES = 0x9110,
GL_TEXTURE_BINDING_2D_MULTISAMPLE = 0x9104,
GL_TEXTURE_SAMPLES = 0x9106,
GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = 0x9107,
GL_TEXTURE_WIDTH = 0x1000,
GL_TEXTURE_HEIGHT = 0x1001,
GL_TEXTURE_DEPTH = 0x8071,
GL_TEXTURE_INTERNAL_FORMAT = 0x1003,
GL_TEXTURE_RED_SIZE = 0x805C,
GL_TEXTURE_GREEN_SIZE = 0x805D,
GL_TEXTURE_BLUE_SIZE = 0x805E,
GL_TEXTURE_ALPHA_SIZE = 0x805F,
GL_TEXTURE_DEPTH_SIZE = 0x884A,
GL_TEXTURE_STENCIL_SIZE = 0x88F1,
GL_TEXTURE_SHARED_SIZE = 0x8C3F,
GL_TEXTURE_RED_TYPE = 0x8C10,
GL_TEXTURE_GREEN_TYPE = 0x8C11,
GL_TEXTURE_BLUE_TYPE = 0x8C12,
GL_TEXTURE_ALPHA_TYPE = 0x8C13,
GL_TEXTURE_DEPTH_TYPE = 0x8C16,
GL_TEXTURE_COMPRESSED = 0x86A1,
GL_SAMPLER_2D_MULTISAMPLE = 0x9108,
GL_INT_SAMPLER_2D_MULTISAMPLE = 0x9109,
GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = 0x910A,
GL_VERTEX_ATTRIB_BINDING = 0x82D4,
GL_VERTEX_ATTRIB_RELATIVE_OFFSET = 0x82D5,
GL_VERTEX_BINDING_DIVISOR = 0x82D6,
GL_VERTEX_BINDING_OFFSET = 0x82D7,
GL_VERTEX_BINDING_STRIDE = 0x82D8,
GL_VERTEX_BINDING_BUFFER = 0x8F4F,
GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET = 0x82D9,
GL_MAX_VERTEX_ATTRIB_BINDINGS = 0x82DA,
GL_MAX_VERTEX_ATTRIB_STRIDE = 0x82E5,
};
extern void (KHRONOS_APIENTRY* const& glDispatchCompute) (GLuint num_groups_x, GLuint num_groups_y, GLuint num_groups_z);
extern void (KHRONOS_APIENTRY* const& glDispatchComputeIndirect) (GLintptr indirect);
extern void (KHRONOS_APIENTRY* const& glDrawArraysIndirect) (GLenum mode, const void *indirect);
extern void (KHRONOS_APIENTRY* const& glDrawElementsIndirect) (GLenum mode, GLenum type, const void *indirect);
extern void (KHRONOS_APIENTRY* const& glFramebufferParameteri) (GLenum target, GLenum pname, GLint param);
extern void (KHRONOS_APIENTRY* const& glGetFramebufferParameteriv) (GLenum target, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetProgramInterfaceiv) (GLuint program, GLenum programInterface, GLenum pname, GLint *params);
extern GLuint (KHRONOS_APIENTRY* const& glGetProgramResourceIndex) (GLuint program, GLenum programInterface, const GLchar *name);
extern void (KHRONOS_APIENTRY* const& glGetProgramResourceName) (GLuint program, GLenum programInterface, GLuint index, GLsizei bufSize, GLsizei *length, GLchar *name);
extern void (KHRONOS_APIENTRY* const& glGetProgramResourceiv) (GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei count, GLsizei *length, GLint *params);
extern GLint (KHRONOS_APIENTRY* const& glGetProgramResourceLocation) (GLuint program, GLenum programInterface, const GLchar *name);
extern void (KHRONOS_APIENTRY* const& glUseProgramStages) (GLuint pipeline, GLbitfield stages, GLuint program);
extern void (KHRONOS_APIENTRY* const& glActiveShaderProgram) (GLuint pipeline, GLuint program);
extern GLuint (KHRONOS_APIENTRY* const& glCreateShaderProgramv) (GLenum type, GLsizei count, const GLchar *const*strings);
extern void (KHRONOS_APIENTRY* const& glBindProgramPipeline) (GLuint pipeline);
extern void (KHRONOS_APIENTRY* const& glDeleteProgramPipelines) (GLsizei n, const GLuint *pipelines);
extern void (KHRONOS_APIENTRY* const& glGenProgramPipelines) (GLsizei n, GLuint *pipelines);
extern GLboolean (KHRONOS_APIENTRY* const& glIsProgramPipeline) (GLuint pipeline);
extern void (KHRONOS_APIENTRY* const& glGetProgramPipelineiv) (GLuint pipeline, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1i) (GLuint program, GLint location, GLint v0);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2i) (GLuint program, GLint location, GLint v0, GLint v1);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3i) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4i) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1ui) (GLuint program, GLint location, GLuint v0);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2ui) (GLuint program, GLint location, GLuint v0, GLuint v1);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3ui) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4ui) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1f) (GLuint program, GLint location, GLfloat v0);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2f) (GLuint program, GLint location, GLfloat v0, GLfloat v1);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3f) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4f) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1iv) (GLuint program, GLint location, GLsizei count, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2iv) (GLuint program, GLint location, GLsizei count, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3iv) (GLuint program, GLint location, GLsizei count, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4iv) (GLuint program, GLint location, GLsizei count, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1uiv) (GLuint program, GLint location, GLsizei count, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2uiv) (GLuint program, GLint location, GLsizei count, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3uiv) (GLuint program, GLint location, GLsizei count, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4uiv) (GLuint program, GLint location, GLsizei count, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1fv) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2fv) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3fv) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4fv) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix2fv) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix3fv) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix4fv) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix2x3fv) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix3x2fv) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix2x4fv) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix4x2fv) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix3x4fv) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix4x3fv) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glValidateProgramPipeline) (GLuint pipeline);
extern void (KHRONOS_APIENTRY* const& glGetProgramPipelineInfoLog) (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
extern void (KHRONOS_APIENTRY* const& glBindImageTexture) (GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format);
extern void (KHRONOS_APIENTRY* const& glGetBooleani_v) (GLenum target, GLuint index, GLboolean *data);
extern void (KHRONOS_APIENTRY* const& glMemoryBarrier) (GLbitfield barriers);
extern void (KHRONOS_APIENTRY* const& glMemoryBarrierByRegion) (GLbitfield barriers);
extern void (KHRONOS_APIENTRY* const& glTexStorage2DMultisample) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations);
extern void (KHRONOS_APIENTRY* const& glGetMultisamplefv) (GLenum pname, GLuint index, GLfloat *val);
extern void (KHRONOS_APIENTRY* const& glSampleMaski) (GLuint maskNumber, GLbitfield mask);
extern void (KHRONOS_APIENTRY* const& glGetTexLevelParameteriv) (GLenum target, GLint level, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetTexLevelParameterfv) (GLenum target, GLint level, GLenum pname, GLfloat *params);
extern void (KHRONOS_APIENTRY* const& glBindVertexBuffer) (GLuint bindingindex, GLuint buffer, GLintptr offset, GLsizei stride);
extern void (KHRONOS_APIENTRY* const& glVertexAttribFormat) (GLuint attribindex, GLint size, GLenum type, GLboolean normalized, GLuint relativeoffset);
extern void (KHRONOS_APIENTRY* const& glVertexAttribIFormat) (GLuint attribindex, GLint size, GLenum type, GLuint relativeoffset);
extern void (KHRONOS_APIENTRY* const& glVertexAttribBinding) (GLuint attribindex, GLuint bindingindex);
extern void (KHRONOS_APIENTRY* const& glVertexBindingDivisor) (GLuint bindingindex, GLuint divisor);
#endif
#ifndef GL_ES_VERSION_3_2
#define GL_ES_VERSION_3_2 1
enum : GLenum
{
GL_MULTISAMPLE_LINE_WIDTH_RANGE = 0x9381,
GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY = 0x9382,
GL_MULTIPLY = 0x9294,
GL_SCREEN = 0x9295,
GL_OVERLAY = 0x9296,
GL_DARKEN = 0x9297,
GL_LIGHTEN = 0x9298,
GL_COLORDODGE = 0x9299,
GL_COLORBURN = 0x929A,
GL_HARDLIGHT = 0x929B,
GL_SOFTLIGHT = 0x929C,
GL_DIFFERENCE = 0x929E,
GL_EXCLUSION = 0x92A0,
GL_HSL_HUE = 0x92AD,
GL_HSL_SATURATION = 0x92AE,
GL_HSL_COLOR = 0x92AF,
GL_HSL_LUMINOSITY = 0x92B0,
GL_DEBUG_OUTPUT_SYNCHRONOUS = 0x8242,
GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = 0x8243,
GL_DEBUG_CALLBACK_FUNCTION = 0x8244,
GL_DEBUG_CALLBACK_USER_PARAM = 0x8245,
GL_DEBUG_SOURCE_API = 0x8246,
GL_DEBUG_SOURCE_WINDOW_SYSTEM = 0x8247,
GL_DEBUG_SOURCE_SHADER_COMPILER = 0x8248,
GL_DEBUG_SOURCE_THIRD_PARTY = 0x8249,
GL_DEBUG_SOURCE_APPLICATION = 0x824A,
GL_DEBUG_SOURCE_OTHER = 0x824B,
GL_DEBUG_TYPE_ERROR = 0x824C,
GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR = 0x824D,
GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR = 0x824E,
GL_DEBUG_TYPE_PORTABILITY = 0x824F,
GL_DEBUG_TYPE_PERFORMANCE = 0x8250,
GL_DEBUG_TYPE_OTHER = 0x8251,
GL_DEBUG_TYPE_MARKER = 0x8268,
GL_DEBUG_TYPE_PUSH_GROUP = 0x8269,
GL_DEBUG_TYPE_POP_GROUP = 0x826A,
GL_DEBUG_SEVERITY_NOTIFICATION = 0x826B,
GL_MAX_DEBUG_GROUP_STACK_DEPTH = 0x826C,
GL_DEBUG_GROUP_STACK_DEPTH = 0x826D,
GL_BUFFER = 0x82E0,
GL_SHADER = 0x82E1,
GL_PROGRAM = 0x82E2,
GL_VERTEX_ARRAY = 0x8074,
GL_QUERY = 0x82E3,
GL_PROGRAM_PIPELINE = 0x82E4,
GL_SAMPLER = 0x82E6,
GL_MAX_LABEL_LENGTH = 0x82E8,
GL_MAX_DEBUG_MESSAGE_LENGTH = 0x9143,
GL_MAX_DEBUG_LOGGED_MESSAGES = 0x9144,
GL_DEBUG_LOGGED_MESSAGES = 0x9145,
GL_DEBUG_SEVERITY_HIGH = 0x9146,
GL_DEBUG_SEVERITY_MEDIUM = 0x9147,
GL_DEBUG_SEVERITY_LOW = 0x9148,
GL_DEBUG_OUTPUT = 0x92E0,
GL_CONTEXT_FLAG_DEBUG_BIT = 0x00000002,
GL_STACK_OVERFLOW = 0x0503,
GL_STACK_UNDERFLOW = 0x0504,
GL_GEOMETRY_SHADER = 0x8DD9,
GL_GEOMETRY_SHADER_BIT = 0x00000004,
GL_GEOMETRY_VERTICES_OUT = 0x8916,
GL_GEOMETRY_INPUT_TYPE = 0x8917,
GL_GEOMETRY_OUTPUT_TYPE = 0x8918,
GL_GEOMETRY_SHADER_INVOCATIONS = 0x887F,
GL_LAYER_PROVOKING_VERTEX = 0x825E,
GL_LINES_ADJACENCY = 0x000A,
GL_LINE_STRIP_ADJACENCY = 0x000B,
GL_TRIANGLES_ADJACENCY = 0x000C,
GL_TRIANGLE_STRIP_ADJACENCY = 0x000D,
GL_MAX_GEOMETRY_UNIFORM_COMPONENTS = 0x8DDF,
GL_MAX_GEOMETRY_UNIFORM_BLOCKS = 0x8A2C,
GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 0x8A32,
GL_MAX_GEOMETRY_INPUT_COMPONENTS = 0x9123,
GL_MAX_GEOMETRY_OUTPUT_COMPONENTS = 0x9124,
GL_MAX_GEOMETRY_OUTPUT_VERTICES = 0x8DE0,
GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = 0x8DE1,
GL_MAX_GEOMETRY_SHADER_INVOCATIONS = 0x8E5A,
GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = 0x8C29,
GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS = 0x92CF,
GL_MAX_GEOMETRY_ATOMIC_COUNTERS = 0x92D5,
GL_MAX_GEOMETRY_IMAGE_UNIFORMS = 0x90CD,
GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS = 0x90D7,
GL_FIRST_VERTEX_CONVENTION = 0x8E4D,
GL_LAST_VERTEX_CONVENTION = 0x8E4E,
GL_UNDEFINED_VERTEX = 0x8260,
GL_PRIMITIVES_GENERATED = 0x8C87,
GL_FRAMEBUFFER_DEFAULT_LAYERS = 0x9312,
GL_MAX_FRAMEBUFFER_LAYERS = 0x9317,
GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = 0x8DA8,
GL_FRAMEBUFFER_ATTACHMENT_LAYERED = 0x8DA7,
GL_REFERENCED_BY_GEOMETRY_SHADER = 0x9309,
GL_PRIMITIVE_BOUNDING_BOX = 0x92BE,
GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT = 0x00000004,
GL_CONTEXT_FLAGS = 0x821E,
GL_LOSE_CONTEXT_ON_RESET = 0x8252,
GL_GUILTY_CONTEXT_RESET = 0x8253,
GL_INNOCENT_CONTEXT_RESET = 0x8254,
GL_UNKNOWN_CONTEXT_RESET = 0x8255,
GL_RESET_NOTIFICATION_STRATEGY = 0x8256,
GL_NO_RESET_NOTIFICATION = 0x8261,
GL_CONTEXT_LOST = 0x0507,
GL_SAMPLE_SHADING = 0x8C36,
GL_MIN_SAMPLE_SHADING_VALUE = 0x8C37,
GL_MIN_FRAGMENT_INTERPOLATION_OFFSET = 0x8E5B,
GL_MAX_FRAGMENT_INTERPOLATION_OFFSET = 0x8E5C,
GL_FRAGMENT_INTERPOLATION_OFFSET_BITS = 0x8E5D,
GL_PATCHES = 0x000E,
GL_PATCH_VERTICES = 0x8E72,
GL_TESS_CONTROL_OUTPUT_VERTICES = 0x8E75,
GL_TESS_GEN_MODE = 0x8E76,
GL_TESS_GEN_SPACING = 0x8E77,
GL_TESS_GEN_VERTEX_ORDER = 0x8E78,
GL_TESS_GEN_POINT_MODE = 0x8E79,
GL_ISOLINES = 0x8E7A,
GL_QUADS = 0x0007,
GL_FRACTIONAL_ODD = 0x8E7B,
GL_FRACTIONAL_EVEN = 0x8E7C,
GL_MAX_PATCH_VERTICES = 0x8E7D,
GL_MAX_TESS_GEN_LEVEL = 0x8E7E,
GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E7F,
GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E80,
GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS = 0x8E81,
GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS = 0x8E82,
GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS = 0x8E83,
GL_MAX_TESS_PATCH_COMPONENTS = 0x8E84,
GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS = 0x8E85,
GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS = 0x8E86,
GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS = 0x8E89,
GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS = 0x8E8A,
GL_MAX_TESS_CONTROL_INPUT_COMPONENTS = 0x886C,
GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS = 0x886D,
GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E1E,
GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E1F,
GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS = 0x92CD,
GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS = 0x92CE,
GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS = 0x92D3,
GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS = 0x92D4,
GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS = 0x90CB,
GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS = 0x90CC,
GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS = 0x90D8,
GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS = 0x90D9,
GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED = 0x8221,
GL_IS_PER_PATCH = 0x92E7,
GL_REFERENCED_BY_TESS_CONTROL_SHADER = 0x9307,
GL_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x9308,
GL_TESS_CONTROL_SHADER = 0x8E88,
GL_TESS_EVALUATION_SHADER = 0x8E87,
GL_TESS_CONTROL_SHADER_BIT = 0x00000008,
GL_TESS_EVALUATION_SHADER_BIT = 0x00000010,
GL_TEXTURE_BORDER_COLOR = 0x1004,
GL_CLAMP_TO_BORDER = 0x812D,
GL_TEXTURE_BUFFER = 0x8C2A,
GL_TEXTURE_BUFFER_BINDING = 0x8C2A,
GL_MAX_TEXTURE_BUFFER_SIZE = 0x8C2B,
GL_TEXTURE_BINDING_BUFFER = 0x8C2C,
GL_TEXTURE_BUFFER_DATA_STORE_BINDING = 0x8C2D,
GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT = 0x919F,
GL_SAMPLER_BUFFER = 0x8DC2,
GL_INT_SAMPLER_BUFFER = 0x8DD0,
GL_UNSIGNED_INT_SAMPLER_BUFFER = 0x8DD8,
GL_IMAGE_BUFFER = 0x9051,
GL_INT_IMAGE_BUFFER = 0x905C,
GL_UNSIGNED_INT_IMAGE_BUFFER = 0x9067,
GL_TEXTURE_BUFFER_OFFSET = 0x919D,
GL_TEXTURE_BUFFER_SIZE = 0x919E,
GL_COMPRESSED_RGBA_ASTC_4x4 = 0x93B0,
GL_COMPRESSED_RGBA_ASTC_5x4 = 0x93B1,
GL_COMPRESSED_RGBA_ASTC_5x5 = 0x93B2,
GL_COMPRESSED_RGBA_ASTC_6x5 = 0x93B3,
GL_COMPRESSED_RGBA_ASTC_6x6 = 0x93B4,
GL_COMPRESSED_RGBA_ASTC_8x5 = 0x93B5,
GL_COMPRESSED_RGBA_ASTC_8x6 = 0x93B6,
GL_COMPRESSED_RGBA_ASTC_8x8 = 0x93B7,
GL_COMPRESSED_RGBA_ASTC_10x5 = 0x93B8,
GL_COMPRESSED_RGBA_ASTC_10x6 = 0x93B9,
GL_COMPRESSED_RGBA_ASTC_10x8 = 0x93BA,
GL_COMPRESSED_RGBA_ASTC_10x10 = 0x93BB,
GL_COMPRESSED_RGBA_ASTC_12x10 = 0x93BC,
GL_COMPRESSED_RGBA_ASTC_12x12 = 0x93BD,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4 = 0x93D0,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4 = 0x93D1,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5 = 0x93D2,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5 = 0x93D3,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6 = 0x93D4,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5 = 0x93D5,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6 = 0x93D6,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8 = 0x93D7,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5 = 0x93D8,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6 = 0x93D9,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8 = 0x93DA,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10 = 0x93DB,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10 = 0x93DC,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12 = 0x93DD,
GL_TEXTURE_CUBE_MAP_ARRAY = 0x9009,
GL_TEXTURE_BINDING_CUBE_MAP_ARRAY = 0x900A,
GL_SAMPLER_CUBE_MAP_ARRAY = 0x900C,
GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW = 0x900D,
GL_INT_SAMPLER_CUBE_MAP_ARRAY = 0x900E,
GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = 0x900F,
GL_IMAGE_CUBE_MAP_ARRAY = 0x9054,
GL_INT_IMAGE_CUBE_MAP_ARRAY = 0x905F,
GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY = 0x906A,
GL_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9102,
GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = 0x9105,
GL_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910B,
GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910C,
GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910D,
};
extern void (KHRONOS_APIENTRY* const& glBlendBarrier) ();
extern void (KHRONOS_APIENTRY* const& glCopyImageSubData) (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);
extern void (KHRONOS_APIENTRY* const& glDebugMessageControl) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
extern void (KHRONOS_APIENTRY* const& glDebugMessageInsert) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
extern void (KHRONOS_APIENTRY* const& glDebugMessageCallback) (GLDEBUGPROC callback, const void *userParam);
extern GLuint (KHRONOS_APIENTRY* const& glGetDebugMessageLog) (GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
extern void (KHRONOS_APIENTRY* const& glPushDebugGroup) (GLenum source, GLuint id, GLsizei length, const GLchar *message);
extern void (KHRONOS_APIENTRY* const& glPopDebugGroup) ();
extern void (KHRONOS_APIENTRY* const& glObjectLabel) (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
extern void (KHRONOS_APIENTRY* const& glGetObjectLabel) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
extern void (KHRONOS_APIENTRY* const& glObjectPtrLabel) (const void *ptr, GLsizei length, const GLchar *label);
extern void (KHRONOS_APIENTRY* const& glGetObjectPtrLabel) (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
extern void (KHRONOS_APIENTRY* const& glGetPointerv) (GLenum pname, void **params);
extern void (KHRONOS_APIENTRY* const& glEnablei) (GLenum target, GLuint index);
extern void (KHRONOS_APIENTRY* const& glDisablei) (GLenum target, GLuint index);
extern void (KHRONOS_APIENTRY* const& glBlendEquationi) (GLuint buf, GLenum mode);
extern void (KHRONOS_APIENTRY* const& glBlendEquationSeparatei) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
extern void (KHRONOS_APIENTRY* const& glBlendFunci) (GLuint buf, GLenum src, GLenum dst);
extern void (KHRONOS_APIENTRY* const& glBlendFuncSeparatei) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
extern void (KHRONOS_APIENTRY* const& glColorMaski) (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
extern GLboolean (KHRONOS_APIENTRY* const& glIsEnabledi) (GLenum target, GLuint index);
extern void (KHRONOS_APIENTRY* const& glDrawElementsBaseVertex) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex);
extern void (KHRONOS_APIENTRY* const& glDrawRangeElementsBaseVertex) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex);
extern void (KHRONOS_APIENTRY* const& glDrawElementsInstancedBaseVertex) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex);
extern void (KHRONOS_APIENTRY* const& glFramebufferTexture) (GLenum target, GLenum attachment, GLuint texture, GLint level);
extern void (KHRONOS_APIENTRY* const& glPrimitiveBoundingBox) (GLfloat minX, GLfloat minY, GLfloat minZ, GLfloat minW, GLfloat maxX, GLfloat maxY, GLfloat maxZ, GLfloat maxW);
extern GLenum (KHRONOS_APIENTRY* const& glGetGraphicsResetStatus) ();
extern void (KHRONOS_APIENTRY* const& glReadnPixels) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
extern void (KHRONOS_APIENTRY* const& glGetnUniformfv) (GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
extern void (KHRONOS_APIENTRY* const& glGetnUniformiv) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetnUniformuiv) (GLuint program, GLint location, GLsizei bufSize, GLuint *params);
extern void (KHRONOS_APIENTRY* const& glMinSampleShading) (GLfloat value);
extern void (KHRONOS_APIENTRY* const& glPatchParameteri) (GLenum pname, GLint value);
extern void (KHRONOS_APIENTRY* const& glTexParameterIiv) (GLenum target, GLenum pname, const GLint *params);
extern void (KHRONOS_APIENTRY* const& glTexParameterIuiv) (GLenum target, GLenum pname, const GLuint *params);
extern void (KHRONOS_APIENTRY* const& glGetTexParameterIiv) (GLenum target, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetTexParameterIuiv) (GLenum target, GLenum pname, GLuint *params);
extern void (KHRONOS_APIENTRY* const& glSamplerParameterIiv) (GLuint sampler, GLenum pname, const GLint *param);
extern void (KHRONOS_APIENTRY* const& glSamplerParameterIuiv) (GLuint sampler, GLenum pname, const GLuint *param);
extern void (KHRONOS_APIENTRY* const& glGetSamplerParameterIiv) (GLuint sampler, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetSamplerParameterIuiv) (GLuint sampler, GLenum pname, GLuint *params);
extern void (KHRONOS_APIENTRY* const& glTexBuffer) (GLenum target, GLenum internalformat, GLuint buffer);
extern void (KHRONOS_APIENTRY* const& glTexBufferRange) (GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
extern void (KHRONOS_APIENTRY* const& glTexStorage3DMultisample) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
#endif
#ifndef GL_AMD_compressed_3DC_texture
#define GL_AMD_compressed_3DC_texture 1
enum : GLenum
{
GL_3DC_X_AMD = 0x87F9,
GL_3DC_XY_AMD = 0x87FA,
};
#endif
#ifndef GL_AMD_compressed_ATC_texture
#define GL_AMD_compressed_ATC_texture 1
enum : GLenum
{
GL_ATC_RGB_AMD = 0x8C92,
GL_ATC_RGBA_EXPLICIT_ALPHA_AMD = 0x8C93,
GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD = 0x87EE,
};
#endif
#ifndef GL_AMD_framebuffer_multisample_advanced
#define GL_AMD_framebuffer_multisample_advanced 1
enum : GLenum
{
GL_RENDERBUFFER_STORAGE_SAMPLES_AMD = 0x91B2,
GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD = 0x91B3,
GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD = 0x91B4,
GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD = 0x91B5,
GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD = 0x91B6,
GL_SUPPORTED_MULTISAMPLE_MODES_AMD = 0x91B7,
};
extern void (KHRONOS_APIENTRY* const& glRenderbufferStorageMultisampleAdvancedAMD) (GLenum target, GLsizei samples, GLsizei storageSamples, GLenum internalformat, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glNamedRenderbufferStorageMultisampleAdvancedAMD) (GLuint renderbuffer, GLsizei samples, GLsizei storageSamples, GLenum internalformat, GLsizei width, GLsizei height);
#endif
#ifndef GL_AMD_performance_monitor
#define GL_AMD_performance_monitor 1
enum : GLenum
{
GL_COUNTER_TYPE_AMD = 0x8BC0,
GL_COUNTER_RANGE_AMD = 0x8BC1,
GL_UNSIGNED_INT64_AMD = 0x8BC2,
GL_PERCENTAGE_AMD = 0x8BC3,
GL_PERFMON_RESULT_AVAILABLE_AMD = 0x8BC4,
GL_PERFMON_RESULT_SIZE_AMD = 0x8BC5,
GL_PERFMON_RESULT_AMD = 0x8BC6,
};
extern void (KHRONOS_APIENTRY* const& glGetPerfMonitorGroupsAMD) (GLint *numGroups, GLsizei groupsSize, GLuint *groups);
extern void (KHRONOS_APIENTRY* const& glGetPerfMonitorCountersAMD) (GLuint group, GLint *numCounters, GLint *maxActiveCounters, GLsizei counterSize, GLuint *counters);
extern void (KHRONOS_APIENTRY* const& glGetPerfMonitorGroupStringAMD) (GLuint group, GLsizei bufSize, GLsizei *length, GLchar *groupString);
extern void (KHRONOS_APIENTRY* const& glGetPerfMonitorCounterStringAMD) (GLuint group, GLuint counter, GLsizei bufSize, GLsizei *length, GLchar *counterString);
extern void (KHRONOS_APIENTRY* const& glGetPerfMonitorCounterInfoAMD) (GLuint group, GLuint counter, GLenum pname, void *data);
extern void (KHRONOS_APIENTRY* const& glGenPerfMonitorsAMD) (GLsizei n, GLuint *monitors);
extern void (KHRONOS_APIENTRY* const& glDeletePerfMonitorsAMD) (GLsizei n, GLuint *monitors);
extern void (KHRONOS_APIENTRY* const& glSelectPerfMonitorCountersAMD) (GLuint monitor, GLboolean enable, GLuint group, GLint numCounters, GLuint *counterList);
extern void (KHRONOS_APIENTRY* const& glBeginPerfMonitorAMD) (GLuint monitor);
extern void (KHRONOS_APIENTRY* const& glEndPerfMonitorAMD) (GLuint monitor);
extern void (KHRONOS_APIENTRY* const& glGetPerfMonitorCounterDataAMD) (GLuint monitor, GLenum pname, GLsizei dataSize, GLuint *data, GLint *bytesWritten);
#endif
#ifndef GL_AMD_program_binary_Z400
#define GL_AMD_program_binary_Z400 1
enum : GLenum
{
GL_Z400_BINARY_AMD = 0x8740,
};
#endif
#ifndef GL_ANDROID_extension_pack_es31a
#define GL_ANDROID_extension_pack_es31a 1
#endif
#ifndef GL_ANGLE_depth_texture
#define GL_ANGLE_depth_texture 1
enum : GLenum
{
GL_DEPTH_STENCIL_OES = 0x84F9,
GL_UNSIGNED_INT_24_8_OES = 0x84FA,
GL_DEPTH_COMPONENT32_OES = 0x81A7,
GL_DEPTH24_STENCIL8_OES = 0x88F0,
};
#endif
#ifndef GL_ANGLE_framebuffer_blit
#define GL_ANGLE_framebuffer_blit 1
enum : GLenum
{
GL_READ_FRAMEBUFFER_ANGLE = 0x8CA8,
GL_DRAW_FRAMEBUFFER_ANGLE = 0x8CA9,
GL_DRAW_FRAMEBUFFER_BINDING_ANGLE = 0x8CA6,
GL_READ_FRAMEBUFFER_BINDING_ANGLE = 0x8CAA,
};
extern void (KHRONOS_APIENTRY* const& glBlitFramebufferANGLE) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
#endif
#ifndef GL_ANGLE_framebuffer_multisample
#define GL_ANGLE_framebuffer_multisample 1
enum : GLenum
{
GL_RENDERBUFFER_SAMPLES_ANGLE = 0x8CAB,
GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE = 0x8D56,
GL_MAX_SAMPLES_ANGLE = 0x8D57,
};
extern void (KHRONOS_APIENTRY* const& glRenderbufferStorageMultisampleANGLE) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
#endif
#ifndef GL_ANGLE_instanced_arrays
#define GL_ANGLE_instanced_arrays 1
enum : GLenum
{
GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE = 0x88FE,
};
extern void (KHRONOS_APIENTRY* const& glDrawArraysInstancedANGLE) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
extern void (KHRONOS_APIENTRY* const& glDrawElementsInstancedANGLE) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
extern void (KHRONOS_APIENTRY* const& glVertexAttribDivisorANGLE) (GLuint index, GLuint divisor);
#endif
#ifndef GL_ANGLE_pack_reverse_row_order
#define GL_ANGLE_pack_reverse_row_order 1
enum : GLenum
{
GL_PACK_REVERSE_ROW_ORDER_ANGLE = 0x93A4,
};
#endif
#ifndef GL_ANGLE_program_binary
#define GL_ANGLE_program_binary 1
enum : GLenum
{
GL_PROGRAM_BINARY_ANGLE = 0x93A6,
};
#endif
#ifndef GL_ANGLE_texture_compression_dxt3
#define GL_ANGLE_texture_compression_dxt3 1
enum : GLenum
{
GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE = 0x83F2,
};
#endif
#ifndef GL_ANGLE_texture_compression_dxt5
#define GL_ANGLE_texture_compression_dxt5 1
enum : GLenum
{
GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE = 0x83F3,
};
#endif
#ifndef GL_ANGLE_texture_usage
#define GL_ANGLE_texture_usage 1
enum : GLenum
{
GL_TEXTURE_USAGE_ANGLE = 0x93A2,
GL_FRAMEBUFFER_ATTACHMENT_ANGLE = 0x93A3,
};
#endif
#ifndef GL_ANGLE_translated_shader_source
#define GL_ANGLE_translated_shader_source 1
enum : GLenum
{
GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE = 0x93A0,
};
extern void (KHRONOS_APIENTRY* const& glGetTranslatedShaderSourceANGLE) (GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source);
#endif
#ifndef GL_APPLE_clip_distance
#define GL_APPLE_clip_distance 1
enum : GLenum
{
GL_MAX_CLIP_DISTANCES_APPLE = 0x0D32,
GL_CLIP_DISTANCE0_APPLE = 0x3000,
GL_CLIP_DISTANCE1_APPLE = 0x3001,
GL_CLIP_DISTANCE2_APPLE = 0x3002,
GL_CLIP_DISTANCE3_APPLE = 0x3003,
GL_CLIP_DISTANCE4_APPLE = 0x3004,
GL_CLIP_DISTANCE5_APPLE = 0x3005,
GL_CLIP_DISTANCE6_APPLE = 0x3006,
GL_CLIP_DISTANCE7_APPLE = 0x3007,
};
#endif
#ifndef GL_APPLE_color_buffer_packed_float
#define GL_APPLE_color_buffer_packed_float 1
#endif
#ifndef GL_APPLE_copy_texture_levels
#define GL_APPLE_copy_texture_levels 1
extern void (KHRONOS_APIENTRY* const& glCopyTextureLevelsAPPLE) (GLuint destinationTexture, GLuint sourceTexture, GLint sourceBaseLevel, GLsizei sourceLevelCount);
#endif
#ifndef GL_APPLE_framebuffer_multisample
#define GL_APPLE_framebuffer_multisample 1
enum : GLenum
{
GL_RENDERBUFFER_SAMPLES_APPLE = 0x8CAB,
GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE = 0x8D56,
GL_MAX_SAMPLES_APPLE = 0x8D57,
GL_READ_FRAMEBUFFER_APPLE = 0x8CA8,
GL_DRAW_FRAMEBUFFER_APPLE = 0x8CA9,
GL_DRAW_FRAMEBUFFER_BINDING_APPLE = 0x8CA6,
GL_READ_FRAMEBUFFER_BINDING_APPLE = 0x8CAA,
};
extern void (KHRONOS_APIENTRY* const& glRenderbufferStorageMultisampleAPPLE) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glResolveMultisampleFramebufferAPPLE) ();
#endif
#ifndef GL_APPLE_rgb_422
#define GL_APPLE_rgb_422 1
enum : GLenum
{
GL_RGB_422_APPLE = 0x8A1F,
GL_UNSIGNED_SHORT_8_8_APPLE = 0x85BA,
GL_UNSIGNED_SHORT_8_8_REV_APPLE = 0x85BB,
GL_RGB_RAW_422_APPLE = 0x8A51,
};
#endif
#ifndef GL_APPLE_sync
#define GL_APPLE_sync 1
enum : GLenum
{
GL_SYNC_OBJECT_APPLE = 0x8A53,
GL_MAX_SERVER_WAIT_TIMEOUT_APPLE = 0x9111,
GL_OBJECT_TYPE_APPLE = 0x9112,
GL_SYNC_CONDITION_APPLE = 0x9113,
GL_SYNC_STATUS_APPLE = 0x9114,
GL_SYNC_FLAGS_APPLE = 0x9115,
GL_SYNC_FENCE_APPLE = 0x9116,
GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE = 0x9117,
GL_UNSIGNALED_APPLE = 0x9118,
GL_SIGNALED_APPLE = 0x9119,
GL_ALREADY_SIGNALED_APPLE = 0x911A,
GL_TIMEOUT_EXPIRED_APPLE = 0x911B,
GL_CONDITION_SATISFIED_APPLE = 0x911C,
GL_WAIT_FAILED_APPLE = 0x911D,
GL_SYNC_FLUSH_COMMANDS_BIT_APPLE = 0x00000001,
};
enum : GLuint64
{
GL_TIMEOUT_IGNORED_APPLE = 0xFFFFFFFFFFFFFFFF,
};
extern GLsync (KHRONOS_APIENTRY* const& glFenceSyncAPPLE) (GLenum condition, GLbitfield flags);
extern GLboolean (KHRONOS_APIENTRY* const& glIsSyncAPPLE) (GLsync sync);
extern void (KHRONOS_APIENTRY* const& glDeleteSyncAPPLE) (GLsync sync);
extern GLenum (KHRONOS_APIENTRY* const& glClientWaitSyncAPPLE) (GLsync sync, GLbitfield flags, GLuint64 timeout);
extern void (KHRONOS_APIENTRY* const& glWaitSyncAPPLE) (GLsync sync, GLbitfield flags, GLuint64 timeout);
extern void (KHRONOS_APIENTRY* const& glGetInteger64vAPPLE) (GLenum pname, GLint64 *params);
extern void (KHRONOS_APIENTRY* const& glGetSyncivAPPLE) (GLsync sync, GLenum pname, GLsizei count, GLsizei *length, GLint *values);
#endif
#ifndef GL_APPLE_texture_format_BGRA8888
#define GL_APPLE_texture_format_BGRA8888 1
enum : GLenum
{
GL_BGRA_EXT = 0x80E1,
GL_BGRA8_EXT = 0x93A1,
};
#endif
#ifndef GL_APPLE_texture_max_level
#define GL_APPLE_texture_max_level 1
enum : GLenum
{
GL_TEXTURE_MAX_LEVEL_APPLE = 0x813D,
};
#endif
#ifndef GL_APPLE_texture_packed_float
#define GL_APPLE_texture_packed_float 1
enum : GLenum
{
GL_UNSIGNED_INT_10F_11F_11F_REV_APPLE = 0x8C3B,
GL_UNSIGNED_INT_5_9_9_9_REV_APPLE = 0x8C3E,
GL_R11F_G11F_B10F_APPLE = 0x8C3A,
GL_RGB9_E5_APPLE = 0x8C3D,
};
#endif
#ifndef GL_ARM_mali_program_binary
#define GL_ARM_mali_program_binary 1
enum : GLenum
{
GL_MALI_PROGRAM_BINARY_ARM = 0x8F61,
};
#endif
#ifndef GL_ARM_mali_shader_binary
#define GL_ARM_mali_shader_binary 1
enum : GLenum
{
GL_MALI_SHADER_BINARY_ARM = 0x8F60,
};
#endif
#ifndef GL_ARM_rgba8
#define GL_ARM_rgba8 1
#endif
#ifndef GL_ARM_shader_framebuffer_fetch
#define GL_ARM_shader_framebuffer_fetch 1
enum : GLenum
{
GL_FETCH_PER_SAMPLE_ARM = 0x8F65,
GL_FRAGMENT_SHADER_FRAMEBUFFER_FETCH_MRT_ARM = 0x8F66,
};
#endif
#ifndef GL_ARM_shader_framebuffer_fetch_depth_stencil
#define GL_ARM_shader_framebuffer_fetch_depth_stencil 1
#endif
#ifndef GL_ARM_texture_unnormalized_coordinates
#define GL_ARM_texture_unnormalized_coordinates 1
enum : GLenum
{
GL_TEXTURE_UNNORMALIZED_COORDINATES_ARM = 0x8F6A,
};
#endif
#ifndef GL_DMP_program_binary
#define GL_DMP_program_binary 1
enum : GLenum
{
GL_SMAPHS30_PROGRAM_BINARY_DMP = 0x9251,
GL_SMAPHS_PROGRAM_BINARY_DMP = 0x9252,
GL_DMP_PROGRAM_BINARY_DMP = 0x9253,
};
#endif
#ifndef GL_DMP_shader_binary
#define GL_DMP_shader_binary 1
enum : GLenum
{
GL_SHADER_BINARY_DMP = 0x9250,
};
#endif
#ifndef GL_EXT_EGL_image_array
#define GL_EXT_EGL_image_array 1
#endif
#ifndef GL_EXT_EGL_image_storage
#define GL_EXT_EGL_image_storage 1
extern void (KHRONOS_APIENTRY* const& glEGLImageTargetTexStorageEXT) (GLenum target, GLeglImageOES image, const GLint* attrib_list);
extern void (KHRONOS_APIENTRY* const& glEGLImageTargetTextureStorageEXT) (GLuint texture, GLeglImageOES image, const GLint* attrib_list);
#endif
#ifndef GL_EXT_YUV_target
#define GL_EXT_YUV_target 1
enum : GLenum
{
GL_SAMPLER_EXTERNAL_2D_Y2Y_EXT = 0x8BE7,
GL_TEXTURE_EXTERNAL_OES = 0x8D65,
GL_TEXTURE_BINDING_EXTERNAL_OES = 0x8D67,
GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES = 0x8D68,
};
#endif
#ifndef GL_EXT_base_instance
#define GL_EXT_base_instance 1
extern void (KHRONOS_APIENTRY* const& glDrawArraysInstancedBaseInstanceEXT) (GLenum mode, GLint first, GLsizei count, GLsizei instancecount, GLuint baseinstance);
extern void (KHRONOS_APIENTRY* const& glDrawElementsInstancedBaseInstanceEXT) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLuint baseinstance);
extern void (KHRONOS_APIENTRY* const& glDrawElementsInstancedBaseVertexBaseInstanceEXT) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex, GLuint baseinstance);
#endif
#ifndef GL_EXT_blend_func_extended
#define GL_EXT_blend_func_extended 1
enum : GLenum
{
GL_SRC1_COLOR_EXT = 0x88F9,
GL_SRC1_ALPHA_EXT = 0x8589,
GL_ONE_MINUS_SRC1_COLOR_EXT = 0x88FA,
GL_ONE_MINUS_SRC1_ALPHA_EXT = 0x88FB,
GL_SRC_ALPHA_SATURATE_EXT = 0x0308,
GL_LOCATION_INDEX_EXT = 0x930F,
GL_MAX_DUAL_SOURCE_DRAW_BUFFERS_EXT = 0x88FC,
};
extern void (KHRONOS_APIENTRY* const& glBindFragDataLocationIndexedEXT) (GLuint program, GLuint colorNumber, GLuint index, const GLchar *name);
extern void (KHRONOS_APIENTRY* const& glBindFragDataLocationEXT) (GLuint program, GLuint color, const GLchar *name);
extern GLint (KHRONOS_APIENTRY* const& glGetProgramResourceLocationIndexEXT) (GLuint program, GLenum programInterface, const GLchar *name);
extern GLint (KHRONOS_APIENTRY* const& glGetFragDataIndexEXT) (GLuint program, const GLchar *name);
#endif
#ifndef GL_EXT_blend_minmax
#define GL_EXT_blend_minmax 1
enum : GLenum
{
GL_MIN_EXT = 0x8007,
GL_MAX_EXT = 0x8008,
GL_FUNC_ADD_EXT = 0x8006,
GL_BLEND_EQUATION_EXT = 0x8009,
};
extern void (KHRONOS_APIENTRY* const& glBlendEquationEXT) (GLenum mode);
#endif
#ifndef GL_EXT_buffer_storage
#define GL_EXT_buffer_storage 1
enum : GLenum
{
GL_MAP_PERSISTENT_BIT_EXT = 0x0040,
GL_MAP_COHERENT_BIT_EXT = 0x0080,
GL_DYNAMIC_STORAGE_BIT_EXT = 0x0100,
GL_CLIENT_STORAGE_BIT_EXT = 0x0200,
GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT_EXT = 0x00004000,
GL_BUFFER_IMMUTABLE_STORAGE_EXT = 0x821F,
GL_BUFFER_STORAGE_FLAGS_EXT = 0x8220,
};
extern void (KHRONOS_APIENTRY* const& glBufferStorageEXT) (GLenum target, GLsizeiptr size, const void *data, GLbitfield flags);
#endif
#ifndef GL_EXT_clear_texture
#define GL_EXT_clear_texture 1
extern void (KHRONOS_APIENTRY* const& glClearTexImageEXT) (GLuint texture, GLint level, GLenum format, GLenum type, const void *data);
extern void (KHRONOS_APIENTRY* const& glClearTexSubImageEXT) (GLuint texture, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *data);
#endif
#ifndef GL_EXT_clip_control
#define GL_EXT_clip_control 1
enum : GLenum
{
GL_LOWER_LEFT_EXT = 0x8CA1,
GL_UPPER_LEFT_EXT = 0x8CA2,
GL_NEGATIVE_ONE_TO_ONE_EXT = 0x935E,
GL_ZERO_TO_ONE_EXT = 0x935F,
GL_CLIP_ORIGIN_EXT = 0x935C,
GL_CLIP_DEPTH_MODE_EXT = 0x935D,
};
extern void (KHRONOS_APIENTRY* const& glClipControlEXT) (GLenum origin, GLenum depth);
#endif
#ifndef GL_EXT_clip_cull_distance
#define GL_EXT_clip_cull_distance 1
enum : GLenum
{
GL_MAX_CLIP_DISTANCES_EXT = 0x0D32,
GL_MAX_CULL_DISTANCES_EXT = 0x82F9,
GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES_EXT = 0x82FA,
GL_CLIP_DISTANCE0_EXT = 0x3000,
GL_CLIP_DISTANCE1_EXT = 0x3001,
GL_CLIP_DISTANCE2_EXT = 0x3002,
GL_CLIP_DISTANCE3_EXT = 0x3003,
GL_CLIP_DISTANCE4_EXT = 0x3004,
GL_CLIP_DISTANCE5_EXT = 0x3005,
GL_CLIP_DISTANCE6_EXT = 0x3006,
GL_CLIP_DISTANCE7_EXT = 0x3007,
};
#endif
#ifndef GL_EXT_color_buffer_float
#define GL_EXT_color_buffer_float 1
#endif
#ifndef GL_EXT_color_buffer_half_float
#define GL_EXT_color_buffer_half_float 1
enum : GLenum
{
GL_RGBA16F_EXT = 0x881A,
GL_RGB16F_EXT = 0x881B,
GL_RG16F_EXT = 0x822F,
GL_R16F_EXT = 0x822D,
GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT = 0x8211,
GL_UNSIGNED_NORMALIZED_EXT = 0x8C17,
};
#endif
#ifndef GL_EXT_conservative_depth
#define GL_EXT_conservative_depth 1
#endif
#ifndef GL_EXT_copy_image
#define GL_EXT_copy_image 1
extern void (KHRONOS_APIENTRY* const& glCopyImageSubDataEXT) (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);
#endif
#ifndef GL_EXT_debug_label
#define GL_EXT_debug_label 1
enum : GLenum
{
GL_PROGRAM_PIPELINE_OBJECT_EXT = 0x8A4F,
GL_PROGRAM_OBJECT_EXT = 0x8B40,
GL_SHADER_OBJECT_EXT = 0x8B48,
GL_BUFFER_OBJECT_EXT = 0x9151,
GL_QUERY_OBJECT_EXT = 0x9153,
GL_VERTEX_ARRAY_OBJECT_EXT = 0x9154,
};
extern void (KHRONOS_APIENTRY* const& glLabelObjectEXT) (GLenum type, GLuint object, GLsizei length, const GLchar *label);
extern void (KHRONOS_APIENTRY* const& glGetObjectLabelEXT) (GLenum type, GLuint object, GLsizei bufSize, GLsizei *length, GLchar *label);
#endif
#ifndef GL_EXT_debug_marker
#define GL_EXT_debug_marker 1
extern void (KHRONOS_APIENTRY* const& glInsertEventMarkerEXT) (GLsizei length, const GLchar *marker);
extern void (KHRONOS_APIENTRY* const& glPushGroupMarkerEXT) (GLsizei length, const GLchar *marker);
extern void (KHRONOS_APIENTRY* const& glPopGroupMarkerEXT) ();
#endif
#ifndef GL_EXT_depth_clamp
#define GL_EXT_depth_clamp 1
enum : GLenum
{
GL_DEPTH_CLAMP_EXT = 0x864F,
};
#endif
#ifndef GL_EXT_discard_framebuffer
#define GL_EXT_discard_framebuffer 1
enum : GLenum
{
GL_COLOR_EXT = 0x1800,
GL_DEPTH_EXT = 0x1801,
GL_STENCIL_EXT = 0x1802,
};
extern void (KHRONOS_APIENTRY* const& glDiscardFramebufferEXT) (GLenum target, GLsizei numAttachments, const GLenum *attachments);
#endif
#ifndef GL_EXT_disjoint_timer_query
#define GL_EXT_disjoint_timer_query 1
enum : GLenum
{
GL_QUERY_COUNTER_BITS_EXT = 0x8864,
GL_CURRENT_QUERY_EXT = 0x8865,
GL_QUERY_RESULT_EXT = 0x8866,
GL_QUERY_RESULT_AVAILABLE_EXT = 0x8867,
GL_TIME_ELAPSED_EXT = 0x88BF,
GL_TIMESTAMP_EXT = 0x8E28,
GL_GPU_DISJOINT_EXT = 0x8FBB,
};
extern void (KHRONOS_APIENTRY* const& glGenQueriesEXT) (GLsizei n, GLuint *ids);
extern void (KHRONOS_APIENTRY* const& glDeleteQueriesEXT) (GLsizei n, const GLuint *ids);
extern GLboolean (KHRONOS_APIENTRY* const& glIsQueryEXT) (GLuint id);
extern void (KHRONOS_APIENTRY* const& glBeginQueryEXT) (GLenum target, GLuint id);
extern void (KHRONOS_APIENTRY* const& glEndQueryEXT) (GLenum target);
extern void (KHRONOS_APIENTRY* const& glQueryCounterEXT) (GLuint id, GLenum target);
extern void (KHRONOS_APIENTRY* const& glGetQueryivEXT) (GLenum target, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetQueryObjectivEXT) (GLuint id, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetQueryObjectuivEXT) (GLuint id, GLenum pname, GLuint *params);
extern void (KHRONOS_APIENTRY* const& glGetQueryObjecti64vEXT) (GLuint id, GLenum pname, GLint64 *params);
extern void (KHRONOS_APIENTRY* const& glGetQueryObjectui64vEXT) (GLuint id, GLenum pname, GLuint64 *params);
extern void (KHRONOS_APIENTRY* const& glGetInteger64vEXT) (GLenum pname, GLint64 *data);
#endif
#ifndef GL_EXT_draw_buffers
#define GL_EXT_draw_buffers 1
enum : GLenum
{
GL_MAX_COLOR_ATTACHMENTS_EXT = 0x8CDF,
GL_MAX_DRAW_BUFFERS_EXT = 0x8824,
GL_DRAW_BUFFER0_EXT = 0x8825,
GL_DRAW_BUFFER1_EXT = 0x8826,
GL_DRAW_BUFFER2_EXT = 0x8827,
GL_DRAW_BUFFER3_EXT = 0x8828,
GL_DRAW_BUFFER4_EXT = 0x8829,
GL_DRAW_BUFFER5_EXT = 0x882A,
GL_DRAW_BUFFER6_EXT = 0x882B,
GL_DRAW_BUFFER7_EXT = 0x882C,
GL_DRAW_BUFFER8_EXT = 0x882D,
GL_DRAW_BUFFER9_EXT = 0x882E,
GL_DRAW_BUFFER10_EXT = 0x882F,
GL_DRAW_BUFFER11_EXT = 0x8830,
GL_DRAW_BUFFER12_EXT = 0x8831,
GL_DRAW_BUFFER13_EXT = 0x8832,
GL_DRAW_BUFFER14_EXT = 0x8833,
GL_DRAW_BUFFER15_EXT = 0x8834,
GL_COLOR_ATTACHMENT0_EXT = 0x8CE0,
GL_COLOR_ATTACHMENT1_EXT = 0x8CE1,
GL_COLOR_ATTACHMENT2_EXT = 0x8CE2,
GL_COLOR_ATTACHMENT3_EXT = 0x8CE3,
GL_COLOR_ATTACHMENT4_EXT = 0x8CE4,
GL_COLOR_ATTACHMENT5_EXT = 0x8CE5,
GL_COLOR_ATTACHMENT6_EXT = 0x8CE6,
GL_COLOR_ATTACHMENT7_EXT = 0x8CE7,
GL_COLOR_ATTACHMENT8_EXT = 0x8CE8,
GL_COLOR_ATTACHMENT9_EXT = 0x8CE9,
GL_COLOR_ATTACHMENT10_EXT = 0x8CEA,
GL_COLOR_ATTACHMENT11_EXT = 0x8CEB,
GL_COLOR_ATTACHMENT12_EXT = 0x8CEC,
GL_COLOR_ATTACHMENT13_EXT = 0x8CED,
GL_COLOR_ATTACHMENT14_EXT = 0x8CEE,
GL_COLOR_ATTACHMENT15_EXT = 0x8CEF,
};
extern void (KHRONOS_APIENTRY* const& glDrawBuffersEXT) (GLsizei n, const GLenum *bufs);
#endif
#ifndef GL_EXT_draw_buffers_indexed
#define GL_EXT_draw_buffers_indexed 1
extern void (KHRONOS_APIENTRY* const& glEnableiEXT) (GLenum target, GLuint index);
extern void (KHRONOS_APIENTRY* const& glDisableiEXT) (GLenum target, GLuint index);
extern void (KHRONOS_APIENTRY* const& glBlendEquationiEXT) (GLuint buf, GLenum mode);
extern void (KHRONOS_APIENTRY* const& glBlendEquationSeparateiEXT) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
extern void (KHRONOS_APIENTRY* const& glBlendFunciEXT) (GLuint buf, GLenum src, GLenum dst);
extern void (KHRONOS_APIENTRY* const& glBlendFuncSeparateiEXT) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
extern void (KHRONOS_APIENTRY* const& glColorMaskiEXT) (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
extern GLboolean (KHRONOS_APIENTRY* const& glIsEnablediEXT) (GLenum target, GLuint index);
#endif
#ifndef GL_EXT_draw_elements_base_vertex
#define GL_EXT_draw_elements_base_vertex 1
extern void (KHRONOS_APIENTRY* const& glDrawElementsBaseVertexEXT) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex);
extern void (KHRONOS_APIENTRY* const& glDrawRangeElementsBaseVertexEXT) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex);
extern void (KHRONOS_APIENTRY* const& glDrawElementsInstancedBaseVertexEXT) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex);
extern void (KHRONOS_APIENTRY* const& glMultiDrawElementsBaseVertexEXT) (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount, const GLint *basevertex);
#endif
#ifndef GL_EXT_draw_instanced
#define GL_EXT_draw_instanced 1
extern void (KHRONOS_APIENTRY* const& glDrawArraysInstancedEXT) (GLenum mode, GLint start, GLsizei count, GLsizei primcount);
extern void (KHRONOS_APIENTRY* const& glDrawElementsInstancedEXT) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
#endif
#ifndef GL_EXT_draw_transform_feedback
#define GL_EXT_draw_transform_feedback 1
extern void (KHRONOS_APIENTRY* const& glDrawTransformFeedbackEXT) (GLenum mode, GLuint id);
extern void (KHRONOS_APIENTRY* const& glDrawTransformFeedbackInstancedEXT) (GLenum mode, GLuint id, GLsizei instancecount);
#endif
#ifndef GL_EXT_external_buffer
#define GL_EXT_external_buffer 1
extern void (KHRONOS_APIENTRY* const& glBufferStorageExternalEXT) (GLenum target, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags);
extern void (KHRONOS_APIENTRY* const& glNamedBufferStorageExternalEXT) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLeglClientBufferEXT clientBuffer, GLbitfield flags);
#endif
#ifndef GL_EXT_float_blend
#define GL_EXT_float_blend 1
#endif
#ifndef GL_EXT_geometry_point_size
#define GL_EXT_geometry_point_size 1
#endif
#ifndef GL_EXT_geometry_shader
#define GL_EXT_geometry_shader 1
enum : GLenum
{
GL_GEOMETRY_SHADER_EXT = 0x8DD9,
GL_GEOMETRY_SHADER_BIT_EXT = 0x00000004,
GL_GEOMETRY_LINKED_VERTICES_OUT_EXT = 0x8916,
GL_GEOMETRY_LINKED_INPUT_TYPE_EXT = 0x8917,
GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT = 0x8918,
GL_GEOMETRY_SHADER_INVOCATIONS_EXT = 0x887F,
GL_LAYER_PROVOKING_VERTEX_EXT = 0x825E,
GL_LINES_ADJACENCY_EXT = 0x000A,
GL_LINE_STRIP_ADJACENCY_EXT = 0x000B,
GL_TRIANGLES_ADJACENCY_EXT = 0x000C,
GL_TRIANGLE_STRIP_ADJACENCY_EXT = 0x000D,
GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT = 0x8DDF,
GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT = 0x8A2C,
GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT = 0x8A32,
GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT = 0x9123,
GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT = 0x9124,
GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT = 0x8DE0,
GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT = 0x8DE1,
GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT = 0x8E5A,
GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT = 0x8C29,
GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT = 0x92CF,
GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT = 0x92D5,
GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT = 0x90CD,
GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT = 0x90D7,
GL_FIRST_VERTEX_CONVENTION_EXT = 0x8E4D,
GL_LAST_VERTEX_CONVENTION_EXT = 0x8E4E,
GL_UNDEFINED_VERTEX_EXT = 0x8260,
GL_PRIMITIVES_GENERATED_EXT = 0x8C87,
GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT = 0x9312,
GL_MAX_FRAMEBUFFER_LAYERS_EXT = 0x9317,
GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT = 0x8DA8,
GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT = 0x8DA7,
GL_REFERENCED_BY_GEOMETRY_SHADER_EXT = 0x9309,
};
extern void (KHRONOS_APIENTRY* const& glFramebufferTextureEXT) (GLenum target, GLenum attachment, GLuint texture, GLint level);
#endif
#ifndef GL_EXT_gpu_shader5
#define GL_EXT_gpu_shader5 1
#endif
#ifndef GL_EXT_instanced_arrays
#define GL_EXT_instanced_arrays 1
enum : GLenum
{
GL_VERTEX_ATTRIB_ARRAY_DIVISOR_EXT = 0x88FE,
};
extern void (KHRONOS_APIENTRY* const& glVertexAttribDivisorEXT) (GLuint index, GLuint divisor);
#endif
#ifndef GL_EXT_map_buffer_range
#define GL_EXT_map_buffer_range 1
enum : GLenum
{
GL_MAP_READ_BIT_EXT = 0x0001,
GL_MAP_WRITE_BIT_EXT = 0x0002,
GL_MAP_INVALIDATE_RANGE_BIT_EXT = 0x0004,
GL_MAP_INVALIDATE_BUFFER_BIT_EXT = 0x0008,
GL_MAP_FLUSH_EXPLICIT_BIT_EXT = 0x0010,
GL_MAP_UNSYNCHRONIZED_BIT_EXT = 0x0020,
};
extern void * (KHRONOS_APIENTRY* const& glMapBufferRangeEXT) (GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access);
extern void (KHRONOS_APIENTRY* const& glFlushMappedBufferRangeEXT) (GLenum target, GLintptr offset, GLsizeiptr length);
#endif
#ifndef GL_EXT_memory_object
#define GL_EXT_memory_object 1
enum : GLenum
{
GL_TEXTURE_TILING_EXT = 0x9580,
GL_DEDICATED_MEMORY_OBJECT_EXT = 0x9581,
GL_PROTECTED_MEMORY_OBJECT_EXT = 0x959B,
GL_NUM_TILING_TYPES_EXT = 0x9582,
GL_TILING_TYPES_EXT = 0x9583,
GL_OPTIMAL_TILING_EXT = 0x9584,
GL_LINEAR_TILING_EXT = 0x9585,
GL_NUM_DEVICE_UUIDS_EXT = 0x9596,
GL_DEVICE_UUID_EXT = 0x9597,
GL_DRIVER_UUID_EXT = 0x9598,
GL_UUID_SIZE_EXT = 16,
};
extern void (KHRONOS_APIENTRY* const& glGetUnsignedBytevEXT) (GLenum pname, GLubyte *data);
extern void (KHRONOS_APIENTRY* const& glGetUnsignedBytei_vEXT) (GLenum target, GLuint index, GLubyte *data);
extern void (KHRONOS_APIENTRY* const& glDeleteMemoryObjectsEXT) (GLsizei n, const GLuint *memoryObjects);
extern GLboolean (KHRONOS_APIENTRY* const& glIsMemoryObjectEXT) (GLuint memoryObject);
extern void (KHRONOS_APIENTRY* const& glCreateMemoryObjectsEXT) (GLsizei n, GLuint *memoryObjects);
extern void (KHRONOS_APIENTRY* const& glMemoryObjectParameterivEXT) (GLuint memoryObject, GLenum pname, const GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetMemoryObjectParameterivEXT) (GLuint memoryObject, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glTexStorageMem2DEXT) (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glTexStorageMem2DMultisampleEXT) (GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glTexStorageMem3DEXT) (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glTexStorageMem3DMultisampleEXT) (GLenum target, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glBufferStorageMemEXT) (GLenum target, GLsizeiptr size, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glTextureStorageMem2DEXT) (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glTextureStorageMem2DMultisampleEXT) (GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glTextureStorageMem3DEXT) (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glTextureStorageMem3DMultisampleEXT) (GLuint texture, GLsizei samples, GLenum internalFormat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedSampleLocations, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glNamedBufferStorageMemEXT) (GLuint buffer, GLsizeiptr size, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glTexStorageMem1DEXT) (GLenum target, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glTextureStorageMem1DEXT) (GLuint texture, GLsizei levels, GLenum internalFormat, GLsizei width, GLuint memory, GLuint64 offset);
#endif
#ifndef GL_EXT_memory_object_fd
#define GL_EXT_memory_object_fd 1
enum : GLenum
{
GL_HANDLE_TYPE_OPAQUE_FD_EXT = 0x9586,
};
extern void (KHRONOS_APIENTRY* const& glImportMemoryFdEXT) (GLuint memory, GLuint64 size, GLenum handleType, GLint fd);
#endif
#ifndef GL_EXT_memory_object_win32
#define GL_EXT_memory_object_win32 1
enum : GLenum
{
GL_HANDLE_TYPE_OPAQUE_WIN32_EXT = 0x9587,
GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT = 0x9588,
GL_DEVICE_LUID_EXT = 0x9599,
GL_DEVICE_NODE_MASK_EXT = 0x959A,
GL_LUID_SIZE_EXT = 8,
GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT = 0x9589,
GL_HANDLE_TYPE_D3D12_RESOURCE_EXT = 0x958A,
GL_HANDLE_TYPE_D3D11_IMAGE_EXT = 0x958B,
GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT = 0x958C,
};
extern void (KHRONOS_APIENTRY* const& glImportMemoryWin32HandleEXT) (GLuint memory, GLuint64 size, GLenum handleType, void *handle);
extern void (KHRONOS_APIENTRY* const& glImportMemoryWin32NameEXT) (GLuint memory, GLuint64 size, GLenum handleType, const void *name);
#endif
#ifndef GL_EXT_multi_draw_arrays
#define GL_EXT_multi_draw_arrays 1
extern void (KHRONOS_APIENTRY* const& glMultiDrawArraysEXT) (GLenum mode, const GLint *first, const GLsizei *count, GLsizei primcount);
extern void (KHRONOS_APIENTRY* const& glMultiDrawElementsEXT) (GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei primcount);
#endif
#ifndef GL_EXT_multi_draw_indirect
#define GL_EXT_multi_draw_indirect 1
extern void (KHRONOS_APIENTRY* const& glMultiDrawArraysIndirectEXT) (GLenum mode, const void *indirect, GLsizei drawcount, GLsizei stride);
extern void (KHRONOS_APIENTRY* const& glMultiDrawElementsIndirectEXT) (GLenum mode, GLenum type, const void *indirect, GLsizei drawcount, GLsizei stride);
#endif
#ifndef GL_EXT_multisampled_compatibility
#define GL_EXT_multisampled_compatibility 1
enum : GLenum
{
GL_MULTISAMPLE_EXT = 0x809D,
GL_SAMPLE_ALPHA_TO_ONE_EXT = 0x809F,
};
#endif
#ifndef GL_EXT_multisampled_render_to_texture
#define GL_EXT_multisampled_render_to_texture 1
enum : GLenum
{
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT = 0x8D6C,
GL_RENDERBUFFER_SAMPLES_EXT = 0x8CAB,
GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT = 0x8D56,
GL_MAX_SAMPLES_EXT = 0x8D57,
};
extern void (KHRONOS_APIENTRY* const& glRenderbufferStorageMultisampleEXT) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glFramebufferTexture2DMultisampleEXT) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
#endif
#ifndef GL_EXT_multisampled_render_to_texture2
#define GL_EXT_multisampled_render_to_texture2 1
#endif
#ifndef GL_EXT_multiview_draw_buffers
#define GL_EXT_multiview_draw_buffers 1
enum : GLenum
{
GL_COLOR_ATTACHMENT_EXT = 0x90F0,
GL_MULTIVIEW_EXT = 0x90F1,
GL_DRAW_BUFFER_EXT = 0x0C01,
GL_READ_BUFFER_EXT = 0x0C02,
GL_MAX_MULTIVIEW_BUFFERS_EXT = 0x90F2,
};
extern void (KHRONOS_APIENTRY* const& glReadBufferIndexedEXT) (GLenum src, GLint index);
extern void (KHRONOS_APIENTRY* const& glDrawBuffersIndexedEXT) (GLint n, const GLenum *location, const GLint *indices);
extern void (KHRONOS_APIENTRY* const& glGetIntegeri_vEXT) (GLenum target, GLuint index, GLint *data);
#endif
#ifndef GL_EXT_multiview_tessellation_geometry_shader
#define GL_EXT_multiview_tessellation_geometry_shader 1
#endif
#ifndef GL_EXT_multiview_texture_multisample
#define GL_EXT_multiview_texture_multisample 1
#endif
#ifndef GL_EXT_multiview_timer_query
#define GL_EXT_multiview_timer_query 1
#endif
#ifndef GL_EXT_occlusion_query_boolean
#define GL_EXT_occlusion_query_boolean 1
enum : GLenum
{
GL_ANY_SAMPLES_PASSED_EXT = 0x8C2F,
GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT = 0x8D6A,
};
#endif
#ifndef GL_EXT_polygon_offset_clamp
#define GL_EXT_polygon_offset_clamp 1
enum : GLenum
{
GL_POLYGON_OFFSET_CLAMP_EXT = 0x8E1B,
};
extern void (KHRONOS_APIENTRY* const& glPolygonOffsetClampEXT) (GLfloat factor, GLfloat units, GLfloat clamp);
#endif
#ifndef GL_EXT_post_depth_coverage
#define GL_EXT_post_depth_coverage 1
#endif
#ifndef GL_EXT_primitive_bounding_box
#define GL_EXT_primitive_bounding_box 1
enum : GLenum
{
GL_PRIMITIVE_BOUNDING_BOX_EXT = 0x92BE,
};
extern void (KHRONOS_APIENTRY* const& glPrimitiveBoundingBoxEXT) (GLfloat minX, GLfloat minY, GLfloat minZ, GLfloat minW, GLfloat maxX, GLfloat maxY, GLfloat maxZ, GLfloat maxW);
#endif
#ifndef GL_EXT_protected_textures
#define GL_EXT_protected_textures 1
enum : GLenum
{
GL_CONTEXT_FLAG_PROTECTED_CONTENT_BIT_EXT = 0x00000010,
GL_TEXTURE_PROTECTED_EXT = 0x8BFA,
};
#endif
#ifndef GL_EXT_pvrtc_sRGB
#define GL_EXT_pvrtc_sRGB 1
enum : GLenum
{
GL_COMPRESSED_SRGB_PVRTC_2BPPV1_EXT = 0x8A54,
GL_COMPRESSED_SRGB_PVRTC_4BPPV1_EXT = 0x8A55,
GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV1_EXT = 0x8A56,
GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV1_EXT = 0x8A57,
GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV2_IMG = 0x93F0,
GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV2_IMG = 0x93F1,
};
#endif
#ifndef GL_EXT_raster_multisample
#define GL_EXT_raster_multisample 1
enum : GLenum
{
GL_RASTER_MULTISAMPLE_EXT = 0x9327,
GL_RASTER_SAMPLES_EXT = 0x9328,
GL_MAX_RASTER_SAMPLES_EXT = 0x9329,
GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT = 0x932A,
GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT = 0x932B,
GL_EFFECTIVE_RASTER_SAMPLES_EXT = 0x932C,
};
extern void (KHRONOS_APIENTRY* const& glRasterSamplesEXT) (GLuint samples, GLboolean fixedsamplelocations);
#endif
#ifndef GL_EXT_read_format_bgra
#define GL_EXT_read_format_bgra 1
enum : GLenum
{
GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT = 0x8365,
GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT = 0x8366,
};
#endif
#ifndef GL_EXT_render_snorm
#define GL_EXT_render_snorm 1
enum : GLenum
{
GL_R16_SNORM_EXT = 0x8F98,
GL_RG16_SNORM_EXT = 0x8F99,
GL_RGBA16_SNORM_EXT = 0x8F9B,
};
#endif
#ifndef GL_EXT_robustness
#define GL_EXT_robustness 1
enum : GLenum
{
GL_GUILTY_CONTEXT_RESET_EXT = 0x8253,
GL_INNOCENT_CONTEXT_RESET_EXT = 0x8254,
GL_UNKNOWN_CONTEXT_RESET_EXT = 0x8255,
GL_CONTEXT_ROBUST_ACCESS_EXT = 0x90F3,
GL_RESET_NOTIFICATION_STRATEGY_EXT = 0x8256,
GL_LOSE_CONTEXT_ON_RESET_EXT = 0x8252,
GL_NO_RESET_NOTIFICATION_EXT = 0x8261,
};
extern GLenum (KHRONOS_APIENTRY* const& glGetGraphicsResetStatusEXT) ();
extern void (KHRONOS_APIENTRY* const& glReadnPixelsEXT) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
extern void (KHRONOS_APIENTRY* const& glGetnUniformfvEXT) (GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
extern void (KHRONOS_APIENTRY* const& glGetnUniformivEXT) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
#endif
#ifndef GL_EXT_semaphore
#define GL_EXT_semaphore 1
enum : GLenum
{
GL_LAYOUT_GENERAL_EXT = 0x958D,
GL_LAYOUT_COLOR_ATTACHMENT_EXT = 0x958E,
GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT = 0x958F,
GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT = 0x9590,
GL_LAYOUT_SHADER_READ_ONLY_EXT = 0x9591,
GL_LAYOUT_TRANSFER_SRC_EXT = 0x9592,
GL_LAYOUT_TRANSFER_DST_EXT = 0x9593,
GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT = 0x9530,
GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT = 0x9531,
};
extern void (KHRONOS_APIENTRY* const& glGenSemaphoresEXT) (GLsizei n, GLuint *semaphores);
extern void (KHRONOS_APIENTRY* const& glDeleteSemaphoresEXT) (GLsizei n, const GLuint *semaphores);
extern GLboolean (KHRONOS_APIENTRY* const& glIsSemaphoreEXT) (GLuint semaphore);
extern void (KHRONOS_APIENTRY* const& glSemaphoreParameterui64vEXT) (GLuint semaphore, GLenum pname, const GLuint64 *params);
extern void (KHRONOS_APIENTRY* const& glGetSemaphoreParameterui64vEXT) (GLuint semaphore, GLenum pname, GLuint64 *params);
extern void (KHRONOS_APIENTRY* const& glWaitSemaphoreEXT) (GLuint semaphore, GLuint numBufferBarriers, const GLuint *buffers, GLuint numTextureBarriers, const GLuint *textures, const GLenum *srcLayouts);
extern void (KHRONOS_APIENTRY* const& glSignalSemaphoreEXT) (GLuint semaphore, GLuint numBufferBarriers, const GLuint *buffers, GLuint numTextureBarriers, const GLuint *textures, const GLenum *dstLayouts);
#endif
#ifndef GL_EXT_semaphore_fd
#define GL_EXT_semaphore_fd 1
extern void (KHRONOS_APIENTRY* const& glImportSemaphoreFdEXT) (GLuint semaphore, GLenum handleType, GLint fd);
#endif
#ifndef GL_EXT_semaphore_win32
#define GL_EXT_semaphore_win32 1
enum : GLenum
{
GL_HANDLE_TYPE_D3D12_FENCE_EXT = 0x9594,
GL_D3D12_FENCE_VALUE_EXT = 0x9595,
};
extern void (KHRONOS_APIENTRY* const& glImportSemaphoreWin32HandleEXT) (GLuint semaphore, GLenum handleType, void *handle);
extern void (KHRONOS_APIENTRY* const& glImportSemaphoreWin32NameEXT) (GLuint semaphore, GLenum handleType, const void *name);
#endif
#ifndef GL_EXT_sRGB
#define GL_EXT_sRGB 1
enum : GLenum
{
GL_SRGB_EXT = 0x8C40,
GL_SRGB_ALPHA_EXT = 0x8C42,
GL_SRGB8_ALPHA8_EXT = 0x8C43,
GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT = 0x8210,
};
#endif
#ifndef GL_EXT_sRGB_write_control
#define GL_EXT_sRGB_write_control 1
enum : GLenum
{
GL_FRAMEBUFFER_SRGB_EXT = 0x8DB9,
};
#endif
#ifndef GL_EXT_separate_shader_objects
#define GL_EXT_separate_shader_objects 1
enum : GLenum
{
GL_ACTIVE_PROGRAM_EXT = 0x8B8D,
GL_VERTEX_SHADER_BIT_EXT = 0x00000001,
GL_FRAGMENT_SHADER_BIT_EXT = 0x00000002,
GL_ALL_SHADER_BITS_EXT = 0xFFFFFFFF,
GL_PROGRAM_SEPARABLE_EXT = 0x8258,
GL_PROGRAM_PIPELINE_BINDING_EXT = 0x825A,
};
extern void (KHRONOS_APIENTRY* const& glUseShaderProgramEXT) (GLenum type, GLuint program);
extern void (KHRONOS_APIENTRY* const& glActiveProgramEXT) (GLuint program);
extern GLuint (KHRONOS_APIENTRY* const& glCreateShaderProgramEXT) (GLenum type, const GLchar *string);
extern void (KHRONOS_APIENTRY* const& glActiveShaderProgramEXT) (GLuint pipeline, GLuint program);
extern void (KHRONOS_APIENTRY* const& glBindProgramPipelineEXT) (GLuint pipeline);
extern GLuint (KHRONOS_APIENTRY* const& glCreateShaderProgramvEXT) (GLenum type, GLsizei count, const GLchar **strings);
extern void (KHRONOS_APIENTRY* const& glDeleteProgramPipelinesEXT) (GLsizei n, const GLuint *pipelines);
extern void (KHRONOS_APIENTRY* const& glGenProgramPipelinesEXT) (GLsizei n, GLuint *pipelines);
extern void (KHRONOS_APIENTRY* const& glGetProgramPipelineInfoLogEXT) (GLuint pipeline, GLsizei bufSize, GLsizei *length, GLchar *infoLog);
extern void (KHRONOS_APIENTRY* const& glGetProgramPipelineivEXT) (GLuint pipeline, GLenum pname, GLint *params);
extern GLboolean (KHRONOS_APIENTRY* const& glIsProgramPipelineEXT) (GLuint pipeline);
extern void (KHRONOS_APIENTRY* const& glProgramParameteriEXT) (GLuint program, GLenum pname, GLint value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1fEXT) (GLuint program, GLint location, GLfloat v0);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1fvEXT) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1iEXT) (GLuint program, GLint location, GLint v0);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1ivEXT) (GLuint program, GLint location, GLsizei count, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2fEXT) (GLuint program, GLint location, GLfloat v0, GLfloat v1);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2fvEXT) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2iEXT) (GLuint program, GLint location, GLint v0, GLint v1);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2ivEXT) (GLuint program, GLint location, GLsizei count, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3fEXT) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3fvEXT) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3iEXT) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3ivEXT) (GLuint program, GLint location, GLsizei count, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4fEXT) (GLuint program, GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4fvEXT) (GLuint program, GLint location, GLsizei count, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4iEXT) (GLuint program, GLint location, GLint v0, GLint v1, GLint v2, GLint v3);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4ivEXT) (GLuint program, GLint location, GLsizei count, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix2fvEXT) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix3fvEXT) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix4fvEXT) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUseProgramStagesEXT) (GLuint pipeline, GLbitfield stages, GLuint program);
extern void (KHRONOS_APIENTRY* const& glValidateProgramPipelineEXT) (GLuint pipeline);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1uiEXT) (GLuint program, GLint location, GLuint v0);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2uiEXT) (GLuint program, GLint location, GLuint v0, GLuint v1);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3uiEXT) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4uiEXT) (GLuint program, GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1uivEXT) (GLuint program, GLint location, GLsizei count, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2uivEXT) (GLuint program, GLint location, GLsizei count, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3uivEXT) (GLuint program, GLint location, GLsizei count, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4uivEXT) (GLuint program, GLint location, GLsizei count, const GLuint *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix2x3fvEXT) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix3x2fvEXT) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix2x4fvEXT) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix4x2fvEXT) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix3x4fvEXT) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformMatrix4x3fvEXT) (GLuint program, GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
#endif
#ifndef GL_EXT_shader_framebuffer_fetch
#define GL_EXT_shader_framebuffer_fetch 1
enum : GLenum
{
GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT = 0x8A52,
};
#endif
#ifndef GL_EXT_shader_framebuffer_fetch_non_coherent
#define GL_EXT_shader_framebuffer_fetch_non_coherent 1
extern void (KHRONOS_APIENTRY* const& glFramebufferFetchBarrierEXT) ();
#endif
#ifndef GL_EXT_shader_group_vote
#define GL_EXT_shader_group_vote 1
#endif
#ifndef GL_EXT_shader_implicit_conversions
#define GL_EXT_shader_implicit_conversions 1
#endif
#ifndef GL_EXT_shader_integer_mix
#define GL_EXT_shader_integer_mix 1
#endif
#ifndef GL_EXT_shader_io_blocks
#define GL_EXT_shader_io_blocks 1
#endif
#ifndef GL_EXT_shader_non_constant_global_initializers
#define GL_EXT_shader_non_constant_global_initializers 1
#endif
#ifndef GL_EXT_shader_pixel_local_storage
#define GL_EXT_shader_pixel_local_storage 1
enum : GLenum
{
GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT = 0x8F63,
GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_SIZE_EXT = 0x8F67,
GL_SHADER_PIXEL_LOCAL_STORAGE_EXT = 0x8F64,
};
#endif
#ifndef GL_EXT_shader_pixel_local_storage2
#define GL_EXT_shader_pixel_local_storage2 1
enum : GLenum
{
GL_MAX_SHADER_COMBINED_LOCAL_STORAGE_FAST_SIZE_EXT = 0x9650,
GL_MAX_SHADER_COMBINED_LOCAL_STORAGE_SIZE_EXT = 0x9651,
GL_FRAMEBUFFER_INCOMPLETE_INSUFFICIENT_SHADER_COMBINED_LOCAL_STORAGE_EXT = 0x9652,
};
extern void (KHRONOS_APIENTRY* const& glFramebufferPixelLocalStorageSizeEXT) (GLuint target, GLsizei size);
extern GLsizei (KHRONOS_APIENTRY* const& glGetFramebufferPixelLocalStorageSizeEXT) (GLuint target);
extern void (KHRONOS_APIENTRY* const& glClearPixelLocalStorageuiEXT) (GLsizei offset, GLsizei n, const GLuint *values);
#endif
#ifndef GL_EXT_shader_texture_lod
#define GL_EXT_shader_texture_lod 1
#endif
#ifndef GL_EXT_shadow_samplers
#define GL_EXT_shadow_samplers 1
enum : GLenum
{
GL_TEXTURE_COMPARE_MODE_EXT = 0x884C,
GL_TEXTURE_COMPARE_FUNC_EXT = 0x884D,
GL_COMPARE_REF_TO_TEXTURE_EXT = 0x884E,
GL_SAMPLER_2D_SHADOW_EXT = 0x8B62,
};
#endif
#ifndef GL_EXT_sparse_texture
#define GL_EXT_sparse_texture 1
enum : GLenum
{
GL_TEXTURE_SPARSE_EXT = 0x91A6,
GL_VIRTUAL_PAGE_SIZE_INDEX_EXT = 0x91A7,
GL_NUM_SPARSE_LEVELS_EXT = 0x91AA,
GL_NUM_VIRTUAL_PAGE_SIZES_EXT = 0x91A8,
GL_VIRTUAL_PAGE_SIZE_X_EXT = 0x9195,
GL_VIRTUAL_PAGE_SIZE_Y_EXT = 0x9196,
GL_VIRTUAL_PAGE_SIZE_Z_EXT = 0x9197,
GL_TEXTURE_CUBE_MAP_ARRAY_OES = 0x9009,
GL_MAX_SPARSE_TEXTURE_SIZE_EXT = 0x9198,
GL_MAX_SPARSE_3D_TEXTURE_SIZE_EXT = 0x9199,
GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_EXT = 0x919A,
GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_EXT = 0x91A9,
};
extern void (KHRONOS_APIENTRY* const& glTexPageCommitmentEXT) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLboolean commit);
#endif
#ifndef GL_EXT_sparse_texture2
#define GL_EXT_sparse_texture2 1
#endif
#ifndef GL_EXT_tessellation_point_size
#define GL_EXT_tessellation_point_size 1
#endif
#ifndef GL_EXT_tessellation_shader
#define GL_EXT_tessellation_shader 1
enum : GLenum
{
GL_PATCHES_EXT = 0x000E,
GL_PATCH_VERTICES_EXT = 0x8E72,
GL_TESS_CONTROL_OUTPUT_VERTICES_EXT = 0x8E75,
GL_TESS_GEN_MODE_EXT = 0x8E76,
GL_TESS_GEN_SPACING_EXT = 0x8E77,
GL_TESS_GEN_VERTEX_ORDER_EXT = 0x8E78,
GL_TESS_GEN_POINT_MODE_EXT = 0x8E79,
GL_ISOLINES_EXT = 0x8E7A,
GL_QUADS_EXT = 0x0007,
GL_FRACTIONAL_ODD_EXT = 0x8E7B,
GL_FRACTIONAL_EVEN_EXT = 0x8E7C,
GL_MAX_PATCH_VERTICES_EXT = 0x8E7D,
GL_MAX_TESS_GEN_LEVEL_EXT = 0x8E7E,
GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_EXT = 0x8E7F,
GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT = 0x8E80,
GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_EXT = 0x8E81,
GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_EXT = 0x8E82,
GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_EXT = 0x8E83,
GL_MAX_TESS_PATCH_COMPONENTS_EXT = 0x8E84,
GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_EXT = 0x8E85,
GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_EXT = 0x8E86,
GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_EXT = 0x8E89,
GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_EXT = 0x8E8A,
GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_EXT = 0x886C,
GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_EXT = 0x886D,
GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_EXT = 0x8E1E,
GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT = 0x8E1F,
GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_EXT = 0x92CD,
GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_EXT = 0x92CE,
GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_EXT = 0x92D3,
GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_EXT = 0x92D4,
GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_EXT = 0x90CB,
GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_EXT = 0x90CC,
GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_EXT = 0x90D8,
GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_EXT = 0x90D9,
GL_IS_PER_PATCH_EXT = 0x92E7,
GL_REFERENCED_BY_TESS_CONTROL_SHADER_EXT = 0x9307,
GL_REFERENCED_BY_TESS_EVALUATION_SHADER_EXT = 0x9308,
GL_TESS_CONTROL_SHADER_EXT = 0x8E88,
GL_TESS_EVALUATION_SHADER_EXT = 0x8E87,
GL_TESS_CONTROL_SHADER_BIT_EXT = 0x00000008,
GL_TESS_EVALUATION_SHADER_BIT_EXT = 0x00000010,
};
extern void (KHRONOS_APIENTRY* const& glPatchParameteriEXT) (GLenum pname, GLint value);
#endif
#ifndef GL_EXT_texture_border_clamp
#define GL_EXT_texture_border_clamp 1
enum : GLenum
{
GL_TEXTURE_BORDER_COLOR_EXT = 0x1004,
GL_CLAMP_TO_BORDER_EXT = 0x812D,
};
extern void (KHRONOS_APIENTRY* const& glTexParameterIivEXT) (GLenum target, GLenum pname, const GLint *params);
extern void (KHRONOS_APIENTRY* const& glTexParameterIuivEXT) (GLenum target, GLenum pname, const GLuint *params);
extern void (KHRONOS_APIENTRY* const& glGetTexParameterIivEXT) (GLenum target, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetTexParameterIuivEXT) (GLenum target, GLenum pname, GLuint *params);
extern void (KHRONOS_APIENTRY* const& glSamplerParameterIivEXT) (GLuint sampler, GLenum pname, const GLint *param);
extern void (KHRONOS_APIENTRY* const& glSamplerParameterIuivEXT) (GLuint sampler, GLenum pname, const GLuint *param);
extern void (KHRONOS_APIENTRY* const& glGetSamplerParameterIivEXT) (GLuint sampler, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetSamplerParameterIuivEXT) (GLuint sampler, GLenum pname, GLuint *params);
#endif
#ifndef GL_EXT_texture_buffer
#define GL_EXT_texture_buffer 1
enum : GLenum
{
GL_TEXTURE_BUFFER_EXT = 0x8C2A,
GL_TEXTURE_BUFFER_BINDING_EXT = 0x8C2A,
GL_MAX_TEXTURE_BUFFER_SIZE_EXT = 0x8C2B,
GL_TEXTURE_BINDING_BUFFER_EXT = 0x8C2C,
GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT = 0x8C2D,
GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_EXT = 0x919F,
GL_SAMPLER_BUFFER_EXT = 0x8DC2,
GL_INT_SAMPLER_BUFFER_EXT = 0x8DD0,
GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT = 0x8DD8,
GL_IMAGE_BUFFER_EXT = 0x9051,
GL_INT_IMAGE_BUFFER_EXT = 0x905C,
GL_UNSIGNED_INT_IMAGE_BUFFER_EXT = 0x9067,
GL_TEXTURE_BUFFER_OFFSET_EXT = 0x919D,
GL_TEXTURE_BUFFER_SIZE_EXT = 0x919E,
};
extern void (KHRONOS_APIENTRY* const& glTexBufferEXT) (GLenum target, GLenum internalformat, GLuint buffer);
extern void (KHRONOS_APIENTRY* const& glTexBufferRangeEXT) (GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
#endif
#ifndef GL_EXT_texture_compression_astc_decode_mode
#define GL_EXT_texture_compression_astc_decode_mode 1
enum : GLenum
{
GL_TEXTURE_ASTC_DECODE_PRECISION_EXT = 0x8F69,
};
#endif
#ifndef GL_EXT_texture_compression_bptc
#define GL_EXT_texture_compression_bptc 1
enum : GLenum
{
GL_COMPRESSED_RGBA_BPTC_UNORM_EXT = 0x8E8C,
GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT = 0x8E8D,
GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT = 0x8E8E,
GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT = 0x8E8F,
};
#endif
#ifndef GL_EXT_texture_compression_dxt1
#define GL_EXT_texture_compression_dxt1 1
enum : GLenum
{
GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0,
GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1,
};
#endif
#ifndef GL_EXT_texture_compression_rgtc
#define GL_EXT_texture_compression_rgtc 1
enum : GLenum
{
GL_COMPRESSED_RED_RGTC1_EXT = 0x8DBB,
GL_COMPRESSED_SIGNED_RED_RGTC1_EXT = 0x8DBC,
GL_COMPRESSED_RED_GREEN_RGTC2_EXT = 0x8DBD,
GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT = 0x8DBE,
};
#endif
#ifndef GL_EXT_texture_compression_s3tc
#define GL_EXT_texture_compression_s3tc 1
enum : GLenum
{
GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2,
GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3,
};
#endif
#ifndef GL_EXT_texture_compression_s3tc_srgb
#define GL_EXT_texture_compression_s3tc_srgb 1
enum : GLenum
{
GL_COMPRESSED_SRGB_S3TC_DXT1_EXT = 0x8C4C,
GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 0x8C4D,
GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 0x8C4E,
GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 0x8C4F,
};
#endif
#ifndef GL_EXT_texture_cube_map_array
#define GL_EXT_texture_cube_map_array 1
enum : GLenum
{
GL_TEXTURE_CUBE_MAP_ARRAY_EXT = 0x9009,
GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_EXT = 0x900A,
GL_SAMPLER_CUBE_MAP_ARRAY_EXT = 0x900C,
GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_EXT = 0x900D,
GL_INT_SAMPLER_CUBE_MAP_ARRAY_EXT = 0x900E,
GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_EXT = 0x900F,
GL_IMAGE_CUBE_MAP_ARRAY_EXT = 0x9054,
GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x905F,
GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x906A,
};
#endif
#ifndef GL_EXT_texture_filter_anisotropic
#define GL_EXT_texture_filter_anisotropic 1
enum : GLenum
{
GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE,
GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF,
};
#endif
#ifndef GL_EXT_texture_filter_minmax
#define GL_EXT_texture_filter_minmax 1
enum : GLenum
{
GL_TEXTURE_REDUCTION_MODE_EXT = 0x9366,
GL_WEIGHTED_AVERAGE_EXT = 0x9367,
};
#endif
#ifndef GL_EXT_texture_format_BGRA8888
#define GL_EXT_texture_format_BGRA8888 1
#endif
#ifndef GL_EXT_texture_format_sRGB_override
#define GL_EXT_texture_format_sRGB_override 1
enum : GLenum
{
GL_TEXTURE_FORMAT_SRGB_OVERRIDE_EXT = 0x8FBF,
};
#endif
#ifndef GL_EXT_texture_mirror_clamp_to_edge
#define GL_EXT_texture_mirror_clamp_to_edge 1
enum : GLenum
{
GL_MIRROR_CLAMP_TO_EDGE_EXT = 0x8743,
};
#endif
#ifndef GL_EXT_texture_norm16
#define GL_EXT_texture_norm16 1
enum : GLenum
{
GL_R16_EXT = 0x822A,
GL_RG16_EXT = 0x822C,
GL_RGBA16_EXT = 0x805B,
GL_RGB16_EXT = 0x8054,
GL_RGB16_SNORM_EXT = 0x8F9A,
};
#endif
#ifndef GL_EXT_texture_query_lod
#define GL_EXT_texture_query_lod 1
#endif
#ifndef GL_EXT_texture_rg
#define GL_EXT_texture_rg 1
enum : GLenum
{
GL_RED_EXT = 0x1903,
GL_RG_EXT = 0x8227,
GL_R8_EXT = 0x8229,
GL_RG8_EXT = 0x822B,
};
#endif
#ifndef GL_EXT_texture_sRGB_R8
#define GL_EXT_texture_sRGB_R8 1
enum : GLenum
{
GL_SR8_EXT = 0x8FBD,
};
#endif
#ifndef GL_EXT_texture_sRGB_RG8
#define GL_EXT_texture_sRGB_RG8 1
enum : GLenum
{
GL_SRG8_EXT = 0x8FBE,
};
#endif
#ifndef GL_EXT_texture_sRGB_decode
#define GL_EXT_texture_sRGB_decode 1
enum : GLenum
{
GL_TEXTURE_SRGB_DECODE_EXT = 0x8A48,
GL_DECODE_EXT = 0x8A49,
GL_SKIP_DECODE_EXT = 0x8A4A,
};
#endif
#ifndef GL_EXT_texture_storage
#define GL_EXT_texture_storage 1
enum : GLenum
{
GL_TEXTURE_IMMUTABLE_FORMAT_EXT = 0x912F,
GL_ALPHA8_EXT = 0x803C,
GL_LUMINANCE8_EXT = 0x8040,
GL_LUMINANCE8_ALPHA8_EXT = 0x8045,
GL_RGBA32F_EXT = 0x8814,
GL_RGB32F_EXT = 0x8815,
GL_ALPHA32F_EXT = 0x8816,
GL_LUMINANCE32F_EXT = 0x8818,
GL_LUMINANCE_ALPHA32F_EXT = 0x8819,
GL_ALPHA16F_EXT = 0x881C,
GL_LUMINANCE16F_EXT = 0x881E,
GL_LUMINANCE_ALPHA16F_EXT = 0x881F,
GL_RGB10_A2_EXT = 0x8059,
GL_RGB10_EXT = 0x8052,
GL_R32F_EXT = 0x822E,
GL_RG32F_EXT = 0x8230,
};
extern void (KHRONOS_APIENTRY* const& glTexStorage1DEXT) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
extern void (KHRONOS_APIENTRY* const& glTexStorage2DEXT) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glTexStorage3DEXT) (GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
extern void (KHRONOS_APIENTRY* const& glTextureStorage1DEXT) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width);
extern void (KHRONOS_APIENTRY* const& glTextureStorage2DEXT) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glTextureStorage3DEXT) (GLuint texture, GLenum target, GLsizei levels, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth);
#endif
#ifndef GL_EXT_texture_type_2_10_10_10_REV
#define GL_EXT_texture_type_2_10_10_10_REV 1
enum : GLenum
{
GL_UNSIGNED_INT_2_10_10_10_REV_EXT = 0x8368,
};
#endif
#ifndef GL_EXT_texture_view
#define GL_EXT_texture_view 1
enum : GLenum
{
GL_TEXTURE_VIEW_MIN_LEVEL_EXT = 0x82DB,
GL_TEXTURE_VIEW_NUM_LEVELS_EXT = 0x82DC,
GL_TEXTURE_VIEW_MIN_LAYER_EXT = 0x82DD,
GL_TEXTURE_VIEW_NUM_LAYERS_EXT = 0x82DE,
};
extern void (KHRONOS_APIENTRY* const& glTextureViewEXT) (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
#endif
#ifndef GL_NV_timeline_semaphore
#define GL_NV_timeline_semaphore 1
enum : GLenum
{
GL_TIMELINE_SEMAPHORE_VALUE_NV = 0x9595,
GL_SEMAPHORE_TYPE_NV = 0x95B3,
GL_SEMAPHORE_TYPE_BINARY_NV = 0x95B4,
GL_SEMAPHORE_TYPE_TIMELINE_NV = 0x95B5,
GL_MAX_TIMELINE_SEMAPHORE_VALUE_DIFFERENCE_NV = 0x95B6,
};
extern void (KHRONOS_APIENTRY* const& glCreateSemaphoresNV) (GLsizei n, GLuint *semaphores);
extern void (KHRONOS_APIENTRY* const& glSemaphoreParameterivNV) (GLuint semaphore, GLenum pname, const GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetSemaphoreParameterivNV) (GLuint semaphore, GLenum pname, GLint *params);
#endif
#ifndef GL_EXT_unpack_subimage
#define GL_EXT_unpack_subimage 1
enum : GLenum
{
GL_UNPACK_ROW_LENGTH_EXT = 0x0CF2,
GL_UNPACK_SKIP_ROWS_EXT = 0x0CF3,
GL_UNPACK_SKIP_PIXELS_EXT = 0x0CF4,
};
#endif
#ifndef GL_EXT_win32_keyed_mutex
#define GL_EXT_win32_keyed_mutex 1
extern GLboolean (KHRONOS_APIENTRY* const& glAcquireKeyedMutexWin32EXT) (GLuint memory, GLuint64 key, GLuint timeout);
extern GLboolean (KHRONOS_APIENTRY* const& glReleaseKeyedMutexWin32EXT) (GLuint memory, GLuint64 key);
#endif
#ifndef GL_EXT_window_rectangles
#define GL_EXT_window_rectangles 1
enum : GLenum
{
GL_INCLUSIVE_EXT = 0x8F10,
GL_EXCLUSIVE_EXT = 0x8F11,
GL_WINDOW_RECTANGLE_EXT = 0x8F12,
GL_WINDOW_RECTANGLE_MODE_EXT = 0x8F13,
GL_MAX_WINDOW_RECTANGLES_EXT = 0x8F14,
GL_NUM_WINDOW_RECTANGLES_EXT = 0x8F15,
};
extern void (KHRONOS_APIENTRY* const& glWindowRectanglesEXT) (GLenum mode, GLsizei count, const GLint *box);
#endif
#ifndef GL_FJ_shader_binary_GCCSO
#define GL_FJ_shader_binary_GCCSO 1
enum : GLenum
{
GL_GCCSO_SHADER_BINARY_FJ = 0x9260,
};
#endif
#ifndef GL_IMG_bindless_texture
#define GL_IMG_bindless_texture 1
extern GLuint64 (KHRONOS_APIENTRY* const& glGetTextureHandleIMG) (GLuint texture);
extern GLuint64 (KHRONOS_APIENTRY* const& glGetTextureSamplerHandleIMG) (GLuint texture, GLuint sampler);
extern void (KHRONOS_APIENTRY* const& glUniformHandleui64IMG) (GLint location, GLuint64 value);
extern void (KHRONOS_APIENTRY* const& glUniformHandleui64vIMG) (GLint location, GLsizei count, const GLuint64 *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformHandleui64IMG) (GLuint program, GLint location, GLuint64 value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformHandleui64vIMG) (GLuint program, GLint location, GLsizei count, const GLuint64 *values);
#endif
#ifndef GL_IMG_framebuffer_downsample
#define GL_IMG_framebuffer_downsample 1
enum : GLenum
{
GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_AND_DOWNSAMPLE_IMG = 0x913C,
GL_NUM_DOWNSAMPLE_SCALES_IMG = 0x913D,
GL_DOWNSAMPLE_SCALES_IMG = 0x913E,
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SCALE_IMG = 0x913F,
};
extern void (KHRONOS_APIENTRY* const& glFramebufferTexture2DDownsampleIMG) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint xscale, GLint yscale);
extern void (KHRONOS_APIENTRY* const& glFramebufferTextureLayerDownsampleIMG) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer, GLint xscale, GLint yscale);
#endif
#ifndef GL_IMG_multisampled_render_to_texture
#define GL_IMG_multisampled_render_to_texture 1
enum : GLenum
{
GL_RENDERBUFFER_SAMPLES_IMG = 0x9133,
GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG = 0x9134,
GL_MAX_SAMPLES_IMG = 0x9135,
GL_TEXTURE_SAMPLES_IMG = 0x9136,
};
extern void (KHRONOS_APIENTRY* const& glRenderbufferStorageMultisampleIMG) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glFramebufferTexture2DMultisampleIMG) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLsizei samples);
#endif
#ifndef GL_IMG_program_binary
#define GL_IMG_program_binary 1
enum : GLenum
{
GL_SGX_PROGRAM_BINARY_IMG = 0x9130,
};
#endif
#ifndef GL_IMG_read_format
#define GL_IMG_read_format 1
enum : GLenum
{
GL_BGRA_IMG = 0x80E1,
GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG = 0x8365,
};
#endif
#ifndef GL_IMG_shader_binary
#define GL_IMG_shader_binary 1
enum : GLenum
{
GL_SGX_BINARY_IMG = 0x8C0A,
};
#endif
#ifndef GL_IMG_texture_compression_pvrtc
#define GL_IMG_texture_compression_pvrtc 1
enum : GLenum
{
GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG = 0x8C00,
GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG = 0x8C01,
GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG = 0x8C02,
GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG = 0x8C03,
};
#endif
#ifndef GL_IMG_texture_compression_pvrtc2
#define GL_IMG_texture_compression_pvrtc2 1
enum : GLenum
{
GL_COMPRESSED_RGBA_PVRTC_2BPPV2_IMG = 0x9137,
GL_COMPRESSED_RGBA_PVRTC_4BPPV2_IMG = 0x9138,
};
#endif
#ifndef GL_IMG_texture_filter_cubic
#define GL_IMG_texture_filter_cubic 1
enum : GLenum
{
GL_CUBIC_IMG = 0x9139,
GL_CUBIC_MIPMAP_NEAREST_IMG = 0x913A,
GL_CUBIC_MIPMAP_LINEAR_IMG = 0x913B,
};
#endif
#ifndef GL_INTEL_conservative_rasterization
#define GL_INTEL_conservative_rasterization 1
enum : GLenum
{
GL_CONSERVATIVE_RASTERIZATION_INTEL = 0x83FE,
};
#endif
#ifndef GL_INTEL_framebuffer_CMAA
#define GL_INTEL_framebuffer_CMAA 1
extern void (KHRONOS_APIENTRY* const& glApplyFramebufferAttachmentCMAAINTEL) ();
#endif
#ifndef GL_INTEL_blackhole_render
#define GL_INTEL_blackhole_render 1
enum : GLenum
{
GL_BLACKHOLE_RENDER_INTEL = 0x83FC,
};
#endif
#ifndef GL_INTEL_performance_query
#define GL_INTEL_performance_query 1
enum : GLenum
{
GL_PERFQUERY_SINGLE_CONTEXT_INTEL = 0x00000000,
GL_PERFQUERY_GLOBAL_CONTEXT_INTEL = 0x00000001,
GL_PERFQUERY_WAIT_INTEL = 0x83FB,
GL_PERFQUERY_FLUSH_INTEL = 0x83FA,
GL_PERFQUERY_DONOT_FLUSH_INTEL = 0x83F9,
GL_PERFQUERY_COUNTER_EVENT_INTEL = 0x94F0,
GL_PERFQUERY_COUNTER_DURATION_NORM_INTEL = 0x94F1,
GL_PERFQUERY_COUNTER_DURATION_RAW_INTEL = 0x94F2,
GL_PERFQUERY_COUNTER_THROUGHPUT_INTEL = 0x94F3,
GL_PERFQUERY_COUNTER_RAW_INTEL = 0x94F4,
GL_PERFQUERY_COUNTER_TIMESTAMP_INTEL = 0x94F5,
GL_PERFQUERY_COUNTER_DATA_UINT32_INTEL = 0x94F8,
GL_PERFQUERY_COUNTER_DATA_UINT64_INTEL = 0x94F9,
GL_PERFQUERY_COUNTER_DATA_FLOAT_INTEL = 0x94FA,
GL_PERFQUERY_COUNTER_DATA_DOUBLE_INTEL = 0x94FB,
GL_PERFQUERY_COUNTER_DATA_BOOL32_INTEL = 0x94FC,
GL_PERFQUERY_QUERY_NAME_LENGTH_MAX_INTEL = 0x94FD,
GL_PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL = 0x94FE,
GL_PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL = 0x94FF,
GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL = 0x9500,
};
extern void (KHRONOS_APIENTRY* const& glBeginPerfQueryINTEL) (GLuint queryHandle);
extern void (KHRONOS_APIENTRY* const& glCreatePerfQueryINTEL) (GLuint queryId, GLuint *queryHandle);
extern void (KHRONOS_APIENTRY* const& glDeletePerfQueryINTEL) (GLuint queryHandle);
extern void (KHRONOS_APIENTRY* const& glEndPerfQueryINTEL) (GLuint queryHandle);
extern void (KHRONOS_APIENTRY* const& glGetFirstPerfQueryIdINTEL) (GLuint *queryId);
extern void (KHRONOS_APIENTRY* const& glGetNextPerfQueryIdINTEL) (GLuint queryId, GLuint *nextQueryId);
extern void (KHRONOS_APIENTRY* const& glGetPerfCounterInfoINTEL) (GLuint queryId, GLuint counterId, GLuint counterNameLength, GLchar *counterName, GLuint counterDescLength, GLchar *counterDesc, GLuint *counterOffset, GLuint *counterDataSize, GLuint *counterTypeEnum, GLuint *counterDataTypeEnum, GLuint64 *rawCounterMaxValue);
extern void (KHRONOS_APIENTRY* const& glGetPerfQueryDataINTEL) (GLuint queryHandle, GLuint flags, GLsizei dataSize, void *data, GLuint *bytesWritten);
extern void (KHRONOS_APIENTRY* const& glGetPerfQueryIdByNameINTEL) (GLchar *queryName, GLuint *queryId);
extern void (KHRONOS_APIENTRY* const& glGetPerfQueryInfoINTEL) (GLuint queryId, GLuint queryNameLength, GLchar *queryName, GLuint *dataSize, GLuint *noCounters, GLuint *noInstances, GLuint *capsMask);
#endif
#ifndef GL_KHR_blend_equation_advanced
#define GL_KHR_blend_equation_advanced 1
enum : GLenum
{
GL_MULTIPLY_KHR = 0x9294,
GL_SCREEN_KHR = 0x9295,
GL_OVERLAY_KHR = 0x9296,
GL_DARKEN_KHR = 0x9297,
GL_LIGHTEN_KHR = 0x9298,
GL_COLORDODGE_KHR = 0x9299,
GL_COLORBURN_KHR = 0x929A,
GL_HARDLIGHT_KHR = 0x929B,
GL_SOFTLIGHT_KHR = 0x929C,
GL_DIFFERENCE_KHR = 0x929E,
GL_EXCLUSION_KHR = 0x92A0,
GL_HSL_HUE_KHR = 0x92AD,
GL_HSL_SATURATION_KHR = 0x92AE,
GL_HSL_COLOR_KHR = 0x92AF,
GL_HSL_LUMINOSITY_KHR = 0x92B0,
};
extern void (KHRONOS_APIENTRY* const& glBlendBarrierKHR) ();
#endif
#ifndef GL_KHR_blend_equation_advanced_coherent
#define GL_KHR_blend_equation_advanced_coherent 1
enum : GLenum
{
GL_BLEND_ADVANCED_COHERENT_KHR = 0x9285,
};
#endif
#ifndef GL_KHR_context_flush_control
#define GL_KHR_context_flush_control 1
enum : GLenum
{
GL_CONTEXT_RELEASE_BEHAVIOR = 0x82FB,
GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH = 0x82FC,
GL_CONTEXT_RELEASE_BEHAVIOR_KHR = 0x82FB,
GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_KHR = 0x82FC,
};
#endif
#ifndef GL_KHR_debug
#define GL_KHR_debug 1
enum : GLenum
{
GL_DEBUG_OUTPUT_SYNCHRONOUS_KHR = 0x8242,
GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_KHR = 0x8243,
GL_DEBUG_CALLBACK_FUNCTION_KHR = 0x8244,
GL_DEBUG_CALLBACK_USER_PARAM_KHR = 0x8245,
GL_DEBUG_SOURCE_API_KHR = 0x8246,
GL_DEBUG_SOURCE_WINDOW_SYSTEM_KHR = 0x8247,
GL_DEBUG_SOURCE_SHADER_COMPILER_KHR = 0x8248,
GL_DEBUG_SOURCE_THIRD_PARTY_KHR = 0x8249,
GL_DEBUG_SOURCE_APPLICATION_KHR = 0x824A,
GL_DEBUG_SOURCE_OTHER_KHR = 0x824B,
GL_DEBUG_TYPE_ERROR_KHR = 0x824C,
GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_KHR = 0x824D,
GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_KHR = 0x824E,
GL_DEBUG_TYPE_PORTABILITY_KHR = 0x824F,
GL_DEBUG_TYPE_PERFORMANCE_KHR = 0x8250,
GL_DEBUG_TYPE_OTHER_KHR = 0x8251,
GL_DEBUG_TYPE_MARKER_KHR = 0x8268,
GL_DEBUG_TYPE_PUSH_GROUP_KHR = 0x8269,
GL_DEBUG_TYPE_POP_GROUP_KHR = 0x826A,
GL_DEBUG_SEVERITY_NOTIFICATION_KHR = 0x826B,
GL_MAX_DEBUG_GROUP_STACK_DEPTH_KHR = 0x826C,
GL_DEBUG_GROUP_STACK_DEPTH_KHR = 0x826D,
GL_BUFFER_KHR = 0x82E0,
GL_SHADER_KHR = 0x82E1,
GL_PROGRAM_KHR = 0x82E2,
GL_VERTEX_ARRAY_KHR = 0x8074,
GL_QUERY_KHR = 0x82E3,
GL_PROGRAM_PIPELINE_KHR = 0x82E4,
GL_SAMPLER_KHR = 0x82E6,
GL_MAX_LABEL_LENGTH_KHR = 0x82E8,
GL_MAX_DEBUG_MESSAGE_LENGTH_KHR = 0x9143,
GL_MAX_DEBUG_LOGGED_MESSAGES_KHR = 0x9144,
GL_DEBUG_LOGGED_MESSAGES_KHR = 0x9145,
GL_DEBUG_SEVERITY_HIGH_KHR = 0x9146,
GL_DEBUG_SEVERITY_MEDIUM_KHR = 0x9147,
GL_DEBUG_SEVERITY_LOW_KHR = 0x9148,
GL_DEBUG_OUTPUT_KHR = 0x92E0,
GL_CONTEXT_FLAG_DEBUG_BIT_KHR = 0x00000002,
GL_STACK_OVERFLOW_KHR = 0x0503,
GL_STACK_UNDERFLOW_KHR = 0x0504,
GL_DISPLAY_LIST = 0x82E7,
};
extern void (KHRONOS_APIENTRY* const& glDebugMessageControlKHR) (GLenum source, GLenum type, GLenum severity, GLsizei count, const GLuint *ids, GLboolean enabled);
extern void (KHRONOS_APIENTRY* const& glDebugMessageInsertKHR) (GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *buf);
extern void (KHRONOS_APIENTRY* const& glDebugMessageCallbackKHR) (GLDEBUGPROCKHR callback, const void *userParam);
extern GLuint (KHRONOS_APIENTRY* const& glGetDebugMessageLogKHR) (GLuint count, GLsizei bufSize, GLenum *sources, GLenum *types, GLuint *ids, GLenum *severities, GLsizei *lengths, GLchar *messageLog);
extern void (KHRONOS_APIENTRY* const& glPushDebugGroupKHR) (GLenum source, GLuint id, GLsizei length, const GLchar *message);
extern void (KHRONOS_APIENTRY* const& glPopDebugGroupKHR) ();
extern void (KHRONOS_APIENTRY* const& glObjectLabelKHR) (GLenum identifier, GLuint name, GLsizei length, const GLchar *label);
extern void (KHRONOS_APIENTRY* const& glGetObjectLabelKHR) (GLenum identifier, GLuint name, GLsizei bufSize, GLsizei *length, GLchar *label);
extern void (KHRONOS_APIENTRY* const& glObjectPtrLabelKHR) (const void *ptr, GLsizei length, const GLchar *label);
extern void (KHRONOS_APIENTRY* const& glGetObjectPtrLabelKHR) (const void *ptr, GLsizei bufSize, GLsizei *length, GLchar *label);
extern void (KHRONOS_APIENTRY* const& glGetPointervKHR) (GLenum pname, void **params);
#endif
#ifndef GL_KHR_no_error
#define GL_KHR_no_error 1
enum : GLenum
{
GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR = 0x00000008,
};
#endif
#ifndef GL_KHR_robust_buffer_access_behavior
#define GL_KHR_robust_buffer_access_behavior 1
#endif
#ifndef GL_KHR_robustness
#define GL_KHR_robustness 1
enum : GLenum
{
GL_CONTEXT_ROBUST_ACCESS = 0x90F3,
GL_CONTEXT_ROBUST_ACCESS_KHR = 0x90F3,
GL_LOSE_CONTEXT_ON_RESET_KHR = 0x8252,
GL_GUILTY_CONTEXT_RESET_KHR = 0x8253,
GL_INNOCENT_CONTEXT_RESET_KHR = 0x8254,
GL_UNKNOWN_CONTEXT_RESET_KHR = 0x8255,
GL_RESET_NOTIFICATION_STRATEGY_KHR = 0x8256,
GL_NO_RESET_NOTIFICATION_KHR = 0x8261,
GL_CONTEXT_LOST_KHR = 0x0507,
};
extern GLenum (KHRONOS_APIENTRY* const& glGetGraphicsResetStatusKHR) ();
extern void (KHRONOS_APIENTRY* const& glReadnPixelsKHR) (GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, GLsizei bufSize, void *data);
extern void (KHRONOS_APIENTRY* const& glGetnUniformfvKHR) (GLuint program, GLint location, GLsizei bufSize, GLfloat *params);
extern void (KHRONOS_APIENTRY* const& glGetnUniformivKHR) (GLuint program, GLint location, GLsizei bufSize, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetnUniformuivKHR) (GLuint program, GLint location, GLsizei bufSize, GLuint *params);
#endif
#ifndef GL_KHR_shader_subgroup
#define GL_KHR_shader_subgroup 1
enum : GLenum
{
GL_SUBGROUP_SIZE_KHR = 0x9532,
GL_SUBGROUP_SUPPORTED_STAGES_KHR = 0x9533,
GL_SUBGROUP_SUPPORTED_FEATURES_KHR = 0x9534,
GL_SUBGROUP_QUAD_ALL_STAGES_KHR = 0x9535,
GL_SUBGROUP_FEATURE_BASIC_BIT_KHR = 0x00000001,
GL_SUBGROUP_FEATURE_VOTE_BIT_KHR = 0x00000002,
GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR = 0x00000004,
GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR = 0x00000008,
GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR = 0x00000010,
GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR = 0x00000020,
GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR = 0x00000040,
GL_SUBGROUP_FEATURE_QUAD_BIT_KHR = 0x00000080,
};
#endif
#ifndef GL_KHR_texture_compression_astc_hdr
#define GL_KHR_texture_compression_astc_hdr 1
enum : GLenum
{
GL_COMPRESSED_RGBA_ASTC_4x4_KHR = 0x93B0,
GL_COMPRESSED_RGBA_ASTC_5x4_KHR = 0x93B1,
GL_COMPRESSED_RGBA_ASTC_5x5_KHR = 0x93B2,
GL_COMPRESSED_RGBA_ASTC_6x5_KHR = 0x93B3,
GL_COMPRESSED_RGBA_ASTC_6x6_KHR = 0x93B4,
GL_COMPRESSED_RGBA_ASTC_8x5_KHR = 0x93B5,
GL_COMPRESSED_RGBA_ASTC_8x6_KHR = 0x93B6,
GL_COMPRESSED_RGBA_ASTC_8x8_KHR = 0x93B7,
GL_COMPRESSED_RGBA_ASTC_10x5_KHR = 0x93B8,
GL_COMPRESSED_RGBA_ASTC_10x6_KHR = 0x93B9,
GL_COMPRESSED_RGBA_ASTC_10x8_KHR = 0x93BA,
GL_COMPRESSED_RGBA_ASTC_10x10_KHR = 0x93BB,
GL_COMPRESSED_RGBA_ASTC_12x10_KHR = 0x93BC,
GL_COMPRESSED_RGBA_ASTC_12x12_KHR = 0x93BD,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 0x93D0,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 0x93D1,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 0x93D2,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 0x93D3,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 0x93D4,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 0x93D5,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 0x93D6,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 0x93D7,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = 0x93D8,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = 0x93D9,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = 0x93DA,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = 0x93DB,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = 0x93DC,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = 0x93DD,
};
#endif
#ifndef GL_KHR_texture_compression_astc_ldr
#define GL_KHR_texture_compression_astc_ldr 1
#endif
#ifndef GL_KHR_texture_compression_astc_sliced_3d
#define GL_KHR_texture_compression_astc_sliced_3d 1
#endif
#ifndef GL_KHR_parallel_shader_compile
#define GL_KHR_parallel_shader_compile 1
enum : GLenum
{
GL_MAX_SHADER_COMPILER_THREADS_KHR = 0x91B0,
GL_COMPLETION_STATUS_KHR = 0x91B1,
};
extern void (KHRONOS_APIENTRY* const& glMaxShaderCompilerThreadsKHR) (GLuint count);
#endif
#ifndef GL_MESA_bgra
#define GL_MESA_bgra 1
enum : GLenum
{
GL_BGR_EXT = 0x80E0,
};
#endif
#ifndef GL_MESA_framebuffer_flip_x
#define GL_MESA_framebuffer_flip_x 1
enum : GLenum
{
GL_FRAMEBUFFER_FLIP_X_MESA = 0x8BBC,
};
#endif
#ifndef GL_MESA_framebuffer_flip_y
#define GL_MESA_framebuffer_flip_y 1
enum : GLenum
{
GL_FRAMEBUFFER_FLIP_Y_MESA = 0x8BBB,
};
extern void (KHRONOS_APIENTRY* const& glFramebufferParameteriMESA) (GLenum target, GLenum pname, GLint param);
extern void (KHRONOS_APIENTRY* const& glGetFramebufferParameterivMESA) (GLenum target, GLenum pname, GLint *params);
#endif
#ifndef GL_MESA_framebuffer_swap_xy
#define GL_MESA_framebuffer_swap_xy 1
enum : GLenum
{
GL_FRAMEBUFFER_SWAP_XY_MESA = 0x8BBD,
};
#endif
#ifndef GL_MESA_program_binary_formats
#define GL_MESA_program_binary_formats 1
enum : GLenum
{
GL_PROGRAM_BINARY_FORMAT_MESA = 0x875F,
};
#endif
#ifndef GL_MESA_shader_integer_functions
#define GL_MESA_shader_integer_functions 1
#endif
#ifndef GL_NVX_blend_equation_advanced_multi_draw_buffers
#define GL_NVX_blend_equation_advanced_multi_draw_buffers 1
#endif
#ifndef GL_NV_bindless_texture
#define GL_NV_bindless_texture 1
extern GLuint64 (KHRONOS_APIENTRY* const& glGetTextureHandleNV) (GLuint texture);
extern GLuint64 (KHRONOS_APIENTRY* const& glGetTextureSamplerHandleNV) (GLuint texture, GLuint sampler);
extern void (KHRONOS_APIENTRY* const& glMakeTextureHandleResidentNV) (GLuint64 handle);
extern void (KHRONOS_APIENTRY* const& glMakeTextureHandleNonResidentNV) (GLuint64 handle);
extern GLuint64 (KHRONOS_APIENTRY* const& glGetImageHandleNV) (GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum format);
extern void (KHRONOS_APIENTRY* const& glMakeImageHandleResidentNV) (GLuint64 handle, GLenum access);
extern void (KHRONOS_APIENTRY* const& glMakeImageHandleNonResidentNV) (GLuint64 handle);
extern void (KHRONOS_APIENTRY* const& glUniformHandleui64NV) (GLint location, GLuint64 value);
extern void (KHRONOS_APIENTRY* const& glUniformHandleui64vNV) (GLint location, GLsizei count, const GLuint64 *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformHandleui64NV) (GLuint program, GLint location, GLuint64 value);
extern void (KHRONOS_APIENTRY* const& glProgramUniformHandleui64vNV) (GLuint program, GLint location, GLsizei count, const GLuint64 *values);
extern GLboolean (KHRONOS_APIENTRY* const& glIsTextureHandleResidentNV) (GLuint64 handle);
extern GLboolean (KHRONOS_APIENTRY* const& glIsImageHandleResidentNV) (GLuint64 handle);
#endif
#ifndef GL_NV_blend_equation_advanced
#define GL_NV_blend_equation_advanced 1
enum : GLenum
{
GL_BLEND_OVERLAP_NV = 0x9281,
GL_BLEND_PREMULTIPLIED_SRC_NV = 0x9280,
GL_BLUE_NV = 0x1905,
GL_COLORBURN_NV = 0x929A,
GL_COLORDODGE_NV = 0x9299,
GL_CONJOINT_NV = 0x9284,
GL_CONTRAST_NV = 0x92A1,
GL_DARKEN_NV = 0x9297,
GL_DIFFERENCE_NV = 0x929E,
GL_DISJOINT_NV = 0x9283,
GL_DST_ATOP_NV = 0x928F,
GL_DST_IN_NV = 0x928B,
GL_DST_NV = 0x9287,
GL_DST_OUT_NV = 0x928D,
GL_DST_OVER_NV = 0x9289,
GL_EXCLUSION_NV = 0x92A0,
GL_GREEN_NV = 0x1904,
GL_HARDLIGHT_NV = 0x929B,
GL_HARDMIX_NV = 0x92A9,
GL_HSL_COLOR_NV = 0x92AF,
GL_HSL_HUE_NV = 0x92AD,
GL_HSL_LUMINOSITY_NV = 0x92B0,
GL_HSL_SATURATION_NV = 0x92AE,
GL_INVERT_OVG_NV = 0x92B4,
GL_INVERT_RGB_NV = 0x92A3,
GL_LIGHTEN_NV = 0x9298,
GL_LINEARBURN_NV = 0x92A5,
GL_LINEARDODGE_NV = 0x92A4,
GL_LINEARLIGHT_NV = 0x92A7,
GL_MINUS_CLAMPED_NV = 0x92B3,
GL_MINUS_NV = 0x929F,
GL_MULTIPLY_NV = 0x9294,
GL_OVERLAY_NV = 0x9296,
GL_PINLIGHT_NV = 0x92A8,
GL_PLUS_CLAMPED_ALPHA_NV = 0x92B2,
GL_PLUS_CLAMPED_NV = 0x92B1,
GL_PLUS_DARKER_NV = 0x9292,
GL_PLUS_NV = 0x9291,
GL_RED_NV = 0x1903,
GL_SCREEN_NV = 0x9295,
GL_SOFTLIGHT_NV = 0x929C,
GL_SRC_ATOP_NV = 0x928E,
GL_SRC_IN_NV = 0x928A,
GL_SRC_NV = 0x9286,
GL_SRC_OUT_NV = 0x928C,
GL_SRC_OVER_NV = 0x9288,
GL_UNCORRELATED_NV = 0x9282,
GL_VIVIDLIGHT_NV = 0x92A6,
GL_XOR_NV = 0x1506,
};
extern void (KHRONOS_APIENTRY* const& glBlendParameteriNV) (GLenum pname, GLint value);
extern void (KHRONOS_APIENTRY* const& glBlendBarrierNV) ();
#endif
#ifndef GL_NV_blend_equation_advanced_coherent
#define GL_NV_blend_equation_advanced_coherent 1
enum : GLenum
{
GL_BLEND_ADVANCED_COHERENT_NV = 0x9285,
};
#endif
#ifndef GL_NV_blend_minmax_factor
#define GL_NV_blend_minmax_factor 1
enum : GLenum
{
GL_FACTOR_MIN_AMD = 0x901C,
GL_FACTOR_MAX_AMD = 0x901D,
};
#endif
#ifndef GL_NV_clip_space_w_scaling
#define GL_NV_clip_space_w_scaling 1
enum : GLenum
{
GL_VIEWPORT_POSITION_W_SCALE_NV = 0x937C,
GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV = 0x937D,
GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV = 0x937E,
};
extern void (KHRONOS_APIENTRY* const& glViewportPositionWScaleNV) (GLuint index, GLfloat xcoeff, GLfloat ycoeff);
#endif
#ifndef GL_NV_compute_shader_derivatives
#define GL_NV_compute_shader_derivatives 1
#endif
#ifndef GL_NV_conditional_render
#define GL_NV_conditional_render 1
enum : GLenum
{
GL_QUERY_WAIT_NV = 0x8E13,
GL_QUERY_NO_WAIT_NV = 0x8E14,
GL_QUERY_BY_REGION_WAIT_NV = 0x8E15,
GL_QUERY_BY_REGION_NO_WAIT_NV = 0x8E16,
};
extern void (KHRONOS_APIENTRY* const& glBeginConditionalRenderNV) (GLuint id, GLenum mode);
extern void (KHRONOS_APIENTRY* const& glEndConditionalRenderNV) ();
#endif
#ifndef GL_NV_conservative_raster
#define GL_NV_conservative_raster 1
enum : GLenum
{
GL_CONSERVATIVE_RASTERIZATION_NV = 0x9346,
GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV = 0x9347,
GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV = 0x9348,
GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV = 0x9349,
};
extern void (KHRONOS_APIENTRY* const& glSubpixelPrecisionBiasNV) (GLuint xbits, GLuint ybits);
#endif
#ifndef GL_NV_conservative_raster_pre_snap
#define GL_NV_conservative_raster_pre_snap 1
enum : GLenum
{
GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV = 0x9550,
};
#endif
#ifndef GL_NV_conservative_raster_pre_snap_triangles
#define GL_NV_conservative_raster_pre_snap_triangles 1
enum : GLenum
{
GL_CONSERVATIVE_RASTER_MODE_NV = 0x954D,
GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV = 0x954E,
GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV = 0x954F,
};
extern void (KHRONOS_APIENTRY* const& glConservativeRasterParameteriNV) (GLenum pname, GLint param);
#endif
#ifndef GL_NV_copy_buffer
#define GL_NV_copy_buffer 1
enum : GLenum
{
GL_COPY_READ_BUFFER_NV = 0x8F36,
GL_COPY_WRITE_BUFFER_NV = 0x8F37,
};
extern void (KHRONOS_APIENTRY* const& glCopyBufferSubDataNV) (GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size);
#endif
#ifndef GL_NV_coverage_sample
#define GL_NV_coverage_sample 1
enum : GLenum
{
GL_COVERAGE_COMPONENT_NV = 0x8ED0,
GL_COVERAGE_COMPONENT4_NV = 0x8ED1,
GL_COVERAGE_ATTACHMENT_NV = 0x8ED2,
GL_COVERAGE_BUFFERS_NV = 0x8ED3,
GL_COVERAGE_SAMPLES_NV = 0x8ED4,
GL_COVERAGE_ALL_FRAGMENTS_NV = 0x8ED5,
GL_COVERAGE_EDGE_FRAGMENTS_NV = 0x8ED6,
GL_COVERAGE_AUTOMATIC_NV = 0x8ED7,
GL_COVERAGE_BUFFER_BIT_NV = 0x00008000,
};
extern void (KHRONOS_APIENTRY* const& glCoverageMaskNV) (GLboolean mask);
extern void (KHRONOS_APIENTRY* const& glCoverageOperationNV) (GLenum operation);
#endif
#ifndef GL_NV_depth_nonlinear
#define GL_NV_depth_nonlinear 1
enum : GLenum
{
GL_DEPTH_COMPONENT16_NONLINEAR_NV = 0x8E2C,
};
#endif
#ifndef GL_NV_draw_buffers
#define GL_NV_draw_buffers 1
enum : GLenum
{
GL_MAX_DRAW_BUFFERS_NV = 0x8824,
GL_DRAW_BUFFER0_NV = 0x8825,
GL_DRAW_BUFFER1_NV = 0x8826,
GL_DRAW_BUFFER2_NV = 0x8827,
GL_DRAW_BUFFER3_NV = 0x8828,
GL_DRAW_BUFFER4_NV = 0x8829,
GL_DRAW_BUFFER5_NV = 0x882A,
GL_DRAW_BUFFER6_NV = 0x882B,
GL_DRAW_BUFFER7_NV = 0x882C,
GL_DRAW_BUFFER8_NV = 0x882D,
GL_DRAW_BUFFER9_NV = 0x882E,
GL_DRAW_BUFFER10_NV = 0x882F,
GL_DRAW_BUFFER11_NV = 0x8830,
GL_DRAW_BUFFER12_NV = 0x8831,
GL_DRAW_BUFFER13_NV = 0x8832,
GL_DRAW_BUFFER14_NV = 0x8833,
GL_DRAW_BUFFER15_NV = 0x8834,
GL_COLOR_ATTACHMENT0_NV = 0x8CE0,
GL_COLOR_ATTACHMENT1_NV = 0x8CE1,
GL_COLOR_ATTACHMENT2_NV = 0x8CE2,
GL_COLOR_ATTACHMENT3_NV = 0x8CE3,
GL_COLOR_ATTACHMENT4_NV = 0x8CE4,
GL_COLOR_ATTACHMENT5_NV = 0x8CE5,
GL_COLOR_ATTACHMENT6_NV = 0x8CE6,
GL_COLOR_ATTACHMENT7_NV = 0x8CE7,
GL_COLOR_ATTACHMENT8_NV = 0x8CE8,
GL_COLOR_ATTACHMENT9_NV = 0x8CE9,
GL_COLOR_ATTACHMENT10_NV = 0x8CEA,
GL_COLOR_ATTACHMENT11_NV = 0x8CEB,
GL_COLOR_ATTACHMENT12_NV = 0x8CEC,
GL_COLOR_ATTACHMENT13_NV = 0x8CED,
GL_COLOR_ATTACHMENT14_NV = 0x8CEE,
GL_COLOR_ATTACHMENT15_NV = 0x8CEF,
};
extern void (KHRONOS_APIENTRY* const& glDrawBuffersNV) (GLsizei n, const GLenum *bufs);
#endif
#ifndef GL_NV_draw_instanced
#define GL_NV_draw_instanced 1
extern void (KHRONOS_APIENTRY* const& glDrawArraysInstancedNV) (GLenum mode, GLint first, GLsizei count, GLsizei primcount);
extern void (KHRONOS_APIENTRY* const& glDrawElementsInstancedNV) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei primcount);
#endif
#ifndef GL_NV_draw_vulkan_image
#define GL_NV_draw_vulkan_image 1
extern void (KHRONOS_APIENTRY* const& glDrawVkImageNV) (GLuint64 vkImage, GLuint sampler, GLfloat x0, GLfloat y0, GLfloat x1, GLfloat y1, GLfloat z, GLfloat s0, GLfloat t0, GLfloat s1, GLfloat t1);
extern GLVULKANPROCNV (KHRONOS_APIENTRY* const& glGetVkProcAddrNV) (const GLchar *name);
extern void (KHRONOS_APIENTRY* const& glWaitVkSemaphoreNV) (GLuint64 vkSemaphore);
extern void (KHRONOS_APIENTRY* const& glSignalVkSemaphoreNV) (GLuint64 vkSemaphore);
extern void (KHRONOS_APIENTRY* const& glSignalVkFenceNV) (GLuint64 vkFence);
#endif
#ifndef GL_NV_explicit_attrib_location
#define GL_NV_explicit_attrib_location 1
#endif
#ifndef GL_NV_fbo_color_attachments
#define GL_NV_fbo_color_attachments 1
enum : GLenum
{
GL_MAX_COLOR_ATTACHMENTS_NV = 0x8CDF,
};
#endif
#ifndef GL_NV_fence
#define GL_NV_fence 1
enum : GLenum
{
GL_ALL_COMPLETED_NV = 0x84F2,
GL_FENCE_STATUS_NV = 0x84F3,
GL_FENCE_CONDITION_NV = 0x84F4,
};
extern void (KHRONOS_APIENTRY* const& glDeleteFencesNV) (GLsizei n, const GLuint *fences);
extern void (KHRONOS_APIENTRY* const& glGenFencesNV) (GLsizei n, GLuint *fences);
extern GLboolean (KHRONOS_APIENTRY* const& glIsFenceNV) (GLuint fence);
extern GLboolean (KHRONOS_APIENTRY* const& glTestFenceNV) (GLuint fence);
extern void (KHRONOS_APIENTRY* const& glGetFenceivNV) (GLuint fence, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glFinishFenceNV) (GLuint fence);
extern void (KHRONOS_APIENTRY* const& glSetFenceNV) (GLuint fence, GLenum condition);
#endif
#ifndef GL_NV_fill_rectangle
#define GL_NV_fill_rectangle 1
enum : GLenum
{
GL_FILL_RECTANGLE_NV = 0x933C,
};
#endif
#ifndef GL_NV_fragment_coverage_to_color
#define GL_NV_fragment_coverage_to_color 1
enum : GLenum
{
GL_FRAGMENT_COVERAGE_TO_COLOR_NV = 0x92DD,
GL_FRAGMENT_COVERAGE_COLOR_NV = 0x92DE,
};
extern void (KHRONOS_APIENTRY* const& glFragmentCoverageColorNV) (GLuint color);
#endif
#ifndef GL_NV_fragment_shader_barycentric
#define GL_NV_fragment_shader_barycentric 1
#endif
#ifndef GL_NV_fragment_shader_interlock
#define GL_NV_fragment_shader_interlock 1
#endif
#ifndef GL_NV_framebuffer_blit
#define GL_NV_framebuffer_blit 1
enum : GLenum
{
GL_READ_FRAMEBUFFER_NV = 0x8CA8,
GL_DRAW_FRAMEBUFFER_NV = 0x8CA9,
GL_DRAW_FRAMEBUFFER_BINDING_NV = 0x8CA6,
GL_READ_FRAMEBUFFER_BINDING_NV = 0x8CAA,
};
extern void (KHRONOS_APIENTRY* const& glBlitFramebufferNV) (GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter);
#endif
#ifndef GL_NV_framebuffer_mixed_samples
#define GL_NV_framebuffer_mixed_samples 1
enum : GLenum
{
GL_COVERAGE_MODULATION_TABLE_NV = 0x9331,
GL_COLOR_SAMPLES_NV = 0x8E20,
GL_DEPTH_SAMPLES_NV = 0x932D,
GL_STENCIL_SAMPLES_NV = 0x932E,
GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV = 0x932F,
GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV = 0x9330,
GL_COVERAGE_MODULATION_NV = 0x9332,
GL_COVERAGE_MODULATION_TABLE_SIZE_NV = 0x9333,
};
extern void (KHRONOS_APIENTRY* const& glCoverageModulationTableNV) (GLsizei n, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glGetCoverageModulationTableNV) (GLsizei bufSize, GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glCoverageModulationNV) (GLenum components);
#endif
#ifndef GL_NV_framebuffer_multisample
#define GL_NV_framebuffer_multisample 1
enum : GLenum
{
GL_RENDERBUFFER_SAMPLES_NV = 0x8CAB,
GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_NV = 0x8D56,
GL_MAX_SAMPLES_NV = 0x8D57,
};
extern void (KHRONOS_APIENTRY* const& glRenderbufferStorageMultisampleNV) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height);
#endif
#ifndef GL_NV_generate_mipmap_sRGB
#define GL_NV_generate_mipmap_sRGB 1
#endif
#ifndef GL_NV_geometry_shader_passthrough
#define GL_NV_geometry_shader_passthrough 1
#endif
#ifndef GL_NV_gpu_shader5
#define GL_NV_gpu_shader5 1
enum : GLenum
{
GL_INT64_NV = 0x140E,
GL_UNSIGNED_INT64_NV = 0x140F,
GL_INT8_NV = 0x8FE0,
GL_INT8_VEC2_NV = 0x8FE1,
GL_INT8_VEC3_NV = 0x8FE2,
GL_INT8_VEC4_NV = 0x8FE3,
GL_INT16_NV = 0x8FE4,
GL_INT16_VEC2_NV = 0x8FE5,
GL_INT16_VEC3_NV = 0x8FE6,
GL_INT16_VEC4_NV = 0x8FE7,
GL_INT64_VEC2_NV = 0x8FE9,
GL_INT64_VEC3_NV = 0x8FEA,
GL_INT64_VEC4_NV = 0x8FEB,
GL_UNSIGNED_INT8_NV = 0x8FEC,
GL_UNSIGNED_INT8_VEC2_NV = 0x8FED,
GL_UNSIGNED_INT8_VEC3_NV = 0x8FEE,
GL_UNSIGNED_INT8_VEC4_NV = 0x8FEF,
GL_UNSIGNED_INT16_NV = 0x8FF0,
GL_UNSIGNED_INT16_VEC2_NV = 0x8FF1,
GL_UNSIGNED_INT16_VEC3_NV = 0x8FF2,
GL_UNSIGNED_INT16_VEC4_NV = 0x8FF3,
GL_UNSIGNED_INT64_VEC2_NV = 0x8FF5,
GL_UNSIGNED_INT64_VEC3_NV = 0x8FF6,
GL_UNSIGNED_INT64_VEC4_NV = 0x8FF7,
GL_FLOAT16_NV = 0x8FF8,
GL_FLOAT16_VEC2_NV = 0x8FF9,
GL_FLOAT16_VEC3_NV = 0x8FFA,
GL_FLOAT16_VEC4_NV = 0x8FFB,
};
extern void (KHRONOS_APIENTRY* const& glUniform1i64NV) (GLint location, GLint64EXT x);
extern void (KHRONOS_APIENTRY* const& glUniform2i64NV) (GLint location, GLint64EXT x, GLint64EXT y);
extern void (KHRONOS_APIENTRY* const& glUniform3i64NV) (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z);
extern void (KHRONOS_APIENTRY* const& glUniform4i64NV) (GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
extern void (KHRONOS_APIENTRY* const& glUniform1i64vNV) (GLint location, GLsizei count, const GLint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glUniform2i64vNV) (GLint location, GLsizei count, const GLint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glUniform3i64vNV) (GLint location, GLsizei count, const GLint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glUniform4i64vNV) (GLint location, GLsizei count, const GLint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glUniform1ui64NV) (GLint location, GLuint64EXT x);
extern void (KHRONOS_APIENTRY* const& glUniform2ui64NV) (GLint location, GLuint64EXT x, GLuint64EXT y);
extern void (KHRONOS_APIENTRY* const& glUniform3ui64NV) (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
extern void (KHRONOS_APIENTRY* const& glUniform4ui64NV) (GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
extern void (KHRONOS_APIENTRY* const& glUniform1ui64vNV) (GLint location, GLsizei count, const GLuint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glUniform2ui64vNV) (GLint location, GLsizei count, const GLuint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glUniform3ui64vNV) (GLint location, GLsizei count, const GLuint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glUniform4ui64vNV) (GLint location, GLsizei count, const GLuint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glGetUniformi64vNV) (GLuint program, GLint location, GLint64EXT *params);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1i64NV) (GLuint program, GLint location, GLint64EXT x);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2i64NV) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3i64NV) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4i64NV) (GLuint program, GLint location, GLint64EXT x, GLint64EXT y, GLint64EXT z, GLint64EXT w);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1i64vNV) (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2i64vNV) (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3i64vNV) (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4i64vNV) (GLuint program, GLint location, GLsizei count, const GLint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1ui64NV) (GLuint program, GLint location, GLuint64EXT x);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2ui64NV) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3ui64NV) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4ui64NV) (GLuint program, GLint location, GLuint64EXT x, GLuint64EXT y, GLuint64EXT z, GLuint64EXT w);
extern void (KHRONOS_APIENTRY* const& glProgramUniform1ui64vNV) (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform2ui64vNV) (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform3ui64vNV) (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
extern void (KHRONOS_APIENTRY* const& glProgramUniform4ui64vNV) (GLuint program, GLint location, GLsizei count, const GLuint64EXT *value);
#endif
#ifndef GL_NV_image_formats
#define GL_NV_image_formats 1
#endif
#ifndef GL_NV_instanced_arrays
#define GL_NV_instanced_arrays 1
enum : GLenum
{
GL_VERTEX_ATTRIB_ARRAY_DIVISOR_NV = 0x88FE,
};
extern void (KHRONOS_APIENTRY* const& glVertexAttribDivisorNV) (GLuint index, GLuint divisor);
#endif
#ifndef GL_NV_internalformat_sample_query
#define GL_NV_internalformat_sample_query 1
enum : GLenum
{
GL_MULTISAMPLES_NV = 0x9371,
GL_SUPERSAMPLE_SCALE_X_NV = 0x9372,
GL_SUPERSAMPLE_SCALE_Y_NV = 0x9373,
GL_CONFORMANT_NV = 0x9374,
};
extern void (KHRONOS_APIENTRY* const& glGetInternalformatSampleivNV) (GLenum target, GLenum internalformat, GLsizei samples, GLenum pname, GLsizei count, GLint *params);
#endif
#ifndef GL_NV_memory_attachment
#define GL_NV_memory_attachment 1
enum : GLenum
{
GL_ATTACHED_MEMORY_OBJECT_NV = 0x95A4,
GL_ATTACHED_MEMORY_OFFSET_NV = 0x95A5,
GL_MEMORY_ATTACHABLE_ALIGNMENT_NV = 0x95A6,
GL_MEMORY_ATTACHABLE_SIZE_NV = 0x95A7,
GL_MEMORY_ATTACHABLE_NV = 0x95A8,
GL_DETACHED_MEMORY_INCARNATION_NV = 0x95A9,
GL_DETACHED_TEXTURES_NV = 0x95AA,
GL_DETACHED_BUFFERS_NV = 0x95AB,
GL_MAX_DETACHED_TEXTURES_NV = 0x95AC,
GL_MAX_DETACHED_BUFFERS_NV = 0x95AD,
};
extern void (KHRONOS_APIENTRY* const& glGetMemoryObjectDetachedResourcesuivNV) (GLuint memory, GLenum pname, GLint first, GLsizei count, GLuint *params);
extern void (KHRONOS_APIENTRY* const& glResetMemoryObjectParameterNV) (GLuint memory, GLenum pname);
extern void (KHRONOS_APIENTRY* const& glTexAttachMemoryNV) (GLenum target, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glBufferAttachMemoryNV) (GLenum target, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glTextureAttachMemoryNV) (GLuint texture, GLuint memory, GLuint64 offset);
extern void (KHRONOS_APIENTRY* const& glNamedBufferAttachMemoryNV) (GLuint buffer, GLuint memory, GLuint64 offset);
#endif
#ifndef GL_NV_memory_object_sparse
#define GL_NV_memory_object_sparse 1
extern void (KHRONOS_APIENTRY* const& glBufferPageCommitmentMemNV) (GLenum target, GLintptr offset, GLsizeiptr size, GLuint memory, GLuint64 memOffset, GLboolean commit);
extern void (KHRONOS_APIENTRY* const& glTexPageCommitmentMemNV) (GLenum target, GLint layer, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset, GLboolean commit);
extern void (KHRONOS_APIENTRY* const& glNamedBufferPageCommitmentMemNV) (GLuint buffer, GLintptr offset, GLsizeiptr size, GLuint memory, GLuint64 memOffset, GLboolean commit);
extern void (KHRONOS_APIENTRY* const& glTexturePageCommitmentMemNV) (GLuint texture, GLint layer, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLuint memory, GLuint64 offset, GLboolean commit);
#endif
#ifndef GL_NV_mesh_shader
#define GL_NV_mesh_shader 1
enum : GLenum
{
GL_MESH_SHADER_NV = 0x9559,
GL_TASK_SHADER_NV = 0x955A,
GL_MAX_MESH_UNIFORM_BLOCKS_NV = 0x8E60,
GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV = 0x8E61,
GL_MAX_MESH_IMAGE_UNIFORMS_NV = 0x8E62,
GL_MAX_MESH_UNIFORM_COMPONENTS_NV = 0x8E63,
GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV = 0x8E64,
GL_MAX_MESH_ATOMIC_COUNTERS_NV = 0x8E65,
GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV = 0x8E66,
GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV = 0x8E67,
GL_MAX_TASK_UNIFORM_BLOCKS_NV = 0x8E68,
GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV = 0x8E69,
GL_MAX_TASK_IMAGE_UNIFORMS_NV = 0x8E6A,
GL_MAX_TASK_UNIFORM_COMPONENTS_NV = 0x8E6B,
GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV = 0x8E6C,
GL_MAX_TASK_ATOMIC_COUNTERS_NV = 0x8E6D,
GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV = 0x8E6E,
GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV = 0x8E6F,
GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV = 0x95A2,
GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV = 0x95A3,
GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV = 0x9536,
GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV = 0x9537,
GL_MAX_MESH_OUTPUT_VERTICES_NV = 0x9538,
GL_MAX_MESH_OUTPUT_PRIMITIVES_NV = 0x9539,
GL_MAX_TASK_OUTPUT_COUNT_NV = 0x953A,
GL_MAX_DRAW_MESH_TASKS_COUNT_NV = 0x953D,
GL_MAX_MESH_VIEWS_NV = 0x9557,
GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV = 0x92DF,
GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV = 0x9543,
GL_MAX_MESH_WORK_GROUP_SIZE_NV = 0x953B,
GL_MAX_TASK_WORK_GROUP_SIZE_NV = 0x953C,
GL_MESH_WORK_GROUP_SIZE_NV = 0x953E,
GL_TASK_WORK_GROUP_SIZE_NV = 0x953F,
GL_MESH_VERTICES_OUT_NV = 0x9579,
GL_MESH_PRIMITIVES_OUT_NV = 0x957A,
GL_MESH_OUTPUT_TYPE_NV = 0x957B,
GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV = 0x959C,
GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV = 0x959D,
GL_REFERENCED_BY_MESH_SHADER_NV = 0x95A0,
GL_REFERENCED_BY_TASK_SHADER_NV = 0x95A1,
GL_MESH_SHADER_BIT_NV = 0x00000040,
GL_TASK_SHADER_BIT_NV = 0x00000080,
GL_MESH_SUBROUTINE_NV = 0x957C,
GL_TASK_SUBROUTINE_NV = 0x957D,
GL_MESH_SUBROUTINE_UNIFORM_NV = 0x957E,
GL_TASK_SUBROUTINE_UNIFORM_NV = 0x957F,
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV = 0x959E,
GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV = 0x959F,
};
extern void (KHRONOS_APIENTRY* const& glDrawMeshTasksNV) (GLuint first, GLuint count);
extern void (KHRONOS_APIENTRY* const& glDrawMeshTasksIndirectNV) (GLintptr indirect);
extern void (KHRONOS_APIENTRY* const& glMultiDrawMeshTasksIndirectNV) (GLintptr indirect, GLsizei drawcount, GLsizei stride);
extern void (KHRONOS_APIENTRY* const& glMultiDrawMeshTasksIndirectCountNV) (GLintptr indirect, GLintptr drawcount, GLsizei maxdrawcount, GLsizei stride);
#endif
#ifndef GL_NV_non_square_matrices
#define GL_NV_non_square_matrices 1
enum : GLenum
{
GL_FLOAT_MAT2x3_NV = 0x8B65,
GL_FLOAT_MAT2x4_NV = 0x8B66,
GL_FLOAT_MAT3x2_NV = 0x8B67,
GL_FLOAT_MAT3x4_NV = 0x8B68,
GL_FLOAT_MAT4x2_NV = 0x8B69,
GL_FLOAT_MAT4x3_NV = 0x8B6A,
};
extern void (KHRONOS_APIENTRY* const& glUniformMatrix2x3fvNV) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix3x2fvNV) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix2x4fvNV) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix4x2fvNV) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix3x4fvNV) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glUniformMatrix4x3fvNV) (GLint location, GLsizei count, GLboolean transpose, const GLfloat *value);
#endif
#ifndef GL_NV_path_rendering
#define GL_NV_path_rendering 1
enum : GLenum
{
GL_PATH_FORMAT_SVG_NV = 0x9070,
GL_PATH_FORMAT_PS_NV = 0x9071,
GL_STANDARD_FONT_NAME_NV = 0x9072,
GL_SYSTEM_FONT_NAME_NV = 0x9073,
GL_FILE_NAME_NV = 0x9074,
GL_PATH_STROKE_WIDTH_NV = 0x9075,
GL_PATH_END_CAPS_NV = 0x9076,
GL_PATH_INITIAL_END_CAP_NV = 0x9077,
GL_PATH_TERMINAL_END_CAP_NV = 0x9078,
GL_PATH_JOIN_STYLE_NV = 0x9079,
GL_PATH_MITER_LIMIT_NV = 0x907A,
GL_PATH_DASH_CAPS_NV = 0x907B,
GL_PATH_INITIAL_DASH_CAP_NV = 0x907C,
GL_PATH_TERMINAL_DASH_CAP_NV = 0x907D,
GL_PATH_DASH_OFFSET_NV = 0x907E,
GL_PATH_CLIENT_LENGTH_NV = 0x907F,
GL_PATH_FILL_MODE_NV = 0x9080,
GL_PATH_FILL_MASK_NV = 0x9081,
GL_PATH_FILL_COVER_MODE_NV = 0x9082,
GL_PATH_STROKE_COVER_MODE_NV = 0x9083,
GL_PATH_STROKE_MASK_NV = 0x9084,
GL_COUNT_UP_NV = 0x9088,
GL_COUNT_DOWN_NV = 0x9089,
GL_PATH_OBJECT_BOUNDING_BOX_NV = 0x908A,
GL_CONVEX_HULL_NV = 0x908B,
GL_BOUNDING_BOX_NV = 0x908D,
GL_TRANSLATE_X_NV = 0x908E,
GL_TRANSLATE_Y_NV = 0x908F,
GL_TRANSLATE_2D_NV = 0x9090,
GL_TRANSLATE_3D_NV = 0x9091,
GL_AFFINE_2D_NV = 0x9092,
GL_AFFINE_3D_NV = 0x9094,
GL_TRANSPOSE_AFFINE_2D_NV = 0x9096,
GL_TRANSPOSE_AFFINE_3D_NV = 0x9098,
GL_UTF8_NV = 0x909A,
GL_UTF16_NV = 0x909B,
GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV = 0x909C,
GL_PATH_COMMAND_COUNT_NV = 0x909D,
GL_PATH_COORD_COUNT_NV = 0x909E,
GL_PATH_DASH_ARRAY_COUNT_NV = 0x909F,
GL_PATH_COMPUTED_LENGTH_NV = 0x90A0,
GL_PATH_FILL_BOUNDING_BOX_NV = 0x90A1,
GL_PATH_STROKE_BOUNDING_BOX_NV = 0x90A2,
GL_SQUARE_NV = 0x90A3,
GL_ROUND_NV = 0x90A4,
GL_TRIANGULAR_NV = 0x90A5,
GL_BEVEL_NV = 0x90A6,
GL_MITER_REVERT_NV = 0x90A7,
GL_MITER_TRUNCATE_NV = 0x90A8,
GL_SKIP_MISSING_GLYPH_NV = 0x90A9,
GL_USE_MISSING_GLYPH_NV = 0x90AA,
GL_PATH_ERROR_POSITION_NV = 0x90AB,
GL_ACCUM_ADJACENT_PAIRS_NV = 0x90AD,
GL_ADJACENT_PAIRS_NV = 0x90AE,
GL_FIRST_TO_REST_NV = 0x90AF,
GL_PATH_GEN_MODE_NV = 0x90B0,
GL_PATH_GEN_COEFF_NV = 0x90B1,
GL_PATH_GEN_COMPONENTS_NV = 0x90B3,
GL_PATH_STENCIL_FUNC_NV = 0x90B7,
GL_PATH_STENCIL_REF_NV = 0x90B8,
GL_PATH_STENCIL_VALUE_MASK_NV = 0x90B9,
GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV = 0x90BD,
GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV = 0x90BE,
GL_PATH_COVER_DEPTH_FUNC_NV = 0x90BF,
GL_PATH_DASH_OFFSET_RESET_NV = 0x90B4,
GL_MOVE_TO_RESETS_NV = 0x90B5,
GL_MOVE_TO_CONTINUES_NV = 0x90B6,
GL_CLOSE_PATH_NV = 0x00,
GL_MOVE_TO_NV = 0x02,
GL_RELATIVE_MOVE_TO_NV = 0x03,
GL_LINE_TO_NV = 0x04,
GL_RELATIVE_LINE_TO_NV = 0x05,
GL_HORIZONTAL_LINE_TO_NV = 0x06,
GL_RELATIVE_HORIZONTAL_LINE_TO_NV = 0x07,
GL_VERTICAL_LINE_TO_NV = 0x08,
GL_RELATIVE_VERTICAL_LINE_TO_NV = 0x09,
GL_QUADRATIC_CURVE_TO_NV = 0x0A,
GL_RELATIVE_QUADRATIC_CURVE_TO_NV = 0x0B,
GL_CUBIC_CURVE_TO_NV = 0x0C,
GL_RELATIVE_CUBIC_CURVE_TO_NV = 0x0D,
GL_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0E,
GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0F,
GL_SMOOTH_CUBIC_CURVE_TO_NV = 0x10,
GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV = 0x11,
GL_SMALL_CCW_ARC_TO_NV = 0x12,
GL_RELATIVE_SMALL_CCW_ARC_TO_NV = 0x13,
GL_SMALL_CW_ARC_TO_NV = 0x14,
GL_RELATIVE_SMALL_CW_ARC_TO_NV = 0x15,
GL_LARGE_CCW_ARC_TO_NV = 0x16,
GL_RELATIVE_LARGE_CCW_ARC_TO_NV = 0x17,
GL_LARGE_CW_ARC_TO_NV = 0x18,
GL_RELATIVE_LARGE_CW_ARC_TO_NV = 0x19,
GL_RESTART_PATH_NV = 0xF0,
GL_DUP_FIRST_CUBIC_CURVE_TO_NV = 0xF2,
GL_DUP_LAST_CUBIC_CURVE_TO_NV = 0xF4,
GL_RECT_NV = 0xF6,
GL_CIRCULAR_CCW_ARC_TO_NV = 0xF8,
GL_CIRCULAR_CW_ARC_TO_NV = 0xFA,
GL_CIRCULAR_TANGENT_ARC_TO_NV = 0xFC,
GL_ARC_TO_NV = 0xFE,
GL_RELATIVE_ARC_TO_NV = 0xFF,
GL_BOLD_BIT_NV = 0x01,
GL_ITALIC_BIT_NV = 0x02,
GL_GLYPH_WIDTH_BIT_NV = 0x01,
GL_GLYPH_HEIGHT_BIT_NV = 0x02,
GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV = 0x04,
GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV = 0x08,
GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV = 0x10,
GL_GLYPH_VERTICAL_BEARING_X_BIT_NV = 0x20,
GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV = 0x40,
GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV = 0x80,
GL_GLYPH_HAS_KERNING_BIT_NV = 0x100,
GL_FONT_X_MIN_BOUNDS_BIT_NV = 0x00010000,
GL_FONT_Y_MIN_BOUNDS_BIT_NV = 0x00020000,
GL_FONT_X_MAX_BOUNDS_BIT_NV = 0x00040000,
GL_FONT_Y_MAX_BOUNDS_BIT_NV = 0x00080000,
GL_FONT_UNITS_PER_EM_BIT_NV = 0x00100000,
GL_FONT_ASCENDER_BIT_NV = 0x00200000,
GL_FONT_DESCENDER_BIT_NV = 0x00400000,
GL_FONT_HEIGHT_BIT_NV = 0x00800000,
GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV = 0x01000000,
GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV = 0x02000000,
GL_FONT_UNDERLINE_POSITION_BIT_NV = 0x04000000,
GL_FONT_UNDERLINE_THICKNESS_BIT_NV = 0x08000000,
GL_FONT_HAS_KERNING_BIT_NV = 0x10000000,
GL_ROUNDED_RECT_NV = 0xE8,
GL_RELATIVE_ROUNDED_RECT_NV = 0xE9,
GL_ROUNDED_RECT2_NV = 0xEA,
GL_RELATIVE_ROUNDED_RECT2_NV = 0xEB,
GL_ROUNDED_RECT4_NV = 0xEC,
GL_RELATIVE_ROUNDED_RECT4_NV = 0xED,
GL_ROUNDED_RECT8_NV = 0xEE,
GL_RELATIVE_ROUNDED_RECT8_NV = 0xEF,
GL_RELATIVE_RECT_NV = 0xF7,
GL_FONT_GLYPHS_AVAILABLE_NV = 0x9368,
GL_FONT_TARGET_UNAVAILABLE_NV = 0x9369,
GL_FONT_UNAVAILABLE_NV = 0x936A,
GL_FONT_UNINTELLIGIBLE_NV = 0x936B,
GL_CONIC_CURVE_TO_NV = 0x1A,
GL_RELATIVE_CONIC_CURVE_TO_NV = 0x1B,
GL_FONT_NUM_GLYPH_INDICES_BIT_NV = 0x20000000,
GL_STANDARD_FONT_FORMAT_NV = 0x936C,
GL_2_BYTES_NV = 0x1407,
GL_3_BYTES_NV = 0x1408,
GL_4_BYTES_NV = 0x1409,
GL_EYE_LINEAR_NV = 0x2400,
GL_OBJECT_LINEAR_NV = 0x2401,
GL_CONSTANT_NV = 0x8576,
GL_PATH_FOG_GEN_MODE_NV = 0x90AC,
GL_PRIMARY_COLOR = 0x8577,
GL_PRIMARY_COLOR_NV = 0x852C,
GL_SECONDARY_COLOR_NV = 0x852D,
GL_PATH_GEN_COLOR_FORMAT_NV = 0x90B2,
GL_PATH_PROJECTION_NV = 0x1701,
GL_PATH_MODELVIEW_NV = 0x1700,
GL_PATH_MODELVIEW_STACK_DEPTH_NV = 0x0BA3,
GL_PATH_MODELVIEW_MATRIX_NV = 0x0BA6,
GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV = 0x0D36,
GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV = 0x84E3,
GL_PATH_PROJECTION_STACK_DEPTH_NV = 0x0BA4,
GL_PATH_PROJECTION_MATRIX_NV = 0x0BA7,
GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV = 0x0D38,
GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV = 0x84E4,
GL_FRAGMENT_INPUT_NV = 0x936D,
};
extern GLuint (KHRONOS_APIENTRY* const& glGenPathsNV) (GLsizei range);
extern void (KHRONOS_APIENTRY* const& glDeletePathsNV) (GLuint path, GLsizei range);
extern GLboolean (KHRONOS_APIENTRY* const& glIsPathNV) (GLuint path);
extern void (KHRONOS_APIENTRY* const& glPathCommandsNV) (GLuint path, GLsizei numCommands, const GLubyte *commands, GLsizei numCoords, GLenum coordType, const void *coords);
extern void (KHRONOS_APIENTRY* const& glPathCoordsNV) (GLuint path, GLsizei numCoords, GLenum coordType, const void *coords);
extern void (KHRONOS_APIENTRY* const& glPathSubCommandsNV) (GLuint path, GLsizei commandStart, GLsizei commandsToDelete, GLsizei numCommands, const GLubyte *commands, GLsizei numCoords, GLenum coordType, const void *coords);
extern void (KHRONOS_APIENTRY* const& glPathSubCoordsNV) (GLuint path, GLsizei coordStart, GLsizei numCoords, GLenum coordType, const void *coords);
extern void (KHRONOS_APIENTRY* const& glPathStringNV) (GLuint path, GLenum format, GLsizei length, const void *pathString);
extern void (KHRONOS_APIENTRY* const& glPathGlyphsNV) (GLuint firstPathName, GLenum fontTarget, const void *fontName, GLbitfield fontStyle, GLsizei numGlyphs, GLenum type, const void *charcodes, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale);
extern void (KHRONOS_APIENTRY* const& glPathGlyphRangeNV) (GLuint firstPathName, GLenum fontTarget, const void *fontName, GLbitfield fontStyle, GLuint firstGlyph, GLsizei numGlyphs, GLenum handleMissingGlyphs, GLuint pathParameterTemplate, GLfloat emScale);
extern void (KHRONOS_APIENTRY* const& glWeightPathsNV) (GLuint resultPath, GLsizei numPaths, const GLuint *paths, const GLfloat *weights);
extern void (KHRONOS_APIENTRY* const& glCopyPathNV) (GLuint resultPath, GLuint srcPath);
extern void (KHRONOS_APIENTRY* const& glInterpolatePathsNV) (GLuint resultPath, GLuint pathA, GLuint pathB, GLfloat weight);
extern void (KHRONOS_APIENTRY* const& glTransformPathNV) (GLuint resultPath, GLuint srcPath, GLenum transformType, const GLfloat *transformValues);
extern void (KHRONOS_APIENTRY* const& glPathParameterivNV) (GLuint path, GLenum pname, const GLint *value);
extern void (KHRONOS_APIENTRY* const& glPathParameteriNV) (GLuint path, GLenum pname, GLint value);
extern void (KHRONOS_APIENTRY* const& glPathParameterfvNV) (GLuint path, GLenum pname, const GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glPathParameterfNV) (GLuint path, GLenum pname, GLfloat value);
extern void (KHRONOS_APIENTRY* const& glPathDashArrayNV) (GLuint path, GLsizei dashCount, const GLfloat *dashArray);
extern void (KHRONOS_APIENTRY* const& glPathStencilFuncNV) (GLenum func, GLint ref, GLuint mask);
extern void (KHRONOS_APIENTRY* const& glPathStencilDepthOffsetNV) (GLfloat factor, GLfloat units);
extern void (KHRONOS_APIENTRY* const& glStencilFillPathNV) (GLuint path, GLenum fillMode, GLuint mask);
extern void (KHRONOS_APIENTRY* const& glStencilStrokePathNV) (GLuint path, GLint reference, GLuint mask);
extern void (KHRONOS_APIENTRY* const& glStencilFillPathInstancedNV) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLenum fillMode, GLuint mask, GLenum transformType, const GLfloat *transformValues);
extern void (KHRONOS_APIENTRY* const& glStencilStrokePathInstancedNV) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLint reference, GLuint mask, GLenum transformType, const GLfloat *transformValues);
extern void (KHRONOS_APIENTRY* const& glPathCoverDepthFuncNV) (GLenum func);
extern void (KHRONOS_APIENTRY* const& glCoverFillPathNV) (GLuint path, GLenum coverMode);
extern void (KHRONOS_APIENTRY* const& glCoverStrokePathNV) (GLuint path, GLenum coverMode);
extern void (KHRONOS_APIENTRY* const& glCoverFillPathInstancedNV) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat *transformValues);
extern void (KHRONOS_APIENTRY* const& glCoverStrokePathInstancedNV) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLenum coverMode, GLenum transformType, const GLfloat *transformValues);
extern void (KHRONOS_APIENTRY* const& glGetPathParameterivNV) (GLuint path, GLenum pname, GLint *value);
extern void (KHRONOS_APIENTRY* const& glGetPathParameterfvNV) (GLuint path, GLenum pname, GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glGetPathCommandsNV) (GLuint path, GLubyte *commands);
extern void (KHRONOS_APIENTRY* const& glGetPathCoordsNV) (GLuint path, GLfloat *coords);
extern void (KHRONOS_APIENTRY* const& glGetPathDashArrayNV) (GLuint path, GLfloat *dashArray);
extern void (KHRONOS_APIENTRY* const& glGetPathMetricsNV) (GLbitfield metricQueryMask, GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLsizei stride, GLfloat *metrics);
extern void (KHRONOS_APIENTRY* const& glGetPathMetricRangeNV) (GLbitfield metricQueryMask, GLuint firstPathName, GLsizei numPaths, GLsizei stride, GLfloat *metrics);
extern void (KHRONOS_APIENTRY* const& glGetPathSpacingNV) (GLenum pathListMode, GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLfloat advanceScale, GLfloat kerningScale, GLenum transformType, GLfloat *returnedSpacing);
extern GLboolean (KHRONOS_APIENTRY* const& glIsPointInFillPathNV) (GLuint path, GLuint mask, GLfloat x, GLfloat y);
extern GLboolean (KHRONOS_APIENTRY* const& glIsPointInStrokePathNV) (GLuint path, GLfloat x, GLfloat y);
extern GLfloat (KHRONOS_APIENTRY* const& glGetPathLengthNV) (GLuint path, GLsizei startSegment, GLsizei numSegments);
extern GLboolean (KHRONOS_APIENTRY* const& glPointAlongPathNV) (GLuint path, GLsizei startSegment, GLsizei numSegments, GLfloat distance, GLfloat *x, GLfloat *y, GLfloat *tangentX, GLfloat *tangentY);
extern void (KHRONOS_APIENTRY* const& glMatrixLoad3x2fNV) (GLenum matrixMode, const GLfloat *m);
extern void (KHRONOS_APIENTRY* const& glMatrixLoad3x3fNV) (GLenum matrixMode, const GLfloat *m);
extern void (KHRONOS_APIENTRY* const& glMatrixLoadTranspose3x3fNV) (GLenum matrixMode, const GLfloat *m);
extern void (KHRONOS_APIENTRY* const& glMatrixMult3x2fNV) (GLenum matrixMode, const GLfloat *m);
extern void (KHRONOS_APIENTRY* const& glMatrixMult3x3fNV) (GLenum matrixMode, const GLfloat *m);
extern void (KHRONOS_APIENTRY* const& glMatrixMultTranspose3x3fNV) (GLenum matrixMode, const GLfloat *m);
extern void (KHRONOS_APIENTRY* const& glStencilThenCoverFillPathNV) (GLuint path, GLenum fillMode, GLuint mask, GLenum coverMode);
extern void (KHRONOS_APIENTRY* const& glStencilThenCoverStrokePathNV) (GLuint path, GLint reference, GLuint mask, GLenum coverMode);
extern void (KHRONOS_APIENTRY* const& glStencilThenCoverFillPathInstancedNV) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLenum fillMode, GLuint mask, GLenum coverMode, GLenum transformType, const GLfloat *transformValues);
extern void (KHRONOS_APIENTRY* const& glStencilThenCoverStrokePathInstancedNV) (GLsizei numPaths, GLenum pathNameType, const void *paths, GLuint pathBase, GLint reference, GLuint mask, GLenum coverMode, GLenum transformType, const GLfloat *transformValues);
extern GLenum (KHRONOS_APIENTRY* const& glPathGlyphIndexRangeNV) (GLenum fontTarget, const void *fontName, GLbitfield fontStyle, GLuint pathParameterTemplate, GLfloat emScale, GLuint *baseAndCount);
extern GLenum (KHRONOS_APIENTRY* const& glPathGlyphIndexArrayNV) (GLuint firstPathName, GLenum fontTarget, const void *fontName, GLbitfield fontStyle, GLuint firstGlyphIndex, GLsizei numGlyphs, GLuint pathParameterTemplate, GLfloat emScale);
extern GLenum (KHRONOS_APIENTRY* const& glPathMemoryGlyphIndexArrayNV) (GLuint firstPathName, GLenum fontTarget, GLsizeiptr fontSize, const void *fontData, GLsizei faceIndex, GLuint firstGlyphIndex, GLsizei numGlyphs, GLuint pathParameterTemplate, GLfloat emScale);
extern void (KHRONOS_APIENTRY* const& glProgramPathFragmentInputGenNV) (GLuint program, GLint location, GLenum genMode, GLint components, const GLfloat *coeffs);
extern void (KHRONOS_APIENTRY* const& glGetProgramResourcefvNV) (GLuint program, GLenum programInterface, GLuint index, GLsizei propCount, const GLenum *props, GLsizei count, GLsizei *length, GLfloat *params);
extern void (KHRONOS_APIENTRY* const& glPathColorGenNV) (GLenum color, GLenum genMode, GLenum colorFormat, const GLfloat *coeffs);
extern void (KHRONOS_APIENTRY* const& glPathTexGenNV) (GLenum texCoordSet, GLenum genMode, GLint components, const GLfloat *coeffs);
extern void (KHRONOS_APIENTRY* const& glPathFogGenNV) (GLenum genMode);
extern void (KHRONOS_APIENTRY* const& glGetPathColorGenivNV) (GLenum color, GLenum pname, GLint *value);
extern void (KHRONOS_APIENTRY* const& glGetPathColorGenfvNV) (GLenum color, GLenum pname, GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glGetPathTexGenivNV) (GLenum texCoordSet, GLenum pname, GLint *value);
extern void (KHRONOS_APIENTRY* const& glGetPathTexGenfvNV) (GLenum texCoordSet, GLenum pname, GLfloat *value);
extern void (KHRONOS_APIENTRY* const& glMatrixFrustumEXT) (GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
extern void (KHRONOS_APIENTRY* const& glMatrixLoadIdentityEXT) (GLenum mode);
extern void (KHRONOS_APIENTRY* const& glMatrixLoadTransposefEXT) (GLenum mode, const GLfloat *m);
extern void (KHRONOS_APIENTRY* const& glMatrixLoadTransposedEXT) (GLenum mode, const GLdouble *m);
extern void (KHRONOS_APIENTRY* const& glMatrixLoadfEXT) (GLenum mode, const GLfloat *m);
extern void (KHRONOS_APIENTRY* const& glMatrixLoaddEXT) (GLenum mode, const GLdouble *m);
extern void (KHRONOS_APIENTRY* const& glMatrixMultTransposefEXT) (GLenum mode, const GLfloat *m);
extern void (KHRONOS_APIENTRY* const& glMatrixMultTransposedEXT) (GLenum mode, const GLdouble *m);
extern void (KHRONOS_APIENTRY* const& glMatrixMultfEXT) (GLenum mode, const GLfloat *m);
extern void (KHRONOS_APIENTRY* const& glMatrixMultdEXT) (GLenum mode, const GLdouble *m);
extern void (KHRONOS_APIENTRY* const& glMatrixOrthoEXT) (GLenum mode, GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar);
extern void (KHRONOS_APIENTRY* const& glMatrixPopEXT) (GLenum mode);
extern void (KHRONOS_APIENTRY* const& glMatrixPushEXT) (GLenum mode);
extern void (KHRONOS_APIENTRY* const& glMatrixRotatefEXT) (GLenum mode, GLfloat angle, GLfloat x, GLfloat y, GLfloat z);
extern void (KHRONOS_APIENTRY* const& glMatrixRotatedEXT) (GLenum mode, GLdouble angle, GLdouble x, GLdouble y, GLdouble z);
extern void (KHRONOS_APIENTRY* const& glMatrixScalefEXT) (GLenum mode, GLfloat x, GLfloat y, GLfloat z);
extern void (KHRONOS_APIENTRY* const& glMatrixScaledEXT) (GLenum mode, GLdouble x, GLdouble y, GLdouble z);
extern void (KHRONOS_APIENTRY* const& glMatrixTranslatefEXT) (GLenum mode, GLfloat x, GLfloat y, GLfloat z);
extern void (KHRONOS_APIENTRY* const& glMatrixTranslatedEXT) (GLenum mode, GLdouble x, GLdouble y, GLdouble z);
#endif
#ifndef GL_NV_path_rendering_shared_edge
#define GL_NV_path_rendering_shared_edge 1
enum : GLenum
{
GL_SHARED_EDGE_NV = 0xC0,
};
#endif
#ifndef GL_NV_pixel_buffer_object
#define GL_NV_pixel_buffer_object 1
enum : GLenum
{
GL_PIXEL_PACK_BUFFER_NV = 0x88EB,
GL_PIXEL_UNPACK_BUFFER_NV = 0x88EC,
GL_PIXEL_PACK_BUFFER_BINDING_NV = 0x88ED,
GL_PIXEL_UNPACK_BUFFER_BINDING_NV = 0x88EF,
};
#endif
#ifndef GL_NV_polygon_mode
#define GL_NV_polygon_mode 1
enum : GLenum
{
GL_POLYGON_MODE_NV = 0x0B40,
GL_POLYGON_OFFSET_POINT_NV = 0x2A01,
GL_POLYGON_OFFSET_LINE_NV = 0x2A02,
GL_POINT_NV = 0x1B00,
GL_LINE_NV = 0x1B01,
GL_FILL_NV = 0x1B02,
};
extern void (KHRONOS_APIENTRY* const& glPolygonModeNV) (GLenum face, GLenum mode);
#endif
#ifndef GL_NV_primitive_shading_rate
#define GL_NV_primitive_shading_rate 1
enum : GLenum
{
GL_SHADING_RATE_IMAGE_PER_PRIMITIVE_NV = 0x95B1,
GL_SHADING_RATE_IMAGE_PALETTE_COUNT_NV = 0x95B2,
};
#endif
#ifndef GL_NV_read_buffer
#define GL_NV_read_buffer 1
enum : GLenum
{
GL_READ_BUFFER_NV = 0x0C02,
};
extern void (KHRONOS_APIENTRY* const& glReadBufferNV) (GLenum mode);
#endif
#ifndef GL_NV_read_buffer_front
#define GL_NV_read_buffer_front 1
#endif
#ifndef GL_NV_read_depth
#define GL_NV_read_depth 1
#endif
#ifndef GL_NV_read_depth_stencil
#define GL_NV_read_depth_stencil 1
#endif
#ifndef GL_NV_read_stencil
#define GL_NV_read_stencil 1
#endif
#ifndef GL_NV_representative_fragment_test
#define GL_NV_representative_fragment_test 1
enum : GLenum
{
GL_REPRESENTATIVE_FRAGMENT_TEST_NV = 0x937F,
};
#endif
#ifndef GL_NV_sRGB_formats
#define GL_NV_sRGB_formats 1
enum : GLenum
{
GL_SLUMINANCE_NV = 0x8C46,
GL_SLUMINANCE_ALPHA_NV = 0x8C44,
GL_SRGB8_NV = 0x8C41,
GL_SLUMINANCE8_NV = 0x8C47,
GL_SLUMINANCE8_ALPHA8_NV = 0x8C45,
GL_COMPRESSED_SRGB_S3TC_DXT1_NV = 0x8C4C,
GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_NV = 0x8C4D,
GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_NV = 0x8C4E,
GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_NV = 0x8C4F,
GL_ETC1_SRGB8_NV = 0x88EE,
};
#endif
#ifndef GL_NV_sample_locations
#define GL_NV_sample_locations 1
enum : GLenum
{
GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV = 0x933D,
GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV = 0x933E,
GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV = 0x933F,
GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV = 0x9340,
GL_SAMPLE_LOCATION_NV = 0x8E50,
GL_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9341,
GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV = 0x9342,
GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV = 0x9343,
};
extern void (KHRONOS_APIENTRY* const& glFramebufferSampleLocationsfvNV) (GLenum target, GLuint start, GLsizei count, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glNamedFramebufferSampleLocationsfvNV) (GLuint framebuffer, GLuint start, GLsizei count, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glResolveDepthValuesNV) ();
#endif
#ifndef GL_NV_sample_mask_override_coverage
#define GL_NV_sample_mask_override_coverage 1
#endif
#ifndef GL_NV_scissor_exclusive
#define GL_NV_scissor_exclusive 1
enum : GLenum
{
GL_SCISSOR_TEST_EXCLUSIVE_NV = 0x9555,
GL_SCISSOR_BOX_EXCLUSIVE_NV = 0x9556,
};
extern void (KHRONOS_APIENTRY* const& glScissorExclusiveNV) (GLint x, GLint y, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glScissorExclusiveArrayvNV) (GLuint first, GLsizei count, const GLint *v);
#endif
#ifndef GL_NV_shader_atomic_fp16_vector
#define GL_NV_shader_atomic_fp16_vector 1
#endif
#ifndef GL_NV_shader_noperspective_interpolation
#define GL_NV_shader_noperspective_interpolation 1
#endif
#ifndef GL_NV_shader_subgroup_partitioned
#define GL_NV_shader_subgroup_partitioned 1
enum : GLenum
{
GL_SUBGROUP_FEATURE_PARTITIONED_BIT_NV = 0x00000100,
};
#endif
#ifndef GL_NV_shader_texture_footprint
#define GL_NV_shader_texture_footprint 1
#endif
#ifndef GL_NV_shading_rate_image
#define GL_NV_shading_rate_image 1
enum : GLenum
{
GL_SHADING_RATE_IMAGE_NV = 0x9563,
GL_SHADING_RATE_NO_INVOCATIONS_NV = 0x9564,
GL_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV = 0x9565,
GL_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV = 0x9566,
GL_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV = 0x9567,
GL_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV = 0x9568,
GL_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV = 0x9569,
GL_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV = 0x956A,
GL_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV = 0x956B,
GL_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV = 0x956C,
GL_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV = 0x956D,
GL_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV = 0x956E,
GL_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV = 0x956F,
GL_SHADING_RATE_IMAGE_BINDING_NV = 0x955B,
GL_SHADING_RATE_IMAGE_TEXEL_WIDTH_NV = 0x955C,
GL_SHADING_RATE_IMAGE_TEXEL_HEIGHT_NV = 0x955D,
GL_SHADING_RATE_IMAGE_PALETTE_SIZE_NV = 0x955E,
GL_MAX_COARSE_FRAGMENT_SAMPLES_NV = 0x955F,
GL_SHADING_RATE_SAMPLE_ORDER_DEFAULT_NV = 0x95AE,
GL_SHADING_RATE_SAMPLE_ORDER_PIXEL_MAJOR_NV = 0x95AF,
GL_SHADING_RATE_SAMPLE_ORDER_SAMPLE_MAJOR_NV = 0x95B0,
};
extern void (KHRONOS_APIENTRY* const& glBindShadingRateImageNV) (GLuint texture);
extern void (KHRONOS_APIENTRY* const& glGetShadingRateImagePaletteNV) (GLuint viewport, GLuint entry, GLenum *rate);
extern void (KHRONOS_APIENTRY* const& glGetShadingRateSampleLocationivNV) (GLenum rate, GLuint samples, GLuint index, GLint *location);
extern void (KHRONOS_APIENTRY* const& glShadingRateImageBarrierNV) (GLboolean synchronize);
extern void (KHRONOS_APIENTRY* const& glShadingRateImagePaletteNV) (GLuint viewport, GLuint first, GLsizei count, const GLenum *rates);
extern void (KHRONOS_APIENTRY* const& glShadingRateSampleOrderNV) (GLenum order);
extern void (KHRONOS_APIENTRY* const& glShadingRateSampleOrderCustomNV) (GLenum rate, GLuint samples, const GLint *locations);
#endif
#ifndef GL_NV_shadow_samplers_array
#define GL_NV_shadow_samplers_array 1
enum : GLenum
{
GL_SAMPLER_2D_ARRAY_SHADOW_NV = 0x8DC4,
};
#endif
#ifndef GL_NV_shadow_samplers_cube
#define GL_NV_shadow_samplers_cube 1
enum : GLenum
{
GL_SAMPLER_CUBE_SHADOW_NV = 0x8DC5,
};
#endif
#ifndef GL_NV_stereo_view_rendering
#define GL_NV_stereo_view_rendering 1
#endif
#ifndef GL_NV_texture_border_clamp
#define GL_NV_texture_border_clamp 1
enum : GLenum
{
GL_TEXTURE_BORDER_COLOR_NV = 0x1004,
GL_CLAMP_TO_BORDER_NV = 0x812D,
};
#endif
#ifndef GL_NV_texture_compression_s3tc_update
#define GL_NV_texture_compression_s3tc_update 1
#endif
#ifndef GL_NV_texture_npot_2D_mipmap
#define GL_NV_texture_npot_2D_mipmap 1
#endif
#ifndef GL_NV_viewport_array
#define GL_NV_viewport_array 1
enum : GLenum
{
GL_MAX_VIEWPORTS_NV = 0x825B,
GL_VIEWPORT_SUBPIXEL_BITS_NV = 0x825C,
GL_VIEWPORT_BOUNDS_RANGE_NV = 0x825D,
GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV = 0x825F,
};
extern void (KHRONOS_APIENTRY* const& glViewportArrayvNV) (GLuint first, GLsizei count, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glViewportIndexedfNV) (GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
extern void (KHRONOS_APIENTRY* const& glViewportIndexedfvNV) (GLuint index, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glScissorArrayvNV) (GLuint first, GLsizei count, const GLint *v);
extern void (KHRONOS_APIENTRY* const& glScissorIndexedNV) (GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glScissorIndexedvNV) (GLuint index, const GLint *v);
extern void (KHRONOS_APIENTRY* const& glDepthRangeArrayfvNV) (GLuint first, GLsizei count, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glDepthRangeIndexedfNV) (GLuint index, GLfloat n, GLfloat f);
extern void (KHRONOS_APIENTRY* const& glGetFloati_vNV) (GLenum target, GLuint index, GLfloat *data);
extern void (KHRONOS_APIENTRY* const& glEnableiNV) (GLenum target, GLuint index);
extern void (KHRONOS_APIENTRY* const& glDisableiNV) (GLenum target, GLuint index);
extern GLboolean (KHRONOS_APIENTRY* const& glIsEnablediNV) (GLenum target, GLuint index);
#endif
#ifndef GL_NV_viewport_array2
#define GL_NV_viewport_array2 1
#endif
#ifndef GL_NV_viewport_swizzle
#define GL_NV_viewport_swizzle 1
enum : GLenum
{
GL_VIEWPORT_SWIZZLE_POSITIVE_X_NV = 0x9350,
GL_VIEWPORT_SWIZZLE_NEGATIVE_X_NV = 0x9351,
GL_VIEWPORT_SWIZZLE_POSITIVE_Y_NV = 0x9352,
GL_VIEWPORT_SWIZZLE_NEGATIVE_Y_NV = 0x9353,
GL_VIEWPORT_SWIZZLE_POSITIVE_Z_NV = 0x9354,
GL_VIEWPORT_SWIZZLE_NEGATIVE_Z_NV = 0x9355,
GL_VIEWPORT_SWIZZLE_POSITIVE_W_NV = 0x9356,
GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV = 0x9357,
GL_VIEWPORT_SWIZZLE_X_NV = 0x9358,
GL_VIEWPORT_SWIZZLE_Y_NV = 0x9359,
GL_VIEWPORT_SWIZZLE_Z_NV = 0x935A,
GL_VIEWPORT_SWIZZLE_W_NV = 0x935B,
};
extern void (KHRONOS_APIENTRY* const& glViewportSwizzleNV) (GLuint index, GLenum swizzlex, GLenum swizzley, GLenum swizzlez, GLenum swizzlew);
#endif
#ifndef GL_OES_EGL_image
#define GL_OES_EGL_image 1
extern void (KHRONOS_APIENTRY* const& glEGLImageTargetTexture2DOES) (GLenum target, GLeglImageOES image);
extern void (KHRONOS_APIENTRY* const& glEGLImageTargetRenderbufferStorageOES) (GLenum target, GLeglImageOES image);
#endif
#ifndef GL_OES_EGL_image_external
#define GL_OES_EGL_image_external 1
enum : GLenum
{
GL_SAMPLER_EXTERNAL_OES = 0x8D66,
};
#endif
#ifndef GL_OES_EGL_image_external_essl3
#define GL_OES_EGL_image_external_essl3 1
#endif
#ifndef GL_OES_compressed_ETC1_RGB8_sub_texture
#define GL_OES_compressed_ETC1_RGB8_sub_texture 1
#endif
#ifndef GL_OES_compressed_ETC1_RGB8_texture
#define GL_OES_compressed_ETC1_RGB8_texture 1
enum : GLenum
{
GL_ETC1_RGB8_OES = 0x8D64,
};
#endif
#ifndef GL_OES_compressed_paletted_texture
#define GL_OES_compressed_paletted_texture 1
enum : GLenum
{
GL_PALETTE4_RGB8_OES = 0x8B90,
GL_PALETTE4_RGBA8_OES = 0x8B91,
GL_PALETTE4_R5_G6_B5_OES = 0x8B92,
GL_PALETTE4_RGBA4_OES = 0x8B93,
GL_PALETTE4_RGB5_A1_OES = 0x8B94,
GL_PALETTE8_RGB8_OES = 0x8B95,
GL_PALETTE8_RGBA8_OES = 0x8B96,
GL_PALETTE8_R5_G6_B5_OES = 0x8B97,
GL_PALETTE8_RGBA4_OES = 0x8B98,
GL_PALETTE8_RGB5_A1_OES = 0x8B99,
};
#endif
#ifndef GL_OES_copy_image
#define GL_OES_copy_image 1
extern void (KHRONOS_APIENTRY* const& 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);
#endif
#ifndef GL_OES_depth24
#define GL_OES_depth24 1
enum : GLenum
{
GL_DEPTH_COMPONENT24_OES = 0x81A6,
};
#endif
#ifndef GL_OES_depth32
#define GL_OES_depth32 1
#endif
#ifndef GL_OES_depth_texture
#define GL_OES_depth_texture 1
#endif
#ifndef GL_OES_draw_buffers_indexed
#define GL_OES_draw_buffers_indexed 1
extern void (KHRONOS_APIENTRY* const& glEnableiOES) (GLenum target, GLuint index);
extern void (KHRONOS_APIENTRY* const& glDisableiOES) (GLenum target, GLuint index);
extern void (KHRONOS_APIENTRY* const& glBlendEquationiOES) (GLuint buf, GLenum mode);
extern void (KHRONOS_APIENTRY* const& glBlendEquationSeparateiOES) (GLuint buf, GLenum modeRGB, GLenum modeAlpha);
extern void (KHRONOS_APIENTRY* const& glBlendFunciOES) (GLuint buf, GLenum src, GLenum dst);
extern void (KHRONOS_APIENTRY* const& glBlendFuncSeparateiOES) (GLuint buf, GLenum srcRGB, GLenum dstRGB, GLenum srcAlpha, GLenum dstAlpha);
extern void (KHRONOS_APIENTRY* const& glColorMaskiOES) (GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a);
extern GLboolean (KHRONOS_APIENTRY* const& glIsEnablediOES) (GLenum target, GLuint index);
#endif
#ifndef GL_OES_draw_elements_base_vertex
#define GL_OES_draw_elements_base_vertex 1
extern void (KHRONOS_APIENTRY* const& glDrawElementsBaseVertexOES) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex);
extern void (KHRONOS_APIENTRY* const& glDrawRangeElementsBaseVertexOES) (GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex);
extern void (KHRONOS_APIENTRY* const& glDrawElementsInstancedBaseVertexOES) (GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex);
#endif
#ifndef GL_OES_element_index_uint
#define GL_OES_element_index_uint 1
#endif
#ifndef GL_OES_fbo_render_mipmap
#define GL_OES_fbo_render_mipmap 1
#endif
#ifndef GL_OES_fragment_precision_high
#define GL_OES_fragment_precision_high 1
#endif
#ifndef GL_OES_geometry_point_size
#define GL_OES_geometry_point_size 1
#endif
#ifndef GL_OES_geometry_shader
#define GL_OES_geometry_shader 1
enum : GLenum
{
GL_GEOMETRY_SHADER_OES = 0x8DD9,
GL_GEOMETRY_SHADER_BIT_OES = 0x00000004,
GL_GEOMETRY_LINKED_VERTICES_OUT_OES = 0x8916,
GL_GEOMETRY_LINKED_INPUT_TYPE_OES = 0x8917,
GL_GEOMETRY_LINKED_OUTPUT_TYPE_OES = 0x8918,
GL_GEOMETRY_SHADER_INVOCATIONS_OES = 0x887F,
GL_LAYER_PROVOKING_VERTEX_OES = 0x825E,
GL_LINES_ADJACENCY_OES = 0x000A,
GL_LINE_STRIP_ADJACENCY_OES = 0x000B,
GL_TRIANGLES_ADJACENCY_OES = 0x000C,
GL_TRIANGLE_STRIP_ADJACENCY_OES = 0x000D,
GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_OES = 0x8DDF,
GL_MAX_GEOMETRY_UNIFORM_BLOCKS_OES = 0x8A2C,
GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_OES = 0x8A32,
GL_MAX_GEOMETRY_INPUT_COMPONENTS_OES = 0x9123,
GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_OES = 0x9124,
GL_MAX_GEOMETRY_OUTPUT_VERTICES_OES = 0x8DE0,
GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_OES = 0x8DE1,
GL_MAX_GEOMETRY_SHADER_INVOCATIONS_OES = 0x8E5A,
GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_OES = 0x8C29,
GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_OES = 0x92CF,
GL_MAX_GEOMETRY_ATOMIC_COUNTERS_OES = 0x92D5,
GL_MAX_GEOMETRY_IMAGE_UNIFORMS_OES = 0x90CD,
GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_OES = 0x90D7,
GL_FIRST_VERTEX_CONVENTION_OES = 0x8E4D,
GL_LAST_VERTEX_CONVENTION_OES = 0x8E4E,
GL_UNDEFINED_VERTEX_OES = 0x8260,
GL_PRIMITIVES_GENERATED_OES = 0x8C87,
GL_FRAMEBUFFER_DEFAULT_LAYERS_OES = 0x9312,
GL_MAX_FRAMEBUFFER_LAYERS_OES = 0x9317,
GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_OES = 0x8DA8,
GL_FRAMEBUFFER_ATTACHMENT_LAYERED_OES = 0x8DA7,
GL_REFERENCED_BY_GEOMETRY_SHADER_OES = 0x9309,
};
extern void (KHRONOS_APIENTRY* const& glFramebufferTextureOES) (GLenum target, GLenum attachment, GLuint texture, GLint level);
#endif
#ifndef GL_OES_get_program_binary
#define GL_OES_get_program_binary 1
enum : GLenum
{
GL_PROGRAM_BINARY_LENGTH_OES = 0x8741,
GL_NUM_PROGRAM_BINARY_FORMATS_OES = 0x87FE,
GL_PROGRAM_BINARY_FORMATS_OES = 0x87FF,
};
extern void (KHRONOS_APIENTRY* const& glGetProgramBinaryOES) (GLuint program, GLsizei bufSize, GLsizei *length, GLenum *binaryFormat, void *binary);
extern void (KHRONOS_APIENTRY* const& glProgramBinaryOES) (GLuint program, GLenum binaryFormat, const void *binary, GLint length);
#endif
#ifndef GL_OES_gpu_shader5
#define GL_OES_gpu_shader5 1
#endif
#ifndef GL_OES_mapbuffer
#define GL_OES_mapbuffer 1
enum : GLenum
{
GL_WRITE_ONLY_OES = 0x88B9,
GL_BUFFER_ACCESS_OES = 0x88BB,
GL_BUFFER_MAPPED_OES = 0x88BC,
GL_BUFFER_MAP_POINTER_OES = 0x88BD,
};
extern void * (KHRONOS_APIENTRY* const& glMapBufferOES) (GLenum target, GLenum access);
extern GLboolean (KHRONOS_APIENTRY* const& glUnmapBufferOES) (GLenum target);
extern void (KHRONOS_APIENTRY* const& glGetBufferPointervOES) (GLenum target, GLenum pname, void **params);
#endif
#ifndef GL_OES_packed_depth_stencil
#define GL_OES_packed_depth_stencil 1
#endif
#ifndef GL_OES_primitive_bounding_box
#define GL_OES_primitive_bounding_box 1
enum : GLenum
{
GL_PRIMITIVE_BOUNDING_BOX_OES = 0x92BE,
};
extern void (KHRONOS_APIENTRY* const& glPrimitiveBoundingBoxOES) (GLfloat minX, GLfloat minY, GLfloat minZ, GLfloat minW, GLfloat maxX, GLfloat maxY, GLfloat maxZ, GLfloat maxW);
#endif
#ifndef GL_OES_required_internalformat
#define GL_OES_required_internalformat 1
enum : GLenum
{
GL_ALPHA8_OES = 0x803C,
GL_DEPTH_COMPONENT16_OES = 0x81A5,
GL_LUMINANCE4_ALPHA4_OES = 0x8043,
GL_LUMINANCE8_ALPHA8_OES = 0x8045,
GL_LUMINANCE8_OES = 0x8040,
GL_RGBA4_OES = 0x8056,
GL_RGB5_A1_OES = 0x8057,
GL_RGB565_OES = 0x8D62,
GL_RGB8_OES = 0x8051,
GL_RGBA8_OES = 0x8058,
};
#endif
#ifndef GL_OES_rgb8_rgba8
#define GL_OES_rgb8_rgba8 1
#endif
#ifndef GL_OES_sample_shading
#define GL_OES_sample_shading 1
enum : GLenum
{
GL_SAMPLE_SHADING_OES = 0x8C36,
GL_MIN_SAMPLE_SHADING_VALUE_OES = 0x8C37,
};
extern void (KHRONOS_APIENTRY* const& glMinSampleShadingOES) (GLfloat value);
#endif
#ifndef GL_OES_sample_variables
#define GL_OES_sample_variables 1
#endif
#ifndef GL_OES_shader_image_atomic
#define GL_OES_shader_image_atomic 1
#endif
#ifndef GL_OES_shader_io_blocks
#define GL_OES_shader_io_blocks 1
#endif
#ifndef GL_OES_shader_multisample_interpolation
#define GL_OES_shader_multisample_interpolation 1
enum : GLenum
{
GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_OES = 0x8E5B,
GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_OES = 0x8E5C,
GL_FRAGMENT_INTERPOLATION_OFFSET_BITS_OES = 0x8E5D,
};
#endif
#ifndef GL_OES_standard_derivatives
#define GL_OES_standard_derivatives 1
enum : GLenum
{
GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES = 0x8B8B,
};
#endif
#ifndef GL_OES_stencil1
#define GL_OES_stencil1 1
enum : GLenum
{
GL_STENCIL_INDEX1_OES = 0x8D46,
};
#endif
#ifndef GL_OES_stencil4
#define GL_OES_stencil4 1
enum : GLenum
{
GL_STENCIL_INDEX4_OES = 0x8D47,
};
#endif
#ifndef GL_OES_surfaceless_context
#define GL_OES_surfaceless_context 1
enum : GLenum
{
GL_FRAMEBUFFER_UNDEFINED_OES = 0x8219,
};
#endif
#ifndef GL_OES_tessellation_point_size
#define GL_OES_tessellation_point_size 1
#endif
#ifndef GL_OES_tessellation_shader
#define GL_OES_tessellation_shader 1
enum : GLenum
{
GL_PATCHES_OES = 0x000E,
GL_PATCH_VERTICES_OES = 0x8E72,
GL_TESS_CONTROL_OUTPUT_VERTICES_OES = 0x8E75,
GL_TESS_GEN_MODE_OES = 0x8E76,
GL_TESS_GEN_SPACING_OES = 0x8E77,
GL_TESS_GEN_VERTEX_ORDER_OES = 0x8E78,
GL_TESS_GEN_POINT_MODE_OES = 0x8E79,
GL_ISOLINES_OES = 0x8E7A,
GL_QUADS_OES = 0x0007,
GL_FRACTIONAL_ODD_OES = 0x8E7B,
GL_FRACTIONAL_EVEN_OES = 0x8E7C,
GL_MAX_PATCH_VERTICES_OES = 0x8E7D,
GL_MAX_TESS_GEN_LEVEL_OES = 0x8E7E,
GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_OES = 0x8E7F,
GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_OES = 0x8E80,
GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_OES = 0x8E81,
GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_OES = 0x8E82,
GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_OES = 0x8E83,
GL_MAX_TESS_PATCH_COMPONENTS_OES = 0x8E84,
GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_OES = 0x8E85,
GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_OES = 0x8E86,
GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_OES = 0x8E89,
GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_OES = 0x8E8A,
GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_OES = 0x886C,
GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_OES = 0x886D,
GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_OES = 0x8E1E,
GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_OES = 0x8E1F,
GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_OES = 0x92CD,
GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_OES = 0x92CE,
GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_OES = 0x92D3,
GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_OES = 0x92D4,
GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_OES = 0x90CB,
GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_OES = 0x90CC,
GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_OES = 0x90D8,
GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_OES = 0x90D9,
GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED_OES = 0x8221,
GL_IS_PER_PATCH_OES = 0x92E7,
GL_REFERENCED_BY_TESS_CONTROL_SHADER_OES = 0x9307,
GL_REFERENCED_BY_TESS_EVALUATION_SHADER_OES = 0x9308,
GL_TESS_CONTROL_SHADER_OES = 0x8E88,
GL_TESS_EVALUATION_SHADER_OES = 0x8E87,
GL_TESS_CONTROL_SHADER_BIT_OES = 0x00000008,
GL_TESS_EVALUATION_SHADER_BIT_OES = 0x00000010,
};
extern void (KHRONOS_APIENTRY* const& glPatchParameteriOES) (GLenum pname, GLint value);
#endif
#ifndef GL_OES_texture_3D
#define GL_OES_texture_3D 1
enum : GLenum
{
GL_TEXTURE_WRAP_R_OES = 0x8072,
GL_TEXTURE_3D_OES = 0x806F,
GL_TEXTURE_BINDING_3D_OES = 0x806A,
GL_MAX_3D_TEXTURE_SIZE_OES = 0x8073,
GL_SAMPLER_3D_OES = 0x8B5F,
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES = 0x8CD4,
};
extern void (KHRONOS_APIENTRY* const& glTexImage3DOES) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels);
extern void (KHRONOS_APIENTRY* const& glTexSubImage3DOES) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels);
extern void (KHRONOS_APIENTRY* const& glCopyTexSubImage3DOES) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glCompressedTexImage3DOES) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data);
extern void (KHRONOS_APIENTRY* const& glCompressedTexSubImage3DOES) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data);
extern void (KHRONOS_APIENTRY* const& glFramebufferTexture3DOES) (GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset);
#endif
#ifndef GL_OES_texture_border_clamp
#define GL_OES_texture_border_clamp 1
enum : GLenum
{
GL_TEXTURE_BORDER_COLOR_OES = 0x1004,
GL_CLAMP_TO_BORDER_OES = 0x812D,
};
extern void (KHRONOS_APIENTRY* const& glTexParameterIivOES) (GLenum target, GLenum pname, const GLint *params);
extern void (KHRONOS_APIENTRY* const& glTexParameterIuivOES) (GLenum target, GLenum pname, const GLuint *params);
extern void (KHRONOS_APIENTRY* const& glGetTexParameterIivOES) (GLenum target, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetTexParameterIuivOES) (GLenum target, GLenum pname, GLuint *params);
extern void (KHRONOS_APIENTRY* const& glSamplerParameterIivOES) (GLuint sampler, GLenum pname, const GLint *param);
extern void (KHRONOS_APIENTRY* const& glSamplerParameterIuivOES) (GLuint sampler, GLenum pname, const GLuint *param);
extern void (KHRONOS_APIENTRY* const& glGetSamplerParameterIivOES) (GLuint sampler, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glGetSamplerParameterIuivOES) (GLuint sampler, GLenum pname, GLuint *params);
#endif
#ifndef GL_OES_texture_buffer
#define GL_OES_texture_buffer 1
enum : GLenum
{
GL_TEXTURE_BUFFER_OES = 0x8C2A,
GL_TEXTURE_BUFFER_BINDING_OES = 0x8C2A,
GL_MAX_TEXTURE_BUFFER_SIZE_OES = 0x8C2B,
GL_TEXTURE_BINDING_BUFFER_OES = 0x8C2C,
GL_TEXTURE_BUFFER_DATA_STORE_BINDING_OES = 0x8C2D,
GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_OES = 0x919F,
GL_SAMPLER_BUFFER_OES = 0x8DC2,
GL_INT_SAMPLER_BUFFER_OES = 0x8DD0,
GL_UNSIGNED_INT_SAMPLER_BUFFER_OES = 0x8DD8,
GL_IMAGE_BUFFER_OES = 0x9051,
GL_INT_IMAGE_BUFFER_OES = 0x905C,
GL_UNSIGNED_INT_IMAGE_BUFFER_OES = 0x9067,
GL_TEXTURE_BUFFER_OFFSET_OES = 0x919D,
GL_TEXTURE_BUFFER_SIZE_OES = 0x919E,
};
extern void (KHRONOS_APIENTRY* const& glTexBufferOES) (GLenum target, GLenum internalformat, GLuint buffer);
extern void (KHRONOS_APIENTRY* const& glTexBufferRangeOES) (GLenum target, GLenum internalformat, GLuint buffer, GLintptr offset, GLsizeiptr size);
#endif
#ifndef GL_OES_texture_compression_astc
#define GL_OES_texture_compression_astc 1
enum : GLenum
{
GL_COMPRESSED_RGBA_ASTC_3x3x3_OES = 0x93C0,
GL_COMPRESSED_RGBA_ASTC_4x3x3_OES = 0x93C1,
GL_COMPRESSED_RGBA_ASTC_4x4x3_OES = 0x93C2,
GL_COMPRESSED_RGBA_ASTC_4x4x4_OES = 0x93C3,
GL_COMPRESSED_RGBA_ASTC_5x4x4_OES = 0x93C4,
GL_COMPRESSED_RGBA_ASTC_5x5x4_OES = 0x93C5,
GL_COMPRESSED_RGBA_ASTC_5x5x5_OES = 0x93C6,
GL_COMPRESSED_RGBA_ASTC_6x5x5_OES = 0x93C7,
GL_COMPRESSED_RGBA_ASTC_6x6x5_OES = 0x93C8,
GL_COMPRESSED_RGBA_ASTC_6x6x6_OES = 0x93C9,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES = 0x93E0,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES = 0x93E1,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES = 0x93E2,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x4_OES = 0x93E3,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4x4_OES = 0x93E4,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x4_OES = 0x93E5,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x5_OES = 0x93E6,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES = 0x93E7,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES = 0x93E8,
GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES = 0x93E9,
};
#endif
#ifndef GL_OES_texture_cube_map_array
#define GL_OES_texture_cube_map_array 1
enum : GLenum
{
GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_OES = 0x900A,
GL_SAMPLER_CUBE_MAP_ARRAY_OES = 0x900C,
GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_OES = 0x900D,
GL_INT_SAMPLER_CUBE_MAP_ARRAY_OES = 0x900E,
GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_OES = 0x900F,
GL_IMAGE_CUBE_MAP_ARRAY_OES = 0x9054,
GL_INT_IMAGE_CUBE_MAP_ARRAY_OES = 0x905F,
GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_OES = 0x906A,
};
#endif
#ifndef GL_OES_texture_float
#define GL_OES_texture_float 1
#endif
#ifndef GL_OES_texture_float_linear
#define GL_OES_texture_float_linear 1
#endif
#ifndef GL_OES_texture_half_float
#define GL_OES_texture_half_float 1
enum : GLenum
{
GL_HALF_FLOAT_OES = 0x8D61,
};
#endif
#ifndef GL_OES_texture_half_float_linear
#define GL_OES_texture_half_float_linear 1
#endif
#ifndef GL_OES_texture_npot
#define GL_OES_texture_npot 1
#endif
#ifndef GL_OES_texture_stencil8
#define GL_OES_texture_stencil8 1
enum : GLenum
{
GL_STENCIL_INDEX_OES = 0x1901,
GL_STENCIL_INDEX8_OES = 0x8D48,
};
#endif
#ifndef GL_OES_texture_storage_multisample_2d_array
#define GL_OES_texture_storage_multisample_2d_array 1
enum : GLenum
{
GL_TEXTURE_2D_MULTISAMPLE_ARRAY_OES = 0x9102,
GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY_OES = 0x9105,
GL_SAMPLER_2D_MULTISAMPLE_ARRAY_OES = 0x910B,
GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES = 0x910C,
GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES = 0x910D,
};
extern void (KHRONOS_APIENTRY* const& glTexStorage3DMultisampleOES) (GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations);
#endif
#ifndef GL_OES_texture_view
#define GL_OES_texture_view 1
enum : GLenum
{
GL_TEXTURE_VIEW_MIN_LEVEL_OES = 0x82DB,
GL_TEXTURE_VIEW_NUM_LEVELS_OES = 0x82DC,
GL_TEXTURE_VIEW_MIN_LAYER_OES = 0x82DD,
GL_TEXTURE_VIEW_NUM_LAYERS_OES = 0x82DE,
};
extern void (KHRONOS_APIENTRY* const& glTextureViewOES) (GLuint texture, GLenum target, GLuint origtexture, GLenum internalformat, GLuint minlevel, GLuint numlevels, GLuint minlayer, GLuint numlayers);
#endif
#ifndef GL_OES_vertex_array_object
#define GL_OES_vertex_array_object 1
enum : GLenum
{
GL_VERTEX_ARRAY_BINDING_OES = 0x85B5,
};
extern void (KHRONOS_APIENTRY* const& glBindVertexArrayOES) (GLuint array);
extern void (KHRONOS_APIENTRY* const& glDeleteVertexArraysOES) (GLsizei n, const GLuint *arrays);
extern void (KHRONOS_APIENTRY* const& glGenVertexArraysOES) (GLsizei n, GLuint *arrays);
extern GLboolean (KHRONOS_APIENTRY* const& glIsVertexArrayOES) (GLuint array);
#endif
#ifndef GL_OES_vertex_half_float
#define GL_OES_vertex_half_float 1
#endif
#ifndef GL_OES_vertex_type_10_10_10_2
#define GL_OES_vertex_type_10_10_10_2 1
enum : GLenum
{
GL_UNSIGNED_INT_10_10_10_2_OES = 0x8DF6,
GL_INT_10_10_10_2_OES = 0x8DF7,
};
#endif
#ifndef GL_OES_viewport_array
#define GL_OES_viewport_array 1
enum : GLenum
{
GL_MAX_VIEWPORTS_OES = 0x825B,
GL_VIEWPORT_SUBPIXEL_BITS_OES = 0x825C,
GL_VIEWPORT_BOUNDS_RANGE_OES = 0x825D,
GL_VIEWPORT_INDEX_PROVOKING_VERTEX_OES = 0x825F,
};
extern void (KHRONOS_APIENTRY* const& glViewportArrayvOES) (GLuint first, GLsizei count, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glViewportIndexedfOES) (GLuint index, GLfloat x, GLfloat y, GLfloat w, GLfloat h);
extern void (KHRONOS_APIENTRY* const& glViewportIndexedfvOES) (GLuint index, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glScissorArrayvOES) (GLuint first, GLsizei count, const GLint *v);
extern void (KHRONOS_APIENTRY* const& glScissorIndexedOES) (GLuint index, GLint left, GLint bottom, GLsizei width, GLsizei height);
extern void (KHRONOS_APIENTRY* const& glScissorIndexedvOES) (GLuint index, const GLint *v);
extern void (KHRONOS_APIENTRY* const& glDepthRangeArrayfvOES) (GLuint first, GLsizei count, const GLfloat *v);
extern void (KHRONOS_APIENTRY* const& glDepthRangeIndexedfOES) (GLuint index, GLfloat n, GLfloat f);
extern void (KHRONOS_APIENTRY* const& glGetFloati_vOES) (GLenum target, GLuint index, GLfloat *data);
#endif
#ifndef GL_OVR_multiview
#define GL_OVR_multiview 1
enum : GLenum
{
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR = 0x9630,
GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR = 0x9632,
GL_MAX_VIEWS_OVR = 0x9631,
GL_FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR = 0x9633,
};
extern void (KHRONOS_APIENTRY* const& glFramebufferTextureMultiviewOVR) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLint baseViewIndex, GLsizei numViews);
#endif
#ifndef GL_OVR_multiview2
#define GL_OVR_multiview2 1
#endif
#ifndef GL_OVR_multiview_multisampled_render_to_texture
#define GL_OVR_multiview_multisampled_render_to_texture 1
extern void (KHRONOS_APIENTRY* const& glFramebufferTextureMultisampleMultiviewOVR) (GLenum target, GLenum attachment, GLuint texture, GLint level, GLsizei samples, GLint baseViewIndex, GLsizei numViews);
#endif
#ifndef GL_QCOM_alpha_test
#define GL_QCOM_alpha_test 1
enum : GLenum
{
GL_ALPHA_TEST_QCOM = 0x0BC0,
GL_ALPHA_TEST_FUNC_QCOM = 0x0BC1,
GL_ALPHA_TEST_REF_QCOM = 0x0BC2,
};
extern void (KHRONOS_APIENTRY* const& glAlphaFuncQCOM) (GLenum func, GLclampf ref);
#endif
#ifndef GL_QCOM_binning_control
#define GL_QCOM_binning_control 1
enum : GLenum
{
GL_BINNING_CONTROL_HINT_QCOM = 0x8FB0,
GL_CPU_OPTIMIZED_QCOM = 0x8FB1,
GL_GPU_OPTIMIZED_QCOM = 0x8FB2,
GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM = 0x8FB3,
};
#endif
#ifndef GL_QCOM_driver_control
#define GL_QCOM_driver_control 1
extern void (KHRONOS_APIENTRY* const& glGetDriverControlsQCOM) (GLint *num, GLsizei size, GLuint *driverControls);
extern void (KHRONOS_APIENTRY* const& glGetDriverControlStringQCOM) (GLuint driverControl, GLsizei bufSize, GLsizei *length, GLchar *driverControlString);
extern void (KHRONOS_APIENTRY* const& glEnableDriverControlQCOM) (GLuint driverControl);
extern void (KHRONOS_APIENTRY* const& glDisableDriverControlQCOM) (GLuint driverControl);
#endif
#ifndef GL_QCOM_extended_get
#define GL_QCOM_extended_get 1
enum : GLenum
{
GL_TEXTURE_WIDTH_QCOM = 0x8BD2,
GL_TEXTURE_HEIGHT_QCOM = 0x8BD3,
GL_TEXTURE_DEPTH_QCOM = 0x8BD4,
GL_TEXTURE_INTERNAL_FORMAT_QCOM = 0x8BD5,
GL_TEXTURE_FORMAT_QCOM = 0x8BD6,
GL_TEXTURE_TYPE_QCOM = 0x8BD7,
GL_TEXTURE_IMAGE_VALID_QCOM = 0x8BD8,
GL_TEXTURE_NUM_LEVELS_QCOM = 0x8BD9,
GL_TEXTURE_TARGET_QCOM = 0x8BDA,
GL_TEXTURE_OBJECT_VALID_QCOM = 0x8BDB,
GL_STATE_RESTORE = 0x8BDC,
};
extern void (KHRONOS_APIENTRY* const& glExtGetTexturesQCOM) (GLuint *textures, GLint maxTextures, GLint *numTextures);
extern void (KHRONOS_APIENTRY* const& glExtGetBuffersQCOM) (GLuint *buffers, GLint maxBuffers, GLint *numBuffers);
extern void (KHRONOS_APIENTRY* const& glExtGetRenderbuffersQCOM) (GLuint *renderbuffers, GLint maxRenderbuffers, GLint *numRenderbuffers);
extern void (KHRONOS_APIENTRY* const& glExtGetFramebuffersQCOM) (GLuint *framebuffers, GLint maxFramebuffers, GLint *numFramebuffers);
extern void (KHRONOS_APIENTRY* const& glExtGetTexLevelParameterivQCOM) (GLuint texture, GLenum face, GLint level, GLenum pname, GLint *params);
extern void (KHRONOS_APIENTRY* const& glExtTexObjectStateOverrideiQCOM) (GLenum target, GLenum pname, GLint param);
extern void (KHRONOS_APIENTRY* const& glExtGetTexSubImageQCOM) (GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, void *texels);
extern void (KHRONOS_APIENTRY* const& glExtGetBufferPointervQCOM) (GLenum target, void **params);
#endif
#ifndef GL_QCOM_extended_get2
#define GL_QCOM_extended_get2 1
extern void (KHRONOS_APIENTRY* const& glExtGetShadersQCOM) (GLuint *shaders, GLint maxShaders, GLint *numShaders);
extern void (KHRONOS_APIENTRY* const& glExtGetProgramsQCOM) (GLuint *programs, GLint maxPrograms, GLint *numPrograms);
extern GLboolean (KHRONOS_APIENTRY* const& glExtIsProgramBinaryQCOM) (GLuint program);
extern void (KHRONOS_APIENTRY* const& glExtGetProgramBinarySourceQCOM) (GLuint program, GLenum shadertype, GLchar *source, GLint *length);
#endif
#ifndef GL_QCOM_framebuffer_foveated
#define GL_QCOM_framebuffer_foveated 1
enum : GLenum
{
GL_FOVEATION_ENABLE_BIT_QCOM = 0x00000001,
GL_FOVEATION_SCALED_BIN_METHOD_BIT_QCOM = 0x00000002,
};
extern void (KHRONOS_APIENTRY* const& glFramebufferFoveationConfigQCOM) (GLuint framebuffer, GLuint numLayers, GLuint focalPointsPerLayer, GLuint requestedFeatures, GLuint *providedFeatures);
extern void (KHRONOS_APIENTRY* const& glFramebufferFoveationParametersQCOM) (GLuint framebuffer, GLuint layer, GLuint focalPoint, GLfloat focalX, GLfloat focalY, GLfloat gainX, GLfloat gainY, GLfloat foveaArea);
#endif
#ifndef GL_QCOM_motion_estimation
#define GL_QCOM_motion_estimation 1
enum : GLenum
{
GL_MOTION_ESTIMATION_SEARCH_BLOCK_X_QCOM = 0x8C90,
GL_MOTION_ESTIMATION_SEARCH_BLOCK_Y_QCOM = 0x8C91,
};
extern void (KHRONOS_APIENTRY* const& glTexEstimateMotionQCOM) (GLuint ref, GLuint target, GLuint output);
extern void (KHRONOS_APIENTRY* const& glTexEstimateMotionRegionsQCOM) (GLuint ref, GLuint target, GLuint output, GLuint mask);
#endif
#ifndef GL_QCOM_frame_extrapolation
#define GL_QCOM_frame_extrapolation 1
extern void (KHRONOS_APIENTRY* const& glExtrapolateTex2DQCOM) (GLuint src1, GLuint src2, GLuint output, GLfloat scaleFactor);
#endif
#ifndef GL_QCOM_render_shared_exponent
#define GL_QCOM_render_shared_exponent 1
#endif
#ifndef GL_QCOM_texture_foveated
#define GL_QCOM_texture_foveated 1
enum : GLenum
{
GL_TEXTURE_FOVEATED_FEATURE_BITS_QCOM = 0x8BFB,
GL_TEXTURE_FOVEATED_MIN_PIXEL_DENSITY_QCOM = 0x8BFC,
GL_TEXTURE_FOVEATED_FEATURE_QUERY_QCOM = 0x8BFD,
GL_TEXTURE_FOVEATED_NUM_FOCAL_POINTS_QUERY_QCOM = 0x8BFE,
GL_FRAMEBUFFER_INCOMPLETE_FOVEATION_QCOM = 0x8BFF,
};
extern void (KHRONOS_APIENTRY* const& glTextureFoveationParametersQCOM) (GLuint texture, GLuint layer, GLuint focalPoint, GLfloat focalX, GLfloat focalY, GLfloat gainX, GLfloat gainY, GLfloat foveaArea);
#endif
#ifndef GL_QCOM_texture_foveated2
#define GL_QCOM_texture_foveated2 1
enum : GLenum
{
GL_TEXTURE_FOVEATED_CUTOFF_DENSITY_QCOM = 0x96A0,
};
#endif
#ifndef GL_QCOM_texture_foveated_subsampled_layout
#define GL_QCOM_texture_foveated_subsampled_layout 1
enum : GLenum
{
GL_FOVEATION_SUBSAMPLED_LAYOUT_METHOD_BIT_QCOM = 0x00000004,
GL_MAX_SHADER_SUBSAMPLED_IMAGE_UNITS_QCOM = 0x8FA1,
};
#endif
#ifndef GL_QCOM_perfmon_global_mode
#define GL_QCOM_perfmon_global_mode 1
enum : GLenum
{
GL_PERFMON_GLOBAL_MODE_QCOM = 0x8FA0,
};
#endif
#ifndef GL_QCOM_shader_framebuffer_fetch_noncoherent
#define GL_QCOM_shader_framebuffer_fetch_noncoherent 1
enum : GLenum
{
GL_FRAMEBUFFER_FETCH_NONCOHERENT_QCOM = 0x96A2,
};
extern void (KHRONOS_APIENTRY* const& glFramebufferFetchBarrierQCOM) ();
#endif
#ifndef GL_QCOM_shader_framebuffer_fetch_rate
#define GL_QCOM_shader_framebuffer_fetch_rate 1
#endif
#ifndef GL_QCOM_shading_rate
#define GL_QCOM_shading_rate 1
enum : GLenum
{
GL_SHADING_RATE_QCOM = 0x96A4,
GL_SHADING_RATE_PRESERVE_ASPECT_RATIO_QCOM = 0x96A5,
GL_SHADING_RATE_1X1_PIXELS_QCOM = 0x96A6,
GL_SHADING_RATE_1X2_PIXELS_QCOM = 0x96A7,
GL_SHADING_RATE_2X1_PIXELS_QCOM = 0x96A8,
GL_SHADING_RATE_2X2_PIXELS_QCOM = 0x96A9,
GL_SHADING_RATE_4X2_PIXELS_QCOM = 0x96AC,
GL_SHADING_RATE_4X4_PIXELS_QCOM = 0x96AE,
};
extern void (KHRONOS_APIENTRY* const& glShadingRateQCOM) (GLenum rate);
#endif
#ifndef GL_QCOM_tiled_rendering
#define GL_QCOM_tiled_rendering 1
enum : GLenum
{
GL_COLOR_BUFFER_BIT0_QCOM = 0x00000001,
GL_COLOR_BUFFER_BIT1_QCOM = 0x00000002,
GL_COLOR_BUFFER_BIT2_QCOM = 0x00000004,
GL_COLOR_BUFFER_BIT3_QCOM = 0x00000008,
GL_COLOR_BUFFER_BIT4_QCOM = 0x00000010,
GL_COLOR_BUFFER_BIT5_QCOM = 0x00000020,
GL_COLOR_BUFFER_BIT6_QCOM = 0x00000040,
GL_COLOR_BUFFER_BIT7_QCOM = 0x00000080,
GL_DEPTH_BUFFER_BIT0_QCOM = 0x00000100,
GL_DEPTH_BUFFER_BIT1_QCOM = 0x00000200,
GL_DEPTH_BUFFER_BIT2_QCOM = 0x00000400,
GL_DEPTH_BUFFER_BIT3_QCOM = 0x00000800,
GL_DEPTH_BUFFER_BIT4_QCOM = 0x00001000,
GL_DEPTH_BUFFER_BIT5_QCOM = 0x00002000,
GL_DEPTH_BUFFER_BIT6_QCOM = 0x00004000,
GL_DEPTH_BUFFER_BIT7_QCOM = 0x00008000,
GL_STENCIL_BUFFER_BIT0_QCOM = 0x00010000,
GL_STENCIL_BUFFER_BIT1_QCOM = 0x00020000,
GL_STENCIL_BUFFER_BIT2_QCOM = 0x00040000,
GL_STENCIL_BUFFER_BIT3_QCOM = 0x00080000,
GL_STENCIL_BUFFER_BIT4_QCOM = 0x00100000,
GL_STENCIL_BUFFER_BIT5_QCOM = 0x00200000,
GL_STENCIL_BUFFER_BIT6_QCOM = 0x00400000,
GL_STENCIL_BUFFER_BIT7_QCOM = 0x00800000,
GL_MULTISAMPLE_BUFFER_BIT0_QCOM = 0x01000000,
GL_MULTISAMPLE_BUFFER_BIT1_QCOM = 0x02000000,
GL_MULTISAMPLE_BUFFER_BIT2_QCOM = 0x04000000,
GL_MULTISAMPLE_BUFFER_BIT3_QCOM = 0x08000000,
GL_MULTISAMPLE_BUFFER_BIT4_QCOM = 0x10000000,
GL_MULTISAMPLE_BUFFER_BIT5_QCOM = 0x20000000,
GL_MULTISAMPLE_BUFFER_BIT6_QCOM = 0x40000000,
GL_MULTISAMPLE_BUFFER_BIT7_QCOM = 0x80000000,
};
extern void (KHRONOS_APIENTRY* const& glStartTilingQCOM) (GLuint x, GLuint y, GLuint width, GLuint height, GLbitfield preserveMask);
extern void (KHRONOS_APIENTRY* const& glEndTilingQCOM) (GLbitfield preserveMask);
#endif
#ifndef GL_QCOM_writeonly_rendering
#define GL_QCOM_writeonly_rendering 1
enum : GLenum
{
GL_WRITEONLY_RENDERING_QCOM = 0x8823,
};
#endif
#ifndef GL_QCOM_YUV_texture_gather
#define GL_QCOM_YUV_texture_gather 1
#endif
#ifndef GL_VIV_shader_binary
#define GL_VIV_shader_binary 1
enum : GLenum
{
GL_SHADER_BINARY_VIV = 0x8FC4,
};
#endif
#ifndef GL_EXT_texture_shadow_lod
#define GL_EXT_texture_shadow_lod 1
#endif
/** Load all available functions from the OpenGL core API.
This will not load extensions!
*/
void loadFunctions();
/** Load all available OpenGL extension functions.
It's probably a good idea to stick to the core API as much as possible.
Extensions are not as portable, and it can be a little time-consuming to
load all of the extension entry-points.
*/
void loadExtensions();
}
}