diff --git a/samples/ControlCatalog/Pages/OpenGlPage.xaml.cs b/samples/ControlCatalog/Pages/OpenGlPage.xaml.cs index 6c13a5ac22d..38f76682c59 100644 --- a/samples/ControlCatalog/Pages/OpenGlPage.xaml.cs +++ b/samples/ControlCatalog/Pages/OpenGlPage.xaml.cs @@ -12,6 +12,8 @@ using static Avalonia.OpenGL.GlConsts; // ReSharper disable StringLiteralTypo +using Buffer = System.Buffer; + namespace ControlCatalog.Pages { public class OpenGlPage : UserControl @@ -83,13 +85,13 @@ static OpenGlPageControl() AffectsRender(YawProperty, PitchProperty, RollProperty, DiscoProperty); } - private int _vertexShader; - private int _fragmentShader; - private int _shaderProgram; - private int _vertexBufferObject; - private int _indexBufferObject; - private int _vertexArrayObject; - private GlExtrasInterface _glExt; + private uint _vertexShader; + private uint _fragmentShader; + private uint _shaderProgram; + private uint _vertexBufferObject; + private uint _indexBufferObject; + private uint _vertexArrayObject; + //private GlExtrasInterface _glExt; private string GetShader(bool fragment, string shader) { @@ -254,19 +256,19 @@ private void CheckError(GlInterface gl) Console.WriteLine(err); } - protected unsafe override void OnOpenGlInit(GlInterface GL, int fb) + protected unsafe override void OnOpenGlInit(GlInterface GL, uint fb) { CheckError(GL); - _glExt = new GlExtrasInterface(GL); + //_glExt = new GlExtrasInterface(GL); - Info = $"Renderer: {GL.GetString(GL_RENDERER)} Version: {GL.GetString(GL_VERSION)}"; + Info = $"Renderer: {GL.GetString(StringName.GL_RENDERER)} Version: {GL.GetString(StringName.GL_VERSION)}"; // Load the source of the vertex shader and compile it. - _vertexShader = GL.CreateShader(GL_VERTEX_SHADER); + _vertexShader = GL.CreateShader(ShaderType.GL_VERTEX_SHADER); Console.WriteLine(GL.CompileShaderAndGetError(_vertexShader, VertexShaderSource)); // Load the source of the fragment shader and compile it. - _fragmentShader = GL.CreateShader(GL_FRAGMENT_SHADER); + _fragmentShader = GL.CreateShader(ShaderType.GL_FRAGMENT_SHADER); Console.WriteLine(GL.CompileShaderAndGetError(_fragmentShader, FragmentShaderSource)); // Create the shader program, attach the vertex and fragment shaders and link the program. @@ -283,61 +285,63 @@ protected unsafe override void OnOpenGlInit(GlInterface GL, int fb) // Create the vertex buffer object (VBO) for the vertex data. _vertexBufferObject = GL.GenBuffer(); // Bind the VBO and copy the vertex data into it. - GL.BindBuffer(GL_ARRAY_BUFFER, _vertexBufferObject); + GL.BindBuffer(BufferTargetARB.GL_ARRAY_BUFFER, _vertexBufferObject); CheckError(GL); var vertexSize = Marshal.SizeOf(); fixed (void* pdata = _points) - GL.BufferData(GL_ARRAY_BUFFER, new IntPtr(_points.Length * vertexSize), - new IntPtr(pdata), GL_STATIC_DRAW); + GL.BufferData(BufferTargetARB.GL_ARRAY_BUFFER, new IntPtr(_points.Length * vertexSize), + new IntPtr(pdata), BufferUsageARB.GL_STATIC_DRAW); _indexBufferObject = GL.GenBuffer(); - GL.BindBuffer(GL_ELEMENT_ARRAY_BUFFER, _indexBufferObject); + GL.BindBuffer(BufferTargetARB.GL_ELEMENT_ARRAY_BUFFER, _indexBufferObject); CheckError(GL); fixed (void* pdata = _indices) - GL.BufferData(GL_ELEMENT_ARRAY_BUFFER, new IntPtr(_indices.Length * sizeof(ushort)), new IntPtr(pdata), - GL_STATIC_DRAW); + GL.BufferData(BufferTargetARB.GL_ELEMENT_ARRAY_BUFFER, new IntPtr(_indices.Length * sizeof(ushort)), new IntPtr(pdata), + BufferUsageARB.GL_STATIC_DRAW); CheckError(GL); - _vertexArrayObject = _glExt.GenVertexArray(); - _glExt.BindVertexArray(_vertexArrayObject); + var oneArr = new uint[1]; + GL.GenVertexArraysOES(1, oneArr);// _glExt.GenVertexArray(); + _vertexArrayObject = oneArr[0]; + GL.BindVertexArrayOES(_vertexArrayObject); CheckError(GL); - GL.VertexAttribPointer(positionLocation, 3, GL_FLOAT, - 0, vertexSize, IntPtr.Zero); - GL.VertexAttribPointer(normalLocation, 3, GL_FLOAT, - 0, vertexSize, new IntPtr(12)); + GL.VertexAttribPointer(positionLocation, 3, VertexAttribPointerType.GL_FLOAT, + false, vertexSize, IntPtr.Zero); + GL.VertexAttribPointer(normalLocation, 3, VertexAttribPointerType.GL_FLOAT, + false, vertexSize, new IntPtr(12)); GL.EnableVertexAttribArray(positionLocation); GL.EnableVertexAttribArray(normalLocation); CheckError(GL); } - protected override void OnOpenGlDeinit(GlInterface GL, int fb) + protected override void OnOpenGlDeinit(GlInterface GL, uint fb) { // Unbind everything - GL.BindBuffer(GL_ARRAY_BUFFER, 0); - GL.BindBuffer(GL_ELEMENT_ARRAY_BUFFER, 0); - _glExt.BindVertexArray(0); + GL.BindBuffer(BufferTargetARB.GL_ARRAY_BUFFER, 0); + GL.BindBuffer(BufferTargetARB.GL_ELEMENT_ARRAY_BUFFER, 0); + GL.BindVertexArrayOES(0); GL.UseProgram(0); // Delete all resources. GL.DeleteBuffers(2, new[] { _vertexBufferObject, _indexBufferObject }); - _glExt.DeleteVertexArrays(1, new[] { _vertexArrayObject }); + GL.DeleteVertexArraysOES(1, new[] { _vertexArrayObject }); GL.DeleteProgram(_shaderProgram); GL.DeleteShader(_fragmentShader); GL.DeleteShader(_vertexShader); } static Stopwatch St = Stopwatch.StartNew(); - protected override unsafe void OnOpenGlRender(GlInterface gl, int fb) + protected override unsafe void OnOpenGlRender(GlInterface gl, uint fb) { gl.ClearColor(0, 0, 0, 0); gl.Clear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); - gl.Enable(GL_DEPTH_TEST); + gl.Enable(EnableCap.GL_DEPTH_TEST); gl.Viewport(0, 0, (int)Bounds.Width, (int)Bounds.Height); var GL = gl; - GL.BindBuffer(GL_ARRAY_BUFFER, _vertexBufferObject); - GL.BindBuffer(GL_ELEMENT_ARRAY_BUFFER, _indexBufferObject); - _glExt.BindVertexArray(_vertexArrayObject); + GL.BindBuffer(BufferTargetARB.GL_ARRAY_BUFFER, _vertexBufferObject); + GL.BindBuffer(BufferTargetARB.GL_ELEMENT_ARRAY_BUFFER, _indexBufferObject); + GL.BindVertexArrayOES(_vertexArrayObject); GL.UseProgram(_shaderProgram); CheckError(GL); var projection = @@ -354,6 +358,7 @@ protected override unsafe void OnOpenGlRender(GlInterface gl, int fb) var minYLoc = GL.GetUniformLocationString(_shaderProgram, "uMinY"); var timeLoc = GL.GetUniformLocationString(_shaderProgram, "uTime"); var discoLoc = GL.GetUniformLocationString(_shaderProgram, "uDisco"); + GL.UniformMatrix4fv(modelLoc, 1, false, &model); GL.UniformMatrix4fv(viewLoc, 1, false, &view); GL.UniformMatrix4fv(projectionLoc, 1, false, &projection); @@ -362,40 +367,44 @@ protected override unsafe void OnOpenGlRender(GlInterface gl, int fb) GL.Uniform1f(timeLoc, (float)St.Elapsed.TotalSeconds); GL.Uniform1f(discoLoc, _disco); CheckError(GL); - GL.DrawElements(GL_TRIANGLES, _indices.Length, GL_UNSIGNED_SHORT, IntPtr.Zero); + GL.DrawElements(PrimitiveType.GL_TRIANGLES, _indices.Length, DrawElementsType.GL_UNSIGNED_SHORT, IntPtr.Zero); CheckError(GL); if (_disco > 0.01) Dispatcher.UIThread.Post(InvalidateVisual, DispatcherPriority.Background); } +/* class GlExtrasInterface : GlInterfaceBase { public GlExtrasInterface(GlInterface gl) : base(gl.GetProcAddress, gl.ContextInfo) { } - public delegate void GlDeleteVertexArrays(int count, int[] buffers); - [GlMinVersionEntryPoint("glDeleteVertexArrays", 3,0)] - [GlExtensionEntryPoint("glDeleteVertexArraysOES", "GL_OES_vertex_array_object")] + public delegate void GlDeleteVertexArrays(int count, uint[] buffers); + //[GlMinVersionEntryPoint("glDeleteVertexArrays", 3,0)] + //[GlExtensionEntryPoint("glDeleteVertexArraysOES", "GL_OES_vertex_array_object")] + [GlEntryPoint("glDeleteVertexArrays")] public GlDeleteVertexArrays DeleteVertexArrays { get; } - public delegate void GlBindVertexArray(int array); - [GlMinVersionEntryPoint("glBindVertexArray", 3,0)] - [GlExtensionEntryPoint("glBindVertexArrayOES", "GL_OES_vertex_array_object")] + public delegate void GlBindVertexArray(uint array); + //[GlMinVersionEntryPoint("glBindVertexArray", 3,0)] + //[GlExtensionEntryPoint("glBindVertexArrayOES", "GL_OES_vertex_array_object")] + [GlEntryPoint("glBindVertexArray")] public GlBindVertexArray BindVertexArray { get; } - public delegate void GlGenVertexArrays(int n, int[] rv); + public delegate void GlGenVertexArrays(int n, uint[] rv); - [GlMinVersionEntryPoint("glGenVertexArrays",3,0)] - [GlExtensionEntryPoint("glGenVertexArraysOES", "GL_OES_vertex_array_object")] + //[GlMinVersionEntryPoint("glGenVertexArrays",3,0)] + //[GlExtensionEntryPoint("glGenVertexArraysOES", "GL_OES_vertex_array_object")] + [GlEntryPoint("glGlGenVertexArrays")] public GlGenVertexArrays GenVertexArrays { get; } - public int GenVertexArray() + public uint GenVertexArray() { - var rv = new int[1]; + var rv = new uint[1]; GenVertexArrays(1, rv); return rv[0]; } - } + }*/ } } diff --git a/src/Avalonia.DesignerSupport/Remote/HtmlTransport/webapp/package-lock.json b/src/Avalonia.DesignerSupport/Remote/HtmlTransport/webapp/package-lock.json index 87536c670f5..478b34226f9 100644 --- a/src/Avalonia.DesignerSupport/Remote/HtmlTransport/webapp/package-lock.json +++ b/src/Avalonia.DesignerSupport/Remote/HtmlTransport/webapp/package-lock.json @@ -3543,7 +3543,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -3564,12 +3565,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3584,17 +3587,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -3711,7 +3717,8 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -3723,6 +3730,7 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3737,6 +3745,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -3744,12 +3753,14 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, + "optional": true, "requires": { "safe-buffer": "^5.1.2", "yallist": "^3.0.0" @@ -3768,6 +3779,7 @@ "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -3848,7 +3860,8 @@ "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -3860,6 +3873,7 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { "wrappy": "1" } @@ -3945,7 +3959,8 @@ "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -3981,6 +3996,7 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -4000,6 +4016,7 @@ "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { "ansi-regex": "^2.0.0" } @@ -4043,12 +4060,14 @@ "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, diff --git a/src/Avalonia.Native/Avalonia.Native.csproj b/src/Avalonia.Native/Avalonia.Native.csproj index 1a2bdeef1eb..9f56bc7fccd 100644 --- a/src/Avalonia.Native/Avalonia.Native.csproj +++ b/src/Avalonia.Native/Avalonia.Native.csproj @@ -2,7 +2,7 @@ false - true + true netstandard2.0 /usr/bin/castxml /usr/local/bin/castxml diff --git a/src/Avalonia.Native/GlPlatformFeature.cs b/src/Avalonia.Native/GlPlatformFeature.cs index e321db6eda7..6e7c873b05e 100644 --- a/src/Avalonia.Native/GlPlatformFeature.cs +++ b/src/Avalonia.Native/GlPlatformFeature.cs @@ -17,13 +17,13 @@ public GlPlatformFeature(IAvnGlDisplay display) var deferred = display.CreateContext(immediate); - int major, minor; + uint major, minor; GlInterface glInterface; using (immediate.MakeCurrent()) { - var basic = new GlBasicInfoInterface(display.GetProcAddress); - basic.GetIntegerv(GlConsts.GL_MAJOR_VERSION, out major); - basic.GetIntegerv(GlConsts.GL_MINOR_VERSION, out minor); + var basic = new GlBasicInfoInterface(display.GetProcAddress); + basic.bGetIntegerv(GlConsts.GL_MAJOR_VERSION, out major); + basic.bGetIntegerv(GlConsts.GL_MINOR_VERSION, out minor); _version = new GlVersion(GlProfileType.OpenGL, major, minor); glInterface = new GlInterface(_version, (name) => { diff --git a/src/Avalonia.OpenGL/GlBasicInfoInterface.cs b/src/Avalonia.OpenGL/GlBasicInfoInterface.cs index a3383ac5ae3..99a075ff69c 100644 --- a/src/Avalonia.OpenGL/GlBasicInfoInterface.cs +++ b/src/Avalonia.OpenGL/GlBasicInfoInterface.cs @@ -16,9 +16,9 @@ public GlBasicInfoInterface(Func nativeGetProcAddress) : bas { } - public delegate void GlGetIntegerv(int name, out int rv); - public delegate IntPtr GlGetString(int v); - public delegate IntPtr GlGetStringi(int v, int v1); + public delegate void bGlGetIntegerv(uint name, out uint rv); + public delegate IntPtr bGlGetString(uint v); + public delegate IntPtr bGlGetStringi(uint v, uint v1); } public class GlBasicInfoInterface : GlInterfaceBase @@ -32,26 +32,25 @@ public GlBasicInfoInterface(Func nativeGetProcAddress, TCont } [GlEntryPoint("glGetIntegerv")] - public GlBasicInfoInterface.GlGetIntegerv GetIntegerv { get; } - + public GlBasicInfoInterface.bGlGetIntegerv bGetIntegerv { get; } [GlEntryPoint("glGetString")] - public GlBasicInfoInterface.GlGetString GetStringNative { get; } + public GlBasicInfoInterface.bGlGetString bGetStringNative { get; } [GlEntryPoint("glGetStringi")] - public GlBasicInfoInterface.GlGetStringi GetStringiNative { get; } + public GlBasicInfoInterface.bGlGetStringi bGetStringiNative { get; } - public string GetString(int v) + public string bGetString(uint v) { - var ptr = GetStringNative(v); + var ptr = bGetStringNative(v); if (ptr != IntPtr.Zero) return Marshal.PtrToStringAnsi(ptr); return null; } - public string GetString(int v, int index) + public string bGetString(uint v, uint index) { - var ptr = GetStringiNative(v, index); + var ptr = bGetStringiNative(v, index); if (ptr != IntPtr.Zero) return Marshal.PtrToStringAnsi(ptr); return null; @@ -59,13 +58,13 @@ public string GetString(int v, int index) public List GetExtensions() { - var sp = GetString(GlConsts.GL_EXTENSIONS); + var sp = bGetString(GlConsts.GL_EXTENSIONS); if (sp != null) return sp.Split(' ').ToList(); - GetIntegerv(GlConsts.GL_NUM_EXTENSIONS, out int count); - var rv = new List(count); - for (var c = 0; c < count; c++) - rv.Add(GetString(GlConsts.GL_EXTENSIONS, c)); + bGetIntegerv(GlConsts.GL_NUM_EXTENSIONS, out uint count); + var rv = new List((int)count); + for (uint c = 0; c < count; c++) + rv.Add(bGetString(GlConsts.GL_EXTENSIONS, c)); return rv; } } diff --git a/src/Avalonia.OpenGL/GlConsts.cs b/src/Avalonia.OpenGL/GlConsts.cs index 2a6aa0d14d9..03503232ea6 100644 --- a/src/Avalonia.OpenGL/GlConsts.cs +++ b/src/Avalonia.OpenGL/GlConsts.cs @@ -1,9 +1,708 @@ -// ReSharper disable UnusedMember.Global -// ReSharper disable IdentifierTypo +using System; + namespace Avalonia.OpenGL { public static class GlConsts { + public const int GL_CURRENT_BIT = 0x1; + public const int GL_POINT_BIT = 0x2; + public const int GL_LINE_BIT = 0x4; + public const int GL_POLYGON_BIT = 0x8; + public const int GL_POLYGON_STIPPLE_BIT = 0x10; + public const int GL_PIXEL_MODE_BIT = 0x20; + public const int GL_LIGHTING_BIT = 0x40; + public const int GL_FOG_BIT = 0x80; + public const int GL_DEPTH_BUFFER_BIT = 0x100; + public const int GL_ACCUM_BUFFER_BIT = 0x200; + public const int GL_STENCIL_BUFFER_BIT = 0x400; + public const int GL_VIEWPORT_BIT = 0x800; + public const int GL_TRANSFORM_BIT = 0x1000; + public const int GL_ENABLE_BIT = 0x2000; + public const int GL_COLOR_BUFFER_BIT = 0x4000; + public const int GL_HINT_BIT = 0x8000; + public const int GL_EVAL_BIT = 0x10000; + public const int GL_LIST_BIT = 0x20000; + public const int GL_TEXTURE_BIT = 0x40000; + public const int GL_SCISSOR_BIT = 0x80000; + public const int GL_MULTISAMPLE_BIT = 0x20000000; + public const int GL_MULTISAMPLE_BIT_ARB = 0x20000000; + public const int GL_MULTISAMPLE_BIT_EXT = 0x20000000; + public const int GL_MULTISAMPLE_BIT_3DFX = 0x20000000; + public const int GL_ALL_ATTRIB_BITS = -1; + // GL_MAP_{COHERENT,PERSISTENT,READ,WRITE}_{BIT,BIT_EXT} also lie in this namespace + public const int GL_DYNAMIC_STORAGE_BIT = 0x100; + public const int GL_DYNAMIC_STORAGE_BIT_EXT = 0x100; + public const int GL_CLIENT_STORAGE_BIT = 0x200; + public const int GL_CLIENT_STORAGE_BIT_EXT = 0x200; + public const int GL_SPARSE_STORAGE_BIT_ARB = 0x400; + public const int GL_LGPU_SEPARATE_STORAGE_BIT_NVX = 0x800; + public const int GL_PER_GPU_STORAGE_BIT_NV = 0x800; + public const int GL_EXTERNAL_STORAGE_BIT_NVX = 0x2000; + // GL_{DEPTH,ACCUM,STENCIL,COLOR}_BUFFER_BIT also lie in this namespace + public const int GL_COVERAGE_BUFFER_BIT_NV = 0x8000; + public const int GL_CLIENT_PIXEL_STORE_BIT = 0x1; + public const int GL_CLIENT_VERTEX_ARRAY_BIT = 0x2; + public const int GL_CLIENT_ALL_ATTRIB_BITS = -1; + // Should be shared with WGL/GLX, but aren't since the FORWARD_COMPATIBLE and DEBUG values are swapped vs. WGL/GLX. + public const int GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT = 0x1; + public const int GL_CONTEXT_FLAG_DEBUG_BIT = 0x2; + public const int GL_CONTEXT_FLAG_DEBUG_BIT_KHR = 0x2; + public const int GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT = 0x4; + public const int GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB = 0x4; + public const int GL_CONTEXT_FLAG_NO_ERROR_BIT = 0x8; + public const int GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR = 0x8; + public const int GL_CONTEXT_FLAG_PROTECTED_CONTENT_BIT_EXT = 0x10; + public const int GL_CONTEXT_CORE_PROFILE_BIT = 0x1; + public const int GL_CONTEXT_COMPATIBILITY_PROFILE_BIT = 0x2; + public const int GL_MAP_READ_BIT = 0x1; + public const int GL_MAP_READ_BIT_EXT = 0x1; + public const int GL_MAP_WRITE_BIT = 0x2; + public const int GL_MAP_WRITE_BIT_EXT = 0x2; + public const int GL_MAP_INVALIDATE_RANGE_BIT = 0x4; + public const int GL_MAP_INVALIDATE_RANGE_BIT_EXT = 0x4; + public const int GL_MAP_INVALIDATE_BUFFER_BIT = 0x8; + public const int GL_MAP_INVALIDATE_BUFFER_BIT_EXT = 0x8; + public const int GL_MAP_FLUSH_EXPLICIT_BIT = 0x10; + public const int GL_MAP_FLUSH_EXPLICIT_BIT_EXT = 0x10; + public const int GL_MAP_UNSYNCHRONIZED_BIT = 0x20; + public const int GL_MAP_UNSYNCHRONIZED_BIT_EXT = 0x20; + public const int GL_MAP_PERSISTENT_BIT = 0x40; + public const int GL_MAP_PERSISTENT_BIT_EXT = 0x40; + public const int GL_MAP_COHERENT_BIT = 0x80; + public const int GL_MAP_COHERENT_BIT_EXT = 0x80; + public const int GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT = 0x1; + public const int GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT = 0x1; + public const int GL_ELEMENT_ARRAY_BARRIER_BIT = 0x2; + public const int GL_ELEMENT_ARRAY_BARRIER_BIT_EXT = 0x2; + public const int GL_UNIFORM_BARRIER_BIT = 0x4; + public const int GL_UNIFORM_BARRIER_BIT_EXT = 0x4; + public const int GL_TEXTURE_FETCH_BARRIER_BIT = 0x8; + public const int GL_TEXTURE_FETCH_BARRIER_BIT_EXT = 0x8; + public const int GL_SHADER_GLOBAL_ACCESS_BARRIER_BIT_NV = 0x10; + public const int GL_SHADER_IMAGE_ACCESS_BARRIER_BIT = 0x20; + public const int GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT = 0x20; + public const int GL_COMMAND_BARRIER_BIT = 0x40; + public const int GL_COMMAND_BARRIER_BIT_EXT = 0x40; + public const int GL_PIXEL_BUFFER_BARRIER_BIT = 0x80; + public const int GL_PIXEL_BUFFER_BARRIER_BIT_EXT = 0x80; + public const int GL_TEXTURE_UPDATE_BARRIER_BIT = 0x100; + public const int GL_TEXTURE_UPDATE_BARRIER_BIT_EXT = 0x100; + public const int GL_BUFFER_UPDATE_BARRIER_BIT = 0x200; + public const int GL_BUFFER_UPDATE_BARRIER_BIT_EXT = 0x200; + public const int GL_FRAMEBUFFER_BARRIER_BIT = 0x400; + public const int GL_FRAMEBUFFER_BARRIER_BIT_EXT = 0x400; + public const int GL_TRANSFORM_FEEDBACK_BARRIER_BIT = 0x800; + public const int GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT = 0x800; + public const int GL_ATOMIC_COUNTER_BARRIER_BIT = 0x1000; + public const int GL_ATOMIC_COUNTER_BARRIER_BIT_EXT = 0x1000; + public const int GL_SHADER_STORAGE_BARRIER_BIT = 0x2000; + public const int GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT = 0x4000; + public const int GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT_EXT = 0x4000; + public const int GL_QUERY_BUFFER_BARRIER_BIT = 0x8000; + public const int GL_ALL_BARRIER_BITS = -1; + public const int GL_ALL_BARRIER_BITS_EXT = -1; + public const int GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD = 0x1; + public const int GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD = 0x2; + public const int GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD = 0x4; + public const int GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD = 0x8; + public const int GL_QUERY_ALL_EVENT_BITS_AMD = -1; + public const int GL_SYNC_FLUSH_COMMANDS_BIT = 0x1; + public const int GL_SYNC_FLUSH_COMMANDS_BIT_APPLE = 0x1; + public const int GL_VERTEX_SHADER_BIT = 0x1; + public const int GL_VERTEX_SHADER_BIT_EXT = 0x1; + public const int GL_FRAGMENT_SHADER_BIT = 0x2; + public const int GL_FRAGMENT_SHADER_BIT_EXT = 0x2; + public const int GL_GEOMETRY_SHADER_BIT = 0x4; + public const int GL_GEOMETRY_SHADER_BIT_EXT = 0x4; + public const int GL_GEOMETRY_SHADER_BIT_OES = 0x4; + public const int GL_TESS_CONTROL_SHADER_BIT = 0x8; + public const int GL_TESS_CONTROL_SHADER_BIT_EXT = 0x8; + public const int GL_TESS_CONTROL_SHADER_BIT_OES = 0x8; + public const int GL_TESS_EVALUATION_SHADER_BIT = 0x10; + public const int GL_TESS_EVALUATION_SHADER_BIT_EXT = 0x10; + public const int GL_TESS_EVALUATION_SHADER_BIT_OES = 0x10; + public const int GL_COMPUTE_SHADER_BIT = 0x20; + public const int GL_MESH_SHADER_BIT_NV = 0x40; + public const int GL_TASK_SHADER_BIT_NV = 0x80; + public const int GL_ALL_SHADER_BITS = -1; + public const int GL_ALL_SHADER_BITS_EXT = -1; + public const int GL_SUBGROUP_FEATURE_BASIC_BIT_KHR = 0x1; + public const int GL_SUBGROUP_FEATURE_VOTE_BIT_KHR = 0x2; + public const int GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR = 0x4; + public const int GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR = 0x8; + public const int GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR = 0x10; + public const int GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR = 0x20; + public const int GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR = 0x40; + public const int GL_SUBGROUP_FEATURE_QUAD_BIT_KHR = 0x80; + public const int GL_SUBGROUP_FEATURE_PARTITIONED_BIT_NV = 0x100; + public const int GL_TEXTURE_STORAGE_SPARSE_BIT_AMD = 0x1; + public const int GL_RED_BIT_ATI = 0x1; + public const int GL_GREEN_BIT_ATI = 0x2; + public const int GL_BLUE_BIT_ATI = 0x4; + public const int GL_2X_BIT_ATI = 0x1; + public const int GL_4X_BIT_ATI = 0x2; + public const int GL_8X_BIT_ATI = 0x4; + public const int GL_HALF_BIT_ATI = 0x8; + public const int GL_QUARTER_BIT_ATI = 0x10; + public const int GL_EIGHTH_BIT_ATI = 0x20; + public const int GL_SATURATE_BIT_ATI = 0x40; + public const int GL_COMP_BIT_ATI = 0x2; + public const int GL_NEGATE_BIT_ATI = 0x4; + public const int GL_BIAS_BIT_ATI = 0x8; + public const int GL_TRACE_OPERATIONS_BIT_MESA = 0x1; + public const int GL_TRACE_PRIMITIVES_BIT_MESA = 0x2; + public const int GL_TRACE_ARRAYS_BIT_MESA = 0x4; + public const int GL_TRACE_TEXTURES_BIT_MESA = 0x8; + public const int GL_TRACE_PIXELS_BIT_MESA = 0x10; + public const int GL_TRACE_ERRORS_BIT_MESA = 0x20; + public const int GL_TRACE_ALL_BITS_MESA = 0xFFFF; + public const int GL_BOLD_BIT_NV = 0x1; + public const int GL_ITALIC_BIT_NV = 0x2; + public const int GL_GLYPH_WIDTH_BIT_NV = 0x1; + public const int GL_GLYPH_HEIGHT_BIT_NV = 0x2; + public const int GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV = 0x4; + public const int GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV = 0x8; + public const int GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV = 0x10; + public const int GL_GLYPH_VERTICAL_BEARING_X_BIT_NV = 0x20; + public const int GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV = 0x40; + public const int GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV = 0x80; + public const int GL_GLYPH_HAS_KERNING_BIT_NV = 0x100; + public const int GL_FONT_X_MIN_BOUNDS_BIT_NV = 0x10000; + public const int GL_FONT_Y_MIN_BOUNDS_BIT_NV = 0x20000; + public const int GL_FONT_X_MAX_BOUNDS_BIT_NV = 0x40000; + public const int GL_FONT_Y_MAX_BOUNDS_BIT_NV = 0x80000; + public const int GL_FONT_UNITS_PER_EM_BIT_NV = 0x100000; + public const int GL_FONT_ASCENDER_BIT_NV = 0x200000; + public const int GL_FONT_DESCENDER_BIT_NV = 0x400000; + public const int GL_FONT_HEIGHT_BIT_NV = 0x800000; + public const int GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV = 0x1000000; + public const int GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV = 0x2000000; + public const int GL_FONT_UNDERLINE_POSITION_BIT_NV = 0x4000000; + public const int GL_FONT_UNDERLINE_THICKNESS_BIT_NV = 0x8000000; + public const int GL_FONT_HAS_KERNING_BIT_NV = 0x10000000; + public const int GL_FONT_NUM_GLYPH_INDICES_BIT_NV = 0x20000000; + public const int GL_PERFQUERY_SINGLE_CONTEXT_INTEL = 0x0; + public const int GL_PERFQUERY_GLOBAL_CONTEXT_INTEL = 0x1; + public const int GL_VERTEX23_BIT_PGI = 0x4; + public const int GL_VERTEX4_BIT_PGI = 0x8; + public const int GL_COLOR3_BIT_PGI = 0x10000; + public const int GL_COLOR4_BIT_PGI = 0x20000; + public const int GL_EDGEFLAG_BIT_PGI = 0x40000; + public const int GL_INDEX_BIT_PGI = 0x80000; + public const int GL_MAT_AMBIENT_BIT_PGI = 0x100000; + public const int GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI = 0x200000; + public const int GL_MAT_DIFFUSE_BIT_PGI = 0x400000; + public const int GL_MAT_EMISSION_BIT_PGI = 0x800000; + public const int GL_MAT_COLOR_INDEXES_BIT_PGI = 0x1000000; + public const int GL_MAT_SHININESS_BIT_PGI = 0x2000000; + public const int GL_MAT_SPECULAR_BIT_PGI = 0x4000000; + public const int GL_NORMAL_BIT_PGI = 0x8000000; + public const int GL_TEXCOORD1_BIT_PGI = 0x10000000; + public const int GL_TEXCOORD2_BIT_PGI = 0x20000000; + public const int GL_TEXCOORD3_BIT_PGI = 0x40000000; + public const uint GL_TEXCOORD4_BIT_PGI = 0x80000000; + public const int GL_COLOR_BUFFER_BIT0_QCOM = 0x1; + public const int GL_COLOR_BUFFER_BIT1_QCOM = 0x2; + public const int GL_COLOR_BUFFER_BIT2_QCOM = 0x4; + public const int GL_COLOR_BUFFER_BIT3_QCOM = 0x8; + public const int GL_COLOR_BUFFER_BIT4_QCOM = 0x10; + public const int GL_COLOR_BUFFER_BIT5_QCOM = 0x20; + public const int GL_COLOR_BUFFER_BIT6_QCOM = 0x40; + public const int GL_COLOR_BUFFER_BIT7_QCOM = 0x80; + public const int GL_DEPTH_BUFFER_BIT0_QCOM = 0x100; + public const int GL_DEPTH_BUFFER_BIT1_QCOM = 0x200; + public const int GL_DEPTH_BUFFER_BIT2_QCOM = 0x400; + public const int GL_DEPTH_BUFFER_BIT3_QCOM = 0x800; + public const int GL_DEPTH_BUFFER_BIT4_QCOM = 0x1000; + public const int GL_DEPTH_BUFFER_BIT5_QCOM = 0x2000; + public const int GL_DEPTH_BUFFER_BIT6_QCOM = 0x4000; + public const int GL_DEPTH_BUFFER_BIT7_QCOM = 0x8000; + public const int GL_STENCIL_BUFFER_BIT0_QCOM = 0x10000; + public const int GL_STENCIL_BUFFER_BIT1_QCOM = 0x20000; + public const int GL_STENCIL_BUFFER_BIT2_QCOM = 0x40000; + public const int GL_STENCIL_BUFFER_BIT3_QCOM = 0x80000; + public const int GL_STENCIL_BUFFER_BIT4_QCOM = 0x100000; + public const int GL_STENCIL_BUFFER_BIT5_QCOM = 0x200000; + public const int GL_STENCIL_BUFFER_BIT6_QCOM = 0x400000; + public const int GL_STENCIL_BUFFER_BIT7_QCOM = 0x800000; + public const int GL_MULTISAMPLE_BUFFER_BIT0_QCOM = 0x1000000; + public const int GL_MULTISAMPLE_BUFFER_BIT1_QCOM = 0x2000000; + public const int GL_MULTISAMPLE_BUFFER_BIT2_QCOM = 0x4000000; + public const int GL_MULTISAMPLE_BUFFER_BIT3_QCOM = 0x8000000; + public const int GL_MULTISAMPLE_BUFFER_BIT4_QCOM = 0x10000000; + public const int GL_MULTISAMPLE_BUFFER_BIT5_QCOM = 0x20000000; + public const int GL_MULTISAMPLE_BUFFER_BIT6_QCOM = 0x40000000; + public const uint GL_MULTISAMPLE_BUFFER_BIT7_QCOM = 0x80000000; + public const int GL_FOVEATION_ENABLE_BIT_QCOM = 0x1; + public const int GL_FOVEATION_SCALED_BIN_METHOD_BIT_QCOM = 0x2; + public const int GL_FOVEATION_SUBSAMPLED_LAYOUT_METHOD_BIT_QCOM = 0x4; + public const int GL_TEXTURE_DEFORMATION_BIT_SGIX = 0x1; + public const int GL_GEOMETRY_DEFORMATION_BIT_SGIX = 0x2; + // VENDOR: NV + // For NV_command_list. + public const int GL_TERMINATE_SEQUENCE_COMMAND_NV = 0x0; + public const int GL_NOP_COMMAND_NV = 0x1; + public const int GL_DRAW_ELEMENTS_COMMAND_NV = 0x2; + public const int GL_DRAW_ARRAYS_COMMAND_NV = 0x3; + public const int GL_DRAW_ELEMENTS_STRIP_COMMAND_NV = 0x4; + public const int GL_DRAW_ARRAYS_STRIP_COMMAND_NV = 0x5; + public const int GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV = 0x6; + public const int GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV = 0x7; + public const int GL_ELEMENT_ADDRESS_COMMAND_NV = 0x8; + public const int GL_ATTRIBUTE_ADDRESS_COMMAND_NV = 0x9; + public const int GL_UNIFORM_ADDRESS_COMMAND_NV = 0xA; + public const int GL_BLEND_COLOR_COMMAND_NV = 0xB; + public const int GL_STENCIL_REF_COMMAND_NV = 0xC; + public const int GL_LINE_WIDTH_COMMAND_NV = 0xD; + public const int GL_POLYGON_OFFSET_COMMAND_NV = 0xE; + public const int GL_ALPHA_REF_COMMAND_NV = 0xF; + public const int GL_VIEWPORT_COMMAND_NV = 0x10; + public const int GL_SCISSOR_COMMAND_NV = 0x11; + public const int GL_FRONT_FACE_COMMAND_NV = 0x12; + // VENDOR: INTEL + // Texture memory layouts for INTEL_map_texture + public const int GL_LAYOUT_DEFAULT_INTEL = 0x0; + public const int GL_LAYOUT_LINEAR_INTEL = 0x1; + public const int GL_LAYOUT_LINEAR_CPU_CACHED_INTEL = 0x2; + // VENDOR: NV + public const int GL_CLOSE_PATH_NV = 0x0; + public const int GL_MOVE_TO_NV = 0x2; + public const int GL_RELATIVE_MOVE_TO_NV = 0x3; + public const int GL_LINE_TO_NV = 0x4; + public const int GL_RELATIVE_LINE_TO_NV = 0x5; + public const int GL_HORIZONTAL_LINE_TO_NV = 0x6; + public const int GL_RELATIVE_HORIZONTAL_LINE_TO_NV = 0x7; + public const int GL_VERTICAL_LINE_TO_NV = 0x8; + public const int GL_RELATIVE_VERTICAL_LINE_TO_NV = 0x9; + public const int GL_QUADRATIC_CURVE_TO_NV = 0xA; + public const int GL_RELATIVE_QUADRATIC_CURVE_TO_NV = 0xB; + public const int GL_CUBIC_CURVE_TO_NV = 0xC; + public const int GL_RELATIVE_CUBIC_CURVE_TO_NV = 0xD; + public const int GL_SMOOTH_QUADRATIC_CURVE_TO_NV = 0xE; + public const int GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV = 0xF; + public const int GL_SMOOTH_CUBIC_CURVE_TO_NV = 0x10; + public const int GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV = 0x11; + public const int GL_SMALL_CCW_ARC_TO_NV = 0x12; + public const int GL_RELATIVE_SMALL_CCW_ARC_TO_NV = 0x13; + public const int GL_SMALL_CW_ARC_TO_NV = 0x14; + public const int GL_RELATIVE_SMALL_CW_ARC_TO_NV = 0x15; + public const int GL_LARGE_CCW_ARC_TO_NV = 0x16; + public const int GL_RELATIVE_LARGE_CCW_ARC_TO_NV = 0x17; + public const int GL_LARGE_CW_ARC_TO_NV = 0x18; + public const int GL_RELATIVE_LARGE_CW_ARC_TO_NV = 0x19; + public const int GL_CONIC_CURVE_TO_NV = 0x1A; + public const int GL_RELATIVE_CONIC_CURVE_TO_NV = 0x1B; + public const int GL_SHARED_EDGE_NV = 0xC0; + public const int GL_ROUNDED_RECT_NV = 0xE8; + public const int GL_RELATIVE_ROUNDED_RECT_NV = 0xE9; + public const int GL_ROUNDED_RECT2_NV = 0xEA; + public const int GL_RELATIVE_ROUNDED_RECT2_NV = 0xEB; + public const int GL_ROUNDED_RECT4_NV = 0xEC; + public const int GL_RELATIVE_ROUNDED_RECT4_NV = 0xED; + public const int GL_ROUNDED_RECT8_NV = 0xEE; + public const int GL_RELATIVE_ROUNDED_RECT8_NV = 0xEF; + public const int GL_RESTART_PATH_NV = 0xF0; + public const int GL_DUP_FIRST_CUBIC_CURVE_TO_NV = 0xF2; + public const int GL_DUP_LAST_CUBIC_CURVE_TO_NV = 0xF4; + public const int GL_RECT_NV = 0xF6; + public const int GL_RELATIVE_RECT_NV = 0xF7; + public const int GL_CIRCULAR_CCW_ARC_TO_NV = 0xF8; + public const int GL_CIRCULAR_CW_ARC_TO_NV = 0xFA; + public const int GL_CIRCULAR_TANGENT_ARC_TO_NV = 0xFC; + public const int GL_ARC_TO_NV = 0xFE; + public const int GL_RELATIVE_ARC_TO_NV = 0xFF; + // VENDOR: NV + // For NV_transform_feedback. No clue why small negative values are used + public const uint GL_NEXT_BUFFER_NV = 0xFFFFFFFE; + public const uint GL_SKIP_COMPONENTS4_NV = 0xFFFFFFFD; + public const uint GL_SKIP_COMPONENTS3_NV = 0xFFFFFFFC; + public const uint GL_SKIP_COMPONENTS2_NV = 0xFFFFFFFB; + public const uint GL_SKIP_COMPONENTS1_NV = 0xFFFFFFFA; + // VENDOR: SUN + public const int GL_RESTART_SUN = 0x1; + public const int GL_REPLACE_MIDDLE_SUN = 0x2; + public const int GL_REPLACE_OLDEST_SUN = 0x3; + // VENDOR: ARB + // Tokens whose numeric value is intrinsically meaningful + public const int GL_FALSE = 0x0; + public const int GL_NO_ERROR = 0x0; + public const int GL_ZERO = 0x0; + public const int GL_NONE = 0x0; + public const int GL_NONE_OES = 0x0; + public const int GL_TRUE = 0x1; + public const int GL_ONE = 0x1; + public const int GL_INVALID_INDEX = -1; + public const int GL_ALL_PIXELS_AMD = -1; + public const int GL_TIMEOUT_IGNORED = -1; + public const int GL_TIMEOUT_IGNORED_APPLE = -1; + public const int GL_VERSION_ES_CL_1_0 = 0x1; + public const int GL_VERSION_ES_CM_1_1 = 0x1; + public const int GL_VERSION_ES_CL_1_1 = 0x1; + public const int GL_UUID_SIZE_EXT = 0x10; + public const int GL_LUID_SIZE_EXT = 0x8; + // VENDOR: ARB + // Mostly OpenGL 1.0/1.1 enum assignments. Unused ranges should generally remain unused. + public const int GL_POINTS = 0x0; + public const int GL_LINES = 0x1; + public const int GL_LINE_LOOP = 0x2; + public const int GL_LINE_STRIP = 0x3; + public const int GL_TRIANGLES = 0x4; + public const int GL_TRIANGLE_STRIP = 0x5; + public const int GL_TRIANGLE_FAN = 0x6; + public const int GL_QUADS = 0x7; + public const int GL_QUADS_EXT = 0x7; + public const int GL_QUADS_OES = 0x7; + public const int GL_QUAD_STRIP = 0x8; + public const int GL_POLYGON = 0x9; + public const int GL_LINES_ADJACENCY = 0xA; + public const int GL_LINES_ADJACENCY_ARB = 0xA; + public const int GL_LINES_ADJACENCY_EXT = 0xA; + public const int GL_LINES_ADJACENCY_OES = 0xA; + public const int GL_LINE_STRIP_ADJACENCY = 0xB; + public const int GL_LINE_STRIP_ADJACENCY_ARB = 0xB; + public const int GL_LINE_STRIP_ADJACENCY_EXT = 0xB; + public const int GL_LINE_STRIP_ADJACENCY_OES = 0xB; + public const int GL_TRIANGLES_ADJACENCY = 0xC; + public const int GL_TRIANGLES_ADJACENCY_ARB = 0xC; + public const int GL_TRIANGLES_ADJACENCY_EXT = 0xC; + public const int GL_TRIANGLES_ADJACENCY_OES = 0xC; + public const int GL_TRIANGLE_STRIP_ADJACENCY = 0xD; + public const int GL_TRIANGLE_STRIP_ADJACENCY_ARB = 0xD; + public const int GL_TRIANGLE_STRIP_ADJACENCY_EXT = 0xD; + public const int GL_TRIANGLE_STRIP_ADJACENCY_OES = 0xD; + public const int GL_PATCHES = 0xE; + public const int GL_PATCHES_EXT = 0xE; + public const int GL_PATCHES_OES = 0xE; + public const int GL_ACCUM = 0x100; + public const int GL_LOAD = 0x101; + public const int GL_RETURN = 0x102; + public const int GL_MULT = 0x103; + public const int GL_ADD = 0x104; + public const int GL_NEVER = 0x200; + public const int GL_LESS = 0x201; + public const int GL_EQUAL = 0x202; + public const int GL_LEQUAL = 0x203; + public const int GL_GREATER = 0x204; + public const int GL_NOTEQUAL = 0x205; + public const int GL_GEQUAL = 0x206; + public const int GL_ALWAYS = 0x207; + public const int GL_SRC_COLOR = 0x300; + public const int GL_ONE_MINUS_SRC_COLOR = 0x301; + public const int GL_SRC_ALPHA = 0x302; + public const int GL_ONE_MINUS_SRC_ALPHA = 0x303; + public const int GL_DST_ALPHA = 0x304; + public const int GL_ONE_MINUS_DST_ALPHA = 0x305; + public const int GL_DST_COLOR = 0x306; + public const int GL_ONE_MINUS_DST_COLOR = 0x307; + public const int GL_SRC_ALPHA_SATURATE = 0x308; + public const int GL_SRC_ALPHA_SATURATE_EXT = 0x308; + public const int GL_FRONT_LEFT = 0x400; + public const int GL_FRONT_RIGHT = 0x401; + public const int GL_BACK_LEFT = 0x402; + public const int GL_BACK_RIGHT = 0x403; + public const int GL_FRONT = 0x404; + public const int GL_BACK = 0x405; + public const int GL_LEFT = 0x406; + public const int GL_RIGHT = 0x407; + public const int GL_FRONT_AND_BACK = 0x408; + public const int GL_AUX0 = 0x409; + public const int GL_AUX1 = 0x40A; + public const int GL_AUX2 = 0x40B; + public const int GL_AUX3 = 0x40C; + public const int GL_INVALID_ENUM = 0x500; + public const int GL_INVALID_VALUE = 0x501; + public const int GL_INVALID_OPERATION = 0x502; + public const int GL_STACK_OVERFLOW = 0x503; + public const int GL_STACK_OVERFLOW_KHR = 0x503; + public const int GL_STACK_UNDERFLOW = 0x504; + public const int GL_STACK_UNDERFLOW_KHR = 0x504; + public const int GL_OUT_OF_MEMORY = 0x505; + public const int GL_INVALID_FRAMEBUFFER_OPERATION = 0x506; + public const int GL_INVALID_FRAMEBUFFER_OPERATION_EXT = 0x506; + public const int GL_INVALID_FRAMEBUFFER_OPERATION_OES = 0x506; + public const int GL_CONTEXT_LOST = 0x507; + public const int GL_CONTEXT_LOST_KHR = 0x507; + public const int GL_2D = 0x600; + public const int GL_3D = 0x601; + public const int GL_3D_COLOR = 0x602; + public const int GL_3D_COLOR_TEXTURE = 0x603; + public const int GL_4D_COLOR_TEXTURE = 0x604; + public const int GL_PASS_THROUGH_TOKEN = 0x700; + public const int GL_POINT_TOKEN = 0x701; + public const int GL_LINE_TOKEN = 0x702; + public const int GL_POLYGON_TOKEN = 0x703; + public const int GL_BITMAP_TOKEN = 0x704; + public const int GL_DRAW_PIXEL_TOKEN = 0x705; + public const int GL_COPY_PIXEL_TOKEN = 0x706; + public const int GL_LINE_RESET_TOKEN = 0x707; + public const int GL_EXP = 0x800; + public const int GL_EXP2 = 0x801; + public const int GL_CW = 0x900; + public const int GL_CCW = 0x901; + public const int GL_COEFF = 0xA00; + public const int GL_ORDER = 0xA01; + public const int GL_DOMAIN = 0xA02; + public const int GL_CURRENT_COLOR = 0xB00; + public const int GL_CURRENT_INDEX = 0xB01; + public const int GL_CURRENT_NORMAL = 0xB02; + public const int GL_CURRENT_TEXTURE_COORDS = 0xB03; + public const int GL_CURRENT_RASTER_COLOR = 0xB04; + public const int GL_CURRENT_RASTER_INDEX = 0xB05; + public const int GL_CURRENT_RASTER_TEXTURE_COORDS = 0xB06; + public const int GL_CURRENT_RASTER_POSITION = 0xB07; + public const int GL_CURRENT_RASTER_POSITION_VALID = 0xB08; + public const int GL_CURRENT_RASTER_DISTANCE = 0xB09; + public const int GL_POINT_SMOOTH = 0xB10; + public const int GL_POINT_SIZE = 0xB11; + public const int GL_POINT_SIZE_RANGE = 0xB12; + public const int GL_SMOOTH_POINT_SIZE_RANGE = 0xB12; + public const int GL_POINT_SIZE_GRANULARITY = 0xB13; + public const int GL_SMOOTH_POINT_SIZE_GRANULARITY = 0xB13; + public const int GL_LINE_SMOOTH = 0xB20; + public const int GL_LINE_WIDTH = 0xB21; + public const int GL_LINE_WIDTH_RANGE = 0xB22; + public const int GL_SMOOTH_LINE_WIDTH_RANGE = 0xB22; + public const int GL_LINE_WIDTH_GRANULARITY = 0xB23; + public const int GL_SMOOTH_LINE_WIDTH_GRANULARITY = 0xB23; + public const int GL_LINE_STIPPLE = 0xB24; + public const int GL_LINE_STIPPLE_PATTERN = 0xB25; + public const int GL_LINE_STIPPLE_REPEAT = 0xB26; + public const int GL_LIST_MODE = 0xB30; + public const int GL_MAX_LIST_NESTING = 0xB31; + public const int GL_LIST_BASE = 0xB32; + public const int GL_LIST_INDEX = 0xB33; + public const int GL_POLYGON_MODE = 0xB40; + public const int GL_POLYGON_MODE_NV = 0xB40; + public const int GL_POLYGON_SMOOTH = 0xB41; + public const int GL_POLYGON_STIPPLE = 0xB42; + public const int GL_EDGE_FLAG = 0xB43; + public const int GL_CULL_FACE = 0xB44; + public const int GL_CULL_FACE_MODE = 0xB45; + public const int GL_FRONT_FACE = 0xB46; + public const int GL_LIGHTING = 0xB50; + public const int GL_LIGHT_MODEL_LOCAL_VIEWER = 0xB51; + public const int GL_LIGHT_MODEL_TWO_SIDE = 0xB52; + public const int GL_LIGHT_MODEL_AMBIENT = 0xB53; + public const int GL_SHADE_MODEL = 0xB54; + public const int GL_COLOR_MATERIAL_FACE = 0xB55; + public const int GL_COLOR_MATERIAL_PARAMETER = 0xB56; + public const int GL_COLOR_MATERIAL = 0xB57; + public const int GL_FOG = 0xB60; + public const int GL_FOG_INDEX = 0xB61; + public const int GL_FOG_DENSITY = 0xB62; + public const int GL_FOG_START = 0xB63; + public const int GL_FOG_END = 0xB64; + public const int GL_FOG_MODE = 0xB65; + public const int GL_FOG_COLOR = 0xB66; + public const int GL_DEPTH_RANGE = 0xB70; + public const int GL_DEPTH_TEST = 0xB71; + public const int GL_DEPTH_WRITEMASK = 0xB72; + public const int GL_DEPTH_CLEAR_VALUE = 0xB73; + public const int GL_DEPTH_FUNC = 0xB74; + public const int GL_ACCUM_CLEAR_VALUE = 0xB80; + public const int GL_STENCIL_TEST = 0xB90; + public const int GL_STENCIL_CLEAR_VALUE = 0xB91; + public const int GL_STENCIL_FUNC = 0xB92; + public const int GL_STENCIL_VALUE_MASK = 0xB93; + public const int GL_STENCIL_FAIL = 0xB94; + public const int GL_STENCIL_PASS_DEPTH_FAIL = 0xB95; + public const int GL_STENCIL_PASS_DEPTH_PASS = 0xB96; + public const int GL_STENCIL_REF = 0xB97; + public const int GL_STENCIL_WRITEMASK = 0xB98; + public const int GL_MATRIX_MODE = 0xBA0; + public const int GL_NORMALIZE = 0xBA1; + public const int GL_VIEWPORT = 0xBA2; + public const int GL_MODELVIEW_STACK_DEPTH = 0xBA3; + public const int GL_MODELVIEW0_STACK_DEPTH_EXT = 0xBA3; + public const int GL_PATH_MODELVIEW_STACK_DEPTH_NV = 0xBA3; + public const int GL_PROJECTION_STACK_DEPTH = 0xBA4; + public const int GL_PATH_PROJECTION_STACK_DEPTH_NV = 0xBA4; + public const int GL_TEXTURE_STACK_DEPTH = 0xBA5; + public const int GL_MODELVIEW_MATRIX = 0xBA6; + public const int GL_MODELVIEW0_MATRIX_EXT = 0xBA6; + public const int GL_PATH_MODELVIEW_MATRIX_NV = 0xBA6; + public const int GL_PROJECTION_MATRIX = 0xBA7; + public const int GL_PATH_PROJECTION_MATRIX_NV = 0xBA7; + public const int GL_TEXTURE_MATRIX = 0xBA8; + public const int GL_ATTRIB_STACK_DEPTH = 0xBB0; + public const int GL_CLIENT_ATTRIB_STACK_DEPTH = 0xBB1; + public const int GL_ALPHA_TEST = 0xBC0; + public const int GL_ALPHA_TEST_QCOM = 0xBC0; + public const int GL_ALPHA_TEST_FUNC = 0xBC1; + public const int GL_ALPHA_TEST_FUNC_QCOM = 0xBC1; + public const int GL_ALPHA_TEST_REF = 0xBC2; + public const int GL_ALPHA_TEST_REF_QCOM = 0xBC2; + public const int GL_DITHER = 0xBD0; + public const int GL_BLEND_DST = 0xBE0; + public const int GL_BLEND_SRC = 0xBE1; + public const int GL_BLEND = 0xBE2; + public const int GL_LOGIC_OP_MODE = 0xBF0; + public const int GL_INDEX_LOGIC_OP = 0xBF1; + public const int GL_LOGIC_OP = 0xBF1; + public const int GL_COLOR_LOGIC_OP = 0xBF2; + public const int GL_AUX_BUFFERS = 0xC00; + public const int GL_DRAW_BUFFER = 0xC01; + public const int GL_DRAW_BUFFER_EXT = 0xC01; + public const int GL_READ_BUFFER = 0xC02; + public const int GL_READ_BUFFER_EXT = 0xC02; + public const int GL_READ_BUFFER_NV = 0xC02; + public const int GL_SCISSOR_BOX = 0xC10; + public const int GL_SCISSOR_TEST = 0xC11; + public const int GL_INDEX_CLEAR_VALUE = 0xC20; + public const int GL_INDEX_WRITEMASK = 0xC21; + public const int GL_COLOR_CLEAR_VALUE = 0xC22; + public const int GL_COLOR_WRITEMASK = 0xC23; + public const int GL_INDEX_MODE = 0xC30; + public const int GL_RGBA_MODE = 0xC31; + public const int GL_DOUBLEBUFFER = 0xC32; + public const int GL_STEREO = 0xC33; + public const int GL_RENDER_MODE = 0xC40; + public const int GL_PERSPECTIVE_CORRECTION_HINT = 0xC50; + public const int GL_POINT_SMOOTH_HINT = 0xC51; + public const int GL_LINE_SMOOTH_HINT = 0xC52; + public const int GL_POLYGON_SMOOTH_HINT = 0xC53; + public const int GL_FOG_HINT = 0xC54; + public const int GL_TEXTURE_GEN_S = 0xC60; + public const int GL_TEXTURE_GEN_T = 0xC61; + public const int GL_TEXTURE_GEN_R = 0xC62; + public const int GL_TEXTURE_GEN_Q = 0xC63; + public const int GL_PIXEL_MAP_I_TO_I = 0xC70; + public const int GL_PIXEL_MAP_S_TO_S = 0xC71; + public const int GL_PIXEL_MAP_I_TO_R = 0xC72; + public const int GL_PIXEL_MAP_I_TO_G = 0xC73; + public const int GL_PIXEL_MAP_I_TO_B = 0xC74; + public const int GL_PIXEL_MAP_I_TO_A = 0xC75; + public const int GL_PIXEL_MAP_R_TO_R = 0xC76; + public const int GL_PIXEL_MAP_G_TO_G = 0xC77; + public const int GL_PIXEL_MAP_B_TO_B = 0xC78; + public const int GL_PIXEL_MAP_A_TO_A = 0xC79; + public const int GL_PIXEL_MAP_I_TO_I_SIZE = 0xCB0; + public const int GL_PIXEL_MAP_S_TO_S_SIZE = 0xCB1; + public const int GL_PIXEL_MAP_I_TO_R_SIZE = 0xCB2; + public const int GL_PIXEL_MAP_I_TO_G_SIZE = 0xCB3; + public const int GL_PIXEL_MAP_I_TO_B_SIZE = 0xCB4; + public const int GL_PIXEL_MAP_I_TO_A_SIZE = 0xCB5; + public const int GL_PIXEL_MAP_R_TO_R_SIZE = 0xCB6; + public const int GL_PIXEL_MAP_G_TO_G_SIZE = 0xCB7; + public const int GL_PIXEL_MAP_B_TO_B_SIZE = 0xCB8; + public const int GL_PIXEL_MAP_A_TO_A_SIZE = 0xCB9; + public const int GL_UNPACK_SWAP_BYTES = 0xCF0; + public const int GL_UNPACK_LSB_FIRST = 0xCF1; + public const int GL_UNPACK_ROW_LENGTH = 0xCF2; + public const int GL_UNPACK_ROW_LENGTH_EXT = 0xCF2; + public const int GL_UNPACK_SKIP_ROWS = 0xCF3; + public const int GL_UNPACK_SKIP_ROWS_EXT = 0xCF3; + public const int GL_UNPACK_SKIP_PIXELS = 0xCF4; + public const int GL_UNPACK_SKIP_PIXELS_EXT = 0xCF4; + public const int GL_UNPACK_ALIGNMENT = 0xCF5; + public const int GL_PACK_SWAP_BYTES = 0xD00; + public const int GL_PACK_LSB_FIRST = 0xD01; + public const int GL_PACK_ROW_LENGTH = 0xD02; + public const int GL_PACK_SKIP_ROWS = 0xD03; + public const int GL_PACK_SKIP_PIXELS = 0xD04; + public const int GL_PACK_ALIGNMENT = 0xD05; + public const int GL_MAP_COLOR = 0xD10; + public const int GL_MAP_STENCIL = 0xD11; + public const int GL_INDEX_SHIFT = 0xD12; + public const int GL_INDEX_OFFSET = 0xD13; + public const int GL_RED_SCALE = 0xD14; + public const int GL_RED_BIAS = 0xD15; + public const int GL_ZOOM_X = 0xD16; + public const int GL_ZOOM_Y = 0xD17; + public const int GL_GREEN_SCALE = 0xD18; + public const int GL_GREEN_BIAS = 0xD19; + public const int GL_BLUE_SCALE = 0xD1A; + public const int GL_BLUE_BIAS = 0xD1B; + public const int GL_ALPHA_SCALE = 0xD1C; + public const int GL_ALPHA_BIAS = 0xD1D; + public const int GL_DEPTH_SCALE = 0xD1E; + public const int GL_DEPTH_BIAS = 0xD1F; + public const int GL_MAX_EVAL_ORDER = 0xD30; + public const int GL_MAX_LIGHTS = 0xD31; + public const int GL_MAX_CLIP_PLANES = 0xD32; + public const int GL_MAX_CLIP_PLANES_IMG = 0xD32; + public const int GL_MAX_CLIP_DISTANCES = 0xD32; + public const int GL_MAX_CLIP_DISTANCES_EXT = 0xD32; + public const int GL_MAX_CLIP_DISTANCES_APPLE = 0xD32; + public const int GL_MAX_TEXTURE_SIZE = 0xD33; + public const int GL_MAX_PIXEL_MAP_TABLE = 0xD34; + public const int GL_MAX_ATTRIB_STACK_DEPTH = 0xD35; + public const int GL_MAX_MODELVIEW_STACK_DEPTH = 0xD36; + public const int GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV = 0xD36; + public const int GL_MAX_NAME_STACK_DEPTH = 0xD37; + public const int GL_MAX_PROJECTION_STACK_DEPTH = 0xD38; + public const int GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV = 0xD38; + public const int GL_MAX_TEXTURE_STACK_DEPTH = 0xD39; + public const int GL_MAX_VIEWPORT_DIMS = 0xD3A; + public const int GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = 0xD3B; + public const int GL_SUBPIXEL_BITS = 0xD50; + public const int GL_INDEX_BITS = 0xD51; + public const int GL_RED_BITS = 0xD52; + public const int GL_GREEN_BITS = 0xD53; + public const int GL_BLUE_BITS = 0xD54; + public const int GL_ALPHA_BITS = 0xD55; + public const int GL_DEPTH_BITS = 0xD56; + public const int GL_STENCIL_BITS = 0xD57; + public const int GL_ACCUM_RED_BITS = 0xD58; + public const int GL_ACCUM_GREEN_BITS = 0xD59; + public const int GL_ACCUM_BLUE_BITS = 0xD5A; + public const int GL_ACCUM_ALPHA_BITS = 0xD5B; + public const int GL_NAME_STACK_DEPTH = 0xD70; + public const int GL_AUTO_NORMAL = 0xD80; + public const int GL_MAP1_COLOR_4 = 0xD90; + public const int GL_MAP1_INDEX = 0xD91; + public const int GL_MAP1_NORMAL = 0xD92; + public const int GL_MAP1_TEXTURE_COORD_1 = 0xD93; + public const int GL_MAP1_TEXTURE_COORD_2 = 0xD94; + public const int GL_MAP1_TEXTURE_COORD_3 = 0xD95; + public const int GL_MAP1_TEXTURE_COORD_4 = 0xD96; + public const int GL_MAP1_VERTEX_3 = 0xD97; + public const int GL_MAP1_VERTEX_4 = 0xD98; + public const int GL_MAP2_COLOR_4 = 0xDB0; + public const int GL_MAP2_INDEX = 0xDB1; + public const int GL_MAP2_NORMAL = 0xDB2; + public const int GL_MAP2_TEXTURE_COORD_1 = 0xDB3; + public const int GL_MAP2_TEXTURE_COORD_2 = 0xDB4; + public const int GL_MAP2_TEXTURE_COORD_3 = 0xDB5; + public const int GL_MAP2_TEXTURE_COORD_4 = 0xDB6; + public const int GL_MAP2_VERTEX_3 = 0xDB7; + public const int GL_MAP2_VERTEX_4 = 0xDB8; + public const int GL_MAP1_GRID_DOMAIN = 0xDD0; + public const int GL_MAP1_GRID_SEGMENTS = 0xDD1; + public const int GL_MAP2_GRID_DOMAIN = 0xDD2; + public const int GL_MAP2_GRID_SEGMENTS = 0xDD3; + public const int GL_TEXTURE_1D = 0xDE0; + public const int GL_TEXTURE_2D = 0xDE1; + public const int GL_FEEDBACK_BUFFER_POINTER = 0xDF0; + public const int GL_FEEDBACK_BUFFER_SIZE = 0xDF1; + public const int GL_FEEDBACK_BUFFER_TYPE = 0xDF2; + public const int GL_SELECTION_BUFFER_POINTER = 0xDF3; + public const int GL_SELECTION_BUFFER_SIZE = 0xDF4; + public const int GL_TEXTURE_WIDTH = 0x1000; + public const int GL_TEXTURE_HEIGHT = 0x1001; + public const int GL_TEXTURE_INTERNAL_FORMAT = 0x1003; + public const int GL_TEXTURE_COMPONENTS = 0x1003; + public const int GL_TEXTURE_BORDER_COLOR = 0x1004; + public const int GL_TEXTURE_BORDER_COLOR_EXT = 0x1004; + public const int GL_TEXTURE_BORDER_COLOR_NV = 0x1004; + public const int GL_TEXTURE_BORDER_COLOR_OES = 0x1004; + public const int GL_TEXTURE_BORDER = 0x1005; + public const int GL_TEXTURE_TARGET = 0x1006; + public const int GL_DONT_CARE = 0x1100; + public const int GL_FASTEST = 0x1101; + public const int GL_NICEST = 0x1102; + public const int GL_AMBIENT = 0x1200; + public const int GL_DIFFUSE = 0x1201; + public const int GL_SPECULAR = 0x1202; + public const int GL_POSITION = 0x1203; + public const int GL_SPOT_DIRECTION = 0x1204; + public const int GL_SPOT_EXPONENT = 0x1205; + public const int GL_SPOT_CUTOFF = 0x1206; + public const int GL_CONSTANT_ATTENUATION = 0x1207; + public const int GL_LINEAR_ATTENUATION = 0x1208; + public const int GL_QUADRATIC_ATTENUATION = 0x1209; + public const int GL_COMPILE = 0x1300; + public const int GL_COMPILE_AND_EXECUTE = 0x1301; public const int GL_BYTE = 0x1400; public const int GL_UNSIGNED_BYTE = 0x1401; public const int GL_SHORT = 0x1402; @@ -12,45 +711,129 @@ public static class GlConsts public const int GL_UNSIGNED_INT = 0x1405; public const int GL_FLOAT = 0x1406; public const int GL_2_BYTES = 0x1407; + public const int GL_2_BYTES_NV = 0x1407; public const int GL_3_BYTES = 0x1408; + public const int GL_3_BYTES_NV = 0x1408; public const int GL_4_BYTES = 0x1409; + public const int GL_4_BYTES_NV = 0x1409; public const int GL_DOUBLE = 0x140A; - public const int GL_POINTS = 0x0000; - public const int GL_LINES = 0x0001; - public const int GL_LINE_LOOP = 0x0002; - public const int GL_LINE_STRIP = 0x0003; - public const int GL_TRIANGLES = 0x0004; - public const int GL_TRIANGLE_STRIP = 0x0005; - public const int GL_TRIANGLE_FAN = 0x0006; - public const int GL_QUADS = 0x0007; - public const int GL_QUAD_STRIP = 0x0008; - public const int GL_POLYGON = 0x0009; - public const int GL_VERTEX_ARRAY = 0x8074; - public const int GL_NORMAL_ARRAY = 0x8075; - public const int GL_COLOR_ARRAY = 0x8076; - public const int GL_INDEX_ARRAY = 0x8077; - public const int GL_TEXTURE_COORD_ARRAY = 0x8078; - public const int GL_EDGE_FLAG_ARRAY = 0x8079; - public const int GL_VERTEX_ARRAY_SIZE = 0x807A; - public const int GL_VERTEX_ARRAY_TYPE = 0x807B; - public const int GL_VERTEX_ARRAY_STRIDE = 0x807C; - public const int GL_NORMAL_ARRAY_TYPE = 0x807E; - public const int GL_NORMAL_ARRAY_STRIDE = 0x807F; - public const int GL_COLOR_ARRAY_SIZE = 0x8081; - public const int GL_COLOR_ARRAY_TYPE = 0x8082; - public const int GL_COLOR_ARRAY_STRIDE = 0x8083; - public const int GL_INDEX_ARRAY_TYPE = 0x8085; - public const int GL_INDEX_ARRAY_STRIDE = 0x8086; - public const int GL_TEXTURE_COORD_ARRAY_SIZE = 0x8088; - public const int GL_TEXTURE_COORD_ARRAY_TYPE = 0x8089; - public const int GL_TEXTURE_COORD_ARRAY_STRIDE = 0x808A; - public const int GL_EDGE_FLAG_ARRAY_STRIDE = 0x808C; - public const int GL_VERTEX_ARRAY_POINTER = 0x808E; - public const int GL_NORMAL_ARRAY_POINTER = 0x808F; - public const int GL_COLOR_ARRAY_POINTER = 0x8090; - public const int GL_INDEX_ARRAY_POINTER = 0x8091; - public const int GL_TEXTURE_COORD_ARRAY_POINTER = 0x8092; - public const int GL_EDGE_FLAG_ARRAY_POINTER = 0x8093; + public const int GL_DOUBLE_EXT = 0x140A; + public const int GL_HALF_FLOAT = 0x140B; + public const int GL_HALF_FLOAT_ARB = 0x140B; + public const int GL_HALF_FLOAT_NV = 0x140B; + public const int GL_HALF_APPLE = 0x140B; + public const int GL_FIXED = 0x140C; + public const int GL_FIXED_OES = 0x140C; + public const int GL_INT64_ARB = 0x140E; + public const int GL_INT64_NV = 0x140E; + public const int GL_UNSIGNED_INT64_ARB = 0x140F; + public const int GL_UNSIGNED_INT64_NV = 0x140F; + public const int GL_CLEAR = 0x1500; + public const int GL_AND = 0x1501; + public const int GL_AND_REVERSE = 0x1502; + public const int GL_COPY = 0x1503; + public const int GL_AND_INVERTED = 0x1504; + public const int GL_NOOP = 0x1505; + public const int GL_XOR = 0x1506; + public const int GL_XOR_NV = 0x1506; + public const int GL_OR = 0x1507; + public const int GL_NOR = 0x1508; + public const int GL_EQUIV = 0x1509; + public const int GL_INVERT = 0x150A; + public const int GL_OR_REVERSE = 0x150B; + public const int GL_COPY_INVERTED = 0x150C; + public const int GL_OR_INVERTED = 0x150D; + public const int GL_NAND = 0x150E; + public const int GL_SET = 0x150F; + public const int GL_EMISSION = 0x1600; + public const int GL_SHININESS = 0x1601; + public const int GL_AMBIENT_AND_DIFFUSE = 0x1602; + public const int GL_COLOR_INDEXES = 0x1603; + public const int GL_MODELVIEW = 0x1700; + public const int GL_MODELVIEW0_ARB = 0x1700; + public const int GL_MODELVIEW0_EXT = 0x1700; + public const int GL_PATH_MODELVIEW_NV = 0x1700; + public const int GL_PROJECTION = 0x1701; + public const int GL_PATH_PROJECTION_NV = 0x1701; + public const int GL_TEXTURE = 0x1702; + public const int GL_COLOR = 0x1800; + public const int GL_COLOR_EXT = 0x1800; + public const int GL_DEPTH = 0x1801; + public const int GL_DEPTH_EXT = 0x1801; + public const int GL_STENCIL = 0x1802; + public const int GL_STENCIL_EXT = 0x1802; + public const int GL_COLOR_INDEX = 0x1900; + public const int GL_STENCIL_INDEX = 0x1901; + public const int GL_STENCIL_INDEX_OES = 0x1901; + public const int GL_DEPTH_COMPONENT = 0x1902; + public const int GL_RED = 0x1903; + public const int GL_RED_EXT = 0x1903; + public const int GL_RED_NV = 0x1903; + public const int GL_GREEN = 0x1904; + public const int GL_GREEN_NV = 0x1904; + public const int GL_BLUE = 0x1905; + public const int GL_BLUE_NV = 0x1905; + public const int GL_ALPHA = 0x1906; + public const int GL_RGB = 0x1907; + public const int GL_RGBA = 0x1908; + public const int GL_LUMINANCE = 0x1909; + public const int GL_LUMINANCE_ALPHA = 0x190A; + public const int GL_BITMAP = 0x1A00; + public const int GL_POINT = 0x1B00; + public const int GL_POINT_NV = 0x1B00; + public const int GL_LINE = 0x1B01; + public const int GL_LINE_NV = 0x1B01; + public const int GL_FILL = 0x1B02; + public const int GL_FILL_NV = 0x1B02; + public const int GL_RENDER = 0x1C00; + public const int GL_FEEDBACK = 0x1C01; + public const int GL_SELECT = 0x1C02; + public const int GL_FLAT = 0x1D00; + public const int GL_SMOOTH = 0x1D01; + public const int GL_KEEP = 0x1E00; + public const int GL_REPLACE = 0x1E01; + public const int GL_INCR = 0x1E02; + public const int GL_DECR = 0x1E03; + public const int GL_VENDOR = 0x1F00; + public const int GL_RENDERER = 0x1F01; + public const int GL_VERSION = 0x1F02; + public const int GL_EXTENSIONS = 0x1F03; + public const int GL_S = 0x2000; + public const int GL_T = 0x2001; + public const int GL_R = 0x2002; + public const int GL_Q = 0x2003; + public const int GL_MODULATE = 0x2100; + public const int GL_DECAL = 0x2101; + public const int GL_TEXTURE_ENV_MODE = 0x2200; + public const int GL_TEXTURE_ENV_COLOR = 0x2201; + public const int GL_TEXTURE_ENV = 0x2300; + public const int GL_EYE_LINEAR = 0x2400; + public const int GL_EYE_LINEAR_NV = 0x2400; + public const int GL_OBJECT_LINEAR = 0x2401; + public const int GL_OBJECT_LINEAR_NV = 0x2401; + public const int GL_SPHERE_MAP = 0x2402; + public const int GL_TEXTURE_GEN_MODE = 0x2500; + public const int GL_TEXTURE_GEN_MODE_OES = 0x2500; + public const int GL_OBJECT_PLANE = 0x2501; + public const int GL_EYE_PLANE = 0x2502; + public const int GL_NEAREST = 0x2600; + public const int GL_LINEAR = 0x2601; + public const int GL_NEAREST_MIPMAP_NEAREST = 0x2700; + public const int GL_LINEAR_MIPMAP_NEAREST = 0x2701; + public const int GL_NEAREST_MIPMAP_LINEAR = 0x2702; + public const int GL_LINEAR_MIPMAP_LINEAR = 0x2703; + public const int GL_TEXTURE_MAG_FILTER = 0x2800; + public const int GL_TEXTURE_MIN_FILTER = 0x2801; + public const int GL_TEXTURE_WRAP_S = 0x2802; + public const int GL_TEXTURE_WRAP_T = 0x2803; + public const int GL_CLAMP = 0x2900; + public const int GL_REPEAT = 0x2901; + public const int GL_POLYGON_OFFSET_UNITS = 0x2A00; + public const int GL_POLYGON_OFFSET_POINT = 0x2A01; + public const int GL_POLYGON_OFFSET_POINT_NV = 0x2A01; + public const int GL_POLYGON_OFFSET_LINE = 0x2A02; + public const int GL_POLYGON_OFFSET_LINE_NV = 0x2A02; + public const int GL_R3_G3_B2 = 0x2A10; public const int GL_V2F = 0x2A20; public const int GL_V3F = 0x2A21; public const int GL_C4UB_V2F = 0x2A22; @@ -65,61 +848,42 @@ public static class GlConsts public const int GL_T2F_N3F_V3F = 0x2A2B; public const int GL_T2F_C4F_N3F_V3F = 0x2A2C; public const int GL_T4F_C4F_N3F_V4F = 0x2A2D; - public const int GL_MATRIX_MODE = 0x0BA0; - public const int GL_MODELVIEW = 0x1700; - public const int GL_PROJECTION = 0x1701; - public const int GL_TEXTURE = 0x1702; - public const int GL_POINT_SMOOTH = 0x0B10; - public const int GL_POINT_SIZE = 0x0B11; - public const int GL_POINT_SIZE_GRANULARITY = 0x0B13; - public const int GL_POINT_SIZE_RANGE = 0x0B12; - public const int GL_LINE_SMOOTH = 0x0B20; - public const int GL_LINE_STIPPLE = 0x0B24; - public const int GL_LINE_STIPPLE_PATTERN = 0x0B25; - public const int GL_LINE_STIPPLE_REPEAT = 0x0B26; - public const int GL_LINE_WIDTH = 0x0B21; - public const int GL_LINE_WIDTH_GRANULARITY = 0x0B23; - public const int GL_LINE_WIDTH_RANGE = 0x0B22; - public const int GL_POINT = 0x1B00; - public const int GL_LINE = 0x1B01; - public const int GL_FILL = 0x1B02; - public const int GL_CW = 0x0900; - public const int GL_CCW = 0x0901; - public const int GL_FRONT = 0x0404; - public const int GL_BACK = 0x0405; - public const int GL_POLYGON_MODE = 0x0B40; - public const int GL_POLYGON_SMOOTH = 0x0B41; - public const int GL_POLYGON_STIPPLE = 0x0B42; - public const int GL_EDGE_FLAG = 0x0B43; - public const int GL_CULL_FACE = 0x0B44; - public const int GL_CULL_FACE_MODE = 0x0B45; - public const int GL_FRONT_FACE = 0x0B46; - public const int GL_POLYGON_OFFSET_FACTOR = 0x8038; - public const int GL_POLYGON_OFFSET_UNITS = 0x2A00; - public const int GL_POLYGON_OFFSET_POINT = 0x2A01; - public const int GL_POLYGON_OFFSET_LINE = 0x2A02; - public const int GL_POLYGON_OFFSET_FILL = 0x8037; - public const int GL_COMPILE = 0x1300; - public const int GL_COMPILE_AND_EXECUTE = 0x1301; - public const int GL_LIST_BASE = 0x0B32; - public const int GL_LIST_INDEX = 0x0B33; - public const int GL_LIST_MODE = 0x0B30; - public const int GL_NEVER = 0x0200; - public const int GL_LESS = 0x0201; - public const int GL_EQUAL = 0x0202; - public const int GL_LEQUAL = 0x0203; - public const int GL_GREATER = 0x0204; - public const int GL_NOTEQUAL = 0x0205; - public const int GL_GEQUAL = 0x0206; - public const int GL_ALWAYS = 0x0207; - public const int GL_DEPTH_TEST = 0x0B71; - public const int GL_DEPTH_BITS = 0x0D56; - public const int GL_DEPTH_CLEAR_VALUE = 0x0B73; - public const int GL_DEPTH_FUNC = 0x0B74; - public const int GL_DEPTH_RANGE = 0x0B70; - public const int GL_DEPTH_WRITEMASK = 0x0B72; - public const int GL_DEPTH_COMPONENT = 0x1902; - public const int GL_LIGHTING = 0x0B50; + public const int GL_CLIP_PLANE0 = 0x3000; + public const int GL_CLIP_PLANE0_IMG = 0x3000; + public const int GL_CLIP_DISTANCE0 = 0x3000; + public const int GL_CLIP_DISTANCE0_EXT = 0x3000; + public const int GL_CLIP_DISTANCE0_APPLE = 0x3000; + public const int GL_CLIP_PLANE1 = 0x3001; + public const int GL_CLIP_PLANE1_IMG = 0x3001; + public const int GL_CLIP_DISTANCE1 = 0x3001; + public const int GL_CLIP_DISTANCE1_EXT = 0x3001; + public const int GL_CLIP_DISTANCE1_APPLE = 0x3001; + public const int GL_CLIP_PLANE2 = 0x3002; + public const int GL_CLIP_PLANE2_IMG = 0x3002; + public const int GL_CLIP_DISTANCE2 = 0x3002; + public const int GL_CLIP_DISTANCE2_EXT = 0x3002; + public const int GL_CLIP_DISTANCE2_APPLE = 0x3002; + public const int GL_CLIP_PLANE3 = 0x3003; + public const int GL_CLIP_PLANE3_IMG = 0x3003; + public const int GL_CLIP_DISTANCE3 = 0x3003; + public const int GL_CLIP_DISTANCE3_EXT = 0x3003; + public const int GL_CLIP_DISTANCE3_APPLE = 0x3003; + public const int GL_CLIP_PLANE4 = 0x3004; + public const int GL_CLIP_PLANE4_IMG = 0x3004; + public const int GL_CLIP_DISTANCE4 = 0x3004; + public const int GL_CLIP_DISTANCE4_EXT = 0x3004; + public const int GL_CLIP_DISTANCE4_APPLE = 0x3004; + public const int GL_CLIP_PLANE5 = 0x3005; + public const int GL_CLIP_PLANE5_IMG = 0x3005; + public const int GL_CLIP_DISTANCE5 = 0x3005; + public const int GL_CLIP_DISTANCE5_EXT = 0x3005; + public const int GL_CLIP_DISTANCE5_APPLE = 0x3005; + public const int GL_CLIP_DISTANCE6 = 0x3006; + public const int GL_CLIP_DISTANCE6_EXT = 0x3006; + public const int GL_CLIP_DISTANCE6_APPLE = 0x3006; + public const int GL_CLIP_DISTANCE7 = 0x3007; + public const int GL_CLIP_DISTANCE7_EXT = 0x3007; + public const int GL_CLIP_DISTANCE7_APPLE = 0x3007; public const int GL_LIGHT0 = 0x4000; public const int GL_LIGHT1 = 0x4001; public const int GL_LIGHT2 = 0x4002; @@ -128,5010 +892,311 @@ public static class GlConsts public const int GL_LIGHT5 = 0x4005; public const int GL_LIGHT6 = 0x4006; public const int GL_LIGHT7 = 0x4007; - public const int GL_SPOT_EXPONENT = 0x1205; - public const int GL_SPOT_CUTOFF = 0x1206; - public const int GL_CONSTANT_ATTENUATION = 0x1207; - public const int GL_LINEAR_ATTENUATION = 0x1208; - public const int GL_QUADRATIC_ATTENUATION = 0x1209; - public const int GL_AMBIENT = 0x1200; - public const int GL_DIFFUSE = 0x1201; - public const int GL_SPECULAR = 0x1202; - public const int GL_SHININESS = 0x1601; - public const int GL_EMISSION = 0x1600; - public const int GL_POSITION = 0x1203; - public const int GL_SPOT_DIRECTION = 0x1204; - public const int GL_AMBIENT_AND_DIFFUSE = 0x1602; - public const int GL_COLOR_INDEXES = 0x1603; - public const int GL_LIGHT_MODEL_TWO_SIDE = 0x0B52; - public const int GL_LIGHT_MODEL_LOCAL_VIEWER = 0x0B51; - public const int GL_LIGHT_MODEL_AMBIENT = 0x0B53; - public const int GL_FRONT_AND_BACK = 0x0408; - public const int GL_SHADE_MODEL = 0x0B54; - public const int GL_FLAT = 0x1D00; - public const int GL_SMOOTH = 0x1D01; - public const int GL_COLOR_MATERIAL = 0x0B57; - public const int GL_COLOR_MATERIAL_FACE = 0x0B55; - public const int GL_COLOR_MATERIAL_PARAMETER = 0x0B56; - public const int GL_NORMALIZE = 0x0BA1; - public const int GL_CLIP_PLANE0 = 0x3000; - public const int GL_CLIP_PLANE1 = 0x3001; - public const int GL_CLIP_PLANE2 = 0x3002; - public const int GL_CLIP_PLANE3 = 0x3003; - public const int GL_CLIP_PLANE4 = 0x3004; - public const int GL_CLIP_PLANE5 = 0x3005; - public const int GL_ACCUM_RED_BITS = 0x0D58; - public const int GL_ACCUM_GREEN_BITS = 0x0D59; - public const int GL_ACCUM_BLUE_BITS = 0x0D5A; - public const int GL_ACCUM_ALPHA_BITS = 0x0D5B; - public const int GL_ACCUM_CLEAR_VALUE = 0x0B80; - public const int GL_ACCUM = 0x0100; - public const int GL_ADD = 0x0104; - public const int GL_LOAD = 0x0101; - public const int GL_MULT = 0x0103; - public const int GL_RETURN = 0x0102; - public const int GL_ALPHA_TEST = 0x0BC0; - public const int GL_ALPHA_TEST_REF = 0x0BC2; - public const int GL_ALPHA_TEST_FUNC = 0x0BC1; - public const int GL_BLEND = 0x0BE2; - public const int GL_BLEND_SRC = 0x0BE1; - public const int GL_BLEND_DST = 0x0BE0; - public const int GL_SRC_COLOR = 0x0300; - public const int GL_ONE_MINUS_SRC_COLOR = 0x0301; - public const int GL_SRC_ALPHA = 0x0302; - public const int GL_ONE_MINUS_SRC_ALPHA = 0x0303; - public const int GL_DST_ALPHA = 0x0304; - public const int GL_ONE_MINUS_DST_ALPHA = 0x0305; - public const int GL_DST_COLOR = 0x0306; - public const int GL_ONE_MINUS_DST_COLOR = 0x0307; - public const int GL_SRC_ALPHA_SATURATE = 0x0308; - public const int GL_FEEDBACK = 0x1C01; - public const int GL_RENDER = 0x1C00; - public const int GL_SELECT = 0x1C02; - public const int GL_2D = 0x0600; - public const int GL_3D = 0x0601; - public const int GL_3D_COLOR = 0x0602; - public const int GL_3D_COLOR_TEXTURE = 0x0603; - public const int GL_4D_COLOR_TEXTURE = 0x0604; - public const int GL_POINT_TOKEN = 0x0701; - public const int GL_LINE_TOKEN = 0x0702; - public const int GL_LINE_RESET_TOKEN = 0x0707; - public const int GL_POLYGON_TOKEN = 0x0703; - public const int GL_BITMAP_TOKEN = 0x0704; - public const int GL_DRAW_PIXEL_TOKEN = 0x0705; - public const int GL_COPY_PIXEL_TOKEN = 0x0706; - public const int GL_PASS_THROUGH_TOKEN = 0x0700; - public const int GL_FEEDBACK_BUFFER_POINTER = 0x0DF0; - public const int GL_FEEDBACK_BUFFER_SIZE = 0x0DF1; - public const int GL_FEEDBACK_BUFFER_TYPE = 0x0DF2; - public const int GL_SELECTION_BUFFER_POINTER = 0x0DF3; - public const int GL_SELECTION_BUFFER_SIZE = 0x0DF4; - public const int GL_FOG = 0x0B60; - public const int GL_FOG_MODE = 0x0B65; - public const int GL_FOG_DENSITY = 0x0B62; - public const int GL_FOG_COLOR = 0x0B66; - public const int GL_FOG_INDEX = 0x0B61; - public const int GL_FOG_START = 0x0B63; - public const int GL_FOG_END = 0x0B64; - public const int GL_LINEAR = 0x2601; - public const int GL_EXP = 0x0800; - public const int GL_EXP2 = 0x0801; - public const int GL_LOGIC_OP = 0x0BF1; - public const int GL_INDEX_LOGIC_OP = 0x0BF1; - public const int GL_COLOR_LOGIC_OP = 0x0BF2; - public const int GL_LOGIC_OP_MODE = 0x0BF0; - public const int GL_CLEAR = 0x1500; - public const int GL_SET = 0x150F; - public const int GL_COPY = 0x1503; - public const int GL_COPY_INVERTED = 0x150C; - public const int GL_NOOP = 0x1505; - public const int GL_INVERT = 0x150A; - public const int GL_AND = 0x1501; - public const int GL_NAND = 0x150E; - public const int GL_OR = 0x1507; - public const int GL_NOR = 0x1508; - public const int GL_XOR = 0x1506; - public const int GL_EQUIV = 0x1509; - public const int GL_AND_REVERSE = 0x1502; - public const int GL_AND_INVERTED = 0x1504; - public const int GL_OR_REVERSE = 0x150B; - public const int GL_OR_INVERTED = 0x150D; - public const int GL_STENCIL_BITS = 0x0D57; - public const int GL_STENCIL_TEST = 0x0B90; - public const int GL_STENCIL_CLEAR_VALUE = 0x0B91; - public const int GL_STENCIL_FUNC = 0x0B92; - public const int GL_STENCIL_VALUE_MASK = 0x0B93; - public const int GL_STENCIL_FAIL = 0x0B94; - public const int GL_STENCIL_PASS_DEPTH_FAIL = 0x0B95; - public const int GL_STENCIL_PASS_DEPTH_PASS = 0x0B96; - public const int GL_STENCIL_REF = 0x0B97; - public const int GL_STENCIL_WRITEMASK = 0x0B98; - public const int GL_STENCIL_INDEX = 0x1901; - public const int GL_KEEP = 0x1E00; - public const int GL_REPLACE = 0x1E01; - public const int GL_INCR = 0x1E02; - public const int GL_DECR = 0x1E03; - public const int GL_LEFT = 0x0406; - public const int GL_RIGHT = 0x0407; - public const int GL_FRONT_LEFT = 0x0400; - public const int GL_FRONT_RIGHT = 0x0401; - public const int GL_BACK_LEFT = 0x0402; - public const int GL_BACK_RIGHT = 0x0403; - public const int GL_AUX0 = 0x0409; - public const int GL_AUX1 = 0x040A; - public const int GL_AUX2 = 0x040B; - public const int GL_AUX3 = 0x040C; - public const int GL_COLOR_INDEX = 0x1900; - public const int GL_RED = 0x1903; - public const int GL_GREEN = 0x1904; - public const int GL_BLUE = 0x1905; - public const int GL_ALPHA = 0x1906; - public const int GL_LUMINANCE = 0x1909; - public const int GL_LUMINANCE_ALPHA = 0x190A; - public const int GL_ALPHA_BITS = 0x0D55; - public const int GL_RED_BITS = 0x0D52; - public const int GL_GREEN_BITS = 0x0D53; - public const int GL_BLUE_BITS = 0x0D54; - public const int GL_INDEX_BITS = 0x0D51; - public const int GL_SUBPIXEL_BITS = 0x0D50; - public const int GL_AUX_BUFFERS = 0x0C00; - public const int GL_READ_BUFFER = 0x0C02; - public const int GL_DRAW_BUFFER = 0x0C01; - public const int GL_DOUBLEBUFFER = 0x0C32; - public const int GL_STEREO = 0x0C33; - public const int GL_BITMAP = 0x1A00; - public const int GL_COLOR = 0x1800; - public const int GL_DEPTH = 0x1801; - public const int GL_STENCIL = 0x1802; - public const int GL_DITHER = 0x0BD0; - public const int GL_RGB = 0x1907; - public const int GL_RGBA = 0x1908; - public const int GL_MAX_LIST_NESTING = 0x0B31; - public const int GL_MAX_EVAL_ORDER = 0x0D30; - public const int GL_MAX_LIGHTS = 0x0D31; - public const int GL_MAX_CLIP_PLANES = 0x0D32; - public const int GL_MAX_TEXTURE_SIZE = 0x0D33; - public const int GL_MAX_PIXEL_MAP_TABLE = 0x0D34; - public const int GL_MAX_ATTRIB_STACK_DEPTH = 0x0D35; - public const int GL_MAX_MODELVIEW_STACK_DEPTH = 0x0D36; - public const int GL_MAX_NAME_STACK_DEPTH = 0x0D37; - public const int GL_MAX_PROJECTION_STACK_DEPTH = 0x0D38; - public const int GL_MAX_TEXTURE_STACK_DEPTH = 0x0D39; - public const int GL_MAX_VIEWPORT_DIMS = 0x0D3A; - public const int GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = 0x0D3B; - public const int GL_ATTRIB_STACK_DEPTH = 0x0BB0; - public const int GL_CLIENT_ATTRIB_STACK_DEPTH = 0x0BB1; - public const int GL_COLOR_CLEAR_VALUE = 0x0C22; - public const int GL_COLOR_WRITEMASK = 0x0C23; - public const int GL_CURRENT_INDEX = 0x0B01; - public const int GL_CURRENT_COLOR = 0x0B00; - public const int GL_CURRENT_NORMAL = 0x0B02; - public const int GL_CURRENT_RASTER_COLOR = 0x0B04; - public const int GL_CURRENT_RASTER_DISTANCE = 0x0B09; - public const int GL_CURRENT_RASTER_INDEX = 0x0B05; - public const int GL_CURRENT_RASTER_POSITION = 0x0B07; - public const int GL_CURRENT_RASTER_TEXTURE_COORDS = 0x0B06; - public const int GL_CURRENT_RASTER_POSITION_VALID = 0x0B08; - public const int GL_CURRENT_TEXTURE_COORDS = 0x0B03; - public const int GL_INDEX_CLEAR_VALUE = 0x0C20; - public const int GL_INDEX_MODE = 0x0C30; - public const int GL_INDEX_WRITEMASK = 0x0C21; - public const int GL_MODELVIEW_MATRIX = 0x0BA6; - public const int GL_MODELVIEW_STACK_DEPTH = 0x0BA3; - public const int GL_NAME_STACK_DEPTH = 0x0D70; - public const int GL_PROJECTION_MATRIX = 0x0BA7; - public const int GL_PROJECTION_STACK_DEPTH = 0x0BA4; - public const int GL_RENDER_MODE = 0x0C40; - public const int GL_RGBA_MODE = 0x0C31; - public const int GL_TEXTURE_MATRIX = 0x0BA8; - public const int GL_TEXTURE_STACK_DEPTH = 0x0BA5; - public const int GL_VIEWPORT = 0x0BA2; - public const int GL_AUTO_NORMAL = 0x0D80; - public const int GL_MAP1_COLOR_4 = 0x0D90; - public const int GL_MAP1_INDEX = 0x0D91; - public const int GL_MAP1_NORMAL = 0x0D92; - public const int GL_MAP1_TEXTURE_COORD_1 = 0x0D93; - public const int GL_MAP1_TEXTURE_COORD_2 = 0x0D94; - public const int GL_MAP1_TEXTURE_COORD_3 = 0x0D95; - public const int GL_MAP1_TEXTURE_COORD_4 = 0x0D96; - public const int GL_MAP1_VERTEX_3 = 0x0D97; - public const int GL_MAP1_VERTEX_4 = 0x0D98; - public const int GL_MAP2_COLOR_4 = 0x0DB0; - public const int GL_MAP2_INDEX = 0x0DB1; - public const int GL_MAP2_NORMAL = 0x0DB2; - public const int GL_MAP2_TEXTURE_COORD_1 = 0x0DB3; - public const int GL_MAP2_TEXTURE_COORD_2 = 0x0DB4; - public const int GL_MAP2_TEXTURE_COORD_3 = 0x0DB5; - public const int GL_MAP2_TEXTURE_COORD_4 = 0x0DB6; - public const int GL_MAP2_VERTEX_3 = 0x0DB7; - public const int GL_MAP2_VERTEX_4 = 0x0DB8; - public const int GL_MAP1_GRID_DOMAIN = 0x0DD0; - public const int GL_MAP1_GRID_SEGMENTS = 0x0DD1; - public const int GL_MAP2_GRID_DOMAIN = 0x0DD2; - public const int GL_MAP2_GRID_SEGMENTS = 0x0DD3; - public const int GL_COEFF = 0x0A00; - public const int GL_ORDER = 0x0A01; - public const int GL_DOMAIN = 0x0A02; - public const int GL_PERSPECTIVE_CORRECTION_HINT = 0x0C50; - public const int GL_POINT_SMOOTH_HINT = 0x0C51; - public const int GL_LINE_SMOOTH_HINT = 0x0C52; - public const int GL_POLYGON_SMOOTH_HINT = 0x0C53; - public const int GL_FOG_HINT = 0x0C54; - public const int GL_DONT_CARE = 0x1100; - public const int GL_FASTEST = 0x1101; - public const int GL_NICEST = 0x1102; - public const int GL_SCISSOR_BOX = 0x0C10; - public const int GL_SCISSOR_TEST = 0x0C11; - public const int GL_MAP_COLOR = 0x0D10; - public const int GL_MAP_STENCIL = 0x0D11; - public const int GL_INDEX_SHIFT = 0x0D12; - public const int GL_INDEX_OFFSET = 0x0D13; - public const int GL_RED_SCALE = 0x0D14; - public const int GL_RED_BIAS = 0x0D15; - public const int GL_GREEN_SCALE = 0x0D18; - public const int GL_GREEN_BIAS = 0x0D19; - public const int GL_BLUE_SCALE = 0x0D1A; - public const int GL_BLUE_BIAS = 0x0D1B; - public const int GL_ALPHA_SCALE = 0x0D1C; - public const int GL_ALPHA_BIAS = 0x0D1D; - public const int GL_DEPTH_SCALE = 0x0D1E; - public const int GL_DEPTH_BIAS = 0x0D1F; - public const int GL_PIXEL_MAP_S_TO_S_SIZE = 0x0CB1; - public const int GL_PIXEL_MAP_I_TO_I_SIZE = 0x0CB0; - public const int GL_PIXEL_MAP_I_TO_R_SIZE = 0x0CB2; - public const int GL_PIXEL_MAP_I_TO_G_SIZE = 0x0CB3; - public const int GL_PIXEL_MAP_I_TO_B_SIZE = 0x0CB4; - public const int GL_PIXEL_MAP_I_TO_A_SIZE = 0x0CB5; - public const int GL_PIXEL_MAP_R_TO_R_SIZE = 0x0CB6; - public const int GL_PIXEL_MAP_G_TO_G_SIZE = 0x0CB7; - public const int GL_PIXEL_MAP_B_TO_B_SIZE = 0x0CB8; - public const int GL_PIXEL_MAP_A_TO_A_SIZE = 0x0CB9; - public const int GL_PIXEL_MAP_S_TO_S = 0x0C71; - public const int GL_PIXEL_MAP_I_TO_I = 0x0C70; - public const int GL_PIXEL_MAP_I_TO_R = 0x0C72; - public const int GL_PIXEL_MAP_I_TO_G = 0x0C73; - public const int GL_PIXEL_MAP_I_TO_B = 0x0C74; - public const int GL_PIXEL_MAP_I_TO_A = 0x0C75; - public const int GL_PIXEL_MAP_R_TO_R = 0x0C76; - public const int GL_PIXEL_MAP_G_TO_G = 0x0C77; - public const int GL_PIXEL_MAP_B_TO_B = 0x0C78; - public const int GL_PIXEL_MAP_A_TO_A = 0x0C79; - public const int GL_PACK_ALIGNMENT = 0x0D05; - public const int GL_PACK_LSB_FIRST = 0x0D01; - public const int GL_PACK_ROW_LENGTH = 0x0D02; - public const int GL_PACK_SKIP_PIXELS = 0x0D04; - public const int GL_PACK_SKIP_ROWS = 0x0D03; - public const int GL_PACK_SWAP_BYTES = 0x0D00; - public const int GL_UNPACK_ALIGNMENT = 0x0CF5; - public const int GL_UNPACK_LSB_FIRST = 0x0CF1; - public const int GL_UNPACK_ROW_LENGTH = 0x0CF2; - public const int GL_UNPACK_SKIP_PIXELS = 0x0CF4; - public const int GL_UNPACK_SKIP_ROWS = 0x0CF3; - public const int GL_UNPACK_SWAP_BYTES = 0x0CF0; - public const int GL_ZOOM_X = 0x0D16; - public const int GL_ZOOM_Y = 0x0D17; - public const int GL_TEXTURE_ENV = 0x2300; - public const int GL_TEXTURE_ENV_MODE = 0x2200; - public const int GL_TEXTURE_1D = 0x0DE0; - public const int GL_TEXTURE_2D = 0x0DE1; - public const int GL_TEXTURE_WRAP_S = 0x2802; - public const int GL_TEXTURE_WRAP_T = 0x2803; - public const int GL_TEXTURE_MAG_FILTER = 0x2800; - public const int GL_TEXTURE_MIN_FILTER = 0x2801; - public const int GL_TEXTURE_ENV_COLOR = 0x2201; - public const int GL_TEXTURE_GEN_S = 0x0C60; - public const int GL_TEXTURE_GEN_T = 0x0C61; - public const int GL_TEXTURE_GEN_R = 0x0C62; - public const int GL_TEXTURE_GEN_Q = 0x0C63; - public const int GL_TEXTURE_GEN_MODE = 0x2500; - public const int GL_TEXTURE_BORDER_COLOR = 0x1004; - public const int GL_TEXTURE_WIDTH = 0x1000; - public const int GL_TEXTURE_HEIGHT = 0x1001; - public const int GL_TEXTURE_BORDER = 0x1005; - public const int GL_TEXTURE_COMPONENTS = 0x1003; - public const int GL_TEXTURE_RED_SIZE = 0x805C; - public const int GL_TEXTURE_GREEN_SIZE = 0x805D; - public const int GL_TEXTURE_BLUE_SIZE = 0x805E; - public const int GL_TEXTURE_ALPHA_SIZE = 0x805F; - public const int GL_TEXTURE_LUMINANCE_SIZE = 0x8060; - public const int GL_TEXTURE_INTENSITY_SIZE = 0x8061; - public const int GL_NEAREST_MIPMAP_NEAREST = 0x2700; - public const int GL_NEAREST_MIPMAP_LINEAR = 0x2702; - public const int GL_LINEAR_MIPMAP_NEAREST = 0x2701; - public const int GL_LINEAR_MIPMAP_LINEAR = 0x2703; - public const int GL_OBJECT_LINEAR = 0x2401; - public const int GL_OBJECT_PLANE = 0x2501; - public const int GL_EYE_LINEAR = 0x2400; - public const int GL_EYE_PLANE = 0x2502; - public const int GL_SPHERE_MAP = 0x2402; - public const int GL_DECAL = 0x2101; - public const int GL_MODULATE = 0x2100; - public const int GL_NEAREST = 0x2600; - public const int GL_REPEAT = 0x2901; - public const int GL_CLAMP = 0x2900; - public const int GL_S = 0x2000; - public const int GL_T = 0x2001; - public const int GL_R = 0x2002; - public const int GL_Q = 0x2003; - public const int GL_VENDOR = 0x1F00; - public const int GL_RENDERER = 0x1F01; - public const int GL_VERSION = 0x1F02; - public const int GL_EXTENSIONS = 0x1F03; - public const int GL_NO_ERROR = 0; - public const int GL_INVALID_ENUM = 0x0500; - public const int GL_INVALID_VALUE = 0x0501; - public const int GL_INVALID_OPERATION = 0x0502; - public const int GL_STACK_OVERFLOW = 0x0503; - public const int GL_STACK_UNDERFLOW = 0x0504; - public const int GL_OUT_OF_MEMORY = 0x0505; - public const int GL_INVALID_FRAMEBUFFER_OPERATION = 0x0506; - public const int GL_CONTEXT_LOST = 0x0507; - public const int GL_CURRENT_BIT = 0x00000001; - public const int GL_POINT_BIT = 0x00000002; - public const int GL_LINE_BIT = 0x00000004; - public const int GL_POLYGON_BIT = 0x00000008; - public const int GL_POLYGON_STIPPLE_BIT = 0x00000010; - public const int GL_PIXEL_MODE_BIT = 0x00000020; - public const int GL_LIGHTING_BIT = 0x00000040; - public const int GL_FOG_BIT = 0x00000080; - public const int GL_DEPTH_BUFFER_BIT = 0x00000100; - public const int GL_ACCUM_BUFFER_BIT = 0x00000200; - public const int GL_STENCIL_BUFFER_BIT = 0x00000400; - public const int GL_VIEWPORT_BIT = 0x00000800; - public const int GL_TRANSFORM_BIT = 0x00001000; - public const int GL_ENABLE_BIT = 0x00002000; - public const int GL_COLOR_BUFFER_BIT = 0x00004000; - public const int GL_HINT_BIT = 0x00008000; - public const int GL_EVAL_BIT = 0x00010000; - public const int GL_LIST_BIT = 0x00020000; - public const int GL_TEXTURE_BIT = 0x00040000; - public const int GL_SCISSOR_BIT = 0x00080000; - public const int GL_ALL_ATTRIB_BITS = -1; - public const int GL_PROXY_TEXTURE_1D = 0x8063; - public const int GL_PROXY_TEXTURE_2D = 0x8064; - public const int GL_TEXTURE_PRIORITY = 0x8066; - public const int GL_TEXTURE_RESIDENT = 0x8067; - public const int GL_TEXTURE_BINDING_1D = 0x8068; - public const int GL_TEXTURE_BINDING_2D = 0x8069; - public const int GL_TEXTURE_INTERNAL_FORMAT = 0x1003; - public const int GL_ALPHA4 = 0x803B; - public const int GL_ALPHA8 = 0x803C; - public const int GL_ALPHA12 = 0x803D; - public const int GL_ALPHA16 = 0x803E; - public const int GL_LUMINANCE4 = 0x803F; - public const int GL_LUMINANCE8 = 0x8040; - public const int GL_LUMINANCE12 = 0x8041; - public const int GL_LUMINANCE16 = 0x8042; - public const int GL_LUMINANCE4_ALPHA4 = 0x8043; - public const int GL_LUMINANCE6_ALPHA2 = 0x8044; - public const int GL_LUMINANCE8_ALPHA8 = 0x8045; - public const int GL_LUMINANCE12_ALPHA4 = 0x8046; - public const int GL_LUMINANCE12_ALPHA12 = 0x8047; - public const int GL_LUMINANCE16_ALPHA16 = 0x8048; - public const int GL_INTENSITY = 0x8049; - public const int GL_INTENSITY4 = 0x804A; - public const int GL_INTENSITY8 = 0x804B; - public const int GL_INTENSITY12 = 0x804C; - public const int GL_INTENSITY16 = 0x804D; - public const int GL_R3_G3_B2 = 0x2A10; - public const int GL_RGB4 = 0x804F; - public const int GL_RGB5 = 0x8050; - public const int GL_RGB8 = 0x8051; - public const int GL_RGB10 = 0x8052; - public const int GL_RGB12 = 0x8053; - public const int GL_RGB16 = 0x8054; - public const int GL_RGBA2 = 0x8055; - public const int GL_RGBA4 = 0x8056; - public const int GL_RGB5_A1 = 0x8057; - public const int GL_RGBA8 = 0x8058; - public const int GL_RGB10_A2 = 0x8059; - public const int GL_RGBA12 = 0x805A; - public const int GL_RGBA16 = 0x805B; - public const int GL_CLIENT_PIXEL_STORE_BIT = 0x00000001; - public const int GL_CLIENT_VERTEX_ARRAY_BIT = 0x00000002; - public const int GL_ALL_CLIENT_ATTRIB_BITS = -1; - public const int GL_CLIENT_ALL_ATTRIB_BITS = -1; - public const int GL_RESCALE_NORMAL = 0x803A; - public const int GL_CLAMP_TO_EDGE = 0x812F; - public const int GL_MAX_ELEMENTS_VERTICES = 0x80E8; - public const int GL_MAX_ELEMENTS_INDICES = 0x80E9; - public const int GL_BGR = 0x80E0; - public const int GL_BGRA = 0x80E1; - public const int GL_UNSIGNED_BYTE_3_3_2 = 0x8032; - public const int GL_UNSIGNED_BYTE_2_3_3_REV = 0x8362; - public const int GL_UNSIGNED_SHORT_5_6_5 = 0x8363; - public const int GL_UNSIGNED_SHORT_5_6_5_REV = 0x8364; - public const int GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033; - public const int GL_UNSIGNED_SHORT_4_4_4_4_REV = 0x8365; - public const int GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034; - public const int GL_UNSIGNED_SHORT_1_5_5_5_REV = 0x8366; - public const int GL_UNSIGNED_INT_8_8_8_8 = 0x8035; - public const int GL_UNSIGNED_INT_8_8_8_8_REV = 0x8367; - public const int GL_UNSIGNED_INT_10_10_10_2 = 0x8036; - public const int GL_UNSIGNED_INT_2_10_10_10_REV = 0x8368; - public const int GL_LIGHT_MODEL_COLOR_CONTROL = 0x81F8; - public const int GL_SINGLE_COLOR = 0x81F9; - public const int GL_SEPARATE_SPECULAR_COLOR = 0x81FA; - public const int GL_TEXTURE_MIN_LOD = 0x813A; - public const int GL_TEXTURE_MAX_LOD = 0x813B; - public const int GL_TEXTURE_BASE_LEVEL = 0x813C; - public const int GL_TEXTURE_MAX_LEVEL = 0x813D; - public const int GL_SMOOTH_POINT_SIZE_RANGE = 0x0B12; - public const int GL_SMOOTH_POINT_SIZE_GRANULARITY = 0x0B13; - public const int GL_SMOOTH_LINE_WIDTH_RANGE = 0x0B22; - public const int GL_SMOOTH_LINE_WIDTH_GRANULARITY = 0x0B23; - public const int GL_ALIASED_POINT_SIZE_RANGE = 0x846D; - public const int GL_ALIASED_LINE_WIDTH_RANGE = 0x846E; - public const int GL_PACK_SKIP_IMAGES = 0x806B; - public const int GL_PACK_IMAGE_HEIGHT = 0x806C; - public const int GL_UNPACK_SKIP_IMAGES = 0x806D; - public const int GL_UNPACK_IMAGE_HEIGHT = 0x806E; - public const int GL_TEXTURE_3D = 0x806F; - public const int GL_PROXY_TEXTURE_3D = 0x8070; - public const int GL_TEXTURE_DEPTH = 0x8071; - public const int GL_TEXTURE_WRAP_R = 0x8072; - public const int GL_MAX_3D_TEXTURE_SIZE = 0x8073; - public const int GL_TEXTURE_BINDING_3D = 0x806A; + // VENDOR: ARB + // The primary GL enumerant space begins here. All modern enum allocations are in this range. These enums are mostly assigned the default class since it's a great deal of not very useful work to be more specific + public const int GL_ABGR_EXT = 0x8000; public const int GL_CONSTANT_COLOR = 0x8001; + public const int GL_CONSTANT_COLOR_EXT = 0x8001; public const int GL_ONE_MINUS_CONSTANT_COLOR = 0x8002; + public const int GL_ONE_MINUS_CONSTANT_COLOR_EXT = 0x8002; public const int GL_CONSTANT_ALPHA = 0x8003; + public const int GL_CONSTANT_ALPHA_EXT = 0x8003; public const int GL_ONE_MINUS_CONSTANT_ALPHA = 0x8004; - public const int GL_COLOR_TABLE = 0x80D0; - public const int GL_POST_CONVOLUTION_COLOR_TABLE = 0x80D1; - public const int GL_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D2; - public const int GL_PROXY_COLOR_TABLE = 0x80D3; - public const int GL_PROXY_POST_CONVOLUTION_COLOR_TABLE = 0x80D4; - public const int GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D5; - public const int GL_COLOR_TABLE_SCALE = 0x80D6; - public const int GL_COLOR_TABLE_BIAS = 0x80D7; - public const int GL_COLOR_TABLE_FORMAT = 0x80D8; - public const int GL_COLOR_TABLE_WIDTH = 0x80D9; - public const int GL_COLOR_TABLE_RED_SIZE = 0x80DA; - public const int GL_COLOR_TABLE_GREEN_SIZE = 0x80DB; - public const int GL_COLOR_TABLE_BLUE_SIZE = 0x80DC; - public const int GL_COLOR_TABLE_ALPHA_SIZE = 0x80DD; - public const int GL_COLOR_TABLE_LUMINANCE_SIZE = 0x80DE; - public const int GL_COLOR_TABLE_INTENSITY_SIZE = 0x80DF; + public const int GL_ONE_MINUS_CONSTANT_ALPHA_EXT = 0x8004; + public const int GL_BLEND_COLOR = 0x8005; + public const int GL_BLEND_COLOR_EXT = 0x8005; + public const int GL_FUNC_ADD = 0x8006; + public const int GL_FUNC_ADD_EXT = 0x8006; + public const int GL_FUNC_ADD_OES = 0x8006; + public const int GL_MIN = 0x8007; + public const int GL_MIN_EXT = 0x8007; + public const int GL_MAX = 0x8008; + public const int GL_MAX_EXT = 0x8008; + public const int GL_BLEND_EQUATION = 0x8009; + public const int GL_BLEND_EQUATION_EXT = 0x8009; + public const int GL_BLEND_EQUATION_OES = 0x8009; + public const int GL_BLEND_EQUATION_RGB = 0x8009; + public const int GL_BLEND_EQUATION_RGB_EXT = 0x8009; + public const int GL_BLEND_EQUATION_RGB_OES = 0x8009; + public const int GL_FUNC_SUBTRACT = 0x800A; + public const int GL_FUNC_SUBTRACT_EXT = 0x800A; + public const int GL_FUNC_SUBTRACT_OES = 0x800A; + public const int GL_FUNC_REVERSE_SUBTRACT = 0x800B; + public const int GL_FUNC_REVERSE_SUBTRACT_EXT = 0x800B; + public const int GL_FUNC_REVERSE_SUBTRACT_OES = 0x800B; + public const int GL_CMYK_EXT = 0x800C; + public const int GL_CMYKA_EXT = 0x800D; + public const int GL_PACK_CMYK_HINT_EXT = 0x800E; + public const int GL_UNPACK_CMYK_HINT_EXT = 0x800F; public const int GL_CONVOLUTION_1D = 0x8010; + public const int GL_CONVOLUTION_1D_EXT = 0x8010; public const int GL_CONVOLUTION_2D = 0x8011; + public const int GL_CONVOLUTION_2D_EXT = 0x8011; public const int GL_SEPARABLE_2D = 0x8012; + public const int GL_SEPARABLE_2D_EXT = 0x8012; public const int GL_CONVOLUTION_BORDER_MODE = 0x8013; + public const int GL_CONVOLUTION_BORDER_MODE_EXT = 0x8013; public const int GL_CONVOLUTION_FILTER_SCALE = 0x8014; + public const int GL_CONVOLUTION_FILTER_SCALE_EXT = 0x8014; public const int GL_CONVOLUTION_FILTER_BIAS = 0x8015; + public const int GL_CONVOLUTION_FILTER_BIAS_EXT = 0x8015; public const int GL_REDUCE = 0x8016; + public const int GL_REDUCE_EXT = 0x8016; public const int GL_CONVOLUTION_FORMAT = 0x8017; + public const int GL_CONVOLUTION_FORMAT_EXT = 0x8017; public const int GL_CONVOLUTION_WIDTH = 0x8018; + public const int GL_CONVOLUTION_WIDTH_EXT = 0x8018; public const int GL_CONVOLUTION_HEIGHT = 0x8019; + public const int GL_CONVOLUTION_HEIGHT_EXT = 0x8019; public const int GL_MAX_CONVOLUTION_WIDTH = 0x801A; + public const int GL_MAX_CONVOLUTION_WIDTH_EXT = 0x801A; public const int GL_MAX_CONVOLUTION_HEIGHT = 0x801B; + public const int GL_MAX_CONVOLUTION_HEIGHT_EXT = 0x801B; public const int GL_POST_CONVOLUTION_RED_SCALE = 0x801C; + public const int GL_POST_CONVOLUTION_RED_SCALE_EXT = 0x801C; public const int GL_POST_CONVOLUTION_GREEN_SCALE = 0x801D; + public const int GL_POST_CONVOLUTION_GREEN_SCALE_EXT = 0x801D; public const int GL_POST_CONVOLUTION_BLUE_SCALE = 0x801E; + public const int GL_POST_CONVOLUTION_BLUE_SCALE_EXT = 0x801E; public const int GL_POST_CONVOLUTION_ALPHA_SCALE = 0x801F; + public const int GL_POST_CONVOLUTION_ALPHA_SCALE_EXT = 0x801F; public const int GL_POST_CONVOLUTION_RED_BIAS = 0x8020; + public const int GL_POST_CONVOLUTION_RED_BIAS_EXT = 0x8020; public const int GL_POST_CONVOLUTION_GREEN_BIAS = 0x8021; + public const int GL_POST_CONVOLUTION_GREEN_BIAS_EXT = 0x8021; public const int GL_POST_CONVOLUTION_BLUE_BIAS = 0x8022; + public const int GL_POST_CONVOLUTION_BLUE_BIAS_EXT = 0x8022; public const int GL_POST_CONVOLUTION_ALPHA_BIAS = 0x8023; - public const int GL_CONSTANT_BORDER = 0x8151; - public const int GL_REPLICATE_BORDER = 0x8153; - public const int GL_CONVOLUTION_BORDER_COLOR = 0x8154; - public const int GL_COLOR_MATRIX = 0x80B1; - public const int GL_COLOR_MATRIX_STACK_DEPTH = 0x80B2; - public const int GL_MAX_COLOR_MATRIX_STACK_DEPTH = 0x80B3; - public const int GL_POST_COLOR_MATRIX_RED_SCALE = 0x80B4; - public const int GL_POST_COLOR_MATRIX_GREEN_SCALE = 0x80B5; - public const int GL_POST_COLOR_MATRIX_BLUE_SCALE = 0x80B6; - public const int GL_POST_COLOR_MATRIX_ALPHA_SCALE = 0x80B7; - public const int GL_POST_COLOR_MATRIX_RED_BIAS = 0x80B8; - public const int GL_POST_COLOR_MATRIX_GREEN_BIAS = 0x80B9; - public const int GL_POST_COLOR_MATRIX_BLUE_BIAS = 0x80BA; - public const int GL_POST_COLOR_MATRIX_ALPHA_BIAS = 0x80BB; + public const int GL_POST_CONVOLUTION_ALPHA_BIAS_EXT = 0x8023; public const int GL_HISTOGRAM = 0x8024; + public const int GL_HISTOGRAM_EXT = 0x8024; public const int GL_PROXY_HISTOGRAM = 0x8025; + public const int GL_PROXY_HISTOGRAM_EXT = 0x8025; public const int GL_HISTOGRAM_WIDTH = 0x8026; + public const int GL_HISTOGRAM_WIDTH_EXT = 0x8026; public const int GL_HISTOGRAM_FORMAT = 0x8027; + public const int GL_HISTOGRAM_FORMAT_EXT = 0x8027; public const int GL_HISTOGRAM_RED_SIZE = 0x8028; + public const int GL_HISTOGRAM_RED_SIZE_EXT = 0x8028; public const int GL_HISTOGRAM_GREEN_SIZE = 0x8029; + public const int GL_HISTOGRAM_GREEN_SIZE_EXT = 0x8029; public const int GL_HISTOGRAM_BLUE_SIZE = 0x802A; + public const int GL_HISTOGRAM_BLUE_SIZE_EXT = 0x802A; public const int GL_HISTOGRAM_ALPHA_SIZE = 0x802B; + public const int GL_HISTOGRAM_ALPHA_SIZE_EXT = 0x802B; public const int GL_HISTOGRAM_LUMINANCE_SIZE = 0x802C; + public const int GL_HISTOGRAM_LUMINANCE_SIZE_EXT = 0x802C; public const int GL_HISTOGRAM_SINK = 0x802D; + public const int GL_HISTOGRAM_SINK_EXT = 0x802D; public const int GL_MINMAX = 0x802E; + public const int GL_MINMAX_EXT = 0x802E; public const int GL_MINMAX_FORMAT = 0x802F; + public const int GL_MINMAX_FORMAT_EXT = 0x802F; public const int GL_MINMAX_SINK = 0x8030; + public const int GL_MINMAX_SINK_EXT = 0x8030; + public const int GL_TABLE_TOO_LARGE_EXT = 0x8031; public const int GL_TABLE_TOO_LARGE = 0x8031; - public const int GL_BLEND_EQUATION = 0x8009; - public const int GL_MIN = 0x8007; - public const int GL_MAX = 0x8008; - public const int GL_FUNC_ADD = 0x8006; - public const int GL_FUNC_SUBTRACT = 0x800A; - public const int GL_FUNC_REVERSE_SUBTRACT = 0x800B; - public const int GL_BLEND_COLOR = 0x8005; - public const int GL_TEXTURE0 = 0x84C0; - public const int GL_TEXTURE1 = 0x84C1; - public const int GL_TEXTURE2 = 0x84C2; - public const int GL_TEXTURE3 = 0x84C3; - public const int GL_TEXTURE4 = 0x84C4; - public const int GL_TEXTURE5 = 0x84C5; - public const int GL_TEXTURE6 = 0x84C6; - public const int GL_TEXTURE7 = 0x84C7; - public const int GL_TEXTURE8 = 0x84C8; - public const int GL_TEXTURE9 = 0x84C9; - public const int GL_TEXTURE10 = 0x84CA; - public const int GL_TEXTURE11 = 0x84CB; - public const int GL_TEXTURE12 = 0x84CC; - public const int GL_TEXTURE13 = 0x84CD; - public const int GL_TEXTURE14 = 0x84CE; - public const int GL_TEXTURE15 = 0x84CF; - public const int GL_TEXTURE16 = 0x84D0; - public const int GL_TEXTURE17 = 0x84D1; - public const int GL_TEXTURE18 = 0x84D2; - public const int GL_TEXTURE19 = 0x84D3; - public const int GL_TEXTURE20 = 0x84D4; - public const int GL_TEXTURE21 = 0x84D5; - public const int GL_TEXTURE22 = 0x84D6; - public const int GL_TEXTURE23 = 0x84D7; - public const int GL_TEXTURE24 = 0x84D8; - public const int GL_TEXTURE25 = 0x84D9; - public const int GL_TEXTURE26 = 0x84DA; - public const int GL_TEXTURE27 = 0x84DB; - public const int GL_TEXTURE28 = 0x84DC; - public const int GL_TEXTURE29 = 0x84DD; - public const int GL_TEXTURE30 = 0x84DE; - public const int GL_TEXTURE31 = 0x84DF; - public const int GL_ACTIVE_TEXTURE = 0x84E0; - public const int GL_CLIENT_ACTIVE_TEXTURE = 0x84E1; - public const int GL_MAX_TEXTURE_UNITS = 0x84E2; - public const int GL_NORMAL_MAP = 0x8511; - public const int GL_REFLECTION_MAP = 0x8512; - public const int GL_TEXTURE_CUBE_MAP = 0x8513; - public const int GL_TEXTURE_BINDING_CUBE_MAP = 0x8514; - public const int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515; - public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516; - public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517; - public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518; - public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519; - public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A; - public const int GL_PROXY_TEXTURE_CUBE_MAP = 0x851B; - public const int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C; - public const int GL_COMPRESSED_ALPHA = 0x84E9; - public const int GL_COMPRESSED_LUMINANCE = 0x84EA; - public const int GL_COMPRESSED_LUMINANCE_ALPHA = 0x84EB; - public const int GL_COMPRESSED_INTENSITY = 0x84EC; - public const int GL_COMPRESSED_RGB = 0x84ED; - public const int GL_COMPRESSED_RGBA = 0x84EE; - public const int GL_TEXTURE_COMPRESSION_HINT = 0x84EF; - public const int GL_TEXTURE_COMPRESSED_IMAGE_SIZE = 0x86A0; - public const int GL_TEXTURE_COMPRESSED = 0x86A1; - public const int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2; - public const int GL_COMPRESSED_TEXTURE_FORMATS = 0x86A3; - public const int GL_MULTISAMPLE = 0x809D; - public const int GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E; - public const int GL_SAMPLE_ALPHA_TO_ONE = 0x809F; - public const int GL_SAMPLE_COVERAGE = 0x80A0; - public const int GL_SAMPLE_BUFFERS = 0x80A8; - public const int GL_SAMPLES = 0x80A9; - public const int GL_SAMPLE_COVERAGE_VALUE = 0x80AA; - public const int GL_SAMPLE_COVERAGE_INVERT = 0x80AB; - public const int GL_MULTISAMPLE_BIT = 0x20000000; - public const int GL_TRANSPOSE_MODELVIEW_MATRIX = 0x84E3; - public const int GL_TRANSPOSE_PROJECTION_MATRIX = 0x84E4; - public const int GL_TRANSPOSE_TEXTURE_MATRIX = 0x84E5; - public const int GL_TRANSPOSE_COLOR_MATRIX = 0x84E6; - public const int GL_COMBINE = 0x8570; - public const int GL_COMBINE_RGB = 0x8571; - public const int GL_COMBINE_ALPHA = 0x8572; - public const int GL_SOURCE0_RGB = 0x8580; - public const int GL_SOURCE1_RGB = 0x8581; - public const int GL_SOURCE2_RGB = 0x8582; - public const int GL_SOURCE0_ALPHA = 0x8588; - public const int GL_SOURCE1_ALPHA = 0x8589; - public const int GL_SOURCE2_ALPHA = 0x858A; - public const int GL_OPERAND0_RGB = 0x8590; - public const int GL_OPERAND1_RGB = 0x8591; - public const int GL_OPERAND2_RGB = 0x8592; - public const int GL_OPERAND0_ALPHA = 0x8598; - public const int GL_OPERAND1_ALPHA = 0x8599; - public const int GL_OPERAND2_ALPHA = 0x859A; - public const int GL_RGB_SCALE = 0x8573; - public const int GL_ADD_SIGNED = 0x8574; - public const int GL_INTERPOLATE = 0x8575; - public const int GL_SUBTRACT = 0x84E7; - public const int GL_CONSTANT = 0x8576; - public const int GL_PRIMARY_COLOR = 0x8577; - public const int GL_PREVIOUS = 0x8578; - public const int GL_DOT3_RGB = 0x86AE; - public const int GL_DOT3_RGBA = 0x86AF; - public const int GL_CLAMP_TO_BORDER = 0x812D; - public const int GL_TEXTURE0_ARB = 0x84C0; - public const int GL_TEXTURE1_ARB = 0x84C1; - public const int GL_TEXTURE2_ARB = 0x84C2; - public const int GL_TEXTURE3_ARB = 0x84C3; - public const int GL_TEXTURE4_ARB = 0x84C4; - public const int GL_TEXTURE5_ARB = 0x84C5; - public const int GL_TEXTURE6_ARB = 0x84C6; - public const int GL_TEXTURE7_ARB = 0x84C7; - public const int GL_TEXTURE8_ARB = 0x84C8; - public const int GL_TEXTURE9_ARB = 0x84C9; - public const int GL_TEXTURE10_ARB = 0x84CA; - public const int GL_TEXTURE11_ARB = 0x84CB; - public const int GL_TEXTURE12_ARB = 0x84CC; - public const int GL_TEXTURE13_ARB = 0x84CD; - public const int GL_TEXTURE14_ARB = 0x84CE; - public const int GL_TEXTURE15_ARB = 0x84CF; - public const int GL_TEXTURE16_ARB = 0x84D0; - public const int GL_TEXTURE17_ARB = 0x84D1; - public const int GL_TEXTURE18_ARB = 0x84D2; - public const int GL_TEXTURE19_ARB = 0x84D3; - public const int GL_TEXTURE20_ARB = 0x84D4; - public const int GL_TEXTURE21_ARB = 0x84D5; - public const int GL_TEXTURE22_ARB = 0x84D6; - public const int GL_TEXTURE23_ARB = 0x84D7; - public const int GL_TEXTURE24_ARB = 0x84D8; - public const int GL_TEXTURE25_ARB = 0x84D9; - public const int GL_TEXTURE26_ARB = 0x84DA; - public const int GL_TEXTURE27_ARB = 0x84DB; - public const int GL_TEXTURE28_ARB = 0x84DC; - public const int GL_TEXTURE29_ARB = 0x84DD; - public const int GL_TEXTURE30_ARB = 0x84DE; - public const int GL_TEXTURE31_ARB = 0x84DF; - public const int GL_ACTIVE_TEXTURE_ARB = 0x84E0; - public const int GL_CLIENT_ACTIVE_TEXTURE_ARB = 0x84E1; - public const int GL_MAX_TEXTURE_UNITS_ARB = 0x84E2; - public const int GL_DEPTH_STENCIL_MESA = 0x8750; - public const int GL_UNSIGNED_INT_24_8_MESA = 0x8751; - public const int GL_UNSIGNED_INT_8_24_REV_MESA = 0x8752; - public const int GL_UNSIGNED_SHORT_15_1_MESA = 0x8753; - public const int GL_UNSIGNED_SHORT_1_15_REV_MESA = 0x8754; - public const int GL_ALPHA_BLEND_EQUATION_ATI = 0x883D; - - - // glext.h - public const int GL_BLEND_DST_RGB = 0x80C8; - public const int GL_BLEND_SRC_RGB = 0x80C9; - public const int GL_BLEND_DST_ALPHA = 0x80CA; - public const int GL_BLEND_SRC_ALPHA = 0x80CB; - public const int GL_POINT_FADE_THRESHOLD_SIZE = 0x8128; - public const int GL_DEPTH_COMPONENT16 = 0x81A5; - public const int GL_DEPTH_COMPONENT24 = 0x81A6; - public const int GL_DEPTH_COMPONENT32 = 0x81A7; - public const int GL_MIRRORED_REPEAT = 0x8370; - public const int GL_MAX_TEXTURE_LOD_BIAS = 0x84FD; - public const int GL_TEXTURE_LOD_BIAS = 0x8501; - public const int GL_INCR_WRAP = 0x8507; - public const int GL_DECR_WRAP = 0x8508; - public const int GL_TEXTURE_DEPTH_SIZE = 0x884A; - public const int GL_TEXTURE_COMPARE_MODE = 0x884C; - public const int GL_TEXTURE_COMPARE_FUNC = 0x884D; - public const int GL_POINT_SIZE_MIN = 0x8126; - public const int GL_POINT_SIZE_MAX = 0x8127; - public const int GL_POINT_DISTANCE_ATTENUATION = 0x8129; - public const int GL_GENERATE_MIPMAP = 0x8191; - public const int GL_GENERATE_MIPMAP_HINT = 0x8192; - public const int GL_FOG_COORDINATE_SOURCE = 0x8450; - public const int GL_FOG_COORDINATE = 0x8451; - public const int GL_FRAGMENT_DEPTH = 0x8452; - public const int GL_CURRENT_FOG_COORDINATE = 0x8453; - public const int GL_FOG_COORDINATE_ARRAY_TYPE = 0x8454; - public const int GL_FOG_COORDINATE_ARRAY_STRIDE = 0x8455; - public const int GL_FOG_COORDINATE_ARRAY_POINTER = 0x8456; - public const int GL_FOG_COORDINATE_ARRAY = 0x8457; - public const int GL_COLOR_SUM = 0x8458; - public const int GL_CURRENT_SECONDARY_COLOR = 0x8459; - public const int GL_SECONDARY_COLOR_ARRAY_SIZE = 0x845A; - public const int GL_SECONDARY_COLOR_ARRAY_TYPE = 0x845B; - public const int GL_SECONDARY_COLOR_ARRAY_STRIDE = 0x845C; - public const int GL_SECONDARY_COLOR_ARRAY_POINTER = 0x845D; - public const int GL_SECONDARY_COLOR_ARRAY = 0x845E; - public const int GL_TEXTURE_FILTER_CONTROL = 0x8500; - public const int GL_DEPTH_TEXTURE_MODE = 0x884B; - public const int GL_COMPARE_R_TO_TEXTURE = 0x884E; - public const int GL_BUFFER_SIZE = 0x8764; - public const int GL_BUFFER_USAGE = 0x8765; - public const int GL_QUERY_COUNTER_BITS = 0x8864; - public const int GL_CURRENT_QUERY = 0x8865; - public const int GL_QUERY_RESULT = 0x8866; - public const int GL_QUERY_RESULT_AVAILABLE = 0x8867; - public const int GL_ARRAY_BUFFER = 0x8892; - public const int GL_ELEMENT_ARRAY_BUFFER = 0x8893; - public const int GL_ARRAY_BUFFER_BINDING = 0x8894; - public const int GL_ELEMENT_ARRAY_BUFFER_BINDING = 0x8895; - public const int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F; - public const int GL_READ_ONLY = 0x88B8; - public const int GL_WRITE_ONLY = 0x88B9; - public const int GL_READ_WRITE = 0x88BA; - public const int GL_BUFFER_ACCESS = 0x88BB; - public const int GL_BUFFER_MAPPED = 0x88BC; - public const int GL_BUFFER_MAP_POINTER = 0x88BD; - public const int GL_STREAM_DRAW = 0x88E0; - public const int GL_STREAM_READ = 0x88E1; - public const int GL_STREAM_COPY = 0x88E2; - public const int GL_STATIC_DRAW = 0x88E4; - public const int GL_STATIC_READ = 0x88E5; - public const int GL_STATIC_COPY = 0x88E6; - public const int GL_DYNAMIC_DRAW = 0x88E8; - public const int GL_DYNAMIC_READ = 0x88E9; - public const int GL_DYNAMIC_COPY = 0x88EA; - public const int GL_SAMPLES_PASSED = 0x8914; - public const int GL_SRC1_ALPHA = 0x8589; - public const int GL_VERTEX_ARRAY_BUFFER_BINDING = 0x8896; - public const int GL_NORMAL_ARRAY_BUFFER_BINDING = 0x8897; - public const int GL_COLOR_ARRAY_BUFFER_BINDING = 0x8898; - public const int GL_INDEX_ARRAY_BUFFER_BINDING = 0x8899; - public const int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = 0x889A; - public const int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING = 0x889B; - public const int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING = 0x889C; - public const int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING = 0x889D; - public const int GL_WEIGHT_ARRAY_BUFFER_BINDING = 0x889E; - public const int GL_FOG_COORD_SRC = 0x8450; - public const int GL_FOG_COORD = 0x8451; - public const int GL_CURRENT_FOG_COORD = 0x8453; - public const int GL_FOG_COORD_ARRAY_TYPE = 0x8454; - public const int GL_FOG_COORD_ARRAY_STRIDE = 0x8455; - public const int GL_FOG_COORD_ARRAY_POINTER = 0x8456; - public const int GL_FOG_COORD_ARRAY = 0x8457; - public const int GL_FOG_COORD_ARRAY_BUFFER_BINDING = 0x889D; - public const int GL_SRC0_RGB = 0x8580; - public const int GL_SRC1_RGB = 0x8581; - public const int GL_SRC2_RGB = 0x8582; - public const int GL_SRC0_ALPHA = 0x8588; - public const int GL_SRC2_ALPHA = 0x858A; - public const int GL_BLEND_EQUATION_RGB = 0x8009; - public const int GL_VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622; - public const int GL_VERTEX_ATTRIB_ARRAY_SIZE = 0x8623; - public const int GL_VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624; - public const int GL_VERTEX_ATTRIB_ARRAY_TYPE = 0x8625; - public const int GL_CURRENT_VERTEX_ATTRIB = 0x8626; - public const int GL_VERTEX_PROGRAM_POINT_SIZE = 0x8642; - public const int GL_VERTEX_ATTRIB_ARRAY_POINTER = 0x8645; - public const int GL_STENCIL_BACK_FUNC = 0x8800; - public const int GL_STENCIL_BACK_FAIL = 0x8801; - public const int GL_STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802; - public const int GL_STENCIL_BACK_PASS_DEPTH_PASS = 0x8803; - public const int GL_MAX_DRAW_BUFFERS = 0x8824; - public const int GL_DRAW_BUFFER0 = 0x8825; - public const int GL_DRAW_BUFFER1 = 0x8826; - public const int GL_DRAW_BUFFER2 = 0x8827; - public const int GL_DRAW_BUFFER3 = 0x8828; - public const int GL_DRAW_BUFFER4 = 0x8829; - public const int GL_DRAW_BUFFER5 = 0x882A; - public const int GL_DRAW_BUFFER6 = 0x882B; - public const int GL_DRAW_BUFFER7 = 0x882C; - public const int GL_DRAW_BUFFER8 = 0x882D; - public const int GL_DRAW_BUFFER9 = 0x882E; - public const int GL_DRAW_BUFFER10 = 0x882F; - public const int GL_DRAW_BUFFER11 = 0x8830; - public const int GL_DRAW_BUFFER12 = 0x8831; - public const int GL_DRAW_BUFFER13 = 0x8832; - public const int GL_DRAW_BUFFER14 = 0x8833; - public const int GL_DRAW_BUFFER15 = 0x8834; - public const int GL_BLEND_EQUATION_ALPHA = 0x883D; - public const int GL_MAX_VERTEX_ATTRIBS = 0x8869; - public const int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A; - public const int GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872; - public const int GL_FRAGMENT_SHADER = 0x8B30; - public const int GL_VERTEX_SHADER = 0x8B31; - public const int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49; - public const int GL_MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A; - public const int GL_MAX_VARYING_FLOATS = 0x8B4B; - public const int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C; - public const int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D; - public const int GL_SHADER_TYPE = 0x8B4F; - public const int GL_FLOAT_VEC2 = 0x8B50; - public const int GL_FLOAT_VEC3 = 0x8B51; - public const int GL_FLOAT_VEC4 = 0x8B52; - public const int GL_INT_VEC2 = 0x8B53; - public const int GL_INT_VEC3 = 0x8B54; - public const int GL_INT_VEC4 = 0x8B55; - public const int GL_BOOL = 0x8B56; - public const int GL_BOOL_VEC2 = 0x8B57; - public const int GL_BOOL_VEC3 = 0x8B58; - public const int GL_BOOL_VEC4 = 0x8B59; - public const int GL_FLOAT_MAT2 = 0x8B5A; - public const int GL_FLOAT_MAT3 = 0x8B5B; - public const int GL_FLOAT_MAT4 = 0x8B5C; - public const int GL_SAMPLER_1D = 0x8B5D; - public const int GL_SAMPLER_2D = 0x8B5E; - public const int GL_SAMPLER_3D = 0x8B5F; - public const int GL_SAMPLER_CUBE = 0x8B60; - public const int GL_SAMPLER_1D_SHADOW = 0x8B61; - public const int GL_SAMPLER_2D_SHADOW = 0x8B62; - public const int GL_DELETE_STATUS = 0x8B80; - public const int GL_COMPILE_STATUS = 0x8B81; - public const int GL_LINK_STATUS = 0x8B82; - public const int GL_VALIDATE_STATUS = 0x8B83; - public const int GL_INFO_LOG_LENGTH = 0x8B84; - public const int GL_ATTACHED_SHADERS = 0x8B85; - public const int GL_ACTIVE_UNIFORMS = 0x8B86; - public const int GL_ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87; - public const int GL_SHADER_SOURCE_LENGTH = 0x8B88; - public const int GL_ACTIVE_ATTRIBUTES = 0x8B89; - public const int GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A; - public const int GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B; - public const int GL_SHADING_LANGUAGE_VERSION = 0x8B8C; - public const int GL_CURRENT_PROGRAM = 0x8B8D; - public const int GL_POINT_SPRITE_COORD_ORIGIN = 0x8CA0; - public const int GL_LOWER_LEFT = 0x8CA1; - public const int GL_UPPER_LEFT = 0x8CA2; - public const int GL_STENCIL_BACK_REF = 0x8CA3; - public const int GL_STENCIL_BACK_VALUE_MASK = 0x8CA4; - public const int GL_STENCIL_BACK_WRITEMASK = 0x8CA5; - public const int GL_VERTEX_PROGRAM_TWO_SIDE = 0x8643; - public const int GL_POINT_SPRITE = 0x8861; - public const int GL_COORD_REPLACE = 0x8862; - public const int GL_MAX_TEXTURE_COORDS = 0x8871; - public const int GL_VERSION_2_1 = 1; - public const int GL_PIXEL_PACK_BUFFER = 0x88EB; - public const int GL_PIXEL_UNPACK_BUFFER = 0x88EC; - public const int GL_PIXEL_PACK_BUFFER_BINDING = 0x88ED; - public const int GL_PIXEL_UNPACK_BUFFER_BINDING = 0x88EF; - public const int GL_FLOAT_MAT2x3 = 0x8B65; - public const int GL_FLOAT_MAT2x4 = 0x8B66; - public const int GL_FLOAT_MAT3x2 = 0x8B67; - public const int GL_FLOAT_MAT3x4 = 0x8B68; - public const int GL_FLOAT_MAT4x2 = 0x8B69; - public const int GL_FLOAT_MAT4x3 = 0x8B6A; - public const int GL_SRGB = 0x8C40; - public const int GL_SRGB8 = 0x8C41; - public const int GL_SRGB_ALPHA = 0x8C42; - public const int GL_SRGB8_ALPHA8 = 0x8C43; - public const int GL_COMPRESSED_SRGB = 0x8C48; - public const int GL_COMPRESSED_SRGB_ALPHA = 0x8C49; - public const int GL_CURRENT_RASTER_SECONDARY_COLOR = 0x845F; - public const int GL_SLUMINANCE_ALPHA = 0x8C44; - public const int GL_SLUMINANCE8_ALPHA8 = 0x8C45; - public const int GL_SLUMINANCE = 0x8C46; - public const int GL_SLUMINANCE8 = 0x8C47; - public const int GL_COMPRESSED_SLUMINANCE = 0x8C4A; - public const int GL_COMPRESSED_SLUMINANCE_ALPHA = 0x8C4B; - public const int GL_VERSION_3_0 = 1; - public const int GL_COMPARE_REF_TO_TEXTURE = 0x884E; - public const int GL_CLIP_DISTANCE0 = 0x3000; - public const int GL_CLIP_DISTANCE1 = 0x3001; - public const int GL_CLIP_DISTANCE2 = 0x3002; - public const int GL_CLIP_DISTANCE3 = 0x3003; - public const int GL_CLIP_DISTANCE4 = 0x3004; - public const int GL_CLIP_DISTANCE5 = 0x3005; - public const int GL_CLIP_DISTANCE6 = 0x3006; - public const int GL_CLIP_DISTANCE7 = 0x3007; - public const int GL_MAX_CLIP_DISTANCES = 0x0D32; - public const int GL_MAJOR_VERSION = 0x821B; - public const int GL_MINOR_VERSION = 0x821C; - public const int GL_NUM_EXTENSIONS = 0x821D; - public const int GL_CONTEXT_FLAGS = 0x821E; - public const int GL_COMPRESSED_RED = 0x8225; - public const int GL_COMPRESSED_RG = 0x8226; - public const int GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT = 0x00000001; - public const int GL_RGBA32F = 0x8814; - public const int GL_RGB32F = 0x8815; - public const int GL_RGBA16F = 0x881A; - public const int GL_RGB16F = 0x881B; - public const int GL_VERTEX_ATTRIB_ARRAY_INTEGER = 0x88FD; - public const int GL_MAX_ARRAY_TEXTURE_LAYERS = 0x88FF; - public const int GL_MIN_PROGRAM_TEXEL_OFFSET = 0x8904; - public const int GL_MAX_PROGRAM_TEXEL_OFFSET = 0x8905; - public const int GL_CLAMP_READ_COLOR = 0x891C; - public const int GL_FIXED_ONLY = 0x891D; - public const int GL_MAX_VARYING_COMPONENTS = 0x8B4B; - public const int GL_TEXTURE_1D_ARRAY = 0x8C18; - public const int GL_PROXY_TEXTURE_1D_ARRAY = 0x8C19; - public const int GL_TEXTURE_2D_ARRAY = 0x8C1A; - public const int GL_PROXY_TEXTURE_2D_ARRAY = 0x8C1B; - public const int GL_TEXTURE_BINDING_1D_ARRAY = 0x8C1C; - public const int GL_TEXTURE_BINDING_2D_ARRAY = 0x8C1D; - public const int GL_R11F_G11F_B10F = 0x8C3A; - public const int GL_UNSIGNED_INT_10F_11F_11F_REV = 0x8C3B; - public const int GL_RGB9_E5 = 0x8C3D; - public const int GL_UNSIGNED_INT_5_9_9_9_REV = 0x8C3E; - public const int GL_TEXTURE_SHARED_SIZE = 0x8C3F; - public const int GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 0x8C76; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_MODE = 0x8C7F; - public const int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 0x8C80; - public const int GL_TRANSFORM_FEEDBACK_VARYINGS = 0x8C83; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_START = 0x8C84; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = 0x8C85; - public const int GL_PRIMITIVES_GENERATED = 0x8C87; - public const int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88; - public const int GL_RASTERIZER_DISCARD = 0x8C89; - public const int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 0x8C8A; - public const int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 0x8C8B; - public const int GL_INTERLEAVED_ATTRIBS = 0x8C8C; - public const int GL_SEPARATE_ATTRIBS = 0x8C8D; - public const int GL_TRANSFORM_FEEDBACK_BUFFER = 0x8C8E; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = 0x8C8F; - public const int GL_RGBA32UI = 0x8D70; - public const int GL_RGB32UI = 0x8D71; - public const int GL_RGBA16UI = 0x8D76; - public const int GL_RGB16UI = 0x8D77; - public const int GL_RGBA8UI = 0x8D7C; - public const int GL_RGB8UI = 0x8D7D; - public const int GL_RGBA32I = 0x8D82; - public const int GL_RGB32I = 0x8D83; - public const int GL_RGBA16I = 0x8D88; - public const int GL_RGB16I = 0x8D89; - public const int GL_RGBA8I = 0x8D8E; - public const int GL_RGB8I = 0x8D8F; - public const int GL_RED_INTEGER = 0x8D94; - public const int GL_GREEN_INTEGER = 0x8D95; - public const int GL_BLUE_INTEGER = 0x8D96; - public const int GL_RGB_INTEGER = 0x8D98; - public const int GL_RGBA_INTEGER = 0x8D99; - public const int GL_BGR_INTEGER = 0x8D9A; - public const int GL_BGRA_INTEGER = 0x8D9B; - public const int GL_SAMPLER_1D_ARRAY = 0x8DC0; - public const int GL_SAMPLER_2D_ARRAY = 0x8DC1; - public const int GL_SAMPLER_1D_ARRAY_SHADOW = 0x8DC3; - public const int GL_SAMPLER_2D_ARRAY_SHADOW = 0x8DC4; - public const int GL_SAMPLER_CUBE_SHADOW = 0x8DC5; - public const int GL_UNSIGNED_INT_VEC2 = 0x8DC6; - public const int GL_UNSIGNED_INT_VEC3 = 0x8DC7; - public const int GL_UNSIGNED_INT_VEC4 = 0x8DC8; - public const int GL_INT_SAMPLER_1D = 0x8DC9; - public const int GL_INT_SAMPLER_2D = 0x8DCA; - public const int GL_INT_SAMPLER_3D = 0x8DCB; - public const int GL_INT_SAMPLER_CUBE = 0x8DCC; - public const int GL_INT_SAMPLER_1D_ARRAY = 0x8DCE; - public const int GL_INT_SAMPLER_2D_ARRAY = 0x8DCF; - public const int GL_UNSIGNED_INT_SAMPLER_1D = 0x8DD1; - public const int GL_UNSIGNED_INT_SAMPLER_2D = 0x8DD2; - public const int GL_UNSIGNED_INT_SAMPLER_3D = 0x8DD3; - public const int GL_UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4; - public const int GL_UNSIGNED_INT_SAMPLER_1D_ARRAY = 0x8DD6; - public const int GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7; - public const int GL_QUERY_WAIT = 0x8E13; - public const int GL_QUERY_NO_WAIT = 0x8E14; - public const int GL_QUERY_BY_REGION_WAIT = 0x8E15; - public const int GL_QUERY_BY_REGION_NO_WAIT = 0x8E16; - public const int GL_BUFFER_ACCESS_FLAGS = 0x911F; - public const int GL_BUFFER_MAP_LENGTH = 0x9120; - public const int GL_BUFFER_MAP_OFFSET = 0x9121; - public const int GL_DEPTH_COMPONENT32F = 0x8CAC; - public const int GL_DEPTH32F_STENCIL8 = 0x8CAD; - public const int GL_FLOAT_32_UNSIGNED_INT_24_8_REV = 0x8DAD; - public const int GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 0x8210; - public const int GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 0x8211; - public const int GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = 0x8212; - public const int GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 0x8213; - public const int GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 0x8214; - public const int GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 0x8215; - public const int GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 0x8216; - public const int GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 0x8217; - public const int GL_FRAMEBUFFER_DEFAULT = 0x8218; - public const int GL_FRAMEBUFFER_UNDEFINED = 0x8219; - public const int GL_DEPTH_STENCIL_ATTACHMENT = 0x821A; - public const int GL_MAX_RENDERBUFFER_SIZE = 0x84E8; - public const int GL_DEPTH_STENCIL = 0x84F9; - public const int GL_UNSIGNED_INT_24_8 = 0x84FA; - public const int GL_DEPTH24_STENCIL8 = 0x88F0; - public const int GL_TEXTURE_STENCIL_SIZE = 0x88F1; - public const int GL_TEXTURE_RED_TYPE = 0x8C10; - public const int GL_TEXTURE_GREEN_TYPE = 0x8C11; - public const int GL_TEXTURE_BLUE_TYPE = 0x8C12; - public const int GL_TEXTURE_ALPHA_TYPE = 0x8C13; - public const int GL_TEXTURE_DEPTH_TYPE = 0x8C16; - public const int GL_UNSIGNED_NORMALIZED = 0x8C17; - public const int GL_FRAMEBUFFER_BINDING = 0x8CA6; - public const int GL_DRAW_FRAMEBUFFER_BINDING = 0x8CA6; - public const int GL_RENDERBUFFER_BINDING = 0x8CA7; - public const int GL_READ_FRAMEBUFFER = 0x8CA8; - public const int GL_DRAW_FRAMEBUFFER = 0x8CA9; - public const int GL_READ_FRAMEBUFFER_BINDING = 0x8CAA; - public const int GL_RENDERBUFFER_SAMPLES = 0x8CAB; - public const int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0; - public const int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1; - public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2; - public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3; - public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4; - public const int GL_FRAMEBUFFER_COMPLETE = 0x8CD5; - public const int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6; - public const int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7; - public const int GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER = 0x8CDB; - public const int GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER = 0x8CDC; - public const int GL_FRAMEBUFFER_UNSUPPORTED = 0x8CDD; - public const int GL_MAX_COLOR_ATTACHMENTS = 0x8CDF; - public const int GL_COLOR_ATTACHMENT0 = 0x8CE0; - public const int GL_COLOR_ATTACHMENT1 = 0x8CE1; - public const int GL_COLOR_ATTACHMENT2 = 0x8CE2; - public const int GL_COLOR_ATTACHMENT3 = 0x8CE3; - public const int GL_COLOR_ATTACHMENT4 = 0x8CE4; - public const int GL_COLOR_ATTACHMENT5 = 0x8CE5; - public const int GL_COLOR_ATTACHMENT6 = 0x8CE6; - public const int GL_COLOR_ATTACHMENT7 = 0x8CE7; - public const int GL_COLOR_ATTACHMENT8 = 0x8CE8; - public const int GL_COLOR_ATTACHMENT9 = 0x8CE9; - public const int GL_COLOR_ATTACHMENT10 = 0x8CEA; - public const int GL_COLOR_ATTACHMENT11 = 0x8CEB; - public const int GL_COLOR_ATTACHMENT12 = 0x8CEC; - public const int GL_COLOR_ATTACHMENT13 = 0x8CED; - public const int GL_COLOR_ATTACHMENT14 = 0x8CEE; - public const int GL_COLOR_ATTACHMENT15 = 0x8CEF; - public const int GL_COLOR_ATTACHMENT16 = 0x8CF0; - public const int GL_COLOR_ATTACHMENT17 = 0x8CF1; - public const int GL_COLOR_ATTACHMENT18 = 0x8CF2; - public const int GL_COLOR_ATTACHMENT19 = 0x8CF3; - public const int GL_COLOR_ATTACHMENT20 = 0x8CF4; - public const int GL_COLOR_ATTACHMENT21 = 0x8CF5; - public const int GL_COLOR_ATTACHMENT22 = 0x8CF6; - public const int GL_COLOR_ATTACHMENT23 = 0x8CF7; - public const int GL_COLOR_ATTACHMENT24 = 0x8CF8; - public const int GL_COLOR_ATTACHMENT25 = 0x8CF9; - public const int GL_COLOR_ATTACHMENT26 = 0x8CFA; - public const int GL_COLOR_ATTACHMENT27 = 0x8CFB; - public const int GL_COLOR_ATTACHMENT28 = 0x8CFC; - public const int GL_COLOR_ATTACHMENT29 = 0x8CFD; - public const int GL_COLOR_ATTACHMENT30 = 0x8CFE; - public const int GL_COLOR_ATTACHMENT31 = 0x8CFF; - public const int GL_DEPTH_ATTACHMENT = 0x8D00; - public const int GL_STENCIL_ATTACHMENT = 0x8D20; - public const int GL_FRAMEBUFFER = 0x8D40; - public const int GL_RENDERBUFFER = 0x8D41; - public const int GL_RENDERBUFFER_WIDTH = 0x8D42; - public const int GL_RENDERBUFFER_HEIGHT = 0x8D43; - public const int GL_RENDERBUFFER_INTERNAL_FORMAT = 0x8D44; - public const int GL_STENCIL_INDEX1 = 0x8D46; - public const int GL_STENCIL_INDEX4 = 0x8D47; - public const int GL_STENCIL_INDEX8 = 0x8D48; - public const int GL_STENCIL_INDEX16 = 0x8D49; - public const int GL_RENDERBUFFER_RED_SIZE = 0x8D50; - public const int GL_RENDERBUFFER_GREEN_SIZE = 0x8D51; - public const int GL_RENDERBUFFER_BLUE_SIZE = 0x8D52; - public const int GL_RENDERBUFFER_ALPHA_SIZE = 0x8D53; - public const int GL_RENDERBUFFER_DEPTH_SIZE = 0x8D54; - public const int GL_RENDERBUFFER_STENCIL_SIZE = 0x8D55; - public const int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56; - public const int GL_MAX_SAMPLES = 0x8D57; - public const int GL_INDEX = 0x8222; - public const int GL_TEXTURE_LUMINANCE_TYPE = 0x8C14; - public const int GL_TEXTURE_INTENSITY_TYPE = 0x8C15; - public const int GL_FRAMEBUFFER_SRGB = 0x8DB9; - public const int GL_HALF_FLOAT = 0x140B; - public const int GL_MAP_READ_BIT = 0x0001; - public const int GL_MAP_WRITE_BIT = 0x0002; - public const int GL_MAP_INVALIDATE_RANGE_BIT = 0x0004; - public const int GL_MAP_INVALIDATE_BUFFER_BIT = 0x0008; - public const int GL_MAP_FLUSH_EXPLICIT_BIT = 0x0010; - public const int GL_MAP_UNSYNCHRONIZED_BIT = 0x0020; - public const int GL_COMPRESSED_RED_RGTC1 = 0x8DBB; - public const int GL_COMPRESSED_SIGNED_RED_RGTC1 = 0x8DBC; - public const int GL_COMPRESSED_RG_RGTC2 = 0x8DBD; - public const int GL_COMPRESSED_SIGNED_RG_RGTC2 = 0x8DBE; - public const int GL_RG = 0x8227; - public const int GL_RG_INTEGER = 0x8228; - public const int GL_R8 = 0x8229; - public const int GL_R16 = 0x822A; - public const int GL_RG8 = 0x822B; - public const int GL_RG16 = 0x822C; - public const int GL_R16F = 0x822D; - public const int GL_R32F = 0x822E; - public const int GL_RG16F = 0x822F; - public const int GL_RG32F = 0x8230; - public const int GL_R8I = 0x8231; - public const int GL_R8UI = 0x8232; - public const int GL_R16I = 0x8233; - public const int GL_R16UI = 0x8234; - public const int GL_R32I = 0x8235; - public const int GL_R32UI = 0x8236; - public const int GL_RG8I = 0x8237; - public const int GL_RG8UI = 0x8238; - public const int GL_RG16I = 0x8239; - public const int GL_RG16UI = 0x823A; - public const int GL_RG32I = 0x823B; - public const int GL_RG32UI = 0x823C; - public const int GL_VERTEX_ARRAY_BINDING = 0x85B5; - public const int GL_CLAMP_VERTEX_COLOR = 0x891A; - public const int GL_CLAMP_FRAGMENT_COLOR = 0x891B; - public const int GL_ALPHA_INTEGER = 0x8D97; - public const int GL_VERSION_3_1 = 1; - public const int GL_SAMPLER_2D_RECT = 0x8B63; - public const int GL_SAMPLER_2D_RECT_SHADOW = 0x8B64; - public const int GL_SAMPLER_BUFFER = 0x8DC2; - public const int GL_INT_SAMPLER_2D_RECT = 0x8DCD; - public const int GL_INT_SAMPLER_BUFFER = 0x8DD0; - public const int GL_UNSIGNED_INT_SAMPLER_2D_RECT = 0x8DD5; - public const int GL_UNSIGNED_INT_SAMPLER_BUFFER = 0x8DD8; - public const int GL_TEXTURE_BUFFER = 0x8C2A; - public const int GL_MAX_TEXTURE_BUFFER_SIZE = 0x8C2B; - public const int GL_TEXTURE_BINDING_BUFFER = 0x8C2C; - public const int GL_TEXTURE_BUFFER_DATA_STORE_BINDING = 0x8C2D; - public const int GL_TEXTURE_RECTANGLE = 0x84F5; - public const int GL_TEXTURE_BINDING_RECTANGLE = 0x84F6; - public const int GL_PROXY_TEXTURE_RECTANGLE = 0x84F7; - public const int GL_MAX_RECTANGLE_TEXTURE_SIZE = 0x84F8; - public const int GL_R8_SNORM = 0x8F94; - public const int GL_RG8_SNORM = 0x8F95; - public const int GL_RGB8_SNORM = 0x8F96; - public const int GL_RGBA8_SNORM = 0x8F97; - public const int GL_R16_SNORM = 0x8F98; - public const int GL_RG16_SNORM = 0x8F99; - public const int GL_RGB16_SNORM = 0x8F9A; - public const int GL_RGBA16_SNORM = 0x8F9B; - public const int GL_SIGNED_NORMALIZED = 0x8F9C; - public const int GL_PRIMITIVE_RESTART = 0x8F9D; - public const int GL_PRIMITIVE_RESTART_INDEX = 0x8F9E; - public const int GL_COPY_READ_BUFFER = 0x8F36; - public const int GL_COPY_WRITE_BUFFER = 0x8F37; - public const int GL_UNIFORM_BUFFER = 0x8A11; - public const int GL_UNIFORM_BUFFER_BINDING = 0x8A28; - public const int GL_UNIFORM_BUFFER_START = 0x8A29; - public const int GL_UNIFORM_BUFFER_SIZE = 0x8A2A; - public const int GL_MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B; - public const int GL_MAX_GEOMETRY_UNIFORM_BLOCKS = 0x8A2C; - public const int GL_MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D; - public const int GL_MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E; - public const int GL_MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F; - public const int GL_MAX_UNIFORM_BLOCK_SIZE = 0x8A30; - public const int GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31; - public const int GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 0x8A32; - public const int GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33; - public const int GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34; - public const int GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 0x8A35; - public const int GL_ACTIVE_UNIFORM_BLOCKS = 0x8A36; - public const int GL_UNIFORM_TYPE = 0x8A37; - public const int GL_UNIFORM_SIZE = 0x8A38; - public const int GL_UNIFORM_NAME_LENGTH = 0x8A39; - public const int GL_UNIFORM_BLOCK_INDEX = 0x8A3A; - public const int GL_UNIFORM_OFFSET = 0x8A3B; - public const int GL_UNIFORM_ARRAY_STRIDE = 0x8A3C; - public const int GL_UNIFORM_MATRIX_STRIDE = 0x8A3D; - public const int GL_UNIFORM_IS_ROW_MAJOR = 0x8A3E; - public const int GL_UNIFORM_BLOCK_BINDING = 0x8A3F; - public const int GL_UNIFORM_BLOCK_DATA_SIZE = 0x8A40; - public const int GL_UNIFORM_BLOCK_NAME_LENGTH = 0x8A41; - public const int GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42; - public const int GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43; - public const int GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44; - public const int GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER = 0x8A45; - public const int GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46; - public const int GL_INVALID_INDEX = -1; - public const int GL_VERSION_3_2 = 1; - public const int GL_CONTEXT_CORE_PROFILE_BIT = 0x00000001; - public const int GL_CONTEXT_COMPATIBILITY_PROFILE_BIT = 0x00000002; - public const int GL_LINES_ADJACENCY = 0x000A; - public const int GL_LINE_STRIP_ADJACENCY = 0x000B; - public const int GL_TRIANGLES_ADJACENCY = 0x000C; - public const int GL_TRIANGLE_STRIP_ADJACENCY = 0x000D; - public const int GL_PROGRAM_POINT_SIZE = 0x8642; - public const int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = 0x8C29; - public const int GL_FRAMEBUFFER_ATTACHMENT_LAYERED = 0x8DA7; - public const int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = 0x8DA8; - public const int GL_GEOMETRY_SHADER = 0x8DD9; - public const int GL_GEOMETRY_VERTICES_OUT = 0x8916; - public const int GL_GEOMETRY_INPUT_TYPE = 0x8917; - public const int GL_GEOMETRY_OUTPUT_TYPE = 0x8918; - public const int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS = 0x8DDF; - public const int GL_MAX_GEOMETRY_OUTPUT_VERTICES = 0x8DE0; - public const int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = 0x8DE1; - public const int GL_MAX_VERTEX_OUTPUT_COMPONENTS = 0x9122; - public const int GL_MAX_GEOMETRY_INPUT_COMPONENTS = 0x9123; - public const int GL_MAX_GEOMETRY_OUTPUT_COMPONENTS = 0x9124; - public const int GL_MAX_FRAGMENT_INPUT_COMPONENTS = 0x9125; - public const int GL_CONTEXT_PROFILE_MASK = 0x9126; - public const int GL_DEPTH_CLAMP = 0x864F; - public const int GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION = 0x8E4C; - public const int GL_FIRST_VERTEX_CONVENTION = 0x8E4D; - public const int GL_LAST_VERTEX_CONVENTION = 0x8E4E; - public const int GL_PROVOKING_VERTEX = 0x8E4F; - public const int GL_TEXTURE_CUBE_MAP_SEAMLESS = 0x884F; - public const int GL_MAX_SERVER_WAIT_TIMEOUT = 0x9111; - public const int GL_OBJECT_TYPE = 0x9112; - public const int GL_SYNC_CONDITION = 0x9113; - public const int GL_SYNC_STATUS = 0x9114; - public const int GL_SYNC_FLAGS = 0x9115; - public const int GL_SYNC_FENCE = 0x9116; - public const int GL_SYNC_GPU_COMMANDS_COMPLETE = 0x9117; - public const int GL_UNSIGNALED = 0x9118; - public const int GL_SIGNALED = 0x9119; - public const int GL_ALREADY_SIGNALED = 0x911A; - public const int GL_TIMEOUT_EXPIRED = 0x911B; - public const int GL_CONDITION_SATISFIED = 0x911C; - public const int GL_WAIT_FAILED = 0x911D; - public const int GL_SYNC_FLUSH_COMMANDS_BIT = 0x00000001; - public const int GL_SAMPLE_POSITION = 0x8E50; - public const int GL_SAMPLE_MASK = 0x8E51; - public const int GL_SAMPLE_MASK_VALUE = 0x8E52; - public const int GL_MAX_SAMPLE_MASK_WORDS = 0x8E59; - public const int GL_TEXTURE_2D_MULTISAMPLE = 0x9100; - public const int GL_PROXY_TEXTURE_2D_MULTISAMPLE = 0x9101; - public const int GL_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9102; - public const int GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9103; - public const int GL_TEXTURE_BINDING_2D_MULTISAMPLE = 0x9104; - public const int GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = 0x9105; - public const int GL_TEXTURE_SAMPLES = 0x9106; - public const int GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = 0x9107; - public const int GL_SAMPLER_2D_MULTISAMPLE = 0x9108; - public const int GL_INT_SAMPLER_2D_MULTISAMPLE = 0x9109; - public const int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = 0x910A; - public const int GL_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910B; - public const int GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910C; - public const int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910D; - public const int GL_MAX_COLOR_TEXTURE_SAMPLES = 0x910E; - public const int GL_MAX_DEPTH_TEXTURE_SAMPLES = 0x910F; - public const int GL_MAX_INTEGER_SAMPLES = 0x9110; - public const int GL_VERSION_3_3 = 1; - public const int GL_VERTEX_ATTRIB_ARRAY_DIVISOR = 0x88FE; - public const int GL_SRC1_COLOR = 0x88F9; - public const int GL_ONE_MINUS_SRC1_COLOR = 0x88FA; - public const int GL_ONE_MINUS_SRC1_ALPHA = 0x88FB; - public const int GL_MAX_DUAL_SOURCE_DRAW_BUFFERS = 0x88FC; - public const int GL_ANY_SAMPLES_PASSED = 0x8C2F; - public const int GL_SAMPLER_BINDING = 0x8919; - public const int GL_RGB10_A2UI = 0x906F; - public const int GL_TEXTURE_SWIZZLE_R = 0x8E42; - public const int GL_TEXTURE_SWIZZLE_G = 0x8E43; - public const int GL_TEXTURE_SWIZZLE_B = 0x8E44; - public const int GL_TEXTURE_SWIZZLE_A = 0x8E45; - public const int GL_TEXTURE_SWIZZLE_RGBA = 0x8E46; - public const int GL_TIME_ELAPSED = 0x88BF; - public const int GL_TIMESTAMP = 0x8E28; - public const int GL_INT_2_10_10_10_REV = 0x8D9F; - public const int GL_VERSION_4_0 = 1; - public const int GL_SAMPLE_SHADING = 0x8C36; - public const int GL_MIN_SAMPLE_SHADING_VALUE = 0x8C37; - public const int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5E; - public const int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5F; - public const int GL_TEXTURE_CUBE_MAP_ARRAY = 0x9009; - public const int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY = 0x900A; - public const int GL_PROXY_TEXTURE_CUBE_MAP_ARRAY = 0x900B; - public const int GL_SAMPLER_CUBE_MAP_ARRAY = 0x900C; - public const int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW = 0x900D; - public const int GL_INT_SAMPLER_CUBE_MAP_ARRAY = 0x900E; - public const int GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = 0x900F; - public const int GL_DRAW_INDIRECT_BUFFER = 0x8F3F; - public const int GL_DRAW_INDIRECT_BUFFER_BINDING = 0x8F43; - public const int GL_GEOMETRY_SHADER_INVOCATIONS = 0x887F; - public const int GL_MAX_GEOMETRY_SHADER_INVOCATIONS = 0x8E5A; - public const int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET = 0x8E5B; - public const int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET = 0x8E5C; - public const int GL_FRAGMENT_INTERPOLATION_OFFSET_BITS = 0x8E5D; - public const int GL_MAX_VERTEX_STREAMS = 0x8E71; - public const int GL_DOUBLE_VEC2 = 0x8FFC; - public const int GL_DOUBLE_VEC3 = 0x8FFD; - public const int GL_DOUBLE_VEC4 = 0x8FFE; - public const int GL_DOUBLE_MAT2 = 0x8F46; - public const int GL_DOUBLE_MAT3 = 0x8F47; - public const int GL_DOUBLE_MAT4 = 0x8F48; - public const int GL_DOUBLE_MAT2x3 = 0x8F49; - public const int GL_DOUBLE_MAT2x4 = 0x8F4A; - public const int GL_DOUBLE_MAT3x2 = 0x8F4B; - public const int GL_DOUBLE_MAT3x4 = 0x8F4C; - public const int GL_DOUBLE_MAT4x2 = 0x8F4D; - public const int GL_DOUBLE_MAT4x3 = 0x8F4E; - public const int GL_ACTIVE_SUBROUTINES = 0x8DE5; - public const int GL_ACTIVE_SUBROUTINE_UNIFORMS = 0x8DE6; - public const int GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS = 0x8E47; - public const int GL_ACTIVE_SUBROUTINE_MAX_LENGTH = 0x8E48; - public const int GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH = 0x8E49; - public const int GL_MAX_SUBROUTINES = 0x8DE7; - public const int GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS = 0x8DE8; - public const int GL_NUM_COMPATIBLE_SUBROUTINES = 0x8E4A; - public const int GL_COMPATIBLE_SUBROUTINES = 0x8E4B; - public const int GL_PATCHES = 0x000E; - public const int GL_PATCH_VERTICES = 0x8E72; - public const int GL_PATCH_DEFAULT_INNER_LEVEL = 0x8E73; - public const int GL_PATCH_DEFAULT_OUTER_LEVEL = 0x8E74; - public const int GL_TESS_CONTROL_OUTPUT_VERTICES = 0x8E75; - public const int GL_TESS_GEN_MODE = 0x8E76; - public const int GL_TESS_GEN_SPACING = 0x8E77; - public const int GL_TESS_GEN_VERTEX_ORDER = 0x8E78; - public const int GL_TESS_GEN_POINT_MODE = 0x8E79; - public const int GL_ISOLINES = 0x8E7A; - public const int GL_FRACTIONAL_ODD = 0x8E7B; - public const int GL_FRACTIONAL_EVEN = 0x8E7C; - public const int GL_MAX_PATCH_VERTICES = 0x8E7D; - public const int GL_MAX_TESS_GEN_LEVEL = 0x8E7E; - public const int GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E7F; - public const int GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E80; - public const int GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS = 0x8E81; - public const int GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS = 0x8E82; - public const int GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS = 0x8E83; - public const int GL_MAX_TESS_PATCH_COMPONENTS = 0x8E84; - public const int GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS = 0x8E85; - public const int GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS = 0x8E86; - public const int GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS = 0x8E89; - public const int GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS = 0x8E8A; - public const int GL_MAX_TESS_CONTROL_INPUT_COMPONENTS = 0x886C; - public const int GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS = 0x886D; - public const int GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E1E; - public const int GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E1F; - public const int GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER = 0x84F0; - public const int GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x84F1; - public const int GL_TESS_EVALUATION_SHADER = 0x8E87; - public const int GL_TESS_CONTROL_SHADER = 0x8E88; - public const int GL_TRANSFORM_FEEDBACK = 0x8E22; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED = 0x8E23; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE = 0x8E24; - public const int GL_TRANSFORM_FEEDBACK_BINDING = 0x8E25; - public const int GL_MAX_TRANSFORM_FEEDBACK_BUFFERS = 0x8E70; - public const int GL_VERSION_4_1 = 1; - public const int GL_FIXED = 0x140C; - public const int GL_IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A; - public const int GL_IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B; - public const int GL_LOW_FLOAT = 0x8DF0; - public const int GL_MEDIUM_FLOAT = 0x8DF1; - public const int GL_HIGH_FLOAT = 0x8DF2; - public const int GL_LOW_INT = 0x8DF3; - public const int GL_MEDIUM_INT = 0x8DF4; - public const int GL_HIGH_INT = 0x8DF5; - public const int GL_SHADER_COMPILER = 0x8DFA; - public const int GL_SHADER_BINARY_FORMATS = 0x8DF8; - public const int GL_NUM_SHADER_BINARY_FORMATS = 0x8DF9; - public const int GL_MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB; - public const int GL_MAX_VARYING_VECTORS = 0x8DFC; - public const int GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD; - public const int GL_RGB565 = 0x8D62; - public const int GL_PROGRAM_BINARY_RETRIEVABLE_HINT = 0x8257; - public const int GL_PROGRAM_BINARY_LENGTH = 0x8741; - public const int GL_NUM_PROGRAM_BINARY_FORMATS = 0x87FE; - public const int GL_PROGRAM_BINARY_FORMATS = 0x87FF; - public const int GL_VERTEX_SHADER_BIT = 0x00000001; - public const int GL_FRAGMENT_SHADER_BIT = 0x00000002; - public const int GL_GEOMETRY_SHADER_BIT = 0x00000004; - public const int GL_TESS_CONTROL_SHADER_BIT = 0x00000008; - public const int GL_TESS_EVALUATION_SHADER_BIT = 0x00000010; - public const int GL_ALL_SHADER_BITS = -1; - public const int GL_PROGRAM_SEPARABLE = 0x8258; - public const int GL_ACTIVE_PROGRAM = 0x8259; - public const int GL_PROGRAM_PIPELINE_BINDING = 0x825A; - public const int GL_MAX_VIEWPORTS = 0x825B; - public const int GL_VIEWPORT_SUBPIXEL_BITS = 0x825C; - public const int GL_VIEWPORT_BOUNDS_RANGE = 0x825D; - public const int GL_LAYER_PROVOKING_VERTEX = 0x825E; - public const int GL_VIEWPORT_INDEX_PROVOKING_VERTEX = 0x825F; - public const int GL_UNDEFINED_VERTEX = 0x8260; - public const int GL_VERSION_4_2 = 1; - public const int GL_COPY_READ_BUFFER_BINDING = 0x8F36; - public const int GL_COPY_WRITE_BUFFER_BINDING = 0x8F37; - public const int GL_TRANSFORM_FEEDBACK_ACTIVE = 0x8E24; - public const int GL_TRANSFORM_FEEDBACK_PAUSED = 0x8E23; - public const int GL_UNPACK_COMPRESSED_BLOCK_WIDTH = 0x9127; - public const int GL_UNPACK_COMPRESSED_BLOCK_HEIGHT = 0x9128; - public const int GL_UNPACK_COMPRESSED_BLOCK_DEPTH = 0x9129; - public const int GL_UNPACK_COMPRESSED_BLOCK_SIZE = 0x912A; - public const int GL_PACK_COMPRESSED_BLOCK_WIDTH = 0x912B; - public const int GL_PACK_COMPRESSED_BLOCK_HEIGHT = 0x912C; - public const int GL_PACK_COMPRESSED_BLOCK_DEPTH = 0x912D; - public const int GL_PACK_COMPRESSED_BLOCK_SIZE = 0x912E; - public const int GL_NUM_SAMPLE_COUNTS = 0x9380; - public const int GL_MIN_MAP_BUFFER_ALIGNMENT = 0x90BC; - public const int GL_ATOMIC_COUNTER_BUFFER = 0x92C0; - public const int GL_ATOMIC_COUNTER_BUFFER_BINDING = 0x92C1; - public const int GL_ATOMIC_COUNTER_BUFFER_START = 0x92C2; - public const int GL_ATOMIC_COUNTER_BUFFER_SIZE = 0x92C3; - public const int GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE = 0x92C4; - public const int GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS = 0x92C5; - public const int GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES = 0x92C6; - public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER = 0x92C7; - public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER = 0x92C8; - public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x92C9; - public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER = 0x92CA; - public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER = 0x92CB; - public const int GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS = 0x92CC; - public const int GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS = 0x92CD; - public const int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS = 0x92CE; - public const int GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS = 0x92CF; - public const int GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS = 0x92D0; - public const int GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS = 0x92D1; - public const int GL_MAX_VERTEX_ATOMIC_COUNTERS = 0x92D2; - public const int GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS = 0x92D3; - public const int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS = 0x92D4; - public const int GL_MAX_GEOMETRY_ATOMIC_COUNTERS = 0x92D5; - public const int GL_MAX_FRAGMENT_ATOMIC_COUNTERS = 0x92D6; - public const int GL_MAX_COMBINED_ATOMIC_COUNTERS = 0x92D7; - public const int GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE = 0x92D8; - public const int GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = 0x92DC; - public const int GL_ACTIVE_ATOMIC_COUNTER_BUFFERS = 0x92D9; - public const int GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX = 0x92DA; - public const int GL_UNSIGNED_INT_ATOMIC_COUNTER = 0x92DB; - public const int GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT = 0x00000001; - public const int GL_ELEMENT_ARRAY_BARRIER_BIT = 0x00000002; - public const int GL_UNIFORM_BARRIER_BIT = 0x00000004; - public const int GL_TEXTURE_FETCH_BARRIER_BIT = 0x00000008; - public const int GL_SHADER_IMAGE_ACCESS_BARRIER_BIT = 0x00000020; - public const int GL_COMMAND_BARRIER_BIT = 0x00000040; - public const int GL_PIXEL_BUFFER_BARRIER_BIT = 0x00000080; - public const int GL_TEXTURE_UPDATE_BARRIER_BIT = 0x00000100; - public const int GL_BUFFER_UPDATE_BARRIER_BIT = 0x00000200; - public const int GL_FRAMEBUFFER_BARRIER_BIT = 0x00000400; - public const int GL_TRANSFORM_FEEDBACK_BARRIER_BIT = 0x00000800; - public const int GL_ATOMIC_COUNTER_BARRIER_BIT = 0x00001000; - public const int GL_ALL_BARRIER_BITS = -1; - public const int GL_MAX_IMAGE_UNITS = 0x8F38; - public const int GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS = 0x8F39; - public const int GL_IMAGE_BINDING_NAME = 0x8F3A; - public const int GL_IMAGE_BINDING_LEVEL = 0x8F3B; - public const int GL_IMAGE_BINDING_LAYERED = 0x8F3C; - public const int GL_IMAGE_BINDING_LAYER = 0x8F3D; - public const int GL_IMAGE_BINDING_ACCESS = 0x8F3E; - public const int GL_IMAGE_1D = 0x904C; - public const int GL_IMAGE_2D = 0x904D; - public const int GL_IMAGE_3D = 0x904E; - public const int GL_IMAGE_2D_RECT = 0x904F; - public const int GL_IMAGE_CUBE = 0x9050; - public const int GL_IMAGE_BUFFER = 0x9051; - public const int GL_IMAGE_1D_ARRAY = 0x9052; - public const int GL_IMAGE_2D_ARRAY = 0x9053; - public const int GL_IMAGE_CUBE_MAP_ARRAY = 0x9054; - public const int GL_IMAGE_2D_MULTISAMPLE = 0x9055; - public const int GL_IMAGE_2D_MULTISAMPLE_ARRAY = 0x9056; - public const int GL_INT_IMAGE_1D = 0x9057; - public const int GL_INT_IMAGE_2D = 0x9058; - public const int GL_INT_IMAGE_3D = 0x9059; - public const int GL_INT_IMAGE_2D_RECT = 0x905A; - public const int GL_INT_IMAGE_CUBE = 0x905B; - public const int GL_INT_IMAGE_BUFFER = 0x905C; - public const int GL_INT_IMAGE_1D_ARRAY = 0x905D; - public const int GL_INT_IMAGE_2D_ARRAY = 0x905E; - public const int GL_INT_IMAGE_CUBE_MAP_ARRAY = 0x905F; - public const int GL_INT_IMAGE_2D_MULTISAMPLE = 0x9060; - public const int GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY = 0x9061; - public const int GL_UNSIGNED_INT_IMAGE_1D = 0x9062; - public const int GL_UNSIGNED_INT_IMAGE_2D = 0x9063; - public const int GL_UNSIGNED_INT_IMAGE_3D = 0x9064; - public const int GL_UNSIGNED_INT_IMAGE_2D_RECT = 0x9065; - public const int GL_UNSIGNED_INT_IMAGE_CUBE = 0x9066; - public const int GL_UNSIGNED_INT_IMAGE_BUFFER = 0x9067; - public const int GL_UNSIGNED_INT_IMAGE_1D_ARRAY = 0x9068; - public const int GL_UNSIGNED_INT_IMAGE_2D_ARRAY = 0x9069; - public const int GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY = 0x906A; - public const int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE = 0x906B; - public const int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY = 0x906C; - public const int GL_MAX_IMAGE_SAMPLES = 0x906D; - public const int GL_IMAGE_BINDING_FORMAT = 0x906E; - public const int GL_IMAGE_FORMAT_COMPATIBILITY_TYPE = 0x90C7; - public const int GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE = 0x90C8; - public const int GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS = 0x90C9; - public const int GL_MAX_VERTEX_IMAGE_UNIFORMS = 0x90CA; - public const int GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS = 0x90CB; - public const int GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS = 0x90CC; - public const int GL_MAX_GEOMETRY_IMAGE_UNIFORMS = 0x90CD; - public const int GL_MAX_FRAGMENT_IMAGE_UNIFORMS = 0x90CE; - public const int GL_MAX_COMBINED_IMAGE_UNIFORMS = 0x90CF; - public const int GL_COMPRESSED_RGBA_BPTC_UNORM = 0x8E8C; - public const int GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM = 0x8E8D; - public const int GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT = 0x8E8E; - public const int GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT = 0x8E8F; - public const int GL_TEXTURE_IMMUTABLE_FORMAT = 0x912F; - public const int GL_VERSION_4_3 = 1; - public const int GL_NUM_SHADING_LANGUAGE_VERSIONS = 0x82E9; - public const int GL_VERTEX_ATTRIB_ARRAY_LONG = 0x874E; - public const int GL_COMPRESSED_RGB8_ETC2 = 0x9274; - public const int GL_COMPRESSED_SRGB8_ETC2 = 0x9275; - public const int GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9276; - public const int GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9277; - public const int GL_COMPRESSED_RGBA8_ETC2_EAC = 0x9278; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 0x9279; - public const int GL_COMPRESSED_R11_EAC = 0x9270; - public const int GL_COMPRESSED_SIGNED_R11_EAC = 0x9271; - public const int GL_COMPRESSED_RG11_EAC = 0x9272; - public const int GL_COMPRESSED_SIGNED_RG11_EAC = 0x9273; - public const int GL_PRIMITIVE_RESTART_FIXED_INDEX = 0x8D69; - public const int GL_ANY_SAMPLES_PASSED_CONSERVATIVE = 0x8D6A; - public const int GL_MAX_ELEMENT_INDEX = 0x8D6B; - public const int GL_COMPUTE_SHADER = 0x91B9; - public const int GL_MAX_COMPUTE_UNIFORM_BLOCKS = 0x91BB; - public const int GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS = 0x91BC; - public const int GL_MAX_COMPUTE_IMAGE_UNIFORMS = 0x91BD; - public const int GL_MAX_COMPUTE_SHARED_MEMORY_SIZE = 0x8262; - public const int GL_MAX_COMPUTE_UNIFORM_COMPONENTS = 0x8263; - public const int GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS = 0x8264; - public const int GL_MAX_COMPUTE_ATOMIC_COUNTERS = 0x8265; - public const int GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS = 0x8266; - public const int GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS = 0x90EB; - public const int GL_MAX_COMPUTE_WORK_GROUP_COUNT = 0x91BE; - public const int GL_MAX_COMPUTE_WORK_GROUP_SIZE = 0x91BF; - public const int GL_COMPUTE_WORK_GROUP_SIZE = 0x8267; - public const int GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER = 0x90EC; - public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER = 0x90ED; - public const int GL_DISPATCH_INDIRECT_BUFFER = 0x90EE; - public const int GL_DISPATCH_INDIRECT_BUFFER_BINDING = 0x90EF; - public const int GL_COMPUTE_SHADER_BIT = 0x00000020; - public const int GL_DEBUG_OUTPUT_SYNCHRONOUS = 0x8242; - public const int GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = 0x8243; - public const int GL_DEBUG_CALLBACK_FUNCTION = 0x8244; - public const int GL_DEBUG_CALLBACK_USER_PARAM = 0x8245; - public const int GL_DEBUG_SOURCE_API = 0x8246; - public const int GL_DEBUG_SOURCE_WINDOW_SYSTEM = 0x8247; - public const int GL_DEBUG_SOURCE_SHADER_COMPILER = 0x8248; - public const int GL_DEBUG_SOURCE_THIRD_PARTY = 0x8249; - public const int GL_DEBUG_SOURCE_APPLICATION = 0x824A; - public const int GL_DEBUG_SOURCE_OTHER = 0x824B; - public const int GL_DEBUG_TYPE_ERROR = 0x824C; - public const int GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR = 0x824D; - public const int GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR = 0x824E; - public const int GL_DEBUG_TYPE_PORTABILITY = 0x824F; - public const int GL_DEBUG_TYPE_PERFORMANCE = 0x8250; - public const int GL_DEBUG_TYPE_OTHER = 0x8251; - public const int GL_MAX_DEBUG_MESSAGE_LENGTH = 0x9143; - public const int GL_MAX_DEBUG_LOGGED_MESSAGES = 0x9144; - public const int GL_DEBUG_LOGGED_MESSAGES = 0x9145; - public const int GL_DEBUG_SEVERITY_HIGH = 0x9146; - public const int GL_DEBUG_SEVERITY_MEDIUM = 0x9147; - public const int GL_DEBUG_SEVERITY_LOW = 0x9148; - public const int GL_DEBUG_TYPE_MARKER = 0x8268; - public const int GL_DEBUG_TYPE_PUSH_GROUP = 0x8269; - public const int GL_DEBUG_TYPE_POP_GROUP = 0x826A; - public const int GL_DEBUG_SEVERITY_NOTIFICATION = 0x826B; - public const int GL_MAX_DEBUG_GROUP_STACK_DEPTH = 0x826C; - public const int GL_DEBUG_GROUP_STACK_DEPTH = 0x826D; - public const int GL_BUFFER = 0x82E0; - public const int GL_SHADER = 0x82E1; - public const int GL_PROGRAM = 0x82E2; - public const int GL_QUERY = 0x82E3; - public const int GL_PROGRAM_PIPELINE = 0x82E4; - public const int GL_SAMPLER = 0x82E6; - public const int GL_MAX_LABEL_LENGTH = 0x82E8; - public const int GL_DEBUG_OUTPUT = 0x92E0; - public const int GL_CONTEXT_FLAG_DEBUG_BIT = 0x00000002; - public const int GL_MAX_UNIFORM_LOCATIONS = 0x826E; - public const int GL_FRAMEBUFFER_DEFAULT_WIDTH = 0x9310; - public const int GL_FRAMEBUFFER_DEFAULT_HEIGHT = 0x9311; - public const int GL_FRAMEBUFFER_DEFAULT_LAYERS = 0x9312; - public const int GL_FRAMEBUFFER_DEFAULT_SAMPLES = 0x9313; - public const int GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS = 0x9314; - public const int GL_MAX_FRAMEBUFFER_WIDTH = 0x9315; - public const int GL_MAX_FRAMEBUFFER_HEIGHT = 0x9316; - public const int GL_MAX_FRAMEBUFFER_LAYERS = 0x9317; - public const int GL_MAX_FRAMEBUFFER_SAMPLES = 0x9318; - public const int GL_INTERNALFORMAT_SUPPORTED = 0x826F; - public const int GL_INTERNALFORMAT_PREFERRED = 0x8270; - public const int GL_INTERNALFORMAT_RED_SIZE = 0x8271; - public const int GL_INTERNALFORMAT_GREEN_SIZE = 0x8272; - public const int GL_INTERNALFORMAT_BLUE_SIZE = 0x8273; - public const int GL_INTERNALFORMAT_ALPHA_SIZE = 0x8274; - public const int GL_INTERNALFORMAT_DEPTH_SIZE = 0x8275; - public const int GL_INTERNALFORMAT_STENCIL_SIZE = 0x8276; - public const int GL_INTERNALFORMAT_SHARED_SIZE = 0x8277; - public const int GL_INTERNALFORMAT_RED_TYPE = 0x8278; - public const int GL_INTERNALFORMAT_GREEN_TYPE = 0x8279; - public const int GL_INTERNALFORMAT_BLUE_TYPE = 0x827A; - public const int GL_INTERNALFORMAT_ALPHA_TYPE = 0x827B; - public const int GL_INTERNALFORMAT_DEPTH_TYPE = 0x827C; - public const int GL_INTERNALFORMAT_STENCIL_TYPE = 0x827D; - public const int GL_MAX_WIDTH = 0x827E; - public const int GL_MAX_HEIGHT = 0x827F; - public const int GL_MAX_DEPTH = 0x8280; - public const int GL_MAX_LAYERS = 0x8281; - public const int GL_MAX_COMBINED_DIMENSIONS = 0x8282; - public const int GL_COLOR_COMPONENTS = 0x8283; - public const int GL_DEPTH_COMPONENTS = 0x8284; - public const int GL_STENCIL_COMPONENTS = 0x8285; - public const int GL_COLOR_RENDERABLE = 0x8286; - public const int GL_DEPTH_RENDERABLE = 0x8287; - public const int GL_STENCIL_RENDERABLE = 0x8288; - public const int GL_FRAMEBUFFER_RENDERABLE = 0x8289; - public const int GL_FRAMEBUFFER_RENDERABLE_LAYERED = 0x828A; - public const int GL_FRAMEBUFFER_BLEND = 0x828B; - public const int GL_READ_PIXELS = 0x828C; - public const int GL_READ_PIXELS_FORMAT = 0x828D; - public const int GL_READ_PIXELS_TYPE = 0x828E; - public const int GL_TEXTURE_IMAGE_FORMAT = 0x828F; - public const int GL_TEXTURE_IMAGE_TYPE = 0x8290; - public const int GL_GET_TEXTURE_IMAGE_FORMAT = 0x8291; - public const int GL_GET_TEXTURE_IMAGE_TYPE = 0x8292; - public const int GL_MIPMAP = 0x8293; - public const int GL_MANUAL_GENERATE_MIPMAP = 0x8294; - public const int GL_AUTO_GENERATE_MIPMAP = 0x8295; - public const int GL_COLOR_ENCODING = 0x8296; - public const int GL_SRGB_READ = 0x8297; - public const int GL_SRGB_WRITE = 0x8298; - public const int GL_FILTER = 0x829A; - public const int GL_VERTEX_TEXTURE = 0x829B; - public const int GL_TESS_CONTROL_TEXTURE = 0x829C; - public const int GL_TESS_EVALUATION_TEXTURE = 0x829D; - public const int GL_GEOMETRY_TEXTURE = 0x829E; - public const int GL_FRAGMENT_TEXTURE = 0x829F; - public const int GL_COMPUTE_TEXTURE = 0x82A0; - public const int GL_TEXTURE_SHADOW = 0x82A1; - public const int GL_TEXTURE_GATHER = 0x82A2; - public const int GL_TEXTURE_GATHER_SHADOW = 0x82A3; - public const int GL_SHADER_IMAGE_LOAD = 0x82A4; - public const int GL_SHADER_IMAGE_STORE = 0x82A5; - public const int GL_SHADER_IMAGE_ATOMIC = 0x82A6; - public const int GL_IMAGE_TEXEL_SIZE = 0x82A7; - public const int GL_IMAGE_COMPATIBILITY_CLASS = 0x82A8; - public const int GL_IMAGE_PIXEL_FORMAT = 0x82A9; - public const int GL_IMAGE_PIXEL_TYPE = 0x82AA; - public const int GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST = 0x82AC; - public const int GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST = 0x82AD; - public const int GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE = 0x82AE; - public const int GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE = 0x82AF; - public const int GL_TEXTURE_COMPRESSED_BLOCK_WIDTH = 0x82B1; - public const int GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT = 0x82B2; - public const int GL_TEXTURE_COMPRESSED_BLOCK_SIZE = 0x82B3; - public const int GL_CLEAR_BUFFER = 0x82B4; - public const int GL_TEXTURE_VIEW = 0x82B5; - public const int GL_VIEW_COMPATIBILITY_CLASS = 0x82B6; - public const int GL_FULL_SUPPORT = 0x82B7; - public const int GL_CAVEAT_SUPPORT = 0x82B8; - public const int GL_IMAGE_CLASS_4_X_32 = 0x82B9; - public const int GL_IMAGE_CLASS_2_X_32 = 0x82BA; - public const int GL_IMAGE_CLASS_1_X_32 = 0x82BB; - public const int GL_IMAGE_CLASS_4_X_16 = 0x82BC; - public const int GL_IMAGE_CLASS_2_X_16 = 0x82BD; - public const int GL_IMAGE_CLASS_1_X_16 = 0x82BE; - public const int GL_IMAGE_CLASS_4_X_8 = 0x82BF; - public const int GL_IMAGE_CLASS_2_X_8 = 0x82C0; - public const int GL_IMAGE_CLASS_1_X_8 = 0x82C1; - public const int GL_IMAGE_CLASS_11_11_10 = 0x82C2; - public const int GL_IMAGE_CLASS_10_10_10_2 = 0x82C3; - public const int GL_VIEW_CLASS_128_BITS = 0x82C4; - public const int GL_VIEW_CLASS_96_BITS = 0x82C5; - public const int GL_VIEW_CLASS_64_BITS = 0x82C6; - public const int GL_VIEW_CLASS_48_BITS = 0x82C7; - public const int GL_VIEW_CLASS_32_BITS = 0x82C8; - public const int GL_VIEW_CLASS_24_BITS = 0x82C9; - public const int GL_VIEW_CLASS_16_BITS = 0x82CA; - public const int GL_VIEW_CLASS_8_BITS = 0x82CB; - public const int GL_VIEW_CLASS_S3TC_DXT1_RGB = 0x82CC; - public const int GL_VIEW_CLASS_S3TC_DXT1_RGBA = 0x82CD; - public const int GL_VIEW_CLASS_S3TC_DXT3_RGBA = 0x82CE; - public const int GL_VIEW_CLASS_S3TC_DXT5_RGBA = 0x82CF; - public const int GL_VIEW_CLASS_RGTC1_RED = 0x82D0; - public const int GL_VIEW_CLASS_RGTC2_RG = 0x82D1; - public const int GL_VIEW_CLASS_BPTC_UNORM = 0x82D2; - public const int GL_VIEW_CLASS_BPTC_FLOAT = 0x82D3; - public const int GL_UNIFORM = 0x92E1; - public const int GL_UNIFORM_BLOCK = 0x92E2; - public const int GL_PROGRAM_INPUT = 0x92E3; - public const int GL_PROGRAM_OUTPUT = 0x92E4; - public const int GL_BUFFER_VARIABLE = 0x92E5; - public const int GL_SHADER_STORAGE_BLOCK = 0x92E6; - public const int GL_VERTEX_SUBROUTINE = 0x92E8; - public const int GL_TESS_CONTROL_SUBROUTINE = 0x92E9; - public const int GL_TESS_EVALUATION_SUBROUTINE = 0x92EA; - public const int GL_GEOMETRY_SUBROUTINE = 0x92EB; - public const int GL_FRAGMENT_SUBROUTINE = 0x92EC; - public const int GL_COMPUTE_SUBROUTINE = 0x92ED; - public const int GL_VERTEX_SUBROUTINE_UNIFORM = 0x92EE; - public const int GL_TESS_CONTROL_SUBROUTINE_UNIFORM = 0x92EF; - public const int GL_TESS_EVALUATION_SUBROUTINE_UNIFORM = 0x92F0; - public const int GL_GEOMETRY_SUBROUTINE_UNIFORM = 0x92F1; - public const int GL_FRAGMENT_SUBROUTINE_UNIFORM = 0x92F2; - public const int GL_COMPUTE_SUBROUTINE_UNIFORM = 0x92F3; - public const int GL_TRANSFORM_FEEDBACK_VARYING = 0x92F4; - public const int GL_ACTIVE_RESOURCES = 0x92F5; - public const int GL_MAX_NAME_LENGTH = 0x92F6; - public const int GL_MAX_NUM_ACTIVE_VARIABLES = 0x92F7; - public const int GL_MAX_NUM_COMPATIBLE_SUBROUTINES = 0x92F8; - public const int GL_NAME_LENGTH = 0x92F9; - public const int GL_TYPE = 0x92FA; - public const int GL_ARRAY_SIZE = 0x92FB; - public const int GL_OFFSET = 0x92FC; - public const int GL_BLOCK_INDEX = 0x92FD; - public const int GL_ARRAY_STRIDE = 0x92FE; - public const int GL_MATRIX_STRIDE = 0x92FF; - public const int GL_IS_ROW_MAJOR = 0x9300; - public const int GL_ATOMIC_COUNTER_BUFFER_INDEX = 0x9301; - public const int GL_BUFFER_BINDING = 0x9302; - public const int GL_BUFFER_DATA_SIZE = 0x9303; - public const int GL_NUM_ACTIVE_VARIABLES = 0x9304; - public const int GL_ACTIVE_VARIABLES = 0x9305; - public const int GL_REFERENCED_BY_VERTEX_SHADER = 0x9306; - public const int GL_REFERENCED_BY_TESS_CONTROL_SHADER = 0x9307; - public const int GL_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x9308; - public const int GL_REFERENCED_BY_GEOMETRY_SHADER = 0x9309; - public const int GL_REFERENCED_BY_FRAGMENT_SHADER = 0x930A; - public const int GL_REFERENCED_BY_COMPUTE_SHADER = 0x930B; - public const int GL_TOP_LEVEL_ARRAY_SIZE = 0x930C; - public const int GL_TOP_LEVEL_ARRAY_STRIDE = 0x930D; - public const int GL_LOCATION = 0x930E; - public const int GL_LOCATION_INDEX = 0x930F; - public const int GL_IS_PER_PATCH = 0x92E7; - public const int GL_SHADER_STORAGE_BUFFER = 0x90D2; - public const int GL_SHADER_STORAGE_BUFFER_BINDING = 0x90D3; - public const int GL_SHADER_STORAGE_BUFFER_START = 0x90D4; - public const int GL_SHADER_STORAGE_BUFFER_SIZE = 0x90D5; - public const int GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS = 0x90D6; - public const int GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS = 0x90D7; - public const int GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS = 0x90D8; - public const int GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS = 0x90D9; - public const int GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS = 0x90DA; - public const int GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS = 0x90DB; - public const int GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS = 0x90DC; - public const int GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS = 0x90DD; - public const int GL_MAX_SHADER_STORAGE_BLOCK_SIZE = 0x90DE; - public const int GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT = 0x90DF; - public const int GL_SHADER_STORAGE_BARRIER_BIT = 0x00002000; - public const int GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES = 0x8F39; - public const int GL_DEPTH_STENCIL_TEXTURE_MODE = 0x90EA; - public const int GL_TEXTURE_BUFFER_OFFSET = 0x919D; - public const int GL_TEXTURE_BUFFER_SIZE = 0x919E; - public const int GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT = 0x919F; - public const int GL_TEXTURE_VIEW_MIN_LEVEL = 0x82DB; - public const int GL_TEXTURE_VIEW_NUM_LEVELS = 0x82DC; - public const int GL_TEXTURE_VIEW_MIN_LAYER = 0x82DD; - public const int GL_TEXTURE_VIEW_NUM_LAYERS = 0x82DE; - public const int GL_TEXTURE_IMMUTABLE_LEVELS = 0x82DF; - public const int GL_VERTEX_ATTRIB_BINDING = 0x82D4; - public const int GL_VERTEX_ATTRIB_RELATIVE_OFFSET = 0x82D5; - public const int GL_VERTEX_BINDING_DIVISOR = 0x82D6; - public const int GL_VERTEX_BINDING_OFFSET = 0x82D7; - public const int GL_VERTEX_BINDING_STRIDE = 0x82D8; - public const int GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET = 0x82D9; - public const int GL_MAX_VERTEX_ATTRIB_BINDINGS = 0x82DA; - public const int GL_VERTEX_BINDING_BUFFER = 0x8F4F; - public const int GL_DISPLAY_LIST = 0x82E7; - public const int GL_VERSION_4_4 = 1; - public const int GL_MAX_VERTEX_ATTRIB_STRIDE = 0x82E5; - public const int GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED = 0x8221; - public const int GL_TEXTURE_BUFFER_BINDING = 0x8C2A; - public const int GL_MAP_PERSISTENT_BIT = 0x0040; - public const int GL_MAP_COHERENT_BIT = 0x0080; - public const int GL_DYNAMIC_STORAGE_BIT = 0x0100; - public const int GL_CLIENT_STORAGE_BIT = 0x0200; - public const int GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT = 0x00004000; - public const int GL_BUFFER_IMMUTABLE_STORAGE = 0x821F; - public const int GL_BUFFER_STORAGE_FLAGS = 0x8220; - public const int GL_CLEAR_TEXTURE = 0x9365; - public const int GL_LOCATION_COMPONENT = 0x934A; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_INDEX = 0x934B; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE = 0x934C; - public const int GL_QUERY_BUFFER = 0x9192; - public const int GL_QUERY_BUFFER_BARRIER_BIT = 0x00008000; - public const int GL_QUERY_BUFFER_BINDING = 0x9193; - public const int GL_QUERY_RESULT_NO_WAIT = 0x9194; - public const int GL_MIRROR_CLAMP_TO_EDGE = 0x8743; - public const int GL_NEGATIVE_ONE_TO_ONE = 0x935E; - public const int GL_ZERO_TO_ONE = 0x935F; - public const int GL_CLIP_ORIGIN = 0x935C; - public const int GL_CLIP_DEPTH_MODE = 0x935D; - public const int GL_QUERY_WAIT_INVERTED = 0x8E17; - public const int GL_QUERY_NO_WAIT_INVERTED = 0x8E18; - public const int GL_QUERY_BY_REGION_WAIT_INVERTED = 0x8E19; - public const int GL_QUERY_BY_REGION_NO_WAIT_INVERTED = 0x8E1A; - public const int GL_MAX_CULL_DISTANCES = 0x82F9; - public const int GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES = 0x82FA; - public const int GL_TEXTURE_TARGET = 0x1006; - public const int GL_QUERY_TARGET = 0x82EA; - public const int GL_GUILTY_CONTEXT_RESET = 0x8253; - public const int GL_INNOCENT_CONTEXT_RESET = 0x8254; - public const int GL_UNKNOWN_CONTEXT_RESET = 0x8255; - public const int GL_RESET_NOTIFICATION_STRATEGY = 0x8256; - public const int GL_LOSE_CONTEXT_ON_RESET = 0x8252; - public const int GL_NO_RESET_NOTIFICATION = 0x8261; - public const int GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT = 0x00000004; - public const int GL_CONTEXT_RELEASE_BEHAVIOR = 0x82FB; - public const int GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH = 0x82FC; - public const int GL_VERSION_4_6 = 1; - public const int GL_SHADER_BINARY_FORMAT_SPIR_V = 0x9551; - public const int GL_SPIR_V_BINARY = 0x9552; - public const int GL_PARAMETER_BUFFER = 0x80EE; - public const int GL_PARAMETER_BUFFER_BINDING = 0x80EF; - public const int GL_CONTEXT_FLAG_NO_ERROR_BIT = 0x00000008; - public const int GL_VERTICES_SUBMITTED = 0x82EE; - public const int GL_PRIMITIVES_SUBMITTED = 0x82EF; - public const int GL_VERTEX_SHADER_INVOCATIONS = 0x82F0; - public const int GL_TESS_CONTROL_SHADER_PATCHES = 0x82F1; - public const int GL_TESS_EVALUATION_SHADER_INVOCATIONS = 0x82F2; - public const int GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED = 0x82F3; - public const int GL_FRAGMENT_SHADER_INVOCATIONS = 0x82F4; - public const int GL_COMPUTE_SHADER_INVOCATIONS = 0x82F5; - public const int GL_CLIPPING_INPUT_PRIMITIVES = 0x82F6; - public const int GL_CLIPPING_OUTPUT_PRIMITIVES = 0x82F7; - public const int GL_POLYGON_OFFSET_CLAMP = 0x8E1B; - public const int GL_SPIR_V_EXTENSIONS = 0x9553; - public const int GL_NUM_SPIR_V_EXTENSIONS = 0x9554; - public const int GL_TEXTURE_MAX_ANISOTROPY = 0x84FE; - public const int GL_MAX_TEXTURE_MAX_ANISOTROPY = 0x84FF; - public const int GL_TRANSFORM_FEEDBACK_OVERFLOW = 0x82EC; - public const int GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW = 0x82ED; - public const int GL_ARB_ES2_compatibility = 1; - public const int GL_ARB_ES3_1_compatibility = 1; - public const int GL_ARB_ES3_2_compatibility = 1; - public const int GL_PRIMITIVE_BOUNDING_BOX_ARB = 0x92BE; - public const int GL_MULTISAMPLE_LINE_WIDTH_RANGE_ARB = 0x9381; - public const int GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB = 0x9382; - public const int GL_ARB_ES3_compatibility = 1; - public const int GL_ARB_arrays_of_arrays = 1; - public const int GL_ARB_base_instance = 1; - public const int GL_ARB_bindless_texture = 1; - public const int GL_UNSIGNED_INT64_ARB = 0x140F; - public const int GL_ARB_blend_func_extended = 1; - public const int GL_ARB_buffer_storage = 1; - public const int GL_ARB_cl_event = 1; - public const int GL_SYNC_CL_EVENT_ARB = 0x8240; - public const int GL_SYNC_CL_EVENT_COMPLETE_ARB = 0x8241; - public const int GL_ARB_clear_buffer_object = 1; - public const int GL_ARB_clear_texture = 1; - public const int GL_ARB_clip_control = 1; - public const int GL_ARB_color_buffer_float = 1; - public const int GL_RGBA_FLOAT_MODE_ARB = 0x8820; - public const int GL_CLAMP_VERTEX_COLOR_ARB = 0x891A; - public const int GL_CLAMP_FRAGMENT_COLOR_ARB = 0x891B; - public const int GL_CLAMP_READ_COLOR_ARB = 0x891C; - public const int GL_FIXED_ONLY_ARB = 0x891D; - public const int GL_ARB_compatibility = 1; - public const int GL_ARB_compressed_texture_pixel_storage = 1; - public const int GL_ARB_compute_shader = 1; - public const int GL_ARB_compute_variable_group_size = 1; - public const int GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB = 0x9344; - public const int GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB = 0x90EB; - public const int GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB = 0x9345; - public const int GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB = 0x91BF; - public const int GL_ARB_conditional_render_inverted = 1; - public const int GL_ARB_conservative_depth = 1; - public const int GL_ARB_copy_buffer = 1; - public const int GL_ARB_copy_image = 1; - public const int GL_ARB_cull_distance = 1; - public const int GL_ARB_debug_output = 1; - public const int GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB = 0x8242; - public const int GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB = 0x8243; - public const int GL_DEBUG_CALLBACK_FUNCTION_ARB = 0x8244; - public const int GL_DEBUG_CALLBACK_USER_PARAM_ARB = 0x8245; - public const int GL_DEBUG_SOURCE_API_ARB = 0x8246; - public const int GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB = 0x8247; - public const int GL_DEBUG_SOURCE_SHADER_COMPILER_ARB = 0x8248; - public const int GL_DEBUG_SOURCE_THIRD_PARTY_ARB = 0x8249; - public const int GL_DEBUG_SOURCE_APPLICATION_ARB = 0x824A; - public const int GL_DEBUG_SOURCE_OTHER_ARB = 0x824B; - public const int GL_DEBUG_TYPE_ERROR_ARB = 0x824C; - public const int GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB = 0x824D; - public const int GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB = 0x824E; - public const int GL_DEBUG_TYPE_PORTABILITY_ARB = 0x824F; - public const int GL_DEBUG_TYPE_PERFORMANCE_ARB = 0x8250; - public const int GL_DEBUG_TYPE_OTHER_ARB = 0x8251; - public const int GL_MAX_DEBUG_MESSAGE_LENGTH_ARB = 0x9143; - public const int GL_MAX_DEBUG_LOGGED_MESSAGES_ARB = 0x9144; - public const int GL_DEBUG_LOGGED_MESSAGES_ARB = 0x9145; - public const int GL_DEBUG_SEVERITY_HIGH_ARB = 0x9146; - public const int GL_DEBUG_SEVERITY_MEDIUM_ARB = 0x9147; - public const int GL_DEBUG_SEVERITY_LOW_ARB = 0x9148; - public const int GL_ARB_depth_buffer_float = 1; - public const int GL_ARB_depth_clamp = 1; - public const int GL_ARB_depth_texture = 1; - public const int GL_DEPTH_COMPONENT16_ARB = 0x81A5; - public const int GL_DEPTH_COMPONENT24_ARB = 0x81A6; - public const int GL_DEPTH_COMPONENT32_ARB = 0x81A7; - public const int GL_TEXTURE_DEPTH_SIZE_ARB = 0x884A; - public const int GL_DEPTH_TEXTURE_MODE_ARB = 0x884B; - public const int GL_ARB_derivative_control = 1; - public const int GL_ARB_direct_state_access = 1; - public const int GL_ARB_draw_buffers = 1; - public const int GL_MAX_DRAW_BUFFERS_ARB = 0x8824; - public const int GL_DRAW_BUFFER0_ARB = 0x8825; - public const int GL_DRAW_BUFFER1_ARB = 0x8826; - public const int GL_DRAW_BUFFER2_ARB = 0x8827; - public const int GL_DRAW_BUFFER3_ARB = 0x8828; - public const int GL_DRAW_BUFFER4_ARB = 0x8829; - public const int GL_DRAW_BUFFER5_ARB = 0x882A; - public const int GL_DRAW_BUFFER6_ARB = 0x882B; - public const int GL_DRAW_BUFFER7_ARB = 0x882C; - public const int GL_DRAW_BUFFER8_ARB = 0x882D; - public const int GL_DRAW_BUFFER9_ARB = 0x882E; - public const int GL_DRAW_BUFFER10_ARB = 0x882F; - public const int GL_DRAW_BUFFER11_ARB = 0x8830; - public const int GL_DRAW_BUFFER12_ARB = 0x8831; - public const int GL_DRAW_BUFFER13_ARB = 0x8832; - public const int GL_DRAW_BUFFER14_ARB = 0x8833; - public const int GL_DRAW_BUFFER15_ARB = 0x8834; - public const int GL_ARB_draw_buffers_blend = 1; - public const int GL_ARB_draw_elements_base_vertex = 1; - public const int GL_ARB_draw_indirect = 1; - public const int GL_ARB_draw_instanced = 1; - public const int GL_ARB_enhanced_layouts = 1; - public const int GL_ARB_explicit_attrib_location = 1; - public const int GL_ARB_explicit_uniform_location = 1; - public const int GL_ARB_fragment_coord_conventions = 1; - public const int GL_ARB_fragment_layer_viewport = 1; - public const int GL_ARB_fragment_program = 1; - public const int GL_FRAGMENT_PROGRAM_ARB = 0x8804; - public const int GL_PROGRAM_FORMAT_ASCII_ARB = 0x8875; - public const int GL_PROGRAM_LENGTH_ARB = 0x8627; - public const int GL_PROGRAM_FORMAT_ARB = 0x8876; - public const int GL_PROGRAM_BINDING_ARB = 0x8677; - public const int GL_PROGRAM_INSTRUCTIONS_ARB = 0x88A0; - public const int GL_MAX_PROGRAM_INSTRUCTIONS_ARB = 0x88A1; - public const int GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A2; - public const int GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A3; - public const int GL_PROGRAM_TEMPORARIES_ARB = 0x88A4; - public const int GL_MAX_PROGRAM_TEMPORARIES_ARB = 0x88A5; - public const int GL_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A6; - public const int GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A7; - public const int GL_PROGRAM_PARAMETERS_ARB = 0x88A8; - public const int GL_MAX_PROGRAM_PARAMETERS_ARB = 0x88A9; - public const int GL_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AA; - public const int GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AB; - public const int GL_PROGRAM_ATTRIBS_ARB = 0x88AC; - public const int GL_MAX_PROGRAM_ATTRIBS_ARB = 0x88AD; - public const int GL_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AE; - public const int GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AF; - public const int GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB = 0x88B4; - public const int GL_MAX_PROGRAM_ENV_PARAMETERS_ARB = 0x88B5; - public const int GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB = 0x88B6; - public const int GL_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x8805; - public const int GL_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x8806; - public const int GL_PROGRAM_TEX_INDIRECTIONS_ARB = 0x8807; - public const int GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x8808; - public const int GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x8809; - public const int GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x880A; - public const int GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x880B; - public const int GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x880C; - public const int GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB = 0x880D; - public const int GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x880E; - public const int GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x880F; - public const int GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x8810; - public const int GL_PROGRAM_STRING_ARB = 0x8628; - public const int GL_PROGRAM_ERROR_POSITION_ARB = 0x864B; - public const int GL_CURRENT_MATRIX_ARB = 0x8641; - public const int GL_TRANSPOSE_CURRENT_MATRIX_ARB = 0x88B7; - public const int GL_CURRENT_MATRIX_STACK_DEPTH_ARB = 0x8640; - public const int GL_MAX_PROGRAM_MATRICES_ARB = 0x862F; - public const int GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = 0x862E; - public const int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; - public const int GL_MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872; - public const int GL_PROGRAM_ERROR_STRING_ARB = 0x8874; - public const int GL_MATRIX0_ARB = 0x88C0; - public const int GL_MATRIX1_ARB = 0x88C1; - public const int GL_MATRIX2_ARB = 0x88C2; - public const int GL_MATRIX3_ARB = 0x88C3; - public const int GL_MATRIX4_ARB = 0x88C4; - public const int GL_MATRIX5_ARB = 0x88C5; - public const int GL_MATRIX6_ARB = 0x88C6; - public const int GL_MATRIX7_ARB = 0x88C7; - public const int GL_MATRIX8_ARB = 0x88C8; - public const int GL_MATRIX9_ARB = 0x88C9; - public const int GL_MATRIX10_ARB = 0x88CA; - public const int GL_MATRIX11_ARB = 0x88CB; - public const int GL_MATRIX12_ARB = 0x88CC; - public const int GL_MATRIX13_ARB = 0x88CD; - public const int GL_MATRIX14_ARB = 0x88CE; - public const int GL_MATRIX15_ARB = 0x88CF; - public const int GL_MATRIX16_ARB = 0x88D0; - public const int GL_MATRIX17_ARB = 0x88D1; - public const int GL_MATRIX18_ARB = 0x88D2; - public const int GL_MATRIX19_ARB = 0x88D3; - public const int GL_MATRIX20_ARB = 0x88D4; - public const int GL_MATRIX21_ARB = 0x88D5; - public const int GL_MATRIX22_ARB = 0x88D6; - public const int GL_MATRIX23_ARB = 0x88D7; - public const int GL_MATRIX24_ARB = 0x88D8; - public const int GL_MATRIX25_ARB = 0x88D9; - public const int GL_MATRIX26_ARB = 0x88DA; - public const int GL_MATRIX27_ARB = 0x88DB; - public const int GL_MATRIX28_ARB = 0x88DC; - public const int GL_MATRIX29_ARB = 0x88DD; - public const int GL_MATRIX30_ARB = 0x88DE; - public const int GL_MATRIX31_ARB = 0x88DF; - public const int GL_ARB_fragment_program_shadow = 1; - public const int GL_ARB_fragment_shader = 1; - public const int GL_FRAGMENT_SHADER_ARB = 0x8B30; - public const int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB = 0x8B49; - public const int GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB = 0x8B8B; - public const int GL_ARB_fragment_shader_interlock = 1; - public const int GL_ARB_framebuffer_no_attachments = 1; - public const int GL_ARB_framebuffer_object = 1; - public const int GL_ARB_framebuffer_sRGB = 1; - public const int GL_ARB_geometry_shader4 = 1; - public const int GL_LINES_ADJACENCY_ARB = 0x000A; - public const int GL_LINE_STRIP_ADJACENCY_ARB = 0x000B; - public const int GL_TRIANGLES_ADJACENCY_ARB = 0x000C; - public const int GL_TRIANGLE_STRIP_ADJACENCY_ARB = 0x000D; - public const int GL_PROGRAM_POINT_SIZE_ARB = 0x8642; - public const int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB = 0x8C29; - public const int GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB = 0x8DA7; - public const int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB = 0x8DA8; - public const int GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB = 0x8DA9; - public const int GL_GEOMETRY_SHADER_ARB = 0x8DD9; - public const int GL_GEOMETRY_VERTICES_OUT_ARB = 0x8DDA; - public const int GL_GEOMETRY_INPUT_TYPE_ARB = 0x8DDB; - public const int GL_GEOMETRY_OUTPUT_TYPE_ARB = 0x8DDC; - public const int GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB = 0x8DDD; - public const int GL_MAX_VERTEX_VARYING_COMPONENTS_ARB = 0x8DDE; - public const int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB = 0x8DDF; - public const int GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB = 0x8DE0; - public const int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB = 0x8DE1; - public const int GL_ARB_get_program_binary = 1; - public const int GL_ARB_get_texture_sub_image = 1; - public const int GL_ARB_gl_spirv = 1; - public const int GL_SHADER_BINARY_FORMAT_SPIR_V_ARB = 0x9551; - public const int GL_SPIR_V_BINARY_ARB = 0x9552; - public const int GL_ARB_gpu_shader5 = 1; - public const int GL_ARB_gpu_shader_fp64 = 1; - public const int GL_ARB_gpu_shader_int64 = 1; - public const int GL_INT64_ARB = 0x140E; - public const int GL_INT64_VEC2_ARB = 0x8FE9; - public const int GL_INT64_VEC3_ARB = 0x8FEA; - public const int GL_INT64_VEC4_ARB = 0x8FEB; - public const int GL_UNSIGNED_INT64_VEC2_ARB = 0x8FF5; - public const int GL_UNSIGNED_INT64_VEC3_ARB = 0x8FF6; - public const int GL_UNSIGNED_INT64_VEC4_ARB = 0x8FF7; - public const int GL_ARB_half_float_pixel = 1; - public const int GL_HALF_FLOAT_ARB = 0x140B; - public const int GL_ARB_half_float_vertex = 1; - public const int GL_ARB_imaging = 1; - public const int GL_ARB_indirect_parameters = 1; - public const int GL_PARAMETER_BUFFER_ARB = 0x80EE; - public const int GL_PARAMETER_BUFFER_BINDING_ARB = 0x80EF; - public const int GL_ARB_instanced_arrays = 1; - public const int GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB = 0x88FE; - public const int GL_ARB_internalformat_query = 1; - public const int GL_ARB_internalformat_query2 = 1; - public const int GL_SRGB_DECODE_ARB = 0x8299; - public const int GL_ARB_invalidate_subdata = 1; - public const int GL_ARB_map_buffer_alignment = 1; - public const int GL_ARB_map_buffer_range = 1; - public const int GL_ARB_matrix_palette = 1; - public const int GL_MATRIX_PALETTE_ARB = 0x8840; - public const int GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB = 0x8841; - public const int GL_MAX_PALETTE_MATRICES_ARB = 0x8842; - public const int GL_CURRENT_PALETTE_MATRIX_ARB = 0x8843; - public const int GL_MATRIX_INDEX_ARRAY_ARB = 0x8844; - public const int GL_CURRENT_MATRIX_INDEX_ARB = 0x8845; - public const int GL_MATRIX_INDEX_ARRAY_SIZE_ARB = 0x8846; - public const int GL_MATRIX_INDEX_ARRAY_TYPE_ARB = 0x8847; - public const int GL_MATRIX_INDEX_ARRAY_STRIDE_ARB = 0x8848; - public const int GL_MATRIX_INDEX_ARRAY_POINTER_ARB = 0x8849; - public const int GL_ARB_multi_bind = 1; - public const int GL_ARB_multi_draw_indirect = 1; - public const int GL_ARB_multisample = 1; - public const int GL_MULTISAMPLE_ARB = 0x809D; - public const int GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = 0x809E; - public const int GL_SAMPLE_ALPHA_TO_ONE_ARB = 0x809F; - public const int GL_SAMPLE_COVERAGE_ARB = 0x80A0; - public const int GL_SAMPLE_BUFFERS_ARB = 0x80A8; - public const int GL_SAMPLES_ARB = 0x80A9; - public const int GL_SAMPLE_COVERAGE_VALUE_ARB = 0x80AA; - public const int GL_SAMPLE_COVERAGE_INVERT_ARB = 0x80AB; - public const int GL_MULTISAMPLE_BIT_ARB = 0x20000000; - public const int GL_ARB_occlusion_query = 1; - public const int GL_QUERY_COUNTER_BITS_ARB = 0x8864; - public const int GL_CURRENT_QUERY_ARB = 0x8865; - public const int GL_QUERY_RESULT_ARB = 0x8866; - public const int GL_QUERY_RESULT_AVAILABLE_ARB = 0x8867; - public const int GL_SAMPLES_PASSED_ARB = 0x8914; - public const int GL_ARB_occlusion_query2 = 1; - public const int GL_ARB_parallel_shader_compile = 1; - public const int GL_MAX_SHADER_COMPILER_THREADS_ARB = 0x91B0; - public const int GL_COMPLETION_STATUS_ARB = 0x91B1; - public const int GL_ARB_pipeline_statistics_query = 1; - public const int GL_VERTICES_SUBMITTED_ARB = 0x82EE; - public const int GL_PRIMITIVES_SUBMITTED_ARB = 0x82EF; - public const int GL_VERTEX_SHADER_INVOCATIONS_ARB = 0x82F0; - public const int GL_TESS_CONTROL_SHADER_PATCHES_ARB = 0x82F1; - public const int GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB = 0x82F2; - public const int GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB = 0x82F3; - public const int GL_FRAGMENT_SHADER_INVOCATIONS_ARB = 0x82F4; - public const int GL_COMPUTE_SHADER_INVOCATIONS_ARB = 0x82F5; - public const int GL_CLIPPING_INPUT_PRIMITIVES_ARB = 0x82F6; - public const int GL_CLIPPING_OUTPUT_PRIMITIVES_ARB = 0x82F7; - public const int GL_ARB_pixel_buffer_object = 1; - public const int GL_PIXEL_PACK_BUFFER_ARB = 0x88EB; - public const int GL_PIXEL_UNPACK_BUFFER_ARB = 0x88EC; - public const int GL_PIXEL_PACK_BUFFER_BINDING_ARB = 0x88ED; - public const int GL_PIXEL_UNPACK_BUFFER_BINDING_ARB = 0x88EF; - public const int GL_ARB_point_parameters = 1; - public const int GL_POINT_SIZE_MIN_ARB = 0x8126; - public const int GL_POINT_SIZE_MAX_ARB = 0x8127; - public const int GL_POINT_FADE_THRESHOLD_SIZE_ARB = 0x8128; - public const int GL_POINT_DISTANCE_ATTENUATION_ARB = 0x8129; - public const int GL_ARB_point_sprite = 1; - public const int GL_POINT_SPRITE_ARB = 0x8861; - public const int GL_COORD_REPLACE_ARB = 0x8862; - public const int GL_ARB_polygon_offset_clamp = 1; - public const int GL_ARB_post_depth_coverage = 1; - public const int GL_ARB_program_interface_query = 1; - public const int GL_ARB_provoking_vertex = 1; - public const int GL_ARB_query_buffer_object = 1; - public const int GL_ARB_robust_buffer_access_behavior = 1; - public const int GL_ARB_robustness = 1; - public const int GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB = 0x00000004; - public const int GL_LOSE_CONTEXT_ON_RESET_ARB = 0x8252; - public const int GL_GUILTY_CONTEXT_RESET_ARB = 0x8253; - public const int GL_INNOCENT_CONTEXT_RESET_ARB = 0x8254; - public const int GL_UNKNOWN_CONTEXT_RESET_ARB = 0x8255; - public const int GL_RESET_NOTIFICATION_STRATEGY_ARB = 0x8256; - public const int GL_NO_RESET_NOTIFICATION_ARB = 0x8261; - public const int GL_ARB_robustness_isolation = 1; - public const int GL_ARB_sample_locations = 1; - public const int GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB = 0x933D; - public const int GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB = 0x933E; - public const int GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB = 0x933F; - public const int GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB = 0x9340; - public const int GL_SAMPLE_LOCATION_ARB = 0x8E50; - public const int GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB = 0x9341; - public const int GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB = 0x9342; - public const int GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB = 0x9343; - public const int GL_ARB_sample_shading = 1; - public const int GL_SAMPLE_SHADING_ARB = 0x8C36; - public const int GL_MIN_SAMPLE_SHADING_VALUE_ARB = 0x8C37; - public const int GL_ARB_sampler_objects = 1; - public const int GL_ARB_seamless_cube_map = 1; - public const int GL_ARB_seamless_cubemap_per_texture = 1; - public const int GL_ARB_separate_shader_objects = 1; - public const int GL_ARB_shader_atomic_counter_ops = 1; - public const int GL_ARB_shader_atomic_counters = 1; - public const int GL_ARB_shader_ballot = 1; - public const int GL_ARB_shader_bit_encoding = 1; - public const int GL_ARB_shader_clock = 1; - public const int GL_ARB_shader_draw_parameters = 1; - public const int GL_ARB_shader_group_vote = 1; - public const int GL_ARB_shader_image_load_store = 1; - public const int GL_ARB_shader_image_size = 1; - public const int GL_ARB_shader_objects = 1; - public const int GL_PROGRAM_OBJECT_ARB = 0x8B40; - public const int GL_SHADER_OBJECT_ARB = 0x8B48; - public const int GL_OBJECT_TYPE_ARB = 0x8B4E; - public const int GL_OBJECT_SUBTYPE_ARB = 0x8B4F; - public const int GL_FLOAT_VEC2_ARB = 0x8B50; - public const int GL_FLOAT_VEC3_ARB = 0x8B51; - public const int GL_FLOAT_VEC4_ARB = 0x8B52; - public const int GL_INT_VEC2_ARB = 0x8B53; - public const int GL_INT_VEC3_ARB = 0x8B54; - public const int GL_INT_VEC4_ARB = 0x8B55; - public const int GL_BOOL_ARB = 0x8B56; - public const int GL_BOOL_VEC2_ARB = 0x8B57; - public const int GL_BOOL_VEC3_ARB = 0x8B58; - public const int GL_BOOL_VEC4_ARB = 0x8B59; - public const int GL_FLOAT_MAT2_ARB = 0x8B5A; - public const int GL_FLOAT_MAT3_ARB = 0x8B5B; - public const int GL_FLOAT_MAT4_ARB = 0x8B5C; - public const int GL_SAMPLER_1D_ARB = 0x8B5D; - public const int GL_SAMPLER_2D_ARB = 0x8B5E; - public const int GL_SAMPLER_3D_ARB = 0x8B5F; - public const int GL_SAMPLER_CUBE_ARB = 0x8B60; - public const int GL_SAMPLER_1D_SHADOW_ARB = 0x8B61; - public const int GL_SAMPLER_2D_SHADOW_ARB = 0x8B62; - public const int GL_SAMPLER_2D_RECT_ARB = 0x8B63; - public const int GL_SAMPLER_2D_RECT_SHADOW_ARB = 0x8B64; - public const int GL_OBJECT_DELETE_STATUS_ARB = 0x8B80; - public const int GL_OBJECT_COMPILE_STATUS_ARB = 0x8B81; - public const int GL_OBJECT_LINK_STATUS_ARB = 0x8B82; - public const int GL_OBJECT_VALIDATE_STATUS_ARB = 0x8B83; - public const int GL_OBJECT_INFO_LOG_LENGTH_ARB = 0x8B84; - public const int GL_OBJECT_ATTACHED_OBJECTS_ARB = 0x8B85; - public const int GL_OBJECT_ACTIVE_UNIFORMS_ARB = 0x8B86; - public const int GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB = 0x8B87; - public const int GL_OBJECT_SHADER_SOURCE_LENGTH_ARB = 0x8B88; - public const int GL_ARB_shader_precision = 1; - public const int GL_ARB_shader_stencil_export = 1; - public const int GL_ARB_shader_storage_buffer_object = 1; - public const int GL_ARB_shader_subroutine = 1; - public const int GL_ARB_shader_texture_image_samples = 1; - public const int GL_ARB_shader_texture_lod = 1; - public const int GL_ARB_shader_viewport_layer_array = 1; - public const int GL_ARB_shading_language_100 = 1; - public const int GL_SHADING_LANGUAGE_VERSION_ARB = 0x8B8C; - public const int GL_ARB_shading_language_420pack = 1; - public const int GL_ARB_shading_language_include = 1; - public const int GL_SHADER_INCLUDE_ARB = 0x8DAE; - public const int GL_NAMED_STRING_LENGTH_ARB = 0x8DE9; - public const int GL_NAMED_STRING_TYPE_ARB = 0x8DEA; - public const int GL_ARB_shading_language_packing = 1; - public const int GL_ARB_shadow = 1; - public const int GL_TEXTURE_COMPARE_MODE_ARB = 0x884C; - public const int GL_TEXTURE_COMPARE_FUNC_ARB = 0x884D; - public const int GL_COMPARE_R_TO_TEXTURE_ARB = 0x884E; - public const int GL_ARB_shadow_ambient = 1; - public const int GL_TEXTURE_COMPARE_FAIL_VALUE_ARB = 0x80BF; - public const int GL_ARB_sparse_buffer = 1; - public const int GL_SPARSE_STORAGE_BIT_ARB = 0x0400; - public const int GL_SPARSE_BUFFER_PAGE_SIZE_ARB = 0x82F8; - public const int GL_ARB_sparse_texture = 1; - public const int GL_TEXTURE_SPARSE_ARB = 0x91A6; - public const int GL_VIRTUAL_PAGE_SIZE_INDEX_ARB = 0x91A7; - public const int GL_NUM_SPARSE_LEVELS_ARB = 0x91AA; - public const int GL_NUM_VIRTUAL_PAGE_SIZES_ARB = 0x91A8; - public const int GL_VIRTUAL_PAGE_SIZE_X_ARB = 0x9195; - public const int GL_VIRTUAL_PAGE_SIZE_Y_ARB = 0x9196; - public const int GL_VIRTUAL_PAGE_SIZE_Z_ARB = 0x9197; - public const int GL_MAX_SPARSE_TEXTURE_SIZE_ARB = 0x9198; - public const int GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB = 0x9199; - public const int GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB = 0x919A; - public const int GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB = 0x91A9; - public const int GL_ARB_sparse_texture2 = 1; - public const int GL_ARB_sparse_texture_clamp = 1; - public const int GL_ARB_spirv_extensions = 1; - public const int GL_ARB_stencil_texturing = 1; - public const int GL_ARB_sync = 1; - public const int GL_ARB_tessellation_shader = 1; - public const int GL_ARB_texture_barrier = 1; - public const int GL_ARB_texture_border_clamp = 1; - public const int GL_CLAMP_TO_BORDER_ARB = 0x812D; - public const int GL_ARB_texture_buffer_object = 1; - public const int GL_TEXTURE_BUFFER_ARB = 0x8C2A; - public const int GL_MAX_TEXTURE_BUFFER_SIZE_ARB = 0x8C2B; - public const int GL_TEXTURE_BINDING_BUFFER_ARB = 0x8C2C; - public const int GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB = 0x8C2D; - public const int GL_TEXTURE_BUFFER_FORMAT_ARB = 0x8C2E; - public const int GL_ARB_texture_buffer_object_rgb32 = 1; - public const int GL_ARB_texture_buffer_range = 1; - public const int GL_ARB_texture_compression = 1; - public const int GL_COMPRESSED_ALPHA_ARB = 0x84E9; - public const int GL_COMPRESSED_LUMINANCE_ARB = 0x84EA; - public const int GL_COMPRESSED_LUMINANCE_ALPHA_ARB = 0x84EB; - public const int GL_COMPRESSED_INTENSITY_ARB = 0x84EC; - public const int GL_COMPRESSED_RGB_ARB = 0x84ED; - public const int GL_COMPRESSED_RGBA_ARB = 0x84EE; - public const int GL_TEXTURE_COMPRESSION_HINT_ARB = 0x84EF; - public const int GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB = 0x86A0; - public const int GL_TEXTURE_COMPRESSED_ARB = 0x86A1; - public const int GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A2; - public const int GL_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A3; - public const int GL_ARB_texture_compression_bptc = 1; - public const int GL_COMPRESSED_RGBA_BPTC_UNORM_ARB = 0x8E8C; - public const int GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB = 0x8E8D; - public const int GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB = 0x8E8E; - public const int GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB = 0x8E8F; - public const int GL_ARB_texture_compression_rgtc = 1; - public const int GL_ARB_texture_cube_map = 1; - public const int GL_NORMAL_MAP_ARB = 0x8511; - public const int GL_REFLECTION_MAP_ARB = 0x8512; - public const int GL_TEXTURE_CUBE_MAP_ARB = 0x8513; - public const int GL_TEXTURE_BINDING_CUBE_MAP_ARB = 0x8514; - public const int GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = 0x8515; - public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = 0x8516; - public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = 0x8517; - public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = 0x8518; - public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = 0x8519; - public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = 0x851A; - public const int GL_PROXY_TEXTURE_CUBE_MAP_ARB = 0x851B; - public const int GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB = 0x851C; - public const int GL_ARB_texture_cube_map_array = 1; - public const int GL_TEXTURE_CUBE_MAP_ARRAY_ARB = 0x9009; - public const int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB = 0x900A; - public const int GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB = 0x900B; - public const int GL_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900C; - public const int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB = 0x900D; - public const int GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900E; - public const int GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900F; - public const int GL_ARB_texture_env_add = 1; - public const int GL_ARB_texture_env_combine = 1; - public const int GL_COMBINE_ARB = 0x8570; - public const int GL_COMBINE_RGB_ARB = 0x8571; - public const int GL_COMBINE_ALPHA_ARB = 0x8572; - public const int GL_SOURCE0_RGB_ARB = 0x8580; - public const int GL_SOURCE1_RGB_ARB = 0x8581; - public const int GL_SOURCE2_RGB_ARB = 0x8582; - public const int GL_SOURCE0_ALPHA_ARB = 0x8588; - public const int GL_SOURCE1_ALPHA_ARB = 0x8589; - public const int GL_SOURCE2_ALPHA_ARB = 0x858A; - public const int GL_OPERAND0_RGB_ARB = 0x8590; - public const int GL_OPERAND1_RGB_ARB = 0x8591; - public const int GL_OPERAND2_RGB_ARB = 0x8592; - public const int GL_OPERAND0_ALPHA_ARB = 0x8598; - public const int GL_OPERAND1_ALPHA_ARB = 0x8599; - public const int GL_OPERAND2_ALPHA_ARB = 0x859A; - public const int GL_RGB_SCALE_ARB = 0x8573; - public const int GL_ADD_SIGNED_ARB = 0x8574; - public const int GL_INTERPOLATE_ARB = 0x8575; - public const int GL_SUBTRACT_ARB = 0x84E7; - public const int GL_CONSTANT_ARB = 0x8576; - public const int GL_PRIMARY_COLOR_ARB = 0x8577; - public const int GL_PREVIOUS_ARB = 0x8578; - public const int GL_ARB_texture_env_crossbar = 1; - public const int GL_ARB_texture_env_dot3 = 1; - public const int GL_DOT3_RGB_ARB = 0x86AE; - public const int GL_DOT3_RGBA_ARB = 0x86AF; - public const int GL_ARB_texture_filter_anisotropic = 1; - public const int GL_ARB_texture_filter_minmax = 1; - public const int GL_TEXTURE_REDUCTION_MODE_ARB = 0x9366; - public const int GL_WEIGHTED_AVERAGE_ARB = 0x9367; - public const int GL_ARB_texture_float = 1; - public const int GL_TEXTURE_RED_TYPE_ARB = 0x8C10; - public const int GL_TEXTURE_GREEN_TYPE_ARB = 0x8C11; - public const int GL_TEXTURE_BLUE_TYPE_ARB = 0x8C12; - public const int GL_TEXTURE_ALPHA_TYPE_ARB = 0x8C13; - public const int GL_TEXTURE_LUMINANCE_TYPE_ARB = 0x8C14; - public const int GL_TEXTURE_INTENSITY_TYPE_ARB = 0x8C15; - public const int GL_TEXTURE_DEPTH_TYPE_ARB = 0x8C16; - public const int GL_UNSIGNED_NORMALIZED_ARB = 0x8C17; - public const int GL_RGBA32F_ARB = 0x8814; - public const int GL_RGB32F_ARB = 0x8815; - public const int GL_ALPHA32F_ARB = 0x8816; - public const int GL_INTENSITY32F_ARB = 0x8817; - public const int GL_LUMINANCE32F_ARB = 0x8818; - public const int GL_LUMINANCE_ALPHA32F_ARB = 0x8819; - public const int GL_RGBA16F_ARB = 0x881A; - public const int GL_RGB16F_ARB = 0x881B; - public const int GL_ALPHA16F_ARB = 0x881C; - public const int GL_INTENSITY16F_ARB = 0x881D; - public const int GL_LUMINANCE16F_ARB = 0x881E; - public const int GL_LUMINANCE_ALPHA16F_ARB = 0x881F; - public const int GL_ARB_texture_gather = 1; - public const int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = 0x8E5E; - public const int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = 0x8E5F; - public const int GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB = 0x8F9F; - public const int GL_ARB_texture_mirror_clamp_to_edge = 1; - public const int GL_ARB_texture_mirrored_repeat = 1; - public const int GL_MIRRORED_REPEAT_ARB = 0x8370; - public const int GL_ARB_texture_multisample = 1; - public const int GL_ARB_texture_non_power_of_two = 1; - public const int GL_ARB_texture_query_levels = 1; - public const int GL_ARB_texture_query_lod = 1; - public const int GL_ARB_texture_rectangle = 1; - public const int GL_TEXTURE_RECTANGLE_ARB = 0x84F5; - public const int GL_TEXTURE_BINDING_RECTANGLE_ARB = 0x84F6; - public const int GL_PROXY_TEXTURE_RECTANGLE_ARB = 0x84F7; - public const int GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB = 0x84F8; - public const int GL_ARB_texture_rg = 1; - public const int GL_ARB_texture_rgb10_a2ui = 1; - public const int GL_ARB_texture_stencil8 = 1; - public const int GL_ARB_texture_storage = 1; - public const int GL_ARB_texture_storage_multisample = 1; - public const int GL_ARB_texture_swizzle = 1; - public const int GL_ARB_texture_view = 1; - public const int GL_ARB_timer_query = 1; - public const int GL_ARB_transform_feedback2 = 1; - public const int GL_ARB_transform_feedback3 = 1; - public const int GL_ARB_transform_feedback_instanced = 1; - public const int GL_ARB_transform_feedback_overflow_query = 1; - public const int GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB = 0x82EC; - public const int GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB = 0x82ED; - public const int GL_ARB_transpose_matrix = 1; - public const int GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = 0x84E3; - public const int GL_TRANSPOSE_PROJECTION_MATRIX_ARB = 0x84E4; - public const int GL_TRANSPOSE_TEXTURE_MATRIX_ARB = 0x84E5; - public const int GL_TRANSPOSE_COLOR_MATRIX_ARB = 0x84E6; - public const int GL_ARB_uniform_buffer_object = 1; - public const int GL_ARB_vertex_array_bgra = 1; - public const int GL_ARB_vertex_array_object = 1; - public const int GL_ARB_vertex_attrib_64bit = 1; - public const int GL_ARB_vertex_attrib_binding = 1; - public const int GL_ARB_vertex_blend = 1; - public const int GL_MAX_VERTEX_UNITS_ARB = 0x86A4; - public const int GL_ACTIVE_VERTEX_UNITS_ARB = 0x86A5; - public const int GL_WEIGHT_SUM_UNITY_ARB = 0x86A6; - public const int GL_VERTEX_BLEND_ARB = 0x86A7; - public const int GL_CURRENT_WEIGHT_ARB = 0x86A8; - public const int GL_WEIGHT_ARRAY_TYPE_ARB = 0x86A9; - public const int GL_WEIGHT_ARRAY_STRIDE_ARB = 0x86AA; - public const int GL_WEIGHT_ARRAY_SIZE_ARB = 0x86AB; - public const int GL_WEIGHT_ARRAY_POINTER_ARB = 0x86AC; - public const int GL_WEIGHT_ARRAY_ARB = 0x86AD; - public const int GL_MODELVIEW0_ARB = 0x1700; - public const int GL_MODELVIEW1_ARB = 0x850A; - public const int GL_MODELVIEW2_ARB = 0x8722; - public const int GL_MODELVIEW3_ARB = 0x8723; - public const int GL_MODELVIEW4_ARB = 0x8724; - public const int GL_MODELVIEW5_ARB = 0x8725; - public const int GL_MODELVIEW6_ARB = 0x8726; - public const int GL_MODELVIEW7_ARB = 0x8727; - public const int GL_MODELVIEW8_ARB = 0x8728; - public const int GL_MODELVIEW9_ARB = 0x8729; - public const int GL_MODELVIEW10_ARB = 0x872A; - public const int GL_MODELVIEW11_ARB = 0x872B; - public const int GL_MODELVIEW12_ARB = 0x872C; - public const int GL_MODELVIEW13_ARB = 0x872D; - public const int GL_MODELVIEW14_ARB = 0x872E; - public const int GL_MODELVIEW15_ARB = 0x872F; - public const int GL_MODELVIEW16_ARB = 0x8730; - public const int GL_MODELVIEW17_ARB = 0x8731; - public const int GL_MODELVIEW18_ARB = 0x8732; - public const int GL_MODELVIEW19_ARB = 0x8733; - public const int GL_MODELVIEW20_ARB = 0x8734; - public const int GL_MODELVIEW21_ARB = 0x8735; - public const int GL_MODELVIEW22_ARB = 0x8736; - public const int GL_MODELVIEW23_ARB = 0x8737; - public const int GL_MODELVIEW24_ARB = 0x8738; - public const int GL_MODELVIEW25_ARB = 0x8739; - public const int GL_MODELVIEW26_ARB = 0x873A; - public const int GL_MODELVIEW27_ARB = 0x873B; - public const int GL_MODELVIEW28_ARB = 0x873C; - public const int GL_MODELVIEW29_ARB = 0x873D; - public const int GL_MODELVIEW30_ARB = 0x873E; - public const int GL_MODELVIEW31_ARB = 0x873F; - public const int GL_ARB_vertex_buffer_object = 1; - public const int GL_BUFFER_SIZE_ARB = 0x8764; - public const int GL_BUFFER_USAGE_ARB = 0x8765; - public const int GL_ARRAY_BUFFER_ARB = 0x8892; - public const int GL_ELEMENT_ARRAY_BUFFER_ARB = 0x8893; - public const int GL_ARRAY_BUFFER_BINDING_ARB = 0x8894; - public const int GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB = 0x8895; - public const int GL_VERTEX_ARRAY_BUFFER_BINDING_ARB = 0x8896; - public const int GL_NORMAL_ARRAY_BUFFER_BINDING_ARB = 0x8897; - public const int GL_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x8898; - public const int GL_INDEX_ARRAY_BUFFER_BINDING_ARB = 0x8899; - public const int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB = 0x889A; - public const int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB = 0x889B; - public const int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x889C; - public const int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB = 0x889D; - public const int GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB = 0x889E; - public const int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB = 0x889F; - public const int GL_READ_ONLY_ARB = 0x88B8; - public const int GL_WRITE_ONLY_ARB = 0x88B9; - public const int GL_READ_WRITE_ARB = 0x88BA; - public const int GL_BUFFER_ACCESS_ARB = 0x88BB; - public const int GL_BUFFER_MAPPED_ARB = 0x88BC; - public const int GL_BUFFER_MAP_POINTER_ARB = 0x88BD; - public const int GL_STREAM_DRAW_ARB = 0x88E0; - public const int GL_STREAM_READ_ARB = 0x88E1; - public const int GL_STREAM_COPY_ARB = 0x88E2; - public const int GL_STATIC_DRAW_ARB = 0x88E4; - public const int GL_STATIC_READ_ARB = 0x88E5; - public const int GL_STATIC_COPY_ARB = 0x88E6; - public const int GL_DYNAMIC_DRAW_ARB = 0x88E8; - public const int GL_DYNAMIC_READ_ARB = 0x88E9; - public const int GL_DYNAMIC_COPY_ARB = 0x88EA; - public const int GL_ARB_vertex_program = 1; - public const int GL_COLOR_SUM_ARB = 0x8458; - public const int GL_VERTEX_PROGRAM_ARB = 0x8620; - public const int GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622; - public const int GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623; - public const int GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624; - public const int GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625; - public const int GL_CURRENT_VERTEX_ATTRIB_ARB = 0x8626; - public const int GL_VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642; - public const int GL_VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643; - public const int GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645; - public const int GL_MAX_VERTEX_ATTRIBS_ARB = 0x8869; - public const int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886A; - public const int GL_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B0; - public const int GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B1; - public const int GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B2; - public const int GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B3; - public const int GL_ARB_vertex_shader = 1; - public const int GL_VERTEX_SHADER_ARB = 0x8B31; - public const int GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB = 0x8B4A; - public const int GL_MAX_VARYING_FLOATS_ARB = 0x8B4B; - public const int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = 0x8B4C; - public const int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB = 0x8B4D; - public const int GL_OBJECT_ACTIVE_ATTRIBUTES_ARB = 0x8B89; - public const int GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB = 0x8B8A; - public const int GL_ARB_vertex_type_10f_11f_11f_rev = 1; - public const int GL_ARB_vertex_type_2_10_10_10_rev = 1; - public const int GL_ARB_viewport_array = 1; - public const int GL_ARB_window_pos = 1; - public const int GL_KHR_blend_equation_advanced = 1; - public const int GL_MULTIPLY_KHR = 0x9294; - public const int GL_SCREEN_KHR = 0x9295; - public const int GL_OVERLAY_KHR = 0x9296; - public const int GL_DARKEN_KHR = 0x9297; - public const int GL_LIGHTEN_KHR = 0x9298; - public const int GL_COLORDODGE_KHR = 0x9299; - public const int GL_COLORBURN_KHR = 0x929A; - public const int GL_HARDLIGHT_KHR = 0x929B; - public const int GL_SOFTLIGHT_KHR = 0x929C; - public const int GL_DIFFERENCE_KHR = 0x929E; - public const int GL_EXCLUSION_KHR = 0x92A0; - public const int GL_HSL_HUE_KHR = 0x92AD; - public const int GL_HSL_SATURATION_KHR = 0x92AE; - public const int GL_HSL_COLOR_KHR = 0x92AF; - public const int GL_HSL_LUMINOSITY_KHR = 0x92B0; - public const int GL_KHR_blend_equation_advanced_coherent = 1; - public const int GL_BLEND_ADVANCED_COHERENT_KHR = 0x9285; - public const int GL_KHR_context_flush_control = 1; - public const int GL_KHR_debug = 1; - public const int GL_KHR_no_error = 1; - public const int GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR = 0x00000008; - public const int GL_KHR_parallel_shader_compile = 1; - public const int GL_MAX_SHADER_COMPILER_THREADS_KHR = 0x91B0; - public const int GL_COMPLETION_STATUS_KHR = 0x91B1; - public const int GL_KHR_robust_buffer_access_behavior = 1; - public const int GL_KHR_robustness = 1; - public const int GL_CONTEXT_ROBUST_ACCESS = 0x90F3; - public const int GL_KHR_texture_compression_astc_hdr = 1; - public const int GL_COMPRESSED_RGBA_ASTC_4x4_KHR = 0x93B0; - public const int GL_COMPRESSED_RGBA_ASTC_5x4_KHR = 0x93B1; - public const int GL_COMPRESSED_RGBA_ASTC_5x5_KHR = 0x93B2; - public const int GL_COMPRESSED_RGBA_ASTC_6x5_KHR = 0x93B3; - public const int GL_COMPRESSED_RGBA_ASTC_6x6_KHR = 0x93B4; - public const int GL_COMPRESSED_RGBA_ASTC_8x5_KHR = 0x93B5; - public const int GL_COMPRESSED_RGBA_ASTC_8x6_KHR = 0x93B6; - public const int GL_COMPRESSED_RGBA_ASTC_8x8_KHR = 0x93B7; - public const int GL_COMPRESSED_RGBA_ASTC_10x5_KHR = 0x93B8; - public const int GL_COMPRESSED_RGBA_ASTC_10x6_KHR = 0x93B9; - public const int GL_COMPRESSED_RGBA_ASTC_10x8_KHR = 0x93BA; - public const int GL_COMPRESSED_RGBA_ASTC_10x10_KHR = 0x93BB; - public const int GL_COMPRESSED_RGBA_ASTC_12x10_KHR = 0x93BC; - public const int GL_COMPRESSED_RGBA_ASTC_12x12_KHR = 0x93BD; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 0x93D0; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 0x93D1; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 0x93D2; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 0x93D3; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 0x93D4; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 0x93D5; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 0x93D6; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 0x93D7; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = 0x93D8; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = 0x93D9; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = 0x93DA; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = 0x93DB; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = 0x93DC; - public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = 0x93DD; - public const int GL_KHR_texture_compression_astc_ldr = 1; - public const int GL_KHR_texture_compression_astc_sliced_3d = 1; - public const int GL_OES_byte_coordinates = 1; - public const int GL_OES_compressed_paletted_texture = 1; - public const int GL_PALETTE4_RGB8_OES = 0x8B90; - public const int GL_PALETTE4_RGBA8_OES = 0x8B91; - public const int GL_PALETTE4_R5_G6_B5_OES = 0x8B92; - public const int GL_PALETTE4_RGBA4_OES = 0x8B93; - public const int GL_PALETTE4_RGB5_A1_OES = 0x8B94; - public const int GL_PALETTE8_RGB8_OES = 0x8B95; - public const int GL_PALETTE8_RGBA8_OES = 0x8B96; - public const int GL_PALETTE8_R5_G6_B5_OES = 0x8B97; - public const int GL_PALETTE8_RGBA4_OES = 0x8B98; - public const int GL_PALETTE8_RGB5_A1_OES = 0x8B99; - public const int GL_OES_fixed_point = 1; - public const int GL_FIXED_OES = 0x140C; - public const int GL_OES_query_matrix = 1; - public const int GL_OES_read_format = 1; - public const int GL_IMPLEMENTATION_COLOR_READ_TYPE_OES = 0x8B9A; - public const int GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES = 0x8B9B; - public const int GL_OES_single_precision = 1; - public const int GL_3DFX_multisample = 1; - public const int GL_MULTISAMPLE_3DFX = 0x86B2; - public const int GL_SAMPLE_BUFFERS_3DFX = 0x86B3; - public const int GL_SAMPLES_3DFX = 0x86B4; - public const int GL_MULTISAMPLE_BIT_3DFX = 0x20000000; - public const int GL_3DFX_tbuffer = 1; - public const int GL_3DFX_texture_compression_FXT1 = 1; - public const int GL_COMPRESSED_RGB_FXT1_3DFX = 0x86B0; - public const int GL_COMPRESSED_RGBA_FXT1_3DFX = 0x86B1; - public const int GL_AMD_blend_minmax_factor = 1; - public const int GL_FACTOR_MIN_AMD = 0x901C; - public const int GL_FACTOR_MAX_AMD = 0x901D; - public const int GL_AMD_conservative_depth = 1; - public const int GL_AMD_debug_output = 1; - public const int GL_MAX_DEBUG_MESSAGE_LENGTH_AMD = 0x9143; - public const int GL_MAX_DEBUG_LOGGED_MESSAGES_AMD = 0x9144; - public const int GL_DEBUG_LOGGED_MESSAGES_AMD = 0x9145; - public const int GL_DEBUG_SEVERITY_HIGH_AMD = 0x9146; - public const int GL_DEBUG_SEVERITY_MEDIUM_AMD = 0x9147; - public const int GL_DEBUG_SEVERITY_LOW_AMD = 0x9148; - public const int GL_DEBUG_CATEGORY_API_ERROR_AMD = 0x9149; - public const int GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD = 0x914A; - public const int GL_DEBUG_CATEGORY_DEPRECATION_AMD = 0x914B; - public const int GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD = 0x914C; - public const int GL_DEBUG_CATEGORY_PERFORMANCE_AMD = 0x914D; - public const int GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD = 0x914E; - public const int GL_DEBUG_CATEGORY_APPLICATION_AMD = 0x914F; - public const int GL_DEBUG_CATEGORY_OTHER_AMD = 0x9150; - public const int GL_AMD_depth_clamp_separate = 1; - public const int GL_DEPTH_CLAMP_NEAR_AMD = 0x901E; - public const int GL_DEPTH_CLAMP_FAR_AMD = 0x901F; - public const int GL_AMD_draw_buffers_blend = 1; - public const int GL_AMD_framebuffer_multisample_advanced = 1; - public const int GL_RENDERBUFFER_STORAGE_SAMPLES_AMD = 0x91B2; - public const int GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD = 0x91B3; - public const int GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD = 0x91B4; - public const int GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD = 0x91B5; - public const int GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD = 0x91B6; - public const int GL_SUPPORTED_MULTISAMPLE_MODES_AMD = 0x91B7; - public const int GL_AMD_framebuffer_sample_positions = 1; - public const int GL_SUBSAMPLE_DISTANCE_AMD = 0x883F; - public const int GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD = 0x91AE; - public const int GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD = 0x91AF; - public const int GL_ALL_PIXELS_AMD = -1; - public const int GL_AMD_gcn_shader = 1; - public const int GL_AMD_gpu_shader_half_float = 1; - public const int GL_FLOAT16_NV = 0x8FF8; - public const int GL_FLOAT16_VEC2_NV = 0x8FF9; - public const int GL_FLOAT16_VEC3_NV = 0x8FFA; - public const int GL_FLOAT16_VEC4_NV = 0x8FFB; - public const int GL_FLOAT16_MAT2_AMD = 0x91C5; - public const int GL_FLOAT16_MAT3_AMD = 0x91C6; - public const int GL_FLOAT16_MAT4_AMD = 0x91C7; - public const int GL_FLOAT16_MAT2x3_AMD = 0x91C8; - public const int GL_FLOAT16_MAT2x4_AMD = 0x91C9; - public const int GL_FLOAT16_MAT3x2_AMD = 0x91CA; - public const int GL_FLOAT16_MAT3x4_AMD = 0x91CB; - public const int GL_FLOAT16_MAT4x2_AMD = 0x91CC; - public const int GL_FLOAT16_MAT4x3_AMD = 0x91CD; - public const int GL_AMD_gpu_shader_int16 = 1; - public const int GL_AMD_gpu_shader_int64 = 1; - public const int GL_INT64_NV = 0x140E; - public const int GL_UNSIGNED_INT64_NV = 0x140F; - public const int GL_INT8_NV = 0x8FE0; - public const int GL_INT8_VEC2_NV = 0x8FE1; - public const int GL_INT8_VEC3_NV = 0x8FE2; - public const int GL_INT8_VEC4_NV = 0x8FE3; - public const int GL_INT16_NV = 0x8FE4; - public const int GL_INT16_VEC2_NV = 0x8FE5; - public const int GL_INT16_VEC3_NV = 0x8FE6; - public const int GL_INT16_VEC4_NV = 0x8FE7; - public const int GL_INT64_VEC2_NV = 0x8FE9; - public const int GL_INT64_VEC3_NV = 0x8FEA; - public const int GL_INT64_VEC4_NV = 0x8FEB; - public const int GL_UNSIGNED_INT8_NV = 0x8FEC; - public const int GL_UNSIGNED_INT8_VEC2_NV = 0x8FED; - public const int GL_UNSIGNED_INT8_VEC3_NV = 0x8FEE; - public const int GL_UNSIGNED_INT8_VEC4_NV = 0x8FEF; - public const int GL_UNSIGNED_INT16_NV = 0x8FF0; - public const int GL_UNSIGNED_INT16_VEC2_NV = 0x8FF1; - public const int GL_UNSIGNED_INT16_VEC3_NV = 0x8FF2; - public const int GL_UNSIGNED_INT16_VEC4_NV = 0x8FF3; - public const int GL_UNSIGNED_INT64_VEC2_NV = 0x8FF5; - public const int GL_UNSIGNED_INT64_VEC3_NV = 0x8FF6; - public const int GL_UNSIGNED_INT64_VEC4_NV = 0x8FF7; - public const int GL_AMD_interleaved_elements = 1; - public const int GL_VERTEX_ELEMENT_SWIZZLE_AMD = 0x91A4; - public const int GL_VERTEX_ID_SWIZZLE_AMD = 0x91A5; - public const int GL_AMD_multi_draw_indirect = 1; - public const int GL_AMD_name_gen_delete = 1; - public const int GL_DATA_BUFFER_AMD = 0x9151; - public const int GL_PERFORMANCE_MONITOR_AMD = 0x9152; - public const int GL_QUERY_OBJECT_AMD = 0x9153; - public const int GL_VERTEX_ARRAY_OBJECT_AMD = 0x9154; - public const int GL_SAMPLER_OBJECT_AMD = 0x9155; - public const int GL_AMD_occlusion_query_event = 1; - public const int GL_OCCLUSION_QUERY_EVENT_MASK_AMD = 0x874F; - public const int GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD = 0x00000001; - public const int GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD = 0x00000002; - public const int GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD = 0x00000004; - public const int GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD = 0x00000008; - public const int GL_QUERY_ALL_EVENT_BITS_AMD = -1; - public const int GL_AMD_performance_monitor = 1; - public const int GL_COUNTER_TYPE_AMD = 0x8BC0; - public const int GL_COUNTER_RANGE_AMD = 0x8BC1; - public const int GL_UNSIGNED_INT64_AMD = 0x8BC2; - public const int GL_PERCENTAGE_AMD = 0x8BC3; - public const int GL_PERFMON_RESULT_AVAILABLE_AMD = 0x8BC4; - public const int GL_PERFMON_RESULT_SIZE_AMD = 0x8BC5; - public const int GL_PERFMON_RESULT_AMD = 0x8BC6; - public const int GL_AMD_pinned_memory = 1; - public const int GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD = 0x9160; - public const int GL_AMD_query_buffer_object = 1; - public const int GL_QUERY_BUFFER_AMD = 0x9192; - public const int GL_QUERY_BUFFER_BINDING_AMD = 0x9193; - public const int GL_QUERY_RESULT_NO_WAIT_AMD = 0x9194; - public const int GL_AMD_sample_positions = 1; - public const int GL_AMD_seamless_cubemap_per_texture = 1; - public const int GL_AMD_shader_atomic_counter_ops = 1; - public const int GL_AMD_shader_ballot = 1; - public const int GL_AMD_shader_explicit_vertex_parameter = 1; - public const int GL_AMD_shader_gpu_shader_half_float_fetch = 1; - public const int GL_AMD_shader_image_load_store_lod = 1; - public const int GL_AMD_shader_stencil_export = 1; - public const int GL_AMD_shader_trinary_minmax = 1; - public const int GL_AMD_sparse_texture = 1; - public const int GL_VIRTUAL_PAGE_SIZE_X_AMD = 0x9195; - public const int GL_VIRTUAL_PAGE_SIZE_Y_AMD = 0x9196; - public const int GL_VIRTUAL_PAGE_SIZE_Z_AMD = 0x9197; - public const int GL_MAX_SPARSE_TEXTURE_SIZE_AMD = 0x9198; - public const int GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD = 0x9199; - public const int GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS = 0x919A; - public const int GL_MIN_SPARSE_LEVEL_AMD = 0x919B; - public const int GL_MIN_LOD_WARNING_AMD = 0x919C; - public const int GL_TEXTURE_STORAGE_SPARSE_BIT_AMD = 0x00000001; - public const int GL_AMD_stencil_operation_extended = 1; - public const int GL_SET_AMD = 0x874A; - public const int GL_REPLACE_VALUE_AMD = 0x874B; - public const int GL_STENCIL_OP_VALUE_AMD = 0x874C; - public const int GL_STENCIL_BACK_OP_VALUE_AMD = 0x874D; - public const int GL_AMD_texture_gather_bias_lod = 1; - public const int GL_AMD_texture_texture4 = 1; - public const int GL_AMD_transform_feedback3_lines_triangles = 1; - public const int GL_AMD_transform_feedback4 = 1; - public const int GL_STREAM_RASTERIZATION_AMD = 0x91A0; - public const int GL_AMD_vertex_shader_layer = 1; - public const int GL_AMD_vertex_shader_tessellator = 1; - public const int GL_SAMPLER_BUFFER_AMD = 0x9001; - public const int GL_INT_SAMPLER_BUFFER_AMD = 0x9002; - public const int GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD = 0x9003; - public const int GL_TESSELLATION_MODE_AMD = 0x9004; - public const int GL_TESSELLATION_FACTOR_AMD = 0x9005; - public const int GL_DISCRETE_AMD = 0x9006; - public const int GL_CONTINUOUS_AMD = 0x9007; - public const int GL_AMD_vertex_shader_viewport_index = 1; - public const int GL_APPLE_aux_depth_stencil = 1; - public const int GL_AUX_DEPTH_STENCIL_APPLE = 0x8A14; - public const int GL_APPLE_client_storage = 1; - public const int GL_UNPACK_CLIENT_STORAGE_APPLE = 0x85B2; - public const int GL_APPLE_element_array = 1; - public const int GL_ELEMENT_ARRAY_APPLE = 0x8A0C; - public const int GL_ELEMENT_ARRAY_TYPE_APPLE = 0x8A0D; - public const int GL_ELEMENT_ARRAY_POINTER_APPLE = 0x8A0E; - public const int GL_APPLE_fence = 1; - public const int GL_DRAW_PIXELS_APPLE = 0x8A0A; - public const int GL_FENCE_APPLE = 0x8A0B; - public const int GL_APPLE_float_pixels = 1; - public const int GL_HALF_APPLE = 0x140B; - public const int GL_RGBA_FLOAT32_APPLE = 0x8814; - public const int GL_RGB_FLOAT32_APPLE = 0x8815; - public const int GL_ALPHA_FLOAT32_APPLE = 0x8816; - public const int GL_INTENSITY_FLOAT32_APPLE = 0x8817; - public const int GL_LUMINANCE_FLOAT32_APPLE = 0x8818; - public const int GL_LUMINANCE_ALPHA_FLOAT32_APPLE = 0x8819; - public const int GL_RGBA_FLOAT16_APPLE = 0x881A; - public const int GL_RGB_FLOAT16_APPLE = 0x881B; - public const int GL_ALPHA_FLOAT16_APPLE = 0x881C; - public const int GL_INTENSITY_FLOAT16_APPLE = 0x881D; - public const int GL_LUMINANCE_FLOAT16_APPLE = 0x881E; - public const int GL_LUMINANCE_ALPHA_FLOAT16_APPLE = 0x881F; - public const int GL_COLOR_FLOAT_APPLE = 0x8A0F; - public const int GL_APPLE_flush_buffer_range = 1; - public const int GL_BUFFER_SERIALIZED_MODIFY_APPLE = 0x8A12; - public const int GL_BUFFER_FLUSHING_UNMAP_APPLE = 0x8A13; - public const int GL_APPLE_object_purgeable = 1; - public const int GL_BUFFER_OBJECT_APPLE = 0x85B3; - public const int GL_RELEASED_APPLE = 0x8A19; - public const int GL_VOLATILE_APPLE = 0x8A1A; - public const int GL_RETAINED_APPLE = 0x8A1B; - public const int GL_UNDEFINED_APPLE = 0x8A1C; - public const int GL_PURGEABLE_APPLE = 0x8A1D; - public const int GL_APPLE_rgb_422 = 1; - public const int GL_RGB_422_APPLE = 0x8A1F; - public const int GL_UNSIGNED_SHORT_8_8_APPLE = 0x85BA; - public const int GL_UNSIGNED_SHORT_8_8_REV_APPLE = 0x85BB; - public const int GL_RGB_RAW_422_APPLE = 0x8A51; - public const int GL_APPLE_row_bytes = 1; - public const int GL_PACK_ROW_BYTES_APPLE = 0x8A15; - public const int GL_UNPACK_ROW_BYTES_APPLE = 0x8A16; - public const int GL_APPLE_specular_vector = 1; - public const int GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE = 0x85B0; - public const int GL_APPLE_texture_range = 1; - public const int GL_TEXTURE_RANGE_LENGTH_APPLE = 0x85B7; - public const int GL_TEXTURE_RANGE_POINTER_APPLE = 0x85B8; - public const int GL_TEXTURE_STORAGE_HINT_APPLE = 0x85BC; - public const int GL_STORAGE_PRIVATE_APPLE = 0x85BD; - public const int GL_STORAGE_CACHED_APPLE = 0x85BE; - public const int GL_STORAGE_SHARED_APPLE = 0x85BF; - public const int GL_APPLE_transform_hint = 1; - public const int GL_TRANSFORM_HINT_APPLE = 0x85B1; - public const int GL_APPLE_vertex_array_object = 1; - public const int GL_VERTEX_ARRAY_BINDING_APPLE = 0x85B5; - public const int GL_APPLE_vertex_array_range = 1; - public const int GL_VERTEX_ARRAY_RANGE_APPLE = 0x851D; - public const int GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE = 0x851E; - public const int GL_VERTEX_ARRAY_STORAGE_HINT_APPLE = 0x851F; - public const int GL_VERTEX_ARRAY_RANGE_POINTER_APPLE = 0x8521; - public const int GL_STORAGE_CLIENT_APPLE = 0x85B4; - public const int GL_APPLE_vertex_program_evaluators = 1; - public const int GL_VERTEX_ATTRIB_MAP1_APPLE = 0x8A00; - public const int GL_VERTEX_ATTRIB_MAP2_APPLE = 0x8A01; - public const int GL_VERTEX_ATTRIB_MAP1_SIZE_APPLE = 0x8A02; - public const int GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE = 0x8A03; - public const int GL_VERTEX_ATTRIB_MAP1_ORDER_APPLE = 0x8A04; - public const int GL_VERTEX_ATTRIB_MAP1_DOMAIN_APPLE = 0x8A05; - public const int GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE = 0x8A06; - public const int GL_VERTEX_ATTRIB_MAP2_COEFF_APPLE = 0x8A07; - public const int GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE = 0x8A08; - public const int GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE = 0x8A09; - public const int GL_APPLE_ycbcr_422 = 1; - public const int GL_YCBCR_422_APPLE = 0x85B9; - public const int GL_ATI_draw_buffers = 1; - public const int GL_MAX_DRAW_BUFFERS_ATI = 0x8824; - public const int GL_DRAW_BUFFER0_ATI = 0x8825; - public const int GL_DRAW_BUFFER1_ATI = 0x8826; - public const int GL_DRAW_BUFFER2_ATI = 0x8827; - public const int GL_DRAW_BUFFER3_ATI = 0x8828; - public const int GL_DRAW_BUFFER4_ATI = 0x8829; - public const int GL_DRAW_BUFFER5_ATI = 0x882A; - public const int GL_DRAW_BUFFER6_ATI = 0x882B; - public const int GL_DRAW_BUFFER7_ATI = 0x882C; - public const int GL_DRAW_BUFFER8_ATI = 0x882D; - public const int GL_DRAW_BUFFER9_ATI = 0x882E; - public const int GL_DRAW_BUFFER10_ATI = 0x882F; - public const int GL_DRAW_BUFFER11_ATI = 0x8830; - public const int GL_DRAW_BUFFER12_ATI = 0x8831; - public const int GL_DRAW_BUFFER13_ATI = 0x8832; - public const int GL_DRAW_BUFFER14_ATI = 0x8833; - public const int GL_DRAW_BUFFER15_ATI = 0x8834; - public const int GL_ATI_element_array = 1; - public const int GL_ELEMENT_ARRAY_ATI = 0x8768; - public const int GL_ELEMENT_ARRAY_TYPE_ATI = 0x8769; - public const int GL_ELEMENT_ARRAY_POINTER_ATI = 0x876A; - public const int GL_ATI_envmap_bumpmap = 1; - public const int GL_BUMP_ROT_MATRIX_ATI = 0x8775; - public const int GL_BUMP_ROT_MATRIX_SIZE_ATI = 0x8776; - public const int GL_BUMP_NUM_TEX_UNITS_ATI = 0x8777; - public const int GL_BUMP_TEX_UNITS_ATI = 0x8778; - public const int GL_DUDV_ATI = 0x8779; - public const int GL_DU8DV8_ATI = 0x877A; - public const int GL_BUMP_ENVMAP_ATI = 0x877B; - public const int GL_BUMP_TARGET_ATI = 0x877C; - public const int GL_ATI_fragment_shader = 1; - public const int GL_FRAGMENT_SHADER_ATI = 0x8920; - public const int GL_REG_0_ATI = 0x8921; - public const int GL_REG_1_ATI = 0x8922; - public const int GL_REG_2_ATI = 0x8923; - public const int GL_REG_3_ATI = 0x8924; - public const int GL_REG_4_ATI = 0x8925; - public const int GL_REG_5_ATI = 0x8926; - public const int GL_REG_6_ATI = 0x8927; - public const int GL_REG_7_ATI = 0x8928; - public const int GL_REG_8_ATI = 0x8929; - public const int GL_REG_9_ATI = 0x892A; - public const int GL_REG_10_ATI = 0x892B; - public const int GL_REG_11_ATI = 0x892C; - public const int GL_REG_12_ATI = 0x892D; - public const int GL_REG_13_ATI = 0x892E; - public const int GL_REG_14_ATI = 0x892F; - public const int GL_REG_15_ATI = 0x8930; - public const int GL_REG_16_ATI = 0x8931; - public const int GL_REG_17_ATI = 0x8932; - public const int GL_REG_18_ATI = 0x8933; - public const int GL_REG_19_ATI = 0x8934; - public const int GL_REG_20_ATI = 0x8935; - public const int GL_REG_21_ATI = 0x8936; - public const int GL_REG_22_ATI = 0x8937; - public const int GL_REG_23_ATI = 0x8938; - public const int GL_REG_24_ATI = 0x8939; - public const int GL_REG_25_ATI = 0x893A; - public const int GL_REG_26_ATI = 0x893B; - public const int GL_REG_27_ATI = 0x893C; - public const int GL_REG_28_ATI = 0x893D; - public const int GL_REG_29_ATI = 0x893E; - public const int GL_REG_30_ATI = 0x893F; - public const int GL_REG_31_ATI = 0x8940; - public const int GL_CON_0_ATI = 0x8941; - public const int GL_CON_1_ATI = 0x8942; - public const int GL_CON_2_ATI = 0x8943; - public const int GL_CON_3_ATI = 0x8944; - public const int GL_CON_4_ATI = 0x8945; - public const int GL_CON_5_ATI = 0x8946; - public const int GL_CON_6_ATI = 0x8947; - public const int GL_CON_7_ATI = 0x8948; - public const int GL_CON_8_ATI = 0x8949; - public const int GL_CON_9_ATI = 0x894A; - public const int GL_CON_10_ATI = 0x894B; - public const int GL_CON_11_ATI = 0x894C; - public const int GL_CON_12_ATI = 0x894D; - public const int GL_CON_13_ATI = 0x894E; - public const int GL_CON_14_ATI = 0x894F; - public const int GL_CON_15_ATI = 0x8950; - public const int GL_CON_16_ATI = 0x8951; - public const int GL_CON_17_ATI = 0x8952; - public const int GL_CON_18_ATI = 0x8953; - public const int GL_CON_19_ATI = 0x8954; - public const int GL_CON_20_ATI = 0x8955; - public const int GL_CON_21_ATI = 0x8956; - public const int GL_CON_22_ATI = 0x8957; - public const int GL_CON_23_ATI = 0x8958; - public const int GL_CON_24_ATI = 0x8959; - public const int GL_CON_25_ATI = 0x895A; - public const int GL_CON_26_ATI = 0x895B; - public const int GL_CON_27_ATI = 0x895C; - public const int GL_CON_28_ATI = 0x895D; - public const int GL_CON_29_ATI = 0x895E; - public const int GL_CON_30_ATI = 0x895F; - public const int GL_CON_31_ATI = 0x8960; - public const int GL_MOV_ATI = 0x8961; - public const int GL_ADD_ATI = 0x8963; - public const int GL_MUL_ATI = 0x8964; - public const int GL_SUB_ATI = 0x8965; - public const int GL_DOT3_ATI = 0x8966; - public const int GL_DOT4_ATI = 0x8967; - public const int GL_MAD_ATI = 0x8968; - public const int GL_LERP_ATI = 0x8969; - public const int GL_CND_ATI = 0x896A; - public const int GL_CND0_ATI = 0x896B; - public const int GL_DOT2_ADD_ATI = 0x896C; - public const int GL_SECONDARY_INTERPOLATOR_ATI = 0x896D; - public const int GL_NUM_FRAGMENT_REGISTERS_ATI = 0x896E; - public const int GL_NUM_FRAGMENT_CONSTANTS_ATI = 0x896F; - public const int GL_NUM_PASSES_ATI = 0x8970; - public const int GL_NUM_INSTRUCTIONS_PER_PASS_ATI = 0x8971; - public const int GL_NUM_INSTRUCTIONS_TOTAL_ATI = 0x8972; - public const int GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI = 0x8973; - public const int GL_NUM_LOOPBACK_COMPONENTS_ATI = 0x8974; - public const int GL_COLOR_ALPHA_PAIRING_ATI = 0x8975; - public const int GL_SWIZZLE_STR_ATI = 0x8976; - public const int GL_SWIZZLE_STQ_ATI = 0x8977; - public const int GL_SWIZZLE_STR_DR_ATI = 0x8978; - public const int GL_SWIZZLE_STQ_DQ_ATI = 0x8979; - public const int GL_SWIZZLE_STRQ_ATI = 0x897A; - public const int GL_SWIZZLE_STRQ_DQ_ATI = 0x897B; - public const int GL_RED_BIT_ATI = 0x00000001; - public const int GL_GREEN_BIT_ATI = 0x00000002; - public const int GL_BLUE_BIT_ATI = 0x00000004; - public const int GL_2X_BIT_ATI = 0x00000001; - public const int GL_4X_BIT_ATI = 0x00000002; - public const int GL_8X_BIT_ATI = 0x00000004; - public const int GL_HALF_BIT_ATI = 0x00000008; - public const int GL_QUARTER_BIT_ATI = 0x00000010; - public const int GL_EIGHTH_BIT_ATI = 0x00000020; - public const int GL_SATURATE_BIT_ATI = 0x00000040; - public const int GL_COMP_BIT_ATI = 0x00000002; - public const int GL_NEGATE_BIT_ATI = 0x00000004; - public const int GL_BIAS_BIT_ATI = 0x00000008; - public const int GL_ATI_map_object_buffer = 1; - public const int GL_ATI_meminfo = 1; - public const int GL_VBO_FREE_MEMORY_ATI = 0x87FB; - public const int GL_TEXTURE_FREE_MEMORY_ATI = 0x87FC; - public const int GL_RENDERBUFFER_FREE_MEMORY_ATI = 0x87FD; - public const int GL_ATI_pixel_format_float = 1; - public const int GL_RGBA_FLOAT_MODE_ATI = 0x8820; - public const int GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI = 0x8835; - public const int GL_ATI_pn_triangles = 1; - public const int GL_PN_TRIANGLES_ATI = 0x87F0; - public const int GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F1; - public const int GL_PN_TRIANGLES_POINT_MODE_ATI = 0x87F2; - public const int GL_PN_TRIANGLES_NORMAL_MODE_ATI = 0x87F3; - public const int GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F4; - public const int GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI = 0x87F5; - public const int GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI = 0x87F6; - public const int GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI = 0x87F7; - public const int GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI = 0x87F8; - public const int GL_ATI_separate_stencil = 1; - public const int GL_STENCIL_BACK_FUNC_ATI = 0x8800; - public const int GL_STENCIL_BACK_FAIL_ATI = 0x8801; - public const int GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI = 0x8802; - public const int GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI = 0x8803; - public const int GL_ATI_text_fragment_shader = 1; - public const int GL_TEXT_FRAGMENT_SHADER_ATI = 0x8200; - public const int GL_ATI_texture_env_combine3 = 1; - public const int GL_MODULATE_ADD_ATI = 0x8744; - public const int GL_MODULATE_SIGNED_ADD_ATI = 0x8745; - public const int GL_MODULATE_SUBTRACT_ATI = 0x8746; - public const int GL_ATI_texture_float = 1; - public const int GL_RGBA_FLOAT32_ATI = 0x8814; - public const int GL_RGB_FLOAT32_ATI = 0x8815; - public const int GL_ALPHA_FLOAT32_ATI = 0x8816; - public const int GL_INTENSITY_FLOAT32_ATI = 0x8817; - public const int GL_LUMINANCE_FLOAT32_ATI = 0x8818; - public const int GL_LUMINANCE_ALPHA_FLOAT32_ATI = 0x8819; - public const int GL_RGBA_FLOAT16_ATI = 0x881A; - public const int GL_RGB_FLOAT16_ATI = 0x881B; - public const int GL_ALPHA_FLOAT16_ATI = 0x881C; - public const int GL_INTENSITY_FLOAT16_ATI = 0x881D; - public const int GL_LUMINANCE_FLOAT16_ATI = 0x881E; - public const int GL_LUMINANCE_ALPHA_FLOAT16_ATI = 0x881F; - public const int GL_ATI_texture_mirror_once = 1; - public const int GL_MIRROR_CLAMP_ATI = 0x8742; - public const int GL_MIRROR_CLAMP_TO_EDGE_ATI = 0x8743; - public const int GL_ATI_vertex_array_object = 1; - public const int GL_STATIC_ATI = 0x8760; - public const int GL_DYNAMIC_ATI = 0x8761; - public const int GL_PRESERVE_ATI = 0x8762; - public const int GL_DISCARD_ATI = 0x8763; - public const int GL_OBJECT_BUFFER_SIZE_ATI = 0x8764; - public const int GL_OBJECT_BUFFER_USAGE_ATI = 0x8765; - public const int GL_ARRAY_OBJECT_BUFFER_ATI = 0x8766; - public const int GL_ARRAY_OBJECT_OFFSET_ATI = 0x8767; - public const int GL_ATI_vertex_attrib_array_object = 1; - public const int GL_ATI_vertex_streams = 1; - public const int GL_MAX_VERTEX_STREAMS_ATI = 0x876B; - public const int GL_VERTEX_STREAM0_ATI = 0x876C; - public const int GL_VERTEX_STREAM1_ATI = 0x876D; - public const int GL_VERTEX_STREAM2_ATI = 0x876E; - public const int GL_VERTEX_STREAM3_ATI = 0x876F; - public const int GL_VERTEX_STREAM4_ATI = 0x8770; - public const int GL_VERTEX_STREAM5_ATI = 0x8771; - public const int GL_VERTEX_STREAM6_ATI = 0x8772; - public const int GL_VERTEX_STREAM7_ATI = 0x8773; - public const int GL_VERTEX_SOURCE_ATI = 0x8774; - public const int GL_EXT_422_pixels = 1; - public const int GL_422_EXT = 0x80CC; - public const int GL_422_REV_EXT = 0x80CD; - public const int GL_422_AVERAGE_EXT = 0x80CE; - public const int GL_422_REV_AVERAGE_EXT = 0x80CF; - public const int GL_EXT_EGL_image_storage = 1; - public const int GL_EXT_abgr = 1; - public const int GL_ABGR_EXT = 0x8000; - public const int GL_EXT_bgra = 1; - public const int GL_BGR_EXT = 0x80E0; - public const int GL_BGRA_EXT = 0x80E1; - public const int GL_EXT_bindable_uniform = 1; - public const int GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT = 0x8DE2; - public const int GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT = 0x8DE3; - public const int GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT = 0x8DE4; - public const int GL_MAX_BINDABLE_UNIFORM_SIZE_EXT = 0x8DED; - public const int GL_UNIFORM_BUFFER_EXT = 0x8DEE; - public const int GL_UNIFORM_BUFFER_BINDING_EXT = 0x8DEF; - public const int GL_EXT_blend_color = 1; - public const int GL_CONSTANT_COLOR_EXT = 0x8001; - public const int GL_ONE_MINUS_CONSTANT_COLOR_EXT = 0x8002; - public const int GL_CONSTANT_ALPHA_EXT = 0x8003; - public const int GL_ONE_MINUS_CONSTANT_ALPHA_EXT = 0x8004; - public const int GL_BLEND_COLOR_EXT = 0x8005; - public const int GL_EXT_blend_equation_separate = 1; - public const int GL_BLEND_EQUATION_RGB_EXT = 0x8009; - public const int GL_BLEND_EQUATION_ALPHA_EXT = 0x883D; - public const int GL_EXT_blend_func_separate = 1; - public const int GL_BLEND_DST_RGB_EXT = 0x80C8; - public const int GL_BLEND_SRC_RGB_EXT = 0x80C9; - public const int GL_BLEND_DST_ALPHA_EXT = 0x80CA; - public const int GL_BLEND_SRC_ALPHA_EXT = 0x80CB; - public const int GL_EXT_blend_logic_op = 1; - public const int GL_EXT_blend_minmax = 1; - public const int GL_MIN_EXT = 0x8007; - public const int GL_MAX_EXT = 0x8008; - public const int GL_FUNC_ADD_EXT = 0x8006; - public const int GL_BLEND_EQUATION_EXT = 0x8009; - public const int GL_EXT_blend_subtract = 1; - public const int GL_FUNC_SUBTRACT_EXT = 0x800A; - public const int GL_FUNC_REVERSE_SUBTRACT_EXT = 0x800B; - public const int GL_EXT_clip_volume_hint = 1; - public const int GL_CLIP_VOLUME_CLIPPING_HINT_EXT = 0x80F0; - public const int GL_EXT_cmyka = 1; - public const int GL_CMYK_EXT = 0x800C; - public const int GL_CMYKA_EXT = 0x800D; - public const int GL_PACK_CMYK_HINT_EXT = 0x800E; - public const int GL_UNPACK_CMYK_HINT_EXT = 0x800F; - public const int GL_EXT_color_subtable = 1; - public const int GL_EXT_compiled_vertex_array = 1; - public const int GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = 0x81A8; - public const int GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = 0x81A9; - public const int GL_EXT_convolution = 1; - public const int GL_CONVOLUTION_1D_EXT = 0x8010; - public const int GL_CONVOLUTION_2D_EXT = 0x8011; - public const int GL_SEPARABLE_2D_EXT = 0x8012; - public const int GL_CONVOLUTION_BORDER_MODE_EXT = 0x8013; - public const int GL_CONVOLUTION_FILTER_SCALE_EXT = 0x8014; - public const int GL_CONVOLUTION_FILTER_BIAS_EXT = 0x8015; - public const int GL_REDUCE_EXT = 0x8016; - public const int GL_CONVOLUTION_FORMAT_EXT = 0x8017; - public const int GL_CONVOLUTION_WIDTH_EXT = 0x8018; - public const int GL_CONVOLUTION_HEIGHT_EXT = 0x8019; - public const int GL_MAX_CONVOLUTION_WIDTH_EXT = 0x801A; - public const int GL_MAX_CONVOLUTION_HEIGHT_EXT = 0x801B; - public const int GL_POST_CONVOLUTION_RED_SCALE_EXT = 0x801C; - public const int GL_POST_CONVOLUTION_GREEN_SCALE_EXT = 0x801D; - public const int GL_POST_CONVOLUTION_BLUE_SCALE_EXT = 0x801E; - public const int GL_POST_CONVOLUTION_ALPHA_SCALE_EXT = 0x801F; - public const int GL_POST_CONVOLUTION_RED_BIAS_EXT = 0x8020; - public const int GL_POST_CONVOLUTION_GREEN_BIAS_EXT = 0x8021; - public const int GL_POST_CONVOLUTION_BLUE_BIAS_EXT = 0x8022; - public const int GL_POST_CONVOLUTION_ALPHA_BIAS_EXT = 0x8023; - public const int GL_EXT_coordinate_frame = 1; - public const int GL_TANGENT_ARRAY_EXT = 0x8439; - public const int GL_BINORMAL_ARRAY_EXT = 0x843A; - public const int GL_CURRENT_TANGENT_EXT = 0x843B; - public const int GL_CURRENT_BINORMAL_EXT = 0x843C; - public const int GL_TANGENT_ARRAY_TYPE_EXT = 0x843E; - public const int GL_TANGENT_ARRAY_STRIDE_EXT = 0x843F; - public const int GL_BINORMAL_ARRAY_TYPE_EXT = 0x8440; - public const int GL_BINORMAL_ARRAY_STRIDE_EXT = 0x8441; - public const int GL_TANGENT_ARRAY_POINTER_EXT = 0x8442; - public const int GL_BINORMAL_ARRAY_POINTER_EXT = 0x8443; - public const int GL_MAP1_TANGENT_EXT = 0x8444; - public const int GL_MAP2_TANGENT_EXT = 0x8445; - public const int GL_MAP1_BINORMAL_EXT = 0x8446; - public const int GL_MAP2_BINORMAL_EXT = 0x8447; - public const int GL_EXT_copy_texture = 1; - public const int GL_EXT_cull_vertex = 1; - public const int GL_CULL_VERTEX_EXT = 0x81AA; - public const int GL_CULL_VERTEX_EYE_POSITION_EXT = 0x81AB; - public const int GL_CULL_VERTEX_OBJECT_POSITION_EXT = 0x81AC; - public const int GL_EXT_debug_label = 1; - public const int GL_PROGRAM_PIPELINE_OBJECT_EXT = 0x8A4F; - public const int GL_PROGRAM_OBJECT_EXT = 0x8B40; - public const int GL_SHADER_OBJECT_EXT = 0x8B48; - public const int GL_BUFFER_OBJECT_EXT = 0x9151; - public const int GL_QUERY_OBJECT_EXT = 0x9153; - public const int GL_VERTEX_ARRAY_OBJECT_EXT = 0x9154; - public const int GL_EXT_debug_marker = 1; - public const int GL_EXT_depth_bounds_test = 1; - public const int GL_DEPTH_BOUNDS_TEST_EXT = 0x8890; - public const int GL_DEPTH_BOUNDS_EXT = 0x8891; - public const int GL_EXT_direct_state_access = 1; - public const int GL_PROGRAM_MATRIX_EXT = 0x8E2D; - public const int GL_TRANSPOSE_PROGRAM_MATRIX_EXT = 0x8E2E; - public const int GL_PROGRAM_MATRIX_STACK_DEPTH_EXT = 0x8E2F; - public const int GL_EXT_draw_buffers2 = 1; - public const int GL_EXT_draw_instanced = 1; - public const int GL_EXT_draw_range_elements = 1; - public const int GL_MAX_ELEMENTS_VERTICES_EXT = 0x80E8; - public const int GL_MAX_ELEMENTS_INDICES_EXT = 0x80E9; - public const int GL_EXT_external_buffer = 1; - public const int GL_EXT_fog_coord = 1; - public const int GL_FOG_COORDINATE_SOURCE_EXT = 0x8450; - public const int GL_FOG_COORDINATE_EXT = 0x8451; - public const int GL_FRAGMENT_DEPTH_EXT = 0x8452; - public const int GL_CURRENT_FOG_COORDINATE_EXT = 0x8453; - public const int GL_FOG_COORDINATE_ARRAY_TYPE_EXT = 0x8454; - public const int GL_FOG_COORDINATE_ARRAY_STRIDE_EXT = 0x8455; - public const int GL_FOG_COORDINATE_ARRAY_POINTER_EXT = 0x8456; - public const int GL_FOG_COORDINATE_ARRAY_EXT = 0x8457; - public const int GL_EXT_framebuffer_blit = 1; - public const int GL_READ_FRAMEBUFFER_EXT = 0x8CA8; - public const int GL_DRAW_FRAMEBUFFER_EXT = 0x8CA9; - public const int GL_DRAW_FRAMEBUFFER_BINDING_EXT = 0x8CA6; - public const int GL_READ_FRAMEBUFFER_BINDING_EXT = 0x8CAA; - public const int GL_EXT_framebuffer_multisample = 1; - public const int GL_RENDERBUFFER_SAMPLES_EXT = 0x8CAB; - public const int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT = 0x8D56; - public const int GL_MAX_SAMPLES_EXT = 0x8D57; - public const int GL_EXT_framebuffer_multisample_blit_scaled = 1; - public const int GL_SCALED_RESOLVE_FASTEST_EXT = 0x90BA; - public const int GL_SCALED_RESOLVE_NICEST_EXT = 0x90BB; - public const int GL_EXT_framebuffer_object = 1; - public const int GL_INVALID_FRAMEBUFFER_OPERATION_EXT = 0x0506; - public const int GL_MAX_RENDERBUFFER_SIZE_EXT = 0x84E8; - public const int GL_FRAMEBUFFER_BINDING_EXT = 0x8CA6; - public const int GL_RENDERBUFFER_BINDING_EXT = 0x8CA7; - public const int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT = 0x8CD0; - public const int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT = 0x8CD1; - public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT = 0x8CD2; - public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT = 0x8CD3; - public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT = 0x8CD4; - public const int GL_FRAMEBUFFER_COMPLETE_EXT = 0x8CD5; - public const int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = 0x8CD6; - public const int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT = 0x8CD7; - public const int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT = 0x8CD9; - public const int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT = 0x8CDA; - public const int GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT = 0x8CDB; - public const int GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT = 0x8CDC; - public const int GL_FRAMEBUFFER_UNSUPPORTED_EXT = 0x8CDD; - public const int GL_MAX_COLOR_ATTACHMENTS_EXT = 0x8CDF; - public const int GL_COLOR_ATTACHMENT0_EXT = 0x8CE0; - public const int GL_COLOR_ATTACHMENT1_EXT = 0x8CE1; - public const int GL_COLOR_ATTACHMENT2_EXT = 0x8CE2; - public const int GL_COLOR_ATTACHMENT3_EXT = 0x8CE3; - public const int GL_COLOR_ATTACHMENT4_EXT = 0x8CE4; - public const int GL_COLOR_ATTACHMENT5_EXT = 0x8CE5; - public const int GL_COLOR_ATTACHMENT6_EXT = 0x8CE6; - public const int GL_COLOR_ATTACHMENT7_EXT = 0x8CE7; - public const int GL_COLOR_ATTACHMENT8_EXT = 0x8CE8; - public const int GL_COLOR_ATTACHMENT9_EXT = 0x8CE9; - public const int GL_COLOR_ATTACHMENT10_EXT = 0x8CEA; - public const int GL_COLOR_ATTACHMENT11_EXT = 0x8CEB; - public const int GL_COLOR_ATTACHMENT12_EXT = 0x8CEC; - public const int GL_COLOR_ATTACHMENT13_EXT = 0x8CED; - public const int GL_COLOR_ATTACHMENT14_EXT = 0x8CEE; - public const int GL_COLOR_ATTACHMENT15_EXT = 0x8CEF; - public const int GL_DEPTH_ATTACHMENT_EXT = 0x8D00; - public const int GL_STENCIL_ATTACHMENT_EXT = 0x8D20; - public const int GL_FRAMEBUFFER_EXT = 0x8D40; - public const int GL_RENDERBUFFER_EXT = 0x8D41; - public const int GL_RENDERBUFFER_WIDTH_EXT = 0x8D42; - public const int GL_RENDERBUFFER_HEIGHT_EXT = 0x8D43; - public const int GL_RENDERBUFFER_INTERNAL_FORMAT_EXT = 0x8D44; - public const int GL_STENCIL_INDEX1_EXT = 0x8D46; - public const int GL_STENCIL_INDEX4_EXT = 0x8D47; - public const int GL_STENCIL_INDEX8_EXT = 0x8D48; - public const int GL_STENCIL_INDEX16_EXT = 0x8D49; - public const int GL_RENDERBUFFER_RED_SIZE_EXT = 0x8D50; - public const int GL_RENDERBUFFER_GREEN_SIZE_EXT = 0x8D51; - public const int GL_RENDERBUFFER_BLUE_SIZE_EXT = 0x8D52; - public const int GL_RENDERBUFFER_ALPHA_SIZE_EXT = 0x8D53; - public const int GL_RENDERBUFFER_DEPTH_SIZE_EXT = 0x8D54; - public const int GL_RENDERBUFFER_STENCIL_SIZE_EXT = 0x8D55; - public const int GL_EXT_framebuffer_sRGB = 1; - public const int GL_FRAMEBUFFER_SRGB_EXT = 0x8DB9; - public const int GL_FRAMEBUFFER_SRGB_CAPABLE_EXT = 0x8DBA; - public const int GL_EXT_geometry_shader4 = 1; - public const int GL_GEOMETRY_SHADER_EXT = 0x8DD9; - public const int GL_GEOMETRY_VERTICES_OUT_EXT = 0x8DDA; - public const int GL_GEOMETRY_INPUT_TYPE_EXT = 0x8DDB; - public const int GL_GEOMETRY_OUTPUT_TYPE_EXT = 0x8DDC; - public const int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT = 0x8C29; - public const int GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT = 0x8DDD; - public const int GL_MAX_VERTEX_VARYING_COMPONENTS_EXT = 0x8DDE; - public const int GL_MAX_VARYING_COMPONENTS_EXT = 0x8B4B; - public const int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT = 0x8DDF; - public const int GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT = 0x8DE0; - public const int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT = 0x8DE1; - public const int GL_LINES_ADJACENCY_EXT = 0x000A; - public const int GL_LINE_STRIP_ADJACENCY_EXT = 0x000B; - public const int GL_TRIANGLES_ADJACENCY_EXT = 0x000C; - public const int GL_TRIANGLE_STRIP_ADJACENCY_EXT = 0x000D; - public const int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT = 0x8DA8; - public const int GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT = 0x8DA9; - public const int GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT = 0x8DA7; - public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT = 0x8CD4; - public const int GL_PROGRAM_POINT_SIZE_EXT = 0x8642; - public const int GL_EXT_gpu_program_parameters = 1; - public const int GL_EXT_gpu_shader4 = 1; - public const int GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT = 0x88FD; - public const int GL_SAMPLER_1D_ARRAY_EXT = 0x8DC0; - public const int GL_SAMPLER_2D_ARRAY_EXT = 0x8DC1; - public const int GL_SAMPLER_BUFFER_EXT = 0x8DC2; - public const int GL_SAMPLER_1D_ARRAY_SHADOW_EXT = 0x8DC3; - public const int GL_SAMPLER_2D_ARRAY_SHADOW_EXT = 0x8DC4; - public const int GL_SAMPLER_CUBE_SHADOW_EXT = 0x8DC5; - public const int GL_UNSIGNED_INT_VEC2_EXT = 0x8DC6; - public const int GL_UNSIGNED_INT_VEC3_EXT = 0x8DC7; - public const int GL_UNSIGNED_INT_VEC4_EXT = 0x8DC8; - public const int GL_INT_SAMPLER_1D_EXT = 0x8DC9; - public const int GL_INT_SAMPLER_2D_EXT = 0x8DCA; - public const int GL_INT_SAMPLER_3D_EXT = 0x8DCB; - public const int GL_INT_SAMPLER_CUBE_EXT = 0x8DCC; - public const int GL_INT_SAMPLER_2D_RECT_EXT = 0x8DCD; - public const int GL_INT_SAMPLER_1D_ARRAY_EXT = 0x8DCE; - public const int GL_INT_SAMPLER_2D_ARRAY_EXT = 0x8DCF; - public const int GL_INT_SAMPLER_BUFFER_EXT = 0x8DD0; - public const int GL_UNSIGNED_INT_SAMPLER_1D_EXT = 0x8DD1; - public const int GL_UNSIGNED_INT_SAMPLER_2D_EXT = 0x8DD2; - public const int GL_UNSIGNED_INT_SAMPLER_3D_EXT = 0x8DD3; - public const int GL_UNSIGNED_INT_SAMPLER_CUBE_EXT = 0x8DD4; - public const int GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT = 0x8DD5; - public const int GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT = 0x8DD6; - public const int GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT = 0x8DD7; - public const int GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT = 0x8DD8; - public const int GL_MIN_PROGRAM_TEXEL_OFFSET_EXT = 0x8904; - public const int GL_MAX_PROGRAM_TEXEL_OFFSET_EXT = 0x8905; - public const int GL_EXT_histogram = 1; - public const int GL_HISTOGRAM_EXT = 0x8024; - public const int GL_PROXY_HISTOGRAM_EXT = 0x8025; - public const int GL_HISTOGRAM_WIDTH_EXT = 0x8026; - public const int GL_HISTOGRAM_FORMAT_EXT = 0x8027; - public const int GL_HISTOGRAM_RED_SIZE_EXT = 0x8028; - public const int GL_HISTOGRAM_GREEN_SIZE_EXT = 0x8029; - public const int GL_HISTOGRAM_BLUE_SIZE_EXT = 0x802A; - public const int GL_HISTOGRAM_ALPHA_SIZE_EXT = 0x802B; - public const int GL_HISTOGRAM_LUMINANCE_SIZE_EXT = 0x802C; - public const int GL_HISTOGRAM_SINK_EXT = 0x802D; - public const int GL_MINMAX_EXT = 0x802E; - public const int GL_MINMAX_FORMAT_EXT = 0x802F; - public const int GL_MINMAX_SINK_EXT = 0x8030; - public const int GL_TABLE_TOO_LARGE_EXT = 0x8031; - public const int GL_EXT_index_array_formats = 1; - public const int GL_IUI_V2F_EXT = 0x81AD; - public const int GL_IUI_V3F_EXT = 0x81AE; - public const int GL_IUI_N3F_V2F_EXT = 0x81AF; - public const int GL_IUI_N3F_V3F_EXT = 0x81B0; - public const int GL_T2F_IUI_V2F_EXT = 0x81B1; - public const int GL_T2F_IUI_V3F_EXT = 0x81B2; - public const int GL_T2F_IUI_N3F_V2F_EXT = 0x81B3; - public const int GL_T2F_IUI_N3F_V3F_EXT = 0x81B4; - public const int GL_EXT_index_func = 1; - public const int GL_INDEX_TEST_EXT = 0x81B5; - public const int GL_INDEX_TEST_FUNC_EXT = 0x81B6; - public const int GL_INDEX_TEST_REF_EXT = 0x81B7; - public const int GL_EXT_index_material = 1; - public const int GL_INDEX_MATERIAL_EXT = 0x81B8; - public const int GL_INDEX_MATERIAL_PARAMETER_EXT = 0x81B9; - public const int GL_INDEX_MATERIAL_FACE_EXT = 0x81BA; - public const int GL_EXT_index_texture = 1; - public const int GL_EXT_light_texture = 1; - public const int GL_FRAGMENT_MATERIAL_EXT = 0x8349; - public const int GL_FRAGMENT_NORMAL_EXT = 0x834A; - public const int GL_FRAGMENT_COLOR_EXT = 0x834C; - public const int GL_ATTENUATION_EXT = 0x834D; - public const int GL_SHADOW_ATTENUATION_EXT = 0x834E; - public const int GL_TEXTURE_APPLICATION_MODE_EXT = 0x834F; - public const int GL_TEXTURE_LIGHT_EXT = 0x8350; - public const int GL_TEXTURE_MATERIAL_FACE_EXT = 0x8351; - public const int GL_TEXTURE_MATERIAL_PARAMETER_EXT = 0x8352; - public const int GL_EXT_memory_object = 1; - public const int GL_TEXTURE_TILING_EXT = 0x9580; - public const int GL_DEDICATED_MEMORY_OBJECT_EXT = 0x9581; - public const int GL_PROTECTED_MEMORY_OBJECT_EXT = 0x959B; - public const int GL_NUM_TILING_TYPES_EXT = 0x9582; - public const int GL_TILING_TYPES_EXT = 0x9583; - public const int GL_OPTIMAL_TILING_EXT = 0x9584; - public const int GL_LINEAR_TILING_EXT = 0x9585; - public const int GL_NUM_DEVICE_UUIDS_EXT = 0x9596; - public const int GL_DEVICE_UUID_EXT = 0x9597; - public const int GL_DRIVER_UUID_EXT = 0x9598; - public const int GL_UUID_SIZE_EXT = 16; - public const int GL_EXT_memory_object_fd = 1; - public const int GL_HANDLE_TYPE_OPAQUE_FD_EXT = 0x9586; - public const int GL_EXT_memory_object_win32 = 1; - public const int GL_HANDLE_TYPE_OPAQUE_WIN32_EXT = 0x9587; - public const int GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT = 0x9588; - public const int GL_DEVICE_LUID_EXT = 0x9599; - public const int GL_DEVICE_NODE_MASK_EXT = 0x959A; - public const int GL_LUID_SIZE_EXT = 8; - public const int GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT = 0x9589; - public const int GL_HANDLE_TYPE_D3D12_RESOURCE_EXT = 0x958A; - public const int GL_HANDLE_TYPE_D3D11_IMAGE_EXT = 0x958B; - public const int GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT = 0x958C; - public const int GL_EXT_misc_attribute = 1; - public const int GL_EXT_multi_draw_arrays = 1; - public const int GL_EXT_multisample = 1; - public const int GL_MULTISAMPLE_EXT = 0x809D; - public const int GL_SAMPLE_ALPHA_TO_MASK_EXT = 0x809E; - public const int GL_SAMPLE_ALPHA_TO_ONE_EXT = 0x809F; - public const int GL_SAMPLE_MASK_EXT = 0x80A0; - public const int GL_1PASS_EXT = 0x80A1; - public const int GL_2PASS_0_EXT = 0x80A2; - public const int GL_2PASS_1_EXT = 0x80A3; - public const int GL_4PASS_0_EXT = 0x80A4; - public const int GL_4PASS_1_EXT = 0x80A5; - public const int GL_4PASS_2_EXT = 0x80A6; - public const int GL_4PASS_3_EXT = 0x80A7; - public const int GL_SAMPLE_BUFFERS_EXT = 0x80A8; - public const int GL_SAMPLES_EXT = 0x80A9; - public const int GL_SAMPLE_MASK_VALUE_EXT = 0x80AA; - public const int GL_SAMPLE_MASK_INVERT_EXT = 0x80AB; - public const int GL_SAMPLE_PATTERN_EXT = 0x80AC; - public const int GL_MULTISAMPLE_BIT_EXT = 0x20000000; - public const int GL_EXT_packed_depth_stencil = 1; - public const int GL_DEPTH_STENCIL_EXT = 0x84F9; - public const int GL_UNSIGNED_INT_24_8_EXT = 0x84FA; - public const int GL_DEPTH24_STENCIL8_EXT = 0x88F0; - public const int GL_TEXTURE_STENCIL_SIZE_EXT = 0x88F1; - public const int GL_EXT_packed_float = 1; - public const int GL_R11F_G11F_B10F_EXT = 0x8C3A; - public const int GL_UNSIGNED_INT_10F_11F_11F_REV_EXT = 0x8C3B; - public const int GL_RGBA_SIGNED_COMPONENTS_EXT = 0x8C3C; - public const int GL_EXT_packed_pixels = 1; - public const int GL_UNSIGNED_BYTE_3_3_2_EXT = 0x8032; - public const int GL_UNSIGNED_SHORT_4_4_4_4_EXT = 0x8033; - public const int GL_UNSIGNED_SHORT_5_5_5_1_EXT = 0x8034; - public const int GL_UNSIGNED_INT_8_8_8_8_EXT = 0x8035; - public const int GL_UNSIGNED_INT_10_10_10_2_EXT = 0x8036; - public const int GL_EXT_paletted_texture = 1; - public const int GL_COLOR_INDEX1_EXT = 0x80E2; - public const int GL_COLOR_INDEX2_EXT = 0x80E3; - public const int GL_COLOR_INDEX4_EXT = 0x80E4; - public const int GL_COLOR_INDEX8_EXT = 0x80E5; - public const int GL_COLOR_INDEX12_EXT = 0x80E6; - public const int GL_COLOR_INDEX16_EXT = 0x80E7; - public const int GL_TEXTURE_INDEX_SIZE_EXT = 0x80ED; - public const int GL_EXT_pixel_buffer_object = 1; - public const int GL_PIXEL_PACK_BUFFER_EXT = 0x88EB; - public const int GL_PIXEL_UNPACK_BUFFER_EXT = 0x88EC; - public const int GL_PIXEL_PACK_BUFFER_BINDING_EXT = 0x88ED; - public const int GL_PIXEL_UNPACK_BUFFER_BINDING_EXT = 0x88EF; - public const int GL_EXT_pixel_transform = 1; - public const int GL_PIXEL_TRANSFORM_2D_EXT = 0x8330; - public const int GL_PIXEL_MAG_FILTER_EXT = 0x8331; - public const int GL_PIXEL_MIN_FILTER_EXT = 0x8332; - public const int GL_PIXEL_CUBIC_WEIGHT_EXT = 0x8333; - public const int GL_CUBIC_EXT = 0x8334; - public const int GL_AVERAGE_EXT = 0x8335; - public const int GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8336; - public const int GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8337; - public const int GL_PIXEL_TRANSFORM_2D_MATRIX_EXT = 0x8338; - public const int GL_EXT_pixel_transform_color_table = 1; - public const int GL_EXT_point_parameters = 1; - public const int GL_POINT_SIZE_MIN_EXT = 0x8126; - public const int GL_POINT_SIZE_MAX_EXT = 0x8127; - public const int GL_POINT_FADE_THRESHOLD_SIZE_EXT = 0x8128; - public const int GL_DISTANCE_ATTENUATION_EXT = 0x8129; - public const int GL_EXT_polygon_offset = 1; - public const int GL_POLYGON_OFFSET_EXT = 0x8037; - public const int GL_POLYGON_OFFSET_FACTOR_EXT = 0x8038; - public const int GL_POLYGON_OFFSET_BIAS_EXT = 0x8039; - public const int GL_EXT_polygon_offset_clamp = 1; - public const int GL_POLYGON_OFFSET_CLAMP_EXT = 0x8E1B; - public const int GL_EXT_post_depth_coverage = 1; - public const int GL_EXT_provoking_vertex = 1; - public const int GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT = 0x8E4C; - public const int GL_FIRST_VERTEX_CONVENTION_EXT = 0x8E4D; - public const int GL_LAST_VERTEX_CONVENTION_EXT = 0x8E4E; - public const int GL_PROVOKING_VERTEX_EXT = 0x8E4F; - public const int GL_EXT_raster_multisample = 1; - public const int GL_RASTER_MULTISAMPLE_EXT = 0x9327; - public const int GL_RASTER_SAMPLES_EXT = 0x9328; - public const int GL_MAX_RASTER_SAMPLES_EXT = 0x9329; - public const int GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT = 0x932A; - public const int GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT = 0x932B; - public const int GL_EFFECTIVE_RASTER_SAMPLES_EXT = 0x932C; - public const int GL_EXT_rescale_normal = 1; - public const int GL_RESCALE_NORMAL_EXT = 0x803A; - public const int GL_EXT_secondary_color = 1; - public const int GL_COLOR_SUM_EXT = 0x8458; - public const int GL_CURRENT_SECONDARY_COLOR_EXT = 0x8459; - public const int GL_SECONDARY_COLOR_ARRAY_SIZE_EXT = 0x845A; - public const int GL_SECONDARY_COLOR_ARRAY_TYPE_EXT = 0x845B; - public const int GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT = 0x845C; - public const int GL_SECONDARY_COLOR_ARRAY_POINTER_EXT = 0x845D; - public const int GL_SECONDARY_COLOR_ARRAY_EXT = 0x845E; - public const int GL_EXT_semaphore = 1; - public const int GL_LAYOUT_GENERAL_EXT = 0x958D; - public const int GL_LAYOUT_COLOR_ATTACHMENT_EXT = 0x958E; - public const int GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT = 0x958F; - public const int GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT = 0x9590; - public const int GL_LAYOUT_SHADER_READ_ONLY_EXT = 0x9591; - public const int GL_LAYOUT_TRANSFER_SRC_EXT = 0x9592; - public const int GL_LAYOUT_TRANSFER_DST_EXT = 0x9593; - public const int GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT = 0x9530; - public const int GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT = 0x9531; - public const int GL_EXT_semaphore_fd = 1; - public const int GL_EXT_semaphore_win32 = 1; - public const int GL_HANDLE_TYPE_D3D12_FENCE_EXT = 0x9594; - public const int GL_D3D12_FENCE_VALUE_EXT = 0x9595; - public const int GL_EXT_separate_shader_objects = 1; - public const int GL_ACTIVE_PROGRAM_EXT = 0x8B8D; - public const int GL_EXT_separate_specular_color = 1; - public const int GL_LIGHT_MODEL_COLOR_CONTROL_EXT = 0x81F8; - public const int GL_SINGLE_COLOR_EXT = 0x81F9; - public const int GL_SEPARATE_SPECULAR_COLOR_EXT = 0x81FA; - public const int GL_EXT_shader_framebuffer_fetch = 1; - public const int GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT = 0x8A52; - public const int GL_EXT_shader_framebuffer_fetch_non_coherent = 1; - public const int GL_EXT_shader_image_load_formatted = 1; - public const int GL_EXT_shader_image_load_store = 1; - public const int GL_MAX_IMAGE_UNITS_EXT = 0x8F38; - public const int GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT = 0x8F39; - public const int GL_IMAGE_BINDING_NAME_EXT = 0x8F3A; - public const int GL_IMAGE_BINDING_LEVEL_EXT = 0x8F3B; - public const int GL_IMAGE_BINDING_LAYERED_EXT = 0x8F3C; - public const int GL_IMAGE_BINDING_LAYER_EXT = 0x8F3D; - public const int GL_IMAGE_BINDING_ACCESS_EXT = 0x8F3E; - public const int GL_IMAGE_1D_EXT = 0x904C; - public const int GL_IMAGE_2D_EXT = 0x904D; - public const int GL_IMAGE_3D_EXT = 0x904E; - public const int GL_IMAGE_2D_RECT_EXT = 0x904F; - public const int GL_IMAGE_CUBE_EXT = 0x9050; - public const int GL_IMAGE_BUFFER_EXT = 0x9051; - public const int GL_IMAGE_1D_ARRAY_EXT = 0x9052; - public const int GL_IMAGE_2D_ARRAY_EXT = 0x9053; - public const int GL_IMAGE_CUBE_MAP_ARRAY_EXT = 0x9054; - public const int GL_IMAGE_2D_MULTISAMPLE_EXT = 0x9055; - public const int GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x9056; - public const int GL_INT_IMAGE_1D_EXT = 0x9057; - public const int GL_INT_IMAGE_2D_EXT = 0x9058; - public const int GL_INT_IMAGE_3D_EXT = 0x9059; - public const int GL_INT_IMAGE_2D_RECT_EXT = 0x905A; - public const int GL_INT_IMAGE_CUBE_EXT = 0x905B; - public const int GL_INT_IMAGE_BUFFER_EXT = 0x905C; - public const int GL_INT_IMAGE_1D_ARRAY_EXT = 0x905D; - public const int GL_INT_IMAGE_2D_ARRAY_EXT = 0x905E; - public const int GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x905F; - public const int GL_INT_IMAGE_2D_MULTISAMPLE_EXT = 0x9060; - public const int GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x9061; - public const int GL_UNSIGNED_INT_IMAGE_1D_EXT = 0x9062; - public const int GL_UNSIGNED_INT_IMAGE_2D_EXT = 0x9063; - public const int GL_UNSIGNED_INT_IMAGE_3D_EXT = 0x9064; - public const int GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT = 0x9065; - public const int GL_UNSIGNED_INT_IMAGE_CUBE_EXT = 0x9066; - public const int GL_UNSIGNED_INT_IMAGE_BUFFER_EXT = 0x9067; - public const int GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT = 0x9068; - public const int GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT = 0x9069; - public const int GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x906A; - public const int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT = 0x906B; - public const int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x906C; - public const int GL_MAX_IMAGE_SAMPLES_EXT = 0x906D; - public const int GL_IMAGE_BINDING_FORMAT_EXT = 0x906E; - public const int GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT = 0x00000001; - public const int GL_ELEMENT_ARRAY_BARRIER_BIT_EXT = 0x00000002; - public const int GL_UNIFORM_BARRIER_BIT_EXT = 0x00000004; - public const int GL_TEXTURE_FETCH_BARRIER_BIT_EXT = 0x00000008; - public const int GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT = 0x00000020; - public const int GL_COMMAND_BARRIER_BIT_EXT = 0x00000040; - public const int GL_PIXEL_BUFFER_BARRIER_BIT_EXT = 0x00000080; - public const int GL_TEXTURE_UPDATE_BARRIER_BIT_EXT = 0x00000100; - public const int GL_BUFFER_UPDATE_BARRIER_BIT_EXT = 0x00000200; - public const int GL_FRAMEBUFFER_BARRIER_BIT_EXT = 0x00000400; - public const int GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT = 0x00000800; - public const int GL_ATOMIC_COUNTER_BARRIER_BIT_EXT = 0x00001000; - public const int GL_ALL_BARRIER_BITS_EXT = -1; - public const int GL_EXT_shader_integer_mix = 1; - public const int GL_EXT_shadow_funcs = 1; - public const int GL_EXT_shared_texture_palette = 1; - public const int GL_SHARED_TEXTURE_PALETTE_EXT = 0x81FB; - public const int GL_EXT_sparse_texture2 = 1; - public const int GL_EXT_stencil_clear_tag = 1; - public const int GL_STENCIL_TAG_BITS_EXT = 0x88F2; - public const int GL_STENCIL_CLEAR_TAG_VALUE_EXT = 0x88F3; - public const int GL_EXT_stencil_two_side = 1; - public const int GL_STENCIL_TEST_TWO_SIDE_EXT = 0x8910; - public const int GL_ACTIVE_STENCIL_FACE_EXT = 0x8911; - public const int GL_EXT_stencil_wrap = 1; - public const int GL_INCR_WRAP_EXT = 0x8507; - public const int GL_DECR_WRAP_EXT = 0x8508; - public const int GL_EXT_subtexture = 1; - public const int GL_EXT_texture = 1; - public const int GL_ALPHA4_EXT = 0x803B; - public const int GL_ALPHA8_EXT = 0x803C; - public const int GL_ALPHA12_EXT = 0x803D; - public const int GL_ALPHA16_EXT = 0x803E; - public const int GL_LUMINANCE4_EXT = 0x803F; - public const int GL_LUMINANCE8_EXT = 0x8040; - public const int GL_LUMINANCE12_EXT = 0x8041; - public const int GL_LUMINANCE16_EXT = 0x8042; - public const int GL_LUMINANCE4_ALPHA4_EXT = 0x8043; - public const int GL_LUMINANCE6_ALPHA2_EXT = 0x8044; - public const int GL_LUMINANCE8_ALPHA8_EXT = 0x8045; - public const int GL_LUMINANCE12_ALPHA4_EXT = 0x8046; - public const int GL_LUMINANCE12_ALPHA12_EXT = 0x8047; - public const int GL_LUMINANCE16_ALPHA16_EXT = 0x8048; - public const int GL_INTENSITY_EXT = 0x8049; - public const int GL_INTENSITY4_EXT = 0x804A; - public const int GL_INTENSITY8_EXT = 0x804B; - public const int GL_INTENSITY12_EXT = 0x804C; - public const int GL_INTENSITY16_EXT = 0x804D; - public const int GL_RGB2_EXT = 0x804E; - public const int GL_RGB4_EXT = 0x804F; - public const int GL_RGB5_EXT = 0x8050; - public const int GL_RGB8_EXT = 0x8051; - public const int GL_RGB10_EXT = 0x8052; - public const int GL_RGB12_EXT = 0x8053; - public const int GL_RGB16_EXT = 0x8054; - public const int GL_RGBA2_EXT = 0x8055; - public const int GL_RGBA4_EXT = 0x8056; - public const int GL_RGB5_A1_EXT = 0x8057; - public const int GL_RGBA8_EXT = 0x8058; - public const int GL_RGB10_A2_EXT = 0x8059; - public const int GL_RGBA12_EXT = 0x805A; - public const int GL_RGBA16_EXT = 0x805B; - public const int GL_TEXTURE_RED_SIZE_EXT = 0x805C; - public const int GL_TEXTURE_GREEN_SIZE_EXT = 0x805D; - public const int GL_TEXTURE_BLUE_SIZE_EXT = 0x805E; - public const int GL_TEXTURE_ALPHA_SIZE_EXT = 0x805F; - public const int GL_TEXTURE_LUMINANCE_SIZE_EXT = 0x8060; - public const int GL_TEXTURE_INTENSITY_SIZE_EXT = 0x8061; - public const int GL_REPLACE_EXT = 0x8062; - public const int GL_PROXY_TEXTURE_1D_EXT = 0x8063; - public const int GL_PROXY_TEXTURE_2D_EXT = 0x8064; - public const int GL_TEXTURE_TOO_LARGE_EXT = 0x8065; - public const int GL_EXT_texture3D = 1; - public const int GL_PACK_SKIP_IMAGES_EXT = 0x806B; - public const int GL_PACK_IMAGE_HEIGHT_EXT = 0x806C; - public const int GL_UNPACK_SKIP_IMAGES_EXT = 0x806D; - public const int GL_UNPACK_IMAGE_HEIGHT_EXT = 0x806E; - public const int GL_TEXTURE_3D_EXT = 0x806F; - public const int GL_PROXY_TEXTURE_3D_EXT = 0x8070; - public const int GL_TEXTURE_DEPTH_EXT = 0x8071; - public const int GL_TEXTURE_WRAP_R_EXT = 0x8072; - public const int GL_MAX_3D_TEXTURE_SIZE_EXT = 0x8073; - public const int GL_EXT_texture_array = 1; - public const int GL_TEXTURE_1D_ARRAY_EXT = 0x8C18; - public const int GL_PROXY_TEXTURE_1D_ARRAY_EXT = 0x8C19; - public const int GL_TEXTURE_2D_ARRAY_EXT = 0x8C1A; - public const int GL_PROXY_TEXTURE_2D_ARRAY_EXT = 0x8C1B; - public const int GL_TEXTURE_BINDING_1D_ARRAY_EXT = 0x8C1C; - public const int GL_TEXTURE_BINDING_2D_ARRAY_EXT = 0x8C1D; - public const int GL_MAX_ARRAY_TEXTURE_LAYERS_EXT = 0x88FF; - public const int GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT = 0x884E; - public const int GL_EXT_texture_buffer_object = 1; - public const int GL_TEXTURE_BUFFER_EXT = 0x8C2A; - public const int GL_MAX_TEXTURE_BUFFER_SIZE_EXT = 0x8C2B; - public const int GL_TEXTURE_BINDING_BUFFER_EXT = 0x8C2C; - public const int GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT = 0x8C2D; - public const int GL_TEXTURE_BUFFER_FORMAT_EXT = 0x8C2E; - public const int GL_EXT_texture_compression_latc = 1; - public const int GL_COMPRESSED_LUMINANCE_LATC1_EXT = 0x8C70; - public const int GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT = 0x8C71; - public const int GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C72; - public const int GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C73; - public const int GL_EXT_texture_compression_rgtc = 1; - public const int GL_COMPRESSED_RED_RGTC1_EXT = 0x8DBB; - public const int GL_COMPRESSED_SIGNED_RED_RGTC1_EXT = 0x8DBC; - public const int GL_COMPRESSED_RED_GREEN_RGTC2_EXT = 0x8DBD; - public const int GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT = 0x8DBE; - public const int GL_EXT_texture_compression_s3tc = 1; - public const int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0; - public const int GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1; - public const int GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2; - public const int GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3; - public const int GL_EXT_texture_cube_map = 1; - public const int GL_NORMAL_MAP_EXT = 0x8511; - public const int GL_REFLECTION_MAP_EXT = 0x8512; - public const int GL_TEXTURE_CUBE_MAP_EXT = 0x8513; - public const int GL_TEXTURE_BINDING_CUBE_MAP_EXT = 0x8514; - public const int GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT = 0x8515; - public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT = 0x8516; - public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT = 0x8517; - public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT = 0x8518; - public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT = 0x8519; - public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT = 0x851A; - public const int GL_PROXY_TEXTURE_CUBE_MAP_EXT = 0x851B; - public const int GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT = 0x851C; - public const int GL_EXT_texture_env_add = 1; - public const int GL_EXT_texture_env_combine = 1; - public const int GL_COMBINE_EXT = 0x8570; - public const int GL_COMBINE_RGB_EXT = 0x8571; - public const int GL_COMBINE_ALPHA_EXT = 0x8572; - public const int GL_RGB_SCALE_EXT = 0x8573; - public const int GL_ADD_SIGNED_EXT = 0x8574; - public const int GL_INTERPOLATE_EXT = 0x8575; - public const int GL_CONSTANT_EXT = 0x8576; - public const int GL_PRIMARY_COLOR_EXT = 0x8577; - public const int GL_PREVIOUS_EXT = 0x8578; - public const int GL_SOURCE0_RGB_EXT = 0x8580; - public const int GL_SOURCE1_RGB_EXT = 0x8581; - public const int GL_SOURCE2_RGB_EXT = 0x8582; - public const int GL_SOURCE0_ALPHA_EXT = 0x8588; - public const int GL_SOURCE1_ALPHA_EXT = 0x8589; - public const int GL_SOURCE2_ALPHA_EXT = 0x858A; - public const int GL_OPERAND0_RGB_EXT = 0x8590; - public const int GL_OPERAND1_RGB_EXT = 0x8591; - public const int GL_OPERAND2_RGB_EXT = 0x8592; - public const int GL_OPERAND0_ALPHA_EXT = 0x8598; - public const int GL_OPERAND1_ALPHA_EXT = 0x8599; - public const int GL_OPERAND2_ALPHA_EXT = 0x859A; - public const int GL_EXT_texture_env_dot3 = 1; - public const int GL_DOT3_RGB_EXT = 0x8740; - public const int GL_DOT3_RGBA_EXT = 0x8741; - public const int GL_EXT_texture_filter_anisotropic = 1; - public const int GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE; - public const int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF; - public const int GL_EXT_texture_filter_minmax = 1; - public const int GL_TEXTURE_REDUCTION_MODE_EXT = 0x9366; - public const int GL_WEIGHTED_AVERAGE_EXT = 0x9367; - public const int GL_EXT_texture_integer = 1; - public const int GL_RGBA32UI_EXT = 0x8D70; - public const int GL_RGB32UI_EXT = 0x8D71; - public const int GL_ALPHA32UI_EXT = 0x8D72; - public const int GL_INTENSITY32UI_EXT = 0x8D73; - public const int GL_LUMINANCE32UI_EXT = 0x8D74; - public const int GL_LUMINANCE_ALPHA32UI_EXT = 0x8D75; - public const int GL_RGBA16UI_EXT = 0x8D76; - public const int GL_RGB16UI_EXT = 0x8D77; - public const int GL_ALPHA16UI_EXT = 0x8D78; - public const int GL_INTENSITY16UI_EXT = 0x8D79; - public const int GL_LUMINANCE16UI_EXT = 0x8D7A; - public const int GL_LUMINANCE_ALPHA16UI_EXT = 0x8D7B; - public const int GL_RGBA8UI_EXT = 0x8D7C; - public const int GL_RGB8UI_EXT = 0x8D7D; - public const int GL_ALPHA8UI_EXT = 0x8D7E; - public const int GL_INTENSITY8UI_EXT = 0x8D7F; - public const int GL_LUMINANCE8UI_EXT = 0x8D80; - public const int GL_LUMINANCE_ALPHA8UI_EXT = 0x8D81; - public const int GL_RGBA32I_EXT = 0x8D82; - public const int GL_RGB32I_EXT = 0x8D83; - public const int GL_ALPHA32I_EXT = 0x8D84; - public const int GL_INTENSITY32I_EXT = 0x8D85; - public const int GL_LUMINANCE32I_EXT = 0x8D86; - public const int GL_LUMINANCE_ALPHA32I_EXT = 0x8D87; - public const int GL_RGBA16I_EXT = 0x8D88; - public const int GL_RGB16I_EXT = 0x8D89; - public const int GL_ALPHA16I_EXT = 0x8D8A; - public const int GL_INTENSITY16I_EXT = 0x8D8B; - public const int GL_LUMINANCE16I_EXT = 0x8D8C; - public const int GL_LUMINANCE_ALPHA16I_EXT = 0x8D8D; - public const int GL_RGBA8I_EXT = 0x8D8E; - public const int GL_RGB8I_EXT = 0x8D8F; - public const int GL_ALPHA8I_EXT = 0x8D90; - public const int GL_INTENSITY8I_EXT = 0x8D91; - public const int GL_LUMINANCE8I_EXT = 0x8D92; - public const int GL_LUMINANCE_ALPHA8I_EXT = 0x8D93; - public const int GL_RED_INTEGER_EXT = 0x8D94; - public const int GL_GREEN_INTEGER_EXT = 0x8D95; - public const int GL_BLUE_INTEGER_EXT = 0x8D96; - public const int GL_ALPHA_INTEGER_EXT = 0x8D97; - public const int GL_RGB_INTEGER_EXT = 0x8D98; - public const int GL_RGBA_INTEGER_EXT = 0x8D99; - public const int GL_BGR_INTEGER_EXT = 0x8D9A; - public const int GL_BGRA_INTEGER_EXT = 0x8D9B; - public const int GL_LUMINANCE_INTEGER_EXT = 0x8D9C; - public const int GL_LUMINANCE_ALPHA_INTEGER_EXT = 0x8D9D; - public const int GL_RGBA_INTEGER_MODE_EXT = 0x8D9E; - public const int GL_EXT_texture_lod_bias = 1; - public const int GL_MAX_TEXTURE_LOD_BIAS_EXT = 0x84FD; - public const int GL_TEXTURE_FILTER_CONTROL_EXT = 0x8500; - public const int GL_TEXTURE_LOD_BIAS_EXT = 0x8501; - public const int GL_EXT_texture_mirror_clamp = 1; - public const int GL_MIRROR_CLAMP_EXT = 0x8742; - public const int GL_MIRROR_CLAMP_TO_EDGE_EXT = 0x8743; - public const int GL_MIRROR_CLAMP_TO_BORDER_EXT = 0x8912; - public const int GL_EXT_texture_object = 1; - public const int GL_TEXTURE_PRIORITY_EXT = 0x8066; - public const int GL_TEXTURE_RESIDENT_EXT = 0x8067; - public const int GL_TEXTURE_1D_BINDING_EXT = 0x8068; - public const int GL_TEXTURE_2D_BINDING_EXT = 0x8069; - public const int GL_TEXTURE_3D_BINDING_EXT = 0x806A; - public const int GL_EXT_texture_perturb_normal = 1; - public const int GL_PERTURB_EXT = 0x85AE; - public const int GL_TEXTURE_NORMAL_EXT = 0x85AF; - public const int GL_EXT_texture_sRGB = 1; - public const int GL_SRGB_EXT = 0x8C40; - public const int GL_SRGB8_EXT = 0x8C41; - public const int GL_SRGB_ALPHA_EXT = 0x8C42; - public const int GL_SRGB8_ALPHA8_EXT = 0x8C43; - public const int GL_SLUMINANCE_ALPHA_EXT = 0x8C44; - public const int GL_SLUMINANCE8_ALPHA8_EXT = 0x8C45; - public const int GL_SLUMINANCE_EXT = 0x8C46; - public const int GL_SLUMINANCE8_EXT = 0x8C47; - public const int GL_COMPRESSED_SRGB_EXT = 0x8C48; - public const int GL_COMPRESSED_SRGB_ALPHA_EXT = 0x8C49; - public const int GL_COMPRESSED_SLUMINANCE_EXT = 0x8C4A; - public const int GL_COMPRESSED_SLUMINANCE_ALPHA_EXT = 0x8C4B; - public const int GL_COMPRESSED_SRGB_S3TC_DXT1_EXT = 0x8C4C; - public const int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 0x8C4D; - public const int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 0x8C4E; - public const int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 0x8C4F; - public const int GL_EXT_texture_sRGB_decode = 1; - public const int GL_TEXTURE_SRGB_DECODE_EXT = 0x8A48; - public const int GL_DECODE_EXT = 0x8A49; - public const int GL_SKIP_DECODE_EXT = 0x8A4A; - public const int GL_EXT_texture_shared_exponent = 1; - public const int GL_RGB9_E5_EXT = 0x8C3D; - public const int GL_UNSIGNED_INT_5_9_9_9_REV_EXT = 0x8C3E; - public const int GL_TEXTURE_SHARED_SIZE_EXT = 0x8C3F; - public const int GL_EXT_texture_snorm = 1; - public const int GL_ALPHA_SNORM = 0x9010; - public const int GL_LUMINANCE_SNORM = 0x9011; - public const int GL_LUMINANCE_ALPHA_SNORM = 0x9012; - public const int GL_INTENSITY_SNORM = 0x9013; - public const int GL_ALPHA8_SNORM = 0x9014; - public const int GL_LUMINANCE8_SNORM = 0x9015; - public const int GL_LUMINANCE8_ALPHA8_SNORM = 0x9016; - public const int GL_INTENSITY8_SNORM = 0x9017; - public const int GL_ALPHA16_SNORM = 0x9018; - public const int GL_LUMINANCE16_SNORM = 0x9019; - public const int GL_LUMINANCE16_ALPHA16_SNORM = 0x901A; - public const int GL_INTENSITY16_SNORM = 0x901B; - public const int GL_RED_SNORM = 0x8F90; - public const int GL_RG_SNORM = 0x8F91; - public const int GL_RGB_SNORM = 0x8F92; - public const int GL_RGBA_SNORM = 0x8F93; - public const int GL_EXT_texture_swizzle = 1; - public const int GL_TEXTURE_SWIZZLE_R_EXT = 0x8E42; - public const int GL_TEXTURE_SWIZZLE_G_EXT = 0x8E43; - public const int GL_TEXTURE_SWIZZLE_B_EXT = 0x8E44; - public const int GL_TEXTURE_SWIZZLE_A_EXT = 0x8E45; - public const int GL_TEXTURE_SWIZZLE_RGBA_EXT = 0x8E46; - public const int GL_EXT_timer_query = 1; - public const int GL_TIME_ELAPSED_EXT = 0x88BF; - public const int GL_EXT_transform_feedback = 1; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_EXT = 0x8C8E; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT = 0x8C84; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT = 0x8C85; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT = 0x8C8F; - public const int GL_INTERLEAVED_ATTRIBS_EXT = 0x8C8C; - public const int GL_SEPARATE_ATTRIBS_EXT = 0x8C8D; - public const int GL_PRIMITIVES_GENERATED_EXT = 0x8C87; - public const int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT = 0x8C88; - public const int GL_RASTERIZER_DISCARD_EXT = 0x8C89; - public const int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT = 0x8C8A; - public const int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT = 0x8C8B; - public const int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT = 0x8C80; - public const int GL_TRANSFORM_FEEDBACK_VARYINGS_EXT = 0x8C83; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT = 0x8C7F; - public const int GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT = 0x8C76; - public const int GL_EXT_vertex_array = 1; - public const int GL_VERTEX_ARRAY_EXT = 0x8074; - public const int GL_NORMAL_ARRAY_EXT = 0x8075; - public const int GL_COLOR_ARRAY_EXT = 0x8076; - public const int GL_INDEX_ARRAY_EXT = 0x8077; - public const int GL_TEXTURE_COORD_ARRAY_EXT = 0x8078; - public const int GL_EDGE_FLAG_ARRAY_EXT = 0x8079; - public const int GL_VERTEX_ARRAY_SIZE_EXT = 0x807A; - public const int GL_VERTEX_ARRAY_TYPE_EXT = 0x807B; - public const int GL_VERTEX_ARRAY_STRIDE_EXT = 0x807C; - public const int GL_VERTEX_ARRAY_COUNT_EXT = 0x807D; - public const int GL_NORMAL_ARRAY_TYPE_EXT = 0x807E; - public const int GL_NORMAL_ARRAY_STRIDE_EXT = 0x807F; - public const int GL_NORMAL_ARRAY_COUNT_EXT = 0x8080; - public const int GL_COLOR_ARRAY_SIZE_EXT = 0x8081; - public const int GL_COLOR_ARRAY_TYPE_EXT = 0x8082; - public const int GL_COLOR_ARRAY_STRIDE_EXT = 0x8083; - public const int GL_COLOR_ARRAY_COUNT_EXT = 0x8084; - public const int GL_INDEX_ARRAY_TYPE_EXT = 0x8085; - public const int GL_INDEX_ARRAY_STRIDE_EXT = 0x8086; - public const int GL_INDEX_ARRAY_COUNT_EXT = 0x8087; - public const int GL_TEXTURE_COORD_ARRAY_SIZE_EXT = 0x8088; - public const int GL_TEXTURE_COORD_ARRAY_TYPE_EXT = 0x8089; - public const int GL_TEXTURE_COORD_ARRAY_STRIDE_EXT = 0x808A; - public const int GL_TEXTURE_COORD_ARRAY_COUNT_EXT = 0x808B; - public const int GL_EDGE_FLAG_ARRAY_STRIDE_EXT = 0x808C; - public const int GL_EDGE_FLAG_ARRAY_COUNT_EXT = 0x808D; - public const int GL_VERTEX_ARRAY_POINTER_EXT = 0x808E; - public const int GL_NORMAL_ARRAY_POINTER_EXT = 0x808F; - public const int GL_COLOR_ARRAY_POINTER_EXT = 0x8090; - public const int GL_INDEX_ARRAY_POINTER_EXT = 0x8091; - public const int GL_TEXTURE_COORD_ARRAY_POINTER_EXT = 0x8092; - public const int GL_EDGE_FLAG_ARRAY_POINTER_EXT = 0x8093; - public const int GL_EXT_vertex_array_bgra = 1; - public const int GL_EXT_vertex_attrib_64bit = 1; - public const int GL_DOUBLE_VEC2_EXT = 0x8FFC; - public const int GL_DOUBLE_VEC3_EXT = 0x8FFD; - public const int GL_DOUBLE_VEC4_EXT = 0x8FFE; - public const int GL_DOUBLE_MAT2_EXT = 0x8F46; - public const int GL_DOUBLE_MAT3_EXT = 0x8F47; - public const int GL_DOUBLE_MAT4_EXT = 0x8F48; - public const int GL_DOUBLE_MAT2x3_EXT = 0x8F49; - public const int GL_DOUBLE_MAT2x4_EXT = 0x8F4A; - public const int GL_DOUBLE_MAT3x2_EXT = 0x8F4B; - public const int GL_DOUBLE_MAT3x4_EXT = 0x8F4C; - public const int GL_DOUBLE_MAT4x2_EXT = 0x8F4D; - public const int GL_DOUBLE_MAT4x3_EXT = 0x8F4E; - public const int GL_EXT_vertex_shader = 1; - public const int GL_VERTEX_SHADER_EXT = 0x8780; - public const int GL_VERTEX_SHADER_BINDING_EXT = 0x8781; - public const int GL_OP_INDEX_EXT = 0x8782; - public const int GL_OP_NEGATE_EXT = 0x8783; - public const int GL_OP_DOT3_EXT = 0x8784; - public const int GL_OP_DOT4_EXT = 0x8785; - public const int GL_OP_MUL_EXT = 0x8786; - public const int GL_OP_ADD_EXT = 0x8787; - public const int GL_OP_MADD_EXT = 0x8788; - public const int GL_OP_FRAC_EXT = 0x8789; - public const int GL_OP_MAX_EXT = 0x878A; - public const int GL_OP_MIN_EXT = 0x878B; - public const int GL_OP_SET_GE_EXT = 0x878C; - public const int GL_OP_SET_LT_EXT = 0x878D; - public const int GL_OP_CLAMP_EXT = 0x878E; - public const int GL_OP_FLOOR_EXT = 0x878F; - public const int GL_OP_ROUND_EXT = 0x8790; - public const int GL_OP_EXP_BASE_2_EXT = 0x8791; - public const int GL_OP_LOG_BASE_2_EXT = 0x8792; - public const int GL_OP_POWER_EXT = 0x8793; - public const int GL_OP_RECIP_EXT = 0x8794; - public const int GL_OP_RECIP_SQRT_EXT = 0x8795; - public const int GL_OP_SUB_EXT = 0x8796; - public const int GL_OP_CROSS_PRODUCT_EXT = 0x8797; - public const int GL_OP_MULTIPLY_MATRIX_EXT = 0x8798; - public const int GL_OP_MOV_EXT = 0x8799; - public const int GL_OUTPUT_VERTEX_EXT = 0x879A; - public const int GL_OUTPUT_COLOR0_EXT = 0x879B; - public const int GL_OUTPUT_COLOR1_EXT = 0x879C; - public const int GL_OUTPUT_TEXTURE_COORD0_EXT = 0x879D; - public const int GL_OUTPUT_TEXTURE_COORD1_EXT = 0x879E; - public const int GL_OUTPUT_TEXTURE_COORD2_EXT = 0x879F; - public const int GL_OUTPUT_TEXTURE_COORD3_EXT = 0x87A0; - public const int GL_OUTPUT_TEXTURE_COORD4_EXT = 0x87A1; - public const int GL_OUTPUT_TEXTURE_COORD5_EXT = 0x87A2; - public const int GL_OUTPUT_TEXTURE_COORD6_EXT = 0x87A3; - public const int GL_OUTPUT_TEXTURE_COORD7_EXT = 0x87A4; - public const int GL_OUTPUT_TEXTURE_COORD8_EXT = 0x87A5; - public const int GL_OUTPUT_TEXTURE_COORD9_EXT = 0x87A6; - public const int GL_OUTPUT_TEXTURE_COORD10_EXT = 0x87A7; - public const int GL_OUTPUT_TEXTURE_COORD11_EXT = 0x87A8; - public const int GL_OUTPUT_TEXTURE_COORD12_EXT = 0x87A9; - public const int GL_OUTPUT_TEXTURE_COORD13_EXT = 0x87AA; - public const int GL_OUTPUT_TEXTURE_COORD14_EXT = 0x87AB; - public const int GL_OUTPUT_TEXTURE_COORD15_EXT = 0x87AC; - public const int GL_OUTPUT_TEXTURE_COORD16_EXT = 0x87AD; - public const int GL_OUTPUT_TEXTURE_COORD17_EXT = 0x87AE; - public const int GL_OUTPUT_TEXTURE_COORD18_EXT = 0x87AF; - public const int GL_OUTPUT_TEXTURE_COORD19_EXT = 0x87B0; - public const int GL_OUTPUT_TEXTURE_COORD20_EXT = 0x87B1; - public const int GL_OUTPUT_TEXTURE_COORD21_EXT = 0x87B2; - public const int GL_OUTPUT_TEXTURE_COORD22_EXT = 0x87B3; - public const int GL_OUTPUT_TEXTURE_COORD23_EXT = 0x87B4; - public const int GL_OUTPUT_TEXTURE_COORD24_EXT = 0x87B5; - public const int GL_OUTPUT_TEXTURE_COORD25_EXT = 0x87B6; - public const int GL_OUTPUT_TEXTURE_COORD26_EXT = 0x87B7; - public const int GL_OUTPUT_TEXTURE_COORD27_EXT = 0x87B8; - public const int GL_OUTPUT_TEXTURE_COORD28_EXT = 0x87B9; - public const int GL_OUTPUT_TEXTURE_COORD29_EXT = 0x87BA; - public const int GL_OUTPUT_TEXTURE_COORD30_EXT = 0x87BB; - public const int GL_OUTPUT_TEXTURE_COORD31_EXT = 0x87BC; - public const int GL_OUTPUT_FOG_EXT = 0x87BD; - public const int GL_SCALAR_EXT = 0x87BE; - public const int GL_VECTOR_EXT = 0x87BF; - public const int GL_MATRIX_EXT = 0x87C0; - public const int GL_VARIANT_EXT = 0x87C1; - public const int GL_INVARIANT_EXT = 0x87C2; - public const int GL_LOCAL_CONSTANT_EXT = 0x87C3; - public const int GL_LOCAL_EXT = 0x87C4; - public const int GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87C5; - public const int GL_MAX_VERTEX_SHADER_VARIANTS_EXT = 0x87C6; - public const int GL_MAX_VERTEX_SHADER_INVARIANTS_EXT = 0x87C7; - public const int GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87C8; - public const int GL_MAX_VERTEX_SHADER_LOCALS_EXT = 0x87C9; - public const int GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CA; - public const int GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT = 0x87CB; - public const int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87CC; - public const int GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT = 0x87CD; - public const int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT = 0x87CE; - public const int GL_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CF; - public const int GL_VERTEX_SHADER_VARIANTS_EXT = 0x87D0; - public const int GL_VERTEX_SHADER_INVARIANTS_EXT = 0x87D1; - public const int GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87D2; - public const int GL_VERTEX_SHADER_LOCALS_EXT = 0x87D3; - public const int GL_VERTEX_SHADER_OPTIMIZED_EXT = 0x87D4; - public const int GL_X_EXT = 0x87D5; - public const int GL_Y_EXT = 0x87D6; - public const int GL_Z_EXT = 0x87D7; - public const int GL_W_EXT = 0x87D8; - public const int GL_NEGATIVE_X_EXT = 0x87D9; - public const int GL_NEGATIVE_Y_EXT = 0x87DA; - public const int GL_NEGATIVE_Z_EXT = 0x87DB; - public const int GL_NEGATIVE_W_EXT = 0x87DC; - public const int GL_ZERO_EXT = 0x87DD; - public const int GL_ONE_EXT = 0x87DE; - public const int GL_NEGATIVE_ONE_EXT = 0x87DF; - public const int GL_NORMALIZED_RANGE_EXT = 0x87E0; - public const int GL_FULL_RANGE_EXT = 0x87E1; - public const int GL_CURRENT_VERTEX_EXT = 0x87E2; - public const int GL_MVP_MATRIX_EXT = 0x87E3; - public const int GL_VARIANT_VALUE_EXT = 0x87E4; - public const int GL_VARIANT_DATATYPE_EXT = 0x87E5; - public const int GL_VARIANT_ARRAY_STRIDE_EXT = 0x87E6; - public const int GL_VARIANT_ARRAY_TYPE_EXT = 0x87E7; - public const int GL_VARIANT_ARRAY_EXT = 0x87E8; - public const int GL_VARIANT_ARRAY_POINTER_EXT = 0x87E9; - public const int GL_INVARIANT_VALUE_EXT = 0x87EA; - public const int GL_INVARIANT_DATATYPE_EXT = 0x87EB; - public const int GL_LOCAL_CONSTANT_VALUE_EXT = 0x87EC; - public const int GL_LOCAL_CONSTANT_DATATYPE_EXT = 0x87ED; - public const int GL_EXT_vertex_weighting = 1; - public const int GL_MODELVIEW0_STACK_DEPTH_EXT = 0x0BA3; - public const int GL_MODELVIEW1_STACK_DEPTH_EXT = 0x8502; - public const int GL_MODELVIEW0_MATRIX_EXT = 0x0BA6; - public const int GL_MODELVIEW1_MATRIX_EXT = 0x8506; - public const int GL_VERTEX_WEIGHTING_EXT = 0x8509; - public const int GL_MODELVIEW0_EXT = 0x1700; - public const int GL_MODELVIEW1_EXT = 0x850A; - public const int GL_CURRENT_VERTEX_WEIGHT_EXT = 0x850B; - public const int GL_VERTEX_WEIGHT_ARRAY_EXT = 0x850C; - public const int GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT = 0x850D; - public const int GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT = 0x850E; - public const int GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT = 0x850F; - public const int GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT = 0x8510; - public const int GL_EXT_win32_keyed_mutex = 1; - public const int GL_EXT_window_rectangles = 1; - public const int GL_INCLUSIVE_EXT = 0x8F10; - public const int GL_EXCLUSIVE_EXT = 0x8F11; - public const int GL_WINDOW_RECTANGLE_EXT = 0x8F12; - public const int GL_WINDOW_RECTANGLE_MODE_EXT = 0x8F13; - public const int GL_MAX_WINDOW_RECTANGLES_EXT = 0x8F14; - public const int GL_NUM_WINDOW_RECTANGLES_EXT = 0x8F15; - public const int GL_EXT_x11_sync_object = 1; - public const int GL_SYNC_X11_FENCE_EXT = 0x90E1; - public const int GL_GREMEDY_frame_terminator = 1; - public const int GL_GREMEDY_string_marker = 1; - public const int GL_HP_convolution_border_modes = 1; - public const int GL_IGNORE_BORDER_HP = 0x8150; - public const int GL_CONSTANT_BORDER_HP = 0x8151; - public const int GL_REPLICATE_BORDER_HP = 0x8153; - public const int GL_CONVOLUTION_BORDER_COLOR_HP = 0x8154; - public const int GL_HP_image_transform = 1; - public const int GL_IMAGE_SCALE_X_HP = 0x8155; - public const int GL_IMAGE_SCALE_Y_HP = 0x8156; - public const int GL_IMAGE_TRANSLATE_X_HP = 0x8157; - public const int GL_IMAGE_TRANSLATE_Y_HP = 0x8158; - public const int GL_IMAGE_ROTATE_ANGLE_HP = 0x8159; - public const int GL_IMAGE_ROTATE_ORIGIN_X_HP = 0x815A; - public const int GL_IMAGE_ROTATE_ORIGIN_Y_HP = 0x815B; - public const int GL_IMAGE_MAG_FILTER_HP = 0x815C; - public const int GL_IMAGE_MIN_FILTER_HP = 0x815D; - public const int GL_IMAGE_CUBIC_WEIGHT_HP = 0x815E; - public const int GL_CUBIC_HP = 0x815F; - public const int GL_AVERAGE_HP = 0x8160; - public const int GL_IMAGE_TRANSFORM_2D_HP = 0x8161; - public const int GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP = 0x8162; - public const int GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP = 0x8163; - public const int GL_HP_occlusion_test = 1; - public const int GL_OCCLUSION_TEST_HP = 0x8165; - public const int GL_OCCLUSION_TEST_RESULT_HP = 0x8166; - public const int GL_HP_texture_lighting = 1; - public const int GL_TEXTURE_LIGHTING_MODE_HP = 0x8167; - public const int GL_TEXTURE_POST_SPECULAR_HP = 0x8168; - public const int GL_TEXTURE_PRE_SPECULAR_HP = 0x8169; - public const int GL_IBM_cull_vertex = 1; - public const int GL_CULL_VERTEX_IBM = 103050; - public const int GL_IBM_multimode_draw_arrays = 1; - public const int GL_IBM_rasterpos_clip = 1; - public const int GL_RASTER_POSITION_UNCLIPPED_IBM = 0x19262; - public const int GL_IBM_static_data = 1; - public const int GL_ALL_STATIC_DATA_IBM = 103060; - public const int GL_STATIC_VERTEX_ARRAY_IBM = 103061; - public const int GL_IBM_texture_mirrored_repeat = 1; - public const int GL_MIRRORED_REPEAT_IBM = 0x8370; - public const int GL_IBM_vertex_array_lists = 1; - public const int GL_VERTEX_ARRAY_LIST_IBM = 103070; - public const int GL_NORMAL_ARRAY_LIST_IBM = 103071; - public const int GL_COLOR_ARRAY_LIST_IBM = 103072; - public const int GL_INDEX_ARRAY_LIST_IBM = 103073; - public const int GL_TEXTURE_COORD_ARRAY_LIST_IBM = 103074; - public const int GL_EDGE_FLAG_ARRAY_LIST_IBM = 103075; - public const int GL_FOG_COORDINATE_ARRAY_LIST_IBM = 103076; - public const int GL_SECONDARY_COLOR_ARRAY_LIST_IBM = 103077; - public const int GL_VERTEX_ARRAY_LIST_STRIDE_IBM = 103080; - public const int GL_NORMAL_ARRAY_LIST_STRIDE_IBM = 103081; - public const int GL_COLOR_ARRAY_LIST_STRIDE_IBM = 103082; - public const int GL_INDEX_ARRAY_LIST_STRIDE_IBM = 103083; - public const int GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM = 103084; - public const int GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM = 103085; - public const int GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM = 103086; - public const int GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM = 103087; - public const int GL_INGR_blend_func_separate = 1; - public const int GL_INGR_color_clamp = 1; - public const int GL_RED_MIN_CLAMP_INGR = 0x8560; - public const int GL_GREEN_MIN_CLAMP_INGR = 0x8561; - public const int GL_BLUE_MIN_CLAMP_INGR = 0x8562; - public const int GL_ALPHA_MIN_CLAMP_INGR = 0x8563; - public const int GL_RED_MAX_CLAMP_INGR = 0x8564; - public const int GL_GREEN_MAX_CLAMP_INGR = 0x8565; - public const int GL_BLUE_MAX_CLAMP_INGR = 0x8566; - public const int GL_ALPHA_MAX_CLAMP_INGR = 0x8567; - public const int GL_INGR_interlace_read = 1; - public const int GL_INTERLACE_READ_INGR = 0x8568; - public const int GL_INTEL_blackhole_render = 1; - public const int GL_BLACKHOLE_RENDER_INTEL = 0x83FC; - public const int GL_INTEL_conservative_rasterization = 1; - public const int GL_CONSERVATIVE_RASTERIZATION_INTEL = 0x83FE; - public const int GL_INTEL_fragment_shader_ordering = 1; - public const int GL_INTEL_framebuffer_CMAA = 1; - public const int GL_INTEL_map_texture = 1; - public const int GL_TEXTURE_MEMORY_LAYOUT_INTEL = 0x83FF; - public const int GL_LAYOUT_DEFAULT_INTEL = 0; - public const int GL_LAYOUT_LINEAR_INTEL = 1; - public const int GL_LAYOUT_LINEAR_CPU_CACHED_INTEL = 2; - public const int GL_INTEL_parallel_arrays = 1; - public const int GL_PARALLEL_ARRAYS_INTEL = 0x83F4; - public const int GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F5; - public const int GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F6; - public const int GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F7; - public const int GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F8; - public const int GL_INTEL_performance_query = 1; - public const int GL_PERFQUERY_SINGLE_CONTEXT_INTEL = 0x00000000; - public const int GL_PERFQUERY_GLOBAL_CONTEXT_INTEL = 0x00000001; - public const int GL_PERFQUERY_WAIT_INTEL = 0x83FB; - public const int GL_PERFQUERY_FLUSH_INTEL = 0x83FA; - public const int GL_PERFQUERY_DONOT_FLUSH_INTEL = 0x83F9; - public const int GL_PERFQUERY_COUNTER_EVENT_INTEL = 0x94F0; - public const int GL_PERFQUERY_COUNTER_DURATION_NORM_INTEL = 0x94F1; - public const int GL_PERFQUERY_COUNTER_DURATION_RAW_INTEL = 0x94F2; - public const int GL_PERFQUERY_COUNTER_THROUGHPUT_INTEL = 0x94F3; - public const int GL_PERFQUERY_COUNTER_RAW_INTEL = 0x94F4; - public const int GL_PERFQUERY_COUNTER_TIMESTAMP_INTEL = 0x94F5; - public const int GL_PERFQUERY_COUNTER_DATA_UINT32_INTEL = 0x94F8; - public const int GL_PERFQUERY_COUNTER_DATA_UINT64_INTEL = 0x94F9; - public const int GL_PERFQUERY_COUNTER_DATA_FLOAT_INTEL = 0x94FA; - public const int GL_PERFQUERY_COUNTER_DATA_DOUBLE_INTEL = 0x94FB; - public const int GL_PERFQUERY_COUNTER_DATA_BOOL32_INTEL = 0x94FC; - public const int GL_PERFQUERY_QUERY_NAME_LENGTH_MAX_INTEL = 0x94FD; - public const int GL_PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL = 0x94FE; - public const int GL_PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL = 0x94FF; - public const int GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL = 0x9500; - public const int GL_MESAX_texture_stack = 1; - public const int GL_TEXTURE_1D_STACK_MESAX = 0x8759; - public const int GL_TEXTURE_2D_STACK_MESAX = 0x875A; - public const int GL_PROXY_TEXTURE_1D_STACK_MESAX = 0x875B; - public const int GL_PROXY_TEXTURE_2D_STACK_MESAX = 0x875C; - public const int GL_TEXTURE_1D_STACK_BINDING_MESAX = 0x875D; - public const int GL_TEXTURE_2D_STACK_BINDING_MESAX = 0x875E; - public const int GL_MESA_pack_invert = 1; - public const int GL_PACK_INVERT_MESA = 0x8758; - public const int GL_MESA_program_binary_formats = 1; - public const int GL_PROGRAM_BINARY_FORMAT_MESA = 0x875F; - public const int GL_MESA_resize_buffers = 1; - public const int GL_MESA_shader_integer_functions = 1; - public const int GL_MESA_tile_raster_order = 1; - public const int GL_TILE_RASTER_ORDER_FIXED_MESA = 0x8BB8; - public const int GL_TILE_RASTER_ORDER_INCREASING_X_MESA = 0x8BB9; - public const int GL_TILE_RASTER_ORDER_INCREASING_Y_MESA = 0x8BBA; - public const int GL_MESA_window_pos = 1; - public const int GL_MESA_ycbcr_texture = 1; - public const int GL_UNSIGNED_SHORT_8_8_MESA = 0x85BA; - public const int GL_UNSIGNED_SHORT_8_8_REV_MESA = 0x85BB; - public const int GL_YCBCR_MESA = 0x8757; - public const int GL_NVX_blend_equation_advanced_multi_draw_buffers = 1; - public const int GL_NVX_conditional_render = 1; - public const int GL_NVX_gpu_memory_info = 1; - public const int GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX = 0x9047; - public const int GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX = 0x9048; - public const int GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX = 0x9049; - public const int GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX = 0x904A; - public const int GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX = 0x904B; - public const int GL_NVX_linked_gpu_multicast = 1; - public const int GL_LGPU_SEPARATE_STORAGE_BIT_NVX = 0x0800; - public const int GL_MAX_LGPU_GPUS_NVX = 0x92BA; - public const int GL_NV_alpha_to_coverage_dither_control = 1; - public const int GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV = 0x934D; - public const int GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV = 0x934E; - public const int GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV = 0x934F; - public const int GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV = 0x92BF; - public const int GL_NV_bindless_multi_draw_indirect = 1; - public const int GL_NV_bindless_multi_draw_indirect_count = 1; - public const int GL_NV_bindless_texture = 1; - public const int GL_NV_blend_equation_advanced = 1; - public const int GL_BLEND_OVERLAP_NV = 0x9281; - public const int GL_BLEND_PREMULTIPLIED_SRC_NV = 0x9280; - public const int GL_BLUE_NV = 0x1905; - public const int GL_COLORBURN_NV = 0x929A; - public const int GL_COLORDODGE_NV = 0x9299; - public const int GL_CONJOINT_NV = 0x9284; - public const int GL_CONTRAST_NV = 0x92A1; - public const int GL_DARKEN_NV = 0x9297; - public const int GL_DIFFERENCE_NV = 0x929E; - public const int GL_DISJOINT_NV = 0x9283; - public const int GL_DST_ATOP_NV = 0x928F; - public const int GL_DST_IN_NV = 0x928B; - public const int GL_DST_NV = 0x9287; - public const int GL_DST_OUT_NV = 0x928D; - public const int GL_DST_OVER_NV = 0x9289; - public const int GL_EXCLUSION_NV = 0x92A0; - public const int GL_GREEN_NV = 0x1904; - public const int GL_HARDLIGHT_NV = 0x929B; - public const int GL_HARDMIX_NV = 0x92A9; - public const int GL_HSL_COLOR_NV = 0x92AF; - public const int GL_HSL_HUE_NV = 0x92AD; - public const int GL_HSL_LUMINOSITY_NV = 0x92B0; - public const int GL_HSL_SATURATION_NV = 0x92AE; - public const int GL_INVERT_OVG_NV = 0x92B4; - public const int GL_INVERT_RGB_NV = 0x92A3; - public const int GL_LIGHTEN_NV = 0x9298; - public const int GL_LINEARBURN_NV = 0x92A5; - public const int GL_LINEARDODGE_NV = 0x92A4; - public const int GL_LINEARLIGHT_NV = 0x92A7; - public const int GL_MINUS_CLAMPED_NV = 0x92B3; - public const int GL_MINUS_NV = 0x929F; - public const int GL_MULTIPLY_NV = 0x9294; - public const int GL_OVERLAY_NV = 0x9296; - public const int GL_PINLIGHT_NV = 0x92A8; - public const int GL_PLUS_CLAMPED_ALPHA_NV = 0x92B2; - public const int GL_PLUS_CLAMPED_NV = 0x92B1; - public const int GL_PLUS_DARKER_NV = 0x9292; - public const int GL_PLUS_NV = 0x9291; - public const int GL_RED_NV = 0x1903; - public const int GL_SCREEN_NV = 0x9295; - public const int GL_SOFTLIGHT_NV = 0x929C; - public const int GL_SRC_ATOP_NV = 0x928E; - public const int GL_SRC_IN_NV = 0x928A; - public const int GL_SRC_NV = 0x9286; - public const int GL_SRC_OUT_NV = 0x928C; - public const int GL_SRC_OVER_NV = 0x9288; - public const int GL_UNCORRELATED_NV = 0x9282; - public const int GL_VIVIDLIGHT_NV = 0x92A6; - public const int GL_XOR_NV = 0x1506; - public const int GL_NV_blend_equation_advanced_coherent = 1; - public const int GL_BLEND_ADVANCED_COHERENT_NV = 0x9285; - public const int GL_NV_blend_minmax_factor = 1; - public const int GL_NV_blend_square = 1; - public const int GL_NV_clip_space_w_scaling = 1; - public const int GL_VIEWPORT_POSITION_W_SCALE_NV = 0x937C; - public const int GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV = 0x937D; - public const int GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV = 0x937E; - public const int GL_NV_command_list = 1; - public const int GL_TERMINATE_SEQUENCE_COMMAND_NV = 0x0000; - public const int GL_NOP_COMMAND_NV = 0x0001; - public const int GL_DRAW_ELEMENTS_COMMAND_NV = 0x0002; - public const int GL_DRAW_ARRAYS_COMMAND_NV = 0x0003; - public const int GL_DRAW_ELEMENTS_STRIP_COMMAND_NV = 0x0004; - public const int GL_DRAW_ARRAYS_STRIP_COMMAND_NV = 0x0005; - public const int GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV = 0x0006; - public const int GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV = 0x0007; - public const int GL_ELEMENT_ADDRESS_COMMAND_NV = 0x0008; - public const int GL_ATTRIBUTE_ADDRESS_COMMAND_NV = 0x0009; - public const int GL_UNIFORM_ADDRESS_COMMAND_NV = 0x000A; - public const int GL_BLEND_COLOR_COMMAND_NV = 0x000B; - public const int GL_STENCIL_REF_COMMAND_NV = 0x000C; - public const int GL_LINE_WIDTH_COMMAND_NV = 0x000D; - public const int GL_POLYGON_OFFSET_COMMAND_NV = 0x000E; - public const int GL_ALPHA_REF_COMMAND_NV = 0x000F; - public const int GL_VIEWPORT_COMMAND_NV = 0x0010; - public const int GL_SCISSOR_COMMAND_NV = 0x0011; - public const int GL_FRONT_FACE_COMMAND_NV = 0x0012; - public const int GL_NV_compute_program5 = 1; - public const int GL_COMPUTE_PROGRAM_NV = 0x90FB; - public const int GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV = 0x90FC; - public const int GL_NV_conditional_render = 1; - public const int GL_QUERY_WAIT_NV = 0x8E13; - public const int GL_QUERY_NO_WAIT_NV = 0x8E14; - public const int GL_QUERY_BY_REGION_WAIT_NV = 0x8E15; - public const int GL_QUERY_BY_REGION_NO_WAIT_NV = 0x8E16; - public const int GL_NV_conservative_raster = 1; - public const int GL_CONSERVATIVE_RASTERIZATION_NV = 0x9346; - public const int GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV = 0x9347; - public const int GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV = 0x9348; - public const int GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV = 0x9349; - public const int GL_NV_conservative_raster_dilate = 1; - public const int GL_CONSERVATIVE_RASTER_DILATE_NV = 0x9379; - public const int GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV = 0x937A; - public const int GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV = 0x937B; - public const int GL_NV_conservative_raster_pre_snap = 1; - public const int GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV = 0x9550; - public const int GL_NV_conservative_raster_pre_snap_triangles = 1; - public const int GL_CONSERVATIVE_RASTER_MODE_NV = 0x954D; - public const int GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV = 0x954E; - public const int GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV = 0x954F; - public const int GL_NV_conservative_raster_underestimation = 1; - public const int GL_NV_copy_depth_to_color = 1; - public const int GL_DEPTH_STENCIL_TO_RGBA_NV = 0x886E; - public const int GL_DEPTH_STENCIL_TO_BGRA_NV = 0x886F; - public const int GL_NV_copy_image = 1; - public const int GL_NV_deep_texture3D = 1; - public const int GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV = 0x90D0; - public const int GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV = 0x90D1; - public const int GL_NV_depth_buffer_float = 1; - public const int GL_DEPTH_COMPONENT32F_NV = 0x8DAB; - public const int GL_DEPTH32F_STENCIL8_NV = 0x8DAC; - public const int GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV = 0x8DAD; - public const int GL_DEPTH_BUFFER_FLOAT_MODE_NV = 0x8DAF; - public const int GL_NV_depth_clamp = 1; - public const int GL_DEPTH_CLAMP_NV = 0x864F; - public const int GL_NV_draw_texture = 1; - public const int GL_NV_draw_vulkan_image = 1; - public const int GL_NV_evaluators = 1; - public const int GL_EVAL_2D_NV = 0x86C0; - public const int GL_EVAL_TRIANGULAR_2D_NV = 0x86C1; - public const int GL_MAP_TESSELLATION_NV = 0x86C2; - public const int GL_MAP_ATTRIB_U_ORDER_NV = 0x86C3; - public const int GL_MAP_ATTRIB_V_ORDER_NV = 0x86C4; - public const int GL_EVAL_FRACTIONAL_TESSELLATION_NV = 0x86C5; - public const int GL_EVAL_VERTEX_ATTRIB0_NV = 0x86C6; - public const int GL_EVAL_VERTEX_ATTRIB1_NV = 0x86C7; - public const int GL_EVAL_VERTEX_ATTRIB2_NV = 0x86C8; - public const int GL_EVAL_VERTEX_ATTRIB3_NV = 0x86C9; - public const int GL_EVAL_VERTEX_ATTRIB4_NV = 0x86CA; - public const int GL_EVAL_VERTEX_ATTRIB5_NV = 0x86CB; - public const int GL_EVAL_VERTEX_ATTRIB6_NV = 0x86CC; - public const int GL_EVAL_VERTEX_ATTRIB7_NV = 0x86CD; - public const int GL_EVAL_VERTEX_ATTRIB8_NV = 0x86CE; - public const int GL_EVAL_VERTEX_ATTRIB9_NV = 0x86CF; - public const int GL_EVAL_VERTEX_ATTRIB10_NV = 0x86D0; - public const int GL_EVAL_VERTEX_ATTRIB11_NV = 0x86D1; - public const int GL_EVAL_VERTEX_ATTRIB12_NV = 0x86D2; - public const int GL_EVAL_VERTEX_ATTRIB13_NV = 0x86D3; - public const int GL_EVAL_VERTEX_ATTRIB14_NV = 0x86D4; - public const int GL_EVAL_VERTEX_ATTRIB15_NV = 0x86D5; - public const int GL_MAX_MAP_TESSELLATION_NV = 0x86D6; - public const int GL_MAX_RATIONAL_EVAL_ORDER_NV = 0x86D7; - public const int GL_NV_explicit_multisample = 1; - public const int GL_SAMPLE_POSITION_NV = 0x8E50; - public const int GL_SAMPLE_MASK_NV = 0x8E51; - public const int GL_SAMPLE_MASK_VALUE_NV = 0x8E52; - public const int GL_TEXTURE_BINDING_RENDERBUFFER_NV = 0x8E53; - public const int GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV = 0x8E54; - public const int GL_TEXTURE_RENDERBUFFER_NV = 0x8E55; - public const int GL_SAMPLER_RENDERBUFFER_NV = 0x8E56; - public const int GL_INT_SAMPLER_RENDERBUFFER_NV = 0x8E57; - public const int GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV = 0x8E58; - public const int GL_MAX_SAMPLE_MASK_WORDS_NV = 0x8E59; - public const int GL_NV_fence = 1; - public const int GL_ALL_COMPLETED_NV = 0x84F2; - public const int GL_FENCE_STATUS_NV = 0x84F3; - public const int GL_FENCE_CONDITION_NV = 0x84F4; - public const int GL_NV_fill_rectangle = 1; - public const int GL_FILL_RECTANGLE_NV = 0x933C; - public const int GL_NV_float_buffer = 1; - public const int GL_FLOAT_R_NV = 0x8880; - public const int GL_FLOAT_RG_NV = 0x8881; - public const int GL_FLOAT_RGB_NV = 0x8882; - public const int GL_FLOAT_RGBA_NV = 0x8883; - public const int GL_FLOAT_R16_NV = 0x8884; - public const int GL_FLOAT_R32_NV = 0x8885; - public const int GL_FLOAT_RG16_NV = 0x8886; - public const int GL_FLOAT_RG32_NV = 0x8887; - public const int GL_FLOAT_RGB16_NV = 0x8888; - public const int GL_FLOAT_RGB32_NV = 0x8889; - public const int GL_FLOAT_RGBA16_NV = 0x888A; - public const int GL_FLOAT_RGBA32_NV = 0x888B; - public const int GL_TEXTURE_FLOAT_COMPONENTS_NV = 0x888C; - public const int GL_FLOAT_CLEAR_COLOR_VALUE_NV = 0x888D; - public const int GL_FLOAT_RGBA_MODE_NV = 0x888E; - public const int GL_NV_fog_distance = 1; - public const int GL_FOG_DISTANCE_MODE_NV = 0x855A; - public const int GL_EYE_RADIAL_NV = 0x855B; - public const int GL_EYE_PLANE_ABSOLUTE_NV = 0x855C; - public const int GL_NV_fragment_coverage_to_color = 1; - public const int GL_FRAGMENT_COVERAGE_TO_COLOR_NV = 0x92DD; - public const int GL_FRAGMENT_COVERAGE_COLOR_NV = 0x92DE; - public const int GL_NV_fragment_program = 1; - public const int GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV = 0x8868; - public const int GL_FRAGMENT_PROGRAM_NV = 0x8870; - public const int GL_MAX_TEXTURE_COORDS_NV = 0x8871; - public const int GL_MAX_TEXTURE_IMAGE_UNITS_NV = 0x8872; - public const int GL_FRAGMENT_PROGRAM_BINDING_NV = 0x8873; - public const int GL_PROGRAM_ERROR_STRING_NV = 0x8874; - public const int GL_NV_fragment_program2 = 1; - public const int GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = 0x88F4; - public const int GL_MAX_PROGRAM_CALL_DEPTH_NV = 0x88F5; - public const int GL_MAX_PROGRAM_IF_DEPTH_NV = 0x88F6; - public const int GL_MAX_PROGRAM_LOOP_DEPTH_NV = 0x88F7; - public const int GL_MAX_PROGRAM_LOOP_COUNT_NV = 0x88F8; - public const int GL_NV_fragment_program4 = 1; - public const int GL_NV_fragment_program_option = 1; - public const int GL_NV_fragment_shader_interlock = 1; - public const int GL_NV_framebuffer_mixed_samples = 1; - public const int GL_COVERAGE_MODULATION_TABLE_NV = 0x9331; - public const int GL_COLOR_SAMPLES_NV = 0x8E20; - public const int GL_DEPTH_SAMPLES_NV = 0x932D; - public const int GL_STENCIL_SAMPLES_NV = 0x932E; - public const int GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV = 0x932F; - public const int GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV = 0x9330; - public const int GL_COVERAGE_MODULATION_NV = 0x9332; - public const int GL_COVERAGE_MODULATION_TABLE_SIZE_NV = 0x9333; - public const int GL_NV_framebuffer_multisample_coverage = 1; - public const int GL_RENDERBUFFER_COVERAGE_SAMPLES_NV = 0x8CAB; - public const int GL_RENDERBUFFER_COLOR_SAMPLES_NV = 0x8E10; - public const int GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E11; - public const int GL_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E12; - public const int GL_NV_geometry_program4 = 1; - public const int GL_GEOMETRY_PROGRAM_NV = 0x8C26; - public const int GL_MAX_PROGRAM_OUTPUT_VERTICES_NV = 0x8C27; - public const int GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV = 0x8C28; - public const int GL_NV_geometry_shader4 = 1; - public const int GL_NV_geometry_shader_passthrough = 1; - public const int GL_NV_gpu_multicast = 1; - public const int GL_PER_GPU_STORAGE_BIT_NV = 0x0800; - public const int GL_MULTICAST_GPUS_NV = 0x92BA; - public const int GL_RENDER_GPU_MASK_NV = 0x9558; - public const int GL_PER_GPU_STORAGE_NV = 0x9548; - public const int GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9549; - public const int GL_NV_gpu_program4 = 1; - public const int GL_MIN_PROGRAM_TEXEL_OFFSET_NV = 0x8904; - public const int GL_MAX_PROGRAM_TEXEL_OFFSET_NV = 0x8905; - public const int GL_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8906; - public const int GL_PROGRAM_RESULT_COMPONENTS_NV = 0x8907; - public const int GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8908; - public const int GL_MAX_PROGRAM_RESULT_COMPONENTS_NV = 0x8909; - public const int GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV = 0x8DA5; - public const int GL_MAX_PROGRAM_GENERIC_RESULTS_NV = 0x8DA6; - public const int GL_NV_gpu_program5 = 1; - public const int GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV = 0x8E5A; - public const int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV = 0x8E5B; - public const int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV = 0x8E5C; - public const int GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV = 0x8E5D; - public const int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV = 0x8E5E; - public const int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV = 0x8E5F; - public const int GL_MAX_PROGRAM_SUBROUTINE_PARAMETERS_NV = 0x8F44; - public const int GL_MAX_PROGRAM_SUBROUTINE_NUM_NV = 0x8F45; - public const int GL_NV_gpu_program5_mem_extended = 1; - public const int GL_NV_gpu_shader5 = 1; - public const int GL_NV_half_float = 1; - public const int GL_HALF_FLOAT_NV = 0x140B; - public const int GL_NV_internalformat_sample_query = 1; - public const int GL_MULTISAMPLES_NV = 0x9371; - public const int GL_SUPERSAMPLE_SCALE_X_NV = 0x9372; - public const int GL_SUPERSAMPLE_SCALE_Y_NV = 0x9373; - public const int GL_CONFORMANT_NV = 0x9374; - public const int GL_NV_light_max_exponent = 1; - public const int GL_MAX_SHININESS_NV = 0x8504; - public const int GL_MAX_SPOT_EXPONENT_NV = 0x8505; - public const int GL_NV_multisample_coverage = 1; - public const int GL_NV_multisample_filter_hint = 1; - public const int GL_MULTISAMPLE_FILTER_HINT_NV = 0x8534; - public const int GL_NV_occlusion_query = 1; - public const int GL_PIXEL_COUNTER_BITS_NV = 0x8864; - public const int GL_CURRENT_OCCLUSION_QUERY_ID_NV = 0x8865; - public const int GL_PIXEL_COUNT_NV = 0x8866; - public const int GL_PIXEL_COUNT_AVAILABLE_NV = 0x8867; - public const int GL_NV_packed_depth_stencil = 1; - public const int GL_DEPTH_STENCIL_NV = 0x84F9; - public const int GL_UNSIGNED_INT_24_8_NV = 0x84FA; - public const int GL_NV_parameter_buffer_object = 1; - public const int GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV = 0x8DA0; - public const int GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV = 0x8DA1; - public const int GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA2; - public const int GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA3; - public const int GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA4; - public const int GL_NV_parameter_buffer_object2 = 1; - public const int GL_NV_path_rendering = 1; - public const int GL_PATH_FORMAT_SVG_NV = 0x9070; - public const int GL_PATH_FORMAT_PS_NV = 0x9071; - public const int GL_STANDARD_FONT_NAME_NV = 0x9072; - public const int GL_SYSTEM_FONT_NAME_NV = 0x9073; - public const int GL_FILE_NAME_NV = 0x9074; - public const int GL_PATH_STROKE_WIDTH_NV = 0x9075; - public const int GL_PATH_END_CAPS_NV = 0x9076; - public const int GL_PATH_INITIAL_END_CAP_NV = 0x9077; - public const int GL_PATH_TERMINAL_END_CAP_NV = 0x9078; - public const int GL_PATH_JOIN_STYLE_NV = 0x9079; - public const int GL_PATH_MITER_LIMIT_NV = 0x907A; - public const int GL_PATH_DASH_CAPS_NV = 0x907B; - public const int GL_PATH_INITIAL_DASH_CAP_NV = 0x907C; - public const int GL_PATH_TERMINAL_DASH_CAP_NV = 0x907D; - public const int GL_PATH_DASH_OFFSET_NV = 0x907E; - public const int GL_PATH_CLIENT_LENGTH_NV = 0x907F; - public const int GL_PATH_FILL_MODE_NV = 0x9080; - public const int GL_PATH_FILL_MASK_NV = 0x9081; - public const int GL_PATH_FILL_COVER_MODE_NV = 0x9082; - public const int GL_PATH_STROKE_COVER_MODE_NV = 0x9083; - public const int GL_PATH_STROKE_MASK_NV = 0x9084; - public const int GL_COUNT_UP_NV = 0x9088; - public const int GL_COUNT_DOWN_NV = 0x9089; - public const int GL_PATH_OBJECT_BOUNDING_BOX_NV = 0x908A; - public const int GL_CONVEX_HULL_NV = 0x908B; - public const int GL_BOUNDING_BOX_NV = 0x908D; - public const int GL_TRANSLATE_X_NV = 0x908E; - public const int GL_TRANSLATE_Y_NV = 0x908F; - public const int GL_TRANSLATE_2D_NV = 0x9090; - public const int GL_TRANSLATE_3D_NV = 0x9091; - public const int GL_AFFINE_2D_NV = 0x9092; - public const int GL_AFFINE_3D_NV = 0x9094; - public const int GL_TRANSPOSE_AFFINE_2D_NV = 0x9096; - public const int GL_TRANSPOSE_AFFINE_3D_NV = 0x9098; - public const int GL_UTF8_NV = 0x909A; - public const int GL_UTF16_NV = 0x909B; - public const int GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV = 0x909C; - public const int GL_PATH_COMMAND_COUNT_NV = 0x909D; - public const int GL_PATH_COORD_COUNT_NV = 0x909E; - public const int GL_PATH_DASH_ARRAY_COUNT_NV = 0x909F; - public const int GL_PATH_COMPUTED_LENGTH_NV = 0x90A0; - public const int GL_PATH_FILL_BOUNDING_BOX_NV = 0x90A1; - public const int GL_PATH_STROKE_BOUNDING_BOX_NV = 0x90A2; - public const int GL_SQUARE_NV = 0x90A3; - public const int GL_ROUND_NV = 0x90A4; - public const int GL_TRIANGULAR_NV = 0x90A5; - public const int GL_BEVEL_NV = 0x90A6; - public const int GL_MITER_REVERT_NV = 0x90A7; - public const int GL_MITER_TRUNCATE_NV = 0x90A8; - public const int GL_SKIP_MISSING_GLYPH_NV = 0x90A9; - public const int GL_USE_MISSING_GLYPH_NV = 0x90AA; - public const int GL_PATH_ERROR_POSITION_NV = 0x90AB; - public const int GL_ACCUM_ADJACENT_PAIRS_NV = 0x90AD; - public const int GL_ADJACENT_PAIRS_NV = 0x90AE; - public const int GL_FIRST_TO_REST_NV = 0x90AF; - public const int GL_PATH_GEN_MODE_NV = 0x90B0; - public const int GL_PATH_GEN_COEFF_NV = 0x90B1; - public const int GL_PATH_GEN_COMPONENTS_NV = 0x90B3; - public const int GL_PATH_STENCIL_FUNC_NV = 0x90B7; - public const int GL_PATH_STENCIL_REF_NV = 0x90B8; - public const int GL_PATH_STENCIL_VALUE_MASK_NV = 0x90B9; - public const int GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV = 0x90BD; - public const int GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV = 0x90BE; - public const int GL_PATH_COVER_DEPTH_FUNC_NV = 0x90BF; - public const int GL_PATH_DASH_OFFSET_RESET_NV = 0x90B4; - public const int GL_MOVE_TO_RESETS_NV = 0x90B5; - public const int GL_MOVE_TO_CONTINUES_NV = 0x90B6; - public const int GL_CLOSE_PATH_NV = 0x00; - public const int GL_MOVE_TO_NV = 0x02; - public const int GL_RELATIVE_MOVE_TO_NV = 0x03; - public const int GL_LINE_TO_NV = 0x04; - public const int GL_RELATIVE_LINE_TO_NV = 0x05; - public const int GL_HORIZONTAL_LINE_TO_NV = 0x06; - public const int GL_RELATIVE_HORIZONTAL_LINE_TO_NV = 0x07; - public const int GL_VERTICAL_LINE_TO_NV = 0x08; - public const int GL_RELATIVE_VERTICAL_LINE_TO_NV = 0x09; - public const int GL_QUADRATIC_CURVE_TO_NV = 0x0A; - public const int GL_RELATIVE_QUADRATIC_CURVE_TO_NV = 0x0B; - public const int GL_CUBIC_CURVE_TO_NV = 0x0C; - public const int GL_RELATIVE_CUBIC_CURVE_TO_NV = 0x0D; - public const int GL_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0E; - public const int GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV = 0x0F; - public const int GL_SMOOTH_CUBIC_CURVE_TO_NV = 0x10; - public const int GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV = 0x11; - public const int GL_SMALL_CCW_ARC_TO_NV = 0x12; - public const int GL_RELATIVE_SMALL_CCW_ARC_TO_NV = 0x13; - public const int GL_SMALL_CW_ARC_TO_NV = 0x14; - public const int GL_RELATIVE_SMALL_CW_ARC_TO_NV = 0x15; - public const int GL_LARGE_CCW_ARC_TO_NV = 0x16; - public const int GL_RELATIVE_LARGE_CCW_ARC_TO_NV = 0x17; - public const int GL_LARGE_CW_ARC_TO_NV = 0x18; - public const int GL_RELATIVE_LARGE_CW_ARC_TO_NV = 0x19; - public const int GL_RESTART_PATH_NV = 0xF0; - public const int GL_DUP_FIRST_CUBIC_CURVE_TO_NV = 0xF2; - public const int GL_DUP_LAST_CUBIC_CURVE_TO_NV = 0xF4; - public const int GL_RECT_NV = 0xF6; - public const int GL_CIRCULAR_CCW_ARC_TO_NV = 0xF8; - public const int GL_CIRCULAR_CW_ARC_TO_NV = 0xFA; - public const int GL_CIRCULAR_TANGENT_ARC_TO_NV = 0xFC; - public const int GL_ARC_TO_NV = 0xFE; - public const int GL_RELATIVE_ARC_TO_NV = 0xFF; - public const int GL_BOLD_BIT_NV = 0x01; - public const int GL_ITALIC_BIT_NV = 0x02; - public const int GL_GLYPH_WIDTH_BIT_NV = 0x01; - public const int GL_GLYPH_HEIGHT_BIT_NV = 0x02; - public const int GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV = 0x04; - public const int GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV = 0x08; - public const int GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV = 0x10; - public const int GL_GLYPH_VERTICAL_BEARING_X_BIT_NV = 0x20; - public const int GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV = 0x40; - public const int GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV = 0x80; - public const int GL_GLYPH_HAS_KERNING_BIT_NV = 0x100; - public const int GL_FONT_X_MIN_BOUNDS_BIT_NV = 0x00010000; - public const int GL_FONT_Y_MIN_BOUNDS_BIT_NV = 0x00020000; - public const int GL_FONT_X_MAX_BOUNDS_BIT_NV = 0x00040000; - public const int GL_FONT_Y_MAX_BOUNDS_BIT_NV = 0x00080000; - public const int GL_FONT_UNITS_PER_EM_BIT_NV = 0x00100000; - public const int GL_FONT_ASCENDER_BIT_NV = 0x00200000; - public const int GL_FONT_DESCENDER_BIT_NV = 0x00400000; - public const int GL_FONT_HEIGHT_BIT_NV = 0x00800000; - public const int GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV = 0x01000000; - public const int GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV = 0x02000000; - public const int GL_FONT_UNDERLINE_POSITION_BIT_NV = 0x04000000; - public const int GL_FONT_UNDERLINE_THICKNESS_BIT_NV = 0x08000000; - public const int GL_FONT_HAS_KERNING_BIT_NV = 0x10000000; - public const int GL_ROUNDED_RECT_NV = 0xE8; - public const int GL_RELATIVE_ROUNDED_RECT_NV = 0xE9; - public const int GL_ROUNDED_RECT2_NV = 0xEA; - public const int GL_RELATIVE_ROUNDED_RECT2_NV = 0xEB; - public const int GL_ROUNDED_RECT4_NV = 0xEC; - public const int GL_RELATIVE_ROUNDED_RECT4_NV = 0xED; - public const int GL_ROUNDED_RECT8_NV = 0xEE; - public const int GL_RELATIVE_ROUNDED_RECT8_NV = 0xEF; - public const int GL_RELATIVE_RECT_NV = 0xF7; - public const int GL_FONT_GLYPHS_AVAILABLE_NV = 0x9368; - public const int GL_FONT_TARGET_UNAVAILABLE_NV = 0x9369; - public const int GL_FONT_UNAVAILABLE_NV = 0x936A; - public const int GL_FONT_UNINTELLIGIBLE_NV = 0x936B; - public const int GL_CONIC_CURVE_TO_NV = 0x1A; - public const int GL_RELATIVE_CONIC_CURVE_TO_NV = 0x1B; - public const int GL_FONT_NUM_GLYPH_INDICES_BIT_NV = 0x20000000; - public const int GL_STANDARD_FONT_FORMAT_NV = 0x936C; - public const int GL_2_BYTES_NV = 0x1407; - public const int GL_3_BYTES_NV = 0x1408; - public const int GL_4_BYTES_NV = 0x1409; - public const int GL_EYE_LINEAR_NV = 0x2400; - public const int GL_OBJECT_LINEAR_NV = 0x2401; - public const int GL_CONSTANT_NV = 0x8576; - public const int GL_PATH_FOG_GEN_MODE_NV = 0x90AC; - public const int GL_PRIMARY_COLOR_NV = 0x852C; - public const int GL_SECONDARY_COLOR_NV = 0x852D; - public const int GL_PATH_GEN_COLOR_FORMAT_NV = 0x90B2; - public const int GL_PATH_PROJECTION_NV = 0x1701; - public const int GL_PATH_MODELVIEW_NV = 0x1700; - public const int GL_PATH_MODELVIEW_STACK_DEPTH_NV = 0x0BA3; - public const int GL_PATH_MODELVIEW_MATRIX_NV = 0x0BA6; - public const int GL_PATH_MAX_MODELVIEW_STACK_DEPTH_NV = 0x0D36; - public const int GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV = 0x84E3; - public const int GL_PATH_PROJECTION_STACK_DEPTH_NV = 0x0BA4; - public const int GL_PATH_PROJECTION_MATRIX_NV = 0x0BA7; - public const int GL_PATH_MAX_PROJECTION_STACK_DEPTH_NV = 0x0D38; - public const int GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV = 0x84E4; - public const int GL_FRAGMENT_INPUT_NV = 0x936D; - public const int GL_NV_path_rendering_shared_edge = 1; - public const int GL_SHARED_EDGE_NV = 0xC0; - public const int GL_NV_pixel_data_range = 1; - public const int GL_WRITE_PIXEL_DATA_RANGE_NV = 0x8878; - public const int GL_READ_PIXEL_DATA_RANGE_NV = 0x8879; - public const int GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV = 0x887A; - public const int GL_READ_PIXEL_DATA_RANGE_LENGTH_NV = 0x887B; - public const int GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV = 0x887C; - public const int GL_READ_PIXEL_DATA_RANGE_POINTER_NV = 0x887D; - public const int GL_NV_point_sprite = 1; - public const int GL_POINT_SPRITE_NV = 0x8861; - public const int GL_COORD_REPLACE_NV = 0x8862; - public const int GL_POINT_SPRITE_R_MODE_NV = 0x8863; - public const int GL_NV_present_video = 1; - public const int GL_FRAME_NV = 0x8E26; - public const int GL_FIELDS_NV = 0x8E27; - public const int GL_CURRENT_TIME_NV = 0x8E28; - public const int GL_NUM_FILL_STREAMS_NV = 0x8E29; - public const int GL_PRESENT_TIME_NV = 0x8E2A; - public const int GL_PRESENT_DURATION_NV = 0x8E2B; - public const int GL_NV_primitive_restart = 1; - public const int GL_PRIMITIVE_RESTART_NV = 0x8558; - public const int GL_PRIMITIVE_RESTART_INDEX_NV = 0x8559; - public const int GL_NV_query_resource = 1; - public const int GL_QUERY_RESOURCE_TYPE_VIDMEM_ALLOC_NV = 0x9540; - public const int GL_QUERY_RESOURCE_MEMTYPE_VIDMEM_NV = 0x9542; - public const int GL_QUERY_RESOURCE_SYS_RESERVED_NV = 0x9544; - public const int GL_QUERY_RESOURCE_TEXTURE_NV = 0x9545; - public const int GL_QUERY_RESOURCE_RENDERBUFFER_NV = 0x9546; - public const int GL_QUERY_RESOURCE_BUFFEROBJECT_NV = 0x9547; - public const int GL_NV_query_resource_tag = 1; - public const int GL_NV_register_combiners = 1; - public const int GL_REGISTER_COMBINERS_NV = 0x8522; - public const int GL_VARIABLE_A_NV = 0x8523; - public const int GL_VARIABLE_B_NV = 0x8524; - public const int GL_VARIABLE_C_NV = 0x8525; - public const int GL_VARIABLE_D_NV = 0x8526; - public const int GL_VARIABLE_E_NV = 0x8527; - public const int GL_VARIABLE_F_NV = 0x8528; - public const int GL_VARIABLE_G_NV = 0x8529; - public const int GL_CONSTANT_COLOR0_NV = 0x852A; - public const int GL_CONSTANT_COLOR1_NV = 0x852B; - public const int GL_SPARE0_NV = 0x852E; - public const int GL_SPARE1_NV = 0x852F; - public const int GL_DISCARD_NV = 0x8530; - public const int GL_E_TIMES_F_NV = 0x8531; - public const int GL_SPARE0_PLUS_SECONDARY_COLOR_NV = 0x8532; - public const int GL_UNSIGNED_IDENTITY_NV = 0x8536; - public const int GL_UNSIGNED_INVERT_NV = 0x8537; - public const int GL_EXPAND_NORMAL_NV = 0x8538; - public const int GL_EXPAND_NEGATE_NV = 0x8539; - public const int GL_HALF_BIAS_NORMAL_NV = 0x853A; - public const int GL_HALF_BIAS_NEGATE_NV = 0x853B; - public const int GL_SIGNED_IDENTITY_NV = 0x853C; - public const int GL_SIGNED_NEGATE_NV = 0x853D; - public const int GL_SCALE_BY_TWO_NV = 0x853E; - public const int GL_SCALE_BY_FOUR_NV = 0x853F; - public const int GL_SCALE_BY_ONE_HALF_NV = 0x8540; - public const int GL_BIAS_BY_NEGATIVE_ONE_HALF_NV = 0x8541; - public const int GL_COMBINER_INPUT_NV = 0x8542; - public const int GL_COMBINER_MAPPING_NV = 0x8543; - public const int GL_COMBINER_COMPONENT_USAGE_NV = 0x8544; - public const int GL_COMBINER_AB_DOT_PRODUCT_NV = 0x8545; - public const int GL_COMBINER_CD_DOT_PRODUCT_NV = 0x8546; - public const int GL_COMBINER_MUX_SUM_NV = 0x8547; - public const int GL_COMBINER_SCALE_NV = 0x8548; - public const int GL_COMBINER_BIAS_NV = 0x8549; - public const int GL_COMBINER_AB_OUTPUT_NV = 0x854A; - public const int GL_COMBINER_CD_OUTPUT_NV = 0x854B; - public const int GL_COMBINER_SUM_OUTPUT_NV = 0x854C; - public const int GL_MAX_GENERAL_COMBINERS_NV = 0x854D; - public const int GL_NUM_GENERAL_COMBINERS_NV = 0x854E; - public const int GL_COLOR_SUM_CLAMP_NV = 0x854F; - public const int GL_COMBINER0_NV = 0x8550; - public const int GL_COMBINER1_NV = 0x8551; - public const int GL_COMBINER2_NV = 0x8552; - public const int GL_COMBINER3_NV = 0x8553; - public const int GL_COMBINER4_NV = 0x8554; - public const int GL_COMBINER5_NV = 0x8555; - public const int GL_COMBINER6_NV = 0x8556; - public const int GL_COMBINER7_NV = 0x8557; - public const int GL_NV_register_combiners2 = 1; - public const int GL_PER_STAGE_CONSTANTS_NV = 0x8535; - public const int GL_NV_robustness_video_memory_purge = 1; - public const int GL_PURGED_CONTEXT_RESET_NV = 0x92BB; - public const int GL_NV_sample_locations = 1; - public const int GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV = 0x933D; - public const int GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV = 0x933E; - public const int GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV = 0x933F; - public const int GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV = 0x9340; - public const int GL_SAMPLE_LOCATION_NV = 0x8E50; - public const int GL_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9341; - public const int GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV = 0x9342; - public const int GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV = 0x9343; - public const int GL_NV_sample_mask_override_coverage = 1; - public const int GL_NV_shader_atomic_counters = 1; - public const int GL_NV_shader_atomic_float = 1; - public const int GL_NV_shader_atomic_float64 = 1; - public const int GL_NV_shader_atomic_fp16_vector = 1; - public const int GL_NV_shader_atomic_int64 = 1; - public const int GL_NV_shader_buffer_load = 1; - public const int GL_BUFFER_GPU_ADDRESS_NV = 0x8F1D; - public const int GL_GPU_ADDRESS_NV = 0x8F34; - public const int GL_MAX_SHADER_BUFFER_ADDRESS_NV = 0x8F35; - public const int GL_NV_shader_buffer_store = 1; - public const int GL_SHADER_GLOBAL_ACCESS_BARRIER_BIT_NV = 0x00000010; - public const int GL_NV_shader_storage_buffer_object = 1; - public const int GL_NV_shader_thread_group = 1; - public const int GL_WARP_SIZE_NV = 0x9339; - public const int GL_WARPS_PER_SM_NV = 0x933A; - public const int GL_SM_COUNT_NV = 0x933B; - public const int GL_NV_shader_thread_shuffle = 1; - public const int GL_NV_stereo_view_rendering = 1; - public const int GL_NV_tessellation_program5 = 1; - public const int GL_MAX_PROGRAM_PATCH_ATTRIBS_NV = 0x86D8; - public const int GL_TESS_CONTROL_PROGRAM_NV = 0x891E; - public const int GL_TESS_EVALUATION_PROGRAM_NV = 0x891F; - public const int GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV = 0x8C74; - public const int GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV = 0x8C75; - public const int GL_NV_texgen_emboss = 1; - public const int GL_EMBOSS_LIGHT_NV = 0x855D; - public const int GL_EMBOSS_CONSTANT_NV = 0x855E; - public const int GL_EMBOSS_MAP_NV = 0x855F; - public const int GL_NV_texgen_reflection = 1; - public const int GL_NORMAL_MAP_NV = 0x8511; - public const int GL_REFLECTION_MAP_NV = 0x8512; - public const int GL_NV_texture_barrier = 1; - public const int GL_NV_texture_compression_vtc = 1; - public const int GL_NV_texture_env_combine4 = 1; - public const int GL_COMBINE4_NV = 0x8503; - public const int GL_SOURCE3_RGB_NV = 0x8583; - public const int GL_SOURCE3_ALPHA_NV = 0x858B; - public const int GL_OPERAND3_RGB_NV = 0x8593; - public const int GL_OPERAND3_ALPHA_NV = 0x859B; - public const int GL_NV_texture_expand_normal = 1; - public const int GL_TEXTURE_UNSIGNED_REMAP_MODE_NV = 0x888F; - public const int GL_NV_texture_multisample = 1; - public const int GL_TEXTURE_COVERAGE_SAMPLES_NV = 0x9045; - public const int GL_TEXTURE_COLOR_SAMPLES_NV = 0x9046; - public const int GL_NV_texture_rectangle = 1; - public const int GL_TEXTURE_RECTANGLE_NV = 0x84F5; - public const int GL_TEXTURE_BINDING_RECTANGLE_NV = 0x84F6; - public const int GL_PROXY_TEXTURE_RECTANGLE_NV = 0x84F7; - public const int GL_MAX_RECTANGLE_TEXTURE_SIZE_NV = 0x84F8; - public const int GL_NV_texture_rectangle_compressed = 1; - public const int GL_NV_texture_shader = 1; - public const int GL_OFFSET_TEXTURE_RECTANGLE_NV = 0x864C; - public const int GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV = 0x864D; - public const int GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV = 0x864E; - public const int GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV = 0x86D9; - public const int GL_UNSIGNED_INT_S8_S8_8_8_NV = 0x86DA; - public const int GL_UNSIGNED_INT_8_8_S8_S8_REV_NV = 0x86DB; - public const int GL_DSDT_MAG_INTENSITY_NV = 0x86DC; - public const int GL_SHADER_CONSISTENT_NV = 0x86DD; - public const int GL_TEXTURE_SHADER_NV = 0x86DE; - public const int GL_SHADER_OPERATION_NV = 0x86DF; - public const int GL_CULL_MODES_NV = 0x86E0; - public const int GL_OFFSET_TEXTURE_MATRIX_NV = 0x86E1; - public const int GL_OFFSET_TEXTURE_SCALE_NV = 0x86E2; - public const int GL_OFFSET_TEXTURE_BIAS_NV = 0x86E3; - public const int GL_OFFSET_TEXTURE_2D_MATRIX_NV = 0x86E1; - public const int GL_OFFSET_TEXTURE_2D_SCALE_NV = 0x86E2; - public const int GL_OFFSET_TEXTURE_2D_BIAS_NV = 0x86E3; - public const int GL_PREVIOUS_TEXTURE_INPUT_NV = 0x86E4; - public const int GL_CONST_EYE_NV = 0x86E5; - public const int GL_PASS_THROUGH_NV = 0x86E6; - public const int GL_CULL_FRAGMENT_NV = 0x86E7; - public const int GL_OFFSET_TEXTURE_2D_NV = 0x86E8; - public const int GL_DEPENDENT_AR_TEXTURE_2D_NV = 0x86E9; - public const int GL_DEPENDENT_GB_TEXTURE_2D_NV = 0x86EA; - public const int GL_DOT_PRODUCT_NV = 0x86EC; - public const int GL_DOT_PRODUCT_DEPTH_REPLACE_NV = 0x86ED; - public const int GL_DOT_PRODUCT_TEXTURE_2D_NV = 0x86EE; - public const int GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV = 0x86F0; - public const int GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV = 0x86F1; - public const int GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV = 0x86F2; - public const int GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV = 0x86F3; - public const int GL_HILO_NV = 0x86F4; - public const int GL_DSDT_NV = 0x86F5; - public const int GL_DSDT_MAG_NV = 0x86F6; - public const int GL_DSDT_MAG_VIB_NV = 0x86F7; - public const int GL_HILO16_NV = 0x86F8; - public const int GL_SIGNED_HILO_NV = 0x86F9; - public const int GL_SIGNED_HILO16_NV = 0x86FA; - public const int GL_SIGNED_RGBA_NV = 0x86FB; - public const int GL_SIGNED_RGBA8_NV = 0x86FC; - public const int GL_SIGNED_RGB_NV = 0x86FE; - public const int GL_SIGNED_RGB8_NV = 0x86FF; - public const int GL_SIGNED_LUMINANCE_NV = 0x8701; - public const int GL_SIGNED_LUMINANCE8_NV = 0x8702; - public const int GL_SIGNED_LUMINANCE_ALPHA_NV = 0x8703; - public const int GL_SIGNED_LUMINANCE8_ALPHA8_NV = 0x8704; - public const int GL_SIGNED_ALPHA_NV = 0x8705; - public const int GL_SIGNED_ALPHA8_NV = 0x8706; - public const int GL_SIGNED_INTENSITY_NV = 0x8707; - public const int GL_SIGNED_INTENSITY8_NV = 0x8708; - public const int GL_DSDT8_NV = 0x8709; - public const int GL_DSDT8_MAG8_NV = 0x870A; - public const int GL_DSDT8_MAG8_INTENSITY8_NV = 0x870B; - public const int GL_SIGNED_RGB_UNSIGNED_ALPHA_NV = 0x870C; - public const int GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV = 0x870D; - public const int GL_HI_SCALE_NV = 0x870E; - public const int GL_LO_SCALE_NV = 0x870F; - public const int GL_DS_SCALE_NV = 0x8710; - public const int GL_DT_SCALE_NV = 0x8711; - public const int GL_MAGNITUDE_SCALE_NV = 0x8712; - public const int GL_VIBRANCE_SCALE_NV = 0x8713; - public const int GL_HI_BIAS_NV = 0x8714; - public const int GL_LO_BIAS_NV = 0x8715; - public const int GL_DS_BIAS_NV = 0x8716; - public const int GL_DT_BIAS_NV = 0x8717; - public const int GL_MAGNITUDE_BIAS_NV = 0x8718; - public const int GL_VIBRANCE_BIAS_NV = 0x8719; - public const int GL_TEXTURE_BORDER_VALUES_NV = 0x871A; - public const int GL_TEXTURE_HI_SIZE_NV = 0x871B; - public const int GL_TEXTURE_LO_SIZE_NV = 0x871C; - public const int GL_TEXTURE_DS_SIZE_NV = 0x871D; - public const int GL_TEXTURE_DT_SIZE_NV = 0x871E; - public const int GL_TEXTURE_MAG_SIZE_NV = 0x871F; - public const int GL_NV_texture_shader2 = 1; - public const int GL_DOT_PRODUCT_TEXTURE_3D_NV = 0x86EF; - public const int GL_NV_texture_shader3 = 1; - public const int GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV = 0x8850; - public const int GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV = 0x8851; - public const int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8852; - public const int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV = 0x8853; - public const int GL_OFFSET_HILO_TEXTURE_2D_NV = 0x8854; - public const int GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV = 0x8855; - public const int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV = 0x8856; - public const int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8857; - public const int GL_DEPENDENT_HILO_TEXTURE_2D_NV = 0x8858; - public const int GL_DEPENDENT_RGB_TEXTURE_3D_NV = 0x8859; - public const int GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV = 0x885A; - public const int GL_DOT_PRODUCT_PASS_THROUGH_NV = 0x885B; - public const int GL_DOT_PRODUCT_TEXTURE_1D_NV = 0x885C; - public const int GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV = 0x885D; - public const int GL_HILO8_NV = 0x885E; - public const int GL_SIGNED_HILO8_NV = 0x885F; - public const int GL_FORCE_BLUE_TO_ONE_NV = 0x8860; - public const int GL_NV_transform_feedback = 1; - public const int GL_BACK_PRIMARY_COLOR_NV = 0x8C77; - public const int GL_BACK_SECONDARY_COLOR_NV = 0x8C78; - public const int GL_TEXTURE_COORD_NV = 0x8C79; - public const int GL_CLIP_DISTANCE_NV = 0x8C7A; - public const int GL_VERTEX_ID_NV = 0x8C7B; - public const int GL_PRIMITIVE_ID_NV = 0x8C7C; - public const int GL_GENERIC_ATTRIB_NV = 0x8C7D; - public const int GL_TRANSFORM_FEEDBACK_ATTRIBS_NV = 0x8C7E; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV = 0x8C7F; - public const int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV = 0x8C80; - public const int GL_ACTIVE_VARYINGS_NV = 0x8C81; - public const int GL_ACTIVE_VARYING_MAX_LENGTH_NV = 0x8C82; - public const int GL_TRANSFORM_FEEDBACK_VARYINGS_NV = 0x8C83; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_START_NV = 0x8C84; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV = 0x8C85; - public const int GL_TRANSFORM_FEEDBACK_RECORD_NV = 0x8C86; - public const int GL_PRIMITIVES_GENERATED_NV = 0x8C87; - public const int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV = 0x8C88; - public const int GL_RASTERIZER_DISCARD_NV = 0x8C89; - public const int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV = 0x8C8A; - public const int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV = 0x8C8B; - public const int GL_INTERLEAVED_ATTRIBS_NV = 0x8C8C; - public const int GL_SEPARATE_ATTRIBS_NV = 0x8C8D; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_NV = 0x8C8E; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV = 0x8C8F; - public const int GL_LAYER_NV = 0x8DAA; - public const int GL_NEXT_BUFFER_NV = -2; - public const int GL_SKIP_COMPONENTS4_NV = -3; - public const int GL_SKIP_COMPONENTS3_NV = -4; - public const int GL_SKIP_COMPONENTS2_NV = -5; - public const int GL_SKIP_COMPONENTS1_NV = -6; - public const int GL_NV_transform_feedback2 = 1; - public const int GL_TRANSFORM_FEEDBACK_NV = 0x8E22; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV = 0x8E23; - public const int GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV = 0x8E24; - public const int GL_TRANSFORM_FEEDBACK_BINDING_NV = 0x8E25; - public const int GL_NV_uniform_buffer_unified_memory = 1; - public const int GL_UNIFORM_BUFFER_UNIFIED_NV = 0x936E; - public const int GL_UNIFORM_BUFFER_ADDRESS_NV = 0x936F; - public const int GL_UNIFORM_BUFFER_LENGTH_NV = 0x9370; - public const int GL_NV_vdpau_interop = 1; - public const int GL_SURFACE_STATE_NV = 0x86EB; - public const int GL_SURFACE_REGISTERED_NV = 0x86FD; - public const int GL_SURFACE_MAPPED_NV = 0x8700; - public const int GL_WRITE_DISCARD_NV = 0x88BE; - public const int GL_NV_vertex_array_range = 1; - public const int GL_VERTEX_ARRAY_RANGE_NV = 0x851D; - public const int GL_VERTEX_ARRAY_RANGE_LENGTH_NV = 0x851E; - public const int GL_VERTEX_ARRAY_RANGE_VALID_NV = 0x851F; - public const int GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV = 0x8520; - public const int GL_VERTEX_ARRAY_RANGE_POINTER_NV = 0x8521; - public const int GL_NV_vertex_array_range2 = 1; - public const int GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV = 0x8533; - public const int GL_NV_vertex_attrib_integer_64bit = 1; - public const int GL_NV_vertex_buffer_unified_memory = 1; - public const int GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV = 0x8F1E; - public const int GL_ELEMENT_ARRAY_UNIFIED_NV = 0x8F1F; - public const int GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV = 0x8F20; - public const int GL_VERTEX_ARRAY_ADDRESS_NV = 0x8F21; - public const int GL_NORMAL_ARRAY_ADDRESS_NV = 0x8F22; - public const int GL_COLOR_ARRAY_ADDRESS_NV = 0x8F23; - public const int GL_INDEX_ARRAY_ADDRESS_NV = 0x8F24; - public const int GL_TEXTURE_COORD_ARRAY_ADDRESS_NV = 0x8F25; - public const int GL_EDGE_FLAG_ARRAY_ADDRESS_NV = 0x8F26; - public const int GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV = 0x8F27; - public const int GL_FOG_COORD_ARRAY_ADDRESS_NV = 0x8F28; - public const int GL_ELEMENT_ARRAY_ADDRESS_NV = 0x8F29; - public const int GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV = 0x8F2A; - public const int GL_VERTEX_ARRAY_LENGTH_NV = 0x8F2B; - public const int GL_NORMAL_ARRAY_LENGTH_NV = 0x8F2C; - public const int GL_COLOR_ARRAY_LENGTH_NV = 0x8F2D; - public const int GL_INDEX_ARRAY_LENGTH_NV = 0x8F2E; - public const int GL_TEXTURE_COORD_ARRAY_LENGTH_NV = 0x8F2F; - public const int GL_EDGE_FLAG_ARRAY_LENGTH_NV = 0x8F30; - public const int GL_SECONDARY_COLOR_ARRAY_LENGTH_NV = 0x8F31; - public const int GL_FOG_COORD_ARRAY_LENGTH_NV = 0x8F32; - public const int GL_ELEMENT_ARRAY_LENGTH_NV = 0x8F33; - public const int GL_DRAW_INDIRECT_UNIFIED_NV = 0x8F40; - public const int GL_DRAW_INDIRECT_ADDRESS_NV = 0x8F41; - public const int GL_DRAW_INDIRECT_LENGTH_NV = 0x8F42; - public const int GL_NV_vertex_program = 1; - public const int GL_VERTEX_PROGRAM_NV = 0x8620; - public const int GL_VERTEX_STATE_PROGRAM_NV = 0x8621; - public const int GL_ATTRIB_ARRAY_SIZE_NV = 0x8623; - public const int GL_ATTRIB_ARRAY_STRIDE_NV = 0x8624; - public const int GL_ATTRIB_ARRAY_TYPE_NV = 0x8625; - public const int GL_CURRENT_ATTRIB_NV = 0x8626; - public const int GL_PROGRAM_LENGTH_NV = 0x8627; - public const int GL_PROGRAM_STRING_NV = 0x8628; - public const int GL_MODELVIEW_PROJECTION_NV = 0x8629; - public const int GL_IDENTITY_NV = 0x862A; - public const int GL_INVERSE_NV = 0x862B; - public const int GL_TRANSPOSE_NV = 0x862C; - public const int GL_INVERSE_TRANSPOSE_NV = 0x862D; - public const int GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV = 0x862E; - public const int GL_MAX_TRACK_MATRICES_NV = 0x862F; - public const int GL_MATRIX0_NV = 0x8630; - public const int GL_MATRIX1_NV = 0x8631; - public const int GL_MATRIX2_NV = 0x8632; - public const int GL_MATRIX3_NV = 0x8633; - public const int GL_MATRIX4_NV = 0x8634; - public const int GL_MATRIX5_NV = 0x8635; - public const int GL_MATRIX6_NV = 0x8636; - public const int GL_MATRIX7_NV = 0x8637; - public const int GL_CURRENT_MATRIX_STACK_DEPTH_NV = 0x8640; - public const int GL_CURRENT_MATRIX_NV = 0x8641; - public const int GL_VERTEX_PROGRAM_POINT_SIZE_NV = 0x8642; - public const int GL_VERTEX_PROGRAM_TWO_SIDE_NV = 0x8643; - public const int GL_PROGRAM_PARAMETER_NV = 0x8644; - public const int GL_ATTRIB_ARRAY_POINTER_NV = 0x8645; - public const int GL_PROGRAM_TARGET_NV = 0x8646; - public const int GL_PROGRAM_RESIDENT_NV = 0x8647; - public const int GL_TRACK_MATRIX_NV = 0x8648; - public const int GL_TRACK_MATRIX_TRANSFORM_NV = 0x8649; - public const int GL_VERTEX_PROGRAM_BINDING_NV = 0x864A; - public const int GL_PROGRAM_ERROR_POSITION_NV = 0x864B; - public const int GL_VERTEX_ATTRIB_ARRAY0_NV = 0x8650; - public const int GL_VERTEX_ATTRIB_ARRAY1_NV = 0x8651; - public const int GL_VERTEX_ATTRIB_ARRAY2_NV = 0x8652; - public const int GL_VERTEX_ATTRIB_ARRAY3_NV = 0x8653; - public const int GL_VERTEX_ATTRIB_ARRAY4_NV = 0x8654; - public const int GL_VERTEX_ATTRIB_ARRAY5_NV = 0x8655; - public const int GL_VERTEX_ATTRIB_ARRAY6_NV = 0x8656; - public const int GL_VERTEX_ATTRIB_ARRAY7_NV = 0x8657; - public const int GL_VERTEX_ATTRIB_ARRAY8_NV = 0x8658; - public const int GL_VERTEX_ATTRIB_ARRAY9_NV = 0x8659; - public const int GL_VERTEX_ATTRIB_ARRAY10_NV = 0x865A; - public const int GL_VERTEX_ATTRIB_ARRAY11_NV = 0x865B; - public const int GL_VERTEX_ATTRIB_ARRAY12_NV = 0x865C; - public const int GL_VERTEX_ATTRIB_ARRAY13_NV = 0x865D; - public const int GL_VERTEX_ATTRIB_ARRAY14_NV = 0x865E; - public const int GL_VERTEX_ATTRIB_ARRAY15_NV = 0x865F; - public const int GL_MAP1_VERTEX_ATTRIB0_4_NV = 0x8660; - public const int GL_MAP1_VERTEX_ATTRIB1_4_NV = 0x8661; - public const int GL_MAP1_VERTEX_ATTRIB2_4_NV = 0x8662; - public const int GL_MAP1_VERTEX_ATTRIB3_4_NV = 0x8663; - public const int GL_MAP1_VERTEX_ATTRIB4_4_NV = 0x8664; - public const int GL_MAP1_VERTEX_ATTRIB5_4_NV = 0x8665; - public const int GL_MAP1_VERTEX_ATTRIB6_4_NV = 0x8666; - public const int GL_MAP1_VERTEX_ATTRIB7_4_NV = 0x8667; - public const int GL_MAP1_VERTEX_ATTRIB8_4_NV = 0x8668; - public const int GL_MAP1_VERTEX_ATTRIB9_4_NV = 0x8669; - public const int GL_MAP1_VERTEX_ATTRIB10_4_NV = 0x866A; - public const int GL_MAP1_VERTEX_ATTRIB11_4_NV = 0x866B; - public const int GL_MAP1_VERTEX_ATTRIB12_4_NV = 0x866C; - public const int GL_MAP1_VERTEX_ATTRIB13_4_NV = 0x866D; - public const int GL_MAP1_VERTEX_ATTRIB14_4_NV = 0x866E; - public const int GL_MAP1_VERTEX_ATTRIB15_4_NV = 0x866F; - public const int GL_MAP2_VERTEX_ATTRIB0_4_NV = 0x8670; - public const int GL_MAP2_VERTEX_ATTRIB1_4_NV = 0x8671; - public const int GL_MAP2_VERTEX_ATTRIB2_4_NV = 0x8672; - public const int GL_MAP2_VERTEX_ATTRIB3_4_NV = 0x8673; - public const int GL_MAP2_VERTEX_ATTRIB4_4_NV = 0x8674; - public const int GL_MAP2_VERTEX_ATTRIB5_4_NV = 0x8675; - public const int GL_MAP2_VERTEX_ATTRIB6_4_NV = 0x8676; - public const int GL_MAP2_VERTEX_ATTRIB7_4_NV = 0x8677; - public const int GL_MAP2_VERTEX_ATTRIB8_4_NV = 0x8678; - public const int GL_MAP2_VERTEX_ATTRIB9_4_NV = 0x8679; - public const int GL_MAP2_VERTEX_ATTRIB10_4_NV = 0x867A; - public const int GL_MAP2_VERTEX_ATTRIB11_4_NV = 0x867B; - public const int GL_MAP2_VERTEX_ATTRIB12_4_NV = 0x867C; - public const int GL_MAP2_VERTEX_ATTRIB13_4_NV = 0x867D; - public const int GL_MAP2_VERTEX_ATTRIB14_4_NV = 0x867E; - public const int GL_MAP2_VERTEX_ATTRIB15_4_NV = 0x867F; - public const int GL_NV_vertex_program1_1 = 1; - public const int GL_NV_vertex_program2 = 1; - public const int GL_NV_vertex_program2_option = 1; - public const int GL_NV_vertex_program3 = 1; - public const int GL_NV_vertex_program4 = 1; - public const int GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV = 0x88FD; - public const int GL_NV_video_capture = 1; - public const int GL_VIDEO_BUFFER_NV = 0x9020; - public const int GL_VIDEO_BUFFER_BINDING_NV = 0x9021; - public const int GL_FIELD_UPPER_NV = 0x9022; - public const int GL_FIELD_LOWER_NV = 0x9023; - public const int GL_NUM_VIDEO_CAPTURE_STREAMS_NV = 0x9024; - public const int GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV = 0x9025; - public const int GL_VIDEO_CAPTURE_TO_422_SUPPORTED_NV = 0x9026; - public const int GL_LAST_VIDEO_CAPTURE_STATUS_NV = 0x9027; - public const int GL_VIDEO_BUFFER_PITCH_NV = 0x9028; - public const int GL_VIDEO_COLOR_CONVERSION_MATRIX_NV = 0x9029; - public const int GL_VIDEO_COLOR_CONVERSION_MAX_NV = 0x902A; - public const int GL_VIDEO_COLOR_CONVERSION_MIN_NV = 0x902B; - public const int GL_VIDEO_COLOR_CONVERSION_OFFSET_NV = 0x902C; - public const int GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV = 0x902D; - public const int GL_PARTIAL_SUCCESS_NV = 0x902E; - public const int GL_SUCCESS_NV = 0x902F; - public const int GL_FAILURE_NV = 0x9030; - public const int GL_YCBYCR8_422_NV = 0x9031; - public const int GL_YCBAYCR8A_4224_NV = 0x9032; - public const int GL_Z6Y10Z6CB10Z6Y10Z6CR10_422_NV = 0x9033; - public const int GL_Z6Y10Z6CB10Z6A10Z6Y10Z6CR10Z6A10_4224_NV = 0x9034; - public const int GL_Z4Y12Z4CB12Z4Y12Z4CR12_422_NV = 0x9035; - public const int GL_Z4Y12Z4CB12Z4A12Z4Y12Z4CR12Z4A12_4224_NV = 0x9036; - public const int GL_Z4Y12Z4CB12Z4CR12_444_NV = 0x9037; - public const int GL_VIDEO_CAPTURE_FRAME_WIDTH_NV = 0x9038; - public const int GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV = 0x9039; - public const int GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV = 0x903A; - public const int GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV = 0x903B; - public const int GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV = 0x903C; - public const int GL_NV_viewport_array2 = 1; - public const int GL_NV_viewport_swizzle = 1; - public const int GL_VIEWPORT_SWIZZLE_POSITIVE_X_NV = 0x9350; - public const int GL_VIEWPORT_SWIZZLE_NEGATIVE_X_NV = 0x9351; - public const int GL_VIEWPORT_SWIZZLE_POSITIVE_Y_NV = 0x9352; - public const int GL_VIEWPORT_SWIZZLE_NEGATIVE_Y_NV = 0x9353; - public const int GL_VIEWPORT_SWIZZLE_POSITIVE_Z_NV = 0x9354; - public const int GL_VIEWPORT_SWIZZLE_NEGATIVE_Z_NV = 0x9355; - public const int GL_VIEWPORT_SWIZZLE_POSITIVE_W_NV = 0x9356; - public const int GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV = 0x9357; - public const int GL_VIEWPORT_SWIZZLE_X_NV = 0x9358; - public const int GL_VIEWPORT_SWIZZLE_Y_NV = 0x9359; - public const int GL_VIEWPORT_SWIZZLE_Z_NV = 0x935A; - public const int GL_VIEWPORT_SWIZZLE_W_NV = 0x935B; - public const int GL_OML_interlace = 1; - public const int GL_INTERLACE_OML = 0x8980; - public const int GL_INTERLACE_READ_OML = 0x8981; - public const int GL_OML_resample = 1; - public const int GL_PACK_RESAMPLE_OML = 0x8984; - public const int GL_UNPACK_RESAMPLE_OML = 0x8985; - public const int GL_RESAMPLE_REPLICATE_OML = 0x8986; - public const int GL_RESAMPLE_ZERO_FILL_OML = 0x8987; - public const int GL_RESAMPLE_AVERAGE_OML = 0x8988; - public const int GL_RESAMPLE_DECIMATE_OML = 0x8989; - public const int GL_OML_subsample = 1; - public const int GL_FORMAT_SUBSAMPLE_24_24_OML = 0x8982; - public const int GL_FORMAT_SUBSAMPLE_244_244_OML = 0x8983; - public const int GL_OVR_multiview = 1; - public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR = 0x9630; - public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR = 0x9632; - public const int GL_MAX_VIEWS_OVR = 0x9631; - public const int GL_FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR = 0x9633; - public const int GL_OVR_multiview2 = 1; - public const int GL_PGI_misc_hints = 1; - public const int GL_PREFER_DOUBLEBUFFER_HINT_PGI = 0x1A1F8; - public const int GL_CONSERVE_MEMORY_HINT_PGI = 0x1A1FD; - public const int GL_RECLAIM_MEMORY_HINT_PGI = 0x1A1FE; - public const int GL_NATIVE_GRAPHICS_HANDLE_PGI = 0x1A202; - public const int GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI = 0x1A203; - public const int GL_NATIVE_GRAPHICS_END_HINT_PGI = 0x1A204; - public const int GL_ALWAYS_FAST_HINT_PGI = 0x1A20C; - public const int GL_ALWAYS_SOFT_HINT_PGI = 0x1A20D; - public const int GL_ALLOW_DRAW_OBJ_HINT_PGI = 0x1A20E; - public const int GL_ALLOW_DRAW_WIN_HINT_PGI = 0x1A20F; - public const int GL_ALLOW_DRAW_FRG_HINT_PGI = 0x1A210; - public const int GL_ALLOW_DRAW_MEM_HINT_PGI = 0x1A211; - public const int GL_STRICT_DEPTHFUNC_HINT_PGI = 0x1A216; - public const int GL_STRICT_LIGHTING_HINT_PGI = 0x1A217; - public const int GL_STRICT_SCISSOR_HINT_PGI = 0x1A218; - public const int GL_FULL_STIPPLE_HINT_PGI = 0x1A219; - public const int GL_CLIP_NEAR_HINT_PGI = 0x1A220; - public const int GL_CLIP_FAR_HINT_PGI = 0x1A221; - public const int GL_WIDE_LINE_HINT_PGI = 0x1A222; - public const int GL_BACK_NORMALS_HINT_PGI = 0x1A223; - public const int GL_PGI_vertex_hints = 1; - public const int GL_VERTEX_DATA_HINT_PGI = 0x1A22A; - public const int GL_VERTEX_CONSISTENT_HINT_PGI = 0x1A22B; - public const int GL_MATERIAL_SIDE_HINT_PGI = 0x1A22C; - public const int GL_MAX_VERTEX_HINT_PGI = 0x1A22D; - public const int GL_COLOR3_BIT_PGI = 0x00010000; - public const int GL_COLOR4_BIT_PGI = 0x00020000; - public const int GL_EDGEFLAG_BIT_PGI = 0x00040000; - public const int GL_INDEX_BIT_PGI = 0x00080000; - public const int GL_MAT_AMBIENT_BIT_PGI = 0x00100000; - public const int GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI = 0x00200000; - public const int GL_MAT_DIFFUSE_BIT_PGI = 0x00400000; - public const int GL_MAT_EMISSION_BIT_PGI = 0x00800000; - public const int GL_MAT_COLOR_INDEXES_BIT_PGI = 0x01000000; - public const int GL_MAT_SHININESS_BIT_PGI = 0x02000000; - public const int GL_MAT_SPECULAR_BIT_PGI = 0x04000000; - public const int GL_NORMAL_BIT_PGI = 0x08000000; - public const int GL_TEXCOORD1_BIT_PGI = 0x10000000; - public const int GL_TEXCOORD2_BIT_PGI = 0x20000000; - public const int GL_TEXCOORD3_BIT_PGI = 0x40000000; - public const int GL_TEXCOORD4_BIT_PGI = unchecked((int)0x80000000); - public const int GL_VERTEX23_BIT_PGI = 0x00000004; - public const int GL_VERTEX4_BIT_PGI = 0x00000008; - public const int GL_REND_screen_coordinates = 1; - public const int GL_SCREEN_COORDINATES_REND = 0x8490; - public const int GL_INVERTED_SCREEN_W_REND = 0x8491; - public const int GL_S3_s3tc = 1; - public const int GL_RGB_S3TC = 0x83A0; - public const int GL_RGB4_S3TC = 0x83A1; - public const int GL_RGBA_S3TC = 0x83A2; - public const int GL_RGBA4_S3TC = 0x83A3; - public const int GL_RGBA_DXT5_S3TC = 0x83A4; - public const int GL_RGBA4_DXT5_S3TC = 0x83A5; - public const int GL_SGIS_detail_texture = 1; + public const int GL_UNSIGNED_BYTE_3_3_2 = 0x8032; + public const int GL_UNSIGNED_BYTE_3_3_2_EXT = 0x8032; + public const int GL_UNSIGNED_SHORT_4_4_4_4 = 0x8033; + public const int GL_UNSIGNED_SHORT_4_4_4_4_EXT = 0x8033; + public const int GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034; + public const int GL_UNSIGNED_SHORT_5_5_5_1_EXT = 0x8034; + public const int GL_UNSIGNED_INT_8_8_8_8 = 0x8035; + public const int GL_UNSIGNED_INT_8_8_8_8_EXT = 0x8035; + public const int GL_UNSIGNED_INT_10_10_10_2 = 0x8036; + public const int GL_UNSIGNED_INT_10_10_10_2_EXT = 0x8036; + public const int GL_POLYGON_OFFSET_EXT = 0x8037; + public const int GL_POLYGON_OFFSET_FILL = 0x8037; + public const int GL_POLYGON_OFFSET_FACTOR = 0x8038; + public const int GL_POLYGON_OFFSET_FACTOR_EXT = 0x8038; + public const int GL_POLYGON_OFFSET_BIAS_EXT = 0x8039; + public const int GL_RESCALE_NORMAL = 0x803A; + public const int GL_RESCALE_NORMAL_EXT = 0x803A; + public const int GL_ALPHA4 = 0x803B; + public const int GL_ALPHA4_EXT = 0x803B; + public const int GL_ALPHA8 = 0x803C; + public const int GL_ALPHA8_EXT = 0x803C; + public const int GL_ALPHA8_OES = 0x803C; + public const int GL_ALPHA12 = 0x803D; + public const int GL_ALPHA12_EXT = 0x803D; + public const int GL_ALPHA16 = 0x803E; + public const int GL_ALPHA16_EXT = 0x803E; + public const int GL_LUMINANCE4 = 0x803F; + public const int GL_LUMINANCE4_EXT = 0x803F; + public const int GL_LUMINANCE8 = 0x8040; + public const int GL_LUMINANCE8_EXT = 0x8040; + public const int GL_LUMINANCE8_OES = 0x8040; + public const int GL_LUMINANCE12 = 0x8041; + public const int GL_LUMINANCE12_EXT = 0x8041; + public const int GL_LUMINANCE16 = 0x8042; + public const int GL_LUMINANCE16_EXT = 0x8042; + public const int GL_LUMINANCE4_ALPHA4 = 0x8043; + public const int GL_LUMINANCE4_ALPHA4_EXT = 0x8043; + public const int GL_LUMINANCE4_ALPHA4_OES = 0x8043; + public const int GL_LUMINANCE6_ALPHA2 = 0x8044; + public const int GL_LUMINANCE6_ALPHA2_EXT = 0x8044; + public const int GL_LUMINANCE8_ALPHA8 = 0x8045; + public const int GL_LUMINANCE8_ALPHA8_EXT = 0x8045; + public const int GL_LUMINANCE8_ALPHA8_OES = 0x8045; + public const int GL_LUMINANCE12_ALPHA4 = 0x8046; + public const int GL_LUMINANCE12_ALPHA4_EXT = 0x8046; + public const int GL_LUMINANCE12_ALPHA12 = 0x8047; + public const int GL_LUMINANCE12_ALPHA12_EXT = 0x8047; + public const int GL_LUMINANCE16_ALPHA16 = 0x8048; + public const int GL_LUMINANCE16_ALPHA16_EXT = 0x8048; + public const int GL_INTENSITY = 0x8049; + public const int GL_INTENSITY_EXT = 0x8049; + public const int GL_INTENSITY4 = 0x804A; + public const int GL_INTENSITY4_EXT = 0x804A; + public const int GL_INTENSITY8 = 0x804B; + public const int GL_INTENSITY8_EXT = 0x804B; + public const int GL_INTENSITY12 = 0x804C; + public const int GL_INTENSITY12_EXT = 0x804C; + public const int GL_INTENSITY16 = 0x804D; + public const int GL_INTENSITY16_EXT = 0x804D; + public const int GL_RGB2_EXT = 0x804E; + public const int GL_RGB4 = 0x804F; + public const int GL_RGB4_EXT = 0x804F; + public const int GL_RGB5 = 0x8050; + public const int GL_RGB5_EXT = 0x8050; + public const int GL_RGB8 = 0x8051; + public const int GL_RGB8_EXT = 0x8051; + public const int GL_RGB8_OES = 0x8051; + public const int GL_RGB10 = 0x8052; + public const int GL_RGB10_EXT = 0x8052; + public const int GL_RGB12 = 0x8053; + public const int GL_RGB12_EXT = 0x8053; + public const int GL_RGB16 = 0x8054; + public const int GL_RGB16_EXT = 0x8054; + public const int GL_RGBA2 = 0x8055; + public const int GL_RGBA2_EXT = 0x8055; + public const int GL_RGBA4 = 0x8056; + public const int GL_RGBA4_EXT = 0x8056; + public const int GL_RGBA4_OES = 0x8056; + public const int GL_RGB5_A1 = 0x8057; + public const int GL_RGB5_A1_EXT = 0x8057; + public const int GL_RGB5_A1_OES = 0x8057; + public const int GL_RGBA8 = 0x8058; + public const int GL_RGBA8_EXT = 0x8058; + public const int GL_RGBA8_OES = 0x8058; + public const int GL_RGB10_A2 = 0x8059; + public const int GL_RGB10_A2_EXT = 0x8059; + public const int GL_RGBA12 = 0x805A; + public const int GL_RGBA12_EXT = 0x805A; + public const int GL_RGBA16 = 0x805B; + public const int GL_RGBA16_EXT = 0x805B; + public const int GL_TEXTURE_RED_SIZE = 0x805C; + public const int GL_TEXTURE_RED_SIZE_EXT = 0x805C; + public const int GL_TEXTURE_GREEN_SIZE = 0x805D; + public const int GL_TEXTURE_GREEN_SIZE_EXT = 0x805D; + public const int GL_TEXTURE_BLUE_SIZE = 0x805E; + public const int GL_TEXTURE_BLUE_SIZE_EXT = 0x805E; + public const int GL_TEXTURE_ALPHA_SIZE = 0x805F; + public const int GL_TEXTURE_ALPHA_SIZE_EXT = 0x805F; + public const int GL_TEXTURE_LUMINANCE_SIZE = 0x8060; + public const int GL_TEXTURE_LUMINANCE_SIZE_EXT = 0x8060; + public const int GL_TEXTURE_INTENSITY_SIZE = 0x8061; + public const int GL_TEXTURE_INTENSITY_SIZE_EXT = 0x8061; + public const int GL_REPLACE_EXT = 0x8062; + public const int GL_PROXY_TEXTURE_1D = 0x8063; + public const int GL_PROXY_TEXTURE_1D_EXT = 0x8063; + public const int GL_PROXY_TEXTURE_2D = 0x8064; + public const int GL_PROXY_TEXTURE_2D_EXT = 0x8064; + public const int GL_TEXTURE_TOO_LARGE_EXT = 0x8065; + public const int GL_TEXTURE_PRIORITY = 0x8066; + public const int GL_TEXTURE_PRIORITY_EXT = 0x8066; + public const int GL_TEXTURE_RESIDENT = 0x8067; + public const int GL_TEXTURE_RESIDENT_EXT = 0x8067; + public const int GL_TEXTURE_1D_BINDING_EXT = 0x8068; + public const int GL_TEXTURE_BINDING_1D = 0x8068; + public const int GL_TEXTURE_2D_BINDING_EXT = 0x8069; + public const int GL_TEXTURE_BINDING_2D = 0x8069; + public const int GL_TEXTURE_3D_BINDING_EXT = 0x806A; + public const int GL_TEXTURE_3D_BINDING_OES = 0x806A; + public const int GL_TEXTURE_BINDING_3D = 0x806A; + public const int GL_TEXTURE_BINDING_3D_OES = 0x806A; + public const int GL_PACK_SKIP_IMAGES = 0x806B; + public const int GL_PACK_SKIP_IMAGES_EXT = 0x806B; + public const int GL_PACK_IMAGE_HEIGHT = 0x806C; + public const int GL_PACK_IMAGE_HEIGHT_EXT = 0x806C; + public const int GL_UNPACK_SKIP_IMAGES = 0x806D; + public const int GL_UNPACK_SKIP_IMAGES_EXT = 0x806D; + public const int GL_UNPACK_IMAGE_HEIGHT = 0x806E; + public const int GL_UNPACK_IMAGE_HEIGHT_EXT = 0x806E; + public const int GL_TEXTURE_3D = 0x806F; + public const int GL_TEXTURE_3D_EXT = 0x806F; + public const int GL_TEXTURE_3D_OES = 0x806F; + public const int GL_PROXY_TEXTURE_3D = 0x8070; + public const int GL_PROXY_TEXTURE_3D_EXT = 0x8070; + public const int GL_TEXTURE_DEPTH = 0x8071; + public const int GL_TEXTURE_DEPTH_EXT = 0x8071; + public const int GL_TEXTURE_WRAP_R = 0x8072; + public const int GL_TEXTURE_WRAP_R_EXT = 0x8072; + public const int GL_TEXTURE_WRAP_R_OES = 0x8072; + public const int GL_MAX_3D_TEXTURE_SIZE = 0x8073; + public const int GL_MAX_3D_TEXTURE_SIZE_EXT = 0x8073; + public const int GL_MAX_3D_TEXTURE_SIZE_OES = 0x8073; + public const int GL_VERTEX_ARRAY = 0x8074; + public const int GL_VERTEX_ARRAY_EXT = 0x8074; + public const int GL_VERTEX_ARRAY_KHR = 0x8074; + public const int GL_NORMAL_ARRAY = 0x8075; + public const int GL_NORMAL_ARRAY_EXT = 0x8075; + public const int GL_COLOR_ARRAY = 0x8076; + public const int GL_COLOR_ARRAY_EXT = 0x8076; + public const int GL_INDEX_ARRAY = 0x8077; + public const int GL_INDEX_ARRAY_EXT = 0x8077; + public const int GL_TEXTURE_COORD_ARRAY = 0x8078; + public const int GL_TEXTURE_COORD_ARRAY_EXT = 0x8078; + public const int GL_EDGE_FLAG_ARRAY = 0x8079; + public const int GL_EDGE_FLAG_ARRAY_EXT = 0x8079; + public const int GL_VERTEX_ARRAY_SIZE = 0x807A; + public const int GL_VERTEX_ARRAY_SIZE_EXT = 0x807A; + public const int GL_VERTEX_ARRAY_TYPE = 0x807B; + public const int GL_VERTEX_ARRAY_TYPE_EXT = 0x807B; + public const int GL_VERTEX_ARRAY_STRIDE = 0x807C; + public const int GL_VERTEX_ARRAY_STRIDE_EXT = 0x807C; + public const int GL_VERTEX_ARRAY_COUNT_EXT = 0x807D; + public const int GL_NORMAL_ARRAY_TYPE = 0x807E; + public const int GL_NORMAL_ARRAY_TYPE_EXT = 0x807E; + public const int GL_NORMAL_ARRAY_STRIDE = 0x807F; + public const int GL_NORMAL_ARRAY_STRIDE_EXT = 0x807F; + public const int GL_NORMAL_ARRAY_COUNT_EXT = 0x8080; + public const int GL_COLOR_ARRAY_SIZE = 0x8081; + public const int GL_COLOR_ARRAY_SIZE_EXT = 0x8081; + public const int GL_COLOR_ARRAY_TYPE = 0x8082; + public const int GL_COLOR_ARRAY_TYPE_EXT = 0x8082; + public const int GL_COLOR_ARRAY_STRIDE = 0x8083; + public const int GL_COLOR_ARRAY_STRIDE_EXT = 0x8083; + public const int GL_COLOR_ARRAY_COUNT_EXT = 0x8084; + public const int GL_INDEX_ARRAY_TYPE = 0x8085; + public const int GL_INDEX_ARRAY_TYPE_EXT = 0x8085; + public const int GL_INDEX_ARRAY_STRIDE = 0x8086; + public const int GL_INDEX_ARRAY_STRIDE_EXT = 0x8086; + public const int GL_INDEX_ARRAY_COUNT_EXT = 0x8087; + public const int GL_TEXTURE_COORD_ARRAY_SIZE = 0x8088; + public const int GL_TEXTURE_COORD_ARRAY_SIZE_EXT = 0x8088; + public const int GL_TEXTURE_COORD_ARRAY_TYPE = 0x8089; + public const int GL_TEXTURE_COORD_ARRAY_TYPE_EXT = 0x8089; + public const int GL_TEXTURE_COORD_ARRAY_STRIDE = 0x808A; + public const int GL_TEXTURE_COORD_ARRAY_STRIDE_EXT = 0x808A; + public const int GL_TEXTURE_COORD_ARRAY_COUNT_EXT = 0x808B; + public const int GL_EDGE_FLAG_ARRAY_STRIDE = 0x808C; + public const int GL_EDGE_FLAG_ARRAY_STRIDE_EXT = 0x808C; + public const int GL_EDGE_FLAG_ARRAY_COUNT_EXT = 0x808D; + public const int GL_VERTEX_ARRAY_POINTER = 0x808E; + public const int GL_VERTEX_ARRAY_POINTER_EXT = 0x808E; + public const int GL_NORMAL_ARRAY_POINTER = 0x808F; + public const int GL_NORMAL_ARRAY_POINTER_EXT = 0x808F; + public const int GL_COLOR_ARRAY_POINTER = 0x8090; + public const int GL_COLOR_ARRAY_POINTER_EXT = 0x8090; + public const int GL_INDEX_ARRAY_POINTER = 0x8091; + public const int GL_INDEX_ARRAY_POINTER_EXT = 0x8091; + public const int GL_TEXTURE_COORD_ARRAY_POINTER = 0x8092; + public const int GL_TEXTURE_COORD_ARRAY_POINTER_EXT = 0x8092; + public const int GL_EDGE_FLAG_ARRAY_POINTER = 0x8093; + public const int GL_EDGE_FLAG_ARRAY_POINTER_EXT = 0x8093; + public const int GL_INTERLACE_SGIX = 0x8094; public const int GL_DETAIL_TEXTURE_2D_SGIS = 0x8095; public const int GL_DETAIL_TEXTURE_2D_BINDING_SGIS = 0x8096; public const int GL_LINEAR_DETAIL_SGIS = 0x8097; @@ -5140,144 +1205,848 @@ public static class GlConsts public const int GL_DETAIL_TEXTURE_LEVEL_SGIS = 0x809A; public const int GL_DETAIL_TEXTURE_MODE_SGIS = 0x809B; public const int GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS = 0x809C; - public const int GL_SGIS_fog_function = 1; + public const int GL_MULTISAMPLE = 0x809D; + public const int GL_MULTISAMPLE_ARB = 0x809D; + public const int GL_MULTISAMPLE_EXT = 0x809D; + public const int GL_MULTISAMPLE_SGIS = 0x809D; + public const int GL_SAMPLE_ALPHA_TO_COVERAGE = 0x809E; + public const int GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = 0x809E; + public const int GL_SAMPLE_ALPHA_TO_MASK_EXT = 0x809E; + public const int GL_SAMPLE_ALPHA_TO_MASK_SGIS = 0x809E; + public const int GL_SAMPLE_ALPHA_TO_ONE = 0x809F; + public const int GL_SAMPLE_ALPHA_TO_ONE_ARB = 0x809F; + public const int GL_SAMPLE_ALPHA_TO_ONE_EXT = 0x809F; + public const int GL_SAMPLE_ALPHA_TO_ONE_SGIS = 0x809F; + public const int GL_SAMPLE_COVERAGE = 0x80A0; + public const int GL_SAMPLE_COVERAGE_ARB = 0x80A0; + public const int GL_SAMPLE_MASK_EXT = 0x80A0; + public const int GL_SAMPLE_MASK_SGIS = 0x80A0; + public const int GL_1PASS_EXT = 0x80A1; + public const int GL_1PASS_SGIS = 0x80A1; + public const int GL_2PASS_0_EXT = 0x80A2; + public const int GL_2PASS_0_SGIS = 0x80A2; + public const int GL_2PASS_1_EXT = 0x80A3; + public const int GL_2PASS_1_SGIS = 0x80A3; + public const int GL_4PASS_0_EXT = 0x80A4; + public const int GL_4PASS_0_SGIS = 0x80A4; + public const int GL_4PASS_1_EXT = 0x80A5; + public const int GL_4PASS_1_SGIS = 0x80A5; + public const int GL_4PASS_2_EXT = 0x80A6; + public const int GL_4PASS_2_SGIS = 0x80A6; + public const int GL_4PASS_3_EXT = 0x80A7; + public const int GL_4PASS_3_SGIS = 0x80A7; + public const int GL_SAMPLE_BUFFERS = 0x80A8; + public const int GL_SAMPLE_BUFFERS_ARB = 0x80A8; + public const int GL_SAMPLE_BUFFERS_EXT = 0x80A8; + public const int GL_SAMPLE_BUFFERS_SGIS = 0x80A8; + public const int GL_SAMPLES = 0x80A9; + public const int GL_SAMPLES_ARB = 0x80A9; + public const int GL_SAMPLES_EXT = 0x80A9; + public const int GL_SAMPLES_SGIS = 0x80A9; + public const int GL_SAMPLE_COVERAGE_VALUE = 0x80AA; + public const int GL_SAMPLE_COVERAGE_VALUE_ARB = 0x80AA; + public const int GL_SAMPLE_MASK_VALUE_EXT = 0x80AA; + public const int GL_SAMPLE_MASK_VALUE_SGIS = 0x80AA; + public const int GL_SAMPLE_COVERAGE_INVERT = 0x80AB; + public const int GL_SAMPLE_COVERAGE_INVERT_ARB = 0x80AB; + public const int GL_SAMPLE_MASK_INVERT_EXT = 0x80AB; + public const int GL_SAMPLE_MASK_INVERT_SGIS = 0x80AB; + public const int GL_SAMPLE_PATTERN_EXT = 0x80AC; + public const int GL_SAMPLE_PATTERN_SGIS = 0x80AC; + public const int GL_LINEAR_SHARPEN_SGIS = 0x80AD; + public const int GL_LINEAR_SHARPEN_ALPHA_SGIS = 0x80AE; + public const int GL_LINEAR_SHARPEN_COLOR_SGIS = 0x80AF; + public const int GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS = 0x80B0; + public const int GL_COLOR_MATRIX = 0x80B1; + public const int GL_COLOR_MATRIX_SGI = 0x80B1; + public const int GL_COLOR_MATRIX_STACK_DEPTH = 0x80B2; + public const int GL_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B2; + public const int GL_MAX_COLOR_MATRIX_STACK_DEPTH = 0x80B3; + public const int GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B3; + public const int GL_POST_COLOR_MATRIX_RED_SCALE = 0x80B4; + public const int GL_POST_COLOR_MATRIX_RED_SCALE_SGI = 0x80B4; + public const int GL_POST_COLOR_MATRIX_GREEN_SCALE = 0x80B5; + public const int GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI = 0x80B5; + public const int GL_POST_COLOR_MATRIX_BLUE_SCALE = 0x80B6; + public const int GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI = 0x80B6; + public const int GL_POST_COLOR_MATRIX_ALPHA_SCALE = 0x80B7; + public const int GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI = 0x80B7; + public const int GL_POST_COLOR_MATRIX_RED_BIAS = 0x80B8; + public const int GL_POST_COLOR_MATRIX_RED_BIAS_SGI = 0x80B8; + public const int GL_POST_COLOR_MATRIX_GREEN_BIAS = 0x80B9; + public const int GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI = 0x80B9; + public const int GL_POST_COLOR_MATRIX_BLUE_BIAS = 0x80BA; + public const int GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI = 0x80BA; + public const int GL_POST_COLOR_MATRIX_ALPHA_BIAS = 0x80BB; + public const int GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI = 0x80BB; + public const int GL_TEXTURE_COLOR_TABLE_SGI = 0x80BC; + public const int GL_PROXY_TEXTURE_COLOR_TABLE_SGI = 0x80BD; + public const int GL_TEXTURE_ENV_BIAS_SGIX = 0x80BE; + public const int GL_SHADOW_AMBIENT_SGIX = 0x80BF; + public const int GL_TEXTURE_COMPARE_FAIL_VALUE_ARB = 0x80BF; + // VENDOR: ZiiLabs + public const int GL_BLEND_DST_RGB = 0x80C8; + public const int GL_BLEND_DST_RGB_EXT = 0x80C8; + public const int GL_BLEND_DST_RGB_OES = 0x80C8; + public const int GL_BLEND_SRC_RGB = 0x80C9; + public const int GL_BLEND_SRC_RGB_EXT = 0x80C9; + public const int GL_BLEND_SRC_RGB_OES = 0x80C9; + public const int GL_BLEND_DST_ALPHA = 0x80CA; + public const int GL_BLEND_DST_ALPHA_EXT = 0x80CA; + public const int GL_BLEND_DST_ALPHA_OES = 0x80CA; + public const int GL_BLEND_SRC_ALPHA = 0x80CB; + public const int GL_BLEND_SRC_ALPHA_EXT = 0x80CB; + public const int GL_BLEND_SRC_ALPHA_OES = 0x80CB; + public const int GL_422_EXT = 0x80CC; + public const int GL_422_REV_EXT = 0x80CD; + public const int GL_422_AVERAGE_EXT = 0x80CE; + public const int GL_422_REV_AVERAGE_EXT = 0x80CF; + // VENDOR: SGI + public const int GL_COLOR_TABLE = 0x80D0; + public const int GL_COLOR_TABLE_SGI = 0x80D0; + public const int GL_POST_CONVOLUTION_COLOR_TABLE = 0x80D1; + public const int GL_POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D1; + public const int GL_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D2; + public const int GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI = 0x80D2; + public const int GL_PROXY_COLOR_TABLE = 0x80D3; + public const int GL_PROXY_COLOR_TABLE_SGI = 0x80D3; + public const int GL_PROXY_POST_CONVOLUTION_COLOR_TABLE = 0x80D4; + public const int GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D4; + public const int GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE = 0x80D5; + public const int GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI = 0x80D5; + public const int GL_COLOR_TABLE_SCALE = 0x80D6; + public const int GL_COLOR_TABLE_SCALE_SGI = 0x80D6; + public const int GL_COLOR_TABLE_BIAS = 0x80D7; + public const int GL_COLOR_TABLE_BIAS_SGI = 0x80D7; + public const int GL_COLOR_TABLE_FORMAT = 0x80D8; + public const int GL_COLOR_TABLE_FORMAT_SGI = 0x80D8; + public const int GL_COLOR_TABLE_WIDTH = 0x80D9; + public const int GL_COLOR_TABLE_WIDTH_SGI = 0x80D9; + public const int GL_COLOR_TABLE_RED_SIZE = 0x80DA; + public const int GL_COLOR_TABLE_RED_SIZE_SGI = 0x80DA; + public const int GL_COLOR_TABLE_GREEN_SIZE = 0x80DB; + public const int GL_COLOR_TABLE_GREEN_SIZE_SGI = 0x80DB; + public const int GL_COLOR_TABLE_BLUE_SIZE = 0x80DC; + public const int GL_COLOR_TABLE_BLUE_SIZE_SGI = 0x80DC; + public const int GL_COLOR_TABLE_ALPHA_SIZE = 0x80DD; + public const int GL_COLOR_TABLE_ALPHA_SIZE_SGI = 0x80DD; + public const int GL_COLOR_TABLE_LUMINANCE_SIZE = 0x80DE; + public const int GL_COLOR_TABLE_LUMINANCE_SIZE_SGI = 0x80DE; + public const int GL_COLOR_TABLE_INTENSITY_SIZE = 0x80DF; + public const int GL_COLOR_TABLE_INTENSITY_SIZE_SGI = 0x80DF; + // VENDOR: MS + public const int GL_BGR = 0x80E0; + public const int GL_BGR_EXT = 0x80E0; + public const int GL_BGRA = 0x80E1; + public const int GL_BGRA_EXT = 0x80E1; + public const int GL_BGRA_IMG = 0x80E1; + public const int GL_COLOR_INDEX1_EXT = 0x80E2; + public const int GL_COLOR_INDEX2_EXT = 0x80E3; + public const int GL_COLOR_INDEX4_EXT = 0x80E4; + public const int GL_COLOR_INDEX8_EXT = 0x80E5; + public const int GL_COLOR_INDEX12_EXT = 0x80E6; + public const int GL_COLOR_INDEX16_EXT = 0x80E7; + public const int GL_MAX_ELEMENTS_VERTICES = 0x80E8; + public const int GL_MAX_ELEMENTS_VERTICES_EXT = 0x80E8; + public const int GL_MAX_ELEMENTS_INDICES = 0x80E9; + public const int GL_MAX_ELEMENTS_INDICES_EXT = 0x80E9; + public const int GL_PHONG_WIN = 0x80EA; + public const int GL_PHONG_HINT_WIN = 0x80EB; + public const int GL_FOG_SPECULAR_TEXTURE_WIN = 0x80EC; + public const int GL_TEXTURE_INDEX_SIZE_EXT = 0x80ED; + public const int GL_PARAMETER_BUFFER = 0x80EE; + public const int GL_PARAMETER_BUFFER_ARB = 0x80EE; + public const int GL_PARAMETER_BUFFER_BINDING = 0x80EF; + public const int GL_PARAMETER_BUFFER_BINDING_ARB = 0x80EF; + public const int GL_CLIP_VOLUME_CLIPPING_HINT_EXT = 0x80F0; + // VENDOR: SGI + public const int GL_DUAL_ALPHA4_SGIS = 0x8110; + public const int GL_DUAL_ALPHA8_SGIS = 0x8111; + public const int GL_DUAL_ALPHA12_SGIS = 0x8112; + public const int GL_DUAL_ALPHA16_SGIS = 0x8113; + public const int GL_DUAL_LUMINANCE4_SGIS = 0x8114; + public const int GL_DUAL_LUMINANCE8_SGIS = 0x8115; + public const int GL_DUAL_LUMINANCE12_SGIS = 0x8116; + public const int GL_DUAL_LUMINANCE16_SGIS = 0x8117; + public const int GL_DUAL_INTENSITY4_SGIS = 0x8118; + public const int GL_DUAL_INTENSITY8_SGIS = 0x8119; + public const int GL_DUAL_INTENSITY12_SGIS = 0x811A; + public const int GL_DUAL_INTENSITY16_SGIS = 0x811B; + public const int GL_DUAL_LUMINANCE_ALPHA4_SGIS = 0x811C; + public const int GL_DUAL_LUMINANCE_ALPHA8_SGIS = 0x811D; + public const int GL_QUAD_ALPHA4_SGIS = 0x811E; + public const int GL_QUAD_ALPHA8_SGIS = 0x811F; + public const int GL_QUAD_LUMINANCE4_SGIS = 0x8120; + public const int GL_QUAD_LUMINANCE8_SGIS = 0x8121; + public const int GL_QUAD_INTENSITY4_SGIS = 0x8122; + public const int GL_QUAD_INTENSITY8_SGIS = 0x8123; + public const int GL_DUAL_TEXTURE_SELECT_SGIS = 0x8124; + public const int GL_QUAD_TEXTURE_SELECT_SGIS = 0x8125; + public const int GL_POINT_SIZE_MIN = 0x8126; + public const int GL_POINT_SIZE_MIN_ARB = 0x8126; + public const int GL_POINT_SIZE_MIN_EXT = 0x8126; + public const int GL_POINT_SIZE_MIN_SGIS = 0x8126; + public const int GL_POINT_SIZE_MAX = 0x8127; + public const int GL_POINT_SIZE_MAX_ARB = 0x8127; + public const int GL_POINT_SIZE_MAX_EXT = 0x8127; + public const int GL_POINT_SIZE_MAX_SGIS = 0x8127; + public const int GL_POINT_FADE_THRESHOLD_SIZE = 0x8128; + public const int GL_POINT_FADE_THRESHOLD_SIZE_ARB = 0x8128; + public const int GL_POINT_FADE_THRESHOLD_SIZE_EXT = 0x8128; + public const int GL_POINT_FADE_THRESHOLD_SIZE_SGIS = 0x8128; + public const int GL_DISTANCE_ATTENUATION_EXT = 0x8129; + public const int GL_DISTANCE_ATTENUATION_SGIS = 0x8129; + public const int GL_POINT_DISTANCE_ATTENUATION = 0x8129; + public const int GL_POINT_DISTANCE_ATTENUATION_ARB = 0x8129; public const int GL_FOG_FUNC_SGIS = 0x812A; public const int GL_FOG_FUNC_POINTS_SGIS = 0x812B; public const int GL_MAX_FOG_FUNC_POINTS_SGIS = 0x812C; - public const int GL_SGIS_generate_mipmap = 1; + public const int GL_CLAMP_TO_BORDER = 0x812D; + public const int GL_CLAMP_TO_BORDER_ARB = 0x812D; + public const int GL_CLAMP_TO_BORDER_EXT = 0x812D; + public const int GL_CLAMP_TO_BORDER_NV = 0x812D; + public const int GL_CLAMP_TO_BORDER_SGIS = 0x812D; + public const int GL_CLAMP_TO_BORDER_OES = 0x812D; + public const int GL_TEXTURE_MULTI_BUFFER_HINT_SGIX = 0x812E; + public const int GL_CLAMP_TO_EDGE = 0x812F; + public const int GL_CLAMP_TO_EDGE_SGIS = 0x812F; + public const int GL_PACK_SKIP_VOLUMES_SGIS = 0x8130; + public const int GL_PACK_IMAGE_DEPTH_SGIS = 0x8131; + public const int GL_UNPACK_SKIP_VOLUMES_SGIS = 0x8132; + public const int GL_UNPACK_IMAGE_DEPTH_SGIS = 0x8133; + public const int GL_TEXTURE_4D_SGIS = 0x8134; + public const int GL_PROXY_TEXTURE_4D_SGIS = 0x8135; + public const int GL_TEXTURE_4DSIZE_SGIS = 0x8136; + public const int GL_TEXTURE_WRAP_Q_SGIS = 0x8137; + public const int GL_MAX_4D_TEXTURE_SIZE_SGIS = 0x8138; + public const int GL_PIXEL_TEX_GEN_SGIX = 0x8139; + public const int GL_TEXTURE_MIN_LOD = 0x813A; + public const int GL_TEXTURE_MIN_LOD_SGIS = 0x813A; + public const int GL_TEXTURE_MAX_LOD = 0x813B; + public const int GL_TEXTURE_MAX_LOD_SGIS = 0x813B; + public const int GL_TEXTURE_BASE_LEVEL = 0x813C; + public const int GL_TEXTURE_BASE_LEVEL_SGIS = 0x813C; + public const int GL_TEXTURE_MAX_LEVEL = 0x813D; + public const int GL_TEXTURE_MAX_LEVEL_APPLE = 0x813D; + public const int GL_TEXTURE_MAX_LEVEL_SGIS = 0x813D; + public const int GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX = 0x813E; + public const int GL_PIXEL_TILE_CACHE_INCREMENT_SGIX = 0x813F; + public const int GL_PIXEL_TILE_WIDTH_SGIX = 0x8140; + public const int GL_PIXEL_TILE_HEIGHT_SGIX = 0x8141; + public const int GL_PIXEL_TILE_GRID_WIDTH_SGIX = 0x8142; + public const int GL_PIXEL_TILE_GRID_HEIGHT_SGIX = 0x8143; + public const int GL_PIXEL_TILE_GRID_DEPTH_SGIX = 0x8144; + public const int GL_PIXEL_TILE_CACHE_SIZE_SGIX = 0x8145; + public const int GL_FILTER4_SGIS = 0x8146; + public const int GL_TEXTURE_FILTER4_SIZE_SGIS = 0x8147; + public const int GL_SPRITE_SGIX = 0x8148; + public const int GL_SPRITE_MODE_SGIX = 0x8149; + public const int GL_SPRITE_AXIS_SGIX = 0x814A; + public const int GL_SPRITE_TRANSLATION_SGIX = 0x814B; + public const int GL_SPRITE_AXIAL_SGIX = 0x814C; + public const int GL_SPRITE_OBJECT_ALIGNED_SGIX = 0x814D; + public const int GL_SPRITE_EYE_ALIGNED_SGIX = 0x814E; + public const int GL_TEXTURE_4D_BINDING_SGIS = 0x814F; + // VENDOR: HP + public const int GL_IGNORE_BORDER_HP = 0x8150; + public const int GL_CONSTANT_BORDER = 0x8151; + public const int GL_CONSTANT_BORDER_HP = 0x8151; + public const int GL_REPLICATE_BORDER = 0x8153; + public const int GL_REPLICATE_BORDER_HP = 0x8153; + public const int GL_CONVOLUTION_BORDER_COLOR = 0x8154; + public const int GL_CONVOLUTION_BORDER_COLOR_HP = 0x8154; + public const int GL_IMAGE_SCALE_X_HP = 0x8155; + public const int GL_IMAGE_SCALE_Y_HP = 0x8156; + public const int GL_IMAGE_TRANSLATE_X_HP = 0x8157; + public const int GL_IMAGE_TRANSLATE_Y_HP = 0x8158; + public const int GL_IMAGE_ROTATE_ANGLE_HP = 0x8159; + public const int GL_IMAGE_ROTATE_ORIGIN_X_HP = 0x815A; + public const int GL_IMAGE_ROTATE_ORIGIN_Y_HP = 0x815B; + public const int GL_IMAGE_MAG_FILTER_HP = 0x815C; + public const int GL_IMAGE_MIN_FILTER_HP = 0x815D; + public const int GL_IMAGE_CUBIC_WEIGHT_HP = 0x815E; + public const int GL_CUBIC_HP = 0x815F; + public const int GL_AVERAGE_HP = 0x8160; + public const int GL_IMAGE_TRANSFORM_2D_HP = 0x8161; + public const int GL_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP = 0x8162; + public const int GL_PROXY_POST_IMAGE_TRANSFORM_COLOR_TABLE_HP = 0x8163; + public const int GL_OCCLUSION_TEST_HP = 0x8165; + public const int GL_OCCLUSION_TEST_RESULT_HP = 0x8166; + public const int GL_TEXTURE_LIGHTING_MODE_HP = 0x8167; + public const int GL_TEXTURE_POST_SPECULAR_HP = 0x8168; + public const int GL_TEXTURE_PRE_SPECULAR_HP = 0x8169; + // VENDOR: SGI + public const int GL_LINEAR_CLIPMAP_LINEAR_SGIX = 0x8170; + public const int GL_TEXTURE_CLIPMAP_CENTER_SGIX = 0x8171; + public const int GL_TEXTURE_CLIPMAP_FRAME_SGIX = 0x8172; + public const int GL_TEXTURE_CLIPMAP_OFFSET_SGIX = 0x8173; + public const int GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX = 0x8174; + public const int GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX = 0x8175; + public const int GL_TEXTURE_CLIPMAP_DEPTH_SGIX = 0x8176; + public const int GL_MAX_CLIPMAP_DEPTH_SGIX = 0x8177; + public const int GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX = 0x8178; + public const int GL_POST_TEXTURE_FILTER_BIAS_SGIX = 0x8179; + public const int GL_POST_TEXTURE_FILTER_SCALE_SGIX = 0x817A; + public const int GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX = 0x817B; + public const int GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX = 0x817C; + public const int GL_REFERENCE_PLANE_SGIX = 0x817D; + public const int GL_REFERENCE_PLANE_EQUATION_SGIX = 0x817E; + public const int GL_IR_INSTRUMENT1_SGIX = 0x817F; + public const int GL_INSTRUMENT_BUFFER_POINTER_SGIX = 0x8180; + public const int GL_INSTRUMENT_MEASUREMENTS_SGIX = 0x8181; + public const int GL_LIST_PRIORITY_SGIX = 0x8182; + public const int GL_CALLIGRAPHIC_FRAGMENT_SGIX = 0x8183; + public const int GL_PIXEL_TEX_GEN_Q_CEILING_SGIX = 0x8184; + public const int GL_PIXEL_TEX_GEN_Q_ROUND_SGIX = 0x8185; + public const int GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX = 0x8186; + public const int GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX = 0x8187; + public const int GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX = 0x8188; + public const int GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX = 0x8189; + public const int GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX = 0x818A; + public const int GL_FRAMEZOOM_SGIX = 0x818B; + public const int GL_FRAMEZOOM_FACTOR_SGIX = 0x818C; + public const int GL_MAX_FRAMEZOOM_FACTOR_SGIX = 0x818D; + public const int GL_TEXTURE_LOD_BIAS_S_SGIX = 0x818E; + public const int GL_TEXTURE_LOD_BIAS_T_SGIX = 0x818F; + public const int GL_TEXTURE_LOD_BIAS_R_SGIX = 0x8190; + public const int GL_GENERATE_MIPMAP = 0x8191; public const int GL_GENERATE_MIPMAP_SGIS = 0x8191; + public const int GL_GENERATE_MIPMAP_HINT = 0x8192; public const int GL_GENERATE_MIPMAP_HINT_SGIS = 0x8192; - public const int GL_SGIS_multisample = 1; - public const int GL_MULTISAMPLE_SGIS = 0x809D; - public const int GL_SAMPLE_ALPHA_TO_MASK_SGIS = 0x809E; - public const int GL_SAMPLE_ALPHA_TO_ONE_SGIS = 0x809F; - public const int GL_SAMPLE_MASK_SGIS = 0x80A0; - public const int GL_1PASS_SGIS = 0x80A1; - public const int GL_2PASS_0_SGIS = 0x80A2; - public const int GL_2PASS_1_SGIS = 0x80A3; - public const int GL_4PASS_0_SGIS = 0x80A4; - public const int GL_4PASS_1_SGIS = 0x80A5; - public const int GL_4PASS_2_SGIS = 0x80A6; - public const int GL_4PASS_3_SGIS = 0x80A7; - public const int GL_SAMPLE_BUFFERS_SGIS = 0x80A8; - public const int GL_SAMPLES_SGIS = 0x80A9; - public const int GL_SAMPLE_MASK_VALUE_SGIS = 0x80AA; - public const int GL_SAMPLE_MASK_INVERT_SGIS = 0x80AB; - public const int GL_SAMPLE_PATTERN_SGIS = 0x80AC; - public const int GL_SGIS_pixel_texture = 1; + public const int GL_GEOMETRY_DEFORMATION_SGIX = 0x8194; + public const int GL_TEXTURE_DEFORMATION_SGIX = 0x8195; + public const int GL_DEFORMATIONS_MASK_SGIX = 0x8196; + public const int GL_MAX_DEFORMATION_ORDER_SGIX = 0x8197; + public const int GL_FOG_OFFSET_SGIX = 0x8198; + public const int GL_FOG_OFFSET_VALUE_SGIX = 0x8199; + public const int GL_TEXTURE_COMPARE_SGIX = 0x819A; + public const int GL_TEXTURE_COMPARE_OPERATOR_SGIX = 0x819B; + public const int GL_TEXTURE_LEQUAL_R_SGIX = 0x819C; + public const int GL_TEXTURE_GEQUAL_R_SGIX = 0x819D; + public const int GL_DEPTH_COMPONENT16 = 0x81A5; + public const int GL_DEPTH_COMPONENT16_ARB = 0x81A5; + public const int GL_DEPTH_COMPONENT16_OES = 0x81A5; + public const int GL_DEPTH_COMPONENT16_SGIX = 0x81A5; + public const int GL_DEPTH_COMPONENT24 = 0x81A6; + public const int GL_DEPTH_COMPONENT24_ARB = 0x81A6; + public const int GL_DEPTH_COMPONENT24_OES = 0x81A6; + public const int GL_DEPTH_COMPONENT24_SGIX = 0x81A6; + public const int GL_DEPTH_COMPONENT32 = 0x81A7; + public const int GL_DEPTH_COMPONENT32_ARB = 0x81A7; + public const int GL_DEPTH_COMPONENT32_OES = 0x81A7; + public const int GL_DEPTH_COMPONENT32_SGIX = 0x81A7; + public const int GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = 0x81A8; + public const int GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = 0x81A9; + public const int GL_CULL_VERTEX_EXT = 0x81AA; + public const int GL_CULL_VERTEX_EYE_POSITION_EXT = 0x81AB; + public const int GL_CULL_VERTEX_OBJECT_POSITION_EXT = 0x81AC; + public const int GL_IUI_V2F_EXT = 0x81AD; + public const int GL_IUI_V3F_EXT = 0x81AE; + public const int GL_IUI_N3F_V2F_EXT = 0x81AF; + public const int GL_IUI_N3F_V3F_EXT = 0x81B0; + public const int GL_T2F_IUI_V2F_EXT = 0x81B1; + public const int GL_T2F_IUI_V3F_EXT = 0x81B2; + public const int GL_T2F_IUI_N3F_V2F_EXT = 0x81B3; + public const int GL_T2F_IUI_N3F_V3F_EXT = 0x81B4; + public const int GL_INDEX_TEST_EXT = 0x81B5; + public const int GL_INDEX_TEST_FUNC_EXT = 0x81B6; + public const int GL_INDEX_TEST_REF_EXT = 0x81B7; + public const int GL_INDEX_MATERIAL_EXT = 0x81B8; + public const int GL_INDEX_MATERIAL_PARAMETER_EXT = 0x81B9; + public const int GL_INDEX_MATERIAL_FACE_EXT = 0x81BA; + public const int GL_YCRCB_422_SGIX = 0x81BB; + public const int GL_YCRCB_444_SGIX = 0x81BC; + // VENDOR: SUN + public const int GL_WRAP_BORDER_SUN = 0x81D4; + public const int GL_UNPACK_CONSTANT_DATA_SUNX = 0x81D5; + public const int GL_TEXTURE_CONSTANT_DATA_SUNX = 0x81D6; + public const int GL_TRIANGLE_LIST_SUN = 0x81D7; + public const int GL_REPLACEMENT_CODE_SUN = 0x81D8; + public const int GL_GLOBAL_ALPHA_SUN = 0x81D9; + public const int GL_GLOBAL_ALPHA_FACTOR_SUN = 0x81DA; + // VENDOR: SGI + public const int GL_TEXTURE_COLOR_WRITEMASK_SGIS = 0x81EF; + public const int GL_EYE_DISTANCE_TO_POINT_SGIS = 0x81F0; + public const int GL_OBJECT_DISTANCE_TO_POINT_SGIS = 0x81F1; + public const int GL_EYE_DISTANCE_TO_LINE_SGIS = 0x81F2; + public const int GL_OBJECT_DISTANCE_TO_LINE_SGIS = 0x81F3; + public const int GL_EYE_POINT_SGIS = 0x81F4; + public const int GL_OBJECT_POINT_SGIS = 0x81F5; + public const int GL_EYE_LINE_SGIS = 0x81F6; + public const int GL_OBJECT_LINE_SGIS = 0x81F7; + public const int GL_LIGHT_MODEL_COLOR_CONTROL = 0x81F8; + public const int GL_LIGHT_MODEL_COLOR_CONTROL_EXT = 0x81F8; + public const int GL_SINGLE_COLOR = 0x81F9; + public const int GL_SINGLE_COLOR_EXT = 0x81F9; + public const int GL_SEPARATE_SPECULAR_COLOR = 0x81FA; + public const int GL_SEPARATE_SPECULAR_COLOR_EXT = 0x81FA; + public const int GL_SHARED_TEXTURE_PALETTE_EXT = 0x81FB; + // VENDOR: AMD + // Range released by MS 2002/9/16 + public const int GL_TEXT_FRAGMENT_SHADER_ATI = 0x8200; + // VENDOR: ARB + public const int GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = 0x8210; + public const int GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT = 0x8210; + public const int GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = 0x8211; + public const int GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT = 0x8211; + public const int GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = 0x8212; + public const int GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = 0x8213; + public const int GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = 0x8214; + public const int GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = 0x8215; + public const int GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = 0x8216; + public const int GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = 0x8217; + public const int GL_FRAMEBUFFER_DEFAULT = 0x8218; + public const int GL_FRAMEBUFFER_UNDEFINED = 0x8219; + public const int GL_FRAMEBUFFER_UNDEFINED_OES = 0x8219; + public const int GL_DEPTH_STENCIL_ATTACHMENT = 0x821A; + public const int GL_MAJOR_VERSION = 0x821B; + public const int GL_MINOR_VERSION = 0x821C; + public const int GL_NUM_EXTENSIONS = 0x821D; + public const int GL_CONTEXT_FLAGS = 0x821E; + public const int GL_BUFFER_IMMUTABLE_STORAGE = 0x821F; + public const int GL_BUFFER_IMMUTABLE_STORAGE_EXT = 0x821F; + public const int GL_BUFFER_STORAGE_FLAGS = 0x8220; + public const int GL_BUFFER_STORAGE_FLAGS_EXT = 0x8220; + public const int GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED = 0x8221; + public const int GL_PRIMITIVE_RESTART_FOR_PATCHES_SUPPORTED_OES = 0x8221; + public const int GL_INDEX = 0x8222; + public const int GL_COMPRESSED_RED = 0x8225; + public const int GL_COMPRESSED_RG = 0x8226; + public const int GL_RG = 0x8227; + public const int GL_RG_EXT = 0x8227; + public const int GL_RG_INTEGER = 0x8228; + public const int GL_R8 = 0x8229; + public const int GL_R8_EXT = 0x8229; + public const int GL_R16 = 0x822A; + public const int GL_R16_EXT = 0x822A; + public const int GL_RG8 = 0x822B; + public const int GL_RG8_EXT = 0x822B; + public const int GL_RG16 = 0x822C; + public const int GL_RG16_EXT = 0x822C; + public const int GL_R16F = 0x822D; + public const int GL_R16F_EXT = 0x822D; + public const int GL_R32F = 0x822E; + public const int GL_R32F_EXT = 0x822E; + public const int GL_RG16F = 0x822F; + public const int GL_RG16F_EXT = 0x822F; + public const int GL_RG32F = 0x8230; + public const int GL_RG32F_EXT = 0x8230; + public const int GL_R8I = 0x8231; + public const int GL_R8UI = 0x8232; + public const int GL_R16I = 0x8233; + public const int GL_R16UI = 0x8234; + public const int GL_R32I = 0x8235; + public const int GL_R32UI = 0x8236; + public const int GL_RG8I = 0x8237; + public const int GL_RG8UI = 0x8238; + public const int GL_RG16I = 0x8239; + public const int GL_RG16UI = 0x823A; + public const int GL_RG32I = 0x823B; + public const int GL_RG32UI = 0x823C; + // VENDOR: ARB + // Range released by MS on 2002/9/16 + public const int GL_SYNC_CL_EVENT_ARB = 0x8240; + public const int GL_SYNC_CL_EVENT_COMPLETE_ARB = 0x8241; + public const int GL_DEBUG_OUTPUT_SYNCHRONOUS = 0x8242; + public const int GL_DEBUG_OUTPUT_SYNCHRONOUS_ARB = 0x8242; + public const int GL_DEBUG_OUTPUT_SYNCHRONOUS_KHR = 0x8242; + public const int GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = 0x8243; + public const int GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_ARB = 0x8243; + public const int GL_DEBUG_NEXT_LOGGED_MESSAGE_LENGTH_KHR = 0x8243; + public const int GL_DEBUG_CALLBACK_FUNCTION = 0x8244; + public const int GL_DEBUG_CALLBACK_FUNCTION_ARB = 0x8244; + public const int GL_DEBUG_CALLBACK_FUNCTION_KHR = 0x8244; + public const int GL_DEBUG_CALLBACK_USER_PARAM = 0x8245; + public const int GL_DEBUG_CALLBACK_USER_PARAM_ARB = 0x8245; + public const int GL_DEBUG_CALLBACK_USER_PARAM_KHR = 0x8245; + public const int GL_DEBUG_SOURCE_API = 0x8246; + public const int GL_DEBUG_SOURCE_API_ARB = 0x8246; + public const int GL_DEBUG_SOURCE_API_KHR = 0x8246; + public const int GL_DEBUG_SOURCE_WINDOW_SYSTEM = 0x8247; + public const int GL_DEBUG_SOURCE_WINDOW_SYSTEM_ARB = 0x8247; + public const int GL_DEBUG_SOURCE_WINDOW_SYSTEM_KHR = 0x8247; + public const int GL_DEBUG_SOURCE_SHADER_COMPILER = 0x8248; + public const int GL_DEBUG_SOURCE_SHADER_COMPILER_ARB = 0x8248; + public const int GL_DEBUG_SOURCE_SHADER_COMPILER_KHR = 0x8248; + public const int GL_DEBUG_SOURCE_THIRD_PARTY = 0x8249; + public const int GL_DEBUG_SOURCE_THIRD_PARTY_ARB = 0x8249; + public const int GL_DEBUG_SOURCE_THIRD_PARTY_KHR = 0x8249; + public const int GL_DEBUG_SOURCE_APPLICATION = 0x824A; + public const int GL_DEBUG_SOURCE_APPLICATION_ARB = 0x824A; + public const int GL_DEBUG_SOURCE_APPLICATION_KHR = 0x824A; + public const int GL_DEBUG_SOURCE_OTHER = 0x824B; + public const int GL_DEBUG_SOURCE_OTHER_ARB = 0x824B; + public const int GL_DEBUG_SOURCE_OTHER_KHR = 0x824B; + public const int GL_DEBUG_TYPE_ERROR = 0x824C; + public const int GL_DEBUG_TYPE_ERROR_ARB = 0x824C; + public const int GL_DEBUG_TYPE_ERROR_KHR = 0x824C; + public const int GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR = 0x824D; + public const int GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_ARB = 0x824D; + public const int GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR_KHR = 0x824D; + public const int GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR = 0x824E; + public const int GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_ARB = 0x824E; + public const int GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR_KHR = 0x824E; + public const int GL_DEBUG_TYPE_PORTABILITY = 0x824F; + public const int GL_DEBUG_TYPE_PORTABILITY_ARB = 0x824F; + public const int GL_DEBUG_TYPE_PORTABILITY_KHR = 0x824F; + public const int GL_DEBUG_TYPE_PERFORMANCE = 0x8250; + public const int GL_DEBUG_TYPE_PERFORMANCE_ARB = 0x8250; + public const int GL_DEBUG_TYPE_PERFORMANCE_KHR = 0x8250; + public const int GL_DEBUG_TYPE_OTHER = 0x8251; + public const int GL_DEBUG_TYPE_OTHER_ARB = 0x8251; + public const int GL_DEBUG_TYPE_OTHER_KHR = 0x8251; + public const int GL_LOSE_CONTEXT_ON_RESET = 0x8252; + public const int GL_LOSE_CONTEXT_ON_RESET_ARB = 0x8252; + public const int GL_LOSE_CONTEXT_ON_RESET_EXT = 0x8252; + public const int GL_LOSE_CONTEXT_ON_RESET_KHR = 0x8252; + public const int GL_GUILTY_CONTEXT_RESET = 0x8253; + public const int GL_GUILTY_CONTEXT_RESET_ARB = 0x8253; + public const int GL_GUILTY_CONTEXT_RESET_EXT = 0x8253; + public const int GL_GUILTY_CONTEXT_RESET_KHR = 0x8253; + public const int GL_INNOCENT_CONTEXT_RESET = 0x8254; + public const int GL_INNOCENT_CONTEXT_RESET_ARB = 0x8254; + public const int GL_INNOCENT_CONTEXT_RESET_EXT = 0x8254; + public const int GL_INNOCENT_CONTEXT_RESET_KHR = 0x8254; + public const int GL_UNKNOWN_CONTEXT_RESET = 0x8255; + public const int GL_UNKNOWN_CONTEXT_RESET_ARB = 0x8255; + public const int GL_UNKNOWN_CONTEXT_RESET_EXT = 0x8255; + public const int GL_UNKNOWN_CONTEXT_RESET_KHR = 0x8255; + public const int GL_RESET_NOTIFICATION_STRATEGY = 0x8256; + public const int GL_RESET_NOTIFICATION_STRATEGY_ARB = 0x8256; + public const int GL_RESET_NOTIFICATION_STRATEGY_EXT = 0x8256; + public const int GL_RESET_NOTIFICATION_STRATEGY_KHR = 0x8256; + public const int GL_PROGRAM_BINARY_RETRIEVABLE_HINT = 0x8257; + public const int GL_PROGRAM_SEPARABLE = 0x8258; + public const int GL_PROGRAM_SEPARABLE_EXT = 0x8258; + public const int GL_ACTIVE_PROGRAM = 0x8259; + public const int gles2_GL_ACTIVE_PROGRAM_EXT = 0x8259; + public const int GL_PROGRAM_PIPELINE_BINDING = 0x825A; + public const int GL_PROGRAM_PIPELINE_BINDING_EXT = 0x825A; + public const int GL_MAX_VIEWPORTS = 0x825B; + public const int GL_MAX_VIEWPORTS_NV = 0x825B; + public const int GL_MAX_VIEWPORTS_OES = 0x825B; + public const int GL_VIEWPORT_SUBPIXEL_BITS = 0x825C; + public const int GL_VIEWPORT_SUBPIXEL_BITS_EXT = 0x825C; + public const int GL_VIEWPORT_SUBPIXEL_BITS_NV = 0x825C; + public const int GL_VIEWPORT_SUBPIXEL_BITS_OES = 0x825C; + public const int GL_VIEWPORT_BOUNDS_RANGE = 0x825D; + public const int GL_VIEWPORT_BOUNDS_RANGE_EXT = 0x825D; + public const int GL_VIEWPORT_BOUNDS_RANGE_NV = 0x825D; + public const int GL_VIEWPORT_BOUNDS_RANGE_OES = 0x825D; + public const int GL_LAYER_PROVOKING_VERTEX = 0x825E; + public const int GL_LAYER_PROVOKING_VERTEX_EXT = 0x825E; + public const int GL_LAYER_PROVOKING_VERTEX_OES = 0x825E; + public const int GL_VIEWPORT_INDEX_PROVOKING_VERTEX = 0x825F; + public const int GL_VIEWPORT_INDEX_PROVOKING_VERTEX_EXT = 0x825F; + public const int GL_VIEWPORT_INDEX_PROVOKING_VERTEX_NV = 0x825F; + public const int GL_VIEWPORT_INDEX_PROVOKING_VERTEX_OES = 0x825F; + public const int GL_UNDEFINED_VERTEX = 0x8260; + public const int GL_UNDEFINED_VERTEX_EXT = 0x8260; + public const int GL_UNDEFINED_VERTEX_OES = 0x8260; + public const int GL_NO_RESET_NOTIFICATION = 0x8261; + public const int GL_NO_RESET_NOTIFICATION_ARB = 0x8261; + public const int GL_NO_RESET_NOTIFICATION_EXT = 0x8261; + public const int GL_NO_RESET_NOTIFICATION_KHR = 0x8261; + public const int GL_MAX_COMPUTE_SHARED_MEMORY_SIZE = 0x8262; + public const int GL_MAX_COMPUTE_UNIFORM_COMPONENTS = 0x8263; + public const int GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS = 0x8264; + public const int GL_MAX_COMPUTE_ATOMIC_COUNTERS = 0x8265; + public const int GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS = 0x8266; + public const int GL_COMPUTE_WORK_GROUP_SIZE = 0x8267; + public const int GL_DEBUG_TYPE_MARKER = 0x8268; + public const int GL_DEBUG_TYPE_MARKER_KHR = 0x8268; + public const int GL_DEBUG_TYPE_PUSH_GROUP = 0x8269; + public const int GL_DEBUG_TYPE_PUSH_GROUP_KHR = 0x8269; + public const int GL_DEBUG_TYPE_POP_GROUP = 0x826A; + public const int GL_DEBUG_TYPE_POP_GROUP_KHR = 0x826A; + public const int GL_DEBUG_SEVERITY_NOTIFICATION = 0x826B; + public const int GL_DEBUG_SEVERITY_NOTIFICATION_KHR = 0x826B; + public const int GL_MAX_DEBUG_GROUP_STACK_DEPTH = 0x826C; + public const int GL_MAX_DEBUG_GROUP_STACK_DEPTH_KHR = 0x826C; + public const int GL_DEBUG_GROUP_STACK_DEPTH = 0x826D; + public const int GL_DEBUG_GROUP_STACK_DEPTH_KHR = 0x826D; + public const int GL_MAX_UNIFORM_LOCATIONS = 0x826E; + public const int GL_INTERNALFORMAT_SUPPORTED = 0x826F; + public const int GL_INTERNALFORMAT_PREFERRED = 0x8270; + public const int GL_INTERNALFORMAT_RED_SIZE = 0x8271; + public const int GL_INTERNALFORMAT_GREEN_SIZE = 0x8272; + public const int GL_INTERNALFORMAT_BLUE_SIZE = 0x8273; + public const int GL_INTERNALFORMAT_ALPHA_SIZE = 0x8274; + public const int GL_INTERNALFORMAT_DEPTH_SIZE = 0x8275; + public const int GL_INTERNALFORMAT_STENCIL_SIZE = 0x8276; + public const int GL_INTERNALFORMAT_SHARED_SIZE = 0x8277; + public const int GL_INTERNALFORMAT_RED_TYPE = 0x8278; + public const int GL_INTERNALFORMAT_GREEN_TYPE = 0x8279; + public const int GL_INTERNALFORMAT_BLUE_TYPE = 0x827A; + public const int GL_INTERNALFORMAT_ALPHA_TYPE = 0x827B; + public const int GL_INTERNALFORMAT_DEPTH_TYPE = 0x827C; + public const int GL_INTERNALFORMAT_STENCIL_TYPE = 0x827D; + public const int GL_MAX_WIDTH = 0x827E; + public const int GL_MAX_HEIGHT = 0x827F; + public const int GL_MAX_DEPTH = 0x8280; + public const int GL_MAX_LAYERS = 0x8281; + public const int GL_MAX_COMBINED_DIMENSIONS = 0x8282; + public const int GL_COLOR_COMPONENTS = 0x8283; + public const int GL_DEPTH_COMPONENTS = 0x8284; + public const int GL_STENCIL_COMPONENTS = 0x8285; + public const int GL_COLOR_RENDERABLE = 0x8286; + public const int GL_DEPTH_RENDERABLE = 0x8287; + public const int GL_STENCIL_RENDERABLE = 0x8288; + public const int GL_FRAMEBUFFER_RENDERABLE = 0x8289; + public const int GL_FRAMEBUFFER_RENDERABLE_LAYERED = 0x828A; + public const int GL_FRAMEBUFFER_BLEND = 0x828B; + public const int GL_READ_PIXELS = 0x828C; + public const int GL_READ_PIXELS_FORMAT = 0x828D; + public const int GL_READ_PIXELS_TYPE = 0x828E; + public const int GL_TEXTURE_IMAGE_FORMAT = 0x828F; + public const int GL_TEXTURE_IMAGE_TYPE = 0x8290; + public const int GL_GET_TEXTURE_IMAGE_FORMAT = 0x8291; + public const int GL_GET_TEXTURE_IMAGE_TYPE = 0x8292; + public const int GL_MIPMAP = 0x8293; + public const int GL_MANUAL_GENERATE_MIPMAP = 0x8294; + public const int GL_AUTO_GENERATE_MIPMAP = 0x8295; + public const int GL_COLOR_ENCODING = 0x8296; + public const int GL_SRGB_READ = 0x8297; + public const int GL_SRGB_WRITE = 0x8298; + public const int GL_SRGB_DECODE_ARB = 0x8299; + public const int GL_FILTER = 0x829A; + public const int GL_VERTEX_TEXTURE = 0x829B; + public const int GL_TESS_CONTROL_TEXTURE = 0x829C; + public const int GL_TESS_EVALUATION_TEXTURE = 0x829D; + public const int GL_GEOMETRY_TEXTURE = 0x829E; + public const int GL_FRAGMENT_TEXTURE = 0x829F; + public const int GL_COMPUTE_TEXTURE = 0x82A0; + public const int GL_TEXTURE_SHADOW = 0x82A1; + public const int GL_TEXTURE_GATHER = 0x82A2; + public const int GL_TEXTURE_GATHER_SHADOW = 0x82A3; + public const int GL_SHADER_IMAGE_LOAD = 0x82A4; + public const int GL_SHADER_IMAGE_STORE = 0x82A5; + public const int GL_SHADER_IMAGE_ATOMIC = 0x82A6; + public const int GL_IMAGE_TEXEL_SIZE = 0x82A7; + public const int GL_IMAGE_COMPATIBILITY_CLASS = 0x82A8; + public const int GL_IMAGE_PIXEL_FORMAT = 0x82A9; + public const int GL_IMAGE_PIXEL_TYPE = 0x82AA; + public const int GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST = 0x82AC; + public const int GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST = 0x82AD; + public const int GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE = 0x82AE; + public const int GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE = 0x82AF; + // VENDOR: ARB + // Range reclaimed from ADD on 2012/05/10 + public const int GL_TEXTURE_COMPRESSED_BLOCK_WIDTH = 0x82B1; + public const int GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT = 0x82B2; + public const int GL_TEXTURE_COMPRESSED_BLOCK_SIZE = 0x82B3; + public const int GL_CLEAR_BUFFER = 0x82B4; + public const int GL_TEXTURE_VIEW = 0x82B5; + public const int GL_VIEW_COMPATIBILITY_CLASS = 0x82B6; + public const int GL_FULL_SUPPORT = 0x82B7; + public const int GL_CAVEAT_SUPPORT = 0x82B8; + public const int GL_IMAGE_CLASS_4_X_32 = 0x82B9; + public const int GL_IMAGE_CLASS_2_X_32 = 0x82BA; + public const int GL_IMAGE_CLASS_1_X_32 = 0x82BB; + public const int GL_IMAGE_CLASS_4_X_16 = 0x82BC; + public const int GL_IMAGE_CLASS_2_X_16 = 0x82BD; + public const int GL_IMAGE_CLASS_1_X_16 = 0x82BE; + public const int GL_IMAGE_CLASS_4_X_8 = 0x82BF; + public const int GL_IMAGE_CLASS_2_X_8 = 0x82C0; + public const int GL_IMAGE_CLASS_1_X_8 = 0x82C1; + public const int GL_IMAGE_CLASS_11_11_10 = 0x82C2; + public const int GL_IMAGE_CLASS_10_10_10_2 = 0x82C3; + public const int GL_VIEW_CLASS_128_BITS = 0x82C4; + public const int GL_VIEW_CLASS_96_BITS = 0x82C5; + public const int GL_VIEW_CLASS_64_BITS = 0x82C6; + public const int GL_VIEW_CLASS_48_BITS = 0x82C7; + public const int GL_VIEW_CLASS_32_BITS = 0x82C8; + public const int GL_VIEW_CLASS_24_BITS = 0x82C9; + public const int GL_VIEW_CLASS_16_BITS = 0x82CA; + public const int GL_VIEW_CLASS_8_BITS = 0x82CB; + public const int GL_VIEW_CLASS_S3TC_DXT1_RGB = 0x82CC; + public const int GL_VIEW_CLASS_S3TC_DXT1_RGBA = 0x82CD; + public const int GL_VIEW_CLASS_S3TC_DXT3_RGBA = 0x82CE; + public const int GL_VIEW_CLASS_S3TC_DXT5_RGBA = 0x82CF; + public const int GL_VIEW_CLASS_RGTC1_RED = 0x82D0; + public const int GL_VIEW_CLASS_RGTC2_RG = 0x82D1; + public const int GL_VIEW_CLASS_BPTC_UNORM = 0x82D2; + public const int GL_VIEW_CLASS_BPTC_FLOAT = 0x82D3; + public const int GL_VERTEX_ATTRIB_BINDING = 0x82D4; + public const int GL_VERTEX_ATTRIB_RELATIVE_OFFSET = 0x82D5; + public const int GL_VERTEX_BINDING_DIVISOR = 0x82D6; + public const int GL_VERTEX_BINDING_OFFSET = 0x82D7; + public const int GL_VERTEX_BINDING_STRIDE = 0x82D8; + public const int GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET = 0x82D9; + public const int GL_MAX_VERTEX_ATTRIB_BINDINGS = 0x82DA; + public const int GL_TEXTURE_VIEW_MIN_LEVEL = 0x82DB; + public const int GL_TEXTURE_VIEW_MIN_LEVEL_EXT = 0x82DB; + public const int GL_TEXTURE_VIEW_MIN_LEVEL_OES = 0x82DB; + public const int GL_TEXTURE_VIEW_NUM_LEVELS = 0x82DC; + public const int GL_TEXTURE_VIEW_NUM_LEVELS_EXT = 0x82DC; + public const int GL_TEXTURE_VIEW_NUM_LEVELS_OES = 0x82DC; + public const int GL_TEXTURE_VIEW_MIN_LAYER = 0x82DD; + public const int GL_TEXTURE_VIEW_MIN_LAYER_EXT = 0x82DD; + public const int GL_TEXTURE_VIEW_MIN_LAYER_OES = 0x82DD; + public const int GL_TEXTURE_VIEW_NUM_LAYERS = 0x82DE; + public const int GL_TEXTURE_VIEW_NUM_LAYERS_EXT = 0x82DE; + public const int GL_TEXTURE_VIEW_NUM_LAYERS_OES = 0x82DE; + public const int GL_TEXTURE_IMMUTABLE_LEVELS = 0x82DF; + public const int GL_BUFFER = 0x82E0; + public const int GL_BUFFER_KHR = 0x82E0; + public const int GL_SHADER = 0x82E1; + public const int GL_SHADER_KHR = 0x82E1; + public const int GL_PROGRAM = 0x82E2; + public const int GL_PROGRAM_KHR = 0x82E2; + public const int GL_QUERY = 0x82E3; + public const int GL_QUERY_KHR = 0x82E3; + public const int GL_PROGRAM_PIPELINE = 0x82E4; + public const int GL_PROGRAM_PIPELINE_KHR = 0x82E4; + public const int GL_MAX_VERTEX_ATTRIB_STRIDE = 0x82E5; + public const int GL_SAMPLER = 0x82E6; + public const int GL_SAMPLER_KHR = 0x82E6; + public const int GL_DISPLAY_LIST = 0x82E7; + public const int GL_MAX_LABEL_LENGTH = 0x82E8; + public const int GL_MAX_LABEL_LENGTH_KHR = 0x82E8; + public const int GL_NUM_SHADING_LANGUAGE_VERSIONS = 0x82E9; + public const int GL_QUERY_TARGET = 0x82EA; + public const int GL_TRANSFORM_FEEDBACK_OVERFLOW = 0x82EC; + public const int GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB = 0x82EC; + public const int GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW = 0x82ED; + public const int GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB = 0x82ED; + public const int GL_VERTICES_SUBMITTED = 0x82EE; + public const int GL_VERTICES_SUBMITTED_ARB = 0x82EE; + public const int GL_PRIMITIVES_SUBMITTED = 0x82EF; + public const int GL_PRIMITIVES_SUBMITTED_ARB = 0x82EF; + public const int GL_VERTEX_SHADER_INVOCATIONS = 0x82F0; + public const int GL_VERTEX_SHADER_INVOCATIONS_ARB = 0x82F0; + public const int GL_TESS_CONTROL_SHADER_PATCHES = 0x82F1; + public const int GL_TESS_CONTROL_SHADER_PATCHES_ARB = 0x82F1; + public const int GL_TESS_EVALUATION_SHADER_INVOCATIONS = 0x82F2; + public const int GL_TESS_EVALUATION_SHADER_INVOCATIONS_ARB = 0x82F2; + public const int GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED = 0x82F3; + public const int GL_GEOMETRY_SHADER_PRIMITIVES_EMITTED_ARB = 0x82F3; + public const int GL_FRAGMENT_SHADER_INVOCATIONS = 0x82F4; + public const int GL_FRAGMENT_SHADER_INVOCATIONS_ARB = 0x82F4; + public const int GL_COMPUTE_SHADER_INVOCATIONS = 0x82F5; + public const int GL_COMPUTE_SHADER_INVOCATIONS_ARB = 0x82F5; + public const int GL_CLIPPING_INPUT_PRIMITIVES = 0x82F6; + public const int GL_CLIPPING_INPUT_PRIMITIVES_ARB = 0x82F6; + public const int GL_CLIPPING_OUTPUT_PRIMITIVES = 0x82F7; + public const int GL_CLIPPING_OUTPUT_PRIMITIVES_ARB = 0x82F7; + public const int GL_SPARSE_BUFFER_PAGE_SIZE_ARB = 0x82F8; + public const int GL_MAX_CULL_DISTANCES = 0x82F9; + public const int GL_MAX_CULL_DISTANCES_EXT = 0x82F9; + public const int GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES = 0x82FA; + public const int GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES_EXT = 0x82FA; + public const int GL_CONTEXT_RELEASE_BEHAVIOR = 0x82FB; + public const int GL_CONTEXT_RELEASE_BEHAVIOR_KHR = 0x82FB; + public const int GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH = 0x82FC; + public const int GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH_KHR = 0x82FC; + public const int GL_ROBUST_GPU_TIMEOUT_MS_KHR = 0x82FD; + // VENDOR: SGI + public const int GL_DEPTH_PASS_INSTRUMENT_SGIX = 0x8310; + public const int GL_DEPTH_PASS_INSTRUMENT_COUNTERS_SGIX = 0x8311; + public const int GL_DEPTH_PASS_INSTRUMENT_MAX_SGIX = 0x8312; + public const int GL_FRAGMENTS_INSTRUMENT_SGIX = 0x8313; + public const int GL_FRAGMENTS_INSTRUMENT_COUNTERS_SGIX = 0x8314; + public const int GL_FRAGMENTS_INSTRUMENT_MAX_SGIX = 0x8315; + public const int GL_CONVOLUTION_HINT_SGIX = 0x8316; + public const int GL_YCRCB_SGIX = 0x8318; + public const int GL_YCRCBA_SGIX = 0x8319; + public const int GL_UNPACK_COMPRESSED_SIZE_SGIX = 0x831A; + public const int GL_PACK_MAX_COMPRESSED_SIZE_SGIX = 0x831B; + public const int GL_PACK_COMPRESSED_SIZE_SGIX = 0x831C; + public const int GL_SLIM8U_SGIX = 0x831D; + public const int GL_SLIM10U_SGIX = 0x831E; + public const int GL_SLIM12S_SGIX = 0x831F; + public const int GL_ALPHA_MIN_SGIX = 0x8320; + public const int GL_ALPHA_MAX_SGIX = 0x8321; + public const int GL_SCALEBIAS_HINT_SGIX = 0x8322; + public const int GL_ASYNC_MARKER_SGIX = 0x8329; + public const int GL_PIXEL_TEX_GEN_MODE_SGIX = 0x832B; + public const int GL_ASYNC_HISTOGRAM_SGIX = 0x832C; + public const int GL_MAX_ASYNC_HISTOGRAM_SGIX = 0x832D; + // VENDOR: SUN + public const int GL_PIXEL_TRANSFORM_2D_EXT = 0x8330; + public const int GL_PIXEL_MAG_FILTER_EXT = 0x8331; + public const int GL_PIXEL_MIN_FILTER_EXT = 0x8332; + public const int GL_PIXEL_CUBIC_WEIGHT_EXT = 0x8333; + public const int GL_CUBIC_EXT = 0x8334; + public const int GL_AVERAGE_EXT = 0x8335; + public const int GL_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8336; + public const int GL_MAX_PIXEL_TRANSFORM_2D_STACK_DEPTH_EXT = 0x8337; + public const int GL_PIXEL_TRANSFORM_2D_MATRIX_EXT = 0x8338; + // VENDOR: SGI + public const int GL_FRAGMENT_MATERIAL_EXT = 0x8349; + public const int GL_FRAGMENT_NORMAL_EXT = 0x834A; + public const int GL_FRAGMENT_COLOR_EXT = 0x834C; + public const int GL_ATTENUATION_EXT = 0x834D; + public const int GL_SHADOW_ATTENUATION_EXT = 0x834E; + public const int GL_TEXTURE_APPLICATION_MODE_EXT = 0x834F; + public const int GL_TEXTURE_LIGHT_EXT = 0x8350; + public const int GL_TEXTURE_MATERIAL_FACE_EXT = 0x8351; + public const int GL_TEXTURE_MATERIAL_PARAMETER_EXT = 0x8352; public const int GL_PIXEL_TEXTURE_SGIS = 0x8353; public const int GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS = 0x8354; public const int GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS = 0x8355; public const int GL_PIXEL_GROUP_COLOR_SGIS = 0x8356; - public const int GL_SGIS_point_line_texgen = 1; - public const int GL_EYE_DISTANCE_TO_POINT_SGIS = 0x81F0; - public const int GL_OBJECT_DISTANCE_TO_POINT_SGIS = 0x81F1; - public const int GL_EYE_DISTANCE_TO_LINE_SGIS = 0x81F2; - public const int GL_OBJECT_DISTANCE_TO_LINE_SGIS = 0x81F3; - public const int GL_EYE_POINT_SGIS = 0x81F4; - public const int GL_OBJECT_POINT_SGIS = 0x81F5; - public const int GL_EYE_LINE_SGIS = 0x81F6; - public const int GL_OBJECT_LINE_SGIS = 0x81F7; - public const int GL_SGIS_point_parameters = 1; - public const int GL_POINT_SIZE_MIN_SGIS = 0x8126; - public const int GL_POINT_SIZE_MAX_SGIS = 0x8127; - public const int GL_POINT_FADE_THRESHOLD_SIZE_SGIS = 0x8128; - public const int GL_DISTANCE_ATTENUATION_SGIS = 0x8129; - public const int GL_SGIS_sharpen_texture = 1; - public const int GL_LINEAR_SHARPEN_SGIS = 0x80AD; - public const int GL_LINEAR_SHARPEN_ALPHA_SGIS = 0x80AE; - public const int GL_LINEAR_SHARPEN_COLOR_SGIS = 0x80AF; - public const int GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS = 0x80B0; - public const int GL_SGIS_texture4D = 1; - public const int GL_PACK_SKIP_VOLUMES_SGIS = 0x8130; - public const int GL_PACK_IMAGE_DEPTH_SGIS = 0x8131; - public const int GL_UNPACK_SKIP_VOLUMES_SGIS = 0x8132; - public const int GL_UNPACK_IMAGE_DEPTH_SGIS = 0x8133; - public const int GL_TEXTURE_4D_SGIS = 0x8134; - public const int GL_PROXY_TEXTURE_4D_SGIS = 0x8135; - public const int GL_TEXTURE_4DSIZE_SGIS = 0x8136; - public const int GL_TEXTURE_WRAP_Q_SGIS = 0x8137; - public const int GL_MAX_4D_TEXTURE_SIZE_SGIS = 0x8138; - public const int GL_TEXTURE_4D_BINDING_SGIS = 0x814F; - public const int GL_SGIS_texture_border_clamp = 1; - public const int GL_CLAMP_TO_BORDER_SGIS = 0x812D; - public const int GL_SGIS_texture_color_mask = 1; - public const int GL_TEXTURE_COLOR_WRITEMASK_SGIS = 0x81EF; - public const int GL_SGIS_texture_edge_clamp = 1; - public const int GL_CLAMP_TO_EDGE_SGIS = 0x812F; - public const int GL_SGIS_texture_filter4 = 1; - public const int GL_FILTER4_SGIS = 0x8146; - public const int GL_TEXTURE_FILTER4_SIZE_SGIS = 0x8147; - public const int GL_SGIS_texture_lod = 1; - public const int GL_TEXTURE_MIN_LOD_SGIS = 0x813A; - public const int GL_TEXTURE_MAX_LOD_SGIS = 0x813B; - public const int GL_TEXTURE_BASE_LEVEL_SGIS = 0x813C; - public const int GL_TEXTURE_MAX_LEVEL_SGIS = 0x813D; - public const int GL_SGIS_texture_select = 1; - public const int GL_DUAL_ALPHA4_SGIS = 0x8110; - public const int GL_DUAL_ALPHA8_SGIS = 0x8111; - public const int GL_DUAL_ALPHA12_SGIS = 0x8112; - public const int GL_DUAL_ALPHA16_SGIS = 0x8113; - public const int GL_DUAL_LUMINANCE4_SGIS = 0x8114; - public const int GL_DUAL_LUMINANCE8_SGIS = 0x8115; - public const int GL_DUAL_LUMINANCE12_SGIS = 0x8116; - public const int GL_DUAL_LUMINANCE16_SGIS = 0x8117; - public const int GL_DUAL_INTENSITY4_SGIS = 0x8118; - public const int GL_DUAL_INTENSITY8_SGIS = 0x8119; - public const int GL_DUAL_INTENSITY12_SGIS = 0x811A; - public const int GL_DUAL_INTENSITY16_SGIS = 0x811B; - public const int GL_DUAL_LUMINANCE_ALPHA4_SGIS = 0x811C; - public const int GL_DUAL_LUMINANCE_ALPHA8_SGIS = 0x811D; - public const int GL_QUAD_ALPHA4_SGIS = 0x811E; - public const int GL_QUAD_ALPHA8_SGIS = 0x811F; - public const int GL_QUAD_LUMINANCE4_SGIS = 0x8120; - public const int GL_QUAD_LUMINANCE8_SGIS = 0x8121; - public const int GL_QUAD_INTENSITY4_SGIS = 0x8122; - public const int GL_QUAD_INTENSITY8_SGIS = 0x8123; - public const int GL_DUAL_TEXTURE_SELECT_SGIS = 0x8124; - public const int GL_QUAD_TEXTURE_SELECT_SGIS = 0x8125; - public const int GL_SGIX_async = 1; - public const int GL_ASYNC_MARKER_SGIX = 0x8329; - public const int GL_SGIX_async_histogram = 1; - public const int GL_ASYNC_HISTOGRAM_SGIX = 0x832C; - public const int GL_MAX_ASYNC_HISTOGRAM_SGIX = 0x832D; - public const int GL_SGIX_async_pixel = 1; + public const int GL_LINE_QUALITY_HINT_SGIX = 0x835B; public const int GL_ASYNC_TEX_IMAGE_SGIX = 0x835C; public const int GL_ASYNC_DRAW_PIXELS_SGIX = 0x835D; public const int GL_ASYNC_READ_PIXELS_SGIX = 0x835E; public const int GL_MAX_ASYNC_TEX_IMAGE_SGIX = 0x835F; public const int GL_MAX_ASYNC_DRAW_PIXELS_SGIX = 0x8360; public const int GL_MAX_ASYNC_READ_PIXELS_SGIX = 0x8361; - public const int GL_SGIX_blend_alpha_minmax = 1; - public const int GL_ALPHA_MIN_SGIX = 0x8320; - public const int GL_ALPHA_MAX_SGIX = 0x8321; - public const int GL_SGIX_calligraphic_fragment = 1; - public const int GL_CALLIGRAPHIC_FRAGMENT_SGIX = 0x8183; - public const int GL_SGIX_clipmap = 1; - public const int GL_LINEAR_CLIPMAP_LINEAR_SGIX = 0x8170; - public const int GL_TEXTURE_CLIPMAP_CENTER_SGIX = 0x8171; - public const int GL_TEXTURE_CLIPMAP_FRAME_SGIX = 0x8172; - public const int GL_TEXTURE_CLIPMAP_OFFSET_SGIX = 0x8173; - public const int GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX = 0x8174; - public const int GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX = 0x8175; - public const int GL_TEXTURE_CLIPMAP_DEPTH_SGIX = 0x8176; - public const int GL_MAX_CLIPMAP_DEPTH_SGIX = 0x8177; - public const int GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX = 0x8178; - public const int GL_NEAREST_CLIPMAP_NEAREST_SGIX = 0x844D; - public const int GL_NEAREST_CLIPMAP_LINEAR_SGIX = 0x844E; - public const int GL_LINEAR_CLIPMAP_NEAREST_SGIX = 0x844F; - public const int GL_SGIX_convolution_accuracy = 1; - public const int GL_CONVOLUTION_HINT_SGIX = 0x8316; - public const int GL_SGIX_depth_pass_instrument = 1; - public const int GL_SGIX_depth_texture = 1; - public const int GL_DEPTH_COMPONENT16_SGIX = 0x81A5; - public const int GL_DEPTH_COMPONENT24_SGIX = 0x81A6; - public const int GL_DEPTH_COMPONENT32_SGIX = 0x81A7; - public const int GL_SGIX_flush_raster = 1; - public const int GL_SGIX_fog_offset = 1; - public const int GL_FOG_OFFSET_SGIX = 0x8198; - public const int GL_FOG_OFFSET_VALUE_SGIX = 0x8199; - public const int GL_SGIX_fragment_lighting = 1; + public const int GL_UNSIGNED_BYTE_2_3_3_REV = 0x8362; + public const int GL_UNSIGNED_BYTE_2_3_3_REV_EXT = 0x8362; + public const int GL_UNSIGNED_SHORT_5_6_5 = 0x8363; + public const int GL_UNSIGNED_SHORT_5_6_5_EXT = 0x8363; + public const int GL_UNSIGNED_SHORT_5_6_5_REV = 0x8364; + public const int GL_UNSIGNED_SHORT_5_6_5_REV_EXT = 0x8364; + public const int GL_UNSIGNED_SHORT_4_4_4_4_REV = 0x8365; + public const int GL_UNSIGNED_SHORT_4_4_4_4_REV_EXT = 0x8365; + public const int GL_UNSIGNED_SHORT_4_4_4_4_REV_IMG = 0x8365; + public const int GL_UNSIGNED_SHORT_1_5_5_5_REV = 0x8366; + public const int GL_UNSIGNED_SHORT_1_5_5_5_REV_EXT = 0x8366; + public const int GL_UNSIGNED_INT_8_8_8_8_REV = 0x8367; + public const int GL_UNSIGNED_INT_8_8_8_8_REV_EXT = 0x8367; + public const int GL_UNSIGNED_INT_2_10_10_10_REV = 0x8368; + public const int GL_UNSIGNED_INT_2_10_10_10_REV_EXT = 0x8368; + public const int GL_TEXTURE_MAX_CLAMP_S_SGIX = 0x8369; + public const int GL_TEXTURE_MAX_CLAMP_T_SGIX = 0x836A; + public const int GL_TEXTURE_MAX_CLAMP_R_SGIX = 0x836B; + // VENDOR: HP + public const int GL_MIRRORED_REPEAT = 0x8370; + public const int GL_MIRRORED_REPEAT_ARB = 0x8370; + public const int GL_MIRRORED_REPEAT_IBM = 0x8370; + public const int GL_MIRRORED_REPEAT_OES = 0x8370; + // VENDOR: IBM + // VENDOR: S3 + public const int GL_RGB_S3TC = 0x83A0; + public const int GL_RGB4_S3TC = 0x83A1; + public const int GL_RGBA_S3TC = 0x83A2; + public const int GL_RGBA4_S3TC = 0x83A3; + public const int GL_RGBA_DXT5_S3TC = 0x83A4; + public const int GL_RGBA4_DXT5_S3TC = 0x83A5; + // VENDOR: SGI + // Most of this could be reclaimed + public const int GL_VERTEX_PRECLIP_SGIX = 0x83EE; + public const int GL_VERTEX_PRECLIP_HINT_SGIX = 0x83EF; + // VENDOR: INTEL + public const int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0; + public const int GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1; + public const int GL_COMPRESSED_RGBA_S3TC_DXT3_ANGLE = 0x83F2; + public const int GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2; + public const int GL_COMPRESSED_RGBA_S3TC_DXT5_ANGLE = 0x83F3; + public const int GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3; + public const int GL_PARALLEL_ARRAYS_INTEL = 0x83F4; + public const int GL_VERTEX_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F5; + public const int GL_NORMAL_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F6; + public const int GL_COLOR_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F7; + public const int GL_TEXTURE_COORD_ARRAY_PARALLEL_POINTERS_INTEL = 0x83F8; + public const int GL_PERFQUERY_DONOT_FLUSH_INTEL = 0x83F9; + public const int GL_PERFQUERY_FLUSH_INTEL = 0x83FA; + public const int GL_PERFQUERY_WAIT_INTEL = 0x83FB; + public const int GL_BLACKHOLE_RENDER_INTEL = 0x83FC; + public const int GL_CONSERVATIVE_RASTERIZATION_INTEL = 0x83FE; + public const int GL_TEXTURE_MEMORY_LAYOUT_INTEL = 0x83FF; + // VENDOR: SGI public const int GL_FRAGMENT_LIGHTING_SGIX = 0x8400; public const int GL_FRAGMENT_COLOR_MATERIAL_SGIX = 0x8401; public const int GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX = 0x8402; @@ -5298,150 +2067,465 @@ public static class GlConsts public const int GL_FRAGMENT_LIGHT5_SGIX = 0x8411; public const int GL_FRAGMENT_LIGHT6_SGIX = 0x8412; public const int GL_FRAGMENT_LIGHT7_SGIX = 0x8413; - public const int GL_SGIX_framezoom = 1; - public const int GL_FRAMEZOOM_SGIX = 0x818B; - public const int GL_FRAMEZOOM_FACTOR_SGIX = 0x818C; - public const int GL_MAX_FRAMEZOOM_FACTOR_SGIX = 0x818D; - public const int GL_SGIX_igloo_interface = 1; - public const int GL_SGIX_instruments = 1; - public const int GL_INSTRUMENT_BUFFER_POINTER_SGIX = 0x8180; - public const int GL_INSTRUMENT_MEASUREMENTS_SGIX = 0x8181; - public const int GL_SGIX_interlace = 1; - public const int GL_INTERLACE_SGIX = 0x8094; - public const int GL_SGIX_ir_instrument1 = 1; - public const int GL_IR_INSTRUMENT1_SGIX = 0x817F; - public const int GL_SGIX_list_priority = 1; - public const int GL_LIST_PRIORITY_SGIX = 0x8182; - public const int GL_SGIX_pixel_texture = 1; - public const int GL_PIXEL_TEX_GEN_SGIX = 0x8139; - public const int GL_PIXEL_TEX_GEN_MODE_SGIX = 0x832B; - public const int GL_SGIX_pixel_tiles = 1; - public const int GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX = 0x813E; - public const int GL_PIXEL_TILE_CACHE_INCREMENT_SGIX = 0x813F; - public const int GL_PIXEL_TILE_WIDTH_SGIX = 0x8140; - public const int GL_PIXEL_TILE_HEIGHT_SGIX = 0x8141; - public const int GL_PIXEL_TILE_GRID_WIDTH_SGIX = 0x8142; - public const int GL_PIXEL_TILE_GRID_HEIGHT_SGIX = 0x8143; - public const int GL_PIXEL_TILE_GRID_DEPTH_SGIX = 0x8144; - public const int GL_PIXEL_TILE_CACHE_SIZE_SGIX = 0x8145; - public const int GL_SGIX_polynomial_ffd = 1; - public const int GL_TEXTURE_DEFORMATION_BIT_SGIX = 0x00000001; - public const int GL_GEOMETRY_DEFORMATION_BIT_SGIX = 0x00000002; - public const int GL_GEOMETRY_DEFORMATION_SGIX = 0x8194; - public const int GL_TEXTURE_DEFORMATION_SGIX = 0x8195; - public const int GL_DEFORMATIONS_MASK_SGIX = 0x8196; - public const int GL_MAX_DEFORMATION_ORDER_SGIX = 0x8197; - public const int GL_SGIX_reference_plane = 1; - public const int GL_REFERENCE_PLANE_SGIX = 0x817D; - public const int GL_REFERENCE_PLANE_EQUATION_SGIX = 0x817E; - public const int GL_SGIX_resample = 1; public const int GL_PACK_RESAMPLE_SGIX = 0x842E; public const int GL_UNPACK_RESAMPLE_SGIX = 0x842F; + public const int GL_RESAMPLE_DECIMATE_SGIX = 0x8430; public const int GL_RESAMPLE_REPLICATE_SGIX = 0x8433; public const int GL_RESAMPLE_ZERO_FILL_SGIX = 0x8434; - public const int GL_RESAMPLE_DECIMATE_SGIX = 0x8430; - public const int GL_SGIX_scalebias_hint = 1; - public const int GL_SCALEBIAS_HINT_SGIX = 0x8322; - public const int GL_SGIX_shadow = 1; - public const int GL_TEXTURE_COMPARE_SGIX = 0x819A; - public const int GL_TEXTURE_COMPARE_OPERATOR_SGIX = 0x819B; - public const int GL_TEXTURE_LEQUAL_R_SGIX = 0x819C; - public const int GL_TEXTURE_GEQUAL_R_SGIX = 0x819D; - public const int GL_SGIX_shadow_ambient = 1; - public const int GL_SHADOW_AMBIENT_SGIX = 0x80BF; - public const int GL_SGIX_sprite = 1; - public const int GL_SPRITE_SGIX = 0x8148; - public const int GL_SPRITE_MODE_SGIX = 0x8149; - public const int GL_SPRITE_AXIS_SGIX = 0x814A; - public const int GL_SPRITE_TRANSLATION_SGIX = 0x814B; - public const int GL_SPRITE_AXIAL_SGIX = 0x814C; - public const int GL_SPRITE_OBJECT_ALIGNED_SGIX = 0x814D; - public const int GL_SPRITE_EYE_ALIGNED_SGIX = 0x814E; - public const int GL_SGIX_subsample = 1; + public const int GL_TANGENT_ARRAY_EXT = 0x8439; + public const int GL_BINORMAL_ARRAY_EXT = 0x843A; + public const int GL_CURRENT_TANGENT_EXT = 0x843B; + public const int GL_CURRENT_BINORMAL_EXT = 0x843C; + public const int GL_TANGENT_ARRAY_TYPE_EXT = 0x843E; + public const int GL_TANGENT_ARRAY_STRIDE_EXT = 0x843F; + public const int GL_BINORMAL_ARRAY_TYPE_EXT = 0x8440; + public const int GL_BINORMAL_ARRAY_STRIDE_EXT = 0x8441; + public const int GL_TANGENT_ARRAY_POINTER_EXT = 0x8442; + public const int GL_BINORMAL_ARRAY_POINTER_EXT = 0x8443; + public const int GL_MAP1_TANGENT_EXT = 0x8444; + public const int GL_MAP2_TANGENT_EXT = 0x8445; + public const int GL_MAP1_BINORMAL_EXT = 0x8446; + public const int GL_MAP2_BINORMAL_EXT = 0x8447; + public const int GL_NEAREST_CLIPMAP_NEAREST_SGIX = 0x844D; + public const int GL_NEAREST_CLIPMAP_LINEAR_SGIX = 0x844E; + public const int GL_LINEAR_CLIPMAP_NEAREST_SGIX = 0x844F; + public const int GL_FOG_COORDINATE_SOURCE = 0x8450; + public const int GL_FOG_COORDINATE_SOURCE_EXT = 0x8450; + public const int GL_FOG_COORD_SRC = 0x8450; + public const int GL_FOG_COORDINATE = 0x8451; + public const int GL_FOG_COORD = 0x8451; + public const int GL_FOG_COORDINATE_EXT = 0x8451; + public const int GL_FRAGMENT_DEPTH = 0x8452; + public const int GL_FRAGMENT_DEPTH_EXT = 0x8452; + public const int GL_CURRENT_FOG_COORDINATE = 0x8453; + public const int GL_CURRENT_FOG_COORD = 0x8453; + public const int GL_CURRENT_FOG_COORDINATE_EXT = 0x8453; + public const int GL_FOG_COORDINATE_ARRAY_TYPE = 0x8454; + public const int GL_FOG_COORDINATE_ARRAY_TYPE_EXT = 0x8454; + public const int GL_FOG_COORD_ARRAY_TYPE = 0x8454; + public const int GL_FOG_COORDINATE_ARRAY_STRIDE = 0x8455; + public const int GL_FOG_COORDINATE_ARRAY_STRIDE_EXT = 0x8455; + public const int GL_FOG_COORD_ARRAY_STRIDE = 0x8455; + public const int GL_FOG_COORDINATE_ARRAY_POINTER = 0x8456; + public const int GL_FOG_COORDINATE_ARRAY_POINTER_EXT = 0x8456; + public const int GL_FOG_COORD_ARRAY_POINTER = 0x8456; + public const int GL_FOG_COORDINATE_ARRAY = 0x8457; + public const int GL_FOG_COORDINATE_ARRAY_EXT = 0x8457; + public const int GL_FOG_COORD_ARRAY = 0x8457; + public const int GL_COLOR_SUM = 0x8458; + public const int GL_COLOR_SUM_ARB = 0x8458; + public const int GL_COLOR_SUM_EXT = 0x8458; + public const int GL_CURRENT_SECONDARY_COLOR = 0x8459; + public const int GL_CURRENT_SECONDARY_COLOR_EXT = 0x8459; + public const int GL_SECONDARY_COLOR_ARRAY_SIZE = 0x845A; + public const int GL_SECONDARY_COLOR_ARRAY_SIZE_EXT = 0x845A; + public const int GL_SECONDARY_COLOR_ARRAY_TYPE = 0x845B; + public const int GL_SECONDARY_COLOR_ARRAY_TYPE_EXT = 0x845B; + public const int GL_SECONDARY_COLOR_ARRAY_STRIDE = 0x845C; + public const int GL_SECONDARY_COLOR_ARRAY_STRIDE_EXT = 0x845C; + public const int GL_SECONDARY_COLOR_ARRAY_POINTER = 0x845D; + public const int GL_SECONDARY_COLOR_ARRAY_POINTER_EXT = 0x845D; + public const int GL_SECONDARY_COLOR_ARRAY = 0x845E; + public const int GL_SECONDARY_COLOR_ARRAY_EXT = 0x845E; + public const int GL_CURRENT_RASTER_SECONDARY_COLOR = 0x845F; + public const int GL_ALIASED_POINT_SIZE_RANGE = 0x846D; + public const int GL_ALIASED_LINE_WIDTH_RANGE = 0x846E; + // VENDOR: AMD + // VENDOR: REND + public const int GL_SCREEN_COORDINATES_REND = 0x8490; + public const int GL_INVERTED_SCREEN_W_REND = 0x8491; + // VENDOR: AMD + // VENDOR: ARB + public const int GL_TEXTURE0 = 0x84C0; + public const int GL_TEXTURE0_ARB = 0x84C0; + public const int GL_TEXTURE1 = 0x84C1; + public const int GL_TEXTURE1_ARB = 0x84C1; + public const int GL_TEXTURE2 = 0x84C2; + public const int GL_TEXTURE2_ARB = 0x84C2; + public const int GL_TEXTURE3 = 0x84C3; + public const int GL_TEXTURE3_ARB = 0x84C3; + public const int GL_TEXTURE4 = 0x84C4; + public const int GL_TEXTURE4_ARB = 0x84C4; + public const int GL_TEXTURE5 = 0x84C5; + public const int GL_TEXTURE5_ARB = 0x84C5; + public const int GL_TEXTURE6 = 0x84C6; + public const int GL_TEXTURE6_ARB = 0x84C6; + public const int GL_TEXTURE7 = 0x84C7; + public const int GL_TEXTURE7_ARB = 0x84C7; + public const int GL_TEXTURE8 = 0x84C8; + public const int GL_TEXTURE8_ARB = 0x84C8; + public const int GL_TEXTURE9 = 0x84C9; + public const int GL_TEXTURE9_ARB = 0x84C9; + public const int GL_TEXTURE10 = 0x84CA; + public const int GL_TEXTURE10_ARB = 0x84CA; + public const int GL_TEXTURE11 = 0x84CB; + public const int GL_TEXTURE11_ARB = 0x84CB; + public const int GL_TEXTURE12 = 0x84CC; + public const int GL_TEXTURE12_ARB = 0x84CC; + public const int GL_TEXTURE13 = 0x84CD; + public const int GL_TEXTURE13_ARB = 0x84CD; + public const int GL_TEXTURE14 = 0x84CE; + public const int GL_TEXTURE14_ARB = 0x84CE; + public const int GL_TEXTURE15 = 0x84CF; + public const int GL_TEXTURE15_ARB = 0x84CF; + public const int GL_TEXTURE16 = 0x84D0; + public const int GL_TEXTURE16_ARB = 0x84D0; + public const int GL_TEXTURE17 = 0x84D1; + public const int GL_TEXTURE17_ARB = 0x84D1; + public const int GL_TEXTURE18 = 0x84D2; + public const int GL_TEXTURE18_ARB = 0x84D2; + public const int GL_TEXTURE19 = 0x84D3; + public const int GL_TEXTURE19_ARB = 0x84D3; + public const int GL_TEXTURE20 = 0x84D4; + public const int GL_TEXTURE20_ARB = 0x84D4; + public const int GL_TEXTURE21 = 0x84D5; + public const int GL_TEXTURE21_ARB = 0x84D5; + public const int GL_TEXTURE22 = 0x84D6; + public const int GL_TEXTURE22_ARB = 0x84D6; + public const int GL_TEXTURE23 = 0x84D7; + public const int GL_TEXTURE23_ARB = 0x84D7; + public const int GL_TEXTURE24 = 0x84D8; + public const int GL_TEXTURE24_ARB = 0x84D8; + public const int GL_TEXTURE25 = 0x84D9; + public const int GL_TEXTURE25_ARB = 0x84D9; + public const int GL_TEXTURE26 = 0x84DA; + public const int GL_TEXTURE26_ARB = 0x84DA; + public const int GL_TEXTURE27 = 0x84DB; + public const int GL_TEXTURE27_ARB = 0x84DB; + public const int GL_TEXTURE28 = 0x84DC; + public const int GL_TEXTURE28_ARB = 0x84DC; + public const int GL_TEXTURE29 = 0x84DD; + public const int GL_TEXTURE29_ARB = 0x84DD; + public const int GL_TEXTURE30 = 0x84DE; + public const int GL_TEXTURE30_ARB = 0x84DE; + public const int GL_TEXTURE31 = 0x84DF; + public const int GL_TEXTURE31_ARB = 0x84DF; + public const int GL_ACTIVE_TEXTURE = 0x84E0; + public const int GL_ACTIVE_TEXTURE_ARB = 0x84E0; + public const int GL_CLIENT_ACTIVE_TEXTURE = 0x84E1; + public const int GL_CLIENT_ACTIVE_TEXTURE_ARB = 0x84E1; + public const int GL_MAX_TEXTURE_UNITS = 0x84E2; + public const int GL_MAX_TEXTURE_UNITS_ARB = 0x84E2; + public const int GL_TRANSPOSE_MODELVIEW_MATRIX = 0x84E3; + public const int GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = 0x84E3; + public const int GL_PATH_TRANSPOSE_MODELVIEW_MATRIX_NV = 0x84E3; + public const int GL_TRANSPOSE_PROJECTION_MATRIX = 0x84E4; + public const int GL_TRANSPOSE_PROJECTION_MATRIX_ARB = 0x84E4; + public const int GL_PATH_TRANSPOSE_PROJECTION_MATRIX_NV = 0x84E4; + public const int GL_TRANSPOSE_TEXTURE_MATRIX = 0x84E5; + public const int GL_TRANSPOSE_TEXTURE_MATRIX_ARB = 0x84E5; + public const int GL_TRANSPOSE_COLOR_MATRIX = 0x84E6; + public const int GL_TRANSPOSE_COLOR_MATRIX_ARB = 0x84E6; + public const int GL_SUBTRACT = 0x84E7; + public const int GL_SUBTRACT_ARB = 0x84E7; + public const int GL_MAX_RENDERBUFFER_SIZE = 0x84E8; + public const int GL_MAX_RENDERBUFFER_SIZE_EXT = 0x84E8; + public const int GL_MAX_RENDERBUFFER_SIZE_OES = 0x84E8; + public const int GL_COMPRESSED_ALPHA = 0x84E9; + public const int GL_COMPRESSED_ALPHA_ARB = 0x84E9; + public const int GL_COMPRESSED_LUMINANCE = 0x84EA; + public const int GL_COMPRESSED_LUMINANCE_ARB = 0x84EA; + public const int GL_COMPRESSED_LUMINANCE_ALPHA = 0x84EB; + public const int GL_COMPRESSED_LUMINANCE_ALPHA_ARB = 0x84EB; + public const int GL_COMPRESSED_INTENSITY = 0x84EC; + public const int GL_COMPRESSED_INTENSITY_ARB = 0x84EC; + public const int GL_COMPRESSED_RGB = 0x84ED; + public const int GL_COMPRESSED_RGB_ARB = 0x84ED; + public const int GL_COMPRESSED_RGBA = 0x84EE; + public const int GL_COMPRESSED_RGBA_ARB = 0x84EE; + public const int GL_TEXTURE_COMPRESSION_HINT = 0x84EF; + public const int GL_TEXTURE_COMPRESSION_HINT_ARB = 0x84EF; + // VENDOR: NV + public const int GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER = 0x84F0; + public const int GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x84F1; + public const int GL_ALL_COMPLETED_NV = 0x84F2; + public const int GL_FENCE_STATUS_NV = 0x84F3; + public const int GL_FENCE_CONDITION_NV = 0x84F4; + public const int GL_TEXTURE_RECTANGLE = 0x84F5; + public const int GL_TEXTURE_RECTANGLE_ARB = 0x84F5; + public const int GL_TEXTURE_RECTANGLE_NV = 0x84F5; + public const int GL_TEXTURE_BINDING_RECTANGLE = 0x84F6; + public const int GL_TEXTURE_BINDING_RECTANGLE_ARB = 0x84F6; + public const int GL_TEXTURE_BINDING_RECTANGLE_NV = 0x84F6; + public const int GL_PROXY_TEXTURE_RECTANGLE = 0x84F7; + public const int GL_PROXY_TEXTURE_RECTANGLE_ARB = 0x84F7; + public const int GL_PROXY_TEXTURE_RECTANGLE_NV = 0x84F7; + public const int GL_MAX_RECTANGLE_TEXTURE_SIZE = 0x84F8; + public const int GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB = 0x84F8; + public const int GL_MAX_RECTANGLE_TEXTURE_SIZE_NV = 0x84F8; + public const int GL_DEPTH_STENCIL = 0x84F9; + public const int GL_DEPTH_STENCIL_EXT = 0x84F9; + public const int GL_DEPTH_STENCIL_NV = 0x84F9; + public const int GL_DEPTH_STENCIL_OES = 0x84F9; + public const int GL_UNSIGNED_INT_24_8 = 0x84FA; + public const int GL_UNSIGNED_INT_24_8_EXT = 0x84FA; + public const int GL_UNSIGNED_INT_24_8_NV = 0x84FA; + public const int GL_UNSIGNED_INT_24_8_OES = 0x84FA; + public const int GL_MAX_TEXTURE_LOD_BIAS = 0x84FD; + public const int GL_MAX_TEXTURE_LOD_BIAS_EXT = 0x84FD; + public const int GL_TEXTURE_MAX_ANISOTROPY = 0x84FE; + public const int GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE; + public const int GL_MAX_TEXTURE_MAX_ANISOTROPY = 0x84FF; + public const int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF; + public const int GL_TEXTURE_FILTER_CONTROL = 0x8500; + public const int GL_TEXTURE_FILTER_CONTROL_EXT = 0x8500; + public const int GL_TEXTURE_LOD_BIAS = 0x8501; + public const int GL_TEXTURE_LOD_BIAS_EXT = 0x8501; + public const int GL_MODELVIEW1_STACK_DEPTH_EXT = 0x8502; + public const int GL_COMBINE4_NV = 0x8503; + public const int GL_MAX_SHININESS_NV = 0x8504; + public const int GL_MAX_SPOT_EXPONENT_NV = 0x8505; + public const int GL_MODELVIEW1_MATRIX_EXT = 0x8506; + public const int GL_INCR_WRAP = 0x8507; + public const int GL_INCR_WRAP_EXT = 0x8507; + public const int GL_INCR_WRAP_OES = 0x8507; + public const int GL_DECR_WRAP = 0x8508; + public const int GL_DECR_WRAP_EXT = 0x8508; + public const int GL_DECR_WRAP_OES = 0x8508; + public const int GL_VERTEX_WEIGHTING_EXT = 0x8509; + public const int GL_MODELVIEW1_ARB = 0x850A; + public const int GL_MODELVIEW1_EXT = 0x850A; + public const int GL_CURRENT_VERTEX_WEIGHT_EXT = 0x850B; + public const int GL_VERTEX_WEIGHT_ARRAY_EXT = 0x850C; + public const int GL_VERTEX_WEIGHT_ARRAY_SIZE_EXT = 0x850D; + public const int GL_VERTEX_WEIGHT_ARRAY_TYPE_EXT = 0x850E; + public const int GL_VERTEX_WEIGHT_ARRAY_STRIDE_EXT = 0x850F; + public const int GL_VERTEX_WEIGHT_ARRAY_POINTER_EXT = 0x8510; + public const int GL_NORMAL_MAP = 0x8511; + public const int GL_NORMAL_MAP_ARB = 0x8511; + public const int GL_NORMAL_MAP_EXT = 0x8511; + public const int GL_NORMAL_MAP_NV = 0x8511; + public const int GL_NORMAL_MAP_OES = 0x8511; + public const int GL_REFLECTION_MAP = 0x8512; + public const int GL_REFLECTION_MAP_ARB = 0x8512; + public const int GL_REFLECTION_MAP_EXT = 0x8512; + public const int GL_REFLECTION_MAP_NV = 0x8512; + public const int GL_REFLECTION_MAP_OES = 0x8512; + public const int GL_TEXTURE_CUBE_MAP = 0x8513; + public const int GL_TEXTURE_CUBE_MAP_ARB = 0x8513; + public const int GL_TEXTURE_CUBE_MAP_EXT = 0x8513; + public const int GL_TEXTURE_CUBE_MAP_OES = 0x8513; + public const int GL_TEXTURE_BINDING_CUBE_MAP = 0x8514; + public const int GL_TEXTURE_BINDING_CUBE_MAP_ARB = 0x8514; + public const int GL_TEXTURE_BINDING_CUBE_MAP_EXT = 0x8514; + public const int GL_TEXTURE_BINDING_CUBE_MAP_OES = 0x8514; + public const int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515; + public const int GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = 0x8515; + public const int GL_TEXTURE_CUBE_MAP_POSITIVE_X_EXT = 0x8515; + public const int GL_TEXTURE_CUBE_MAP_POSITIVE_X_OES = 0x8515; + public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516; + public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = 0x8516; + public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_EXT = 0x8516; + public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_X_OES = 0x8516; + public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517; + public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = 0x8517; + public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_EXT = 0x8517; + public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Y_OES = 0x8517; + public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518; + public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = 0x8518; + public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_EXT = 0x8518; + public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_OES = 0x8518; + public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519; + public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = 0x8519; + public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_EXT = 0x8519; + public const int GL_TEXTURE_CUBE_MAP_POSITIVE_Z_OES = 0x8519; + public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A; + public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = 0x851A; + public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_EXT = 0x851A; + public const int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_OES = 0x851A; + public const int GL_PROXY_TEXTURE_CUBE_MAP = 0x851B; + public const int GL_PROXY_TEXTURE_CUBE_MAP_ARB = 0x851B; + public const int GL_PROXY_TEXTURE_CUBE_MAP_EXT = 0x851B; + public const int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C; + public const int GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB = 0x851C; + public const int GL_MAX_CUBE_MAP_TEXTURE_SIZE_EXT = 0x851C; + public const int GL_MAX_CUBE_MAP_TEXTURE_SIZE_OES = 0x851C; + public const int GL_VERTEX_ARRAY_RANGE_APPLE = 0x851D; + public const int GL_VERTEX_ARRAY_RANGE_NV = 0x851D; + public const int GL_VERTEX_ARRAY_RANGE_LENGTH_APPLE = 0x851E; + public const int GL_VERTEX_ARRAY_RANGE_LENGTH_NV = 0x851E; + public const int GL_VERTEX_ARRAY_RANGE_VALID_NV = 0x851F; + public const int GL_VERTEX_ARRAY_STORAGE_HINT_APPLE = 0x851F; + public const int GL_MAX_VERTEX_ARRAY_RANGE_ELEMENT_NV = 0x8520; + public const int GL_VERTEX_ARRAY_RANGE_POINTER_APPLE = 0x8521; + public const int GL_VERTEX_ARRAY_RANGE_POINTER_NV = 0x8521; + public const int GL_REGISTER_COMBINERS_NV = 0x8522; + public const int GL_VARIABLE_A_NV = 0x8523; + public const int GL_VARIABLE_B_NV = 0x8524; + public const int GL_VARIABLE_C_NV = 0x8525; + public const int GL_VARIABLE_D_NV = 0x8526; + public const int GL_VARIABLE_E_NV = 0x8527; + public const int GL_VARIABLE_F_NV = 0x8528; + public const int GL_VARIABLE_G_NV = 0x8529; + public const int GL_CONSTANT_COLOR0_NV = 0x852A; + public const int GL_CONSTANT_COLOR1_NV = 0x852B; + public const int GL_PRIMARY_COLOR_NV = 0x852C; + public const int GL_SECONDARY_COLOR_NV = 0x852D; + public const int GL_SPARE0_NV = 0x852E; + public const int GL_SPARE1_NV = 0x852F; + public const int GL_DISCARD_NV = 0x8530; + public const int GL_E_TIMES_F_NV = 0x8531; + public const int GL_SPARE0_PLUS_SECONDARY_COLOR_NV = 0x8532; + public const int GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV = 0x8533; + public const int GL_MULTISAMPLE_FILTER_HINT_NV = 0x8534; + public const int GL_PER_STAGE_CONSTANTS_NV = 0x8535; + public const int GL_UNSIGNED_IDENTITY_NV = 0x8536; + public const int GL_UNSIGNED_INVERT_NV = 0x8537; + public const int GL_EXPAND_NORMAL_NV = 0x8538; + public const int GL_EXPAND_NEGATE_NV = 0x8539; + public const int GL_HALF_BIAS_NORMAL_NV = 0x853A; + public const int GL_HALF_BIAS_NEGATE_NV = 0x853B; + public const int GL_SIGNED_IDENTITY_NV = 0x853C; + public const int GL_SIGNED_NEGATE_NV = 0x853D; + public const int GL_SCALE_BY_TWO_NV = 0x853E; + public const int GL_SCALE_BY_FOUR_NV = 0x853F; + public const int GL_SCALE_BY_ONE_HALF_NV = 0x8540; + public const int GL_BIAS_BY_NEGATIVE_ONE_HALF_NV = 0x8541; + public const int GL_COMBINER_INPUT_NV = 0x8542; + public const int GL_COMBINER_MAPPING_NV = 0x8543; + public const int GL_COMBINER_COMPONENT_USAGE_NV = 0x8544; + public const int GL_COMBINER_AB_DOT_PRODUCT_NV = 0x8545; + public const int GL_COMBINER_CD_DOT_PRODUCT_NV = 0x8546; + public const int GL_COMBINER_MUX_SUM_NV = 0x8547; + public const int GL_COMBINER_SCALE_NV = 0x8548; + public const int GL_COMBINER_BIAS_NV = 0x8549; + public const int GL_COMBINER_AB_OUTPUT_NV = 0x854A; + public const int GL_COMBINER_CD_OUTPUT_NV = 0x854B; + public const int GL_COMBINER_SUM_OUTPUT_NV = 0x854C; + public const int GL_MAX_GENERAL_COMBINERS_NV = 0x854D; + public const int GL_NUM_GENERAL_COMBINERS_NV = 0x854E; + public const int GL_COLOR_SUM_CLAMP_NV = 0x854F; + public const int GL_COMBINER0_NV = 0x8550; + public const int GL_COMBINER1_NV = 0x8551; + public const int GL_COMBINER2_NV = 0x8552; + public const int GL_COMBINER3_NV = 0x8553; + public const int GL_COMBINER4_NV = 0x8554; + public const int GL_COMBINER5_NV = 0x8555; + public const int GL_COMBINER6_NV = 0x8556; + public const int GL_COMBINER7_NV = 0x8557; + public const int GL_PRIMITIVE_RESTART_NV = 0x8558; + public const int GL_PRIMITIVE_RESTART_INDEX_NV = 0x8559; + public const int GL_FOG_DISTANCE_MODE_NV = 0x855A; + public const int GL_EYE_RADIAL_NV = 0x855B; + public const int GL_EYE_PLANE_ABSOLUTE_NV = 0x855C; + public const int GL_EMBOSS_LIGHT_NV = 0x855D; + public const int GL_EMBOSS_CONSTANT_NV = 0x855E; + public const int GL_EMBOSS_MAP_NV = 0x855F; + // VENDOR: ZiiLabs + public const int GL_RED_MIN_CLAMP_INGR = 0x8560; + public const int GL_GREEN_MIN_CLAMP_INGR = 0x8561; + public const int GL_BLUE_MIN_CLAMP_INGR = 0x8562; + public const int GL_ALPHA_MIN_CLAMP_INGR = 0x8563; + public const int GL_RED_MAX_CLAMP_INGR = 0x8564; + public const int GL_GREEN_MAX_CLAMP_INGR = 0x8565; + public const int GL_BLUE_MAX_CLAMP_INGR = 0x8566; + public const int GL_ALPHA_MAX_CLAMP_INGR = 0x8567; + public const int GL_INTERLACE_READ_INGR = 0x8568; + // VENDOR: AMD/NV + public const int GL_COMBINE = 0x8570; + public const int GL_COMBINE_ARB = 0x8570; + public const int GL_COMBINE_EXT = 0x8570; + public const int GL_COMBINE_RGB = 0x8571; + public const int GL_COMBINE_RGB_ARB = 0x8571; + public const int GL_COMBINE_RGB_EXT = 0x8571; + public const int GL_COMBINE_ALPHA = 0x8572; + public const int GL_COMBINE_ALPHA_ARB = 0x8572; + public const int GL_COMBINE_ALPHA_EXT = 0x8572; + public const int GL_RGB_SCALE = 0x8573; + public const int GL_RGB_SCALE_ARB = 0x8573; + public const int GL_RGB_SCALE_EXT = 0x8573; + public const int GL_ADD_SIGNED = 0x8574; + public const int GL_ADD_SIGNED_ARB = 0x8574; + public const int GL_ADD_SIGNED_EXT = 0x8574; + public const int GL_INTERPOLATE = 0x8575; + public const int GL_INTERPOLATE_ARB = 0x8575; + public const int GL_INTERPOLATE_EXT = 0x8575; + public const int GL_CONSTANT = 0x8576; + public const int GL_CONSTANT_ARB = 0x8576; + public const int GL_CONSTANT_EXT = 0x8576; + public const int GL_CONSTANT_NV = 0x8576; + public const int GL_PRIMARY_COLOR = 0x8577; + public const int GL_PRIMARY_COLOR_ARB = 0x8577; + public const int GL_PRIMARY_COLOR_EXT = 0x8577; + public const int GL_PREVIOUS = 0x8578; + public const int GL_PREVIOUS_ARB = 0x8578; + public const int GL_PREVIOUS_EXT = 0x8578; + public const int GL_SOURCE0_RGB = 0x8580; + public const int GL_SOURCE0_RGB_ARB = 0x8580; + public const int GL_SOURCE0_RGB_EXT = 0x8580; + public const int GL_SRC0_RGB = 0x8580; + public const int GL_SOURCE1_RGB = 0x8581; + public const int GL_SOURCE1_RGB_ARB = 0x8581; + public const int GL_SOURCE1_RGB_EXT = 0x8581; + public const int GL_SRC1_RGB = 0x8581; + public const int GL_SOURCE2_RGB = 0x8582; + public const int GL_SOURCE2_RGB_ARB = 0x8582; + public const int GL_SOURCE2_RGB_EXT = 0x8582; + public const int GL_SRC2_RGB = 0x8582; + public const int GL_SOURCE3_RGB_NV = 0x8583; + public const int GL_SOURCE0_ALPHA = 0x8588; + public const int GL_SOURCE0_ALPHA_ARB = 0x8588; + public const int GL_SOURCE0_ALPHA_EXT = 0x8588; + public const int GL_SRC0_ALPHA = 0x8588; + public const int GL_SOURCE1_ALPHA = 0x8589; + public const int GL_SOURCE1_ALPHA_ARB = 0x8589; + public const int GL_SOURCE1_ALPHA_EXT = 0x8589; + public const int GL_SRC1_ALPHA = 0x8589; + public const int GL_SRC1_ALPHA_EXT = 0x8589; + public const int GL_SOURCE2_ALPHA = 0x858A; + public const int GL_SOURCE2_ALPHA_ARB = 0x858A; + public const int GL_SOURCE2_ALPHA_EXT = 0x858A; + public const int GL_SRC2_ALPHA = 0x858A; + public const int GL_SOURCE3_ALPHA_NV = 0x858B; + public const int GL_OPERAND0_RGB = 0x8590; + public const int GL_OPERAND0_RGB_ARB = 0x8590; + public const int GL_OPERAND0_RGB_EXT = 0x8590; + public const int GL_OPERAND1_RGB = 0x8591; + public const int GL_OPERAND1_RGB_ARB = 0x8591; + public const int GL_OPERAND1_RGB_EXT = 0x8591; + public const int GL_OPERAND2_RGB = 0x8592; + public const int GL_OPERAND2_RGB_ARB = 0x8592; + public const int GL_OPERAND2_RGB_EXT = 0x8592; + public const int GL_OPERAND3_RGB_NV = 0x8593; + public const int GL_OPERAND0_ALPHA = 0x8598; + public const int GL_OPERAND0_ALPHA_ARB = 0x8598; + public const int GL_OPERAND0_ALPHA_EXT = 0x8598; + public const int GL_OPERAND1_ALPHA = 0x8599; + public const int GL_OPERAND1_ALPHA_ARB = 0x8599; + public const int GL_OPERAND1_ALPHA_EXT = 0x8599; + public const int GL_OPERAND2_ALPHA = 0x859A; + public const int GL_OPERAND2_ALPHA_ARB = 0x859A; + public const int GL_OPERAND2_ALPHA_EXT = 0x859A; + public const int GL_OPERAND3_ALPHA_NV = 0x859B; + // VENDOR: SGI public const int GL_PACK_SUBSAMPLE_RATE_SGIX = 0x85A0; public const int GL_UNPACK_SUBSAMPLE_RATE_SGIX = 0x85A1; public const int GL_PIXEL_SUBSAMPLE_4444_SGIX = 0x85A2; public const int GL_PIXEL_SUBSAMPLE_2424_SGIX = 0x85A3; public const int GL_PIXEL_SUBSAMPLE_4242_SGIX = 0x85A4; - public const int GL_SGIX_tag_sample_buffer = 1; - public const int GL_SGIX_texture_add_env = 1; - public const int GL_TEXTURE_ENV_BIAS_SGIX = 0x80BE; - public const int GL_SGIX_texture_coordinate_clamp = 1; - public const int GL_TEXTURE_MAX_CLAMP_S_SGIX = 0x8369; - public const int GL_TEXTURE_MAX_CLAMP_T_SGIX = 0x836A; - public const int GL_TEXTURE_MAX_CLAMP_R_SGIX = 0x836B; - public const int GL_SGIX_texture_lod_bias = 1; - public const int GL_TEXTURE_LOD_BIAS_S_SGIX = 0x818E; - public const int GL_TEXTURE_LOD_BIAS_T_SGIX = 0x818F; - public const int GL_TEXTURE_LOD_BIAS_R_SGIX = 0x8190; - public const int GL_SGIX_texture_multi_buffer = 1; - public const int GL_TEXTURE_MULTI_BUFFER_HINT_SGIX = 0x812E; - public const int GL_SGIX_texture_scale_bias = 1; - public const int GL_POST_TEXTURE_FILTER_BIAS_SGIX = 0x8179; - public const int GL_POST_TEXTURE_FILTER_SCALE_SGIX = 0x817A; - public const int GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX = 0x817B; - public const int GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX = 0x817C; - public const int GL_SGIX_vertex_preclip = 1; - public const int GL_VERTEX_PRECLIP_SGIX = 0x83EE; - public const int GL_VERTEX_PRECLIP_HINT_SGIX = 0x83EF; - public const int GL_SGIX_ycrcb = 1; - public const int GL_YCRCB_422_SGIX = 0x81BB; - public const int GL_YCRCB_444_SGIX = 0x81BC; - public const int GL_SGIX_ycrcb_subsample = 1; - public const int GL_SGIX_ycrcba = 1; - public const int GL_YCRCB_SGIX = 0x8318; - public const int GL_YCRCBA_SGIX = 0x8319; - public const int GL_SGI_color_matrix = 1; - public const int GL_COLOR_MATRIX_SGI = 0x80B1; - public const int GL_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B2; - public const int GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI = 0x80B3; - public const int GL_POST_COLOR_MATRIX_RED_SCALE_SGI = 0x80B4; - public const int GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI = 0x80B5; - public const int GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI = 0x80B6; - public const int GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI = 0x80B7; - public const int GL_POST_COLOR_MATRIX_RED_BIAS_SGI = 0x80B8; - public const int GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI = 0x80B9; - public const int GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI = 0x80BA; - public const int GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI = 0x80BB; - public const int GL_SGI_color_table = 1; - public const int GL_COLOR_TABLE_SGI = 0x80D0; - public const int GL_POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D1; - public const int GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI = 0x80D2; - public const int GL_PROXY_COLOR_TABLE_SGI = 0x80D3; - public const int GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI = 0x80D4; - public const int GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI = 0x80D5; - public const int GL_COLOR_TABLE_SCALE_SGI = 0x80D6; - public const int GL_COLOR_TABLE_BIAS_SGI = 0x80D7; - public const int GL_COLOR_TABLE_FORMAT_SGI = 0x80D8; - public const int GL_COLOR_TABLE_WIDTH_SGI = 0x80D9; - public const int GL_COLOR_TABLE_RED_SIZE_SGI = 0x80DA; - public const int GL_COLOR_TABLE_GREEN_SIZE_SGI = 0x80DB; - public const int GL_COLOR_TABLE_BLUE_SIZE_SGI = 0x80DC; - public const int GL_COLOR_TABLE_ALPHA_SIZE_SGI = 0x80DD; - public const int GL_COLOR_TABLE_LUMINANCE_SIZE_SGI = 0x80DE; - public const int GL_COLOR_TABLE_INTENSITY_SIZE_SGI = 0x80DF; - public const int GL_SGI_texture_color_table = 1; - public const int GL_TEXTURE_COLOR_TABLE_SGI = 0x80BC; - public const int GL_PROXY_TEXTURE_COLOR_TABLE_SGI = 0x80BD; - public const int GL_SUNX_constant_data = 1; - public const int GL_UNPACK_CONSTANT_DATA_SUNX = 0x81D5; - public const int GL_TEXTURE_CONSTANT_DATA_SUNX = 0x81D6; - public const int GL_SUN_convolution_border_modes = 1; - public const int GL_WRAP_BORDER_SUN = 0x81D4; - public const int GL_SUN_global_alpha = 1; - public const int GL_GLOBAL_ALPHA_SUN = 0x81D9; - public const int GL_GLOBAL_ALPHA_FACTOR_SUN = 0x81DA; - public const int GL_SUN_mesh_array = 1; - public const int GL_QUAD_MESH_SUN = 0x8614; - public const int GL_TRIANGLE_MESH_SUN = 0x8615; - public const int GL_SUN_slice_accum = 1; - public const int GL_SLICE_ACCUM_SUN = 0x85CC; - public const int GL_SUN_triangle_list = 1; - public const int GL_RESTART_SUN = 0x0001; - public const int GL_REPLACE_MIDDLE_SUN = 0x0002; - public const int GL_REPLACE_OLDEST_SUN = 0x0003; - public const int GL_TRIANGLE_LIST_SUN = 0x81D7; - public const int GL_REPLACEMENT_CODE_SUN = 0x81D8; + public const int GL_PERTURB_EXT = 0x85AE; + public const int GL_TEXTURE_NORMAL_EXT = 0x85AF; + // VENDOR: APPLE + public const int GL_LIGHT_MODEL_SPECULAR_VECTOR_APPLE = 0x85B0; + public const int GL_TRANSFORM_HINT_APPLE = 0x85B1; + public const int GL_UNPACK_CLIENT_STORAGE_APPLE = 0x85B2; + public const int GL_BUFFER_OBJECT_APPLE = 0x85B3; + public const int GL_STORAGE_CLIENT_APPLE = 0x85B4; + public const int GL_VERTEX_ARRAY_BINDING = 0x85B5; + public const int GL_VERTEX_ARRAY_BINDING_APPLE = 0x85B5; + public const int GL_VERTEX_ARRAY_BINDING_OES = 0x85B5; + public const int GL_TEXTURE_RANGE_LENGTH_APPLE = 0x85B7; + public const int GL_TEXTURE_RANGE_POINTER_APPLE = 0x85B8; + public const int GL_YCBCR_422_APPLE = 0x85B9; + public const int GL_UNSIGNED_SHORT_8_8_APPLE = 0x85BA; + public const int GL_UNSIGNED_SHORT_8_8_MESA = 0x85BA; + public const int GL_UNSIGNED_SHORT_8_8_REV_APPLE = 0x85BB; + public const int GL_UNSIGNED_SHORT_8_8_REV_MESA = 0x85BB; + public const int GL_TEXTURE_STORAGE_HINT_APPLE = 0x85BC; + public const int GL_STORAGE_PRIVATE_APPLE = 0x85BD; + public const int GL_STORAGE_CACHED_APPLE = 0x85BE; + public const int GL_STORAGE_SHARED_APPLE = 0x85BF; + // VENDOR: SUN public const int GL_REPLACEMENT_CODE_ARRAY_SUN = 0x85C0; public const int GL_REPLACEMENT_CODE_ARRAY_TYPE_SUN = 0x85C1; public const int GL_REPLACEMENT_CODE_ARRAY_STRIDE_SUN = 0x85C2; @@ -5454,11 +2538,3583 @@ public static class GlConsts public const int GL_R1UI_T2F_V3F_SUN = 0x85C9; public const int GL_R1UI_T2F_N3F_V3F_SUN = 0x85CA; public const int GL_R1UI_T2F_C4F_N3F_V3F_SUN = 0x85CB; - public const int GL_SUN_vertex = 1; - public const int GL_WIN_phong_shading = 1; - public const int GL_PHONG_WIN = 0x80EA; - public const int GL_PHONG_HINT_WIN = 0x80EB; - public const int GL_WIN_specular_fog = 1; - public const int GL_FOG_SPECULAR_TEXTURE_WIN = 0x80EC; - } + public const int GL_SLICE_ACCUM_SUN = 0x85CC; + // VENDOR: ZiiLabs + // 3Dlabs private extension for Autodesk + // VENDOR: SGI + // VENDOR: SUN + public const int GL_QUAD_MESH_SUN = 0x8614; + public const int GL_TRIANGLE_MESH_SUN = 0x8615; + // VENDOR: NV + public const int GL_VERTEX_PROGRAM_ARB = 0x8620; + public const int GL_VERTEX_PROGRAM_NV = 0x8620; + public const int GL_VERTEX_STATE_PROGRAM_NV = 0x8621; + public const int GL_VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622; + public const int GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = 0x8622; + public const int GL_ATTRIB_ARRAY_SIZE_NV = 0x8623; + public const int GL_VERTEX_ATTRIB_ARRAY_SIZE = 0x8623; + public const int GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = 0x8623; + public const int GL_ATTRIB_ARRAY_STRIDE_NV = 0x8624; + public const int GL_VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624; + public const int GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = 0x8624; + public const int GL_ATTRIB_ARRAY_TYPE_NV = 0x8625; + public const int GL_VERTEX_ATTRIB_ARRAY_TYPE = 0x8625; + public const int GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = 0x8625; + public const int GL_CURRENT_ATTRIB_NV = 0x8626; + public const int GL_CURRENT_VERTEX_ATTRIB = 0x8626; + public const int GL_CURRENT_VERTEX_ATTRIB_ARB = 0x8626; + public const int GL_PROGRAM_LENGTH_ARB = 0x8627; + public const int GL_PROGRAM_LENGTH_NV = 0x8627; + public const int GL_PROGRAM_STRING_ARB = 0x8628; + public const int GL_PROGRAM_STRING_NV = 0x8628; + public const int GL_MODELVIEW_PROJECTION_NV = 0x8629; + public const int GL_IDENTITY_NV = 0x862A; + public const int GL_INVERSE_NV = 0x862B; + public const int GL_TRANSPOSE_NV = 0x862C; + public const int GL_INVERSE_TRANSPOSE_NV = 0x862D; + public const int GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = 0x862E; + public const int GL_MAX_TRACK_MATRIX_STACK_DEPTH_NV = 0x862E; + public const int GL_MAX_PROGRAM_MATRICES_ARB = 0x862F; + public const int GL_MAX_TRACK_MATRICES_NV = 0x862F; + public const int GL_MATRIX0_NV = 0x8630; + public const int GL_MATRIX1_NV = 0x8631; + public const int GL_MATRIX2_NV = 0x8632; + public const int GL_MATRIX3_NV = 0x8633; + public const int GL_MATRIX4_NV = 0x8634; + public const int GL_MATRIX5_NV = 0x8635; + public const int GL_MATRIX6_NV = 0x8636; + public const int GL_MATRIX7_NV = 0x8637; + public const int GL_CURRENT_MATRIX_STACK_DEPTH_ARB = 0x8640; + public const int GL_CURRENT_MATRIX_STACK_DEPTH_NV = 0x8640; + public const int GL_CURRENT_MATRIX_ARB = 0x8641; + public const int GL_CURRENT_MATRIX_NV = 0x8641; + public const int GL_VERTEX_PROGRAM_POINT_SIZE = 0x8642; + public const int GL_VERTEX_PROGRAM_POINT_SIZE_ARB = 0x8642; + public const int GL_VERTEX_PROGRAM_POINT_SIZE_NV = 0x8642; + public const int GL_PROGRAM_POINT_SIZE = 0x8642; + public const int GL_PROGRAM_POINT_SIZE_ARB = 0x8642; + public const int GL_PROGRAM_POINT_SIZE_EXT = 0x8642; + public const int GL_VERTEX_PROGRAM_TWO_SIDE = 0x8643; + public const int GL_VERTEX_PROGRAM_TWO_SIDE_ARB = 0x8643; + public const int GL_VERTEX_PROGRAM_TWO_SIDE_NV = 0x8643; + public const int GL_PROGRAM_PARAMETER_NV = 0x8644; + public const int GL_ATTRIB_ARRAY_POINTER_NV = 0x8645; + public const int GL_VERTEX_ATTRIB_ARRAY_POINTER = 0x8645; + public const int GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = 0x8645; + public const int GL_PROGRAM_TARGET_NV = 0x8646; + public const int GL_PROGRAM_RESIDENT_NV = 0x8647; + public const int GL_TRACK_MATRIX_NV = 0x8648; + public const int GL_TRACK_MATRIX_TRANSFORM_NV = 0x8649; + public const int GL_VERTEX_PROGRAM_BINDING_NV = 0x864A; + public const int GL_PROGRAM_ERROR_POSITION_ARB = 0x864B; + public const int GL_PROGRAM_ERROR_POSITION_NV = 0x864B; + public const int GL_OFFSET_TEXTURE_RECTANGLE_NV = 0x864C; + public const int GL_OFFSET_TEXTURE_RECTANGLE_SCALE_NV = 0x864D; + public const int GL_DOT_PRODUCT_TEXTURE_RECTANGLE_NV = 0x864E; + public const int GL_DEPTH_CLAMP = 0x864F; + public const int GL_DEPTH_CLAMP_NV = 0x864F; + public const int GL_DEPTH_CLAMP_EXT = 0x864F; + public const int GL_VERTEX_ATTRIB_ARRAY0_NV = 0x8650; + public const int GL_VERTEX_ATTRIB_ARRAY1_NV = 0x8651; + public const int GL_VERTEX_ATTRIB_ARRAY2_NV = 0x8652; + public const int GL_VERTEX_ATTRIB_ARRAY3_NV = 0x8653; + public const int GL_VERTEX_ATTRIB_ARRAY4_NV = 0x8654; + public const int GL_VERTEX_ATTRIB_ARRAY5_NV = 0x8655; + public const int GL_VERTEX_ATTRIB_ARRAY6_NV = 0x8656; + public const int GL_VERTEX_ATTRIB_ARRAY7_NV = 0x8657; + public const int GL_VERTEX_ATTRIB_ARRAY8_NV = 0x8658; + public const int GL_VERTEX_ATTRIB_ARRAY9_NV = 0x8659; + public const int GL_VERTEX_ATTRIB_ARRAY10_NV = 0x865A; + public const int GL_VERTEX_ATTRIB_ARRAY11_NV = 0x865B; + public const int GL_VERTEX_ATTRIB_ARRAY12_NV = 0x865C; + public const int GL_VERTEX_ATTRIB_ARRAY13_NV = 0x865D; + public const int GL_VERTEX_ATTRIB_ARRAY14_NV = 0x865E; + public const int GL_VERTEX_ATTRIB_ARRAY15_NV = 0x865F; + public const int GL_MAP1_VERTEX_ATTRIB0_4_NV = 0x8660; + public const int GL_MAP1_VERTEX_ATTRIB1_4_NV = 0x8661; + public const int GL_MAP1_VERTEX_ATTRIB2_4_NV = 0x8662; + public const int GL_MAP1_VERTEX_ATTRIB3_4_NV = 0x8663; + public const int GL_MAP1_VERTEX_ATTRIB4_4_NV = 0x8664; + public const int GL_MAP1_VERTEX_ATTRIB5_4_NV = 0x8665; + public const int GL_MAP1_VERTEX_ATTRIB6_4_NV = 0x8666; + public const int GL_MAP1_VERTEX_ATTRIB7_4_NV = 0x8667; + public const int GL_MAP1_VERTEX_ATTRIB8_4_NV = 0x8668; + public const int GL_MAP1_VERTEX_ATTRIB9_4_NV = 0x8669; + public const int GL_MAP1_VERTEX_ATTRIB10_4_NV = 0x866A; + public const int GL_MAP1_VERTEX_ATTRIB11_4_NV = 0x866B; + public const int GL_MAP1_VERTEX_ATTRIB12_4_NV = 0x866C; + public const int GL_MAP1_VERTEX_ATTRIB13_4_NV = 0x866D; + public const int GL_MAP1_VERTEX_ATTRIB14_4_NV = 0x866E; + public const int GL_MAP1_VERTEX_ATTRIB15_4_NV = 0x866F; + public const int GL_MAP2_VERTEX_ATTRIB0_4_NV = 0x8670; + public const int GL_MAP2_VERTEX_ATTRIB1_4_NV = 0x8671; + public const int GL_MAP2_VERTEX_ATTRIB2_4_NV = 0x8672; + public const int GL_MAP2_VERTEX_ATTRIB3_4_NV = 0x8673; + public const int GL_MAP2_VERTEX_ATTRIB4_4_NV = 0x8674; + public const int GL_MAP2_VERTEX_ATTRIB5_4_NV = 0x8675; + public const int GL_MAP2_VERTEX_ATTRIB6_4_NV = 0x8676; + public const int GL_MAP2_VERTEX_ATTRIB7_4_NV = 0x8677; + public const int GL_PROGRAM_BINDING_ARB = 0x8677; + public const int GL_MAP2_VERTEX_ATTRIB8_4_NV = 0x8678; + public const int GL_MAP2_VERTEX_ATTRIB9_4_NV = 0x8679; + public const int GL_MAP2_VERTEX_ATTRIB10_4_NV = 0x867A; + public const int GL_MAP2_VERTEX_ATTRIB11_4_NV = 0x867B; + public const int GL_MAP2_VERTEX_ATTRIB12_4_NV = 0x867C; + public const int GL_MAP2_VERTEX_ATTRIB13_4_NV = 0x867D; + public const int GL_MAP2_VERTEX_ATTRIB14_4_NV = 0x867E; + public const int GL_MAP2_VERTEX_ATTRIB15_4_NV = 0x867F; + // VENDOR: Pixelfusion + // VENDOR: ARB + public const int GL_TEXTURE_COMPRESSED_IMAGE_SIZE = 0x86A0; + public const int GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB = 0x86A0; + public const int GL_TEXTURE_COMPRESSED = 0x86A1; + public const int GL_TEXTURE_COMPRESSED_ARB = 0x86A1; + public const int GL_NUM_COMPRESSED_TEXTURE_FORMATS = 0x86A2; + public const int GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A2; + public const int GL_COMPRESSED_TEXTURE_FORMATS = 0x86A3; + public const int GL_COMPRESSED_TEXTURE_FORMATS_ARB = 0x86A3; + public const int GL_MAX_VERTEX_UNITS_ARB = 0x86A4; + public const int GL_MAX_VERTEX_UNITS_OES = 0x86A4; + public const int GL_ACTIVE_VERTEX_UNITS_ARB = 0x86A5; + public const int GL_WEIGHT_SUM_UNITY_ARB = 0x86A6; + public const int GL_VERTEX_BLEND_ARB = 0x86A7; + public const int GL_CURRENT_WEIGHT_ARB = 0x86A8; + public const int GL_WEIGHT_ARRAY_TYPE_ARB = 0x86A9; + public const int GL_WEIGHT_ARRAY_TYPE_OES = 0x86A9; + public const int GL_WEIGHT_ARRAY_STRIDE_ARB = 0x86AA; + public const int GL_WEIGHT_ARRAY_STRIDE_OES = 0x86AA; + public const int GL_WEIGHT_ARRAY_SIZE_ARB = 0x86AB; + public const int GL_WEIGHT_ARRAY_SIZE_OES = 0x86AB; + public const int GL_WEIGHT_ARRAY_POINTER_ARB = 0x86AC; + public const int GL_WEIGHT_ARRAY_POINTER_OES = 0x86AC; + public const int GL_WEIGHT_ARRAY_ARB = 0x86AD; + public const int GL_WEIGHT_ARRAY_OES = 0x86AD; + public const int GL_DOT3_RGB = 0x86AE; + public const int GL_DOT3_RGB_ARB = 0x86AE; + public const int GL_DOT3_RGBA = 0x86AF; + public const int GL_DOT3_RGBA_ARB = 0x86AF; + public const int GL_DOT3_RGBA_IMG = 0x86AF; + // VENDOR: 3DFX + public const int GL_COMPRESSED_RGB_FXT1_3DFX = 0x86B0; + public const int GL_COMPRESSED_RGBA_FXT1_3DFX = 0x86B1; + public const int GL_MULTISAMPLE_3DFX = 0x86B2; + public const int GL_SAMPLE_BUFFERS_3DFX = 0x86B3; + public const int GL_SAMPLES_3DFX = 0x86B4; + // VENDOR: NV + public const int GL_EVAL_2D_NV = 0x86C0; + public const int GL_EVAL_TRIANGULAR_2D_NV = 0x86C1; + public const int GL_MAP_TESSELLATION_NV = 0x86C2; + public const int GL_MAP_ATTRIB_U_ORDER_NV = 0x86C3; + public const int GL_MAP_ATTRIB_V_ORDER_NV = 0x86C4; + public const int GL_EVAL_FRACTIONAL_TESSELLATION_NV = 0x86C5; + public const int GL_EVAL_VERTEX_ATTRIB0_NV = 0x86C6; + public const int GL_EVAL_VERTEX_ATTRIB1_NV = 0x86C7; + public const int GL_EVAL_VERTEX_ATTRIB2_NV = 0x86C8; + public const int GL_EVAL_VERTEX_ATTRIB3_NV = 0x86C9; + public const int GL_EVAL_VERTEX_ATTRIB4_NV = 0x86CA; + public const int GL_EVAL_VERTEX_ATTRIB5_NV = 0x86CB; + public const int GL_EVAL_VERTEX_ATTRIB6_NV = 0x86CC; + public const int GL_EVAL_VERTEX_ATTRIB7_NV = 0x86CD; + public const int GL_EVAL_VERTEX_ATTRIB8_NV = 0x86CE; + public const int GL_EVAL_VERTEX_ATTRIB9_NV = 0x86CF; + public const int GL_EVAL_VERTEX_ATTRIB10_NV = 0x86D0; + public const int GL_EVAL_VERTEX_ATTRIB11_NV = 0x86D1; + public const int GL_EVAL_VERTEX_ATTRIB12_NV = 0x86D2; + public const int GL_EVAL_VERTEX_ATTRIB13_NV = 0x86D3; + public const int GL_EVAL_VERTEX_ATTRIB14_NV = 0x86D4; + public const int GL_EVAL_VERTEX_ATTRIB15_NV = 0x86D5; + public const int GL_MAX_MAP_TESSELLATION_NV = 0x86D6; + public const int GL_MAX_RATIONAL_EVAL_ORDER_NV = 0x86D7; + public const int GL_MAX_PROGRAM_PATCH_ATTRIBS_NV = 0x86D8; + public const int GL_RGBA_UNSIGNED_DOT_PRODUCT_MAPPING_NV = 0x86D9; + public const int GL_UNSIGNED_INT_S8_S8_8_8_NV = 0x86DA; + public const int GL_UNSIGNED_INT_8_8_S8_S8_REV_NV = 0x86DB; + public const int GL_DSDT_MAG_INTENSITY_NV = 0x86DC; + public const int GL_SHADER_CONSISTENT_NV = 0x86DD; + public const int GL_TEXTURE_SHADER_NV = 0x86DE; + public const int GL_SHADER_OPERATION_NV = 0x86DF; + public const int GL_CULL_MODES_NV = 0x86E0; + public const int GL_OFFSET_TEXTURE_MATRIX_NV = 0x86E1; + public const int GL_OFFSET_TEXTURE_2D_MATRIX_NV = 0x86E1; + public const int GL_OFFSET_TEXTURE_SCALE_NV = 0x86E2; + public const int GL_OFFSET_TEXTURE_2D_SCALE_NV = 0x86E2; + public const int GL_OFFSET_TEXTURE_BIAS_NV = 0x86E3; + public const int GL_OFFSET_TEXTURE_2D_BIAS_NV = 0x86E3; + public const int GL_PREVIOUS_TEXTURE_INPUT_NV = 0x86E4; + public const int GL_CONST_EYE_NV = 0x86E5; + public const int GL_PASS_THROUGH_NV = 0x86E6; + public const int GL_CULL_FRAGMENT_NV = 0x86E7; + public const int GL_OFFSET_TEXTURE_2D_NV = 0x86E8; + public const int GL_DEPENDENT_AR_TEXTURE_2D_NV = 0x86E9; + public const int GL_DEPENDENT_GB_TEXTURE_2D_NV = 0x86EA; + public const int GL_SURFACE_STATE_NV = 0x86EB; + public const int GL_DOT_PRODUCT_NV = 0x86EC; + public const int GL_DOT_PRODUCT_DEPTH_REPLACE_NV = 0x86ED; + public const int GL_DOT_PRODUCT_TEXTURE_2D_NV = 0x86EE; + public const int GL_DOT_PRODUCT_TEXTURE_3D_NV = 0x86EF; + public const int GL_DOT_PRODUCT_TEXTURE_CUBE_MAP_NV = 0x86F0; + public const int GL_DOT_PRODUCT_DIFFUSE_CUBE_MAP_NV = 0x86F1; + public const int GL_DOT_PRODUCT_REFLECT_CUBE_MAP_NV = 0x86F2; + public const int GL_DOT_PRODUCT_CONST_EYE_REFLECT_CUBE_MAP_NV = 0x86F3; + public const int GL_HILO_NV = 0x86F4; + public const int GL_DSDT_NV = 0x86F5; + public const int GL_DSDT_MAG_NV = 0x86F6; + public const int GL_DSDT_MAG_VIB_NV = 0x86F7; + public const int GL_HILO16_NV = 0x86F8; + public const int GL_SIGNED_HILO_NV = 0x86F9; + public const int GL_SIGNED_HILO16_NV = 0x86FA; + public const int GL_SIGNED_RGBA_NV = 0x86FB; + public const int GL_SIGNED_RGBA8_NV = 0x86FC; + public const int GL_SURFACE_REGISTERED_NV = 0x86FD; + public const int GL_SIGNED_RGB_NV = 0x86FE; + public const int GL_SIGNED_RGB8_NV = 0x86FF; + public const int GL_SURFACE_MAPPED_NV = 0x8700; + public const int GL_SIGNED_LUMINANCE_NV = 0x8701; + public const int GL_SIGNED_LUMINANCE8_NV = 0x8702; + public const int GL_SIGNED_LUMINANCE_ALPHA_NV = 0x8703; + public const int GL_SIGNED_LUMINANCE8_ALPHA8_NV = 0x8704; + public const int GL_SIGNED_ALPHA_NV = 0x8705; + public const int GL_SIGNED_ALPHA8_NV = 0x8706; + public const int GL_SIGNED_INTENSITY_NV = 0x8707; + public const int GL_SIGNED_INTENSITY8_NV = 0x8708; + public const int GL_DSDT8_NV = 0x8709; + public const int GL_DSDT8_MAG8_NV = 0x870A; + public const int GL_DSDT8_MAG8_INTENSITY8_NV = 0x870B; + public const int GL_SIGNED_RGB_UNSIGNED_ALPHA_NV = 0x870C; + public const int GL_SIGNED_RGB8_UNSIGNED_ALPHA8_NV = 0x870D; + public const int GL_HI_SCALE_NV = 0x870E; + public const int GL_LO_SCALE_NV = 0x870F; + public const int GL_DS_SCALE_NV = 0x8710; + public const int GL_DT_SCALE_NV = 0x8711; + public const int GL_MAGNITUDE_SCALE_NV = 0x8712; + public const int GL_VIBRANCE_SCALE_NV = 0x8713; + public const int GL_HI_BIAS_NV = 0x8714; + public const int GL_LO_BIAS_NV = 0x8715; + public const int GL_DS_BIAS_NV = 0x8716; + public const int GL_DT_BIAS_NV = 0x8717; + public const int GL_MAGNITUDE_BIAS_NV = 0x8718; + public const int GL_VIBRANCE_BIAS_NV = 0x8719; + public const int GL_TEXTURE_BORDER_VALUES_NV = 0x871A; + public const int GL_TEXTURE_HI_SIZE_NV = 0x871B; + public const int GL_TEXTURE_LO_SIZE_NV = 0x871C; + public const int GL_TEXTURE_DS_SIZE_NV = 0x871D; + public const int GL_TEXTURE_DT_SIZE_NV = 0x871E; + public const int GL_TEXTURE_MAG_SIZE_NV = 0x871F; + // VENDOR: ARB + public const int GL_MODELVIEW2_ARB = 0x8722; + public const int GL_MODELVIEW3_ARB = 0x8723; + public const int GL_MODELVIEW4_ARB = 0x8724; + public const int GL_MODELVIEW5_ARB = 0x8725; + public const int GL_MODELVIEW6_ARB = 0x8726; + public const int GL_MODELVIEW7_ARB = 0x8727; + public const int GL_MODELVIEW8_ARB = 0x8728; + public const int GL_MODELVIEW9_ARB = 0x8729; + public const int GL_MODELVIEW10_ARB = 0x872A; + public const int GL_MODELVIEW11_ARB = 0x872B; + public const int GL_MODELVIEW12_ARB = 0x872C; + public const int GL_MODELVIEW13_ARB = 0x872D; + public const int GL_MODELVIEW14_ARB = 0x872E; + public const int GL_MODELVIEW15_ARB = 0x872F; + public const int GL_MODELVIEW16_ARB = 0x8730; + public const int GL_MODELVIEW17_ARB = 0x8731; + public const int GL_MODELVIEW18_ARB = 0x8732; + public const int GL_MODELVIEW19_ARB = 0x8733; + public const int GL_MODELVIEW20_ARB = 0x8734; + public const int GL_MODELVIEW21_ARB = 0x8735; + public const int GL_MODELVIEW22_ARB = 0x8736; + public const int GL_MODELVIEW23_ARB = 0x8737; + public const int GL_MODELVIEW24_ARB = 0x8738; + public const int GL_MODELVIEW25_ARB = 0x8739; + public const int GL_MODELVIEW26_ARB = 0x873A; + public const int GL_MODELVIEW27_ARB = 0x873B; + public const int GL_MODELVIEW28_ARB = 0x873C; + public const int GL_MODELVIEW29_ARB = 0x873D; + public const int GL_MODELVIEW30_ARB = 0x873E; + public const int GL_MODELVIEW31_ARB = 0x873F; + // VENDOR: AMD + public const int GL_DOT3_RGB_EXT = 0x8740; + public const int GL_Z400_BINARY_AMD = 0x8740; + public const int GL_DOT3_RGBA_EXT = 0x8741; + public const int GL_PROGRAM_BINARY_LENGTH_OES = 0x8741; + public const int GL_PROGRAM_BINARY_LENGTH = 0x8741; + public const int GL_MIRROR_CLAMP_ATI = 0x8742; + public const int GL_MIRROR_CLAMP_EXT = 0x8742; + public const int GL_MIRROR_CLAMP_TO_EDGE = 0x8743; + public const int GL_MIRROR_CLAMP_TO_EDGE_ATI = 0x8743; + public const int GL_MIRROR_CLAMP_TO_EDGE_EXT = 0x8743; + public const int GL_MODULATE_ADD_ATI = 0x8744; + public const int GL_MODULATE_SIGNED_ADD_ATI = 0x8745; + public const int GL_MODULATE_SUBTRACT_ATI = 0x8746; + public const int GL_SET_AMD = 0x874A; + public const int GL_REPLACE_VALUE_AMD = 0x874B; + public const int GL_STENCIL_OP_VALUE_AMD = 0x874C; + public const int GL_STENCIL_BACK_OP_VALUE_AMD = 0x874D; + public const int GL_VERTEX_ATTRIB_ARRAY_LONG = 0x874E; + public const int GL_OCCLUSION_QUERY_EVENT_MASK_AMD = 0x874F; + // VENDOR: MESA + public const int GL_DEPTH_STENCIL_MESA = 0x8750; + public const int GL_UNSIGNED_INT_24_8_MESA = 0x8751; + public const int GL_UNSIGNED_INT_8_24_REV_MESA = 0x8752; + public const int GL_UNSIGNED_SHORT_15_1_MESA = 0x8753; + public const int GL_UNSIGNED_SHORT_1_15_REV_MESA = 0x8754; + public const int GL_TRACE_MASK_MESA = 0x8755; + public const int GL_TRACE_NAME_MESA = 0x8756; + public const int GL_YCBCR_MESA = 0x8757; + public const int GL_PACK_INVERT_MESA = 0x8758; + public const int GL_DEBUG_OBJECT_MESA = 0x8759; + public const int GL_TEXTURE_1D_STACK_MESAX = 0x8759; + public const int GL_DEBUG_PRINT_MESA = 0x875A; + public const int GL_TEXTURE_2D_STACK_MESAX = 0x875A; + public const int GL_DEBUG_ASSERT_MESA = 0x875B; + public const int GL_PROXY_TEXTURE_1D_STACK_MESAX = 0x875B; + public const int GL_PROXY_TEXTURE_2D_STACK_MESAX = 0x875C; + public const int GL_TEXTURE_1D_STACK_BINDING_MESAX = 0x875D; + public const int GL_TEXTURE_2D_STACK_BINDING_MESAX = 0x875E; + public const int GL_PROGRAM_BINARY_FORMAT_MESA = 0x875F; + // VENDOR: AMD + public const int GL_STATIC_ATI = 0x8760; + public const int GL_DYNAMIC_ATI = 0x8761; + public const int GL_PRESERVE_ATI = 0x8762; + public const int GL_DISCARD_ATI = 0x8763; + public const int GL_BUFFER_SIZE = 0x8764; + public const int GL_BUFFER_SIZE_ARB = 0x8764; + public const int GL_OBJECT_BUFFER_SIZE_ATI = 0x8764; + public const int GL_BUFFER_USAGE = 0x8765; + public const int GL_BUFFER_USAGE_ARB = 0x8765; + public const int GL_OBJECT_BUFFER_USAGE_ATI = 0x8765; + public const int GL_ARRAY_OBJECT_BUFFER_ATI = 0x8766; + public const int GL_ARRAY_OBJECT_OFFSET_ATI = 0x8767; + public const int GL_ELEMENT_ARRAY_ATI = 0x8768; + public const int GL_ELEMENT_ARRAY_TYPE_ATI = 0x8769; + public const int GL_ELEMENT_ARRAY_POINTER_ATI = 0x876A; + public const int GL_MAX_VERTEX_STREAMS_ATI = 0x876B; + public const int GL_VERTEX_STREAM0_ATI = 0x876C; + public const int GL_VERTEX_STREAM1_ATI = 0x876D; + public const int GL_VERTEX_STREAM2_ATI = 0x876E; + public const int GL_VERTEX_STREAM3_ATI = 0x876F; + public const int GL_VERTEX_STREAM4_ATI = 0x8770; + public const int GL_VERTEX_STREAM5_ATI = 0x8771; + public const int GL_VERTEX_STREAM6_ATI = 0x8772; + public const int GL_VERTEX_STREAM7_ATI = 0x8773; + public const int GL_VERTEX_SOURCE_ATI = 0x8774; + public const int GL_BUMP_ROT_MATRIX_ATI = 0x8775; + public const int GL_BUMP_ROT_MATRIX_SIZE_ATI = 0x8776; + public const int GL_BUMP_NUM_TEX_UNITS_ATI = 0x8777; + public const int GL_BUMP_TEX_UNITS_ATI = 0x8778; + public const int GL_DUDV_ATI = 0x8779; + public const int GL_DU8DV8_ATI = 0x877A; + public const int GL_BUMP_ENVMAP_ATI = 0x877B; + public const int GL_BUMP_TARGET_ATI = 0x877C; + public const int GL_VERTEX_SHADER_EXT = 0x8780; + public const int GL_VERTEX_SHADER_BINDING_EXT = 0x8781; + public const int GL_OP_INDEX_EXT = 0x8782; + public const int GL_OP_NEGATE_EXT = 0x8783; + public const int GL_OP_DOT3_EXT = 0x8784; + public const int GL_OP_DOT4_EXT = 0x8785; + public const int GL_OP_MUL_EXT = 0x8786; + public const int GL_OP_ADD_EXT = 0x8787; + public const int GL_OP_MADD_EXT = 0x8788; + public const int GL_OP_FRAC_EXT = 0x8789; + public const int GL_OP_MAX_EXT = 0x878A; + public const int GL_OP_MIN_EXT = 0x878B; + public const int GL_OP_SET_GE_EXT = 0x878C; + public const int GL_OP_SET_LT_EXT = 0x878D; + public const int GL_OP_CLAMP_EXT = 0x878E; + public const int GL_OP_FLOOR_EXT = 0x878F; + public const int GL_OP_ROUND_EXT = 0x8790; + public const int GL_OP_EXP_BASE_2_EXT = 0x8791; + public const int GL_OP_LOG_BASE_2_EXT = 0x8792; + public const int GL_OP_POWER_EXT = 0x8793; + public const int GL_OP_RECIP_EXT = 0x8794; + public const int GL_OP_RECIP_SQRT_EXT = 0x8795; + public const int GL_OP_SUB_EXT = 0x8796; + public const int GL_OP_CROSS_PRODUCT_EXT = 0x8797; + public const int GL_OP_MULTIPLY_MATRIX_EXT = 0x8798; + public const int GL_OP_MOV_EXT = 0x8799; + public const int GL_OUTPUT_VERTEX_EXT = 0x879A; + public const int GL_OUTPUT_COLOR0_EXT = 0x879B; + public const int GL_OUTPUT_COLOR1_EXT = 0x879C; + public const int GL_OUTPUT_TEXTURE_COORD0_EXT = 0x879D; + public const int GL_OUTPUT_TEXTURE_COORD1_EXT = 0x879E; + public const int GL_OUTPUT_TEXTURE_COORD2_EXT = 0x879F; + public const int GL_OUTPUT_TEXTURE_COORD3_EXT = 0x87A0; + public const int GL_OUTPUT_TEXTURE_COORD4_EXT = 0x87A1; + public const int GL_OUTPUT_TEXTURE_COORD5_EXT = 0x87A2; + public const int GL_OUTPUT_TEXTURE_COORD6_EXT = 0x87A3; + public const int GL_OUTPUT_TEXTURE_COORD7_EXT = 0x87A4; + public const int GL_OUTPUT_TEXTURE_COORD8_EXT = 0x87A5; + public const int GL_OUTPUT_TEXTURE_COORD9_EXT = 0x87A6; + public const int GL_OUTPUT_TEXTURE_COORD10_EXT = 0x87A7; + public const int GL_OUTPUT_TEXTURE_COORD11_EXT = 0x87A8; + public const int GL_OUTPUT_TEXTURE_COORD12_EXT = 0x87A9; + public const int GL_OUTPUT_TEXTURE_COORD13_EXT = 0x87AA; + public const int GL_OUTPUT_TEXTURE_COORD14_EXT = 0x87AB; + public const int GL_OUTPUT_TEXTURE_COORD15_EXT = 0x87AC; + public const int GL_OUTPUT_TEXTURE_COORD16_EXT = 0x87AD; + public const int GL_OUTPUT_TEXTURE_COORD17_EXT = 0x87AE; + public const int GL_OUTPUT_TEXTURE_COORD18_EXT = 0x87AF; + public const int GL_OUTPUT_TEXTURE_COORD19_EXT = 0x87B0; + public const int GL_OUTPUT_TEXTURE_COORD20_EXT = 0x87B1; + public const int GL_OUTPUT_TEXTURE_COORD21_EXT = 0x87B2; + public const int GL_OUTPUT_TEXTURE_COORD22_EXT = 0x87B3; + public const int GL_OUTPUT_TEXTURE_COORD23_EXT = 0x87B4; + public const int GL_OUTPUT_TEXTURE_COORD24_EXT = 0x87B5; + public const int GL_OUTPUT_TEXTURE_COORD25_EXT = 0x87B6; + public const int GL_OUTPUT_TEXTURE_COORD26_EXT = 0x87B7; + public const int GL_OUTPUT_TEXTURE_COORD27_EXT = 0x87B8; + public const int GL_OUTPUT_TEXTURE_COORD28_EXT = 0x87B9; + public const int GL_OUTPUT_TEXTURE_COORD29_EXT = 0x87BA; + public const int GL_OUTPUT_TEXTURE_COORD30_EXT = 0x87BB; + public const int GL_OUTPUT_TEXTURE_COORD31_EXT = 0x87BC; + public const int GL_OUTPUT_FOG_EXT = 0x87BD; + public const int GL_SCALAR_EXT = 0x87BE; + public const int GL_VECTOR_EXT = 0x87BF; + public const int GL_MATRIX_EXT = 0x87C0; + public const int GL_VARIANT_EXT = 0x87C1; + public const int GL_INVARIANT_EXT = 0x87C2; + public const int GL_LOCAL_CONSTANT_EXT = 0x87C3; + public const int GL_LOCAL_EXT = 0x87C4; + public const int GL_MAX_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87C5; + public const int GL_MAX_VERTEX_SHADER_VARIANTS_EXT = 0x87C6; + public const int GL_MAX_VERTEX_SHADER_INVARIANTS_EXT = 0x87C7; + public const int GL_MAX_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87C8; + public const int GL_MAX_VERTEX_SHADER_LOCALS_EXT = 0x87C9; + public const int GL_MAX_OPTIMIZED_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CA; + public const int GL_MAX_OPTIMIZED_VERTEX_SHADER_VARIANTS_EXT = 0x87CB; + public const int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87CC; + public const int GL_MAX_OPTIMIZED_VERTEX_SHADER_INVARIANTS_EXT = 0x87CD; + public const int GL_MAX_OPTIMIZED_VERTEX_SHADER_LOCALS_EXT = 0x87CE; + public const int GL_VERTEX_SHADER_INSTRUCTIONS_EXT = 0x87CF; + public const int GL_VERTEX_SHADER_VARIANTS_EXT = 0x87D0; + public const int GL_VERTEX_SHADER_INVARIANTS_EXT = 0x87D1; + public const int GL_VERTEX_SHADER_LOCAL_CONSTANTS_EXT = 0x87D2; + public const int GL_VERTEX_SHADER_LOCALS_EXT = 0x87D3; + public const int GL_VERTEX_SHADER_OPTIMIZED_EXT = 0x87D4; + public const int GL_X_EXT = 0x87D5; + public const int GL_Y_EXT = 0x87D6; + public const int GL_Z_EXT = 0x87D7; + public const int GL_W_EXT = 0x87D8; + public const int GL_NEGATIVE_X_EXT = 0x87D9; + public const int GL_NEGATIVE_Y_EXT = 0x87DA; + public const int GL_NEGATIVE_Z_EXT = 0x87DB; + public const int GL_NEGATIVE_W_EXT = 0x87DC; + public const int GL_ZERO_EXT = 0x87DD; + public const int GL_ONE_EXT = 0x87DE; + public const int GL_NEGATIVE_ONE_EXT = 0x87DF; + public const int GL_NORMALIZED_RANGE_EXT = 0x87E0; + public const int GL_FULL_RANGE_EXT = 0x87E1; + public const int GL_CURRENT_VERTEX_EXT = 0x87E2; + public const int GL_MVP_MATRIX_EXT = 0x87E3; + public const int GL_VARIANT_VALUE_EXT = 0x87E4; + public const int GL_VARIANT_DATATYPE_EXT = 0x87E5; + public const int GL_VARIANT_ARRAY_STRIDE_EXT = 0x87E6; + public const int GL_VARIANT_ARRAY_TYPE_EXT = 0x87E7; + public const int GL_VARIANT_ARRAY_EXT = 0x87E8; + public const int GL_VARIANT_ARRAY_POINTER_EXT = 0x87E9; + public const int GL_INVARIANT_VALUE_EXT = 0x87EA; + public const int GL_INVARIANT_DATATYPE_EXT = 0x87EB; + public const int GL_LOCAL_CONSTANT_VALUE_EXT = 0x87EC; + public const int GL_LOCAL_CONSTANT_DATATYPE_EXT = 0x87ED; + public const int GL_ATC_RGBA_INTERPOLATED_ALPHA_AMD = 0x87EE; + public const int GL_PN_TRIANGLES_ATI = 0x87F0; + public const int GL_MAX_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F1; + public const int GL_PN_TRIANGLES_POINT_MODE_ATI = 0x87F2; + public const int GL_PN_TRIANGLES_NORMAL_MODE_ATI = 0x87F3; + public const int GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI = 0x87F4; + public const int GL_PN_TRIANGLES_POINT_MODE_LINEAR_ATI = 0x87F5; + public const int GL_PN_TRIANGLES_POINT_MODE_CUBIC_ATI = 0x87F6; + public const int GL_PN_TRIANGLES_NORMAL_MODE_LINEAR_ATI = 0x87F7; + public const int GL_PN_TRIANGLES_NORMAL_MODE_QUADRATIC_ATI = 0x87F8; + public const int GL_3DC_X_AMD = 0x87F9; + public const int GL_3DC_XY_AMD = 0x87FA; + public const int GL_VBO_FREE_MEMORY_ATI = 0x87FB; + public const int GL_TEXTURE_FREE_MEMORY_ATI = 0x87FC; + public const int GL_RENDERBUFFER_FREE_MEMORY_ATI = 0x87FD; + public const int GL_NUM_PROGRAM_BINARY_FORMATS = 0x87FE; + public const int GL_NUM_PROGRAM_BINARY_FORMATS_OES = 0x87FE; + public const int GL_PROGRAM_BINARY_FORMATS = 0x87FF; + public const int GL_PROGRAM_BINARY_FORMATS_OES = 0x87FF; + public const int GL_STENCIL_BACK_FUNC = 0x8800; + public const int GL_STENCIL_BACK_FUNC_ATI = 0x8800; + public const int GL_STENCIL_BACK_FAIL = 0x8801; + public const int GL_STENCIL_BACK_FAIL_ATI = 0x8801; + public const int GL_STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802; + public const int GL_STENCIL_BACK_PASS_DEPTH_FAIL_ATI = 0x8802; + public const int GL_STENCIL_BACK_PASS_DEPTH_PASS = 0x8803; + public const int GL_STENCIL_BACK_PASS_DEPTH_PASS_ATI = 0x8803; + public const int GL_FRAGMENT_PROGRAM_ARB = 0x8804; + public const int GL_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x8805; + public const int GL_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x8806; + public const int GL_PROGRAM_TEX_INDIRECTIONS_ARB = 0x8807; + public const int GL_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x8808; + public const int GL_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x8809; + public const int GL_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x880A; + public const int GL_MAX_PROGRAM_ALU_INSTRUCTIONS_ARB = 0x880B; + public const int GL_MAX_PROGRAM_TEX_INSTRUCTIONS_ARB = 0x880C; + public const int GL_MAX_PROGRAM_TEX_INDIRECTIONS_ARB = 0x880D; + public const int GL_MAX_PROGRAM_NATIVE_ALU_INSTRUCTIONS_ARB = 0x880E; + public const int GL_MAX_PROGRAM_NATIVE_TEX_INSTRUCTIONS_ARB = 0x880F; + public const int GL_MAX_PROGRAM_NATIVE_TEX_INDIRECTIONS_ARB = 0x8810; + public const int GL_RGBA32F = 0x8814; + public const int GL_RGBA32F_ARB = 0x8814; + public const int GL_RGBA32F_EXT = 0x8814; + public const int GL_RGBA_FLOAT32_APPLE = 0x8814; + public const int GL_RGBA_FLOAT32_ATI = 0x8814; + public const int GL_RGB32F = 0x8815; + public const int GL_RGB32F_ARB = 0x8815; + public const int GL_RGB32F_EXT = 0x8815; + public const int GL_RGB_FLOAT32_APPLE = 0x8815; + public const int GL_RGB_FLOAT32_ATI = 0x8815; + public const int GL_ALPHA32F_ARB = 0x8816; + public const int GL_ALPHA32F_EXT = 0x8816; + public const int GL_ALPHA_FLOAT32_APPLE = 0x8816; + public const int GL_ALPHA_FLOAT32_ATI = 0x8816; + public const int GL_INTENSITY32F_ARB = 0x8817; + public const int GL_INTENSITY_FLOAT32_APPLE = 0x8817; + public const int GL_INTENSITY_FLOAT32_ATI = 0x8817; + public const int GL_LUMINANCE32F_ARB = 0x8818; + public const int GL_LUMINANCE32F_EXT = 0x8818; + public const int GL_LUMINANCE_FLOAT32_APPLE = 0x8818; + public const int GL_LUMINANCE_FLOAT32_ATI = 0x8818; + public const int GL_LUMINANCE_ALPHA32F_ARB = 0x8819; + public const int GL_LUMINANCE_ALPHA32F_EXT = 0x8819; + public const int GL_LUMINANCE_ALPHA_FLOAT32_APPLE = 0x8819; + public const int GL_LUMINANCE_ALPHA_FLOAT32_ATI = 0x8819; + public const int GL_RGBA16F = 0x881A; + public const int GL_RGBA16F_ARB = 0x881A; + public const int GL_RGBA16F_EXT = 0x881A; + public const int GL_RGBA_FLOAT16_APPLE = 0x881A; + public const int GL_RGBA_FLOAT16_ATI = 0x881A; + public const int GL_RGB16F = 0x881B; + public const int GL_RGB16F_ARB = 0x881B; + public const int GL_RGB16F_EXT = 0x881B; + public const int GL_RGB_FLOAT16_APPLE = 0x881B; + public const int GL_RGB_FLOAT16_ATI = 0x881B; + public const int GL_ALPHA16F_ARB = 0x881C; + public const int GL_ALPHA16F_EXT = 0x881C; + public const int GL_ALPHA_FLOAT16_APPLE = 0x881C; + public const int GL_ALPHA_FLOAT16_ATI = 0x881C; + public const int GL_INTENSITY16F_ARB = 0x881D; + public const int GL_INTENSITY_FLOAT16_APPLE = 0x881D; + public const int GL_INTENSITY_FLOAT16_ATI = 0x881D; + public const int GL_LUMINANCE16F_ARB = 0x881E; + public const int GL_LUMINANCE16F_EXT = 0x881E; + public const int GL_LUMINANCE_FLOAT16_APPLE = 0x881E; + public const int GL_LUMINANCE_FLOAT16_ATI = 0x881E; + public const int GL_LUMINANCE_ALPHA16F_ARB = 0x881F; + public const int GL_LUMINANCE_ALPHA16F_EXT = 0x881F; + public const int GL_LUMINANCE_ALPHA_FLOAT16_APPLE = 0x881F; + public const int GL_LUMINANCE_ALPHA_FLOAT16_ATI = 0x881F; + public const int GL_RGBA_FLOAT_MODE_ARB = 0x8820; + public const int GL_RGBA_FLOAT_MODE_ATI = 0x8820; + public const int GL_WRITEONLY_RENDERING_QCOM = 0x8823; + public const int GL_MAX_DRAW_BUFFERS = 0x8824; + public const int GL_MAX_DRAW_BUFFERS_ARB = 0x8824; + public const int GL_MAX_DRAW_BUFFERS_ATI = 0x8824; + public const int GL_MAX_DRAW_BUFFERS_EXT = 0x8824; + public const int GL_MAX_DRAW_BUFFERS_NV = 0x8824; + public const int GL_DRAW_BUFFER0 = 0x8825; + public const int GL_DRAW_BUFFER0_ARB = 0x8825; + public const int GL_DRAW_BUFFER0_ATI = 0x8825; + public const int GL_DRAW_BUFFER0_EXT = 0x8825; + public const int GL_DRAW_BUFFER0_NV = 0x8825; + public const int GL_DRAW_BUFFER1 = 0x8826; + public const int GL_DRAW_BUFFER1_ARB = 0x8826; + public const int GL_DRAW_BUFFER1_ATI = 0x8826; + public const int GL_DRAW_BUFFER1_EXT = 0x8826; + public const int GL_DRAW_BUFFER1_NV = 0x8826; + public const int GL_DRAW_BUFFER2 = 0x8827; + public const int GL_DRAW_BUFFER2_ARB = 0x8827; + public const int GL_DRAW_BUFFER2_ATI = 0x8827; + public const int GL_DRAW_BUFFER2_EXT = 0x8827; + public const int GL_DRAW_BUFFER2_NV = 0x8827; + public const int GL_DRAW_BUFFER3 = 0x8828; + public const int GL_DRAW_BUFFER3_ARB = 0x8828; + public const int GL_DRAW_BUFFER3_ATI = 0x8828; + public const int GL_DRAW_BUFFER3_EXT = 0x8828; + public const int GL_DRAW_BUFFER3_NV = 0x8828; + public const int GL_DRAW_BUFFER4 = 0x8829; + public const int GL_DRAW_BUFFER4_ARB = 0x8829; + public const int GL_DRAW_BUFFER4_ATI = 0x8829; + public const int GL_DRAW_BUFFER4_EXT = 0x8829; + public const int GL_DRAW_BUFFER4_NV = 0x8829; + public const int GL_DRAW_BUFFER5 = 0x882A; + public const int GL_DRAW_BUFFER5_ARB = 0x882A; + public const int GL_DRAW_BUFFER5_ATI = 0x882A; + public const int GL_DRAW_BUFFER5_EXT = 0x882A; + public const int GL_DRAW_BUFFER5_NV = 0x882A; + public const int GL_DRAW_BUFFER6 = 0x882B; + public const int GL_DRAW_BUFFER6_ARB = 0x882B; + public const int GL_DRAW_BUFFER6_ATI = 0x882B; + public const int GL_DRAW_BUFFER6_EXT = 0x882B; + public const int GL_DRAW_BUFFER6_NV = 0x882B; + public const int GL_DRAW_BUFFER7 = 0x882C; + public const int GL_DRAW_BUFFER7_ARB = 0x882C; + public const int GL_DRAW_BUFFER7_ATI = 0x882C; + public const int GL_DRAW_BUFFER7_EXT = 0x882C; + public const int GL_DRAW_BUFFER7_NV = 0x882C; + public const int GL_DRAW_BUFFER8 = 0x882D; + public const int GL_DRAW_BUFFER8_ARB = 0x882D; + public const int GL_DRAW_BUFFER8_ATI = 0x882D; + public const int GL_DRAW_BUFFER8_EXT = 0x882D; + public const int GL_DRAW_BUFFER8_NV = 0x882D; + public const int GL_DRAW_BUFFER9 = 0x882E; + public const int GL_DRAW_BUFFER9_ARB = 0x882E; + public const int GL_DRAW_BUFFER9_ATI = 0x882E; + public const int GL_DRAW_BUFFER9_EXT = 0x882E; + public const int GL_DRAW_BUFFER9_NV = 0x882E; + public const int GL_DRAW_BUFFER10 = 0x882F; + public const int GL_DRAW_BUFFER10_ARB = 0x882F; + public const int GL_DRAW_BUFFER10_ATI = 0x882F; + public const int GL_DRAW_BUFFER10_EXT = 0x882F; + public const int GL_DRAW_BUFFER10_NV = 0x882F; + public const int GL_DRAW_BUFFER11 = 0x8830; + public const int GL_DRAW_BUFFER11_ARB = 0x8830; + public const int GL_DRAW_BUFFER11_ATI = 0x8830; + public const int GL_DRAW_BUFFER11_EXT = 0x8830; + public const int GL_DRAW_BUFFER11_NV = 0x8830; + public const int GL_DRAW_BUFFER12 = 0x8831; + public const int GL_DRAW_BUFFER12_ARB = 0x8831; + public const int GL_DRAW_BUFFER12_ATI = 0x8831; + public const int GL_DRAW_BUFFER12_EXT = 0x8831; + public const int GL_DRAW_BUFFER12_NV = 0x8831; + public const int GL_DRAW_BUFFER13 = 0x8832; + public const int GL_DRAW_BUFFER13_ARB = 0x8832; + public const int GL_DRAW_BUFFER13_ATI = 0x8832; + public const int GL_DRAW_BUFFER13_EXT = 0x8832; + public const int GL_DRAW_BUFFER13_NV = 0x8832; + public const int GL_DRAW_BUFFER14 = 0x8833; + public const int GL_DRAW_BUFFER14_ARB = 0x8833; + public const int GL_DRAW_BUFFER14_ATI = 0x8833; + public const int GL_DRAW_BUFFER14_EXT = 0x8833; + public const int GL_DRAW_BUFFER14_NV = 0x8833; + public const int GL_DRAW_BUFFER15 = 0x8834; + public const int GL_DRAW_BUFFER15_ARB = 0x8834; + public const int GL_DRAW_BUFFER15_ATI = 0x8834; + public const int GL_DRAW_BUFFER15_EXT = 0x8834; + public const int GL_DRAW_BUFFER15_NV = 0x8834; + public const int GL_COLOR_CLEAR_UNCLAMPED_VALUE_ATI = 0x8835; + public const int GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI = 0x8837; + public const int GL_BLEND_EQUATION_ALPHA = 0x883D; + public const int GL_BLEND_EQUATION_ALPHA_EXT = 0x883D; + public const int GL_BLEND_EQUATION_ALPHA_OES = 0x883D; + public const int GL_SUBSAMPLE_DISTANCE_AMD = 0x883F; + // VENDOR: ARB + public const int GL_MATRIX_PALETTE_ARB = 0x8840; + public const int GL_MATRIX_PALETTE_OES = 0x8840; + public const int GL_MAX_MATRIX_PALETTE_STACK_DEPTH_ARB = 0x8841; + public const int GL_MAX_PALETTE_MATRICES_ARB = 0x8842; + public const int GL_MAX_PALETTE_MATRICES_OES = 0x8842; + public const int GL_CURRENT_PALETTE_MATRIX_ARB = 0x8843; + public const int GL_CURRENT_PALETTE_MATRIX_OES = 0x8843; + public const int GL_MATRIX_INDEX_ARRAY_ARB = 0x8844; + public const int GL_MATRIX_INDEX_ARRAY_OES = 0x8844; + public const int GL_CURRENT_MATRIX_INDEX_ARB = 0x8845; + public const int GL_MATRIX_INDEX_ARRAY_SIZE_ARB = 0x8846; + public const int GL_MATRIX_INDEX_ARRAY_SIZE_OES = 0x8846; + public const int GL_MATRIX_INDEX_ARRAY_TYPE_ARB = 0x8847; + public const int GL_MATRIX_INDEX_ARRAY_TYPE_OES = 0x8847; + public const int GL_MATRIX_INDEX_ARRAY_STRIDE_ARB = 0x8848; + public const int GL_MATRIX_INDEX_ARRAY_STRIDE_OES = 0x8848; + public const int GL_MATRIX_INDEX_ARRAY_POINTER_ARB = 0x8849; + public const int GL_MATRIX_INDEX_ARRAY_POINTER_OES = 0x8849; + public const int GL_TEXTURE_DEPTH_SIZE = 0x884A; + public const int GL_TEXTURE_DEPTH_SIZE_ARB = 0x884A; + public const int GL_DEPTH_TEXTURE_MODE = 0x884B; + public const int GL_DEPTH_TEXTURE_MODE_ARB = 0x884B; + public const int GL_TEXTURE_COMPARE_MODE = 0x884C; + public const int GL_TEXTURE_COMPARE_MODE_ARB = 0x884C; + public const int GL_TEXTURE_COMPARE_MODE_EXT = 0x884C; + public const int GL_TEXTURE_COMPARE_FUNC = 0x884D; + public const int GL_TEXTURE_COMPARE_FUNC_ARB = 0x884D; + public const int GL_TEXTURE_COMPARE_FUNC_EXT = 0x884D; + public const int GL_COMPARE_R_TO_TEXTURE = 0x884E; + public const int GL_COMPARE_R_TO_TEXTURE_ARB = 0x884E; + public const int GL_COMPARE_REF_DEPTH_TO_TEXTURE_EXT = 0x884E; + public const int GL_COMPARE_REF_TO_TEXTURE = 0x884E; + public const int GL_COMPARE_REF_TO_TEXTURE_EXT = 0x884E; + public const int GL_TEXTURE_CUBE_MAP_SEAMLESS = 0x884F; + // VENDOR: NV + public const int GL_OFFSET_PROJECTIVE_TEXTURE_2D_NV = 0x8850; + public const int GL_OFFSET_PROJECTIVE_TEXTURE_2D_SCALE_NV = 0x8851; + public const int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8852; + public const int GL_OFFSET_PROJECTIVE_TEXTURE_RECTANGLE_SCALE_NV = 0x8853; + public const int GL_OFFSET_HILO_TEXTURE_2D_NV = 0x8854; + public const int GL_OFFSET_HILO_TEXTURE_RECTANGLE_NV = 0x8855; + public const int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_2D_NV = 0x8856; + public const int GL_OFFSET_HILO_PROJECTIVE_TEXTURE_RECTANGLE_NV = 0x8857; + public const int GL_DEPENDENT_HILO_TEXTURE_2D_NV = 0x8858; + public const int GL_DEPENDENT_RGB_TEXTURE_3D_NV = 0x8859; + public const int GL_DEPENDENT_RGB_TEXTURE_CUBE_MAP_NV = 0x885A; + public const int GL_DOT_PRODUCT_PASS_THROUGH_NV = 0x885B; + public const int GL_DOT_PRODUCT_TEXTURE_1D_NV = 0x885C; + public const int GL_DOT_PRODUCT_AFFINE_DEPTH_REPLACE_NV = 0x885D; + public const int GL_HILO8_NV = 0x885E; + public const int GL_SIGNED_HILO8_NV = 0x885F; + public const int GL_FORCE_BLUE_TO_ONE_NV = 0x8860; + public const int GL_POINT_SPRITE = 0x8861; + public const int GL_POINT_SPRITE_ARB = 0x8861; + public const int GL_POINT_SPRITE_NV = 0x8861; + public const int GL_POINT_SPRITE_OES = 0x8861; + public const int GL_COORD_REPLACE = 0x8862; + public const int GL_COORD_REPLACE_ARB = 0x8862; + public const int GL_COORD_REPLACE_NV = 0x8862; + public const int GL_COORD_REPLACE_OES = 0x8862; + public const int GL_POINT_SPRITE_R_MODE_NV = 0x8863; + public const int GL_PIXEL_COUNTER_BITS_NV = 0x8864; + public const int GL_QUERY_COUNTER_BITS = 0x8864; + public const int GL_QUERY_COUNTER_BITS_ARB = 0x8864; + public const int GL_QUERY_COUNTER_BITS_EXT = 0x8864; + public const int GL_CURRENT_OCCLUSION_QUERY_ID_NV = 0x8865; + public const int GL_CURRENT_QUERY = 0x8865; + public const int GL_CURRENT_QUERY_ARB = 0x8865; + public const int GL_CURRENT_QUERY_EXT = 0x8865; + public const int GL_PIXEL_COUNT_NV = 0x8866; + public const int GL_QUERY_RESULT = 0x8866; + public const int GL_QUERY_RESULT_ARB = 0x8866; + public const int GL_QUERY_RESULT_EXT = 0x8866; + public const int GL_PIXEL_COUNT_AVAILABLE_NV = 0x8867; + public const int GL_QUERY_RESULT_AVAILABLE = 0x8867; + public const int GL_QUERY_RESULT_AVAILABLE_ARB = 0x8867; + public const int GL_QUERY_RESULT_AVAILABLE_EXT = 0x8867; + public const int GL_MAX_FRAGMENT_PROGRAM_LOCAL_PARAMETERS_NV = 0x8868; + public const int GL_MAX_VERTEX_ATTRIBS = 0x8869; + public const int GL_MAX_VERTEX_ATTRIBS_ARB = 0x8869; + public const int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886A; + public const int GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = 0x886A; + public const int GL_MAX_TESS_CONTROL_INPUT_COMPONENTS = 0x886C; + public const int GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_EXT = 0x886C; + public const int GL_MAX_TESS_CONTROL_INPUT_COMPONENTS_OES = 0x886C; + public const int GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS = 0x886D; + public const int GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_EXT = 0x886D; + public const int GL_MAX_TESS_EVALUATION_INPUT_COMPONENTS_OES = 0x886D; + public const int GL_DEPTH_STENCIL_TO_RGBA_NV = 0x886E; + public const int GL_DEPTH_STENCIL_TO_BGRA_NV = 0x886F; + public const int GL_FRAGMENT_PROGRAM_NV = 0x8870; + public const int GL_MAX_TEXTURE_COORDS = 0x8871; + public const int GL_MAX_TEXTURE_COORDS_ARB = 0x8871; + public const int GL_MAX_TEXTURE_COORDS_NV = 0x8871; + public const int GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872; + public const int GL_MAX_TEXTURE_IMAGE_UNITS_ARB = 0x8872; + public const int GL_MAX_TEXTURE_IMAGE_UNITS_NV = 0x8872; + public const int GL_FRAGMENT_PROGRAM_BINDING_NV = 0x8873; + public const int GL_PROGRAM_ERROR_STRING_ARB = 0x8874; + public const int GL_PROGRAM_ERROR_STRING_NV = 0x8874; + public const int GL_PROGRAM_FORMAT_ASCII_ARB = 0x8875; + public const int GL_PROGRAM_FORMAT_ARB = 0x8876; + public const int GL_WRITE_PIXEL_DATA_RANGE_NV = 0x8878; + public const int GL_READ_PIXEL_DATA_RANGE_NV = 0x8879; + public const int GL_WRITE_PIXEL_DATA_RANGE_LENGTH_NV = 0x887A; + public const int GL_READ_PIXEL_DATA_RANGE_LENGTH_NV = 0x887B; + public const int GL_WRITE_PIXEL_DATA_RANGE_POINTER_NV = 0x887C; + public const int GL_READ_PIXEL_DATA_RANGE_POINTER_NV = 0x887D; + public const int GL_GEOMETRY_SHADER_INVOCATIONS = 0x887F; + public const int GL_GEOMETRY_SHADER_INVOCATIONS_EXT = 0x887F; + public const int GL_GEOMETRY_SHADER_INVOCATIONS_OES = 0x887F; + public const int GL_FLOAT_R_NV = 0x8880; + public const int GL_FLOAT_RG_NV = 0x8881; + public const int GL_FLOAT_RGB_NV = 0x8882; + public const int GL_FLOAT_RGBA_NV = 0x8883; + public const int GL_FLOAT_R16_NV = 0x8884; + public const int GL_FLOAT_R32_NV = 0x8885; + public const int GL_FLOAT_RG16_NV = 0x8886; + public const int GL_FLOAT_RG32_NV = 0x8887; + public const int GL_FLOAT_RGB16_NV = 0x8888; + public const int GL_FLOAT_RGB32_NV = 0x8889; + public const int GL_FLOAT_RGBA16_NV = 0x888A; + public const int GL_FLOAT_RGBA32_NV = 0x888B; + public const int GL_TEXTURE_FLOAT_COMPONENTS_NV = 0x888C; + public const int GL_FLOAT_CLEAR_COLOR_VALUE_NV = 0x888D; + public const int GL_FLOAT_RGBA_MODE_NV = 0x888E; + public const int GL_TEXTURE_UNSIGNED_REMAP_MODE_NV = 0x888F; + public const int GL_DEPTH_BOUNDS_TEST_EXT = 0x8890; + public const int GL_DEPTH_BOUNDS_EXT = 0x8891; + public const int GL_ARRAY_BUFFER = 0x8892; + public const int GL_ARRAY_BUFFER_ARB = 0x8892; + public const int GL_ELEMENT_ARRAY_BUFFER = 0x8893; + public const int GL_ELEMENT_ARRAY_BUFFER_ARB = 0x8893; + public const int GL_ARRAY_BUFFER_BINDING = 0x8894; + public const int GL_ARRAY_BUFFER_BINDING_ARB = 0x8894; + public const int GL_ELEMENT_ARRAY_BUFFER_BINDING = 0x8895; + public const int GL_ELEMENT_ARRAY_BUFFER_BINDING_ARB = 0x8895; + public const int GL_VERTEX_ARRAY_BUFFER_BINDING = 0x8896; + public const int GL_VERTEX_ARRAY_BUFFER_BINDING_ARB = 0x8896; + public const int GL_NORMAL_ARRAY_BUFFER_BINDING = 0x8897; + public const int GL_NORMAL_ARRAY_BUFFER_BINDING_ARB = 0x8897; + public const int GL_COLOR_ARRAY_BUFFER_BINDING = 0x8898; + public const int GL_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x8898; + public const int GL_INDEX_ARRAY_BUFFER_BINDING = 0x8899; + public const int GL_INDEX_ARRAY_BUFFER_BINDING_ARB = 0x8899; + public const int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING = 0x889A; + public const int GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING_ARB = 0x889A; + public const int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING = 0x889B; + public const int GL_EDGE_FLAG_ARRAY_BUFFER_BINDING_ARB = 0x889B; + public const int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING = 0x889C; + public const int GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING_ARB = 0x889C; + public const int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING_ARB = 0x889D; + public const int GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING = 0x889D; + public const int GL_FOG_COORD_ARRAY_BUFFER_BINDING = 0x889D; + public const int GL_WEIGHT_ARRAY_BUFFER_BINDING = 0x889E; + public const int GL_WEIGHT_ARRAY_BUFFER_BINDING_ARB = 0x889E; + public const int GL_WEIGHT_ARRAY_BUFFER_BINDING_OES = 0x889E; + public const int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889F; + public const int GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB = 0x889F; + public const int GL_PROGRAM_INSTRUCTIONS_ARB = 0x88A0; + public const int GL_MAX_PROGRAM_INSTRUCTIONS_ARB = 0x88A1; + public const int GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A2; + public const int GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = 0x88A3; + public const int GL_PROGRAM_TEMPORARIES_ARB = 0x88A4; + public const int GL_MAX_PROGRAM_TEMPORARIES_ARB = 0x88A5; + public const int GL_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A6; + public const int GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = 0x88A7; + public const int GL_PROGRAM_PARAMETERS_ARB = 0x88A8; + public const int GL_MAX_PROGRAM_PARAMETERS_ARB = 0x88A9; + public const int GL_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AA; + public const int GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = 0x88AB; + public const int GL_PROGRAM_ATTRIBS_ARB = 0x88AC; + public const int GL_MAX_PROGRAM_ATTRIBS_ARB = 0x88AD; + public const int GL_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AE; + public const int GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = 0x88AF; + public const int GL_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B0; + public const int GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB = 0x88B1; + public const int GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B2; + public const int GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = 0x88B3; + public const int GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB = 0x88B4; + public const int GL_MAX_PROGRAM_ENV_PARAMETERS_ARB = 0x88B5; + public const int GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB = 0x88B6; + public const int GL_TRANSPOSE_CURRENT_MATRIX_ARB = 0x88B7; + public const int GL_READ_ONLY = 0x88B8; + public const int GL_READ_ONLY_ARB = 0x88B8; + public const int GL_WRITE_ONLY = 0x88B9; + public const int GL_WRITE_ONLY_ARB = 0x88B9; + public const int GL_WRITE_ONLY_OES = 0x88B9; + public const int GL_READ_WRITE = 0x88BA; + public const int GL_READ_WRITE_ARB = 0x88BA; + public const int GL_BUFFER_ACCESS = 0x88BB; + public const int GL_BUFFER_ACCESS_ARB = 0x88BB; + public const int GL_BUFFER_ACCESS_OES = 0x88BB; + public const int GL_BUFFER_MAPPED = 0x88BC; + public const int GL_BUFFER_MAPPED_ARB = 0x88BC; + public const int GL_BUFFER_MAPPED_OES = 0x88BC; + public const int GL_BUFFER_MAP_POINTER = 0x88BD; + public const int GL_BUFFER_MAP_POINTER_ARB = 0x88BD; + public const int GL_BUFFER_MAP_POINTER_OES = 0x88BD; + public const int GL_WRITE_DISCARD_NV = 0x88BE; + public const int GL_TIME_ELAPSED = 0x88BF; + public const int GL_TIME_ELAPSED_EXT = 0x88BF; + public const int GL_MATRIX0_ARB = 0x88C0; + public const int GL_MATRIX1_ARB = 0x88C1; + public const int GL_MATRIX2_ARB = 0x88C2; + public const int GL_MATRIX3_ARB = 0x88C3; + public const int GL_MATRIX4_ARB = 0x88C4; + public const int GL_MATRIX5_ARB = 0x88C5; + public const int GL_MATRIX6_ARB = 0x88C6; + public const int GL_MATRIX7_ARB = 0x88C7; + public const int GL_MATRIX8_ARB = 0x88C8; + public const int GL_MATRIX9_ARB = 0x88C9; + public const int GL_MATRIX10_ARB = 0x88CA; + public const int GL_MATRIX11_ARB = 0x88CB; + public const int GL_MATRIX12_ARB = 0x88CC; + public const int GL_MATRIX13_ARB = 0x88CD; + public const int GL_MATRIX14_ARB = 0x88CE; + public const int GL_MATRIX15_ARB = 0x88CF; + public const int GL_MATRIX16_ARB = 0x88D0; + public const int GL_MATRIX17_ARB = 0x88D1; + public const int GL_MATRIX18_ARB = 0x88D2; + public const int GL_MATRIX19_ARB = 0x88D3; + public const int GL_MATRIX20_ARB = 0x88D4; + public const int GL_MATRIX21_ARB = 0x88D5; + public const int GL_MATRIX22_ARB = 0x88D6; + public const int GL_MATRIX23_ARB = 0x88D7; + public const int GL_MATRIX24_ARB = 0x88D8; + public const int GL_MATRIX25_ARB = 0x88D9; + public const int GL_MATRIX26_ARB = 0x88DA; + public const int GL_MATRIX27_ARB = 0x88DB; + public const int GL_MATRIX28_ARB = 0x88DC; + public const int GL_MATRIX29_ARB = 0x88DD; + public const int GL_MATRIX30_ARB = 0x88DE; + public const int GL_MATRIX31_ARB = 0x88DF; + public const int GL_STREAM_DRAW = 0x88E0; + public const int GL_STREAM_DRAW_ARB = 0x88E0; + public const int GL_STREAM_READ = 0x88E1; + public const int GL_STREAM_READ_ARB = 0x88E1; + public const int GL_STREAM_COPY = 0x88E2; + public const int GL_STREAM_COPY_ARB = 0x88E2; + public const int GL_STATIC_DRAW = 0x88E4; + public const int GL_STATIC_DRAW_ARB = 0x88E4; + public const int GL_STATIC_READ = 0x88E5; + public const int GL_STATIC_READ_ARB = 0x88E5; + public const int GL_STATIC_COPY = 0x88E6; + public const int GL_STATIC_COPY_ARB = 0x88E6; + public const int GL_DYNAMIC_DRAW = 0x88E8; + public const int GL_DYNAMIC_DRAW_ARB = 0x88E8; + public const int GL_DYNAMIC_READ = 0x88E9; + public const int GL_DYNAMIC_READ_ARB = 0x88E9; + public const int GL_DYNAMIC_COPY = 0x88EA; + public const int GL_DYNAMIC_COPY_ARB = 0x88EA; + public const int GL_PIXEL_PACK_BUFFER = 0x88EB; + public const int GL_PIXEL_PACK_BUFFER_ARB = 0x88EB; + public const int GL_PIXEL_PACK_BUFFER_EXT = 0x88EB; + public const int GL_PIXEL_PACK_BUFFER_NV = 0x88EB; + public const int GL_PIXEL_UNPACK_BUFFER = 0x88EC; + public const int GL_PIXEL_UNPACK_BUFFER_ARB = 0x88EC; + public const int GL_PIXEL_UNPACK_BUFFER_EXT = 0x88EC; + public const int GL_PIXEL_UNPACK_BUFFER_NV = 0x88EC; + public const int GL_PIXEL_PACK_BUFFER_BINDING = 0x88ED; + public const int GL_PIXEL_PACK_BUFFER_BINDING_ARB = 0x88ED; + public const int GL_PIXEL_PACK_BUFFER_BINDING_EXT = 0x88ED; + public const int GL_PIXEL_PACK_BUFFER_BINDING_NV = 0x88ED; + public const int GL_ETC1_SRGB8_NV = 0x88EE; + public const int GL_PIXEL_UNPACK_BUFFER_BINDING = 0x88EF; + public const int GL_PIXEL_UNPACK_BUFFER_BINDING_ARB = 0x88EF; + public const int GL_PIXEL_UNPACK_BUFFER_BINDING_EXT = 0x88EF; + public const int GL_PIXEL_UNPACK_BUFFER_BINDING_NV = 0x88EF; + public const int GL_DEPTH24_STENCIL8 = 0x88F0; + public const int GL_DEPTH24_STENCIL8_EXT = 0x88F0; + public const int GL_DEPTH24_STENCIL8_OES = 0x88F0; + public const int GL_TEXTURE_STENCIL_SIZE = 0x88F1; + public const int GL_TEXTURE_STENCIL_SIZE_EXT = 0x88F1; + public const int GL_STENCIL_TAG_BITS_EXT = 0x88F2; + public const int GL_STENCIL_CLEAR_TAG_VALUE_EXT = 0x88F3; + public const int GL_MAX_PROGRAM_EXEC_INSTRUCTIONS_NV = 0x88F4; + public const int GL_MAX_PROGRAM_CALL_DEPTH_NV = 0x88F5; + public const int GL_MAX_PROGRAM_IF_DEPTH_NV = 0x88F6; + public const int GL_MAX_PROGRAM_LOOP_DEPTH_NV = 0x88F7; + public const int GL_MAX_PROGRAM_LOOP_COUNT_NV = 0x88F8; + public const int GL_SRC1_COLOR = 0x88F9; + public const int GL_SRC1_COLOR_EXT = 0x88F9; + public const int GL_ONE_MINUS_SRC1_COLOR = 0x88FA; + public const int GL_ONE_MINUS_SRC1_COLOR_EXT = 0x88FA; + public const int GL_ONE_MINUS_SRC1_ALPHA = 0x88FB; + public const int GL_ONE_MINUS_SRC1_ALPHA_EXT = 0x88FB; + public const int GL_MAX_DUAL_SOURCE_DRAW_BUFFERS = 0x88FC; + public const int GL_MAX_DUAL_SOURCE_DRAW_BUFFERS_EXT = 0x88FC; + public const int GL_VERTEX_ATTRIB_ARRAY_INTEGER = 0x88FD; + public const int GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT = 0x88FD; + public const int GL_VERTEX_ATTRIB_ARRAY_INTEGER_NV = 0x88FD; + public const int GL_VERTEX_ATTRIB_ARRAY_DIVISOR = 0x88FE; + public const int GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE = 0x88FE; + public const int GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB = 0x88FE; + public const int GL_VERTEX_ATTRIB_ARRAY_DIVISOR_EXT = 0x88FE; + public const int GL_VERTEX_ATTRIB_ARRAY_DIVISOR_NV = 0x88FE; + public const int GL_MAX_ARRAY_TEXTURE_LAYERS = 0x88FF; + public const int GL_MAX_ARRAY_TEXTURE_LAYERS_EXT = 0x88FF; + public const int GL_MIN_PROGRAM_TEXEL_OFFSET = 0x8904; + public const int GL_MIN_PROGRAM_TEXEL_OFFSET_EXT = 0x8904; + public const int GL_MIN_PROGRAM_TEXEL_OFFSET_NV = 0x8904; + public const int GL_MAX_PROGRAM_TEXEL_OFFSET = 0x8905; + public const int GL_MAX_PROGRAM_TEXEL_OFFSET_EXT = 0x8905; + public const int GL_MAX_PROGRAM_TEXEL_OFFSET_NV = 0x8905; + public const int GL_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8906; + public const int GL_PROGRAM_RESULT_COMPONENTS_NV = 0x8907; + public const int GL_MAX_PROGRAM_ATTRIB_COMPONENTS_NV = 0x8908; + public const int GL_MAX_PROGRAM_RESULT_COMPONENTS_NV = 0x8909; + public const int GL_STENCIL_TEST_TWO_SIDE_EXT = 0x8910; + public const int GL_ACTIVE_STENCIL_FACE_EXT = 0x8911; + public const int GL_MIRROR_CLAMP_TO_BORDER_EXT = 0x8912; + public const int GL_SAMPLES_PASSED = 0x8914; + public const int GL_SAMPLES_PASSED_ARB = 0x8914; + public const int GL_GEOMETRY_VERTICES_OUT = 0x8916; + public const int GL_GEOMETRY_LINKED_VERTICES_OUT_EXT = 0x8916; + public const int GL_GEOMETRY_LINKED_VERTICES_OUT_OES = 0x8916; + public const int GL_GEOMETRY_INPUT_TYPE = 0x8917; + public const int GL_GEOMETRY_LINKED_INPUT_TYPE_EXT = 0x8917; + public const int GL_GEOMETRY_LINKED_INPUT_TYPE_OES = 0x8917; + public const int GL_GEOMETRY_OUTPUT_TYPE = 0x8918; + public const int GL_GEOMETRY_LINKED_OUTPUT_TYPE_EXT = 0x8918; + public const int GL_GEOMETRY_LINKED_OUTPUT_TYPE_OES = 0x8918; + public const int GL_SAMPLER_BINDING = 0x8919; + public const int GL_CLAMP_VERTEX_COLOR = 0x891A; + public const int GL_CLAMP_VERTEX_COLOR_ARB = 0x891A; + public const int GL_CLAMP_FRAGMENT_COLOR = 0x891B; + public const int GL_CLAMP_FRAGMENT_COLOR_ARB = 0x891B; + public const int GL_CLAMP_READ_COLOR = 0x891C; + public const int GL_CLAMP_READ_COLOR_ARB = 0x891C; + public const int GL_FIXED_ONLY = 0x891D; + public const int GL_FIXED_ONLY_ARB = 0x891D; + public const int GL_TESS_CONTROL_PROGRAM_NV = 0x891E; + public const int GL_TESS_EVALUATION_PROGRAM_NV = 0x891F; + // VENDOR: AMD + public const int GL_FRAGMENT_SHADER_ATI = 0x8920; + public const int GL_REG_0_ATI = 0x8921; + public const int GL_REG_1_ATI = 0x8922; + public const int GL_REG_2_ATI = 0x8923; + public const int GL_REG_3_ATI = 0x8924; + public const int GL_REG_4_ATI = 0x8925; + public const int GL_REG_5_ATI = 0x8926; + public const int GL_REG_6_ATI = 0x8927; + public const int GL_REG_7_ATI = 0x8928; + public const int GL_REG_8_ATI = 0x8929; + public const int GL_REG_9_ATI = 0x892A; + public const int GL_REG_10_ATI = 0x892B; + public const int GL_REG_11_ATI = 0x892C; + public const int GL_REG_12_ATI = 0x892D; + public const int GL_REG_13_ATI = 0x892E; + public const int GL_REG_14_ATI = 0x892F; + public const int GL_REG_15_ATI = 0x8930; + public const int GL_REG_16_ATI = 0x8931; + public const int GL_REG_17_ATI = 0x8932; + public const int GL_REG_18_ATI = 0x8933; + public const int GL_REG_19_ATI = 0x8934; + public const int GL_REG_20_ATI = 0x8935; + public const int GL_REG_21_ATI = 0x8936; + public const int GL_REG_22_ATI = 0x8937; + public const int GL_REG_23_ATI = 0x8938; + public const int GL_REG_24_ATI = 0x8939; + public const int GL_REG_25_ATI = 0x893A; + public const int GL_REG_26_ATI = 0x893B; + public const int GL_REG_27_ATI = 0x893C; + public const int GL_REG_28_ATI = 0x893D; + public const int GL_REG_29_ATI = 0x893E; + public const int GL_REG_30_ATI = 0x893F; + public const int GL_REG_31_ATI = 0x8940; + public const int GL_CON_0_ATI = 0x8941; + public const int GL_CON_1_ATI = 0x8942; + public const int GL_CON_2_ATI = 0x8943; + public const int GL_CON_3_ATI = 0x8944; + public const int GL_CON_4_ATI = 0x8945; + public const int GL_CON_5_ATI = 0x8946; + public const int GL_CON_6_ATI = 0x8947; + public const int GL_CON_7_ATI = 0x8948; + public const int GL_CON_8_ATI = 0x8949; + public const int GL_CON_9_ATI = 0x894A; + public const int GL_CON_10_ATI = 0x894B; + public const int GL_CON_11_ATI = 0x894C; + public const int GL_CON_12_ATI = 0x894D; + public const int GL_CON_13_ATI = 0x894E; + public const int GL_CON_14_ATI = 0x894F; + public const int GL_CON_15_ATI = 0x8950; + public const int GL_CON_16_ATI = 0x8951; + public const int GL_CON_17_ATI = 0x8952; + public const int GL_CON_18_ATI = 0x8953; + public const int GL_CON_19_ATI = 0x8954; + public const int GL_CON_20_ATI = 0x8955; + public const int GL_CON_21_ATI = 0x8956; + public const int GL_CON_22_ATI = 0x8957; + public const int GL_CON_23_ATI = 0x8958; + public const int GL_CON_24_ATI = 0x8959; + public const int GL_CON_25_ATI = 0x895A; + public const int GL_CON_26_ATI = 0x895B; + public const int GL_CON_27_ATI = 0x895C; + public const int GL_CON_28_ATI = 0x895D; + public const int GL_CON_29_ATI = 0x895E; + public const int GL_CON_30_ATI = 0x895F; + public const int GL_CON_31_ATI = 0x8960; + public const int GL_MOV_ATI = 0x8961; + public const int GL_ADD_ATI = 0x8963; + public const int GL_MUL_ATI = 0x8964; + public const int GL_SUB_ATI = 0x8965; + public const int GL_DOT3_ATI = 0x8966; + public const int GL_DOT4_ATI = 0x8967; + public const int GL_MAD_ATI = 0x8968; + public const int GL_LERP_ATI = 0x8969; + public const int GL_CND_ATI = 0x896A; + public const int GL_CND0_ATI = 0x896B; + public const int GL_DOT2_ADD_ATI = 0x896C; + public const int GL_SECONDARY_INTERPOLATOR_ATI = 0x896D; + public const int GL_NUM_FRAGMENT_REGISTERS_ATI = 0x896E; + public const int GL_NUM_FRAGMENT_CONSTANTS_ATI = 0x896F; + public const int GL_NUM_PASSES_ATI = 0x8970; + public const int GL_NUM_INSTRUCTIONS_PER_PASS_ATI = 0x8971; + public const int GL_NUM_INSTRUCTIONS_TOTAL_ATI = 0x8972; + public const int GL_NUM_INPUT_INTERPOLATOR_COMPONENTS_ATI = 0x8973; + public const int GL_NUM_LOOPBACK_COMPONENTS_ATI = 0x8974; + public const int GL_COLOR_ALPHA_PAIRING_ATI = 0x8975; + public const int GL_SWIZZLE_STR_ATI = 0x8976; + public const int GL_SWIZZLE_STQ_ATI = 0x8977; + public const int GL_SWIZZLE_STR_DR_ATI = 0x8978; + public const int GL_SWIZZLE_STQ_DQ_ATI = 0x8979; + public const int GL_SWIZZLE_STRQ_ATI = 0x897A; + public const int GL_SWIZZLE_STRQ_DQ_ATI = 0x897B; + // VENDOR: OML + public const int GL_INTERLACE_OML = 0x8980; + public const int GL_INTERLACE_READ_OML = 0x8981; + public const int GL_FORMAT_SUBSAMPLE_24_24_OML = 0x8982; + public const int GL_FORMAT_SUBSAMPLE_244_244_OML = 0x8983; + public const int GL_PACK_RESAMPLE_OML = 0x8984; + public const int GL_UNPACK_RESAMPLE_OML = 0x8985; + public const int GL_RESAMPLE_REPLICATE_OML = 0x8986; + public const int GL_RESAMPLE_ZERO_FILL_OML = 0x8987; + public const int GL_RESAMPLE_AVERAGE_OML = 0x8988; + public const int GL_RESAMPLE_DECIMATE_OML = 0x8989; + public const int GL_POINT_SIZE_ARRAY_TYPE_OES = 0x898A; + public const int GL_POINT_SIZE_ARRAY_STRIDE_OES = 0x898B; + public const int GL_POINT_SIZE_ARRAY_POINTER_OES = 0x898C; + public const int GL_MODELVIEW_MATRIX_FLOAT_AS_INT_BITS_OES = 0x898D; + public const int GL_PROJECTION_MATRIX_FLOAT_AS_INT_BITS_OES = 0x898E; + public const int GL_TEXTURE_MATRIX_FLOAT_AS_INT_BITS_OES = 0x898F; + // VENDOR: ZiiLabs + // VENDOR: Matrox + // VENDOR: APPLE + public const int GL_VERTEX_ATTRIB_MAP1_APPLE = 0x8A00; + public const int GL_VERTEX_ATTRIB_MAP2_APPLE = 0x8A01; + public const int GL_VERTEX_ATTRIB_MAP1_SIZE_APPLE = 0x8A02; + public const int GL_VERTEX_ATTRIB_MAP1_COEFF_APPLE = 0x8A03; + public const int GL_VERTEX_ATTRIB_MAP1_ORDER_APPLE = 0x8A04; + public const int GL_VERTEX_ATTRIB_MAP1_DOMAIN_APPLE = 0x8A05; + public const int GL_VERTEX_ATTRIB_MAP2_SIZE_APPLE = 0x8A06; + public const int GL_VERTEX_ATTRIB_MAP2_COEFF_APPLE = 0x8A07; + public const int GL_VERTEX_ATTRIB_MAP2_ORDER_APPLE = 0x8A08; + public const int GL_VERTEX_ATTRIB_MAP2_DOMAIN_APPLE = 0x8A09; + public const int GL_DRAW_PIXELS_APPLE = 0x8A0A; + public const int GL_FENCE_APPLE = 0x8A0B; + public const int GL_ELEMENT_ARRAY_APPLE = 0x8A0C; + public const int GL_ELEMENT_ARRAY_TYPE_APPLE = 0x8A0D; + public const int GL_ELEMENT_ARRAY_POINTER_APPLE = 0x8A0E; + public const int GL_COLOR_FLOAT_APPLE = 0x8A0F; + public const int GL_UNIFORM_BUFFER = 0x8A11; + public const int GL_BUFFER_SERIALIZED_MODIFY_APPLE = 0x8A12; + public const int GL_BUFFER_FLUSHING_UNMAP_APPLE = 0x8A13; + public const int GL_AUX_DEPTH_STENCIL_APPLE = 0x8A14; + public const int GL_PACK_ROW_BYTES_APPLE = 0x8A15; + public const int GL_UNPACK_ROW_BYTES_APPLE = 0x8A16; + public const int GL_RELEASED_APPLE = 0x8A19; + public const int GL_VOLATILE_APPLE = 0x8A1A; + public const int GL_RETAINED_APPLE = 0x8A1B; + public const int GL_UNDEFINED_APPLE = 0x8A1C; + public const int GL_PURGEABLE_APPLE = 0x8A1D; + public const int GL_RGB_422_APPLE = 0x8A1F; + public const int GL_UNIFORM_BUFFER_BINDING = 0x8A28; + public const int GL_UNIFORM_BUFFER_START = 0x8A29; + public const int GL_UNIFORM_BUFFER_SIZE = 0x8A2A; + public const int GL_MAX_VERTEX_UNIFORM_BLOCKS = 0x8A2B; + public const int GL_MAX_GEOMETRY_UNIFORM_BLOCKS = 0x8A2C; + public const int GL_MAX_GEOMETRY_UNIFORM_BLOCKS_EXT = 0x8A2C; + public const int GL_MAX_GEOMETRY_UNIFORM_BLOCKS_OES = 0x8A2C; + public const int GL_MAX_FRAGMENT_UNIFORM_BLOCKS = 0x8A2D; + public const int GL_MAX_COMBINED_UNIFORM_BLOCKS = 0x8A2E; + public const int GL_MAX_UNIFORM_BUFFER_BINDINGS = 0x8A2F; + public const int GL_MAX_UNIFORM_BLOCK_SIZE = 0x8A30; + public const int GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = 0x8A31; + public const int GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = 0x8A32; + public const int GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_EXT = 0x8A32; + public const int GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS_OES = 0x8A32; + public const int GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = 0x8A33; + public const int GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = 0x8A34; + public const int GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = 0x8A35; + public const int GL_ACTIVE_UNIFORM_BLOCKS = 0x8A36; + public const int GL_UNIFORM_TYPE = 0x8A37; + public const int GL_UNIFORM_SIZE = 0x8A38; + public const int GL_UNIFORM_NAME_LENGTH = 0x8A39; + public const int GL_UNIFORM_BLOCK_INDEX = 0x8A3A; + public const int GL_UNIFORM_OFFSET = 0x8A3B; + public const int GL_UNIFORM_ARRAY_STRIDE = 0x8A3C; + public const int GL_UNIFORM_MATRIX_STRIDE = 0x8A3D; + public const int GL_UNIFORM_IS_ROW_MAJOR = 0x8A3E; + public const int GL_UNIFORM_BLOCK_BINDING = 0x8A3F; + public const int GL_UNIFORM_BLOCK_DATA_SIZE = 0x8A40; + public const int GL_UNIFORM_BLOCK_NAME_LENGTH = 0x8A41; + public const int GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = 0x8A42; + public const int GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = 0x8A43; + public const int GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = 0x8A44; + public const int GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER = 0x8A45; + public const int GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = 0x8A46; + public const int GL_TEXTURE_SRGB_DECODE_EXT = 0x8A48; + public const int GL_DECODE_EXT = 0x8A49; + public const int GL_SKIP_DECODE_EXT = 0x8A4A; + public const int GL_PROGRAM_PIPELINE_OBJECT_EXT = 0x8A4F; + public const int GL_RGB_RAW_422_APPLE = 0x8A51; + public const int GL_FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT = 0x8A52; + public const int GL_SYNC_OBJECT_APPLE = 0x8A53; + public const int GL_COMPRESSED_SRGB_PVRTC_2BPPV1_EXT = 0x8A54; + public const int GL_COMPRESSED_SRGB_PVRTC_4BPPV1_EXT = 0x8A55; + public const int GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV1_EXT = 0x8A56; + public const int GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV1_EXT = 0x8A57; + // VENDOR: Matrox + // VENDOR: Chromium + // For Brian Paul + // VENDOR: ARB + public const int GL_FRAGMENT_SHADER = 0x8B30; + public const int GL_FRAGMENT_SHADER_ARB = 0x8B30; + public const int GL_VERTEX_SHADER = 0x8B31; + public const int GL_VERTEX_SHADER_ARB = 0x8B31; + // VENDOR: ARB + public const int GL_PROGRAM_OBJECT_ARB = 0x8B40; + public const int GL_PROGRAM_OBJECT_EXT = 0x8B40; + // VENDOR: ARB + public const int GL_SHADER_OBJECT_ARB = 0x8B48; + public const int GL_SHADER_OBJECT_EXT = 0x8B48; + public const int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49; + public const int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB = 0x8B49; + public const int GL_MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A; + public const int GL_MAX_VERTEX_UNIFORM_COMPONENTS_ARB = 0x8B4A; + public const int GL_MAX_VARYING_FLOATS = 0x8B4B; + public const int GL_MAX_VARYING_COMPONENTS = 0x8B4B; + public const int GL_MAX_VARYING_COMPONENTS_EXT = 0x8B4B; + public const int GL_MAX_VARYING_FLOATS_ARB = 0x8B4B; + public const int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C; + public const int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS_ARB = 0x8B4C; + public const int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8B4D; + public const int GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS_ARB = 0x8B4D; + public const int GL_OBJECT_TYPE_ARB = 0x8B4E; + public const int GL_SHADER_TYPE = 0x8B4F; + public const int GL_OBJECT_SUBTYPE_ARB = 0x8B4F; + // VENDOR: ARB + public const int GL_FLOAT_VEC2 = 0x8B50; + public const int GL_FLOAT_VEC2_ARB = 0x8B50; + public const int GL_FLOAT_VEC3 = 0x8B51; + public const int GL_FLOAT_VEC3_ARB = 0x8B51; + public const int GL_FLOAT_VEC4 = 0x8B52; + public const int GL_FLOAT_VEC4_ARB = 0x8B52; + public const int GL_INT_VEC2 = 0x8B53; + public const int GL_INT_VEC2_ARB = 0x8B53; + public const int GL_INT_VEC3 = 0x8B54; + public const int GL_INT_VEC3_ARB = 0x8B54; + public const int GL_INT_VEC4 = 0x8B55; + public const int GL_INT_VEC4_ARB = 0x8B55; + public const int GL_BOOL = 0x8B56; + public const int GL_BOOL_ARB = 0x8B56; + public const int GL_BOOL_VEC2 = 0x8B57; + public const int GL_BOOL_VEC2_ARB = 0x8B57; + public const int GL_BOOL_VEC3 = 0x8B58; + public const int GL_BOOL_VEC3_ARB = 0x8B58; + public const int GL_BOOL_VEC4 = 0x8B59; + public const int GL_BOOL_VEC4_ARB = 0x8B59; + public const int GL_FLOAT_MAT2 = 0x8B5A; + public const int GL_FLOAT_MAT2_ARB = 0x8B5A; + public const int GL_FLOAT_MAT3 = 0x8B5B; + public const int GL_FLOAT_MAT3_ARB = 0x8B5B; + public const int GL_FLOAT_MAT4 = 0x8B5C; + public const int GL_FLOAT_MAT4_ARB = 0x8B5C; + public const int GL_SAMPLER_1D = 0x8B5D; + public const int GL_SAMPLER_1D_ARB = 0x8B5D; + public const int GL_SAMPLER_2D = 0x8B5E; + public const int GL_SAMPLER_2D_ARB = 0x8B5E; + public const int GL_SAMPLER_3D = 0x8B5F; + public const int GL_SAMPLER_3D_ARB = 0x8B5F; + public const int GL_SAMPLER_3D_OES = 0x8B5F; + public const int GL_SAMPLER_CUBE = 0x8B60; + public const int GL_SAMPLER_CUBE_ARB = 0x8B60; + public const int GL_SAMPLER_1D_SHADOW = 0x8B61; + public const int GL_SAMPLER_1D_SHADOW_ARB = 0x8B61; + public const int GL_SAMPLER_2D_SHADOW = 0x8B62; + public const int GL_SAMPLER_2D_SHADOW_ARB = 0x8B62; + public const int GL_SAMPLER_2D_SHADOW_EXT = 0x8B62; + public const int GL_SAMPLER_2D_RECT = 0x8B63; + public const int GL_SAMPLER_2D_RECT_ARB = 0x8B63; + public const int GL_SAMPLER_2D_RECT_SHADOW = 0x8B64; + public const int GL_SAMPLER_2D_RECT_SHADOW_ARB = 0x8B64; + public const int GL_FLOAT_MAT2x3 = 0x8B65; + public const int GL_FLOAT_MAT2x3_NV = 0x8B65; + public const int GL_FLOAT_MAT2x4 = 0x8B66; + public const int GL_FLOAT_MAT2x4_NV = 0x8B66; + public const int GL_FLOAT_MAT3x2 = 0x8B67; + public const int GL_FLOAT_MAT3x2_NV = 0x8B67; + public const int GL_FLOAT_MAT3x4 = 0x8B68; + public const int GL_FLOAT_MAT3x4_NV = 0x8B68; + public const int GL_FLOAT_MAT4x2 = 0x8B69; + public const int GL_FLOAT_MAT4x2_NV = 0x8B69; + public const int GL_FLOAT_MAT4x3 = 0x8B6A; + public const int GL_FLOAT_MAT4x3_NV = 0x8B6A; + // VENDOR: ARB + public const int GL_DELETE_STATUS = 0x8B80; + public const int GL_OBJECT_DELETE_STATUS_ARB = 0x8B80; + public const int GL_COMPILE_STATUS = 0x8B81; + public const int GL_OBJECT_COMPILE_STATUS_ARB = 0x8B81; + public const int GL_LINK_STATUS = 0x8B82; + public const int GL_OBJECT_LINK_STATUS_ARB = 0x8B82; + public const int GL_VALIDATE_STATUS = 0x8B83; + public const int GL_OBJECT_VALIDATE_STATUS_ARB = 0x8B83; + public const int GL_INFO_LOG_LENGTH = 0x8B84; + public const int GL_OBJECT_INFO_LOG_LENGTH_ARB = 0x8B84; + public const int GL_ATTACHED_SHADERS = 0x8B85; + public const int GL_OBJECT_ATTACHED_OBJECTS_ARB = 0x8B85; + public const int GL_ACTIVE_UNIFORMS = 0x8B86; + public const int GL_OBJECT_ACTIVE_UNIFORMS_ARB = 0x8B86; + public const int GL_ACTIVE_UNIFORM_MAX_LENGTH = 0x8B87; + public const int GL_OBJECT_ACTIVE_UNIFORM_MAX_LENGTH_ARB = 0x8B87; + public const int GL_SHADER_SOURCE_LENGTH = 0x8B88; + public const int GL_OBJECT_SHADER_SOURCE_LENGTH_ARB = 0x8B88; + public const int GL_ACTIVE_ATTRIBUTES = 0x8B89; + public const int GL_OBJECT_ACTIVE_ATTRIBUTES_ARB = 0x8B89; + public const int GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8B8A; + public const int GL_OBJECT_ACTIVE_ATTRIBUTE_MAX_LENGTH_ARB = 0x8B8A; + public const int GL_FRAGMENT_SHADER_DERIVATIVE_HINT = 0x8B8B; + public const int GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB = 0x8B8B; + public const int GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES = 0x8B8B; + public const int GL_SHADING_LANGUAGE_VERSION = 0x8B8C; + public const int GL_SHADING_LANGUAGE_VERSION_ARB = 0x8B8C; + public const int GL_CURRENT_PROGRAM = 0x8B8D; + public const int gl_GL_ACTIVE_PROGRAM_EXT = 0x8B8D; + // VENDOR: OES + public const int GL_PALETTE4_RGB8_OES = 0x8B90; + public const int GL_PALETTE4_RGBA8_OES = 0x8B91; + public const int GL_PALETTE4_R5_G6_B5_OES = 0x8B92; + public const int GL_PALETTE4_RGBA4_OES = 0x8B93; + public const int GL_PALETTE4_RGB5_A1_OES = 0x8B94; + public const int GL_PALETTE8_RGB8_OES = 0x8B95; + public const int GL_PALETTE8_RGBA8_OES = 0x8B96; + public const int GL_PALETTE8_R5_G6_B5_OES = 0x8B97; + public const int GL_PALETTE8_RGBA4_OES = 0x8B98; + public const int GL_PALETTE8_RGB5_A1_OES = 0x8B99; + public const int GL_IMPLEMENTATION_COLOR_READ_TYPE = 0x8B9A; + public const int GL_IMPLEMENTATION_COLOR_READ_TYPE_OES = 0x8B9A; + public const int GL_IMPLEMENTATION_COLOR_READ_FORMAT = 0x8B9B; + public const int GL_IMPLEMENTATION_COLOR_READ_FORMAT_OES = 0x8B9B; + public const int GL_POINT_SIZE_ARRAY_OES = 0x8B9C; + public const int GL_TEXTURE_CROP_RECT_OES = 0x8B9D; + public const int GL_MATRIX_INDEX_ARRAY_BUFFER_BINDING_OES = 0x8B9E; + public const int GL_POINT_SIZE_ARRAY_BUFFER_BINDING_OES = 0x8B9F; + // VENDOR: Seaweed + // VENDOR: MESA + public const int GL_FRAGMENT_PROGRAM_POSITION_MESA = 0x8BB0; + public const int GL_FRAGMENT_PROGRAM_CALLBACK_MESA = 0x8BB1; + public const int GL_FRAGMENT_PROGRAM_CALLBACK_FUNC_MESA = 0x8BB2; + public const int GL_FRAGMENT_PROGRAM_CALLBACK_DATA_MESA = 0x8BB3; + public const int GL_VERTEX_PROGRAM_POSITION_MESA = 0x8BB4; + public const int GL_VERTEX_PROGRAM_CALLBACK_MESA = 0x8BB5; + public const int GL_VERTEX_PROGRAM_CALLBACK_FUNC_MESA = 0x8BB6; + public const int GL_VERTEX_PROGRAM_CALLBACK_DATA_MESA = 0x8BB7; + public const int GL_TILE_RASTER_ORDER_FIXED_MESA = 0x8BB8; + public const int GL_TILE_RASTER_ORDER_INCREASING_X_MESA = 0x8BB9; + public const int GL_TILE_RASTER_ORDER_INCREASING_Y_MESA = 0x8BBA; + public const int GL_FRAMEBUFFER_FLIP_Y_MESA = 0x8BBB; + public const int GL_FRAMEBUFFER_FLIP_X_MESA = 0x8BBC; + public const int GL_FRAMEBUFFER_SWAP_XY_MESA = 0x8BBD; + // VENDOR: QCOM + // Reassigned from AMD to QCOM + public const int GL_COUNTER_TYPE_AMD = 0x8BC0; + public const int GL_COUNTER_RANGE_AMD = 0x8BC1; + public const int GL_UNSIGNED_INT64_AMD = 0x8BC2; + public const int GL_PERCENTAGE_AMD = 0x8BC3; + public const int GL_PERFMON_RESULT_AVAILABLE_AMD = 0x8BC4; + public const int GL_PERFMON_RESULT_SIZE_AMD = 0x8BC5; + public const int GL_PERFMON_RESULT_AMD = 0x8BC6; + public const int GL_TEXTURE_WIDTH_QCOM = 0x8BD2; + public const int GL_TEXTURE_HEIGHT_QCOM = 0x8BD3; + public const int GL_TEXTURE_DEPTH_QCOM = 0x8BD4; + public const int GL_TEXTURE_INTERNAL_FORMAT_QCOM = 0x8BD5; + public const int GL_TEXTURE_FORMAT_QCOM = 0x8BD6; + public const int GL_TEXTURE_TYPE_QCOM = 0x8BD7; + public const int GL_TEXTURE_IMAGE_VALID_QCOM = 0x8BD8; + public const int GL_TEXTURE_NUM_LEVELS_QCOM = 0x8BD9; + public const int GL_TEXTURE_TARGET_QCOM = 0x8BDA; + public const int GL_TEXTURE_OBJECT_VALID_QCOM = 0x8BDB; + public const int GL_STATE_RESTORE = 0x8BDC; + public const int GL_SAMPLER_EXTERNAL_2D_Y2Y_EXT = 0x8BE7; + public const int GL_TEXTURE_PROTECTED_EXT = 0x8BFA; + public const int GL_TEXTURE_FOVEATED_FEATURE_BITS_QCOM = 0x8BFB; + public const int GL_TEXTURE_FOVEATED_MIN_PIXEL_DENSITY_QCOM = 0x8BFC; + public const int GL_TEXTURE_FOVEATED_FEATURE_QUERY_QCOM = 0x8BFD; + public const int GL_TEXTURE_FOVEATED_NUM_FOCAL_POINTS_QUERY_QCOM = 0x8BFE; + public const int GL_FRAMEBUFFER_INCOMPLETE_FOVEATION_QCOM = 0x8BFF; + // VENDOR: IMG + public const int GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG = 0x8C00; + public const int GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG = 0x8C01; + public const int GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG = 0x8C02; + public const int GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG = 0x8C03; + public const int GL_MODULATE_COLOR_IMG = 0x8C04; + public const int GL_RECIP_ADD_SIGNED_ALPHA_IMG = 0x8C05; + public const int GL_TEXTURE_ALPHA_MODULATE_IMG = 0x8C06; + public const int GL_FACTOR_ALPHA_MODULATE_IMG = 0x8C07; + public const int GL_FRAGMENT_ALPHA_MODULATE_IMG = 0x8C08; + public const int GL_ADD_BLEND_IMG = 0x8C09; + public const int GL_SGX_BINARY_IMG = 0x8C0A; + // VENDOR: NV + // For Pat Brown + public const int GL_TEXTURE_RED_TYPE = 0x8C10; + public const int GL_TEXTURE_RED_TYPE_ARB = 0x8C10; + public const int GL_TEXTURE_GREEN_TYPE = 0x8C11; + public const int GL_TEXTURE_GREEN_TYPE_ARB = 0x8C11; + public const int GL_TEXTURE_BLUE_TYPE = 0x8C12; + public const int GL_TEXTURE_BLUE_TYPE_ARB = 0x8C12; + public const int GL_TEXTURE_ALPHA_TYPE = 0x8C13; + public const int GL_TEXTURE_ALPHA_TYPE_ARB = 0x8C13; + public const int GL_TEXTURE_LUMINANCE_TYPE = 0x8C14; + public const int GL_TEXTURE_LUMINANCE_TYPE_ARB = 0x8C14; + public const int GL_TEXTURE_INTENSITY_TYPE = 0x8C15; + public const int GL_TEXTURE_INTENSITY_TYPE_ARB = 0x8C15; + public const int GL_TEXTURE_DEPTH_TYPE = 0x8C16; + public const int GL_TEXTURE_DEPTH_TYPE_ARB = 0x8C16; + public const int GL_UNSIGNED_NORMALIZED = 0x8C17; + public const int GL_UNSIGNED_NORMALIZED_ARB = 0x8C17; + public const int GL_UNSIGNED_NORMALIZED_EXT = 0x8C17; + public const int GL_TEXTURE_1D_ARRAY = 0x8C18; + public const int GL_TEXTURE_1D_ARRAY_EXT = 0x8C18; + public const int GL_PROXY_TEXTURE_1D_ARRAY = 0x8C19; + public const int GL_PROXY_TEXTURE_1D_ARRAY_EXT = 0x8C19; + public const int GL_TEXTURE_2D_ARRAY = 0x8C1A; + public const int GL_TEXTURE_2D_ARRAY_EXT = 0x8C1A; + public const int GL_PROXY_TEXTURE_2D_ARRAY = 0x8C1B; + public const int GL_PROXY_TEXTURE_2D_ARRAY_EXT = 0x8C1B; + public const int GL_TEXTURE_BINDING_1D_ARRAY = 0x8C1C; + public const int GL_TEXTURE_BINDING_1D_ARRAY_EXT = 0x8C1C; + public const int GL_TEXTURE_BINDING_2D_ARRAY = 0x8C1D; + public const int GL_TEXTURE_BINDING_2D_ARRAY_EXT = 0x8C1D; + public const int GL_GEOMETRY_PROGRAM_NV = 0x8C26; + public const int GL_MAX_PROGRAM_OUTPUT_VERTICES_NV = 0x8C27; + public const int GL_MAX_PROGRAM_TOTAL_OUTPUT_COMPONENTS_NV = 0x8C28; + public const int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = 0x8C29; + public const int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_ARB = 0x8C29; + public const int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_EXT = 0x8C29; + public const int GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS_OES = 0x8C29; + public const int GL_TEXTURE_BUFFER = 0x8C2A; + public const int GL_TEXTURE_BUFFER_ARB = 0x8C2A; + public const int GL_TEXTURE_BUFFER_EXT = 0x8C2A; + public const int GL_TEXTURE_BUFFER_OES = 0x8C2A; + public const int GL_TEXTURE_BUFFER_BINDING = 0x8C2A; + public const int GL_TEXTURE_BUFFER_BINDING_EXT = 0x8C2A; + public const int GL_TEXTURE_BUFFER_BINDING_OES = 0x8C2A; + public const int GL_MAX_TEXTURE_BUFFER_SIZE = 0x8C2B; + public const int GL_MAX_TEXTURE_BUFFER_SIZE_ARB = 0x8C2B; + public const int GL_MAX_TEXTURE_BUFFER_SIZE_EXT = 0x8C2B; + public const int GL_MAX_TEXTURE_BUFFER_SIZE_OES = 0x8C2B; + public const int GL_TEXTURE_BINDING_BUFFER = 0x8C2C; + public const int GL_TEXTURE_BINDING_BUFFER_ARB = 0x8C2C; + public const int GL_TEXTURE_BINDING_BUFFER_EXT = 0x8C2C; + public const int GL_TEXTURE_BINDING_BUFFER_OES = 0x8C2C; + public const int GL_TEXTURE_BUFFER_DATA_STORE_BINDING = 0x8C2D; + public const int GL_TEXTURE_BUFFER_DATA_STORE_BINDING_ARB = 0x8C2D; + public const int GL_TEXTURE_BUFFER_DATA_STORE_BINDING_EXT = 0x8C2D; + public const int GL_TEXTURE_BUFFER_DATA_STORE_BINDING_OES = 0x8C2D; + public const int GL_TEXTURE_BUFFER_FORMAT_ARB = 0x8C2E; + public const int GL_TEXTURE_BUFFER_FORMAT_EXT = 0x8C2E; + public const int GL_ANY_SAMPLES_PASSED = 0x8C2F; + public const int GL_ANY_SAMPLES_PASSED_EXT = 0x8C2F; + public const int GL_SAMPLE_SHADING = 0x8C36; + public const int GL_SAMPLE_SHADING_ARB = 0x8C36; + public const int GL_SAMPLE_SHADING_OES = 0x8C36; + public const int GL_MIN_SAMPLE_SHADING_VALUE = 0x8C37; + public const int GL_MIN_SAMPLE_SHADING_VALUE_ARB = 0x8C37; + public const int GL_MIN_SAMPLE_SHADING_VALUE_OES = 0x8C37; + public const int GL_R11F_G11F_B10F = 0x8C3A; + public const int GL_R11F_G11F_B10F_APPLE = 0x8C3A; + public const int GL_R11F_G11F_B10F_EXT = 0x8C3A; + public const int GL_UNSIGNED_INT_10F_11F_11F_REV = 0x8C3B; + public const int GL_UNSIGNED_INT_10F_11F_11F_REV_APPLE = 0x8C3B; + public const int GL_UNSIGNED_INT_10F_11F_11F_REV_EXT = 0x8C3B; + public const int GL_RGBA_SIGNED_COMPONENTS_EXT = 0x8C3C; + public const int GL_RGB9_E5 = 0x8C3D; + public const int GL_RGB9_E5_APPLE = 0x8C3D; + public const int GL_RGB9_E5_EXT = 0x8C3D; + public const int GL_UNSIGNED_INT_5_9_9_9_REV = 0x8C3E; + public const int GL_UNSIGNED_INT_5_9_9_9_REV_APPLE = 0x8C3E; + public const int GL_UNSIGNED_INT_5_9_9_9_REV_EXT = 0x8C3E; + public const int GL_TEXTURE_SHARED_SIZE = 0x8C3F; + public const int GL_TEXTURE_SHARED_SIZE_EXT = 0x8C3F; + public const int GL_SRGB = 0x8C40; + public const int GL_SRGB_EXT = 0x8C40; + public const int GL_SRGB8 = 0x8C41; + public const int GL_SRGB8_EXT = 0x8C41; + public const int GL_SRGB8_NV = 0x8C41; + public const int GL_SRGB_ALPHA = 0x8C42; + public const int GL_SRGB_ALPHA_EXT = 0x8C42; + public const int GL_SRGB8_ALPHA8 = 0x8C43; + public const int GL_SRGB8_ALPHA8_EXT = 0x8C43; + public const int GL_SLUMINANCE_ALPHA = 0x8C44; + public const int GL_SLUMINANCE_ALPHA_EXT = 0x8C44; + public const int GL_SLUMINANCE_ALPHA_NV = 0x8C44; + public const int GL_SLUMINANCE8_ALPHA8 = 0x8C45; + public const int GL_SLUMINANCE8_ALPHA8_EXT = 0x8C45; + public const int GL_SLUMINANCE8_ALPHA8_NV = 0x8C45; + public const int GL_SLUMINANCE = 0x8C46; + public const int GL_SLUMINANCE_EXT = 0x8C46; + public const int GL_SLUMINANCE_NV = 0x8C46; + public const int GL_SLUMINANCE8 = 0x8C47; + public const int GL_SLUMINANCE8_EXT = 0x8C47; + public const int GL_SLUMINANCE8_NV = 0x8C47; + public const int GL_COMPRESSED_SRGB = 0x8C48; + public const int GL_COMPRESSED_SRGB_EXT = 0x8C48; + public const int GL_COMPRESSED_SRGB_ALPHA = 0x8C49; + public const int GL_COMPRESSED_SRGB_ALPHA_EXT = 0x8C49; + public const int GL_COMPRESSED_SLUMINANCE = 0x8C4A; + public const int GL_COMPRESSED_SLUMINANCE_EXT = 0x8C4A; + public const int GL_COMPRESSED_SLUMINANCE_ALPHA = 0x8C4B; + public const int GL_COMPRESSED_SLUMINANCE_ALPHA_EXT = 0x8C4B; + public const int GL_COMPRESSED_SRGB_S3TC_DXT1_EXT = 0x8C4C; + public const int GL_COMPRESSED_SRGB_S3TC_DXT1_NV = 0x8C4C; + public const int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 0x8C4D; + public const int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_NV = 0x8C4D; + public const int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 0x8C4E; + public const int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_NV = 0x8C4E; + public const int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 0x8C4F; + public const int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_NV = 0x8C4F; + public const int GL_COMPRESSED_LUMINANCE_LATC1_EXT = 0x8C70; + public const int GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT = 0x8C71; + public const int GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C72; + public const int GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT = 0x8C73; + public const int GL_TESS_CONTROL_PROGRAM_PARAMETER_BUFFER_NV = 0x8C74; + public const int GL_TESS_EVALUATION_PROGRAM_PARAMETER_BUFFER_NV = 0x8C75; + public const int GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = 0x8C76; + public const int GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH_EXT = 0x8C76; + public const int GL_BACK_PRIMARY_COLOR_NV = 0x8C77; + public const int GL_BACK_SECONDARY_COLOR_NV = 0x8C78; + public const int GL_TEXTURE_COORD_NV = 0x8C79; + public const int GL_CLIP_DISTANCE_NV = 0x8C7A; + public const int GL_VERTEX_ID_NV = 0x8C7B; + public const int GL_PRIMITIVE_ID_NV = 0x8C7C; + public const int GL_GENERIC_ATTRIB_NV = 0x8C7D; + public const int GL_TRANSFORM_FEEDBACK_ATTRIBS_NV = 0x8C7E; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_MODE = 0x8C7F; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_MODE_EXT = 0x8C7F; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_MODE_NV = 0x8C7F; + public const int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS = 0x8C80; + public const int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_EXT = 0x8C80; + public const int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS_NV = 0x8C80; + public const int GL_ACTIVE_VARYINGS_NV = 0x8C81; + public const int GL_ACTIVE_VARYING_MAX_LENGTH_NV = 0x8C82; + public const int GL_TRANSFORM_FEEDBACK_VARYINGS = 0x8C83; + public const int GL_TRANSFORM_FEEDBACK_VARYINGS_EXT = 0x8C83; + public const int GL_TRANSFORM_FEEDBACK_VARYINGS_NV = 0x8C83; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_START = 0x8C84; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_START_EXT = 0x8C84; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_START_NV = 0x8C84; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = 0x8C85; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_EXT = 0x8C85; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_SIZE_NV = 0x8C85; + public const int GL_TRANSFORM_FEEDBACK_RECORD_NV = 0x8C86; + public const int GL_PRIMITIVES_GENERATED = 0x8C87; + public const int GL_PRIMITIVES_GENERATED_EXT = 0x8C87; + public const int GL_PRIMITIVES_GENERATED_NV = 0x8C87; + public const int GL_PRIMITIVES_GENERATED_OES = 0x8C87; + public const int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = 0x8C88; + public const int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_EXT = 0x8C88; + public const int GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN_NV = 0x8C88; + public const int GL_RASTERIZER_DISCARD = 0x8C89; + public const int GL_RASTERIZER_DISCARD_EXT = 0x8C89; + public const int GL_RASTERIZER_DISCARD_NV = 0x8C89; + public const int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS = 0x8C8A; + public const int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_EXT = 0x8C8A; + public const int GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS_NV = 0x8C8A; + public const int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS = 0x8C8B; + public const int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_EXT = 0x8C8B; + public const int GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS_NV = 0x8C8B; + public const int GL_INTERLEAVED_ATTRIBS = 0x8C8C; + public const int GL_INTERLEAVED_ATTRIBS_EXT = 0x8C8C; + public const int GL_INTERLEAVED_ATTRIBS_NV = 0x8C8C; + public const int GL_SEPARATE_ATTRIBS = 0x8C8D; + public const int GL_SEPARATE_ATTRIBS_EXT = 0x8C8D; + public const int GL_SEPARATE_ATTRIBS_NV = 0x8C8D; + public const int GL_TRANSFORM_FEEDBACK_BUFFER = 0x8C8E; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_EXT = 0x8C8E; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_NV = 0x8C8E; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = 0x8C8F; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_EXT = 0x8C8F; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_BINDING_NV = 0x8C8F; + // VENDOR: QCOM + // For Affie Munshi. Reassigned from AMD to QCOM (bug 5874) + public const int GL_MOTION_ESTIMATION_SEARCH_BLOCK_X_QCOM = 0x8C90; + public const int GL_MOTION_ESTIMATION_SEARCH_BLOCK_Y_QCOM = 0x8C91; + public const int GL_ATC_RGB_AMD = 0x8C92; + public const int GL_ATC_RGBA_EXPLICIT_ALPHA_AMD = 0x8C93; + // VENDOR: ARB + public const int GL_POINT_SPRITE_COORD_ORIGIN = 0x8CA0; + public const int GL_LOWER_LEFT = 0x8CA1; + public const int GL_LOWER_LEFT_EXT = 0x8CA1; + public const int GL_UPPER_LEFT = 0x8CA2; + public const int GL_UPPER_LEFT_EXT = 0x8CA2; + public const int GL_STENCIL_BACK_REF = 0x8CA3; + public const int GL_STENCIL_BACK_VALUE_MASK = 0x8CA4; + public const int GL_STENCIL_BACK_WRITEMASK = 0x8CA5; + public const int GL_DRAW_FRAMEBUFFER_BINDING = 0x8CA6; + public const int GL_DRAW_FRAMEBUFFER_BINDING_ANGLE = 0x8CA6; + public const int GL_DRAW_FRAMEBUFFER_BINDING_APPLE = 0x8CA6; + public const int GL_DRAW_FRAMEBUFFER_BINDING_EXT = 0x8CA6; + public const int GL_DRAW_FRAMEBUFFER_BINDING_NV = 0x8CA6; + public const int GL_FRAMEBUFFER_BINDING = 0x8CA6; + public const int GL_FRAMEBUFFER_BINDING_ANGLE = 0x8CA6; + public const int GL_FRAMEBUFFER_BINDING_EXT = 0x8CA6; + public const int GL_FRAMEBUFFER_BINDING_OES = 0x8CA6; + public const int GL_RENDERBUFFER_BINDING = 0x8CA7; + public const int GL_RENDERBUFFER_BINDING_ANGLE = 0x8CA7; + public const int GL_RENDERBUFFER_BINDING_EXT = 0x8CA7; + public const int GL_RENDERBUFFER_BINDING_OES = 0x8CA7; + public const int GL_READ_FRAMEBUFFER = 0x8CA8; + public const int GL_READ_FRAMEBUFFER_ANGLE = 0x8CA8; + public const int GL_READ_FRAMEBUFFER_APPLE = 0x8CA8; + public const int GL_READ_FRAMEBUFFER_EXT = 0x8CA8; + public const int GL_READ_FRAMEBUFFER_NV = 0x8CA8; + public const int GL_DRAW_FRAMEBUFFER = 0x8CA9; + public const int GL_DRAW_FRAMEBUFFER_ANGLE = 0x8CA9; + public const int GL_DRAW_FRAMEBUFFER_APPLE = 0x8CA9; + public const int GL_DRAW_FRAMEBUFFER_EXT = 0x8CA9; + public const int GL_DRAW_FRAMEBUFFER_NV = 0x8CA9; + public const int GL_READ_FRAMEBUFFER_BINDING = 0x8CAA; + public const int GL_READ_FRAMEBUFFER_BINDING_ANGLE = 0x8CAA; + public const int GL_READ_FRAMEBUFFER_BINDING_APPLE = 0x8CAA; + public const int GL_READ_FRAMEBUFFER_BINDING_EXT = 0x8CAA; + public const int GL_READ_FRAMEBUFFER_BINDING_NV = 0x8CAA; + public const int GL_RENDERBUFFER_COVERAGE_SAMPLES_NV = 0x8CAB; + public const int GL_RENDERBUFFER_SAMPLES = 0x8CAB; + public const int GL_RENDERBUFFER_SAMPLES_ANGLE = 0x8CAB; + public const int GL_RENDERBUFFER_SAMPLES_APPLE = 0x8CAB; + public const int GL_RENDERBUFFER_SAMPLES_EXT = 0x8CAB; + public const int GL_RENDERBUFFER_SAMPLES_NV = 0x8CAB; + public const int GL_DEPTH_COMPONENT32F = 0x8CAC; + public const int GL_DEPTH32F_STENCIL8 = 0x8CAD; + // VENDOR: ZiiLabs + // For Barthold Lichtenbelt 2004/12/1 + // VENDOR: ARB + // Framebuffer object specification + headroom + public const int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8CD0; + public const int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT = 0x8CD0; + public const int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES = 0x8CD0; + public const int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8CD1; + public const int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT = 0x8CD1; + public const int GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES = 0x8CD1; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8CD2; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT = 0x8CD2; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES = 0x8CD2; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8CD3; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT = 0x8CD3; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES = 0x8CD3; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT = 0x8CD4; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES = 0x8CD4; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = 0x8CD4; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT = 0x8CD4; + public const int GL_FRAMEBUFFER_COMPLETE = 0x8CD5; + public const int GL_FRAMEBUFFER_COMPLETE_EXT = 0x8CD5; + public const int GL_FRAMEBUFFER_COMPLETE_OES = 0x8CD5; + public const int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8CD6; + public const int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_EXT = 0x8CD6; + public const int GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES = 0x8CD6; + public const int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8CD7; + public const int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_EXT = 0x8CD7; + public const int GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT_OES = 0x8CD7; + public const int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 0x8CD9; + public const int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_EXT = 0x8CD9; + public const int GL_FRAMEBUFFER_INCOMPLETE_DIMENSIONS_OES = 0x8CD9; + public const int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_EXT = 0x8CDA; + public const int GL_FRAMEBUFFER_INCOMPLETE_FORMATS_OES = 0x8CDA; + public const int GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER = 0x8CDB; + public const int GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_EXT = 0x8CDB; + public const int GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER_OES = 0x8CDB; + public const int GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER = 0x8CDC; + public const int GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_EXT = 0x8CDC; + public const int GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER_OES = 0x8CDC; + public const int GL_FRAMEBUFFER_UNSUPPORTED = 0x8CDD; + public const int GL_FRAMEBUFFER_UNSUPPORTED_EXT = 0x8CDD; + public const int GL_FRAMEBUFFER_UNSUPPORTED_OES = 0x8CDD; + public const int GL_MAX_COLOR_ATTACHMENTS = 0x8CDF; + public const int GL_MAX_COLOR_ATTACHMENTS_EXT = 0x8CDF; + public const int GL_MAX_COLOR_ATTACHMENTS_NV = 0x8CDF; + public const int GL_COLOR_ATTACHMENT0 = 0x8CE0; + public const int GL_COLOR_ATTACHMENT0_EXT = 0x8CE0; + public const int GL_COLOR_ATTACHMENT0_NV = 0x8CE0; + public const int GL_COLOR_ATTACHMENT0_OES = 0x8CE0; + public const int GL_COLOR_ATTACHMENT1 = 0x8CE1; + public const int GL_COLOR_ATTACHMENT1_EXT = 0x8CE1; + public const int GL_COLOR_ATTACHMENT1_NV = 0x8CE1; + public const int GL_COLOR_ATTACHMENT2 = 0x8CE2; + public const int GL_COLOR_ATTACHMENT2_EXT = 0x8CE2; + public const int GL_COLOR_ATTACHMENT2_NV = 0x8CE2; + public const int GL_COLOR_ATTACHMENT3 = 0x8CE3; + public const int GL_COLOR_ATTACHMENT3_EXT = 0x8CE3; + public const int GL_COLOR_ATTACHMENT3_NV = 0x8CE3; + public const int GL_COLOR_ATTACHMENT4 = 0x8CE4; + public const int GL_COLOR_ATTACHMENT4_EXT = 0x8CE4; + public const int GL_COLOR_ATTACHMENT4_NV = 0x8CE4; + public const int GL_COLOR_ATTACHMENT5 = 0x8CE5; + public const int GL_COLOR_ATTACHMENT5_EXT = 0x8CE5; + public const int GL_COLOR_ATTACHMENT5_NV = 0x8CE5; + public const int GL_COLOR_ATTACHMENT6 = 0x8CE6; + public const int GL_COLOR_ATTACHMENT6_EXT = 0x8CE6; + public const int GL_COLOR_ATTACHMENT6_NV = 0x8CE6; + public const int GL_COLOR_ATTACHMENT7 = 0x8CE7; + public const int GL_COLOR_ATTACHMENT7_EXT = 0x8CE7; + public const int GL_COLOR_ATTACHMENT7_NV = 0x8CE7; + public const int GL_COLOR_ATTACHMENT8 = 0x8CE8; + public const int GL_COLOR_ATTACHMENT8_EXT = 0x8CE8; + public const int GL_COLOR_ATTACHMENT8_NV = 0x8CE8; + public const int GL_COLOR_ATTACHMENT9 = 0x8CE9; + public const int GL_COLOR_ATTACHMENT9_EXT = 0x8CE9; + public const int GL_COLOR_ATTACHMENT9_NV = 0x8CE9; + public const int GL_COLOR_ATTACHMENT10 = 0x8CEA; + public const int GL_COLOR_ATTACHMENT10_EXT = 0x8CEA; + public const int GL_COLOR_ATTACHMENT10_NV = 0x8CEA; + public const int GL_COLOR_ATTACHMENT11 = 0x8CEB; + public const int GL_COLOR_ATTACHMENT11_EXT = 0x8CEB; + public const int GL_COLOR_ATTACHMENT11_NV = 0x8CEB; + public const int GL_COLOR_ATTACHMENT12 = 0x8CEC; + public const int GL_COLOR_ATTACHMENT12_EXT = 0x8CEC; + public const int GL_COLOR_ATTACHMENT12_NV = 0x8CEC; + public const int GL_COLOR_ATTACHMENT13 = 0x8CED; + public const int GL_COLOR_ATTACHMENT13_EXT = 0x8CED; + public const int GL_COLOR_ATTACHMENT13_NV = 0x8CED; + public const int GL_COLOR_ATTACHMENT14 = 0x8CEE; + public const int GL_COLOR_ATTACHMENT14_EXT = 0x8CEE; + public const int GL_COLOR_ATTACHMENT14_NV = 0x8CEE; + public const int GL_COLOR_ATTACHMENT15 = 0x8CEF; + public const int GL_COLOR_ATTACHMENT15_EXT = 0x8CEF; + public const int GL_COLOR_ATTACHMENT15_NV = 0x8CEF; + public const int GL_COLOR_ATTACHMENT16 = 0x8CF0; + public const int GL_COLOR_ATTACHMENT17 = 0x8CF1; + public const int GL_COLOR_ATTACHMENT18 = 0x8CF2; + public const int GL_COLOR_ATTACHMENT19 = 0x8CF3; + public const int GL_COLOR_ATTACHMENT20 = 0x8CF4; + public const int GL_COLOR_ATTACHMENT21 = 0x8CF5; + public const int GL_COLOR_ATTACHMENT22 = 0x8CF6; + public const int GL_COLOR_ATTACHMENT23 = 0x8CF7; + public const int GL_COLOR_ATTACHMENT24 = 0x8CF8; + public const int GL_COLOR_ATTACHMENT25 = 0x8CF9; + public const int GL_COLOR_ATTACHMENT26 = 0x8CFA; + public const int GL_COLOR_ATTACHMENT27 = 0x8CFB; + public const int GL_COLOR_ATTACHMENT28 = 0x8CFC; + public const int GL_COLOR_ATTACHMENT29 = 0x8CFD; + public const int GL_COLOR_ATTACHMENT30 = 0x8CFE; + public const int GL_COLOR_ATTACHMENT31 = 0x8CFF; + public const int GL_DEPTH_ATTACHMENT = 0x8D00; + public const int GL_DEPTH_ATTACHMENT_EXT = 0x8D00; + public const int GL_DEPTH_ATTACHMENT_OES = 0x8D00; + public const int GL_STENCIL_ATTACHMENT = 0x8D20; + public const int GL_STENCIL_ATTACHMENT_EXT = 0x8D20; + public const int GL_STENCIL_ATTACHMENT_OES = 0x8D20; + public const int GL_FRAMEBUFFER = 0x8D40; + public const int GL_FRAMEBUFFER_EXT = 0x8D40; + public const int GL_FRAMEBUFFER_OES = 0x8D40; + public const int GL_RENDERBUFFER = 0x8D41; + public const int GL_RENDERBUFFER_EXT = 0x8D41; + public const int GL_RENDERBUFFER_OES = 0x8D41; + public const int GL_RENDERBUFFER_WIDTH = 0x8D42; + public const int GL_RENDERBUFFER_WIDTH_EXT = 0x8D42; + public const int GL_RENDERBUFFER_WIDTH_OES = 0x8D42; + public const int GL_RENDERBUFFER_HEIGHT = 0x8D43; + public const int GL_RENDERBUFFER_HEIGHT_EXT = 0x8D43; + public const int GL_RENDERBUFFER_HEIGHT_OES = 0x8D43; + public const int GL_RENDERBUFFER_INTERNAL_FORMAT = 0x8D44; + public const int GL_RENDERBUFFER_INTERNAL_FORMAT_EXT = 0x8D44; + public const int GL_RENDERBUFFER_INTERNAL_FORMAT_OES = 0x8D44; + public const int GL_STENCIL_INDEX1 = 0x8D46; + public const int GL_STENCIL_INDEX1_EXT = 0x8D46; + public const int GL_STENCIL_INDEX1_OES = 0x8D46; + public const int GL_STENCIL_INDEX4 = 0x8D47; + public const int GL_STENCIL_INDEX4_EXT = 0x8D47; + public const int GL_STENCIL_INDEX4_OES = 0x8D47; + public const int GL_STENCIL_INDEX8 = 0x8D48; + public const int GL_STENCIL_INDEX8_EXT = 0x8D48; + public const int GL_STENCIL_INDEX8_OES = 0x8D48; + public const int GL_STENCIL_INDEX16 = 0x8D49; + public const int GL_STENCIL_INDEX16_EXT = 0x8D49; + public const int GL_RENDERBUFFER_RED_SIZE = 0x8D50; + public const int GL_RENDERBUFFER_RED_SIZE_EXT = 0x8D50; + public const int GL_RENDERBUFFER_RED_SIZE_OES = 0x8D50; + public const int GL_RENDERBUFFER_GREEN_SIZE = 0x8D51; + public const int GL_RENDERBUFFER_GREEN_SIZE_EXT = 0x8D51; + public const int GL_RENDERBUFFER_GREEN_SIZE_OES = 0x8D51; + public const int GL_RENDERBUFFER_BLUE_SIZE = 0x8D52; + public const int GL_RENDERBUFFER_BLUE_SIZE_EXT = 0x8D52; + public const int GL_RENDERBUFFER_BLUE_SIZE_OES = 0x8D52; + public const int GL_RENDERBUFFER_ALPHA_SIZE = 0x8D53; + public const int GL_RENDERBUFFER_ALPHA_SIZE_EXT = 0x8D53; + public const int GL_RENDERBUFFER_ALPHA_SIZE_OES = 0x8D53; + public const int GL_RENDERBUFFER_DEPTH_SIZE = 0x8D54; + public const int GL_RENDERBUFFER_DEPTH_SIZE_EXT = 0x8D54; + public const int GL_RENDERBUFFER_DEPTH_SIZE_OES = 0x8D54; + public const int GL_RENDERBUFFER_STENCIL_SIZE = 0x8D55; + public const int GL_RENDERBUFFER_STENCIL_SIZE_EXT = 0x8D55; + public const int GL_RENDERBUFFER_STENCIL_SIZE_OES = 0x8D55; + public const int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = 0x8D56; + public const int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE = 0x8D56; + public const int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE = 0x8D56; + public const int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT = 0x8D56; + public const int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_NV = 0x8D56; + public const int GL_MAX_SAMPLES = 0x8D57; + public const int GL_MAX_SAMPLES_ANGLE = 0x8D57; + public const int GL_MAX_SAMPLES_APPLE = 0x8D57; + public const int GL_MAX_SAMPLES_EXT = 0x8D57; + public const int GL_MAX_SAMPLES_NV = 0x8D57; + // VENDOR: OES + public const int GL_TEXTURE_GEN_STR_OES = 0x8D60; + public const int GL_HALF_FLOAT_OES = 0x8D61; + public const int GL_RGB565_OES = 0x8D62; + public const int GL_RGB565 = 0x8D62; + public const int GL_ETC1_RGB8_OES = 0x8D64; + public const int GL_TEXTURE_EXTERNAL_OES = 0x8D65; + public const int GL_SAMPLER_EXTERNAL_OES = 0x8D66; + public const int GL_TEXTURE_BINDING_EXTERNAL_OES = 0x8D67; + public const int GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES = 0x8D68; + public const int GL_PRIMITIVE_RESTART_FIXED_INDEX = 0x8D69; + public const int GL_ANY_SAMPLES_PASSED_CONSERVATIVE = 0x8D6A; + public const int GL_ANY_SAMPLES_PASSED_CONSERVATIVE_EXT = 0x8D6A; + public const int GL_MAX_ELEMENT_INDEX = 0x8D6B; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT = 0x8D6C; + // VENDOR: NV + // For Pat Brown 2005/10/13 + public const int GL_RGBA32UI = 0x8D70; + public const int GL_RGBA32UI_EXT = 0x8D70; + public const int GL_RGB32UI = 0x8D71; + public const int GL_RGB32UI_EXT = 0x8D71; + public const int GL_ALPHA32UI_EXT = 0x8D72; + public const int GL_INTENSITY32UI_EXT = 0x8D73; + public const int GL_LUMINANCE32UI_EXT = 0x8D74; + public const int GL_LUMINANCE_ALPHA32UI_EXT = 0x8D75; + public const int GL_RGBA16UI = 0x8D76; + public const int GL_RGBA16UI_EXT = 0x8D76; + public const int GL_RGB16UI = 0x8D77; + public const int GL_RGB16UI_EXT = 0x8D77; + public const int GL_ALPHA16UI_EXT = 0x8D78; + public const int GL_INTENSITY16UI_EXT = 0x8D79; + public const int GL_LUMINANCE16UI_EXT = 0x8D7A; + public const int GL_LUMINANCE_ALPHA16UI_EXT = 0x8D7B; + public const int GL_RGBA8UI = 0x8D7C; + public const int GL_RGBA8UI_EXT = 0x8D7C; + public const int GL_RGB8UI = 0x8D7D; + public const int GL_RGB8UI_EXT = 0x8D7D; + public const int GL_ALPHA8UI_EXT = 0x8D7E; + public const int GL_INTENSITY8UI_EXT = 0x8D7F; + public const int GL_LUMINANCE8UI_EXT = 0x8D80; + public const int GL_LUMINANCE_ALPHA8UI_EXT = 0x8D81; + public const int GL_RGBA32I = 0x8D82; + public const int GL_RGBA32I_EXT = 0x8D82; + public const int GL_RGB32I = 0x8D83; + public const int GL_RGB32I_EXT = 0x8D83; + public const int GL_ALPHA32I_EXT = 0x8D84; + public const int GL_INTENSITY32I_EXT = 0x8D85; + public const int GL_LUMINANCE32I_EXT = 0x8D86; + public const int GL_LUMINANCE_ALPHA32I_EXT = 0x8D87; + public const int GL_RGBA16I = 0x8D88; + public const int GL_RGBA16I_EXT = 0x8D88; + public const int GL_RGB16I = 0x8D89; + public const int GL_RGB16I_EXT = 0x8D89; + public const int GL_ALPHA16I_EXT = 0x8D8A; + public const int GL_INTENSITY16I_EXT = 0x8D8B; + public const int GL_LUMINANCE16I_EXT = 0x8D8C; + public const int GL_LUMINANCE_ALPHA16I_EXT = 0x8D8D; + public const int GL_RGBA8I = 0x8D8E; + public const int GL_RGBA8I_EXT = 0x8D8E; + public const int GL_RGB8I = 0x8D8F; + public const int GL_RGB8I_EXT = 0x8D8F; + public const int GL_ALPHA8I_EXT = 0x8D90; + public const int GL_INTENSITY8I_EXT = 0x8D91; + public const int GL_LUMINANCE8I_EXT = 0x8D92; + public const int GL_LUMINANCE_ALPHA8I_EXT = 0x8D93; + public const int GL_RED_INTEGER = 0x8D94; + public const int GL_RED_INTEGER_EXT = 0x8D94; + public const int GL_GREEN_INTEGER = 0x8D95; + public const int GL_GREEN_INTEGER_EXT = 0x8D95; + public const int GL_BLUE_INTEGER = 0x8D96; + public const int GL_BLUE_INTEGER_EXT = 0x8D96; + public const int GL_ALPHA_INTEGER = 0x8D97; + public const int GL_ALPHA_INTEGER_EXT = 0x8D97; + public const int GL_RGB_INTEGER = 0x8D98; + public const int GL_RGB_INTEGER_EXT = 0x8D98; + public const int GL_RGBA_INTEGER = 0x8D99; + public const int GL_RGBA_INTEGER_EXT = 0x8D99; + public const int GL_BGR_INTEGER = 0x8D9A; + public const int GL_BGR_INTEGER_EXT = 0x8D9A; + public const int GL_BGRA_INTEGER = 0x8D9B; + public const int GL_BGRA_INTEGER_EXT = 0x8D9B; + public const int GL_LUMINANCE_INTEGER_EXT = 0x8D9C; + public const int GL_LUMINANCE_ALPHA_INTEGER_EXT = 0x8D9D; + public const int GL_RGBA_INTEGER_MODE_EXT = 0x8D9E; + public const int GL_INT_2_10_10_10_REV = 0x8D9F; + public const int GL_MAX_PROGRAM_PARAMETER_BUFFER_BINDINGS_NV = 0x8DA0; + public const int GL_MAX_PROGRAM_PARAMETER_BUFFER_SIZE_NV = 0x8DA1; + public const int GL_VERTEX_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA2; + public const int GL_GEOMETRY_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA3; + public const int GL_FRAGMENT_PROGRAM_PARAMETER_BUFFER_NV = 0x8DA4; + public const int GL_MAX_PROGRAM_GENERIC_ATTRIBS_NV = 0x8DA5; + public const int GL_MAX_PROGRAM_GENERIC_RESULTS_NV = 0x8DA6; + public const int GL_FRAMEBUFFER_ATTACHMENT_LAYERED = 0x8DA7; + public const int GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB = 0x8DA7; + public const int GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT = 0x8DA7; + public const int GL_FRAMEBUFFER_ATTACHMENT_LAYERED_OES = 0x8DA7; + public const int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = 0x8DA8; + public const int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_ARB = 0x8DA8; + public const int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_EXT = 0x8DA8; + public const int GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS_OES = 0x8DA8; + public const int GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_ARB = 0x8DA9; + public const int GL_FRAMEBUFFER_INCOMPLETE_LAYER_COUNT_EXT = 0x8DA9; + public const int GL_LAYER_NV = 0x8DAA; + public const int GL_DEPTH_COMPONENT32F_NV = 0x8DAB; + public const int GL_DEPTH32F_STENCIL8_NV = 0x8DAC; + public const int GL_FLOAT_32_UNSIGNED_INT_24_8_REV = 0x8DAD; + public const int GL_FLOAT_32_UNSIGNED_INT_24_8_REV_NV = 0x8DAD; + public const int GL_SHADER_INCLUDE_ARB = 0x8DAE; + public const int GL_DEPTH_BUFFER_FLOAT_MODE_NV = 0x8DAF; + public const int GL_FRAMEBUFFER_SRGB = 0x8DB9; + public const int GL_FRAMEBUFFER_SRGB_EXT = 0x8DB9; + public const int GL_FRAMEBUFFER_SRGB_CAPABLE_EXT = 0x8DBA; + public const int GL_COMPRESSED_RED_RGTC1 = 0x8DBB; + public const int GL_COMPRESSED_RED_RGTC1_EXT = 0x8DBB; + public const int GL_COMPRESSED_SIGNED_RED_RGTC1 = 0x8DBC; + public const int GL_COMPRESSED_SIGNED_RED_RGTC1_EXT = 0x8DBC; + public const int GL_COMPRESSED_RED_GREEN_RGTC2_EXT = 0x8DBD; + public const int GL_COMPRESSED_RG_RGTC2 = 0x8DBD; + public const int GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT = 0x8DBE; + public const int GL_COMPRESSED_SIGNED_RG_RGTC2 = 0x8DBE; + public const int GL_SAMPLER_1D_ARRAY = 0x8DC0; + public const int GL_SAMPLER_1D_ARRAY_EXT = 0x8DC0; + public const int GL_SAMPLER_2D_ARRAY = 0x8DC1; + public const int GL_SAMPLER_2D_ARRAY_EXT = 0x8DC1; + public const int GL_SAMPLER_BUFFER = 0x8DC2; + public const int GL_SAMPLER_BUFFER_EXT = 0x8DC2; + public const int GL_SAMPLER_BUFFER_OES = 0x8DC2; + public const int GL_SAMPLER_1D_ARRAY_SHADOW = 0x8DC3; + public const int GL_SAMPLER_1D_ARRAY_SHADOW_EXT = 0x8DC3; + public const int GL_SAMPLER_2D_ARRAY_SHADOW = 0x8DC4; + public const int GL_SAMPLER_2D_ARRAY_SHADOW_EXT = 0x8DC4; + public const int GL_SAMPLER_2D_ARRAY_SHADOW_NV = 0x8DC4; + public const int GL_SAMPLER_CUBE_SHADOW = 0x8DC5; + public const int GL_SAMPLER_CUBE_SHADOW_EXT = 0x8DC5; + public const int GL_SAMPLER_CUBE_SHADOW_NV = 0x8DC5; + public const int GL_UNSIGNED_INT_VEC2 = 0x8DC6; + public const int GL_UNSIGNED_INT_VEC2_EXT = 0x8DC6; + public const int GL_UNSIGNED_INT_VEC3 = 0x8DC7; + public const int GL_UNSIGNED_INT_VEC3_EXT = 0x8DC7; + public const int GL_UNSIGNED_INT_VEC4 = 0x8DC8; + public const int GL_UNSIGNED_INT_VEC4_EXT = 0x8DC8; + public const int GL_INT_SAMPLER_1D = 0x8DC9; + public const int GL_INT_SAMPLER_1D_EXT = 0x8DC9; + public const int GL_INT_SAMPLER_2D = 0x8DCA; + public const int GL_INT_SAMPLER_2D_EXT = 0x8DCA; + public const int GL_INT_SAMPLER_3D = 0x8DCB; + public const int GL_INT_SAMPLER_3D_EXT = 0x8DCB; + public const int GL_INT_SAMPLER_CUBE = 0x8DCC; + public const int GL_INT_SAMPLER_CUBE_EXT = 0x8DCC; + public const int GL_INT_SAMPLER_2D_RECT = 0x8DCD; + public const int GL_INT_SAMPLER_2D_RECT_EXT = 0x8DCD; + public const int GL_INT_SAMPLER_1D_ARRAY = 0x8DCE; + public const int GL_INT_SAMPLER_1D_ARRAY_EXT = 0x8DCE; + public const int GL_INT_SAMPLER_2D_ARRAY = 0x8DCF; + public const int GL_INT_SAMPLER_2D_ARRAY_EXT = 0x8DCF; + public const int GL_INT_SAMPLER_BUFFER = 0x8DD0; + public const int GL_INT_SAMPLER_BUFFER_EXT = 0x8DD0; + public const int GL_INT_SAMPLER_BUFFER_OES = 0x8DD0; + public const int GL_UNSIGNED_INT_SAMPLER_1D = 0x8DD1; + public const int GL_UNSIGNED_INT_SAMPLER_1D_EXT = 0x8DD1; + public const int GL_UNSIGNED_INT_SAMPLER_2D = 0x8DD2; + public const int GL_UNSIGNED_INT_SAMPLER_2D_EXT = 0x8DD2; + public const int GL_UNSIGNED_INT_SAMPLER_3D = 0x8DD3; + public const int GL_UNSIGNED_INT_SAMPLER_3D_EXT = 0x8DD3; + public const int GL_UNSIGNED_INT_SAMPLER_CUBE = 0x8DD4; + public const int GL_UNSIGNED_INT_SAMPLER_CUBE_EXT = 0x8DD4; + public const int GL_UNSIGNED_INT_SAMPLER_2D_RECT = 0x8DD5; + public const int GL_UNSIGNED_INT_SAMPLER_2D_RECT_EXT = 0x8DD5; + public const int GL_UNSIGNED_INT_SAMPLER_1D_ARRAY = 0x8DD6; + public const int GL_UNSIGNED_INT_SAMPLER_1D_ARRAY_EXT = 0x8DD6; + public const int GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = 0x8DD7; + public const int GL_UNSIGNED_INT_SAMPLER_2D_ARRAY_EXT = 0x8DD7; + public const int GL_UNSIGNED_INT_SAMPLER_BUFFER = 0x8DD8; + public const int GL_UNSIGNED_INT_SAMPLER_BUFFER_EXT = 0x8DD8; + public const int GL_UNSIGNED_INT_SAMPLER_BUFFER_OES = 0x8DD8; + public const int GL_GEOMETRY_SHADER = 0x8DD9; + public const int GL_GEOMETRY_SHADER_ARB = 0x8DD9; + public const int GL_GEOMETRY_SHADER_EXT = 0x8DD9; + public const int GL_GEOMETRY_SHADER_OES = 0x8DD9; + public const int GL_GEOMETRY_VERTICES_OUT_ARB = 0x8DDA; + public const int GL_GEOMETRY_VERTICES_OUT_EXT = 0x8DDA; + public const int GL_GEOMETRY_INPUT_TYPE_ARB = 0x8DDB; + public const int GL_GEOMETRY_INPUT_TYPE_EXT = 0x8DDB; + public const int GL_GEOMETRY_OUTPUT_TYPE_ARB = 0x8DDC; + public const int GL_GEOMETRY_OUTPUT_TYPE_EXT = 0x8DDC; + public const int GL_MAX_GEOMETRY_VARYING_COMPONENTS_ARB = 0x8DDD; + public const int GL_MAX_GEOMETRY_VARYING_COMPONENTS_EXT = 0x8DDD; + public const int GL_MAX_VERTEX_VARYING_COMPONENTS_ARB = 0x8DDE; + public const int GL_MAX_VERTEX_VARYING_COMPONENTS_EXT = 0x8DDE; + public const int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS = 0x8DDF; + public const int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_ARB = 0x8DDF; + public const int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_EXT = 0x8DDF; + public const int GL_MAX_GEOMETRY_UNIFORM_COMPONENTS_OES = 0x8DDF; + public const int GL_MAX_GEOMETRY_OUTPUT_VERTICES = 0x8DE0; + public const int GL_MAX_GEOMETRY_OUTPUT_VERTICES_ARB = 0x8DE0; + public const int GL_MAX_GEOMETRY_OUTPUT_VERTICES_EXT = 0x8DE0; + public const int GL_MAX_GEOMETRY_OUTPUT_VERTICES_OES = 0x8DE0; + public const int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS = 0x8DE1; + public const int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_ARB = 0x8DE1; + public const int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_EXT = 0x8DE1; + public const int GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS_OES = 0x8DE1; + public const int GL_MAX_VERTEX_BINDABLE_UNIFORMS_EXT = 0x8DE2; + public const int GL_MAX_FRAGMENT_BINDABLE_UNIFORMS_EXT = 0x8DE3; + public const int GL_MAX_GEOMETRY_BINDABLE_UNIFORMS_EXT = 0x8DE4; + public const int GL_ACTIVE_SUBROUTINES = 0x8DE5; + public const int GL_ACTIVE_SUBROUTINE_UNIFORMS = 0x8DE6; + public const int GL_MAX_SUBROUTINES = 0x8DE7; + public const int GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS = 0x8DE8; + public const int GL_NAMED_STRING_LENGTH_ARB = 0x8DE9; + public const int GL_NAMED_STRING_TYPE_ARB = 0x8DEA; + public const int GL_MAX_BINDABLE_UNIFORM_SIZE_EXT = 0x8DED; + public const int GL_UNIFORM_BUFFER_EXT = 0x8DEE; + public const int GL_UNIFORM_BUFFER_BINDING_EXT = 0x8DEF; + // VENDOR: OES + public const int GL_LOW_FLOAT = 0x8DF0; + public const int GL_MEDIUM_FLOAT = 0x8DF1; + public const int GL_HIGH_FLOAT = 0x8DF2; + public const int GL_LOW_INT = 0x8DF3; + public const int GL_MEDIUM_INT = 0x8DF4; + public const int GL_HIGH_INT = 0x8DF5; + public const int GL_UNSIGNED_INT_10_10_10_2_OES = 0x8DF6; + public const int GL_INT_10_10_10_2_OES = 0x8DF7; + public const int GL_SHADER_BINARY_FORMATS = 0x8DF8; + public const int GL_NUM_SHADER_BINARY_FORMATS = 0x8DF9; + public const int GL_SHADER_COMPILER = 0x8DFA; + public const int GL_MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB; + public const int GL_MAX_VARYING_VECTORS = 0x8DFC; + public const int GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD; + // VENDOR: NV + // For Michael Gold 2006/08/07 + public const int GL_RENDERBUFFER_COLOR_SAMPLES_NV = 0x8E10; + public const int GL_MAX_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E11; + public const int GL_MULTISAMPLE_COVERAGE_MODES_NV = 0x8E12; + public const int GL_QUERY_WAIT = 0x8E13; + public const int GL_QUERY_WAIT_NV = 0x8E13; + public const int GL_QUERY_NO_WAIT = 0x8E14; + public const int GL_QUERY_NO_WAIT_NV = 0x8E14; + public const int GL_QUERY_BY_REGION_WAIT = 0x8E15; + public const int GL_QUERY_BY_REGION_WAIT_NV = 0x8E15; + public const int GL_QUERY_BY_REGION_NO_WAIT = 0x8E16; + public const int GL_QUERY_BY_REGION_NO_WAIT_NV = 0x8E16; + public const int GL_QUERY_WAIT_INVERTED = 0x8E17; + public const int GL_QUERY_NO_WAIT_INVERTED = 0x8E18; + public const int GL_QUERY_BY_REGION_WAIT_INVERTED = 0x8E19; + public const int GL_QUERY_BY_REGION_NO_WAIT_INVERTED = 0x8E1A; + public const int GL_POLYGON_OFFSET_CLAMP = 0x8E1B; + public const int GL_POLYGON_OFFSET_CLAMP_EXT = 0x8E1B; + public const int GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E1E; + public const int GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_EXT = 0x8E1E; + public const int GL_MAX_COMBINED_TESS_CONTROL_UNIFORM_COMPONENTS_OES = 0x8E1E; + public const int GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E1F; + public const int GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT = 0x8E1F; + public const int GL_MAX_COMBINED_TESS_EVALUATION_UNIFORM_COMPONENTS_OES = 0x8E1F; + public const int GL_COLOR_SAMPLES_NV = 0x8E20; + public const int GL_TRANSFORM_FEEDBACK = 0x8E22; + public const int GL_TRANSFORM_FEEDBACK_NV = 0x8E22; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED = 0x8E23; + public const int GL_TRANSFORM_FEEDBACK_PAUSED = 0x8E23; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_PAUSED_NV = 0x8E23; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE = 0x8E24; + public const int GL_TRANSFORM_FEEDBACK_ACTIVE = 0x8E24; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_ACTIVE_NV = 0x8E24; + public const int GL_TRANSFORM_FEEDBACK_BINDING = 0x8E25; + public const int GL_TRANSFORM_FEEDBACK_BINDING_NV = 0x8E25; + public const int GL_FRAME_NV = 0x8E26; + public const int GL_FIELDS_NV = 0x8E27; + public const int GL_CURRENT_TIME_NV = 0x8E28; + public const int GL_TIMESTAMP = 0x8E28; + public const int GL_TIMESTAMP_EXT = 0x8E28; + public const int GL_NUM_FILL_STREAMS_NV = 0x8E29; + public const int GL_PRESENT_TIME_NV = 0x8E2A; + public const int GL_PRESENT_DURATION_NV = 0x8E2B; + public const int GL_DEPTH_COMPONENT16_NONLINEAR_NV = 0x8E2C; + public const int GL_PROGRAM_MATRIX_EXT = 0x8E2D; + public const int GL_TRANSPOSE_PROGRAM_MATRIX_EXT = 0x8E2E; + public const int GL_PROGRAM_MATRIX_STACK_DEPTH_EXT = 0x8E2F; + public const int GL_TEXTURE_SWIZZLE_R = 0x8E42; + public const int GL_TEXTURE_SWIZZLE_R_EXT = 0x8E42; + public const int GL_TEXTURE_SWIZZLE_G = 0x8E43; + public const int GL_TEXTURE_SWIZZLE_G_EXT = 0x8E43; + public const int GL_TEXTURE_SWIZZLE_B = 0x8E44; + public const int GL_TEXTURE_SWIZZLE_B_EXT = 0x8E44; + public const int GL_TEXTURE_SWIZZLE_A = 0x8E45; + public const int GL_TEXTURE_SWIZZLE_A_EXT = 0x8E45; + public const int GL_TEXTURE_SWIZZLE_RGBA = 0x8E46; + public const int GL_TEXTURE_SWIZZLE_RGBA_EXT = 0x8E46; + public const int GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS = 0x8E47; + public const int GL_ACTIVE_SUBROUTINE_MAX_LENGTH = 0x8E48; + public const int GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH = 0x8E49; + public const int GL_NUM_COMPATIBLE_SUBROUTINES = 0x8E4A; + public const int GL_COMPATIBLE_SUBROUTINES = 0x8E4B; + public const int GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION = 0x8E4C; + public const int GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT = 0x8E4C; + public const int GL_FIRST_VERTEX_CONVENTION = 0x8E4D; + public const int GL_FIRST_VERTEX_CONVENTION_EXT = 0x8E4D; + public const int GL_FIRST_VERTEX_CONVENTION_OES = 0x8E4D; + public const int GL_LAST_VERTEX_CONVENTION = 0x8E4E; + public const int GL_LAST_VERTEX_CONVENTION_EXT = 0x8E4E; + public const int GL_LAST_VERTEX_CONVENTION_OES = 0x8E4E; + public const int GL_PROVOKING_VERTEX = 0x8E4F; + public const int GL_PROVOKING_VERTEX_EXT = 0x8E4F; + public const int GL_SAMPLE_POSITION = 0x8E50; + public const int GL_SAMPLE_POSITION_NV = 0x8E50; + public const int GL_SAMPLE_LOCATION_ARB = 0x8E50; + public const int GL_SAMPLE_LOCATION_NV = 0x8E50; + public const int GL_SAMPLE_MASK = 0x8E51; + public const int GL_SAMPLE_MASK_NV = 0x8E51; + public const int GL_SAMPLE_MASK_VALUE = 0x8E52; + public const int GL_SAMPLE_MASK_VALUE_NV = 0x8E52; + public const int GL_TEXTURE_BINDING_RENDERBUFFER_NV = 0x8E53; + public const int GL_TEXTURE_RENDERBUFFER_DATA_STORE_BINDING_NV = 0x8E54; + public const int GL_TEXTURE_RENDERBUFFER_NV = 0x8E55; + public const int GL_SAMPLER_RENDERBUFFER_NV = 0x8E56; + public const int GL_INT_SAMPLER_RENDERBUFFER_NV = 0x8E57; + public const int GL_UNSIGNED_INT_SAMPLER_RENDERBUFFER_NV = 0x8E58; + public const int GL_MAX_SAMPLE_MASK_WORDS = 0x8E59; + public const int GL_MAX_SAMPLE_MASK_WORDS_NV = 0x8E59; + public const int GL_MAX_GEOMETRY_PROGRAM_INVOCATIONS_NV = 0x8E5A; + public const int GL_MAX_GEOMETRY_SHADER_INVOCATIONS = 0x8E5A; + public const int GL_MAX_GEOMETRY_SHADER_INVOCATIONS_EXT = 0x8E5A; + public const int GL_MAX_GEOMETRY_SHADER_INVOCATIONS_OES = 0x8E5A; + public const int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET = 0x8E5B; + public const int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_OES = 0x8E5B; + public const int GL_MIN_FRAGMENT_INTERPOLATION_OFFSET_NV = 0x8E5B; + public const int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET = 0x8E5C; + public const int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_OES = 0x8E5C; + public const int GL_MAX_FRAGMENT_INTERPOLATION_OFFSET_NV = 0x8E5C; + public const int GL_FRAGMENT_INTERPOLATION_OFFSET_BITS = 0x8E5D; + public const int GL_FRAGMENT_INTERPOLATION_OFFSET_BITS_OES = 0x8E5D; + public const int GL_FRAGMENT_PROGRAM_INTERPOLATION_OFFSET_BITS_NV = 0x8E5D; + public const int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5E; + public const int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = 0x8E5E; + public const int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_NV = 0x8E5E; + public const int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET = 0x8E5F; + public const int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = 0x8E5F; + public const int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_NV = 0x8E5F; + public const int GL_MAX_MESH_UNIFORM_BLOCKS_NV = 0x8E60; + public const int GL_MAX_MESH_TEXTURE_IMAGE_UNITS_NV = 0x8E61; + public const int GL_MAX_MESH_IMAGE_UNIFORMS_NV = 0x8E62; + public const int GL_MAX_MESH_UNIFORM_COMPONENTS_NV = 0x8E63; + public const int GL_MAX_MESH_ATOMIC_COUNTER_BUFFERS_NV = 0x8E64; + public const int GL_MAX_MESH_ATOMIC_COUNTERS_NV = 0x8E65; + public const int GL_MAX_MESH_SHADER_STORAGE_BLOCKS_NV = 0x8E66; + public const int GL_MAX_COMBINED_MESH_UNIFORM_COMPONENTS_NV = 0x8E67; + public const int GL_MAX_TASK_UNIFORM_BLOCKS_NV = 0x8E68; + public const int GL_MAX_TASK_TEXTURE_IMAGE_UNITS_NV = 0x8E69; + public const int GL_MAX_TASK_IMAGE_UNIFORMS_NV = 0x8E6A; + public const int GL_MAX_TASK_UNIFORM_COMPONENTS_NV = 0x8E6B; + public const int GL_MAX_TASK_ATOMIC_COUNTER_BUFFERS_NV = 0x8E6C; + public const int GL_MAX_TASK_ATOMIC_COUNTERS_NV = 0x8E6D; + public const int GL_MAX_TASK_SHADER_STORAGE_BLOCKS_NV = 0x8E6E; + public const int GL_MAX_COMBINED_TASK_UNIFORM_COMPONENTS_NV = 0x8E6F; + public const int GL_MAX_TRANSFORM_FEEDBACK_BUFFERS = 0x8E70; + public const int GL_MAX_VERTEX_STREAMS = 0x8E71; + public const int GL_PATCH_VERTICES = 0x8E72; + public const int GL_PATCH_VERTICES_EXT = 0x8E72; + public const int GL_PATCH_VERTICES_OES = 0x8E72; + public const int GL_PATCH_DEFAULT_INNER_LEVEL = 0x8E73; + public const int GL_PATCH_DEFAULT_INNER_LEVEL_EXT = 0x8E73; + public const int GL_PATCH_DEFAULT_OUTER_LEVEL = 0x8E74; + public const int GL_PATCH_DEFAULT_OUTER_LEVEL_EXT = 0x8E74; + public const int GL_TESS_CONTROL_OUTPUT_VERTICES = 0x8E75; + public const int GL_TESS_CONTROL_OUTPUT_VERTICES_EXT = 0x8E75; + public const int GL_TESS_CONTROL_OUTPUT_VERTICES_OES = 0x8E75; + public const int GL_TESS_GEN_MODE = 0x8E76; + public const int GL_TESS_GEN_MODE_EXT = 0x8E76; + public const int GL_TESS_GEN_MODE_OES = 0x8E76; + public const int GL_TESS_GEN_SPACING = 0x8E77; + public const int GL_TESS_GEN_SPACING_EXT = 0x8E77; + public const int GL_TESS_GEN_SPACING_OES = 0x8E77; + public const int GL_TESS_GEN_VERTEX_ORDER = 0x8E78; + public const int GL_TESS_GEN_VERTEX_ORDER_EXT = 0x8E78; + public const int GL_TESS_GEN_VERTEX_ORDER_OES = 0x8E78; + public const int GL_TESS_GEN_POINT_MODE = 0x8E79; + public const int GL_TESS_GEN_POINT_MODE_EXT = 0x8E79; + public const int GL_TESS_GEN_POINT_MODE_OES = 0x8E79; + public const int GL_ISOLINES = 0x8E7A; + public const int GL_ISOLINES_EXT = 0x8E7A; + public const int GL_ISOLINES_OES = 0x8E7A; + public const int GL_FRACTIONAL_ODD = 0x8E7B; + public const int GL_FRACTIONAL_ODD_EXT = 0x8E7B; + public const int GL_FRACTIONAL_ODD_OES = 0x8E7B; + public const int GL_FRACTIONAL_EVEN = 0x8E7C; + public const int GL_FRACTIONAL_EVEN_EXT = 0x8E7C; + public const int GL_FRACTIONAL_EVEN_OES = 0x8E7C; + public const int GL_MAX_PATCH_VERTICES = 0x8E7D; + public const int GL_MAX_PATCH_VERTICES_EXT = 0x8E7D; + public const int GL_MAX_PATCH_VERTICES_OES = 0x8E7D; + public const int GL_MAX_TESS_GEN_LEVEL = 0x8E7E; + public const int GL_MAX_TESS_GEN_LEVEL_EXT = 0x8E7E; + public const int GL_MAX_TESS_GEN_LEVEL_OES = 0x8E7E; + public const int GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS = 0x8E7F; + public const int GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_EXT = 0x8E7F; + public const int GL_MAX_TESS_CONTROL_UNIFORM_COMPONENTS_OES = 0x8E7F; + public const int GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS = 0x8E80; + public const int GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_EXT = 0x8E80; + public const int GL_MAX_TESS_EVALUATION_UNIFORM_COMPONENTS_OES = 0x8E80; + public const int GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS = 0x8E81; + public const int GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_EXT = 0x8E81; + public const int GL_MAX_TESS_CONTROL_TEXTURE_IMAGE_UNITS_OES = 0x8E81; + public const int GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS = 0x8E82; + public const int GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_EXT = 0x8E82; + public const int GL_MAX_TESS_EVALUATION_TEXTURE_IMAGE_UNITS_OES = 0x8E82; + public const int GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS = 0x8E83; + public const int GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_EXT = 0x8E83; + public const int GL_MAX_TESS_CONTROL_OUTPUT_COMPONENTS_OES = 0x8E83; + public const int GL_MAX_TESS_PATCH_COMPONENTS = 0x8E84; + public const int GL_MAX_TESS_PATCH_COMPONENTS_EXT = 0x8E84; + public const int GL_MAX_TESS_PATCH_COMPONENTS_OES = 0x8E84; + public const int GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS = 0x8E85; + public const int GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_EXT = 0x8E85; + public const int GL_MAX_TESS_CONTROL_TOTAL_OUTPUT_COMPONENTS_OES = 0x8E85; + public const int GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS = 0x8E86; + public const int GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_EXT = 0x8E86; + public const int GL_MAX_TESS_EVALUATION_OUTPUT_COMPONENTS_OES = 0x8E86; + public const int GL_TESS_EVALUATION_SHADER = 0x8E87; + public const int GL_TESS_EVALUATION_SHADER_EXT = 0x8E87; + public const int GL_TESS_EVALUATION_SHADER_OES = 0x8E87; + public const int GL_TESS_CONTROL_SHADER = 0x8E88; + public const int GL_TESS_CONTROL_SHADER_EXT = 0x8E88; + public const int GL_TESS_CONTROL_SHADER_OES = 0x8E88; + public const int GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS = 0x8E89; + public const int GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_EXT = 0x8E89; + public const int GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS_OES = 0x8E89; + public const int GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS = 0x8E8A; + public const int GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_EXT = 0x8E8A; + public const int GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS_OES = 0x8E8A; + public const int GL_COMPRESSED_RGBA_BPTC_UNORM = 0x8E8C; + public const int GL_COMPRESSED_RGBA_BPTC_UNORM_ARB = 0x8E8C; + public const int GL_COMPRESSED_RGBA_BPTC_UNORM_EXT = 0x8E8C; + public const int GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM = 0x8E8D; + public const int GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB = 0x8E8D; + public const int GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT = 0x8E8D; + public const int GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT = 0x8E8E; + public const int GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB = 0x8E8E; + public const int GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT = 0x8E8E; + public const int GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT = 0x8E8F; + public const int GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB = 0x8E8F; + public const int GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT = 0x8E8F; + // VENDOR: QNX + // For QNX_texture_tiling, QNX_complex_polygon, QNX_stippled_lines (Khronos bug 696) + // VENDOR: IMG + // VENDOR: OES + // For Affie Munshi 2007/07/20 + // VENDOR: Vincent + // VENDOR: NV + // For Pat Brown, Khronos bug 3191 + public const int GL_COVERAGE_COMPONENT_NV = 0x8ED0; + public const int GL_COVERAGE_COMPONENT4_NV = 0x8ED1; + public const int GL_COVERAGE_ATTACHMENT_NV = 0x8ED2; + public const int GL_COVERAGE_BUFFERS_NV = 0x8ED3; + public const int GL_COVERAGE_SAMPLES_NV = 0x8ED4; + public const int GL_COVERAGE_ALL_FRAGMENTS_NV = 0x8ED5; + public const int GL_COVERAGE_EDGE_FRAGMENTS_NV = 0x8ED6; + public const int GL_COVERAGE_AUTOMATIC_NV = 0x8ED7; + public const int GL_INCLUSIVE_EXT = 0x8F10; + public const int GL_EXCLUSIVE_EXT = 0x8F11; + public const int GL_WINDOW_RECTANGLE_EXT = 0x8F12; + public const int GL_WINDOW_RECTANGLE_MODE_EXT = 0x8F13; + public const int GL_MAX_WINDOW_RECTANGLES_EXT = 0x8F14; + public const int GL_NUM_WINDOW_RECTANGLES_EXT = 0x8F15; + public const int GL_BUFFER_GPU_ADDRESS_NV = 0x8F1D; + public const int GL_VERTEX_ATTRIB_ARRAY_UNIFIED_NV = 0x8F1E; + public const int GL_ELEMENT_ARRAY_UNIFIED_NV = 0x8F1F; + public const int GL_VERTEX_ATTRIB_ARRAY_ADDRESS_NV = 0x8F20; + public const int GL_VERTEX_ARRAY_ADDRESS_NV = 0x8F21; + public const int GL_NORMAL_ARRAY_ADDRESS_NV = 0x8F22; + public const int GL_COLOR_ARRAY_ADDRESS_NV = 0x8F23; + public const int GL_INDEX_ARRAY_ADDRESS_NV = 0x8F24; + public const int GL_TEXTURE_COORD_ARRAY_ADDRESS_NV = 0x8F25; + public const int GL_EDGE_FLAG_ARRAY_ADDRESS_NV = 0x8F26; + public const int GL_SECONDARY_COLOR_ARRAY_ADDRESS_NV = 0x8F27; + public const int GL_FOG_COORD_ARRAY_ADDRESS_NV = 0x8F28; + public const int GL_ELEMENT_ARRAY_ADDRESS_NV = 0x8F29; + public const int GL_VERTEX_ATTRIB_ARRAY_LENGTH_NV = 0x8F2A; + public const int GL_VERTEX_ARRAY_LENGTH_NV = 0x8F2B; + public const int GL_NORMAL_ARRAY_LENGTH_NV = 0x8F2C; + public const int GL_COLOR_ARRAY_LENGTH_NV = 0x8F2D; + public const int GL_INDEX_ARRAY_LENGTH_NV = 0x8F2E; + public const int GL_TEXTURE_COORD_ARRAY_LENGTH_NV = 0x8F2F; + public const int GL_EDGE_FLAG_ARRAY_LENGTH_NV = 0x8F30; + public const int GL_SECONDARY_COLOR_ARRAY_LENGTH_NV = 0x8F31; + public const int GL_FOG_COORD_ARRAY_LENGTH_NV = 0x8F32; + public const int GL_ELEMENT_ARRAY_LENGTH_NV = 0x8F33; + public const int GL_GPU_ADDRESS_NV = 0x8F34; + public const int GL_MAX_SHADER_BUFFER_ADDRESS_NV = 0x8F35; + public const int GL_COPY_READ_BUFFER = 0x8F36; + public const int GL_COPY_READ_BUFFER_NV = 0x8F36; + public const int GL_COPY_READ_BUFFER_BINDING = 0x8F36; + public const int GL_COPY_WRITE_BUFFER = 0x8F37; + public const int GL_COPY_WRITE_BUFFER_NV = 0x8F37; + public const int GL_COPY_WRITE_BUFFER_BINDING = 0x8F37; + public const int GL_MAX_IMAGE_UNITS = 0x8F38; + public const int GL_MAX_IMAGE_UNITS_EXT = 0x8F38; + public const int GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS = 0x8F39; + public const int GL_MAX_COMBINED_IMAGE_UNITS_AND_FRAGMENT_OUTPUTS_EXT = 0x8F39; + public const int GL_MAX_COMBINED_SHADER_OUTPUT_RESOURCES = 0x8F39; + public const int GL_IMAGE_BINDING_NAME = 0x8F3A; + public const int GL_IMAGE_BINDING_NAME_EXT = 0x8F3A; + public const int GL_IMAGE_BINDING_LEVEL = 0x8F3B; + public const int GL_IMAGE_BINDING_LEVEL_EXT = 0x8F3B; + public const int GL_IMAGE_BINDING_LAYERED = 0x8F3C; + public const int GL_IMAGE_BINDING_LAYERED_EXT = 0x8F3C; + public const int GL_IMAGE_BINDING_LAYER = 0x8F3D; + public const int GL_IMAGE_BINDING_LAYER_EXT = 0x8F3D; + public const int GL_IMAGE_BINDING_ACCESS = 0x8F3E; + public const int GL_IMAGE_BINDING_ACCESS_EXT = 0x8F3E; + public const int GL_DRAW_INDIRECT_BUFFER = 0x8F3F; + public const int GL_DRAW_INDIRECT_UNIFIED_NV = 0x8F40; + public const int GL_DRAW_INDIRECT_ADDRESS_NV = 0x8F41; + public const int GL_DRAW_INDIRECT_LENGTH_NV = 0x8F42; + public const int GL_DRAW_INDIRECT_BUFFER_BINDING = 0x8F43; + public const int GL_MAX_PROGRAM_SUBROUTINE_PARAMETERS_NV = 0x8F44; + public const int GL_MAX_PROGRAM_SUBROUTINE_NUM_NV = 0x8F45; + public const int GL_DOUBLE_MAT2 = 0x8F46; + public const int GL_DOUBLE_MAT2_EXT = 0x8F46; + public const int GL_DOUBLE_MAT3 = 0x8F47; + public const int GL_DOUBLE_MAT3_EXT = 0x8F47; + public const int GL_DOUBLE_MAT4 = 0x8F48; + public const int GL_DOUBLE_MAT4_EXT = 0x8F48; + public const int GL_DOUBLE_MAT2x3 = 0x8F49; + public const int GL_DOUBLE_MAT2x3_EXT = 0x8F49; + public const int GL_DOUBLE_MAT2x4 = 0x8F4A; + public const int GL_DOUBLE_MAT2x4_EXT = 0x8F4A; + public const int GL_DOUBLE_MAT3x2 = 0x8F4B; + public const int GL_DOUBLE_MAT3x2_EXT = 0x8F4B; + public const int GL_DOUBLE_MAT3x4 = 0x8F4C; + public const int GL_DOUBLE_MAT3x4_EXT = 0x8F4C; + public const int GL_DOUBLE_MAT4x2 = 0x8F4D; + public const int GL_DOUBLE_MAT4x2_EXT = 0x8F4D; + public const int GL_DOUBLE_MAT4x3 = 0x8F4E; + public const int GL_DOUBLE_MAT4x3_EXT = 0x8F4E; + public const int GL_VERTEX_BINDING_BUFFER = 0x8F4F; + // VENDOR: ZiiLabs + // For Jon Kennedy, Khronos public bug 75 + // VENDOR: ARM + // For Remi Pedersen, Khronos bug 3745 + public const int GL_MALI_SHADER_BINARY_ARM = 0x8F60; + public const int GL_MALI_PROGRAM_BINARY_ARM = 0x8F61; + public const int GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_FAST_SIZE_EXT = 0x8F63; + public const int GL_SHADER_PIXEL_LOCAL_STORAGE_EXT = 0x8F64; + public const int GL_FETCH_PER_SAMPLE_ARM = 0x8F65; + public const int GL_FRAGMENT_SHADER_FRAMEBUFFER_FETCH_MRT_ARM = 0x8F66; + public const int GL_MAX_SHADER_PIXEL_LOCAL_STORAGE_SIZE_EXT = 0x8F67; + public const int GL_TEXTURE_ASTC_DECODE_PRECISION_EXT = 0x8F69; + public const int GL_TEXTURE_UNNORMALIZED_COORDINATES_ARM = 0x8F6A; + // VENDOR: HI + // For Mark Callow, Khronos bug 4055. Shared with EGL. + // VENDOR: Zebra + // For Mike Weiblen, public bug 910 + // VENDOR: ARB + public const int GL_RED_SNORM = 0x8F90; + public const int GL_RG_SNORM = 0x8F91; + public const int GL_RGB_SNORM = 0x8F92; + public const int GL_RGBA_SNORM = 0x8F93; + public const int GL_R8_SNORM = 0x8F94; + public const int GL_RG8_SNORM = 0x8F95; + public const int GL_RGB8_SNORM = 0x8F96; + public const int GL_RGBA8_SNORM = 0x8F97; + public const int GL_R16_SNORM = 0x8F98; + public const int GL_R16_SNORM_EXT = 0x8F98; + public const int GL_RG16_SNORM = 0x8F99; + public const int GL_RG16_SNORM_EXT = 0x8F99; + public const int GL_RGB16_SNORM = 0x8F9A; + public const int GL_RGB16_SNORM_EXT = 0x8F9A; + public const int GL_RGBA16_SNORM = 0x8F9B; + public const int GL_RGBA16_SNORM_EXT = 0x8F9B; + public const int GL_SIGNED_NORMALIZED = 0x8F9C; + public const int GL_PRIMITIVE_RESTART = 0x8F9D; + public const int GL_PRIMITIVE_RESTART_INDEX = 0x8F9E; + public const int GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB = 0x8F9F; + // VENDOR: QCOM + // For Maurice Ribble, bug 4512 + public const int GL_PERFMON_GLOBAL_MODE_QCOM = 0x8FA0; + public const int GL_MAX_SHADER_SUBSAMPLED_IMAGE_UNITS_QCOM = 0x8FA1; + public const int GL_BINNING_CONTROL_HINT_QCOM = 0x8FB0; + public const int GL_CPU_OPTIMIZED_QCOM = 0x8FB1; + public const int GL_GPU_OPTIMIZED_QCOM = 0x8FB2; + public const int GL_RENDER_DIRECT_TO_FRAMEBUFFER_QCOM = 0x8FB3; + public const int GL_GPU_DISJOINT_EXT = 0x8FBB; + public const int GL_SR8_EXT = 0x8FBD; + public const int GL_SRG8_EXT = 0x8FBE; + public const int GL_TEXTURE_FORMAT_SRGB_OVERRIDE_EXT = 0x8FBF; + // VENDOR: VIV + // For Frido Garritsen, bug 4526 + public const int GL_SHADER_BINARY_VIV = 0x8FC4; + // VENDOR: NV + // For Pat Brown, bug 4935 + public const int GL_INT8_NV = 0x8FE0; + public const int GL_INT8_VEC2_NV = 0x8FE1; + public const int GL_INT8_VEC3_NV = 0x8FE2; + public const int GL_INT8_VEC4_NV = 0x8FE3; + public const int GL_INT16_NV = 0x8FE4; + public const int GL_INT16_VEC2_NV = 0x8FE5; + public const int GL_INT16_VEC3_NV = 0x8FE6; + public const int GL_INT16_VEC4_NV = 0x8FE7; + public const int GL_INT64_VEC2_ARB = 0x8FE9; + public const int GL_INT64_VEC2_NV = 0x8FE9; + public const int GL_INT64_VEC3_ARB = 0x8FEA; + public const int GL_INT64_VEC3_NV = 0x8FEA; + public const int GL_INT64_VEC4_ARB = 0x8FEB; + public const int GL_INT64_VEC4_NV = 0x8FEB; + public const int GL_UNSIGNED_INT8_NV = 0x8FEC; + public const int GL_UNSIGNED_INT8_VEC2_NV = 0x8FED; + public const int GL_UNSIGNED_INT8_VEC3_NV = 0x8FEE; + public const int GL_UNSIGNED_INT8_VEC4_NV = 0x8FEF; + public const int GL_UNSIGNED_INT16_NV = 0x8FF0; + public const int GL_UNSIGNED_INT16_VEC2_NV = 0x8FF1; + public const int GL_UNSIGNED_INT16_VEC3_NV = 0x8FF2; + public const int GL_UNSIGNED_INT16_VEC4_NV = 0x8FF3; + public const int GL_UNSIGNED_INT64_VEC2_ARB = 0x8FF5; + public const int GL_UNSIGNED_INT64_VEC2_NV = 0x8FF5; + public const int GL_UNSIGNED_INT64_VEC3_ARB = 0x8FF6; + public const int GL_UNSIGNED_INT64_VEC3_NV = 0x8FF6; + public const int GL_UNSIGNED_INT64_VEC4_ARB = 0x8FF7; + public const int GL_UNSIGNED_INT64_VEC4_NV = 0x8FF7; + public const int GL_FLOAT16_NV = 0x8FF8; + public const int GL_FLOAT16_VEC2_NV = 0x8FF9; + public const int GL_FLOAT16_VEC3_NV = 0x8FFA; + public const int GL_FLOAT16_VEC4_NV = 0x8FFB; + public const int GL_DOUBLE_VEC2 = 0x8FFC; + public const int GL_DOUBLE_VEC2_EXT = 0x8FFC; + public const int GL_DOUBLE_VEC3 = 0x8FFD; + public const int GL_DOUBLE_VEC3_EXT = 0x8FFD; + public const int GL_DOUBLE_VEC4 = 0x8FFE; + public const int GL_DOUBLE_VEC4_EXT = 0x8FFE; + // VENDOR: AMD + // For Bill Licea-Kane + public const int GL_SAMPLER_BUFFER_AMD = 0x9001; + public const int GL_INT_SAMPLER_BUFFER_AMD = 0x9002; + public const int GL_UNSIGNED_INT_SAMPLER_BUFFER_AMD = 0x9003; + public const int GL_TESSELLATION_MODE_AMD = 0x9004; + public const int GL_TESSELLATION_FACTOR_AMD = 0x9005; + public const int GL_DISCRETE_AMD = 0x9006; + public const int GL_CONTINUOUS_AMD = 0x9007; + public const int GL_TEXTURE_CUBE_MAP_ARRAY = 0x9009; + public const int GL_TEXTURE_CUBE_MAP_ARRAY_ARB = 0x9009; + public const int GL_TEXTURE_CUBE_MAP_ARRAY_EXT = 0x9009; + public const int GL_TEXTURE_CUBE_MAP_ARRAY_OES = 0x9009; + public const int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY = 0x900A; + public const int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_ARB = 0x900A; + public const int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_EXT = 0x900A; + public const int GL_TEXTURE_BINDING_CUBE_MAP_ARRAY_OES = 0x900A; + public const int GL_PROXY_TEXTURE_CUBE_MAP_ARRAY = 0x900B; + public const int GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB = 0x900B; + public const int GL_SAMPLER_CUBE_MAP_ARRAY = 0x900C; + public const int GL_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900C; + public const int GL_SAMPLER_CUBE_MAP_ARRAY_EXT = 0x900C; + public const int GL_SAMPLER_CUBE_MAP_ARRAY_OES = 0x900C; + public const int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW = 0x900D; + public const int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_ARB = 0x900D; + public const int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_EXT = 0x900D; + public const int GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW_OES = 0x900D; + public const int GL_INT_SAMPLER_CUBE_MAP_ARRAY = 0x900E; + public const int GL_INT_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900E; + public const int GL_INT_SAMPLER_CUBE_MAP_ARRAY_EXT = 0x900E; + public const int GL_INT_SAMPLER_CUBE_MAP_ARRAY_OES = 0x900E; + public const int GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = 0x900F; + public const int GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_ARB = 0x900F; + public const int GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_EXT = 0x900F; + public const int GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY_OES = 0x900F; + public const int GL_ALPHA_SNORM = 0x9010; + public const int GL_LUMINANCE_SNORM = 0x9011; + public const int GL_LUMINANCE_ALPHA_SNORM = 0x9012; + public const int GL_INTENSITY_SNORM = 0x9013; + public const int GL_ALPHA8_SNORM = 0x9014; + public const int GL_LUMINANCE8_SNORM = 0x9015; + public const int GL_LUMINANCE8_ALPHA8_SNORM = 0x9016; + public const int GL_INTENSITY8_SNORM = 0x9017; + public const int GL_ALPHA16_SNORM = 0x9018; + public const int GL_LUMINANCE16_SNORM = 0x9019; + public const int GL_LUMINANCE16_ALPHA16_SNORM = 0x901A; + public const int GL_INTENSITY16_SNORM = 0x901B; + public const int GL_FACTOR_MIN_AMD = 0x901C; + public const int GL_FACTOR_MAX_AMD = 0x901D; + public const int GL_DEPTH_CLAMP_NEAR_AMD = 0x901E; + public const int GL_DEPTH_CLAMP_FAR_AMD = 0x901F; + // VENDOR: NV + // For Pat Brown, bug 4935 + public const int GL_VIDEO_BUFFER_NV = 0x9020; + public const int GL_VIDEO_BUFFER_BINDING_NV = 0x9021; + public const int GL_FIELD_UPPER_NV = 0x9022; + public const int GL_FIELD_LOWER_NV = 0x9023; + public const int GL_NUM_VIDEO_CAPTURE_STREAMS_NV = 0x9024; + public const int GL_NEXT_VIDEO_CAPTURE_BUFFER_STATUS_NV = 0x9025; + public const int GL_VIDEO_CAPTURE_TO_422_SUPPORTED_NV = 0x9026; + public const int GL_LAST_VIDEO_CAPTURE_STATUS_NV = 0x9027; + public const int GL_VIDEO_BUFFER_PITCH_NV = 0x9028; + public const int GL_VIDEO_COLOR_CONVERSION_MATRIX_NV = 0x9029; + public const int GL_VIDEO_COLOR_CONVERSION_MAX_NV = 0x902A; + public const int GL_VIDEO_COLOR_CONVERSION_MIN_NV = 0x902B; + public const int GL_VIDEO_COLOR_CONVERSION_OFFSET_NV = 0x902C; + public const int GL_VIDEO_BUFFER_INTERNAL_FORMAT_NV = 0x902D; + public const int GL_PARTIAL_SUCCESS_NV = 0x902E; + public const int GL_SUCCESS_NV = 0x902F; + public const int GL_FAILURE_NV = 0x9030; + public const int GL_YCBYCR8_422_NV = 0x9031; + public const int GL_YCBAYCR8A_4224_NV = 0x9032; + public const int GL_Z6Y10Z6CB10Z6Y10Z6CR10_422_NV = 0x9033; + public const int GL_Z6Y10Z6CB10Z6A10Z6Y10Z6CR10Z6A10_4224_NV = 0x9034; + public const int GL_Z4Y12Z4CB12Z4Y12Z4CR12_422_NV = 0x9035; + public const int GL_Z4Y12Z4CB12Z4A12Z4Y12Z4CR12Z4A12_4224_NV = 0x9036; + public const int GL_Z4Y12Z4CB12Z4CR12_444_NV = 0x9037; + public const int GL_VIDEO_CAPTURE_FRAME_WIDTH_NV = 0x9038; + public const int GL_VIDEO_CAPTURE_FRAME_HEIGHT_NV = 0x9039; + public const int GL_VIDEO_CAPTURE_FIELD_UPPER_HEIGHT_NV = 0x903A; + public const int GL_VIDEO_CAPTURE_FIELD_LOWER_HEIGHT_NV = 0x903B; + public const int GL_VIDEO_CAPTURE_SURFACE_ORIGIN_NV = 0x903C; + public const int GL_TEXTURE_COVERAGE_SAMPLES_NV = 0x9045; + public const int GL_TEXTURE_COLOR_SAMPLES_NV = 0x9046; + public const int GL_GPU_MEMORY_INFO_DEDICATED_VIDMEM_NVX = 0x9047; + public const int GL_GPU_MEMORY_INFO_TOTAL_AVAILABLE_MEMORY_NVX = 0x9048; + public const int GL_GPU_MEMORY_INFO_CURRENT_AVAILABLE_VIDMEM_NVX = 0x9049; + public const int GL_GPU_MEMORY_INFO_EVICTION_COUNT_NVX = 0x904A; + public const int GL_GPU_MEMORY_INFO_EVICTED_MEMORY_NVX = 0x904B; + public const int GL_IMAGE_1D = 0x904C; + public const int GL_IMAGE_1D_EXT = 0x904C; + public const int GL_IMAGE_2D = 0x904D; + public const int GL_IMAGE_2D_EXT = 0x904D; + public const int GL_IMAGE_3D = 0x904E; + public const int GL_IMAGE_3D_EXT = 0x904E; + public const int GL_IMAGE_2D_RECT = 0x904F; + public const int GL_IMAGE_2D_RECT_EXT = 0x904F; + public const int GL_IMAGE_CUBE = 0x9050; + public const int GL_IMAGE_CUBE_EXT = 0x9050; + public const int GL_IMAGE_BUFFER = 0x9051; + public const int GL_IMAGE_BUFFER_EXT = 0x9051; + public const int GL_IMAGE_BUFFER_OES = 0x9051; + public const int GL_IMAGE_1D_ARRAY = 0x9052; + public const int GL_IMAGE_1D_ARRAY_EXT = 0x9052; + public const int GL_IMAGE_2D_ARRAY = 0x9053; + public const int GL_IMAGE_2D_ARRAY_EXT = 0x9053; + public const int GL_IMAGE_CUBE_MAP_ARRAY = 0x9054; + public const int GL_IMAGE_CUBE_MAP_ARRAY_EXT = 0x9054; + public const int GL_IMAGE_CUBE_MAP_ARRAY_OES = 0x9054; + public const int GL_IMAGE_2D_MULTISAMPLE = 0x9055; + public const int GL_IMAGE_2D_MULTISAMPLE_EXT = 0x9055; + public const int GL_IMAGE_2D_MULTISAMPLE_ARRAY = 0x9056; + public const int GL_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x9056; + public const int GL_INT_IMAGE_1D = 0x9057; + public const int GL_INT_IMAGE_1D_EXT = 0x9057; + public const int GL_INT_IMAGE_2D = 0x9058; + public const int GL_INT_IMAGE_2D_EXT = 0x9058; + public const int GL_INT_IMAGE_3D = 0x9059; + public const int GL_INT_IMAGE_3D_EXT = 0x9059; + public const int GL_INT_IMAGE_2D_RECT = 0x905A; + public const int GL_INT_IMAGE_2D_RECT_EXT = 0x905A; + public const int GL_INT_IMAGE_CUBE = 0x905B; + public const int GL_INT_IMAGE_CUBE_EXT = 0x905B; + public const int GL_INT_IMAGE_BUFFER = 0x905C; + public const int GL_INT_IMAGE_BUFFER_EXT = 0x905C; + public const int GL_INT_IMAGE_BUFFER_OES = 0x905C; + public const int GL_INT_IMAGE_1D_ARRAY = 0x905D; + public const int GL_INT_IMAGE_1D_ARRAY_EXT = 0x905D; + public const int GL_INT_IMAGE_2D_ARRAY = 0x905E; + public const int GL_INT_IMAGE_2D_ARRAY_EXT = 0x905E; + public const int GL_INT_IMAGE_CUBE_MAP_ARRAY = 0x905F; + public const int GL_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x905F; + public const int GL_INT_IMAGE_CUBE_MAP_ARRAY_OES = 0x905F; + public const int GL_INT_IMAGE_2D_MULTISAMPLE = 0x9060; + public const int GL_INT_IMAGE_2D_MULTISAMPLE_EXT = 0x9060; + public const int GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY = 0x9061; + public const int GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x9061; + public const int GL_UNSIGNED_INT_IMAGE_1D = 0x9062; + public const int GL_UNSIGNED_INT_IMAGE_1D_EXT = 0x9062; + public const int GL_UNSIGNED_INT_IMAGE_2D = 0x9063; + public const int GL_UNSIGNED_INT_IMAGE_2D_EXT = 0x9063; + public const int GL_UNSIGNED_INT_IMAGE_3D = 0x9064; + public const int GL_UNSIGNED_INT_IMAGE_3D_EXT = 0x9064; + public const int GL_UNSIGNED_INT_IMAGE_2D_RECT = 0x9065; + public const int GL_UNSIGNED_INT_IMAGE_2D_RECT_EXT = 0x9065; + public const int GL_UNSIGNED_INT_IMAGE_CUBE = 0x9066; + public const int GL_UNSIGNED_INT_IMAGE_CUBE_EXT = 0x9066; + public const int GL_UNSIGNED_INT_IMAGE_BUFFER = 0x9067; + public const int GL_UNSIGNED_INT_IMAGE_BUFFER_EXT = 0x9067; + public const int GL_UNSIGNED_INT_IMAGE_BUFFER_OES = 0x9067; + public const int GL_UNSIGNED_INT_IMAGE_1D_ARRAY = 0x9068; + public const int GL_UNSIGNED_INT_IMAGE_1D_ARRAY_EXT = 0x9068; + public const int GL_UNSIGNED_INT_IMAGE_2D_ARRAY = 0x9069; + public const int GL_UNSIGNED_INT_IMAGE_2D_ARRAY_EXT = 0x9069; + public const int GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY = 0x906A; + public const int GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_EXT = 0x906A; + public const int GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY_OES = 0x906A; + public const int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE = 0x906B; + public const int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_EXT = 0x906B; + public const int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY = 0x906C; + public const int GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY_EXT = 0x906C; + public const int GL_MAX_IMAGE_SAMPLES = 0x906D; + public const int GL_MAX_IMAGE_SAMPLES_EXT = 0x906D; + public const int GL_IMAGE_BINDING_FORMAT = 0x906E; + public const int GL_IMAGE_BINDING_FORMAT_EXT = 0x906E; + public const int GL_RGB10_A2UI = 0x906F; + public const int GL_PATH_FORMAT_SVG_NV = 0x9070; + public const int GL_PATH_FORMAT_PS_NV = 0x9071; + public const int GL_STANDARD_FONT_NAME_NV = 0x9072; + public const int GL_SYSTEM_FONT_NAME_NV = 0x9073; + public const int GL_FILE_NAME_NV = 0x9074; + public const int GL_PATH_STROKE_WIDTH_NV = 0x9075; + public const int GL_PATH_END_CAPS_NV = 0x9076; + public const int GL_PATH_INITIAL_END_CAP_NV = 0x9077; + public const int GL_PATH_TERMINAL_END_CAP_NV = 0x9078; + public const int GL_PATH_JOIN_STYLE_NV = 0x9079; + public const int GL_PATH_MITER_LIMIT_NV = 0x907A; + public const int GL_PATH_DASH_CAPS_NV = 0x907B; + public const int GL_PATH_INITIAL_DASH_CAP_NV = 0x907C; + public const int GL_PATH_TERMINAL_DASH_CAP_NV = 0x907D; + public const int GL_PATH_DASH_OFFSET_NV = 0x907E; + public const int GL_PATH_CLIENT_LENGTH_NV = 0x907F; + public const int GL_PATH_FILL_MODE_NV = 0x9080; + public const int GL_PATH_FILL_MASK_NV = 0x9081; + public const int GL_PATH_FILL_COVER_MODE_NV = 0x9082; + public const int GL_PATH_STROKE_COVER_MODE_NV = 0x9083; + public const int GL_PATH_STROKE_MASK_NV = 0x9084; + public const int GL_COUNT_UP_NV = 0x9088; + public const int GL_COUNT_DOWN_NV = 0x9089; + public const int GL_PATH_OBJECT_BOUNDING_BOX_NV = 0x908A; + public const int GL_CONVEX_HULL_NV = 0x908B; + public const int GL_BOUNDING_BOX_NV = 0x908D; + public const int GL_TRANSLATE_X_NV = 0x908E; + public const int GL_TRANSLATE_Y_NV = 0x908F; + public const int GL_TRANSLATE_2D_NV = 0x9090; + public const int GL_TRANSLATE_3D_NV = 0x9091; + public const int GL_AFFINE_2D_NV = 0x9092; + public const int GL_AFFINE_3D_NV = 0x9094; + public const int GL_TRANSPOSE_AFFINE_2D_NV = 0x9096; + public const int GL_TRANSPOSE_AFFINE_3D_NV = 0x9098; + public const int GL_UTF8_NV = 0x909A; + public const int GL_UTF16_NV = 0x909B; + public const int GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV = 0x909C; + public const int GL_PATH_COMMAND_COUNT_NV = 0x909D; + public const int GL_PATH_COORD_COUNT_NV = 0x909E; + public const int GL_PATH_DASH_ARRAY_COUNT_NV = 0x909F; + public const int GL_PATH_COMPUTED_LENGTH_NV = 0x90A0; + public const int GL_PATH_FILL_BOUNDING_BOX_NV = 0x90A1; + public const int GL_PATH_STROKE_BOUNDING_BOX_NV = 0x90A2; + public const int GL_SQUARE_NV = 0x90A3; + public const int GL_ROUND_NV = 0x90A4; + public const int GL_TRIANGULAR_NV = 0x90A5; + public const int GL_BEVEL_NV = 0x90A6; + public const int GL_MITER_REVERT_NV = 0x90A7; + public const int GL_MITER_TRUNCATE_NV = 0x90A8; + public const int GL_SKIP_MISSING_GLYPH_NV = 0x90A9; + public const int GL_USE_MISSING_GLYPH_NV = 0x90AA; + public const int GL_PATH_ERROR_POSITION_NV = 0x90AB; + public const int GL_PATH_FOG_GEN_MODE_NV = 0x90AC; + public const int GL_ACCUM_ADJACENT_PAIRS_NV = 0x90AD; + public const int GL_ADJACENT_PAIRS_NV = 0x90AE; + public const int GL_FIRST_TO_REST_NV = 0x90AF; + public const int GL_PATH_GEN_MODE_NV = 0x90B0; + public const int GL_PATH_GEN_COEFF_NV = 0x90B1; + public const int GL_PATH_GEN_COLOR_FORMAT_NV = 0x90B2; + public const int GL_PATH_GEN_COMPONENTS_NV = 0x90B3; + public const int GL_PATH_DASH_OFFSET_RESET_NV = 0x90B4; + public const int GL_MOVE_TO_RESETS_NV = 0x90B5; + public const int GL_MOVE_TO_CONTINUES_NV = 0x90B6; + public const int GL_PATH_STENCIL_FUNC_NV = 0x90B7; + public const int GL_PATH_STENCIL_REF_NV = 0x90B8; + public const int GL_PATH_STENCIL_VALUE_MASK_NV = 0x90B9; + public const int GL_SCALED_RESOLVE_FASTEST_EXT = 0x90BA; + public const int GL_SCALED_RESOLVE_NICEST_EXT = 0x90BB; + public const int GL_MIN_MAP_BUFFER_ALIGNMENT = 0x90BC; + public const int GL_PATH_STENCIL_DEPTH_OFFSET_FACTOR_NV = 0x90BD; + public const int GL_PATH_STENCIL_DEPTH_OFFSET_UNITS_NV = 0x90BE; + public const int GL_PATH_COVER_DEPTH_FUNC_NV = 0x90BF; + public const int GL_IMAGE_FORMAT_COMPATIBILITY_TYPE = 0x90C7; + public const int GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE = 0x90C8; + public const int GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS = 0x90C9; + public const int GL_MAX_VERTEX_IMAGE_UNIFORMS = 0x90CA; + public const int GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS = 0x90CB; + public const int GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_EXT = 0x90CB; + public const int GL_MAX_TESS_CONTROL_IMAGE_UNIFORMS_OES = 0x90CB; + public const int GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS = 0x90CC; + public const int GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_EXT = 0x90CC; + public const int GL_MAX_TESS_EVALUATION_IMAGE_UNIFORMS_OES = 0x90CC; + public const int GL_MAX_GEOMETRY_IMAGE_UNIFORMS = 0x90CD; + public const int GL_MAX_GEOMETRY_IMAGE_UNIFORMS_EXT = 0x90CD; + public const int GL_MAX_GEOMETRY_IMAGE_UNIFORMS_OES = 0x90CD; + public const int GL_MAX_FRAGMENT_IMAGE_UNIFORMS = 0x90CE; + public const int GL_MAX_COMBINED_IMAGE_UNIFORMS = 0x90CF; + public const int GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV = 0x90D0; + public const int GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV = 0x90D1; + public const int GL_SHADER_STORAGE_BUFFER = 0x90D2; + public const int GL_SHADER_STORAGE_BUFFER_BINDING = 0x90D3; + public const int GL_SHADER_STORAGE_BUFFER_START = 0x90D4; + public const int GL_SHADER_STORAGE_BUFFER_SIZE = 0x90D5; + public const int GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS = 0x90D6; + public const int GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS = 0x90D7; + public const int GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_EXT = 0x90D7; + public const int GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS_OES = 0x90D7; + public const int GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS = 0x90D8; + public const int GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_EXT = 0x90D8; + public const int GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS_OES = 0x90D8; + public const int GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS = 0x90D9; + public const int GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_EXT = 0x90D9; + public const int GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS_OES = 0x90D9; + public const int GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS = 0x90DA; + public const int GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS = 0x90DB; + public const int GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS = 0x90DC; + public const int GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS = 0x90DD; + public const int GL_MAX_SHADER_STORAGE_BLOCK_SIZE = 0x90DE; + public const int GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT = 0x90DF; + public const int GL_SYNC_X11_FENCE_EXT = 0x90E1; + public const int GL_DEPTH_STENCIL_TEXTURE_MODE = 0x90EA; + public const int GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS = 0x90EB; + public const int GL_MAX_COMPUTE_FIXED_GROUP_INVOCATIONS_ARB = 0x90EB; + public const int GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER = 0x90EC; + public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER = 0x90ED; + public const int GL_DISPATCH_INDIRECT_BUFFER = 0x90EE; + public const int GL_DISPATCH_INDIRECT_BUFFER_BINDING = 0x90EF; + public const int GL_COLOR_ATTACHMENT_EXT = 0x90F0; + public const int GL_MULTIVIEW_EXT = 0x90F1; + public const int GL_MAX_MULTIVIEW_BUFFERS_EXT = 0x90F2; + public const int GL_CONTEXT_ROBUST_ACCESS = 0x90F3; + public const int GL_CONTEXT_ROBUST_ACCESS_EXT = 0x90F3; + public const int GL_CONTEXT_ROBUST_ACCESS_KHR = 0x90F3; + public const int GL_COMPUTE_PROGRAM_NV = 0x90FB; + public const int GL_COMPUTE_PROGRAM_PARAMETER_BUFFER_NV = 0x90FC; + // VENDOR: ARB + public const int GL_TEXTURE_2D_MULTISAMPLE = 0x9100; + public const int GL_PROXY_TEXTURE_2D_MULTISAMPLE = 0x9101; + public const int GL_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9102; + public const int GL_TEXTURE_2D_MULTISAMPLE_ARRAY_OES = 0x9102; + public const int GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9103; + public const int GL_TEXTURE_BINDING_2D_MULTISAMPLE = 0x9104; + public const int GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = 0x9105; + public const int GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY_OES = 0x9105; + public const int GL_TEXTURE_SAMPLES = 0x9106; + public const int GL_TEXTURE_FIXED_SAMPLE_LOCATIONS = 0x9107; + public const int GL_SAMPLER_2D_MULTISAMPLE = 0x9108; + public const int GL_INT_SAMPLER_2D_MULTISAMPLE = 0x9109; + public const int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = 0x910A; + public const int GL_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910B; + public const int GL_SAMPLER_2D_MULTISAMPLE_ARRAY_OES = 0x910B; + public const int GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910C; + public const int GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES = 0x910C; + public const int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = 0x910D; + public const int GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY_OES = 0x910D; + public const int GL_MAX_COLOR_TEXTURE_SAMPLES = 0x910E; + public const int GL_MAX_DEPTH_TEXTURE_SAMPLES = 0x910F; + public const int GL_MAX_INTEGER_SAMPLES = 0x9110; + public const int GL_MAX_SERVER_WAIT_TIMEOUT = 0x9111; + public const int GL_MAX_SERVER_WAIT_TIMEOUT_APPLE = 0x9111; + public const int GL_OBJECT_TYPE = 0x9112; + public const int GL_OBJECT_TYPE_APPLE = 0x9112; + public const int GL_SYNC_CONDITION = 0x9113; + public const int GL_SYNC_CONDITION_APPLE = 0x9113; + public const int GL_SYNC_STATUS = 0x9114; + public const int GL_SYNC_STATUS_APPLE = 0x9114; + public const int GL_SYNC_FLAGS = 0x9115; + public const int GL_SYNC_FLAGS_APPLE = 0x9115; + public const int GL_SYNC_FENCE = 0x9116; + public const int GL_SYNC_FENCE_APPLE = 0x9116; + public const int GL_SYNC_GPU_COMMANDS_COMPLETE = 0x9117; + public const int GL_SYNC_GPU_COMMANDS_COMPLETE_APPLE = 0x9117; + public const int GL_UNSIGNALED = 0x9118; + public const int GL_UNSIGNALED_APPLE = 0x9118; + public const int GL_SIGNALED = 0x9119; + public const int GL_SIGNALED_APPLE = 0x9119; + public const int GL_ALREADY_SIGNALED = 0x911A; + public const int GL_ALREADY_SIGNALED_APPLE = 0x911A; + public const int GL_TIMEOUT_EXPIRED = 0x911B; + public const int GL_TIMEOUT_EXPIRED_APPLE = 0x911B; + public const int GL_CONDITION_SATISFIED = 0x911C; + public const int GL_CONDITION_SATISFIED_APPLE = 0x911C; + public const int GL_WAIT_FAILED = 0x911D; + public const int GL_WAIT_FAILED_APPLE = 0x911D; + public const int GL_BUFFER_ACCESS_FLAGS = 0x911F; + public const int GL_BUFFER_MAP_LENGTH = 0x9120; + public const int GL_BUFFER_MAP_OFFSET = 0x9121; + public const int GL_MAX_VERTEX_OUTPUT_COMPONENTS = 0x9122; + public const int GL_MAX_GEOMETRY_INPUT_COMPONENTS = 0x9123; + public const int GL_MAX_GEOMETRY_INPUT_COMPONENTS_EXT = 0x9123; + public const int GL_MAX_GEOMETRY_INPUT_COMPONENTS_OES = 0x9123; + public const int GL_MAX_GEOMETRY_OUTPUT_COMPONENTS = 0x9124; + public const int GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_EXT = 0x9124; + public const int GL_MAX_GEOMETRY_OUTPUT_COMPONENTS_OES = 0x9124; + public const int GL_MAX_FRAGMENT_INPUT_COMPONENTS = 0x9125; + public const int GL_CONTEXT_PROFILE_MASK = 0x9126; + public const int GL_UNPACK_COMPRESSED_BLOCK_WIDTH = 0x9127; + public const int GL_UNPACK_COMPRESSED_BLOCK_HEIGHT = 0x9128; + public const int GL_UNPACK_COMPRESSED_BLOCK_DEPTH = 0x9129; + public const int GL_UNPACK_COMPRESSED_BLOCK_SIZE = 0x912A; + public const int GL_PACK_COMPRESSED_BLOCK_WIDTH = 0x912B; + public const int GL_PACK_COMPRESSED_BLOCK_HEIGHT = 0x912C; + public const int GL_PACK_COMPRESSED_BLOCK_DEPTH = 0x912D; + public const int GL_PACK_COMPRESSED_BLOCK_SIZE = 0x912E; + public const int GL_TEXTURE_IMMUTABLE_FORMAT = 0x912F; + public const int GL_TEXTURE_IMMUTABLE_FORMAT_EXT = 0x912F; + // VENDOR: IMG + // Khronos bug 882 + public const int GL_SGX_PROGRAM_BINARY_IMG = 0x9130; + public const int GL_RENDERBUFFER_SAMPLES_IMG = 0x9133; + public const int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG = 0x9134; + public const int GL_MAX_SAMPLES_IMG = 0x9135; + public const int GL_TEXTURE_SAMPLES_IMG = 0x9136; + public const int GL_COMPRESSED_RGBA_PVRTC_2BPPV2_IMG = 0x9137; + public const int GL_COMPRESSED_RGBA_PVRTC_4BPPV2_IMG = 0x9138; + public const int GL_CUBIC_IMG = 0x9139; + public const int GL_CUBIC_MIPMAP_NEAREST_IMG = 0x913A; + public const int GL_CUBIC_MIPMAP_LINEAR_IMG = 0x913B; + public const int GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_AND_DOWNSAMPLE_IMG = 0x913C; + public const int GL_NUM_DOWNSAMPLE_SCALES_IMG = 0x913D; + public const int GL_DOWNSAMPLE_SCALES_IMG = 0x913E; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SCALE_IMG = 0x913F; + // VENDOR: AMD + // Khronos bugs 5899, 6004 + public const int GL_MAX_DEBUG_MESSAGE_LENGTH = 0x9143; + public const int GL_MAX_DEBUG_MESSAGE_LENGTH_AMD = 0x9143; + public const int GL_MAX_DEBUG_MESSAGE_LENGTH_ARB = 0x9143; + public const int GL_MAX_DEBUG_MESSAGE_LENGTH_KHR = 0x9143; + public const int GL_MAX_DEBUG_LOGGED_MESSAGES = 0x9144; + public const int GL_MAX_DEBUG_LOGGED_MESSAGES_AMD = 0x9144; + public const int GL_MAX_DEBUG_LOGGED_MESSAGES_ARB = 0x9144; + public const int GL_MAX_DEBUG_LOGGED_MESSAGES_KHR = 0x9144; + public const int GL_DEBUG_LOGGED_MESSAGES = 0x9145; + public const int GL_DEBUG_LOGGED_MESSAGES_AMD = 0x9145; + public const int GL_DEBUG_LOGGED_MESSAGES_ARB = 0x9145; + public const int GL_DEBUG_LOGGED_MESSAGES_KHR = 0x9145; + public const int GL_DEBUG_SEVERITY_HIGH = 0x9146; + public const int GL_DEBUG_SEVERITY_HIGH_AMD = 0x9146; + public const int GL_DEBUG_SEVERITY_HIGH_ARB = 0x9146; + public const int GL_DEBUG_SEVERITY_HIGH_KHR = 0x9146; + public const int GL_DEBUG_SEVERITY_MEDIUM = 0x9147; + public const int GL_DEBUG_SEVERITY_MEDIUM_AMD = 0x9147; + public const int GL_DEBUG_SEVERITY_MEDIUM_ARB = 0x9147; + public const int GL_DEBUG_SEVERITY_MEDIUM_KHR = 0x9147; + public const int GL_DEBUG_SEVERITY_LOW = 0x9148; + public const int GL_DEBUG_SEVERITY_LOW_AMD = 0x9148; + public const int GL_DEBUG_SEVERITY_LOW_ARB = 0x9148; + public const int GL_DEBUG_SEVERITY_LOW_KHR = 0x9148; + public const int GL_DEBUG_CATEGORY_API_ERROR_AMD = 0x9149; + public const int GL_DEBUG_CATEGORY_WINDOW_SYSTEM_AMD = 0x914A; + public const int GL_DEBUG_CATEGORY_DEPRECATION_AMD = 0x914B; + public const int GL_DEBUG_CATEGORY_UNDEFINED_BEHAVIOR_AMD = 0x914C; + public const int GL_DEBUG_CATEGORY_PERFORMANCE_AMD = 0x914D; + public const int GL_DEBUG_CATEGORY_SHADER_COMPILER_AMD = 0x914E; + public const int GL_DEBUG_CATEGORY_APPLICATION_AMD = 0x914F; + public const int GL_DEBUG_CATEGORY_OTHER_AMD = 0x9150; + public const int GL_BUFFER_OBJECT_EXT = 0x9151; + public const int GL_DATA_BUFFER_AMD = 0x9151; + public const int GL_PERFORMANCE_MONITOR_AMD = 0x9152; + public const int GL_QUERY_OBJECT_AMD = 0x9153; + public const int GL_QUERY_OBJECT_EXT = 0x9153; + public const int GL_VERTEX_ARRAY_OBJECT_AMD = 0x9154; + public const int GL_VERTEX_ARRAY_OBJECT_EXT = 0x9154; + public const int GL_SAMPLER_OBJECT_AMD = 0x9155; + public const int GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD = 0x9160; + public const int GL_QUERY_BUFFER = 0x9192; + public const int GL_QUERY_BUFFER_AMD = 0x9192; + public const int GL_QUERY_BUFFER_BINDING = 0x9193; + public const int GL_QUERY_BUFFER_BINDING_AMD = 0x9193; + public const int GL_QUERY_RESULT_NO_WAIT = 0x9194; + public const int GL_QUERY_RESULT_NO_WAIT_AMD = 0x9194; + public const int GL_VIRTUAL_PAGE_SIZE_X_ARB = 0x9195; + public const int GL_VIRTUAL_PAGE_SIZE_X_EXT = 0x9195; + public const int GL_VIRTUAL_PAGE_SIZE_X_AMD = 0x9195; + public const int GL_VIRTUAL_PAGE_SIZE_Y_ARB = 0x9196; + public const int GL_VIRTUAL_PAGE_SIZE_Y_EXT = 0x9196; + public const int GL_VIRTUAL_PAGE_SIZE_Y_AMD = 0x9196; + public const int GL_VIRTUAL_PAGE_SIZE_Z_ARB = 0x9197; + public const int GL_VIRTUAL_PAGE_SIZE_Z_EXT = 0x9197; + public const int GL_VIRTUAL_PAGE_SIZE_Z_AMD = 0x9197; + public const int GL_MAX_SPARSE_TEXTURE_SIZE_ARB = 0x9198; + public const int GL_MAX_SPARSE_TEXTURE_SIZE_EXT = 0x9198; + public const int GL_MAX_SPARSE_TEXTURE_SIZE_AMD = 0x9198; + public const int GL_MAX_SPARSE_3D_TEXTURE_SIZE_ARB = 0x9199; + public const int GL_MAX_SPARSE_3D_TEXTURE_SIZE_EXT = 0x9199; + public const int GL_MAX_SPARSE_3D_TEXTURE_SIZE_AMD = 0x9199; + public const int GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS = 0x919A; + public const int GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_ARB = 0x919A; + public const int GL_MAX_SPARSE_ARRAY_TEXTURE_LAYERS_EXT = 0x919A; + public const int GL_MIN_SPARSE_LEVEL_AMD = 0x919B; + public const int GL_MIN_LOD_WARNING_AMD = 0x919C; + public const int GL_TEXTURE_BUFFER_OFFSET = 0x919D; + public const int GL_TEXTURE_BUFFER_OFFSET_EXT = 0x919D; + public const int GL_TEXTURE_BUFFER_OFFSET_OES = 0x919D; + public const int GL_TEXTURE_BUFFER_SIZE = 0x919E; + public const int GL_TEXTURE_BUFFER_SIZE_EXT = 0x919E; + public const int GL_TEXTURE_BUFFER_SIZE_OES = 0x919E; + public const int GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT = 0x919F; + public const int GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_EXT = 0x919F; + public const int GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT_OES = 0x919F; + public const int GL_STREAM_RASTERIZATION_AMD = 0x91A0; + public const int GL_VERTEX_ELEMENT_SWIZZLE_AMD = 0x91A4; + public const int GL_VERTEX_ID_SWIZZLE_AMD = 0x91A5; + public const int GL_TEXTURE_SPARSE_ARB = 0x91A6; + public const int GL_TEXTURE_SPARSE_EXT = 0x91A6; + public const int GL_VIRTUAL_PAGE_SIZE_INDEX_ARB = 0x91A7; + public const int GL_VIRTUAL_PAGE_SIZE_INDEX_EXT = 0x91A7; + public const int GL_NUM_VIRTUAL_PAGE_SIZES_ARB = 0x91A8; + public const int GL_NUM_VIRTUAL_PAGE_SIZES_EXT = 0x91A8; + public const int GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_ARB = 0x91A9; + public const int GL_SPARSE_TEXTURE_FULL_ARRAY_CUBE_MIPMAPS_EXT = 0x91A9; + public const int GL_NUM_SPARSE_LEVELS_ARB = 0x91AA; + public const int GL_NUM_SPARSE_LEVELS_EXT = 0x91AA; + public const int GL_PIXELS_PER_SAMPLE_PATTERN_X_AMD = 0x91AE; + public const int GL_PIXELS_PER_SAMPLE_PATTERN_Y_AMD = 0x91AF; + public const int GL_MAX_SHADER_COMPILER_THREADS_KHR = 0x91B0; + public const int GL_MAX_SHADER_COMPILER_THREADS_ARB = 0x91B0; + public const int GL_COMPLETION_STATUS_KHR = 0x91B1; + public const int GL_COMPLETION_STATUS_ARB = 0x91B1; + public const int GL_RENDERBUFFER_STORAGE_SAMPLES_AMD = 0x91B2; + public const int GL_MAX_COLOR_FRAMEBUFFER_SAMPLES_AMD = 0x91B3; + public const int GL_MAX_COLOR_FRAMEBUFFER_STORAGE_SAMPLES_AMD = 0x91B4; + public const int GL_MAX_DEPTH_STENCIL_FRAMEBUFFER_SAMPLES_AMD = 0x91B5; + public const int GL_NUM_SUPPORTED_MULTISAMPLE_MODES_AMD = 0x91B6; + public const int GL_SUPPORTED_MULTISAMPLE_MODES_AMD = 0x91B7; + public const int GL_COMPUTE_SHADER = 0x91B9; + public const int GL_MAX_COMPUTE_UNIFORM_BLOCKS = 0x91BB; + public const int GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS = 0x91BC; + public const int GL_MAX_COMPUTE_IMAGE_UNIFORMS = 0x91BD; + public const int GL_MAX_COMPUTE_WORK_GROUP_COUNT = 0x91BE; + public const int GL_MAX_COMPUTE_WORK_GROUP_SIZE = 0x91BF; + public const int GL_MAX_COMPUTE_FIXED_GROUP_SIZE_ARB = 0x91BF; + public const int GL_FLOAT16_MAT2_AMD = 0x91C5; + public const int GL_FLOAT16_MAT3_AMD = 0x91C6; + public const int GL_FLOAT16_MAT4_AMD = 0x91C7; + public const int GL_FLOAT16_MAT2x3_AMD = 0x91C8; + public const int GL_FLOAT16_MAT2x4_AMD = 0x91C9; + public const int GL_FLOAT16_MAT3x2_AMD = 0x91CA; + public const int GL_FLOAT16_MAT3x4_AMD = 0x91CB; + public const int GL_FLOAT16_MAT4x2_AMD = 0x91CC; + public const int GL_FLOAT16_MAT4x3_AMD = 0x91CD; + // VENDOR: WEBGL + // Khronos bug 6473,6884 + public const int GL_UNPACK_FLIP_Y_WEBGL = 0x9240; + public const int GL_UNPACK_PREMULTIPLY_ALPHA_WEBGL = 0x9241; + public const int GL_CONTEXT_LOST_WEBGL = 0x9242; + public const int GL_UNPACK_COLORSPACE_CONVERSION_WEBGL = 0x9243; + public const int GL_BROWSER_DEFAULT_WEBGL = 0x9244; + // VENDOR: DMP + // For Eisaku Ohbuchi via email + public const int GL_SHADER_BINARY_DMP = 0x9250; + public const int GL_SMAPHS30_PROGRAM_BINARY_DMP = 0x9251; + public const int GL_SMAPHS_PROGRAM_BINARY_DMP = 0x9252; + public const int GL_DMP_PROGRAM_BINARY_DMP = 0x9253; + // VENDOR: FJ + // Khronos bug 7486 + public const int GL_GCCSO_SHADER_BINARY_FJ = 0x9260; + // VENDOR: OES + // Khronos bug 7625 + public const int GL_COMPRESSED_R11_EAC = 0x9270; + public const int GL_COMPRESSED_R11_EAC_OES = 0x9270; + public const int GL_COMPRESSED_SIGNED_R11_EAC = 0x9271; + public const int GL_COMPRESSED_SIGNED_R11_EAC_OES = 0x9271; + public const int GL_COMPRESSED_RG11_EAC = 0x9272; + public const int GL_COMPRESSED_RG11_EAC_OES = 0x9272; + public const int GL_COMPRESSED_SIGNED_RG11_EAC = 0x9273; + public const int GL_COMPRESSED_SIGNED_RG11_EAC_OES = 0x9273; + public const int GL_COMPRESSED_RGB8_ETC2 = 0x9274; + public const int GL_COMPRESSED_RGB8_ETC2_OES = 0x9274; + public const int GL_COMPRESSED_SRGB8_ETC2 = 0x9275; + public const int GL_COMPRESSED_SRGB8_ETC2_OES = 0x9275; + public const int GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9276; + public const int GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2_OES = 0x9276; + public const int GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = 0x9277; + public const int GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2_OES = 0x9277; + public const int GL_COMPRESSED_RGBA8_ETC2_EAC = 0x9278; + public const int GL_COMPRESSED_RGBA8_ETC2_EAC_OES = 0x9278; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = 0x9279; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC_OES = 0x9279; + // VENDOR: NV + // Khronos bug 7658 + public const int GL_BLEND_PREMULTIPLIED_SRC_NV = 0x9280; + public const int GL_BLEND_OVERLAP_NV = 0x9281; + public const int GL_UNCORRELATED_NV = 0x9282; + public const int GL_DISJOINT_NV = 0x9283; + public const int GL_CONJOINT_NV = 0x9284; + public const int GL_BLEND_ADVANCED_COHERENT_KHR = 0x9285; + public const int GL_BLEND_ADVANCED_COHERENT_NV = 0x9285; + public const int GL_SRC_NV = 0x9286; + public const int GL_DST_NV = 0x9287; + public const int GL_SRC_OVER_NV = 0x9288; + public const int GL_DST_OVER_NV = 0x9289; + public const int GL_SRC_IN_NV = 0x928A; + public const int GL_DST_IN_NV = 0x928B; + public const int GL_SRC_OUT_NV = 0x928C; + public const int GL_DST_OUT_NV = 0x928D; + public const int GL_SRC_ATOP_NV = 0x928E; + public const int GL_DST_ATOP_NV = 0x928F; + public const int GL_PLUS_NV = 0x9291; + public const int GL_PLUS_DARKER_NV = 0x9292; + public const int GL_MULTIPLY = 0x9294; + public const int GL_MULTIPLY_KHR = 0x9294; + public const int GL_MULTIPLY_NV = 0x9294; + public const int GL_SCREEN = 0x9295; + public const int GL_SCREEN_KHR = 0x9295; + public const int GL_SCREEN_NV = 0x9295; + public const int GL_OVERLAY = 0x9296; + public const int GL_OVERLAY_KHR = 0x9296; + public const int GL_OVERLAY_NV = 0x9296; + public const int GL_DARKEN = 0x9297; + public const int GL_DARKEN_KHR = 0x9297; + public const int GL_DARKEN_NV = 0x9297; + public const int GL_LIGHTEN = 0x9298; + public const int GL_LIGHTEN_KHR = 0x9298; + public const int GL_LIGHTEN_NV = 0x9298; + public const int GL_COLORDODGE = 0x9299; + public const int GL_COLORDODGE_KHR = 0x9299; + public const int GL_COLORDODGE_NV = 0x9299; + public const int GL_COLORBURN = 0x929A; + public const int GL_COLORBURN_KHR = 0x929A; + public const int GL_COLORBURN_NV = 0x929A; + public const int GL_HARDLIGHT = 0x929B; + public const int GL_HARDLIGHT_KHR = 0x929B; + public const int GL_HARDLIGHT_NV = 0x929B; + public const int GL_SOFTLIGHT = 0x929C; + public const int GL_SOFTLIGHT_KHR = 0x929C; + public const int GL_SOFTLIGHT_NV = 0x929C; + public const int GL_DIFFERENCE = 0x929E; + public const int GL_DIFFERENCE_KHR = 0x929E; + public const int GL_DIFFERENCE_NV = 0x929E; + public const int GL_MINUS_NV = 0x929F; + public const int GL_EXCLUSION = 0x92A0; + public const int GL_EXCLUSION_KHR = 0x92A0; + public const int GL_EXCLUSION_NV = 0x92A0; + public const int GL_CONTRAST_NV = 0x92A1; + public const int GL_INVERT_RGB_NV = 0x92A3; + public const int GL_LINEARDODGE_NV = 0x92A4; + public const int GL_LINEARBURN_NV = 0x92A5; + public const int GL_VIVIDLIGHT_NV = 0x92A6; + public const int GL_LINEARLIGHT_NV = 0x92A7; + public const int GL_PINLIGHT_NV = 0x92A8; + public const int GL_HARDMIX_NV = 0x92A9; + public const int GL_HSL_HUE = 0x92AD; + public const int GL_HSL_HUE_KHR = 0x92AD; + public const int GL_HSL_HUE_NV = 0x92AD; + public const int GL_HSL_SATURATION = 0x92AE; + public const int GL_HSL_SATURATION_KHR = 0x92AE; + public const int GL_HSL_SATURATION_NV = 0x92AE; + public const int GL_HSL_COLOR = 0x92AF; + public const int GL_HSL_COLOR_KHR = 0x92AF; + public const int GL_HSL_COLOR_NV = 0x92AF; + public const int GL_HSL_LUMINOSITY = 0x92B0; + public const int GL_HSL_LUMINOSITY_KHR = 0x92B0; + public const int GL_HSL_LUMINOSITY_NV = 0x92B0; + public const int GL_PLUS_CLAMPED_NV = 0x92B1; + public const int GL_PLUS_CLAMPED_ALPHA_NV = 0x92B2; + public const int GL_MINUS_CLAMPED_NV = 0x92B3; + public const int GL_INVERT_OVG_NV = 0x92B4; + public const int GL_MAX_LGPU_GPUS_NVX = 0x92BA; + public const int GL_MULTICAST_GPUS_NV = 0x92BA; + public const int GL_PURGED_CONTEXT_RESET_NV = 0x92BB; + public const int GL_PRIMITIVE_BOUNDING_BOX_ARB = 0x92BE; + public const int GL_PRIMITIVE_BOUNDING_BOX = 0x92BE; + public const int GL_PRIMITIVE_BOUNDING_BOX_EXT = 0x92BE; + public const int GL_PRIMITIVE_BOUNDING_BOX_OES = 0x92BE; + public const int GL_ALPHA_TO_COVERAGE_DITHER_MODE_NV = 0x92BF; + public const int GL_ATOMIC_COUNTER_BUFFER = 0x92C0; + public const int GL_ATOMIC_COUNTER_BUFFER_BINDING = 0x92C1; + public const int GL_ATOMIC_COUNTER_BUFFER_START = 0x92C2; + public const int GL_ATOMIC_COUNTER_BUFFER_SIZE = 0x92C3; + public const int GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE = 0x92C4; + public const int GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS = 0x92C5; + public const int GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES = 0x92C6; + public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER = 0x92C7; + public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER = 0x92C8; + public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x92C9; + public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER = 0x92CA; + public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER = 0x92CB; + public const int GL_MAX_VERTEX_ATOMIC_COUNTER_BUFFERS = 0x92CC; + public const int GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS = 0x92CD; + public const int GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_EXT = 0x92CD; + public const int GL_MAX_TESS_CONTROL_ATOMIC_COUNTER_BUFFERS_OES = 0x92CD; + public const int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS = 0x92CE; + public const int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_EXT = 0x92CE; + public const int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTER_BUFFERS_OES = 0x92CE; + public const int GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS = 0x92CF; + public const int GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_EXT = 0x92CF; + public const int GL_MAX_GEOMETRY_ATOMIC_COUNTER_BUFFERS_OES = 0x92CF; + public const int GL_MAX_FRAGMENT_ATOMIC_COUNTER_BUFFERS = 0x92D0; + public const int GL_MAX_COMBINED_ATOMIC_COUNTER_BUFFERS = 0x92D1; + public const int GL_MAX_VERTEX_ATOMIC_COUNTERS = 0x92D2; + public const int GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS = 0x92D3; + public const int GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_EXT = 0x92D3; + public const int GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS_OES = 0x92D3; + public const int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS = 0x92D4; + public const int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_EXT = 0x92D4; + public const int GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS_OES = 0x92D4; + public const int GL_MAX_GEOMETRY_ATOMIC_COUNTERS = 0x92D5; + public const int GL_MAX_GEOMETRY_ATOMIC_COUNTERS_EXT = 0x92D5; + public const int GL_MAX_GEOMETRY_ATOMIC_COUNTERS_OES = 0x92D5; + public const int GL_MAX_FRAGMENT_ATOMIC_COUNTERS = 0x92D6; + public const int GL_MAX_COMBINED_ATOMIC_COUNTERS = 0x92D7; + public const int GL_MAX_ATOMIC_COUNTER_BUFFER_SIZE = 0x92D8; + public const int GL_ACTIVE_ATOMIC_COUNTER_BUFFERS = 0x92D9; + public const int GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX = 0x92DA; + public const int GL_UNSIGNED_INT_ATOMIC_COUNTER = 0x92DB; + public const int GL_MAX_ATOMIC_COUNTER_BUFFER_BINDINGS = 0x92DC; + public const int GL_FRAGMENT_COVERAGE_TO_COLOR_NV = 0x92DD; + public const int GL_FRAGMENT_COVERAGE_COLOR_NV = 0x92DE; + public const int GL_MESH_OUTPUT_PER_VERTEX_GRANULARITY_NV = 0x92DF; + public const int GL_DEBUG_OUTPUT = 0x92E0; + public const int GL_DEBUG_OUTPUT_KHR = 0x92E0; + public const int GL_UNIFORM = 0x92E1; + public const int GL_UNIFORM_BLOCK = 0x92E2; + public const int GL_PROGRAM_INPUT = 0x92E3; + public const int GL_PROGRAM_OUTPUT = 0x92E4; + public const int GL_BUFFER_VARIABLE = 0x92E5; + public const int GL_SHADER_STORAGE_BLOCK = 0x92E6; + public const int GL_IS_PER_PATCH = 0x92E7; + public const int GL_IS_PER_PATCH_EXT = 0x92E7; + public const int GL_IS_PER_PATCH_OES = 0x92E7; + public const int GL_VERTEX_SUBROUTINE = 0x92E8; + public const int GL_TESS_CONTROL_SUBROUTINE = 0x92E9; + public const int GL_TESS_EVALUATION_SUBROUTINE = 0x92EA; + public const int GL_GEOMETRY_SUBROUTINE = 0x92EB; + public const int GL_FRAGMENT_SUBROUTINE = 0x92EC; + public const int GL_COMPUTE_SUBROUTINE = 0x92ED; + public const int GL_VERTEX_SUBROUTINE_UNIFORM = 0x92EE; + public const int GL_TESS_CONTROL_SUBROUTINE_UNIFORM = 0x92EF; + public const int GL_TESS_EVALUATION_SUBROUTINE_UNIFORM = 0x92F0; + public const int GL_GEOMETRY_SUBROUTINE_UNIFORM = 0x92F1; + public const int GL_FRAGMENT_SUBROUTINE_UNIFORM = 0x92F2; + public const int GL_COMPUTE_SUBROUTINE_UNIFORM = 0x92F3; + public const int GL_TRANSFORM_FEEDBACK_VARYING = 0x92F4; + public const int GL_ACTIVE_RESOURCES = 0x92F5; + public const int GL_MAX_NAME_LENGTH = 0x92F6; + public const int GL_MAX_NUM_ACTIVE_VARIABLES = 0x92F7; + public const int GL_MAX_NUM_COMPATIBLE_SUBROUTINES = 0x92F8; + public const int GL_NAME_LENGTH = 0x92F9; + public const int GL_TYPE = 0x92FA; + public const int GL_ARRAY_SIZE = 0x92FB; + public const int GL_OFFSET = 0x92FC; + public const int GL_BLOCK_INDEX = 0x92FD; + public const int GL_ARRAY_STRIDE = 0x92FE; + public const int GL_MATRIX_STRIDE = 0x92FF; + public const int GL_IS_ROW_MAJOR = 0x9300; + public const int GL_ATOMIC_COUNTER_BUFFER_INDEX = 0x9301; + public const int GL_BUFFER_BINDING = 0x9302; + public const int GL_BUFFER_DATA_SIZE = 0x9303; + public const int GL_NUM_ACTIVE_VARIABLES = 0x9304; + public const int GL_ACTIVE_VARIABLES = 0x9305; + public const int GL_REFERENCED_BY_VERTEX_SHADER = 0x9306; + public const int GL_REFERENCED_BY_TESS_CONTROL_SHADER = 0x9307; + public const int GL_REFERENCED_BY_TESS_CONTROL_SHADER_EXT = 0x9307; + public const int GL_REFERENCED_BY_TESS_CONTROL_SHADER_OES = 0x9307; + public const int GL_REFERENCED_BY_TESS_EVALUATION_SHADER = 0x9308; + public const int GL_REFERENCED_BY_TESS_EVALUATION_SHADER_EXT = 0x9308; + public const int GL_REFERENCED_BY_TESS_EVALUATION_SHADER_OES = 0x9308; + public const int GL_REFERENCED_BY_GEOMETRY_SHADER = 0x9309; + public const int GL_REFERENCED_BY_GEOMETRY_SHADER_EXT = 0x9309; + public const int GL_REFERENCED_BY_GEOMETRY_SHADER_OES = 0x9309; + public const int GL_REFERENCED_BY_FRAGMENT_SHADER = 0x930A; + public const int GL_REFERENCED_BY_COMPUTE_SHADER = 0x930B; + public const int GL_TOP_LEVEL_ARRAY_SIZE = 0x930C; + public const int GL_TOP_LEVEL_ARRAY_STRIDE = 0x930D; + public const int GL_LOCATION = 0x930E; + public const int GL_LOCATION_INDEX = 0x930F; + public const int GL_LOCATION_INDEX_EXT = 0x930F; + public const int GL_FRAMEBUFFER_DEFAULT_WIDTH = 0x9310; + public const int GL_FRAMEBUFFER_DEFAULT_HEIGHT = 0x9311; + public const int GL_FRAMEBUFFER_DEFAULT_LAYERS = 0x9312; + public const int GL_FRAMEBUFFER_DEFAULT_LAYERS_EXT = 0x9312; + public const int GL_FRAMEBUFFER_DEFAULT_LAYERS_OES = 0x9312; + public const int GL_FRAMEBUFFER_DEFAULT_SAMPLES = 0x9313; + public const int GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS = 0x9314; + public const int GL_MAX_FRAMEBUFFER_WIDTH = 0x9315; + public const int GL_MAX_FRAMEBUFFER_HEIGHT = 0x9316; + public const int GL_MAX_FRAMEBUFFER_LAYERS = 0x9317; + public const int GL_MAX_FRAMEBUFFER_LAYERS_EXT = 0x9317; + public const int GL_MAX_FRAMEBUFFER_LAYERS_OES = 0x9317; + public const int GL_MAX_FRAMEBUFFER_SAMPLES = 0x9318; + public const int GL_RASTER_MULTISAMPLE_EXT = 0x9327; + public const int GL_RASTER_SAMPLES_EXT = 0x9328; + public const int GL_MAX_RASTER_SAMPLES_EXT = 0x9329; + public const int GL_RASTER_FIXED_SAMPLE_LOCATIONS_EXT = 0x932A; + public const int GL_MULTISAMPLE_RASTERIZATION_ALLOWED_EXT = 0x932B; + public const int GL_EFFECTIVE_RASTER_SAMPLES_EXT = 0x932C; + public const int GL_DEPTH_SAMPLES_NV = 0x932D; + public const int GL_STENCIL_SAMPLES_NV = 0x932E; + public const int GL_MIXED_DEPTH_SAMPLES_SUPPORTED_NV = 0x932F; + public const int GL_MIXED_STENCIL_SAMPLES_SUPPORTED_NV = 0x9330; + public const int GL_COVERAGE_MODULATION_TABLE_NV = 0x9331; + public const int GL_COVERAGE_MODULATION_NV = 0x9332; + public const int GL_COVERAGE_MODULATION_TABLE_SIZE_NV = 0x9333; + public const int GL_WARP_SIZE_NV = 0x9339; + public const int GL_WARPS_PER_SM_NV = 0x933A; + public const int GL_SM_COUNT_NV = 0x933B; + public const int GL_FILL_RECTANGLE_NV = 0x933C; + public const int GL_SAMPLE_LOCATION_SUBPIXEL_BITS_ARB = 0x933D; + public const int GL_SAMPLE_LOCATION_SUBPIXEL_BITS_NV = 0x933D; + public const int GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_ARB = 0x933E; + public const int GL_SAMPLE_LOCATION_PIXEL_GRID_WIDTH_NV = 0x933E; + public const int GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_ARB = 0x933F; + public const int GL_SAMPLE_LOCATION_PIXEL_GRID_HEIGHT_NV = 0x933F; + public const int GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_ARB = 0x9340; + public const int GL_PROGRAMMABLE_SAMPLE_LOCATION_TABLE_SIZE_NV = 0x9340; + public const int GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB = 0x9341; + public const int GL_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9341; + public const int GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_ARB = 0x9342; + public const int GL_FRAMEBUFFER_PROGRAMMABLE_SAMPLE_LOCATIONS_NV = 0x9342; + public const int GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_ARB = 0x9343; + public const int GL_FRAMEBUFFER_SAMPLE_LOCATION_PIXEL_GRID_NV = 0x9343; + public const int GL_MAX_COMPUTE_VARIABLE_GROUP_INVOCATIONS_ARB = 0x9344; + public const int GL_MAX_COMPUTE_VARIABLE_GROUP_SIZE_ARB = 0x9345; + public const int GL_CONSERVATIVE_RASTERIZATION_NV = 0x9346; + public const int GL_SUBPIXEL_PRECISION_BIAS_X_BITS_NV = 0x9347; + public const int GL_SUBPIXEL_PRECISION_BIAS_Y_BITS_NV = 0x9348; + public const int GL_MAX_SUBPIXEL_PRECISION_BIAS_BITS_NV = 0x9349; + public const int GL_LOCATION_COMPONENT = 0x934A; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_INDEX = 0x934B; + public const int GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE = 0x934C; + public const int GL_ALPHA_TO_COVERAGE_DITHER_DEFAULT_NV = 0x934D; + public const int GL_ALPHA_TO_COVERAGE_DITHER_ENABLE_NV = 0x934E; + public const int GL_ALPHA_TO_COVERAGE_DITHER_DISABLE_NV = 0x934F; + public const int GL_VIEWPORT_SWIZZLE_POSITIVE_X_NV = 0x9350; + public const int GL_VIEWPORT_SWIZZLE_NEGATIVE_X_NV = 0x9351; + public const int GL_VIEWPORT_SWIZZLE_POSITIVE_Y_NV = 0x9352; + public const int GL_VIEWPORT_SWIZZLE_NEGATIVE_Y_NV = 0x9353; + public const int GL_VIEWPORT_SWIZZLE_POSITIVE_Z_NV = 0x9354; + public const int GL_VIEWPORT_SWIZZLE_NEGATIVE_Z_NV = 0x9355; + public const int GL_VIEWPORT_SWIZZLE_POSITIVE_W_NV = 0x9356; + public const int GL_VIEWPORT_SWIZZLE_NEGATIVE_W_NV = 0x9357; + public const int GL_VIEWPORT_SWIZZLE_X_NV = 0x9358; + public const int GL_VIEWPORT_SWIZZLE_Y_NV = 0x9359; + public const int GL_VIEWPORT_SWIZZLE_Z_NV = 0x935A; + public const int GL_VIEWPORT_SWIZZLE_W_NV = 0x935B; + public const int GL_CLIP_ORIGIN = 0x935C; + public const int GL_CLIP_ORIGIN_EXT = 0x935C; + public const int GL_CLIP_DEPTH_MODE = 0x935D; + public const int GL_CLIP_DEPTH_MODE_EXT = 0x935D; + public const int GL_NEGATIVE_ONE_TO_ONE = 0x935E; + public const int GL_NEGATIVE_ONE_TO_ONE_EXT = 0x935E; + public const int GL_ZERO_TO_ONE = 0x935F; + public const int GL_ZERO_TO_ONE_EXT = 0x935F; + public const int GL_CLEAR_TEXTURE = 0x9365; + public const int GL_TEXTURE_REDUCTION_MODE_ARB = 0x9366; + public const int GL_TEXTURE_REDUCTION_MODE_EXT = 0x9366; + public const int GL_WEIGHTED_AVERAGE_ARB = 0x9367; + public const int GL_WEIGHTED_AVERAGE_EXT = 0x9367; + public const int GL_FONT_GLYPHS_AVAILABLE_NV = 0x9368; + public const int GL_FONT_TARGET_UNAVAILABLE_NV = 0x9369; + public const int GL_FONT_UNAVAILABLE_NV = 0x936A; + public const int GL_FONT_UNINTELLIGIBLE_NV = 0x936B; + public const int GL_STANDARD_FONT_FORMAT_NV = 0x936C; + public const int GL_FRAGMENT_INPUT_NV = 0x936D; + public const int GL_UNIFORM_BUFFER_UNIFIED_NV = 0x936E; + public const int GL_UNIFORM_BUFFER_ADDRESS_NV = 0x936F; + public const int GL_UNIFORM_BUFFER_LENGTH_NV = 0x9370; + public const int GL_MULTISAMPLES_NV = 0x9371; + public const int GL_SUPERSAMPLE_SCALE_X_NV = 0x9372; + public const int GL_SUPERSAMPLE_SCALE_Y_NV = 0x9373; + public const int GL_CONFORMANT_NV = 0x9374; + public const int GL_CONSERVATIVE_RASTER_DILATE_NV = 0x9379; + public const int GL_CONSERVATIVE_RASTER_DILATE_RANGE_NV = 0x937A; + public const int GL_CONSERVATIVE_RASTER_DILATE_GRANULARITY_NV = 0x937B; + public const int GL_VIEWPORT_POSITION_W_SCALE_NV = 0x937C; + public const int GL_VIEWPORT_POSITION_W_SCALE_X_COEFF_NV = 0x937D; + public const int GL_VIEWPORT_POSITION_W_SCALE_Y_COEFF_NV = 0x937E; + public const int GL_REPRESENTATIVE_FRAGMENT_TEST_NV = 0x937F; + // VENDOR: ARB + public const int GL_NUM_SAMPLE_COUNTS = 0x9380; + public const int GL_MULTISAMPLE_LINE_WIDTH_RANGE_ARB = 0x9381; + public const int GL_MULTISAMPLE_LINE_WIDTH_RANGE = 0x9381; + public const int GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY_ARB = 0x9382; + public const int GL_MULTISAMPLE_LINE_WIDTH_GRANULARITY = 0x9382; + public const int GL_VIEW_CLASS_EAC_R11 = 0x9383; + public const int GL_VIEW_CLASS_EAC_RG11 = 0x9384; + public const int GL_VIEW_CLASS_ETC2_RGB = 0x9385; + public const int GL_VIEW_CLASS_ETC2_RGBA = 0x9386; + public const int GL_VIEW_CLASS_ETC2_EAC_RGBA = 0x9387; + public const int GL_VIEW_CLASS_ASTC_4x4_RGBA = 0x9388; + public const int GL_VIEW_CLASS_ASTC_5x4_RGBA = 0x9389; + public const int GL_VIEW_CLASS_ASTC_5x5_RGBA = 0x938A; + public const int GL_VIEW_CLASS_ASTC_6x5_RGBA = 0x938B; + public const int GL_VIEW_CLASS_ASTC_6x6_RGBA = 0x938C; + public const int GL_VIEW_CLASS_ASTC_8x5_RGBA = 0x938D; + public const int GL_VIEW_CLASS_ASTC_8x6_RGBA = 0x938E; + public const int GL_VIEW_CLASS_ASTC_8x8_RGBA = 0x938F; + public const int GL_VIEW_CLASS_ASTC_10x5_RGBA = 0x9390; + public const int GL_VIEW_CLASS_ASTC_10x6_RGBA = 0x9391; + public const int GL_VIEW_CLASS_ASTC_10x8_RGBA = 0x9392; + public const int GL_VIEW_CLASS_ASTC_10x10_RGBA = 0x9393; + public const int GL_VIEW_CLASS_ASTC_12x10_RGBA = 0x9394; + public const int GL_VIEW_CLASS_ASTC_12x12_RGBA = 0x9395; + // VENDOR: ANGLE + // Khronos bug 8100 + public const int GL_TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE = 0x93A0; + public const int GL_BGRA8_EXT = 0x93A1; + public const int GL_TEXTURE_USAGE_ANGLE = 0x93A2; + public const int GL_FRAMEBUFFER_ATTACHMENT_ANGLE = 0x93A3; + public const int GL_PACK_REVERSE_ROW_ORDER_ANGLE = 0x93A4; + public const int GL_PROGRAM_BINARY_ANGLE = 0x93A6; + // VENDOR: OES + // Khronos bug 8853 + public const int GL_COMPRESSED_RGBA_ASTC_4x4 = 0x93B0; + public const int GL_COMPRESSED_RGBA_ASTC_4x4_KHR = 0x93B0; + public const int GL_COMPRESSED_RGBA_ASTC_5x4 = 0x93B1; + public const int GL_COMPRESSED_RGBA_ASTC_5x4_KHR = 0x93B1; + public const int GL_COMPRESSED_RGBA_ASTC_5x5 = 0x93B2; + public const int GL_COMPRESSED_RGBA_ASTC_5x5_KHR = 0x93B2; + public const int GL_COMPRESSED_RGBA_ASTC_6x5 = 0x93B3; + public const int GL_COMPRESSED_RGBA_ASTC_6x5_KHR = 0x93B3; + public const int GL_COMPRESSED_RGBA_ASTC_6x6 = 0x93B4; + public const int GL_COMPRESSED_RGBA_ASTC_6x6_KHR = 0x93B4; + public const int GL_COMPRESSED_RGBA_ASTC_8x5 = 0x93B5; + public const int GL_COMPRESSED_RGBA_ASTC_8x5_KHR = 0x93B5; + public const int GL_COMPRESSED_RGBA_ASTC_8x6 = 0x93B6; + public const int GL_COMPRESSED_RGBA_ASTC_8x6_KHR = 0x93B6; + public const int GL_COMPRESSED_RGBA_ASTC_8x8 = 0x93B7; + public const int GL_COMPRESSED_RGBA_ASTC_8x8_KHR = 0x93B7; + public const int GL_COMPRESSED_RGBA_ASTC_10x5 = 0x93B8; + public const int GL_COMPRESSED_RGBA_ASTC_10x5_KHR = 0x93B8; + public const int GL_COMPRESSED_RGBA_ASTC_10x6 = 0x93B9; + public const int GL_COMPRESSED_RGBA_ASTC_10x6_KHR = 0x93B9; + public const int GL_COMPRESSED_RGBA_ASTC_10x8 = 0x93BA; + public const int GL_COMPRESSED_RGBA_ASTC_10x8_KHR = 0x93BA; + public const int GL_COMPRESSED_RGBA_ASTC_10x10 = 0x93BB; + public const int GL_COMPRESSED_RGBA_ASTC_10x10_KHR = 0x93BB; + public const int GL_COMPRESSED_RGBA_ASTC_12x10 = 0x93BC; + public const int GL_COMPRESSED_RGBA_ASTC_12x10_KHR = 0x93BC; + public const int GL_COMPRESSED_RGBA_ASTC_12x12 = 0x93BD; + public const int GL_COMPRESSED_RGBA_ASTC_12x12_KHR = 0x93BD; + public const int GL_COMPRESSED_RGBA_ASTC_3x3x3_OES = 0x93C0; + public const int GL_COMPRESSED_RGBA_ASTC_4x3x3_OES = 0x93C1; + public const int GL_COMPRESSED_RGBA_ASTC_4x4x3_OES = 0x93C2; + public const int GL_COMPRESSED_RGBA_ASTC_4x4x4_OES = 0x93C3; + public const int GL_COMPRESSED_RGBA_ASTC_5x4x4_OES = 0x93C4; + public const int GL_COMPRESSED_RGBA_ASTC_5x5x4_OES = 0x93C5; + public const int GL_COMPRESSED_RGBA_ASTC_5x5x5_OES = 0x93C6; + public const int GL_COMPRESSED_RGBA_ASTC_6x5x5_OES = 0x93C7; + public const int GL_COMPRESSED_RGBA_ASTC_6x6x5_OES = 0x93C8; + public const int GL_COMPRESSED_RGBA_ASTC_6x6x6_OES = 0x93C9; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4 = 0x93D0; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 0x93D0; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4 = 0x93D1; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 0x93D1; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5 = 0x93D2; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 0x93D2; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5 = 0x93D3; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 0x93D3; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6 = 0x93D4; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 0x93D4; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5 = 0x93D5; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 0x93D5; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6 = 0x93D6; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 0x93D6; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8 = 0x93D7; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 0x93D7; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5 = 0x93D8; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = 0x93D8; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6 = 0x93D9; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = 0x93D9; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8 = 0x93DA; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = 0x93DA; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10 = 0x93DB; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = 0x93DB; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10 = 0x93DC; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = 0x93DC; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12 = 0x93DD; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = 0x93DD; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES = 0x93E0; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES = 0x93E1; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES = 0x93E2; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x4_OES = 0x93E3; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4x4_OES = 0x93E4; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x4_OES = 0x93E5; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x5_OES = 0x93E6; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES = 0x93E7; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES = 0x93E8; + public const int GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES = 0x93E9; + // VENDOR: APPLE + // Khronos bug 10233 + public const int GL_COMPRESSED_SRGB_ALPHA_PVRTC_2BPPV2_IMG = 0x93F0; + public const int GL_COMPRESSED_SRGB_ALPHA_PVRTC_4BPPV2_IMG = 0x93F1; + // VENDOR: INTEL + // Khronos bug 11345 + public const int GL_PERFQUERY_COUNTER_EVENT_INTEL = 0x94F0; + public const int GL_PERFQUERY_COUNTER_DURATION_NORM_INTEL = 0x94F1; + public const int GL_PERFQUERY_COUNTER_DURATION_RAW_INTEL = 0x94F2; + public const int GL_PERFQUERY_COUNTER_THROUGHPUT_INTEL = 0x94F3; + public const int GL_PERFQUERY_COUNTER_RAW_INTEL = 0x94F4; + public const int GL_PERFQUERY_COUNTER_TIMESTAMP_INTEL = 0x94F5; + public const int GL_PERFQUERY_COUNTER_DATA_UINT32_INTEL = 0x94F8; + public const int GL_PERFQUERY_COUNTER_DATA_UINT64_INTEL = 0x94F9; + public const int GL_PERFQUERY_COUNTER_DATA_FLOAT_INTEL = 0x94FA; + public const int GL_PERFQUERY_COUNTER_DATA_DOUBLE_INTEL = 0x94FB; + public const int GL_PERFQUERY_COUNTER_DATA_BOOL32_INTEL = 0x94FC; + public const int GL_PERFQUERY_QUERY_NAME_LENGTH_MAX_INTEL = 0x94FD; + public const int GL_PERFQUERY_COUNTER_NAME_LENGTH_MAX_INTEL = 0x94FE; + public const int GL_PERFQUERY_COUNTER_DESC_LENGTH_MAX_INTEL = 0x94FF; + public const int GL_PERFQUERY_GPA_EXTENDED_COUNTERS_INTEL = 0x9500; + // VENDOR: Broadcom + // Khronos bug 12203 + // VENDOR: NV + // Khronos bug 12977 + public const int GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT = 0x9530; + public const int GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT = 0x9531; + public const int GL_SUBGROUP_SIZE_KHR = 0x9532; + public const int GL_SUBGROUP_SUPPORTED_STAGES_KHR = 0x9533; + public const int GL_SUBGROUP_SUPPORTED_FEATURES_KHR = 0x9534; + public const int GL_SUBGROUP_QUAD_ALL_STAGES_KHR = 0x9535; + public const int GL_MAX_MESH_TOTAL_MEMORY_SIZE_NV = 0x9536; + public const int GL_MAX_TASK_TOTAL_MEMORY_SIZE_NV = 0x9537; + public const int GL_MAX_MESH_OUTPUT_VERTICES_NV = 0x9538; + public const int GL_MAX_MESH_OUTPUT_PRIMITIVES_NV = 0x9539; + public const int GL_MAX_TASK_OUTPUT_COUNT_NV = 0x953A; + public const int GL_MAX_MESH_WORK_GROUP_SIZE_NV = 0x953B; + public const int GL_MAX_TASK_WORK_GROUP_SIZE_NV = 0x953C; + public const int GL_MAX_DRAW_MESH_TASKS_COUNT_NV = 0x953D; + public const int GL_MESH_WORK_GROUP_SIZE_NV = 0x953E; + public const int GL_TASK_WORK_GROUP_SIZE_NV = 0x953F; + public const int GL_QUERY_RESOURCE_TYPE_VIDMEM_ALLOC_NV = 0x9540; + public const int GL_QUERY_RESOURCE_MEMTYPE_VIDMEM_NV = 0x9542; + public const int GL_MESH_OUTPUT_PER_PRIMITIVE_GRANULARITY_NV = 0x9543; + public const int GL_QUERY_RESOURCE_SYS_RESERVED_NV = 0x9544; + public const int GL_QUERY_RESOURCE_TEXTURE_NV = 0x9545; + public const int GL_QUERY_RESOURCE_RENDERBUFFER_NV = 0x9546; + public const int GL_QUERY_RESOURCE_BUFFEROBJECT_NV = 0x9547; + public const int GL_PER_GPU_STORAGE_NV = 0x9548; + public const int GL_MULTICAST_PROGRAMMABLE_SAMPLE_LOCATION_NV = 0x9549; + public const int GL_UPLOAD_GPU_MASK_NVX = 0x954A; + public const int GL_CONSERVATIVE_RASTER_MODE_NV = 0x954D; + public const int GL_CONSERVATIVE_RASTER_MODE_POST_SNAP_NV = 0x954E; + public const int GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_TRIANGLES_NV = 0x954F; + public const int GL_CONSERVATIVE_RASTER_MODE_PRE_SNAP_NV = 0x9550; + public const int GL_SHADER_BINARY_FORMAT_SPIR_V = 0x9551; + public const int GL_SHADER_BINARY_FORMAT_SPIR_V_ARB = 0x9551; + public const int GL_SPIR_V_BINARY = 0x9552; + public const int GL_SPIR_V_BINARY_ARB = 0x9552; + public const int GL_SPIR_V_EXTENSIONS = 0x9553; + public const int GL_NUM_SPIR_V_EXTENSIONS = 0x9554; + public const int GL_SCISSOR_TEST_EXCLUSIVE_NV = 0x9555; + public const int GL_SCISSOR_BOX_EXCLUSIVE_NV = 0x9556; + public const int GL_MAX_MESH_VIEWS_NV = 0x9557; + public const int GL_RENDER_GPU_MASK_NV = 0x9558; + public const int GL_MESH_SHADER_NV = 0x9559; + public const int GL_TASK_SHADER_NV = 0x955A; + public const int GL_SHADING_RATE_IMAGE_BINDING_NV = 0x955B; + public const int GL_SHADING_RATE_IMAGE_TEXEL_WIDTH_NV = 0x955C; + public const int GL_SHADING_RATE_IMAGE_TEXEL_HEIGHT_NV = 0x955D; + public const int GL_SHADING_RATE_IMAGE_PALETTE_SIZE_NV = 0x955E; + public const int GL_MAX_COARSE_FRAGMENT_SAMPLES_NV = 0x955F; + public const int GL_SHADING_RATE_IMAGE_NV = 0x9563; + public const int GL_SHADING_RATE_NO_INVOCATIONS_NV = 0x9564; + public const int GL_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV = 0x9565; + public const int GL_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV = 0x9566; + public const int GL_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV = 0x9567; + public const int GL_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV = 0x9568; + public const int GL_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV = 0x9569; + public const int GL_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV = 0x956A; + public const int GL_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV = 0x956B; + public const int GL_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV = 0x956C; + public const int GL_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV = 0x956D; + public const int GL_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV = 0x956E; + public const int GL_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV = 0x956F; + public const int GL_MESH_VERTICES_OUT_NV = 0x9579; + public const int GL_MESH_PRIMITIVES_OUT_NV = 0x957A; + public const int GL_MESH_OUTPUT_TYPE_NV = 0x957B; + public const int GL_MESH_SUBROUTINE_NV = 0x957C; + public const int GL_TASK_SUBROUTINE_NV = 0x957D; + public const int GL_MESH_SUBROUTINE_UNIFORM_NV = 0x957E; + public const int GL_TASK_SUBROUTINE_UNIFORM_NV = 0x957F; + public const int GL_TEXTURE_TILING_EXT = 0x9580; + public const int GL_DEDICATED_MEMORY_OBJECT_EXT = 0x9581; + public const int GL_NUM_TILING_TYPES_EXT = 0x9582; + public const int GL_TILING_TYPES_EXT = 0x9583; + public const int GL_OPTIMAL_TILING_EXT = 0x9584; + public const int GL_LINEAR_TILING_EXT = 0x9585; + public const int GL_HANDLE_TYPE_OPAQUE_FD_EXT = 0x9586; + public const int GL_HANDLE_TYPE_OPAQUE_WIN32_EXT = 0x9587; + public const int GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT = 0x9588; + public const int GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT = 0x9589; + public const int GL_HANDLE_TYPE_D3D12_RESOURCE_EXT = 0x958A; + public const int GL_HANDLE_TYPE_D3D11_IMAGE_EXT = 0x958B; + public const int GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT = 0x958C; + public const int GL_LAYOUT_GENERAL_EXT = 0x958D; + public const int GL_LAYOUT_COLOR_ATTACHMENT_EXT = 0x958E; + public const int GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT = 0x958F; + public const int GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT = 0x9590; + public const int GL_LAYOUT_SHADER_READ_ONLY_EXT = 0x9591; + public const int GL_LAYOUT_TRANSFER_SRC_EXT = 0x9592; + public const int GL_LAYOUT_TRANSFER_DST_EXT = 0x9593; + public const int GL_HANDLE_TYPE_D3D12_FENCE_EXT = 0x9594; + public const int GL_D3D12_FENCE_VALUE_EXT = 0x9595; + public const int GL_NUM_DEVICE_UUIDS_EXT = 0x9596; + public const int GL_DEVICE_UUID_EXT = 0x9597; + public const int GL_DRIVER_UUID_EXT = 0x9598; + public const int GL_DEVICE_LUID_EXT = 0x9599; + public const int GL_DEVICE_NODE_MASK_EXT = 0x959A; + public const int GL_PROTECTED_MEMORY_OBJECT_EXT = 0x959B; + public const int GL_UNIFORM_BLOCK_REFERENCED_BY_MESH_SHADER_NV = 0x959C; + public const int GL_UNIFORM_BLOCK_REFERENCED_BY_TASK_SHADER_NV = 0x959D; + public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_MESH_SHADER_NV = 0x959E; + public const int GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TASK_SHADER_NV = 0x959F; + public const int GL_REFERENCED_BY_MESH_SHADER_NV = 0x95A0; + public const int GL_REFERENCED_BY_TASK_SHADER_NV = 0x95A1; + public const int GL_MAX_MESH_WORK_GROUP_INVOCATIONS_NV = 0x95A2; + public const int GL_MAX_TASK_WORK_GROUP_INVOCATIONS_NV = 0x95A3; + public const int GL_ATTACHED_MEMORY_OBJECT_NV = 0x95A4; + public const int GL_ATTACHED_MEMORY_OFFSET_NV = 0x95A5; + public const int GL_MEMORY_ATTACHABLE_ALIGNMENT_NV = 0x95A6; + public const int GL_MEMORY_ATTACHABLE_SIZE_NV = 0x95A7; + public const int GL_MEMORY_ATTACHABLE_NV = 0x95A8; + public const int GL_DETACHED_MEMORY_INCARNATION_NV = 0x95A9; + public const int GL_DETACHED_TEXTURES_NV = 0x95AA; + public const int GL_DETACHED_BUFFERS_NV = 0x95AB; + public const int GL_MAX_DETACHED_TEXTURES_NV = 0x95AC; + public const int GL_MAX_DETACHED_BUFFERS_NV = 0x95AD; + public const int GL_SHADING_RATE_SAMPLE_ORDER_DEFAULT_NV = 0x95AE; + public const int GL_SHADING_RATE_SAMPLE_ORDER_PIXEL_MAJOR_NV = 0x95AF; + public const int GL_SHADING_RATE_SAMPLE_ORDER_SAMPLE_MAJOR_NV = 0x95B0; + // VENDOR: Oculus + // Email from Cass Everitt + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR = 0x9630; + public const int GL_MAX_VIEWS_OVR = 0x9631; + public const int GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR = 0x9632; + public const int GL_FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR = 0x9633; + // VENDOR: Mediatek + // Khronos bug 14294 + public const int GL_GS_SHADER_BINARY_MTK = 0x9640; + public const int GL_GS_PROGRAM_BINARY_MTK = 0x9641; + // VENDOR: IMG + // Khronos bug 14977 + public const int GL_MAX_SHADER_COMBINED_LOCAL_STORAGE_FAST_SIZE_EXT = 0x9650; + public const int GL_MAX_SHADER_COMBINED_LOCAL_STORAGE_SIZE_EXT = 0x9651; + public const int GL_FRAMEBUFFER_INCOMPLETE_INSUFFICIENT_SHADER_COMBINED_LOCAL_STORAGE_EXT = 0x9652; + // VENDOR: ANGLE + // Khronos bug 15423 + // VENDOR: Qualcomm + // contact Jeff Leger + public const int GL_FRAMEBUFFER_FETCH_NONCOHERENT_QCOM = 0x96A2; + public const int GL_VALIDATE_SHADER_BINARY_QCOM = 0x96A3; + public const int GL_SHADING_RATE_QCOM = 0x96A4; + public const int GL_SHADING_RATE_PRESERVE_ASPECT_RATIO_QCOM = 0x96A5; + public const int GL_SHADING_RATE_1X1_PIXELS_QCOM = 0x96A6; + public const int GL_SHADING_RATE_1X2_PIXELS_QCOM = 0x96A7; + public const int GL_SHADING_RATE_2X1_PIXELS_QCOM = 0x96A8; + public const int GL_SHADING_RATE_2X2_PIXELS_QCOM = 0x96A9; + public const int GL_SHADING_RATE_1X4_PIXELS_QCOM = 0x96AA; + public const int GL_SHADING_RATE_4X1_PIXELS_QCOM = 0x96AB; + public const int GL_SHADING_RATE_4X2_PIXELS_QCOM = 0x96AC; + public const int GL_SHADING_RATE_2X4_PIXELS_QCOM = 0x96AD; + public const int GL_SHADING_RATE_4X4_PIXELS_QCOM = 0x96AE; + // VENDOR: ANGLE + // github pull request + // VENDOR: ARM + // Contact Jan-Harald Fredriksen + // VENDOR: ARB + // RESERVED FOR FUTURE ALLOCATIONS BY KHRONOS + // VENDOR: ARB + // GLU enums + // VENDOR: ARB + // Conformance test enums + // VENDOR: ARB + // Unused, unlikely to ever be used + // VENDOR: IBM + // IBM is out of the graphics hardware business. Most of this range will remain unused. + public const int GL_RASTER_POSITION_UNCLIPPED_IBM = 0x19262; + public const int GL_CULL_VERTEX_IBM = 0x1928A; + public const int GL_ALL_STATIC_DATA_IBM = 0x19294; + public const int GL_STATIC_VERTEX_ARRAY_IBM = 0x19295; + public const int GL_VERTEX_ARRAY_LIST_IBM = 0x1929E; + public const int GL_NORMAL_ARRAY_LIST_IBM = 0x1929F; + public const int GL_COLOR_ARRAY_LIST_IBM = 0x192A0; + public const int GL_INDEX_ARRAY_LIST_IBM = 0x192A1; + public const int GL_TEXTURE_COORD_ARRAY_LIST_IBM = 0x192A2; + public const int GL_EDGE_FLAG_ARRAY_LIST_IBM = 0x192A3; + public const int GL_FOG_COORDINATE_ARRAY_LIST_IBM = 0x192A4; + public const int GL_SECONDARY_COLOR_ARRAY_LIST_IBM = 0x192A5; + public const int GL_VERTEX_ARRAY_LIST_STRIDE_IBM = 0x192A8; + public const int GL_NORMAL_ARRAY_LIST_STRIDE_IBM = 0x192A9; + public const int GL_COLOR_ARRAY_LIST_STRIDE_IBM = 0x192AA; + public const int GL_INDEX_ARRAY_LIST_STRIDE_IBM = 0x192AB; + public const int GL_TEXTURE_COORD_ARRAY_LIST_STRIDE_IBM = 0x192AC; + public const int GL_EDGE_FLAG_ARRAY_LIST_STRIDE_IBM = 0x192AD; + public const int GL_FOG_COORDINATE_ARRAY_LIST_STRIDE_IBM = 0x192AE; + public const int GL_SECONDARY_COLOR_ARRAY_LIST_STRIDE_IBM = 0x192AF; + // VENDOR: NEC + // NEC may be out of the graphics hardware business? + // VENDOR: Compaq + // Compaq was acquired by HP + // VENDOR: KPC + // Kubota Pacific is out of business + // VENDOR: PGI + // Portland Graphics was acquired by Template Graphics, which is out of business + public const int GL_PREFER_DOUBLEBUFFER_HINT_PGI = 0x1A1F8; + public const int GL_CONSERVE_MEMORY_HINT_PGI = 0x1A1FD; + public const int GL_RECLAIM_MEMORY_HINT_PGI = 0x1A1FE; + public const int GL_NATIVE_GRAPHICS_HANDLE_PGI = 0x1A202; + public const int GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI = 0x1A203; + public const int GL_NATIVE_GRAPHICS_END_HINT_PGI = 0x1A204; + public const int GL_ALWAYS_FAST_HINT_PGI = 0x1A20C; + public const int GL_ALWAYS_SOFT_HINT_PGI = 0x1A20D; + public const int GL_ALLOW_DRAW_OBJ_HINT_PGI = 0x1A20E; + public const int GL_ALLOW_DRAW_WIN_HINT_PGI = 0x1A20F; + public const int GL_ALLOW_DRAW_FRG_HINT_PGI = 0x1A210; + public const int GL_ALLOW_DRAW_MEM_HINT_PGI = 0x1A211; + public const int GL_STRICT_DEPTHFUNC_HINT_PGI = 0x1A216; + public const int GL_STRICT_LIGHTING_HINT_PGI = 0x1A217; + public const int GL_STRICT_SCISSOR_HINT_PGI = 0x1A218; + public const int GL_FULL_STIPPLE_HINT_PGI = 0x1A219; + public const int GL_CLIP_NEAR_HINT_PGI = 0x1A220; + public const int GL_CLIP_FAR_HINT_PGI = 0x1A221; + public const int GL_WIDE_LINE_HINT_PGI = 0x1A222; + public const int GL_BACK_NORMALS_HINT_PGI = 0x1A223; + public const int GL_VERTEX_DATA_HINT_PGI = 0x1A22A; + public const int GL_VERTEX_CONSISTENT_HINT_PGI = 0x1A22B; + public const int GL_MATERIAL_SIDE_HINT_PGI = 0x1A22C; + public const int GL_MAX_VERTEX_HINT_PGI = 0x1A22D; + // VENDOR: ES + // Evans and Sutherland is out of the graphics hardware business + }; } diff --git a/src/Avalonia.OpenGL/GlEnums.cs b/src/Avalonia.OpenGL/GlEnums.cs new file mode 100644 index 00000000000..fb7112e4b71 --- /dev/null +++ b/src/Avalonia.OpenGL/GlEnums.cs @@ -0,0 +1,5066 @@ +using System; + +namespace Avalonia.OpenGL +{ + + public enum AttribMask + { + GL_CURRENT_BIT = GlConsts.GL_CURRENT_BIT, + GL_POINT_BIT = GlConsts.GL_POINT_BIT, + GL_LINE_BIT = GlConsts.GL_LINE_BIT, + GL_POLYGON_BIT = GlConsts.GL_POLYGON_BIT, + GL_POLYGON_STIPPLE_BIT = GlConsts.GL_POLYGON_STIPPLE_BIT, + GL_PIXEL_MODE_BIT = GlConsts.GL_PIXEL_MODE_BIT, + GL_LIGHTING_BIT = GlConsts.GL_LIGHTING_BIT, + GL_FOG_BIT = GlConsts.GL_FOG_BIT, + GL_DEPTH_BUFFER_BIT = GlConsts.GL_DEPTH_BUFFER_BIT, + GL_ACCUM_BUFFER_BIT = GlConsts.GL_ACCUM_BUFFER_BIT, + GL_STENCIL_BUFFER_BIT = GlConsts.GL_STENCIL_BUFFER_BIT, + GL_VIEWPORT_BIT = GlConsts.GL_VIEWPORT_BIT, + GL_TRANSFORM_BIT = GlConsts.GL_TRANSFORM_BIT, + GL_ENABLE_BIT = GlConsts.GL_ENABLE_BIT, + GL_COLOR_BUFFER_BIT = GlConsts.GL_COLOR_BUFFER_BIT, + GL_HINT_BIT = GlConsts.GL_HINT_BIT, + GL_EVAL_BIT = GlConsts.GL_EVAL_BIT, + GL_LIST_BIT = GlConsts.GL_LIST_BIT, + GL_TEXTURE_BIT = GlConsts.GL_TEXTURE_BIT, + GL_SCISSOR_BIT = GlConsts.GL_SCISSOR_BIT, + GL_MULTISAMPLE_BIT = GlConsts.GL_MULTISAMPLE_BIT, + GL_MULTISAMPLE_BIT_ARB = GlConsts.GL_MULTISAMPLE_BIT_ARB, + GL_MULTISAMPLE_BIT_EXT = GlConsts.GL_MULTISAMPLE_BIT_EXT, + GL_MULTISAMPLE_BIT_3DFX = GlConsts.GL_MULTISAMPLE_BIT_3DFX, + GL_ALL_ATTRIB_BITS = GlConsts.GL_ALL_ATTRIB_BITS, + }; + + public enum ClearBufferMask + { + GL_DEPTH_BUFFER_BIT = GlConsts.GL_DEPTH_BUFFER_BIT, + GL_ACCUM_BUFFER_BIT = GlConsts.GL_ACCUM_BUFFER_BIT, + GL_STENCIL_BUFFER_BIT = GlConsts.GL_STENCIL_BUFFER_BIT, + GL_COLOR_BUFFER_BIT = GlConsts.GL_COLOR_BUFFER_BIT, + GL_COVERAGE_BUFFER_BIT_NV = GlConsts.GL_COVERAGE_BUFFER_BIT_NV, + }; + + public enum BufferStorageMask + { + GL_DYNAMIC_STORAGE_BIT = GlConsts.GL_DYNAMIC_STORAGE_BIT, + GL_DYNAMIC_STORAGE_BIT_EXT = GlConsts.GL_DYNAMIC_STORAGE_BIT_EXT, + GL_CLIENT_STORAGE_BIT = GlConsts.GL_CLIENT_STORAGE_BIT, + GL_CLIENT_STORAGE_BIT_EXT = GlConsts.GL_CLIENT_STORAGE_BIT_EXT, + GL_SPARSE_STORAGE_BIT_ARB = GlConsts.GL_SPARSE_STORAGE_BIT_ARB, + GL_LGPU_SEPARATE_STORAGE_BIT_NVX = GlConsts.GL_LGPU_SEPARATE_STORAGE_BIT_NVX, + GL_PER_GPU_STORAGE_BIT_NV = GlConsts.GL_PER_GPU_STORAGE_BIT_NV, + GL_EXTERNAL_STORAGE_BIT_NVX = GlConsts.GL_EXTERNAL_STORAGE_BIT_NVX, + GL_MAP_READ_BIT = GlConsts.GL_MAP_READ_BIT, + GL_MAP_READ_BIT_EXT = GlConsts.GL_MAP_READ_BIT_EXT, + GL_MAP_WRITE_BIT = GlConsts.GL_MAP_WRITE_BIT, + GL_MAP_WRITE_BIT_EXT = GlConsts.GL_MAP_WRITE_BIT_EXT, + GL_MAP_PERSISTENT_BIT = GlConsts.GL_MAP_PERSISTENT_BIT, + GL_MAP_PERSISTENT_BIT_EXT = GlConsts.GL_MAP_PERSISTENT_BIT_EXT, + GL_MAP_COHERENT_BIT = GlConsts.GL_MAP_COHERENT_BIT, + GL_MAP_COHERENT_BIT_EXT = GlConsts.GL_MAP_COHERENT_BIT_EXT, + }; + + public enum ClientAttribMask + { + GL_CLIENT_PIXEL_STORE_BIT = GlConsts.GL_CLIENT_PIXEL_STORE_BIT, + GL_CLIENT_VERTEX_ARRAY_BIT = GlConsts.GL_CLIENT_VERTEX_ARRAY_BIT, + GL_CLIENT_ALL_ATTRIB_BITS = GlConsts.GL_CLIENT_ALL_ATTRIB_BITS, + }; + + public enum ContextFlagMask + { + GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT = GlConsts.GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT, + GL_CONTEXT_FLAG_DEBUG_BIT = GlConsts.GL_CONTEXT_FLAG_DEBUG_BIT, + GL_CONTEXT_FLAG_DEBUG_BIT_KHR = GlConsts.GL_CONTEXT_FLAG_DEBUG_BIT_KHR, + GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT = GlConsts.GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT, + GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB = GlConsts.GL_CONTEXT_FLAG_ROBUST_ACCESS_BIT_ARB, + GL_CONTEXT_FLAG_NO_ERROR_BIT = GlConsts.GL_CONTEXT_FLAG_NO_ERROR_BIT, + GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR = GlConsts.GL_CONTEXT_FLAG_NO_ERROR_BIT_KHR, + GL_CONTEXT_FLAG_PROTECTED_CONTENT_BIT_EXT = GlConsts.GL_CONTEXT_FLAG_PROTECTED_CONTENT_BIT_EXT, + }; + + public enum ContextProfileMask + { + GL_CONTEXT_CORE_PROFILE_BIT = GlConsts.GL_CONTEXT_CORE_PROFILE_BIT, + GL_CONTEXT_COMPATIBILITY_PROFILE_BIT = GlConsts.GL_CONTEXT_COMPATIBILITY_PROFILE_BIT, + }; + + public enum MapBufferAccessMask + { + GL_MAP_READ_BIT = GlConsts.GL_MAP_READ_BIT, + GL_MAP_READ_BIT_EXT = GlConsts.GL_MAP_READ_BIT_EXT, + GL_MAP_WRITE_BIT = GlConsts.GL_MAP_WRITE_BIT, + GL_MAP_WRITE_BIT_EXT = GlConsts.GL_MAP_WRITE_BIT_EXT, + GL_MAP_INVALIDATE_RANGE_BIT = GlConsts.GL_MAP_INVALIDATE_RANGE_BIT, + GL_MAP_INVALIDATE_RANGE_BIT_EXT = GlConsts.GL_MAP_INVALIDATE_RANGE_BIT_EXT, + GL_MAP_INVALIDATE_BUFFER_BIT = GlConsts.GL_MAP_INVALIDATE_BUFFER_BIT, + GL_MAP_INVALIDATE_BUFFER_BIT_EXT = GlConsts.GL_MAP_INVALIDATE_BUFFER_BIT_EXT, + GL_MAP_FLUSH_EXPLICIT_BIT = GlConsts.GL_MAP_FLUSH_EXPLICIT_BIT, + GL_MAP_FLUSH_EXPLICIT_BIT_EXT = GlConsts.GL_MAP_FLUSH_EXPLICIT_BIT_EXT, + GL_MAP_UNSYNCHRONIZED_BIT = GlConsts.GL_MAP_UNSYNCHRONIZED_BIT, + GL_MAP_UNSYNCHRONIZED_BIT_EXT = GlConsts.GL_MAP_UNSYNCHRONIZED_BIT_EXT, + GL_MAP_PERSISTENT_BIT = GlConsts.GL_MAP_PERSISTENT_BIT, + GL_MAP_PERSISTENT_BIT_EXT = GlConsts.GL_MAP_PERSISTENT_BIT_EXT, + GL_MAP_COHERENT_BIT = GlConsts.GL_MAP_COHERENT_BIT, + GL_MAP_COHERENT_BIT_EXT = GlConsts.GL_MAP_COHERENT_BIT_EXT, + }; + + public enum MemoryBarrierMask + { + GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT = GlConsts.GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT, + GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT = GlConsts.GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT_EXT, + GL_ELEMENT_ARRAY_BARRIER_BIT = GlConsts.GL_ELEMENT_ARRAY_BARRIER_BIT, + GL_ELEMENT_ARRAY_BARRIER_BIT_EXT = GlConsts.GL_ELEMENT_ARRAY_BARRIER_BIT_EXT, + GL_UNIFORM_BARRIER_BIT = GlConsts.GL_UNIFORM_BARRIER_BIT, + GL_UNIFORM_BARRIER_BIT_EXT = GlConsts.GL_UNIFORM_BARRIER_BIT_EXT, + GL_TEXTURE_FETCH_BARRIER_BIT = GlConsts.GL_TEXTURE_FETCH_BARRIER_BIT, + GL_TEXTURE_FETCH_BARRIER_BIT_EXT = GlConsts.GL_TEXTURE_FETCH_BARRIER_BIT_EXT, + GL_SHADER_GLOBAL_ACCESS_BARRIER_BIT_NV = GlConsts.GL_SHADER_GLOBAL_ACCESS_BARRIER_BIT_NV, + GL_SHADER_IMAGE_ACCESS_BARRIER_BIT = GlConsts.GL_SHADER_IMAGE_ACCESS_BARRIER_BIT, + GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT = GlConsts.GL_SHADER_IMAGE_ACCESS_BARRIER_BIT_EXT, + GL_COMMAND_BARRIER_BIT = GlConsts.GL_COMMAND_BARRIER_BIT, + GL_COMMAND_BARRIER_BIT_EXT = GlConsts.GL_COMMAND_BARRIER_BIT_EXT, + GL_PIXEL_BUFFER_BARRIER_BIT = GlConsts.GL_PIXEL_BUFFER_BARRIER_BIT, + GL_PIXEL_BUFFER_BARRIER_BIT_EXT = GlConsts.GL_PIXEL_BUFFER_BARRIER_BIT_EXT, + GL_TEXTURE_UPDATE_BARRIER_BIT = GlConsts.GL_TEXTURE_UPDATE_BARRIER_BIT, + GL_TEXTURE_UPDATE_BARRIER_BIT_EXT = GlConsts.GL_TEXTURE_UPDATE_BARRIER_BIT_EXT, + GL_BUFFER_UPDATE_BARRIER_BIT = GlConsts.GL_BUFFER_UPDATE_BARRIER_BIT, + GL_BUFFER_UPDATE_BARRIER_BIT_EXT = GlConsts.GL_BUFFER_UPDATE_BARRIER_BIT_EXT, + GL_FRAMEBUFFER_BARRIER_BIT = GlConsts.GL_FRAMEBUFFER_BARRIER_BIT, + GL_FRAMEBUFFER_BARRIER_BIT_EXT = GlConsts.GL_FRAMEBUFFER_BARRIER_BIT_EXT, + GL_TRANSFORM_FEEDBACK_BARRIER_BIT = GlConsts.GL_TRANSFORM_FEEDBACK_BARRIER_BIT, + GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT = GlConsts.GL_TRANSFORM_FEEDBACK_BARRIER_BIT_EXT, + GL_ATOMIC_COUNTER_BARRIER_BIT = GlConsts.GL_ATOMIC_COUNTER_BARRIER_BIT, + GL_ATOMIC_COUNTER_BARRIER_BIT_EXT = GlConsts.GL_ATOMIC_COUNTER_BARRIER_BIT_EXT, + GL_SHADER_STORAGE_BARRIER_BIT = GlConsts.GL_SHADER_STORAGE_BARRIER_BIT, + GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT = GlConsts.GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT, + GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT_EXT = GlConsts.GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT_EXT, + GL_QUERY_BUFFER_BARRIER_BIT = GlConsts.GL_QUERY_BUFFER_BARRIER_BIT, + GL_ALL_BARRIER_BITS = GlConsts.GL_ALL_BARRIER_BITS, + GL_ALL_BARRIER_BITS_EXT = GlConsts.GL_ALL_BARRIER_BITS_EXT, + }; + + public enum OcclusionQueryEventMaskAMD + { + GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD = GlConsts.GL_QUERY_DEPTH_PASS_EVENT_BIT_AMD, + GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD = GlConsts.GL_QUERY_DEPTH_FAIL_EVENT_BIT_AMD, + GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD = GlConsts.GL_QUERY_STENCIL_FAIL_EVENT_BIT_AMD, + GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD = GlConsts.GL_QUERY_DEPTH_BOUNDS_FAIL_EVENT_BIT_AMD, + GL_QUERY_ALL_EVENT_BITS_AMD = GlConsts.GL_QUERY_ALL_EVENT_BITS_AMD, + }; + + public enum SyncObjectMask + { + GL_SYNC_FLUSH_COMMANDS_BIT = GlConsts.GL_SYNC_FLUSH_COMMANDS_BIT, + GL_SYNC_FLUSH_COMMANDS_BIT_APPLE = GlConsts.GL_SYNC_FLUSH_COMMANDS_BIT_APPLE, + }; + + public enum UseProgramStageMask + { + GL_VERTEX_SHADER_BIT = GlConsts.GL_VERTEX_SHADER_BIT, + GL_VERTEX_SHADER_BIT_EXT = GlConsts.GL_VERTEX_SHADER_BIT_EXT, + GL_FRAGMENT_SHADER_BIT = GlConsts.GL_FRAGMENT_SHADER_BIT, + GL_FRAGMENT_SHADER_BIT_EXT = GlConsts.GL_FRAGMENT_SHADER_BIT_EXT, + GL_GEOMETRY_SHADER_BIT = GlConsts.GL_GEOMETRY_SHADER_BIT, + GL_GEOMETRY_SHADER_BIT_EXT = GlConsts.GL_GEOMETRY_SHADER_BIT_EXT, + GL_GEOMETRY_SHADER_BIT_OES = GlConsts.GL_GEOMETRY_SHADER_BIT_OES, + GL_TESS_CONTROL_SHADER_BIT = GlConsts.GL_TESS_CONTROL_SHADER_BIT, + GL_TESS_CONTROL_SHADER_BIT_EXT = GlConsts.GL_TESS_CONTROL_SHADER_BIT_EXT, + GL_TESS_CONTROL_SHADER_BIT_OES = GlConsts.GL_TESS_CONTROL_SHADER_BIT_OES, + GL_TESS_EVALUATION_SHADER_BIT = GlConsts.GL_TESS_EVALUATION_SHADER_BIT, + GL_TESS_EVALUATION_SHADER_BIT_EXT = GlConsts.GL_TESS_EVALUATION_SHADER_BIT_EXT, + GL_TESS_EVALUATION_SHADER_BIT_OES = GlConsts.GL_TESS_EVALUATION_SHADER_BIT_OES, + GL_COMPUTE_SHADER_BIT = GlConsts.GL_COMPUTE_SHADER_BIT, + GL_MESH_SHADER_BIT_NV = GlConsts.GL_MESH_SHADER_BIT_NV, + GL_TASK_SHADER_BIT_NV = GlConsts.GL_TASK_SHADER_BIT_NV, + GL_ALL_SHADER_BITS = GlConsts.GL_ALL_SHADER_BITS, + GL_ALL_SHADER_BITS_EXT = GlConsts.GL_ALL_SHADER_BITS_EXT, + }; + + public enum SubgroupSupportedFeatures + { + GL_SUBGROUP_FEATURE_BASIC_BIT_KHR = GlConsts.GL_SUBGROUP_FEATURE_BASIC_BIT_KHR, + GL_SUBGROUP_FEATURE_VOTE_BIT_KHR = GlConsts.GL_SUBGROUP_FEATURE_VOTE_BIT_KHR, + GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR = GlConsts.GL_SUBGROUP_FEATURE_ARITHMETIC_BIT_KHR, + GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR = GlConsts.GL_SUBGROUP_FEATURE_BALLOT_BIT_KHR, + GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR = GlConsts.GL_SUBGROUP_FEATURE_SHUFFLE_BIT_KHR, + GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR = GlConsts.GL_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT_KHR, + GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR = GlConsts.GL_SUBGROUP_FEATURE_CLUSTERED_BIT_KHR, + GL_SUBGROUP_FEATURE_QUAD_BIT_KHR = GlConsts.GL_SUBGROUP_FEATURE_QUAD_BIT_KHR, + GL_SUBGROUP_FEATURE_PARTITIONED_BIT_NV = GlConsts.GL_SUBGROUP_FEATURE_PARTITIONED_BIT_NV, + }; + + public enum TextureStorageMaskAMD + { + GL_TEXTURE_STORAGE_SPARSE_BIT_AMD = GlConsts.GL_TEXTURE_STORAGE_SPARSE_BIT_AMD, + }; + + public enum FragmentShaderDestMaskATI + { + GL_RED_BIT_ATI = GlConsts.GL_RED_BIT_ATI, + GL_GREEN_BIT_ATI = GlConsts.GL_GREEN_BIT_ATI, + GL_BLUE_BIT_ATI = GlConsts.GL_BLUE_BIT_ATI, + }; + + public enum FragmentShaderDestModMaskATI + { + GL_2X_BIT_ATI = GlConsts.GL_2X_BIT_ATI, + GL_4X_BIT_ATI = GlConsts.GL_4X_BIT_ATI, + GL_8X_BIT_ATI = GlConsts.GL_8X_BIT_ATI, + GL_HALF_BIT_ATI = GlConsts.GL_HALF_BIT_ATI, + GL_QUARTER_BIT_ATI = GlConsts.GL_QUARTER_BIT_ATI, + GL_EIGHTH_BIT_ATI = GlConsts.GL_EIGHTH_BIT_ATI, + GL_SATURATE_BIT_ATI = GlConsts.GL_SATURATE_BIT_ATI, + }; + + public enum FragmentShaderColorModMaskATI + { + GL_COMP_BIT_ATI = GlConsts.GL_COMP_BIT_ATI, + GL_NEGATE_BIT_ATI = GlConsts.GL_NEGATE_BIT_ATI, + GL_BIAS_BIT_ATI = GlConsts.GL_BIAS_BIT_ATI, + }; + + public enum TraceMaskMESA + { + GL_TRACE_OPERATIONS_BIT_MESA = GlConsts.GL_TRACE_OPERATIONS_BIT_MESA, + GL_TRACE_PRIMITIVES_BIT_MESA = GlConsts.GL_TRACE_PRIMITIVES_BIT_MESA, + GL_TRACE_ARRAYS_BIT_MESA = GlConsts.GL_TRACE_ARRAYS_BIT_MESA, + GL_TRACE_TEXTURES_BIT_MESA = GlConsts.GL_TRACE_TEXTURES_BIT_MESA, + GL_TRACE_PIXELS_BIT_MESA = GlConsts.GL_TRACE_PIXELS_BIT_MESA, + GL_TRACE_ERRORS_BIT_MESA = GlConsts.GL_TRACE_ERRORS_BIT_MESA, + GL_TRACE_ALL_BITS_MESA = GlConsts.GL_TRACE_ALL_BITS_MESA, + }; + + public enum PathFontStyle + { + GL_BOLD_BIT_NV = GlConsts.GL_BOLD_BIT_NV, + GL_ITALIC_BIT_NV = GlConsts.GL_ITALIC_BIT_NV, + GL_NONE = GlConsts.GL_NONE, + }; + + public enum PathMetricMask + { + GL_GLYPH_WIDTH_BIT_NV = GlConsts.GL_GLYPH_WIDTH_BIT_NV, + GL_GLYPH_HEIGHT_BIT_NV = GlConsts.GL_GLYPH_HEIGHT_BIT_NV, + GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV = GlConsts.GL_GLYPH_HORIZONTAL_BEARING_X_BIT_NV, + GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV = GlConsts.GL_GLYPH_HORIZONTAL_BEARING_Y_BIT_NV, + GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV = GlConsts.GL_GLYPH_HORIZONTAL_BEARING_ADVANCE_BIT_NV, + GL_GLYPH_VERTICAL_BEARING_X_BIT_NV = GlConsts.GL_GLYPH_VERTICAL_BEARING_X_BIT_NV, + GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV = GlConsts.GL_GLYPH_VERTICAL_BEARING_Y_BIT_NV, + GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV = GlConsts.GL_GLYPH_VERTICAL_BEARING_ADVANCE_BIT_NV, + GL_GLYPH_HAS_KERNING_BIT_NV = GlConsts.GL_GLYPH_HAS_KERNING_BIT_NV, + GL_FONT_X_MIN_BOUNDS_BIT_NV = GlConsts.GL_FONT_X_MIN_BOUNDS_BIT_NV, + GL_FONT_Y_MIN_BOUNDS_BIT_NV = GlConsts.GL_FONT_Y_MIN_BOUNDS_BIT_NV, + GL_FONT_X_MAX_BOUNDS_BIT_NV = GlConsts.GL_FONT_X_MAX_BOUNDS_BIT_NV, + GL_FONT_Y_MAX_BOUNDS_BIT_NV = GlConsts.GL_FONT_Y_MAX_BOUNDS_BIT_NV, + GL_FONT_UNITS_PER_EM_BIT_NV = GlConsts.GL_FONT_UNITS_PER_EM_BIT_NV, + GL_FONT_ASCENDER_BIT_NV = GlConsts.GL_FONT_ASCENDER_BIT_NV, + GL_FONT_DESCENDER_BIT_NV = GlConsts.GL_FONT_DESCENDER_BIT_NV, + GL_FONT_HEIGHT_BIT_NV = GlConsts.GL_FONT_HEIGHT_BIT_NV, + GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV = GlConsts.GL_FONT_MAX_ADVANCE_WIDTH_BIT_NV, + GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV = GlConsts.GL_FONT_MAX_ADVANCE_HEIGHT_BIT_NV, + GL_FONT_UNDERLINE_POSITION_BIT_NV = GlConsts.GL_FONT_UNDERLINE_POSITION_BIT_NV, + GL_FONT_UNDERLINE_THICKNESS_BIT_NV = GlConsts.GL_FONT_UNDERLINE_THICKNESS_BIT_NV, + GL_FONT_HAS_KERNING_BIT_NV = GlConsts.GL_FONT_HAS_KERNING_BIT_NV, + GL_FONT_NUM_GLYPH_INDICES_BIT_NV = GlConsts.GL_FONT_NUM_GLYPH_INDICES_BIT_NV, + }; + + public enum PerformanceQueryCapsMaskINTEL + { + GL_PERFQUERY_SINGLE_CONTEXT_INTEL = GlConsts.GL_PERFQUERY_SINGLE_CONTEXT_INTEL, + GL_PERFQUERY_GLOBAL_CONTEXT_INTEL = GlConsts.GL_PERFQUERY_GLOBAL_CONTEXT_INTEL, + }; + + public enum VertexHintsMaskPGI : uint + { + GL_VERTEX23_BIT_PGI = GlConsts.GL_VERTEX23_BIT_PGI, + GL_VERTEX4_BIT_PGI = GlConsts.GL_VERTEX4_BIT_PGI, + GL_COLOR3_BIT_PGI = GlConsts.GL_COLOR3_BIT_PGI, + GL_COLOR4_BIT_PGI = GlConsts.GL_COLOR4_BIT_PGI, + GL_EDGEFLAG_BIT_PGI = GlConsts.GL_EDGEFLAG_BIT_PGI, + GL_INDEX_BIT_PGI = GlConsts.GL_INDEX_BIT_PGI, + GL_MAT_AMBIENT_BIT_PGI = GlConsts.GL_MAT_AMBIENT_BIT_PGI, + GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI = GlConsts.GL_MAT_AMBIENT_AND_DIFFUSE_BIT_PGI, + GL_MAT_DIFFUSE_BIT_PGI = GlConsts.GL_MAT_DIFFUSE_BIT_PGI, + GL_MAT_EMISSION_BIT_PGI = GlConsts.GL_MAT_EMISSION_BIT_PGI, + GL_MAT_COLOR_INDEXES_BIT_PGI = GlConsts.GL_MAT_COLOR_INDEXES_BIT_PGI, + GL_MAT_SHININESS_BIT_PGI = GlConsts.GL_MAT_SHININESS_BIT_PGI, + GL_MAT_SPECULAR_BIT_PGI = GlConsts.GL_MAT_SPECULAR_BIT_PGI, + GL_NORMAL_BIT_PGI = GlConsts.GL_NORMAL_BIT_PGI, + GL_TEXCOORD1_BIT_PGI = GlConsts.GL_TEXCOORD1_BIT_PGI, + GL_TEXCOORD2_BIT_PGI = GlConsts.GL_TEXCOORD2_BIT_PGI, + GL_TEXCOORD3_BIT_PGI = GlConsts.GL_TEXCOORD3_BIT_PGI, + GL_TEXCOORD4_BIT_PGI = GlConsts.GL_TEXCOORD4_BIT_PGI, + }; + + public enum BufferBitQCOM : uint + { + GL_COLOR_BUFFER_BIT0_QCOM = GlConsts.GL_COLOR_BUFFER_BIT0_QCOM, + GL_COLOR_BUFFER_BIT1_QCOM = GlConsts.GL_COLOR_BUFFER_BIT1_QCOM, + GL_COLOR_BUFFER_BIT2_QCOM = GlConsts.GL_COLOR_BUFFER_BIT2_QCOM, + GL_COLOR_BUFFER_BIT3_QCOM = GlConsts.GL_COLOR_BUFFER_BIT3_QCOM, + GL_COLOR_BUFFER_BIT4_QCOM = GlConsts.GL_COLOR_BUFFER_BIT4_QCOM, + GL_COLOR_BUFFER_BIT5_QCOM = GlConsts.GL_COLOR_BUFFER_BIT5_QCOM, + GL_COLOR_BUFFER_BIT6_QCOM = GlConsts.GL_COLOR_BUFFER_BIT6_QCOM, + GL_COLOR_BUFFER_BIT7_QCOM = GlConsts.GL_COLOR_BUFFER_BIT7_QCOM, + GL_DEPTH_BUFFER_BIT0_QCOM = GlConsts.GL_DEPTH_BUFFER_BIT0_QCOM, + GL_DEPTH_BUFFER_BIT1_QCOM = GlConsts.GL_DEPTH_BUFFER_BIT1_QCOM, + GL_DEPTH_BUFFER_BIT2_QCOM = GlConsts.GL_DEPTH_BUFFER_BIT2_QCOM, + GL_DEPTH_BUFFER_BIT3_QCOM = GlConsts.GL_DEPTH_BUFFER_BIT3_QCOM, + GL_DEPTH_BUFFER_BIT4_QCOM = GlConsts.GL_DEPTH_BUFFER_BIT4_QCOM, + GL_DEPTH_BUFFER_BIT5_QCOM = GlConsts.GL_DEPTH_BUFFER_BIT5_QCOM, + GL_DEPTH_BUFFER_BIT6_QCOM = GlConsts.GL_DEPTH_BUFFER_BIT6_QCOM, + GL_DEPTH_BUFFER_BIT7_QCOM = GlConsts.GL_DEPTH_BUFFER_BIT7_QCOM, + GL_STENCIL_BUFFER_BIT0_QCOM = GlConsts.GL_STENCIL_BUFFER_BIT0_QCOM, + GL_STENCIL_BUFFER_BIT1_QCOM = GlConsts.GL_STENCIL_BUFFER_BIT1_QCOM, + GL_STENCIL_BUFFER_BIT2_QCOM = GlConsts.GL_STENCIL_BUFFER_BIT2_QCOM, + GL_STENCIL_BUFFER_BIT3_QCOM = GlConsts.GL_STENCIL_BUFFER_BIT3_QCOM, + GL_STENCIL_BUFFER_BIT4_QCOM = GlConsts.GL_STENCIL_BUFFER_BIT4_QCOM, + GL_STENCIL_BUFFER_BIT5_QCOM = GlConsts.GL_STENCIL_BUFFER_BIT5_QCOM, + GL_STENCIL_BUFFER_BIT6_QCOM = GlConsts.GL_STENCIL_BUFFER_BIT6_QCOM, + GL_STENCIL_BUFFER_BIT7_QCOM = GlConsts.GL_STENCIL_BUFFER_BIT7_QCOM, + GL_MULTISAMPLE_BUFFER_BIT0_QCOM = GlConsts.GL_MULTISAMPLE_BUFFER_BIT0_QCOM, + GL_MULTISAMPLE_BUFFER_BIT1_QCOM = GlConsts.GL_MULTISAMPLE_BUFFER_BIT1_QCOM, + GL_MULTISAMPLE_BUFFER_BIT2_QCOM = GlConsts.GL_MULTISAMPLE_BUFFER_BIT2_QCOM, + GL_MULTISAMPLE_BUFFER_BIT3_QCOM = GlConsts.GL_MULTISAMPLE_BUFFER_BIT3_QCOM, + GL_MULTISAMPLE_BUFFER_BIT4_QCOM = GlConsts.GL_MULTISAMPLE_BUFFER_BIT4_QCOM, + GL_MULTISAMPLE_BUFFER_BIT5_QCOM = GlConsts.GL_MULTISAMPLE_BUFFER_BIT5_QCOM, + GL_MULTISAMPLE_BUFFER_BIT6_QCOM = GlConsts.GL_MULTISAMPLE_BUFFER_BIT6_QCOM, + GL_MULTISAMPLE_BUFFER_BIT7_QCOM = GlConsts.GL_MULTISAMPLE_BUFFER_BIT7_QCOM, + }; + + public enum FoveationConfigBitQCOM + { + GL_FOVEATION_ENABLE_BIT_QCOM = GlConsts.GL_FOVEATION_ENABLE_BIT_QCOM, + GL_FOVEATION_SCALED_BIN_METHOD_BIT_QCOM = GlConsts.GL_FOVEATION_SCALED_BIN_METHOD_BIT_QCOM, + GL_FOVEATION_SUBSAMPLED_LAYOUT_METHOD_BIT_QCOM = GlConsts.GL_FOVEATION_SUBSAMPLED_LAYOUT_METHOD_BIT_QCOM, + }; + + public enum FfdMaskSGIX + { + GL_TEXTURE_DEFORMATION_BIT_SGIX = GlConsts.GL_TEXTURE_DEFORMATION_BIT_SGIX, + GL_GEOMETRY_DEFORMATION_BIT_SGIX = GlConsts.GL_GEOMETRY_DEFORMATION_BIT_SGIX, + }; + + public enum CommandOpcodesNV + { + GL_TERMINATE_SEQUENCE_COMMAND_NV = GlConsts.GL_TERMINATE_SEQUENCE_COMMAND_NV, + GL_NOP_COMMAND_NV = GlConsts.GL_NOP_COMMAND_NV, + GL_DRAW_ELEMENTS_COMMAND_NV = GlConsts.GL_DRAW_ELEMENTS_COMMAND_NV, + GL_DRAW_ARRAYS_COMMAND_NV = GlConsts.GL_DRAW_ARRAYS_COMMAND_NV, + GL_DRAW_ELEMENTS_STRIP_COMMAND_NV = GlConsts.GL_DRAW_ELEMENTS_STRIP_COMMAND_NV, + GL_DRAW_ARRAYS_STRIP_COMMAND_NV = GlConsts.GL_DRAW_ARRAYS_STRIP_COMMAND_NV, + GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV = GlConsts.GL_DRAW_ELEMENTS_INSTANCED_COMMAND_NV, + GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV = GlConsts.GL_DRAW_ARRAYS_INSTANCED_COMMAND_NV, + GL_ELEMENT_ADDRESS_COMMAND_NV = GlConsts.GL_ELEMENT_ADDRESS_COMMAND_NV, + GL_ATTRIBUTE_ADDRESS_COMMAND_NV = GlConsts.GL_ATTRIBUTE_ADDRESS_COMMAND_NV, + GL_UNIFORM_ADDRESS_COMMAND_NV = GlConsts.GL_UNIFORM_ADDRESS_COMMAND_NV, + GL_BLEND_COLOR_COMMAND_NV = GlConsts.GL_BLEND_COLOR_COMMAND_NV, + GL_STENCIL_REF_COMMAND_NV = GlConsts.GL_STENCIL_REF_COMMAND_NV, + GL_LINE_WIDTH_COMMAND_NV = GlConsts.GL_LINE_WIDTH_COMMAND_NV, + GL_POLYGON_OFFSET_COMMAND_NV = GlConsts.GL_POLYGON_OFFSET_COMMAND_NV, + GL_ALPHA_REF_COMMAND_NV = GlConsts.GL_ALPHA_REF_COMMAND_NV, + GL_VIEWPORT_COMMAND_NV = GlConsts.GL_VIEWPORT_COMMAND_NV, + GL_SCISSOR_COMMAND_NV = GlConsts.GL_SCISSOR_COMMAND_NV, + GL_FRONT_FACE_COMMAND_NV = GlConsts.GL_FRONT_FACE_COMMAND_NV, + }; + + public enum MapTextureFormatINTEL + { + GL_LAYOUT_DEFAULT_INTEL = GlConsts.GL_LAYOUT_DEFAULT_INTEL, + GL_LAYOUT_LINEAR_INTEL = GlConsts.GL_LAYOUT_LINEAR_INTEL, + GL_LAYOUT_LINEAR_CPU_CACHED_INTEL = GlConsts.GL_LAYOUT_LINEAR_CPU_CACHED_INTEL, + }; + + public enum PathCoordType + { + GL_CLOSE_PATH_NV = GlConsts.GL_CLOSE_PATH_NV, + GL_MOVE_TO_NV = GlConsts.GL_MOVE_TO_NV, + GL_RELATIVE_MOVE_TO_NV = GlConsts.GL_RELATIVE_MOVE_TO_NV, + GL_LINE_TO_NV = GlConsts.GL_LINE_TO_NV, + GL_RELATIVE_LINE_TO_NV = GlConsts.GL_RELATIVE_LINE_TO_NV, + GL_HORIZONTAL_LINE_TO_NV = GlConsts.GL_HORIZONTAL_LINE_TO_NV, + GL_RELATIVE_HORIZONTAL_LINE_TO_NV = GlConsts.GL_RELATIVE_HORIZONTAL_LINE_TO_NV, + GL_VERTICAL_LINE_TO_NV = GlConsts.GL_VERTICAL_LINE_TO_NV, + GL_RELATIVE_VERTICAL_LINE_TO_NV = GlConsts.GL_RELATIVE_VERTICAL_LINE_TO_NV, + GL_QUADRATIC_CURVE_TO_NV = GlConsts.GL_QUADRATIC_CURVE_TO_NV, + GL_RELATIVE_QUADRATIC_CURVE_TO_NV = GlConsts.GL_RELATIVE_QUADRATIC_CURVE_TO_NV, + GL_CUBIC_CURVE_TO_NV = GlConsts.GL_CUBIC_CURVE_TO_NV, + GL_RELATIVE_CUBIC_CURVE_TO_NV = GlConsts.GL_RELATIVE_CUBIC_CURVE_TO_NV, + GL_SMOOTH_QUADRATIC_CURVE_TO_NV = GlConsts.GL_SMOOTH_QUADRATIC_CURVE_TO_NV, + GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV = GlConsts.GL_RELATIVE_SMOOTH_QUADRATIC_CURVE_TO_NV, + GL_SMOOTH_CUBIC_CURVE_TO_NV = GlConsts.GL_SMOOTH_CUBIC_CURVE_TO_NV, + GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV = GlConsts.GL_RELATIVE_SMOOTH_CUBIC_CURVE_TO_NV, + GL_SMALL_CCW_ARC_TO_NV = GlConsts.GL_SMALL_CCW_ARC_TO_NV, + GL_RELATIVE_SMALL_CCW_ARC_TO_NV = GlConsts.GL_RELATIVE_SMALL_CCW_ARC_TO_NV, + GL_SMALL_CW_ARC_TO_NV = GlConsts.GL_SMALL_CW_ARC_TO_NV, + GL_RELATIVE_SMALL_CW_ARC_TO_NV = GlConsts.GL_RELATIVE_SMALL_CW_ARC_TO_NV, + GL_LARGE_CCW_ARC_TO_NV = GlConsts.GL_LARGE_CCW_ARC_TO_NV, + GL_RELATIVE_LARGE_CCW_ARC_TO_NV = GlConsts.GL_RELATIVE_LARGE_CCW_ARC_TO_NV, + GL_LARGE_CW_ARC_TO_NV = GlConsts.GL_LARGE_CW_ARC_TO_NV, + GL_RELATIVE_LARGE_CW_ARC_TO_NV = GlConsts.GL_RELATIVE_LARGE_CW_ARC_TO_NV, + GL_CONIC_CURVE_TO_NV = GlConsts.GL_CONIC_CURVE_TO_NV, + GL_RELATIVE_CONIC_CURVE_TO_NV = GlConsts.GL_RELATIVE_CONIC_CURVE_TO_NV, + GL_ROUNDED_RECT_NV = GlConsts.GL_ROUNDED_RECT_NV, + GL_RELATIVE_ROUNDED_RECT_NV = GlConsts.GL_RELATIVE_ROUNDED_RECT_NV, + GL_ROUNDED_RECT2_NV = GlConsts.GL_ROUNDED_RECT2_NV, + GL_RELATIVE_ROUNDED_RECT2_NV = GlConsts.GL_RELATIVE_ROUNDED_RECT2_NV, + GL_ROUNDED_RECT4_NV = GlConsts.GL_ROUNDED_RECT4_NV, + GL_RELATIVE_ROUNDED_RECT4_NV = GlConsts.GL_RELATIVE_ROUNDED_RECT4_NV, + GL_ROUNDED_RECT8_NV = GlConsts.GL_ROUNDED_RECT8_NV, + GL_RELATIVE_ROUNDED_RECT8_NV = GlConsts.GL_RELATIVE_ROUNDED_RECT8_NV, + GL_RESTART_PATH_NV = GlConsts.GL_RESTART_PATH_NV, + GL_DUP_FIRST_CUBIC_CURVE_TO_NV = GlConsts.GL_DUP_FIRST_CUBIC_CURVE_TO_NV, + GL_DUP_LAST_CUBIC_CURVE_TO_NV = GlConsts.GL_DUP_LAST_CUBIC_CURVE_TO_NV, + GL_RECT_NV = GlConsts.GL_RECT_NV, + GL_RELATIVE_RECT_NV = GlConsts.GL_RELATIVE_RECT_NV, + GL_CIRCULAR_CCW_ARC_TO_NV = GlConsts.GL_CIRCULAR_CCW_ARC_TO_NV, + GL_CIRCULAR_CW_ARC_TO_NV = GlConsts.GL_CIRCULAR_CW_ARC_TO_NV, + GL_CIRCULAR_TANGENT_ARC_TO_NV = GlConsts.GL_CIRCULAR_TANGENT_ARC_TO_NV, + GL_ARC_TO_NV = GlConsts.GL_ARC_TO_NV, + GL_RELATIVE_ARC_TO_NV = GlConsts.GL_RELATIVE_ARC_TO_NV, + }; + + public enum TransformFeedbackTokenNV : uint + { + GL_NEXT_BUFFER_NV = GlConsts.GL_NEXT_BUFFER_NV, + GL_SKIP_COMPONENTS4_NV = GlConsts.GL_SKIP_COMPONENTS4_NV, + GL_SKIP_COMPONENTS3_NV = GlConsts.GL_SKIP_COMPONENTS3_NV, + GL_SKIP_COMPONENTS2_NV = GlConsts.GL_SKIP_COMPONENTS2_NV, + GL_SKIP_COMPONENTS1_NV = GlConsts.GL_SKIP_COMPONENTS1_NV, + }; + + public enum TriangleListSUN + { + GL_RESTART_SUN = GlConsts.GL_RESTART_SUN, + GL_REPLACE_MIDDLE_SUN = GlConsts.GL_REPLACE_MIDDLE_SUN, + GL_REPLACE_OLDEST_SUN = GlConsts.GL_REPLACE_OLDEST_SUN, + }; + + public enum Boolean + { + GL_FALSE = GlConsts.GL_FALSE, + GL_TRUE = GlConsts.GL_TRUE, + }; + + public enum VertexShaderWriteMaskEXT + { + GL_FALSE = GlConsts.GL_FALSE, + GL_TRUE = GlConsts.GL_TRUE, + }; + + public enum ClampColorModeARB + { + GL_FALSE = GlConsts.GL_FALSE, + GL_TRUE = GlConsts.GL_TRUE, + GL_FIXED_ONLY = GlConsts.GL_FIXED_ONLY, + GL_FIXED_ONLY_ARB = GlConsts.GL_FIXED_ONLY_ARB, + }; + + public enum GraphicsResetStatus + { + GL_NO_ERROR = GlConsts.GL_NO_ERROR, + GL_GUILTY_CONTEXT_RESET = GlConsts.GL_GUILTY_CONTEXT_RESET, + GL_INNOCENT_CONTEXT_RESET = GlConsts.GL_INNOCENT_CONTEXT_RESET, + GL_UNKNOWN_CONTEXT_RESET = GlConsts.GL_UNKNOWN_CONTEXT_RESET, + }; + + public enum ErrorCode + { + GL_NO_ERROR = GlConsts.GL_NO_ERROR, + GL_INVALID_ENUM = GlConsts.GL_INVALID_ENUM, + GL_INVALID_VALUE = GlConsts.GL_INVALID_VALUE, + GL_INVALID_OPERATION = GlConsts.GL_INVALID_OPERATION, + GL_STACK_OVERFLOW = GlConsts.GL_STACK_OVERFLOW, + GL_STACK_UNDERFLOW = GlConsts.GL_STACK_UNDERFLOW, + GL_OUT_OF_MEMORY = GlConsts.GL_OUT_OF_MEMORY, + GL_INVALID_FRAMEBUFFER_OPERATION = GlConsts.GL_INVALID_FRAMEBUFFER_OPERATION, + GL_INVALID_FRAMEBUFFER_OPERATION_EXT = GlConsts.GL_INVALID_FRAMEBUFFER_OPERATION_EXT, + GL_INVALID_FRAMEBUFFER_OPERATION_OES = GlConsts.GL_INVALID_FRAMEBUFFER_OPERATION_OES, + GL_TABLE_TOO_LARGE_EXT = GlConsts.GL_TABLE_TOO_LARGE_EXT, + GL_TABLE_TOO_LARGE = GlConsts.GL_TABLE_TOO_LARGE, + GL_TEXTURE_TOO_LARGE_EXT = GlConsts.GL_TEXTURE_TOO_LARGE_EXT, + }; + + public enum TextureSwizzle + { + GL_ZERO = GlConsts.GL_ZERO, + GL_ONE = GlConsts.GL_ONE, + GL_RED = GlConsts.GL_RED, + GL_GREEN = GlConsts.GL_GREEN, + GL_BLUE = GlConsts.GL_BLUE, + GL_ALPHA = GlConsts.GL_ALPHA, + }; + + public enum StencilOp + { + GL_ZERO = GlConsts.GL_ZERO, + GL_INVERT = GlConsts.GL_INVERT, + GL_KEEP = GlConsts.GL_KEEP, + GL_REPLACE = GlConsts.GL_REPLACE, + GL_INCR = GlConsts.GL_INCR, + GL_DECR = GlConsts.GL_DECR, + GL_INCR_WRAP = GlConsts.GL_INCR_WRAP, + GL_DECR_WRAP = GlConsts.GL_DECR_WRAP, + }; + + public enum BlendingFactor + { + GL_ZERO = GlConsts.GL_ZERO, + GL_ONE = GlConsts.GL_ONE, + GL_SRC_COLOR = GlConsts.GL_SRC_COLOR, + GL_ONE_MINUS_SRC_COLOR = GlConsts.GL_ONE_MINUS_SRC_COLOR, + GL_SRC_ALPHA = GlConsts.GL_SRC_ALPHA, + GL_ONE_MINUS_SRC_ALPHA = GlConsts.GL_ONE_MINUS_SRC_ALPHA, + GL_DST_ALPHA = GlConsts.GL_DST_ALPHA, + GL_ONE_MINUS_DST_ALPHA = GlConsts.GL_ONE_MINUS_DST_ALPHA, + GL_DST_COLOR = GlConsts.GL_DST_COLOR, + GL_ONE_MINUS_DST_COLOR = GlConsts.GL_ONE_MINUS_DST_COLOR, + GL_SRC_ALPHA_SATURATE = GlConsts.GL_SRC_ALPHA_SATURATE, + GL_CONSTANT_COLOR = GlConsts.GL_CONSTANT_COLOR, + GL_ONE_MINUS_CONSTANT_COLOR = GlConsts.GL_ONE_MINUS_CONSTANT_COLOR, + GL_CONSTANT_ALPHA = GlConsts.GL_CONSTANT_ALPHA, + GL_ONE_MINUS_CONSTANT_ALPHA = GlConsts.GL_ONE_MINUS_CONSTANT_ALPHA, + GL_SRC1_ALPHA = GlConsts.GL_SRC1_ALPHA, + GL_SRC1_COLOR = GlConsts.GL_SRC1_COLOR, + GL_ONE_MINUS_SRC1_COLOR = GlConsts.GL_ONE_MINUS_SRC1_COLOR, + GL_ONE_MINUS_SRC1_ALPHA = GlConsts.GL_ONE_MINUS_SRC1_ALPHA, + }; + + public enum TextureCompareMode + { + GL_NONE = GlConsts.GL_NONE, + GL_COMPARE_R_TO_TEXTURE = GlConsts.GL_COMPARE_R_TO_TEXTURE, + GL_COMPARE_REF_TO_TEXTURE = GlConsts.GL_COMPARE_REF_TO_TEXTURE, + }; + + public enum PathColorFormat + { + GL_NONE = GlConsts.GL_NONE, + GL_ALPHA = GlConsts.GL_ALPHA, + GL_RGB = GlConsts.GL_RGB, + GL_RGBA = GlConsts.GL_RGBA, + GL_LUMINANCE = GlConsts.GL_LUMINANCE, + GL_LUMINANCE_ALPHA = GlConsts.GL_LUMINANCE_ALPHA, + GL_INTENSITY = GlConsts.GL_INTENSITY, + }; + + public enum CombinerBiasNV + { + GL_NONE = GlConsts.GL_NONE, + GL_BIAS_BY_NEGATIVE_ONE_HALF_NV = GlConsts.GL_BIAS_BY_NEGATIVE_ONE_HALF_NV, + }; + + public enum CombinerScaleNV + { + GL_NONE = GlConsts.GL_NONE, + GL_SCALE_BY_TWO_NV = GlConsts.GL_SCALE_BY_TWO_NV, + GL_SCALE_BY_FOUR_NV = GlConsts.GL_SCALE_BY_FOUR_NV, + GL_SCALE_BY_ONE_HALF_NV = GlConsts.GL_SCALE_BY_ONE_HALF_NV, + }; + + public enum DrawBufferMode + { + GL_NONE = GlConsts.GL_NONE, + GL_NONE_OES = GlConsts.GL_NONE_OES, + GL_FRONT_LEFT = GlConsts.GL_FRONT_LEFT, + GL_FRONT_RIGHT = GlConsts.GL_FRONT_RIGHT, + GL_BACK_LEFT = GlConsts.GL_BACK_LEFT, + GL_BACK_RIGHT = GlConsts.GL_BACK_RIGHT, + GL_FRONT = GlConsts.GL_FRONT, + GL_BACK = GlConsts.GL_BACK, + GL_LEFT = GlConsts.GL_LEFT, + GL_RIGHT = GlConsts.GL_RIGHT, + GL_FRONT_AND_BACK = GlConsts.GL_FRONT_AND_BACK, + GL_AUX0 = GlConsts.GL_AUX0, + GL_AUX1 = GlConsts.GL_AUX1, + GL_AUX2 = GlConsts.GL_AUX2, + GL_AUX3 = GlConsts.GL_AUX3, + GL_COLOR_ATTACHMENT0 = GlConsts.GL_COLOR_ATTACHMENT0, + GL_COLOR_ATTACHMENT1 = GlConsts.GL_COLOR_ATTACHMENT1, + GL_COLOR_ATTACHMENT2 = GlConsts.GL_COLOR_ATTACHMENT2, + GL_COLOR_ATTACHMENT3 = GlConsts.GL_COLOR_ATTACHMENT3, + GL_COLOR_ATTACHMENT4 = GlConsts.GL_COLOR_ATTACHMENT4, + GL_COLOR_ATTACHMENT5 = GlConsts.GL_COLOR_ATTACHMENT5, + GL_COLOR_ATTACHMENT6 = GlConsts.GL_COLOR_ATTACHMENT6, + GL_COLOR_ATTACHMENT7 = GlConsts.GL_COLOR_ATTACHMENT7, + GL_COLOR_ATTACHMENT8 = GlConsts.GL_COLOR_ATTACHMENT8, + GL_COLOR_ATTACHMENT9 = GlConsts.GL_COLOR_ATTACHMENT9, + GL_COLOR_ATTACHMENT10 = GlConsts.GL_COLOR_ATTACHMENT10, + GL_COLOR_ATTACHMENT11 = GlConsts.GL_COLOR_ATTACHMENT11, + GL_COLOR_ATTACHMENT12 = GlConsts.GL_COLOR_ATTACHMENT12, + GL_COLOR_ATTACHMENT13 = GlConsts.GL_COLOR_ATTACHMENT13, + GL_COLOR_ATTACHMENT14 = GlConsts.GL_COLOR_ATTACHMENT14, + GL_COLOR_ATTACHMENT15 = GlConsts.GL_COLOR_ATTACHMENT15, + GL_COLOR_ATTACHMENT16 = GlConsts.GL_COLOR_ATTACHMENT16, + GL_COLOR_ATTACHMENT17 = GlConsts.GL_COLOR_ATTACHMENT17, + GL_COLOR_ATTACHMENT18 = GlConsts.GL_COLOR_ATTACHMENT18, + GL_COLOR_ATTACHMENT19 = GlConsts.GL_COLOR_ATTACHMENT19, + GL_COLOR_ATTACHMENT20 = GlConsts.GL_COLOR_ATTACHMENT20, + GL_COLOR_ATTACHMENT21 = GlConsts.GL_COLOR_ATTACHMENT21, + GL_COLOR_ATTACHMENT22 = GlConsts.GL_COLOR_ATTACHMENT22, + GL_COLOR_ATTACHMENT23 = GlConsts.GL_COLOR_ATTACHMENT23, + GL_COLOR_ATTACHMENT24 = GlConsts.GL_COLOR_ATTACHMENT24, + GL_COLOR_ATTACHMENT25 = GlConsts.GL_COLOR_ATTACHMENT25, + GL_COLOR_ATTACHMENT26 = GlConsts.GL_COLOR_ATTACHMENT26, + GL_COLOR_ATTACHMENT27 = GlConsts.GL_COLOR_ATTACHMENT27, + GL_COLOR_ATTACHMENT28 = GlConsts.GL_COLOR_ATTACHMENT28, + GL_COLOR_ATTACHMENT29 = GlConsts.GL_COLOR_ATTACHMENT29, + GL_COLOR_ATTACHMENT30 = GlConsts.GL_COLOR_ATTACHMENT30, + GL_COLOR_ATTACHMENT31 = GlConsts.GL_COLOR_ATTACHMENT31, + }; + + public enum PixelTexGenMode + { + GL_NONE = GlConsts.GL_NONE, + GL_RGB = GlConsts.GL_RGB, + GL_RGBA = GlConsts.GL_RGBA, + GL_LUMINANCE = GlConsts.GL_LUMINANCE, + GL_LUMINANCE_ALPHA = GlConsts.GL_LUMINANCE_ALPHA, + GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX = GlConsts.GL_PIXEL_TEX_GEN_ALPHA_REPLACE_SGIX, + GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX = GlConsts.GL_PIXEL_TEX_GEN_ALPHA_NO_REPLACE_SGIX, + GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX = GlConsts.GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX, + GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX = GlConsts.GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX, + }; + + public enum ReadBufferMode + { + GL_NONE = GlConsts.GL_NONE, + GL_NONE_OES = GlConsts.GL_NONE_OES, + GL_FRONT_LEFT = GlConsts.GL_FRONT_LEFT, + GL_FRONT_RIGHT = GlConsts.GL_FRONT_RIGHT, + GL_BACK_LEFT = GlConsts.GL_BACK_LEFT, + GL_BACK_RIGHT = GlConsts.GL_BACK_RIGHT, + GL_FRONT = GlConsts.GL_FRONT, + GL_BACK = GlConsts.GL_BACK, + GL_LEFT = GlConsts.GL_LEFT, + GL_RIGHT = GlConsts.GL_RIGHT, + GL_AUX0 = GlConsts.GL_AUX0, + GL_AUX1 = GlConsts.GL_AUX1, + GL_AUX2 = GlConsts.GL_AUX2, + GL_AUX3 = GlConsts.GL_AUX3, + GL_COLOR_ATTACHMENT0 = GlConsts.GL_COLOR_ATTACHMENT0, + GL_COLOR_ATTACHMENT1 = GlConsts.GL_COLOR_ATTACHMENT1, + GL_COLOR_ATTACHMENT2 = GlConsts.GL_COLOR_ATTACHMENT2, + GL_COLOR_ATTACHMENT3 = GlConsts.GL_COLOR_ATTACHMENT3, + GL_COLOR_ATTACHMENT4 = GlConsts.GL_COLOR_ATTACHMENT4, + GL_COLOR_ATTACHMENT5 = GlConsts.GL_COLOR_ATTACHMENT5, + GL_COLOR_ATTACHMENT6 = GlConsts.GL_COLOR_ATTACHMENT6, + GL_COLOR_ATTACHMENT7 = GlConsts.GL_COLOR_ATTACHMENT7, + GL_COLOR_ATTACHMENT8 = GlConsts.GL_COLOR_ATTACHMENT8, + GL_COLOR_ATTACHMENT9 = GlConsts.GL_COLOR_ATTACHMENT9, + GL_COLOR_ATTACHMENT10 = GlConsts.GL_COLOR_ATTACHMENT10, + GL_COLOR_ATTACHMENT11 = GlConsts.GL_COLOR_ATTACHMENT11, + GL_COLOR_ATTACHMENT12 = GlConsts.GL_COLOR_ATTACHMENT12, + GL_COLOR_ATTACHMENT13 = GlConsts.GL_COLOR_ATTACHMENT13, + GL_COLOR_ATTACHMENT14 = GlConsts.GL_COLOR_ATTACHMENT14, + GL_COLOR_ATTACHMENT15 = GlConsts.GL_COLOR_ATTACHMENT15, + }; + + public enum ColorBuffer + { + GL_NONE = GlConsts.GL_NONE, + GL_FRONT_LEFT = GlConsts.GL_FRONT_LEFT, + GL_FRONT_RIGHT = GlConsts.GL_FRONT_RIGHT, + GL_BACK_LEFT = GlConsts.GL_BACK_LEFT, + GL_BACK_RIGHT = GlConsts.GL_BACK_RIGHT, + GL_FRONT = GlConsts.GL_FRONT, + GL_BACK = GlConsts.GL_BACK, + GL_LEFT = GlConsts.GL_LEFT, + GL_RIGHT = GlConsts.GL_RIGHT, + GL_FRONT_AND_BACK = GlConsts.GL_FRONT_AND_BACK, + GL_COLOR_ATTACHMENT0 = GlConsts.GL_COLOR_ATTACHMENT0, + GL_COLOR_ATTACHMENT1 = GlConsts.GL_COLOR_ATTACHMENT1, + GL_COLOR_ATTACHMENT2 = GlConsts.GL_COLOR_ATTACHMENT2, + GL_COLOR_ATTACHMENT3 = GlConsts.GL_COLOR_ATTACHMENT3, + GL_COLOR_ATTACHMENT4 = GlConsts.GL_COLOR_ATTACHMENT4, + GL_COLOR_ATTACHMENT5 = GlConsts.GL_COLOR_ATTACHMENT5, + GL_COLOR_ATTACHMENT6 = GlConsts.GL_COLOR_ATTACHMENT6, + GL_COLOR_ATTACHMENT7 = GlConsts.GL_COLOR_ATTACHMENT7, + GL_COLOR_ATTACHMENT8 = GlConsts.GL_COLOR_ATTACHMENT8, + GL_COLOR_ATTACHMENT9 = GlConsts.GL_COLOR_ATTACHMENT9, + GL_COLOR_ATTACHMENT10 = GlConsts.GL_COLOR_ATTACHMENT10, + GL_COLOR_ATTACHMENT11 = GlConsts.GL_COLOR_ATTACHMENT11, + GL_COLOR_ATTACHMENT12 = GlConsts.GL_COLOR_ATTACHMENT12, + GL_COLOR_ATTACHMENT13 = GlConsts.GL_COLOR_ATTACHMENT13, + GL_COLOR_ATTACHMENT14 = GlConsts.GL_COLOR_ATTACHMENT14, + GL_COLOR_ATTACHMENT15 = GlConsts.GL_COLOR_ATTACHMENT15, + GL_COLOR_ATTACHMENT16 = GlConsts.GL_COLOR_ATTACHMENT16, + GL_COLOR_ATTACHMENT17 = GlConsts.GL_COLOR_ATTACHMENT17, + GL_COLOR_ATTACHMENT18 = GlConsts.GL_COLOR_ATTACHMENT18, + GL_COLOR_ATTACHMENT19 = GlConsts.GL_COLOR_ATTACHMENT19, + GL_COLOR_ATTACHMENT20 = GlConsts.GL_COLOR_ATTACHMENT20, + GL_COLOR_ATTACHMENT21 = GlConsts.GL_COLOR_ATTACHMENT21, + GL_COLOR_ATTACHMENT22 = GlConsts.GL_COLOR_ATTACHMENT22, + GL_COLOR_ATTACHMENT23 = GlConsts.GL_COLOR_ATTACHMENT23, + GL_COLOR_ATTACHMENT24 = GlConsts.GL_COLOR_ATTACHMENT24, + GL_COLOR_ATTACHMENT25 = GlConsts.GL_COLOR_ATTACHMENT25, + GL_COLOR_ATTACHMENT26 = GlConsts.GL_COLOR_ATTACHMENT26, + GL_COLOR_ATTACHMENT27 = GlConsts.GL_COLOR_ATTACHMENT27, + GL_COLOR_ATTACHMENT28 = GlConsts.GL_COLOR_ATTACHMENT28, + GL_COLOR_ATTACHMENT29 = GlConsts.GL_COLOR_ATTACHMENT29, + GL_COLOR_ATTACHMENT30 = GlConsts.GL_COLOR_ATTACHMENT30, + GL_COLOR_ATTACHMENT31 = GlConsts.GL_COLOR_ATTACHMENT31, + }; + + public enum PathGenMode + { + GL_NONE = GlConsts.GL_NONE, + GL_EYE_LINEAR = GlConsts.GL_EYE_LINEAR, + GL_OBJECT_LINEAR = GlConsts.GL_OBJECT_LINEAR, + GL_CONSTANT = GlConsts.GL_CONSTANT, + GL_PATH_OBJECT_BOUNDING_BOX_NV = GlConsts.GL_PATH_OBJECT_BOUNDING_BOX_NV, + }; + + public enum PathTransformType + { + GL_NONE = GlConsts.GL_NONE, + GL_TRANSLATE_X_NV = GlConsts.GL_TRANSLATE_X_NV, + GL_TRANSLATE_Y_NV = GlConsts.GL_TRANSLATE_Y_NV, + GL_TRANSLATE_2D_NV = GlConsts.GL_TRANSLATE_2D_NV, + GL_TRANSLATE_3D_NV = GlConsts.GL_TRANSLATE_3D_NV, + GL_AFFINE_2D_NV = GlConsts.GL_AFFINE_2D_NV, + GL_AFFINE_3D_NV = GlConsts.GL_AFFINE_3D_NV, + GL_TRANSPOSE_AFFINE_2D_NV = GlConsts.GL_TRANSPOSE_AFFINE_2D_NV, + GL_TRANSPOSE_AFFINE_3D_NV = GlConsts.GL_TRANSPOSE_AFFINE_3D_NV, + }; + + public enum PrimitiveType + { + GL_POINTS = GlConsts.GL_POINTS, + GL_LINES = GlConsts.GL_LINES, + GL_LINE_LOOP = GlConsts.GL_LINE_LOOP, + GL_LINE_STRIP = GlConsts.GL_LINE_STRIP, + GL_TRIANGLES = GlConsts.GL_TRIANGLES, + GL_TRIANGLE_STRIP = GlConsts.GL_TRIANGLE_STRIP, + GL_TRIANGLE_FAN = GlConsts.GL_TRIANGLE_FAN, + GL_QUADS = GlConsts.GL_QUADS, + GL_QUADS_EXT = GlConsts.GL_QUADS_EXT, + GL_QUAD_STRIP = GlConsts.GL_QUAD_STRIP, + GL_POLYGON = GlConsts.GL_POLYGON, + GL_LINES_ADJACENCY = GlConsts.GL_LINES_ADJACENCY, + GL_LINES_ADJACENCY_ARB = GlConsts.GL_LINES_ADJACENCY_ARB, + GL_LINES_ADJACENCY_EXT = GlConsts.GL_LINES_ADJACENCY_EXT, + GL_LINE_STRIP_ADJACENCY = GlConsts.GL_LINE_STRIP_ADJACENCY, + GL_LINE_STRIP_ADJACENCY_ARB = GlConsts.GL_LINE_STRIP_ADJACENCY_ARB, + GL_LINE_STRIP_ADJACENCY_EXT = GlConsts.GL_LINE_STRIP_ADJACENCY_EXT, + GL_TRIANGLES_ADJACENCY = GlConsts.GL_TRIANGLES_ADJACENCY, + GL_TRIANGLES_ADJACENCY_ARB = GlConsts.GL_TRIANGLES_ADJACENCY_ARB, + GL_TRIANGLES_ADJACENCY_EXT = GlConsts.GL_TRIANGLES_ADJACENCY_EXT, + GL_TRIANGLE_STRIP_ADJACENCY = GlConsts.GL_TRIANGLE_STRIP_ADJACENCY, + GL_TRIANGLE_STRIP_ADJACENCY_ARB = GlConsts.GL_TRIANGLE_STRIP_ADJACENCY_ARB, + GL_TRIANGLE_STRIP_ADJACENCY_EXT = GlConsts.GL_TRIANGLE_STRIP_ADJACENCY_EXT, + GL_PATCHES = GlConsts.GL_PATCHES, + GL_PATCHES_EXT = GlConsts.GL_PATCHES_EXT, + }; + + public enum AccumOp + { + GL_ACCUM = GlConsts.GL_ACCUM, + GL_LOAD = GlConsts.GL_LOAD, + GL_RETURN = GlConsts.GL_RETURN, + GL_MULT = GlConsts.GL_MULT, + GL_ADD = GlConsts.GL_ADD, + }; + + public enum TextureEnvMode + { + GL_ADD = GlConsts.GL_ADD, + GL_BLEND = GlConsts.GL_BLEND, + GL_MODULATE = GlConsts.GL_MODULATE, + GL_DECAL = GlConsts.GL_DECAL, + GL_REPLACE_EXT = GlConsts.GL_REPLACE_EXT, + GL_TEXTURE_ENV_BIAS_SGIX = GlConsts.GL_TEXTURE_ENV_BIAS_SGIX, + }; + + public enum LightEnvModeSGIX + { + GL_ADD = GlConsts.GL_ADD, + GL_REPLACE = GlConsts.GL_REPLACE, + GL_MODULATE = GlConsts.GL_MODULATE, + }; + + public enum StencilFunction + { + GL_NEVER = GlConsts.GL_NEVER, + GL_LESS = GlConsts.GL_LESS, + GL_EQUAL = GlConsts.GL_EQUAL, + GL_LEQUAL = GlConsts.GL_LEQUAL, + GL_GREATER = GlConsts.GL_GREATER, + GL_NOTEQUAL = GlConsts.GL_NOTEQUAL, + GL_GEQUAL = GlConsts.GL_GEQUAL, + GL_ALWAYS = GlConsts.GL_ALWAYS, + }; + + public enum IndexFunctionEXT + { + GL_NEVER = GlConsts.GL_NEVER, + GL_LESS = GlConsts.GL_LESS, + GL_EQUAL = GlConsts.GL_EQUAL, + GL_LEQUAL = GlConsts.GL_LEQUAL, + GL_GREATER = GlConsts.GL_GREATER, + GL_NOTEQUAL = GlConsts.GL_NOTEQUAL, + GL_GEQUAL = GlConsts.GL_GEQUAL, + GL_ALWAYS = GlConsts.GL_ALWAYS, + }; + + public enum AlphaFunction + { + GL_NEVER = GlConsts.GL_NEVER, + GL_LESS = GlConsts.GL_LESS, + GL_EQUAL = GlConsts.GL_EQUAL, + GL_LEQUAL = GlConsts.GL_LEQUAL, + GL_GREATER = GlConsts.GL_GREATER, + GL_NOTEQUAL = GlConsts.GL_NOTEQUAL, + GL_GEQUAL = GlConsts.GL_GEQUAL, + GL_ALWAYS = GlConsts.GL_ALWAYS, + }; + + public enum DepthFunction + { + GL_NEVER = GlConsts.GL_NEVER, + GL_LESS = GlConsts.GL_LESS, + GL_EQUAL = GlConsts.GL_EQUAL, + GL_LEQUAL = GlConsts.GL_LEQUAL, + GL_GREATER = GlConsts.GL_GREATER, + GL_NOTEQUAL = GlConsts.GL_NOTEQUAL, + GL_GEQUAL = GlConsts.GL_GEQUAL, + GL_ALWAYS = GlConsts.GL_ALWAYS, + }; + + public enum ColorMaterialFace + { + GL_FRONT = GlConsts.GL_FRONT, + GL_BACK = GlConsts.GL_BACK, + GL_FRONT_AND_BACK = GlConsts.GL_FRONT_AND_BACK, + }; + + public enum CullFaceMode + { + GL_FRONT = GlConsts.GL_FRONT, + GL_BACK = GlConsts.GL_BACK, + GL_FRONT_AND_BACK = GlConsts.GL_FRONT_AND_BACK, + }; + + public enum StencilFaceDirection + { + GL_FRONT = GlConsts.GL_FRONT, + GL_BACK = GlConsts.GL_BACK, + GL_FRONT_AND_BACK = GlConsts.GL_FRONT_AND_BACK, + }; + + public enum MaterialFace + { + GL_FRONT = GlConsts.GL_FRONT, + GL_BACK = GlConsts.GL_BACK, + GL_FRONT_AND_BACK = GlConsts.GL_FRONT_AND_BACK, + }; + + public enum FeedbackType + { + GL_2D = GlConsts.GL_2D, + GL_3D = GlConsts.GL_3D, + GL_3D_COLOR = GlConsts.GL_3D_COLOR, + GL_3D_COLOR_TEXTURE = GlConsts.GL_3D_COLOR_TEXTURE, + GL_4D_COLOR_TEXTURE = GlConsts.GL_4D_COLOR_TEXTURE, + }; + + public enum FeedBackToken + { + GL_PASS_THROUGH_TOKEN = GlConsts.GL_PASS_THROUGH_TOKEN, + GL_POINT_TOKEN = GlConsts.GL_POINT_TOKEN, + GL_LINE_TOKEN = GlConsts.GL_LINE_TOKEN, + GL_POLYGON_TOKEN = GlConsts.GL_POLYGON_TOKEN, + GL_BITMAP_TOKEN = GlConsts.GL_BITMAP_TOKEN, + GL_DRAW_PIXEL_TOKEN = GlConsts.GL_DRAW_PIXEL_TOKEN, + GL_COPY_PIXEL_TOKEN = GlConsts.GL_COPY_PIXEL_TOKEN, + GL_LINE_RESET_TOKEN = GlConsts.GL_LINE_RESET_TOKEN, + }; + + public enum FogMode + { + GL_EXP = GlConsts.GL_EXP, + GL_EXP2 = GlConsts.GL_EXP2, + GL_LINEAR = GlConsts.GL_LINEAR, + GL_FOG_FUNC_SGIS = GlConsts.GL_FOG_FUNC_SGIS, + }; + + public enum FrontFaceDirection + { + GL_CW = GlConsts.GL_CW, + GL_CCW = GlConsts.GL_CCW, + }; + + public enum MapQuery + { + GL_COEFF = GlConsts.GL_COEFF, + GL_ORDER = GlConsts.GL_ORDER, + GL_DOMAIN = GlConsts.GL_DOMAIN, + }; + + public enum GetMapQuery + { + GL_COEFF = GlConsts.GL_COEFF, + GL_ORDER = GlConsts.GL_ORDER, + GL_DOMAIN = GlConsts.GL_DOMAIN, + }; + + public enum GetPName + { + GL_CURRENT_COLOR = GlConsts.GL_CURRENT_COLOR, + GL_CURRENT_INDEX = GlConsts.GL_CURRENT_INDEX, + GL_CURRENT_NORMAL = GlConsts.GL_CURRENT_NORMAL, + GL_CURRENT_TEXTURE_COORDS = GlConsts.GL_CURRENT_TEXTURE_COORDS, + GL_CURRENT_RASTER_COLOR = GlConsts.GL_CURRENT_RASTER_COLOR, + GL_CURRENT_RASTER_INDEX = GlConsts.GL_CURRENT_RASTER_INDEX, + GL_CURRENT_RASTER_TEXTURE_COORDS = GlConsts.GL_CURRENT_RASTER_TEXTURE_COORDS, + GL_CURRENT_RASTER_POSITION = GlConsts.GL_CURRENT_RASTER_POSITION, + GL_CURRENT_RASTER_POSITION_VALID = GlConsts.GL_CURRENT_RASTER_POSITION_VALID, + GL_CURRENT_RASTER_DISTANCE = GlConsts.GL_CURRENT_RASTER_DISTANCE, + GL_POINT_SMOOTH = GlConsts.GL_POINT_SMOOTH, + GL_POINT_SIZE = GlConsts.GL_POINT_SIZE, + GL_POINT_SIZE_RANGE = GlConsts.GL_POINT_SIZE_RANGE, + GL_SMOOTH_POINT_SIZE_RANGE = GlConsts.GL_SMOOTH_POINT_SIZE_RANGE, + GL_POINT_SIZE_GRANULARITY = GlConsts.GL_POINT_SIZE_GRANULARITY, + GL_SMOOTH_POINT_SIZE_GRANULARITY = GlConsts.GL_SMOOTH_POINT_SIZE_GRANULARITY, + GL_LINE_SMOOTH = GlConsts.GL_LINE_SMOOTH, + GL_LINE_WIDTH = GlConsts.GL_LINE_WIDTH, + GL_LINE_WIDTH_RANGE = GlConsts.GL_LINE_WIDTH_RANGE, + GL_SMOOTH_LINE_WIDTH_RANGE = GlConsts.GL_SMOOTH_LINE_WIDTH_RANGE, + GL_LINE_WIDTH_GRANULARITY = GlConsts.GL_LINE_WIDTH_GRANULARITY, + GL_SMOOTH_LINE_WIDTH_GRANULARITY = GlConsts.GL_SMOOTH_LINE_WIDTH_GRANULARITY, + GL_LINE_STIPPLE = GlConsts.GL_LINE_STIPPLE, + GL_LINE_STIPPLE_PATTERN = GlConsts.GL_LINE_STIPPLE_PATTERN, + GL_LINE_STIPPLE_REPEAT = GlConsts.GL_LINE_STIPPLE_REPEAT, + GL_LIST_MODE = GlConsts.GL_LIST_MODE, + GL_MAX_LIST_NESTING = GlConsts.GL_MAX_LIST_NESTING, + GL_LIST_BASE = GlConsts.GL_LIST_BASE, + GL_LIST_INDEX = GlConsts.GL_LIST_INDEX, + GL_POLYGON_MODE = GlConsts.GL_POLYGON_MODE, + GL_POLYGON_SMOOTH = GlConsts.GL_POLYGON_SMOOTH, + GL_POLYGON_STIPPLE = GlConsts.GL_POLYGON_STIPPLE, + GL_EDGE_FLAG = GlConsts.GL_EDGE_FLAG, + GL_CULL_FACE = GlConsts.GL_CULL_FACE, + GL_CULL_FACE_MODE = GlConsts.GL_CULL_FACE_MODE, + GL_FRONT_FACE = GlConsts.GL_FRONT_FACE, + GL_LIGHTING = GlConsts.GL_LIGHTING, + GL_LIGHT_MODEL_LOCAL_VIEWER = GlConsts.GL_LIGHT_MODEL_LOCAL_VIEWER, + GL_LIGHT_MODEL_TWO_SIDE = GlConsts.GL_LIGHT_MODEL_TWO_SIDE, + GL_LIGHT_MODEL_AMBIENT = GlConsts.GL_LIGHT_MODEL_AMBIENT, + GL_SHADE_MODEL = GlConsts.GL_SHADE_MODEL, + GL_COLOR_MATERIAL_FACE = GlConsts.GL_COLOR_MATERIAL_FACE, + GL_COLOR_MATERIAL_PARAMETER = GlConsts.GL_COLOR_MATERIAL_PARAMETER, + GL_COLOR_MATERIAL = GlConsts.GL_COLOR_MATERIAL, + GL_FOG = GlConsts.GL_FOG, + GL_FOG_INDEX = GlConsts.GL_FOG_INDEX, + GL_FOG_DENSITY = GlConsts.GL_FOG_DENSITY, + GL_FOG_START = GlConsts.GL_FOG_START, + GL_FOG_END = GlConsts.GL_FOG_END, + GL_FOG_MODE = GlConsts.GL_FOG_MODE, + GL_FOG_COLOR = GlConsts.GL_FOG_COLOR, + GL_DEPTH_RANGE = GlConsts.GL_DEPTH_RANGE, + GL_DEPTH_TEST = GlConsts.GL_DEPTH_TEST, + GL_DEPTH_WRITEMASK = GlConsts.GL_DEPTH_WRITEMASK, + GL_DEPTH_CLEAR_VALUE = GlConsts.GL_DEPTH_CLEAR_VALUE, + GL_DEPTH_FUNC = GlConsts.GL_DEPTH_FUNC, + GL_ACCUM_CLEAR_VALUE = GlConsts.GL_ACCUM_CLEAR_VALUE, + GL_STENCIL_TEST = GlConsts.GL_STENCIL_TEST, + GL_STENCIL_CLEAR_VALUE = GlConsts.GL_STENCIL_CLEAR_VALUE, + GL_STENCIL_FUNC = GlConsts.GL_STENCIL_FUNC, + GL_STENCIL_VALUE_MASK = GlConsts.GL_STENCIL_VALUE_MASK, + GL_STENCIL_FAIL = GlConsts.GL_STENCIL_FAIL, + GL_STENCIL_PASS_DEPTH_FAIL = GlConsts.GL_STENCIL_PASS_DEPTH_FAIL, + GL_STENCIL_PASS_DEPTH_PASS = GlConsts.GL_STENCIL_PASS_DEPTH_PASS, + GL_STENCIL_REF = GlConsts.GL_STENCIL_REF, + GL_STENCIL_WRITEMASK = GlConsts.GL_STENCIL_WRITEMASK, + GL_MATRIX_MODE = GlConsts.GL_MATRIX_MODE, + GL_NORMALIZE = GlConsts.GL_NORMALIZE, + GL_VIEWPORT = GlConsts.GL_VIEWPORT, + GL_MODELVIEW_STACK_DEPTH = GlConsts.GL_MODELVIEW_STACK_DEPTH, + GL_MODELVIEW0_STACK_DEPTH_EXT = GlConsts.GL_MODELVIEW0_STACK_DEPTH_EXT, + GL_PROJECTION_STACK_DEPTH = GlConsts.GL_PROJECTION_STACK_DEPTH, + GL_TEXTURE_STACK_DEPTH = GlConsts.GL_TEXTURE_STACK_DEPTH, + GL_MODELVIEW_MATRIX = GlConsts.GL_MODELVIEW_MATRIX, + GL_MODELVIEW0_MATRIX_EXT = GlConsts.GL_MODELVIEW0_MATRIX_EXT, + GL_PROJECTION_MATRIX = GlConsts.GL_PROJECTION_MATRIX, + GL_TEXTURE_MATRIX = GlConsts.GL_TEXTURE_MATRIX, + GL_ATTRIB_STACK_DEPTH = GlConsts.GL_ATTRIB_STACK_DEPTH, + GL_CLIENT_ATTRIB_STACK_DEPTH = GlConsts.GL_CLIENT_ATTRIB_STACK_DEPTH, + GL_ALPHA_TEST = GlConsts.GL_ALPHA_TEST, + GL_ALPHA_TEST_QCOM = GlConsts.GL_ALPHA_TEST_QCOM, + GL_ALPHA_TEST_FUNC = GlConsts.GL_ALPHA_TEST_FUNC, + GL_ALPHA_TEST_FUNC_QCOM = GlConsts.GL_ALPHA_TEST_FUNC_QCOM, + GL_ALPHA_TEST_REF = GlConsts.GL_ALPHA_TEST_REF, + GL_ALPHA_TEST_REF_QCOM = GlConsts.GL_ALPHA_TEST_REF_QCOM, + GL_DITHER = GlConsts.GL_DITHER, + GL_BLEND_DST = GlConsts.GL_BLEND_DST, + GL_BLEND_SRC = GlConsts.GL_BLEND_SRC, + GL_BLEND = GlConsts.GL_BLEND, + GL_LOGIC_OP_MODE = GlConsts.GL_LOGIC_OP_MODE, + GL_INDEX_LOGIC_OP = GlConsts.GL_INDEX_LOGIC_OP, + GL_LOGIC_OP = GlConsts.GL_LOGIC_OP, + GL_COLOR_LOGIC_OP = GlConsts.GL_COLOR_LOGIC_OP, + GL_AUX_BUFFERS = GlConsts.GL_AUX_BUFFERS, + GL_DRAW_BUFFER = GlConsts.GL_DRAW_BUFFER, + GL_DRAW_BUFFER_EXT = GlConsts.GL_DRAW_BUFFER_EXT, + GL_READ_BUFFER = GlConsts.GL_READ_BUFFER, + GL_READ_BUFFER_EXT = GlConsts.GL_READ_BUFFER_EXT, + GL_READ_BUFFER_NV = GlConsts.GL_READ_BUFFER_NV, + GL_SCISSOR_BOX = GlConsts.GL_SCISSOR_BOX, + GL_SCISSOR_TEST = GlConsts.GL_SCISSOR_TEST, + GL_INDEX_CLEAR_VALUE = GlConsts.GL_INDEX_CLEAR_VALUE, + GL_INDEX_WRITEMASK = GlConsts.GL_INDEX_WRITEMASK, + GL_COLOR_CLEAR_VALUE = GlConsts.GL_COLOR_CLEAR_VALUE, + GL_COLOR_WRITEMASK = GlConsts.GL_COLOR_WRITEMASK, + GL_INDEX_MODE = GlConsts.GL_INDEX_MODE, + GL_RGBA_MODE = GlConsts.GL_RGBA_MODE, + GL_DOUBLEBUFFER = GlConsts.GL_DOUBLEBUFFER, + GL_STEREO = GlConsts.GL_STEREO, + GL_RENDER_MODE = GlConsts.GL_RENDER_MODE, + GL_PERSPECTIVE_CORRECTION_HINT = GlConsts.GL_PERSPECTIVE_CORRECTION_HINT, + GL_POINT_SMOOTH_HINT = GlConsts.GL_POINT_SMOOTH_HINT, + GL_LINE_SMOOTH_HINT = GlConsts.GL_LINE_SMOOTH_HINT, + GL_POLYGON_SMOOTH_HINT = GlConsts.GL_POLYGON_SMOOTH_HINT, + GL_FOG_HINT = GlConsts.GL_FOG_HINT, + GL_TEXTURE_GEN_S = GlConsts.GL_TEXTURE_GEN_S, + GL_TEXTURE_GEN_T = GlConsts.GL_TEXTURE_GEN_T, + GL_TEXTURE_GEN_R = GlConsts.GL_TEXTURE_GEN_R, + GL_TEXTURE_GEN_Q = GlConsts.GL_TEXTURE_GEN_Q, + GL_PIXEL_MAP_I_TO_I_SIZE = GlConsts.GL_PIXEL_MAP_I_TO_I_SIZE, + GL_PIXEL_MAP_S_TO_S_SIZE = GlConsts.GL_PIXEL_MAP_S_TO_S_SIZE, + GL_PIXEL_MAP_I_TO_R_SIZE = GlConsts.GL_PIXEL_MAP_I_TO_R_SIZE, + GL_PIXEL_MAP_I_TO_G_SIZE = GlConsts.GL_PIXEL_MAP_I_TO_G_SIZE, + GL_PIXEL_MAP_I_TO_B_SIZE = GlConsts.GL_PIXEL_MAP_I_TO_B_SIZE, + GL_PIXEL_MAP_I_TO_A_SIZE = GlConsts.GL_PIXEL_MAP_I_TO_A_SIZE, + GL_PIXEL_MAP_R_TO_R_SIZE = GlConsts.GL_PIXEL_MAP_R_TO_R_SIZE, + GL_PIXEL_MAP_G_TO_G_SIZE = GlConsts.GL_PIXEL_MAP_G_TO_G_SIZE, + GL_PIXEL_MAP_B_TO_B_SIZE = GlConsts.GL_PIXEL_MAP_B_TO_B_SIZE, + GL_PIXEL_MAP_A_TO_A_SIZE = GlConsts.GL_PIXEL_MAP_A_TO_A_SIZE, + GL_UNPACK_SWAP_BYTES = GlConsts.GL_UNPACK_SWAP_BYTES, + GL_UNPACK_LSB_FIRST = GlConsts.GL_UNPACK_LSB_FIRST, + GL_UNPACK_ROW_LENGTH = GlConsts.GL_UNPACK_ROW_LENGTH, + GL_UNPACK_SKIP_ROWS = GlConsts.GL_UNPACK_SKIP_ROWS, + GL_UNPACK_SKIP_PIXELS = GlConsts.GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_ALIGNMENT = GlConsts.GL_UNPACK_ALIGNMENT, + GL_PACK_SWAP_BYTES = GlConsts.GL_PACK_SWAP_BYTES, + GL_PACK_LSB_FIRST = GlConsts.GL_PACK_LSB_FIRST, + GL_PACK_ROW_LENGTH = GlConsts.GL_PACK_ROW_LENGTH, + GL_PACK_SKIP_ROWS = GlConsts.GL_PACK_SKIP_ROWS, + GL_PACK_SKIP_PIXELS = GlConsts.GL_PACK_SKIP_PIXELS, + GL_PACK_ALIGNMENT = GlConsts.GL_PACK_ALIGNMENT, + GL_MAP_COLOR = GlConsts.GL_MAP_COLOR, + GL_MAP_STENCIL = GlConsts.GL_MAP_STENCIL, + GL_INDEX_SHIFT = GlConsts.GL_INDEX_SHIFT, + GL_INDEX_OFFSET = GlConsts.GL_INDEX_OFFSET, + GL_RED_SCALE = GlConsts.GL_RED_SCALE, + GL_RED_BIAS = GlConsts.GL_RED_BIAS, + GL_ZOOM_X = GlConsts.GL_ZOOM_X, + GL_ZOOM_Y = GlConsts.GL_ZOOM_Y, + GL_GREEN_SCALE = GlConsts.GL_GREEN_SCALE, + GL_GREEN_BIAS = GlConsts.GL_GREEN_BIAS, + GL_BLUE_SCALE = GlConsts.GL_BLUE_SCALE, + GL_BLUE_BIAS = GlConsts.GL_BLUE_BIAS, + GL_ALPHA_SCALE = GlConsts.GL_ALPHA_SCALE, + GL_ALPHA_BIAS = GlConsts.GL_ALPHA_BIAS, + GL_DEPTH_SCALE = GlConsts.GL_DEPTH_SCALE, + GL_DEPTH_BIAS = GlConsts.GL_DEPTH_BIAS, + GL_MAX_EVAL_ORDER = GlConsts.GL_MAX_EVAL_ORDER, + GL_MAX_LIGHTS = GlConsts.GL_MAX_LIGHTS, + GL_MAX_CLIP_PLANES = GlConsts.GL_MAX_CLIP_PLANES, + GL_MAX_CLIP_DISTANCES = GlConsts.GL_MAX_CLIP_DISTANCES, + GL_MAX_TEXTURE_SIZE = GlConsts.GL_MAX_TEXTURE_SIZE, + GL_MAX_PIXEL_MAP_TABLE = GlConsts.GL_MAX_PIXEL_MAP_TABLE, + GL_MAX_ATTRIB_STACK_DEPTH = GlConsts.GL_MAX_ATTRIB_STACK_DEPTH, + GL_MAX_MODELVIEW_STACK_DEPTH = GlConsts.GL_MAX_MODELVIEW_STACK_DEPTH, + GL_MAX_NAME_STACK_DEPTH = GlConsts.GL_MAX_NAME_STACK_DEPTH, + GL_MAX_PROJECTION_STACK_DEPTH = GlConsts.GL_MAX_PROJECTION_STACK_DEPTH, + GL_MAX_TEXTURE_STACK_DEPTH = GlConsts.GL_MAX_TEXTURE_STACK_DEPTH, + GL_MAX_VIEWPORT_DIMS = GlConsts.GL_MAX_VIEWPORT_DIMS, + GL_MAX_CLIENT_ATTRIB_STACK_DEPTH = GlConsts.GL_MAX_CLIENT_ATTRIB_STACK_DEPTH, + GL_SUBPIXEL_BITS = GlConsts.GL_SUBPIXEL_BITS, + GL_INDEX_BITS = GlConsts.GL_INDEX_BITS, + GL_RED_BITS = GlConsts.GL_RED_BITS, + GL_GREEN_BITS = GlConsts.GL_GREEN_BITS, + GL_BLUE_BITS = GlConsts.GL_BLUE_BITS, + GL_ALPHA_BITS = GlConsts.GL_ALPHA_BITS, + GL_DEPTH_BITS = GlConsts.GL_DEPTH_BITS, + GL_STENCIL_BITS = GlConsts.GL_STENCIL_BITS, + GL_ACCUM_RED_BITS = GlConsts.GL_ACCUM_RED_BITS, + GL_ACCUM_GREEN_BITS = GlConsts.GL_ACCUM_GREEN_BITS, + GL_ACCUM_BLUE_BITS = GlConsts.GL_ACCUM_BLUE_BITS, + GL_ACCUM_ALPHA_BITS = GlConsts.GL_ACCUM_ALPHA_BITS, + GL_NAME_STACK_DEPTH = GlConsts.GL_NAME_STACK_DEPTH, + GL_AUTO_NORMAL = GlConsts.GL_AUTO_NORMAL, + GL_MAP1_COLOR_4 = GlConsts.GL_MAP1_COLOR_4, + GL_MAP1_INDEX = GlConsts.GL_MAP1_INDEX, + GL_MAP1_NORMAL = GlConsts.GL_MAP1_NORMAL, + GL_MAP1_TEXTURE_COORD_1 = GlConsts.GL_MAP1_TEXTURE_COORD_1, + GL_MAP1_TEXTURE_COORD_2 = GlConsts.GL_MAP1_TEXTURE_COORD_2, + GL_MAP1_TEXTURE_COORD_3 = GlConsts.GL_MAP1_TEXTURE_COORD_3, + GL_MAP1_TEXTURE_COORD_4 = GlConsts.GL_MAP1_TEXTURE_COORD_4, + GL_MAP1_VERTEX_3 = GlConsts.GL_MAP1_VERTEX_3, + GL_MAP1_VERTEX_4 = GlConsts.GL_MAP1_VERTEX_4, + GL_MAP2_COLOR_4 = GlConsts.GL_MAP2_COLOR_4, + GL_MAP2_INDEX = GlConsts.GL_MAP2_INDEX, + GL_MAP2_NORMAL = GlConsts.GL_MAP2_NORMAL, + GL_MAP2_TEXTURE_COORD_1 = GlConsts.GL_MAP2_TEXTURE_COORD_1, + GL_MAP2_TEXTURE_COORD_2 = GlConsts.GL_MAP2_TEXTURE_COORD_2, + GL_MAP2_TEXTURE_COORD_3 = GlConsts.GL_MAP2_TEXTURE_COORD_3, + GL_MAP2_TEXTURE_COORD_4 = GlConsts.GL_MAP2_TEXTURE_COORD_4, + GL_MAP2_VERTEX_3 = GlConsts.GL_MAP2_VERTEX_3, + GL_MAP2_VERTEX_4 = GlConsts.GL_MAP2_VERTEX_4, + GL_MAP1_GRID_DOMAIN = GlConsts.GL_MAP1_GRID_DOMAIN, + GL_MAP1_GRID_SEGMENTS = GlConsts.GL_MAP1_GRID_SEGMENTS, + GL_MAP2_GRID_DOMAIN = GlConsts.GL_MAP2_GRID_DOMAIN, + GL_MAP2_GRID_SEGMENTS = GlConsts.GL_MAP2_GRID_SEGMENTS, + GL_TEXTURE_1D = GlConsts.GL_TEXTURE_1D, + GL_TEXTURE_2D = GlConsts.GL_TEXTURE_2D, + GL_FEEDBACK_BUFFER_SIZE = GlConsts.GL_FEEDBACK_BUFFER_SIZE, + GL_FEEDBACK_BUFFER_TYPE = GlConsts.GL_FEEDBACK_BUFFER_TYPE, + GL_SELECTION_BUFFER_SIZE = GlConsts.GL_SELECTION_BUFFER_SIZE, + GL_POLYGON_OFFSET_UNITS = GlConsts.GL_POLYGON_OFFSET_UNITS, + GL_POLYGON_OFFSET_POINT = GlConsts.GL_POLYGON_OFFSET_POINT, + GL_POLYGON_OFFSET_LINE = GlConsts.GL_POLYGON_OFFSET_LINE, + GL_CLIP_PLANE0 = GlConsts.GL_CLIP_PLANE0, + GL_CLIP_PLANE1 = GlConsts.GL_CLIP_PLANE1, + GL_CLIP_PLANE2 = GlConsts.GL_CLIP_PLANE2, + GL_CLIP_PLANE3 = GlConsts.GL_CLIP_PLANE3, + GL_CLIP_PLANE4 = GlConsts.GL_CLIP_PLANE4, + GL_CLIP_PLANE5 = GlConsts.GL_CLIP_PLANE5, + GL_LIGHT0 = GlConsts.GL_LIGHT0, + GL_LIGHT1 = GlConsts.GL_LIGHT1, + GL_LIGHT2 = GlConsts.GL_LIGHT2, + GL_LIGHT3 = GlConsts.GL_LIGHT3, + GL_LIGHT4 = GlConsts.GL_LIGHT4, + GL_LIGHT5 = GlConsts.GL_LIGHT5, + GL_LIGHT6 = GlConsts.GL_LIGHT6, + GL_LIGHT7 = GlConsts.GL_LIGHT7, + GL_BLEND_COLOR = GlConsts.GL_BLEND_COLOR, + GL_BLEND_COLOR_EXT = GlConsts.GL_BLEND_COLOR_EXT, + GL_BLEND_EQUATION_EXT = GlConsts.GL_BLEND_EQUATION_EXT, + GL_BLEND_EQUATION_RGB = GlConsts.GL_BLEND_EQUATION_RGB, + GL_PACK_CMYK_HINT_EXT = GlConsts.GL_PACK_CMYK_HINT_EXT, + GL_UNPACK_CMYK_HINT_EXT = GlConsts.GL_UNPACK_CMYK_HINT_EXT, + GL_CONVOLUTION_1D_EXT = GlConsts.GL_CONVOLUTION_1D_EXT, + GL_CONVOLUTION_2D_EXT = GlConsts.GL_CONVOLUTION_2D_EXT, + GL_SEPARABLE_2D_EXT = GlConsts.GL_SEPARABLE_2D_EXT, + GL_POST_CONVOLUTION_RED_SCALE_EXT = GlConsts.GL_POST_CONVOLUTION_RED_SCALE_EXT, + GL_POST_CONVOLUTION_GREEN_SCALE_EXT = GlConsts.GL_POST_CONVOLUTION_GREEN_SCALE_EXT, + GL_POST_CONVOLUTION_BLUE_SCALE_EXT = GlConsts.GL_POST_CONVOLUTION_BLUE_SCALE_EXT, + GL_POST_CONVOLUTION_ALPHA_SCALE_EXT = GlConsts.GL_POST_CONVOLUTION_ALPHA_SCALE_EXT, + GL_POST_CONVOLUTION_RED_BIAS_EXT = GlConsts.GL_POST_CONVOLUTION_RED_BIAS_EXT, + GL_POST_CONVOLUTION_GREEN_BIAS_EXT = GlConsts.GL_POST_CONVOLUTION_GREEN_BIAS_EXT, + GL_POST_CONVOLUTION_BLUE_BIAS_EXT = GlConsts.GL_POST_CONVOLUTION_BLUE_BIAS_EXT, + GL_POST_CONVOLUTION_ALPHA_BIAS_EXT = GlConsts.GL_POST_CONVOLUTION_ALPHA_BIAS_EXT, + GL_HISTOGRAM_EXT = GlConsts.GL_HISTOGRAM_EXT, + GL_MINMAX_EXT = GlConsts.GL_MINMAX_EXT, + GL_POLYGON_OFFSET_FILL = GlConsts.GL_POLYGON_OFFSET_FILL, + GL_POLYGON_OFFSET_FACTOR = GlConsts.GL_POLYGON_OFFSET_FACTOR, + GL_POLYGON_OFFSET_BIAS_EXT = GlConsts.GL_POLYGON_OFFSET_BIAS_EXT, + GL_RESCALE_NORMAL_EXT = GlConsts.GL_RESCALE_NORMAL_EXT, + GL_TEXTURE_BINDING_1D = GlConsts.GL_TEXTURE_BINDING_1D, + GL_TEXTURE_BINDING_2D = GlConsts.GL_TEXTURE_BINDING_2D, + GL_TEXTURE_3D_BINDING_EXT = GlConsts.GL_TEXTURE_3D_BINDING_EXT, + GL_TEXTURE_BINDING_3D = GlConsts.GL_TEXTURE_BINDING_3D, + GL_PACK_SKIP_IMAGES = GlConsts.GL_PACK_SKIP_IMAGES, + GL_PACK_SKIP_IMAGES_EXT = GlConsts.GL_PACK_SKIP_IMAGES_EXT, + GL_PACK_IMAGE_HEIGHT = GlConsts.GL_PACK_IMAGE_HEIGHT, + GL_PACK_IMAGE_HEIGHT_EXT = GlConsts.GL_PACK_IMAGE_HEIGHT_EXT, + GL_UNPACK_SKIP_IMAGES = GlConsts.GL_UNPACK_SKIP_IMAGES, + GL_UNPACK_SKIP_IMAGES_EXT = GlConsts.GL_UNPACK_SKIP_IMAGES_EXT, + GL_UNPACK_IMAGE_HEIGHT = GlConsts.GL_UNPACK_IMAGE_HEIGHT, + GL_UNPACK_IMAGE_HEIGHT_EXT = GlConsts.GL_UNPACK_IMAGE_HEIGHT_EXT, + GL_TEXTURE_3D_EXT = GlConsts.GL_TEXTURE_3D_EXT, + GL_MAX_3D_TEXTURE_SIZE = GlConsts.GL_MAX_3D_TEXTURE_SIZE, + GL_MAX_3D_TEXTURE_SIZE_EXT = GlConsts.GL_MAX_3D_TEXTURE_SIZE_EXT, + GL_VERTEX_ARRAY = GlConsts.GL_VERTEX_ARRAY, + GL_NORMAL_ARRAY = GlConsts.GL_NORMAL_ARRAY, + GL_COLOR_ARRAY = GlConsts.GL_COLOR_ARRAY, + GL_INDEX_ARRAY = GlConsts.GL_INDEX_ARRAY, + GL_TEXTURE_COORD_ARRAY = GlConsts.GL_TEXTURE_COORD_ARRAY, + GL_EDGE_FLAG_ARRAY = GlConsts.GL_EDGE_FLAG_ARRAY, + GL_VERTEX_ARRAY_SIZE = GlConsts.GL_VERTEX_ARRAY_SIZE, + GL_VERTEX_ARRAY_TYPE = GlConsts.GL_VERTEX_ARRAY_TYPE, + GL_VERTEX_ARRAY_STRIDE = GlConsts.GL_VERTEX_ARRAY_STRIDE, + GL_VERTEX_ARRAY_COUNT_EXT = GlConsts.GL_VERTEX_ARRAY_COUNT_EXT, + GL_NORMAL_ARRAY_TYPE = GlConsts.GL_NORMAL_ARRAY_TYPE, + GL_NORMAL_ARRAY_STRIDE = GlConsts.GL_NORMAL_ARRAY_STRIDE, + GL_NORMAL_ARRAY_COUNT_EXT = GlConsts.GL_NORMAL_ARRAY_COUNT_EXT, + GL_COLOR_ARRAY_SIZE = GlConsts.GL_COLOR_ARRAY_SIZE, + GL_COLOR_ARRAY_TYPE = GlConsts.GL_COLOR_ARRAY_TYPE, + GL_COLOR_ARRAY_STRIDE = GlConsts.GL_COLOR_ARRAY_STRIDE, + GL_COLOR_ARRAY_COUNT_EXT = GlConsts.GL_COLOR_ARRAY_COUNT_EXT, + GL_INDEX_ARRAY_TYPE = GlConsts.GL_INDEX_ARRAY_TYPE, + GL_INDEX_ARRAY_STRIDE = GlConsts.GL_INDEX_ARRAY_STRIDE, + GL_INDEX_ARRAY_COUNT_EXT = GlConsts.GL_INDEX_ARRAY_COUNT_EXT, + GL_TEXTURE_COORD_ARRAY_SIZE = GlConsts.GL_TEXTURE_COORD_ARRAY_SIZE, + GL_TEXTURE_COORD_ARRAY_TYPE = GlConsts.GL_TEXTURE_COORD_ARRAY_TYPE, + GL_TEXTURE_COORD_ARRAY_STRIDE = GlConsts.GL_TEXTURE_COORD_ARRAY_STRIDE, + GL_TEXTURE_COORD_ARRAY_COUNT_EXT = GlConsts.GL_TEXTURE_COORD_ARRAY_COUNT_EXT, + GL_EDGE_FLAG_ARRAY_STRIDE = GlConsts.GL_EDGE_FLAG_ARRAY_STRIDE, + GL_EDGE_FLAG_ARRAY_COUNT_EXT = GlConsts.GL_EDGE_FLAG_ARRAY_COUNT_EXT, + GL_INTERLACE_SGIX = GlConsts.GL_INTERLACE_SGIX, + GL_DETAIL_TEXTURE_2D_BINDING_SGIS = GlConsts.GL_DETAIL_TEXTURE_2D_BINDING_SGIS, + GL_MULTISAMPLE_SGIS = GlConsts.GL_MULTISAMPLE_SGIS, + GL_SAMPLE_ALPHA_TO_MASK_SGIS = GlConsts.GL_SAMPLE_ALPHA_TO_MASK_SGIS, + GL_SAMPLE_ALPHA_TO_ONE_SGIS = GlConsts.GL_SAMPLE_ALPHA_TO_ONE_SGIS, + GL_SAMPLE_MASK_SGIS = GlConsts.GL_SAMPLE_MASK_SGIS, + GL_SAMPLE_BUFFERS = GlConsts.GL_SAMPLE_BUFFERS, + GL_SAMPLE_BUFFERS_SGIS = GlConsts.GL_SAMPLE_BUFFERS_SGIS, + GL_SAMPLES = GlConsts.GL_SAMPLES, + GL_SAMPLES_SGIS = GlConsts.GL_SAMPLES_SGIS, + GL_SAMPLE_COVERAGE_VALUE = GlConsts.GL_SAMPLE_COVERAGE_VALUE, + GL_SAMPLE_MASK_VALUE_SGIS = GlConsts.GL_SAMPLE_MASK_VALUE_SGIS, + GL_SAMPLE_COVERAGE_INVERT = GlConsts.GL_SAMPLE_COVERAGE_INVERT, + GL_SAMPLE_MASK_INVERT_SGIS = GlConsts.GL_SAMPLE_MASK_INVERT_SGIS, + GL_SAMPLE_PATTERN_SGIS = GlConsts.GL_SAMPLE_PATTERN_SGIS, + GL_COLOR_MATRIX_SGI = GlConsts.GL_COLOR_MATRIX_SGI, + GL_COLOR_MATRIX_STACK_DEPTH_SGI = GlConsts.GL_COLOR_MATRIX_STACK_DEPTH_SGI, + GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI = GlConsts.GL_MAX_COLOR_MATRIX_STACK_DEPTH_SGI, + GL_POST_COLOR_MATRIX_RED_SCALE_SGI = GlConsts.GL_POST_COLOR_MATRIX_RED_SCALE_SGI, + GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI = GlConsts.GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI, + GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI = GlConsts.GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI, + GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI = GlConsts.GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI, + GL_POST_COLOR_MATRIX_RED_BIAS_SGI = GlConsts.GL_POST_COLOR_MATRIX_RED_BIAS_SGI, + GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI = GlConsts.GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI, + GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI = GlConsts.GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI, + GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI = GlConsts.GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI, + GL_TEXTURE_COLOR_TABLE_SGI = GlConsts.GL_TEXTURE_COLOR_TABLE_SGI, + GL_BLEND_DST_RGB = GlConsts.GL_BLEND_DST_RGB, + GL_BLEND_SRC_RGB = GlConsts.GL_BLEND_SRC_RGB, + GL_BLEND_DST_ALPHA = GlConsts.GL_BLEND_DST_ALPHA, + GL_BLEND_SRC_ALPHA = GlConsts.GL_BLEND_SRC_ALPHA, + GL_COLOR_TABLE_SGI = GlConsts.GL_COLOR_TABLE_SGI, + GL_POST_CONVOLUTION_COLOR_TABLE_SGI = GlConsts.GL_POST_CONVOLUTION_COLOR_TABLE_SGI, + GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI = GlConsts.GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI, + GL_MAX_ELEMENTS_VERTICES = GlConsts.GL_MAX_ELEMENTS_VERTICES, + GL_MAX_ELEMENTS_INDICES = GlConsts.GL_MAX_ELEMENTS_INDICES, + GL_POINT_SIZE_MIN_SGIS = GlConsts.GL_POINT_SIZE_MIN_SGIS, + GL_POINT_SIZE_MAX_SGIS = GlConsts.GL_POINT_SIZE_MAX_SGIS, + GL_POINT_FADE_THRESHOLD_SIZE = GlConsts.GL_POINT_FADE_THRESHOLD_SIZE, + GL_POINT_FADE_THRESHOLD_SIZE_SGIS = GlConsts.GL_POINT_FADE_THRESHOLD_SIZE_SGIS, + GL_DISTANCE_ATTENUATION_SGIS = GlConsts.GL_DISTANCE_ATTENUATION_SGIS, + GL_FOG_FUNC_POINTS_SGIS = GlConsts.GL_FOG_FUNC_POINTS_SGIS, + GL_MAX_FOG_FUNC_POINTS_SGIS = GlConsts.GL_MAX_FOG_FUNC_POINTS_SGIS, + GL_PACK_SKIP_VOLUMES_SGIS = GlConsts.GL_PACK_SKIP_VOLUMES_SGIS, + GL_PACK_IMAGE_DEPTH_SGIS = GlConsts.GL_PACK_IMAGE_DEPTH_SGIS, + GL_UNPACK_SKIP_VOLUMES_SGIS = GlConsts.GL_UNPACK_SKIP_VOLUMES_SGIS, + GL_UNPACK_IMAGE_DEPTH_SGIS = GlConsts.GL_UNPACK_IMAGE_DEPTH_SGIS, + GL_TEXTURE_4D_SGIS = GlConsts.GL_TEXTURE_4D_SGIS, + GL_MAX_4D_TEXTURE_SIZE_SGIS = GlConsts.GL_MAX_4D_TEXTURE_SIZE_SGIS, + GL_PIXEL_TEX_GEN_SGIX = GlConsts.GL_PIXEL_TEX_GEN_SGIX, + GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX = GlConsts.GL_PIXEL_TILE_BEST_ALIGNMENT_SGIX, + GL_PIXEL_TILE_CACHE_INCREMENT_SGIX = GlConsts.GL_PIXEL_TILE_CACHE_INCREMENT_SGIX, + GL_PIXEL_TILE_WIDTH_SGIX = GlConsts.GL_PIXEL_TILE_WIDTH_SGIX, + GL_PIXEL_TILE_HEIGHT_SGIX = GlConsts.GL_PIXEL_TILE_HEIGHT_SGIX, + GL_PIXEL_TILE_GRID_WIDTH_SGIX = GlConsts.GL_PIXEL_TILE_GRID_WIDTH_SGIX, + GL_PIXEL_TILE_GRID_HEIGHT_SGIX = GlConsts.GL_PIXEL_TILE_GRID_HEIGHT_SGIX, + GL_PIXEL_TILE_GRID_DEPTH_SGIX = GlConsts.GL_PIXEL_TILE_GRID_DEPTH_SGIX, + GL_PIXEL_TILE_CACHE_SIZE_SGIX = GlConsts.GL_PIXEL_TILE_CACHE_SIZE_SGIX, + GL_SPRITE_SGIX = GlConsts.GL_SPRITE_SGIX, + GL_SPRITE_MODE_SGIX = GlConsts.GL_SPRITE_MODE_SGIX, + GL_SPRITE_AXIS_SGIX = GlConsts.GL_SPRITE_AXIS_SGIX, + GL_SPRITE_TRANSLATION_SGIX = GlConsts.GL_SPRITE_TRANSLATION_SGIX, + GL_TEXTURE_4D_BINDING_SGIS = GlConsts.GL_TEXTURE_4D_BINDING_SGIS, + GL_MAX_CLIPMAP_DEPTH_SGIX = GlConsts.GL_MAX_CLIPMAP_DEPTH_SGIX, + GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX = GlConsts.GL_MAX_CLIPMAP_VIRTUAL_DEPTH_SGIX, + GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX = GlConsts.GL_POST_TEXTURE_FILTER_BIAS_RANGE_SGIX, + GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX = GlConsts.GL_POST_TEXTURE_FILTER_SCALE_RANGE_SGIX, + GL_REFERENCE_PLANE_SGIX = GlConsts.GL_REFERENCE_PLANE_SGIX, + GL_REFERENCE_PLANE_EQUATION_SGIX = GlConsts.GL_REFERENCE_PLANE_EQUATION_SGIX, + GL_IR_INSTRUMENT1_SGIX = GlConsts.GL_IR_INSTRUMENT1_SGIX, + GL_INSTRUMENT_MEASUREMENTS_SGIX = GlConsts.GL_INSTRUMENT_MEASUREMENTS_SGIX, + GL_CALLIGRAPHIC_FRAGMENT_SGIX = GlConsts.GL_CALLIGRAPHIC_FRAGMENT_SGIX, + GL_FRAMEZOOM_SGIX = GlConsts.GL_FRAMEZOOM_SGIX, + GL_FRAMEZOOM_FACTOR_SGIX = GlConsts.GL_FRAMEZOOM_FACTOR_SGIX, + GL_MAX_FRAMEZOOM_FACTOR_SGIX = GlConsts.GL_MAX_FRAMEZOOM_FACTOR_SGIX, + GL_GENERATE_MIPMAP_HINT_SGIS = GlConsts.GL_GENERATE_MIPMAP_HINT_SGIS, + GL_DEFORMATIONS_MASK_SGIX = GlConsts.GL_DEFORMATIONS_MASK_SGIX, + GL_FOG_OFFSET_SGIX = GlConsts.GL_FOG_OFFSET_SGIX, + GL_FOG_OFFSET_VALUE_SGIX = GlConsts.GL_FOG_OFFSET_VALUE_SGIX, + GL_LIGHT_MODEL_COLOR_CONTROL = GlConsts.GL_LIGHT_MODEL_COLOR_CONTROL, + GL_SHARED_TEXTURE_PALETTE_EXT = GlConsts.GL_SHARED_TEXTURE_PALETTE_EXT, + GL_MAJOR_VERSION = GlConsts.GL_MAJOR_VERSION, + GL_MINOR_VERSION = GlConsts.GL_MINOR_VERSION, + GL_NUM_EXTENSIONS = GlConsts.GL_NUM_EXTENSIONS, + GL_CONTEXT_FLAGS = GlConsts.GL_CONTEXT_FLAGS, + GL_PROGRAM_PIPELINE_BINDING = GlConsts.GL_PROGRAM_PIPELINE_BINDING, + GL_MAX_VIEWPORTS = GlConsts.GL_MAX_VIEWPORTS, + GL_VIEWPORT_SUBPIXEL_BITS = GlConsts.GL_VIEWPORT_SUBPIXEL_BITS, + GL_VIEWPORT_BOUNDS_RANGE = GlConsts.GL_VIEWPORT_BOUNDS_RANGE, + GL_LAYER_PROVOKING_VERTEX = GlConsts.GL_LAYER_PROVOKING_VERTEX, + GL_VIEWPORT_INDEX_PROVOKING_VERTEX = GlConsts.GL_VIEWPORT_INDEX_PROVOKING_VERTEX, + GL_MAX_COMPUTE_UNIFORM_COMPONENTS = GlConsts.GL_MAX_COMPUTE_UNIFORM_COMPONENTS, + GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS = GlConsts.GL_MAX_COMPUTE_ATOMIC_COUNTER_BUFFERS, + GL_MAX_COMPUTE_ATOMIC_COUNTERS = GlConsts.GL_MAX_COMPUTE_ATOMIC_COUNTERS, + GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS = GlConsts.GL_MAX_COMBINED_COMPUTE_UNIFORM_COMPONENTS, + GL_MAX_DEBUG_GROUP_STACK_DEPTH = GlConsts.GL_MAX_DEBUG_GROUP_STACK_DEPTH, + GL_DEBUG_GROUP_STACK_DEPTH = GlConsts.GL_DEBUG_GROUP_STACK_DEPTH, + GL_MAX_UNIFORM_LOCATIONS = GlConsts.GL_MAX_UNIFORM_LOCATIONS, + GL_VERTEX_BINDING_DIVISOR = GlConsts.GL_VERTEX_BINDING_DIVISOR, + GL_VERTEX_BINDING_OFFSET = GlConsts.GL_VERTEX_BINDING_OFFSET, + GL_VERTEX_BINDING_STRIDE = GlConsts.GL_VERTEX_BINDING_STRIDE, + GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET = GlConsts.GL_MAX_VERTEX_ATTRIB_RELATIVE_OFFSET, + GL_MAX_VERTEX_ATTRIB_BINDINGS = GlConsts.GL_MAX_VERTEX_ATTRIB_BINDINGS, + GL_MAX_LABEL_LENGTH = GlConsts.GL_MAX_LABEL_LENGTH, + GL_CONVOLUTION_HINT_SGIX = GlConsts.GL_CONVOLUTION_HINT_SGIX, + GL_ASYNC_MARKER_SGIX = GlConsts.GL_ASYNC_MARKER_SGIX, + GL_PIXEL_TEX_GEN_MODE_SGIX = GlConsts.GL_PIXEL_TEX_GEN_MODE_SGIX, + GL_ASYNC_HISTOGRAM_SGIX = GlConsts.GL_ASYNC_HISTOGRAM_SGIX, + GL_MAX_ASYNC_HISTOGRAM_SGIX = GlConsts.GL_MAX_ASYNC_HISTOGRAM_SGIX, + GL_PIXEL_TEXTURE_SGIS = GlConsts.GL_PIXEL_TEXTURE_SGIS, + GL_ASYNC_TEX_IMAGE_SGIX = GlConsts.GL_ASYNC_TEX_IMAGE_SGIX, + GL_ASYNC_DRAW_PIXELS_SGIX = GlConsts.GL_ASYNC_DRAW_PIXELS_SGIX, + GL_ASYNC_READ_PIXELS_SGIX = GlConsts.GL_ASYNC_READ_PIXELS_SGIX, + GL_MAX_ASYNC_TEX_IMAGE_SGIX = GlConsts.GL_MAX_ASYNC_TEX_IMAGE_SGIX, + GL_MAX_ASYNC_DRAW_PIXELS_SGIX = GlConsts.GL_MAX_ASYNC_DRAW_PIXELS_SGIX, + GL_MAX_ASYNC_READ_PIXELS_SGIX = GlConsts.GL_MAX_ASYNC_READ_PIXELS_SGIX, + GL_VERTEX_PRECLIP_SGIX = GlConsts.GL_VERTEX_PRECLIP_SGIX, + GL_VERTEX_PRECLIP_HINT_SGIX = GlConsts.GL_VERTEX_PRECLIP_HINT_SGIX, + GL_FRAGMENT_LIGHTING_SGIX = GlConsts.GL_FRAGMENT_LIGHTING_SGIX, + GL_FRAGMENT_COLOR_MATERIAL_SGIX = GlConsts.GL_FRAGMENT_COLOR_MATERIAL_SGIX, + GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX = GlConsts.GL_FRAGMENT_COLOR_MATERIAL_FACE_SGIX, + GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX = GlConsts.GL_FRAGMENT_COLOR_MATERIAL_PARAMETER_SGIX, + GL_MAX_FRAGMENT_LIGHTS_SGIX = GlConsts.GL_MAX_FRAGMENT_LIGHTS_SGIX, + GL_MAX_ACTIVE_LIGHTS_SGIX = GlConsts.GL_MAX_ACTIVE_LIGHTS_SGIX, + GL_LIGHT_ENV_MODE_SGIX = GlConsts.GL_LIGHT_ENV_MODE_SGIX, + GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX = GlConsts.GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX, + GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX = GlConsts.GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX, + GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX = GlConsts.GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX, + GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX = GlConsts.GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX, + GL_FRAGMENT_LIGHT0_SGIX = GlConsts.GL_FRAGMENT_LIGHT0_SGIX, + GL_PACK_RESAMPLE_SGIX = GlConsts.GL_PACK_RESAMPLE_SGIX, + GL_UNPACK_RESAMPLE_SGIX = GlConsts.GL_UNPACK_RESAMPLE_SGIX, + GL_ALIASED_POINT_SIZE_RANGE = GlConsts.GL_ALIASED_POINT_SIZE_RANGE, + GL_ALIASED_LINE_WIDTH_RANGE = GlConsts.GL_ALIASED_LINE_WIDTH_RANGE, + GL_ACTIVE_TEXTURE = GlConsts.GL_ACTIVE_TEXTURE, + GL_MAX_RENDERBUFFER_SIZE = GlConsts.GL_MAX_RENDERBUFFER_SIZE, + GL_TEXTURE_COMPRESSION_HINT = GlConsts.GL_TEXTURE_COMPRESSION_HINT, + GL_TEXTURE_BINDING_RECTANGLE = GlConsts.GL_TEXTURE_BINDING_RECTANGLE, + GL_MAX_RECTANGLE_TEXTURE_SIZE = GlConsts.GL_MAX_RECTANGLE_TEXTURE_SIZE, + GL_MAX_TEXTURE_LOD_BIAS = GlConsts.GL_MAX_TEXTURE_LOD_BIAS, + GL_TEXTURE_BINDING_CUBE_MAP = GlConsts.GL_TEXTURE_BINDING_CUBE_MAP, + GL_MAX_CUBE_MAP_TEXTURE_SIZE = GlConsts.GL_MAX_CUBE_MAP_TEXTURE_SIZE, + GL_PACK_SUBSAMPLE_RATE_SGIX = GlConsts.GL_PACK_SUBSAMPLE_RATE_SGIX, + GL_UNPACK_SUBSAMPLE_RATE_SGIX = GlConsts.GL_UNPACK_SUBSAMPLE_RATE_SGIX, + GL_VERTEX_ARRAY_BINDING = GlConsts.GL_VERTEX_ARRAY_BINDING, + GL_PROGRAM_POINT_SIZE = GlConsts.GL_PROGRAM_POINT_SIZE, + GL_NUM_COMPRESSED_TEXTURE_FORMATS = GlConsts.GL_NUM_COMPRESSED_TEXTURE_FORMATS, + GL_COMPRESSED_TEXTURE_FORMATS = GlConsts.GL_COMPRESSED_TEXTURE_FORMATS, + GL_NUM_PROGRAM_BINARY_FORMATS = GlConsts.GL_NUM_PROGRAM_BINARY_FORMATS, + GL_PROGRAM_BINARY_FORMATS = GlConsts.GL_PROGRAM_BINARY_FORMATS, + GL_STENCIL_BACK_FUNC = GlConsts.GL_STENCIL_BACK_FUNC, + GL_STENCIL_BACK_FAIL = GlConsts.GL_STENCIL_BACK_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_FAIL = GlConsts.GL_STENCIL_BACK_PASS_DEPTH_FAIL, + GL_STENCIL_BACK_PASS_DEPTH_PASS = GlConsts.GL_STENCIL_BACK_PASS_DEPTH_PASS, + GL_MAX_DRAW_BUFFERS = GlConsts.GL_MAX_DRAW_BUFFERS, + GL_BLEND_EQUATION_ALPHA = GlConsts.GL_BLEND_EQUATION_ALPHA, + GL_MAX_VERTEX_ATTRIBS = GlConsts.GL_MAX_VERTEX_ATTRIBS, + GL_MAX_TEXTURE_IMAGE_UNITS = GlConsts.GL_MAX_TEXTURE_IMAGE_UNITS, + GL_ARRAY_BUFFER_BINDING = GlConsts.GL_ARRAY_BUFFER_BINDING, + GL_ELEMENT_ARRAY_BUFFER_BINDING = GlConsts.GL_ELEMENT_ARRAY_BUFFER_BINDING, + GL_PIXEL_PACK_BUFFER_BINDING = GlConsts.GL_PIXEL_PACK_BUFFER_BINDING, + GL_PIXEL_UNPACK_BUFFER_BINDING = GlConsts.GL_PIXEL_UNPACK_BUFFER_BINDING, + GL_MAX_DUAL_SOURCE_DRAW_BUFFERS = GlConsts.GL_MAX_DUAL_SOURCE_DRAW_BUFFERS, + GL_MAX_ARRAY_TEXTURE_LAYERS = GlConsts.GL_MAX_ARRAY_TEXTURE_LAYERS, + GL_MIN_PROGRAM_TEXEL_OFFSET = GlConsts.GL_MIN_PROGRAM_TEXEL_OFFSET, + GL_MAX_PROGRAM_TEXEL_OFFSET = GlConsts.GL_MAX_PROGRAM_TEXEL_OFFSET, + GL_SAMPLER_BINDING = GlConsts.GL_SAMPLER_BINDING, + GL_UNIFORM_BUFFER_BINDING = GlConsts.GL_UNIFORM_BUFFER_BINDING, + GL_UNIFORM_BUFFER_START = GlConsts.GL_UNIFORM_BUFFER_START, + GL_UNIFORM_BUFFER_SIZE = GlConsts.GL_UNIFORM_BUFFER_SIZE, + GL_MAX_VERTEX_UNIFORM_BLOCKS = GlConsts.GL_MAX_VERTEX_UNIFORM_BLOCKS, + GL_MAX_GEOMETRY_UNIFORM_BLOCKS = GlConsts.GL_MAX_GEOMETRY_UNIFORM_BLOCKS, + GL_MAX_FRAGMENT_UNIFORM_BLOCKS = GlConsts.GL_MAX_FRAGMENT_UNIFORM_BLOCKS, + GL_MAX_COMBINED_UNIFORM_BLOCKS = GlConsts.GL_MAX_COMBINED_UNIFORM_BLOCKS, + GL_MAX_UNIFORM_BUFFER_BINDINGS = GlConsts.GL_MAX_UNIFORM_BUFFER_BINDINGS, + GL_MAX_UNIFORM_BLOCK_SIZE = GlConsts.GL_MAX_UNIFORM_BLOCK_SIZE, + GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS = GlConsts.GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS, + GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS = GlConsts.GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS, + GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS = GlConsts.GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS, + GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT = GlConsts.GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT, + GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = GlConsts.GL_MAX_FRAGMENT_UNIFORM_COMPONENTS, + GL_MAX_VERTEX_UNIFORM_COMPONENTS = GlConsts.GL_MAX_VERTEX_UNIFORM_COMPONENTS, + GL_MAX_VARYING_FLOATS = GlConsts.GL_MAX_VARYING_FLOATS, + GL_MAX_VARYING_COMPONENTS = GlConsts.GL_MAX_VARYING_COMPONENTS, + GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = GlConsts.GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS, + GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS = GlConsts.GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, + GL_FRAGMENT_SHADER_DERIVATIVE_HINT = GlConsts.GL_FRAGMENT_SHADER_DERIVATIVE_HINT, + GL_CURRENT_PROGRAM = GlConsts.GL_CURRENT_PROGRAM, + GL_IMPLEMENTATION_COLOR_READ_TYPE = GlConsts.GL_IMPLEMENTATION_COLOR_READ_TYPE, + GL_IMPLEMENTATION_COLOR_READ_FORMAT = GlConsts.GL_IMPLEMENTATION_COLOR_READ_FORMAT, + GL_TEXTURE_BINDING_1D_ARRAY = GlConsts.GL_TEXTURE_BINDING_1D_ARRAY, + GL_TEXTURE_BINDING_2D_ARRAY = GlConsts.GL_TEXTURE_BINDING_2D_ARRAY, + GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS = GlConsts.GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS, + GL_MAX_TEXTURE_BUFFER_SIZE = GlConsts.GL_MAX_TEXTURE_BUFFER_SIZE, + GL_TEXTURE_BINDING_BUFFER = GlConsts.GL_TEXTURE_BINDING_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER_START = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER_START, + GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER_SIZE, + GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER_BINDING, + GL_MOTION_ESTIMATION_SEARCH_BLOCK_X_QCOM = GlConsts.GL_MOTION_ESTIMATION_SEARCH_BLOCK_X_QCOM, + GL_MOTION_ESTIMATION_SEARCH_BLOCK_Y_QCOM = GlConsts.GL_MOTION_ESTIMATION_SEARCH_BLOCK_Y_QCOM, + GL_STENCIL_BACK_REF = GlConsts.GL_STENCIL_BACK_REF, + GL_STENCIL_BACK_VALUE_MASK = GlConsts.GL_STENCIL_BACK_VALUE_MASK, + GL_STENCIL_BACK_WRITEMASK = GlConsts.GL_STENCIL_BACK_WRITEMASK, + GL_DRAW_FRAMEBUFFER_BINDING = GlConsts.GL_DRAW_FRAMEBUFFER_BINDING, + GL_RENDERBUFFER_BINDING = GlConsts.GL_RENDERBUFFER_BINDING, + GL_READ_FRAMEBUFFER_BINDING = GlConsts.GL_READ_FRAMEBUFFER_BINDING, + GL_MAX_ELEMENT_INDEX = GlConsts.GL_MAX_ELEMENT_INDEX, + GL_MAX_GEOMETRY_UNIFORM_COMPONENTS = GlConsts.GL_MAX_GEOMETRY_UNIFORM_COMPONENTS, + GL_NUM_SHADER_BINARY_FORMATS = GlConsts.GL_NUM_SHADER_BINARY_FORMATS, + GL_SHADER_COMPILER = GlConsts.GL_SHADER_COMPILER, + GL_MAX_VERTEX_UNIFORM_VECTORS = GlConsts.GL_MAX_VERTEX_UNIFORM_VECTORS, + GL_MAX_VARYING_VECTORS = GlConsts.GL_MAX_VARYING_VECTORS, + GL_MAX_FRAGMENT_UNIFORM_VECTORS = GlConsts.GL_MAX_FRAGMENT_UNIFORM_VECTORS, + GL_TIMESTAMP = GlConsts.GL_TIMESTAMP, + GL_PROVOKING_VERTEX = GlConsts.GL_PROVOKING_VERTEX, + GL_MAX_SAMPLE_MASK_WORDS = GlConsts.GL_MAX_SAMPLE_MASK_WORDS, + GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS = GlConsts.GL_MAX_TESS_CONTROL_UNIFORM_BLOCKS, + GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS = GlConsts.GL_MAX_TESS_EVALUATION_UNIFORM_BLOCKS, + GL_PRIMITIVE_RESTART_INDEX = GlConsts.GL_PRIMITIVE_RESTART_INDEX, + GL_MIN_MAP_BUFFER_ALIGNMENT = GlConsts.GL_MIN_MAP_BUFFER_ALIGNMENT, + GL_SHADER_STORAGE_BUFFER_BINDING = GlConsts.GL_SHADER_STORAGE_BUFFER_BINDING, + GL_SHADER_STORAGE_BUFFER_START = GlConsts.GL_SHADER_STORAGE_BUFFER_START, + GL_SHADER_STORAGE_BUFFER_SIZE = GlConsts.GL_SHADER_STORAGE_BUFFER_SIZE, + GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS = GlConsts.GL_MAX_VERTEX_SHADER_STORAGE_BLOCKS, + GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS = GlConsts.GL_MAX_GEOMETRY_SHADER_STORAGE_BLOCKS, + GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS = GlConsts.GL_MAX_TESS_CONTROL_SHADER_STORAGE_BLOCKS, + GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS = GlConsts.GL_MAX_TESS_EVALUATION_SHADER_STORAGE_BLOCKS, + GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS = GlConsts.GL_MAX_FRAGMENT_SHADER_STORAGE_BLOCKS, + GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS = GlConsts.GL_MAX_COMPUTE_SHADER_STORAGE_BLOCKS, + GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS = GlConsts.GL_MAX_COMBINED_SHADER_STORAGE_BLOCKS, + GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS = GlConsts.GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS, + GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT = GlConsts.GL_SHADER_STORAGE_BUFFER_OFFSET_ALIGNMENT, + GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS = GlConsts.GL_MAX_COMPUTE_WORK_GROUP_INVOCATIONS, + GL_DISPATCH_INDIRECT_BUFFER_BINDING = GlConsts.GL_DISPATCH_INDIRECT_BUFFER_BINDING, + GL_TEXTURE_BINDING_2D_MULTISAMPLE = GlConsts.GL_TEXTURE_BINDING_2D_MULTISAMPLE, + GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY = GlConsts.GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY, + GL_MAX_COLOR_TEXTURE_SAMPLES = GlConsts.GL_MAX_COLOR_TEXTURE_SAMPLES, + GL_MAX_DEPTH_TEXTURE_SAMPLES = GlConsts.GL_MAX_DEPTH_TEXTURE_SAMPLES, + GL_MAX_INTEGER_SAMPLES = GlConsts.GL_MAX_INTEGER_SAMPLES, + GL_MAX_SERVER_WAIT_TIMEOUT = GlConsts.GL_MAX_SERVER_WAIT_TIMEOUT, + GL_MAX_VERTEX_OUTPUT_COMPONENTS = GlConsts.GL_MAX_VERTEX_OUTPUT_COMPONENTS, + GL_MAX_GEOMETRY_INPUT_COMPONENTS = GlConsts.GL_MAX_GEOMETRY_INPUT_COMPONENTS, + GL_MAX_GEOMETRY_OUTPUT_COMPONENTS = GlConsts.GL_MAX_GEOMETRY_OUTPUT_COMPONENTS, + GL_MAX_FRAGMENT_INPUT_COMPONENTS = GlConsts.GL_MAX_FRAGMENT_INPUT_COMPONENTS, + GL_CONTEXT_PROFILE_MASK = GlConsts.GL_CONTEXT_PROFILE_MASK, + GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT = GlConsts.GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT, + GL_MAX_COMPUTE_UNIFORM_BLOCKS = GlConsts.GL_MAX_COMPUTE_UNIFORM_BLOCKS, + GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS = GlConsts.GL_MAX_COMPUTE_TEXTURE_IMAGE_UNITS, + GL_MAX_COMPUTE_WORK_GROUP_COUNT = GlConsts.GL_MAX_COMPUTE_WORK_GROUP_COUNT, + GL_MAX_COMPUTE_WORK_GROUP_SIZE = GlConsts.GL_MAX_COMPUTE_WORK_GROUP_SIZE, + GL_MAX_VERTEX_ATOMIC_COUNTERS = GlConsts.GL_MAX_VERTEX_ATOMIC_COUNTERS, + GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS = GlConsts.GL_MAX_TESS_CONTROL_ATOMIC_COUNTERS, + GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS = GlConsts.GL_MAX_TESS_EVALUATION_ATOMIC_COUNTERS, + GL_MAX_GEOMETRY_ATOMIC_COUNTERS = GlConsts.GL_MAX_GEOMETRY_ATOMIC_COUNTERS, + GL_MAX_FRAGMENT_ATOMIC_COUNTERS = GlConsts.GL_MAX_FRAGMENT_ATOMIC_COUNTERS, + GL_MAX_COMBINED_ATOMIC_COUNTERS = GlConsts.GL_MAX_COMBINED_ATOMIC_COUNTERS, + GL_MAX_FRAMEBUFFER_WIDTH = GlConsts.GL_MAX_FRAMEBUFFER_WIDTH, + GL_MAX_FRAMEBUFFER_HEIGHT = GlConsts.GL_MAX_FRAMEBUFFER_HEIGHT, + GL_MAX_FRAMEBUFFER_LAYERS = GlConsts.GL_MAX_FRAMEBUFFER_LAYERS, + GL_MAX_FRAMEBUFFER_SAMPLES = GlConsts.GL_MAX_FRAMEBUFFER_SAMPLES, + GL_NUM_DEVICE_UUIDS_EXT = GlConsts.GL_NUM_DEVICE_UUIDS_EXT, + GL_DEVICE_UUID_EXT = GlConsts.GL_DEVICE_UUID_EXT, + GL_DRIVER_UUID_EXT = GlConsts.GL_DRIVER_UUID_EXT, + GL_DEVICE_LUID_EXT = GlConsts.GL_DEVICE_LUID_EXT, + GL_DEVICE_NODE_MASK_EXT = GlConsts.GL_DEVICE_NODE_MASK_EXT, + GL_SHADING_RATE_QCOM = GlConsts.GL_SHADING_RATE_QCOM, + }; + + public enum VertexShaderTextureUnitParameter + { + GL_CURRENT_TEXTURE_COORDS = GlConsts.GL_CURRENT_TEXTURE_COORDS, + GL_TEXTURE_MATRIX = GlConsts.GL_TEXTURE_MATRIX, + }; + + public enum EnableCap + { + GL_POINT_SMOOTH = GlConsts.GL_POINT_SMOOTH, + GL_LINE_SMOOTH = GlConsts.GL_LINE_SMOOTH, + GL_LINE_STIPPLE = GlConsts.GL_LINE_STIPPLE, + GL_POLYGON_SMOOTH = GlConsts.GL_POLYGON_SMOOTH, + GL_POLYGON_STIPPLE = GlConsts.GL_POLYGON_STIPPLE, + GL_CULL_FACE = GlConsts.GL_CULL_FACE, + GL_LIGHTING = GlConsts.GL_LIGHTING, + GL_COLOR_MATERIAL = GlConsts.GL_COLOR_MATERIAL, + GL_FOG = GlConsts.GL_FOG, + GL_DEPTH_TEST = GlConsts.GL_DEPTH_TEST, + GL_STENCIL_TEST = GlConsts.GL_STENCIL_TEST, + GL_NORMALIZE = GlConsts.GL_NORMALIZE, + GL_ALPHA_TEST = GlConsts.GL_ALPHA_TEST, + GL_DITHER = GlConsts.GL_DITHER, + GL_BLEND = GlConsts.GL_BLEND, + GL_INDEX_LOGIC_OP = GlConsts.GL_INDEX_LOGIC_OP, + GL_COLOR_LOGIC_OP = GlConsts.GL_COLOR_LOGIC_OP, + GL_SCISSOR_TEST = GlConsts.GL_SCISSOR_TEST, + GL_TEXTURE_GEN_S = GlConsts.GL_TEXTURE_GEN_S, + GL_TEXTURE_GEN_T = GlConsts.GL_TEXTURE_GEN_T, + GL_TEXTURE_GEN_R = GlConsts.GL_TEXTURE_GEN_R, + GL_TEXTURE_GEN_Q = GlConsts.GL_TEXTURE_GEN_Q, + GL_AUTO_NORMAL = GlConsts.GL_AUTO_NORMAL, + GL_MAP1_COLOR_4 = GlConsts.GL_MAP1_COLOR_4, + GL_MAP1_INDEX = GlConsts.GL_MAP1_INDEX, + GL_MAP1_NORMAL = GlConsts.GL_MAP1_NORMAL, + GL_MAP1_TEXTURE_COORD_1 = GlConsts.GL_MAP1_TEXTURE_COORD_1, + GL_MAP1_TEXTURE_COORD_2 = GlConsts.GL_MAP1_TEXTURE_COORD_2, + GL_MAP1_TEXTURE_COORD_3 = GlConsts.GL_MAP1_TEXTURE_COORD_3, + GL_MAP1_TEXTURE_COORD_4 = GlConsts.GL_MAP1_TEXTURE_COORD_4, + GL_MAP1_VERTEX_3 = GlConsts.GL_MAP1_VERTEX_3, + GL_MAP1_VERTEX_4 = GlConsts.GL_MAP1_VERTEX_4, + GL_MAP2_COLOR_4 = GlConsts.GL_MAP2_COLOR_4, + GL_MAP2_INDEX = GlConsts.GL_MAP2_INDEX, + GL_MAP2_NORMAL = GlConsts.GL_MAP2_NORMAL, + GL_MAP2_TEXTURE_COORD_1 = GlConsts.GL_MAP2_TEXTURE_COORD_1, + GL_MAP2_TEXTURE_COORD_2 = GlConsts.GL_MAP2_TEXTURE_COORD_2, + GL_MAP2_TEXTURE_COORD_3 = GlConsts.GL_MAP2_TEXTURE_COORD_3, + GL_MAP2_TEXTURE_COORD_4 = GlConsts.GL_MAP2_TEXTURE_COORD_4, + GL_MAP2_VERTEX_3 = GlConsts.GL_MAP2_VERTEX_3, + GL_MAP2_VERTEX_4 = GlConsts.GL_MAP2_VERTEX_4, + GL_TEXTURE_1D = GlConsts.GL_TEXTURE_1D, + GL_TEXTURE_2D = GlConsts.GL_TEXTURE_2D, + GL_POLYGON_OFFSET_POINT = GlConsts.GL_POLYGON_OFFSET_POINT, + GL_POLYGON_OFFSET_LINE = GlConsts.GL_POLYGON_OFFSET_LINE, + GL_CLIP_PLANE0 = GlConsts.GL_CLIP_PLANE0, + GL_CLIP_DISTANCE0 = GlConsts.GL_CLIP_DISTANCE0, + GL_CLIP_PLANE1 = GlConsts.GL_CLIP_PLANE1, + GL_CLIP_DISTANCE1 = GlConsts.GL_CLIP_DISTANCE1, + GL_CLIP_PLANE2 = GlConsts.GL_CLIP_PLANE2, + GL_CLIP_DISTANCE2 = GlConsts.GL_CLIP_DISTANCE2, + GL_CLIP_PLANE3 = GlConsts.GL_CLIP_PLANE3, + GL_CLIP_DISTANCE3 = GlConsts.GL_CLIP_DISTANCE3, + GL_CLIP_PLANE4 = GlConsts.GL_CLIP_PLANE4, + GL_CLIP_DISTANCE4 = GlConsts.GL_CLIP_DISTANCE4, + GL_CLIP_PLANE5 = GlConsts.GL_CLIP_PLANE5, + GL_CLIP_DISTANCE5 = GlConsts.GL_CLIP_DISTANCE5, + GL_CLIP_DISTANCE6 = GlConsts.GL_CLIP_DISTANCE6, + GL_CLIP_DISTANCE7 = GlConsts.GL_CLIP_DISTANCE7, + GL_LIGHT0 = GlConsts.GL_LIGHT0, + GL_LIGHT1 = GlConsts.GL_LIGHT1, + GL_LIGHT2 = GlConsts.GL_LIGHT2, + GL_LIGHT3 = GlConsts.GL_LIGHT3, + GL_LIGHT4 = GlConsts.GL_LIGHT4, + GL_LIGHT5 = GlConsts.GL_LIGHT5, + GL_LIGHT6 = GlConsts.GL_LIGHT6, + GL_LIGHT7 = GlConsts.GL_LIGHT7, + GL_CONVOLUTION_1D_EXT = GlConsts.GL_CONVOLUTION_1D_EXT, + GL_CONVOLUTION_2D_EXT = GlConsts.GL_CONVOLUTION_2D_EXT, + GL_SEPARABLE_2D_EXT = GlConsts.GL_SEPARABLE_2D_EXT, + GL_HISTOGRAM_EXT = GlConsts.GL_HISTOGRAM_EXT, + GL_MINMAX_EXT = GlConsts.GL_MINMAX_EXT, + GL_POLYGON_OFFSET_FILL = GlConsts.GL_POLYGON_OFFSET_FILL, + GL_RESCALE_NORMAL_EXT = GlConsts.GL_RESCALE_NORMAL_EXT, + GL_TEXTURE_3D_EXT = GlConsts.GL_TEXTURE_3D_EXT, + GL_VERTEX_ARRAY = GlConsts.GL_VERTEX_ARRAY, + GL_NORMAL_ARRAY = GlConsts.GL_NORMAL_ARRAY, + GL_COLOR_ARRAY = GlConsts.GL_COLOR_ARRAY, + GL_INDEX_ARRAY = GlConsts.GL_INDEX_ARRAY, + GL_TEXTURE_COORD_ARRAY = GlConsts.GL_TEXTURE_COORD_ARRAY, + GL_EDGE_FLAG_ARRAY = GlConsts.GL_EDGE_FLAG_ARRAY, + GL_INTERLACE_SGIX = GlConsts.GL_INTERLACE_SGIX, + GL_MULTISAMPLE = GlConsts.GL_MULTISAMPLE, + GL_MULTISAMPLE_SGIS = GlConsts.GL_MULTISAMPLE_SGIS, + GL_SAMPLE_ALPHA_TO_COVERAGE = GlConsts.GL_SAMPLE_ALPHA_TO_COVERAGE, + GL_SAMPLE_ALPHA_TO_MASK_SGIS = GlConsts.GL_SAMPLE_ALPHA_TO_MASK_SGIS, + GL_SAMPLE_ALPHA_TO_ONE = GlConsts.GL_SAMPLE_ALPHA_TO_ONE, + GL_SAMPLE_ALPHA_TO_ONE_SGIS = GlConsts.GL_SAMPLE_ALPHA_TO_ONE_SGIS, + GL_SAMPLE_COVERAGE = GlConsts.GL_SAMPLE_COVERAGE, + GL_SAMPLE_MASK_SGIS = GlConsts.GL_SAMPLE_MASK_SGIS, + GL_TEXTURE_COLOR_TABLE_SGI = GlConsts.GL_TEXTURE_COLOR_TABLE_SGI, + GL_COLOR_TABLE_SGI = GlConsts.GL_COLOR_TABLE_SGI, + GL_POST_CONVOLUTION_COLOR_TABLE_SGI = GlConsts.GL_POST_CONVOLUTION_COLOR_TABLE_SGI, + GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI = GlConsts.GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI, + GL_TEXTURE_4D_SGIS = GlConsts.GL_TEXTURE_4D_SGIS, + GL_PIXEL_TEX_GEN_SGIX = GlConsts.GL_PIXEL_TEX_GEN_SGIX, + GL_SPRITE_SGIX = GlConsts.GL_SPRITE_SGIX, + GL_REFERENCE_PLANE_SGIX = GlConsts.GL_REFERENCE_PLANE_SGIX, + GL_IR_INSTRUMENT1_SGIX = GlConsts.GL_IR_INSTRUMENT1_SGIX, + GL_CALLIGRAPHIC_FRAGMENT_SGIX = GlConsts.GL_CALLIGRAPHIC_FRAGMENT_SGIX, + GL_FRAMEZOOM_SGIX = GlConsts.GL_FRAMEZOOM_SGIX, + GL_FOG_OFFSET_SGIX = GlConsts.GL_FOG_OFFSET_SGIX, + GL_SHARED_TEXTURE_PALETTE_EXT = GlConsts.GL_SHARED_TEXTURE_PALETTE_EXT, + GL_DEBUG_OUTPUT_SYNCHRONOUS = GlConsts.GL_DEBUG_OUTPUT_SYNCHRONOUS, + GL_ASYNC_HISTOGRAM_SGIX = GlConsts.GL_ASYNC_HISTOGRAM_SGIX, + GL_PIXEL_TEXTURE_SGIS = GlConsts.GL_PIXEL_TEXTURE_SGIS, + GL_ASYNC_TEX_IMAGE_SGIX = GlConsts.GL_ASYNC_TEX_IMAGE_SGIX, + GL_ASYNC_DRAW_PIXELS_SGIX = GlConsts.GL_ASYNC_DRAW_PIXELS_SGIX, + GL_ASYNC_READ_PIXELS_SGIX = GlConsts.GL_ASYNC_READ_PIXELS_SGIX, + GL_FRAGMENT_LIGHTING_SGIX = GlConsts.GL_FRAGMENT_LIGHTING_SGIX, + GL_FRAGMENT_COLOR_MATERIAL_SGIX = GlConsts.GL_FRAGMENT_COLOR_MATERIAL_SGIX, + GL_FRAGMENT_LIGHT0_SGIX = GlConsts.GL_FRAGMENT_LIGHT0_SGIX, + GL_FRAGMENT_LIGHT1_SGIX = GlConsts.GL_FRAGMENT_LIGHT1_SGIX, + GL_FRAGMENT_LIGHT2_SGIX = GlConsts.GL_FRAGMENT_LIGHT2_SGIX, + GL_FRAGMENT_LIGHT3_SGIX = GlConsts.GL_FRAGMENT_LIGHT3_SGIX, + GL_FRAGMENT_LIGHT4_SGIX = GlConsts.GL_FRAGMENT_LIGHT4_SGIX, + GL_FRAGMENT_LIGHT5_SGIX = GlConsts.GL_FRAGMENT_LIGHT5_SGIX, + GL_FRAGMENT_LIGHT6_SGIX = GlConsts.GL_FRAGMENT_LIGHT6_SGIX, + GL_FRAGMENT_LIGHT7_SGIX = GlConsts.GL_FRAGMENT_LIGHT7_SGIX, + GL_PROGRAM_POINT_SIZE = GlConsts.GL_PROGRAM_POINT_SIZE, + GL_DEPTH_CLAMP = GlConsts.GL_DEPTH_CLAMP, + GL_TEXTURE_CUBE_MAP_SEAMLESS = GlConsts.GL_TEXTURE_CUBE_MAP_SEAMLESS, + GL_SAMPLE_SHADING = GlConsts.GL_SAMPLE_SHADING, + GL_RASTERIZER_DISCARD = GlConsts.GL_RASTERIZER_DISCARD, + GL_PRIMITIVE_RESTART_FIXED_INDEX = GlConsts.GL_PRIMITIVE_RESTART_FIXED_INDEX, + GL_FRAMEBUFFER_SRGB = GlConsts.GL_FRAMEBUFFER_SRGB, + GL_SAMPLE_MASK = GlConsts.GL_SAMPLE_MASK, + GL_PRIMITIVE_RESTART = GlConsts.GL_PRIMITIVE_RESTART, + GL_DEBUG_OUTPUT = GlConsts.GL_DEBUG_OUTPUT, + GL_SHADING_RATE_PRESERVE_ASPECT_RATIO_QCOM = GlConsts.GL_SHADING_RATE_PRESERVE_ASPECT_RATIO_QCOM, + }; + + public enum LightModelParameter + { + GL_LIGHT_MODEL_LOCAL_VIEWER = GlConsts.GL_LIGHT_MODEL_LOCAL_VIEWER, + GL_LIGHT_MODEL_TWO_SIDE = GlConsts.GL_LIGHT_MODEL_TWO_SIDE, + GL_LIGHT_MODEL_AMBIENT = GlConsts.GL_LIGHT_MODEL_AMBIENT, + GL_LIGHT_MODEL_COLOR_CONTROL = GlConsts.GL_LIGHT_MODEL_COLOR_CONTROL, + GL_LIGHT_MODEL_COLOR_CONTROL_EXT = GlConsts.GL_LIGHT_MODEL_COLOR_CONTROL_EXT, + }; + + public enum FogPName + { + GL_FOG_INDEX = GlConsts.GL_FOG_INDEX, + GL_FOG_DENSITY = GlConsts.GL_FOG_DENSITY, + GL_FOG_START = GlConsts.GL_FOG_START, + GL_FOG_END = GlConsts.GL_FOG_END, + GL_FOG_MODE = GlConsts.GL_FOG_MODE, + GL_FOG_COORD_SRC = GlConsts.GL_FOG_COORD_SRC, + }; + + public enum FogParameter + { + GL_FOG_INDEX = GlConsts.GL_FOG_INDEX, + GL_FOG_DENSITY = GlConsts.GL_FOG_DENSITY, + GL_FOG_START = GlConsts.GL_FOG_START, + GL_FOG_END = GlConsts.GL_FOG_END, + GL_FOG_MODE = GlConsts.GL_FOG_MODE, + GL_FOG_COLOR = GlConsts.GL_FOG_COLOR, + GL_FOG_OFFSET_VALUE_SGIX = GlConsts.GL_FOG_OFFSET_VALUE_SGIX, + }; + + public enum GetFramebufferParameter + { + GL_DOUBLEBUFFER = GlConsts.GL_DOUBLEBUFFER, + GL_STEREO = GlConsts.GL_STEREO, + GL_SAMPLE_BUFFERS = GlConsts.GL_SAMPLE_BUFFERS, + GL_SAMPLES = GlConsts.GL_SAMPLES, + GL_IMPLEMENTATION_COLOR_READ_TYPE = GlConsts.GL_IMPLEMENTATION_COLOR_READ_TYPE, + GL_IMPLEMENTATION_COLOR_READ_FORMAT = GlConsts.GL_IMPLEMENTATION_COLOR_READ_FORMAT, + GL_FRAMEBUFFER_DEFAULT_WIDTH = GlConsts.GL_FRAMEBUFFER_DEFAULT_WIDTH, + GL_FRAMEBUFFER_DEFAULT_HEIGHT = GlConsts.GL_FRAMEBUFFER_DEFAULT_HEIGHT, + GL_FRAMEBUFFER_DEFAULT_LAYERS = GlConsts.GL_FRAMEBUFFER_DEFAULT_LAYERS, + GL_FRAMEBUFFER_DEFAULT_SAMPLES = GlConsts.GL_FRAMEBUFFER_DEFAULT_SAMPLES, + GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS = GlConsts.GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS, + }; + + public enum HintTarget + { + GL_PERSPECTIVE_CORRECTION_HINT = GlConsts.GL_PERSPECTIVE_CORRECTION_HINT, + GL_POINT_SMOOTH_HINT = GlConsts.GL_POINT_SMOOTH_HINT, + GL_LINE_SMOOTH_HINT = GlConsts.GL_LINE_SMOOTH_HINT, + GL_POLYGON_SMOOTH_HINT = GlConsts.GL_POLYGON_SMOOTH_HINT, + GL_FOG_HINT = GlConsts.GL_FOG_HINT, + GL_PACK_CMYK_HINT_EXT = GlConsts.GL_PACK_CMYK_HINT_EXT, + GL_UNPACK_CMYK_HINT_EXT = GlConsts.GL_UNPACK_CMYK_HINT_EXT, + GL_PHONG_HINT_WIN = GlConsts.GL_PHONG_HINT_WIN, + GL_CLIP_VOLUME_CLIPPING_HINT_EXT = GlConsts.GL_CLIP_VOLUME_CLIPPING_HINT_EXT, + GL_TEXTURE_MULTI_BUFFER_HINT_SGIX = GlConsts.GL_TEXTURE_MULTI_BUFFER_HINT_SGIX, + GL_GENERATE_MIPMAP_HINT = GlConsts.GL_GENERATE_MIPMAP_HINT, + GL_GENERATE_MIPMAP_HINT_SGIS = GlConsts.GL_GENERATE_MIPMAP_HINT_SGIS, + GL_PROGRAM_BINARY_RETRIEVABLE_HINT = GlConsts.GL_PROGRAM_BINARY_RETRIEVABLE_HINT, + GL_CONVOLUTION_HINT_SGIX = GlConsts.GL_CONVOLUTION_HINT_SGIX, + GL_SCALEBIAS_HINT_SGIX = GlConsts.GL_SCALEBIAS_HINT_SGIX, + GL_LINE_QUALITY_HINT_SGIX = GlConsts.GL_LINE_QUALITY_HINT_SGIX, + GL_VERTEX_PRECLIP_SGIX = GlConsts.GL_VERTEX_PRECLIP_SGIX, + GL_VERTEX_PRECLIP_HINT_SGIX = GlConsts.GL_VERTEX_PRECLIP_HINT_SGIX, + GL_TEXTURE_COMPRESSION_HINT = GlConsts.GL_TEXTURE_COMPRESSION_HINT, + GL_TEXTURE_COMPRESSION_HINT_ARB = GlConsts.GL_TEXTURE_COMPRESSION_HINT_ARB, + GL_VERTEX_ARRAY_STORAGE_HINT_APPLE = GlConsts.GL_VERTEX_ARRAY_STORAGE_HINT_APPLE, + GL_MULTISAMPLE_FILTER_HINT_NV = GlConsts.GL_MULTISAMPLE_FILTER_HINT_NV, + GL_TRANSFORM_HINT_APPLE = GlConsts.GL_TRANSFORM_HINT_APPLE, + GL_TEXTURE_STORAGE_HINT_APPLE = GlConsts.GL_TEXTURE_STORAGE_HINT_APPLE, + GL_FRAGMENT_SHADER_DERIVATIVE_HINT = GlConsts.GL_FRAGMENT_SHADER_DERIVATIVE_HINT, + GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB = GlConsts.GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB, + GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES = GlConsts.GL_FRAGMENT_SHADER_DERIVATIVE_HINT_OES, + GL_BINNING_CONTROL_HINT_QCOM = GlConsts.GL_BINNING_CONTROL_HINT_QCOM, + GL_PREFER_DOUBLEBUFFER_HINT_PGI = GlConsts.GL_PREFER_DOUBLEBUFFER_HINT_PGI, + GL_CONSERVE_MEMORY_HINT_PGI = GlConsts.GL_CONSERVE_MEMORY_HINT_PGI, + GL_RECLAIM_MEMORY_HINT_PGI = GlConsts.GL_RECLAIM_MEMORY_HINT_PGI, + GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI = GlConsts.GL_NATIVE_GRAPHICS_BEGIN_HINT_PGI, + GL_NATIVE_GRAPHICS_END_HINT_PGI = GlConsts.GL_NATIVE_GRAPHICS_END_HINT_PGI, + GL_ALWAYS_FAST_HINT_PGI = GlConsts.GL_ALWAYS_FAST_HINT_PGI, + GL_ALWAYS_SOFT_HINT_PGI = GlConsts.GL_ALWAYS_SOFT_HINT_PGI, + GL_ALLOW_DRAW_OBJ_HINT_PGI = GlConsts.GL_ALLOW_DRAW_OBJ_HINT_PGI, + GL_ALLOW_DRAW_WIN_HINT_PGI = GlConsts.GL_ALLOW_DRAW_WIN_HINT_PGI, + GL_ALLOW_DRAW_FRG_HINT_PGI = GlConsts.GL_ALLOW_DRAW_FRG_HINT_PGI, + GL_ALLOW_DRAW_MEM_HINT_PGI = GlConsts.GL_ALLOW_DRAW_MEM_HINT_PGI, + GL_STRICT_DEPTHFUNC_HINT_PGI = GlConsts.GL_STRICT_DEPTHFUNC_HINT_PGI, + GL_STRICT_LIGHTING_HINT_PGI = GlConsts.GL_STRICT_LIGHTING_HINT_PGI, + GL_STRICT_SCISSOR_HINT_PGI = GlConsts.GL_STRICT_SCISSOR_HINT_PGI, + GL_FULL_STIPPLE_HINT_PGI = GlConsts.GL_FULL_STIPPLE_HINT_PGI, + GL_CLIP_NEAR_HINT_PGI = GlConsts.GL_CLIP_NEAR_HINT_PGI, + GL_CLIP_FAR_HINT_PGI = GlConsts.GL_CLIP_FAR_HINT_PGI, + GL_WIDE_LINE_HINT_PGI = GlConsts.GL_WIDE_LINE_HINT_PGI, + GL_BACK_NORMALS_HINT_PGI = GlConsts.GL_BACK_NORMALS_HINT_PGI, + GL_VERTEX_DATA_HINT_PGI = GlConsts.GL_VERTEX_DATA_HINT_PGI, + GL_VERTEX_CONSISTENT_HINT_PGI = GlConsts.GL_VERTEX_CONSISTENT_HINT_PGI, + GL_MATERIAL_SIDE_HINT_PGI = GlConsts.GL_MATERIAL_SIDE_HINT_PGI, + GL_MAX_VERTEX_HINT_PGI = GlConsts.GL_MAX_VERTEX_HINT_PGI, + }; + + public enum PixelMap + { + GL_PIXEL_MAP_I_TO_I = GlConsts.GL_PIXEL_MAP_I_TO_I, + GL_PIXEL_MAP_S_TO_S = GlConsts.GL_PIXEL_MAP_S_TO_S, + GL_PIXEL_MAP_I_TO_R = GlConsts.GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G = GlConsts.GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B = GlConsts.GL_PIXEL_MAP_I_TO_B, + GL_PIXEL_MAP_I_TO_A = GlConsts.GL_PIXEL_MAP_I_TO_A, + GL_PIXEL_MAP_R_TO_R = GlConsts.GL_PIXEL_MAP_R_TO_R, + GL_PIXEL_MAP_G_TO_G = GlConsts.GL_PIXEL_MAP_G_TO_G, + GL_PIXEL_MAP_B_TO_B = GlConsts.GL_PIXEL_MAP_B_TO_B, + GL_PIXEL_MAP_A_TO_A = GlConsts.GL_PIXEL_MAP_A_TO_A, + }; + + public enum GetPixelMap + { + GL_PIXEL_MAP_I_TO_I = GlConsts.GL_PIXEL_MAP_I_TO_I, + GL_PIXEL_MAP_S_TO_S = GlConsts.GL_PIXEL_MAP_S_TO_S, + GL_PIXEL_MAP_I_TO_R = GlConsts.GL_PIXEL_MAP_I_TO_R, + GL_PIXEL_MAP_I_TO_G = GlConsts.GL_PIXEL_MAP_I_TO_G, + GL_PIXEL_MAP_I_TO_B = GlConsts.GL_PIXEL_MAP_I_TO_B, + GL_PIXEL_MAP_I_TO_A = GlConsts.GL_PIXEL_MAP_I_TO_A, + GL_PIXEL_MAP_R_TO_R = GlConsts.GL_PIXEL_MAP_R_TO_R, + GL_PIXEL_MAP_G_TO_G = GlConsts.GL_PIXEL_MAP_G_TO_G, + GL_PIXEL_MAP_B_TO_B = GlConsts.GL_PIXEL_MAP_B_TO_B, + GL_PIXEL_MAP_A_TO_A = GlConsts.GL_PIXEL_MAP_A_TO_A, + }; + + public enum PixelStoreParameter + { + GL_UNPACK_SWAP_BYTES = GlConsts.GL_UNPACK_SWAP_BYTES, + GL_UNPACK_LSB_FIRST = GlConsts.GL_UNPACK_LSB_FIRST, + GL_UNPACK_ROW_LENGTH = GlConsts.GL_UNPACK_ROW_LENGTH, + GL_UNPACK_ROW_LENGTH_EXT = GlConsts.GL_UNPACK_ROW_LENGTH_EXT, + GL_UNPACK_SKIP_ROWS = GlConsts.GL_UNPACK_SKIP_ROWS, + GL_UNPACK_SKIP_ROWS_EXT = GlConsts.GL_UNPACK_SKIP_ROWS_EXT, + GL_UNPACK_SKIP_PIXELS = GlConsts.GL_UNPACK_SKIP_PIXELS, + GL_UNPACK_SKIP_PIXELS_EXT = GlConsts.GL_UNPACK_SKIP_PIXELS_EXT, + GL_UNPACK_ALIGNMENT = GlConsts.GL_UNPACK_ALIGNMENT, + GL_PACK_SWAP_BYTES = GlConsts.GL_PACK_SWAP_BYTES, + GL_PACK_LSB_FIRST = GlConsts.GL_PACK_LSB_FIRST, + GL_PACK_ROW_LENGTH = GlConsts.GL_PACK_ROW_LENGTH, + GL_PACK_SKIP_ROWS = GlConsts.GL_PACK_SKIP_ROWS, + GL_PACK_SKIP_PIXELS = GlConsts.GL_PACK_SKIP_PIXELS, + GL_PACK_ALIGNMENT = GlConsts.GL_PACK_ALIGNMENT, + GL_PACK_SKIP_IMAGES = GlConsts.GL_PACK_SKIP_IMAGES, + GL_PACK_SKIP_IMAGES_EXT = GlConsts.GL_PACK_SKIP_IMAGES_EXT, + GL_PACK_IMAGE_HEIGHT = GlConsts.GL_PACK_IMAGE_HEIGHT, + GL_PACK_IMAGE_HEIGHT_EXT = GlConsts.GL_PACK_IMAGE_HEIGHT_EXT, + GL_UNPACK_SKIP_IMAGES = GlConsts.GL_UNPACK_SKIP_IMAGES, + GL_UNPACK_SKIP_IMAGES_EXT = GlConsts.GL_UNPACK_SKIP_IMAGES_EXT, + GL_UNPACK_IMAGE_HEIGHT = GlConsts.GL_UNPACK_IMAGE_HEIGHT, + GL_UNPACK_IMAGE_HEIGHT_EXT = GlConsts.GL_UNPACK_IMAGE_HEIGHT_EXT, + GL_PACK_SKIP_VOLUMES_SGIS = GlConsts.GL_PACK_SKIP_VOLUMES_SGIS, + GL_PACK_IMAGE_DEPTH_SGIS = GlConsts.GL_PACK_IMAGE_DEPTH_SGIS, + GL_UNPACK_SKIP_VOLUMES_SGIS = GlConsts.GL_UNPACK_SKIP_VOLUMES_SGIS, + GL_UNPACK_IMAGE_DEPTH_SGIS = GlConsts.GL_UNPACK_IMAGE_DEPTH_SGIS, + GL_PIXEL_TILE_WIDTH_SGIX = GlConsts.GL_PIXEL_TILE_WIDTH_SGIX, + GL_PIXEL_TILE_HEIGHT_SGIX = GlConsts.GL_PIXEL_TILE_HEIGHT_SGIX, + GL_PIXEL_TILE_GRID_WIDTH_SGIX = GlConsts.GL_PIXEL_TILE_GRID_WIDTH_SGIX, + GL_PIXEL_TILE_GRID_HEIGHT_SGIX = GlConsts.GL_PIXEL_TILE_GRID_HEIGHT_SGIX, + GL_PIXEL_TILE_GRID_DEPTH_SGIX = GlConsts.GL_PIXEL_TILE_GRID_DEPTH_SGIX, + GL_PIXEL_TILE_CACHE_SIZE_SGIX = GlConsts.GL_PIXEL_TILE_CACHE_SIZE_SGIX, + GL_PACK_RESAMPLE_SGIX = GlConsts.GL_PACK_RESAMPLE_SGIX, + GL_UNPACK_RESAMPLE_SGIX = GlConsts.GL_UNPACK_RESAMPLE_SGIX, + GL_PACK_SUBSAMPLE_RATE_SGIX = GlConsts.GL_PACK_SUBSAMPLE_RATE_SGIX, + GL_UNPACK_SUBSAMPLE_RATE_SGIX = GlConsts.GL_UNPACK_SUBSAMPLE_RATE_SGIX, + GL_PACK_RESAMPLE_OML = GlConsts.GL_PACK_RESAMPLE_OML, + GL_UNPACK_RESAMPLE_OML = GlConsts.GL_UNPACK_RESAMPLE_OML, + }; + + public enum PixelTransferParameter + { + GL_MAP_COLOR = GlConsts.GL_MAP_COLOR, + GL_MAP_STENCIL = GlConsts.GL_MAP_STENCIL, + GL_INDEX_SHIFT = GlConsts.GL_INDEX_SHIFT, + GL_INDEX_OFFSET = GlConsts.GL_INDEX_OFFSET, + GL_RED_SCALE = GlConsts.GL_RED_SCALE, + GL_RED_BIAS = GlConsts.GL_RED_BIAS, + GL_GREEN_SCALE = GlConsts.GL_GREEN_SCALE, + GL_GREEN_BIAS = GlConsts.GL_GREEN_BIAS, + GL_BLUE_SCALE = GlConsts.GL_BLUE_SCALE, + GL_BLUE_BIAS = GlConsts.GL_BLUE_BIAS, + GL_ALPHA_SCALE = GlConsts.GL_ALPHA_SCALE, + GL_ALPHA_BIAS = GlConsts.GL_ALPHA_BIAS, + GL_DEPTH_SCALE = GlConsts.GL_DEPTH_SCALE, + GL_DEPTH_BIAS = GlConsts.GL_DEPTH_BIAS, + GL_POST_CONVOLUTION_RED_SCALE = GlConsts.GL_POST_CONVOLUTION_RED_SCALE, + GL_POST_CONVOLUTION_RED_SCALE_EXT = GlConsts.GL_POST_CONVOLUTION_RED_SCALE_EXT, + GL_POST_CONVOLUTION_GREEN_SCALE = GlConsts.GL_POST_CONVOLUTION_GREEN_SCALE, + GL_POST_CONVOLUTION_GREEN_SCALE_EXT = GlConsts.GL_POST_CONVOLUTION_GREEN_SCALE_EXT, + GL_POST_CONVOLUTION_BLUE_SCALE = GlConsts.GL_POST_CONVOLUTION_BLUE_SCALE, + GL_POST_CONVOLUTION_BLUE_SCALE_EXT = GlConsts.GL_POST_CONVOLUTION_BLUE_SCALE_EXT, + GL_POST_CONVOLUTION_ALPHA_SCALE = GlConsts.GL_POST_CONVOLUTION_ALPHA_SCALE, + GL_POST_CONVOLUTION_ALPHA_SCALE_EXT = GlConsts.GL_POST_CONVOLUTION_ALPHA_SCALE_EXT, + GL_POST_CONVOLUTION_RED_BIAS = GlConsts.GL_POST_CONVOLUTION_RED_BIAS, + GL_POST_CONVOLUTION_RED_BIAS_EXT = GlConsts.GL_POST_CONVOLUTION_RED_BIAS_EXT, + GL_POST_CONVOLUTION_GREEN_BIAS = GlConsts.GL_POST_CONVOLUTION_GREEN_BIAS, + GL_POST_CONVOLUTION_GREEN_BIAS_EXT = GlConsts.GL_POST_CONVOLUTION_GREEN_BIAS_EXT, + GL_POST_CONVOLUTION_BLUE_BIAS = GlConsts.GL_POST_CONVOLUTION_BLUE_BIAS, + GL_POST_CONVOLUTION_BLUE_BIAS_EXT = GlConsts.GL_POST_CONVOLUTION_BLUE_BIAS_EXT, + GL_POST_CONVOLUTION_ALPHA_BIAS = GlConsts.GL_POST_CONVOLUTION_ALPHA_BIAS, + GL_POST_CONVOLUTION_ALPHA_BIAS_EXT = GlConsts.GL_POST_CONVOLUTION_ALPHA_BIAS_EXT, + GL_POST_COLOR_MATRIX_RED_SCALE = GlConsts.GL_POST_COLOR_MATRIX_RED_SCALE, + GL_POST_COLOR_MATRIX_RED_SCALE_SGI = GlConsts.GL_POST_COLOR_MATRIX_RED_SCALE_SGI, + GL_POST_COLOR_MATRIX_GREEN_SCALE = GlConsts.GL_POST_COLOR_MATRIX_GREEN_SCALE, + GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI = GlConsts.GL_POST_COLOR_MATRIX_GREEN_SCALE_SGI, + GL_POST_COLOR_MATRIX_BLUE_SCALE = GlConsts.GL_POST_COLOR_MATRIX_BLUE_SCALE, + GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI = GlConsts.GL_POST_COLOR_MATRIX_BLUE_SCALE_SGI, + GL_POST_COLOR_MATRIX_ALPHA_SCALE = GlConsts.GL_POST_COLOR_MATRIX_ALPHA_SCALE, + GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI = GlConsts.GL_POST_COLOR_MATRIX_ALPHA_SCALE_SGI, + GL_POST_COLOR_MATRIX_RED_BIAS = GlConsts.GL_POST_COLOR_MATRIX_RED_BIAS, + GL_POST_COLOR_MATRIX_RED_BIAS_SGI = GlConsts.GL_POST_COLOR_MATRIX_RED_BIAS_SGI, + GL_POST_COLOR_MATRIX_GREEN_BIAS = GlConsts.GL_POST_COLOR_MATRIX_GREEN_BIAS, + GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI = GlConsts.GL_POST_COLOR_MATRIX_GREEN_BIAS_SGI, + GL_POST_COLOR_MATRIX_BLUE_BIAS = GlConsts.GL_POST_COLOR_MATRIX_BLUE_BIAS, + GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI = GlConsts.GL_POST_COLOR_MATRIX_BLUE_BIAS_SGI, + GL_POST_COLOR_MATRIX_ALPHA_BIAS = GlConsts.GL_POST_COLOR_MATRIX_ALPHA_BIAS, + GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI = GlConsts.GL_POST_COLOR_MATRIX_ALPHA_BIAS_SGI, + }; + + public enum IndexMaterialParameterEXT + { + GL_INDEX_OFFSET = GlConsts.GL_INDEX_OFFSET, + }; + + public enum MapTarget + { + GL_MAP1_COLOR_4 = GlConsts.GL_MAP1_COLOR_4, + GL_MAP1_INDEX = GlConsts.GL_MAP1_INDEX, + GL_MAP1_NORMAL = GlConsts.GL_MAP1_NORMAL, + GL_MAP1_TEXTURE_COORD_1 = GlConsts.GL_MAP1_TEXTURE_COORD_1, + GL_MAP1_TEXTURE_COORD_2 = GlConsts.GL_MAP1_TEXTURE_COORD_2, + GL_MAP1_TEXTURE_COORD_3 = GlConsts.GL_MAP1_TEXTURE_COORD_3, + GL_MAP1_TEXTURE_COORD_4 = GlConsts.GL_MAP1_TEXTURE_COORD_4, + GL_MAP1_VERTEX_3 = GlConsts.GL_MAP1_VERTEX_3, + GL_MAP1_VERTEX_4 = GlConsts.GL_MAP1_VERTEX_4, + GL_MAP2_COLOR_4 = GlConsts.GL_MAP2_COLOR_4, + GL_MAP2_INDEX = GlConsts.GL_MAP2_INDEX, + GL_MAP2_NORMAL = GlConsts.GL_MAP2_NORMAL, + GL_MAP2_TEXTURE_COORD_1 = GlConsts.GL_MAP2_TEXTURE_COORD_1, + GL_MAP2_TEXTURE_COORD_2 = GlConsts.GL_MAP2_TEXTURE_COORD_2, + GL_MAP2_TEXTURE_COORD_3 = GlConsts.GL_MAP2_TEXTURE_COORD_3, + GL_MAP2_TEXTURE_COORD_4 = GlConsts.GL_MAP2_TEXTURE_COORD_4, + GL_MAP2_VERTEX_3 = GlConsts.GL_MAP2_VERTEX_3, + GL_MAP2_VERTEX_4 = GlConsts.GL_MAP2_VERTEX_4, + GL_GEOMETRY_DEFORMATION_SGIX = GlConsts.GL_GEOMETRY_DEFORMATION_SGIX, + GL_TEXTURE_DEFORMATION_SGIX = GlConsts.GL_TEXTURE_DEFORMATION_SGIX, + }; + + public enum CopyImageSubDataTarget + { + GL_TEXTURE_1D = GlConsts.GL_TEXTURE_1D, + GL_TEXTURE_2D = GlConsts.GL_TEXTURE_2D, + GL_TEXTURE_3D = GlConsts.GL_TEXTURE_3D, + GL_TEXTURE_RECTANGLE = GlConsts.GL_TEXTURE_RECTANGLE, + GL_TEXTURE_CUBE_MAP = GlConsts.GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_1D_ARRAY = GlConsts.GL_TEXTURE_1D_ARRAY, + GL_TEXTURE_2D_ARRAY = GlConsts.GL_TEXTURE_2D_ARRAY, + GL_RENDERBUFFER = GlConsts.GL_RENDERBUFFER, + GL_TEXTURE_CUBE_MAP_ARRAY = GlConsts.GL_TEXTURE_CUBE_MAP_ARRAY, + GL_TEXTURE_2D_MULTISAMPLE = GlConsts.GL_TEXTURE_2D_MULTISAMPLE, + GL_TEXTURE_2D_MULTISAMPLE_ARRAY = GlConsts.GL_TEXTURE_2D_MULTISAMPLE_ARRAY, + }; + + public enum TextureTarget + { + GL_TEXTURE_1D = GlConsts.GL_TEXTURE_1D, + GL_TEXTURE_2D = GlConsts.GL_TEXTURE_2D, + GL_PROXY_TEXTURE_1D = GlConsts.GL_PROXY_TEXTURE_1D, + GL_PROXY_TEXTURE_1D_EXT = GlConsts.GL_PROXY_TEXTURE_1D_EXT, + GL_PROXY_TEXTURE_2D = GlConsts.GL_PROXY_TEXTURE_2D, + GL_PROXY_TEXTURE_2D_EXT = GlConsts.GL_PROXY_TEXTURE_2D_EXT, + GL_TEXTURE_3D = GlConsts.GL_TEXTURE_3D, + GL_TEXTURE_3D_EXT = GlConsts.GL_TEXTURE_3D_EXT, + GL_TEXTURE_3D_OES = GlConsts.GL_TEXTURE_3D_OES, + GL_PROXY_TEXTURE_3D = GlConsts.GL_PROXY_TEXTURE_3D, + GL_PROXY_TEXTURE_3D_EXT = GlConsts.GL_PROXY_TEXTURE_3D_EXT, + GL_DETAIL_TEXTURE_2D_SGIS = GlConsts.GL_DETAIL_TEXTURE_2D_SGIS, + GL_TEXTURE_4D_SGIS = GlConsts.GL_TEXTURE_4D_SGIS, + GL_PROXY_TEXTURE_4D_SGIS = GlConsts.GL_PROXY_TEXTURE_4D_SGIS, + GL_TEXTURE_RECTANGLE = GlConsts.GL_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_RECTANGLE = GlConsts.GL_PROXY_TEXTURE_RECTANGLE, + GL_PROXY_TEXTURE_RECTANGLE_ARB = GlConsts.GL_PROXY_TEXTURE_RECTANGLE_ARB, + GL_PROXY_TEXTURE_RECTANGLE_NV = GlConsts.GL_PROXY_TEXTURE_RECTANGLE_NV, + GL_TEXTURE_CUBE_MAP = GlConsts.GL_TEXTURE_CUBE_MAP, + GL_TEXTURE_CUBE_MAP_POSITIVE_X = GlConsts.GL_TEXTURE_CUBE_MAP_POSITIVE_X, + GL_TEXTURE_CUBE_MAP_NEGATIVE_X = GlConsts.GL_TEXTURE_CUBE_MAP_NEGATIVE_X, + GL_TEXTURE_CUBE_MAP_POSITIVE_Y = GlConsts.GL_TEXTURE_CUBE_MAP_POSITIVE_Y, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = GlConsts.GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, + GL_TEXTURE_CUBE_MAP_POSITIVE_Z = GlConsts.GL_TEXTURE_CUBE_MAP_POSITIVE_Z, + GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = GlConsts.GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, + GL_PROXY_TEXTURE_CUBE_MAP = GlConsts.GL_PROXY_TEXTURE_CUBE_MAP, + GL_PROXY_TEXTURE_CUBE_MAP_ARB = GlConsts.GL_PROXY_TEXTURE_CUBE_MAP_ARB, + GL_PROXY_TEXTURE_CUBE_MAP_EXT = GlConsts.GL_PROXY_TEXTURE_CUBE_MAP_EXT, + GL_TEXTURE_1D_ARRAY = GlConsts.GL_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_1D_ARRAY = GlConsts.GL_PROXY_TEXTURE_1D_ARRAY, + GL_PROXY_TEXTURE_1D_ARRAY_EXT = GlConsts.GL_PROXY_TEXTURE_1D_ARRAY_EXT, + GL_TEXTURE_2D_ARRAY = GlConsts.GL_TEXTURE_2D_ARRAY, + GL_PROXY_TEXTURE_2D_ARRAY = GlConsts.GL_PROXY_TEXTURE_2D_ARRAY, + GL_PROXY_TEXTURE_2D_ARRAY_EXT = GlConsts.GL_PROXY_TEXTURE_2D_ARRAY_EXT, + GL_TEXTURE_BUFFER = GlConsts.GL_TEXTURE_BUFFER, + GL_TEXTURE_CUBE_MAP_ARRAY = GlConsts.GL_TEXTURE_CUBE_MAP_ARRAY, + GL_TEXTURE_CUBE_MAP_ARRAY_ARB = GlConsts.GL_TEXTURE_CUBE_MAP_ARRAY_ARB, + GL_TEXTURE_CUBE_MAP_ARRAY_EXT = GlConsts.GL_TEXTURE_CUBE_MAP_ARRAY_EXT, + GL_TEXTURE_CUBE_MAP_ARRAY_OES = GlConsts.GL_TEXTURE_CUBE_MAP_ARRAY_OES, + GL_PROXY_TEXTURE_CUBE_MAP_ARRAY = GlConsts.GL_PROXY_TEXTURE_CUBE_MAP_ARRAY, + GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB = GlConsts.GL_PROXY_TEXTURE_CUBE_MAP_ARRAY_ARB, + GL_TEXTURE_2D_MULTISAMPLE = GlConsts.GL_TEXTURE_2D_MULTISAMPLE, + GL_PROXY_TEXTURE_2D_MULTISAMPLE = GlConsts.GL_PROXY_TEXTURE_2D_MULTISAMPLE, + GL_TEXTURE_2D_MULTISAMPLE_ARRAY = GlConsts.GL_TEXTURE_2D_MULTISAMPLE_ARRAY, + GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY = GlConsts.GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY, + }; + + public enum GetPointervPName + { + GL_FEEDBACK_BUFFER_POINTER = GlConsts.GL_FEEDBACK_BUFFER_POINTER, + GL_SELECTION_BUFFER_POINTER = GlConsts.GL_SELECTION_BUFFER_POINTER, + GL_VERTEX_ARRAY_POINTER = GlConsts.GL_VERTEX_ARRAY_POINTER, + GL_VERTEX_ARRAY_POINTER_EXT = GlConsts.GL_VERTEX_ARRAY_POINTER_EXT, + GL_NORMAL_ARRAY_POINTER = GlConsts.GL_NORMAL_ARRAY_POINTER, + GL_NORMAL_ARRAY_POINTER_EXT = GlConsts.GL_NORMAL_ARRAY_POINTER_EXT, + GL_COLOR_ARRAY_POINTER = GlConsts.GL_COLOR_ARRAY_POINTER, + GL_COLOR_ARRAY_POINTER_EXT = GlConsts.GL_COLOR_ARRAY_POINTER_EXT, + GL_INDEX_ARRAY_POINTER = GlConsts.GL_INDEX_ARRAY_POINTER, + GL_INDEX_ARRAY_POINTER_EXT = GlConsts.GL_INDEX_ARRAY_POINTER_EXT, + GL_TEXTURE_COORD_ARRAY_POINTER = GlConsts.GL_TEXTURE_COORD_ARRAY_POINTER, + GL_TEXTURE_COORD_ARRAY_POINTER_EXT = GlConsts.GL_TEXTURE_COORD_ARRAY_POINTER_EXT, + GL_EDGE_FLAG_ARRAY_POINTER = GlConsts.GL_EDGE_FLAG_ARRAY_POINTER, + GL_EDGE_FLAG_ARRAY_POINTER_EXT = GlConsts.GL_EDGE_FLAG_ARRAY_POINTER_EXT, + GL_INSTRUMENT_BUFFER_POINTER_SGIX = GlConsts.GL_INSTRUMENT_BUFFER_POINTER_SGIX, + GL_DEBUG_CALLBACK_FUNCTION = GlConsts.GL_DEBUG_CALLBACK_FUNCTION, + GL_DEBUG_CALLBACK_USER_PARAM = GlConsts.GL_DEBUG_CALLBACK_USER_PARAM, + }; + + public enum TextureParameterName + { + GL_TEXTURE_WIDTH = GlConsts.GL_TEXTURE_WIDTH, + GL_TEXTURE_HEIGHT = GlConsts.GL_TEXTURE_HEIGHT, + GL_TEXTURE_INTERNAL_FORMAT = GlConsts.GL_TEXTURE_INTERNAL_FORMAT, + GL_TEXTURE_COMPONENTS = GlConsts.GL_TEXTURE_COMPONENTS, + GL_TEXTURE_BORDER_COLOR = GlConsts.GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_BORDER_COLOR_NV = GlConsts.GL_TEXTURE_BORDER_COLOR_NV, + GL_TEXTURE_BORDER = GlConsts.GL_TEXTURE_BORDER, + GL_TEXTURE_MAG_FILTER = GlConsts.GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_FILTER = GlConsts.GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_WRAP_S = GlConsts.GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T = GlConsts.GL_TEXTURE_WRAP_T, + GL_TEXTURE_RED_SIZE = GlConsts.GL_TEXTURE_RED_SIZE, + GL_TEXTURE_GREEN_SIZE = GlConsts.GL_TEXTURE_GREEN_SIZE, + GL_TEXTURE_BLUE_SIZE = GlConsts.GL_TEXTURE_BLUE_SIZE, + GL_TEXTURE_ALPHA_SIZE = GlConsts.GL_TEXTURE_ALPHA_SIZE, + GL_TEXTURE_LUMINANCE_SIZE = GlConsts.GL_TEXTURE_LUMINANCE_SIZE, + GL_TEXTURE_INTENSITY_SIZE = GlConsts.GL_TEXTURE_INTENSITY_SIZE, + GL_TEXTURE_PRIORITY = GlConsts.GL_TEXTURE_PRIORITY, + GL_TEXTURE_PRIORITY_EXT = GlConsts.GL_TEXTURE_PRIORITY_EXT, + GL_TEXTURE_RESIDENT = GlConsts.GL_TEXTURE_RESIDENT, + GL_TEXTURE_DEPTH_EXT = GlConsts.GL_TEXTURE_DEPTH_EXT, + GL_TEXTURE_WRAP_R = GlConsts.GL_TEXTURE_WRAP_R, + GL_TEXTURE_WRAP_R_EXT = GlConsts.GL_TEXTURE_WRAP_R_EXT, + GL_TEXTURE_WRAP_R_OES = GlConsts.GL_TEXTURE_WRAP_R_OES, + GL_DETAIL_TEXTURE_LEVEL_SGIS = GlConsts.GL_DETAIL_TEXTURE_LEVEL_SGIS, + GL_DETAIL_TEXTURE_MODE_SGIS = GlConsts.GL_DETAIL_TEXTURE_MODE_SGIS, + GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS = GlConsts.GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS, + GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS = GlConsts.GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS, + GL_SHADOW_AMBIENT_SGIX = GlConsts.GL_SHADOW_AMBIENT_SGIX, + GL_DUAL_TEXTURE_SELECT_SGIS = GlConsts.GL_DUAL_TEXTURE_SELECT_SGIS, + GL_QUAD_TEXTURE_SELECT_SGIS = GlConsts.GL_QUAD_TEXTURE_SELECT_SGIS, + GL_TEXTURE_4DSIZE_SGIS = GlConsts.GL_TEXTURE_4DSIZE_SGIS, + GL_TEXTURE_WRAP_Q_SGIS = GlConsts.GL_TEXTURE_WRAP_Q_SGIS, + GL_TEXTURE_MIN_LOD = GlConsts.GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MIN_LOD_SGIS = GlConsts.GL_TEXTURE_MIN_LOD_SGIS, + GL_TEXTURE_MAX_LOD = GlConsts.GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MAX_LOD_SGIS = GlConsts.GL_TEXTURE_MAX_LOD_SGIS, + GL_TEXTURE_BASE_LEVEL = GlConsts.GL_TEXTURE_BASE_LEVEL, + GL_TEXTURE_BASE_LEVEL_SGIS = GlConsts.GL_TEXTURE_BASE_LEVEL_SGIS, + GL_TEXTURE_MAX_LEVEL = GlConsts.GL_TEXTURE_MAX_LEVEL, + GL_TEXTURE_MAX_LEVEL_SGIS = GlConsts.GL_TEXTURE_MAX_LEVEL_SGIS, + GL_TEXTURE_FILTER4_SIZE_SGIS = GlConsts.GL_TEXTURE_FILTER4_SIZE_SGIS, + GL_TEXTURE_CLIPMAP_CENTER_SGIX = GlConsts.GL_TEXTURE_CLIPMAP_CENTER_SGIX, + GL_TEXTURE_CLIPMAP_FRAME_SGIX = GlConsts.GL_TEXTURE_CLIPMAP_FRAME_SGIX, + GL_TEXTURE_CLIPMAP_OFFSET_SGIX = GlConsts.GL_TEXTURE_CLIPMAP_OFFSET_SGIX, + GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX = GlConsts.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX, + GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX = GlConsts.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX, + GL_TEXTURE_CLIPMAP_DEPTH_SGIX = GlConsts.GL_TEXTURE_CLIPMAP_DEPTH_SGIX, + GL_POST_TEXTURE_FILTER_BIAS_SGIX = GlConsts.GL_POST_TEXTURE_FILTER_BIAS_SGIX, + GL_POST_TEXTURE_FILTER_SCALE_SGIX = GlConsts.GL_POST_TEXTURE_FILTER_SCALE_SGIX, + GL_TEXTURE_LOD_BIAS_S_SGIX = GlConsts.GL_TEXTURE_LOD_BIAS_S_SGIX, + GL_TEXTURE_LOD_BIAS_T_SGIX = GlConsts.GL_TEXTURE_LOD_BIAS_T_SGIX, + GL_TEXTURE_LOD_BIAS_R_SGIX = GlConsts.GL_TEXTURE_LOD_BIAS_R_SGIX, + GL_GENERATE_MIPMAP = GlConsts.GL_GENERATE_MIPMAP, + GL_GENERATE_MIPMAP_SGIS = GlConsts.GL_GENERATE_MIPMAP_SGIS, + GL_TEXTURE_COMPARE_SGIX = GlConsts.GL_TEXTURE_COMPARE_SGIX, + GL_TEXTURE_COMPARE_OPERATOR_SGIX = GlConsts.GL_TEXTURE_COMPARE_OPERATOR_SGIX, + GL_TEXTURE_LEQUAL_R_SGIX = GlConsts.GL_TEXTURE_LEQUAL_R_SGIX, + GL_TEXTURE_GEQUAL_R_SGIX = GlConsts.GL_TEXTURE_GEQUAL_R_SGIX, + GL_TEXTURE_MAX_CLAMP_S_SGIX = GlConsts.GL_TEXTURE_MAX_CLAMP_S_SGIX, + GL_TEXTURE_MAX_CLAMP_T_SGIX = GlConsts.GL_TEXTURE_MAX_CLAMP_T_SGIX, + GL_TEXTURE_MAX_CLAMP_R_SGIX = GlConsts.GL_TEXTURE_MAX_CLAMP_R_SGIX, + GL_TEXTURE_LOD_BIAS = GlConsts.GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_COMPARE_MODE = GlConsts.GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC = GlConsts.GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_SWIZZLE_R = GlConsts.GL_TEXTURE_SWIZZLE_R, + GL_TEXTURE_SWIZZLE_G = GlConsts.GL_TEXTURE_SWIZZLE_G, + GL_TEXTURE_SWIZZLE_B = GlConsts.GL_TEXTURE_SWIZZLE_B, + GL_TEXTURE_SWIZZLE_A = GlConsts.GL_TEXTURE_SWIZZLE_A, + GL_TEXTURE_SWIZZLE_RGBA = GlConsts.GL_TEXTURE_SWIZZLE_RGBA, + GL_TEXTURE_UNNORMALIZED_COORDINATES_ARM = GlConsts.GL_TEXTURE_UNNORMALIZED_COORDINATES_ARM, + GL_DEPTH_STENCIL_TEXTURE_MODE = GlConsts.GL_DEPTH_STENCIL_TEXTURE_MODE, + GL_TEXTURE_TILING_EXT = GlConsts.GL_TEXTURE_TILING_EXT, + }; + + public enum GetTextureParameter + { + GL_TEXTURE_WIDTH = GlConsts.GL_TEXTURE_WIDTH, + GL_TEXTURE_HEIGHT = GlConsts.GL_TEXTURE_HEIGHT, + GL_TEXTURE_INTERNAL_FORMAT = GlConsts.GL_TEXTURE_INTERNAL_FORMAT, + GL_TEXTURE_COMPONENTS = GlConsts.GL_TEXTURE_COMPONENTS, + GL_TEXTURE_BORDER_COLOR = GlConsts.GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_BORDER_COLOR_NV = GlConsts.GL_TEXTURE_BORDER_COLOR_NV, + GL_TEXTURE_BORDER = GlConsts.GL_TEXTURE_BORDER, + GL_TEXTURE_MAG_FILTER = GlConsts.GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_FILTER = GlConsts.GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_WRAP_S = GlConsts.GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T = GlConsts.GL_TEXTURE_WRAP_T, + GL_TEXTURE_RED_SIZE = GlConsts.GL_TEXTURE_RED_SIZE, + GL_TEXTURE_GREEN_SIZE = GlConsts.GL_TEXTURE_GREEN_SIZE, + GL_TEXTURE_BLUE_SIZE = GlConsts.GL_TEXTURE_BLUE_SIZE, + GL_TEXTURE_ALPHA_SIZE = GlConsts.GL_TEXTURE_ALPHA_SIZE, + GL_TEXTURE_LUMINANCE_SIZE = GlConsts.GL_TEXTURE_LUMINANCE_SIZE, + GL_TEXTURE_INTENSITY_SIZE = GlConsts.GL_TEXTURE_INTENSITY_SIZE, + GL_TEXTURE_PRIORITY = GlConsts.GL_TEXTURE_PRIORITY, + GL_TEXTURE_RESIDENT = GlConsts.GL_TEXTURE_RESIDENT, + GL_TEXTURE_DEPTH_EXT = GlConsts.GL_TEXTURE_DEPTH_EXT, + GL_TEXTURE_WRAP_R_EXT = GlConsts.GL_TEXTURE_WRAP_R_EXT, + GL_DETAIL_TEXTURE_LEVEL_SGIS = GlConsts.GL_DETAIL_TEXTURE_LEVEL_SGIS, + GL_DETAIL_TEXTURE_MODE_SGIS = GlConsts.GL_DETAIL_TEXTURE_MODE_SGIS, + GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS = GlConsts.GL_DETAIL_TEXTURE_FUNC_POINTS_SGIS, + GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS = GlConsts.GL_SHARPEN_TEXTURE_FUNC_POINTS_SGIS, + GL_SHADOW_AMBIENT_SGIX = GlConsts.GL_SHADOW_AMBIENT_SGIX, + GL_DUAL_TEXTURE_SELECT_SGIS = GlConsts.GL_DUAL_TEXTURE_SELECT_SGIS, + GL_QUAD_TEXTURE_SELECT_SGIS = GlConsts.GL_QUAD_TEXTURE_SELECT_SGIS, + GL_TEXTURE_4DSIZE_SGIS = GlConsts.GL_TEXTURE_4DSIZE_SGIS, + GL_TEXTURE_WRAP_Q_SGIS = GlConsts.GL_TEXTURE_WRAP_Q_SGIS, + GL_TEXTURE_MIN_LOD_SGIS = GlConsts.GL_TEXTURE_MIN_LOD_SGIS, + GL_TEXTURE_MAX_LOD_SGIS = GlConsts.GL_TEXTURE_MAX_LOD_SGIS, + GL_TEXTURE_BASE_LEVEL_SGIS = GlConsts.GL_TEXTURE_BASE_LEVEL_SGIS, + GL_TEXTURE_MAX_LEVEL_SGIS = GlConsts.GL_TEXTURE_MAX_LEVEL_SGIS, + GL_TEXTURE_FILTER4_SIZE_SGIS = GlConsts.GL_TEXTURE_FILTER4_SIZE_SGIS, + GL_TEXTURE_CLIPMAP_CENTER_SGIX = GlConsts.GL_TEXTURE_CLIPMAP_CENTER_SGIX, + GL_TEXTURE_CLIPMAP_FRAME_SGIX = GlConsts.GL_TEXTURE_CLIPMAP_FRAME_SGIX, + GL_TEXTURE_CLIPMAP_OFFSET_SGIX = GlConsts.GL_TEXTURE_CLIPMAP_OFFSET_SGIX, + GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX = GlConsts.GL_TEXTURE_CLIPMAP_VIRTUAL_DEPTH_SGIX, + GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX = GlConsts.GL_TEXTURE_CLIPMAP_LOD_OFFSET_SGIX, + GL_TEXTURE_CLIPMAP_DEPTH_SGIX = GlConsts.GL_TEXTURE_CLIPMAP_DEPTH_SGIX, + GL_POST_TEXTURE_FILTER_BIAS_SGIX = GlConsts.GL_POST_TEXTURE_FILTER_BIAS_SGIX, + GL_POST_TEXTURE_FILTER_SCALE_SGIX = GlConsts.GL_POST_TEXTURE_FILTER_SCALE_SGIX, + GL_TEXTURE_LOD_BIAS_S_SGIX = GlConsts.GL_TEXTURE_LOD_BIAS_S_SGIX, + GL_TEXTURE_LOD_BIAS_T_SGIX = GlConsts.GL_TEXTURE_LOD_BIAS_T_SGIX, + GL_TEXTURE_LOD_BIAS_R_SGIX = GlConsts.GL_TEXTURE_LOD_BIAS_R_SGIX, + GL_GENERATE_MIPMAP_SGIS = GlConsts.GL_GENERATE_MIPMAP_SGIS, + GL_TEXTURE_COMPARE_SGIX = GlConsts.GL_TEXTURE_COMPARE_SGIX, + GL_TEXTURE_COMPARE_OPERATOR_SGIX = GlConsts.GL_TEXTURE_COMPARE_OPERATOR_SGIX, + GL_TEXTURE_LEQUAL_R_SGIX = GlConsts.GL_TEXTURE_LEQUAL_R_SGIX, + GL_TEXTURE_GEQUAL_R_SGIX = GlConsts.GL_TEXTURE_GEQUAL_R_SGIX, + GL_TEXTURE_MAX_CLAMP_S_SGIX = GlConsts.GL_TEXTURE_MAX_CLAMP_S_SGIX, + GL_TEXTURE_MAX_CLAMP_T_SGIX = GlConsts.GL_TEXTURE_MAX_CLAMP_T_SGIX, + GL_TEXTURE_MAX_CLAMP_R_SGIX = GlConsts.GL_TEXTURE_MAX_CLAMP_R_SGIX, + GL_TEXTURE_UNNORMALIZED_COORDINATES_ARM = GlConsts.GL_TEXTURE_UNNORMALIZED_COORDINATES_ARM, + }; + + public enum SamplerParameterF + { + GL_TEXTURE_BORDER_COLOR = GlConsts.GL_TEXTURE_BORDER_COLOR, + GL_TEXTURE_MIN_LOD = GlConsts.GL_TEXTURE_MIN_LOD, + GL_TEXTURE_MAX_LOD = GlConsts.GL_TEXTURE_MAX_LOD, + GL_TEXTURE_MAX_ANISOTROPY = GlConsts.GL_TEXTURE_MAX_ANISOTROPY, + GL_TEXTURE_LOD_BIAS = GlConsts.GL_TEXTURE_LOD_BIAS, + GL_TEXTURE_UNNORMALIZED_COORDINATES_ARM = GlConsts.GL_TEXTURE_UNNORMALIZED_COORDINATES_ARM, + }; + + public enum DebugSeverity + { + GL_DONT_CARE = GlConsts.GL_DONT_CARE, + GL_DEBUG_SEVERITY_NOTIFICATION = GlConsts.GL_DEBUG_SEVERITY_NOTIFICATION, + GL_DEBUG_SEVERITY_HIGH = GlConsts.GL_DEBUG_SEVERITY_HIGH, + GL_DEBUG_SEVERITY_MEDIUM = GlConsts.GL_DEBUG_SEVERITY_MEDIUM, + GL_DEBUG_SEVERITY_LOW = GlConsts.GL_DEBUG_SEVERITY_LOW, + }; + + public enum HintMode + { + GL_DONT_CARE = GlConsts.GL_DONT_CARE, + GL_FASTEST = GlConsts.GL_FASTEST, + GL_NICEST = GlConsts.GL_NICEST, + }; + + public enum DebugSource + { + GL_DONT_CARE = GlConsts.GL_DONT_CARE, + GL_DEBUG_SOURCE_API = GlConsts.GL_DEBUG_SOURCE_API, + GL_DEBUG_SOURCE_WINDOW_SYSTEM = GlConsts.GL_DEBUG_SOURCE_WINDOW_SYSTEM, + GL_DEBUG_SOURCE_SHADER_COMPILER = GlConsts.GL_DEBUG_SOURCE_SHADER_COMPILER, + GL_DEBUG_SOURCE_THIRD_PARTY = GlConsts.GL_DEBUG_SOURCE_THIRD_PARTY, + GL_DEBUG_SOURCE_APPLICATION = GlConsts.GL_DEBUG_SOURCE_APPLICATION, + GL_DEBUG_SOURCE_OTHER = GlConsts.GL_DEBUG_SOURCE_OTHER, + }; + + public enum DebugType + { + GL_DONT_CARE = GlConsts.GL_DONT_CARE, + GL_DEBUG_TYPE_ERROR = GlConsts.GL_DEBUG_TYPE_ERROR, + GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR = GlConsts.GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR, + GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR = GlConsts.GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR, + GL_DEBUG_TYPE_PORTABILITY = GlConsts.GL_DEBUG_TYPE_PORTABILITY, + GL_DEBUG_TYPE_PERFORMANCE = GlConsts.GL_DEBUG_TYPE_PERFORMANCE, + GL_DEBUG_TYPE_OTHER = GlConsts.GL_DEBUG_TYPE_OTHER, + GL_DEBUG_TYPE_MARKER = GlConsts.GL_DEBUG_TYPE_MARKER, + GL_DEBUG_TYPE_PUSH_GROUP = GlConsts.GL_DEBUG_TYPE_PUSH_GROUP, + GL_DEBUG_TYPE_POP_GROUP = GlConsts.GL_DEBUG_TYPE_POP_GROUP, + }; + + public enum MaterialParameter + { + GL_AMBIENT = GlConsts.GL_AMBIENT, + GL_DIFFUSE = GlConsts.GL_DIFFUSE, + GL_SPECULAR = GlConsts.GL_SPECULAR, + GL_EMISSION = GlConsts.GL_EMISSION, + GL_SHININESS = GlConsts.GL_SHININESS, + GL_AMBIENT_AND_DIFFUSE = GlConsts.GL_AMBIENT_AND_DIFFUSE, + GL_COLOR_INDEXES = GlConsts.GL_COLOR_INDEXES, + }; + + public enum FragmentLightParameterSGIX + { + GL_AMBIENT = GlConsts.GL_AMBIENT, + GL_DIFFUSE = GlConsts.GL_DIFFUSE, + GL_SPECULAR = GlConsts.GL_SPECULAR, + GL_POSITION = GlConsts.GL_POSITION, + GL_SPOT_DIRECTION = GlConsts.GL_SPOT_DIRECTION, + GL_SPOT_EXPONENT = GlConsts.GL_SPOT_EXPONENT, + GL_SPOT_CUTOFF = GlConsts.GL_SPOT_CUTOFF, + GL_CONSTANT_ATTENUATION = GlConsts.GL_CONSTANT_ATTENUATION, + GL_LINEAR_ATTENUATION = GlConsts.GL_LINEAR_ATTENUATION, + GL_QUADRATIC_ATTENUATION = GlConsts.GL_QUADRATIC_ATTENUATION, + }; + + public enum ColorMaterialParameter + { + GL_AMBIENT = GlConsts.GL_AMBIENT, + GL_DIFFUSE = GlConsts.GL_DIFFUSE, + GL_SPECULAR = GlConsts.GL_SPECULAR, + GL_EMISSION = GlConsts.GL_EMISSION, + GL_AMBIENT_AND_DIFFUSE = GlConsts.GL_AMBIENT_AND_DIFFUSE, + }; + + public enum LightParameter + { + GL_POSITION = GlConsts.GL_POSITION, + GL_SPOT_DIRECTION = GlConsts.GL_SPOT_DIRECTION, + GL_SPOT_EXPONENT = GlConsts.GL_SPOT_EXPONENT, + GL_SPOT_CUTOFF = GlConsts.GL_SPOT_CUTOFF, + GL_CONSTANT_ATTENUATION = GlConsts.GL_CONSTANT_ATTENUATION, + GL_LINEAR_ATTENUATION = GlConsts.GL_LINEAR_ATTENUATION, + GL_QUADRATIC_ATTENUATION = GlConsts.GL_QUADRATIC_ATTENUATION, + }; + + public enum ListMode + { + GL_COMPILE = GlConsts.GL_COMPILE, + GL_COMPILE_AND_EXECUTE = GlConsts.GL_COMPILE_AND_EXECUTE, + }; + + public enum VertexAttribIType + { + GL_BYTE = GlConsts.GL_BYTE, + GL_UNSIGNED_BYTE = GlConsts.GL_UNSIGNED_BYTE, + GL_SHORT = GlConsts.GL_SHORT, + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_INT = GlConsts.GL_INT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + }; + + public enum WeightPointerTypeARB + { + GL_BYTE = GlConsts.GL_BYTE, + GL_UNSIGNED_BYTE = GlConsts.GL_UNSIGNED_BYTE, + GL_SHORT = GlConsts.GL_SHORT, + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_INT = GlConsts.GL_INT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + }; + + public enum TangentPointerTypeEXT + { + GL_BYTE = GlConsts.GL_BYTE, + GL_SHORT = GlConsts.GL_SHORT, + GL_INT = GlConsts.GL_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + GL_DOUBLE_EXT = GlConsts.GL_DOUBLE_EXT, + }; + + public enum BinormalPointerTypeEXT + { + GL_BYTE = GlConsts.GL_BYTE, + GL_SHORT = GlConsts.GL_SHORT, + GL_INT = GlConsts.GL_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + GL_DOUBLE_EXT = GlConsts.GL_DOUBLE_EXT, + }; + + public enum ColorPointerType + { + GL_BYTE = GlConsts.GL_BYTE, + GL_UNSIGNED_BYTE = GlConsts.GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + }; + + public enum ListNameType + { + GL_BYTE = GlConsts.GL_BYTE, + GL_UNSIGNED_BYTE = GlConsts.GL_UNSIGNED_BYTE, + GL_SHORT = GlConsts.GL_SHORT, + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_INT = GlConsts.GL_INT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_2_BYTES = GlConsts.GL_2_BYTES, + GL_3_BYTES = GlConsts.GL_3_BYTES, + GL_4_BYTES = GlConsts.GL_4_BYTES, + }; + + public enum NormalPointerType + { + GL_BYTE = GlConsts.GL_BYTE, + GL_SHORT = GlConsts.GL_SHORT, + GL_INT = GlConsts.GL_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + }; + + public enum PixelType + { + GL_BYTE = GlConsts.GL_BYTE, + GL_UNSIGNED_BYTE = GlConsts.GL_UNSIGNED_BYTE, + GL_SHORT = GlConsts.GL_SHORT, + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_INT = GlConsts.GL_INT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_BITMAP = GlConsts.GL_BITMAP, + GL_UNSIGNED_BYTE_3_3_2 = GlConsts.GL_UNSIGNED_BYTE_3_3_2, + GL_UNSIGNED_BYTE_3_3_2_EXT = GlConsts.GL_UNSIGNED_BYTE_3_3_2_EXT, + GL_UNSIGNED_SHORT_4_4_4_4 = GlConsts.GL_UNSIGNED_SHORT_4_4_4_4, + GL_UNSIGNED_SHORT_4_4_4_4_EXT = GlConsts.GL_UNSIGNED_SHORT_4_4_4_4_EXT, + GL_UNSIGNED_SHORT_5_5_5_1 = GlConsts.GL_UNSIGNED_SHORT_5_5_5_1, + GL_UNSIGNED_SHORT_5_5_5_1_EXT = GlConsts.GL_UNSIGNED_SHORT_5_5_5_1_EXT, + GL_UNSIGNED_INT_8_8_8_8 = GlConsts.GL_UNSIGNED_INT_8_8_8_8, + GL_UNSIGNED_INT_8_8_8_8_EXT = GlConsts.GL_UNSIGNED_INT_8_8_8_8_EXT, + GL_UNSIGNED_INT_10_10_10_2 = GlConsts.GL_UNSIGNED_INT_10_10_10_2, + GL_UNSIGNED_INT_10_10_10_2_EXT = GlConsts.GL_UNSIGNED_INT_10_10_10_2_EXT, + }; + + public enum VertexAttribType + { + GL_BYTE = GlConsts.GL_BYTE, + GL_UNSIGNED_BYTE = GlConsts.GL_UNSIGNED_BYTE, + GL_SHORT = GlConsts.GL_SHORT, + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_INT = GlConsts.GL_INT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + GL_HALF_FLOAT = GlConsts.GL_HALF_FLOAT, + GL_FIXED = GlConsts.GL_FIXED, + GL_UNSIGNED_INT_2_10_10_10_REV = GlConsts.GL_UNSIGNED_INT_2_10_10_10_REV, + GL_UNSIGNED_INT_10F_11F_11F_REV = GlConsts.GL_UNSIGNED_INT_10F_11F_11F_REV, + GL_INT_2_10_10_10_REV = GlConsts.GL_INT_2_10_10_10_REV, + }; + + public enum VertexAttribPointerType + { + GL_BYTE = GlConsts.GL_BYTE, + GL_UNSIGNED_BYTE = GlConsts.GL_UNSIGNED_BYTE, + GL_SHORT = GlConsts.GL_SHORT, + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_INT = GlConsts.GL_INT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + GL_HALF_FLOAT = GlConsts.GL_HALF_FLOAT, + GL_FIXED = GlConsts.GL_FIXED, + GL_INT64_ARB = GlConsts.GL_INT64_ARB, + GL_INT64_NV = GlConsts.GL_INT64_NV, + GL_UNSIGNED_INT64_ARB = GlConsts.GL_UNSIGNED_INT64_ARB, + GL_UNSIGNED_INT64_NV = GlConsts.GL_UNSIGNED_INT64_NV, + GL_UNSIGNED_INT_2_10_10_10_REV = GlConsts.GL_UNSIGNED_INT_2_10_10_10_REV, + GL_UNSIGNED_INT_10F_11F_11F_REV = GlConsts.GL_UNSIGNED_INT_10F_11F_11F_REV, + GL_INT_2_10_10_10_REV = GlConsts.GL_INT_2_10_10_10_REV, + }; + + public enum ScalarType + { + GL_UNSIGNED_BYTE = GlConsts.GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + }; + + public enum ReplacementCodeTypeSUN + { + GL_UNSIGNED_BYTE = GlConsts.GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + }; + + public enum ElementPointerTypeATI + { + GL_UNSIGNED_BYTE = GlConsts.GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + }; + + public enum MatrixIndexPointerTypeARB + { + GL_UNSIGNED_BYTE = GlConsts.GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + }; + + public enum DrawElementsType + { + GL_UNSIGNED_BYTE = GlConsts.GL_UNSIGNED_BYTE, + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + }; + + public enum SecondaryColorPointerTypeIBM + { + GL_SHORT = GlConsts.GL_SHORT, + GL_INT = GlConsts.GL_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + }; + + public enum IndexPointerType + { + GL_SHORT = GlConsts.GL_SHORT, + GL_INT = GlConsts.GL_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + }; + + public enum TexCoordPointerType + { + GL_SHORT = GlConsts.GL_SHORT, + GL_INT = GlConsts.GL_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + }; + + public enum VertexPointerType + { + GL_SHORT = GlConsts.GL_SHORT, + GL_INT = GlConsts.GL_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + }; + + public enum PixelFormat + { + GL_UNSIGNED_SHORT = GlConsts.GL_UNSIGNED_SHORT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + GL_COLOR_INDEX = GlConsts.GL_COLOR_INDEX, + GL_STENCIL_INDEX = GlConsts.GL_STENCIL_INDEX, + GL_DEPTH_COMPONENT = GlConsts.GL_DEPTH_COMPONENT, + GL_RED = GlConsts.GL_RED, + GL_RED_EXT = GlConsts.GL_RED_EXT, + GL_GREEN = GlConsts.GL_GREEN, + GL_BLUE = GlConsts.GL_BLUE, + GL_ALPHA = GlConsts.GL_ALPHA, + GL_RGB = GlConsts.GL_RGB, + GL_RGBA = GlConsts.GL_RGBA, + GL_LUMINANCE = GlConsts.GL_LUMINANCE, + GL_LUMINANCE_ALPHA = GlConsts.GL_LUMINANCE_ALPHA, + GL_ABGR_EXT = GlConsts.GL_ABGR_EXT, + GL_CMYK_EXT = GlConsts.GL_CMYK_EXT, + GL_CMYKA_EXT = GlConsts.GL_CMYKA_EXT, + GL_BGR = GlConsts.GL_BGR, + GL_BGRA = GlConsts.GL_BGRA, + GL_YCRCB_422_SGIX = GlConsts.GL_YCRCB_422_SGIX, + GL_YCRCB_444_SGIX = GlConsts.GL_YCRCB_444_SGIX, + GL_RG = GlConsts.GL_RG, + GL_RG_INTEGER = GlConsts.GL_RG_INTEGER, + GL_DEPTH_STENCIL = GlConsts.GL_DEPTH_STENCIL, + GL_RED_INTEGER = GlConsts.GL_RED_INTEGER, + GL_GREEN_INTEGER = GlConsts.GL_GREEN_INTEGER, + GL_BLUE_INTEGER = GlConsts.GL_BLUE_INTEGER, + GL_RGB_INTEGER = GlConsts.GL_RGB_INTEGER, + GL_RGBA_INTEGER = GlConsts.GL_RGBA_INTEGER, + GL_BGR_INTEGER = GlConsts.GL_BGR_INTEGER, + GL_BGRA_INTEGER = GlConsts.GL_BGRA_INTEGER, + }; + + public enum AttributeType + { + GL_INT = GlConsts.GL_INT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + GL_INT64_ARB = GlConsts.GL_INT64_ARB, + GL_INT64_NV = GlConsts.GL_INT64_NV, + GL_UNSIGNED_INT64_ARB = GlConsts.GL_UNSIGNED_INT64_ARB, + GL_UNSIGNED_INT64_NV = GlConsts.GL_UNSIGNED_INT64_NV, + GL_FLOAT_VEC2 = GlConsts.GL_FLOAT_VEC2, + GL_FLOAT_VEC2_ARB = GlConsts.GL_FLOAT_VEC2_ARB, + GL_FLOAT_VEC3 = GlConsts.GL_FLOAT_VEC3, + GL_FLOAT_VEC3_ARB = GlConsts.GL_FLOAT_VEC3_ARB, + GL_FLOAT_VEC4 = GlConsts.GL_FLOAT_VEC4, + GL_FLOAT_VEC4_ARB = GlConsts.GL_FLOAT_VEC4_ARB, + GL_INT_VEC2 = GlConsts.GL_INT_VEC2, + GL_INT_VEC2_ARB = GlConsts.GL_INT_VEC2_ARB, + GL_INT_VEC3 = GlConsts.GL_INT_VEC3, + GL_INT_VEC3_ARB = GlConsts.GL_INT_VEC3_ARB, + GL_INT_VEC4 = GlConsts.GL_INT_VEC4, + GL_INT_VEC4_ARB = GlConsts.GL_INT_VEC4_ARB, + GL_BOOL = GlConsts.GL_BOOL, + GL_BOOL_ARB = GlConsts.GL_BOOL_ARB, + GL_BOOL_VEC2 = GlConsts.GL_BOOL_VEC2, + GL_BOOL_VEC2_ARB = GlConsts.GL_BOOL_VEC2_ARB, + GL_BOOL_VEC3 = GlConsts.GL_BOOL_VEC3, + GL_BOOL_VEC3_ARB = GlConsts.GL_BOOL_VEC3_ARB, + GL_BOOL_VEC4 = GlConsts.GL_BOOL_VEC4, + GL_BOOL_VEC4_ARB = GlConsts.GL_BOOL_VEC4_ARB, + GL_FLOAT_MAT2 = GlConsts.GL_FLOAT_MAT2, + GL_FLOAT_MAT2_ARB = GlConsts.GL_FLOAT_MAT2_ARB, + GL_FLOAT_MAT3 = GlConsts.GL_FLOAT_MAT3, + GL_FLOAT_MAT3_ARB = GlConsts.GL_FLOAT_MAT3_ARB, + GL_FLOAT_MAT4 = GlConsts.GL_FLOAT_MAT4, + GL_FLOAT_MAT4_ARB = GlConsts.GL_FLOAT_MAT4_ARB, + GL_SAMPLER_1D = GlConsts.GL_SAMPLER_1D, + GL_SAMPLER_1D_ARB = GlConsts.GL_SAMPLER_1D_ARB, + GL_SAMPLER_2D = GlConsts.GL_SAMPLER_2D, + GL_SAMPLER_2D_ARB = GlConsts.GL_SAMPLER_2D_ARB, + GL_SAMPLER_3D = GlConsts.GL_SAMPLER_3D, + GL_SAMPLER_3D_ARB = GlConsts.GL_SAMPLER_3D_ARB, + GL_SAMPLER_3D_OES = GlConsts.GL_SAMPLER_3D_OES, + GL_SAMPLER_CUBE = GlConsts.GL_SAMPLER_CUBE, + GL_SAMPLER_CUBE_ARB = GlConsts.GL_SAMPLER_CUBE_ARB, + GL_SAMPLER_1D_SHADOW = GlConsts.GL_SAMPLER_1D_SHADOW, + GL_SAMPLER_1D_SHADOW_ARB = GlConsts.GL_SAMPLER_1D_SHADOW_ARB, + GL_SAMPLER_2D_SHADOW = GlConsts.GL_SAMPLER_2D_SHADOW, + GL_SAMPLER_2D_SHADOW_ARB = GlConsts.GL_SAMPLER_2D_SHADOW_ARB, + GL_SAMPLER_2D_SHADOW_EXT = GlConsts.GL_SAMPLER_2D_SHADOW_EXT, + GL_SAMPLER_2D_RECT = GlConsts.GL_SAMPLER_2D_RECT, + GL_SAMPLER_2D_RECT_ARB = GlConsts.GL_SAMPLER_2D_RECT_ARB, + GL_SAMPLER_2D_RECT_SHADOW = GlConsts.GL_SAMPLER_2D_RECT_SHADOW, + GL_SAMPLER_2D_RECT_SHADOW_ARB = GlConsts.GL_SAMPLER_2D_RECT_SHADOW_ARB, + GL_FLOAT_MAT2x3 = GlConsts.GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x3_NV = GlConsts.GL_FLOAT_MAT2x3_NV, + GL_FLOAT_MAT2x4 = GlConsts.GL_FLOAT_MAT2x4, + GL_FLOAT_MAT2x4_NV = GlConsts.GL_FLOAT_MAT2x4_NV, + GL_FLOAT_MAT3x2 = GlConsts.GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x2_NV = GlConsts.GL_FLOAT_MAT3x2_NV, + GL_FLOAT_MAT3x4 = GlConsts.GL_FLOAT_MAT3x4, + GL_FLOAT_MAT3x4_NV = GlConsts.GL_FLOAT_MAT3x4_NV, + GL_FLOAT_MAT4x2 = GlConsts.GL_FLOAT_MAT4x2, + GL_FLOAT_MAT4x2_NV = GlConsts.GL_FLOAT_MAT4x2_NV, + GL_FLOAT_MAT4x3 = GlConsts.GL_FLOAT_MAT4x3, + GL_FLOAT_MAT4x3_NV = GlConsts.GL_FLOAT_MAT4x3_NV, + GL_SAMPLER_BUFFER = GlConsts.GL_SAMPLER_BUFFER, + GL_SAMPLER_1D_ARRAY_SHADOW = GlConsts.GL_SAMPLER_1D_ARRAY_SHADOW, + GL_SAMPLER_2D_ARRAY_SHADOW = GlConsts.GL_SAMPLER_2D_ARRAY_SHADOW, + GL_SAMPLER_CUBE_SHADOW = GlConsts.GL_SAMPLER_CUBE_SHADOW, + GL_UNSIGNED_INT_VEC2 = GlConsts.GL_UNSIGNED_INT_VEC2, + GL_UNSIGNED_INT_VEC3 = GlConsts.GL_UNSIGNED_INT_VEC3, + GL_UNSIGNED_INT_VEC4 = GlConsts.GL_UNSIGNED_INT_VEC4, + GL_INT_SAMPLER_1D = GlConsts.GL_INT_SAMPLER_1D, + GL_INT_SAMPLER_2D = GlConsts.GL_INT_SAMPLER_2D, + GL_INT_SAMPLER_3D = GlConsts.GL_INT_SAMPLER_3D, + GL_INT_SAMPLER_CUBE = GlConsts.GL_INT_SAMPLER_CUBE, + GL_INT_SAMPLER_2D_RECT = GlConsts.GL_INT_SAMPLER_2D_RECT, + GL_INT_SAMPLER_1D_ARRAY = GlConsts.GL_INT_SAMPLER_1D_ARRAY, + GL_INT_SAMPLER_2D_ARRAY = GlConsts.GL_INT_SAMPLER_2D_ARRAY, + GL_INT_SAMPLER_BUFFER = GlConsts.GL_INT_SAMPLER_BUFFER, + GL_UNSIGNED_INT_SAMPLER_1D = GlConsts.GL_UNSIGNED_INT_SAMPLER_1D, + GL_UNSIGNED_INT_SAMPLER_2D = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D, + GL_UNSIGNED_INT_SAMPLER_3D = GlConsts.GL_UNSIGNED_INT_SAMPLER_3D, + GL_UNSIGNED_INT_SAMPLER_CUBE = GlConsts.GL_UNSIGNED_INT_SAMPLER_CUBE, + GL_UNSIGNED_INT_SAMPLER_2D_RECT = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D_RECT, + GL_UNSIGNED_INT_SAMPLER_1D_ARRAY = GlConsts.GL_UNSIGNED_INT_SAMPLER_1D_ARRAY, + GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D_ARRAY, + GL_UNSIGNED_INT_SAMPLER_BUFFER = GlConsts.GL_UNSIGNED_INT_SAMPLER_BUFFER, + GL_DOUBLE_MAT2 = GlConsts.GL_DOUBLE_MAT2, + GL_DOUBLE_MAT3 = GlConsts.GL_DOUBLE_MAT3, + GL_DOUBLE_MAT4 = GlConsts.GL_DOUBLE_MAT4, + GL_DOUBLE_MAT2x3 = GlConsts.GL_DOUBLE_MAT2x3, + GL_DOUBLE_MAT2x4 = GlConsts.GL_DOUBLE_MAT2x4, + GL_DOUBLE_MAT3x2 = GlConsts.GL_DOUBLE_MAT3x2, + GL_DOUBLE_MAT3x4 = GlConsts.GL_DOUBLE_MAT3x4, + GL_DOUBLE_MAT4x2 = GlConsts.GL_DOUBLE_MAT4x2, + GL_DOUBLE_MAT4x3 = GlConsts.GL_DOUBLE_MAT4x3, + GL_INT64_VEC2_ARB = GlConsts.GL_INT64_VEC2_ARB, + GL_INT64_VEC3_ARB = GlConsts.GL_INT64_VEC3_ARB, + GL_INT64_VEC4_ARB = GlConsts.GL_INT64_VEC4_ARB, + GL_UNSIGNED_INT64_VEC2_ARB = GlConsts.GL_UNSIGNED_INT64_VEC2_ARB, + GL_UNSIGNED_INT64_VEC3_ARB = GlConsts.GL_UNSIGNED_INT64_VEC3_ARB, + GL_UNSIGNED_INT64_VEC4_ARB = GlConsts.GL_UNSIGNED_INT64_VEC4_ARB, + GL_DOUBLE_VEC2 = GlConsts.GL_DOUBLE_VEC2, + GL_DOUBLE_VEC3 = GlConsts.GL_DOUBLE_VEC3, + GL_DOUBLE_VEC4 = GlConsts.GL_DOUBLE_VEC4, + GL_SAMPLER_CUBE_MAP_ARRAY = GlConsts.GL_SAMPLER_CUBE_MAP_ARRAY, + GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW = GlConsts.GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW, + GL_INT_SAMPLER_CUBE_MAP_ARRAY = GlConsts.GL_INT_SAMPLER_CUBE_MAP_ARRAY, + GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = GlConsts.GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY, + GL_IMAGE_1D = GlConsts.GL_IMAGE_1D, + GL_IMAGE_2D = GlConsts.GL_IMAGE_2D, + GL_IMAGE_3D = GlConsts.GL_IMAGE_3D, + GL_IMAGE_2D_RECT = GlConsts.GL_IMAGE_2D_RECT, + GL_IMAGE_CUBE = GlConsts.GL_IMAGE_CUBE, + GL_IMAGE_BUFFER = GlConsts.GL_IMAGE_BUFFER, + GL_IMAGE_1D_ARRAY = GlConsts.GL_IMAGE_1D_ARRAY, + GL_IMAGE_2D_ARRAY = GlConsts.GL_IMAGE_2D_ARRAY, + GL_IMAGE_CUBE_MAP_ARRAY = GlConsts.GL_IMAGE_CUBE_MAP_ARRAY, + GL_IMAGE_2D_MULTISAMPLE = GlConsts.GL_IMAGE_2D_MULTISAMPLE, + GL_IMAGE_2D_MULTISAMPLE_ARRAY = GlConsts.GL_IMAGE_2D_MULTISAMPLE_ARRAY, + GL_INT_IMAGE_1D = GlConsts.GL_INT_IMAGE_1D, + GL_INT_IMAGE_2D = GlConsts.GL_INT_IMAGE_2D, + GL_INT_IMAGE_3D = GlConsts.GL_INT_IMAGE_3D, + GL_INT_IMAGE_2D_RECT = GlConsts.GL_INT_IMAGE_2D_RECT, + GL_INT_IMAGE_CUBE = GlConsts.GL_INT_IMAGE_CUBE, + GL_INT_IMAGE_BUFFER = GlConsts.GL_INT_IMAGE_BUFFER, + GL_INT_IMAGE_1D_ARRAY = GlConsts.GL_INT_IMAGE_1D_ARRAY, + GL_INT_IMAGE_2D_ARRAY = GlConsts.GL_INT_IMAGE_2D_ARRAY, + GL_INT_IMAGE_CUBE_MAP_ARRAY = GlConsts.GL_INT_IMAGE_CUBE_MAP_ARRAY, + GL_INT_IMAGE_2D_MULTISAMPLE = GlConsts.GL_INT_IMAGE_2D_MULTISAMPLE, + GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY = GlConsts.GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY, + GL_UNSIGNED_INT_IMAGE_1D = GlConsts.GL_UNSIGNED_INT_IMAGE_1D, + GL_UNSIGNED_INT_IMAGE_2D = GlConsts.GL_UNSIGNED_INT_IMAGE_2D, + GL_UNSIGNED_INT_IMAGE_3D = GlConsts.GL_UNSIGNED_INT_IMAGE_3D, + GL_UNSIGNED_INT_IMAGE_2D_RECT = GlConsts.GL_UNSIGNED_INT_IMAGE_2D_RECT, + GL_UNSIGNED_INT_IMAGE_CUBE = GlConsts.GL_UNSIGNED_INT_IMAGE_CUBE, + GL_UNSIGNED_INT_IMAGE_BUFFER = GlConsts.GL_UNSIGNED_INT_IMAGE_BUFFER, + GL_UNSIGNED_INT_IMAGE_1D_ARRAY = GlConsts.GL_UNSIGNED_INT_IMAGE_1D_ARRAY, + GL_UNSIGNED_INT_IMAGE_2D_ARRAY = GlConsts.GL_UNSIGNED_INT_IMAGE_2D_ARRAY, + GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY = GlConsts.GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY, + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE = GlConsts.GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE, + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY = GlConsts.GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY, + GL_SAMPLER_2D_MULTISAMPLE = GlConsts.GL_SAMPLER_2D_MULTISAMPLE, + GL_INT_SAMPLER_2D_MULTISAMPLE = GlConsts.GL_INT_SAMPLER_2D_MULTISAMPLE, + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE, + GL_SAMPLER_2D_MULTISAMPLE_ARRAY = GlConsts.GL_SAMPLER_2D_MULTISAMPLE_ARRAY, + GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = GlConsts.GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY, + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY, + }; + + public enum UniformType + { + GL_INT = GlConsts.GL_INT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + GL_FLOAT_VEC2 = GlConsts.GL_FLOAT_VEC2, + GL_FLOAT_VEC3 = GlConsts.GL_FLOAT_VEC3, + GL_FLOAT_VEC4 = GlConsts.GL_FLOAT_VEC4, + GL_INT_VEC2 = GlConsts.GL_INT_VEC2, + GL_INT_VEC3 = GlConsts.GL_INT_VEC3, + GL_INT_VEC4 = GlConsts.GL_INT_VEC4, + GL_BOOL = GlConsts.GL_BOOL, + GL_BOOL_VEC2 = GlConsts.GL_BOOL_VEC2, + GL_BOOL_VEC3 = GlConsts.GL_BOOL_VEC3, + GL_BOOL_VEC4 = GlConsts.GL_BOOL_VEC4, + GL_FLOAT_MAT2 = GlConsts.GL_FLOAT_MAT2, + GL_FLOAT_MAT3 = GlConsts.GL_FLOAT_MAT3, + GL_FLOAT_MAT4 = GlConsts.GL_FLOAT_MAT4, + GL_SAMPLER_1D = GlConsts.GL_SAMPLER_1D, + GL_SAMPLER_2D = GlConsts.GL_SAMPLER_2D, + GL_SAMPLER_3D = GlConsts.GL_SAMPLER_3D, + GL_SAMPLER_CUBE = GlConsts.GL_SAMPLER_CUBE, + GL_SAMPLER_1D_SHADOW = GlConsts.GL_SAMPLER_1D_SHADOW, + GL_SAMPLER_2D_SHADOW = GlConsts.GL_SAMPLER_2D_SHADOW, + GL_SAMPLER_2D_RECT = GlConsts.GL_SAMPLER_2D_RECT, + GL_SAMPLER_2D_RECT_SHADOW = GlConsts.GL_SAMPLER_2D_RECT_SHADOW, + GL_FLOAT_MAT2x3 = GlConsts.GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4 = GlConsts.GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2 = GlConsts.GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4 = GlConsts.GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2 = GlConsts.GL_FLOAT_MAT4x2, + GL_FLOAT_MAT4x3 = GlConsts.GL_FLOAT_MAT4x3, + GL_SAMPLER_1D_ARRAY = GlConsts.GL_SAMPLER_1D_ARRAY, + GL_SAMPLER_2D_ARRAY = GlConsts.GL_SAMPLER_2D_ARRAY, + GL_SAMPLER_BUFFER = GlConsts.GL_SAMPLER_BUFFER, + GL_SAMPLER_1D_ARRAY_SHADOW = GlConsts.GL_SAMPLER_1D_ARRAY_SHADOW, + GL_SAMPLER_2D_ARRAY_SHADOW = GlConsts.GL_SAMPLER_2D_ARRAY_SHADOW, + GL_SAMPLER_CUBE_SHADOW = GlConsts.GL_SAMPLER_CUBE_SHADOW, + GL_UNSIGNED_INT_VEC2 = GlConsts.GL_UNSIGNED_INT_VEC2, + GL_UNSIGNED_INT_VEC3 = GlConsts.GL_UNSIGNED_INT_VEC3, + GL_UNSIGNED_INT_VEC4 = GlConsts.GL_UNSIGNED_INT_VEC4, + GL_INT_SAMPLER_1D = GlConsts.GL_INT_SAMPLER_1D, + GL_INT_SAMPLER_2D = GlConsts.GL_INT_SAMPLER_2D, + GL_INT_SAMPLER_3D = GlConsts.GL_INT_SAMPLER_3D, + GL_INT_SAMPLER_CUBE = GlConsts.GL_INT_SAMPLER_CUBE, + GL_INT_SAMPLER_2D_RECT = GlConsts.GL_INT_SAMPLER_2D_RECT, + GL_INT_SAMPLER_1D_ARRAY = GlConsts.GL_INT_SAMPLER_1D_ARRAY, + GL_INT_SAMPLER_2D_ARRAY = GlConsts.GL_INT_SAMPLER_2D_ARRAY, + GL_INT_SAMPLER_BUFFER = GlConsts.GL_INT_SAMPLER_BUFFER, + GL_UNSIGNED_INT_SAMPLER_1D = GlConsts.GL_UNSIGNED_INT_SAMPLER_1D, + GL_UNSIGNED_INT_SAMPLER_2D = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D, + GL_UNSIGNED_INT_SAMPLER_3D = GlConsts.GL_UNSIGNED_INT_SAMPLER_3D, + GL_UNSIGNED_INT_SAMPLER_CUBE = GlConsts.GL_UNSIGNED_INT_SAMPLER_CUBE, + GL_UNSIGNED_INT_SAMPLER_2D_RECT = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D_RECT, + GL_UNSIGNED_INT_SAMPLER_1D_ARRAY = GlConsts.GL_UNSIGNED_INT_SAMPLER_1D_ARRAY, + GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D_ARRAY, + GL_UNSIGNED_INT_SAMPLER_BUFFER = GlConsts.GL_UNSIGNED_INT_SAMPLER_BUFFER, + GL_DOUBLE_MAT2 = GlConsts.GL_DOUBLE_MAT2, + GL_DOUBLE_MAT3 = GlConsts.GL_DOUBLE_MAT3, + GL_DOUBLE_MAT4 = GlConsts.GL_DOUBLE_MAT4, + GL_DOUBLE_MAT2x3 = GlConsts.GL_DOUBLE_MAT2x3, + GL_DOUBLE_MAT2x4 = GlConsts.GL_DOUBLE_MAT2x4, + GL_DOUBLE_MAT3x2 = GlConsts.GL_DOUBLE_MAT3x2, + GL_DOUBLE_MAT3x4 = GlConsts.GL_DOUBLE_MAT3x4, + GL_DOUBLE_MAT4x2 = GlConsts.GL_DOUBLE_MAT4x2, + GL_DOUBLE_MAT4x3 = GlConsts.GL_DOUBLE_MAT4x3, + GL_DOUBLE_VEC2 = GlConsts.GL_DOUBLE_VEC2, + GL_DOUBLE_VEC3 = GlConsts.GL_DOUBLE_VEC3, + GL_DOUBLE_VEC4 = GlConsts.GL_DOUBLE_VEC4, + GL_SAMPLER_CUBE_MAP_ARRAY = GlConsts.GL_SAMPLER_CUBE_MAP_ARRAY, + GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW = GlConsts.GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW, + GL_INT_SAMPLER_CUBE_MAP_ARRAY = GlConsts.GL_INT_SAMPLER_CUBE_MAP_ARRAY, + GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = GlConsts.GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY, + GL_SAMPLER_2D_MULTISAMPLE = GlConsts.GL_SAMPLER_2D_MULTISAMPLE, + GL_INT_SAMPLER_2D_MULTISAMPLE = GlConsts.GL_INT_SAMPLER_2D_MULTISAMPLE, + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE, + GL_SAMPLER_2D_MULTISAMPLE_ARRAY = GlConsts.GL_SAMPLER_2D_MULTISAMPLE_ARRAY, + GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = GlConsts.GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY, + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY, + }; + + public enum GlslTypeToken + { + GL_INT = GlConsts.GL_INT, + GL_UNSIGNED_INT = GlConsts.GL_UNSIGNED_INT, + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + GL_FLOAT_VEC2 = GlConsts.GL_FLOAT_VEC2, + GL_FLOAT_VEC3 = GlConsts.GL_FLOAT_VEC3, + GL_FLOAT_VEC4 = GlConsts.GL_FLOAT_VEC4, + GL_INT_VEC2 = GlConsts.GL_INT_VEC2, + GL_INT_VEC3 = GlConsts.GL_INT_VEC3, + GL_INT_VEC4 = GlConsts.GL_INT_VEC4, + GL_BOOL = GlConsts.GL_BOOL, + GL_BOOL_VEC2 = GlConsts.GL_BOOL_VEC2, + GL_BOOL_VEC3 = GlConsts.GL_BOOL_VEC3, + GL_BOOL_VEC4 = GlConsts.GL_BOOL_VEC4, + GL_FLOAT_MAT2 = GlConsts.GL_FLOAT_MAT2, + GL_FLOAT_MAT3 = GlConsts.GL_FLOAT_MAT3, + GL_FLOAT_MAT4 = GlConsts.GL_FLOAT_MAT4, + GL_SAMPLER_1D = GlConsts.GL_SAMPLER_1D, + GL_SAMPLER_2D = GlConsts.GL_SAMPLER_2D, + GL_SAMPLER_3D = GlConsts.GL_SAMPLER_3D, + GL_SAMPLER_CUBE = GlConsts.GL_SAMPLER_CUBE, + GL_SAMPLER_1D_SHADOW = GlConsts.GL_SAMPLER_1D_SHADOW, + GL_SAMPLER_2D_SHADOW = GlConsts.GL_SAMPLER_2D_SHADOW, + GL_SAMPLER_2D_RECT = GlConsts.GL_SAMPLER_2D_RECT, + GL_SAMPLER_2D_RECT_SHADOW = GlConsts.GL_SAMPLER_2D_RECT_SHADOW, + GL_FLOAT_MAT2x3 = GlConsts.GL_FLOAT_MAT2x3, + GL_FLOAT_MAT2x4 = GlConsts.GL_FLOAT_MAT2x4, + GL_FLOAT_MAT3x2 = GlConsts.GL_FLOAT_MAT3x2, + GL_FLOAT_MAT3x4 = GlConsts.GL_FLOAT_MAT3x4, + GL_FLOAT_MAT4x2 = GlConsts.GL_FLOAT_MAT4x2, + GL_FLOAT_MAT4x3 = GlConsts.GL_FLOAT_MAT4x3, + GL_SAMPLER_1D_ARRAY = GlConsts.GL_SAMPLER_1D_ARRAY, + GL_SAMPLER_2D_ARRAY = GlConsts.GL_SAMPLER_2D_ARRAY, + GL_SAMPLER_BUFFER = GlConsts.GL_SAMPLER_BUFFER, + GL_SAMPLER_1D_ARRAY_SHADOW = GlConsts.GL_SAMPLER_1D_ARRAY_SHADOW, + GL_SAMPLER_2D_ARRAY_SHADOW = GlConsts.GL_SAMPLER_2D_ARRAY_SHADOW, + GL_SAMPLER_CUBE_SHADOW = GlConsts.GL_SAMPLER_CUBE_SHADOW, + GL_UNSIGNED_INT_VEC2 = GlConsts.GL_UNSIGNED_INT_VEC2, + GL_UNSIGNED_INT_VEC3 = GlConsts.GL_UNSIGNED_INT_VEC3, + GL_UNSIGNED_INT_VEC4 = GlConsts.GL_UNSIGNED_INT_VEC4, + GL_INT_SAMPLER_1D = GlConsts.GL_INT_SAMPLER_1D, + GL_INT_SAMPLER_2D = GlConsts.GL_INT_SAMPLER_2D, + GL_INT_SAMPLER_3D = GlConsts.GL_INT_SAMPLER_3D, + GL_INT_SAMPLER_CUBE = GlConsts.GL_INT_SAMPLER_CUBE, + GL_INT_SAMPLER_2D_RECT = GlConsts.GL_INT_SAMPLER_2D_RECT, + GL_INT_SAMPLER_1D_ARRAY = GlConsts.GL_INT_SAMPLER_1D_ARRAY, + GL_INT_SAMPLER_2D_ARRAY = GlConsts.GL_INT_SAMPLER_2D_ARRAY, + GL_INT_SAMPLER_BUFFER = GlConsts.GL_INT_SAMPLER_BUFFER, + GL_UNSIGNED_INT_SAMPLER_1D = GlConsts.GL_UNSIGNED_INT_SAMPLER_1D, + GL_UNSIGNED_INT_SAMPLER_2D = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D, + GL_UNSIGNED_INT_SAMPLER_3D = GlConsts.GL_UNSIGNED_INT_SAMPLER_3D, + GL_UNSIGNED_INT_SAMPLER_CUBE = GlConsts.GL_UNSIGNED_INT_SAMPLER_CUBE, + GL_UNSIGNED_INT_SAMPLER_2D_RECT = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D_RECT, + GL_UNSIGNED_INT_SAMPLER_1D_ARRAY = GlConsts.GL_UNSIGNED_INT_SAMPLER_1D_ARRAY, + GL_UNSIGNED_INT_SAMPLER_2D_ARRAY = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D_ARRAY, + GL_UNSIGNED_INT_SAMPLER_BUFFER = GlConsts.GL_UNSIGNED_INT_SAMPLER_BUFFER, + GL_DOUBLE_MAT2 = GlConsts.GL_DOUBLE_MAT2, + GL_DOUBLE_MAT3 = GlConsts.GL_DOUBLE_MAT3, + GL_DOUBLE_MAT4 = GlConsts.GL_DOUBLE_MAT4, + GL_DOUBLE_VEC2 = GlConsts.GL_DOUBLE_VEC2, + GL_DOUBLE_VEC3 = GlConsts.GL_DOUBLE_VEC3, + GL_DOUBLE_VEC4 = GlConsts.GL_DOUBLE_VEC4, + GL_SAMPLER_CUBE_MAP_ARRAY = GlConsts.GL_SAMPLER_CUBE_MAP_ARRAY, + GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW = GlConsts.GL_SAMPLER_CUBE_MAP_ARRAY_SHADOW, + GL_INT_SAMPLER_CUBE_MAP_ARRAY = GlConsts.GL_INT_SAMPLER_CUBE_MAP_ARRAY, + GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY = GlConsts.GL_UNSIGNED_INT_SAMPLER_CUBE_MAP_ARRAY, + GL_IMAGE_1D = GlConsts.GL_IMAGE_1D, + GL_IMAGE_2D = GlConsts.GL_IMAGE_2D, + GL_IMAGE_3D = GlConsts.GL_IMAGE_3D, + GL_IMAGE_2D_RECT = GlConsts.GL_IMAGE_2D_RECT, + GL_IMAGE_CUBE = GlConsts.GL_IMAGE_CUBE, + GL_IMAGE_BUFFER = GlConsts.GL_IMAGE_BUFFER, + GL_IMAGE_1D_ARRAY = GlConsts.GL_IMAGE_1D_ARRAY, + GL_IMAGE_2D_ARRAY = GlConsts.GL_IMAGE_2D_ARRAY, + GL_IMAGE_CUBE_MAP_ARRAY = GlConsts.GL_IMAGE_CUBE_MAP_ARRAY, + GL_IMAGE_2D_MULTISAMPLE = GlConsts.GL_IMAGE_2D_MULTISAMPLE, + GL_IMAGE_2D_MULTISAMPLE_ARRAY = GlConsts.GL_IMAGE_2D_MULTISAMPLE_ARRAY, + GL_INT_IMAGE_1D = GlConsts.GL_INT_IMAGE_1D, + GL_INT_IMAGE_2D = GlConsts.GL_INT_IMAGE_2D, + GL_INT_IMAGE_3D = GlConsts.GL_INT_IMAGE_3D, + GL_INT_IMAGE_2D_RECT = GlConsts.GL_INT_IMAGE_2D_RECT, + GL_INT_IMAGE_CUBE = GlConsts.GL_INT_IMAGE_CUBE, + GL_INT_IMAGE_BUFFER = GlConsts.GL_INT_IMAGE_BUFFER, + GL_INT_IMAGE_1D_ARRAY = GlConsts.GL_INT_IMAGE_1D_ARRAY, + GL_INT_IMAGE_2D_ARRAY = GlConsts.GL_INT_IMAGE_2D_ARRAY, + GL_INT_IMAGE_CUBE_MAP_ARRAY = GlConsts.GL_INT_IMAGE_CUBE_MAP_ARRAY, + GL_INT_IMAGE_2D_MULTISAMPLE = GlConsts.GL_INT_IMAGE_2D_MULTISAMPLE, + GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY = GlConsts.GL_INT_IMAGE_2D_MULTISAMPLE_ARRAY, + GL_UNSIGNED_INT_IMAGE_1D = GlConsts.GL_UNSIGNED_INT_IMAGE_1D, + GL_UNSIGNED_INT_IMAGE_2D = GlConsts.GL_UNSIGNED_INT_IMAGE_2D, + GL_UNSIGNED_INT_IMAGE_3D = GlConsts.GL_UNSIGNED_INT_IMAGE_3D, + GL_UNSIGNED_INT_IMAGE_2D_RECT = GlConsts.GL_UNSIGNED_INT_IMAGE_2D_RECT, + GL_UNSIGNED_INT_IMAGE_CUBE = GlConsts.GL_UNSIGNED_INT_IMAGE_CUBE, + GL_UNSIGNED_INT_IMAGE_BUFFER = GlConsts.GL_UNSIGNED_INT_IMAGE_BUFFER, + GL_UNSIGNED_INT_IMAGE_1D_ARRAY = GlConsts.GL_UNSIGNED_INT_IMAGE_1D_ARRAY, + GL_UNSIGNED_INT_IMAGE_2D_ARRAY = GlConsts.GL_UNSIGNED_INT_IMAGE_2D_ARRAY, + GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY = GlConsts.GL_UNSIGNED_INT_IMAGE_CUBE_MAP_ARRAY, + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE = GlConsts.GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE, + GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY = GlConsts.GL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAY, + GL_SAMPLER_2D_MULTISAMPLE = GlConsts.GL_SAMPLER_2D_MULTISAMPLE, + GL_INT_SAMPLER_2D_MULTISAMPLE = GlConsts.GL_INT_SAMPLER_2D_MULTISAMPLE, + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE, + GL_SAMPLER_2D_MULTISAMPLE_ARRAY = GlConsts.GL_SAMPLER_2D_MULTISAMPLE_ARRAY, + GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = GlConsts.GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY, + GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY = GlConsts.GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY, + GL_UNSIGNED_INT_ATOMIC_COUNTER = GlConsts.GL_UNSIGNED_INT_ATOMIC_COUNTER, + }; + + public enum MapTypeNV + { + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + }; + + public enum VertexWeightPointerTypeEXT + { + GL_FLOAT = GlConsts.GL_FLOAT, + }; + + public enum FogCoordinatePointerType + { + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + }; + + public enum FogPointerTypeEXT + { + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + }; + + public enum FogPointerTypeIBM + { + GL_FLOAT = GlConsts.GL_FLOAT, + GL_DOUBLE = GlConsts.GL_DOUBLE, + }; + + public enum VertexAttribLType + { + GL_DOUBLE = GlConsts.GL_DOUBLE, + }; + + public enum LogicOp + { + GL_CLEAR = GlConsts.GL_CLEAR, + GL_AND = GlConsts.GL_AND, + GL_AND_REVERSE = GlConsts.GL_AND_REVERSE, + GL_COPY = GlConsts.GL_COPY, + GL_AND_INVERTED = GlConsts.GL_AND_INVERTED, + GL_NOOP = GlConsts.GL_NOOP, + GL_XOR = GlConsts.GL_XOR, + GL_OR = GlConsts.GL_OR, + GL_NOR = GlConsts.GL_NOR, + GL_EQUIV = GlConsts.GL_EQUIV, + GL_INVERT = GlConsts.GL_INVERT, + GL_OR_REVERSE = GlConsts.GL_OR_REVERSE, + GL_COPY_INVERTED = GlConsts.GL_COPY_INVERTED, + GL_OR_INVERTED = GlConsts.GL_OR_INVERTED, + GL_NAND = GlConsts.GL_NAND, + GL_SET = GlConsts.GL_SET, + }; + + public enum PathFillMode + { + GL_INVERT = GlConsts.GL_INVERT, + GL_PATH_FILL_MODE_NV = GlConsts.GL_PATH_FILL_MODE_NV, + GL_COUNT_UP_NV = GlConsts.GL_COUNT_UP_NV, + GL_COUNT_DOWN_NV = GlConsts.GL_COUNT_DOWN_NV, + }; + + public enum MatrixMode + { + GL_MODELVIEW = GlConsts.GL_MODELVIEW, + GL_MODELVIEW0_EXT = GlConsts.GL_MODELVIEW0_EXT, + GL_PROJECTION = GlConsts.GL_PROJECTION, + GL_TEXTURE = GlConsts.GL_TEXTURE, + }; + + public enum ObjectIdentifier + { + GL_TEXTURE = GlConsts.GL_TEXTURE, + GL_VERTEX_ARRAY = GlConsts.GL_VERTEX_ARRAY, + GL_BUFFER = GlConsts.GL_BUFFER, + GL_SHADER = GlConsts.GL_SHADER, + GL_PROGRAM = GlConsts.GL_PROGRAM, + GL_QUERY = GlConsts.GL_QUERY, + GL_PROGRAM_PIPELINE = GlConsts.GL_PROGRAM_PIPELINE, + GL_SAMPLER = GlConsts.GL_SAMPLER, + GL_FRAMEBUFFER = GlConsts.GL_FRAMEBUFFER, + GL_RENDERBUFFER = GlConsts.GL_RENDERBUFFER, + GL_TRANSFORM_FEEDBACK = GlConsts.GL_TRANSFORM_FEEDBACK, + }; + + public enum Buffer + { + GL_COLOR = GlConsts.GL_COLOR, + GL_DEPTH = GlConsts.GL_DEPTH, + GL_STENCIL = GlConsts.GL_STENCIL, + }; + + public enum PixelCopyType + { + GL_COLOR = GlConsts.GL_COLOR, + GL_COLOR_EXT = GlConsts.GL_COLOR_EXT, + GL_DEPTH = GlConsts.GL_DEPTH, + GL_DEPTH_EXT = GlConsts.GL_DEPTH_EXT, + GL_STENCIL = GlConsts.GL_STENCIL, + GL_STENCIL_EXT = GlConsts.GL_STENCIL_EXT, + }; + + public enum InvalidateFramebufferAttachment + { + GL_COLOR = GlConsts.GL_COLOR, + GL_DEPTH = GlConsts.GL_DEPTH, + GL_STENCIL = GlConsts.GL_STENCIL, + GL_DEPTH_STENCIL_ATTACHMENT = GlConsts.GL_DEPTH_STENCIL_ATTACHMENT, + GL_COLOR_ATTACHMENT0 = GlConsts.GL_COLOR_ATTACHMENT0, + GL_COLOR_ATTACHMENT0_EXT = GlConsts.GL_COLOR_ATTACHMENT0_EXT, + GL_COLOR_ATTACHMENT0_NV = GlConsts.GL_COLOR_ATTACHMENT0_NV, + GL_COLOR_ATTACHMENT0_OES = GlConsts.GL_COLOR_ATTACHMENT0_OES, + GL_COLOR_ATTACHMENT1 = GlConsts.GL_COLOR_ATTACHMENT1, + GL_COLOR_ATTACHMENT1_EXT = GlConsts.GL_COLOR_ATTACHMENT1_EXT, + GL_COLOR_ATTACHMENT1_NV = GlConsts.GL_COLOR_ATTACHMENT1_NV, + GL_COLOR_ATTACHMENT2 = GlConsts.GL_COLOR_ATTACHMENT2, + GL_COLOR_ATTACHMENT2_EXT = GlConsts.GL_COLOR_ATTACHMENT2_EXT, + GL_COLOR_ATTACHMENT2_NV = GlConsts.GL_COLOR_ATTACHMENT2_NV, + GL_COLOR_ATTACHMENT3 = GlConsts.GL_COLOR_ATTACHMENT3, + GL_COLOR_ATTACHMENT3_EXT = GlConsts.GL_COLOR_ATTACHMENT3_EXT, + GL_COLOR_ATTACHMENT3_NV = GlConsts.GL_COLOR_ATTACHMENT3_NV, + GL_COLOR_ATTACHMENT4 = GlConsts.GL_COLOR_ATTACHMENT4, + GL_COLOR_ATTACHMENT4_EXT = GlConsts.GL_COLOR_ATTACHMENT4_EXT, + GL_COLOR_ATTACHMENT4_NV = GlConsts.GL_COLOR_ATTACHMENT4_NV, + GL_COLOR_ATTACHMENT5 = GlConsts.GL_COLOR_ATTACHMENT5, + GL_COLOR_ATTACHMENT5_EXT = GlConsts.GL_COLOR_ATTACHMENT5_EXT, + GL_COLOR_ATTACHMENT5_NV = GlConsts.GL_COLOR_ATTACHMENT5_NV, + GL_COLOR_ATTACHMENT6 = GlConsts.GL_COLOR_ATTACHMENT6, + GL_COLOR_ATTACHMENT6_EXT = GlConsts.GL_COLOR_ATTACHMENT6_EXT, + GL_COLOR_ATTACHMENT6_NV = GlConsts.GL_COLOR_ATTACHMENT6_NV, + GL_COLOR_ATTACHMENT7 = GlConsts.GL_COLOR_ATTACHMENT7, + GL_COLOR_ATTACHMENT7_EXT = GlConsts.GL_COLOR_ATTACHMENT7_EXT, + GL_COLOR_ATTACHMENT7_NV = GlConsts.GL_COLOR_ATTACHMENT7_NV, + GL_COLOR_ATTACHMENT8 = GlConsts.GL_COLOR_ATTACHMENT8, + GL_COLOR_ATTACHMENT8_EXT = GlConsts.GL_COLOR_ATTACHMENT8_EXT, + GL_COLOR_ATTACHMENT8_NV = GlConsts.GL_COLOR_ATTACHMENT8_NV, + GL_COLOR_ATTACHMENT9 = GlConsts.GL_COLOR_ATTACHMENT9, + GL_COLOR_ATTACHMENT9_EXT = GlConsts.GL_COLOR_ATTACHMENT9_EXT, + GL_COLOR_ATTACHMENT9_NV = GlConsts.GL_COLOR_ATTACHMENT9_NV, + GL_COLOR_ATTACHMENT10 = GlConsts.GL_COLOR_ATTACHMENT10, + GL_COLOR_ATTACHMENT10_EXT = GlConsts.GL_COLOR_ATTACHMENT10_EXT, + GL_COLOR_ATTACHMENT10_NV = GlConsts.GL_COLOR_ATTACHMENT10_NV, + GL_COLOR_ATTACHMENT11 = GlConsts.GL_COLOR_ATTACHMENT11, + GL_COLOR_ATTACHMENT11_EXT = GlConsts.GL_COLOR_ATTACHMENT11_EXT, + GL_COLOR_ATTACHMENT11_NV = GlConsts.GL_COLOR_ATTACHMENT11_NV, + GL_COLOR_ATTACHMENT12 = GlConsts.GL_COLOR_ATTACHMENT12, + GL_COLOR_ATTACHMENT12_EXT = GlConsts.GL_COLOR_ATTACHMENT12_EXT, + GL_COLOR_ATTACHMENT12_NV = GlConsts.GL_COLOR_ATTACHMENT12_NV, + GL_COLOR_ATTACHMENT13 = GlConsts.GL_COLOR_ATTACHMENT13, + GL_COLOR_ATTACHMENT13_EXT = GlConsts.GL_COLOR_ATTACHMENT13_EXT, + GL_COLOR_ATTACHMENT13_NV = GlConsts.GL_COLOR_ATTACHMENT13_NV, + GL_COLOR_ATTACHMENT14 = GlConsts.GL_COLOR_ATTACHMENT14, + GL_COLOR_ATTACHMENT14_EXT = GlConsts.GL_COLOR_ATTACHMENT14_EXT, + GL_COLOR_ATTACHMENT14_NV = GlConsts.GL_COLOR_ATTACHMENT14_NV, + GL_COLOR_ATTACHMENT15 = GlConsts.GL_COLOR_ATTACHMENT15, + GL_COLOR_ATTACHMENT15_EXT = GlConsts.GL_COLOR_ATTACHMENT15_EXT, + GL_COLOR_ATTACHMENT15_NV = GlConsts.GL_COLOR_ATTACHMENT15_NV, + GL_COLOR_ATTACHMENT16 = GlConsts.GL_COLOR_ATTACHMENT16, + GL_COLOR_ATTACHMENT17 = GlConsts.GL_COLOR_ATTACHMENT17, + GL_COLOR_ATTACHMENT18 = GlConsts.GL_COLOR_ATTACHMENT18, + GL_COLOR_ATTACHMENT19 = GlConsts.GL_COLOR_ATTACHMENT19, + GL_COLOR_ATTACHMENT20 = GlConsts.GL_COLOR_ATTACHMENT20, + GL_COLOR_ATTACHMENT21 = GlConsts.GL_COLOR_ATTACHMENT21, + GL_COLOR_ATTACHMENT22 = GlConsts.GL_COLOR_ATTACHMENT22, + GL_COLOR_ATTACHMENT23 = GlConsts.GL_COLOR_ATTACHMENT23, + GL_COLOR_ATTACHMENT24 = GlConsts.GL_COLOR_ATTACHMENT24, + GL_COLOR_ATTACHMENT25 = GlConsts.GL_COLOR_ATTACHMENT25, + GL_COLOR_ATTACHMENT26 = GlConsts.GL_COLOR_ATTACHMENT26, + GL_COLOR_ATTACHMENT27 = GlConsts.GL_COLOR_ATTACHMENT27, + GL_COLOR_ATTACHMENT28 = GlConsts.GL_COLOR_ATTACHMENT28, + GL_COLOR_ATTACHMENT29 = GlConsts.GL_COLOR_ATTACHMENT29, + GL_COLOR_ATTACHMENT30 = GlConsts.GL_COLOR_ATTACHMENT30, + GL_COLOR_ATTACHMENT31 = GlConsts.GL_COLOR_ATTACHMENT31, + GL_DEPTH_ATTACHMENT = GlConsts.GL_DEPTH_ATTACHMENT, + GL_DEPTH_ATTACHMENT_EXT = GlConsts.GL_DEPTH_ATTACHMENT_EXT, + GL_DEPTH_ATTACHMENT_OES = GlConsts.GL_DEPTH_ATTACHMENT_OES, + GL_STENCIL_ATTACHMENT_EXT = GlConsts.GL_STENCIL_ATTACHMENT_EXT, + GL_STENCIL_ATTACHMENT_OES = GlConsts.GL_STENCIL_ATTACHMENT_OES, + }; + + public enum InternalFormat + { + GL_STENCIL_INDEX = GlConsts.GL_STENCIL_INDEX, + GL_STENCIL_INDEX_OES = GlConsts.GL_STENCIL_INDEX_OES, + GL_DEPTH_COMPONENT = GlConsts.GL_DEPTH_COMPONENT, + GL_RED = GlConsts.GL_RED, + GL_RED_EXT = GlConsts.GL_RED_EXT, + GL_RGB = GlConsts.GL_RGB, + GL_RGBA = GlConsts.GL_RGBA, + GL_R3_G3_B2 = GlConsts.GL_R3_G3_B2, + GL_ALPHA4 = GlConsts.GL_ALPHA4, + GL_ALPHA8 = GlConsts.GL_ALPHA8, + GL_ALPHA12 = GlConsts.GL_ALPHA12, + GL_ALPHA16 = GlConsts.GL_ALPHA16, + GL_LUMINANCE4 = GlConsts.GL_LUMINANCE4, + GL_LUMINANCE8 = GlConsts.GL_LUMINANCE8, + GL_LUMINANCE12 = GlConsts.GL_LUMINANCE12, + GL_LUMINANCE16 = GlConsts.GL_LUMINANCE16, + GL_LUMINANCE4_ALPHA4 = GlConsts.GL_LUMINANCE4_ALPHA4, + GL_LUMINANCE6_ALPHA2 = GlConsts.GL_LUMINANCE6_ALPHA2, + GL_LUMINANCE8_ALPHA8 = GlConsts.GL_LUMINANCE8_ALPHA8, + GL_LUMINANCE12_ALPHA4 = GlConsts.GL_LUMINANCE12_ALPHA4, + GL_LUMINANCE12_ALPHA12 = GlConsts.GL_LUMINANCE12_ALPHA12, + GL_LUMINANCE16_ALPHA16 = GlConsts.GL_LUMINANCE16_ALPHA16, + GL_INTENSITY = GlConsts.GL_INTENSITY, + GL_INTENSITY4 = GlConsts.GL_INTENSITY4, + GL_INTENSITY8 = GlConsts.GL_INTENSITY8, + GL_INTENSITY12 = GlConsts.GL_INTENSITY12, + GL_INTENSITY16 = GlConsts.GL_INTENSITY16, + GL_RGB2_EXT = GlConsts.GL_RGB2_EXT, + GL_RGB4 = GlConsts.GL_RGB4, + GL_RGB4_EXT = GlConsts.GL_RGB4_EXT, + GL_RGB5 = GlConsts.GL_RGB5, + GL_RGB5_EXT = GlConsts.GL_RGB5_EXT, + GL_RGB8 = GlConsts.GL_RGB8, + GL_RGB8_EXT = GlConsts.GL_RGB8_EXT, + GL_RGB8_OES = GlConsts.GL_RGB8_OES, + GL_RGB10 = GlConsts.GL_RGB10, + GL_RGB10_EXT = GlConsts.GL_RGB10_EXT, + GL_RGB12 = GlConsts.GL_RGB12, + GL_RGB12_EXT = GlConsts.GL_RGB12_EXT, + GL_RGB16 = GlConsts.GL_RGB16, + GL_RGB16_EXT = GlConsts.GL_RGB16_EXT, + GL_RGBA4 = GlConsts.GL_RGBA4, + GL_RGBA4_EXT = GlConsts.GL_RGBA4_EXT, + GL_RGBA4_OES = GlConsts.GL_RGBA4_OES, + GL_RGB5_A1 = GlConsts.GL_RGB5_A1, + GL_RGB5_A1_EXT = GlConsts.GL_RGB5_A1_EXT, + GL_RGB5_A1_OES = GlConsts.GL_RGB5_A1_OES, + GL_RGBA8 = GlConsts.GL_RGBA8, + GL_RGBA8_EXT = GlConsts.GL_RGBA8_EXT, + GL_RGBA8_OES = GlConsts.GL_RGBA8_OES, + GL_RGB10_A2 = GlConsts.GL_RGB10_A2, + GL_RGB10_A2_EXT = GlConsts.GL_RGB10_A2_EXT, + GL_RGBA12 = GlConsts.GL_RGBA12, + GL_RGBA12_EXT = GlConsts.GL_RGBA12_EXT, + GL_RGBA16 = GlConsts.GL_RGBA16, + GL_RGBA16_EXT = GlConsts.GL_RGBA16_EXT, + GL_DUAL_ALPHA4_SGIS = GlConsts.GL_DUAL_ALPHA4_SGIS, + GL_DUAL_ALPHA8_SGIS = GlConsts.GL_DUAL_ALPHA8_SGIS, + GL_DUAL_ALPHA12_SGIS = GlConsts.GL_DUAL_ALPHA12_SGIS, + GL_DUAL_ALPHA16_SGIS = GlConsts.GL_DUAL_ALPHA16_SGIS, + GL_DUAL_LUMINANCE4_SGIS = GlConsts.GL_DUAL_LUMINANCE4_SGIS, + GL_DUAL_LUMINANCE8_SGIS = GlConsts.GL_DUAL_LUMINANCE8_SGIS, + GL_DUAL_LUMINANCE12_SGIS = GlConsts.GL_DUAL_LUMINANCE12_SGIS, + GL_DUAL_LUMINANCE16_SGIS = GlConsts.GL_DUAL_LUMINANCE16_SGIS, + GL_DUAL_INTENSITY4_SGIS = GlConsts.GL_DUAL_INTENSITY4_SGIS, + GL_DUAL_INTENSITY8_SGIS = GlConsts.GL_DUAL_INTENSITY8_SGIS, + GL_DUAL_INTENSITY12_SGIS = GlConsts.GL_DUAL_INTENSITY12_SGIS, + GL_DUAL_INTENSITY16_SGIS = GlConsts.GL_DUAL_INTENSITY16_SGIS, + GL_DUAL_LUMINANCE_ALPHA4_SGIS = GlConsts.GL_DUAL_LUMINANCE_ALPHA4_SGIS, + GL_DUAL_LUMINANCE_ALPHA8_SGIS = GlConsts.GL_DUAL_LUMINANCE_ALPHA8_SGIS, + GL_QUAD_ALPHA4_SGIS = GlConsts.GL_QUAD_ALPHA4_SGIS, + GL_QUAD_ALPHA8_SGIS = GlConsts.GL_QUAD_ALPHA8_SGIS, + GL_QUAD_LUMINANCE4_SGIS = GlConsts.GL_QUAD_LUMINANCE4_SGIS, + GL_QUAD_LUMINANCE8_SGIS = GlConsts.GL_QUAD_LUMINANCE8_SGIS, + GL_QUAD_INTENSITY4_SGIS = GlConsts.GL_QUAD_INTENSITY4_SGIS, + GL_QUAD_INTENSITY8_SGIS = GlConsts.GL_QUAD_INTENSITY8_SGIS, + GL_DEPTH_COMPONENT16 = GlConsts.GL_DEPTH_COMPONENT16, + GL_DEPTH_COMPONENT16_ARB = GlConsts.GL_DEPTH_COMPONENT16_ARB, + GL_DEPTH_COMPONENT16_OES = GlConsts.GL_DEPTH_COMPONENT16_OES, + GL_DEPTH_COMPONENT16_SGIX = GlConsts.GL_DEPTH_COMPONENT16_SGIX, + GL_DEPTH_COMPONENT24_ARB = GlConsts.GL_DEPTH_COMPONENT24_ARB, + GL_DEPTH_COMPONENT24_OES = GlConsts.GL_DEPTH_COMPONENT24_OES, + GL_DEPTH_COMPONENT24_SGIX = GlConsts.GL_DEPTH_COMPONENT24_SGIX, + GL_DEPTH_COMPONENT32_ARB = GlConsts.GL_DEPTH_COMPONENT32_ARB, + GL_DEPTH_COMPONENT32_OES = GlConsts.GL_DEPTH_COMPONENT32_OES, + GL_DEPTH_COMPONENT32_SGIX = GlConsts.GL_DEPTH_COMPONENT32_SGIX, + GL_COMPRESSED_RED = GlConsts.GL_COMPRESSED_RED, + GL_COMPRESSED_RG = GlConsts.GL_COMPRESSED_RG, + GL_RG = GlConsts.GL_RG, + GL_R8 = GlConsts.GL_R8, + GL_R8_EXT = GlConsts.GL_R8_EXT, + GL_R16 = GlConsts.GL_R16, + GL_R16_EXT = GlConsts.GL_R16_EXT, + GL_RG8 = GlConsts.GL_RG8, + GL_RG8_EXT = GlConsts.GL_RG8_EXT, + GL_RG16 = GlConsts.GL_RG16, + GL_RG16_EXT = GlConsts.GL_RG16_EXT, + GL_R16F = GlConsts.GL_R16F, + GL_R16F_EXT = GlConsts.GL_R16F_EXT, + GL_R32F = GlConsts.GL_R32F, + GL_R32F_EXT = GlConsts.GL_R32F_EXT, + GL_RG16F = GlConsts.GL_RG16F, + GL_RG16F_EXT = GlConsts.GL_RG16F_EXT, + GL_RG32F = GlConsts.GL_RG32F, + GL_RG32F_EXT = GlConsts.GL_RG32F_EXT, + GL_R8I = GlConsts.GL_R8I, + GL_R8UI = GlConsts.GL_R8UI, + GL_R16I = GlConsts.GL_R16I, + GL_R16UI = GlConsts.GL_R16UI, + GL_R32I = GlConsts.GL_R32I, + GL_R32UI = GlConsts.GL_R32UI, + GL_RG8I = GlConsts.GL_RG8I, + GL_RG8UI = GlConsts.GL_RG8UI, + GL_RG16I = GlConsts.GL_RG16I, + GL_RG16UI = GlConsts.GL_RG16UI, + GL_RG32I = GlConsts.GL_RG32I, + GL_RG32UI = GlConsts.GL_RG32UI, + GL_COMPRESSED_RGB_S3TC_DXT1_EXT = GlConsts.GL_COMPRESSED_RGB_S3TC_DXT1_EXT, + GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = GlConsts.GL_COMPRESSED_RGBA_S3TC_DXT1_EXT, + GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = GlConsts.GL_COMPRESSED_RGBA_S3TC_DXT3_EXT, + GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = GlConsts.GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, + GL_COMPRESSED_RGB = GlConsts.GL_COMPRESSED_RGB, + GL_COMPRESSED_RGBA = GlConsts.GL_COMPRESSED_RGBA, + GL_DEPTH_STENCIL = GlConsts.GL_DEPTH_STENCIL, + GL_DEPTH_STENCIL_EXT = GlConsts.GL_DEPTH_STENCIL_EXT, + GL_DEPTH_STENCIL_NV = GlConsts.GL_DEPTH_STENCIL_NV, + GL_DEPTH_STENCIL_OES = GlConsts.GL_DEPTH_STENCIL_OES, + GL_DEPTH_STENCIL_MESA = GlConsts.GL_DEPTH_STENCIL_MESA, + GL_RGBA32F = GlConsts.GL_RGBA32F, + GL_RGBA32F_ARB = GlConsts.GL_RGBA32F_ARB, + GL_RGBA32F_EXT = GlConsts.GL_RGBA32F_EXT, + GL_RGB32F = GlConsts.GL_RGB32F, + GL_RGBA16F = GlConsts.GL_RGBA16F, + GL_RGBA16F_ARB = GlConsts.GL_RGBA16F_ARB, + GL_RGBA16F_EXT = GlConsts.GL_RGBA16F_EXT, + GL_RGB16F = GlConsts.GL_RGB16F, + GL_RGB16F_ARB = GlConsts.GL_RGB16F_ARB, + GL_RGB16F_EXT = GlConsts.GL_RGB16F_EXT, + GL_DEPTH24_STENCIL8 = GlConsts.GL_DEPTH24_STENCIL8, + GL_DEPTH24_STENCIL8_EXT = GlConsts.GL_DEPTH24_STENCIL8_EXT, + GL_DEPTH24_STENCIL8_OES = GlConsts.GL_DEPTH24_STENCIL8_OES, + GL_R11F_G11F_B10F = GlConsts.GL_R11F_G11F_B10F, + GL_R11F_G11F_B10F_APPLE = GlConsts.GL_R11F_G11F_B10F_APPLE, + GL_R11F_G11F_B10F_EXT = GlConsts.GL_R11F_G11F_B10F_EXT, + GL_RGB9_E5 = GlConsts.GL_RGB9_E5, + GL_RGB9_E5_APPLE = GlConsts.GL_RGB9_E5_APPLE, + GL_RGB9_E5_EXT = GlConsts.GL_RGB9_E5_EXT, + GL_SRGB = GlConsts.GL_SRGB, + GL_SRGB_EXT = GlConsts.GL_SRGB_EXT, + GL_SRGB8 = GlConsts.GL_SRGB8, + GL_SRGB8_EXT = GlConsts.GL_SRGB8_EXT, + GL_SRGB8_NV = GlConsts.GL_SRGB8_NV, + GL_SRGB_ALPHA = GlConsts.GL_SRGB_ALPHA, + GL_SRGB_ALPHA_EXT = GlConsts.GL_SRGB_ALPHA_EXT, + GL_SRGB8_ALPHA8 = GlConsts.GL_SRGB8_ALPHA8, + GL_SRGB8_ALPHA8_EXT = GlConsts.GL_SRGB8_ALPHA8_EXT, + GL_COMPRESSED_SRGB = GlConsts.GL_COMPRESSED_SRGB, + GL_COMPRESSED_SRGB_ALPHA = GlConsts.GL_COMPRESSED_SRGB_ALPHA, + GL_COMPRESSED_SRGB_S3TC_DXT1_EXT = GlConsts.GL_COMPRESSED_SRGB_S3TC_DXT1_EXT, + GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = GlConsts.GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT, + GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = GlConsts.GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT, + GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = GlConsts.GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT, + GL_DEPTH_COMPONENT32F = GlConsts.GL_DEPTH_COMPONENT32F, + GL_DEPTH32F_STENCIL8 = GlConsts.GL_DEPTH32F_STENCIL8, + GL_STENCIL_INDEX1 = GlConsts.GL_STENCIL_INDEX1, + GL_STENCIL_INDEX1_EXT = GlConsts.GL_STENCIL_INDEX1_EXT, + GL_STENCIL_INDEX1_OES = GlConsts.GL_STENCIL_INDEX1_OES, + GL_STENCIL_INDEX4 = GlConsts.GL_STENCIL_INDEX4, + GL_STENCIL_INDEX4_EXT = GlConsts.GL_STENCIL_INDEX4_EXT, + GL_STENCIL_INDEX4_OES = GlConsts.GL_STENCIL_INDEX4_OES, + GL_STENCIL_INDEX8 = GlConsts.GL_STENCIL_INDEX8, + GL_STENCIL_INDEX8_EXT = GlConsts.GL_STENCIL_INDEX8_EXT, + GL_STENCIL_INDEX8_OES = GlConsts.GL_STENCIL_INDEX8_OES, + GL_STENCIL_INDEX16 = GlConsts.GL_STENCIL_INDEX16, + GL_STENCIL_INDEX16_EXT = GlConsts.GL_STENCIL_INDEX16_EXT, + GL_RGBA32UI = GlConsts.GL_RGBA32UI, + GL_RGB32UI = GlConsts.GL_RGB32UI, + GL_RGBA16UI = GlConsts.GL_RGBA16UI, + GL_RGB16UI = GlConsts.GL_RGB16UI, + GL_RGBA8UI = GlConsts.GL_RGBA8UI, + GL_RGB8UI = GlConsts.GL_RGB8UI, + GL_RGBA32I = GlConsts.GL_RGBA32I, + GL_RGB32I = GlConsts.GL_RGB32I, + GL_RGBA16I = GlConsts.GL_RGBA16I, + GL_RGB16I = GlConsts.GL_RGB16I, + GL_RGBA8I = GlConsts.GL_RGBA8I, + GL_RGB8I = GlConsts.GL_RGB8I, + GL_DEPTH_COMPONENT32F_NV = GlConsts.GL_DEPTH_COMPONENT32F_NV, + GL_DEPTH32F_STENCIL8_NV = GlConsts.GL_DEPTH32F_STENCIL8_NV, + GL_COMPRESSED_RED_RGTC1 = GlConsts.GL_COMPRESSED_RED_RGTC1, + GL_COMPRESSED_RED_RGTC1_EXT = GlConsts.GL_COMPRESSED_RED_RGTC1_EXT, + GL_COMPRESSED_SIGNED_RED_RGTC1 = GlConsts.GL_COMPRESSED_SIGNED_RED_RGTC1, + GL_COMPRESSED_SIGNED_RED_RGTC1_EXT = GlConsts.GL_COMPRESSED_SIGNED_RED_RGTC1_EXT, + GL_COMPRESSED_RG_RGTC2 = GlConsts.GL_COMPRESSED_RG_RGTC2, + GL_COMPRESSED_SIGNED_RG_RGTC2 = GlConsts.GL_COMPRESSED_SIGNED_RG_RGTC2, + GL_COMPRESSED_RGBA_BPTC_UNORM = GlConsts.GL_COMPRESSED_RGBA_BPTC_UNORM, + GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM = GlConsts.GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM, + GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT = GlConsts.GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT, + GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT = GlConsts.GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT, + GL_R8_SNORM = GlConsts.GL_R8_SNORM, + GL_RG8_SNORM = GlConsts.GL_RG8_SNORM, + GL_RGB8_SNORM = GlConsts.GL_RGB8_SNORM, + GL_RGBA8_SNORM = GlConsts.GL_RGBA8_SNORM, + GL_R16_SNORM = GlConsts.GL_R16_SNORM, + GL_R16_SNORM_EXT = GlConsts.GL_R16_SNORM_EXT, + GL_RG16_SNORM = GlConsts.GL_RG16_SNORM, + GL_RG16_SNORM_EXT = GlConsts.GL_RG16_SNORM_EXT, + GL_RGB16_SNORM = GlConsts.GL_RGB16_SNORM, + GL_RGB16_SNORM_EXT = GlConsts.GL_RGB16_SNORM_EXT, + GL_RGB10_A2UI = GlConsts.GL_RGB10_A2UI, + GL_COMPRESSED_R11_EAC = GlConsts.GL_COMPRESSED_R11_EAC, + GL_COMPRESSED_SIGNED_R11_EAC = GlConsts.GL_COMPRESSED_SIGNED_R11_EAC, + GL_COMPRESSED_RG11_EAC = GlConsts.GL_COMPRESSED_RG11_EAC, + GL_COMPRESSED_SIGNED_RG11_EAC = GlConsts.GL_COMPRESSED_SIGNED_RG11_EAC, + GL_COMPRESSED_RGB8_ETC2 = GlConsts.GL_COMPRESSED_RGB8_ETC2, + GL_COMPRESSED_SRGB8_ETC2 = GlConsts.GL_COMPRESSED_SRGB8_ETC2, + GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2 = GlConsts.GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2, + GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2 = GlConsts.GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2, + GL_COMPRESSED_RGBA8_ETC2_EAC = GlConsts.GL_COMPRESSED_RGBA8_ETC2_EAC, + GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC, + GL_COMPRESSED_RGBA_ASTC_4x4 = GlConsts.GL_COMPRESSED_RGBA_ASTC_4x4, + GL_COMPRESSED_RGBA_ASTC_4x4_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_4x4_KHR, + GL_COMPRESSED_RGBA_ASTC_5x4 = GlConsts.GL_COMPRESSED_RGBA_ASTC_5x4, + GL_COMPRESSED_RGBA_ASTC_5x4_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_5x4_KHR, + GL_COMPRESSED_RGBA_ASTC_5x5 = GlConsts.GL_COMPRESSED_RGBA_ASTC_5x5, + GL_COMPRESSED_RGBA_ASTC_5x5_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_5x5_KHR, + GL_COMPRESSED_RGBA_ASTC_6x5 = GlConsts.GL_COMPRESSED_RGBA_ASTC_6x5, + GL_COMPRESSED_RGBA_ASTC_6x5_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_6x5_KHR, + GL_COMPRESSED_RGBA_ASTC_6x6 = GlConsts.GL_COMPRESSED_RGBA_ASTC_6x6, + GL_COMPRESSED_RGBA_ASTC_6x6_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_6x6_KHR, + GL_COMPRESSED_RGBA_ASTC_8x5 = GlConsts.GL_COMPRESSED_RGBA_ASTC_8x5, + GL_COMPRESSED_RGBA_ASTC_8x5_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_8x5_KHR, + GL_COMPRESSED_RGBA_ASTC_8x6 = GlConsts.GL_COMPRESSED_RGBA_ASTC_8x6, + GL_COMPRESSED_RGBA_ASTC_8x6_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_8x6_KHR, + GL_COMPRESSED_RGBA_ASTC_8x8 = GlConsts.GL_COMPRESSED_RGBA_ASTC_8x8, + GL_COMPRESSED_RGBA_ASTC_8x8_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_8x8_KHR, + GL_COMPRESSED_RGBA_ASTC_10x5 = GlConsts.GL_COMPRESSED_RGBA_ASTC_10x5, + GL_COMPRESSED_RGBA_ASTC_10x5_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_10x5_KHR, + GL_COMPRESSED_RGBA_ASTC_10x6 = GlConsts.GL_COMPRESSED_RGBA_ASTC_10x6, + GL_COMPRESSED_RGBA_ASTC_10x6_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_10x6_KHR, + GL_COMPRESSED_RGBA_ASTC_10x8 = GlConsts.GL_COMPRESSED_RGBA_ASTC_10x8, + GL_COMPRESSED_RGBA_ASTC_10x8_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_10x8_KHR, + GL_COMPRESSED_RGBA_ASTC_10x10 = GlConsts.GL_COMPRESSED_RGBA_ASTC_10x10, + GL_COMPRESSED_RGBA_ASTC_10x10_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_10x10_KHR, + GL_COMPRESSED_RGBA_ASTC_12x10 = GlConsts.GL_COMPRESSED_RGBA_ASTC_12x10, + GL_COMPRESSED_RGBA_ASTC_12x10_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_12x10_KHR, + GL_COMPRESSED_RGBA_ASTC_12x12 = GlConsts.GL_COMPRESSED_RGBA_ASTC_12x12, + GL_COMPRESSED_RGBA_ASTC_12x12_KHR = GlConsts.GL_COMPRESSED_RGBA_ASTC_12x12_KHR, + GL_COMPRESSED_RGBA_ASTC_3x3x3_OES = GlConsts.GL_COMPRESSED_RGBA_ASTC_3x3x3_OES, + GL_COMPRESSED_RGBA_ASTC_4x3x3_OES = GlConsts.GL_COMPRESSED_RGBA_ASTC_4x3x3_OES, + GL_COMPRESSED_RGBA_ASTC_4x4x3_OES = GlConsts.GL_COMPRESSED_RGBA_ASTC_4x4x3_OES, + GL_COMPRESSED_RGBA_ASTC_4x4x4_OES = GlConsts.GL_COMPRESSED_RGBA_ASTC_4x4x4_OES, + GL_COMPRESSED_RGBA_ASTC_5x4x4_OES = GlConsts.GL_COMPRESSED_RGBA_ASTC_5x4x4_OES, + GL_COMPRESSED_RGBA_ASTC_5x5x4_OES = GlConsts.GL_COMPRESSED_RGBA_ASTC_5x5x4_OES, + GL_COMPRESSED_RGBA_ASTC_5x5x5_OES = GlConsts.GL_COMPRESSED_RGBA_ASTC_5x5x5_OES, + GL_COMPRESSED_RGBA_ASTC_6x5x5_OES = GlConsts.GL_COMPRESSED_RGBA_ASTC_6x5x5_OES, + GL_COMPRESSED_RGBA_ASTC_6x6x5_OES = GlConsts.GL_COMPRESSED_RGBA_ASTC_6x6x5_OES, + GL_COMPRESSED_RGBA_ASTC_6x6x6_OES = GlConsts.GL_COMPRESSED_RGBA_ASTC_6x6x6_OES, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12 = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_3x3x3_OES, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x3x3_OES, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x3_OES, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x4_OES = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_4x4x4_OES, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4x4_OES = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x4x4_OES, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x4_OES = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x4_OES, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x5_OES = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_5x5x5_OES, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x5x5_OES, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x5_OES, + GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES = GlConsts.GL_COMPRESSED_SRGB8_ALPHA8_ASTC_6x6x6_OES, + }; + + public enum CombinerComponentUsageNV + { + GL_BLUE = GlConsts.GL_BLUE, + GL_ALPHA = GlConsts.GL_ALPHA, + GL_RGB = GlConsts.GL_RGB, + }; + + public enum CombinerPortionNV + { + GL_ALPHA = GlConsts.GL_ALPHA, + GL_RGB = GlConsts.GL_RGB, + }; + + public enum PolygonMode + { + GL_POINT = GlConsts.GL_POINT, + GL_LINE = GlConsts.GL_LINE, + GL_FILL = GlConsts.GL_FILL, + }; + + public enum MeshMode1 + { + GL_POINT = GlConsts.GL_POINT, + GL_LINE = GlConsts.GL_LINE, + }; + + public enum MeshMode2 + { + GL_POINT = GlConsts.GL_POINT, + GL_LINE = GlConsts.GL_LINE, + GL_FILL = GlConsts.GL_FILL, + }; + + public enum EvalMapsModeNV + { + GL_FILL_NV = GlConsts.GL_FILL_NV, + }; + + public enum RenderingMode + { + GL_RENDER = GlConsts.GL_RENDER, + GL_FEEDBACK = GlConsts.GL_FEEDBACK, + GL_SELECT = GlConsts.GL_SELECT, + }; + + public enum ShadingModel + { + GL_FLAT = GlConsts.GL_FLAT, + GL_SMOOTH = GlConsts.GL_SMOOTH, + }; + + public enum StringName + { + GL_VENDOR = GlConsts.GL_VENDOR, + GL_RENDERER = GlConsts.GL_RENDERER, + GL_VERSION = GlConsts.GL_VERSION, + GL_EXTENSIONS = GlConsts.GL_EXTENSIONS, + GL_SHADING_LANGUAGE_VERSION = GlConsts.GL_SHADING_LANGUAGE_VERSION, + }; + + public enum TextureCoordName + { + GL_S = GlConsts.GL_S, + GL_T = GlConsts.GL_T, + GL_R = GlConsts.GL_R, + GL_Q = GlConsts.GL_Q, + }; + + public enum TextureEnvParameter + { + GL_TEXTURE_ENV_MODE = GlConsts.GL_TEXTURE_ENV_MODE, + GL_TEXTURE_ENV_COLOR = GlConsts.GL_TEXTURE_ENV_COLOR, + }; + + public enum TextureEnvTarget + { + GL_TEXTURE_ENV = GlConsts.GL_TEXTURE_ENV, + }; + + public enum TextureGenMode + { + GL_EYE_LINEAR = GlConsts.GL_EYE_LINEAR, + GL_OBJECT_LINEAR = GlConsts.GL_OBJECT_LINEAR, + GL_SPHERE_MAP = GlConsts.GL_SPHERE_MAP, + GL_EYE_DISTANCE_TO_POINT_SGIS = GlConsts.GL_EYE_DISTANCE_TO_POINT_SGIS, + GL_OBJECT_DISTANCE_TO_POINT_SGIS = GlConsts.GL_OBJECT_DISTANCE_TO_POINT_SGIS, + GL_EYE_DISTANCE_TO_LINE_SGIS = GlConsts.GL_EYE_DISTANCE_TO_LINE_SGIS, + GL_OBJECT_DISTANCE_TO_LINE_SGIS = GlConsts.GL_OBJECT_DISTANCE_TO_LINE_SGIS, + }; + + public enum TextureGenParameter + { + GL_TEXTURE_GEN_MODE = GlConsts.GL_TEXTURE_GEN_MODE, + GL_OBJECT_PLANE = GlConsts.GL_OBJECT_PLANE, + GL_EYE_PLANE = GlConsts.GL_EYE_PLANE, + GL_EYE_POINT_SGIS = GlConsts.GL_EYE_POINT_SGIS, + GL_OBJECT_POINT_SGIS = GlConsts.GL_OBJECT_POINT_SGIS, + GL_EYE_LINE_SGIS = GlConsts.GL_EYE_LINE_SGIS, + GL_OBJECT_LINE_SGIS = GlConsts.GL_OBJECT_LINE_SGIS, + }; + + public enum BlitFramebufferFilter + { + GL_NEAREST = GlConsts.GL_NEAREST, + GL_LINEAR = GlConsts.GL_LINEAR, + }; + + public enum TextureMagFilter + { + GL_NEAREST = GlConsts.GL_NEAREST, + GL_LINEAR = GlConsts.GL_LINEAR, + GL_LINEAR_DETAIL_SGIS = GlConsts.GL_LINEAR_DETAIL_SGIS, + GL_LINEAR_DETAIL_ALPHA_SGIS = GlConsts.GL_LINEAR_DETAIL_ALPHA_SGIS, + GL_LINEAR_DETAIL_COLOR_SGIS = GlConsts.GL_LINEAR_DETAIL_COLOR_SGIS, + GL_LINEAR_SHARPEN_SGIS = GlConsts.GL_LINEAR_SHARPEN_SGIS, + GL_LINEAR_SHARPEN_ALPHA_SGIS = GlConsts.GL_LINEAR_SHARPEN_ALPHA_SGIS, + GL_LINEAR_SHARPEN_COLOR_SGIS = GlConsts.GL_LINEAR_SHARPEN_COLOR_SGIS, + GL_FILTER4_SGIS = GlConsts.GL_FILTER4_SGIS, + GL_PIXEL_TEX_GEN_Q_CEILING_SGIX = GlConsts.GL_PIXEL_TEX_GEN_Q_CEILING_SGIX, + GL_PIXEL_TEX_GEN_Q_ROUND_SGIX = GlConsts.GL_PIXEL_TEX_GEN_Q_ROUND_SGIX, + GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX = GlConsts.GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX, + }; + + public enum TextureMinFilter + { + GL_NEAREST = GlConsts.GL_NEAREST, + GL_LINEAR = GlConsts.GL_LINEAR, + GL_NEAREST_MIPMAP_NEAREST = GlConsts.GL_NEAREST_MIPMAP_NEAREST, + GL_LINEAR_MIPMAP_NEAREST = GlConsts.GL_LINEAR_MIPMAP_NEAREST, + GL_NEAREST_MIPMAP_LINEAR = GlConsts.GL_NEAREST_MIPMAP_LINEAR, + GL_LINEAR_MIPMAP_LINEAR = GlConsts.GL_LINEAR_MIPMAP_LINEAR, + GL_FILTER4_SGIS = GlConsts.GL_FILTER4_SGIS, + GL_LINEAR_CLIPMAP_LINEAR_SGIX = GlConsts.GL_LINEAR_CLIPMAP_LINEAR_SGIX, + GL_PIXEL_TEX_GEN_Q_CEILING_SGIX = GlConsts.GL_PIXEL_TEX_GEN_Q_CEILING_SGIX, + GL_PIXEL_TEX_GEN_Q_ROUND_SGIX = GlConsts.GL_PIXEL_TEX_GEN_Q_ROUND_SGIX, + GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX = GlConsts.GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX, + GL_NEAREST_CLIPMAP_NEAREST_SGIX = GlConsts.GL_NEAREST_CLIPMAP_NEAREST_SGIX, + GL_NEAREST_CLIPMAP_LINEAR_SGIX = GlConsts.GL_NEAREST_CLIPMAP_LINEAR_SGIX, + GL_LINEAR_CLIPMAP_NEAREST_SGIX = GlConsts.GL_LINEAR_CLIPMAP_NEAREST_SGIX, + }; + + public enum TextureWrapMode + { + GL_LINEAR_MIPMAP_LINEAR = GlConsts.GL_LINEAR_MIPMAP_LINEAR, + GL_CLAMP = GlConsts.GL_CLAMP, + GL_REPEAT = GlConsts.GL_REPEAT, + GL_CLAMP_TO_BORDER = GlConsts.GL_CLAMP_TO_BORDER, + GL_CLAMP_TO_BORDER_ARB = GlConsts.GL_CLAMP_TO_BORDER_ARB, + GL_CLAMP_TO_BORDER_NV = GlConsts.GL_CLAMP_TO_BORDER_NV, + GL_CLAMP_TO_BORDER_SGIS = GlConsts.GL_CLAMP_TO_BORDER_SGIS, + GL_CLAMP_TO_EDGE = GlConsts.GL_CLAMP_TO_EDGE, + GL_CLAMP_TO_EDGE_SGIS = GlConsts.GL_CLAMP_TO_EDGE_SGIS, + GL_MIRRORED_REPEAT = GlConsts.GL_MIRRORED_REPEAT, + }; + + public enum SamplerParameterI + { + GL_TEXTURE_MAG_FILTER = GlConsts.GL_TEXTURE_MAG_FILTER, + GL_TEXTURE_MIN_FILTER = GlConsts.GL_TEXTURE_MIN_FILTER, + GL_TEXTURE_WRAP_S = GlConsts.GL_TEXTURE_WRAP_S, + GL_TEXTURE_WRAP_T = GlConsts.GL_TEXTURE_WRAP_T, + GL_TEXTURE_WRAP_R = GlConsts.GL_TEXTURE_WRAP_R, + GL_TEXTURE_COMPARE_MODE = GlConsts.GL_TEXTURE_COMPARE_MODE, + GL_TEXTURE_COMPARE_FUNC = GlConsts.GL_TEXTURE_COMPARE_FUNC, + GL_TEXTURE_UNNORMALIZED_COORDINATES_ARM = GlConsts.GL_TEXTURE_UNNORMALIZED_COORDINATES_ARM, + }; + + public enum InterleavedArrayFormat + { + GL_V2F = GlConsts.GL_V2F, + GL_V3F = GlConsts.GL_V3F, + GL_C4UB_V2F = GlConsts.GL_C4UB_V2F, + GL_C4UB_V3F = GlConsts.GL_C4UB_V3F, + GL_C3F_V3F = GlConsts.GL_C3F_V3F, + GL_N3F_V3F = GlConsts.GL_N3F_V3F, + GL_C4F_N3F_V3F = GlConsts.GL_C4F_N3F_V3F, + GL_T2F_V3F = GlConsts.GL_T2F_V3F, + GL_T4F_V4F = GlConsts.GL_T4F_V4F, + GL_T2F_C4UB_V3F = GlConsts.GL_T2F_C4UB_V3F, + GL_T2F_C3F_V3F = GlConsts.GL_T2F_C3F_V3F, + GL_T2F_N3F_V3F = GlConsts.GL_T2F_N3F_V3F, + GL_T2F_C4F_N3F_V3F = GlConsts.GL_T2F_C4F_N3F_V3F, + GL_T4F_C4F_N3F_V4F = GlConsts.GL_T4F_C4F_N3F_V4F, + }; + + public enum ClipPlaneName + { + GL_CLIP_PLANE0 = GlConsts.GL_CLIP_PLANE0, + GL_CLIP_DISTANCE0 = GlConsts.GL_CLIP_DISTANCE0, + GL_CLIP_PLANE1 = GlConsts.GL_CLIP_PLANE1, + GL_CLIP_DISTANCE1 = GlConsts.GL_CLIP_DISTANCE1, + GL_CLIP_PLANE2 = GlConsts.GL_CLIP_PLANE2, + GL_CLIP_DISTANCE2 = GlConsts.GL_CLIP_DISTANCE2, + GL_CLIP_PLANE3 = GlConsts.GL_CLIP_PLANE3, + GL_CLIP_DISTANCE3 = GlConsts.GL_CLIP_DISTANCE3, + GL_CLIP_PLANE4 = GlConsts.GL_CLIP_PLANE4, + GL_CLIP_DISTANCE4 = GlConsts.GL_CLIP_DISTANCE4, + GL_CLIP_PLANE5 = GlConsts.GL_CLIP_PLANE5, + GL_CLIP_DISTANCE5 = GlConsts.GL_CLIP_DISTANCE5, + GL_CLIP_DISTANCE6 = GlConsts.GL_CLIP_DISTANCE6, + GL_CLIP_DISTANCE7 = GlConsts.GL_CLIP_DISTANCE7, + }; + + public enum LightName + { + GL_LIGHT0 = GlConsts.GL_LIGHT0, + GL_LIGHT1 = GlConsts.GL_LIGHT1, + GL_LIGHT2 = GlConsts.GL_LIGHT2, + GL_LIGHT3 = GlConsts.GL_LIGHT3, + GL_LIGHT4 = GlConsts.GL_LIGHT4, + GL_LIGHT5 = GlConsts.GL_LIGHT5, + GL_LIGHT6 = GlConsts.GL_LIGHT6, + GL_LIGHT7 = GlConsts.GL_LIGHT7, + GL_FRAGMENT_LIGHT0_SGIX = GlConsts.GL_FRAGMENT_LIGHT0_SGIX, + GL_FRAGMENT_LIGHT1_SGIX = GlConsts.GL_FRAGMENT_LIGHT1_SGIX, + GL_FRAGMENT_LIGHT2_SGIX = GlConsts.GL_FRAGMENT_LIGHT2_SGIX, + GL_FRAGMENT_LIGHT3_SGIX = GlConsts.GL_FRAGMENT_LIGHT3_SGIX, + GL_FRAGMENT_LIGHT4_SGIX = GlConsts.GL_FRAGMENT_LIGHT4_SGIX, + GL_FRAGMENT_LIGHT5_SGIX = GlConsts.GL_FRAGMENT_LIGHT5_SGIX, + GL_FRAGMENT_LIGHT6_SGIX = GlConsts.GL_FRAGMENT_LIGHT6_SGIX, + GL_FRAGMENT_LIGHT7_SGIX = GlConsts.GL_FRAGMENT_LIGHT7_SGIX, + }; + + public enum BlendEquationModeEXT + { + GL_FUNC_ADD = GlConsts.GL_FUNC_ADD, + GL_FUNC_ADD_EXT = GlConsts.GL_FUNC_ADD_EXT, + GL_MIN = GlConsts.GL_MIN, + GL_MIN_EXT = GlConsts.GL_MIN_EXT, + GL_MAX = GlConsts.GL_MAX, + GL_MAX_EXT = GlConsts.GL_MAX_EXT, + GL_FUNC_SUBTRACT = GlConsts.GL_FUNC_SUBTRACT, + GL_FUNC_SUBTRACT_EXT = GlConsts.GL_FUNC_SUBTRACT_EXT, + GL_FUNC_REVERSE_SUBTRACT = GlConsts.GL_FUNC_REVERSE_SUBTRACT, + GL_FUNC_REVERSE_SUBTRACT_EXT = GlConsts.GL_FUNC_REVERSE_SUBTRACT_EXT, + GL_ALPHA_MIN_SGIX = GlConsts.GL_ALPHA_MIN_SGIX, + GL_ALPHA_MAX_SGIX = GlConsts.GL_ALPHA_MAX_SGIX, + }; + + public enum ConvolutionTarget + { + GL_CONVOLUTION_1D = GlConsts.GL_CONVOLUTION_1D, + GL_CONVOLUTION_2D = GlConsts.GL_CONVOLUTION_2D, + }; + + public enum ConvolutionTargetEXT + { + GL_CONVOLUTION_1D = GlConsts.GL_CONVOLUTION_1D, + GL_CONVOLUTION_1D_EXT = GlConsts.GL_CONVOLUTION_1D_EXT, + GL_CONVOLUTION_2D = GlConsts.GL_CONVOLUTION_2D, + GL_CONVOLUTION_2D_EXT = GlConsts.GL_CONVOLUTION_2D_EXT, + }; + + public enum SeparableTargetEXT + { + GL_SEPARABLE_2D = GlConsts.GL_SEPARABLE_2D, + GL_SEPARABLE_2D_EXT = GlConsts.GL_SEPARABLE_2D_EXT, + }; + + public enum GetConvolutionParameter + { + GL_CONVOLUTION_BORDER_MODE = GlConsts.GL_CONVOLUTION_BORDER_MODE, + GL_CONVOLUTION_BORDER_MODE_EXT = GlConsts.GL_CONVOLUTION_BORDER_MODE_EXT, + GL_CONVOLUTION_FILTER_SCALE = GlConsts.GL_CONVOLUTION_FILTER_SCALE, + GL_CONVOLUTION_FILTER_SCALE_EXT = GlConsts.GL_CONVOLUTION_FILTER_SCALE_EXT, + GL_CONVOLUTION_FILTER_BIAS = GlConsts.GL_CONVOLUTION_FILTER_BIAS, + GL_CONVOLUTION_FILTER_BIAS_EXT = GlConsts.GL_CONVOLUTION_FILTER_BIAS_EXT, + GL_CONVOLUTION_FORMAT = GlConsts.GL_CONVOLUTION_FORMAT, + GL_CONVOLUTION_FORMAT_EXT = GlConsts.GL_CONVOLUTION_FORMAT_EXT, + GL_CONVOLUTION_WIDTH = GlConsts.GL_CONVOLUTION_WIDTH, + GL_CONVOLUTION_WIDTH_EXT = GlConsts.GL_CONVOLUTION_WIDTH_EXT, + GL_CONVOLUTION_HEIGHT = GlConsts.GL_CONVOLUTION_HEIGHT, + GL_CONVOLUTION_HEIGHT_EXT = GlConsts.GL_CONVOLUTION_HEIGHT_EXT, + GL_MAX_CONVOLUTION_WIDTH = GlConsts.GL_MAX_CONVOLUTION_WIDTH, + GL_MAX_CONVOLUTION_WIDTH_EXT = GlConsts.GL_MAX_CONVOLUTION_WIDTH_EXT, + GL_MAX_CONVOLUTION_HEIGHT = GlConsts.GL_MAX_CONVOLUTION_HEIGHT, + GL_MAX_CONVOLUTION_HEIGHT_EXT = GlConsts.GL_MAX_CONVOLUTION_HEIGHT_EXT, + GL_CONVOLUTION_BORDER_COLOR = GlConsts.GL_CONVOLUTION_BORDER_COLOR, + }; + + public enum ConvolutionParameterEXT + { + GL_CONVOLUTION_BORDER_MODE = GlConsts.GL_CONVOLUTION_BORDER_MODE, + GL_CONVOLUTION_BORDER_MODE_EXT = GlConsts.GL_CONVOLUTION_BORDER_MODE_EXT, + GL_CONVOLUTION_FILTER_SCALE = GlConsts.GL_CONVOLUTION_FILTER_SCALE, + GL_CONVOLUTION_FILTER_SCALE_EXT = GlConsts.GL_CONVOLUTION_FILTER_SCALE_EXT, + GL_CONVOLUTION_FILTER_BIAS = GlConsts.GL_CONVOLUTION_FILTER_BIAS, + GL_CONVOLUTION_FILTER_BIAS_EXT = GlConsts.GL_CONVOLUTION_FILTER_BIAS_EXT, + }; + + public enum ConvolutionBorderModeEXT + { + GL_REDUCE = GlConsts.GL_REDUCE, + GL_REDUCE_EXT = GlConsts.GL_REDUCE_EXT, + }; + + public enum HistogramTargetEXT + { + GL_HISTOGRAM = GlConsts.GL_HISTOGRAM, + GL_HISTOGRAM_EXT = GlConsts.GL_HISTOGRAM_EXT, + GL_PROXY_HISTOGRAM = GlConsts.GL_PROXY_HISTOGRAM, + GL_PROXY_HISTOGRAM_EXT = GlConsts.GL_PROXY_HISTOGRAM_EXT, + }; + + public enum GetHistogramParameterPNameEXT + { + GL_HISTOGRAM_WIDTH = GlConsts.GL_HISTOGRAM_WIDTH, + GL_HISTOGRAM_WIDTH_EXT = GlConsts.GL_HISTOGRAM_WIDTH_EXT, + GL_HISTOGRAM_FORMAT = GlConsts.GL_HISTOGRAM_FORMAT, + GL_HISTOGRAM_FORMAT_EXT = GlConsts.GL_HISTOGRAM_FORMAT_EXT, + GL_HISTOGRAM_RED_SIZE = GlConsts.GL_HISTOGRAM_RED_SIZE, + GL_HISTOGRAM_RED_SIZE_EXT = GlConsts.GL_HISTOGRAM_RED_SIZE_EXT, + GL_HISTOGRAM_GREEN_SIZE = GlConsts.GL_HISTOGRAM_GREEN_SIZE, + GL_HISTOGRAM_GREEN_SIZE_EXT = GlConsts.GL_HISTOGRAM_GREEN_SIZE_EXT, + GL_HISTOGRAM_BLUE_SIZE = GlConsts.GL_HISTOGRAM_BLUE_SIZE, + GL_HISTOGRAM_BLUE_SIZE_EXT = GlConsts.GL_HISTOGRAM_BLUE_SIZE_EXT, + GL_HISTOGRAM_ALPHA_SIZE = GlConsts.GL_HISTOGRAM_ALPHA_SIZE, + GL_HISTOGRAM_ALPHA_SIZE_EXT = GlConsts.GL_HISTOGRAM_ALPHA_SIZE_EXT, + GL_HISTOGRAM_LUMINANCE_SIZE = GlConsts.GL_HISTOGRAM_LUMINANCE_SIZE, + GL_HISTOGRAM_LUMINANCE_SIZE_EXT = GlConsts.GL_HISTOGRAM_LUMINANCE_SIZE_EXT, + GL_HISTOGRAM_SINK = GlConsts.GL_HISTOGRAM_SINK, + GL_HISTOGRAM_SINK_EXT = GlConsts.GL_HISTOGRAM_SINK_EXT, + }; + + public enum MinmaxTargetEXT + { + GL_MINMAX = GlConsts.GL_MINMAX, + GL_MINMAX_EXT = GlConsts.GL_MINMAX_EXT, + }; + + public enum GetMinmaxParameterPNameEXT + { + GL_MINMAX_FORMAT = GlConsts.GL_MINMAX_FORMAT, + GL_MINMAX_FORMAT_EXT = GlConsts.GL_MINMAX_FORMAT_EXT, + GL_MINMAX_SINK = GlConsts.GL_MINMAX_SINK, + GL_MINMAX_SINK_EXT = GlConsts.GL_MINMAX_SINK_EXT, + }; + + public enum SamplePatternSGIS + { + GL_1PASS_EXT = GlConsts.GL_1PASS_EXT, + GL_1PASS_SGIS = GlConsts.GL_1PASS_SGIS, + GL_2PASS_0_EXT = GlConsts.GL_2PASS_0_EXT, + GL_2PASS_0_SGIS = GlConsts.GL_2PASS_0_SGIS, + GL_2PASS_1_EXT = GlConsts.GL_2PASS_1_EXT, + GL_2PASS_1_SGIS = GlConsts.GL_2PASS_1_SGIS, + GL_4PASS_0_EXT = GlConsts.GL_4PASS_0_EXT, + GL_4PASS_0_SGIS = GlConsts.GL_4PASS_0_SGIS, + GL_4PASS_1_EXT = GlConsts.GL_4PASS_1_EXT, + GL_4PASS_1_SGIS = GlConsts.GL_4PASS_1_SGIS, + GL_4PASS_2_EXT = GlConsts.GL_4PASS_2_EXT, + GL_4PASS_2_SGIS = GlConsts.GL_4PASS_2_SGIS, + GL_4PASS_3_EXT = GlConsts.GL_4PASS_3_EXT, + GL_4PASS_3_SGIS = GlConsts.GL_4PASS_3_SGIS, + }; + + public enum SamplePatternEXT + { + GL_1PASS_EXT = GlConsts.GL_1PASS_EXT, + GL_2PASS_0_EXT = GlConsts.GL_2PASS_0_EXT, + GL_2PASS_1_EXT = GlConsts.GL_2PASS_1_EXT, + GL_4PASS_0_EXT = GlConsts.GL_4PASS_0_EXT, + GL_4PASS_1_EXT = GlConsts.GL_4PASS_1_EXT, + GL_4PASS_2_EXT = GlConsts.GL_4PASS_2_EXT, + GL_4PASS_3_EXT = GlConsts.GL_4PASS_3_EXT, + }; + + public enum InternalFormatPName + { + GL_SAMPLES = GlConsts.GL_SAMPLES, + GL_GENERATE_MIPMAP = GlConsts.GL_GENERATE_MIPMAP, + GL_INTERNALFORMAT_SUPPORTED = GlConsts.GL_INTERNALFORMAT_SUPPORTED, + GL_INTERNALFORMAT_PREFERRED = GlConsts.GL_INTERNALFORMAT_PREFERRED, + GL_INTERNALFORMAT_RED_SIZE = GlConsts.GL_INTERNALFORMAT_RED_SIZE, + GL_INTERNALFORMAT_GREEN_SIZE = GlConsts.GL_INTERNALFORMAT_GREEN_SIZE, + GL_INTERNALFORMAT_BLUE_SIZE = GlConsts.GL_INTERNALFORMAT_BLUE_SIZE, + GL_INTERNALFORMAT_ALPHA_SIZE = GlConsts.GL_INTERNALFORMAT_ALPHA_SIZE, + GL_INTERNALFORMAT_DEPTH_SIZE = GlConsts.GL_INTERNALFORMAT_DEPTH_SIZE, + GL_INTERNALFORMAT_STENCIL_SIZE = GlConsts.GL_INTERNALFORMAT_STENCIL_SIZE, + GL_INTERNALFORMAT_SHARED_SIZE = GlConsts.GL_INTERNALFORMAT_SHARED_SIZE, + GL_INTERNALFORMAT_RED_TYPE = GlConsts.GL_INTERNALFORMAT_RED_TYPE, + GL_INTERNALFORMAT_GREEN_TYPE = GlConsts.GL_INTERNALFORMAT_GREEN_TYPE, + GL_INTERNALFORMAT_BLUE_TYPE = GlConsts.GL_INTERNALFORMAT_BLUE_TYPE, + GL_INTERNALFORMAT_ALPHA_TYPE = GlConsts.GL_INTERNALFORMAT_ALPHA_TYPE, + GL_INTERNALFORMAT_DEPTH_TYPE = GlConsts.GL_INTERNALFORMAT_DEPTH_TYPE, + GL_INTERNALFORMAT_STENCIL_TYPE = GlConsts.GL_INTERNALFORMAT_STENCIL_TYPE, + GL_MAX_WIDTH = GlConsts.GL_MAX_WIDTH, + GL_MAX_HEIGHT = GlConsts.GL_MAX_HEIGHT, + GL_MAX_DEPTH = GlConsts.GL_MAX_DEPTH, + GL_MAX_LAYERS = GlConsts.GL_MAX_LAYERS, + GL_COLOR_COMPONENTS = GlConsts.GL_COLOR_COMPONENTS, + GL_COLOR_RENDERABLE = GlConsts.GL_COLOR_RENDERABLE, + GL_DEPTH_RENDERABLE = GlConsts.GL_DEPTH_RENDERABLE, + GL_STENCIL_RENDERABLE = GlConsts.GL_STENCIL_RENDERABLE, + GL_FRAMEBUFFER_RENDERABLE = GlConsts.GL_FRAMEBUFFER_RENDERABLE, + GL_FRAMEBUFFER_RENDERABLE_LAYERED = GlConsts.GL_FRAMEBUFFER_RENDERABLE_LAYERED, + GL_FRAMEBUFFER_BLEND = GlConsts.GL_FRAMEBUFFER_BLEND, + GL_READ_PIXELS = GlConsts.GL_READ_PIXELS, + GL_READ_PIXELS_FORMAT = GlConsts.GL_READ_PIXELS_FORMAT, + GL_READ_PIXELS_TYPE = GlConsts.GL_READ_PIXELS_TYPE, + GL_TEXTURE_IMAGE_FORMAT = GlConsts.GL_TEXTURE_IMAGE_FORMAT, + GL_TEXTURE_IMAGE_TYPE = GlConsts.GL_TEXTURE_IMAGE_TYPE, + GL_GET_TEXTURE_IMAGE_FORMAT = GlConsts.GL_GET_TEXTURE_IMAGE_FORMAT, + GL_GET_TEXTURE_IMAGE_TYPE = GlConsts.GL_GET_TEXTURE_IMAGE_TYPE, + GL_MIPMAP = GlConsts.GL_MIPMAP, + GL_AUTO_GENERATE_MIPMAP = GlConsts.GL_AUTO_GENERATE_MIPMAP, + GL_COLOR_ENCODING = GlConsts.GL_COLOR_ENCODING, + GL_SRGB_READ = GlConsts.GL_SRGB_READ, + GL_SRGB_WRITE = GlConsts.GL_SRGB_WRITE, + GL_FILTER = GlConsts.GL_FILTER, + GL_VERTEX_TEXTURE = GlConsts.GL_VERTEX_TEXTURE, + GL_TESS_CONTROL_TEXTURE = GlConsts.GL_TESS_CONTROL_TEXTURE, + GL_TESS_EVALUATION_TEXTURE = GlConsts.GL_TESS_EVALUATION_TEXTURE, + GL_GEOMETRY_TEXTURE = GlConsts.GL_GEOMETRY_TEXTURE, + GL_FRAGMENT_TEXTURE = GlConsts.GL_FRAGMENT_TEXTURE, + GL_COMPUTE_TEXTURE = GlConsts.GL_COMPUTE_TEXTURE, + GL_TEXTURE_SHADOW = GlConsts.GL_TEXTURE_SHADOW, + GL_TEXTURE_GATHER = GlConsts.GL_TEXTURE_GATHER, + GL_TEXTURE_GATHER_SHADOW = GlConsts.GL_TEXTURE_GATHER_SHADOW, + GL_SHADER_IMAGE_LOAD = GlConsts.GL_SHADER_IMAGE_LOAD, + GL_SHADER_IMAGE_STORE = GlConsts.GL_SHADER_IMAGE_STORE, + GL_SHADER_IMAGE_ATOMIC = GlConsts.GL_SHADER_IMAGE_ATOMIC, + GL_IMAGE_TEXEL_SIZE = GlConsts.GL_IMAGE_TEXEL_SIZE, + GL_IMAGE_COMPATIBILITY_CLASS = GlConsts.GL_IMAGE_COMPATIBILITY_CLASS, + GL_IMAGE_PIXEL_FORMAT = GlConsts.GL_IMAGE_PIXEL_FORMAT, + GL_IMAGE_PIXEL_TYPE = GlConsts.GL_IMAGE_PIXEL_TYPE, + GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST = GlConsts.GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_TEST, + GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST = GlConsts.GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_TEST, + GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE = GlConsts.GL_SIMULTANEOUS_TEXTURE_AND_DEPTH_WRITE, + GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE = GlConsts.GL_SIMULTANEOUS_TEXTURE_AND_STENCIL_WRITE, + GL_TEXTURE_COMPRESSED_BLOCK_WIDTH = GlConsts.GL_TEXTURE_COMPRESSED_BLOCK_WIDTH, + GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT = GlConsts.GL_TEXTURE_COMPRESSED_BLOCK_HEIGHT, + GL_TEXTURE_COMPRESSED_BLOCK_SIZE = GlConsts.GL_TEXTURE_COMPRESSED_BLOCK_SIZE, + GL_CLEAR_BUFFER = GlConsts.GL_CLEAR_BUFFER, + GL_TEXTURE_VIEW = GlConsts.GL_TEXTURE_VIEW, + GL_VIEW_COMPATIBILITY_CLASS = GlConsts.GL_VIEW_COMPATIBILITY_CLASS, + GL_TEXTURE_COMPRESSED = GlConsts.GL_TEXTURE_COMPRESSED, + GL_IMAGE_FORMAT_COMPATIBILITY_TYPE = GlConsts.GL_IMAGE_FORMAT_COMPATIBILITY_TYPE, + GL_CLEAR_TEXTURE = GlConsts.GL_CLEAR_TEXTURE, + GL_NUM_SAMPLE_COUNTS = GlConsts.GL_NUM_SAMPLE_COUNTS, + }; + + public enum ColorTableTargetSGI + { + GL_TEXTURE_COLOR_TABLE_SGI = GlConsts.GL_TEXTURE_COLOR_TABLE_SGI, + GL_PROXY_TEXTURE_COLOR_TABLE_SGI = GlConsts.GL_PROXY_TEXTURE_COLOR_TABLE_SGI, + GL_COLOR_TABLE = GlConsts.GL_COLOR_TABLE, + GL_COLOR_TABLE_SGI = GlConsts.GL_COLOR_TABLE_SGI, + GL_POST_CONVOLUTION_COLOR_TABLE = GlConsts.GL_POST_CONVOLUTION_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE_SGI = GlConsts.GL_POST_CONVOLUTION_COLOR_TABLE_SGI, + GL_POST_COLOR_MATRIX_COLOR_TABLE = GlConsts.GL_POST_COLOR_MATRIX_COLOR_TABLE, + GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI = GlConsts.GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI, + GL_PROXY_COLOR_TABLE = GlConsts.GL_PROXY_COLOR_TABLE, + GL_PROXY_COLOR_TABLE_SGI = GlConsts.GL_PROXY_COLOR_TABLE_SGI, + GL_PROXY_POST_CONVOLUTION_COLOR_TABLE = GlConsts.GL_PROXY_POST_CONVOLUTION_COLOR_TABLE, + GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI = GlConsts.GL_PROXY_POST_CONVOLUTION_COLOR_TABLE_SGI, + GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE = GlConsts.GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE, + GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI = GlConsts.GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE_SGI, + }; + + public enum ColorTableTarget + { + GL_COLOR_TABLE = GlConsts.GL_COLOR_TABLE, + GL_POST_CONVOLUTION_COLOR_TABLE = GlConsts.GL_POST_CONVOLUTION_COLOR_TABLE, + GL_POST_COLOR_MATRIX_COLOR_TABLE = GlConsts.GL_POST_COLOR_MATRIX_COLOR_TABLE, + }; + + public enum GetColorTableParameterPNameSGI + { + GL_COLOR_TABLE_SCALE = GlConsts.GL_COLOR_TABLE_SCALE, + GL_COLOR_TABLE_SCALE_SGI = GlConsts.GL_COLOR_TABLE_SCALE_SGI, + GL_COLOR_TABLE_BIAS = GlConsts.GL_COLOR_TABLE_BIAS, + GL_COLOR_TABLE_BIAS_SGI = GlConsts.GL_COLOR_TABLE_BIAS_SGI, + GL_COLOR_TABLE_FORMAT = GlConsts.GL_COLOR_TABLE_FORMAT, + GL_COLOR_TABLE_FORMAT_SGI = GlConsts.GL_COLOR_TABLE_FORMAT_SGI, + GL_COLOR_TABLE_WIDTH = GlConsts.GL_COLOR_TABLE_WIDTH, + GL_COLOR_TABLE_WIDTH_SGI = GlConsts.GL_COLOR_TABLE_WIDTH_SGI, + GL_COLOR_TABLE_RED_SIZE = GlConsts.GL_COLOR_TABLE_RED_SIZE, + GL_COLOR_TABLE_RED_SIZE_SGI = GlConsts.GL_COLOR_TABLE_RED_SIZE_SGI, + GL_COLOR_TABLE_GREEN_SIZE = GlConsts.GL_COLOR_TABLE_GREEN_SIZE, + GL_COLOR_TABLE_GREEN_SIZE_SGI = GlConsts.GL_COLOR_TABLE_GREEN_SIZE_SGI, + GL_COLOR_TABLE_BLUE_SIZE = GlConsts.GL_COLOR_TABLE_BLUE_SIZE, + GL_COLOR_TABLE_BLUE_SIZE_SGI = GlConsts.GL_COLOR_TABLE_BLUE_SIZE_SGI, + GL_COLOR_TABLE_ALPHA_SIZE = GlConsts.GL_COLOR_TABLE_ALPHA_SIZE, + GL_COLOR_TABLE_ALPHA_SIZE_SGI = GlConsts.GL_COLOR_TABLE_ALPHA_SIZE_SGI, + GL_COLOR_TABLE_LUMINANCE_SIZE = GlConsts.GL_COLOR_TABLE_LUMINANCE_SIZE, + GL_COLOR_TABLE_LUMINANCE_SIZE_SGI = GlConsts.GL_COLOR_TABLE_LUMINANCE_SIZE_SGI, + GL_COLOR_TABLE_INTENSITY_SIZE = GlConsts.GL_COLOR_TABLE_INTENSITY_SIZE, + GL_COLOR_TABLE_INTENSITY_SIZE_SGI = GlConsts.GL_COLOR_TABLE_INTENSITY_SIZE_SGI, + }; + + public enum ColorTableParameterPNameSGI + { + GL_COLOR_TABLE_SCALE = GlConsts.GL_COLOR_TABLE_SCALE, + GL_COLOR_TABLE_SCALE_SGI = GlConsts.GL_COLOR_TABLE_SCALE_SGI, + GL_COLOR_TABLE_BIAS = GlConsts.GL_COLOR_TABLE_BIAS, + GL_COLOR_TABLE_BIAS_SGI = GlConsts.GL_COLOR_TABLE_BIAS_SGI, + GL_COLOR_TABLE_FORMAT = GlConsts.GL_COLOR_TABLE_FORMAT, + GL_COLOR_TABLE_FORMAT_SGI = GlConsts.GL_COLOR_TABLE_FORMAT_SGI, + GL_COLOR_TABLE_WIDTH = GlConsts.GL_COLOR_TABLE_WIDTH, + GL_COLOR_TABLE_WIDTH_SGI = GlConsts.GL_COLOR_TABLE_WIDTH_SGI, + GL_COLOR_TABLE_RED_SIZE = GlConsts.GL_COLOR_TABLE_RED_SIZE, + GL_COLOR_TABLE_RED_SIZE_SGI = GlConsts.GL_COLOR_TABLE_RED_SIZE_SGI, + GL_COLOR_TABLE_GREEN_SIZE = GlConsts.GL_COLOR_TABLE_GREEN_SIZE, + GL_COLOR_TABLE_GREEN_SIZE_SGI = GlConsts.GL_COLOR_TABLE_GREEN_SIZE_SGI, + GL_COLOR_TABLE_BLUE_SIZE = GlConsts.GL_COLOR_TABLE_BLUE_SIZE, + GL_COLOR_TABLE_BLUE_SIZE_SGI = GlConsts.GL_COLOR_TABLE_BLUE_SIZE_SGI, + GL_COLOR_TABLE_ALPHA_SIZE = GlConsts.GL_COLOR_TABLE_ALPHA_SIZE, + GL_COLOR_TABLE_ALPHA_SIZE_SGI = GlConsts.GL_COLOR_TABLE_ALPHA_SIZE_SGI, + GL_COLOR_TABLE_LUMINANCE_SIZE = GlConsts.GL_COLOR_TABLE_LUMINANCE_SIZE, + GL_COLOR_TABLE_LUMINANCE_SIZE_SGI = GlConsts.GL_COLOR_TABLE_LUMINANCE_SIZE_SGI, + GL_COLOR_TABLE_INTENSITY_SIZE = GlConsts.GL_COLOR_TABLE_INTENSITY_SIZE, + GL_COLOR_TABLE_INTENSITY_SIZE_SGI = GlConsts.GL_COLOR_TABLE_INTENSITY_SIZE_SGI, + }; + + public enum BufferTargetARB + { + GL_PARAMETER_BUFFER = GlConsts.GL_PARAMETER_BUFFER, + GL_ARRAY_BUFFER = GlConsts.GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER = GlConsts.GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER = GlConsts.GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER = GlConsts.GL_PIXEL_UNPACK_BUFFER, + GL_UNIFORM_BUFFER = GlConsts.GL_UNIFORM_BUFFER, + GL_TEXTURE_BUFFER = GlConsts.GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER, + GL_COPY_READ_BUFFER = GlConsts.GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER = GlConsts.GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER = GlConsts.GL_DRAW_INDIRECT_BUFFER, + GL_SHADER_STORAGE_BUFFER = GlConsts.GL_SHADER_STORAGE_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER = GlConsts.GL_DISPATCH_INDIRECT_BUFFER, + GL_QUERY_BUFFER = GlConsts.GL_QUERY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER = GlConsts.GL_ATOMIC_COUNTER_BUFFER, + }; + + public enum PointParameterNameSGIS + { + GL_POINT_SIZE_MIN = GlConsts.GL_POINT_SIZE_MIN, + GL_POINT_SIZE_MIN_ARB = GlConsts.GL_POINT_SIZE_MIN_ARB, + GL_POINT_SIZE_MIN_EXT = GlConsts.GL_POINT_SIZE_MIN_EXT, + GL_POINT_SIZE_MIN_SGIS = GlConsts.GL_POINT_SIZE_MIN_SGIS, + GL_POINT_SIZE_MAX = GlConsts.GL_POINT_SIZE_MAX, + GL_POINT_SIZE_MAX_ARB = GlConsts.GL_POINT_SIZE_MAX_ARB, + GL_POINT_SIZE_MAX_EXT = GlConsts.GL_POINT_SIZE_MAX_EXT, + GL_POINT_SIZE_MAX_SGIS = GlConsts.GL_POINT_SIZE_MAX_SGIS, + GL_POINT_FADE_THRESHOLD_SIZE = GlConsts.GL_POINT_FADE_THRESHOLD_SIZE, + GL_POINT_FADE_THRESHOLD_SIZE_ARB = GlConsts.GL_POINT_FADE_THRESHOLD_SIZE_ARB, + GL_POINT_FADE_THRESHOLD_SIZE_EXT = GlConsts.GL_POINT_FADE_THRESHOLD_SIZE_EXT, + GL_POINT_FADE_THRESHOLD_SIZE_SGIS = GlConsts.GL_POINT_FADE_THRESHOLD_SIZE_SGIS, + GL_DISTANCE_ATTENUATION_EXT = GlConsts.GL_DISTANCE_ATTENUATION_EXT, + GL_DISTANCE_ATTENUATION_SGIS = GlConsts.GL_DISTANCE_ATTENUATION_SGIS, + GL_POINT_DISTANCE_ATTENUATION = GlConsts.GL_POINT_DISTANCE_ATTENUATION, + GL_POINT_DISTANCE_ATTENUATION_ARB = GlConsts.GL_POINT_DISTANCE_ATTENUATION_ARB, + }; + + public enum PointParameterNameARB + { + GL_POINT_SIZE_MIN_EXT = GlConsts.GL_POINT_SIZE_MIN_EXT, + GL_POINT_SIZE_MAX_EXT = GlConsts.GL_POINT_SIZE_MAX_EXT, + GL_POINT_FADE_THRESHOLD_SIZE = GlConsts.GL_POINT_FADE_THRESHOLD_SIZE, + GL_POINT_FADE_THRESHOLD_SIZE_EXT = GlConsts.GL_POINT_FADE_THRESHOLD_SIZE_EXT, + }; + + public enum TextureFilterSGIS + { + GL_FILTER4_SGIS = GlConsts.GL_FILTER4_SGIS, + }; + + public enum TextureFilterFuncSGIS + { + GL_FILTER4_SGIS = GlConsts.GL_FILTER4_SGIS, + }; + + public enum SpriteParameterNameSGIX + { + GL_SPRITE_MODE_SGIX = GlConsts.GL_SPRITE_MODE_SGIX, + }; + + public enum ImageTransformPNameHP + { + GL_IMAGE_SCALE_X_HP = GlConsts.GL_IMAGE_SCALE_X_HP, + GL_IMAGE_SCALE_Y_HP = GlConsts.GL_IMAGE_SCALE_Y_HP, + GL_IMAGE_TRANSLATE_X_HP = GlConsts.GL_IMAGE_TRANSLATE_X_HP, + GL_IMAGE_TRANSLATE_Y_HP = GlConsts.GL_IMAGE_TRANSLATE_Y_HP, + GL_IMAGE_ROTATE_ANGLE_HP = GlConsts.GL_IMAGE_ROTATE_ANGLE_HP, + GL_IMAGE_ROTATE_ORIGIN_X_HP = GlConsts.GL_IMAGE_ROTATE_ORIGIN_X_HP, + GL_IMAGE_ROTATE_ORIGIN_Y_HP = GlConsts.GL_IMAGE_ROTATE_ORIGIN_Y_HP, + GL_IMAGE_MAG_FILTER_HP = GlConsts.GL_IMAGE_MAG_FILTER_HP, + GL_IMAGE_MIN_FILTER_HP = GlConsts.GL_IMAGE_MIN_FILTER_HP, + GL_IMAGE_CUBIC_WEIGHT_HP = GlConsts.GL_IMAGE_CUBIC_WEIGHT_HP, + }; + + public enum ImageTransformTargetHP + { + GL_IMAGE_TRANSFORM_2D_HP = GlConsts.GL_IMAGE_TRANSFORM_2D_HP, + }; + + public enum ListParameterName + { + GL_LIST_PRIORITY_SGIX = GlConsts.GL_LIST_PRIORITY_SGIX, + }; + + public enum PixelTexGenModeSGIX + { + GL_PIXEL_TEX_GEN_Q_CEILING_SGIX = GlConsts.GL_PIXEL_TEX_GEN_Q_CEILING_SGIX, + GL_PIXEL_TEX_GEN_Q_ROUND_SGIX = GlConsts.GL_PIXEL_TEX_GEN_Q_ROUND_SGIX, + GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX = GlConsts.GL_PIXEL_TEX_GEN_Q_FLOOR_SGIX, + GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX = GlConsts.GL_PIXEL_TEX_GEN_ALPHA_LS_SGIX, + GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX = GlConsts.GL_PIXEL_TEX_GEN_ALPHA_MS_SGIX, + }; + + public enum FfdTargetSGIX + { + GL_GEOMETRY_DEFORMATION_SGIX = GlConsts.GL_GEOMETRY_DEFORMATION_SGIX, + GL_TEXTURE_DEFORMATION_SGIX = GlConsts.GL_TEXTURE_DEFORMATION_SGIX, + }; + + public enum CullParameterEXT + { + GL_CULL_VERTEX_EYE_POSITION_EXT = GlConsts.GL_CULL_VERTEX_EYE_POSITION_EXT, + GL_CULL_VERTEX_OBJECT_POSITION_EXT = GlConsts.GL_CULL_VERTEX_OBJECT_POSITION_EXT, + }; + + public enum LightModelColorControl + { + GL_SINGLE_COLOR = GlConsts.GL_SINGLE_COLOR, + GL_SINGLE_COLOR_EXT = GlConsts.GL_SINGLE_COLOR_EXT, + GL_SEPARATE_SPECULAR_COLOR = GlConsts.GL_SEPARATE_SPECULAR_COLOR, + GL_SEPARATE_SPECULAR_COLOR_EXT = GlConsts.GL_SEPARATE_SPECULAR_COLOR_EXT, + }; + + public enum ProgramTarget + { + GL_TEXT_FRAGMENT_SHADER_ATI = GlConsts.GL_TEXT_FRAGMENT_SHADER_ATI, + GL_VERTEX_PROGRAM_ARB = GlConsts.GL_VERTEX_PROGRAM_ARB, + GL_FRAGMENT_PROGRAM_ARB = GlConsts.GL_FRAGMENT_PROGRAM_ARB, + GL_TESS_CONTROL_PROGRAM_NV = GlConsts.GL_TESS_CONTROL_PROGRAM_NV, + GL_TESS_EVALUATION_PROGRAM_NV = GlConsts.GL_TESS_EVALUATION_PROGRAM_NV, + GL_GEOMETRY_PROGRAM_NV = GlConsts.GL_GEOMETRY_PROGRAM_NV, + GL_COMPUTE_PROGRAM_NV = GlConsts.GL_COMPUTE_PROGRAM_NV, + }; + + public enum FramebufferAttachmentParameterName + { + GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING, + GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT, + GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE, + GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT, + GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE, + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE, + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_EXT, + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES, + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME, + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_EXT, + GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_EXT, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL_OES, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_EXT, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE_OES, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_EXT, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER_EXT, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT, + GL_FRAMEBUFFER_ATTACHMENT_LAYERED = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_LAYERED, + GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_LAYERED_ARB, + GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_LAYERED_EXT, + GL_FRAMEBUFFER_ATTACHMENT_LAYERED_OES = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_LAYERED_OES, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SCALE_IMG = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_SCALE_IMG, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR, + GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR = GlConsts.GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR, + }; + + public enum FramebufferStatus + { + GL_FRAMEBUFFER_UNDEFINED = GlConsts.GL_FRAMEBUFFER_UNDEFINED, + GL_FRAMEBUFFER_COMPLETE = GlConsts.GL_FRAMEBUFFER_COMPLETE, + GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT = GlConsts.GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT, + GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = GlConsts.GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT, + GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER = GlConsts.GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER, + GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER = GlConsts.GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER, + GL_FRAMEBUFFER_UNSUPPORTED = GlConsts.GL_FRAMEBUFFER_UNSUPPORTED, + GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE = GlConsts.GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE, + GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS = GlConsts.GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS, + }; + + public enum VertexBufferObjectParameter + { + GL_BUFFER_IMMUTABLE_STORAGE = GlConsts.GL_BUFFER_IMMUTABLE_STORAGE, + GL_BUFFER_STORAGE_FLAGS = GlConsts.GL_BUFFER_STORAGE_FLAGS, + GL_BUFFER_SIZE = GlConsts.GL_BUFFER_SIZE, + GL_BUFFER_USAGE = GlConsts.GL_BUFFER_USAGE, + GL_BUFFER_ACCESS = GlConsts.GL_BUFFER_ACCESS, + GL_BUFFER_MAPPED = GlConsts.GL_BUFFER_MAPPED, + GL_BUFFER_ACCESS_FLAGS = GlConsts.GL_BUFFER_ACCESS_FLAGS, + GL_BUFFER_MAP_LENGTH = GlConsts.GL_BUFFER_MAP_LENGTH, + GL_BUFFER_MAP_OFFSET = GlConsts.GL_BUFFER_MAP_OFFSET, + }; + + public enum BufferPNameARB + { + GL_BUFFER_IMMUTABLE_STORAGE = GlConsts.GL_BUFFER_IMMUTABLE_STORAGE, + GL_BUFFER_STORAGE_FLAGS = GlConsts.GL_BUFFER_STORAGE_FLAGS, + GL_BUFFER_SIZE = GlConsts.GL_BUFFER_SIZE, + GL_BUFFER_SIZE_ARB = GlConsts.GL_BUFFER_SIZE_ARB, + GL_BUFFER_USAGE = GlConsts.GL_BUFFER_USAGE, + GL_BUFFER_USAGE_ARB = GlConsts.GL_BUFFER_USAGE_ARB, + GL_BUFFER_ACCESS = GlConsts.GL_BUFFER_ACCESS, + GL_BUFFER_ACCESS_ARB = GlConsts.GL_BUFFER_ACCESS_ARB, + GL_BUFFER_MAPPED = GlConsts.GL_BUFFER_MAPPED, + GL_BUFFER_MAPPED_ARB = GlConsts.GL_BUFFER_MAPPED_ARB, + GL_BUFFER_ACCESS_FLAGS = GlConsts.GL_BUFFER_ACCESS_FLAGS, + GL_BUFFER_MAP_LENGTH = GlConsts.GL_BUFFER_MAP_LENGTH, + GL_BUFFER_MAP_OFFSET = GlConsts.GL_BUFFER_MAP_OFFSET, + }; + + public enum ProgramParameterPName + { + GL_PROGRAM_BINARY_RETRIEVABLE_HINT = GlConsts.GL_PROGRAM_BINARY_RETRIEVABLE_HINT, + GL_PROGRAM_SEPARABLE = GlConsts.GL_PROGRAM_SEPARABLE, + }; + + public enum PipelineParameterName + { + GL_ACTIVE_PROGRAM = GlConsts.GL_ACTIVE_PROGRAM, + GL_FRAGMENT_SHADER = GlConsts.GL_FRAGMENT_SHADER, + GL_VERTEX_SHADER = GlConsts.GL_VERTEX_SHADER, + GL_INFO_LOG_LENGTH = GlConsts.GL_INFO_LOG_LENGTH, + GL_GEOMETRY_SHADER = GlConsts.GL_GEOMETRY_SHADER, + GL_TESS_EVALUATION_SHADER = GlConsts.GL_TESS_EVALUATION_SHADER, + GL_TESS_CONTROL_SHADER = GlConsts.GL_TESS_CONTROL_SHADER, + }; + + public enum ProgramPropertyARB + { + GL_COMPUTE_WORK_GROUP_SIZE = GlConsts.GL_COMPUTE_WORK_GROUP_SIZE, + GL_PROGRAM_BINARY_LENGTH = GlConsts.GL_PROGRAM_BINARY_LENGTH, + GL_GEOMETRY_VERTICES_OUT = GlConsts.GL_GEOMETRY_VERTICES_OUT, + GL_GEOMETRY_INPUT_TYPE = GlConsts.GL_GEOMETRY_INPUT_TYPE, + GL_GEOMETRY_OUTPUT_TYPE = GlConsts.GL_GEOMETRY_OUTPUT_TYPE, + GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH = GlConsts.GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH, + GL_ACTIVE_UNIFORM_BLOCKS = GlConsts.GL_ACTIVE_UNIFORM_BLOCKS, + GL_DELETE_STATUS = GlConsts.GL_DELETE_STATUS, + GL_LINK_STATUS = GlConsts.GL_LINK_STATUS, + GL_VALIDATE_STATUS = GlConsts.GL_VALIDATE_STATUS, + GL_INFO_LOG_LENGTH = GlConsts.GL_INFO_LOG_LENGTH, + GL_ATTACHED_SHADERS = GlConsts.GL_ATTACHED_SHADERS, + GL_ACTIVE_UNIFORMS = GlConsts.GL_ACTIVE_UNIFORMS, + GL_ACTIVE_UNIFORM_MAX_LENGTH = GlConsts.GL_ACTIVE_UNIFORM_MAX_LENGTH, + GL_ACTIVE_ATTRIBUTES = GlConsts.GL_ACTIVE_ATTRIBUTES, + GL_ACTIVE_ATTRIBUTE_MAX_LENGTH = GlConsts.GL_ACTIVE_ATTRIBUTE_MAX_LENGTH, + GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH = GlConsts.GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH, + GL_TRANSFORM_FEEDBACK_BUFFER_MODE = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER_MODE, + GL_TRANSFORM_FEEDBACK_VARYINGS = GlConsts.GL_TRANSFORM_FEEDBACK_VARYINGS, + GL_ACTIVE_ATOMIC_COUNTER_BUFFERS = GlConsts.GL_ACTIVE_ATOMIC_COUNTER_BUFFERS, + }; + + public enum VertexAttribPropertyARB + { + GL_VERTEX_ATTRIB_BINDING = GlConsts.GL_VERTEX_ATTRIB_BINDING, + GL_VERTEX_ATTRIB_RELATIVE_OFFSET = GlConsts.GL_VERTEX_ATTRIB_RELATIVE_OFFSET, + GL_VERTEX_ATTRIB_ARRAY_ENABLED = GlConsts.GL_VERTEX_ATTRIB_ARRAY_ENABLED, + GL_VERTEX_ATTRIB_ARRAY_SIZE = GlConsts.GL_VERTEX_ATTRIB_ARRAY_SIZE, + GL_VERTEX_ATTRIB_ARRAY_STRIDE = GlConsts.GL_VERTEX_ATTRIB_ARRAY_STRIDE, + GL_VERTEX_ATTRIB_ARRAY_TYPE = GlConsts.GL_VERTEX_ATTRIB_ARRAY_TYPE, + GL_CURRENT_VERTEX_ATTRIB = GlConsts.GL_CURRENT_VERTEX_ATTRIB, + GL_VERTEX_ATTRIB_ARRAY_LONG = GlConsts.GL_VERTEX_ATTRIB_ARRAY_LONG, + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = GlConsts.GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = GlConsts.GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING, + GL_VERTEX_ATTRIB_ARRAY_INTEGER = GlConsts.GL_VERTEX_ATTRIB_ARRAY_INTEGER, + GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT = GlConsts.GL_VERTEX_ATTRIB_ARRAY_INTEGER_EXT, + GL_VERTEX_ATTRIB_ARRAY_DIVISOR = GlConsts.GL_VERTEX_ATTRIB_ARRAY_DIVISOR, + }; + + public enum VertexArrayPName + { + GL_VERTEX_ATTRIB_RELATIVE_OFFSET = GlConsts.GL_VERTEX_ATTRIB_RELATIVE_OFFSET, + GL_VERTEX_ATTRIB_ARRAY_ENABLED = GlConsts.GL_VERTEX_ATTRIB_ARRAY_ENABLED, + GL_VERTEX_ATTRIB_ARRAY_SIZE = GlConsts.GL_VERTEX_ATTRIB_ARRAY_SIZE, + GL_VERTEX_ATTRIB_ARRAY_STRIDE = GlConsts.GL_VERTEX_ATTRIB_ARRAY_STRIDE, + GL_VERTEX_ATTRIB_ARRAY_TYPE = GlConsts.GL_VERTEX_ATTRIB_ARRAY_TYPE, + GL_VERTEX_ATTRIB_ARRAY_LONG = GlConsts.GL_VERTEX_ATTRIB_ARRAY_LONG, + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = GlConsts.GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, + GL_VERTEX_ATTRIB_ARRAY_INTEGER = GlConsts.GL_VERTEX_ATTRIB_ARRAY_INTEGER, + GL_VERTEX_ATTRIB_ARRAY_DIVISOR = GlConsts.GL_VERTEX_ATTRIB_ARRAY_DIVISOR, + }; + + public enum QueryObjectParameterName + { + GL_QUERY_TARGET = GlConsts.GL_QUERY_TARGET, + GL_QUERY_RESULT = GlConsts.GL_QUERY_RESULT, + GL_QUERY_RESULT_AVAILABLE = GlConsts.GL_QUERY_RESULT_AVAILABLE, + GL_QUERY_RESULT_NO_WAIT = GlConsts.GL_QUERY_RESULT_NO_WAIT, + }; + + public enum QueryTarget + { + GL_TRANSFORM_FEEDBACK_OVERFLOW = GlConsts.GL_TRANSFORM_FEEDBACK_OVERFLOW, + GL_VERTICES_SUBMITTED = GlConsts.GL_VERTICES_SUBMITTED, + GL_PRIMITIVES_SUBMITTED = GlConsts.GL_PRIMITIVES_SUBMITTED, + GL_VERTEX_SHADER_INVOCATIONS = GlConsts.GL_VERTEX_SHADER_INVOCATIONS, + GL_TIME_ELAPSED = GlConsts.GL_TIME_ELAPSED, + GL_SAMPLES_PASSED = GlConsts.GL_SAMPLES_PASSED, + GL_ANY_SAMPLES_PASSED = GlConsts.GL_ANY_SAMPLES_PASSED, + GL_PRIMITIVES_GENERATED = GlConsts.GL_PRIMITIVES_GENERATED, + GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN = GlConsts.GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, + GL_ANY_SAMPLES_PASSED_CONSERVATIVE = GlConsts.GL_ANY_SAMPLES_PASSED_CONSERVATIVE, + }; + + public enum PixelTransformTargetEXT + { + GL_PIXEL_TRANSFORM_2D_EXT = GlConsts.GL_PIXEL_TRANSFORM_2D_EXT, + }; + + public enum PixelTransformPNameEXT + { + GL_PIXEL_MAG_FILTER_EXT = GlConsts.GL_PIXEL_MAG_FILTER_EXT, + GL_PIXEL_MIN_FILTER_EXT = GlConsts.GL_PIXEL_MIN_FILTER_EXT, + GL_PIXEL_CUBIC_WEIGHT_EXT = GlConsts.GL_PIXEL_CUBIC_WEIGHT_EXT, + }; + + public enum LightTextureModeEXT + { + GL_FRAGMENT_MATERIAL_EXT = GlConsts.GL_FRAGMENT_MATERIAL_EXT, + GL_FRAGMENT_NORMAL_EXT = GlConsts.GL_FRAGMENT_NORMAL_EXT, + GL_FRAGMENT_COLOR_EXT = GlConsts.GL_FRAGMENT_COLOR_EXT, + GL_FRAGMENT_DEPTH_EXT = GlConsts.GL_FRAGMENT_DEPTH_EXT, + }; + + public enum LightTexturePNameEXT + { + GL_ATTENUATION_EXT = GlConsts.GL_ATTENUATION_EXT, + GL_SHADOW_ATTENUATION_EXT = GlConsts.GL_SHADOW_ATTENUATION_EXT, + }; + + public enum PixelTexGenParameterNameSGIS + { + GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS = GlConsts.GL_PIXEL_FRAGMENT_RGB_SOURCE_SGIS, + GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS = GlConsts.GL_PIXEL_FRAGMENT_ALPHA_SOURCE_SGIS, + }; + + public enum LightEnvParameterSGIX + { + GL_LIGHT_ENV_MODE_SGIX = GlConsts.GL_LIGHT_ENV_MODE_SGIX, + }; + + public enum FragmentLightModelParameterSGIX + { + GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX = GlConsts.GL_FRAGMENT_LIGHT_MODEL_LOCAL_VIEWER_SGIX, + GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX = GlConsts.GL_FRAGMENT_LIGHT_MODEL_TWO_SIDE_SGIX, + GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX = GlConsts.GL_FRAGMENT_LIGHT_MODEL_AMBIENT_SGIX, + GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX = GlConsts.GL_FRAGMENT_LIGHT_MODEL_NORMAL_INTERPOLATION_SGIX, + }; + + public enum FragmentLightNameSGIX + { + GL_FRAGMENT_LIGHT0_SGIX = GlConsts.GL_FRAGMENT_LIGHT0_SGIX, + GL_FRAGMENT_LIGHT1_SGIX = GlConsts.GL_FRAGMENT_LIGHT1_SGIX, + GL_FRAGMENT_LIGHT2_SGIX = GlConsts.GL_FRAGMENT_LIGHT2_SGIX, + GL_FRAGMENT_LIGHT3_SGIX = GlConsts.GL_FRAGMENT_LIGHT3_SGIX, + GL_FRAGMENT_LIGHT4_SGIX = GlConsts.GL_FRAGMENT_LIGHT4_SGIX, + GL_FRAGMENT_LIGHT5_SGIX = GlConsts.GL_FRAGMENT_LIGHT5_SGIX, + GL_FRAGMENT_LIGHT6_SGIX = GlConsts.GL_FRAGMENT_LIGHT6_SGIX, + GL_FRAGMENT_LIGHT7_SGIX = GlConsts.GL_FRAGMENT_LIGHT7_SGIX, + }; + + public enum PixelStoreResampleMode + { + GL_RESAMPLE_DECIMATE_SGIX = GlConsts.GL_RESAMPLE_DECIMATE_SGIX, + GL_RESAMPLE_REPLICATE_SGIX = GlConsts.GL_RESAMPLE_REPLICATE_SGIX, + GL_RESAMPLE_ZERO_FILL_SGIX = GlConsts.GL_RESAMPLE_ZERO_FILL_SGIX, + }; + + public enum TextureUnit + { + GL_TEXTURE0 = GlConsts.GL_TEXTURE0, + GL_TEXTURE1 = GlConsts.GL_TEXTURE1, + GL_TEXTURE2 = GlConsts.GL_TEXTURE2, + GL_TEXTURE3 = GlConsts.GL_TEXTURE3, + GL_TEXTURE4 = GlConsts.GL_TEXTURE4, + GL_TEXTURE5 = GlConsts.GL_TEXTURE5, + GL_TEXTURE6 = GlConsts.GL_TEXTURE6, + GL_TEXTURE7 = GlConsts.GL_TEXTURE7, + GL_TEXTURE8 = GlConsts.GL_TEXTURE8, + GL_TEXTURE9 = GlConsts.GL_TEXTURE9, + GL_TEXTURE10 = GlConsts.GL_TEXTURE10, + GL_TEXTURE11 = GlConsts.GL_TEXTURE11, + GL_TEXTURE12 = GlConsts.GL_TEXTURE12, + GL_TEXTURE13 = GlConsts.GL_TEXTURE13, + GL_TEXTURE14 = GlConsts.GL_TEXTURE14, + GL_TEXTURE15 = GlConsts.GL_TEXTURE15, + GL_TEXTURE16 = GlConsts.GL_TEXTURE16, + GL_TEXTURE17 = GlConsts.GL_TEXTURE17, + GL_TEXTURE18 = GlConsts.GL_TEXTURE18, + GL_TEXTURE19 = GlConsts.GL_TEXTURE19, + GL_TEXTURE20 = GlConsts.GL_TEXTURE20, + GL_TEXTURE21 = GlConsts.GL_TEXTURE21, + GL_TEXTURE22 = GlConsts.GL_TEXTURE22, + GL_TEXTURE23 = GlConsts.GL_TEXTURE23, + GL_TEXTURE24 = GlConsts.GL_TEXTURE24, + GL_TEXTURE25 = GlConsts.GL_TEXTURE25, + GL_TEXTURE26 = GlConsts.GL_TEXTURE26, + GL_TEXTURE27 = GlConsts.GL_TEXTURE27, + GL_TEXTURE28 = GlConsts.GL_TEXTURE28, + GL_TEXTURE29 = GlConsts.GL_TEXTURE29, + GL_TEXTURE30 = GlConsts.GL_TEXTURE30, + GL_TEXTURE31 = GlConsts.GL_TEXTURE31, + }; + + public enum CombinerRegisterNV + { + GL_TEXTURE0_ARB = GlConsts.GL_TEXTURE0_ARB, + GL_TEXTURE1_ARB = GlConsts.GL_TEXTURE1_ARB, + GL_PRIMARY_COLOR_NV = GlConsts.GL_PRIMARY_COLOR_NV, + GL_SECONDARY_COLOR_NV = GlConsts.GL_SECONDARY_COLOR_NV, + GL_SPARE0_NV = GlConsts.GL_SPARE0_NV, + GL_SPARE1_NV = GlConsts.GL_SPARE1_NV, + GL_DISCARD_NV = GlConsts.GL_DISCARD_NV, + }; + + public enum UniformBlockPName + { + GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER = GlConsts.GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_CONTROL_SHADER, + GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER = GlConsts.GL_UNIFORM_BLOCK_REFERENCED_BY_TESS_EVALUATION_SHADER, + GL_UNIFORM_BLOCK_BINDING = GlConsts.GL_UNIFORM_BLOCK_BINDING, + GL_UNIFORM_BLOCK_DATA_SIZE = GlConsts.GL_UNIFORM_BLOCK_DATA_SIZE, + GL_UNIFORM_BLOCK_NAME_LENGTH = GlConsts.GL_UNIFORM_BLOCK_NAME_LENGTH, + GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS = GlConsts.GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS, + GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES = GlConsts.GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES, + GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER = GlConsts.GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER, + GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER = GlConsts.GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER, + GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER = GlConsts.GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER, + GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER = GlConsts.GL_UNIFORM_BLOCK_REFERENCED_BY_COMPUTE_SHADER, + }; + + public enum FenceConditionNV + { + GL_ALL_COMPLETED_NV = GlConsts.GL_ALL_COMPLETED_NV, + }; + + public enum FenceParameterNameNV + { + GL_FENCE_STATUS_NV = GlConsts.GL_FENCE_STATUS_NV, + GL_FENCE_CONDITION_NV = GlConsts.GL_FENCE_CONDITION_NV, + }; + + public enum CombinerVariableNV + { + GL_VARIABLE_A_NV = GlConsts.GL_VARIABLE_A_NV, + GL_VARIABLE_B_NV = GlConsts.GL_VARIABLE_B_NV, + GL_VARIABLE_C_NV = GlConsts.GL_VARIABLE_C_NV, + GL_VARIABLE_D_NV = GlConsts.GL_VARIABLE_D_NV, + GL_VARIABLE_E_NV = GlConsts.GL_VARIABLE_E_NV, + GL_VARIABLE_F_NV = GlConsts.GL_VARIABLE_F_NV, + GL_VARIABLE_G_NV = GlConsts.GL_VARIABLE_G_NV, + }; + + public enum PathColor + { + GL_PRIMARY_COLOR_NV = GlConsts.GL_PRIMARY_COLOR_NV, + GL_SECONDARY_COLOR_NV = GlConsts.GL_SECONDARY_COLOR_NV, + GL_PRIMARY_COLOR = GlConsts.GL_PRIMARY_COLOR, + }; + + public enum CombinerMappingNV + { + GL_UNSIGNED_IDENTITY_NV = GlConsts.GL_UNSIGNED_IDENTITY_NV, + GL_UNSIGNED_INVERT_NV = GlConsts.GL_UNSIGNED_INVERT_NV, + GL_EXPAND_NORMAL_NV = GlConsts.GL_EXPAND_NORMAL_NV, + GL_EXPAND_NEGATE_NV = GlConsts.GL_EXPAND_NEGATE_NV, + GL_HALF_BIAS_NORMAL_NV = GlConsts.GL_HALF_BIAS_NORMAL_NV, + GL_HALF_BIAS_NEGATE_NV = GlConsts.GL_HALF_BIAS_NEGATE_NV, + GL_SIGNED_IDENTITY_NV = GlConsts.GL_SIGNED_IDENTITY_NV, + GL_SIGNED_NEGATE_NV = GlConsts.GL_SIGNED_NEGATE_NV, + }; + + public enum CombinerParameterNV + { + GL_COMBINER_INPUT_NV = GlConsts.GL_COMBINER_INPUT_NV, + GL_COMBINER_MAPPING_NV = GlConsts.GL_COMBINER_MAPPING_NV, + GL_COMBINER_COMPONENT_USAGE_NV = GlConsts.GL_COMBINER_COMPONENT_USAGE_NV, + }; + + public enum CombinerStageNV + { + GL_COMBINER0_NV = GlConsts.GL_COMBINER0_NV, + GL_COMBINER1_NV = GlConsts.GL_COMBINER1_NV, + GL_COMBINER2_NV = GlConsts.GL_COMBINER2_NV, + GL_COMBINER3_NV = GlConsts.GL_COMBINER3_NV, + GL_COMBINER4_NV = GlConsts.GL_COMBINER4_NV, + GL_COMBINER5_NV = GlConsts.GL_COMBINER5_NV, + GL_COMBINER6_NV = GlConsts.GL_COMBINER6_NV, + GL_COMBINER7_NV = GlConsts.GL_COMBINER7_NV, + }; + + public enum PixelStoreSubsampleRate + { + GL_PIXEL_SUBSAMPLE_4444_SGIX = GlConsts.GL_PIXEL_SUBSAMPLE_4444_SGIX, + GL_PIXEL_SUBSAMPLE_2424_SGIX = GlConsts.GL_PIXEL_SUBSAMPLE_2424_SGIX, + GL_PIXEL_SUBSAMPLE_4242_SGIX = GlConsts.GL_PIXEL_SUBSAMPLE_4242_SGIX, + }; + + public enum TextureNormalModeEXT + { + GL_PERTURB_EXT = GlConsts.GL_PERTURB_EXT, + }; + + public enum VertexArrayPNameAPPLE + { + GL_STORAGE_CLIENT_APPLE = GlConsts.GL_STORAGE_CLIENT_APPLE, + GL_STORAGE_CACHED_APPLE = GlConsts.GL_STORAGE_CACHED_APPLE, + GL_STORAGE_SHARED_APPLE = GlConsts.GL_STORAGE_SHARED_APPLE, + }; + + public enum VertexAttribEnum + { + GL_VERTEX_ATTRIB_ARRAY_ENABLED = GlConsts.GL_VERTEX_ATTRIB_ARRAY_ENABLED, + GL_VERTEX_ATTRIB_ARRAY_SIZE = GlConsts.GL_VERTEX_ATTRIB_ARRAY_SIZE, + GL_VERTEX_ATTRIB_ARRAY_STRIDE = GlConsts.GL_VERTEX_ATTRIB_ARRAY_STRIDE, + GL_VERTEX_ATTRIB_ARRAY_TYPE = GlConsts.GL_VERTEX_ATTRIB_ARRAY_TYPE, + GL_CURRENT_VERTEX_ATTRIB = GlConsts.GL_CURRENT_VERTEX_ATTRIB, + GL_VERTEX_ATTRIB_ARRAY_NORMALIZED = GlConsts.GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, + GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = GlConsts.GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING, + GL_VERTEX_ATTRIB_ARRAY_INTEGER = GlConsts.GL_VERTEX_ATTRIB_ARRAY_INTEGER, + GL_VERTEX_ATTRIB_ARRAY_DIVISOR = GlConsts.GL_VERTEX_ATTRIB_ARRAY_DIVISOR, + }; + + public enum ProgramStringProperty + { + GL_PROGRAM_STRING_ARB = GlConsts.GL_PROGRAM_STRING_ARB, + }; + + public enum VertexAttribEnumNV + { + GL_PROGRAM_PARAMETER_NV = GlConsts.GL_PROGRAM_PARAMETER_NV, + }; + + public enum VertexAttribPointerPropertyARB + { + GL_VERTEX_ATTRIB_ARRAY_POINTER = GlConsts.GL_VERTEX_ATTRIB_ARRAY_POINTER, + GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = GlConsts.GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB, + }; + + public enum EvalTargetNV + { + GL_EVAL_2D_NV = GlConsts.GL_EVAL_2D_NV, + GL_EVAL_TRIANGULAR_2D_NV = GlConsts.GL_EVAL_TRIANGULAR_2D_NV, + }; + + public enum MapParameterNV + { + GL_MAP_TESSELLATION_NV = GlConsts.GL_MAP_TESSELLATION_NV, + }; + + public enum MapAttribParameterNV + { + GL_MAP_ATTRIB_U_ORDER_NV = GlConsts.GL_MAP_ATTRIB_U_ORDER_NV, + GL_MAP_ATTRIB_V_ORDER_NV = GlConsts.GL_MAP_ATTRIB_V_ORDER_NV, + }; + + public enum ArrayObjectUsageATI + { + GL_STATIC_ATI = GlConsts.GL_STATIC_ATI, + GL_DYNAMIC_ATI = GlConsts.GL_DYNAMIC_ATI, + }; + + public enum PreserveModeATI + { + GL_PRESERVE_ATI = GlConsts.GL_PRESERVE_ATI, + GL_DISCARD_ATI = GlConsts.GL_DISCARD_ATI, + }; + + public enum ArrayObjectPNameATI + { + GL_OBJECT_BUFFER_SIZE_ATI = GlConsts.GL_OBJECT_BUFFER_SIZE_ATI, + GL_OBJECT_BUFFER_USAGE_ATI = GlConsts.GL_OBJECT_BUFFER_USAGE_ATI, + }; + + public enum VertexStreamATI + { + GL_VERTEX_STREAM0_ATI = GlConsts.GL_VERTEX_STREAM0_ATI, + GL_VERTEX_STREAM1_ATI = GlConsts.GL_VERTEX_STREAM1_ATI, + GL_VERTEX_STREAM2_ATI = GlConsts.GL_VERTEX_STREAM2_ATI, + GL_VERTEX_STREAM3_ATI = GlConsts.GL_VERTEX_STREAM3_ATI, + GL_VERTEX_STREAM4_ATI = GlConsts.GL_VERTEX_STREAM4_ATI, + GL_VERTEX_STREAM5_ATI = GlConsts.GL_VERTEX_STREAM5_ATI, + GL_VERTEX_STREAM6_ATI = GlConsts.GL_VERTEX_STREAM6_ATI, + GL_VERTEX_STREAM7_ATI = GlConsts.GL_VERTEX_STREAM7_ATI, + }; + + public enum GetTexBumpParameterATI + { + GL_BUMP_ROT_MATRIX_ATI = GlConsts.GL_BUMP_ROT_MATRIX_ATI, + GL_BUMP_ROT_MATRIX_SIZE_ATI = GlConsts.GL_BUMP_ROT_MATRIX_SIZE_ATI, + GL_BUMP_NUM_TEX_UNITS_ATI = GlConsts.GL_BUMP_NUM_TEX_UNITS_ATI, + GL_BUMP_TEX_UNITS_ATI = GlConsts.GL_BUMP_TEX_UNITS_ATI, + }; + + public enum TexBumpParameterATI + { + GL_BUMP_ROT_MATRIX_ATI = GlConsts.GL_BUMP_ROT_MATRIX_ATI, + }; + + public enum VertexShaderOpEXT + { + GL_OP_INDEX_EXT = GlConsts.GL_OP_INDEX_EXT, + GL_OP_NEGATE_EXT = GlConsts.GL_OP_NEGATE_EXT, + GL_OP_DOT3_EXT = GlConsts.GL_OP_DOT3_EXT, + GL_OP_DOT4_EXT = GlConsts.GL_OP_DOT4_EXT, + GL_OP_MUL_EXT = GlConsts.GL_OP_MUL_EXT, + GL_OP_ADD_EXT = GlConsts.GL_OP_ADD_EXT, + GL_OP_MADD_EXT = GlConsts.GL_OP_MADD_EXT, + GL_OP_FRAC_EXT = GlConsts.GL_OP_FRAC_EXT, + GL_OP_MAX_EXT = GlConsts.GL_OP_MAX_EXT, + GL_OP_MIN_EXT = GlConsts.GL_OP_MIN_EXT, + GL_OP_SET_GE_EXT = GlConsts.GL_OP_SET_GE_EXT, + GL_OP_SET_LT_EXT = GlConsts.GL_OP_SET_LT_EXT, + GL_OP_CLAMP_EXT = GlConsts.GL_OP_CLAMP_EXT, + GL_OP_FLOOR_EXT = GlConsts.GL_OP_FLOOR_EXT, + GL_OP_ROUND_EXT = GlConsts.GL_OP_ROUND_EXT, + GL_OP_EXP_BASE_2_EXT = GlConsts.GL_OP_EXP_BASE_2_EXT, + GL_OP_LOG_BASE_2_EXT = GlConsts.GL_OP_LOG_BASE_2_EXT, + GL_OP_POWER_EXT = GlConsts.GL_OP_POWER_EXT, + GL_OP_RECIP_EXT = GlConsts.GL_OP_RECIP_EXT, + GL_OP_RECIP_SQRT_EXT = GlConsts.GL_OP_RECIP_SQRT_EXT, + GL_OP_SUB_EXT = GlConsts.GL_OP_SUB_EXT, + GL_OP_CROSS_PRODUCT_EXT = GlConsts.GL_OP_CROSS_PRODUCT_EXT, + GL_OP_MULTIPLY_MATRIX_EXT = GlConsts.GL_OP_MULTIPLY_MATRIX_EXT, + GL_OP_MOV_EXT = GlConsts.GL_OP_MOV_EXT, + }; + + public enum DataTypeEXT + { + GL_SCALAR_EXT = GlConsts.GL_SCALAR_EXT, + GL_VECTOR_EXT = GlConsts.GL_VECTOR_EXT, + GL_MATRIX_EXT = GlConsts.GL_MATRIX_EXT, + }; + + public enum VertexShaderStorageTypeEXT + { + GL_VARIANT_EXT = GlConsts.GL_VARIANT_EXT, + GL_INVARIANT_EXT = GlConsts.GL_INVARIANT_EXT, + GL_LOCAL_CONSTANT_EXT = GlConsts.GL_LOCAL_CONSTANT_EXT, + GL_LOCAL_EXT = GlConsts.GL_LOCAL_EXT, + }; + + public enum VertexShaderCoordOutEXT + { + GL_X_EXT = GlConsts.GL_X_EXT, + GL_Y_EXT = GlConsts.GL_Y_EXT, + GL_Z_EXT = GlConsts.GL_Z_EXT, + GL_W_EXT = GlConsts.GL_W_EXT, + GL_NEGATIVE_X_EXT = GlConsts.GL_NEGATIVE_X_EXT, + GL_NEGATIVE_Y_EXT = GlConsts.GL_NEGATIVE_Y_EXT, + GL_NEGATIVE_Z_EXT = GlConsts.GL_NEGATIVE_Z_EXT, + GL_NEGATIVE_W_EXT = GlConsts.GL_NEGATIVE_W_EXT, + GL_ZERO_EXT = GlConsts.GL_ZERO_EXT, + GL_ONE_EXT = GlConsts.GL_ONE_EXT, + GL_NEGATIVE_ONE_EXT = GlConsts.GL_NEGATIVE_ONE_EXT, + }; + + public enum ParameterRangeEXT + { + GL_NORMALIZED_RANGE_EXT = GlConsts.GL_NORMALIZED_RANGE_EXT, + GL_FULL_RANGE_EXT = GlConsts.GL_FULL_RANGE_EXT, + }; + + public enum VertexShaderParameterEXT + { + GL_CURRENT_VERTEX_EXT = GlConsts.GL_CURRENT_VERTEX_EXT, + GL_MVP_MATRIX_EXT = GlConsts.GL_MVP_MATRIX_EXT, + }; + + public enum GetVariantValueEXT + { + GL_VARIANT_VALUE_EXT = GlConsts.GL_VARIANT_VALUE_EXT, + GL_VARIANT_DATATYPE_EXT = GlConsts.GL_VARIANT_DATATYPE_EXT, + GL_VARIANT_ARRAY_STRIDE_EXT = GlConsts.GL_VARIANT_ARRAY_STRIDE_EXT, + GL_VARIANT_ARRAY_TYPE_EXT = GlConsts.GL_VARIANT_ARRAY_TYPE_EXT, + }; + + public enum VariantCapEXT + { + GL_VARIANT_ARRAY_EXT = GlConsts.GL_VARIANT_ARRAY_EXT, + }; + + public enum PNTrianglesPNameATI + { + GL_PN_TRIANGLES_POINT_MODE_ATI = GlConsts.GL_PN_TRIANGLES_POINT_MODE_ATI, + GL_PN_TRIANGLES_NORMAL_MODE_ATI = GlConsts.GL_PN_TRIANGLES_NORMAL_MODE_ATI, + GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI = GlConsts.GL_PN_TRIANGLES_TESSELATION_LEVEL_ATI, + }; + + public enum QueryParameterName + { + GL_QUERY_COUNTER_BITS = GlConsts.GL_QUERY_COUNTER_BITS, + GL_CURRENT_QUERY = GlConsts.GL_CURRENT_QUERY, + }; + + public enum OcclusionQueryParameterNameNV + { + GL_PIXEL_COUNT_NV = GlConsts.GL_PIXEL_COUNT_NV, + GL_PIXEL_COUNT_AVAILABLE_NV = GlConsts.GL_PIXEL_COUNT_AVAILABLE_NV, + }; + + public enum ProgramFormat + { + GL_PROGRAM_FORMAT_ASCII_ARB = GlConsts.GL_PROGRAM_FORMAT_ASCII_ARB, + }; + + public enum PixelDataRangeTargetNV + { + GL_WRITE_PIXEL_DATA_RANGE_NV = GlConsts.GL_WRITE_PIXEL_DATA_RANGE_NV, + GL_READ_PIXEL_DATA_RANGE_NV = GlConsts.GL_READ_PIXEL_DATA_RANGE_NV, + }; + + public enum CopyBufferSubDataTarget + { + GL_ARRAY_BUFFER = GlConsts.GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER = GlConsts.GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER = GlConsts.GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER = GlConsts.GL_PIXEL_UNPACK_BUFFER, + GL_UNIFORM_BUFFER = GlConsts.GL_UNIFORM_BUFFER, + GL_TEXTURE_BUFFER = GlConsts.GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER, + GL_COPY_READ_BUFFER = GlConsts.GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER = GlConsts.GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER = GlConsts.GL_DRAW_INDIRECT_BUFFER, + GL_SHADER_STORAGE_BUFFER = GlConsts.GL_SHADER_STORAGE_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER = GlConsts.GL_DISPATCH_INDIRECT_BUFFER, + GL_QUERY_BUFFER = GlConsts.GL_QUERY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER = GlConsts.GL_ATOMIC_COUNTER_BUFFER, + }; + + public enum BufferStorageTarget + { + GL_ARRAY_BUFFER = GlConsts.GL_ARRAY_BUFFER, + GL_ELEMENT_ARRAY_BUFFER = GlConsts.GL_ELEMENT_ARRAY_BUFFER, + GL_PIXEL_PACK_BUFFER = GlConsts.GL_PIXEL_PACK_BUFFER, + GL_PIXEL_UNPACK_BUFFER = GlConsts.GL_PIXEL_UNPACK_BUFFER, + GL_UNIFORM_BUFFER = GlConsts.GL_UNIFORM_BUFFER, + GL_TEXTURE_BUFFER = GlConsts.GL_TEXTURE_BUFFER, + GL_TRANSFORM_FEEDBACK_BUFFER = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER, + GL_COPY_READ_BUFFER = GlConsts.GL_COPY_READ_BUFFER, + GL_COPY_WRITE_BUFFER = GlConsts.GL_COPY_WRITE_BUFFER, + GL_DRAW_INDIRECT_BUFFER = GlConsts.GL_DRAW_INDIRECT_BUFFER, + GL_SHADER_STORAGE_BUFFER = GlConsts.GL_SHADER_STORAGE_BUFFER, + GL_DISPATCH_INDIRECT_BUFFER = GlConsts.GL_DISPATCH_INDIRECT_BUFFER, + GL_QUERY_BUFFER = GlConsts.GL_QUERY_BUFFER, + GL_ATOMIC_COUNTER_BUFFER = GlConsts.GL_ATOMIC_COUNTER_BUFFER, + }; + + public enum BufferAccessARB + { + GL_READ_ONLY = GlConsts.GL_READ_ONLY, + GL_WRITE_ONLY = GlConsts.GL_WRITE_ONLY, + GL_READ_WRITE = GlConsts.GL_READ_WRITE, + }; + + public enum BufferPointerNameARB + { + GL_BUFFER_MAP_POINTER = GlConsts.GL_BUFFER_MAP_POINTER, + GL_BUFFER_MAP_POINTER_ARB = GlConsts.GL_BUFFER_MAP_POINTER_ARB, + }; + + public enum VertexBufferObjectUsage + { + GL_STREAM_DRAW = GlConsts.GL_STREAM_DRAW, + GL_STREAM_READ = GlConsts.GL_STREAM_READ, + GL_STREAM_COPY = GlConsts.GL_STREAM_COPY, + GL_STATIC_DRAW = GlConsts.GL_STATIC_DRAW, + GL_STATIC_READ = GlConsts.GL_STATIC_READ, + GL_STATIC_COPY = GlConsts.GL_STATIC_COPY, + GL_DYNAMIC_DRAW = GlConsts.GL_DYNAMIC_DRAW, + GL_DYNAMIC_READ = GlConsts.GL_DYNAMIC_READ, + GL_DYNAMIC_COPY = GlConsts.GL_DYNAMIC_COPY, + }; + + public enum BufferUsageARB + { + GL_STREAM_DRAW = GlConsts.GL_STREAM_DRAW, + GL_STREAM_READ = GlConsts.GL_STREAM_READ, + GL_STREAM_COPY = GlConsts.GL_STREAM_COPY, + GL_STATIC_DRAW = GlConsts.GL_STATIC_DRAW, + GL_STATIC_READ = GlConsts.GL_STATIC_READ, + GL_STATIC_COPY = GlConsts.GL_STATIC_COPY, + GL_DYNAMIC_DRAW = GlConsts.GL_DYNAMIC_DRAW, + GL_DYNAMIC_READ = GlConsts.GL_DYNAMIC_READ, + GL_DYNAMIC_COPY = GlConsts.GL_DYNAMIC_COPY, + }; + + public enum ClampColorTargetARB + { + GL_CLAMP_VERTEX_COLOR_ARB = GlConsts.GL_CLAMP_VERTEX_COLOR_ARB, + GL_CLAMP_FRAGMENT_COLOR_ARB = GlConsts.GL_CLAMP_FRAGMENT_COLOR_ARB, + GL_CLAMP_READ_COLOR = GlConsts.GL_CLAMP_READ_COLOR, + GL_CLAMP_READ_COLOR_ARB = GlConsts.GL_CLAMP_READ_COLOR_ARB, + }; + + public enum FragmentOpATI + { + GL_MOV_ATI = GlConsts.GL_MOV_ATI, + GL_ADD_ATI = GlConsts.GL_ADD_ATI, + GL_MUL_ATI = GlConsts.GL_MUL_ATI, + GL_SUB_ATI = GlConsts.GL_SUB_ATI, + GL_DOT3_ATI = GlConsts.GL_DOT3_ATI, + GL_DOT4_ATI = GlConsts.GL_DOT4_ATI, + GL_MAD_ATI = GlConsts.GL_MAD_ATI, + GL_LERP_ATI = GlConsts.GL_LERP_ATI, + GL_CND_ATI = GlConsts.GL_CND_ATI, + GL_CND0_ATI = GlConsts.GL_CND0_ATI, + GL_DOT2_ADD_ATI = GlConsts.GL_DOT2_ADD_ATI, + }; + + public enum SwizzleOpATI + { + GL_SWIZZLE_STR_ATI = GlConsts.GL_SWIZZLE_STR_ATI, + GL_SWIZZLE_STQ_ATI = GlConsts.GL_SWIZZLE_STQ_ATI, + GL_SWIZZLE_STR_DR_ATI = GlConsts.GL_SWIZZLE_STR_DR_ATI, + GL_SWIZZLE_STQ_DQ_ATI = GlConsts.GL_SWIZZLE_STQ_DQ_ATI, + }; + + public enum ObjectTypeAPPLE + { + GL_DRAW_PIXELS_APPLE = GlConsts.GL_DRAW_PIXELS_APPLE, + GL_FENCE_APPLE = GlConsts.GL_FENCE_APPLE, + }; + + public enum UniformPName + { + GL_UNIFORM_TYPE = GlConsts.GL_UNIFORM_TYPE, + GL_UNIFORM_SIZE = GlConsts.GL_UNIFORM_SIZE, + GL_UNIFORM_NAME_LENGTH = GlConsts.GL_UNIFORM_NAME_LENGTH, + GL_UNIFORM_BLOCK_INDEX = GlConsts.GL_UNIFORM_BLOCK_INDEX, + GL_UNIFORM_OFFSET = GlConsts.GL_UNIFORM_OFFSET, + GL_UNIFORM_ARRAY_STRIDE = GlConsts.GL_UNIFORM_ARRAY_STRIDE, + GL_UNIFORM_MATRIX_STRIDE = GlConsts.GL_UNIFORM_MATRIX_STRIDE, + GL_UNIFORM_IS_ROW_MAJOR = GlConsts.GL_UNIFORM_IS_ROW_MAJOR, + GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX = GlConsts.GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX, + }; + + public enum SubroutineParameterName + { + GL_UNIFORM_SIZE = GlConsts.GL_UNIFORM_SIZE, + GL_UNIFORM_NAME_LENGTH = GlConsts.GL_UNIFORM_NAME_LENGTH, + GL_NUM_COMPATIBLE_SUBROUTINES = GlConsts.GL_NUM_COMPATIBLE_SUBROUTINES, + GL_COMPATIBLE_SUBROUTINES = GlConsts.GL_COMPATIBLE_SUBROUTINES, + }; + + public enum ShaderType + { + GL_FRAGMENT_SHADER = GlConsts.GL_FRAGMENT_SHADER, + GL_FRAGMENT_SHADER_ARB = GlConsts.GL_FRAGMENT_SHADER_ARB, + GL_VERTEX_SHADER = GlConsts.GL_VERTEX_SHADER, + GL_VERTEX_SHADER_ARB = GlConsts.GL_VERTEX_SHADER_ARB, + GL_GEOMETRY_SHADER = GlConsts.GL_GEOMETRY_SHADER, + GL_TESS_EVALUATION_SHADER = GlConsts.GL_TESS_EVALUATION_SHADER, + GL_TESS_CONTROL_SHADER = GlConsts.GL_TESS_CONTROL_SHADER, + GL_COMPUTE_SHADER = GlConsts.GL_COMPUTE_SHADER, + }; + + public enum ShaderParameterName + { + GL_SHADER_TYPE = GlConsts.GL_SHADER_TYPE, + GL_DELETE_STATUS = GlConsts.GL_DELETE_STATUS, + GL_COMPILE_STATUS = GlConsts.GL_COMPILE_STATUS, + GL_INFO_LOG_LENGTH = GlConsts.GL_INFO_LOG_LENGTH, + GL_SHADER_SOURCE_LENGTH = GlConsts.GL_SHADER_SOURCE_LENGTH, + }; + + public enum TransformFeedbackPName + { + GL_TRANSFORM_FEEDBACK_BUFFER_START = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER_START, + GL_TRANSFORM_FEEDBACK_BUFFER_SIZE = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER_SIZE, + GL_TRANSFORM_FEEDBACK_BUFFER_BINDING = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER_BINDING, + GL_TRANSFORM_FEEDBACK_PAUSED = GlConsts.GL_TRANSFORM_FEEDBACK_PAUSED, + GL_TRANSFORM_FEEDBACK_ACTIVE = GlConsts.GL_TRANSFORM_FEEDBACK_ACTIVE, + }; + + public enum TransformFeedbackBufferMode + { + GL_INTERLEAVED_ATTRIBS = GlConsts.GL_INTERLEAVED_ATTRIBS, + GL_SEPARATE_ATTRIBS = GlConsts.GL_SEPARATE_ATTRIBS, + }; + + public enum ProgramInterface + { + GL_TRANSFORM_FEEDBACK_BUFFER = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER, + GL_UNIFORM = GlConsts.GL_UNIFORM, + GL_UNIFORM_BLOCK = GlConsts.GL_UNIFORM_BLOCK, + GL_PROGRAM_INPUT = GlConsts.GL_PROGRAM_INPUT, + GL_PROGRAM_OUTPUT = GlConsts.GL_PROGRAM_OUTPUT, + GL_BUFFER_VARIABLE = GlConsts.GL_BUFFER_VARIABLE, + GL_SHADER_STORAGE_BLOCK = GlConsts.GL_SHADER_STORAGE_BLOCK, + GL_VERTEX_SUBROUTINE = GlConsts.GL_VERTEX_SUBROUTINE, + GL_TESS_CONTROL_SUBROUTINE = GlConsts.GL_TESS_CONTROL_SUBROUTINE, + GL_TESS_EVALUATION_SUBROUTINE = GlConsts.GL_TESS_EVALUATION_SUBROUTINE, + GL_GEOMETRY_SUBROUTINE = GlConsts.GL_GEOMETRY_SUBROUTINE, + GL_FRAGMENT_SUBROUTINE = GlConsts.GL_FRAGMENT_SUBROUTINE, + GL_COMPUTE_SUBROUTINE = GlConsts.GL_COMPUTE_SUBROUTINE, + GL_VERTEX_SUBROUTINE_UNIFORM = GlConsts.GL_VERTEX_SUBROUTINE_UNIFORM, + GL_TESS_CONTROL_SUBROUTINE_UNIFORM = GlConsts.GL_TESS_CONTROL_SUBROUTINE_UNIFORM, + GL_TESS_EVALUATION_SUBROUTINE_UNIFORM = GlConsts.GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, + GL_GEOMETRY_SUBROUTINE_UNIFORM = GlConsts.GL_GEOMETRY_SUBROUTINE_UNIFORM, + GL_FRAGMENT_SUBROUTINE_UNIFORM = GlConsts.GL_FRAGMENT_SUBROUTINE_UNIFORM, + GL_COMPUTE_SUBROUTINE_UNIFORM = GlConsts.GL_COMPUTE_SUBROUTINE_UNIFORM, + GL_TRANSFORM_FEEDBACK_VARYING = GlConsts.GL_TRANSFORM_FEEDBACK_VARYING, + }; + + public enum ClipControlOrigin + { + GL_LOWER_LEFT = GlConsts.GL_LOWER_LEFT, + GL_UPPER_LEFT = GlConsts.GL_UPPER_LEFT, + }; + + public enum CheckFramebufferStatusTarget + { + GL_READ_FRAMEBUFFER = GlConsts.GL_READ_FRAMEBUFFER, + GL_DRAW_FRAMEBUFFER = GlConsts.GL_DRAW_FRAMEBUFFER, + GL_FRAMEBUFFER = GlConsts.GL_FRAMEBUFFER, + }; + + public enum FramebufferTarget + { + GL_READ_FRAMEBUFFER = GlConsts.GL_READ_FRAMEBUFFER, + GL_DRAW_FRAMEBUFFER = GlConsts.GL_DRAW_FRAMEBUFFER, + GL_FRAMEBUFFER = GlConsts.GL_FRAMEBUFFER, + GL_FRAMEBUFFER_OES = GlConsts.GL_FRAMEBUFFER_OES, + }; + + public enum RenderbufferParameterName + { + GL_RENDERBUFFER_COVERAGE_SAMPLES_NV = GlConsts.GL_RENDERBUFFER_COVERAGE_SAMPLES_NV, + GL_RENDERBUFFER_SAMPLES = GlConsts.GL_RENDERBUFFER_SAMPLES, + GL_RENDERBUFFER_SAMPLES_ANGLE = GlConsts.GL_RENDERBUFFER_SAMPLES_ANGLE, + GL_RENDERBUFFER_SAMPLES_APPLE = GlConsts.GL_RENDERBUFFER_SAMPLES_APPLE, + GL_RENDERBUFFER_SAMPLES_EXT = GlConsts.GL_RENDERBUFFER_SAMPLES_EXT, + GL_RENDERBUFFER_SAMPLES_NV = GlConsts.GL_RENDERBUFFER_SAMPLES_NV, + GL_RENDERBUFFER_WIDTH = GlConsts.GL_RENDERBUFFER_WIDTH, + GL_RENDERBUFFER_WIDTH_EXT = GlConsts.GL_RENDERBUFFER_WIDTH_EXT, + GL_RENDERBUFFER_WIDTH_OES = GlConsts.GL_RENDERBUFFER_WIDTH_OES, + GL_RENDERBUFFER_HEIGHT = GlConsts.GL_RENDERBUFFER_HEIGHT, + GL_RENDERBUFFER_HEIGHT_EXT = GlConsts.GL_RENDERBUFFER_HEIGHT_EXT, + GL_RENDERBUFFER_HEIGHT_OES = GlConsts.GL_RENDERBUFFER_HEIGHT_OES, + GL_RENDERBUFFER_INTERNAL_FORMAT = GlConsts.GL_RENDERBUFFER_INTERNAL_FORMAT, + GL_RENDERBUFFER_INTERNAL_FORMAT_EXT = GlConsts.GL_RENDERBUFFER_INTERNAL_FORMAT_EXT, + GL_RENDERBUFFER_INTERNAL_FORMAT_OES = GlConsts.GL_RENDERBUFFER_INTERNAL_FORMAT_OES, + GL_RENDERBUFFER_RED_SIZE = GlConsts.GL_RENDERBUFFER_RED_SIZE, + GL_RENDERBUFFER_RED_SIZE_EXT = GlConsts.GL_RENDERBUFFER_RED_SIZE_EXT, + GL_RENDERBUFFER_RED_SIZE_OES = GlConsts.GL_RENDERBUFFER_RED_SIZE_OES, + GL_RENDERBUFFER_GREEN_SIZE = GlConsts.GL_RENDERBUFFER_GREEN_SIZE, + GL_RENDERBUFFER_GREEN_SIZE_EXT = GlConsts.GL_RENDERBUFFER_GREEN_SIZE_EXT, + GL_RENDERBUFFER_GREEN_SIZE_OES = GlConsts.GL_RENDERBUFFER_GREEN_SIZE_OES, + GL_RENDERBUFFER_BLUE_SIZE = GlConsts.GL_RENDERBUFFER_BLUE_SIZE, + GL_RENDERBUFFER_BLUE_SIZE_EXT = GlConsts.GL_RENDERBUFFER_BLUE_SIZE_EXT, + GL_RENDERBUFFER_BLUE_SIZE_OES = GlConsts.GL_RENDERBUFFER_BLUE_SIZE_OES, + GL_RENDERBUFFER_ALPHA_SIZE = GlConsts.GL_RENDERBUFFER_ALPHA_SIZE, + GL_RENDERBUFFER_ALPHA_SIZE_EXT = GlConsts.GL_RENDERBUFFER_ALPHA_SIZE_EXT, + GL_RENDERBUFFER_ALPHA_SIZE_OES = GlConsts.GL_RENDERBUFFER_ALPHA_SIZE_OES, + GL_RENDERBUFFER_DEPTH_SIZE = GlConsts.GL_RENDERBUFFER_DEPTH_SIZE, + GL_RENDERBUFFER_DEPTH_SIZE_EXT = GlConsts.GL_RENDERBUFFER_DEPTH_SIZE_EXT, + GL_RENDERBUFFER_DEPTH_SIZE_OES = GlConsts.GL_RENDERBUFFER_DEPTH_SIZE_OES, + GL_RENDERBUFFER_STENCIL_SIZE = GlConsts.GL_RENDERBUFFER_STENCIL_SIZE, + GL_RENDERBUFFER_STENCIL_SIZE_EXT = GlConsts.GL_RENDERBUFFER_STENCIL_SIZE_EXT, + GL_RENDERBUFFER_STENCIL_SIZE_OES = GlConsts.GL_RENDERBUFFER_STENCIL_SIZE_OES, + GL_RENDERBUFFER_COLOR_SAMPLES_NV = GlConsts.GL_RENDERBUFFER_COLOR_SAMPLES_NV, + GL_RENDERBUFFER_SAMPLES_IMG = GlConsts.GL_RENDERBUFFER_SAMPLES_IMG, + GL_RENDERBUFFER_STORAGE_SAMPLES_AMD = GlConsts.GL_RENDERBUFFER_STORAGE_SAMPLES_AMD, + }; + + public enum FramebufferAttachment + { + GL_COLOR_ATTACHMENT0 = GlConsts.GL_COLOR_ATTACHMENT0, + GL_COLOR_ATTACHMENT1 = GlConsts.GL_COLOR_ATTACHMENT1, + GL_COLOR_ATTACHMENT2 = GlConsts.GL_COLOR_ATTACHMENT2, + GL_COLOR_ATTACHMENT3 = GlConsts.GL_COLOR_ATTACHMENT3, + GL_COLOR_ATTACHMENT4 = GlConsts.GL_COLOR_ATTACHMENT4, + GL_COLOR_ATTACHMENT5 = GlConsts.GL_COLOR_ATTACHMENT5, + GL_COLOR_ATTACHMENT6 = GlConsts.GL_COLOR_ATTACHMENT6, + GL_COLOR_ATTACHMENT7 = GlConsts.GL_COLOR_ATTACHMENT7, + GL_COLOR_ATTACHMENT8 = GlConsts.GL_COLOR_ATTACHMENT8, + GL_COLOR_ATTACHMENT9 = GlConsts.GL_COLOR_ATTACHMENT9, + GL_COLOR_ATTACHMENT10 = GlConsts.GL_COLOR_ATTACHMENT10, + GL_COLOR_ATTACHMENT11 = GlConsts.GL_COLOR_ATTACHMENT11, + GL_COLOR_ATTACHMENT12 = GlConsts.GL_COLOR_ATTACHMENT12, + GL_COLOR_ATTACHMENT13 = GlConsts.GL_COLOR_ATTACHMENT13, + GL_COLOR_ATTACHMENT14 = GlConsts.GL_COLOR_ATTACHMENT14, + GL_COLOR_ATTACHMENT15 = GlConsts.GL_COLOR_ATTACHMENT15, + GL_COLOR_ATTACHMENT16 = GlConsts.GL_COLOR_ATTACHMENT16, + GL_COLOR_ATTACHMENT17 = GlConsts.GL_COLOR_ATTACHMENT17, + GL_COLOR_ATTACHMENT18 = GlConsts.GL_COLOR_ATTACHMENT18, + GL_COLOR_ATTACHMENT19 = GlConsts.GL_COLOR_ATTACHMENT19, + GL_COLOR_ATTACHMENT20 = GlConsts.GL_COLOR_ATTACHMENT20, + GL_COLOR_ATTACHMENT21 = GlConsts.GL_COLOR_ATTACHMENT21, + GL_COLOR_ATTACHMENT22 = GlConsts.GL_COLOR_ATTACHMENT22, + GL_COLOR_ATTACHMENT23 = GlConsts.GL_COLOR_ATTACHMENT23, + GL_COLOR_ATTACHMENT24 = GlConsts.GL_COLOR_ATTACHMENT24, + GL_COLOR_ATTACHMENT25 = GlConsts.GL_COLOR_ATTACHMENT25, + GL_COLOR_ATTACHMENT26 = GlConsts.GL_COLOR_ATTACHMENT26, + GL_COLOR_ATTACHMENT27 = GlConsts.GL_COLOR_ATTACHMENT27, + GL_COLOR_ATTACHMENT28 = GlConsts.GL_COLOR_ATTACHMENT28, + GL_COLOR_ATTACHMENT29 = GlConsts.GL_COLOR_ATTACHMENT29, + GL_COLOR_ATTACHMENT30 = GlConsts.GL_COLOR_ATTACHMENT30, + GL_COLOR_ATTACHMENT31 = GlConsts.GL_COLOR_ATTACHMENT31, + GL_DEPTH_ATTACHMENT = GlConsts.GL_DEPTH_ATTACHMENT, + GL_STENCIL_ATTACHMENT = GlConsts.GL_STENCIL_ATTACHMENT, + }; + + public enum DrawBufferModeATI + { + GL_COLOR_ATTACHMENT0_NV = GlConsts.GL_COLOR_ATTACHMENT0_NV, + GL_COLOR_ATTACHMENT1_NV = GlConsts.GL_COLOR_ATTACHMENT1_NV, + GL_COLOR_ATTACHMENT2_NV = GlConsts.GL_COLOR_ATTACHMENT2_NV, + GL_COLOR_ATTACHMENT3_NV = GlConsts.GL_COLOR_ATTACHMENT3_NV, + GL_COLOR_ATTACHMENT4_NV = GlConsts.GL_COLOR_ATTACHMENT4_NV, + GL_COLOR_ATTACHMENT5_NV = GlConsts.GL_COLOR_ATTACHMENT5_NV, + GL_COLOR_ATTACHMENT6_NV = GlConsts.GL_COLOR_ATTACHMENT6_NV, + GL_COLOR_ATTACHMENT7_NV = GlConsts.GL_COLOR_ATTACHMENT7_NV, + GL_COLOR_ATTACHMENT8_NV = GlConsts.GL_COLOR_ATTACHMENT8_NV, + GL_COLOR_ATTACHMENT9_NV = GlConsts.GL_COLOR_ATTACHMENT9_NV, + GL_COLOR_ATTACHMENT10_NV = GlConsts.GL_COLOR_ATTACHMENT10_NV, + GL_COLOR_ATTACHMENT11_NV = GlConsts.GL_COLOR_ATTACHMENT11_NV, + GL_COLOR_ATTACHMENT12_NV = GlConsts.GL_COLOR_ATTACHMENT12_NV, + GL_COLOR_ATTACHMENT13_NV = GlConsts.GL_COLOR_ATTACHMENT13_NV, + GL_COLOR_ATTACHMENT14_NV = GlConsts.GL_COLOR_ATTACHMENT14_NV, + GL_COLOR_ATTACHMENT15_NV = GlConsts.GL_COLOR_ATTACHMENT15_NV, + }; + + public enum RenderbufferTarget + { + GL_RENDERBUFFER = GlConsts.GL_RENDERBUFFER, + GL_RENDERBUFFER_OES = GlConsts.GL_RENDERBUFFER_OES, + }; + + public enum ProgramStagePName + { + GL_ACTIVE_SUBROUTINES = GlConsts.GL_ACTIVE_SUBROUTINES, + GL_ACTIVE_SUBROUTINE_UNIFORMS = GlConsts.GL_ACTIVE_SUBROUTINE_UNIFORMS, + GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS = GlConsts.GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS, + GL_ACTIVE_SUBROUTINE_MAX_LENGTH = GlConsts.GL_ACTIVE_SUBROUTINE_MAX_LENGTH, + GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH = GlConsts.GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH, + }; + + public enum PrecisionType + { + GL_LOW_FLOAT = GlConsts.GL_LOW_FLOAT, + GL_MEDIUM_FLOAT = GlConsts.GL_MEDIUM_FLOAT, + GL_HIGH_FLOAT = GlConsts.GL_HIGH_FLOAT, + GL_LOW_INT = GlConsts.GL_LOW_INT, + GL_MEDIUM_INT = GlConsts.GL_MEDIUM_INT, + GL_HIGH_INT = GlConsts.GL_HIGH_INT, + }; + + public enum ConditionalRenderMode + { + GL_QUERY_WAIT = GlConsts.GL_QUERY_WAIT, + GL_QUERY_NO_WAIT = GlConsts.GL_QUERY_NO_WAIT, + GL_QUERY_BY_REGION_WAIT = GlConsts.GL_QUERY_BY_REGION_WAIT, + GL_QUERY_BY_REGION_NO_WAIT = GlConsts.GL_QUERY_BY_REGION_NO_WAIT, + GL_QUERY_WAIT_INVERTED = GlConsts.GL_QUERY_WAIT_INVERTED, + GL_QUERY_NO_WAIT_INVERTED = GlConsts.GL_QUERY_NO_WAIT_INVERTED, + GL_QUERY_BY_REGION_WAIT_INVERTED = GlConsts.GL_QUERY_BY_REGION_WAIT_INVERTED, + GL_QUERY_BY_REGION_NO_WAIT_INVERTED = GlConsts.GL_QUERY_BY_REGION_NO_WAIT_INVERTED, + }; + + public enum BindTransformFeedbackTarget + { + GL_TRANSFORM_FEEDBACK = GlConsts.GL_TRANSFORM_FEEDBACK, + }; + + public enum QueryCounterTarget + { + GL_TIMESTAMP = GlConsts.GL_TIMESTAMP, + }; + + public enum ProgramResourceProperty + { + GL_NUM_COMPATIBLE_SUBROUTINES = GlConsts.GL_NUM_COMPATIBLE_SUBROUTINES, + GL_COMPATIBLE_SUBROUTINES = GlConsts.GL_COMPATIBLE_SUBROUTINES, + GL_UNIFORM = GlConsts.GL_UNIFORM, + GL_IS_PER_PATCH = GlConsts.GL_IS_PER_PATCH, + GL_NAME_LENGTH = GlConsts.GL_NAME_LENGTH, + GL_TYPE = GlConsts.GL_TYPE, + GL_ARRAY_SIZE = GlConsts.GL_ARRAY_SIZE, + GL_OFFSET = GlConsts.GL_OFFSET, + GL_BLOCK_INDEX = GlConsts.GL_BLOCK_INDEX, + GL_ARRAY_STRIDE = GlConsts.GL_ARRAY_STRIDE, + GL_MATRIX_STRIDE = GlConsts.GL_MATRIX_STRIDE, + GL_IS_ROW_MAJOR = GlConsts.GL_IS_ROW_MAJOR, + GL_ATOMIC_COUNTER_BUFFER_INDEX = GlConsts.GL_ATOMIC_COUNTER_BUFFER_INDEX, + GL_BUFFER_BINDING = GlConsts.GL_BUFFER_BINDING, + GL_BUFFER_DATA_SIZE = GlConsts.GL_BUFFER_DATA_SIZE, + GL_NUM_ACTIVE_VARIABLES = GlConsts.GL_NUM_ACTIVE_VARIABLES, + GL_ACTIVE_VARIABLES = GlConsts.GL_ACTIVE_VARIABLES, + GL_REFERENCED_BY_VERTEX_SHADER = GlConsts.GL_REFERENCED_BY_VERTEX_SHADER, + GL_REFERENCED_BY_TESS_CONTROL_SHADER = GlConsts.GL_REFERENCED_BY_TESS_CONTROL_SHADER, + GL_REFERENCED_BY_TESS_EVALUATION_SHADER = GlConsts.GL_REFERENCED_BY_TESS_EVALUATION_SHADER, + GL_REFERENCED_BY_GEOMETRY_SHADER = GlConsts.GL_REFERENCED_BY_GEOMETRY_SHADER, + GL_REFERENCED_BY_FRAGMENT_SHADER = GlConsts.GL_REFERENCED_BY_FRAGMENT_SHADER, + GL_REFERENCED_BY_COMPUTE_SHADER = GlConsts.GL_REFERENCED_BY_COMPUTE_SHADER, + GL_TOP_LEVEL_ARRAY_SIZE = GlConsts.GL_TOP_LEVEL_ARRAY_SIZE, + GL_TOP_LEVEL_ARRAY_STRIDE = GlConsts.GL_TOP_LEVEL_ARRAY_STRIDE, + GL_LOCATION = GlConsts.GL_LOCATION, + GL_LOCATION_INDEX = GlConsts.GL_LOCATION_INDEX, + GL_LOCATION_COMPONENT = GlConsts.GL_LOCATION_COMPONENT, + GL_TRANSFORM_FEEDBACK_BUFFER_INDEX = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER_INDEX, + GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE = GlConsts.GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE, + }; + + public enum VertexProvokingMode + { + GL_FIRST_VERTEX_CONVENTION = GlConsts.GL_FIRST_VERTEX_CONVENTION, + GL_LAST_VERTEX_CONVENTION = GlConsts.GL_LAST_VERTEX_CONVENTION, + }; + + public enum GetMultisamplePNameNV + { + GL_SAMPLE_POSITION = GlConsts.GL_SAMPLE_POSITION, + GL_SAMPLE_LOCATION_ARB = GlConsts.GL_SAMPLE_LOCATION_ARB, + GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB = GlConsts.GL_PROGRAMMABLE_SAMPLE_LOCATION_ARB, + }; + + public enum PatchParameterName + { + GL_PATCH_VERTICES = GlConsts.GL_PATCH_VERTICES, + GL_PATCH_DEFAULT_INNER_LEVEL = GlConsts.GL_PATCH_DEFAULT_INNER_LEVEL, + GL_PATCH_DEFAULT_OUTER_LEVEL = GlConsts.GL_PATCH_DEFAULT_OUTER_LEVEL, + }; + + public enum PathStringFormat + { + GL_PATH_FORMAT_SVG_NV = GlConsts.GL_PATH_FORMAT_SVG_NV, + GL_PATH_FORMAT_PS_NV = GlConsts.GL_PATH_FORMAT_PS_NV, + }; + + public enum PathFontTarget + { + GL_STANDARD_FONT_NAME_NV = GlConsts.GL_STANDARD_FONT_NAME_NV, + GL_SYSTEM_FONT_NAME_NV = GlConsts.GL_SYSTEM_FONT_NAME_NV, + GL_FILE_NAME_NV = GlConsts.GL_FILE_NAME_NV, + }; + + public enum PathParameter + { + GL_PATH_STROKE_WIDTH_NV = GlConsts.GL_PATH_STROKE_WIDTH_NV, + GL_PATH_END_CAPS_NV = GlConsts.GL_PATH_END_CAPS_NV, + GL_PATH_INITIAL_END_CAP_NV = GlConsts.GL_PATH_INITIAL_END_CAP_NV, + GL_PATH_TERMINAL_END_CAP_NV = GlConsts.GL_PATH_TERMINAL_END_CAP_NV, + GL_PATH_JOIN_STYLE_NV = GlConsts.GL_PATH_JOIN_STYLE_NV, + GL_PATH_MITER_LIMIT_NV = GlConsts.GL_PATH_MITER_LIMIT_NV, + GL_PATH_DASH_CAPS_NV = GlConsts.GL_PATH_DASH_CAPS_NV, + GL_PATH_INITIAL_DASH_CAP_NV = GlConsts.GL_PATH_INITIAL_DASH_CAP_NV, + GL_PATH_TERMINAL_DASH_CAP_NV = GlConsts.GL_PATH_TERMINAL_DASH_CAP_NV, + GL_PATH_DASH_OFFSET_NV = GlConsts.GL_PATH_DASH_OFFSET_NV, + GL_PATH_CLIENT_LENGTH_NV = GlConsts.GL_PATH_CLIENT_LENGTH_NV, + GL_PATH_FILL_MODE_NV = GlConsts.GL_PATH_FILL_MODE_NV, + GL_PATH_FILL_MASK_NV = GlConsts.GL_PATH_FILL_MASK_NV, + GL_PATH_FILL_COVER_MODE_NV = GlConsts.GL_PATH_FILL_COVER_MODE_NV, + GL_PATH_STROKE_COVER_MODE_NV = GlConsts.GL_PATH_STROKE_COVER_MODE_NV, + GL_PATH_STROKE_MASK_NV = GlConsts.GL_PATH_STROKE_MASK_NV, + GL_PATH_OBJECT_BOUNDING_BOX_NV = GlConsts.GL_PATH_OBJECT_BOUNDING_BOX_NV, + GL_PATH_COMMAND_COUNT_NV = GlConsts.GL_PATH_COMMAND_COUNT_NV, + GL_PATH_COORD_COUNT_NV = GlConsts.GL_PATH_COORD_COUNT_NV, + GL_PATH_DASH_ARRAY_COUNT_NV = GlConsts.GL_PATH_DASH_ARRAY_COUNT_NV, + GL_PATH_COMPUTED_LENGTH_NV = GlConsts.GL_PATH_COMPUTED_LENGTH_NV, + GL_PATH_FILL_BOUNDING_BOX_NV = GlConsts.GL_PATH_FILL_BOUNDING_BOX_NV, + GL_PATH_STROKE_BOUNDING_BOX_NV = GlConsts.GL_PATH_STROKE_BOUNDING_BOX_NV, + GL_PATH_DASH_OFFSET_RESET_NV = GlConsts.GL_PATH_DASH_OFFSET_RESET_NV, + }; + + public enum PathCoverMode + { + GL_PATH_FILL_COVER_MODE_NV = GlConsts.GL_PATH_FILL_COVER_MODE_NV, + GL_CONVEX_HULL_NV = GlConsts.GL_CONVEX_HULL_NV, + GL_BOUNDING_BOX_NV = GlConsts.GL_BOUNDING_BOX_NV, + GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV = GlConsts.GL_BOUNDING_BOX_OF_BOUNDING_BOXES_NV, + }; + + public enum PathElementType + { + GL_UTF8_NV = GlConsts.GL_UTF8_NV, + GL_UTF16_NV = GlConsts.GL_UTF16_NV, + }; + + public enum PathHandleMissingGlyphs + { + GL_SKIP_MISSING_GLYPH_NV = GlConsts.GL_SKIP_MISSING_GLYPH_NV, + GL_USE_MISSING_GLYPH_NV = GlConsts.GL_USE_MISSING_GLYPH_NV, + }; + + public enum PathListMode + { + GL_ACCUM_ADJACENT_PAIRS_NV = GlConsts.GL_ACCUM_ADJACENT_PAIRS_NV, + GL_ADJACENT_PAIRS_NV = GlConsts.GL_ADJACENT_PAIRS_NV, + GL_FIRST_TO_REST_NV = GlConsts.GL_FIRST_TO_REST_NV, + }; + + public enum AtomicCounterBufferPName + { + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER = GlConsts.GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER, + GL_ATOMIC_COUNTER_BUFFER_BINDING = GlConsts.GL_ATOMIC_COUNTER_BUFFER_BINDING, + GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE = GlConsts.GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE, + GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS = GlConsts.GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS, + GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES = GlConsts.GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER = GlConsts.GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER = GlConsts.GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER = GlConsts.GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER = GlConsts.GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER, + GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER = GlConsts.GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER, + }; + + public enum SyncParameterName + { + GL_OBJECT_TYPE = GlConsts.GL_OBJECT_TYPE, + GL_SYNC_CONDITION = GlConsts.GL_SYNC_CONDITION, + GL_SYNC_STATUS = GlConsts.GL_SYNC_STATUS, + GL_SYNC_FLAGS = GlConsts.GL_SYNC_FLAGS, + }; + + public enum SyncCondition + { + GL_SYNC_GPU_COMMANDS_COMPLETE = GlConsts.GL_SYNC_GPU_COMMANDS_COMPLETE, + }; + + public enum SyncStatus + { + GL_ALREADY_SIGNALED = GlConsts.GL_ALREADY_SIGNALED, + GL_TIMEOUT_EXPIRED = GlConsts.GL_TIMEOUT_EXPIRED, + GL_CONDITION_SATISFIED = GlConsts.GL_CONDITION_SATISFIED, + GL_WAIT_FAILED = GlConsts.GL_WAIT_FAILED, + }; + + public enum ProgramInterfacePName + { + GL_ACTIVE_RESOURCES = GlConsts.GL_ACTIVE_RESOURCES, + GL_MAX_NAME_LENGTH = GlConsts.GL_MAX_NAME_LENGTH, + GL_MAX_NUM_ACTIVE_VARIABLES = GlConsts.GL_MAX_NUM_ACTIVE_VARIABLES, + GL_MAX_NUM_COMPATIBLE_SUBROUTINES = GlConsts.GL_MAX_NUM_COMPATIBLE_SUBROUTINES, + }; + + public enum FramebufferParameterName + { + GL_FRAMEBUFFER_DEFAULT_WIDTH = GlConsts.GL_FRAMEBUFFER_DEFAULT_WIDTH, + GL_FRAMEBUFFER_DEFAULT_HEIGHT = GlConsts.GL_FRAMEBUFFER_DEFAULT_HEIGHT, + GL_FRAMEBUFFER_DEFAULT_LAYERS = GlConsts.GL_FRAMEBUFFER_DEFAULT_LAYERS, + GL_FRAMEBUFFER_DEFAULT_SAMPLES = GlConsts.GL_FRAMEBUFFER_DEFAULT_SAMPLES, + GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS = GlConsts.GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONS, + }; + + public enum ClipControlDepth + { + GL_NEGATIVE_ONE_TO_ONE = GlConsts.GL_NEGATIVE_ONE_TO_ONE, + GL_ZERO_TO_ONE = GlConsts.GL_ZERO_TO_ONE, + }; + + public enum TextureLayout + { + GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT = GlConsts.GL_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_EXT, + GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT = GlConsts.GL_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_EXT, + GL_LAYOUT_GENERAL_EXT = GlConsts.GL_LAYOUT_GENERAL_EXT, + GL_LAYOUT_COLOR_ATTACHMENT_EXT = GlConsts.GL_LAYOUT_COLOR_ATTACHMENT_EXT, + GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT = GlConsts.GL_LAYOUT_DEPTH_STENCIL_ATTACHMENT_EXT, + GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT = GlConsts.GL_LAYOUT_DEPTH_STENCIL_READ_ONLY_EXT, + GL_LAYOUT_SHADER_READ_ONLY_EXT = GlConsts.GL_LAYOUT_SHADER_READ_ONLY_EXT, + GL_LAYOUT_TRANSFER_SRC_EXT = GlConsts.GL_LAYOUT_TRANSFER_SRC_EXT, + GL_LAYOUT_TRANSFER_DST_EXT = GlConsts.GL_LAYOUT_TRANSFER_DST_EXT, + }; + + public enum MemoryObjectParameterName + { + GL_DEDICATED_MEMORY_OBJECT_EXT = GlConsts.GL_DEDICATED_MEMORY_OBJECT_EXT, + GL_PROTECTED_MEMORY_OBJECT_EXT = GlConsts.GL_PROTECTED_MEMORY_OBJECT_EXT, + }; + + public enum ExternalHandleType + { + GL_HANDLE_TYPE_OPAQUE_FD_EXT = GlConsts.GL_HANDLE_TYPE_OPAQUE_FD_EXT, + GL_HANDLE_TYPE_OPAQUE_WIN32_EXT = GlConsts.GL_HANDLE_TYPE_OPAQUE_WIN32_EXT, + GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT = GlConsts.GL_HANDLE_TYPE_OPAQUE_WIN32_KMT_EXT, + GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT = GlConsts.GL_HANDLE_TYPE_D3D12_TILEPOOL_EXT, + GL_HANDLE_TYPE_D3D12_RESOURCE_EXT = GlConsts.GL_HANDLE_TYPE_D3D12_RESOURCE_EXT, + GL_HANDLE_TYPE_D3D11_IMAGE_EXT = GlConsts.GL_HANDLE_TYPE_D3D11_IMAGE_EXT, + GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT = GlConsts.GL_HANDLE_TYPE_D3D11_IMAGE_KMT_EXT, + GL_HANDLE_TYPE_D3D12_FENCE_EXT = GlConsts.GL_HANDLE_TYPE_D3D12_FENCE_EXT, + }; + + public enum SemaphoreParameterName + { + GL_D3D12_FENCE_VALUE_EXT = GlConsts.GL_D3D12_FENCE_VALUE_EXT, + }; + + public enum FramebufferFetchNoncoherent + { + GL_FRAMEBUFFER_FETCH_NONCOHERENT_QCOM = GlConsts.GL_FRAMEBUFFER_FETCH_NONCOHERENT_QCOM, + }; + + public enum ShadingRateQCOM + { + GL_SHADING_RATE_1X1_PIXELS_QCOM = GlConsts.GL_SHADING_RATE_1X1_PIXELS_QCOM, + GL_SHADING_RATE_1X2_PIXELS_QCOM = GlConsts.GL_SHADING_RATE_1X2_PIXELS_QCOM, + GL_SHADING_RATE_2X1_PIXELS_QCOM = GlConsts.GL_SHADING_RATE_2X1_PIXELS_QCOM, + GL_SHADING_RATE_2X2_PIXELS_QCOM = GlConsts.GL_SHADING_RATE_2X2_PIXELS_QCOM, + GL_SHADING_RATE_1X4_PIXELS_QCOM = GlConsts.GL_SHADING_RATE_1X4_PIXELS_QCOM, + GL_SHADING_RATE_4X1_PIXELS_QCOM = GlConsts.GL_SHADING_RATE_4X1_PIXELS_QCOM, + GL_SHADING_RATE_4X2_PIXELS_QCOM = GlConsts.GL_SHADING_RATE_4X2_PIXELS_QCOM, + GL_SHADING_RATE_2X4_PIXELS_QCOM = GlConsts.GL_SHADING_RATE_2X4_PIXELS_QCOM, + GL_SHADING_RATE_4X4_PIXELS_QCOM = GlConsts.GL_SHADING_RATE_4X4_PIXELS_QCOM, + }; + + public enum HintTargetPGI + { + GL_VERTEX_DATA_HINT_PGI = GlConsts.GL_VERTEX_DATA_HINT_PGI, + GL_VERTEX_CONSISTENT_HINT_PGI = GlConsts.GL_VERTEX_CONSISTENT_HINT_PGI, + GL_MATERIAL_SIDE_HINT_PGI = GlConsts.GL_MATERIAL_SIDE_HINT_PGI, + GL_MAX_VERTEX_HINT_PGI = GlConsts.GL_MAX_VERTEX_HINT_PGI, + }; + +} diff --git a/src/Avalonia.OpenGL/GlInterface.cs b/src/Avalonia.OpenGL/GlInterface.cs index 23188e7dbf4..9ef16cd32d0 100644 --- a/src/Avalonia.OpenGL/GlInterface.cs +++ b/src/Avalonia.OpenGL/GlInterface.cs @@ -8,8 +8,8 @@ namespace Avalonia.OpenGL { public delegate IntPtr GlGetProcAddressDelegate(string procName); - - public unsafe class GlInterface : GlBasicInfoInterface + + public unsafe partial class GlInterface : GlBasicInfoInterface { public string Version { get; } public string Vendor { get; } @@ -38,9 +38,9 @@ public static GlContextInfo Create(GlVersion version, Func getPr private GlInterface(GlContextInfo info, Func getProcAddress) : base(getProcAddress, info) { ContextInfo = info; - Version = GetString(GlConsts.GL_VERSION); - Renderer = GetString(GlConsts.GL_RENDERER); - Vendor = GetString(GlConsts.GL_VENDOR); + Version = GetString(StringName.GL_VERSION); + Renderer = GetString(StringName.GL_RENDERER); + Vendor = GetString(StringName.GL_VENDOR); } public GlInterface(GlVersion version, Func getProcAddress) : this( @@ -50,298 +50,86 @@ public GlInterface(GlVersion version, Func getProcAddress) : thi public GlInterface(GlVersion version, Func n) : this(version, ConvertNative(n)) { - + } public static GlInterface FromNativeUtf8GetProcAddress(GlVersion version, Func getProcAddress) => new GlInterface(version, getProcAddress); - - public T GetProcAddress(string proc) => Marshal.GetDelegateForFunctionPointer(GetProcAddress(proc)); - - // ReSharper disable UnassignedGetOnlyAutoProperty - public delegate int GlGetError(); - [GlEntryPoint("glGetError")] - public GlGetError GetError { get; } - - public delegate void GlClearStencil(int s); - [GlEntryPoint("glClearStencil")] - public GlClearStencil ClearStencil { get; } - - public delegate void GlClearColor(float r, float g, float b, float a); - [GlEntryPoint("glClearColor")] - public GlClearColor ClearColor { get; } - - public delegate void GlClear(int bits); - [GlEntryPoint("glClear")] - public GlClear Clear { get; } - - public delegate void GlViewport(int x, int y, int width, int height); - [GlEntryPoint("glViewport")] - public GlViewport Viewport { get; } - - [GlEntryPoint("glFlush")] - public Action Flush { get; } - - public delegate IntPtr GlGetString(int v); - [GlEntryPoint("glGetString")] - public GlGetString GetStringNative { get; } - - public string GetString(int v) - { - var ptr = GetStringNative(v); - if (ptr != IntPtr.Zero) - return Marshal.PtrToStringAnsi(ptr); - return null; - } - - public delegate void GlGetIntegerv(int name, out int rv); - [GlEntryPoint("glGetIntegerv")] - public GlGetIntegerv GetIntegerv { get; } - - public delegate void GlGenFramebuffers(int count, int[] res); - [GlEntryPoint("glGenFramebuffers")] - public GlGenFramebuffers GenFramebuffers { get; } - - public delegate void GlDeleteFramebuffers(int count, int[] framebuffers); - [GlEntryPoint("glDeleteFramebuffers")] - public GlDeleteFramebuffers DeleteFramebuffers { get; } - - public delegate void GlBindFramebuffer(int target, int fb); - [GlEntryPoint("glBindFramebuffer")] - public GlBindFramebuffer BindFramebuffer { get; } - - public delegate int GlCheckFramebufferStatus(int target); - [GlEntryPoint("glCheckFramebufferStatus")] - public GlCheckFramebufferStatus CheckFramebufferStatus { get; } - - public delegate void GlGenRenderbuffers(int count, int[] res); - [GlEntryPoint("glGenRenderbuffers")] - public GlGenRenderbuffers GenRenderbuffers { get; } - - public delegate void GlDeleteRenderbuffers(int count, int[] renderbuffers); - [GlEntryPoint("glDeleteRenderbuffers")] - public GlDeleteTextures DeleteRenderbuffers { get; } - - public delegate void GlBindRenderbuffer(int target, int fb); - [GlEntryPoint("glBindRenderbuffer")] - public GlBindRenderbuffer BindRenderbuffer { get; } - - public delegate void GlRenderbufferStorage(int target, int internalFormat, int width, int height); - [GlEntryPoint("glRenderbufferStorage")] - public GlRenderbufferStorage RenderbufferStorage { get; } - - public delegate void GlFramebufferRenderbuffer(int target, int attachment, - int renderbufferTarget, int renderbuffer); - [GlEntryPoint("glFramebufferRenderbuffer")] - public GlFramebufferRenderbuffer FramebufferRenderbuffer { get; } - - public delegate void GlGenTextures(int count, int[] res); - [GlEntryPoint("glGenTextures")] - public GlGenTextures GenTextures { get; } - - public delegate void GlBindTexture(int target, int fb); - [GlEntryPoint("glBindTexture")] - public GlBindTexture BindTexture { get; } - - public delegate void GlDeleteTextures(int count, int[] textures); - [GlEntryPoint("glDeleteTextures")] - public GlDeleteTextures DeleteTextures { get; } - - - public delegate void GlTexImage2D(int target, int level, int internalFormat, int width, int height, int border, - int format, int type, IntPtr data); - [GlEntryPoint("glTexImage2D")] - public GlTexImage2D TexImage2D { get; } - - public delegate void GlTexParameteri(int target, int name, int value); - [GlEntryPoint("glTexParameteri")] - public GlTexParameteri TexParameteri { get; } - - public delegate void GlFramebufferTexture2D(int target, int attachment, - int texTarget, int texture, int level); - [GlEntryPoint("glFramebufferTexture2D")] - public GlFramebufferTexture2D FramebufferTexture2D { get; } - - public delegate int GlCreateShader(int shaderType); - [GlEntryPoint("glCreateShader")] - public GlCreateShader CreateShader { get; } - public delegate void GlShaderSource(int shader, int count, IntPtr strings, IntPtr lengths); - [GlEntryPoint("glShaderSource")] - public GlShaderSource ShaderSource { get; } + public T GetProcAddress(string proc) => Marshal.GetDelegateForFunctionPointer(GetProcAddress(proc)); - public void ShaderSourceString(int shader, string source) + public void ShaderSourceString(uint shader, string source) { using (var b = new Utf8Buffer(source)) { var ptr = b.DangerousGetHandle(); var len = new IntPtr(b.ByteLen); ShaderSource(shader, 1, new IntPtr(&ptr), new IntPtr(&len)); - } + } } - public delegate void GlCompileShader(int shader); - [GlEntryPoint("glCompileShader")] - public GlCompileShader CompileShader { get; } - - public delegate void GlGetShaderiv(int shader, int name, int* parameters); - [GlEntryPoint("glGetShaderiv")] - public GlGetShaderiv GetShaderiv { get; } - - public delegate void GlGetShaderInfoLog(int shader, int maxLength, out int length, void*infoLog); - [GlEntryPoint("glGetShaderInfoLog")] - public GlGetShaderInfoLog GetShaderInfoLog { get; } - - public unsafe string CompileShaderAndGetError(int shader, string source) + public unsafe string CompileShaderAndGetError(uint shader, string source) { ShaderSourceString(shader, source); CompileShader(shader); + int compiled; - GetShaderiv(shader, GL_COMPILE_STATUS, &compiled); + GetShaderiv(shader, ShaderParameterName.GL_COMPILE_STATUS, &compiled); if (compiled != 0) return null; + int logLength; - GetShaderiv(shader, GL_INFO_LOG_LENGTH, &logLength); + GetShaderiv(shader, ShaderParameterName.GL_INFO_LOG_LENGTH, &logLength); if (logLength == 0) logLength = 4096; var logData = new byte[logLength]; int len; fixed (void* ptr = logData) GetShaderInfoLog(shader, logLength, out len, ptr); - return Encoding.UTF8.GetString(logData,0, len); + return Encoding.UTF8.GetString(logData, 0, len); } - - public delegate int GlCreateProgram(); - [GlEntryPoint("glCreateProgram")] - public GlCreateProgram CreateProgram { get; } - - public delegate void GlAttachShader(int program, int shader); - [GlEntryPoint("glAttachShader")] - public GlAttachShader AttachShader { get; } - - public delegate void GlLinkProgram(int program); - [GlEntryPoint("glLinkProgram")] - public GlLinkProgram LinkProgram { get; } - - public delegate void GlGetProgramiv(int program, int name, int* parameters); - [GlEntryPoint("glGetProgramiv")] - public GlGetProgramiv GetProgramiv { get; } - - public delegate void GlGetProgramInfoLog(int program, int maxLength, out int len, void* infoLog); - [GlEntryPoint("glGetProgramInfoLog")] - public GlGetProgramInfoLog GetProgramInfoLog { get; } - public unsafe string LinkProgramAndGetError(int program) + public unsafe string LinkProgramAndGetError(uint program) { LinkProgram(program); - int compiled; - GetProgramiv(program, GL_LINK_STATUS, &compiled); + uint compiled; + GetProgramiv(program, ProgramPropertyARB.GL_LINK_STATUS, &compiled); if (compiled != 0) return null; int logLength; - GetProgramiv(program, GL_INFO_LOG_LENGTH, &logLength); + GetProgramiv(program, ProgramPropertyARB.GL_INFO_LOG_LENGTH, &logLength); var logData = new byte[logLength]; int len; fixed (void* ptr = logData) GetProgramInfoLog(program, logLength, out len, ptr); - return Encoding.UTF8.GetString(logData,0, len); + return Encoding.UTF8.GetString(logData, 0, len); } - public delegate void GlBindAttribLocation(int program, int index, IntPtr name); - [GlEntryPoint("glBindAttribLocation")] - public GlBindAttribLocation BindAttribLocation { get; } - - public void BindAttribLocationString(int program, int index, string name) + public void BindAttribLocationString(uint program, uint index, string name) { using (var b = new Utf8Buffer(name)) - BindAttribLocation(program, index, b.DangerousGetHandle()); + BindAttribLocation(program, index, b.DangerousGetHandle()); } - - public delegate void GlGenBuffers(int len, int[] rv); - [GlEntryPoint("glGenBuffers")] - public GlGenBuffers GenBuffers { get; } - public int GenBuffer() + public uint GenBuffer() { - var rv = new int[1]; + var rv = new uint[1]; GenBuffers(1, rv); return rv[0]; } - - public delegate void GlBindBuffer(int target, int buffer); - [GlEntryPoint("glBindBuffer")] - public GlBindBuffer BindBuffer { get; } - - public delegate void GlBufferData(int target, IntPtr size, IntPtr data, int usage); - [GlEntryPoint("glBufferData")] - public GlBufferData BufferData { get; } - - public delegate int GlGetAttribLocation(int program, IntPtr name); - [GlEntryPoint("glGetAttribLocation")] - public GlGetAttribLocation GetAttribLocation { get; } - public int GetAttribLocationString(int program, string name) + public int GetAttribLocationString(uint program, string name) { using (var b = new Utf8Buffer(name)) - return GetAttribLocation(program, b.DangerousGetHandle()); + return GetAttribLocation(program, b.DangerousGetHandle()); } - public delegate void GlVertexAttribPointer(int index, int size, int type, - int normalized, int stride, IntPtr pointer); - [GlEntryPoint("glVertexAttribPointer")] - public GlVertexAttribPointer VertexAttribPointer { get; } - - public delegate void GlEnableVertexAttribArray(int index); - [GlEntryPoint("glEnableVertexAttribArray")] - public GlEnableVertexAttribArray EnableVertexAttribArray { get; } - - public delegate void GlUseProgram(int program); - [GlEntryPoint("glUseProgram")] - public GlUseProgram UseProgram { get; } - - public delegate void GlDrawArrays(int mode, int first, IntPtr count); - [GlEntryPoint("glDrawArrays")] - public GlDrawArrays DrawArrays { get; } - - public delegate void GlDrawElements(int mode, int count, int type, IntPtr indices); - [GlEntryPoint("glDrawElements")] - public GlDrawElements DrawElements { get; } - - public delegate int GlGetUniformLocation(int program, IntPtr name); - [GlEntryPoint("glGetUniformLocation")] - public GlGetUniformLocation GetUniformLocation { get; } - - public int GetUniformLocationString(int program, string name) + public int GetUniformLocationString(uint program, string name) { using (var b = new Utf8Buffer(name)) - return GetUniformLocation(program, b.DangerousGetHandle()); + return GetUniformLocation(program, b.DangerousGetHandle()); } - - public delegate void GlUniform1f(int location, float falue); - [GlEntryPoint("glUniform1f")] - public GlUniform1f Uniform1f { get; } - - - public delegate void GlUniformMatrix4fv(int location, int count, bool transpose, void* value); - [GlEntryPoint("glUniformMatrix4fv")] - public GlUniformMatrix4fv UniformMatrix4fv { get; } - - public delegate void GlEnable(int what); - [GlEntryPoint("glEnable")] - public GlEnable Enable { get; } - - public delegate void GlDeleteBuffers(int count, int[] buffers); - [GlEntryPoint("glDeleteBuffers")] - public GlDeleteBuffers DeleteBuffers { get; } - - public delegate void GlDeleteProgram(int program); - [GlEntryPoint("glDeleteProgram")] - public GlDeleteProgram DeleteProgram { get; } - public delegate void GlDeleteShader(int shader); - [GlEntryPoint("glDeleteShader")] - public GlDeleteShader DeleteShader { get; } - // ReSharper restore UnassignedGetOnlyAutoProperty } } diff --git a/src/Avalonia.OpenGL/GlInterface.delegates.cs b/src/Avalonia.OpenGL/GlInterface.delegates.cs new file mode 100644 index 00000000000..5e67e4699af --- /dev/null +++ b/src/Avalonia.OpenGL/GlInterface.delegates.cs @@ -0,0 +1,31171 @@ +using System; +using System.Runtime.CompilerServices; + +namespace Avalonia.OpenGL +{ + public delegate void GlDebugProc(uint error, string command, int messageType, IntPtr threadLabel, IntPtr objectLabel, string message); + public delegate IntPtr VulkanProc(); + + public unsafe partial class GlInterface + { + + // --- + + delegate void _glAccum(AccumOp op, float value); + [GlEntryPoint("glAccum")] + _glAccum _Accum { get; } + + // --- + + delegate void _glAccumxOES(int op, float value); + [GlEntryPoint("glAccumxOES")] + _glAccumxOES _AccumxOES { get; } + + // --- + + delegate void _glActiveProgramEXT(uint program); + [GlEntryPoint("glActiveProgramEXT")] + _glActiveProgramEXT _ActiveProgramEXT { get; } + + // --- + + delegate void _glActiveShaderProgram(uint pipeline, uint program); + [GlEntryPoint("glActiveShaderProgram")] + _glActiveShaderProgram _ActiveShaderProgram { get; } + + // --- + + delegate void _glActiveShaderProgramEXT(uint pipeline, uint program); + [GlEntryPoint("glActiveShaderProgramEXT")] + _glActiveShaderProgramEXT _ActiveShaderProgramEXT { get; } + + // --- + + delegate void _glActiveStencilFaceEXT(StencilFaceDirection face); + [GlEntryPoint("glActiveStencilFaceEXT")] + _glActiveStencilFaceEXT _ActiveStencilFaceEXT { get; } + + // --- + + delegate void _glActiveTexture(TextureUnit texture); + [GlEntryPoint("glActiveTexture")] + _glActiveTexture _ActiveTexture { get; } + + // --- + + delegate void _glActiveTextureARB(TextureUnit texture); + [GlEntryPoint("glActiveTextureARB")] + _glActiveTextureARB _ActiveTextureARB { get; } + + // --- + + delegate void _glActiveVaryingNV(uint program, string name); + [GlEntryPoint("glActiveVaryingNV")] + _glActiveVaryingNV _ActiveVaryingNV { get; } + + delegate void _glActiveVaryingNV_ptr(uint program, void* name); + [GlEntryPoint("glActiveVaryingNV")] + _glActiveVaryingNV_ptr _ActiveVaryingNV_ptr { get; } + + delegate void _glActiveVaryingNV_intptr(uint program, IntPtr name); + [GlEntryPoint("glActiveVaryingNV")] + _glActiveVaryingNV_intptr _ActiveVaryingNV_intptr { get; } + + // --- + + delegate void _glAlphaFragmentOp1ATI(FragmentOpATI op, uint dst, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod); + [GlEntryPoint("glAlphaFragmentOp1ATI")] + _glAlphaFragmentOp1ATI _AlphaFragmentOp1ATI { get; } + + // --- + + delegate void _glAlphaFragmentOp2ATI(FragmentOpATI op, uint dst, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod, uint arg2, uint arg2Rep, uint arg2Mod); + [GlEntryPoint("glAlphaFragmentOp2ATI")] + _glAlphaFragmentOp2ATI _AlphaFragmentOp2ATI { get; } + + // --- + + delegate void _glAlphaFragmentOp3ATI(FragmentOpATI op, uint dst, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod, uint arg2, uint arg2Rep, uint arg2Mod, uint arg3, uint arg3Rep, uint arg3Mod); + [GlEntryPoint("glAlphaFragmentOp3ATI")] + _glAlphaFragmentOp3ATI _AlphaFragmentOp3ATI { get; } + + // --- + + delegate void _glAlphaFunc(AlphaFunction func, float @ref); + [GlEntryPoint("glAlphaFunc")] + _glAlphaFunc _AlphaFunc { get; } + + // --- + + delegate void _glAlphaFuncQCOM(int func, float @ref); + [GlEntryPoint("glAlphaFuncQCOM")] + _glAlphaFuncQCOM _AlphaFuncQCOM { get; } + + // --- + + delegate void _glAlphaFuncx(AlphaFunction func, float @ref); + [GlEntryPoint("glAlphaFuncx")] + _glAlphaFuncx _AlphaFuncx { get; } + + // --- + + delegate void _glAlphaFuncxOES(AlphaFunction func, float @ref); + [GlEntryPoint("glAlphaFuncxOES")] + _glAlphaFuncxOES _AlphaFuncxOES { get; } + + // --- + + delegate void _glAlphaToCoverageDitherControlNV(int mode); + [GlEntryPoint("glAlphaToCoverageDitherControlNV")] + _glAlphaToCoverageDitherControlNV _AlphaToCoverageDitherControlNV { get; } + + // --- + + delegate void _glApplyFramebufferAttachmentCMAAINTEL(); + [GlEntryPoint("glApplyFramebufferAttachmentCMAAINTEL")] + _glApplyFramebufferAttachmentCMAAINTEL _ApplyFramebufferAttachmentCMAAINTEL { get; } + + // --- + + delegate void _glApplyTextureEXT(LightTextureModeEXT mode); + [GlEntryPoint("glApplyTextureEXT")] + _glApplyTextureEXT _ApplyTextureEXT { get; } + + // --- + + delegate bool _glAcquireKeyedMutexWin32EXT(uint memory, UInt64 key, uint timeout); + [GlEntryPoint("glAcquireKeyedMutexWin32EXT")] + _glAcquireKeyedMutexWin32EXT _AcquireKeyedMutexWin32EXT { get; } + + // --- + + delegate bool _glAreProgramsResidentNV(int n, uint[] programs, bool[] residences); + [GlEntryPoint("glAreProgramsResidentNV")] + _glAreProgramsResidentNV _AreProgramsResidentNV { get; } + + delegate bool _glAreProgramsResidentNV_ptr(int n, void* programs, void* residences); + [GlEntryPoint("glAreProgramsResidentNV")] + _glAreProgramsResidentNV_ptr _AreProgramsResidentNV_ptr { get; } + + delegate bool _glAreProgramsResidentNV_intptr(int n, IntPtr programs, IntPtr residences); + [GlEntryPoint("glAreProgramsResidentNV")] + _glAreProgramsResidentNV_intptr _AreProgramsResidentNV_intptr { get; } + + // --- + + delegate bool _glAreTexturesResident(int n, uint[] textures, bool[] residences); + [GlEntryPoint("glAreTexturesResident")] + _glAreTexturesResident _AreTexturesResident { get; } + + delegate bool _glAreTexturesResident_ptr(int n, void* textures, void* residences); + [GlEntryPoint("glAreTexturesResident")] + _glAreTexturesResident_ptr _AreTexturesResident_ptr { get; } + + delegate bool _glAreTexturesResident_intptr(int n, IntPtr textures, IntPtr residences); + [GlEntryPoint("glAreTexturesResident")] + _glAreTexturesResident_intptr _AreTexturesResident_intptr { get; } + + // --- + + delegate bool _glAreTexturesResidentEXT(int n, uint[] textures, bool[] residences); + [GlEntryPoint("glAreTexturesResidentEXT")] + _glAreTexturesResidentEXT _AreTexturesResidentEXT { get; } + + delegate bool _glAreTexturesResidentEXT_ptr(int n, void* textures, void* residences); + [GlEntryPoint("glAreTexturesResidentEXT")] + _glAreTexturesResidentEXT_ptr _AreTexturesResidentEXT_ptr { get; } + + delegate bool _glAreTexturesResidentEXT_intptr(int n, IntPtr textures, IntPtr residences); + [GlEntryPoint("glAreTexturesResidentEXT")] + _glAreTexturesResidentEXT_intptr _AreTexturesResidentEXT_intptr { get; } + + // --- + + delegate void _glArrayElement(int i); + [GlEntryPoint("glArrayElement")] + _glArrayElement _ArrayElement { get; } + + // --- + + delegate void _glArrayElementEXT(int i); + [GlEntryPoint("glArrayElementEXT")] + _glArrayElementEXT _ArrayElementEXT { get; } + + // --- + + delegate void _glArrayObjectATI(EnableCap array, int size, ScalarType type, int stride, uint buffer, uint offset); + [GlEntryPoint("glArrayObjectATI")] + _glArrayObjectATI _ArrayObjectATI { get; } + + // --- + + delegate uint _glAsyncCopyBufferSubDataNVX(int waitSemaphoreCount, uint[] waitSemaphoreArray, UInt64[] fenceValueArray, uint readGpu, int writeGpuMask, uint readBuffer, uint writeBuffer, IntPtr readOffset, IntPtr writeOffset, IntPtr size, int signalSemaphoreCount, uint[] signalSemaphoreArray, UInt64[] signalValueArray); + [GlEntryPoint("glAsyncCopyBufferSubDataNVX")] + _glAsyncCopyBufferSubDataNVX _AsyncCopyBufferSubDataNVX { get; } + + delegate uint _glAsyncCopyBufferSubDataNVX_ptr(int waitSemaphoreCount, void* waitSemaphoreArray, void* fenceValueArray, uint readGpu, int writeGpuMask, uint readBuffer, uint writeBuffer, IntPtr readOffset, IntPtr writeOffset, IntPtr size, int signalSemaphoreCount, void* signalSemaphoreArray, void* signalValueArray); + [GlEntryPoint("glAsyncCopyBufferSubDataNVX")] + _glAsyncCopyBufferSubDataNVX_ptr _AsyncCopyBufferSubDataNVX_ptr { get; } + + delegate uint _glAsyncCopyBufferSubDataNVX_intptr(int waitSemaphoreCount, IntPtr waitSemaphoreArray, IntPtr fenceValueArray, uint readGpu, int writeGpuMask, uint readBuffer, uint writeBuffer, IntPtr readOffset, IntPtr writeOffset, IntPtr size, int signalSemaphoreCount, IntPtr signalSemaphoreArray, IntPtr signalValueArray); + [GlEntryPoint("glAsyncCopyBufferSubDataNVX")] + _glAsyncCopyBufferSubDataNVX_intptr _AsyncCopyBufferSubDataNVX_intptr { get; } + + // --- + + delegate uint _glAsyncCopyImageSubDataNVX(int waitSemaphoreCount, uint[] waitSemaphoreArray, UInt64[] waitValueArray, uint srcGpu, int dstGpuMask, uint srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth, int signalSemaphoreCount, uint[] signalSemaphoreArray, UInt64[] signalValueArray); + [GlEntryPoint("glAsyncCopyImageSubDataNVX")] + _glAsyncCopyImageSubDataNVX _AsyncCopyImageSubDataNVX { get; } + + delegate uint _glAsyncCopyImageSubDataNVX_ptr(int waitSemaphoreCount, void* waitSemaphoreArray, void* waitValueArray, uint srcGpu, int dstGpuMask, uint srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth, int signalSemaphoreCount, void* signalSemaphoreArray, void* signalValueArray); + [GlEntryPoint("glAsyncCopyImageSubDataNVX")] + _glAsyncCopyImageSubDataNVX_ptr _AsyncCopyImageSubDataNVX_ptr { get; } + + delegate uint _glAsyncCopyImageSubDataNVX_intptr(int waitSemaphoreCount, IntPtr waitSemaphoreArray, IntPtr waitValueArray, uint srcGpu, int dstGpuMask, uint srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth, int signalSemaphoreCount, IntPtr signalSemaphoreArray, IntPtr signalValueArray); + [GlEntryPoint("glAsyncCopyImageSubDataNVX")] + _glAsyncCopyImageSubDataNVX_intptr _AsyncCopyImageSubDataNVX_intptr { get; } + + // --- + + delegate void _glAsyncMarkerSGIX(uint marker); + [GlEntryPoint("glAsyncMarkerSGIX")] + _glAsyncMarkerSGIX _AsyncMarkerSGIX { get; } + + // --- + + delegate void _glAttachObjectARB(int containerObj, int obj); + [GlEntryPoint("glAttachObjectARB")] + _glAttachObjectARB _AttachObjectARB { get; } + + // --- + + delegate void _glAttachShader(uint program, uint shader); + [GlEntryPoint("glAttachShader")] + _glAttachShader _AttachShader { get; } + + // --- + + delegate void _glBegin(PrimitiveType mode); + [GlEntryPoint("glBegin")] + _glBegin _Begin { get; } + + // --- + + delegate void _glBeginConditionalRender(uint id, ConditionalRenderMode mode); + [GlEntryPoint("glBeginConditionalRender")] + _glBeginConditionalRender _BeginConditionalRender { get; } + + // --- + + delegate void _glBeginConditionalRenderNV(uint id, ConditionalRenderMode mode); + [GlEntryPoint("glBeginConditionalRenderNV")] + _glBeginConditionalRenderNV _BeginConditionalRenderNV { get; } + + // --- + + delegate void _glBeginConditionalRenderNVX(uint id); + [GlEntryPoint("glBeginConditionalRenderNVX")] + _glBeginConditionalRenderNVX _BeginConditionalRenderNVX { get; } + + // --- + + delegate void _glBeginFragmentShaderATI(); + [GlEntryPoint("glBeginFragmentShaderATI")] + _glBeginFragmentShaderATI _BeginFragmentShaderATI { get; } + + // --- + + delegate void _glBeginOcclusionQueryNV(uint id); + [GlEntryPoint("glBeginOcclusionQueryNV")] + _glBeginOcclusionQueryNV _BeginOcclusionQueryNV { get; } + + // --- + + delegate void _glBeginPerfMonitorAMD(uint monitor); + [GlEntryPoint("glBeginPerfMonitorAMD")] + _glBeginPerfMonitorAMD _BeginPerfMonitorAMD { get; } + + // --- + + delegate void _glBeginPerfQueryINTEL(uint queryHandle); + [GlEntryPoint("glBeginPerfQueryINTEL")] + _glBeginPerfQueryINTEL _BeginPerfQueryINTEL { get; } + + // --- + + delegate void _glBeginQuery(QueryTarget target, uint id); + [GlEntryPoint("glBeginQuery")] + _glBeginQuery _BeginQuery { get; } + + // --- + + delegate void _glBeginQueryARB(int target, uint id); + [GlEntryPoint("glBeginQueryARB")] + _glBeginQueryARB _BeginQueryARB { get; } + + // --- + + delegate void _glBeginQueryEXT(QueryTarget target, uint id); + [GlEntryPoint("glBeginQueryEXT")] + _glBeginQueryEXT _BeginQueryEXT { get; } + + // --- + + delegate void _glBeginQueryIndexed(QueryTarget target, uint index, uint id); + [GlEntryPoint("glBeginQueryIndexed")] + _glBeginQueryIndexed _BeginQueryIndexed { get; } + + // --- + + delegate void _glBeginTransformFeedback(PrimitiveType primitiveMode); + [GlEntryPoint("glBeginTransformFeedback")] + _glBeginTransformFeedback _BeginTransformFeedback { get; } + + // --- + + delegate void _glBeginTransformFeedbackEXT(PrimitiveType primitiveMode); + [GlEntryPoint("glBeginTransformFeedbackEXT")] + _glBeginTransformFeedbackEXT _BeginTransformFeedbackEXT { get; } + + // --- + + delegate void _glBeginTransformFeedbackNV(PrimitiveType primitiveMode); + [GlEntryPoint("glBeginTransformFeedbackNV")] + _glBeginTransformFeedbackNV _BeginTransformFeedbackNV { get; } + + // --- + + delegate void _glBeginVertexShaderEXT(); + [GlEntryPoint("glBeginVertexShaderEXT")] + _glBeginVertexShaderEXT _BeginVertexShaderEXT { get; } + + // --- + + delegate void _glBeginVideoCaptureNV(uint video_capture_slot); + [GlEntryPoint("glBeginVideoCaptureNV")] + _glBeginVideoCaptureNV _BeginVideoCaptureNV { get; } + + // --- + + delegate void _glBindAttribLocation(uint program, uint index, string name); + [GlEntryPoint("glBindAttribLocation")] + _glBindAttribLocation _BindAttribLocation { get; } + + delegate void _glBindAttribLocation_ptr(uint program, uint index, void* name); + [GlEntryPoint("glBindAttribLocation")] + _glBindAttribLocation_ptr _BindAttribLocation_ptr { get; } + + delegate void _glBindAttribLocation_intptr(uint program, uint index, IntPtr name); + [GlEntryPoint("glBindAttribLocation")] + _glBindAttribLocation_intptr _BindAttribLocation_intptr { get; } + + // --- + + delegate void _glBindAttribLocationARB(int programObj, uint index, string name); + [GlEntryPoint("glBindAttribLocationARB")] + _glBindAttribLocationARB _BindAttribLocationARB { get; } + + delegate void _glBindAttribLocationARB_ptr(int programObj, uint index, void* name); + [GlEntryPoint("glBindAttribLocationARB")] + _glBindAttribLocationARB_ptr _BindAttribLocationARB_ptr { get; } + + delegate void _glBindAttribLocationARB_intptr(int programObj, uint index, IntPtr name); + [GlEntryPoint("glBindAttribLocationARB")] + _glBindAttribLocationARB_intptr _BindAttribLocationARB_intptr { get; } + + // --- + + delegate void _glBindBuffer(BufferTargetARB target, uint buffer); + [GlEntryPoint("glBindBuffer")] + _glBindBuffer _BindBuffer { get; } + + // --- + + delegate void _glBindBufferARB(BufferTargetARB target, uint buffer); + [GlEntryPoint("glBindBufferARB")] + _glBindBufferARB _BindBufferARB { get; } + + // --- + + delegate void _glBindBufferBase(BufferTargetARB target, uint index, uint buffer); + [GlEntryPoint("glBindBufferBase")] + _glBindBufferBase _BindBufferBase { get; } + + // --- + + delegate void _glBindBufferBaseEXT(BufferTargetARB target, uint index, uint buffer); + [GlEntryPoint("glBindBufferBaseEXT")] + _glBindBufferBaseEXT _BindBufferBaseEXT { get; } + + // --- + + delegate void _glBindBufferBaseNV(BufferTargetARB target, uint index, uint buffer); + [GlEntryPoint("glBindBufferBaseNV")] + _glBindBufferBaseNV _BindBufferBaseNV { get; } + + // --- + + delegate void _glBindBufferOffsetEXT(BufferTargetARB target, uint index, uint buffer, IntPtr offset); + [GlEntryPoint("glBindBufferOffsetEXT")] + _glBindBufferOffsetEXT _BindBufferOffsetEXT { get; } + + // --- + + delegate void _glBindBufferOffsetNV(BufferTargetARB target, uint index, uint buffer, IntPtr offset); + [GlEntryPoint("glBindBufferOffsetNV")] + _glBindBufferOffsetNV _BindBufferOffsetNV { get; } + + // --- + + delegate void _glBindBufferRange(BufferTargetARB target, uint index, uint buffer, IntPtr offset, IntPtr size); + [GlEntryPoint("glBindBufferRange")] + _glBindBufferRange _BindBufferRange { get; } + + // --- + + delegate void _glBindBufferRangeEXT(BufferTargetARB target, uint index, uint buffer, IntPtr offset, IntPtr size); + [GlEntryPoint("glBindBufferRangeEXT")] + _glBindBufferRangeEXT _BindBufferRangeEXT { get; } + + // --- + + delegate void _glBindBufferRangeNV(BufferTargetARB target, uint index, uint buffer, IntPtr offset, IntPtr size); + [GlEntryPoint("glBindBufferRangeNV")] + _glBindBufferRangeNV _BindBufferRangeNV { get; } + + // --- + + delegate void _glBindBuffersBase(BufferTargetARB target, uint first, int count, uint[] buffers); + [GlEntryPoint("glBindBuffersBase")] + _glBindBuffersBase _BindBuffersBase { get; } + + delegate void _glBindBuffersBase_ptr(BufferTargetARB target, uint first, int count, void* buffers); + [GlEntryPoint("glBindBuffersBase")] + _glBindBuffersBase_ptr _BindBuffersBase_ptr { get; } + + delegate void _glBindBuffersBase_intptr(BufferTargetARB target, uint first, int count, IntPtr buffers); + [GlEntryPoint("glBindBuffersBase")] + _glBindBuffersBase_intptr _BindBuffersBase_intptr { get; } + + // --- + + delegate void _glBindBuffersRange(BufferTargetARB target, uint first, int count, uint[] buffers, IntPtr[] offsets, IntPtr[] sizes); + [GlEntryPoint("glBindBuffersRange")] + _glBindBuffersRange _BindBuffersRange { get; } + + delegate void _glBindBuffersRange_ptr(BufferTargetARB target, uint first, int count, void* buffers, void* offsets, void* sizes); + [GlEntryPoint("glBindBuffersRange")] + _glBindBuffersRange_ptr _BindBuffersRange_ptr { get; } + + delegate void _glBindBuffersRange_intptr(BufferTargetARB target, uint first, int count, IntPtr buffers, IntPtr offsets, IntPtr sizes); + [GlEntryPoint("glBindBuffersRange")] + _glBindBuffersRange_intptr _BindBuffersRange_intptr { get; } + + // --- + + delegate void _glBindFragDataLocation(uint program, uint color, string name); + [GlEntryPoint("glBindFragDataLocation")] + _glBindFragDataLocation _BindFragDataLocation { get; } + + delegate void _glBindFragDataLocation_ptr(uint program, uint color, void* name); + [GlEntryPoint("glBindFragDataLocation")] + _glBindFragDataLocation_ptr _BindFragDataLocation_ptr { get; } + + delegate void _glBindFragDataLocation_intptr(uint program, uint color, IntPtr name); + [GlEntryPoint("glBindFragDataLocation")] + _glBindFragDataLocation_intptr _BindFragDataLocation_intptr { get; } + + // --- + + delegate void _glBindFragDataLocationEXT(uint program, uint color, string name); + [GlEntryPoint("glBindFragDataLocationEXT")] + _glBindFragDataLocationEXT _BindFragDataLocationEXT { get; } + + delegate void _glBindFragDataLocationEXT_ptr(uint program, uint color, void* name); + [GlEntryPoint("glBindFragDataLocationEXT")] + _glBindFragDataLocationEXT_ptr _BindFragDataLocationEXT_ptr { get; } + + delegate void _glBindFragDataLocationEXT_intptr(uint program, uint color, IntPtr name); + [GlEntryPoint("glBindFragDataLocationEXT")] + _glBindFragDataLocationEXT_intptr _BindFragDataLocationEXT_intptr { get; } + + // --- + + delegate void _glBindFragDataLocationIndexed(uint program, uint colorNumber, uint index, string name); + [GlEntryPoint("glBindFragDataLocationIndexed")] + _glBindFragDataLocationIndexed _BindFragDataLocationIndexed { get; } + + delegate void _glBindFragDataLocationIndexed_ptr(uint program, uint colorNumber, uint index, void* name); + [GlEntryPoint("glBindFragDataLocationIndexed")] + _glBindFragDataLocationIndexed_ptr _BindFragDataLocationIndexed_ptr { get; } + + delegate void _glBindFragDataLocationIndexed_intptr(uint program, uint colorNumber, uint index, IntPtr name); + [GlEntryPoint("glBindFragDataLocationIndexed")] + _glBindFragDataLocationIndexed_intptr _BindFragDataLocationIndexed_intptr { get; } + + // --- + + delegate void _glBindFragDataLocationIndexedEXT(uint program, uint colorNumber, uint index, string name); + [GlEntryPoint("glBindFragDataLocationIndexedEXT")] + _glBindFragDataLocationIndexedEXT _BindFragDataLocationIndexedEXT { get; } + + delegate void _glBindFragDataLocationIndexedEXT_ptr(uint program, uint colorNumber, uint index, void* name); + [GlEntryPoint("glBindFragDataLocationIndexedEXT")] + _glBindFragDataLocationIndexedEXT_ptr _BindFragDataLocationIndexedEXT_ptr { get; } + + delegate void _glBindFragDataLocationIndexedEXT_intptr(uint program, uint colorNumber, uint index, IntPtr name); + [GlEntryPoint("glBindFragDataLocationIndexedEXT")] + _glBindFragDataLocationIndexedEXT_intptr _BindFragDataLocationIndexedEXT_intptr { get; } + + // --- + + delegate void _glBindFragmentShaderATI(uint id); + [GlEntryPoint("glBindFragmentShaderATI")] + _glBindFragmentShaderATI _BindFragmentShaderATI { get; } + + // --- + + delegate void _glBindFramebuffer(FramebufferTarget target, uint framebuffer); + [GlEntryPoint("glBindFramebuffer")] + _glBindFramebuffer _BindFramebuffer { get; } + + // --- + + delegate void _glBindFramebufferEXT(FramebufferTarget target, uint framebuffer); + [GlEntryPoint("glBindFramebufferEXT")] + _glBindFramebufferEXT _BindFramebufferEXT { get; } + + // --- + + delegate void _glBindFramebufferOES(FramebufferTarget target, uint framebuffer); + [GlEntryPoint("glBindFramebufferOES")] + _glBindFramebufferOES _BindFramebufferOES { get; } + + // --- + + delegate void _glBindImageTexture(uint unit, uint texture, int level, bool layered, int layer, BufferAccessARB access, InternalFormat format); + [GlEntryPoint("glBindImageTexture")] + _glBindImageTexture _BindImageTexture { get; } + + // --- + + delegate void _glBindImageTextureEXT(uint index, uint texture, int level, bool layered, int layer, BufferAccessARB access, int format); + [GlEntryPoint("glBindImageTextureEXT")] + _glBindImageTextureEXT _BindImageTextureEXT { get; } + + // --- + + delegate void _glBindImageTextures(uint first, int count, uint[] textures); + [GlEntryPoint("glBindImageTextures")] + _glBindImageTextures _BindImageTextures { get; } + + delegate void _glBindImageTextures_ptr(uint first, int count, void* textures); + [GlEntryPoint("glBindImageTextures")] + _glBindImageTextures_ptr _BindImageTextures_ptr { get; } + + delegate void _glBindImageTextures_intptr(uint first, int count, IntPtr textures); + [GlEntryPoint("glBindImageTextures")] + _glBindImageTextures_intptr _BindImageTextures_intptr { get; } + + // --- + + delegate uint _glBindLightParameterEXT(LightName light, LightParameter value); + [GlEntryPoint("glBindLightParameterEXT")] + _glBindLightParameterEXT _BindLightParameterEXT { get; } + + // --- + + delegate uint _glBindMaterialParameterEXT(MaterialFace face, MaterialParameter value); + [GlEntryPoint("glBindMaterialParameterEXT")] + _glBindMaterialParameterEXT _BindMaterialParameterEXT { get; } + + // --- + + delegate void _glBindMultiTextureEXT(TextureUnit texunit, TextureTarget target, uint texture); + [GlEntryPoint("glBindMultiTextureEXT")] + _glBindMultiTextureEXT _BindMultiTextureEXT { get; } + + // --- + + delegate uint _glBindParameterEXT(VertexShaderParameterEXT value); + [GlEntryPoint("glBindParameterEXT")] + _glBindParameterEXT _BindParameterEXT { get; } + + // --- + + delegate void _glBindProgramARB(ProgramTarget target, uint program); + [GlEntryPoint("glBindProgramARB")] + _glBindProgramARB _BindProgramARB { get; } + + // --- + + delegate void _glBindProgramNV(VertexAttribEnumNV target, uint id); + [GlEntryPoint("glBindProgramNV")] + _glBindProgramNV _BindProgramNV { get; } + + // --- + + delegate void _glBindProgramPipeline(uint pipeline); + [GlEntryPoint("glBindProgramPipeline")] + _glBindProgramPipeline _BindProgramPipeline { get; } + + // --- + + delegate void _glBindProgramPipelineEXT(uint pipeline); + [GlEntryPoint("glBindProgramPipelineEXT")] + _glBindProgramPipelineEXT _BindProgramPipelineEXT { get; } + + // --- + + delegate void _glBindRenderbuffer(RenderbufferTarget target, uint renderbuffer); + [GlEntryPoint("glBindRenderbuffer")] + _glBindRenderbuffer _BindRenderbuffer { get; } + + // --- + + delegate void _glBindRenderbufferEXT(RenderbufferTarget target, uint renderbuffer); + [GlEntryPoint("glBindRenderbufferEXT")] + _glBindRenderbufferEXT _BindRenderbufferEXT { get; } + + // --- + + delegate void _glBindRenderbufferOES(RenderbufferTarget target, uint renderbuffer); + [GlEntryPoint("glBindRenderbufferOES")] + _glBindRenderbufferOES _BindRenderbufferOES { get; } + + // --- + + delegate void _glBindSampler(uint unit, uint sampler); + [GlEntryPoint("glBindSampler")] + _glBindSampler _BindSampler { get; } + + // --- + + delegate void _glBindSamplers(uint first, int count, uint[] samplers); + [GlEntryPoint("glBindSamplers")] + _glBindSamplers _BindSamplers { get; } + + delegate void _glBindSamplers_ptr(uint first, int count, void* samplers); + [GlEntryPoint("glBindSamplers")] + _glBindSamplers_ptr _BindSamplers_ptr { get; } + + delegate void _glBindSamplers_intptr(uint first, int count, IntPtr samplers); + [GlEntryPoint("glBindSamplers")] + _glBindSamplers_intptr _BindSamplers_intptr { get; } + + // --- + + delegate void _glBindShadingRateImageNV(uint texture); + [GlEntryPoint("glBindShadingRateImageNV")] + _glBindShadingRateImageNV _BindShadingRateImageNV { get; } + + // --- + + delegate uint _glBindTexGenParameterEXT(TextureUnit unit, TextureCoordName coord, TextureGenParameter value); + [GlEntryPoint("glBindTexGenParameterEXT")] + _glBindTexGenParameterEXT _BindTexGenParameterEXT { get; } + + // --- + + delegate void _glBindTexture(TextureTarget target, uint texture); + [GlEntryPoint("glBindTexture")] + _glBindTexture _BindTexture { get; } + + // --- + + delegate void _glBindTextureEXT(TextureTarget target, uint texture); + [GlEntryPoint("glBindTextureEXT")] + _glBindTextureEXT _BindTextureEXT { get; } + + // --- + + delegate void _glBindTextureUnit(uint unit, uint texture); + [GlEntryPoint("glBindTextureUnit")] + _glBindTextureUnit _BindTextureUnit { get; } + + // --- + + delegate uint _glBindTextureUnitParameterEXT(TextureUnit unit, VertexShaderTextureUnitParameter value); + [GlEntryPoint("glBindTextureUnitParameterEXT")] + _glBindTextureUnitParameterEXT _BindTextureUnitParameterEXT { get; } + + // --- + + delegate void _glBindTextures(uint first, int count, uint[] textures); + [GlEntryPoint("glBindTextures")] + _glBindTextures _BindTextures { get; } + + delegate void _glBindTextures_ptr(uint first, int count, void* textures); + [GlEntryPoint("glBindTextures")] + _glBindTextures_ptr _BindTextures_ptr { get; } + + delegate void _glBindTextures_intptr(uint first, int count, IntPtr textures); + [GlEntryPoint("glBindTextures")] + _glBindTextures_intptr _BindTextures_intptr { get; } + + // --- + + delegate void _glBindTransformFeedback(BindTransformFeedbackTarget target, uint id); + [GlEntryPoint("glBindTransformFeedback")] + _glBindTransformFeedback _BindTransformFeedback { get; } + + // --- + + delegate void _glBindTransformFeedbackNV(BufferTargetARB target, uint id); + [GlEntryPoint("glBindTransformFeedbackNV")] + _glBindTransformFeedbackNV _BindTransformFeedbackNV { get; } + + // --- + + delegate void _glBindVertexArray(uint array); + [GlEntryPoint("glBindVertexArray")] + _glBindVertexArray _BindVertexArray { get; } + + // --- + + delegate void _glBindVertexArrayAPPLE(uint array); + [GlEntryPoint("glBindVertexArrayAPPLE")] + _glBindVertexArrayAPPLE _BindVertexArrayAPPLE { get; } + + // --- + + delegate void _glBindVertexArrayOES(uint array); + [GlEntryPoint("glBindVertexArrayOES")] + _glBindVertexArrayOES _BindVertexArrayOES { get; } + + // --- + + delegate void _glBindVertexBuffer(uint bindingindex, uint buffer, IntPtr offset, int stride); + [GlEntryPoint("glBindVertexBuffer")] + _glBindVertexBuffer _BindVertexBuffer { get; } + + // --- + + delegate void _glBindVertexBuffers(uint first, int count, uint[] buffers, IntPtr[] offsets, int[] strides); + [GlEntryPoint("glBindVertexBuffers")] + _glBindVertexBuffers _BindVertexBuffers { get; } + + delegate void _glBindVertexBuffers_ptr(uint first, int count, void* buffers, void* offsets, void* strides); + [GlEntryPoint("glBindVertexBuffers")] + _glBindVertexBuffers_ptr _BindVertexBuffers_ptr { get; } + + delegate void _glBindVertexBuffers_intptr(uint first, int count, IntPtr buffers, IntPtr offsets, IntPtr strides); + [GlEntryPoint("glBindVertexBuffers")] + _glBindVertexBuffers_intptr _BindVertexBuffers_intptr { get; } + + // --- + + delegate void _glBindVertexShaderEXT(uint id); + [GlEntryPoint("glBindVertexShaderEXT")] + _glBindVertexShaderEXT _BindVertexShaderEXT { get; } + + // --- + + delegate void _glBindVideoCaptureStreamBufferNV(uint video_capture_slot, uint stream, int frame_region, IntPtr offset); + [GlEntryPoint("glBindVideoCaptureStreamBufferNV")] + _glBindVideoCaptureStreamBufferNV _BindVideoCaptureStreamBufferNV { get; } + + // --- + + delegate void _glBindVideoCaptureStreamTextureNV(uint video_capture_slot, uint stream, int frame_region, int target, uint texture); + [GlEntryPoint("glBindVideoCaptureStreamTextureNV")] + _glBindVideoCaptureStreamTextureNV _BindVideoCaptureStreamTextureNV { get; } + + // --- + + delegate void _glBinormal3bEXT(sbyte bx, sbyte by, sbyte bz); + [GlEntryPoint("glBinormal3bEXT")] + _glBinormal3bEXT _Binormal3bEXT { get; } + + // --- + + delegate void _glBinormal3bvEXT(sbyte[] v); + [GlEntryPoint("glBinormal3bvEXT")] + _glBinormal3bvEXT _Binormal3bvEXT { get; } + + delegate void _glBinormal3bvEXT_ptr(void* v); + [GlEntryPoint("glBinormal3bvEXT")] + _glBinormal3bvEXT_ptr _Binormal3bvEXT_ptr { get; } + + delegate void _glBinormal3bvEXT_intptr(IntPtr v); + [GlEntryPoint("glBinormal3bvEXT")] + _glBinormal3bvEXT_intptr _Binormal3bvEXT_intptr { get; } + + // --- + + delegate void _glBinormal3dEXT(double bx, double by, double bz); + [GlEntryPoint("glBinormal3dEXT")] + _glBinormal3dEXT _Binormal3dEXT { get; } + + // --- + + delegate void _glBinormal3dvEXT(double[] v); + [GlEntryPoint("glBinormal3dvEXT")] + _glBinormal3dvEXT _Binormal3dvEXT { get; } + + delegate void _glBinormal3dvEXT_ptr(void* v); + [GlEntryPoint("glBinormal3dvEXT")] + _glBinormal3dvEXT_ptr _Binormal3dvEXT_ptr { get; } + + delegate void _glBinormal3dvEXT_intptr(IntPtr v); + [GlEntryPoint("glBinormal3dvEXT")] + _glBinormal3dvEXT_intptr _Binormal3dvEXT_intptr { get; } + + // --- + + delegate void _glBinormal3fEXT(float bx, float by, float bz); + [GlEntryPoint("glBinormal3fEXT")] + _glBinormal3fEXT _Binormal3fEXT { get; } + + // --- + + delegate void _glBinormal3fvEXT(float[] v); + [GlEntryPoint("glBinormal3fvEXT")] + _glBinormal3fvEXT _Binormal3fvEXT { get; } + + delegate void _glBinormal3fvEXT_ptr(void* v); + [GlEntryPoint("glBinormal3fvEXT")] + _glBinormal3fvEXT_ptr _Binormal3fvEXT_ptr { get; } + + delegate void _glBinormal3fvEXT_intptr(IntPtr v); + [GlEntryPoint("glBinormal3fvEXT")] + _glBinormal3fvEXT_intptr _Binormal3fvEXT_intptr { get; } + + // --- + + delegate void _glBinormal3iEXT(int bx, int by, int bz); + [GlEntryPoint("glBinormal3iEXT")] + _glBinormal3iEXT _Binormal3iEXT { get; } + + // --- + + delegate void _glBinormal3ivEXT(int[] v); + [GlEntryPoint("glBinormal3ivEXT")] + _glBinormal3ivEXT _Binormal3ivEXT { get; } + + delegate void _glBinormal3ivEXT_ptr(void* v); + [GlEntryPoint("glBinormal3ivEXT")] + _glBinormal3ivEXT_ptr _Binormal3ivEXT_ptr { get; } + + delegate void _glBinormal3ivEXT_intptr(IntPtr v); + [GlEntryPoint("glBinormal3ivEXT")] + _glBinormal3ivEXT_intptr _Binormal3ivEXT_intptr { get; } + + // --- + + delegate void _glBinormal3sEXT(short bx, short by, short bz); + [GlEntryPoint("glBinormal3sEXT")] + _glBinormal3sEXT _Binormal3sEXT { get; } + + // --- + + delegate void _glBinormal3svEXT(short[] v); + [GlEntryPoint("glBinormal3svEXT")] + _glBinormal3svEXT _Binormal3svEXT { get; } + + delegate void _glBinormal3svEXT_ptr(void* v); + [GlEntryPoint("glBinormal3svEXT")] + _glBinormal3svEXT_ptr _Binormal3svEXT_ptr { get; } + + delegate void _glBinormal3svEXT_intptr(IntPtr v); + [GlEntryPoint("glBinormal3svEXT")] + _glBinormal3svEXT_intptr _Binormal3svEXT_intptr { get; } + + // --- + + delegate void _glBinormalPointerEXT(BinormalPointerTypeEXT type, int stride, IntPtr pointer); + [GlEntryPoint("glBinormalPointerEXT")] + _glBinormalPointerEXT _BinormalPointerEXT { get; } + + // --- + + delegate void _glBitmap(int width, int height, float xorig, float yorig, float xmove, float ymove, byte[] bitmap); + [GlEntryPoint("glBitmap")] + _glBitmap _Bitmap { get; } + + delegate void _glBitmap_ptr(int width, int height, float xorig, float yorig, float xmove, float ymove, void* bitmap); + [GlEntryPoint("glBitmap")] + _glBitmap_ptr _Bitmap_ptr { get; } + + delegate void _glBitmap_intptr(int width, int height, float xorig, float yorig, float xmove, float ymove, IntPtr bitmap); + [GlEntryPoint("glBitmap")] + _glBitmap_intptr _Bitmap_intptr { get; } + + // --- + + delegate void _glBitmapxOES(int width, int height, float xorig, float yorig, float xmove, float ymove, byte[] bitmap); + [GlEntryPoint("glBitmapxOES")] + _glBitmapxOES _BitmapxOES { get; } + + delegate void _glBitmapxOES_ptr(int width, int height, float xorig, float yorig, float xmove, float ymove, void* bitmap); + [GlEntryPoint("glBitmapxOES")] + _glBitmapxOES_ptr _BitmapxOES_ptr { get; } + + delegate void _glBitmapxOES_intptr(int width, int height, float xorig, float yorig, float xmove, float ymove, IntPtr bitmap); + [GlEntryPoint("glBitmapxOES")] + _glBitmapxOES_intptr _BitmapxOES_intptr { get; } + + // --- + + delegate void _glBlendBarrier(); + [GlEntryPoint("glBlendBarrier")] + _glBlendBarrier _BlendBarrier { get; } + + // --- + + delegate void _glBlendBarrierKHR(); + [GlEntryPoint("glBlendBarrierKHR")] + _glBlendBarrierKHR _BlendBarrierKHR { get; } + + // --- + + delegate void _glBlendBarrierNV(); + [GlEntryPoint("glBlendBarrierNV")] + _glBlendBarrierNV _BlendBarrierNV { get; } + + // --- + + delegate void _glBlendColor(float red, float green, float blue, float alpha); + [GlEntryPoint("glBlendColor")] + _glBlendColor _BlendColor { get; } + + // --- + + delegate void _glBlendColorEXT(float red, float green, float blue, float alpha); + [GlEntryPoint("glBlendColorEXT")] + _glBlendColorEXT _BlendColorEXT { get; } + + // --- + + delegate void _glBlendColorxOES(float red, float green, float blue, float alpha); + [GlEntryPoint("glBlendColorxOES")] + _glBlendColorxOES _BlendColorxOES { get; } + + // --- + + delegate void _glBlendEquation(BlendEquationModeEXT mode); + [GlEntryPoint("glBlendEquation")] + _glBlendEquation _BlendEquation { get; } + + // --- + + delegate void _glBlendEquationEXT(BlendEquationModeEXT mode); + [GlEntryPoint("glBlendEquationEXT")] + _glBlendEquationEXT _BlendEquationEXT { get; } + + // --- + + delegate void _glBlendEquationIndexedAMD(uint buf, BlendEquationModeEXT mode); + [GlEntryPoint("glBlendEquationIndexedAMD")] + _glBlendEquationIndexedAMD _BlendEquationIndexedAMD { get; } + + // --- + + delegate void _glBlendEquationOES(BlendEquationModeEXT mode); + [GlEntryPoint("glBlendEquationOES")] + _glBlendEquationOES _BlendEquationOES { get; } + + // --- + + delegate void _glBlendEquationSeparate(BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha); + [GlEntryPoint("glBlendEquationSeparate")] + _glBlendEquationSeparate _BlendEquationSeparate { get; } + + // --- + + delegate void _glBlendEquationSeparateEXT(BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha); + [GlEntryPoint("glBlendEquationSeparateEXT")] + _glBlendEquationSeparateEXT _BlendEquationSeparateEXT { get; } + + // --- + + delegate void _glBlendEquationSeparateIndexedAMD(uint buf, BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha); + [GlEntryPoint("glBlendEquationSeparateIndexedAMD")] + _glBlendEquationSeparateIndexedAMD _BlendEquationSeparateIndexedAMD { get; } + + // --- + + delegate void _glBlendEquationSeparateOES(BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha); + [GlEntryPoint("glBlendEquationSeparateOES")] + _glBlendEquationSeparateOES _BlendEquationSeparateOES { get; } + + // --- + + delegate void _glBlendEquationSeparatei(uint buf, BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha); + [GlEntryPoint("glBlendEquationSeparatei")] + _glBlendEquationSeparatei _BlendEquationSeparatei { get; } + + // --- + + delegate void _glBlendEquationSeparateiARB(uint buf, BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha); + [GlEntryPoint("glBlendEquationSeparateiARB")] + _glBlendEquationSeparateiARB _BlendEquationSeparateiARB { get; } + + // --- + + delegate void _glBlendEquationSeparateiEXT(uint buf, BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha); + [GlEntryPoint("glBlendEquationSeparateiEXT")] + _glBlendEquationSeparateiEXT _BlendEquationSeparateiEXT { get; } + + // --- + + delegate void _glBlendEquationSeparateiOES(uint buf, BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha); + [GlEntryPoint("glBlendEquationSeparateiOES")] + _glBlendEquationSeparateiOES _BlendEquationSeparateiOES { get; } + + // --- + + delegate void _glBlendEquationi(uint buf, BlendEquationModeEXT mode); + [GlEntryPoint("glBlendEquationi")] + _glBlendEquationi _BlendEquationi { get; } + + // --- + + delegate void _glBlendEquationiARB(uint buf, BlendEquationModeEXT mode); + [GlEntryPoint("glBlendEquationiARB")] + _glBlendEquationiARB _BlendEquationiARB { get; } + + // --- + + delegate void _glBlendEquationiEXT(uint buf, BlendEquationModeEXT mode); + [GlEntryPoint("glBlendEquationiEXT")] + _glBlendEquationiEXT _BlendEquationiEXT { get; } + + // --- + + delegate void _glBlendEquationiOES(uint buf, BlendEquationModeEXT mode); + [GlEntryPoint("glBlendEquationiOES")] + _glBlendEquationiOES _BlendEquationiOES { get; } + + // --- + + delegate void _glBlendFunc(BlendingFactor sfactor, BlendingFactor dfactor); + [GlEntryPoint("glBlendFunc")] + _glBlendFunc _BlendFunc { get; } + + // --- + + delegate void _glBlendFuncIndexedAMD(uint buf, int src, int dst); + [GlEntryPoint("glBlendFuncIndexedAMD")] + _glBlendFuncIndexedAMD _BlendFuncIndexedAMD { get; } + + // --- + + delegate void _glBlendFuncSeparate(BlendingFactor sfactorRGB, BlendingFactor dfactorRGB, BlendingFactor sfactorAlpha, BlendingFactor dfactorAlpha); + [GlEntryPoint("glBlendFuncSeparate")] + _glBlendFuncSeparate _BlendFuncSeparate { get; } + + // --- + + delegate void _glBlendFuncSeparateEXT(BlendingFactor sfactorRGB, BlendingFactor dfactorRGB, BlendingFactor sfactorAlpha, BlendingFactor dfactorAlpha); + [GlEntryPoint("glBlendFuncSeparateEXT")] + _glBlendFuncSeparateEXT _BlendFuncSeparateEXT { get; } + + // --- + + delegate void _glBlendFuncSeparateINGR(BlendingFactor sfactorRGB, BlendingFactor dfactorRGB, BlendingFactor sfactorAlpha, BlendingFactor dfactorAlpha); + [GlEntryPoint("glBlendFuncSeparateINGR")] + _glBlendFuncSeparateINGR _BlendFuncSeparateINGR { get; } + + // --- + + delegate void _glBlendFuncSeparateIndexedAMD(uint buf, BlendingFactor srcRGB, BlendingFactor dstRGB, BlendingFactor srcAlpha, BlendingFactor dstAlpha); + [GlEntryPoint("glBlendFuncSeparateIndexedAMD")] + _glBlendFuncSeparateIndexedAMD _BlendFuncSeparateIndexedAMD { get; } + + // --- + + delegate void _glBlendFuncSeparateOES(BlendingFactor srcRGB, BlendingFactor dstRGB, BlendingFactor srcAlpha, BlendingFactor dstAlpha); + [GlEntryPoint("glBlendFuncSeparateOES")] + _glBlendFuncSeparateOES _BlendFuncSeparateOES { get; } + + // --- + + delegate void _glBlendFuncSeparatei(uint buf, BlendingFactor srcRGB, BlendingFactor dstRGB, BlendingFactor srcAlpha, BlendingFactor dstAlpha); + [GlEntryPoint("glBlendFuncSeparatei")] + _glBlendFuncSeparatei _BlendFuncSeparatei { get; } + + // --- + + delegate void _glBlendFuncSeparateiARB(uint buf, BlendingFactor srcRGB, BlendingFactor dstRGB, BlendingFactor srcAlpha, BlendingFactor dstAlpha); + [GlEntryPoint("glBlendFuncSeparateiARB")] + _glBlendFuncSeparateiARB _BlendFuncSeparateiARB { get; } + + // --- + + delegate void _glBlendFuncSeparateiEXT(uint buf, BlendingFactor srcRGB, BlendingFactor dstRGB, BlendingFactor srcAlpha, BlendingFactor dstAlpha); + [GlEntryPoint("glBlendFuncSeparateiEXT")] + _glBlendFuncSeparateiEXT _BlendFuncSeparateiEXT { get; } + + // --- + + delegate void _glBlendFuncSeparateiOES(uint buf, BlendingFactor srcRGB, BlendingFactor dstRGB, BlendingFactor srcAlpha, BlendingFactor dstAlpha); + [GlEntryPoint("glBlendFuncSeparateiOES")] + _glBlendFuncSeparateiOES _BlendFuncSeparateiOES { get; } + + // --- + + delegate void _glBlendFunci(uint buf, BlendingFactor src, BlendingFactor dst); + [GlEntryPoint("glBlendFunci")] + _glBlendFunci _BlendFunci { get; } + + // --- + + delegate void _glBlendFunciARB(uint buf, BlendingFactor src, BlendingFactor dst); + [GlEntryPoint("glBlendFunciARB")] + _glBlendFunciARB _BlendFunciARB { get; } + + // --- + + delegate void _glBlendFunciEXT(uint buf, BlendingFactor src, BlendingFactor dst); + [GlEntryPoint("glBlendFunciEXT")] + _glBlendFunciEXT _BlendFunciEXT { get; } + + // --- + + delegate void _glBlendFunciOES(uint buf, BlendingFactor src, BlendingFactor dst); + [GlEntryPoint("glBlendFunciOES")] + _glBlendFunciOES _BlendFunciOES { get; } + + // --- + + delegate void _glBlendParameteriNV(int pname, int value); + [GlEntryPoint("glBlendParameteriNV")] + _glBlendParameteriNV _BlendParameteriNV { get; } + + // --- + + delegate void _glBlitFramebuffer(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, BlitFramebufferFilter filter); + [GlEntryPoint("glBlitFramebuffer")] + _glBlitFramebuffer _BlitFramebuffer { get; } + + // --- + + delegate void _glBlitFramebufferANGLE(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, BlitFramebufferFilter filter); + [GlEntryPoint("glBlitFramebufferANGLE")] + _glBlitFramebufferANGLE _BlitFramebufferANGLE { get; } + + // --- + + delegate void _glBlitFramebufferEXT(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, BlitFramebufferFilter filter); + [GlEntryPoint("glBlitFramebufferEXT")] + _glBlitFramebufferEXT _BlitFramebufferEXT { get; } + + // --- + + delegate void _glBlitFramebufferNV(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, BlitFramebufferFilter filter); + [GlEntryPoint("glBlitFramebufferNV")] + _glBlitFramebufferNV _BlitFramebufferNV { get; } + + // --- + + delegate void _glBlitNamedFramebuffer(uint readFramebuffer, uint drawFramebuffer, int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, BlitFramebufferFilter filter); + [GlEntryPoint("glBlitNamedFramebuffer")] + _glBlitNamedFramebuffer _BlitNamedFramebuffer { get; } + + // --- + + delegate void _glBufferAddressRangeNV(int pname, uint index, UInt64 address, IntPtr length); + [GlEntryPoint("glBufferAddressRangeNV")] + _glBufferAddressRangeNV _BufferAddressRangeNV { get; } + + // --- + + delegate void _glBufferAttachMemoryNV(BufferTargetARB target, uint memory, UInt64 offset); + [GlEntryPoint("glBufferAttachMemoryNV")] + _glBufferAttachMemoryNV _BufferAttachMemoryNV { get; } + + // --- + + delegate void _glBufferData(BufferTargetARB target, IntPtr size, IntPtr data, BufferUsageARB usage); + [GlEntryPoint("glBufferData")] + _glBufferData _BufferData { get; } + + // --- + + delegate void _glBufferDataARB(BufferTargetARB target, IntPtr size, IntPtr data, BufferUsageARB usage); + [GlEntryPoint("glBufferDataARB")] + _glBufferDataARB _BufferDataARB { get; } + + // --- + + delegate void _glBufferPageCommitmentARB(int target, IntPtr offset, IntPtr size, bool commit); + [GlEntryPoint("glBufferPageCommitmentARB")] + _glBufferPageCommitmentARB _BufferPageCommitmentARB { get; } + + // --- + + delegate void _glBufferParameteriAPPLE(int target, int pname, int param); + [GlEntryPoint("glBufferParameteriAPPLE")] + _glBufferParameteriAPPLE _BufferParameteriAPPLE { get; } + + // --- + + delegate void _glBufferStorage(BufferStorageTarget target, IntPtr size, IntPtr data, int flags); + [GlEntryPoint("glBufferStorage")] + _glBufferStorage _BufferStorage { get; } + + // --- + + delegate void _glBufferStorageEXT(BufferStorageTarget target, IntPtr size, IntPtr data, int flags); + [GlEntryPoint("glBufferStorageEXT")] + _glBufferStorageEXT _BufferStorageEXT { get; } + + // --- + + delegate void _glBufferStorageExternalEXT(int target, IntPtr offset, IntPtr size, IntPtr clientBuffer, int flags); + [GlEntryPoint("glBufferStorageExternalEXT")] + _glBufferStorageExternalEXT _BufferStorageExternalEXT { get; } + + // --- + + delegate void _glBufferStorageMemEXT(BufferTargetARB target, IntPtr size, uint memory, UInt64 offset); + [GlEntryPoint("glBufferStorageMemEXT")] + _glBufferStorageMemEXT _BufferStorageMemEXT { get; } + + // --- + + delegate void _glBufferSubData(BufferTargetARB target, IntPtr offset, IntPtr size, IntPtr data); + [GlEntryPoint("glBufferSubData")] + _glBufferSubData _BufferSubData { get; } + + // --- + + delegate void _glBufferSubDataARB(BufferTargetARB target, IntPtr offset, IntPtr size, IntPtr data); + [GlEntryPoint("glBufferSubDataARB")] + _glBufferSubDataARB _BufferSubDataARB { get; } + + // --- + + delegate void _glCallCommandListNV(uint list); + [GlEntryPoint("glCallCommandListNV")] + _glCallCommandListNV _CallCommandListNV { get; } + + // --- + + delegate void _glCallList(uint list); + [GlEntryPoint("glCallList")] + _glCallList _CallList { get; } + + // --- + + delegate void _glCallLists(int n, ListNameType type, IntPtr lists); + [GlEntryPoint("glCallLists")] + _glCallLists _CallLists { get; } + + // --- + + delegate int _glCheckFramebufferStatus(FramebufferTarget target); + [GlEntryPoint("glCheckFramebufferStatus")] + _glCheckFramebufferStatus _CheckFramebufferStatus { get; } + + // --- + + delegate int _glCheckFramebufferStatusEXT(FramebufferTarget target); + [GlEntryPoint("glCheckFramebufferStatusEXT")] + _glCheckFramebufferStatusEXT _CheckFramebufferStatusEXT { get; } + + // --- + + delegate int _glCheckFramebufferStatusOES(FramebufferTarget target); + [GlEntryPoint("glCheckFramebufferStatusOES")] + _glCheckFramebufferStatusOES _CheckFramebufferStatusOES { get; } + + // --- + + delegate int _glCheckNamedFramebufferStatus(uint framebuffer, FramebufferTarget target); + [GlEntryPoint("glCheckNamedFramebufferStatus")] + _glCheckNamedFramebufferStatus _CheckNamedFramebufferStatus { get; } + + // --- + + delegate int _glCheckNamedFramebufferStatusEXT(uint framebuffer, FramebufferTarget target); + [GlEntryPoint("glCheckNamedFramebufferStatusEXT")] + _glCheckNamedFramebufferStatusEXT _CheckNamedFramebufferStatusEXT { get; } + + // --- + + delegate void _glClampColor(ClampColorTargetARB target, ClampColorModeARB clamp); + [GlEntryPoint("glClampColor")] + _glClampColor _ClampColor { get; } + + // --- + + delegate void _glClampColorARB(ClampColorTargetARB target, ClampColorModeARB clamp); + [GlEntryPoint("glClampColorARB")] + _glClampColorARB _ClampColorARB { get; } + + // --- + + delegate void _glClear(int mask); + [GlEntryPoint("glClear")] + _glClear _Clear { get; } + + // --- + + delegate void _glClearAccum(float red, float green, float blue, float alpha); + [GlEntryPoint("glClearAccum")] + _glClearAccum _ClearAccum { get; } + + // --- + + delegate void _glClearAccumxOES(float red, float green, float blue, float alpha); + [GlEntryPoint("glClearAccumxOES")] + _glClearAccumxOES _ClearAccumxOES { get; } + + // --- + + delegate void _glClearBufferData(BufferStorageTarget target, InternalFormat internalformat, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glClearBufferData")] + _glClearBufferData _ClearBufferData { get; } + + // --- + + delegate void _glClearBufferSubData(BufferTargetARB target, InternalFormat internalformat, IntPtr offset, IntPtr size, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glClearBufferSubData")] + _glClearBufferSubData _ClearBufferSubData { get; } + + // --- + + delegate void _glClearBufferfi(Buffer buffer, int drawbuffer, float depth, int stencil); + [GlEntryPoint("glClearBufferfi")] + _glClearBufferfi _ClearBufferfi { get; } + + // --- + + delegate void _glClearBufferfv(Buffer buffer, int drawbuffer, float[] value); + [GlEntryPoint("glClearBufferfv")] + _glClearBufferfv _ClearBufferfv { get; } + + delegate void _glClearBufferfv_ptr(Buffer buffer, int drawbuffer, void* value); + [GlEntryPoint("glClearBufferfv")] + _glClearBufferfv_ptr _ClearBufferfv_ptr { get; } + + delegate void _glClearBufferfv_intptr(Buffer buffer, int drawbuffer, IntPtr value); + [GlEntryPoint("glClearBufferfv")] + _glClearBufferfv_intptr _ClearBufferfv_intptr { get; } + + // --- + + delegate void _glClearBufferiv(Buffer buffer, int drawbuffer, int[] value); + [GlEntryPoint("glClearBufferiv")] + _glClearBufferiv _ClearBufferiv { get; } + + delegate void _glClearBufferiv_ptr(Buffer buffer, int drawbuffer, void* value); + [GlEntryPoint("glClearBufferiv")] + _glClearBufferiv_ptr _ClearBufferiv_ptr { get; } + + delegate void _glClearBufferiv_intptr(Buffer buffer, int drawbuffer, IntPtr value); + [GlEntryPoint("glClearBufferiv")] + _glClearBufferiv_intptr _ClearBufferiv_intptr { get; } + + // --- + + delegate void _glClearBufferuiv(Buffer buffer, int drawbuffer, uint[] value); + [GlEntryPoint("glClearBufferuiv")] + _glClearBufferuiv _ClearBufferuiv { get; } + + delegate void _glClearBufferuiv_ptr(Buffer buffer, int drawbuffer, void* value); + [GlEntryPoint("glClearBufferuiv")] + _glClearBufferuiv_ptr _ClearBufferuiv_ptr { get; } + + delegate void _glClearBufferuiv_intptr(Buffer buffer, int drawbuffer, IntPtr value); + [GlEntryPoint("glClearBufferuiv")] + _glClearBufferuiv_intptr _ClearBufferuiv_intptr { get; } + + // --- + + delegate void _glClearColor(float red, float green, float blue, float alpha); + [GlEntryPoint("glClearColor")] + _glClearColor _ClearColor { get; } + + // --- + + delegate void _glClearColorIiEXT(int red, int green, int blue, int alpha); + [GlEntryPoint("glClearColorIiEXT")] + _glClearColorIiEXT _ClearColorIiEXT { get; } + + // --- + + delegate void _glClearColorIuiEXT(uint red, uint green, uint blue, uint alpha); + [GlEntryPoint("glClearColorIuiEXT")] + _glClearColorIuiEXT _ClearColorIuiEXT { get; } + + // --- + + delegate void _glClearColorx(float red, float green, float blue, float alpha); + [GlEntryPoint("glClearColorx")] + _glClearColorx _ClearColorx { get; } + + // --- + + delegate void _glClearColorxOES(float red, float green, float blue, float alpha); + [GlEntryPoint("glClearColorxOES")] + _glClearColorxOES _ClearColorxOES { get; } + + // --- + + delegate void _glClearDepth(double depth); + [GlEntryPoint("glClearDepth")] + _glClearDepth _ClearDepth { get; } + + // --- + + delegate void _glClearDepthdNV(double depth); + [GlEntryPoint("glClearDepthdNV")] + _glClearDepthdNV _ClearDepthdNV { get; } + + // --- + + delegate void _glClearDepthf(float d); + [GlEntryPoint("glClearDepthf")] + _glClearDepthf _ClearDepthf { get; } + + // --- + + delegate void _glClearDepthfOES(float depth); + [GlEntryPoint("glClearDepthfOES")] + _glClearDepthfOES _ClearDepthfOES { get; } + + // --- + + delegate void _glClearDepthx(float depth); + [GlEntryPoint("glClearDepthx")] + _glClearDepthx _ClearDepthx { get; } + + // --- + + delegate void _glClearDepthxOES(float depth); + [GlEntryPoint("glClearDepthxOES")] + _glClearDepthxOES _ClearDepthxOES { get; } + + // --- + + delegate void _glClearIndex(float c); + [GlEntryPoint("glClearIndex")] + _glClearIndex _ClearIndex { get; } + + // --- + + delegate void _glClearNamedBufferData(uint buffer, InternalFormat internalformat, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glClearNamedBufferData")] + _glClearNamedBufferData _ClearNamedBufferData { get; } + + // --- + + delegate void _glClearNamedBufferDataEXT(uint buffer, InternalFormat internalformat, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glClearNamedBufferDataEXT")] + _glClearNamedBufferDataEXT _ClearNamedBufferDataEXT { get; } + + // --- + + delegate void _glClearNamedBufferSubData(uint buffer, InternalFormat internalformat, IntPtr offset, IntPtr size, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glClearNamedBufferSubData")] + _glClearNamedBufferSubData _ClearNamedBufferSubData { get; } + + // --- + + delegate void _glClearNamedBufferSubDataEXT(uint buffer, int internalformat, IntPtr offset, IntPtr size, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glClearNamedBufferSubDataEXT")] + _glClearNamedBufferSubDataEXT _ClearNamedBufferSubDataEXT { get; } + + // --- + + delegate void _glClearNamedFramebufferfi(uint framebuffer, Buffer buffer, int drawbuffer, float depth, int stencil); + [GlEntryPoint("glClearNamedFramebufferfi")] + _glClearNamedFramebufferfi _ClearNamedFramebufferfi { get; } + + // --- + + delegate void _glClearNamedFramebufferfv(uint framebuffer, Buffer buffer, int drawbuffer, float[] value); + [GlEntryPoint("glClearNamedFramebufferfv")] + _glClearNamedFramebufferfv _ClearNamedFramebufferfv { get; } + + delegate void _glClearNamedFramebufferfv_ptr(uint framebuffer, Buffer buffer, int drawbuffer, void* value); + [GlEntryPoint("glClearNamedFramebufferfv")] + _glClearNamedFramebufferfv_ptr _ClearNamedFramebufferfv_ptr { get; } + + delegate void _glClearNamedFramebufferfv_intptr(uint framebuffer, Buffer buffer, int drawbuffer, IntPtr value); + [GlEntryPoint("glClearNamedFramebufferfv")] + _glClearNamedFramebufferfv_intptr _ClearNamedFramebufferfv_intptr { get; } + + // --- + + delegate void _glClearNamedFramebufferiv(uint framebuffer, Buffer buffer, int drawbuffer, int[] value); + [GlEntryPoint("glClearNamedFramebufferiv")] + _glClearNamedFramebufferiv _ClearNamedFramebufferiv { get; } + + delegate void _glClearNamedFramebufferiv_ptr(uint framebuffer, Buffer buffer, int drawbuffer, void* value); + [GlEntryPoint("glClearNamedFramebufferiv")] + _glClearNamedFramebufferiv_ptr _ClearNamedFramebufferiv_ptr { get; } + + delegate void _glClearNamedFramebufferiv_intptr(uint framebuffer, Buffer buffer, int drawbuffer, IntPtr value); + [GlEntryPoint("glClearNamedFramebufferiv")] + _glClearNamedFramebufferiv_intptr _ClearNamedFramebufferiv_intptr { get; } + + // --- + + delegate void _glClearNamedFramebufferuiv(uint framebuffer, Buffer buffer, int drawbuffer, uint[] value); + [GlEntryPoint("glClearNamedFramebufferuiv")] + _glClearNamedFramebufferuiv _ClearNamedFramebufferuiv { get; } + + delegate void _glClearNamedFramebufferuiv_ptr(uint framebuffer, Buffer buffer, int drawbuffer, void* value); + [GlEntryPoint("glClearNamedFramebufferuiv")] + _glClearNamedFramebufferuiv_ptr _ClearNamedFramebufferuiv_ptr { get; } + + delegate void _glClearNamedFramebufferuiv_intptr(uint framebuffer, Buffer buffer, int drawbuffer, IntPtr value); + [GlEntryPoint("glClearNamedFramebufferuiv")] + _glClearNamedFramebufferuiv_intptr _ClearNamedFramebufferuiv_intptr { get; } + + // --- + + delegate void _glClearPixelLocalStorageuiEXT(int offset, int n, uint[] values); + [GlEntryPoint("glClearPixelLocalStorageuiEXT")] + _glClearPixelLocalStorageuiEXT _ClearPixelLocalStorageuiEXT { get; } + + delegate void _glClearPixelLocalStorageuiEXT_ptr(int offset, int n, void* values); + [GlEntryPoint("glClearPixelLocalStorageuiEXT")] + _glClearPixelLocalStorageuiEXT_ptr _ClearPixelLocalStorageuiEXT_ptr { get; } + + delegate void _glClearPixelLocalStorageuiEXT_intptr(int offset, int n, IntPtr values); + [GlEntryPoint("glClearPixelLocalStorageuiEXT")] + _glClearPixelLocalStorageuiEXT_intptr _ClearPixelLocalStorageuiEXT_intptr { get; } + + // --- + + delegate void _glClearStencil(int s); + [GlEntryPoint("glClearStencil")] + _glClearStencil _ClearStencil { get; } + + // --- + + delegate void _glClearTexImage(uint texture, int level, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glClearTexImage")] + _glClearTexImage _ClearTexImage { get; } + + // --- + + delegate void _glClearTexImageEXT(uint texture, int level, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glClearTexImageEXT")] + _glClearTexImageEXT _ClearTexImageEXT { get; } + + // --- + + delegate void _glClearTexSubImage(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glClearTexSubImage")] + _glClearTexSubImage _ClearTexSubImage { get; } + + // --- + + delegate void _glClearTexSubImageEXT(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glClearTexSubImageEXT")] + _glClearTexSubImageEXT _ClearTexSubImageEXT { get; } + + // --- + + delegate void _glClientActiveTexture(TextureUnit texture); + [GlEntryPoint("glClientActiveTexture")] + _glClientActiveTexture _ClientActiveTexture { get; } + + // --- + + delegate void _glClientActiveTextureARB(TextureUnit texture); + [GlEntryPoint("glClientActiveTextureARB")] + _glClientActiveTextureARB _ClientActiveTextureARB { get; } + + // --- + + delegate void _glClientActiveVertexStreamATI(VertexStreamATI stream); + [GlEntryPoint("glClientActiveVertexStreamATI")] + _glClientActiveVertexStreamATI _ClientActiveVertexStreamATI { get; } + + // --- + + delegate void _glClientAttribDefaultEXT(int mask); + [GlEntryPoint("glClientAttribDefaultEXT")] + _glClientAttribDefaultEXT _ClientAttribDefaultEXT { get; } + + // --- + + delegate void _glClientWaitSemaphoreui64NVX(int fenceObjectCount, uint[] semaphoreArray, UInt64[] fenceValueArray); + [GlEntryPoint("glClientWaitSemaphoreui64NVX")] + _glClientWaitSemaphoreui64NVX _ClientWaitSemaphoreui64NVX { get; } + + delegate void _glClientWaitSemaphoreui64NVX_ptr(int fenceObjectCount, void* semaphoreArray, void* fenceValueArray); + [GlEntryPoint("glClientWaitSemaphoreui64NVX")] + _glClientWaitSemaphoreui64NVX_ptr _ClientWaitSemaphoreui64NVX_ptr { get; } + + delegate void _glClientWaitSemaphoreui64NVX_intptr(int fenceObjectCount, IntPtr semaphoreArray, IntPtr fenceValueArray); + [GlEntryPoint("glClientWaitSemaphoreui64NVX")] + _glClientWaitSemaphoreui64NVX_intptr _ClientWaitSemaphoreui64NVX_intptr { get; } + + // --- + + delegate int _glClientWaitSync(int sync, int flags, UInt64 timeout); + [GlEntryPoint("glClientWaitSync")] + _glClientWaitSync _ClientWaitSync { get; } + + // --- + + delegate int _glClientWaitSyncAPPLE(int sync, int flags, UInt64 timeout); + [GlEntryPoint("glClientWaitSyncAPPLE")] + _glClientWaitSyncAPPLE _ClientWaitSyncAPPLE { get; } + + // --- + + delegate void _glClipControl(ClipControlOrigin origin, ClipControlDepth depth); + [GlEntryPoint("glClipControl")] + _glClipControl _ClipControl { get; } + + // --- + + delegate void _glClipControlEXT(int origin, int depth); + [GlEntryPoint("glClipControlEXT")] + _glClipControlEXT _ClipControlEXT { get; } + + // --- + + delegate void _glClipPlane(ClipPlaneName plane, double[] equation); + [GlEntryPoint("glClipPlane")] + _glClipPlane _ClipPlane { get; } + + delegate void _glClipPlane_ptr(ClipPlaneName plane, void* equation); + [GlEntryPoint("glClipPlane")] + _glClipPlane_ptr _ClipPlane_ptr { get; } + + delegate void _glClipPlane_intptr(ClipPlaneName plane, IntPtr equation); + [GlEntryPoint("glClipPlane")] + _glClipPlane_intptr _ClipPlane_intptr { get; } + + // --- + + delegate void _glClipPlanef(ClipPlaneName p, float[] eqn); + [GlEntryPoint("glClipPlanef")] + _glClipPlanef _ClipPlanef { get; } + + delegate void _glClipPlanef_ptr(ClipPlaneName p, void* eqn); + [GlEntryPoint("glClipPlanef")] + _glClipPlanef_ptr _ClipPlanef_ptr { get; } + + delegate void _glClipPlanef_intptr(ClipPlaneName p, IntPtr eqn); + [GlEntryPoint("glClipPlanef")] + _glClipPlanef_intptr _ClipPlanef_intptr { get; } + + // --- + + delegate void _glClipPlanefIMG(ClipPlaneName p, float[] eqn); + [GlEntryPoint("glClipPlanefIMG")] + _glClipPlanefIMG _ClipPlanefIMG { get; } + + delegate void _glClipPlanefIMG_ptr(ClipPlaneName p, void* eqn); + [GlEntryPoint("glClipPlanefIMG")] + _glClipPlanefIMG_ptr _ClipPlanefIMG_ptr { get; } + + delegate void _glClipPlanefIMG_intptr(ClipPlaneName p, IntPtr eqn); + [GlEntryPoint("glClipPlanefIMG")] + _glClipPlanefIMG_intptr _ClipPlanefIMG_intptr { get; } + + // --- + + delegate void _glClipPlanefOES(ClipPlaneName plane, float[] equation); + [GlEntryPoint("glClipPlanefOES")] + _glClipPlanefOES _ClipPlanefOES { get; } + + delegate void _glClipPlanefOES_ptr(ClipPlaneName plane, void* equation); + [GlEntryPoint("glClipPlanefOES")] + _glClipPlanefOES_ptr _ClipPlanefOES_ptr { get; } + + delegate void _glClipPlanefOES_intptr(ClipPlaneName plane, IntPtr equation); + [GlEntryPoint("glClipPlanefOES")] + _glClipPlanefOES_intptr _ClipPlanefOES_intptr { get; } + + // --- + + delegate void _glClipPlanex(ClipPlaneName plane, float[] equation); + [GlEntryPoint("glClipPlanex")] + _glClipPlanex _ClipPlanex { get; } + + delegate void _glClipPlanex_ptr(ClipPlaneName plane, void* equation); + [GlEntryPoint("glClipPlanex")] + _glClipPlanex_ptr _ClipPlanex_ptr { get; } + + delegate void _glClipPlanex_intptr(ClipPlaneName plane, IntPtr equation); + [GlEntryPoint("glClipPlanex")] + _glClipPlanex_intptr _ClipPlanex_intptr { get; } + + // --- + + delegate void _glClipPlanexIMG(ClipPlaneName p, float[] eqn); + [GlEntryPoint("glClipPlanexIMG")] + _glClipPlanexIMG _ClipPlanexIMG { get; } + + delegate void _glClipPlanexIMG_ptr(ClipPlaneName p, void* eqn); + [GlEntryPoint("glClipPlanexIMG")] + _glClipPlanexIMG_ptr _ClipPlanexIMG_ptr { get; } + + delegate void _glClipPlanexIMG_intptr(ClipPlaneName p, IntPtr eqn); + [GlEntryPoint("glClipPlanexIMG")] + _glClipPlanexIMG_intptr _ClipPlanexIMG_intptr { get; } + + // --- + + delegate void _glClipPlanexOES(ClipPlaneName plane, float[] equation); + [GlEntryPoint("glClipPlanexOES")] + _glClipPlanexOES _ClipPlanexOES { get; } + + delegate void _glClipPlanexOES_ptr(ClipPlaneName plane, void* equation); + [GlEntryPoint("glClipPlanexOES")] + _glClipPlanexOES_ptr _ClipPlanexOES_ptr { get; } + + delegate void _glClipPlanexOES_intptr(ClipPlaneName plane, IntPtr equation); + [GlEntryPoint("glClipPlanexOES")] + _glClipPlanexOES_intptr _ClipPlanexOES_intptr { get; } + + // --- + + delegate void _glColor3b(sbyte red, sbyte green, sbyte blue); + [GlEntryPoint("glColor3b")] + _glColor3b _Color3b { get; } + + // --- + + delegate void _glColor3bv(sbyte[] v); + [GlEntryPoint("glColor3bv")] + _glColor3bv _Color3bv { get; } + + delegate void _glColor3bv_ptr(void* v); + [GlEntryPoint("glColor3bv")] + _glColor3bv_ptr _Color3bv_ptr { get; } + + delegate void _glColor3bv_intptr(IntPtr v); + [GlEntryPoint("glColor3bv")] + _glColor3bv_intptr _Color3bv_intptr { get; } + + // --- + + delegate void _glColor3d(double red, double green, double blue); + [GlEntryPoint("glColor3d")] + _glColor3d _Color3d { get; } + + // --- + + delegate void _glColor3dv(double[] v); + [GlEntryPoint("glColor3dv")] + _glColor3dv _Color3dv { get; } + + delegate void _glColor3dv_ptr(void* v); + [GlEntryPoint("glColor3dv")] + _glColor3dv_ptr _Color3dv_ptr { get; } + + delegate void _glColor3dv_intptr(IntPtr v); + [GlEntryPoint("glColor3dv")] + _glColor3dv_intptr _Color3dv_intptr { get; } + + // --- + + delegate void _glColor3f(float red, float green, float blue); + [GlEntryPoint("glColor3f")] + _glColor3f _Color3f { get; } + + // --- + + delegate void _glColor3fVertex3fSUN(float r, float g, float b, float x, float y, float z); + [GlEntryPoint("glColor3fVertex3fSUN")] + _glColor3fVertex3fSUN _Color3fVertex3fSUN { get; } + + // --- + + delegate void _glColor3fVertex3fvSUN(float[] c, float[] v); + [GlEntryPoint("glColor3fVertex3fvSUN")] + _glColor3fVertex3fvSUN _Color3fVertex3fvSUN { get; } + + delegate void _glColor3fVertex3fvSUN_ptr(void* c, void* v); + [GlEntryPoint("glColor3fVertex3fvSUN")] + _glColor3fVertex3fvSUN_ptr _Color3fVertex3fvSUN_ptr { get; } + + delegate void _glColor3fVertex3fvSUN_intptr(IntPtr c, IntPtr v); + [GlEntryPoint("glColor3fVertex3fvSUN")] + _glColor3fVertex3fvSUN_intptr _Color3fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glColor3fv(float[] v); + [GlEntryPoint("glColor3fv")] + _glColor3fv _Color3fv { get; } + + delegate void _glColor3fv_ptr(void* v); + [GlEntryPoint("glColor3fv")] + _glColor3fv_ptr _Color3fv_ptr { get; } + + delegate void _glColor3fv_intptr(IntPtr v); + [GlEntryPoint("glColor3fv")] + _glColor3fv_intptr _Color3fv_intptr { get; } + + // --- + + delegate void _glColor3hNV(float red, float green, float blue); + [GlEntryPoint("glColor3hNV")] + _glColor3hNV _Color3hNV { get; } + + // --- + + delegate void _glColor3hvNV(float[] v); + [GlEntryPoint("glColor3hvNV")] + _glColor3hvNV _Color3hvNV { get; } + + delegate void _glColor3hvNV_ptr(void* v); + [GlEntryPoint("glColor3hvNV")] + _glColor3hvNV_ptr _Color3hvNV_ptr { get; } + + delegate void _glColor3hvNV_intptr(IntPtr v); + [GlEntryPoint("glColor3hvNV")] + _glColor3hvNV_intptr _Color3hvNV_intptr { get; } + + // --- + + delegate void _glColor3i(int red, int green, int blue); + [GlEntryPoint("glColor3i")] + _glColor3i _Color3i { get; } + + // --- + + delegate void _glColor3iv(int[] v); + [GlEntryPoint("glColor3iv")] + _glColor3iv _Color3iv { get; } + + delegate void _glColor3iv_ptr(void* v); + [GlEntryPoint("glColor3iv")] + _glColor3iv_ptr _Color3iv_ptr { get; } + + delegate void _glColor3iv_intptr(IntPtr v); + [GlEntryPoint("glColor3iv")] + _glColor3iv_intptr _Color3iv_intptr { get; } + + // --- + + delegate void _glColor3s(short red, short green, short blue); + [GlEntryPoint("glColor3s")] + _glColor3s _Color3s { get; } + + // --- + + delegate void _glColor3sv(short[] v); + [GlEntryPoint("glColor3sv")] + _glColor3sv _Color3sv { get; } + + delegate void _glColor3sv_ptr(void* v); + [GlEntryPoint("glColor3sv")] + _glColor3sv_ptr _Color3sv_ptr { get; } + + delegate void _glColor3sv_intptr(IntPtr v); + [GlEntryPoint("glColor3sv")] + _glColor3sv_intptr _Color3sv_intptr { get; } + + // --- + + delegate void _glColor3ub(byte red, byte green, byte blue); + [GlEntryPoint("glColor3ub")] + _glColor3ub _Color3ub { get; } + + // --- + + delegate void _glColor3ubv(byte[] v); + [GlEntryPoint("glColor3ubv")] + _glColor3ubv _Color3ubv { get; } + + delegate void _glColor3ubv_ptr(void* v); + [GlEntryPoint("glColor3ubv")] + _glColor3ubv_ptr _Color3ubv_ptr { get; } + + delegate void _glColor3ubv_intptr(IntPtr v); + [GlEntryPoint("glColor3ubv")] + _glColor3ubv_intptr _Color3ubv_intptr { get; } + + // --- + + delegate void _glColor3ui(uint red, uint green, uint blue); + [GlEntryPoint("glColor3ui")] + _glColor3ui _Color3ui { get; } + + // --- + + delegate void _glColor3uiv(uint[] v); + [GlEntryPoint("glColor3uiv")] + _glColor3uiv _Color3uiv { get; } + + delegate void _glColor3uiv_ptr(void* v); + [GlEntryPoint("glColor3uiv")] + _glColor3uiv_ptr _Color3uiv_ptr { get; } + + delegate void _glColor3uiv_intptr(IntPtr v); + [GlEntryPoint("glColor3uiv")] + _glColor3uiv_intptr _Color3uiv_intptr { get; } + + // --- + + delegate void _glColor3us(ushort red, ushort green, ushort blue); + [GlEntryPoint("glColor3us")] + _glColor3us _Color3us { get; } + + // --- + + delegate void _glColor3usv(ushort[] v); + [GlEntryPoint("glColor3usv")] + _glColor3usv _Color3usv { get; } + + delegate void _glColor3usv_ptr(void* v); + [GlEntryPoint("glColor3usv")] + _glColor3usv_ptr _Color3usv_ptr { get; } + + delegate void _glColor3usv_intptr(IntPtr v); + [GlEntryPoint("glColor3usv")] + _glColor3usv_intptr _Color3usv_intptr { get; } + + // --- + + delegate void _glColor3xOES(float red, float green, float blue); + [GlEntryPoint("glColor3xOES")] + _glColor3xOES _Color3xOES { get; } + + // --- + + delegate void _glColor3xvOES(float[] components); + [GlEntryPoint("glColor3xvOES")] + _glColor3xvOES _Color3xvOES { get; } + + delegate void _glColor3xvOES_ptr(void* components); + [GlEntryPoint("glColor3xvOES")] + _glColor3xvOES_ptr _Color3xvOES_ptr { get; } + + delegate void _glColor3xvOES_intptr(IntPtr components); + [GlEntryPoint("glColor3xvOES")] + _glColor3xvOES_intptr _Color3xvOES_intptr { get; } + + // --- + + delegate void _glColor4b(sbyte red, sbyte green, sbyte blue, sbyte alpha); + [GlEntryPoint("glColor4b")] + _glColor4b _Color4b { get; } + + // --- + + delegate void _glColor4bv(sbyte[] v); + [GlEntryPoint("glColor4bv")] + _glColor4bv _Color4bv { get; } + + delegate void _glColor4bv_ptr(void* v); + [GlEntryPoint("glColor4bv")] + _glColor4bv_ptr _Color4bv_ptr { get; } + + delegate void _glColor4bv_intptr(IntPtr v); + [GlEntryPoint("glColor4bv")] + _glColor4bv_intptr _Color4bv_intptr { get; } + + // --- + + delegate void _glColor4d(double red, double green, double blue, double alpha); + [GlEntryPoint("glColor4d")] + _glColor4d _Color4d { get; } + + // --- + + delegate void _glColor4dv(double[] v); + [GlEntryPoint("glColor4dv")] + _glColor4dv _Color4dv { get; } + + delegate void _glColor4dv_ptr(void* v); + [GlEntryPoint("glColor4dv")] + _glColor4dv_ptr _Color4dv_ptr { get; } + + delegate void _glColor4dv_intptr(IntPtr v); + [GlEntryPoint("glColor4dv")] + _glColor4dv_intptr _Color4dv_intptr { get; } + + // --- + + delegate void _glColor4f(float red, float green, float blue, float alpha); + [GlEntryPoint("glColor4f")] + _glColor4f _Color4f { get; } + + // --- + + delegate void _glColor4fNormal3fVertex3fSUN(float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z); + [GlEntryPoint("glColor4fNormal3fVertex3fSUN")] + _glColor4fNormal3fVertex3fSUN _Color4fNormal3fVertex3fSUN { get; } + + // --- + + delegate void _glColor4fNormal3fVertex3fvSUN(float[] c, float[] n, float[] v); + [GlEntryPoint("glColor4fNormal3fVertex3fvSUN")] + _glColor4fNormal3fVertex3fvSUN _Color4fNormal3fVertex3fvSUN { get; } + + delegate void _glColor4fNormal3fVertex3fvSUN_ptr(void* c, void* n, void* v); + [GlEntryPoint("glColor4fNormal3fVertex3fvSUN")] + _glColor4fNormal3fVertex3fvSUN_ptr _Color4fNormal3fVertex3fvSUN_ptr { get; } + + delegate void _glColor4fNormal3fVertex3fvSUN_intptr(IntPtr c, IntPtr n, IntPtr v); + [GlEntryPoint("glColor4fNormal3fVertex3fvSUN")] + _glColor4fNormal3fVertex3fvSUN_intptr _Color4fNormal3fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glColor4fv(float[] v); + [GlEntryPoint("glColor4fv")] + _glColor4fv _Color4fv { get; } + + delegate void _glColor4fv_ptr(void* v); + [GlEntryPoint("glColor4fv")] + _glColor4fv_ptr _Color4fv_ptr { get; } + + delegate void _glColor4fv_intptr(IntPtr v); + [GlEntryPoint("glColor4fv")] + _glColor4fv_intptr _Color4fv_intptr { get; } + + // --- + + delegate void _glColor4hNV(float red, float green, float blue, float alpha); + [GlEntryPoint("glColor4hNV")] + _glColor4hNV _Color4hNV { get; } + + // --- + + delegate void _glColor4hvNV(float[] v); + [GlEntryPoint("glColor4hvNV")] + _glColor4hvNV _Color4hvNV { get; } + + delegate void _glColor4hvNV_ptr(void* v); + [GlEntryPoint("glColor4hvNV")] + _glColor4hvNV_ptr _Color4hvNV_ptr { get; } + + delegate void _glColor4hvNV_intptr(IntPtr v); + [GlEntryPoint("glColor4hvNV")] + _glColor4hvNV_intptr _Color4hvNV_intptr { get; } + + // --- + + delegate void _glColor4i(int red, int green, int blue, int alpha); + [GlEntryPoint("glColor4i")] + _glColor4i _Color4i { get; } + + // --- + + delegate void _glColor4iv(int[] v); + [GlEntryPoint("glColor4iv")] + _glColor4iv _Color4iv { get; } + + delegate void _glColor4iv_ptr(void* v); + [GlEntryPoint("glColor4iv")] + _glColor4iv_ptr _Color4iv_ptr { get; } + + delegate void _glColor4iv_intptr(IntPtr v); + [GlEntryPoint("glColor4iv")] + _glColor4iv_intptr _Color4iv_intptr { get; } + + // --- + + delegate void _glColor4s(short red, short green, short blue, short alpha); + [GlEntryPoint("glColor4s")] + _glColor4s _Color4s { get; } + + // --- + + delegate void _glColor4sv(short[] v); + [GlEntryPoint("glColor4sv")] + _glColor4sv _Color4sv { get; } + + delegate void _glColor4sv_ptr(void* v); + [GlEntryPoint("glColor4sv")] + _glColor4sv_ptr _Color4sv_ptr { get; } + + delegate void _glColor4sv_intptr(IntPtr v); + [GlEntryPoint("glColor4sv")] + _glColor4sv_intptr _Color4sv_intptr { get; } + + // --- + + delegate void _glColor4ub(byte red, byte green, byte blue, byte alpha); + [GlEntryPoint("glColor4ub")] + _glColor4ub _Color4ub { get; } + + // --- + + delegate void _glColor4ubVertex2fSUN(byte r, byte g, byte b, byte a, float x, float y); + [GlEntryPoint("glColor4ubVertex2fSUN")] + _glColor4ubVertex2fSUN _Color4ubVertex2fSUN { get; } + + // --- + + delegate void _glColor4ubVertex2fvSUN(byte[] c, float[] v); + [GlEntryPoint("glColor4ubVertex2fvSUN")] + _glColor4ubVertex2fvSUN _Color4ubVertex2fvSUN { get; } + + delegate void _glColor4ubVertex2fvSUN_ptr(void* c, void* v); + [GlEntryPoint("glColor4ubVertex2fvSUN")] + _glColor4ubVertex2fvSUN_ptr _Color4ubVertex2fvSUN_ptr { get; } + + delegate void _glColor4ubVertex2fvSUN_intptr(IntPtr c, IntPtr v); + [GlEntryPoint("glColor4ubVertex2fvSUN")] + _glColor4ubVertex2fvSUN_intptr _Color4ubVertex2fvSUN_intptr { get; } + + // --- + + delegate void _glColor4ubVertex3fSUN(byte r, byte g, byte b, byte a, float x, float y, float z); + [GlEntryPoint("glColor4ubVertex3fSUN")] + _glColor4ubVertex3fSUN _Color4ubVertex3fSUN { get; } + + // --- + + delegate void _glColor4ubVertex3fvSUN(byte[] c, float[] v); + [GlEntryPoint("glColor4ubVertex3fvSUN")] + _glColor4ubVertex3fvSUN _Color4ubVertex3fvSUN { get; } + + delegate void _glColor4ubVertex3fvSUN_ptr(void* c, void* v); + [GlEntryPoint("glColor4ubVertex3fvSUN")] + _glColor4ubVertex3fvSUN_ptr _Color4ubVertex3fvSUN_ptr { get; } + + delegate void _glColor4ubVertex3fvSUN_intptr(IntPtr c, IntPtr v); + [GlEntryPoint("glColor4ubVertex3fvSUN")] + _glColor4ubVertex3fvSUN_intptr _Color4ubVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glColor4ubv(byte[] v); + [GlEntryPoint("glColor4ubv")] + _glColor4ubv _Color4ubv { get; } + + delegate void _glColor4ubv_ptr(void* v); + [GlEntryPoint("glColor4ubv")] + _glColor4ubv_ptr _Color4ubv_ptr { get; } + + delegate void _glColor4ubv_intptr(IntPtr v); + [GlEntryPoint("glColor4ubv")] + _glColor4ubv_intptr _Color4ubv_intptr { get; } + + // --- + + delegate void _glColor4ui(uint red, uint green, uint blue, uint alpha); + [GlEntryPoint("glColor4ui")] + _glColor4ui _Color4ui { get; } + + // --- + + delegate void _glColor4uiv(uint[] v); + [GlEntryPoint("glColor4uiv")] + _glColor4uiv _Color4uiv { get; } + + delegate void _glColor4uiv_ptr(void* v); + [GlEntryPoint("glColor4uiv")] + _glColor4uiv_ptr _Color4uiv_ptr { get; } + + delegate void _glColor4uiv_intptr(IntPtr v); + [GlEntryPoint("glColor4uiv")] + _glColor4uiv_intptr _Color4uiv_intptr { get; } + + // --- + + delegate void _glColor4us(ushort red, ushort green, ushort blue, ushort alpha); + [GlEntryPoint("glColor4us")] + _glColor4us _Color4us { get; } + + // --- + + delegate void _glColor4usv(ushort[] v); + [GlEntryPoint("glColor4usv")] + _glColor4usv _Color4usv { get; } + + delegate void _glColor4usv_ptr(void* v); + [GlEntryPoint("glColor4usv")] + _glColor4usv_ptr _Color4usv_ptr { get; } + + delegate void _glColor4usv_intptr(IntPtr v); + [GlEntryPoint("glColor4usv")] + _glColor4usv_intptr _Color4usv_intptr { get; } + + // --- + + delegate void _glColor4x(float red, float green, float blue, float alpha); + [GlEntryPoint("glColor4x")] + _glColor4x _Color4x { get; } + + // --- + + delegate void _glColor4xOES(float red, float green, float blue, float alpha); + [GlEntryPoint("glColor4xOES")] + _glColor4xOES _Color4xOES { get; } + + // --- + + delegate void _glColor4xvOES(float[] components); + [GlEntryPoint("glColor4xvOES")] + _glColor4xvOES _Color4xvOES { get; } + + delegate void _glColor4xvOES_ptr(void* components); + [GlEntryPoint("glColor4xvOES")] + _glColor4xvOES_ptr _Color4xvOES_ptr { get; } + + delegate void _glColor4xvOES_intptr(IntPtr components); + [GlEntryPoint("glColor4xvOES")] + _glColor4xvOES_intptr _Color4xvOES_intptr { get; } + + // --- + + delegate void _glColorFormatNV(int size, int type, int stride); + [GlEntryPoint("glColorFormatNV")] + _glColorFormatNV _ColorFormatNV { get; } + + // --- + + delegate void _glColorFragmentOp1ATI(FragmentOpATI op, uint dst, uint dstMask, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod); + [GlEntryPoint("glColorFragmentOp1ATI")] + _glColorFragmentOp1ATI _ColorFragmentOp1ATI { get; } + + // --- + + delegate void _glColorFragmentOp2ATI(FragmentOpATI op, uint dst, uint dstMask, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod, uint arg2, uint arg2Rep, uint arg2Mod); + [GlEntryPoint("glColorFragmentOp2ATI")] + _glColorFragmentOp2ATI _ColorFragmentOp2ATI { get; } + + // --- + + delegate void _glColorFragmentOp3ATI(FragmentOpATI op, uint dst, uint dstMask, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod, uint arg2, uint arg2Rep, uint arg2Mod, uint arg3, uint arg3Rep, uint arg3Mod); + [GlEntryPoint("glColorFragmentOp3ATI")] + _glColorFragmentOp3ATI _ColorFragmentOp3ATI { get; } + + // --- + + delegate void _glColorMask(bool red, bool green, bool blue, bool alpha); + [GlEntryPoint("glColorMask")] + _glColorMask _ColorMask { get; } + + // --- + + delegate void _glColorMaskIndexedEXT(uint index, bool r, bool g, bool b, bool a); + [GlEntryPoint("glColorMaskIndexedEXT")] + _glColorMaskIndexedEXT _ColorMaskIndexedEXT { get; } + + // --- + + delegate void _glColorMaski(uint index, bool r, bool g, bool b, bool a); + [GlEntryPoint("glColorMaski")] + _glColorMaski _ColorMaski { get; } + + // --- + + delegate void _glColorMaskiEXT(uint index, bool r, bool g, bool b, bool a); + [GlEntryPoint("glColorMaskiEXT")] + _glColorMaskiEXT _ColorMaskiEXT { get; } + + // --- + + delegate void _glColorMaskiOES(uint index, bool r, bool g, bool b, bool a); + [GlEntryPoint("glColorMaskiOES")] + _glColorMaskiOES _ColorMaskiOES { get; } + + // --- + + delegate void _glColorMaterial(MaterialFace face, ColorMaterialParameter mode); + [GlEntryPoint("glColorMaterial")] + _glColorMaterial _ColorMaterial { get; } + + // --- + + delegate void _glColorP3ui(ColorPointerType type, uint color); + [GlEntryPoint("glColorP3ui")] + _glColorP3ui _ColorP3ui { get; } + + // --- + + delegate void _glColorP3uiv(ColorPointerType type, uint[] color); + [GlEntryPoint("glColorP3uiv")] + _glColorP3uiv _ColorP3uiv { get; } + + delegate void _glColorP3uiv_ptr(ColorPointerType type, void* color); + [GlEntryPoint("glColorP3uiv")] + _glColorP3uiv_ptr _ColorP3uiv_ptr { get; } + + delegate void _glColorP3uiv_intptr(ColorPointerType type, IntPtr color); + [GlEntryPoint("glColorP3uiv")] + _glColorP3uiv_intptr _ColorP3uiv_intptr { get; } + + // --- + + delegate void _glColorP4ui(ColorPointerType type, uint color); + [GlEntryPoint("glColorP4ui")] + _glColorP4ui _ColorP4ui { get; } + + // --- + + delegate void _glColorP4uiv(ColorPointerType type, uint[] color); + [GlEntryPoint("glColorP4uiv")] + _glColorP4uiv _ColorP4uiv { get; } + + delegate void _glColorP4uiv_ptr(ColorPointerType type, void* color); + [GlEntryPoint("glColorP4uiv")] + _glColorP4uiv_ptr _ColorP4uiv_ptr { get; } + + delegate void _glColorP4uiv_intptr(ColorPointerType type, IntPtr color); + [GlEntryPoint("glColorP4uiv")] + _glColorP4uiv_intptr _ColorP4uiv_intptr { get; } + + // --- + + delegate void _glColorPointer(int size, ColorPointerType type, int stride, IntPtr pointer); + [GlEntryPoint("glColorPointer")] + _glColorPointer _ColorPointer { get; } + + // --- + + delegate void _glColorPointerEXT(int size, ColorPointerType type, int stride, int count, IntPtr pointer); + [GlEntryPoint("glColorPointerEXT")] + _glColorPointerEXT _ColorPointerEXT { get; } + + // --- + + delegate void _glColorPointerListIBM(int size, ColorPointerType type, int stride, IntPtr* pointer, int ptrstride); + [GlEntryPoint("glColorPointerListIBM")] + _glColorPointerListIBM _ColorPointerListIBM { get; } + + // --- + + delegate void _glColorPointervINTEL(int size, VertexPointerType type, IntPtr* pointer); + [GlEntryPoint("glColorPointervINTEL")] + _glColorPointervINTEL _ColorPointervINTEL { get; } + + // --- + + delegate void _glColorSubTable(ColorTableTarget target, int start, int count, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glColorSubTable")] + _glColorSubTable _ColorSubTable { get; } + + // --- + + delegate void _glColorSubTableEXT(ColorTableTarget target, int start, int count, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glColorSubTableEXT")] + _glColorSubTableEXT _ColorSubTableEXT { get; } + + // --- + + delegate void _glColorTable(ColorTableTarget target, InternalFormat internalformat, int width, PixelFormat format, PixelType type, IntPtr table); + [GlEntryPoint("glColorTable")] + _glColorTable _ColorTable { get; } + + // --- + + delegate void _glColorTableEXT(ColorTableTarget target, InternalFormat internalFormat, int width, PixelFormat format, PixelType type, IntPtr table); + [GlEntryPoint("glColorTableEXT")] + _glColorTableEXT _ColorTableEXT { get; } + + // --- + + delegate void _glColorTableParameterfv(ColorTableTarget target, ColorTableParameterPNameSGI pname, float[] @params); + [GlEntryPoint("glColorTableParameterfv")] + _glColorTableParameterfv _ColorTableParameterfv { get; } + + delegate void _glColorTableParameterfv_ptr(ColorTableTarget target, ColorTableParameterPNameSGI pname, void* @params); + [GlEntryPoint("glColorTableParameterfv")] + _glColorTableParameterfv_ptr _ColorTableParameterfv_ptr { get; } + + delegate void _glColorTableParameterfv_intptr(ColorTableTarget target, ColorTableParameterPNameSGI pname, IntPtr @params); + [GlEntryPoint("glColorTableParameterfv")] + _glColorTableParameterfv_intptr _ColorTableParameterfv_intptr { get; } + + // --- + + delegate void _glColorTableParameterfvSGI(ColorTableTargetSGI target, ColorTableParameterPNameSGI pname, float[] @params); + [GlEntryPoint("glColorTableParameterfvSGI")] + _glColorTableParameterfvSGI _ColorTableParameterfvSGI { get; } + + delegate void _glColorTableParameterfvSGI_ptr(ColorTableTargetSGI target, ColorTableParameterPNameSGI pname, void* @params); + [GlEntryPoint("glColorTableParameterfvSGI")] + _glColorTableParameterfvSGI_ptr _ColorTableParameterfvSGI_ptr { get; } + + delegate void _glColorTableParameterfvSGI_intptr(ColorTableTargetSGI target, ColorTableParameterPNameSGI pname, IntPtr @params); + [GlEntryPoint("glColorTableParameterfvSGI")] + _glColorTableParameterfvSGI_intptr _ColorTableParameterfvSGI_intptr { get; } + + // --- + + delegate void _glColorTableParameteriv(ColorTableTarget target, ColorTableParameterPNameSGI pname, int[] @params); + [GlEntryPoint("glColorTableParameteriv")] + _glColorTableParameteriv _ColorTableParameteriv { get; } + + delegate void _glColorTableParameteriv_ptr(ColorTableTarget target, ColorTableParameterPNameSGI pname, void* @params); + [GlEntryPoint("glColorTableParameteriv")] + _glColorTableParameteriv_ptr _ColorTableParameteriv_ptr { get; } + + delegate void _glColorTableParameteriv_intptr(ColorTableTarget target, ColorTableParameterPNameSGI pname, IntPtr @params); + [GlEntryPoint("glColorTableParameteriv")] + _glColorTableParameteriv_intptr _ColorTableParameteriv_intptr { get; } + + // --- + + delegate void _glColorTableParameterivSGI(ColorTableTargetSGI target, ColorTableParameterPNameSGI pname, int[] @params); + [GlEntryPoint("glColorTableParameterivSGI")] + _glColorTableParameterivSGI _ColorTableParameterivSGI { get; } + + delegate void _glColorTableParameterivSGI_ptr(ColorTableTargetSGI target, ColorTableParameterPNameSGI pname, void* @params); + [GlEntryPoint("glColorTableParameterivSGI")] + _glColorTableParameterivSGI_ptr _ColorTableParameterivSGI_ptr { get; } + + delegate void _glColorTableParameterivSGI_intptr(ColorTableTargetSGI target, ColorTableParameterPNameSGI pname, IntPtr @params); + [GlEntryPoint("glColorTableParameterivSGI")] + _glColorTableParameterivSGI_intptr _ColorTableParameterivSGI_intptr { get; } + + // --- + + delegate void _glColorTableSGI(ColorTableTargetSGI target, InternalFormat internalformat, int width, PixelFormat format, PixelType type, IntPtr table); + [GlEntryPoint("glColorTableSGI")] + _glColorTableSGI _ColorTableSGI { get; } + + // --- + + delegate void _glCombinerInputNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerRegisterNV input, CombinerMappingNV mapping, CombinerComponentUsageNV componentUsage); + [GlEntryPoint("glCombinerInputNV")] + _glCombinerInputNV _CombinerInputNV { get; } + + // --- + + delegate void _glCombinerOutputNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerRegisterNV abOutput, CombinerRegisterNV cdOutput, CombinerRegisterNV sumOutput, CombinerScaleNV scale, CombinerBiasNV bias, bool abDotProduct, bool cdDotProduct, bool muxSum); + [GlEntryPoint("glCombinerOutputNV")] + _glCombinerOutputNV _CombinerOutputNV { get; } + + // --- + + delegate void _glCombinerParameterfNV(CombinerParameterNV pname, float param); + [GlEntryPoint("glCombinerParameterfNV")] + _glCombinerParameterfNV _CombinerParameterfNV { get; } + + // --- + + delegate void _glCombinerParameterfvNV(CombinerParameterNV pname, float[] @params); + [GlEntryPoint("glCombinerParameterfvNV")] + _glCombinerParameterfvNV _CombinerParameterfvNV { get; } + + delegate void _glCombinerParameterfvNV_ptr(CombinerParameterNV pname, void* @params); + [GlEntryPoint("glCombinerParameterfvNV")] + _glCombinerParameterfvNV_ptr _CombinerParameterfvNV_ptr { get; } + + delegate void _glCombinerParameterfvNV_intptr(CombinerParameterNV pname, IntPtr @params); + [GlEntryPoint("glCombinerParameterfvNV")] + _glCombinerParameterfvNV_intptr _CombinerParameterfvNV_intptr { get; } + + // --- + + delegate void _glCombinerParameteriNV(CombinerParameterNV pname, int param); + [GlEntryPoint("glCombinerParameteriNV")] + _glCombinerParameteriNV _CombinerParameteriNV { get; } + + // --- + + delegate void _glCombinerParameterivNV(CombinerParameterNV pname, int[] @params); + [GlEntryPoint("glCombinerParameterivNV")] + _glCombinerParameterivNV _CombinerParameterivNV { get; } + + delegate void _glCombinerParameterivNV_ptr(CombinerParameterNV pname, void* @params); + [GlEntryPoint("glCombinerParameterivNV")] + _glCombinerParameterivNV_ptr _CombinerParameterivNV_ptr { get; } + + delegate void _glCombinerParameterivNV_intptr(CombinerParameterNV pname, IntPtr @params); + [GlEntryPoint("glCombinerParameterivNV")] + _glCombinerParameterivNV_intptr _CombinerParameterivNV_intptr { get; } + + // --- + + delegate void _glCombinerStageParameterfvNV(CombinerStageNV stage, CombinerParameterNV pname, float[] @params); + [GlEntryPoint("glCombinerStageParameterfvNV")] + _glCombinerStageParameterfvNV _CombinerStageParameterfvNV { get; } + + delegate void _glCombinerStageParameterfvNV_ptr(CombinerStageNV stage, CombinerParameterNV pname, void* @params); + [GlEntryPoint("glCombinerStageParameterfvNV")] + _glCombinerStageParameterfvNV_ptr _CombinerStageParameterfvNV_ptr { get; } + + delegate void _glCombinerStageParameterfvNV_intptr(CombinerStageNV stage, CombinerParameterNV pname, IntPtr @params); + [GlEntryPoint("glCombinerStageParameterfvNV")] + _glCombinerStageParameterfvNV_intptr _CombinerStageParameterfvNV_intptr { get; } + + // --- + + delegate void _glCommandListSegmentsNV(uint list, uint segments); + [GlEntryPoint("glCommandListSegmentsNV")] + _glCommandListSegmentsNV _CommandListSegmentsNV { get; } + + // --- + + delegate void _glCompileCommandListNV(uint list); + [GlEntryPoint("glCompileCommandListNV")] + _glCompileCommandListNV _CompileCommandListNV { get; } + + // --- + + delegate void _glCompileShader(uint shader); + [GlEntryPoint("glCompileShader")] + _glCompileShader _CompileShader { get; } + + // --- + + delegate void _glCompileShaderARB(int shaderObj); + [GlEntryPoint("glCompileShaderARB")] + _glCompileShaderARB _CompileShaderARB { get; } + + // --- + + delegate void _glCompileShaderIncludeARB(uint shader, int count, string[] path, int[] length); + [GlEntryPoint("glCompileShaderIncludeARB")] + _glCompileShaderIncludeARB _CompileShaderIncludeARB { get; } + + delegate void _glCompileShaderIncludeARB_ptr(uint shader, int count, void* path, void* length); + [GlEntryPoint("glCompileShaderIncludeARB")] + _glCompileShaderIncludeARB_ptr _CompileShaderIncludeARB_ptr { get; } + + delegate void _glCompileShaderIncludeARB_intptr(uint shader, int count, IntPtr path, IntPtr length); + [GlEntryPoint("glCompileShaderIncludeARB")] + _glCompileShaderIncludeARB_intptr _CompileShaderIncludeARB_intptr { get; } + + // --- + + delegate void _glCompressedMultiTexImage1DEXT(TextureUnit texunit, TextureTarget target, int level, InternalFormat internalformat, int width, int border, int imageSize, IntPtr bits); + [GlEntryPoint("glCompressedMultiTexImage1DEXT")] + _glCompressedMultiTexImage1DEXT _CompressedMultiTexImage1DEXT { get; } + + // --- + + delegate void _glCompressedMultiTexImage2DEXT(TextureUnit texunit, TextureTarget target, int level, InternalFormat internalformat, int width, int height, int border, int imageSize, IntPtr bits); + [GlEntryPoint("glCompressedMultiTexImage2DEXT")] + _glCompressedMultiTexImage2DEXT _CompressedMultiTexImage2DEXT { get; } + + // --- + + delegate void _glCompressedMultiTexImage3DEXT(TextureUnit texunit, TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, int imageSize, IntPtr bits); + [GlEntryPoint("glCompressedMultiTexImage3DEXT")] + _glCompressedMultiTexImage3DEXT _CompressedMultiTexImage3DEXT { get; } + + // --- + + delegate void _glCompressedMultiTexSubImage1DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int width, PixelFormat format, int imageSize, IntPtr bits); + [GlEntryPoint("glCompressedMultiTexSubImage1DEXT")] + _glCompressedMultiTexSubImage1DEXT _CompressedMultiTexSubImage1DEXT { get; } + + // --- + + delegate void _glCompressedMultiTexSubImage2DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, int imageSize, IntPtr bits); + [GlEntryPoint("glCompressedMultiTexSubImage2DEXT")] + _glCompressedMultiTexSubImage2DEXT _CompressedMultiTexSubImage2DEXT { get; } + + // --- + + delegate void _glCompressedMultiTexSubImage3DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, int imageSize, IntPtr bits); + [GlEntryPoint("glCompressedMultiTexSubImage3DEXT")] + _glCompressedMultiTexSubImage3DEXT _CompressedMultiTexSubImage3DEXT { get; } + + // --- + + delegate void _glCompressedTexImage1D(TextureTarget target, int level, InternalFormat internalformat, int width, int border, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexImage1D")] + _glCompressedTexImage1D _CompressedTexImage1D { get; } + + // --- + + delegate void _glCompressedTexImage1DARB(TextureTarget target, int level, InternalFormat internalformat, int width, int border, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexImage1DARB")] + _glCompressedTexImage1DARB _CompressedTexImage1DARB { get; } + + // --- + + delegate void _glCompressedTexImage2D(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int border, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexImage2D")] + _glCompressedTexImage2D _CompressedTexImage2D { get; } + + // --- + + delegate void _glCompressedTexImage2DARB(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int border, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexImage2DARB")] + _glCompressedTexImage2DARB _CompressedTexImage2DARB { get; } + + // --- + + delegate void _glCompressedTexImage3D(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexImage3D")] + _glCompressedTexImage3D _CompressedTexImage3D { get; } + + // --- + + delegate void _glCompressedTexImage3DARB(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexImage3DARB")] + _glCompressedTexImage3DARB _CompressedTexImage3DARB { get; } + + // --- + + delegate void _glCompressedTexImage3DOES(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexImage3DOES")] + _glCompressedTexImage3DOES _CompressedTexImage3DOES { get; } + + // --- + + delegate void _glCompressedTexSubImage1D(TextureTarget target, int level, int xoffset, int width, PixelFormat format, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexSubImage1D")] + _glCompressedTexSubImage1D _CompressedTexSubImage1D { get; } + + // --- + + delegate void _glCompressedTexSubImage1DARB(TextureTarget target, int level, int xoffset, int width, PixelFormat format, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexSubImage1DARB")] + _glCompressedTexSubImage1DARB _CompressedTexSubImage1DARB { get; } + + // --- + + delegate void _glCompressedTexSubImage2D(TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexSubImage2D")] + _glCompressedTexSubImage2D _CompressedTexSubImage2D { get; } + + // --- + + delegate void _glCompressedTexSubImage2DARB(TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexSubImage2DARB")] + _glCompressedTexSubImage2DARB _CompressedTexSubImage2DARB { get; } + + // --- + + delegate void _glCompressedTexSubImage3D(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexSubImage3D")] + _glCompressedTexSubImage3D _CompressedTexSubImage3D { get; } + + // --- + + delegate void _glCompressedTexSubImage3DARB(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexSubImage3DARB")] + _glCompressedTexSubImage3DARB _CompressedTexSubImage3DARB { get; } + + // --- + + delegate void _glCompressedTexSubImage3DOES(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTexSubImage3DOES")] + _glCompressedTexSubImage3DOES _CompressedTexSubImage3DOES { get; } + + // --- + + delegate void _glCompressedTextureImage1DEXT(uint texture, TextureTarget target, int level, InternalFormat internalformat, int width, int border, int imageSize, IntPtr bits); + [GlEntryPoint("glCompressedTextureImage1DEXT")] + _glCompressedTextureImage1DEXT _CompressedTextureImage1DEXT { get; } + + // --- + + delegate void _glCompressedTextureImage2DEXT(uint texture, TextureTarget target, int level, InternalFormat internalformat, int width, int height, int border, int imageSize, IntPtr bits); + [GlEntryPoint("glCompressedTextureImage2DEXT")] + _glCompressedTextureImage2DEXT _CompressedTextureImage2DEXT { get; } + + // --- + + delegate void _glCompressedTextureImage3DEXT(uint texture, TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, int imageSize, IntPtr bits); + [GlEntryPoint("glCompressedTextureImage3DEXT")] + _glCompressedTextureImage3DEXT _CompressedTextureImage3DEXT { get; } + + // --- + + delegate void _glCompressedTextureSubImage1D(uint texture, int level, int xoffset, int width, PixelFormat format, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTextureSubImage1D")] + _glCompressedTextureSubImage1D _CompressedTextureSubImage1D { get; } + + // --- + + delegate void _glCompressedTextureSubImage1DEXT(uint texture, TextureTarget target, int level, int xoffset, int width, PixelFormat format, int imageSize, IntPtr bits); + [GlEntryPoint("glCompressedTextureSubImage1DEXT")] + _glCompressedTextureSubImage1DEXT _CompressedTextureSubImage1DEXT { get; } + + // --- + + delegate void _glCompressedTextureSubImage2D(uint texture, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTextureSubImage2D")] + _glCompressedTextureSubImage2D _CompressedTextureSubImage2D { get; } + + // --- + + delegate void _glCompressedTextureSubImage2DEXT(uint texture, TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, int imageSize, IntPtr bits); + [GlEntryPoint("glCompressedTextureSubImage2DEXT")] + _glCompressedTextureSubImage2DEXT _CompressedTextureSubImage2DEXT { get; } + + // --- + + delegate void _glCompressedTextureSubImage3D(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, int imageSize, IntPtr data); + [GlEntryPoint("glCompressedTextureSubImage3D")] + _glCompressedTextureSubImage3D _CompressedTextureSubImage3D { get; } + + // --- + + delegate void _glCompressedTextureSubImage3DEXT(uint texture, TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, int imageSize, IntPtr bits); + [GlEntryPoint("glCompressedTextureSubImage3DEXT")] + _glCompressedTextureSubImage3DEXT _CompressedTextureSubImage3DEXT { get; } + + // --- + + delegate void _glConservativeRasterParameterfNV(int pname, float value); + [GlEntryPoint("glConservativeRasterParameterfNV")] + _glConservativeRasterParameterfNV _ConservativeRasterParameterfNV { get; } + + // --- + + delegate void _glConservativeRasterParameteriNV(int pname, int param); + [GlEntryPoint("glConservativeRasterParameteriNV")] + _glConservativeRasterParameteriNV _ConservativeRasterParameteriNV { get; } + + // --- + + delegate void _glConvolutionFilter1D(ConvolutionTarget target, InternalFormat internalformat, int width, PixelFormat format, PixelType type, IntPtr image); + [GlEntryPoint("glConvolutionFilter1D")] + _glConvolutionFilter1D _ConvolutionFilter1D { get; } + + // --- + + delegate void _glConvolutionFilter1DEXT(ConvolutionTargetEXT target, InternalFormat internalformat, int width, PixelFormat format, PixelType type, IntPtr image); + [GlEntryPoint("glConvolutionFilter1DEXT")] + _glConvolutionFilter1DEXT _ConvolutionFilter1DEXT { get; } + + // --- + + delegate void _glConvolutionFilter2D(ConvolutionTarget target, InternalFormat internalformat, int width, int height, PixelFormat format, PixelType type, IntPtr image); + [GlEntryPoint("glConvolutionFilter2D")] + _glConvolutionFilter2D _ConvolutionFilter2D { get; } + + // --- + + delegate void _glConvolutionFilter2DEXT(ConvolutionTargetEXT target, InternalFormat internalformat, int width, int height, PixelFormat format, PixelType type, IntPtr image); + [GlEntryPoint("glConvolutionFilter2DEXT")] + _glConvolutionFilter2DEXT _ConvolutionFilter2DEXT { get; } + + // --- + + delegate void _glConvolutionParameterf(ConvolutionTarget target, ConvolutionParameterEXT pname, float @params); + [GlEntryPoint("glConvolutionParameterf")] + _glConvolutionParameterf _ConvolutionParameterf { get; } + + // --- + + delegate void _glConvolutionParameterfEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, float @params); + [GlEntryPoint("glConvolutionParameterfEXT")] + _glConvolutionParameterfEXT _ConvolutionParameterfEXT { get; } + + // --- + + delegate void _glConvolutionParameterfv(ConvolutionTarget target, ConvolutionParameterEXT pname, float[] @params); + [GlEntryPoint("glConvolutionParameterfv")] + _glConvolutionParameterfv _ConvolutionParameterfv { get; } + + delegate void _glConvolutionParameterfv_ptr(ConvolutionTarget target, ConvolutionParameterEXT pname, void* @params); + [GlEntryPoint("glConvolutionParameterfv")] + _glConvolutionParameterfv_ptr _ConvolutionParameterfv_ptr { get; } + + delegate void _glConvolutionParameterfv_intptr(ConvolutionTarget target, ConvolutionParameterEXT pname, IntPtr @params); + [GlEntryPoint("glConvolutionParameterfv")] + _glConvolutionParameterfv_intptr _ConvolutionParameterfv_intptr { get; } + + // --- + + delegate void _glConvolutionParameterfvEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, float[] @params); + [GlEntryPoint("glConvolutionParameterfvEXT")] + _glConvolutionParameterfvEXT _ConvolutionParameterfvEXT { get; } + + delegate void _glConvolutionParameterfvEXT_ptr(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, void* @params); + [GlEntryPoint("glConvolutionParameterfvEXT")] + _glConvolutionParameterfvEXT_ptr _ConvolutionParameterfvEXT_ptr { get; } + + delegate void _glConvolutionParameterfvEXT_intptr(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, IntPtr @params); + [GlEntryPoint("glConvolutionParameterfvEXT")] + _glConvolutionParameterfvEXT_intptr _ConvolutionParameterfvEXT_intptr { get; } + + // --- + + delegate void _glConvolutionParameteri(ConvolutionTarget target, ConvolutionParameterEXT pname, int @params); + [GlEntryPoint("glConvolutionParameteri")] + _glConvolutionParameteri _ConvolutionParameteri { get; } + + // --- + + delegate void _glConvolutionParameteriEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, int @params); + [GlEntryPoint("glConvolutionParameteriEXT")] + _glConvolutionParameteriEXT _ConvolutionParameteriEXT { get; } + + // --- + + delegate void _glConvolutionParameteriv(ConvolutionTarget target, ConvolutionParameterEXT pname, int[] @params); + [GlEntryPoint("glConvolutionParameteriv")] + _glConvolutionParameteriv _ConvolutionParameteriv { get; } + + delegate void _glConvolutionParameteriv_ptr(ConvolutionTarget target, ConvolutionParameterEXT pname, void* @params); + [GlEntryPoint("glConvolutionParameteriv")] + _glConvolutionParameteriv_ptr _ConvolutionParameteriv_ptr { get; } + + delegate void _glConvolutionParameteriv_intptr(ConvolutionTarget target, ConvolutionParameterEXT pname, IntPtr @params); + [GlEntryPoint("glConvolutionParameteriv")] + _glConvolutionParameteriv_intptr _ConvolutionParameteriv_intptr { get; } + + // --- + + delegate void _glConvolutionParameterivEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, int[] @params); + [GlEntryPoint("glConvolutionParameterivEXT")] + _glConvolutionParameterivEXT _ConvolutionParameterivEXT { get; } + + delegate void _glConvolutionParameterivEXT_ptr(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, void* @params); + [GlEntryPoint("glConvolutionParameterivEXT")] + _glConvolutionParameterivEXT_ptr _ConvolutionParameterivEXT_ptr { get; } + + delegate void _glConvolutionParameterivEXT_intptr(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, IntPtr @params); + [GlEntryPoint("glConvolutionParameterivEXT")] + _glConvolutionParameterivEXT_intptr _ConvolutionParameterivEXT_intptr { get; } + + // --- + + delegate void _glConvolutionParameterxOES(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, float param); + [GlEntryPoint("glConvolutionParameterxOES")] + _glConvolutionParameterxOES _ConvolutionParameterxOES { get; } + + // --- + + delegate void _glConvolutionParameterxvOES(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, float[] @params); + [GlEntryPoint("glConvolutionParameterxvOES")] + _glConvolutionParameterxvOES _ConvolutionParameterxvOES { get; } + + delegate void _glConvolutionParameterxvOES_ptr(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, void* @params); + [GlEntryPoint("glConvolutionParameterxvOES")] + _glConvolutionParameterxvOES_ptr _ConvolutionParameterxvOES_ptr { get; } + + delegate void _glConvolutionParameterxvOES_intptr(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, IntPtr @params); + [GlEntryPoint("glConvolutionParameterxvOES")] + _glConvolutionParameterxvOES_intptr _ConvolutionParameterxvOES_intptr { get; } + + // --- + + delegate void _glCopyBufferSubData(CopyBufferSubDataTarget readTarget, CopyBufferSubDataTarget writeTarget, IntPtr readOffset, IntPtr writeOffset, IntPtr size); + [GlEntryPoint("glCopyBufferSubData")] + _glCopyBufferSubData _CopyBufferSubData { get; } + + // --- + + delegate void _glCopyBufferSubDataNV(CopyBufferSubDataTarget readTarget, CopyBufferSubDataTarget writeTarget, IntPtr readOffset, IntPtr writeOffset, IntPtr size); + [GlEntryPoint("glCopyBufferSubDataNV")] + _glCopyBufferSubDataNV _CopyBufferSubDataNV { get; } + + // --- + + delegate void _glCopyColorSubTable(ColorTableTarget target, int start, int x, int y, int width); + [GlEntryPoint("glCopyColorSubTable")] + _glCopyColorSubTable _CopyColorSubTable { get; } + + // --- + + delegate void _glCopyColorSubTableEXT(ColorTableTarget target, int start, int x, int y, int width); + [GlEntryPoint("glCopyColorSubTableEXT")] + _glCopyColorSubTableEXT _CopyColorSubTableEXT { get; } + + // --- + + delegate void _glCopyColorTable(ColorTableTarget target, InternalFormat internalformat, int x, int y, int width); + [GlEntryPoint("glCopyColorTable")] + _glCopyColorTable _CopyColorTable { get; } + + // --- + + delegate void _glCopyColorTableSGI(ColorTableTargetSGI target, InternalFormat internalformat, int x, int y, int width); + [GlEntryPoint("glCopyColorTableSGI")] + _glCopyColorTableSGI _CopyColorTableSGI { get; } + + // --- + + delegate void _glCopyConvolutionFilter1D(ConvolutionTarget target, InternalFormat internalformat, int x, int y, int width); + [GlEntryPoint("glCopyConvolutionFilter1D")] + _glCopyConvolutionFilter1D _CopyConvolutionFilter1D { get; } + + // --- + + delegate void _glCopyConvolutionFilter1DEXT(ConvolutionTargetEXT target, InternalFormat internalformat, int x, int y, int width); + [GlEntryPoint("glCopyConvolutionFilter1DEXT")] + _glCopyConvolutionFilter1DEXT _CopyConvolutionFilter1DEXT { get; } + + // --- + + delegate void _glCopyConvolutionFilter2D(ConvolutionTarget target, InternalFormat internalformat, int x, int y, int width, int height); + [GlEntryPoint("glCopyConvolutionFilter2D")] + _glCopyConvolutionFilter2D _CopyConvolutionFilter2D { get; } + + // --- + + delegate void _glCopyConvolutionFilter2DEXT(ConvolutionTargetEXT target, InternalFormat internalformat, int x, int y, int width, int height); + [GlEntryPoint("glCopyConvolutionFilter2DEXT")] + _glCopyConvolutionFilter2DEXT _CopyConvolutionFilter2DEXT { get; } + + // --- + + delegate void _glCopyImageSubData(uint srcName, CopyImageSubDataTarget srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, CopyImageSubDataTarget dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth); + [GlEntryPoint("glCopyImageSubData")] + _glCopyImageSubData _CopyImageSubData { get; } + + // --- + + delegate void _glCopyImageSubDataEXT(uint srcName, CopyBufferSubDataTarget srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, CopyBufferSubDataTarget dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth); + [GlEntryPoint("glCopyImageSubDataEXT")] + _glCopyImageSubDataEXT _CopyImageSubDataEXT { get; } + + // --- + + delegate void _glCopyImageSubDataNV(uint srcName, CopyBufferSubDataTarget srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, CopyBufferSubDataTarget dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int width, int height, int depth); + [GlEntryPoint("glCopyImageSubDataNV")] + _glCopyImageSubDataNV _CopyImageSubDataNV { get; } + + // --- + + delegate void _glCopyImageSubDataOES(uint srcName, CopyBufferSubDataTarget srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, CopyBufferSubDataTarget dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth); + [GlEntryPoint("glCopyImageSubDataOES")] + _glCopyImageSubDataOES _CopyImageSubDataOES { get; } + + // --- + + delegate void _glCopyMultiTexImage1DEXT(TextureUnit texunit, TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int border); + [GlEntryPoint("glCopyMultiTexImage1DEXT")] + _glCopyMultiTexImage1DEXT _CopyMultiTexImage1DEXT { get; } + + // --- + + delegate void _glCopyMultiTexImage2DEXT(TextureUnit texunit, TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int height, int border); + [GlEntryPoint("glCopyMultiTexImage2DEXT")] + _glCopyMultiTexImage2DEXT _CopyMultiTexImage2DEXT { get; } + + // --- + + delegate void _glCopyMultiTexSubImage1DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int x, int y, int width); + [GlEntryPoint("glCopyMultiTexSubImage1DEXT")] + _glCopyMultiTexSubImage1DEXT _CopyMultiTexSubImage1DEXT { get; } + + // --- + + delegate void _glCopyMultiTexSubImage2DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int yoffset, int x, int y, int width, int height); + [GlEntryPoint("glCopyMultiTexSubImage2DEXT")] + _glCopyMultiTexSubImage2DEXT _CopyMultiTexSubImage2DEXT { get; } + + // --- + + delegate void _glCopyMultiTexSubImage3DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height); + [GlEntryPoint("glCopyMultiTexSubImage3DEXT")] + _glCopyMultiTexSubImage3DEXT _CopyMultiTexSubImage3DEXT { get; } + + // --- + + delegate void _glCopyNamedBufferSubData(uint readBuffer, uint writeBuffer, IntPtr readOffset, IntPtr writeOffset, IntPtr size); + [GlEntryPoint("glCopyNamedBufferSubData")] + _glCopyNamedBufferSubData _CopyNamedBufferSubData { get; } + + // --- + + delegate void _glCopyPathNV(uint resultPath, uint srcPath); + [GlEntryPoint("glCopyPathNV")] + _glCopyPathNV _CopyPathNV { get; } + + // --- + + delegate void _glCopyPixels(int x, int y, int width, int height, PixelCopyType type); + [GlEntryPoint("glCopyPixels")] + _glCopyPixels _CopyPixels { get; } + + // --- + + delegate void _glCopyTexImage1D(TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int border); + [GlEntryPoint("glCopyTexImage1D")] + _glCopyTexImage1D _CopyTexImage1D { get; } + + // --- + + delegate void _glCopyTexImage1DEXT(TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int border); + [GlEntryPoint("glCopyTexImage1DEXT")] + _glCopyTexImage1DEXT _CopyTexImage1DEXT { get; } + + // --- + + delegate void _glCopyTexImage2D(TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int height, int border); + [GlEntryPoint("glCopyTexImage2D")] + _glCopyTexImage2D _CopyTexImage2D { get; } + + // --- + + delegate void _glCopyTexImage2DEXT(TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int height, int border); + [GlEntryPoint("glCopyTexImage2DEXT")] + _glCopyTexImage2DEXT _CopyTexImage2DEXT { get; } + + // --- + + delegate void _glCopyTexSubImage1D(TextureTarget target, int level, int xoffset, int x, int y, int width); + [GlEntryPoint("glCopyTexSubImage1D")] + _glCopyTexSubImage1D _CopyTexSubImage1D { get; } + + // --- + + delegate void _glCopyTexSubImage1DEXT(TextureTarget target, int level, int xoffset, int x, int y, int width); + [GlEntryPoint("glCopyTexSubImage1DEXT")] + _glCopyTexSubImage1DEXT _CopyTexSubImage1DEXT { get; } + + // --- + + delegate void _glCopyTexSubImage2D(TextureTarget target, int level, int xoffset, int yoffset, int x, int y, int width, int height); + [GlEntryPoint("glCopyTexSubImage2D")] + _glCopyTexSubImage2D _CopyTexSubImage2D { get; } + + // --- + + delegate void _glCopyTexSubImage2DEXT(TextureTarget target, int level, int xoffset, int yoffset, int x, int y, int width, int height); + [GlEntryPoint("glCopyTexSubImage2DEXT")] + _glCopyTexSubImage2DEXT _CopyTexSubImage2DEXT { get; } + + // --- + + delegate void _glCopyTexSubImage3D(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height); + [GlEntryPoint("glCopyTexSubImage3D")] + _glCopyTexSubImage3D _CopyTexSubImage3D { get; } + + // --- + + delegate void _glCopyTexSubImage3DEXT(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height); + [GlEntryPoint("glCopyTexSubImage3DEXT")] + _glCopyTexSubImage3DEXT _CopyTexSubImage3DEXT { get; } + + // --- + + delegate void _glCopyTexSubImage3DOES(int target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height); + [GlEntryPoint("glCopyTexSubImage3DOES")] + _glCopyTexSubImage3DOES _CopyTexSubImage3DOES { get; } + + // --- + + delegate void _glCopyTextureImage1DEXT(uint texture, TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int border); + [GlEntryPoint("glCopyTextureImage1DEXT")] + _glCopyTextureImage1DEXT _CopyTextureImage1DEXT { get; } + + // --- + + delegate void _glCopyTextureImage2DEXT(uint texture, TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int height, int border); + [GlEntryPoint("glCopyTextureImage2DEXT")] + _glCopyTextureImage2DEXT _CopyTextureImage2DEXT { get; } + + // --- + + delegate void _glCopyTextureLevelsAPPLE(uint destinationTexture, uint sourceTexture, int sourceBaseLevel, int sourceLevelCount); + [GlEntryPoint("glCopyTextureLevelsAPPLE")] + _glCopyTextureLevelsAPPLE _CopyTextureLevelsAPPLE { get; } + + // --- + + delegate void _glCopyTextureSubImage1D(uint texture, int level, int xoffset, int x, int y, int width); + [GlEntryPoint("glCopyTextureSubImage1D")] + _glCopyTextureSubImage1D _CopyTextureSubImage1D { get; } + + // --- + + delegate void _glCopyTextureSubImage1DEXT(uint texture, TextureTarget target, int level, int xoffset, int x, int y, int width); + [GlEntryPoint("glCopyTextureSubImage1DEXT")] + _glCopyTextureSubImage1DEXT _CopyTextureSubImage1DEXT { get; } + + // --- + + delegate void _glCopyTextureSubImage2D(uint texture, int level, int xoffset, int yoffset, int x, int y, int width, int height); + [GlEntryPoint("glCopyTextureSubImage2D")] + _glCopyTextureSubImage2D _CopyTextureSubImage2D { get; } + + // --- + + delegate void _glCopyTextureSubImage2DEXT(uint texture, TextureTarget target, int level, int xoffset, int yoffset, int x, int y, int width, int height); + [GlEntryPoint("glCopyTextureSubImage2DEXT")] + _glCopyTextureSubImage2DEXT _CopyTextureSubImage2DEXT { get; } + + // --- + + delegate void _glCopyTextureSubImage3D(uint texture, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height); + [GlEntryPoint("glCopyTextureSubImage3D")] + _glCopyTextureSubImage3D _CopyTextureSubImage3D { get; } + + // --- + + delegate void _glCopyTextureSubImage3DEXT(uint texture, TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height); + [GlEntryPoint("glCopyTextureSubImage3DEXT")] + _glCopyTextureSubImage3DEXT _CopyTextureSubImage3DEXT { get; } + + // --- + + delegate void _glCoverFillPathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathCoverMode coverMode, PathTransformType transformType, float[] transformValues); + [GlEntryPoint("glCoverFillPathInstancedNV")] + _glCoverFillPathInstancedNV _CoverFillPathInstancedNV { get; } + + delegate void _glCoverFillPathInstancedNV_ptr(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathCoverMode coverMode, PathTransformType transformType, void* transformValues); + [GlEntryPoint("glCoverFillPathInstancedNV")] + _glCoverFillPathInstancedNV_ptr _CoverFillPathInstancedNV_ptr { get; } + + delegate void _glCoverFillPathInstancedNV_intptr(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathCoverMode coverMode, PathTransformType transformType, IntPtr transformValues); + [GlEntryPoint("glCoverFillPathInstancedNV")] + _glCoverFillPathInstancedNV_intptr _CoverFillPathInstancedNV_intptr { get; } + + // --- + + delegate void _glCoverFillPathNV(uint path, PathCoverMode coverMode); + [GlEntryPoint("glCoverFillPathNV")] + _glCoverFillPathNV _CoverFillPathNV { get; } + + // --- + + delegate void _glCoverStrokePathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathCoverMode coverMode, PathTransformType transformType, float[] transformValues); + [GlEntryPoint("glCoverStrokePathInstancedNV")] + _glCoverStrokePathInstancedNV _CoverStrokePathInstancedNV { get; } + + delegate void _glCoverStrokePathInstancedNV_ptr(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathCoverMode coverMode, PathTransformType transformType, void* transformValues); + [GlEntryPoint("glCoverStrokePathInstancedNV")] + _glCoverStrokePathInstancedNV_ptr _CoverStrokePathInstancedNV_ptr { get; } + + delegate void _glCoverStrokePathInstancedNV_intptr(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathCoverMode coverMode, PathTransformType transformType, IntPtr transformValues); + [GlEntryPoint("glCoverStrokePathInstancedNV")] + _glCoverStrokePathInstancedNV_intptr _CoverStrokePathInstancedNV_intptr { get; } + + // --- + + delegate void _glCoverStrokePathNV(uint path, PathCoverMode coverMode); + [GlEntryPoint("glCoverStrokePathNV")] + _glCoverStrokePathNV _CoverStrokePathNV { get; } + + // --- + + delegate void _glCoverageMaskNV(bool mask); + [GlEntryPoint("glCoverageMaskNV")] + _glCoverageMaskNV _CoverageMaskNV { get; } + + // --- + + delegate void _glCoverageModulationNV(int components); + [GlEntryPoint("glCoverageModulationNV")] + _glCoverageModulationNV _CoverageModulationNV { get; } + + // --- + + delegate void _glCoverageModulationTableNV(int n, float[] v); + [GlEntryPoint("glCoverageModulationTableNV")] + _glCoverageModulationTableNV _CoverageModulationTableNV { get; } + + delegate void _glCoverageModulationTableNV_ptr(int n, void* v); + [GlEntryPoint("glCoverageModulationTableNV")] + _glCoverageModulationTableNV_ptr _CoverageModulationTableNV_ptr { get; } + + delegate void _glCoverageModulationTableNV_intptr(int n, IntPtr v); + [GlEntryPoint("glCoverageModulationTableNV")] + _glCoverageModulationTableNV_intptr _CoverageModulationTableNV_intptr { get; } + + // --- + + delegate void _glCoverageOperationNV(int operation); + [GlEntryPoint("glCoverageOperationNV")] + _glCoverageOperationNV _CoverageOperationNV { get; } + + // --- + + delegate void _glCreateBuffers(int n, uint[] buffers); + [GlEntryPoint("glCreateBuffers")] + _glCreateBuffers _CreateBuffers { get; } + + delegate void _glCreateBuffers_ptr(int n, void* buffers); + [GlEntryPoint("glCreateBuffers")] + _glCreateBuffers_ptr _CreateBuffers_ptr { get; } + + delegate void _glCreateBuffers_intptr(int n, IntPtr buffers); + [GlEntryPoint("glCreateBuffers")] + _glCreateBuffers_intptr _CreateBuffers_intptr { get; } + + // --- + + delegate void _glCreateCommandListsNV(int n, uint[] lists); + [GlEntryPoint("glCreateCommandListsNV")] + _glCreateCommandListsNV _CreateCommandListsNV { get; } + + delegate void _glCreateCommandListsNV_ptr(int n, void* lists); + [GlEntryPoint("glCreateCommandListsNV")] + _glCreateCommandListsNV_ptr _CreateCommandListsNV_ptr { get; } + + delegate void _glCreateCommandListsNV_intptr(int n, IntPtr lists); + [GlEntryPoint("glCreateCommandListsNV")] + _glCreateCommandListsNV_intptr _CreateCommandListsNV_intptr { get; } + + // --- + + delegate void _glCreateFramebuffers(int n, uint[] framebuffers); + [GlEntryPoint("glCreateFramebuffers")] + _glCreateFramebuffers _CreateFramebuffers { get; } + + delegate void _glCreateFramebuffers_ptr(int n, void* framebuffers); + [GlEntryPoint("glCreateFramebuffers")] + _glCreateFramebuffers_ptr _CreateFramebuffers_ptr { get; } + + delegate void _glCreateFramebuffers_intptr(int n, IntPtr framebuffers); + [GlEntryPoint("glCreateFramebuffers")] + _glCreateFramebuffers_intptr _CreateFramebuffers_intptr { get; } + + // --- + + delegate void _glCreateMemoryObjectsEXT(int n, uint[] memoryObjects); + [GlEntryPoint("glCreateMemoryObjectsEXT")] + _glCreateMemoryObjectsEXT _CreateMemoryObjectsEXT { get; } + + delegate void _glCreateMemoryObjectsEXT_ptr(int n, void* memoryObjects); + [GlEntryPoint("glCreateMemoryObjectsEXT")] + _glCreateMemoryObjectsEXT_ptr _CreateMemoryObjectsEXT_ptr { get; } + + delegate void _glCreateMemoryObjectsEXT_intptr(int n, IntPtr memoryObjects); + [GlEntryPoint("glCreateMemoryObjectsEXT")] + _glCreateMemoryObjectsEXT_intptr _CreateMemoryObjectsEXT_intptr { get; } + + // --- + + delegate void _glCreatePerfQueryINTEL(uint queryId, uint[] queryHandle); + [GlEntryPoint("glCreatePerfQueryINTEL")] + _glCreatePerfQueryINTEL _CreatePerfQueryINTEL { get; } + + delegate void _glCreatePerfQueryINTEL_ptr(uint queryId, void* queryHandle); + [GlEntryPoint("glCreatePerfQueryINTEL")] + _glCreatePerfQueryINTEL_ptr _CreatePerfQueryINTEL_ptr { get; } + + delegate void _glCreatePerfQueryINTEL_intptr(uint queryId, IntPtr queryHandle); + [GlEntryPoint("glCreatePerfQueryINTEL")] + _glCreatePerfQueryINTEL_intptr _CreatePerfQueryINTEL_intptr { get; } + + // --- + + delegate uint _glCreateProgram(); + [GlEntryPoint("glCreateProgram")] + _glCreateProgram _CreateProgram { get; } + + // --- + + delegate int _glCreateProgramObjectARB(); + [GlEntryPoint("glCreateProgramObjectARB")] + _glCreateProgramObjectARB _CreateProgramObjectARB { get; } + + // --- + + delegate void _glCreateProgramPipelines(int n, uint[] pipelines); + [GlEntryPoint("glCreateProgramPipelines")] + _glCreateProgramPipelines _CreateProgramPipelines { get; } + + delegate void _glCreateProgramPipelines_ptr(int n, void* pipelines); + [GlEntryPoint("glCreateProgramPipelines")] + _glCreateProgramPipelines_ptr _CreateProgramPipelines_ptr { get; } + + delegate void _glCreateProgramPipelines_intptr(int n, IntPtr pipelines); + [GlEntryPoint("glCreateProgramPipelines")] + _glCreateProgramPipelines_intptr _CreateProgramPipelines_intptr { get; } + + // --- + + delegate uint _glCreateProgressFenceNVX(); + [GlEntryPoint("glCreateProgressFenceNVX")] + _glCreateProgressFenceNVX _CreateProgressFenceNVX { get; } + + // --- + + delegate void _glCreateQueries(QueryTarget target, int n, uint[] ids); + [GlEntryPoint("glCreateQueries")] + _glCreateQueries _CreateQueries { get; } + + delegate void _glCreateQueries_ptr(QueryTarget target, int n, void* ids); + [GlEntryPoint("glCreateQueries")] + _glCreateQueries_ptr _CreateQueries_ptr { get; } + + delegate void _glCreateQueries_intptr(QueryTarget target, int n, IntPtr ids); + [GlEntryPoint("glCreateQueries")] + _glCreateQueries_intptr _CreateQueries_intptr { get; } + + // --- + + delegate void _glCreateRenderbuffers(int n, uint[] renderbuffers); + [GlEntryPoint("glCreateRenderbuffers")] + _glCreateRenderbuffers _CreateRenderbuffers { get; } + + delegate void _glCreateRenderbuffers_ptr(int n, void* renderbuffers); + [GlEntryPoint("glCreateRenderbuffers")] + _glCreateRenderbuffers_ptr _CreateRenderbuffers_ptr { get; } + + delegate void _glCreateRenderbuffers_intptr(int n, IntPtr renderbuffers); + [GlEntryPoint("glCreateRenderbuffers")] + _glCreateRenderbuffers_intptr _CreateRenderbuffers_intptr { get; } + + // --- + + delegate void _glCreateSamplers(int n, uint[] samplers); + [GlEntryPoint("glCreateSamplers")] + _glCreateSamplers _CreateSamplers { get; } + + delegate void _glCreateSamplers_ptr(int n, void* samplers); + [GlEntryPoint("glCreateSamplers")] + _glCreateSamplers_ptr _CreateSamplers_ptr { get; } + + delegate void _glCreateSamplers_intptr(int n, IntPtr samplers); + [GlEntryPoint("glCreateSamplers")] + _glCreateSamplers_intptr _CreateSamplers_intptr { get; } + + // --- + + delegate uint _glCreateShader(ShaderType type); + [GlEntryPoint("glCreateShader")] + _glCreateShader _CreateShader { get; } + + // --- + + delegate int _glCreateShaderObjectARB(ShaderType shaderType); + [GlEntryPoint("glCreateShaderObjectARB")] + _glCreateShaderObjectARB _CreateShaderObjectARB { get; } + + // --- + + delegate uint _glCreateShaderProgramEXT(ShaderType type, string @string); + [GlEntryPoint("glCreateShaderProgramEXT")] + _glCreateShaderProgramEXT _CreateShaderProgramEXT { get; } + + delegate uint _glCreateShaderProgramEXT_ptr(ShaderType type, void* @string); + [GlEntryPoint("glCreateShaderProgramEXT")] + _glCreateShaderProgramEXT_ptr _CreateShaderProgramEXT_ptr { get; } + + delegate uint _glCreateShaderProgramEXT_intptr(ShaderType type, IntPtr @string); + [GlEntryPoint("glCreateShaderProgramEXT")] + _glCreateShaderProgramEXT_intptr _CreateShaderProgramEXT_intptr { get; } + + // --- + + delegate uint _glCreateShaderProgramv(ShaderType type, int count, string[] strings); + [GlEntryPoint("glCreateShaderProgramv")] + _glCreateShaderProgramv _CreateShaderProgramv { get; } + + delegate uint _glCreateShaderProgramv_ptr(ShaderType type, int count, void* strings); + [GlEntryPoint("glCreateShaderProgramv")] + _glCreateShaderProgramv_ptr _CreateShaderProgramv_ptr { get; } + + delegate uint _glCreateShaderProgramv_intptr(ShaderType type, int count, IntPtr strings); + [GlEntryPoint("glCreateShaderProgramv")] + _glCreateShaderProgramv_intptr _CreateShaderProgramv_intptr { get; } + + // --- + + delegate uint _glCreateShaderProgramvEXT(ShaderType type, int count, IntPtr* strings); + [GlEntryPoint("glCreateShaderProgramvEXT")] + _glCreateShaderProgramvEXT _CreateShaderProgramvEXT { get; } + + // --- + + delegate void _glCreateStatesNV(int n, uint[] states); + [GlEntryPoint("glCreateStatesNV")] + _glCreateStatesNV _CreateStatesNV { get; } + + delegate void _glCreateStatesNV_ptr(int n, void* states); + [GlEntryPoint("glCreateStatesNV")] + _glCreateStatesNV_ptr _CreateStatesNV_ptr { get; } + + delegate void _glCreateStatesNV_intptr(int n, IntPtr states); + [GlEntryPoint("glCreateStatesNV")] + _glCreateStatesNV_intptr _CreateStatesNV_intptr { get; } + + // --- + + delegate int _glCreateSyncFromCLeventARB(IntPtr[] context, IntPtr[] @event, int flags); + [GlEntryPoint("glCreateSyncFromCLeventARB")] + _glCreateSyncFromCLeventARB _CreateSyncFromCLeventARB { get; } + + delegate int _glCreateSyncFromCLeventARB_ptr(void* context, void* @event, int flags); + [GlEntryPoint("glCreateSyncFromCLeventARB")] + _glCreateSyncFromCLeventARB_ptr _CreateSyncFromCLeventARB_ptr { get; } + + delegate int _glCreateSyncFromCLeventARB_intptr(IntPtr context, IntPtr @event, int flags); + [GlEntryPoint("glCreateSyncFromCLeventARB")] + _glCreateSyncFromCLeventARB_intptr _CreateSyncFromCLeventARB_intptr { get; } + + // --- + + delegate void _glCreateTextures(TextureTarget target, int n, uint[] textures); + [GlEntryPoint("glCreateTextures")] + _glCreateTextures _CreateTextures { get; } + + delegate void _glCreateTextures_ptr(TextureTarget target, int n, void* textures); + [GlEntryPoint("glCreateTextures")] + _glCreateTextures_ptr _CreateTextures_ptr { get; } + + delegate void _glCreateTextures_intptr(TextureTarget target, int n, IntPtr textures); + [GlEntryPoint("glCreateTextures")] + _glCreateTextures_intptr _CreateTextures_intptr { get; } + + // --- + + delegate void _glCreateTransformFeedbacks(int n, uint[] ids); + [GlEntryPoint("glCreateTransformFeedbacks")] + _glCreateTransformFeedbacks _CreateTransformFeedbacks { get; } + + delegate void _glCreateTransformFeedbacks_ptr(int n, void* ids); + [GlEntryPoint("glCreateTransformFeedbacks")] + _glCreateTransformFeedbacks_ptr _CreateTransformFeedbacks_ptr { get; } + + delegate void _glCreateTransformFeedbacks_intptr(int n, IntPtr ids); + [GlEntryPoint("glCreateTransformFeedbacks")] + _glCreateTransformFeedbacks_intptr _CreateTransformFeedbacks_intptr { get; } + + // --- + + delegate void _glCreateVertexArrays(int n, uint[] arrays); + [GlEntryPoint("glCreateVertexArrays")] + _glCreateVertexArrays _CreateVertexArrays { get; } + + delegate void _glCreateVertexArrays_ptr(int n, void* arrays); + [GlEntryPoint("glCreateVertexArrays")] + _glCreateVertexArrays_ptr _CreateVertexArrays_ptr { get; } + + delegate void _glCreateVertexArrays_intptr(int n, IntPtr arrays); + [GlEntryPoint("glCreateVertexArrays")] + _glCreateVertexArrays_intptr _CreateVertexArrays_intptr { get; } + + // --- + + delegate void _glCullFace(CullFaceMode mode); + [GlEntryPoint("glCullFace")] + _glCullFace _CullFace { get; } + + // --- + + delegate void _glCullParameterdvEXT(CullParameterEXT pname, double[] @params); + [GlEntryPoint("glCullParameterdvEXT")] + _glCullParameterdvEXT _CullParameterdvEXT { get; } + + delegate void _glCullParameterdvEXT_ptr(CullParameterEXT pname, void* @params); + [GlEntryPoint("glCullParameterdvEXT")] + _glCullParameterdvEXT_ptr _CullParameterdvEXT_ptr { get; } + + delegate void _glCullParameterdvEXT_intptr(CullParameterEXT pname, IntPtr @params); + [GlEntryPoint("glCullParameterdvEXT")] + _glCullParameterdvEXT_intptr _CullParameterdvEXT_intptr { get; } + + // --- + + delegate void _glCullParameterfvEXT(CullParameterEXT pname, float[] @params); + [GlEntryPoint("glCullParameterfvEXT")] + _glCullParameterfvEXT _CullParameterfvEXT { get; } + + delegate void _glCullParameterfvEXT_ptr(CullParameterEXT pname, void* @params); + [GlEntryPoint("glCullParameterfvEXT")] + _glCullParameterfvEXT_ptr _CullParameterfvEXT_ptr { get; } + + delegate void _glCullParameterfvEXT_intptr(CullParameterEXT pname, IntPtr @params); + [GlEntryPoint("glCullParameterfvEXT")] + _glCullParameterfvEXT_intptr _CullParameterfvEXT_intptr { get; } + + // --- + + delegate void _glCurrentPaletteMatrixARB(int index); + [GlEntryPoint("glCurrentPaletteMatrixARB")] + _glCurrentPaletteMatrixARB _CurrentPaletteMatrixARB { get; } + + // --- + + delegate void _glCurrentPaletteMatrixOES(uint matrixpaletteindex); + [GlEntryPoint("glCurrentPaletteMatrixOES")] + _glCurrentPaletteMatrixOES _CurrentPaletteMatrixOES { get; } + + // --- + + delegate void _glDebugMessageCallback(GlDebugProc callback, IntPtr userParam); + [GlEntryPoint("glDebugMessageCallback")] + _glDebugMessageCallback _DebugMessageCallback { get; } + + // --- + + delegate void _glDebugMessageCallbackAMD(GlDebugProc callback, IntPtr userParam); + [GlEntryPoint("glDebugMessageCallbackAMD")] + _glDebugMessageCallbackAMD _DebugMessageCallbackAMD { get; } + + // --- + + delegate void _glDebugMessageCallbackARB(GlDebugProc callback, IntPtr userParam); + [GlEntryPoint("glDebugMessageCallbackARB")] + _glDebugMessageCallbackARB _DebugMessageCallbackARB { get; } + + // --- + + delegate void _glDebugMessageCallbackKHR(GlDebugProc callback, IntPtr userParam); + [GlEntryPoint("glDebugMessageCallbackKHR")] + _glDebugMessageCallbackKHR _DebugMessageCallbackKHR { get; } + + // --- + + delegate void _glDebugMessageControl(DebugSource source, DebugType type, DebugSeverity severity, int count, uint[] ids, bool enabled); + [GlEntryPoint("glDebugMessageControl")] + _glDebugMessageControl _DebugMessageControl { get; } + + delegate void _glDebugMessageControl_ptr(DebugSource source, DebugType type, DebugSeverity severity, int count, void* ids, bool enabled); + [GlEntryPoint("glDebugMessageControl")] + _glDebugMessageControl_ptr _DebugMessageControl_ptr { get; } + + delegate void _glDebugMessageControl_intptr(DebugSource source, DebugType type, DebugSeverity severity, int count, IntPtr ids, bool enabled); + [GlEntryPoint("glDebugMessageControl")] + _glDebugMessageControl_intptr _DebugMessageControl_intptr { get; } + + // --- + + delegate void _glDebugMessageControlARB(DebugSource source, DebugType type, DebugSeverity severity, int count, uint[] ids, bool enabled); + [GlEntryPoint("glDebugMessageControlARB")] + _glDebugMessageControlARB _DebugMessageControlARB { get; } + + delegate void _glDebugMessageControlARB_ptr(DebugSource source, DebugType type, DebugSeverity severity, int count, void* ids, bool enabled); + [GlEntryPoint("glDebugMessageControlARB")] + _glDebugMessageControlARB_ptr _DebugMessageControlARB_ptr { get; } + + delegate void _glDebugMessageControlARB_intptr(DebugSource source, DebugType type, DebugSeverity severity, int count, IntPtr ids, bool enabled); + [GlEntryPoint("glDebugMessageControlARB")] + _glDebugMessageControlARB_intptr _DebugMessageControlARB_intptr { get; } + + // --- + + delegate void _glDebugMessageControlKHR(DebugSource source, DebugType type, DebugSeverity severity, int count, uint[] ids, bool enabled); + [GlEntryPoint("glDebugMessageControlKHR")] + _glDebugMessageControlKHR _DebugMessageControlKHR { get; } + + delegate void _glDebugMessageControlKHR_ptr(DebugSource source, DebugType type, DebugSeverity severity, int count, void* ids, bool enabled); + [GlEntryPoint("glDebugMessageControlKHR")] + _glDebugMessageControlKHR_ptr _DebugMessageControlKHR_ptr { get; } + + delegate void _glDebugMessageControlKHR_intptr(DebugSource source, DebugType type, DebugSeverity severity, int count, IntPtr ids, bool enabled); + [GlEntryPoint("glDebugMessageControlKHR")] + _glDebugMessageControlKHR_intptr _DebugMessageControlKHR_intptr { get; } + + // --- + + delegate void _glDebugMessageEnableAMD(int category, DebugSeverity severity, int count, uint[] ids, bool enabled); + [GlEntryPoint("glDebugMessageEnableAMD")] + _glDebugMessageEnableAMD _DebugMessageEnableAMD { get; } + + delegate void _glDebugMessageEnableAMD_ptr(int category, DebugSeverity severity, int count, void* ids, bool enabled); + [GlEntryPoint("glDebugMessageEnableAMD")] + _glDebugMessageEnableAMD_ptr _DebugMessageEnableAMD_ptr { get; } + + delegate void _glDebugMessageEnableAMD_intptr(int category, DebugSeverity severity, int count, IntPtr ids, bool enabled); + [GlEntryPoint("glDebugMessageEnableAMD")] + _glDebugMessageEnableAMD_intptr _DebugMessageEnableAMD_intptr { get; } + + // --- + + delegate void _glDebugMessageInsert(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, string buf); + [GlEntryPoint("glDebugMessageInsert")] + _glDebugMessageInsert _DebugMessageInsert { get; } + + delegate void _glDebugMessageInsert_ptr(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, void* buf); + [GlEntryPoint("glDebugMessageInsert")] + _glDebugMessageInsert_ptr _DebugMessageInsert_ptr { get; } + + delegate void _glDebugMessageInsert_intptr(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, IntPtr buf); + [GlEntryPoint("glDebugMessageInsert")] + _glDebugMessageInsert_intptr _DebugMessageInsert_intptr { get; } + + // --- + + delegate void _glDebugMessageInsertAMD(int category, DebugSeverity severity, uint id, int length, string buf); + [GlEntryPoint("glDebugMessageInsertAMD")] + _glDebugMessageInsertAMD _DebugMessageInsertAMD { get; } + + delegate void _glDebugMessageInsertAMD_ptr(int category, DebugSeverity severity, uint id, int length, void* buf); + [GlEntryPoint("glDebugMessageInsertAMD")] + _glDebugMessageInsertAMD_ptr _DebugMessageInsertAMD_ptr { get; } + + delegate void _glDebugMessageInsertAMD_intptr(int category, DebugSeverity severity, uint id, int length, IntPtr buf); + [GlEntryPoint("glDebugMessageInsertAMD")] + _glDebugMessageInsertAMD_intptr _DebugMessageInsertAMD_intptr { get; } + + // --- + + delegate void _glDebugMessageInsertARB(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, string buf); + [GlEntryPoint("glDebugMessageInsertARB")] + _glDebugMessageInsertARB _DebugMessageInsertARB { get; } + + delegate void _glDebugMessageInsertARB_ptr(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, void* buf); + [GlEntryPoint("glDebugMessageInsertARB")] + _glDebugMessageInsertARB_ptr _DebugMessageInsertARB_ptr { get; } + + delegate void _glDebugMessageInsertARB_intptr(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, IntPtr buf); + [GlEntryPoint("glDebugMessageInsertARB")] + _glDebugMessageInsertARB_intptr _DebugMessageInsertARB_intptr { get; } + + // --- + + delegate void _glDebugMessageInsertKHR(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, string buf); + [GlEntryPoint("glDebugMessageInsertKHR")] + _glDebugMessageInsertKHR _DebugMessageInsertKHR { get; } + + delegate void _glDebugMessageInsertKHR_ptr(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, void* buf); + [GlEntryPoint("glDebugMessageInsertKHR")] + _glDebugMessageInsertKHR_ptr _DebugMessageInsertKHR_ptr { get; } + + delegate void _glDebugMessageInsertKHR_intptr(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, IntPtr buf); + [GlEntryPoint("glDebugMessageInsertKHR")] + _glDebugMessageInsertKHR_intptr _DebugMessageInsertKHR_intptr { get; } + + // --- + + delegate void _glDeformSGIX(int mask); + [GlEntryPoint("glDeformSGIX")] + _glDeformSGIX _DeformSGIX { get; } + + // --- + + delegate void _glDeformationMap3dSGIX(FfdTargetSGIX target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double w1, double w2, int wstride, int worder, double[] points); + [GlEntryPoint("glDeformationMap3dSGIX")] + _glDeformationMap3dSGIX _DeformationMap3dSGIX { get; } + + delegate void _glDeformationMap3dSGIX_ptr(FfdTargetSGIX target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double w1, double w2, int wstride, int worder, void* points); + [GlEntryPoint("glDeformationMap3dSGIX")] + _glDeformationMap3dSGIX_ptr _DeformationMap3dSGIX_ptr { get; } + + delegate void _glDeformationMap3dSGIX_intptr(FfdTargetSGIX target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double w1, double w2, int wstride, int worder, IntPtr points); + [GlEntryPoint("glDeformationMap3dSGIX")] + _glDeformationMap3dSGIX_intptr _DeformationMap3dSGIX_intptr { get; } + + // --- + + delegate void _glDeformationMap3fSGIX(FfdTargetSGIX target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float w1, float w2, int wstride, int worder, float[] points); + [GlEntryPoint("glDeformationMap3fSGIX")] + _glDeformationMap3fSGIX _DeformationMap3fSGIX { get; } + + delegate void _glDeformationMap3fSGIX_ptr(FfdTargetSGIX target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float w1, float w2, int wstride, int worder, void* points); + [GlEntryPoint("glDeformationMap3fSGIX")] + _glDeformationMap3fSGIX_ptr _DeformationMap3fSGIX_ptr { get; } + + delegate void _glDeformationMap3fSGIX_intptr(FfdTargetSGIX target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float w1, float w2, int wstride, int worder, IntPtr points); + [GlEntryPoint("glDeformationMap3fSGIX")] + _glDeformationMap3fSGIX_intptr _DeformationMap3fSGIX_intptr { get; } + + // --- + + delegate void _glDeleteAsyncMarkersSGIX(uint marker, int range); + [GlEntryPoint("glDeleteAsyncMarkersSGIX")] + _glDeleteAsyncMarkersSGIX _DeleteAsyncMarkersSGIX { get; } + + // --- + + delegate void _glDeleteBuffers(int n, uint[] buffers); + [GlEntryPoint("glDeleteBuffers")] + _glDeleteBuffers _DeleteBuffers { get; } + + delegate void _glDeleteBuffers_ptr(int n, void* buffers); + [GlEntryPoint("glDeleteBuffers")] + _glDeleteBuffers_ptr _DeleteBuffers_ptr { get; } + + delegate void _glDeleteBuffers_intptr(int n, IntPtr buffers); + [GlEntryPoint("glDeleteBuffers")] + _glDeleteBuffers_intptr _DeleteBuffers_intptr { get; } + + // --- + + delegate void _glDeleteBuffersARB(int n, uint[] buffers); + [GlEntryPoint("glDeleteBuffersARB")] + _glDeleteBuffersARB _DeleteBuffersARB { get; } + + delegate void _glDeleteBuffersARB_ptr(int n, void* buffers); + [GlEntryPoint("glDeleteBuffersARB")] + _glDeleteBuffersARB_ptr _DeleteBuffersARB_ptr { get; } + + delegate void _glDeleteBuffersARB_intptr(int n, IntPtr buffers); + [GlEntryPoint("glDeleteBuffersARB")] + _glDeleteBuffersARB_intptr _DeleteBuffersARB_intptr { get; } + + // --- + + delegate void _glDeleteCommandListsNV(int n, uint[] lists); + [GlEntryPoint("glDeleteCommandListsNV")] + _glDeleteCommandListsNV _DeleteCommandListsNV { get; } + + delegate void _glDeleteCommandListsNV_ptr(int n, void* lists); + [GlEntryPoint("glDeleteCommandListsNV")] + _glDeleteCommandListsNV_ptr _DeleteCommandListsNV_ptr { get; } + + delegate void _glDeleteCommandListsNV_intptr(int n, IntPtr lists); + [GlEntryPoint("glDeleteCommandListsNV")] + _glDeleteCommandListsNV_intptr _DeleteCommandListsNV_intptr { get; } + + // --- + + delegate void _glDeleteFencesAPPLE(int n, uint[] fences); + [GlEntryPoint("glDeleteFencesAPPLE")] + _glDeleteFencesAPPLE _DeleteFencesAPPLE { get; } + + delegate void _glDeleteFencesAPPLE_ptr(int n, void* fences); + [GlEntryPoint("glDeleteFencesAPPLE")] + _glDeleteFencesAPPLE_ptr _DeleteFencesAPPLE_ptr { get; } + + delegate void _glDeleteFencesAPPLE_intptr(int n, IntPtr fences); + [GlEntryPoint("glDeleteFencesAPPLE")] + _glDeleteFencesAPPLE_intptr _DeleteFencesAPPLE_intptr { get; } + + // --- + + delegate void _glDeleteFencesNV(int n, uint[] fences); + [GlEntryPoint("glDeleteFencesNV")] + _glDeleteFencesNV _DeleteFencesNV { get; } + + delegate void _glDeleteFencesNV_ptr(int n, void* fences); + [GlEntryPoint("glDeleteFencesNV")] + _glDeleteFencesNV_ptr _DeleteFencesNV_ptr { get; } + + delegate void _glDeleteFencesNV_intptr(int n, IntPtr fences); + [GlEntryPoint("glDeleteFencesNV")] + _glDeleteFencesNV_intptr _DeleteFencesNV_intptr { get; } + + // --- + + delegate void _glDeleteFragmentShaderATI(uint id); + [GlEntryPoint("glDeleteFragmentShaderATI")] + _glDeleteFragmentShaderATI _DeleteFragmentShaderATI { get; } + + // --- + + delegate void _glDeleteFramebuffers(int n, uint[] framebuffers); + [GlEntryPoint("glDeleteFramebuffers")] + _glDeleteFramebuffers _DeleteFramebuffers { get; } + + delegate void _glDeleteFramebuffers_ptr(int n, void* framebuffers); + [GlEntryPoint("glDeleteFramebuffers")] + _glDeleteFramebuffers_ptr _DeleteFramebuffers_ptr { get; } + + delegate void _glDeleteFramebuffers_intptr(int n, IntPtr framebuffers); + [GlEntryPoint("glDeleteFramebuffers")] + _glDeleteFramebuffers_intptr _DeleteFramebuffers_intptr { get; } + + // --- + + delegate void _glDeleteFramebuffersEXT(int n, uint[] framebuffers); + [GlEntryPoint("glDeleteFramebuffersEXT")] + _glDeleteFramebuffersEXT _DeleteFramebuffersEXT { get; } + + delegate void _glDeleteFramebuffersEXT_ptr(int n, void* framebuffers); + [GlEntryPoint("glDeleteFramebuffersEXT")] + _glDeleteFramebuffersEXT_ptr _DeleteFramebuffersEXT_ptr { get; } + + delegate void _glDeleteFramebuffersEXT_intptr(int n, IntPtr framebuffers); + [GlEntryPoint("glDeleteFramebuffersEXT")] + _glDeleteFramebuffersEXT_intptr _DeleteFramebuffersEXT_intptr { get; } + + // --- + + delegate void _glDeleteFramebuffersOES(int n, uint[] framebuffers); + [GlEntryPoint("glDeleteFramebuffersOES")] + _glDeleteFramebuffersOES _DeleteFramebuffersOES { get; } + + delegate void _glDeleteFramebuffersOES_ptr(int n, void* framebuffers); + [GlEntryPoint("glDeleteFramebuffersOES")] + _glDeleteFramebuffersOES_ptr _DeleteFramebuffersOES_ptr { get; } + + delegate void _glDeleteFramebuffersOES_intptr(int n, IntPtr framebuffers); + [GlEntryPoint("glDeleteFramebuffersOES")] + _glDeleteFramebuffersOES_intptr _DeleteFramebuffersOES_intptr { get; } + + // --- + + delegate void _glDeleteLists(uint list, int range); + [GlEntryPoint("glDeleteLists")] + _glDeleteLists _DeleteLists { get; } + + // --- + + delegate void _glDeleteMemoryObjectsEXT(int n, uint[] memoryObjects); + [GlEntryPoint("glDeleteMemoryObjectsEXT")] + _glDeleteMemoryObjectsEXT _DeleteMemoryObjectsEXT { get; } + + delegate void _glDeleteMemoryObjectsEXT_ptr(int n, void* memoryObjects); + [GlEntryPoint("glDeleteMemoryObjectsEXT")] + _glDeleteMemoryObjectsEXT_ptr _DeleteMemoryObjectsEXT_ptr { get; } + + delegate void _glDeleteMemoryObjectsEXT_intptr(int n, IntPtr memoryObjects); + [GlEntryPoint("glDeleteMemoryObjectsEXT")] + _glDeleteMemoryObjectsEXT_intptr _DeleteMemoryObjectsEXT_intptr { get; } + + // --- + + delegate void _glDeleteNamedStringARB(int namelen, string name); + [GlEntryPoint("glDeleteNamedStringARB")] + _glDeleteNamedStringARB _DeleteNamedStringARB { get; } + + delegate void _glDeleteNamedStringARB_ptr(int namelen, void* name); + [GlEntryPoint("glDeleteNamedStringARB")] + _glDeleteNamedStringARB_ptr _DeleteNamedStringARB_ptr { get; } + + delegate void _glDeleteNamedStringARB_intptr(int namelen, IntPtr name); + [GlEntryPoint("glDeleteNamedStringARB")] + _glDeleteNamedStringARB_intptr _DeleteNamedStringARB_intptr { get; } + + // --- + + delegate void _glDeleteNamesAMD(int identifier, uint num, uint[] names); + [GlEntryPoint("glDeleteNamesAMD")] + _glDeleteNamesAMD _DeleteNamesAMD { get; } + + delegate void _glDeleteNamesAMD_ptr(int identifier, uint num, void* names); + [GlEntryPoint("glDeleteNamesAMD")] + _glDeleteNamesAMD_ptr _DeleteNamesAMD_ptr { get; } + + delegate void _glDeleteNamesAMD_intptr(int identifier, uint num, IntPtr names); + [GlEntryPoint("glDeleteNamesAMD")] + _glDeleteNamesAMD_intptr _DeleteNamesAMD_intptr { get; } + + // --- + + delegate void _glDeleteObjectARB(int obj); + [GlEntryPoint("glDeleteObjectARB")] + _glDeleteObjectARB _DeleteObjectARB { get; } + + // --- + + delegate void _glDeleteOcclusionQueriesNV(int n, uint[] ids); + [GlEntryPoint("glDeleteOcclusionQueriesNV")] + _glDeleteOcclusionQueriesNV _DeleteOcclusionQueriesNV { get; } + + delegate void _glDeleteOcclusionQueriesNV_ptr(int n, void* ids); + [GlEntryPoint("glDeleteOcclusionQueriesNV")] + _glDeleteOcclusionQueriesNV_ptr _DeleteOcclusionQueriesNV_ptr { get; } + + delegate void _glDeleteOcclusionQueriesNV_intptr(int n, IntPtr ids); + [GlEntryPoint("glDeleteOcclusionQueriesNV")] + _glDeleteOcclusionQueriesNV_intptr _DeleteOcclusionQueriesNV_intptr { get; } + + // --- + + delegate void _glDeletePathsNV(uint path, int range); + [GlEntryPoint("glDeletePathsNV")] + _glDeletePathsNV _DeletePathsNV { get; } + + // --- + + delegate void _glDeletePerfMonitorsAMD(int n, uint[] monitors); + [GlEntryPoint("glDeletePerfMonitorsAMD")] + _glDeletePerfMonitorsAMD _DeletePerfMonitorsAMD { get; } + + delegate void _glDeletePerfMonitorsAMD_ptr(int n, void* monitors); + [GlEntryPoint("glDeletePerfMonitorsAMD")] + _glDeletePerfMonitorsAMD_ptr _DeletePerfMonitorsAMD_ptr { get; } + + delegate void _glDeletePerfMonitorsAMD_intptr(int n, IntPtr monitors); + [GlEntryPoint("glDeletePerfMonitorsAMD")] + _glDeletePerfMonitorsAMD_intptr _DeletePerfMonitorsAMD_intptr { get; } + + // --- + + delegate void _glDeletePerfQueryINTEL(uint queryHandle); + [GlEntryPoint("glDeletePerfQueryINTEL")] + _glDeletePerfQueryINTEL _DeletePerfQueryINTEL { get; } + + // --- + + delegate void _glDeleteProgram(uint program); + [GlEntryPoint("glDeleteProgram")] + _glDeleteProgram _DeleteProgram { get; } + + // --- + + delegate void _glDeleteProgramPipelines(int n, uint[] pipelines); + [GlEntryPoint("glDeleteProgramPipelines")] + _glDeleteProgramPipelines _DeleteProgramPipelines { get; } + + delegate void _glDeleteProgramPipelines_ptr(int n, void* pipelines); + [GlEntryPoint("glDeleteProgramPipelines")] + _glDeleteProgramPipelines_ptr _DeleteProgramPipelines_ptr { get; } + + delegate void _glDeleteProgramPipelines_intptr(int n, IntPtr pipelines); + [GlEntryPoint("glDeleteProgramPipelines")] + _glDeleteProgramPipelines_intptr _DeleteProgramPipelines_intptr { get; } + + // --- + + delegate void _glDeleteProgramPipelinesEXT(int n, uint[] pipelines); + [GlEntryPoint("glDeleteProgramPipelinesEXT")] + _glDeleteProgramPipelinesEXT _DeleteProgramPipelinesEXT { get; } + + delegate void _glDeleteProgramPipelinesEXT_ptr(int n, void* pipelines); + [GlEntryPoint("glDeleteProgramPipelinesEXT")] + _glDeleteProgramPipelinesEXT_ptr _DeleteProgramPipelinesEXT_ptr { get; } + + delegate void _glDeleteProgramPipelinesEXT_intptr(int n, IntPtr pipelines); + [GlEntryPoint("glDeleteProgramPipelinesEXT")] + _glDeleteProgramPipelinesEXT_intptr _DeleteProgramPipelinesEXT_intptr { get; } + + // --- + + delegate void _glDeleteProgramsARB(int n, uint[] programs); + [GlEntryPoint("glDeleteProgramsARB")] + _glDeleteProgramsARB _DeleteProgramsARB { get; } + + delegate void _glDeleteProgramsARB_ptr(int n, void* programs); + [GlEntryPoint("glDeleteProgramsARB")] + _glDeleteProgramsARB_ptr _DeleteProgramsARB_ptr { get; } + + delegate void _glDeleteProgramsARB_intptr(int n, IntPtr programs); + [GlEntryPoint("glDeleteProgramsARB")] + _glDeleteProgramsARB_intptr _DeleteProgramsARB_intptr { get; } + + // --- + + delegate void _glDeleteProgramsNV(int n, uint[] programs); + [GlEntryPoint("glDeleteProgramsNV")] + _glDeleteProgramsNV _DeleteProgramsNV { get; } + + delegate void _glDeleteProgramsNV_ptr(int n, void* programs); + [GlEntryPoint("glDeleteProgramsNV")] + _glDeleteProgramsNV_ptr _DeleteProgramsNV_ptr { get; } + + delegate void _glDeleteProgramsNV_intptr(int n, IntPtr programs); + [GlEntryPoint("glDeleteProgramsNV")] + _glDeleteProgramsNV_intptr _DeleteProgramsNV_intptr { get; } + + // --- + + delegate void _glDeleteQueries(int n, uint[] ids); + [GlEntryPoint("glDeleteQueries")] + _glDeleteQueries _DeleteQueries { get; } + + delegate void _glDeleteQueries_ptr(int n, void* ids); + [GlEntryPoint("glDeleteQueries")] + _glDeleteQueries_ptr _DeleteQueries_ptr { get; } + + delegate void _glDeleteQueries_intptr(int n, IntPtr ids); + [GlEntryPoint("glDeleteQueries")] + _glDeleteQueries_intptr _DeleteQueries_intptr { get; } + + // --- + + delegate void _glDeleteQueriesARB(int n, uint[] ids); + [GlEntryPoint("glDeleteQueriesARB")] + _glDeleteQueriesARB _DeleteQueriesARB { get; } + + delegate void _glDeleteQueriesARB_ptr(int n, void* ids); + [GlEntryPoint("glDeleteQueriesARB")] + _glDeleteQueriesARB_ptr _DeleteQueriesARB_ptr { get; } + + delegate void _glDeleteQueriesARB_intptr(int n, IntPtr ids); + [GlEntryPoint("glDeleteQueriesARB")] + _glDeleteQueriesARB_intptr _DeleteQueriesARB_intptr { get; } + + // --- + + delegate void _glDeleteQueriesEXT(int n, uint[] ids); + [GlEntryPoint("glDeleteQueriesEXT")] + _glDeleteQueriesEXT _DeleteQueriesEXT { get; } + + delegate void _glDeleteQueriesEXT_ptr(int n, void* ids); + [GlEntryPoint("glDeleteQueriesEXT")] + _glDeleteQueriesEXT_ptr _DeleteQueriesEXT_ptr { get; } + + delegate void _glDeleteQueriesEXT_intptr(int n, IntPtr ids); + [GlEntryPoint("glDeleteQueriesEXT")] + _glDeleteQueriesEXT_intptr _DeleteQueriesEXT_intptr { get; } + + // --- + + delegate void _glDeleteQueryResourceTagNV(int n, int[] tagIds); + [GlEntryPoint("glDeleteQueryResourceTagNV")] + _glDeleteQueryResourceTagNV _DeleteQueryResourceTagNV { get; } + + delegate void _glDeleteQueryResourceTagNV_ptr(int n, void* tagIds); + [GlEntryPoint("glDeleteQueryResourceTagNV")] + _glDeleteQueryResourceTagNV_ptr _DeleteQueryResourceTagNV_ptr { get; } + + delegate void _glDeleteQueryResourceTagNV_intptr(int n, IntPtr tagIds); + [GlEntryPoint("glDeleteQueryResourceTagNV")] + _glDeleteQueryResourceTagNV_intptr _DeleteQueryResourceTagNV_intptr { get; } + + // --- + + delegate void _glDeleteRenderbuffers(int n, uint[] renderbuffers); + [GlEntryPoint("glDeleteRenderbuffers")] + _glDeleteRenderbuffers _DeleteRenderbuffers { get; } + + delegate void _glDeleteRenderbuffers_ptr(int n, void* renderbuffers); + [GlEntryPoint("glDeleteRenderbuffers")] + _glDeleteRenderbuffers_ptr _DeleteRenderbuffers_ptr { get; } + + delegate void _glDeleteRenderbuffers_intptr(int n, IntPtr renderbuffers); + [GlEntryPoint("glDeleteRenderbuffers")] + _glDeleteRenderbuffers_intptr _DeleteRenderbuffers_intptr { get; } + + // --- + + delegate void _glDeleteRenderbuffersEXT(int n, uint[] renderbuffers); + [GlEntryPoint("glDeleteRenderbuffersEXT")] + _glDeleteRenderbuffersEXT _DeleteRenderbuffersEXT { get; } + + delegate void _glDeleteRenderbuffersEXT_ptr(int n, void* renderbuffers); + [GlEntryPoint("glDeleteRenderbuffersEXT")] + _glDeleteRenderbuffersEXT_ptr _DeleteRenderbuffersEXT_ptr { get; } + + delegate void _glDeleteRenderbuffersEXT_intptr(int n, IntPtr renderbuffers); + [GlEntryPoint("glDeleteRenderbuffersEXT")] + _glDeleteRenderbuffersEXT_intptr _DeleteRenderbuffersEXT_intptr { get; } + + // --- + + delegate void _glDeleteRenderbuffersOES(int n, uint[] renderbuffers); + [GlEntryPoint("glDeleteRenderbuffersOES")] + _glDeleteRenderbuffersOES _DeleteRenderbuffersOES { get; } + + delegate void _glDeleteRenderbuffersOES_ptr(int n, void* renderbuffers); + [GlEntryPoint("glDeleteRenderbuffersOES")] + _glDeleteRenderbuffersOES_ptr _DeleteRenderbuffersOES_ptr { get; } + + delegate void _glDeleteRenderbuffersOES_intptr(int n, IntPtr renderbuffers); + [GlEntryPoint("glDeleteRenderbuffersOES")] + _glDeleteRenderbuffersOES_intptr _DeleteRenderbuffersOES_intptr { get; } + + // --- + + delegate void _glDeleteSamplers(int count, uint[] samplers); + [GlEntryPoint("glDeleteSamplers")] + _glDeleteSamplers _DeleteSamplers { get; } + + delegate void _glDeleteSamplers_ptr(int count, void* samplers); + [GlEntryPoint("glDeleteSamplers")] + _glDeleteSamplers_ptr _DeleteSamplers_ptr { get; } + + delegate void _glDeleteSamplers_intptr(int count, IntPtr samplers); + [GlEntryPoint("glDeleteSamplers")] + _glDeleteSamplers_intptr _DeleteSamplers_intptr { get; } + + // --- + + delegate void _glDeleteSemaphoresEXT(int n, uint[] semaphores); + [GlEntryPoint("glDeleteSemaphoresEXT")] + _glDeleteSemaphoresEXT _DeleteSemaphoresEXT { get; } + + delegate void _glDeleteSemaphoresEXT_ptr(int n, void* semaphores); + [GlEntryPoint("glDeleteSemaphoresEXT")] + _glDeleteSemaphoresEXT_ptr _DeleteSemaphoresEXT_ptr { get; } + + delegate void _glDeleteSemaphoresEXT_intptr(int n, IntPtr semaphores); + [GlEntryPoint("glDeleteSemaphoresEXT")] + _glDeleteSemaphoresEXT_intptr _DeleteSemaphoresEXT_intptr { get; } + + // --- + + delegate void _glDeleteShader(uint shader); + [GlEntryPoint("glDeleteShader")] + _glDeleteShader _DeleteShader { get; } + + // --- + + delegate void _glDeleteStatesNV(int n, uint[] states); + [GlEntryPoint("glDeleteStatesNV")] + _glDeleteStatesNV _DeleteStatesNV { get; } + + delegate void _glDeleteStatesNV_ptr(int n, void* states); + [GlEntryPoint("glDeleteStatesNV")] + _glDeleteStatesNV_ptr _DeleteStatesNV_ptr { get; } + + delegate void _glDeleteStatesNV_intptr(int n, IntPtr states); + [GlEntryPoint("glDeleteStatesNV")] + _glDeleteStatesNV_intptr _DeleteStatesNV_intptr { get; } + + // --- + + delegate void _glDeleteSync(int sync); + [GlEntryPoint("glDeleteSync")] + _glDeleteSync _DeleteSync { get; } + + // --- + + delegate void _glDeleteSyncAPPLE(int sync); + [GlEntryPoint("glDeleteSyncAPPLE")] + _glDeleteSyncAPPLE _DeleteSyncAPPLE { get; } + + // --- + + delegate void _glDeleteTextures(int n, uint[] textures); + [GlEntryPoint("glDeleteTextures")] + _glDeleteTextures _DeleteTextures { get; } + + delegate void _glDeleteTextures_ptr(int n, void* textures); + [GlEntryPoint("glDeleteTextures")] + _glDeleteTextures_ptr _DeleteTextures_ptr { get; } + + delegate void _glDeleteTextures_intptr(int n, IntPtr textures); + [GlEntryPoint("glDeleteTextures")] + _glDeleteTextures_intptr _DeleteTextures_intptr { get; } + + // --- + + delegate void _glDeleteTexturesEXT(int n, uint[] textures); + [GlEntryPoint("glDeleteTexturesEXT")] + _glDeleteTexturesEXT _DeleteTexturesEXT { get; } + + delegate void _glDeleteTexturesEXT_ptr(int n, void* textures); + [GlEntryPoint("glDeleteTexturesEXT")] + _glDeleteTexturesEXT_ptr _DeleteTexturesEXT_ptr { get; } + + delegate void _glDeleteTexturesEXT_intptr(int n, IntPtr textures); + [GlEntryPoint("glDeleteTexturesEXT")] + _glDeleteTexturesEXT_intptr _DeleteTexturesEXT_intptr { get; } + + // --- + + delegate void _glDeleteTransformFeedbacks(int n, uint[] ids); + [GlEntryPoint("glDeleteTransformFeedbacks")] + _glDeleteTransformFeedbacks _DeleteTransformFeedbacks { get; } + + delegate void _glDeleteTransformFeedbacks_ptr(int n, void* ids); + [GlEntryPoint("glDeleteTransformFeedbacks")] + _glDeleteTransformFeedbacks_ptr _DeleteTransformFeedbacks_ptr { get; } + + delegate void _glDeleteTransformFeedbacks_intptr(int n, IntPtr ids); + [GlEntryPoint("glDeleteTransformFeedbacks")] + _glDeleteTransformFeedbacks_intptr _DeleteTransformFeedbacks_intptr { get; } + + // --- + + delegate void _glDeleteTransformFeedbacksNV(int n, uint[] ids); + [GlEntryPoint("glDeleteTransformFeedbacksNV")] + _glDeleteTransformFeedbacksNV _DeleteTransformFeedbacksNV { get; } + + delegate void _glDeleteTransformFeedbacksNV_ptr(int n, void* ids); + [GlEntryPoint("glDeleteTransformFeedbacksNV")] + _glDeleteTransformFeedbacksNV_ptr _DeleteTransformFeedbacksNV_ptr { get; } + + delegate void _glDeleteTransformFeedbacksNV_intptr(int n, IntPtr ids); + [GlEntryPoint("glDeleteTransformFeedbacksNV")] + _glDeleteTransformFeedbacksNV_intptr _DeleteTransformFeedbacksNV_intptr { get; } + + // --- + + delegate void _glDeleteVertexArrays(int n, uint[] arrays); + [GlEntryPoint("glDeleteVertexArrays")] + _glDeleteVertexArrays _DeleteVertexArrays { get; } + + delegate void _glDeleteVertexArrays_ptr(int n, void* arrays); + [GlEntryPoint("glDeleteVertexArrays")] + _glDeleteVertexArrays_ptr _DeleteVertexArrays_ptr { get; } + + delegate void _glDeleteVertexArrays_intptr(int n, IntPtr arrays); + [GlEntryPoint("glDeleteVertexArrays")] + _glDeleteVertexArrays_intptr _DeleteVertexArrays_intptr { get; } + + // --- + + delegate void _glDeleteVertexArraysAPPLE(int n, uint[] arrays); + [GlEntryPoint("glDeleteVertexArraysAPPLE")] + _glDeleteVertexArraysAPPLE _DeleteVertexArraysAPPLE { get; } + + delegate void _glDeleteVertexArraysAPPLE_ptr(int n, void* arrays); + [GlEntryPoint("glDeleteVertexArraysAPPLE")] + _glDeleteVertexArraysAPPLE_ptr _DeleteVertexArraysAPPLE_ptr { get; } + + delegate void _glDeleteVertexArraysAPPLE_intptr(int n, IntPtr arrays); + [GlEntryPoint("glDeleteVertexArraysAPPLE")] + _glDeleteVertexArraysAPPLE_intptr _DeleteVertexArraysAPPLE_intptr { get; } + + // --- + + delegate void _glDeleteVertexArraysOES(int n, uint[] arrays); + [GlEntryPoint("glDeleteVertexArraysOES")] + _glDeleteVertexArraysOES _DeleteVertexArraysOES { get; } + + delegate void _glDeleteVertexArraysOES_ptr(int n, void* arrays); + [GlEntryPoint("glDeleteVertexArraysOES")] + _glDeleteVertexArraysOES_ptr _DeleteVertexArraysOES_ptr { get; } + + delegate void _glDeleteVertexArraysOES_intptr(int n, IntPtr arrays); + [GlEntryPoint("glDeleteVertexArraysOES")] + _glDeleteVertexArraysOES_intptr _DeleteVertexArraysOES_intptr { get; } + + // --- + + delegate void _glDeleteVertexShaderEXT(uint id); + [GlEntryPoint("glDeleteVertexShaderEXT")] + _glDeleteVertexShaderEXT _DeleteVertexShaderEXT { get; } + + // --- + + delegate void _glDepthBoundsEXT(double zmin, double zmax); + [GlEntryPoint("glDepthBoundsEXT")] + _glDepthBoundsEXT _DepthBoundsEXT { get; } + + // --- + + delegate void _glDepthBoundsdNV(double zmin, double zmax); + [GlEntryPoint("glDepthBoundsdNV")] + _glDepthBoundsdNV _DepthBoundsdNV { get; } + + // --- + + delegate void _glDepthFunc(DepthFunction func); + [GlEntryPoint("glDepthFunc")] + _glDepthFunc _DepthFunc { get; } + + // --- + + delegate void _glDepthMask(bool flag); + [GlEntryPoint("glDepthMask")] + _glDepthMask _DepthMask { get; } + + // --- + + delegate void _glDepthRange(double n, double f); + [GlEntryPoint("glDepthRange")] + _glDepthRange _DepthRange { get; } + + // --- + + delegate void _glDepthRangeArraydvNV(uint first, int count, double[] v); + [GlEntryPoint("glDepthRangeArraydvNV")] + _glDepthRangeArraydvNV _DepthRangeArraydvNV { get; } + + delegate void _glDepthRangeArraydvNV_ptr(uint first, int count, void* v); + [GlEntryPoint("glDepthRangeArraydvNV")] + _glDepthRangeArraydvNV_ptr _DepthRangeArraydvNV_ptr { get; } + + delegate void _glDepthRangeArraydvNV_intptr(uint first, int count, IntPtr v); + [GlEntryPoint("glDepthRangeArraydvNV")] + _glDepthRangeArraydvNV_intptr _DepthRangeArraydvNV_intptr { get; } + + // --- + + delegate void _glDepthRangeArrayfvNV(uint first, int count, float[] v); + [GlEntryPoint("glDepthRangeArrayfvNV")] + _glDepthRangeArrayfvNV _DepthRangeArrayfvNV { get; } + + delegate void _glDepthRangeArrayfvNV_ptr(uint first, int count, void* v); + [GlEntryPoint("glDepthRangeArrayfvNV")] + _glDepthRangeArrayfvNV_ptr _DepthRangeArrayfvNV_ptr { get; } + + delegate void _glDepthRangeArrayfvNV_intptr(uint first, int count, IntPtr v); + [GlEntryPoint("glDepthRangeArrayfvNV")] + _glDepthRangeArrayfvNV_intptr _DepthRangeArrayfvNV_intptr { get; } + + // --- + + delegate void _glDepthRangeArrayfvOES(uint first, int count, float[] v); + [GlEntryPoint("glDepthRangeArrayfvOES")] + _glDepthRangeArrayfvOES _DepthRangeArrayfvOES { get; } + + delegate void _glDepthRangeArrayfvOES_ptr(uint first, int count, void* v); + [GlEntryPoint("glDepthRangeArrayfvOES")] + _glDepthRangeArrayfvOES_ptr _DepthRangeArrayfvOES_ptr { get; } + + delegate void _glDepthRangeArrayfvOES_intptr(uint first, int count, IntPtr v); + [GlEntryPoint("glDepthRangeArrayfvOES")] + _glDepthRangeArrayfvOES_intptr _DepthRangeArrayfvOES_intptr { get; } + + // --- + + delegate void _glDepthRangeArrayv(uint first, int count, double[] v); + [GlEntryPoint("glDepthRangeArrayv")] + _glDepthRangeArrayv _DepthRangeArrayv { get; } + + delegate void _glDepthRangeArrayv_ptr(uint first, int count, void* v); + [GlEntryPoint("glDepthRangeArrayv")] + _glDepthRangeArrayv_ptr _DepthRangeArrayv_ptr { get; } + + delegate void _glDepthRangeArrayv_intptr(uint first, int count, IntPtr v); + [GlEntryPoint("glDepthRangeArrayv")] + _glDepthRangeArrayv_intptr _DepthRangeArrayv_intptr { get; } + + // --- + + delegate void _glDepthRangeIndexed(uint index, double n, double f); + [GlEntryPoint("glDepthRangeIndexed")] + _glDepthRangeIndexed _DepthRangeIndexed { get; } + + // --- + + delegate void _glDepthRangeIndexeddNV(uint index, double n, double f); + [GlEntryPoint("glDepthRangeIndexeddNV")] + _glDepthRangeIndexeddNV _DepthRangeIndexeddNV { get; } + + // --- + + delegate void _glDepthRangeIndexedfNV(uint index, float n, float f); + [GlEntryPoint("glDepthRangeIndexedfNV")] + _glDepthRangeIndexedfNV _DepthRangeIndexedfNV { get; } + + // --- + + delegate void _glDepthRangeIndexedfOES(uint index, float n, float f); + [GlEntryPoint("glDepthRangeIndexedfOES")] + _glDepthRangeIndexedfOES _DepthRangeIndexedfOES { get; } + + // --- + + delegate void _glDepthRangedNV(double zNear, double zFar); + [GlEntryPoint("glDepthRangedNV")] + _glDepthRangedNV _DepthRangedNV { get; } + + // --- + + delegate void _glDepthRangef(float n, float f); + [GlEntryPoint("glDepthRangef")] + _glDepthRangef _DepthRangef { get; } + + // --- + + delegate void _glDepthRangefOES(float n, float f); + [GlEntryPoint("glDepthRangefOES")] + _glDepthRangefOES _DepthRangefOES { get; } + + // --- + + delegate void _glDepthRangex(float n, float f); + [GlEntryPoint("glDepthRangex")] + _glDepthRangex _DepthRangex { get; } + + // --- + + delegate void _glDepthRangexOES(float n, float f); + [GlEntryPoint("glDepthRangexOES")] + _glDepthRangexOES _DepthRangexOES { get; } + + // --- + + delegate void _glDetachObjectARB(int containerObj, int attachedObj); + [GlEntryPoint("glDetachObjectARB")] + _glDetachObjectARB _DetachObjectARB { get; } + + // --- + + delegate void _glDetachShader(uint program, uint shader); + [GlEntryPoint("glDetachShader")] + _glDetachShader _DetachShader { get; } + + // --- + + delegate void _glDetailTexFuncSGIS(TextureTarget target, int n, float[] points); + [GlEntryPoint("glDetailTexFuncSGIS")] + _glDetailTexFuncSGIS _DetailTexFuncSGIS { get; } + + delegate void _glDetailTexFuncSGIS_ptr(TextureTarget target, int n, void* points); + [GlEntryPoint("glDetailTexFuncSGIS")] + _glDetailTexFuncSGIS_ptr _DetailTexFuncSGIS_ptr { get; } + + delegate void _glDetailTexFuncSGIS_intptr(TextureTarget target, int n, IntPtr points); + [GlEntryPoint("glDetailTexFuncSGIS")] + _glDetailTexFuncSGIS_intptr _DetailTexFuncSGIS_intptr { get; } + + // --- + + delegate void _glDisable(EnableCap cap); + [GlEntryPoint("glDisable")] + _glDisable _Disable { get; } + + // --- + + delegate void _glDisableClientState(EnableCap array); + [GlEntryPoint("glDisableClientState")] + _glDisableClientState _DisableClientState { get; } + + // --- + + delegate void _glDisableClientStateIndexedEXT(EnableCap array, uint index); + [GlEntryPoint("glDisableClientStateIndexedEXT")] + _glDisableClientStateIndexedEXT _DisableClientStateIndexedEXT { get; } + + // --- + + delegate void _glDisableClientStateiEXT(EnableCap array, uint index); + [GlEntryPoint("glDisableClientStateiEXT")] + _glDisableClientStateiEXT _DisableClientStateiEXT { get; } + + // --- + + delegate void _glDisableDriverControlQCOM(uint driverControl); + [GlEntryPoint("glDisableDriverControlQCOM")] + _glDisableDriverControlQCOM _DisableDriverControlQCOM { get; } + + // --- + + delegate void _glDisableIndexedEXT(EnableCap target, uint index); + [GlEntryPoint("glDisableIndexedEXT")] + _glDisableIndexedEXT _DisableIndexedEXT { get; } + + // --- + + delegate void _glDisableVariantClientStateEXT(uint id); + [GlEntryPoint("glDisableVariantClientStateEXT")] + _glDisableVariantClientStateEXT _DisableVariantClientStateEXT { get; } + + // --- + + delegate void _glDisableVertexArrayAttrib(uint vaobj, uint index); + [GlEntryPoint("glDisableVertexArrayAttrib")] + _glDisableVertexArrayAttrib _DisableVertexArrayAttrib { get; } + + // --- + + delegate void _glDisableVertexArrayAttribEXT(uint vaobj, uint index); + [GlEntryPoint("glDisableVertexArrayAttribEXT")] + _glDisableVertexArrayAttribEXT _DisableVertexArrayAttribEXT { get; } + + // --- + + delegate void _glDisableVertexArrayEXT(uint vaobj, EnableCap array); + [GlEntryPoint("glDisableVertexArrayEXT")] + _glDisableVertexArrayEXT _DisableVertexArrayEXT { get; } + + // --- + + delegate void _glDisableVertexAttribAPPLE(uint index, int pname); + [GlEntryPoint("glDisableVertexAttribAPPLE")] + _glDisableVertexAttribAPPLE _DisableVertexAttribAPPLE { get; } + + // --- + + delegate void _glDisableVertexAttribArray(uint index); + [GlEntryPoint("glDisableVertexAttribArray")] + _glDisableVertexAttribArray _DisableVertexAttribArray { get; } + + // --- + + delegate void _glDisableVertexAttribArrayARB(uint index); + [GlEntryPoint("glDisableVertexAttribArrayARB")] + _glDisableVertexAttribArrayARB _DisableVertexAttribArrayARB { get; } + + // --- + + delegate void _glDisablei(EnableCap target, uint index); + [GlEntryPoint("glDisablei")] + _glDisablei _Disablei { get; } + + // --- + + delegate void _glDisableiEXT(EnableCap target, uint index); + [GlEntryPoint("glDisableiEXT")] + _glDisableiEXT _DisableiEXT { get; } + + // --- + + delegate void _glDisableiNV(EnableCap target, uint index); + [GlEntryPoint("glDisableiNV")] + _glDisableiNV _DisableiNV { get; } + + // --- + + delegate void _glDisableiOES(EnableCap target, uint index); + [GlEntryPoint("glDisableiOES")] + _glDisableiOES _DisableiOES { get; } + + // --- + + delegate void _glDiscardFramebufferEXT(FramebufferTarget target, int numAttachments, InvalidateFramebufferAttachment[] attachments); + [GlEntryPoint("glDiscardFramebufferEXT")] + _glDiscardFramebufferEXT _DiscardFramebufferEXT { get; } + + delegate void _glDiscardFramebufferEXT_ptr(FramebufferTarget target, int numAttachments, void* attachments); + [GlEntryPoint("glDiscardFramebufferEXT")] + _glDiscardFramebufferEXT_ptr _DiscardFramebufferEXT_ptr { get; } + + delegate void _glDiscardFramebufferEXT_intptr(FramebufferTarget target, int numAttachments, IntPtr attachments); + [GlEntryPoint("glDiscardFramebufferEXT")] + _glDiscardFramebufferEXT_intptr _DiscardFramebufferEXT_intptr { get; } + + // --- + + delegate void _glDispatchCompute(uint num_groups_x, uint num_groups_y, uint num_groups_z); + [GlEntryPoint("glDispatchCompute")] + _glDispatchCompute _DispatchCompute { get; } + + // --- + + delegate void _glDispatchComputeGroupSizeARB(uint num_groups_x, uint num_groups_y, uint num_groups_z, uint group_size_x, uint group_size_y, uint group_size_z); + [GlEntryPoint("glDispatchComputeGroupSizeARB")] + _glDispatchComputeGroupSizeARB _DispatchComputeGroupSizeARB { get; } + + // --- + + delegate void _glDispatchComputeIndirect(IntPtr indirect); + [GlEntryPoint("glDispatchComputeIndirect")] + _glDispatchComputeIndirect _DispatchComputeIndirect { get; } + + // --- + + delegate void _glDrawArrays(PrimitiveType mode, int first, int count); + [GlEntryPoint("glDrawArrays")] + _glDrawArrays _DrawArrays { get; } + + // --- + + delegate void _glDrawArraysEXT(PrimitiveType mode, int first, int count); + [GlEntryPoint("glDrawArraysEXT")] + _glDrawArraysEXT _DrawArraysEXT { get; } + + // --- + + delegate void _glDrawArraysIndirect(PrimitiveType mode, IntPtr indirect); + [GlEntryPoint("glDrawArraysIndirect")] + _glDrawArraysIndirect _DrawArraysIndirect { get; } + + // --- + + delegate void _glDrawArraysInstanced(PrimitiveType mode, int first, int count, int instancecount); + [GlEntryPoint("glDrawArraysInstanced")] + _glDrawArraysInstanced _DrawArraysInstanced { get; } + + // --- + + delegate void _glDrawArraysInstancedANGLE(PrimitiveType mode, int first, int count, int primcount); + [GlEntryPoint("glDrawArraysInstancedANGLE")] + _glDrawArraysInstancedANGLE _DrawArraysInstancedANGLE { get; } + + // --- + + delegate void _glDrawArraysInstancedARB(PrimitiveType mode, int first, int count, int primcount); + [GlEntryPoint("glDrawArraysInstancedARB")] + _glDrawArraysInstancedARB _DrawArraysInstancedARB { get; } + + // --- + + delegate void _glDrawArraysInstancedBaseInstance(PrimitiveType mode, int first, int count, int instancecount, uint baseinstance); + [GlEntryPoint("glDrawArraysInstancedBaseInstance")] + _glDrawArraysInstancedBaseInstance _DrawArraysInstancedBaseInstance { get; } + + // --- + + delegate void _glDrawArraysInstancedBaseInstanceEXT(PrimitiveType mode, int first, int count, int instancecount, uint baseinstance); + [GlEntryPoint("glDrawArraysInstancedBaseInstanceEXT")] + _glDrawArraysInstancedBaseInstanceEXT _DrawArraysInstancedBaseInstanceEXT { get; } + + // --- + + delegate void _glDrawArraysInstancedEXT(PrimitiveType mode, int start, int count, int primcount); + [GlEntryPoint("glDrawArraysInstancedEXT")] + _glDrawArraysInstancedEXT _DrawArraysInstancedEXT { get; } + + // --- + + delegate void _glDrawArraysInstancedNV(PrimitiveType mode, int first, int count, int primcount); + [GlEntryPoint("glDrawArraysInstancedNV")] + _glDrawArraysInstancedNV _DrawArraysInstancedNV { get; } + + // --- + + delegate void _glDrawBuffer(DrawBufferMode buf); + [GlEntryPoint("glDrawBuffer")] + _glDrawBuffer _DrawBuffer { get; } + + // --- + + delegate void _glDrawBuffers(int n, DrawBufferMode[] bufs); + [GlEntryPoint("glDrawBuffers")] + _glDrawBuffers _DrawBuffers { get; } + + delegate void _glDrawBuffers_ptr(int n, void* bufs); + [GlEntryPoint("glDrawBuffers")] + _glDrawBuffers_ptr _DrawBuffers_ptr { get; } + + delegate void _glDrawBuffers_intptr(int n, IntPtr bufs); + [GlEntryPoint("glDrawBuffers")] + _glDrawBuffers_intptr _DrawBuffers_intptr { get; } + + // --- + + delegate void _glDrawBuffersARB(int n, DrawBufferMode[] bufs); + [GlEntryPoint("glDrawBuffersARB")] + _glDrawBuffersARB _DrawBuffersARB { get; } + + delegate void _glDrawBuffersARB_ptr(int n, void* bufs); + [GlEntryPoint("glDrawBuffersARB")] + _glDrawBuffersARB_ptr _DrawBuffersARB_ptr { get; } + + delegate void _glDrawBuffersARB_intptr(int n, IntPtr bufs); + [GlEntryPoint("glDrawBuffersARB")] + _glDrawBuffersARB_intptr _DrawBuffersARB_intptr { get; } + + // --- + + delegate void _glDrawBuffersATI(int n, DrawBufferMode[] bufs); + [GlEntryPoint("glDrawBuffersATI")] + _glDrawBuffersATI _DrawBuffersATI { get; } + + delegate void _glDrawBuffersATI_ptr(int n, void* bufs); + [GlEntryPoint("glDrawBuffersATI")] + _glDrawBuffersATI_ptr _DrawBuffersATI_ptr { get; } + + delegate void _glDrawBuffersATI_intptr(int n, IntPtr bufs); + [GlEntryPoint("glDrawBuffersATI")] + _glDrawBuffersATI_intptr _DrawBuffersATI_intptr { get; } + + // --- + + delegate void _glDrawBuffersEXT(int n, int[] bufs); + [GlEntryPoint("glDrawBuffersEXT")] + _glDrawBuffersEXT _DrawBuffersEXT { get; } + + delegate void _glDrawBuffersEXT_ptr(int n, void* bufs); + [GlEntryPoint("glDrawBuffersEXT")] + _glDrawBuffersEXT_ptr _DrawBuffersEXT_ptr { get; } + + delegate void _glDrawBuffersEXT_intptr(int n, IntPtr bufs); + [GlEntryPoint("glDrawBuffersEXT")] + _glDrawBuffersEXT_intptr _DrawBuffersEXT_intptr { get; } + + // --- + + delegate void _glDrawBuffersIndexedEXT(int n, int[] location, int[] indices); + [GlEntryPoint("glDrawBuffersIndexedEXT")] + _glDrawBuffersIndexedEXT _DrawBuffersIndexedEXT { get; } + + delegate void _glDrawBuffersIndexedEXT_ptr(int n, void* location, void* indices); + [GlEntryPoint("glDrawBuffersIndexedEXT")] + _glDrawBuffersIndexedEXT_ptr _DrawBuffersIndexedEXT_ptr { get; } + + delegate void _glDrawBuffersIndexedEXT_intptr(int n, IntPtr location, IntPtr indices); + [GlEntryPoint("glDrawBuffersIndexedEXT")] + _glDrawBuffersIndexedEXT_intptr _DrawBuffersIndexedEXT_intptr { get; } + + // --- + + delegate void _glDrawBuffersNV(int n, int[] bufs); + [GlEntryPoint("glDrawBuffersNV")] + _glDrawBuffersNV _DrawBuffersNV { get; } + + delegate void _glDrawBuffersNV_ptr(int n, void* bufs); + [GlEntryPoint("glDrawBuffersNV")] + _glDrawBuffersNV_ptr _DrawBuffersNV_ptr { get; } + + delegate void _glDrawBuffersNV_intptr(int n, IntPtr bufs); + [GlEntryPoint("glDrawBuffersNV")] + _glDrawBuffersNV_intptr _DrawBuffersNV_intptr { get; } + + // --- + + delegate void _glDrawCommandsAddressNV(int primitiveMode, UInt64[] indirects, int[] sizes, uint count); + [GlEntryPoint("glDrawCommandsAddressNV")] + _glDrawCommandsAddressNV _DrawCommandsAddressNV { get; } + + delegate void _glDrawCommandsAddressNV_ptr(int primitiveMode, void* indirects, void* sizes, uint count); + [GlEntryPoint("glDrawCommandsAddressNV")] + _glDrawCommandsAddressNV_ptr _DrawCommandsAddressNV_ptr { get; } + + delegate void _glDrawCommandsAddressNV_intptr(int primitiveMode, IntPtr indirects, IntPtr sizes, uint count); + [GlEntryPoint("glDrawCommandsAddressNV")] + _glDrawCommandsAddressNV_intptr _DrawCommandsAddressNV_intptr { get; } + + // --- + + delegate void _glDrawCommandsNV(int primitiveMode, uint buffer, IntPtr[] indirects, int[] sizes, uint count); + [GlEntryPoint("glDrawCommandsNV")] + _glDrawCommandsNV _DrawCommandsNV { get; } + + delegate void _glDrawCommandsNV_ptr(int primitiveMode, uint buffer, void* indirects, void* sizes, uint count); + [GlEntryPoint("glDrawCommandsNV")] + _glDrawCommandsNV_ptr _DrawCommandsNV_ptr { get; } + + delegate void _glDrawCommandsNV_intptr(int primitiveMode, uint buffer, IntPtr indirects, IntPtr sizes, uint count); + [GlEntryPoint("glDrawCommandsNV")] + _glDrawCommandsNV_intptr _DrawCommandsNV_intptr { get; } + + // --- + + delegate void _glDrawCommandsStatesAddressNV(UInt64[] indirects, int[] sizes, uint[] states, uint[] fbos, uint count); + [GlEntryPoint("glDrawCommandsStatesAddressNV")] + _glDrawCommandsStatesAddressNV _DrawCommandsStatesAddressNV { get; } + + delegate void _glDrawCommandsStatesAddressNV_ptr(void* indirects, void* sizes, void* states, void* fbos, uint count); + [GlEntryPoint("glDrawCommandsStatesAddressNV")] + _glDrawCommandsStatesAddressNV_ptr _DrawCommandsStatesAddressNV_ptr { get; } + + delegate void _glDrawCommandsStatesAddressNV_intptr(IntPtr indirects, IntPtr sizes, IntPtr states, IntPtr fbos, uint count); + [GlEntryPoint("glDrawCommandsStatesAddressNV")] + _glDrawCommandsStatesAddressNV_intptr _DrawCommandsStatesAddressNV_intptr { get; } + + // --- + + delegate void _glDrawCommandsStatesNV(uint buffer, IntPtr[] indirects, int[] sizes, uint[] states, uint[] fbos, uint count); + [GlEntryPoint("glDrawCommandsStatesNV")] + _glDrawCommandsStatesNV _DrawCommandsStatesNV { get; } + + delegate void _glDrawCommandsStatesNV_ptr(uint buffer, void* indirects, void* sizes, void* states, void* fbos, uint count); + [GlEntryPoint("glDrawCommandsStatesNV")] + _glDrawCommandsStatesNV_ptr _DrawCommandsStatesNV_ptr { get; } + + delegate void _glDrawCommandsStatesNV_intptr(uint buffer, IntPtr indirects, IntPtr sizes, IntPtr states, IntPtr fbos, uint count); + [GlEntryPoint("glDrawCommandsStatesNV")] + _glDrawCommandsStatesNV_intptr _DrawCommandsStatesNV_intptr { get; } + + // --- + + delegate void _glDrawElementArrayAPPLE(PrimitiveType mode, int first, int count); + [GlEntryPoint("glDrawElementArrayAPPLE")] + _glDrawElementArrayAPPLE _DrawElementArrayAPPLE { get; } + + // --- + + delegate void _glDrawElementArrayATI(PrimitiveType mode, int count); + [GlEntryPoint("glDrawElementArrayATI")] + _glDrawElementArrayATI _DrawElementArrayATI { get; } + + // --- + + delegate void _glDrawElements(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices); + [GlEntryPoint("glDrawElements")] + _glDrawElements _DrawElements { get; } + + // --- + + delegate void _glDrawElementsBaseVertex(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int basevertex); + [GlEntryPoint("glDrawElementsBaseVertex")] + _glDrawElementsBaseVertex _DrawElementsBaseVertex { get; } + + // --- + + delegate void _glDrawElementsBaseVertexEXT(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int basevertex); + [GlEntryPoint("glDrawElementsBaseVertexEXT")] + _glDrawElementsBaseVertexEXT _DrawElementsBaseVertexEXT { get; } + + // --- + + delegate void _glDrawElementsBaseVertexOES(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int basevertex); + [GlEntryPoint("glDrawElementsBaseVertexOES")] + _glDrawElementsBaseVertexOES _DrawElementsBaseVertexOES { get; } + + // --- + + delegate void _glDrawElementsIndirect(PrimitiveType mode, DrawElementsType type, IntPtr indirect); + [GlEntryPoint("glDrawElementsIndirect")] + _glDrawElementsIndirect _DrawElementsIndirect { get; } + + // --- + + delegate void _glDrawElementsInstanced(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int instancecount); + [GlEntryPoint("glDrawElementsInstanced")] + _glDrawElementsInstanced _DrawElementsInstanced { get; } + + // --- + + delegate void _glDrawElementsInstancedANGLE(PrimitiveType mode, int count, PrimitiveType type, IntPtr indices, int primcount); + [GlEntryPoint("glDrawElementsInstancedANGLE")] + _glDrawElementsInstancedANGLE _DrawElementsInstancedANGLE { get; } + + // --- + + delegate void _glDrawElementsInstancedARB(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int primcount); + [GlEntryPoint("glDrawElementsInstancedARB")] + _glDrawElementsInstancedARB _DrawElementsInstancedARB { get; } + + // --- + + delegate void _glDrawElementsInstancedBaseInstance(PrimitiveType mode, int count, PrimitiveType type, IntPtr indices, int instancecount, uint baseinstance); + [GlEntryPoint("glDrawElementsInstancedBaseInstance")] + _glDrawElementsInstancedBaseInstance _DrawElementsInstancedBaseInstance { get; } + + // --- + + delegate void _glDrawElementsInstancedBaseInstanceEXT(PrimitiveType mode, int count, PrimitiveType type, IntPtr indices, int instancecount, uint baseinstance); + [GlEntryPoint("glDrawElementsInstancedBaseInstanceEXT")] + _glDrawElementsInstancedBaseInstanceEXT _DrawElementsInstancedBaseInstanceEXT { get; } + + // --- + + delegate void _glDrawElementsInstancedBaseVertex(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int instancecount, int basevertex); + [GlEntryPoint("glDrawElementsInstancedBaseVertex")] + _glDrawElementsInstancedBaseVertex _DrawElementsInstancedBaseVertex { get; } + + // --- + + delegate void _glDrawElementsInstancedBaseVertexBaseInstance(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int instancecount, int basevertex, uint baseinstance); + [GlEntryPoint("glDrawElementsInstancedBaseVertexBaseInstance")] + _glDrawElementsInstancedBaseVertexBaseInstance _DrawElementsInstancedBaseVertexBaseInstance { get; } + + // --- + + delegate void _glDrawElementsInstancedBaseVertexBaseInstanceEXT(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int instancecount, int basevertex, uint baseinstance); + [GlEntryPoint("glDrawElementsInstancedBaseVertexBaseInstanceEXT")] + _glDrawElementsInstancedBaseVertexBaseInstanceEXT _DrawElementsInstancedBaseVertexBaseInstanceEXT { get; } + + // --- + + delegate void _glDrawElementsInstancedBaseVertexEXT(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int instancecount, int basevertex); + [GlEntryPoint("glDrawElementsInstancedBaseVertexEXT")] + _glDrawElementsInstancedBaseVertexEXT _DrawElementsInstancedBaseVertexEXT { get; } + + // --- + + delegate void _glDrawElementsInstancedBaseVertexOES(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int instancecount, int basevertex); + [GlEntryPoint("glDrawElementsInstancedBaseVertexOES")] + _glDrawElementsInstancedBaseVertexOES _DrawElementsInstancedBaseVertexOES { get; } + + // --- + + delegate void _glDrawElementsInstancedEXT(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int primcount); + [GlEntryPoint("glDrawElementsInstancedEXT")] + _glDrawElementsInstancedEXT _DrawElementsInstancedEXT { get; } + + // --- + + delegate void _glDrawElementsInstancedNV(PrimitiveType mode, int count, PrimitiveType type, IntPtr indices, int primcount); + [GlEntryPoint("glDrawElementsInstancedNV")] + _glDrawElementsInstancedNV _DrawElementsInstancedNV { get; } + + // --- + + delegate void _glDrawMeshArraysSUN(PrimitiveType mode, int first, int count, int width); + [GlEntryPoint("glDrawMeshArraysSUN")] + _glDrawMeshArraysSUN _DrawMeshArraysSUN { get; } + + // --- + + delegate void _glDrawMeshTasksNV(uint first, uint count); + [GlEntryPoint("glDrawMeshTasksNV")] + _glDrawMeshTasksNV _DrawMeshTasksNV { get; } + + // --- + + delegate void _glDrawMeshTasksIndirectNV(IntPtr indirect); + [GlEntryPoint("glDrawMeshTasksIndirectNV")] + _glDrawMeshTasksIndirectNV _DrawMeshTasksIndirectNV { get; } + + // --- + + delegate void _glDrawPixels(int width, int height, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glDrawPixels")] + _glDrawPixels _DrawPixels { get; } + + // --- + + delegate void _glDrawRangeElementArrayAPPLE(PrimitiveType mode, uint start, uint end, int first, int count); + [GlEntryPoint("glDrawRangeElementArrayAPPLE")] + _glDrawRangeElementArrayAPPLE _DrawRangeElementArrayAPPLE { get; } + + // --- + + delegate void _glDrawRangeElementArrayATI(PrimitiveType mode, uint start, uint end, int count); + [GlEntryPoint("glDrawRangeElementArrayATI")] + _glDrawRangeElementArrayATI _DrawRangeElementArrayATI { get; } + + // --- + + delegate void _glDrawRangeElements(PrimitiveType mode, uint start, uint end, int count, DrawElementsType type, IntPtr indices); + [GlEntryPoint("glDrawRangeElements")] + _glDrawRangeElements _DrawRangeElements { get; } + + // --- + + delegate void _glDrawRangeElementsBaseVertex(PrimitiveType mode, uint start, uint end, int count, DrawElementsType type, IntPtr indices, int basevertex); + [GlEntryPoint("glDrawRangeElementsBaseVertex")] + _glDrawRangeElementsBaseVertex _DrawRangeElementsBaseVertex { get; } + + // --- + + delegate void _glDrawRangeElementsBaseVertexEXT(PrimitiveType mode, uint start, uint end, int count, DrawElementsType type, IntPtr indices, int basevertex); + [GlEntryPoint("glDrawRangeElementsBaseVertexEXT")] + _glDrawRangeElementsBaseVertexEXT _DrawRangeElementsBaseVertexEXT { get; } + + // --- + + delegate void _glDrawRangeElementsBaseVertexOES(PrimitiveType mode, uint start, uint end, int count, DrawElementsType type, IntPtr indices, int basevertex); + [GlEntryPoint("glDrawRangeElementsBaseVertexOES")] + _glDrawRangeElementsBaseVertexOES _DrawRangeElementsBaseVertexOES { get; } + + // --- + + delegate void _glDrawRangeElementsEXT(PrimitiveType mode, uint start, uint end, int count, DrawElementsType type, IntPtr indices); + [GlEntryPoint("glDrawRangeElementsEXT")] + _glDrawRangeElementsEXT _DrawRangeElementsEXT { get; } + + // --- + + delegate void _glDrawTexfOES(float x, float y, float z, float width, float height); + [GlEntryPoint("glDrawTexfOES")] + _glDrawTexfOES _DrawTexfOES { get; } + + // --- + + delegate void _glDrawTexfvOES(float[] coords); + [GlEntryPoint("glDrawTexfvOES")] + _glDrawTexfvOES _DrawTexfvOES { get; } + + delegate void _glDrawTexfvOES_ptr(void* coords); + [GlEntryPoint("glDrawTexfvOES")] + _glDrawTexfvOES_ptr _DrawTexfvOES_ptr { get; } + + delegate void _glDrawTexfvOES_intptr(IntPtr coords); + [GlEntryPoint("glDrawTexfvOES")] + _glDrawTexfvOES_intptr _DrawTexfvOES_intptr { get; } + + // --- + + delegate void _glDrawTexiOES(int x, int y, int z, int width, int height); + [GlEntryPoint("glDrawTexiOES")] + _glDrawTexiOES _DrawTexiOES { get; } + + // --- + + delegate void _glDrawTexivOES(int[] coords); + [GlEntryPoint("glDrawTexivOES")] + _glDrawTexivOES _DrawTexivOES { get; } + + delegate void _glDrawTexivOES_ptr(void* coords); + [GlEntryPoint("glDrawTexivOES")] + _glDrawTexivOES_ptr _DrawTexivOES_ptr { get; } + + delegate void _glDrawTexivOES_intptr(IntPtr coords); + [GlEntryPoint("glDrawTexivOES")] + _glDrawTexivOES_intptr _DrawTexivOES_intptr { get; } + + // --- + + delegate void _glDrawTexsOES(short x, short y, short z, short width, short height); + [GlEntryPoint("glDrawTexsOES")] + _glDrawTexsOES _DrawTexsOES { get; } + + // --- + + delegate void _glDrawTexsvOES(short[] coords); + [GlEntryPoint("glDrawTexsvOES")] + _glDrawTexsvOES _DrawTexsvOES { get; } + + delegate void _glDrawTexsvOES_ptr(void* coords); + [GlEntryPoint("glDrawTexsvOES")] + _glDrawTexsvOES_ptr _DrawTexsvOES_ptr { get; } + + delegate void _glDrawTexsvOES_intptr(IntPtr coords); + [GlEntryPoint("glDrawTexsvOES")] + _glDrawTexsvOES_intptr _DrawTexsvOES_intptr { get; } + + // --- + + delegate void _glDrawTextureNV(uint texture, uint sampler, float x0, float y0, float x1, float y1, float z, float s0, float t0, float s1, float t1); + [GlEntryPoint("glDrawTextureNV")] + _glDrawTextureNV _DrawTextureNV { get; } + + // --- + + delegate void _glDrawTexxOES(float x, float y, float z, float width, float height); + [GlEntryPoint("glDrawTexxOES")] + _glDrawTexxOES _DrawTexxOES { get; } + + // --- + + delegate void _glDrawTexxvOES(float[] coords); + [GlEntryPoint("glDrawTexxvOES")] + _glDrawTexxvOES _DrawTexxvOES { get; } + + delegate void _glDrawTexxvOES_ptr(void* coords); + [GlEntryPoint("glDrawTexxvOES")] + _glDrawTexxvOES_ptr _DrawTexxvOES_ptr { get; } + + delegate void _glDrawTexxvOES_intptr(IntPtr coords); + [GlEntryPoint("glDrawTexxvOES")] + _glDrawTexxvOES_intptr _DrawTexxvOES_intptr { get; } + + // --- + + delegate void _glDrawTransformFeedback(PrimitiveType mode, uint id); + [GlEntryPoint("glDrawTransformFeedback")] + _glDrawTransformFeedback _DrawTransformFeedback { get; } + + // --- + + delegate void _glDrawTransformFeedbackEXT(PrimitiveType mode, uint id); + [GlEntryPoint("glDrawTransformFeedbackEXT")] + _glDrawTransformFeedbackEXT _DrawTransformFeedbackEXT { get; } + + // --- + + delegate void _glDrawTransformFeedbackInstanced(PrimitiveType mode, uint id, int instancecount); + [GlEntryPoint("glDrawTransformFeedbackInstanced")] + _glDrawTransformFeedbackInstanced _DrawTransformFeedbackInstanced { get; } + + // --- + + delegate void _glDrawTransformFeedbackInstancedEXT(PrimitiveType mode, uint id, int instancecount); + [GlEntryPoint("glDrawTransformFeedbackInstancedEXT")] + _glDrawTransformFeedbackInstancedEXT _DrawTransformFeedbackInstancedEXT { get; } + + // --- + + delegate void _glDrawTransformFeedbackNV(PrimitiveType mode, uint id); + [GlEntryPoint("glDrawTransformFeedbackNV")] + _glDrawTransformFeedbackNV _DrawTransformFeedbackNV { get; } + + // --- + + delegate void _glDrawTransformFeedbackStream(PrimitiveType mode, uint id, uint stream); + [GlEntryPoint("glDrawTransformFeedbackStream")] + _glDrawTransformFeedbackStream _DrawTransformFeedbackStream { get; } + + // --- + + delegate void _glDrawTransformFeedbackStreamInstanced(PrimitiveType mode, uint id, uint stream, int instancecount); + [GlEntryPoint("glDrawTransformFeedbackStreamInstanced")] + _glDrawTransformFeedbackStreamInstanced _DrawTransformFeedbackStreamInstanced { get; } + + // --- + + delegate void _glEGLImageTargetRenderbufferStorageOES(int target, IntPtr image); + [GlEntryPoint("glEGLImageTargetRenderbufferStorageOES")] + _glEGLImageTargetRenderbufferStorageOES _EGLImageTargetRenderbufferStorageOES { get; } + + // --- + + delegate void _glEGLImageTargetTexStorageEXT(int target, IntPtr image, int[] attrib_list); + [GlEntryPoint("glEGLImageTargetTexStorageEXT")] + _glEGLImageTargetTexStorageEXT _EGLImageTargetTexStorageEXT { get; } + + delegate void _glEGLImageTargetTexStorageEXT_ptr(int target, IntPtr image, void* attrib_list); + [GlEntryPoint("glEGLImageTargetTexStorageEXT")] + _glEGLImageTargetTexStorageEXT_ptr _EGLImageTargetTexStorageEXT_ptr { get; } + + delegate void _glEGLImageTargetTexStorageEXT_intptr(int target, IntPtr image, IntPtr attrib_list); + [GlEntryPoint("glEGLImageTargetTexStorageEXT")] + _glEGLImageTargetTexStorageEXT_intptr _EGLImageTargetTexStorageEXT_intptr { get; } + + // --- + + delegate void _glEGLImageTargetTexture2DOES(int target, IntPtr image); + [GlEntryPoint("glEGLImageTargetTexture2DOES")] + _glEGLImageTargetTexture2DOES _EGLImageTargetTexture2DOES { get; } + + // --- + + delegate void _glEGLImageTargetTextureStorageEXT(uint texture, IntPtr image, int[] attrib_list); + [GlEntryPoint("glEGLImageTargetTextureStorageEXT")] + _glEGLImageTargetTextureStorageEXT _EGLImageTargetTextureStorageEXT { get; } + + delegate void _glEGLImageTargetTextureStorageEXT_ptr(uint texture, IntPtr image, void* attrib_list); + [GlEntryPoint("glEGLImageTargetTextureStorageEXT")] + _glEGLImageTargetTextureStorageEXT_ptr _EGLImageTargetTextureStorageEXT_ptr { get; } + + delegate void _glEGLImageTargetTextureStorageEXT_intptr(uint texture, IntPtr image, IntPtr attrib_list); + [GlEntryPoint("glEGLImageTargetTextureStorageEXT")] + _glEGLImageTargetTextureStorageEXT_intptr _EGLImageTargetTextureStorageEXT_intptr { get; } + + // --- + + delegate void _glEdgeFlag(bool flag); + [GlEntryPoint("glEdgeFlag")] + _glEdgeFlag _EdgeFlag { get; } + + // --- + + delegate void _glEdgeFlagFormatNV(int stride); + [GlEntryPoint("glEdgeFlagFormatNV")] + _glEdgeFlagFormatNV _EdgeFlagFormatNV { get; } + + // --- + + delegate void _glEdgeFlagPointer(int stride, IntPtr pointer); + [GlEntryPoint("glEdgeFlagPointer")] + _glEdgeFlagPointer _EdgeFlagPointer { get; } + + // --- + + delegate void _glEdgeFlagPointerEXT(int stride, int count, bool[] pointer); + [GlEntryPoint("glEdgeFlagPointerEXT")] + _glEdgeFlagPointerEXT _EdgeFlagPointerEXT { get; } + + delegate void _glEdgeFlagPointerEXT_ptr(int stride, int count, void* pointer); + [GlEntryPoint("glEdgeFlagPointerEXT")] + _glEdgeFlagPointerEXT_ptr _EdgeFlagPointerEXT_ptr { get; } + + delegate void _glEdgeFlagPointerEXT_intptr(int stride, int count, IntPtr pointer); + [GlEntryPoint("glEdgeFlagPointerEXT")] + _glEdgeFlagPointerEXT_intptr _EdgeFlagPointerEXT_intptr { get; } + + // --- + + delegate void _glEdgeFlagPointerListIBM(int stride, IntPtr* pointer, int ptrstride); + [GlEntryPoint("glEdgeFlagPointerListIBM")] + _glEdgeFlagPointerListIBM _EdgeFlagPointerListIBM { get; } + + // --- + + delegate void _glEdgeFlagv(bool[] flag); + [GlEntryPoint("glEdgeFlagv")] + _glEdgeFlagv _EdgeFlagv { get; } + + delegate void _glEdgeFlagv_ptr(void* flag); + [GlEntryPoint("glEdgeFlagv")] + _glEdgeFlagv_ptr _EdgeFlagv_ptr { get; } + + delegate void _glEdgeFlagv_intptr(IntPtr flag); + [GlEntryPoint("glEdgeFlagv")] + _glEdgeFlagv_intptr _EdgeFlagv_intptr { get; } + + // --- + + delegate void _glElementPointerAPPLE(ElementPointerTypeATI type, IntPtr pointer); + [GlEntryPoint("glElementPointerAPPLE")] + _glElementPointerAPPLE _ElementPointerAPPLE { get; } + + // --- + + delegate void _glElementPointerATI(ElementPointerTypeATI type, IntPtr pointer); + [GlEntryPoint("glElementPointerATI")] + _glElementPointerATI _ElementPointerATI { get; } + + // --- + + delegate void _glEnable(EnableCap cap); + [GlEntryPoint("glEnable")] + _glEnable _Enable { get; } + + // --- + + delegate void _glEnableClientState(EnableCap array); + [GlEntryPoint("glEnableClientState")] + _glEnableClientState _EnableClientState { get; } + + // --- + + delegate void _glEnableClientStateIndexedEXT(EnableCap array, uint index); + [GlEntryPoint("glEnableClientStateIndexedEXT")] + _glEnableClientStateIndexedEXT _EnableClientStateIndexedEXT { get; } + + // --- + + delegate void _glEnableClientStateiEXT(EnableCap array, uint index); + [GlEntryPoint("glEnableClientStateiEXT")] + _glEnableClientStateiEXT _EnableClientStateiEXT { get; } + + // --- + + delegate void _glEnableDriverControlQCOM(uint driverControl); + [GlEntryPoint("glEnableDriverControlQCOM")] + _glEnableDriverControlQCOM _EnableDriverControlQCOM { get; } + + // --- + + delegate void _glEnableIndexedEXT(EnableCap target, uint index); + [GlEntryPoint("glEnableIndexedEXT")] + _glEnableIndexedEXT _EnableIndexedEXT { get; } + + // --- + + delegate void _glEnableVariantClientStateEXT(uint id); + [GlEntryPoint("glEnableVariantClientStateEXT")] + _glEnableVariantClientStateEXT _EnableVariantClientStateEXT { get; } + + // --- + + delegate void _glEnableVertexArrayAttrib(uint vaobj, uint index); + [GlEntryPoint("glEnableVertexArrayAttrib")] + _glEnableVertexArrayAttrib _EnableVertexArrayAttrib { get; } + + // --- + + delegate void _glEnableVertexArrayAttribEXT(uint vaobj, uint index); + [GlEntryPoint("glEnableVertexArrayAttribEXT")] + _glEnableVertexArrayAttribEXT _EnableVertexArrayAttribEXT { get; } + + // --- + + delegate void _glEnableVertexArrayEXT(uint vaobj, EnableCap array); + [GlEntryPoint("glEnableVertexArrayEXT")] + _glEnableVertexArrayEXT _EnableVertexArrayEXT { get; } + + // --- + + delegate void _glEnableVertexAttribAPPLE(uint index, int pname); + [GlEntryPoint("glEnableVertexAttribAPPLE")] + _glEnableVertexAttribAPPLE _EnableVertexAttribAPPLE { get; } + + // --- + + delegate void _glEnableVertexAttribArray(uint index); + [GlEntryPoint("glEnableVertexAttribArray")] + _glEnableVertexAttribArray _EnableVertexAttribArray { get; } + + // --- + + delegate void _glEnableVertexAttribArrayARB(uint index); + [GlEntryPoint("glEnableVertexAttribArrayARB")] + _glEnableVertexAttribArrayARB _EnableVertexAttribArrayARB { get; } + + // --- + + delegate void _glEnablei(EnableCap target, uint index); + [GlEntryPoint("glEnablei")] + _glEnablei _Enablei { get; } + + // --- + + delegate void _glEnableiEXT(EnableCap target, uint index); + [GlEntryPoint("glEnableiEXT")] + _glEnableiEXT _EnableiEXT { get; } + + // --- + + delegate void _glEnableiNV(EnableCap target, uint index); + [GlEntryPoint("glEnableiNV")] + _glEnableiNV _EnableiNV { get; } + + // --- + + delegate void _glEnableiOES(EnableCap target, uint index); + [GlEntryPoint("glEnableiOES")] + _glEnableiOES _EnableiOES { get; } + + // --- + + delegate void _glEnd(); + [GlEntryPoint("glEnd")] + _glEnd _End { get; } + + // --- + + delegate void _glEndConditionalRender(); + [GlEntryPoint("glEndConditionalRender")] + _glEndConditionalRender _EndConditionalRender { get; } + + // --- + + delegate void _glEndConditionalRenderNV(); + [GlEntryPoint("glEndConditionalRenderNV")] + _glEndConditionalRenderNV _EndConditionalRenderNV { get; } + + // --- + + delegate void _glEndConditionalRenderNVX(); + [GlEntryPoint("glEndConditionalRenderNVX")] + _glEndConditionalRenderNVX _EndConditionalRenderNVX { get; } + + // --- + + delegate void _glEndFragmentShaderATI(); + [GlEntryPoint("glEndFragmentShaderATI")] + _glEndFragmentShaderATI _EndFragmentShaderATI { get; } + + // --- + + delegate void _glEndList(); + [GlEntryPoint("glEndList")] + _glEndList _EndList { get; } + + // --- + + delegate void _glEndOcclusionQueryNV(); + [GlEntryPoint("glEndOcclusionQueryNV")] + _glEndOcclusionQueryNV _EndOcclusionQueryNV { get; } + + // --- + + delegate void _glEndPerfMonitorAMD(uint monitor); + [GlEntryPoint("glEndPerfMonitorAMD")] + _glEndPerfMonitorAMD _EndPerfMonitorAMD { get; } + + // --- + + delegate void _glEndPerfQueryINTEL(uint queryHandle); + [GlEntryPoint("glEndPerfQueryINTEL")] + _glEndPerfQueryINTEL _EndPerfQueryINTEL { get; } + + // --- + + delegate void _glEndQuery(QueryTarget target); + [GlEntryPoint("glEndQuery")] + _glEndQuery _EndQuery { get; } + + // --- + + delegate void _glEndQueryARB(QueryTarget target); + [GlEntryPoint("glEndQueryARB")] + _glEndQueryARB _EndQueryARB { get; } + + // --- + + delegate void _glEndQueryEXT(QueryTarget target); + [GlEntryPoint("glEndQueryEXT")] + _glEndQueryEXT _EndQueryEXT { get; } + + // --- + + delegate void _glEndQueryIndexed(QueryTarget target, uint index); + [GlEntryPoint("glEndQueryIndexed")] + _glEndQueryIndexed _EndQueryIndexed { get; } + + // --- + + delegate void _glEndTilingQCOM(int preserveMask); + [GlEntryPoint("glEndTilingQCOM")] + _glEndTilingQCOM _EndTilingQCOM { get; } + + // --- + + delegate void _glEndTransformFeedback(); + [GlEntryPoint("glEndTransformFeedback")] + _glEndTransformFeedback _EndTransformFeedback { get; } + + // --- + + delegate void _glEndTransformFeedbackEXT(); + [GlEntryPoint("glEndTransformFeedbackEXT")] + _glEndTransformFeedbackEXT _EndTransformFeedbackEXT { get; } + + // --- + + delegate void _glEndTransformFeedbackNV(); + [GlEntryPoint("glEndTransformFeedbackNV")] + _glEndTransformFeedbackNV _EndTransformFeedbackNV { get; } + + // --- + + delegate void _glEndVertexShaderEXT(); + [GlEntryPoint("glEndVertexShaderEXT")] + _glEndVertexShaderEXT _EndVertexShaderEXT { get; } + + // --- + + delegate void _glEndVideoCaptureNV(uint video_capture_slot); + [GlEntryPoint("glEndVideoCaptureNV")] + _glEndVideoCaptureNV _EndVideoCaptureNV { get; } + + // --- + + delegate void _glEvalCoord1d(double u); + [GlEntryPoint("glEvalCoord1d")] + _glEvalCoord1d _EvalCoord1d { get; } + + // --- + + delegate void _glEvalCoord1dv(double[] u); + [GlEntryPoint("glEvalCoord1dv")] + _glEvalCoord1dv _EvalCoord1dv { get; } + + delegate void _glEvalCoord1dv_ptr(void* u); + [GlEntryPoint("glEvalCoord1dv")] + _glEvalCoord1dv_ptr _EvalCoord1dv_ptr { get; } + + delegate void _glEvalCoord1dv_intptr(IntPtr u); + [GlEntryPoint("glEvalCoord1dv")] + _glEvalCoord1dv_intptr _EvalCoord1dv_intptr { get; } + + // --- + + delegate void _glEvalCoord1f(float u); + [GlEntryPoint("glEvalCoord1f")] + _glEvalCoord1f _EvalCoord1f { get; } + + // --- + + delegate void _glEvalCoord1fv(float[] u); + [GlEntryPoint("glEvalCoord1fv")] + _glEvalCoord1fv _EvalCoord1fv { get; } + + delegate void _glEvalCoord1fv_ptr(void* u); + [GlEntryPoint("glEvalCoord1fv")] + _glEvalCoord1fv_ptr _EvalCoord1fv_ptr { get; } + + delegate void _glEvalCoord1fv_intptr(IntPtr u); + [GlEntryPoint("glEvalCoord1fv")] + _glEvalCoord1fv_intptr _EvalCoord1fv_intptr { get; } + + // --- + + delegate void _glEvalCoord1xOES(float u); + [GlEntryPoint("glEvalCoord1xOES")] + _glEvalCoord1xOES _EvalCoord1xOES { get; } + + // --- + + delegate void _glEvalCoord1xvOES(float[] coords); + [GlEntryPoint("glEvalCoord1xvOES")] + _glEvalCoord1xvOES _EvalCoord1xvOES { get; } + + delegate void _glEvalCoord1xvOES_ptr(void* coords); + [GlEntryPoint("glEvalCoord1xvOES")] + _glEvalCoord1xvOES_ptr _EvalCoord1xvOES_ptr { get; } + + delegate void _glEvalCoord1xvOES_intptr(IntPtr coords); + [GlEntryPoint("glEvalCoord1xvOES")] + _glEvalCoord1xvOES_intptr _EvalCoord1xvOES_intptr { get; } + + // --- + + delegate void _glEvalCoord2d(double u, double v); + [GlEntryPoint("glEvalCoord2d")] + _glEvalCoord2d _EvalCoord2d { get; } + + // --- + + delegate void _glEvalCoord2dv(double[] u); + [GlEntryPoint("glEvalCoord2dv")] + _glEvalCoord2dv _EvalCoord2dv { get; } + + delegate void _glEvalCoord2dv_ptr(void* u); + [GlEntryPoint("glEvalCoord2dv")] + _glEvalCoord2dv_ptr _EvalCoord2dv_ptr { get; } + + delegate void _glEvalCoord2dv_intptr(IntPtr u); + [GlEntryPoint("glEvalCoord2dv")] + _glEvalCoord2dv_intptr _EvalCoord2dv_intptr { get; } + + // --- + + delegate void _glEvalCoord2f(float u, float v); + [GlEntryPoint("glEvalCoord2f")] + _glEvalCoord2f _EvalCoord2f { get; } + + // --- + + delegate void _glEvalCoord2fv(float[] u); + [GlEntryPoint("glEvalCoord2fv")] + _glEvalCoord2fv _EvalCoord2fv { get; } + + delegate void _glEvalCoord2fv_ptr(void* u); + [GlEntryPoint("glEvalCoord2fv")] + _glEvalCoord2fv_ptr _EvalCoord2fv_ptr { get; } + + delegate void _glEvalCoord2fv_intptr(IntPtr u); + [GlEntryPoint("glEvalCoord2fv")] + _glEvalCoord2fv_intptr _EvalCoord2fv_intptr { get; } + + // --- + + delegate void _glEvalCoord2xOES(float u, float v); + [GlEntryPoint("glEvalCoord2xOES")] + _glEvalCoord2xOES _EvalCoord2xOES { get; } + + // --- + + delegate void _glEvalCoord2xvOES(float[] coords); + [GlEntryPoint("glEvalCoord2xvOES")] + _glEvalCoord2xvOES _EvalCoord2xvOES { get; } + + delegate void _glEvalCoord2xvOES_ptr(void* coords); + [GlEntryPoint("glEvalCoord2xvOES")] + _glEvalCoord2xvOES_ptr _EvalCoord2xvOES_ptr { get; } + + delegate void _glEvalCoord2xvOES_intptr(IntPtr coords); + [GlEntryPoint("glEvalCoord2xvOES")] + _glEvalCoord2xvOES_intptr _EvalCoord2xvOES_intptr { get; } + + // --- + + delegate void _glEvalMapsNV(EvalTargetNV target, EvalMapsModeNV mode); + [GlEntryPoint("glEvalMapsNV")] + _glEvalMapsNV _EvalMapsNV { get; } + + // --- + + delegate void _glEvalMesh1(MeshMode1 mode, int i1, int i2); + [GlEntryPoint("glEvalMesh1")] + _glEvalMesh1 _EvalMesh1 { get; } + + // --- + + delegate void _glEvalMesh2(MeshMode2 mode, int i1, int i2, int j1, int j2); + [GlEntryPoint("glEvalMesh2")] + _glEvalMesh2 _EvalMesh2 { get; } + + // --- + + delegate void _glEvalPoint1(int i); + [GlEntryPoint("glEvalPoint1")] + _glEvalPoint1 _EvalPoint1 { get; } + + // --- + + delegate void _glEvalPoint2(int i, int j); + [GlEntryPoint("glEvalPoint2")] + _glEvalPoint2 _EvalPoint2 { get; } + + // --- + + delegate void _glEvaluateDepthValuesARB(); + [GlEntryPoint("glEvaluateDepthValuesARB")] + _glEvaluateDepthValuesARB _EvaluateDepthValuesARB { get; } + + // --- + + delegate void _glExecuteProgramNV(VertexAttribEnumNV target, uint id, float[] @params); + [GlEntryPoint("glExecuteProgramNV")] + _glExecuteProgramNV _ExecuteProgramNV { get; } + + delegate void _glExecuteProgramNV_ptr(VertexAttribEnumNV target, uint id, void* @params); + [GlEntryPoint("glExecuteProgramNV")] + _glExecuteProgramNV_ptr _ExecuteProgramNV_ptr { get; } + + delegate void _glExecuteProgramNV_intptr(VertexAttribEnumNV target, uint id, IntPtr @params); + [GlEntryPoint("glExecuteProgramNV")] + _glExecuteProgramNV_intptr _ExecuteProgramNV_intptr { get; } + + // --- + + delegate void _glExtGetBufferPointervQCOM(int target, IntPtr* @params); + [GlEntryPoint("glExtGetBufferPointervQCOM")] + _glExtGetBufferPointervQCOM _ExtGetBufferPointervQCOM { get; } + + // --- + + delegate void _glExtGetBuffersQCOM(uint[] buffers, int maxBuffers, out int numBuffers); + [GlEntryPoint("glExtGetBuffersQCOM")] + _glExtGetBuffersQCOM _ExtGetBuffersQCOM { get; } + + delegate void _glExtGetBuffersQCOM_ptr(void* buffers, int maxBuffers, out int numBuffers); + [GlEntryPoint("glExtGetBuffersQCOM")] + _glExtGetBuffersQCOM_ptr _ExtGetBuffersQCOM_ptr { get; } + + delegate void _glExtGetBuffersQCOM_intptr(IntPtr buffers, int maxBuffers, out int numBuffers); + [GlEntryPoint("glExtGetBuffersQCOM")] + _glExtGetBuffersQCOM_intptr _ExtGetBuffersQCOM_intptr { get; } + + // --- + + delegate void _glExtGetFramebuffersQCOM(uint[] framebuffers, int maxFramebuffers, out int numFramebuffers); + [GlEntryPoint("glExtGetFramebuffersQCOM")] + _glExtGetFramebuffersQCOM _ExtGetFramebuffersQCOM { get; } + + delegate void _glExtGetFramebuffersQCOM_ptr(void* framebuffers, int maxFramebuffers, out int numFramebuffers); + [GlEntryPoint("glExtGetFramebuffersQCOM")] + _glExtGetFramebuffersQCOM_ptr _ExtGetFramebuffersQCOM_ptr { get; } + + delegate void _glExtGetFramebuffersQCOM_intptr(IntPtr framebuffers, int maxFramebuffers, out int numFramebuffers); + [GlEntryPoint("glExtGetFramebuffersQCOM")] + _glExtGetFramebuffersQCOM_intptr _ExtGetFramebuffersQCOM_intptr { get; } + + // --- + + delegate void _glExtGetProgramBinarySourceQCOM(uint program, ShaderType shadertype, string source, int[] length); + [GlEntryPoint("glExtGetProgramBinarySourceQCOM")] + _glExtGetProgramBinarySourceQCOM _ExtGetProgramBinarySourceQCOM { get; } + + delegate void _glExtGetProgramBinarySourceQCOM_ptr(uint program, ShaderType shadertype, void* source, void* length); + [GlEntryPoint("glExtGetProgramBinarySourceQCOM")] + _glExtGetProgramBinarySourceQCOM_ptr _ExtGetProgramBinarySourceQCOM_ptr { get; } + + delegate void _glExtGetProgramBinarySourceQCOM_intptr(uint program, ShaderType shadertype, IntPtr source, IntPtr length); + [GlEntryPoint("glExtGetProgramBinarySourceQCOM")] + _glExtGetProgramBinarySourceQCOM_intptr _ExtGetProgramBinarySourceQCOM_intptr { get; } + + // --- + + delegate void _glExtGetProgramsQCOM(uint[] programs, int maxPrograms, out int numPrograms); + [GlEntryPoint("glExtGetProgramsQCOM")] + _glExtGetProgramsQCOM _ExtGetProgramsQCOM { get; } + + delegate void _glExtGetProgramsQCOM_ptr(void* programs, int maxPrograms, out int numPrograms); + [GlEntryPoint("glExtGetProgramsQCOM")] + _glExtGetProgramsQCOM_ptr _ExtGetProgramsQCOM_ptr { get; } + + delegate void _glExtGetProgramsQCOM_intptr(IntPtr programs, int maxPrograms, out int numPrograms); + [GlEntryPoint("glExtGetProgramsQCOM")] + _glExtGetProgramsQCOM_intptr _ExtGetProgramsQCOM_intptr { get; } + + // --- + + delegate void _glExtGetRenderbuffersQCOM(uint[] renderbuffers, int maxRenderbuffers, out int numRenderbuffers); + [GlEntryPoint("glExtGetRenderbuffersQCOM")] + _glExtGetRenderbuffersQCOM _ExtGetRenderbuffersQCOM { get; } + + delegate void _glExtGetRenderbuffersQCOM_ptr(void* renderbuffers, int maxRenderbuffers, out int numRenderbuffers); + [GlEntryPoint("glExtGetRenderbuffersQCOM")] + _glExtGetRenderbuffersQCOM_ptr _ExtGetRenderbuffersQCOM_ptr { get; } + + delegate void _glExtGetRenderbuffersQCOM_intptr(IntPtr renderbuffers, int maxRenderbuffers, out int numRenderbuffers); + [GlEntryPoint("glExtGetRenderbuffersQCOM")] + _glExtGetRenderbuffersQCOM_intptr _ExtGetRenderbuffersQCOM_intptr { get; } + + // --- + + delegate void _glExtGetShadersQCOM(uint[] shaders, int maxShaders, out int numShaders); + [GlEntryPoint("glExtGetShadersQCOM")] + _glExtGetShadersQCOM _ExtGetShadersQCOM { get; } + + delegate void _glExtGetShadersQCOM_ptr(void* shaders, int maxShaders, out int numShaders); + [GlEntryPoint("glExtGetShadersQCOM")] + _glExtGetShadersQCOM_ptr _ExtGetShadersQCOM_ptr { get; } + + delegate void _glExtGetShadersQCOM_intptr(IntPtr shaders, int maxShaders, out int numShaders); + [GlEntryPoint("glExtGetShadersQCOM")] + _glExtGetShadersQCOM_intptr _ExtGetShadersQCOM_intptr { get; } + + // --- + + delegate void _glExtGetTexLevelParameterivQCOM(uint texture, int face, int level, int pname, int[] @params); + [GlEntryPoint("glExtGetTexLevelParameterivQCOM")] + _glExtGetTexLevelParameterivQCOM _ExtGetTexLevelParameterivQCOM { get; } + + delegate void _glExtGetTexLevelParameterivQCOM_ptr(uint texture, int face, int level, int pname, void* @params); + [GlEntryPoint("glExtGetTexLevelParameterivQCOM")] + _glExtGetTexLevelParameterivQCOM_ptr _ExtGetTexLevelParameterivQCOM_ptr { get; } + + delegate void _glExtGetTexLevelParameterivQCOM_intptr(uint texture, int face, int level, int pname, IntPtr @params); + [GlEntryPoint("glExtGetTexLevelParameterivQCOM")] + _glExtGetTexLevelParameterivQCOM_intptr _ExtGetTexLevelParameterivQCOM_intptr { get; } + + // --- + + delegate void _glExtGetTexSubImageQCOM(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr texels); + [GlEntryPoint("glExtGetTexSubImageQCOM")] + _glExtGetTexSubImageQCOM _ExtGetTexSubImageQCOM { get; } + + // --- + + delegate void _glExtGetTexturesQCOM(uint[] textures, int maxTextures, int[] numTextures); + [GlEntryPoint("glExtGetTexturesQCOM")] + _glExtGetTexturesQCOM _ExtGetTexturesQCOM { get; } + + delegate void _glExtGetTexturesQCOM_ptr(void* textures, int maxTextures, void* numTextures); + [GlEntryPoint("glExtGetTexturesQCOM")] + _glExtGetTexturesQCOM_ptr _ExtGetTexturesQCOM_ptr { get; } + + delegate void _glExtGetTexturesQCOM_intptr(IntPtr textures, int maxTextures, IntPtr numTextures); + [GlEntryPoint("glExtGetTexturesQCOM")] + _glExtGetTexturesQCOM_intptr _ExtGetTexturesQCOM_intptr { get; } + + // --- + + delegate bool _glExtIsProgramBinaryQCOM(uint program); + [GlEntryPoint("glExtIsProgramBinaryQCOM")] + _glExtIsProgramBinaryQCOM _ExtIsProgramBinaryQCOM { get; } + + // --- + + delegate void _glExtTexObjectStateOverrideiQCOM(int target, int pname, int param); + [GlEntryPoint("glExtTexObjectStateOverrideiQCOM")] + _glExtTexObjectStateOverrideiQCOM _ExtTexObjectStateOverrideiQCOM { get; } + + // --- + + delegate void _glExtractComponentEXT(uint res, uint src, uint num); + [GlEntryPoint("glExtractComponentEXT")] + _glExtractComponentEXT _ExtractComponentEXT { get; } + + // --- + + delegate void _glFeedbackBuffer(int size, FeedbackType type, float[] buffer); + [GlEntryPoint("glFeedbackBuffer")] + _glFeedbackBuffer _FeedbackBuffer { get; } + + delegate void _glFeedbackBuffer_ptr(int size, FeedbackType type, void* buffer); + [GlEntryPoint("glFeedbackBuffer")] + _glFeedbackBuffer_ptr _FeedbackBuffer_ptr { get; } + + delegate void _glFeedbackBuffer_intptr(int size, FeedbackType type, IntPtr buffer); + [GlEntryPoint("glFeedbackBuffer")] + _glFeedbackBuffer_intptr _FeedbackBuffer_intptr { get; } + + // --- + + delegate void _glFeedbackBufferxOES(int n, int type, float[] buffer); + [GlEntryPoint("glFeedbackBufferxOES")] + _glFeedbackBufferxOES _FeedbackBufferxOES { get; } + + delegate void _glFeedbackBufferxOES_ptr(int n, int type, void* buffer); + [GlEntryPoint("glFeedbackBufferxOES")] + _glFeedbackBufferxOES_ptr _FeedbackBufferxOES_ptr { get; } + + delegate void _glFeedbackBufferxOES_intptr(int n, int type, IntPtr buffer); + [GlEntryPoint("glFeedbackBufferxOES")] + _glFeedbackBufferxOES_intptr _FeedbackBufferxOES_intptr { get; } + + // --- + + delegate int _glFenceSync(SyncCondition condition, int flags); + [GlEntryPoint("glFenceSync")] + _glFenceSync _FenceSync { get; } + + // --- + + delegate int _glFenceSyncAPPLE(SyncCondition condition, int flags); + [GlEntryPoint("glFenceSyncAPPLE")] + _glFenceSyncAPPLE _FenceSyncAPPLE { get; } + + // --- + + delegate void _glFinalCombinerInputNV(CombinerVariableNV variable, CombinerRegisterNV input, CombinerMappingNV mapping, CombinerComponentUsageNV componentUsage); + [GlEntryPoint("glFinalCombinerInputNV")] + _glFinalCombinerInputNV _FinalCombinerInputNV { get; } + + // --- + + delegate void _glFinish(); + [GlEntryPoint("glFinish")] + _glFinish _Finish { get; } + + // --- + + delegate int _glFinishAsyncSGIX(out uint markerp); + [GlEntryPoint("glFinishAsyncSGIX")] + _glFinishAsyncSGIX _FinishAsyncSGIX { get; } + + // --- + + delegate void _glFinishFenceAPPLE(uint fence); + [GlEntryPoint("glFinishFenceAPPLE")] + _glFinishFenceAPPLE _FinishFenceAPPLE { get; } + + // --- + + delegate void _glFinishFenceNV(uint fence); + [GlEntryPoint("glFinishFenceNV")] + _glFinishFenceNV _FinishFenceNV { get; } + + // --- + + delegate void _glFinishObjectAPPLE(ObjectTypeAPPLE @object, int name); + [GlEntryPoint("glFinishObjectAPPLE")] + _glFinishObjectAPPLE _FinishObjectAPPLE { get; } + + // --- + + delegate void _glFinishTextureSUNX(); + [GlEntryPoint("glFinishTextureSUNX")] + _glFinishTextureSUNX _FinishTextureSUNX { get; } + + // --- + + delegate void _glFlush(); + [GlEntryPoint("glFlush")] + _glFlush _Flush { get; } + + // --- + + delegate void _glFlushMappedBufferRange(BufferTargetARB target, IntPtr offset, IntPtr length); + [GlEntryPoint("glFlushMappedBufferRange")] + _glFlushMappedBufferRange _FlushMappedBufferRange { get; } + + // --- + + delegate void _glFlushMappedBufferRangeAPPLE(BufferTargetARB target, IntPtr offset, IntPtr size); + [GlEntryPoint("glFlushMappedBufferRangeAPPLE")] + _glFlushMappedBufferRangeAPPLE _FlushMappedBufferRangeAPPLE { get; } + + // --- + + delegate void _glFlushMappedBufferRangeEXT(BufferTargetARB target, IntPtr offset, IntPtr length); + [GlEntryPoint("glFlushMappedBufferRangeEXT")] + _glFlushMappedBufferRangeEXT _FlushMappedBufferRangeEXT { get; } + + // --- + + delegate void _glFlushMappedNamedBufferRange(uint buffer, IntPtr offset, IntPtr length); + [GlEntryPoint("glFlushMappedNamedBufferRange")] + _glFlushMappedNamedBufferRange _FlushMappedNamedBufferRange { get; } + + // --- + + delegate void _glFlushMappedNamedBufferRangeEXT(uint buffer, IntPtr offset, IntPtr length); + [GlEntryPoint("glFlushMappedNamedBufferRangeEXT")] + _glFlushMappedNamedBufferRangeEXT _FlushMappedNamedBufferRangeEXT { get; } + + // --- + + delegate void _glFlushPixelDataRangeNV(PixelDataRangeTargetNV target); + [GlEntryPoint("glFlushPixelDataRangeNV")] + _glFlushPixelDataRangeNV _FlushPixelDataRangeNV { get; } + + // --- + + delegate void _glFlushRasterSGIX(); + [GlEntryPoint("glFlushRasterSGIX")] + _glFlushRasterSGIX _FlushRasterSGIX { get; } + + // --- + + delegate void _glFlushStaticDataIBM(int target); + [GlEntryPoint("glFlushStaticDataIBM")] + _glFlushStaticDataIBM _FlushStaticDataIBM { get; } + + // --- + + delegate void _glFlushVertexArrayRangeAPPLE(int length, IntPtr pointer); + [GlEntryPoint("glFlushVertexArrayRangeAPPLE")] + _glFlushVertexArrayRangeAPPLE _FlushVertexArrayRangeAPPLE { get; } + + // --- + + delegate void _glFlushVertexArrayRangeNV(); + [GlEntryPoint("glFlushVertexArrayRangeNV")] + _glFlushVertexArrayRangeNV _FlushVertexArrayRangeNV { get; } + + // --- + + delegate void _glFogCoordFormatNV(int type, int stride); + [GlEntryPoint("glFogCoordFormatNV")] + _glFogCoordFormatNV _FogCoordFormatNV { get; } + + // --- + + delegate void _glFogCoordPointer(FogPointerTypeEXT type, int stride, IntPtr pointer); + [GlEntryPoint("glFogCoordPointer")] + _glFogCoordPointer _FogCoordPointer { get; } + + // --- + + delegate void _glFogCoordPointerEXT(FogPointerTypeEXT type, int stride, IntPtr pointer); + [GlEntryPoint("glFogCoordPointerEXT")] + _glFogCoordPointerEXT _FogCoordPointerEXT { get; } + + // --- + + delegate void _glFogCoordPointerListIBM(FogPointerTypeIBM type, int stride, IntPtr* pointer, int ptrstride); + [GlEntryPoint("glFogCoordPointerListIBM")] + _glFogCoordPointerListIBM _FogCoordPointerListIBM { get; } + + // --- + + delegate void _glFogCoordd(double coord); + [GlEntryPoint("glFogCoordd")] + _glFogCoordd _FogCoordd { get; } + + // --- + + delegate void _glFogCoorddEXT(double coord); + [GlEntryPoint("glFogCoorddEXT")] + _glFogCoorddEXT _FogCoorddEXT { get; } + + // --- + + delegate void _glFogCoorddv(double[] coord); + [GlEntryPoint("glFogCoorddv")] + _glFogCoorddv _FogCoorddv { get; } + + delegate void _glFogCoorddv_ptr(void* coord); + [GlEntryPoint("glFogCoorddv")] + _glFogCoorddv_ptr _FogCoorddv_ptr { get; } + + delegate void _glFogCoorddv_intptr(IntPtr coord); + [GlEntryPoint("glFogCoorddv")] + _glFogCoorddv_intptr _FogCoorddv_intptr { get; } + + // --- + + delegate void _glFogCoorddvEXT(double[] coord); + [GlEntryPoint("glFogCoorddvEXT")] + _glFogCoorddvEXT _FogCoorddvEXT { get; } + + delegate void _glFogCoorddvEXT_ptr(void* coord); + [GlEntryPoint("glFogCoorddvEXT")] + _glFogCoorddvEXT_ptr _FogCoorddvEXT_ptr { get; } + + delegate void _glFogCoorddvEXT_intptr(IntPtr coord); + [GlEntryPoint("glFogCoorddvEXT")] + _glFogCoorddvEXT_intptr _FogCoorddvEXT_intptr { get; } + + // --- + + delegate void _glFogCoordf(float coord); + [GlEntryPoint("glFogCoordf")] + _glFogCoordf _FogCoordf { get; } + + // --- + + delegate void _glFogCoordfEXT(float coord); + [GlEntryPoint("glFogCoordfEXT")] + _glFogCoordfEXT _FogCoordfEXT { get; } + + // --- + + delegate void _glFogCoordfv(float[] coord); + [GlEntryPoint("glFogCoordfv")] + _glFogCoordfv _FogCoordfv { get; } + + delegate void _glFogCoordfv_ptr(void* coord); + [GlEntryPoint("glFogCoordfv")] + _glFogCoordfv_ptr _FogCoordfv_ptr { get; } + + delegate void _glFogCoordfv_intptr(IntPtr coord); + [GlEntryPoint("glFogCoordfv")] + _glFogCoordfv_intptr _FogCoordfv_intptr { get; } + + // --- + + delegate void _glFogCoordfvEXT(float[] coord); + [GlEntryPoint("glFogCoordfvEXT")] + _glFogCoordfvEXT _FogCoordfvEXT { get; } + + delegate void _glFogCoordfvEXT_ptr(void* coord); + [GlEntryPoint("glFogCoordfvEXT")] + _glFogCoordfvEXT_ptr _FogCoordfvEXT_ptr { get; } + + delegate void _glFogCoordfvEXT_intptr(IntPtr coord); + [GlEntryPoint("glFogCoordfvEXT")] + _glFogCoordfvEXT_intptr _FogCoordfvEXT_intptr { get; } + + // --- + + delegate void _glFogCoordhNV(float fog); + [GlEntryPoint("glFogCoordhNV")] + _glFogCoordhNV _FogCoordhNV { get; } + + // --- + + delegate void _glFogCoordhvNV(float[] fog); + [GlEntryPoint("glFogCoordhvNV")] + _glFogCoordhvNV _FogCoordhvNV { get; } + + delegate void _glFogCoordhvNV_ptr(void* fog); + [GlEntryPoint("glFogCoordhvNV")] + _glFogCoordhvNV_ptr _FogCoordhvNV_ptr { get; } + + delegate void _glFogCoordhvNV_intptr(IntPtr fog); + [GlEntryPoint("glFogCoordhvNV")] + _glFogCoordhvNV_intptr _FogCoordhvNV_intptr { get; } + + // --- + + delegate void _glFogFuncSGIS(int n, float[] points); + [GlEntryPoint("glFogFuncSGIS")] + _glFogFuncSGIS _FogFuncSGIS { get; } + + delegate void _glFogFuncSGIS_ptr(int n, void* points); + [GlEntryPoint("glFogFuncSGIS")] + _glFogFuncSGIS_ptr _FogFuncSGIS_ptr { get; } + + delegate void _glFogFuncSGIS_intptr(int n, IntPtr points); + [GlEntryPoint("glFogFuncSGIS")] + _glFogFuncSGIS_intptr _FogFuncSGIS_intptr { get; } + + // --- + + delegate void _glFogf(FogParameter pname, float param); + [GlEntryPoint("glFogf")] + _glFogf _Fogf { get; } + + // --- + + delegate void _glFogfv(FogParameter pname, float[] @params); + [GlEntryPoint("glFogfv")] + _glFogfv _Fogfv { get; } + + delegate void _glFogfv_ptr(FogParameter pname, void* @params); + [GlEntryPoint("glFogfv")] + _glFogfv_ptr _Fogfv_ptr { get; } + + delegate void _glFogfv_intptr(FogParameter pname, IntPtr @params); + [GlEntryPoint("glFogfv")] + _glFogfv_intptr _Fogfv_intptr { get; } + + // --- + + delegate void _glFogi(FogParameter pname, int param); + [GlEntryPoint("glFogi")] + _glFogi _Fogi { get; } + + // --- + + delegate void _glFogiv(FogParameter pname, int[] @params); + [GlEntryPoint("glFogiv")] + _glFogiv _Fogiv { get; } + + delegate void _glFogiv_ptr(FogParameter pname, void* @params); + [GlEntryPoint("glFogiv")] + _glFogiv_ptr _Fogiv_ptr { get; } + + delegate void _glFogiv_intptr(FogParameter pname, IntPtr @params); + [GlEntryPoint("glFogiv")] + _glFogiv_intptr _Fogiv_intptr { get; } + + // --- + + delegate void _glFogx(FogPName pname, float param); + [GlEntryPoint("glFogx")] + _glFogx _Fogx { get; } + + // --- + + delegate void _glFogxOES(FogPName pname, float param); + [GlEntryPoint("glFogxOES")] + _glFogxOES _FogxOES { get; } + + // --- + + delegate void _glFogxv(FogPName pname, float[] param); + [GlEntryPoint("glFogxv")] + _glFogxv _Fogxv { get; } + + delegate void _glFogxv_ptr(FogPName pname, void* param); + [GlEntryPoint("glFogxv")] + _glFogxv_ptr _Fogxv_ptr { get; } + + delegate void _glFogxv_intptr(FogPName pname, IntPtr param); + [GlEntryPoint("glFogxv")] + _glFogxv_intptr _Fogxv_intptr { get; } + + // --- + + delegate void _glFogxvOES(FogPName pname, float[] param); + [GlEntryPoint("glFogxvOES")] + _glFogxvOES _FogxvOES { get; } + + delegate void _glFogxvOES_ptr(FogPName pname, void* param); + [GlEntryPoint("glFogxvOES")] + _glFogxvOES_ptr _FogxvOES_ptr { get; } + + delegate void _glFogxvOES_intptr(FogPName pname, IntPtr param); + [GlEntryPoint("glFogxvOES")] + _glFogxvOES_intptr _FogxvOES_intptr { get; } + + // --- + + delegate void _glFragmentColorMaterialSGIX(MaterialFace face, MaterialParameter mode); + [GlEntryPoint("glFragmentColorMaterialSGIX")] + _glFragmentColorMaterialSGIX _FragmentColorMaterialSGIX { get; } + + // --- + + delegate void _glFragmentCoverageColorNV(uint color); + [GlEntryPoint("glFragmentCoverageColorNV")] + _glFragmentCoverageColorNV _FragmentCoverageColorNV { get; } + + // --- + + delegate void _glFragmentLightModelfSGIX(FragmentLightModelParameterSGIX pname, float param); + [GlEntryPoint("glFragmentLightModelfSGIX")] + _glFragmentLightModelfSGIX _FragmentLightModelfSGIX { get; } + + // --- + + delegate void _glFragmentLightModelfvSGIX(FragmentLightModelParameterSGIX pname, float[] @params); + [GlEntryPoint("glFragmentLightModelfvSGIX")] + _glFragmentLightModelfvSGIX _FragmentLightModelfvSGIX { get; } + + delegate void _glFragmentLightModelfvSGIX_ptr(FragmentLightModelParameterSGIX pname, void* @params); + [GlEntryPoint("glFragmentLightModelfvSGIX")] + _glFragmentLightModelfvSGIX_ptr _FragmentLightModelfvSGIX_ptr { get; } + + delegate void _glFragmentLightModelfvSGIX_intptr(FragmentLightModelParameterSGIX pname, IntPtr @params); + [GlEntryPoint("glFragmentLightModelfvSGIX")] + _glFragmentLightModelfvSGIX_intptr _FragmentLightModelfvSGIX_intptr { get; } + + // --- + + delegate void _glFragmentLightModeliSGIX(FragmentLightModelParameterSGIX pname, int param); + [GlEntryPoint("glFragmentLightModeliSGIX")] + _glFragmentLightModeliSGIX _FragmentLightModeliSGIX { get; } + + // --- + + delegate void _glFragmentLightModelivSGIX(FragmentLightModelParameterSGIX pname, int[] @params); + [GlEntryPoint("glFragmentLightModelivSGIX")] + _glFragmentLightModelivSGIX _FragmentLightModelivSGIX { get; } + + delegate void _glFragmentLightModelivSGIX_ptr(FragmentLightModelParameterSGIX pname, void* @params); + [GlEntryPoint("glFragmentLightModelivSGIX")] + _glFragmentLightModelivSGIX_ptr _FragmentLightModelivSGIX_ptr { get; } + + delegate void _glFragmentLightModelivSGIX_intptr(FragmentLightModelParameterSGIX pname, IntPtr @params); + [GlEntryPoint("glFragmentLightModelivSGIX")] + _glFragmentLightModelivSGIX_intptr _FragmentLightModelivSGIX_intptr { get; } + + // --- + + delegate void _glFragmentLightfSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, float param); + [GlEntryPoint("glFragmentLightfSGIX")] + _glFragmentLightfSGIX _FragmentLightfSGIX { get; } + + // --- + + delegate void _glFragmentLightfvSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, float[] @params); + [GlEntryPoint("glFragmentLightfvSGIX")] + _glFragmentLightfvSGIX _FragmentLightfvSGIX { get; } + + delegate void _glFragmentLightfvSGIX_ptr(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, void* @params); + [GlEntryPoint("glFragmentLightfvSGIX")] + _glFragmentLightfvSGIX_ptr _FragmentLightfvSGIX_ptr { get; } + + delegate void _glFragmentLightfvSGIX_intptr(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, IntPtr @params); + [GlEntryPoint("glFragmentLightfvSGIX")] + _glFragmentLightfvSGIX_intptr _FragmentLightfvSGIX_intptr { get; } + + // --- + + delegate void _glFragmentLightiSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, int param); + [GlEntryPoint("glFragmentLightiSGIX")] + _glFragmentLightiSGIX _FragmentLightiSGIX { get; } + + // --- + + delegate void _glFragmentLightivSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, int[] @params); + [GlEntryPoint("glFragmentLightivSGIX")] + _glFragmentLightivSGIX _FragmentLightivSGIX { get; } + + delegate void _glFragmentLightivSGIX_ptr(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, void* @params); + [GlEntryPoint("glFragmentLightivSGIX")] + _glFragmentLightivSGIX_ptr _FragmentLightivSGIX_ptr { get; } + + delegate void _glFragmentLightivSGIX_intptr(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, IntPtr @params); + [GlEntryPoint("glFragmentLightivSGIX")] + _glFragmentLightivSGIX_intptr _FragmentLightivSGIX_intptr { get; } + + // --- + + delegate void _glFragmentMaterialfSGIX(MaterialFace face, MaterialParameter pname, float param); + [GlEntryPoint("glFragmentMaterialfSGIX")] + _glFragmentMaterialfSGIX _FragmentMaterialfSGIX { get; } + + // --- + + delegate void _glFragmentMaterialfvSGIX(MaterialFace face, MaterialParameter pname, float[] @params); + [GlEntryPoint("glFragmentMaterialfvSGIX")] + _glFragmentMaterialfvSGIX _FragmentMaterialfvSGIX { get; } + + delegate void _glFragmentMaterialfvSGIX_ptr(MaterialFace face, MaterialParameter pname, void* @params); + [GlEntryPoint("glFragmentMaterialfvSGIX")] + _glFragmentMaterialfvSGIX_ptr _FragmentMaterialfvSGIX_ptr { get; } + + delegate void _glFragmentMaterialfvSGIX_intptr(MaterialFace face, MaterialParameter pname, IntPtr @params); + [GlEntryPoint("glFragmentMaterialfvSGIX")] + _glFragmentMaterialfvSGIX_intptr _FragmentMaterialfvSGIX_intptr { get; } + + // --- + + delegate void _glFragmentMaterialiSGIX(MaterialFace face, MaterialParameter pname, int param); + [GlEntryPoint("glFragmentMaterialiSGIX")] + _glFragmentMaterialiSGIX _FragmentMaterialiSGIX { get; } + + // --- + + delegate void _glFragmentMaterialivSGIX(MaterialFace face, MaterialParameter pname, int[] @params); + [GlEntryPoint("glFragmentMaterialivSGIX")] + _glFragmentMaterialivSGIX _FragmentMaterialivSGIX { get; } + + delegate void _glFragmentMaterialivSGIX_ptr(MaterialFace face, MaterialParameter pname, void* @params); + [GlEntryPoint("glFragmentMaterialivSGIX")] + _glFragmentMaterialivSGIX_ptr _FragmentMaterialivSGIX_ptr { get; } + + delegate void _glFragmentMaterialivSGIX_intptr(MaterialFace face, MaterialParameter pname, IntPtr @params); + [GlEntryPoint("glFragmentMaterialivSGIX")] + _glFragmentMaterialivSGIX_intptr _FragmentMaterialivSGIX_intptr { get; } + + // --- + + delegate void _glFrameTerminatorGREMEDY(); + [GlEntryPoint("glFrameTerminatorGREMEDY")] + _glFrameTerminatorGREMEDY _FrameTerminatorGREMEDY { get; } + + // --- + + delegate void _glFrameZoomSGIX(int factor); + [GlEntryPoint("glFrameZoomSGIX")] + _glFrameZoomSGIX _FrameZoomSGIX { get; } + + // --- + + delegate void _glFramebufferDrawBufferEXT(uint framebuffer, DrawBufferMode mode); + [GlEntryPoint("glFramebufferDrawBufferEXT")] + _glFramebufferDrawBufferEXT _FramebufferDrawBufferEXT { get; } + + // --- + + delegate void _glFramebufferDrawBuffersEXT(uint framebuffer, int n, DrawBufferMode[] bufs); + [GlEntryPoint("glFramebufferDrawBuffersEXT")] + _glFramebufferDrawBuffersEXT _FramebufferDrawBuffersEXT { get; } + + delegate void _glFramebufferDrawBuffersEXT_ptr(uint framebuffer, int n, void* bufs); + [GlEntryPoint("glFramebufferDrawBuffersEXT")] + _glFramebufferDrawBuffersEXT_ptr _FramebufferDrawBuffersEXT_ptr { get; } + + delegate void _glFramebufferDrawBuffersEXT_intptr(uint framebuffer, int n, IntPtr bufs); + [GlEntryPoint("glFramebufferDrawBuffersEXT")] + _glFramebufferDrawBuffersEXT_intptr _FramebufferDrawBuffersEXT_intptr { get; } + + // --- + + delegate void _glFramebufferFetchBarrierEXT(); + [GlEntryPoint("glFramebufferFetchBarrierEXT")] + _glFramebufferFetchBarrierEXT _FramebufferFetchBarrierEXT { get; } + + // --- + + delegate void _glFramebufferFetchBarrierQCOM(); + [GlEntryPoint("glFramebufferFetchBarrierQCOM")] + _glFramebufferFetchBarrierQCOM _FramebufferFetchBarrierQCOM { get; } + + // --- + + delegate void _glFramebufferFoveationConfigQCOM(uint framebuffer, uint numLayers, uint focalPointsPerLayer, uint requestedFeatures, out uint providedFeatures); + [GlEntryPoint("glFramebufferFoveationConfigQCOM")] + _glFramebufferFoveationConfigQCOM _FramebufferFoveationConfigQCOM { get; } + + // --- + + delegate void _glFramebufferFoveationParametersQCOM(uint framebuffer, uint layer, uint focalPoint, float focalX, float focalY, float gainX, float gainY, float foveaArea); + [GlEntryPoint("glFramebufferFoveationParametersQCOM")] + _glFramebufferFoveationParametersQCOM _FramebufferFoveationParametersQCOM { get; } + + // --- + + delegate void _glFramebufferParameteri(FramebufferTarget target, FramebufferParameterName pname, int param); + [GlEntryPoint("glFramebufferParameteri")] + _glFramebufferParameteri _FramebufferParameteri { get; } + + // --- + + delegate void _glFramebufferPixelLocalStorageSizeEXT(uint target, int size); + [GlEntryPoint("glFramebufferPixelLocalStorageSizeEXT")] + _glFramebufferPixelLocalStorageSizeEXT _FramebufferPixelLocalStorageSizeEXT { get; } + + // --- + + delegate void _glFramebufferReadBufferEXT(uint framebuffer, ReadBufferMode mode); + [GlEntryPoint("glFramebufferReadBufferEXT")] + _glFramebufferReadBufferEXT _FramebufferReadBufferEXT { get; } + + // --- + + delegate void _glFramebufferRenderbuffer(FramebufferTarget target, FramebufferAttachment attachment, RenderbufferTarget renderbuffertarget, uint renderbuffer); + [GlEntryPoint("glFramebufferRenderbuffer")] + _glFramebufferRenderbuffer _FramebufferRenderbuffer { get; } + + // --- + + delegate void _glFramebufferRenderbufferEXT(FramebufferTarget target, FramebufferAttachment attachment, RenderbufferTarget renderbuffertarget, uint renderbuffer); + [GlEntryPoint("glFramebufferRenderbufferEXT")] + _glFramebufferRenderbufferEXT _FramebufferRenderbufferEXT { get; } + + // --- + + delegate void _glFramebufferRenderbufferOES(FramebufferTarget target, FramebufferAttachment attachment, RenderbufferTarget renderbuffertarget, uint renderbuffer); + [GlEntryPoint("glFramebufferRenderbufferOES")] + _glFramebufferRenderbufferOES _FramebufferRenderbufferOES { get; } + + // --- + + delegate void _glFramebufferSampleLocationsfvARB(FramebufferTarget target, uint start, int count, float[] v); + [GlEntryPoint("glFramebufferSampleLocationsfvARB")] + _glFramebufferSampleLocationsfvARB _FramebufferSampleLocationsfvARB { get; } + + delegate void _glFramebufferSampleLocationsfvARB_ptr(FramebufferTarget target, uint start, int count, void* v); + [GlEntryPoint("glFramebufferSampleLocationsfvARB")] + _glFramebufferSampleLocationsfvARB_ptr _FramebufferSampleLocationsfvARB_ptr { get; } + + delegate void _glFramebufferSampleLocationsfvARB_intptr(FramebufferTarget target, uint start, int count, IntPtr v); + [GlEntryPoint("glFramebufferSampleLocationsfvARB")] + _glFramebufferSampleLocationsfvARB_intptr _FramebufferSampleLocationsfvARB_intptr { get; } + + // --- + + delegate void _glFramebufferSampleLocationsfvNV(FramebufferTarget target, uint start, int count, float[] v); + [GlEntryPoint("glFramebufferSampleLocationsfvNV")] + _glFramebufferSampleLocationsfvNV _FramebufferSampleLocationsfvNV { get; } + + delegate void _glFramebufferSampleLocationsfvNV_ptr(FramebufferTarget target, uint start, int count, void* v); + [GlEntryPoint("glFramebufferSampleLocationsfvNV")] + _glFramebufferSampleLocationsfvNV_ptr _FramebufferSampleLocationsfvNV_ptr { get; } + + delegate void _glFramebufferSampleLocationsfvNV_intptr(FramebufferTarget target, uint start, int count, IntPtr v); + [GlEntryPoint("glFramebufferSampleLocationsfvNV")] + _glFramebufferSampleLocationsfvNV_intptr _FramebufferSampleLocationsfvNV_intptr { get; } + + // --- + + delegate void _glFramebufferSamplePositionsfvAMD(FramebufferTarget target, uint numsamples, uint pixelindex, float[] values); + [GlEntryPoint("glFramebufferSamplePositionsfvAMD")] + _glFramebufferSamplePositionsfvAMD _FramebufferSamplePositionsfvAMD { get; } + + delegate void _glFramebufferSamplePositionsfvAMD_ptr(FramebufferTarget target, uint numsamples, uint pixelindex, void* values); + [GlEntryPoint("glFramebufferSamplePositionsfvAMD")] + _glFramebufferSamplePositionsfvAMD_ptr _FramebufferSamplePositionsfvAMD_ptr { get; } + + delegate void _glFramebufferSamplePositionsfvAMD_intptr(FramebufferTarget target, uint numsamples, uint pixelindex, IntPtr values); + [GlEntryPoint("glFramebufferSamplePositionsfvAMD")] + _glFramebufferSamplePositionsfvAMD_intptr _FramebufferSamplePositionsfvAMD_intptr { get; } + + // --- + + delegate void _glFramebufferTexture(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level); + [GlEntryPoint("glFramebufferTexture")] + _glFramebufferTexture _FramebufferTexture { get; } + + // --- + + delegate void _glFramebufferTexture1D(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level); + [GlEntryPoint("glFramebufferTexture1D")] + _glFramebufferTexture1D _FramebufferTexture1D { get; } + + // --- + + delegate void _glFramebufferTexture1DEXT(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level); + [GlEntryPoint("glFramebufferTexture1DEXT")] + _glFramebufferTexture1DEXT _FramebufferTexture1DEXT { get; } + + // --- + + delegate void _glFramebufferTexture2D(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level); + [GlEntryPoint("glFramebufferTexture2D")] + _glFramebufferTexture2D _FramebufferTexture2D { get; } + + // --- + + delegate void _glFramebufferTexture2DEXT(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level); + [GlEntryPoint("glFramebufferTexture2DEXT")] + _glFramebufferTexture2DEXT _FramebufferTexture2DEXT { get; } + + // --- + + delegate void _glFramebufferTexture2DDownsampleIMG(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int xscale, int yscale); + [GlEntryPoint("glFramebufferTexture2DDownsampleIMG")] + _glFramebufferTexture2DDownsampleIMG _FramebufferTexture2DDownsampleIMG { get; } + + // --- + + delegate void _glFramebufferTexture2DMultisampleEXT(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int samples); + [GlEntryPoint("glFramebufferTexture2DMultisampleEXT")] + _glFramebufferTexture2DMultisampleEXT _FramebufferTexture2DMultisampleEXT { get; } + + // --- + + delegate void _glFramebufferTexture2DMultisampleIMG(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int samples); + [GlEntryPoint("glFramebufferTexture2DMultisampleIMG")] + _glFramebufferTexture2DMultisampleIMG _FramebufferTexture2DMultisampleIMG { get; } + + // --- + + delegate void _glFramebufferTexture2DOES(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level); + [GlEntryPoint("glFramebufferTexture2DOES")] + _glFramebufferTexture2DOES _FramebufferTexture2DOES { get; } + + // --- + + delegate void _glFramebufferTexture3D(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int zoffset); + [GlEntryPoint("glFramebufferTexture3D")] + _glFramebufferTexture3D _FramebufferTexture3D { get; } + + // --- + + delegate void _glFramebufferTexture3DEXT(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int zoffset); + [GlEntryPoint("glFramebufferTexture3DEXT")] + _glFramebufferTexture3DEXT _FramebufferTexture3DEXT { get; } + + // --- + + delegate void _glFramebufferTexture3DOES(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int zoffset); + [GlEntryPoint("glFramebufferTexture3DOES")] + _glFramebufferTexture3DOES _FramebufferTexture3DOES { get; } + + // --- + + delegate void _glFramebufferTextureARB(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level); + [GlEntryPoint("glFramebufferTextureARB")] + _glFramebufferTextureARB _FramebufferTextureARB { get; } + + // --- + + delegate void _glFramebufferTextureEXT(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level); + [GlEntryPoint("glFramebufferTextureEXT")] + _glFramebufferTextureEXT _FramebufferTextureEXT { get; } + + // --- + + delegate void _glFramebufferTextureFaceARB(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, TextureTarget face); + [GlEntryPoint("glFramebufferTextureFaceARB")] + _glFramebufferTextureFaceARB _FramebufferTextureFaceARB { get; } + + // --- + + delegate void _glFramebufferTextureFaceEXT(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, TextureTarget face); + [GlEntryPoint("glFramebufferTextureFaceEXT")] + _glFramebufferTextureFaceEXT _FramebufferTextureFaceEXT { get; } + + // --- + + delegate void _glFramebufferTextureLayer(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, int layer); + [GlEntryPoint("glFramebufferTextureLayer")] + _glFramebufferTextureLayer _FramebufferTextureLayer { get; } + + // --- + + delegate void _glFramebufferTextureLayerARB(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, int layer); + [GlEntryPoint("glFramebufferTextureLayerARB")] + _glFramebufferTextureLayerARB _FramebufferTextureLayerARB { get; } + + // --- + + delegate void _glFramebufferTextureLayerEXT(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, int layer); + [GlEntryPoint("glFramebufferTextureLayerEXT")] + _glFramebufferTextureLayerEXT _FramebufferTextureLayerEXT { get; } + + // --- + + delegate void _glFramebufferTextureLayerDownsampleIMG(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, int layer, int xscale, int yscale); + [GlEntryPoint("glFramebufferTextureLayerDownsampleIMG")] + _glFramebufferTextureLayerDownsampleIMG _FramebufferTextureLayerDownsampleIMG { get; } + + // --- + + delegate void _glFramebufferTextureMultisampleMultiviewOVR(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, int samples, int baseViewIndex, int numViews); + [GlEntryPoint("glFramebufferTextureMultisampleMultiviewOVR")] + _glFramebufferTextureMultisampleMultiviewOVR _FramebufferTextureMultisampleMultiviewOVR { get; } + + // --- + + delegate void _glFramebufferTextureMultiviewOVR(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, int baseViewIndex, int numViews); + [GlEntryPoint("glFramebufferTextureMultiviewOVR")] + _glFramebufferTextureMultiviewOVR _FramebufferTextureMultiviewOVR { get; } + + // --- + + delegate void _glFramebufferTextureOES(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level); + [GlEntryPoint("glFramebufferTextureOES")] + _glFramebufferTextureOES _FramebufferTextureOES { get; } + + // --- + + delegate void _glFreeObjectBufferATI(uint buffer); + [GlEntryPoint("glFreeObjectBufferATI")] + _glFreeObjectBufferATI _FreeObjectBufferATI { get; } + + // --- + + delegate void _glFrontFace(FrontFaceDirection mode); + [GlEntryPoint("glFrontFace")] + _glFrontFace _FrontFace { get; } + + // --- + + delegate void _glFrustum(double left, double right, double bottom, double top, double zNear, double zFar); + [GlEntryPoint("glFrustum")] + _glFrustum _Frustum { get; } + + // --- + + delegate void _glFrustumf(float l, float r, float b, float t, float n, float f); + [GlEntryPoint("glFrustumf")] + _glFrustumf _Frustumf { get; } + + // --- + + delegate void _glFrustumfOES(float l, float r, float b, float t, float n, float f); + [GlEntryPoint("glFrustumfOES")] + _glFrustumfOES _FrustumfOES { get; } + + // --- + + delegate void _glFrustumx(float l, float r, float b, float t, float n, float f); + [GlEntryPoint("glFrustumx")] + _glFrustumx _Frustumx { get; } + + // --- + + delegate void _glFrustumxOES(float l, float r, float b, float t, float n, float f); + [GlEntryPoint("glFrustumxOES")] + _glFrustumxOES _FrustumxOES { get; } + + // --- + + delegate uint _glGenAsyncMarkersSGIX(int range); + [GlEntryPoint("glGenAsyncMarkersSGIX")] + _glGenAsyncMarkersSGIX _GenAsyncMarkersSGIX { get; } + + // --- + + delegate void _glGenBuffers(int n, uint[] buffers); + [GlEntryPoint("glGenBuffers")] + _glGenBuffers _GenBuffers { get; } + + delegate void _glGenBuffers_ptr(int n, void* buffers); + [GlEntryPoint("glGenBuffers")] + _glGenBuffers_ptr _GenBuffers_ptr { get; } + + delegate void _glGenBuffers_intptr(int n, IntPtr buffers); + [GlEntryPoint("glGenBuffers")] + _glGenBuffers_intptr _GenBuffers_intptr { get; } + + // --- + + delegate void _glGenBuffersARB(int n, uint[] buffers); + [GlEntryPoint("glGenBuffersARB")] + _glGenBuffersARB _GenBuffersARB { get; } + + delegate void _glGenBuffersARB_ptr(int n, void* buffers); + [GlEntryPoint("glGenBuffersARB")] + _glGenBuffersARB_ptr _GenBuffersARB_ptr { get; } + + delegate void _glGenBuffersARB_intptr(int n, IntPtr buffers); + [GlEntryPoint("glGenBuffersARB")] + _glGenBuffersARB_intptr _GenBuffersARB_intptr { get; } + + // --- + + delegate void _glGenFencesAPPLE(int n, uint[] fences); + [GlEntryPoint("glGenFencesAPPLE")] + _glGenFencesAPPLE _GenFencesAPPLE { get; } + + delegate void _glGenFencesAPPLE_ptr(int n, void* fences); + [GlEntryPoint("glGenFencesAPPLE")] + _glGenFencesAPPLE_ptr _GenFencesAPPLE_ptr { get; } + + delegate void _glGenFencesAPPLE_intptr(int n, IntPtr fences); + [GlEntryPoint("glGenFencesAPPLE")] + _glGenFencesAPPLE_intptr _GenFencesAPPLE_intptr { get; } + + // --- + + delegate void _glGenFencesNV(int n, uint[] fences); + [GlEntryPoint("glGenFencesNV")] + _glGenFencesNV _GenFencesNV { get; } + + delegate void _glGenFencesNV_ptr(int n, void* fences); + [GlEntryPoint("glGenFencesNV")] + _glGenFencesNV_ptr _GenFencesNV_ptr { get; } + + delegate void _glGenFencesNV_intptr(int n, IntPtr fences); + [GlEntryPoint("glGenFencesNV")] + _glGenFencesNV_intptr _GenFencesNV_intptr { get; } + + // --- + + delegate uint _glGenFragmentShadersATI(uint range); + [GlEntryPoint("glGenFragmentShadersATI")] + _glGenFragmentShadersATI _GenFragmentShadersATI { get; } + + // --- + + delegate void _glGenFramebuffers(int n, uint[] framebuffers); + [GlEntryPoint("glGenFramebuffers")] + _glGenFramebuffers _GenFramebuffers { get; } + + delegate void _glGenFramebuffers_ptr(int n, void* framebuffers); + [GlEntryPoint("glGenFramebuffers")] + _glGenFramebuffers_ptr _GenFramebuffers_ptr { get; } + + delegate void _glGenFramebuffers_intptr(int n, IntPtr framebuffers); + [GlEntryPoint("glGenFramebuffers")] + _glGenFramebuffers_intptr _GenFramebuffers_intptr { get; } + + // --- + + delegate void _glGenFramebuffersEXT(int n, uint[] framebuffers); + [GlEntryPoint("glGenFramebuffersEXT")] + _glGenFramebuffersEXT _GenFramebuffersEXT { get; } + + delegate void _glGenFramebuffersEXT_ptr(int n, void* framebuffers); + [GlEntryPoint("glGenFramebuffersEXT")] + _glGenFramebuffersEXT_ptr _GenFramebuffersEXT_ptr { get; } + + delegate void _glGenFramebuffersEXT_intptr(int n, IntPtr framebuffers); + [GlEntryPoint("glGenFramebuffersEXT")] + _glGenFramebuffersEXT_intptr _GenFramebuffersEXT_intptr { get; } + + // --- + + delegate void _glGenFramebuffersOES(int n, uint[] framebuffers); + [GlEntryPoint("glGenFramebuffersOES")] + _glGenFramebuffersOES _GenFramebuffersOES { get; } + + delegate void _glGenFramebuffersOES_ptr(int n, void* framebuffers); + [GlEntryPoint("glGenFramebuffersOES")] + _glGenFramebuffersOES_ptr _GenFramebuffersOES_ptr { get; } + + delegate void _glGenFramebuffersOES_intptr(int n, IntPtr framebuffers); + [GlEntryPoint("glGenFramebuffersOES")] + _glGenFramebuffersOES_intptr _GenFramebuffersOES_intptr { get; } + + // --- + + delegate uint _glGenLists(int range); + [GlEntryPoint("glGenLists")] + _glGenLists _GenLists { get; } + + // --- + + delegate void _glGenNamesAMD(int identifier, uint num, uint[] names); + [GlEntryPoint("glGenNamesAMD")] + _glGenNamesAMD _GenNamesAMD { get; } + + delegate void _glGenNamesAMD_ptr(int identifier, uint num, void* names); + [GlEntryPoint("glGenNamesAMD")] + _glGenNamesAMD_ptr _GenNamesAMD_ptr { get; } + + delegate void _glGenNamesAMD_intptr(int identifier, uint num, IntPtr names); + [GlEntryPoint("glGenNamesAMD")] + _glGenNamesAMD_intptr _GenNamesAMD_intptr { get; } + + // --- + + delegate void _glGenOcclusionQueriesNV(int n, uint[] ids); + [GlEntryPoint("glGenOcclusionQueriesNV")] + _glGenOcclusionQueriesNV _GenOcclusionQueriesNV { get; } + + delegate void _glGenOcclusionQueriesNV_ptr(int n, void* ids); + [GlEntryPoint("glGenOcclusionQueriesNV")] + _glGenOcclusionQueriesNV_ptr _GenOcclusionQueriesNV_ptr { get; } + + delegate void _glGenOcclusionQueriesNV_intptr(int n, IntPtr ids); + [GlEntryPoint("glGenOcclusionQueriesNV")] + _glGenOcclusionQueriesNV_intptr _GenOcclusionQueriesNV_intptr { get; } + + // --- + + delegate uint _glGenPathsNV(int range); + [GlEntryPoint("glGenPathsNV")] + _glGenPathsNV _GenPathsNV { get; } + + // --- + + delegate void _glGenPerfMonitorsAMD(int n, uint[] monitors); + [GlEntryPoint("glGenPerfMonitorsAMD")] + _glGenPerfMonitorsAMD _GenPerfMonitorsAMD { get; } + + delegate void _glGenPerfMonitorsAMD_ptr(int n, void* monitors); + [GlEntryPoint("glGenPerfMonitorsAMD")] + _glGenPerfMonitorsAMD_ptr _GenPerfMonitorsAMD_ptr { get; } + + delegate void _glGenPerfMonitorsAMD_intptr(int n, IntPtr monitors); + [GlEntryPoint("glGenPerfMonitorsAMD")] + _glGenPerfMonitorsAMD_intptr _GenPerfMonitorsAMD_intptr { get; } + + // --- + + delegate void _glGenProgramPipelines(int n, uint[] pipelines); + [GlEntryPoint("glGenProgramPipelines")] + _glGenProgramPipelines _GenProgramPipelines { get; } + + delegate void _glGenProgramPipelines_ptr(int n, void* pipelines); + [GlEntryPoint("glGenProgramPipelines")] + _glGenProgramPipelines_ptr _GenProgramPipelines_ptr { get; } + + delegate void _glGenProgramPipelines_intptr(int n, IntPtr pipelines); + [GlEntryPoint("glGenProgramPipelines")] + _glGenProgramPipelines_intptr _GenProgramPipelines_intptr { get; } + + // --- + + delegate void _glGenProgramPipelinesEXT(int n, uint[] pipelines); + [GlEntryPoint("glGenProgramPipelinesEXT")] + _glGenProgramPipelinesEXT _GenProgramPipelinesEXT { get; } + + delegate void _glGenProgramPipelinesEXT_ptr(int n, void* pipelines); + [GlEntryPoint("glGenProgramPipelinesEXT")] + _glGenProgramPipelinesEXT_ptr _GenProgramPipelinesEXT_ptr { get; } + + delegate void _glGenProgramPipelinesEXT_intptr(int n, IntPtr pipelines); + [GlEntryPoint("glGenProgramPipelinesEXT")] + _glGenProgramPipelinesEXT_intptr _GenProgramPipelinesEXT_intptr { get; } + + // --- + + delegate void _glGenProgramsARB(int n, uint[] programs); + [GlEntryPoint("glGenProgramsARB")] + _glGenProgramsARB _GenProgramsARB { get; } + + delegate void _glGenProgramsARB_ptr(int n, void* programs); + [GlEntryPoint("glGenProgramsARB")] + _glGenProgramsARB_ptr _GenProgramsARB_ptr { get; } + + delegate void _glGenProgramsARB_intptr(int n, IntPtr programs); + [GlEntryPoint("glGenProgramsARB")] + _glGenProgramsARB_intptr _GenProgramsARB_intptr { get; } + + // --- + + delegate void _glGenProgramsNV(int n, uint[] programs); + [GlEntryPoint("glGenProgramsNV")] + _glGenProgramsNV _GenProgramsNV { get; } + + delegate void _glGenProgramsNV_ptr(int n, void* programs); + [GlEntryPoint("glGenProgramsNV")] + _glGenProgramsNV_ptr _GenProgramsNV_ptr { get; } + + delegate void _glGenProgramsNV_intptr(int n, IntPtr programs); + [GlEntryPoint("glGenProgramsNV")] + _glGenProgramsNV_intptr _GenProgramsNV_intptr { get; } + + // --- + + delegate void _glGenQueries(int n, uint[] ids); + [GlEntryPoint("glGenQueries")] + _glGenQueries _GenQueries { get; } + + delegate void _glGenQueries_ptr(int n, void* ids); + [GlEntryPoint("glGenQueries")] + _glGenQueries_ptr _GenQueries_ptr { get; } + + delegate void _glGenQueries_intptr(int n, IntPtr ids); + [GlEntryPoint("glGenQueries")] + _glGenQueries_intptr _GenQueries_intptr { get; } + + // --- + + delegate void _glGenQueriesARB(int n, uint[] ids); + [GlEntryPoint("glGenQueriesARB")] + _glGenQueriesARB _GenQueriesARB { get; } + + delegate void _glGenQueriesARB_ptr(int n, void* ids); + [GlEntryPoint("glGenQueriesARB")] + _glGenQueriesARB_ptr _GenQueriesARB_ptr { get; } + + delegate void _glGenQueriesARB_intptr(int n, IntPtr ids); + [GlEntryPoint("glGenQueriesARB")] + _glGenQueriesARB_intptr _GenQueriesARB_intptr { get; } + + // --- + + delegate void _glGenQueriesEXT(int n, uint[] ids); + [GlEntryPoint("glGenQueriesEXT")] + _glGenQueriesEXT _GenQueriesEXT { get; } + + delegate void _glGenQueriesEXT_ptr(int n, void* ids); + [GlEntryPoint("glGenQueriesEXT")] + _glGenQueriesEXT_ptr _GenQueriesEXT_ptr { get; } + + delegate void _glGenQueriesEXT_intptr(int n, IntPtr ids); + [GlEntryPoint("glGenQueriesEXT")] + _glGenQueriesEXT_intptr _GenQueriesEXT_intptr { get; } + + // --- + + delegate void _glGenQueryResourceTagNV(int n, int[] tagIds); + [GlEntryPoint("glGenQueryResourceTagNV")] + _glGenQueryResourceTagNV _GenQueryResourceTagNV { get; } + + delegate void _glGenQueryResourceTagNV_ptr(int n, void* tagIds); + [GlEntryPoint("glGenQueryResourceTagNV")] + _glGenQueryResourceTagNV_ptr _GenQueryResourceTagNV_ptr { get; } + + delegate void _glGenQueryResourceTagNV_intptr(int n, IntPtr tagIds); + [GlEntryPoint("glGenQueryResourceTagNV")] + _glGenQueryResourceTagNV_intptr _GenQueryResourceTagNV_intptr { get; } + + // --- + + delegate void _glGenRenderbuffers(int n, uint[] renderbuffers); + [GlEntryPoint("glGenRenderbuffers")] + _glGenRenderbuffers _GenRenderbuffers { get; } + + delegate void _glGenRenderbuffers_ptr(int n, void* renderbuffers); + [GlEntryPoint("glGenRenderbuffers")] + _glGenRenderbuffers_ptr _GenRenderbuffers_ptr { get; } + + delegate void _glGenRenderbuffers_intptr(int n, IntPtr renderbuffers); + [GlEntryPoint("glGenRenderbuffers")] + _glGenRenderbuffers_intptr _GenRenderbuffers_intptr { get; } + + // --- + + delegate void _glGenRenderbuffersEXT(int n, uint[] renderbuffers); + [GlEntryPoint("glGenRenderbuffersEXT")] + _glGenRenderbuffersEXT _GenRenderbuffersEXT { get; } + + delegate void _glGenRenderbuffersEXT_ptr(int n, void* renderbuffers); + [GlEntryPoint("glGenRenderbuffersEXT")] + _glGenRenderbuffersEXT_ptr _GenRenderbuffersEXT_ptr { get; } + + delegate void _glGenRenderbuffersEXT_intptr(int n, IntPtr renderbuffers); + [GlEntryPoint("glGenRenderbuffersEXT")] + _glGenRenderbuffersEXT_intptr _GenRenderbuffersEXT_intptr { get; } + + // --- + + delegate void _glGenRenderbuffersOES(int n, uint[] renderbuffers); + [GlEntryPoint("glGenRenderbuffersOES")] + _glGenRenderbuffersOES _GenRenderbuffersOES { get; } + + delegate void _glGenRenderbuffersOES_ptr(int n, void* renderbuffers); + [GlEntryPoint("glGenRenderbuffersOES")] + _glGenRenderbuffersOES_ptr _GenRenderbuffersOES_ptr { get; } + + delegate void _glGenRenderbuffersOES_intptr(int n, IntPtr renderbuffers); + [GlEntryPoint("glGenRenderbuffersOES")] + _glGenRenderbuffersOES_intptr _GenRenderbuffersOES_intptr { get; } + + // --- + + delegate void _glGenSamplers(int count, uint[] samplers); + [GlEntryPoint("glGenSamplers")] + _glGenSamplers _GenSamplers { get; } + + delegate void _glGenSamplers_ptr(int count, void* samplers); + [GlEntryPoint("glGenSamplers")] + _glGenSamplers_ptr _GenSamplers_ptr { get; } + + delegate void _glGenSamplers_intptr(int count, IntPtr samplers); + [GlEntryPoint("glGenSamplers")] + _glGenSamplers_intptr _GenSamplers_intptr { get; } + + // --- + + delegate void _glGenSemaphoresEXT(int n, uint[] semaphores); + [GlEntryPoint("glGenSemaphoresEXT")] + _glGenSemaphoresEXT _GenSemaphoresEXT { get; } + + delegate void _glGenSemaphoresEXT_ptr(int n, void* semaphores); + [GlEntryPoint("glGenSemaphoresEXT")] + _glGenSemaphoresEXT_ptr _GenSemaphoresEXT_ptr { get; } + + delegate void _glGenSemaphoresEXT_intptr(int n, IntPtr semaphores); + [GlEntryPoint("glGenSemaphoresEXT")] + _glGenSemaphoresEXT_intptr _GenSemaphoresEXT_intptr { get; } + + // --- + + delegate uint _glGenSymbolsEXT(DataTypeEXT datatype, VertexShaderStorageTypeEXT storagetype, ParameterRangeEXT range, uint components); + [GlEntryPoint("glGenSymbolsEXT")] + _glGenSymbolsEXT _GenSymbolsEXT { get; } + + // --- + + delegate void _glGenTextures(int n, uint[] textures); + [GlEntryPoint("glGenTextures")] + _glGenTextures _GenTextures { get; } + + delegate void _glGenTextures_ptr(int n, void* textures); + [GlEntryPoint("glGenTextures")] + _glGenTextures_ptr _GenTextures_ptr { get; } + + delegate void _glGenTextures_intptr(int n, IntPtr textures); + [GlEntryPoint("glGenTextures")] + _glGenTextures_intptr _GenTextures_intptr { get; } + + // --- + + delegate void _glGenTexturesEXT(int n, uint[] textures); + [GlEntryPoint("glGenTexturesEXT")] + _glGenTexturesEXT _GenTexturesEXT { get; } + + delegate void _glGenTexturesEXT_ptr(int n, void* textures); + [GlEntryPoint("glGenTexturesEXT")] + _glGenTexturesEXT_ptr _GenTexturesEXT_ptr { get; } + + delegate void _glGenTexturesEXT_intptr(int n, IntPtr textures); + [GlEntryPoint("glGenTexturesEXT")] + _glGenTexturesEXT_intptr _GenTexturesEXT_intptr { get; } + + // --- + + delegate void _glGenTransformFeedbacks(int n, uint[] ids); + [GlEntryPoint("glGenTransformFeedbacks")] + _glGenTransformFeedbacks _GenTransformFeedbacks { get; } + + delegate void _glGenTransformFeedbacks_ptr(int n, void* ids); + [GlEntryPoint("glGenTransformFeedbacks")] + _glGenTransformFeedbacks_ptr _GenTransformFeedbacks_ptr { get; } + + delegate void _glGenTransformFeedbacks_intptr(int n, IntPtr ids); + [GlEntryPoint("glGenTransformFeedbacks")] + _glGenTransformFeedbacks_intptr _GenTransformFeedbacks_intptr { get; } + + // --- + + delegate void _glGenTransformFeedbacksNV(int n, uint[] ids); + [GlEntryPoint("glGenTransformFeedbacksNV")] + _glGenTransformFeedbacksNV _GenTransformFeedbacksNV { get; } + + delegate void _glGenTransformFeedbacksNV_ptr(int n, void* ids); + [GlEntryPoint("glGenTransformFeedbacksNV")] + _glGenTransformFeedbacksNV_ptr _GenTransformFeedbacksNV_ptr { get; } + + delegate void _glGenTransformFeedbacksNV_intptr(int n, IntPtr ids); + [GlEntryPoint("glGenTransformFeedbacksNV")] + _glGenTransformFeedbacksNV_intptr _GenTransformFeedbacksNV_intptr { get; } + + // --- + + delegate void _glGenVertexArrays(int n, uint[] arrays); + [GlEntryPoint("glGenVertexArrays")] + _glGenVertexArrays _GenVertexArrays { get; } + + delegate void _glGenVertexArrays_ptr(int n, void* arrays); + [GlEntryPoint("glGenVertexArrays")] + _glGenVertexArrays_ptr _GenVertexArrays_ptr { get; } + + delegate void _glGenVertexArrays_intptr(int n, IntPtr arrays); + [GlEntryPoint("glGenVertexArrays")] + _glGenVertexArrays_intptr _GenVertexArrays_intptr { get; } + + // --- + + delegate void _glGenVertexArraysAPPLE(int n, uint[] arrays); + [GlEntryPoint("glGenVertexArraysAPPLE")] + _glGenVertexArraysAPPLE _GenVertexArraysAPPLE { get; } + + delegate void _glGenVertexArraysAPPLE_ptr(int n, void* arrays); + [GlEntryPoint("glGenVertexArraysAPPLE")] + _glGenVertexArraysAPPLE_ptr _GenVertexArraysAPPLE_ptr { get; } + + delegate void _glGenVertexArraysAPPLE_intptr(int n, IntPtr arrays); + [GlEntryPoint("glGenVertexArraysAPPLE")] + _glGenVertexArraysAPPLE_intptr _GenVertexArraysAPPLE_intptr { get; } + + // --- + + delegate void _glGenVertexArraysOES(int n, uint[] arrays); + [GlEntryPoint("glGenVertexArraysOES")] + _glGenVertexArraysOES _GenVertexArraysOES { get; } + + delegate void _glGenVertexArraysOES_ptr(int n, void* arrays); + [GlEntryPoint("glGenVertexArraysOES")] + _glGenVertexArraysOES_ptr _GenVertexArraysOES_ptr { get; } + + delegate void _glGenVertexArraysOES_intptr(int n, IntPtr arrays); + [GlEntryPoint("glGenVertexArraysOES")] + _glGenVertexArraysOES_intptr _GenVertexArraysOES_intptr { get; } + + // --- + + delegate uint _glGenVertexShadersEXT(uint range); + [GlEntryPoint("glGenVertexShadersEXT")] + _glGenVertexShadersEXT _GenVertexShadersEXT { get; } + + // --- + + delegate void _glGenerateMipmap(TextureTarget target); + [GlEntryPoint("glGenerateMipmap")] + _glGenerateMipmap _GenerateMipmap { get; } + + // --- + + delegate void _glGenerateMipmapEXT(TextureTarget target); + [GlEntryPoint("glGenerateMipmapEXT")] + _glGenerateMipmapEXT _GenerateMipmapEXT { get; } + + // --- + + delegate void _glGenerateMipmapOES(TextureTarget target); + [GlEntryPoint("glGenerateMipmapOES")] + _glGenerateMipmapOES _GenerateMipmapOES { get; } + + // --- + + delegate void _glGenerateMultiTexMipmapEXT(TextureUnit texunit, TextureTarget target); + [GlEntryPoint("glGenerateMultiTexMipmapEXT")] + _glGenerateMultiTexMipmapEXT _GenerateMultiTexMipmapEXT { get; } + + // --- + + delegate void _glGenerateTextureMipmap(uint texture); + [GlEntryPoint("glGenerateTextureMipmap")] + _glGenerateTextureMipmap _GenerateTextureMipmap { get; } + + // --- + + delegate void _glGenerateTextureMipmapEXT(uint texture, TextureTarget target); + [GlEntryPoint("glGenerateTextureMipmapEXT")] + _glGenerateTextureMipmapEXT _GenerateTextureMipmapEXT { get; } + + // --- + + delegate void _glGetActiveAtomicCounterBufferiv(uint program, uint bufferIndex, AtomicCounterBufferPName pname, int[] @params); + [GlEntryPoint("glGetActiveAtomicCounterBufferiv")] + _glGetActiveAtomicCounterBufferiv _GetActiveAtomicCounterBufferiv { get; } + + delegate void _glGetActiveAtomicCounterBufferiv_ptr(uint program, uint bufferIndex, AtomicCounterBufferPName pname, void* @params); + [GlEntryPoint("glGetActiveAtomicCounterBufferiv")] + _glGetActiveAtomicCounterBufferiv_ptr _GetActiveAtomicCounterBufferiv_ptr { get; } + + delegate void _glGetActiveAtomicCounterBufferiv_intptr(uint program, uint bufferIndex, AtomicCounterBufferPName pname, IntPtr @params); + [GlEntryPoint("glGetActiveAtomicCounterBufferiv")] + _glGetActiveAtomicCounterBufferiv_intptr _GetActiveAtomicCounterBufferiv_intptr { get; } + + // --- + + delegate void _glGetActiveAttrib(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, string name); + [GlEntryPoint("glGetActiveAttrib")] + _glGetActiveAttrib _GetActiveAttrib { get; } + + delegate void _glGetActiveAttrib_ptr(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, void* name); + [GlEntryPoint("glGetActiveAttrib")] + _glGetActiveAttrib_ptr _GetActiveAttrib_ptr { get; } + + delegate void _glGetActiveAttrib_intptr(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, IntPtr name); + [GlEntryPoint("glGetActiveAttrib")] + _glGetActiveAttrib_intptr _GetActiveAttrib_intptr { get; } + + // --- + + delegate void _glGetActiveAttribARB(int programObj, uint index, int maxLength, out int length, out int size, out AttributeType type, string name); + [GlEntryPoint("glGetActiveAttribARB")] + _glGetActiveAttribARB _GetActiveAttribARB { get; } + + delegate void _glGetActiveAttribARB_ptr(int programObj, uint index, int maxLength, out int length, out int size, out AttributeType type, void* name); + [GlEntryPoint("glGetActiveAttribARB")] + _glGetActiveAttribARB_ptr _GetActiveAttribARB_ptr { get; } + + delegate void _glGetActiveAttribARB_intptr(int programObj, uint index, int maxLength, out int length, out int size, out AttributeType type, IntPtr name); + [GlEntryPoint("glGetActiveAttribARB")] + _glGetActiveAttribARB_intptr _GetActiveAttribARB_intptr { get; } + + // --- + + delegate void _glGetActiveSubroutineName(uint program, ShaderType shadertype, uint index, int bufSize, out int length, string name); + [GlEntryPoint("glGetActiveSubroutineName")] + _glGetActiveSubroutineName _GetActiveSubroutineName { get; } + + delegate void _glGetActiveSubroutineName_ptr(uint program, ShaderType shadertype, uint index, int bufSize, out int length, void* name); + [GlEntryPoint("glGetActiveSubroutineName")] + _glGetActiveSubroutineName_ptr _GetActiveSubroutineName_ptr { get; } + + delegate void _glGetActiveSubroutineName_intptr(uint program, ShaderType shadertype, uint index, int bufSize, out int length, IntPtr name); + [GlEntryPoint("glGetActiveSubroutineName")] + _glGetActiveSubroutineName_intptr _GetActiveSubroutineName_intptr { get; } + + // --- + + delegate void _glGetActiveSubroutineUniformName(uint program, ShaderType shadertype, uint index, int bufSize, out int length, string name); + [GlEntryPoint("glGetActiveSubroutineUniformName")] + _glGetActiveSubroutineUniformName _GetActiveSubroutineUniformName { get; } + + delegate void _glGetActiveSubroutineUniformName_ptr(uint program, ShaderType shadertype, uint index, int bufSize, out int length, void* name); + [GlEntryPoint("glGetActiveSubroutineUniformName")] + _glGetActiveSubroutineUniformName_ptr _GetActiveSubroutineUniformName_ptr { get; } + + delegate void _glGetActiveSubroutineUniformName_intptr(uint program, ShaderType shadertype, uint index, int bufSize, out int length, IntPtr name); + [GlEntryPoint("glGetActiveSubroutineUniformName")] + _glGetActiveSubroutineUniformName_intptr _GetActiveSubroutineUniformName_intptr { get; } + + // --- + + delegate void _glGetActiveSubroutineUniformiv(uint program, ShaderType shadertype, uint index, SubroutineParameterName pname, int[] values); + [GlEntryPoint("glGetActiveSubroutineUniformiv")] + _glGetActiveSubroutineUniformiv _GetActiveSubroutineUniformiv { get; } + + delegate void _glGetActiveSubroutineUniformiv_ptr(uint program, ShaderType shadertype, uint index, SubroutineParameterName pname, void* values); + [GlEntryPoint("glGetActiveSubroutineUniformiv")] + _glGetActiveSubroutineUniformiv_ptr _GetActiveSubroutineUniformiv_ptr { get; } + + delegate void _glGetActiveSubroutineUniformiv_intptr(uint program, ShaderType shadertype, uint index, SubroutineParameterName pname, IntPtr values); + [GlEntryPoint("glGetActiveSubroutineUniformiv")] + _glGetActiveSubroutineUniformiv_intptr _GetActiveSubroutineUniformiv_intptr { get; } + + // --- + + delegate void _glGetActiveUniform(uint program, uint index, int bufSize, out int length, out int size, out UniformType type, string name); + [GlEntryPoint("glGetActiveUniform")] + _glGetActiveUniform _GetActiveUniform { get; } + + delegate void _glGetActiveUniform_ptr(uint program, uint index, int bufSize, out int length, out int size, out UniformType type, void* name); + [GlEntryPoint("glGetActiveUniform")] + _glGetActiveUniform_ptr _GetActiveUniform_ptr { get; } + + delegate void _glGetActiveUniform_intptr(uint program, uint index, int bufSize, out int length, out int size, out UniformType type, IntPtr name); + [GlEntryPoint("glGetActiveUniform")] + _glGetActiveUniform_intptr _GetActiveUniform_intptr { get; } + + // --- + + delegate void _glGetActiveUniformARB(int programObj, uint index, int maxLength, out int length, out int size, out UniformType type, string name); + [GlEntryPoint("glGetActiveUniformARB")] + _glGetActiveUniformARB _GetActiveUniformARB { get; } + + delegate void _glGetActiveUniformARB_ptr(int programObj, uint index, int maxLength, out int length, out int size, out UniformType type, void* name); + [GlEntryPoint("glGetActiveUniformARB")] + _glGetActiveUniformARB_ptr _GetActiveUniformARB_ptr { get; } + + delegate void _glGetActiveUniformARB_intptr(int programObj, uint index, int maxLength, out int length, out int size, out UniformType type, IntPtr name); + [GlEntryPoint("glGetActiveUniformARB")] + _glGetActiveUniformARB_intptr _GetActiveUniformARB_intptr { get; } + + // --- + + delegate void _glGetActiveUniformBlockName(uint program, uint uniformBlockIndex, int bufSize, out int length, string uniformBlockName); + [GlEntryPoint("glGetActiveUniformBlockName")] + _glGetActiveUniformBlockName _GetActiveUniformBlockName { get; } + + delegate void _glGetActiveUniformBlockName_ptr(uint program, uint uniformBlockIndex, int bufSize, out int length, void* uniformBlockName); + [GlEntryPoint("glGetActiveUniformBlockName")] + _glGetActiveUniformBlockName_ptr _GetActiveUniformBlockName_ptr { get; } + + delegate void _glGetActiveUniformBlockName_intptr(uint program, uint uniformBlockIndex, int bufSize, out int length, IntPtr uniformBlockName); + [GlEntryPoint("glGetActiveUniformBlockName")] + _glGetActiveUniformBlockName_intptr _GetActiveUniformBlockName_intptr { get; } + + // --- + + delegate void _glGetActiveUniformBlockiv(uint program, uint uniformBlockIndex, UniformBlockPName pname, int[] @params); + [GlEntryPoint("glGetActiveUniformBlockiv")] + _glGetActiveUniformBlockiv _GetActiveUniformBlockiv { get; } + + delegate void _glGetActiveUniformBlockiv_ptr(uint program, uint uniformBlockIndex, UniformBlockPName pname, void* @params); + [GlEntryPoint("glGetActiveUniformBlockiv")] + _glGetActiveUniformBlockiv_ptr _GetActiveUniformBlockiv_ptr { get; } + + delegate void _glGetActiveUniformBlockiv_intptr(uint program, uint uniformBlockIndex, UniformBlockPName pname, IntPtr @params); + [GlEntryPoint("glGetActiveUniformBlockiv")] + _glGetActiveUniformBlockiv_intptr _GetActiveUniformBlockiv_intptr { get; } + + // --- + + delegate void _glGetActiveUniformName(uint program, uint uniformIndex, int bufSize, out int length, string uniformName); + [GlEntryPoint("glGetActiveUniformName")] + _glGetActiveUniformName _GetActiveUniformName { get; } + + delegate void _glGetActiveUniformName_ptr(uint program, uint uniformIndex, int bufSize, out int length, void* uniformName); + [GlEntryPoint("glGetActiveUniformName")] + _glGetActiveUniformName_ptr _GetActiveUniformName_ptr { get; } + + delegate void _glGetActiveUniformName_intptr(uint program, uint uniformIndex, int bufSize, out int length, IntPtr uniformName); + [GlEntryPoint("glGetActiveUniformName")] + _glGetActiveUniformName_intptr _GetActiveUniformName_intptr { get; } + + // --- + + delegate void _glGetActiveUniformsiv(uint program, int uniformCount, uint[] uniformIndices, UniformPName pname, int[] @params); + [GlEntryPoint("glGetActiveUniformsiv")] + _glGetActiveUniformsiv _GetActiveUniformsiv { get; } + + delegate void _glGetActiveUniformsiv_ptr(uint program, int uniformCount, void* uniformIndices, UniformPName pname, void* @params); + [GlEntryPoint("glGetActiveUniformsiv")] + _glGetActiveUniformsiv_ptr _GetActiveUniformsiv_ptr { get; } + + delegate void _glGetActiveUniformsiv_intptr(uint program, int uniformCount, IntPtr uniformIndices, UniformPName pname, IntPtr @params); + [GlEntryPoint("glGetActiveUniformsiv")] + _glGetActiveUniformsiv_intptr _GetActiveUniformsiv_intptr { get; } + + // --- + + delegate void _glGetActiveVaryingNV(uint program, uint index, int bufSize, out int length, out int size, out int type, string name); + [GlEntryPoint("glGetActiveVaryingNV")] + _glGetActiveVaryingNV _GetActiveVaryingNV { get; } + + delegate void _glGetActiveVaryingNV_ptr(uint program, uint index, int bufSize, out int length, out int size, out int type, void* name); + [GlEntryPoint("glGetActiveVaryingNV")] + _glGetActiveVaryingNV_ptr _GetActiveVaryingNV_ptr { get; } + + delegate void _glGetActiveVaryingNV_intptr(uint program, uint index, int bufSize, out int length, out int size, out int type, IntPtr name); + [GlEntryPoint("glGetActiveVaryingNV")] + _glGetActiveVaryingNV_intptr _GetActiveVaryingNV_intptr { get; } + + // --- + + delegate void _glGetArrayObjectfvATI(EnableCap array, ArrayObjectPNameATI pname, out float @params); + [GlEntryPoint("glGetArrayObjectfvATI")] + _glGetArrayObjectfvATI _GetArrayObjectfvATI { get; } + + // --- + + delegate void _glGetArrayObjectivATI(EnableCap array, ArrayObjectPNameATI pname, out int @params); + [GlEntryPoint("glGetArrayObjectivATI")] + _glGetArrayObjectivATI _GetArrayObjectivATI { get; } + + // --- + + delegate void _glGetAttachedObjectsARB(int containerObj, int maxCount, out int count, int[] obj); + [GlEntryPoint("glGetAttachedObjectsARB")] + _glGetAttachedObjectsARB _GetAttachedObjectsARB { get; } + + delegate void _glGetAttachedObjectsARB_ptr(int containerObj, int maxCount, out int count, void* obj); + [GlEntryPoint("glGetAttachedObjectsARB")] + _glGetAttachedObjectsARB_ptr _GetAttachedObjectsARB_ptr { get; } + + delegate void _glGetAttachedObjectsARB_intptr(int containerObj, int maxCount, out int count, IntPtr obj); + [GlEntryPoint("glGetAttachedObjectsARB")] + _glGetAttachedObjectsARB_intptr _GetAttachedObjectsARB_intptr { get; } + + // --- + + delegate void _glGetAttachedShaders(uint program, int maxCount, out int count, uint[] shaders); + [GlEntryPoint("glGetAttachedShaders")] + _glGetAttachedShaders _GetAttachedShaders { get; } + + delegate void _glGetAttachedShaders_ptr(uint program, int maxCount, out int count, void* shaders); + [GlEntryPoint("glGetAttachedShaders")] + _glGetAttachedShaders_ptr _GetAttachedShaders_ptr { get; } + + delegate void _glGetAttachedShaders_intptr(uint program, int maxCount, out int count, IntPtr shaders); + [GlEntryPoint("glGetAttachedShaders")] + _glGetAttachedShaders_intptr _GetAttachedShaders_intptr { get; } + + // --- + + delegate int _glGetAttribLocation(uint program, string name); + [GlEntryPoint("glGetAttribLocation")] + _glGetAttribLocation _GetAttribLocation { get; } + + delegate int _glGetAttribLocation_ptr(uint program, void* name); + [GlEntryPoint("glGetAttribLocation")] + _glGetAttribLocation_ptr _GetAttribLocation_ptr { get; } + + delegate int _glGetAttribLocation_intptr(uint program, IntPtr name); + [GlEntryPoint("glGetAttribLocation")] + _glGetAttribLocation_intptr _GetAttribLocation_intptr { get; } + + // --- + + delegate int _glGetAttribLocationARB(int programObj, string name); + [GlEntryPoint("glGetAttribLocationARB")] + _glGetAttribLocationARB _GetAttribLocationARB { get; } + + delegate int _glGetAttribLocationARB_ptr(int programObj, void* name); + [GlEntryPoint("glGetAttribLocationARB")] + _glGetAttribLocationARB_ptr _GetAttribLocationARB_ptr { get; } + + delegate int _glGetAttribLocationARB_intptr(int programObj, IntPtr name); + [GlEntryPoint("glGetAttribLocationARB")] + _glGetAttribLocationARB_intptr _GetAttribLocationARB_intptr { get; } + + // --- + + delegate void _glGetBooleanIndexedvEXT(BufferTargetARB target, uint index, bool[] data); + [GlEntryPoint("glGetBooleanIndexedvEXT")] + _glGetBooleanIndexedvEXT _GetBooleanIndexedvEXT { get; } + + delegate void _glGetBooleanIndexedvEXT_ptr(BufferTargetARB target, uint index, void* data); + [GlEntryPoint("glGetBooleanIndexedvEXT")] + _glGetBooleanIndexedvEXT_ptr _GetBooleanIndexedvEXT_ptr { get; } + + delegate void _glGetBooleanIndexedvEXT_intptr(BufferTargetARB target, uint index, IntPtr data); + [GlEntryPoint("glGetBooleanIndexedvEXT")] + _glGetBooleanIndexedvEXT_intptr _GetBooleanIndexedvEXT_intptr { get; } + + // --- + + delegate void _glGetBooleani_v(BufferTargetARB target, uint index, bool[] data); + [GlEntryPoint("glGetBooleani_v")] + _glGetBooleani_v _GetBooleani_v { get; } + + delegate void _glGetBooleani_v_ptr(BufferTargetARB target, uint index, void* data); + [GlEntryPoint("glGetBooleani_v")] + _glGetBooleani_v_ptr _GetBooleani_v_ptr { get; } + + delegate void _glGetBooleani_v_intptr(BufferTargetARB target, uint index, IntPtr data); + [GlEntryPoint("glGetBooleani_v")] + _glGetBooleani_v_intptr _GetBooleani_v_intptr { get; } + + // --- + + delegate void _glGetBooleanv(GetPName pname, bool[] data); + [GlEntryPoint("glGetBooleanv")] + _glGetBooleanv _GetBooleanv { get; } + + delegate void _glGetBooleanv_ptr(GetPName pname, void* data); + [GlEntryPoint("glGetBooleanv")] + _glGetBooleanv_ptr _GetBooleanv_ptr { get; } + + delegate void _glGetBooleanv_intptr(GetPName pname, IntPtr data); + [GlEntryPoint("glGetBooleanv")] + _glGetBooleanv_intptr _GetBooleanv_intptr { get; } + + // --- + + delegate void _glGetBufferParameteri64v(BufferTargetARB target, BufferPNameARB pname, Int64[] @params); + [GlEntryPoint("glGetBufferParameteri64v")] + _glGetBufferParameteri64v _GetBufferParameteri64v { get; } + + delegate void _glGetBufferParameteri64v_ptr(BufferTargetARB target, BufferPNameARB pname, void* @params); + [GlEntryPoint("glGetBufferParameteri64v")] + _glGetBufferParameteri64v_ptr _GetBufferParameteri64v_ptr { get; } + + delegate void _glGetBufferParameteri64v_intptr(BufferTargetARB target, BufferPNameARB pname, IntPtr @params); + [GlEntryPoint("glGetBufferParameteri64v")] + _glGetBufferParameteri64v_intptr _GetBufferParameteri64v_intptr { get; } + + // --- + + delegate void _glGetBufferParameteriv(BufferTargetARB target, BufferPNameARB pname, int[] @params); + [GlEntryPoint("glGetBufferParameteriv")] + _glGetBufferParameteriv _GetBufferParameteriv { get; } + + delegate void _glGetBufferParameteriv_ptr(BufferTargetARB target, BufferPNameARB pname, void* @params); + [GlEntryPoint("glGetBufferParameteriv")] + _glGetBufferParameteriv_ptr _GetBufferParameteriv_ptr { get; } + + delegate void _glGetBufferParameteriv_intptr(BufferTargetARB target, BufferPNameARB pname, IntPtr @params); + [GlEntryPoint("glGetBufferParameteriv")] + _glGetBufferParameteriv_intptr _GetBufferParameteriv_intptr { get; } + + // --- + + delegate void _glGetBufferParameterivARB(BufferTargetARB target, BufferPNameARB pname, int[] @params); + [GlEntryPoint("glGetBufferParameterivARB")] + _glGetBufferParameterivARB _GetBufferParameterivARB { get; } + + delegate void _glGetBufferParameterivARB_ptr(BufferTargetARB target, BufferPNameARB pname, void* @params); + [GlEntryPoint("glGetBufferParameterivARB")] + _glGetBufferParameterivARB_ptr _GetBufferParameterivARB_ptr { get; } + + delegate void _glGetBufferParameterivARB_intptr(BufferTargetARB target, BufferPNameARB pname, IntPtr @params); + [GlEntryPoint("glGetBufferParameterivARB")] + _glGetBufferParameterivARB_intptr _GetBufferParameterivARB_intptr { get; } + + // --- + + delegate void _glGetBufferParameterui64vNV(BufferTargetARB target, int pname, UInt64[] @params); + [GlEntryPoint("glGetBufferParameterui64vNV")] + _glGetBufferParameterui64vNV _GetBufferParameterui64vNV { get; } + + delegate void _glGetBufferParameterui64vNV_ptr(BufferTargetARB target, int pname, void* @params); + [GlEntryPoint("glGetBufferParameterui64vNV")] + _glGetBufferParameterui64vNV_ptr _GetBufferParameterui64vNV_ptr { get; } + + delegate void _glGetBufferParameterui64vNV_intptr(BufferTargetARB target, int pname, IntPtr @params); + [GlEntryPoint("glGetBufferParameterui64vNV")] + _glGetBufferParameterui64vNV_intptr _GetBufferParameterui64vNV_intptr { get; } + + // --- + + delegate void _glGetBufferPointerv(BufferTargetARB target, BufferPointerNameARB pname, IntPtr* @params); + [GlEntryPoint("glGetBufferPointerv")] + _glGetBufferPointerv _GetBufferPointerv { get; } + + // --- + + delegate void _glGetBufferPointervARB(BufferTargetARB target, BufferPointerNameARB pname, IntPtr* @params); + [GlEntryPoint("glGetBufferPointervARB")] + _glGetBufferPointervARB _GetBufferPointervARB { get; } + + // --- + + delegate void _glGetBufferPointervOES(BufferTargetARB target, BufferPointerNameARB pname, IntPtr* @params); + [GlEntryPoint("glGetBufferPointervOES")] + _glGetBufferPointervOES _GetBufferPointervOES { get; } + + // --- + + delegate void _glGetBufferSubData(BufferTargetARB target, IntPtr offset, IntPtr size, IntPtr data); + [GlEntryPoint("glGetBufferSubData")] + _glGetBufferSubData _GetBufferSubData { get; } + + // --- + + delegate void _glGetBufferSubDataARB(BufferTargetARB target, IntPtr offset, IntPtr size, IntPtr data); + [GlEntryPoint("glGetBufferSubDataARB")] + _glGetBufferSubDataARB _GetBufferSubDataARB { get; } + + // --- + + delegate void _glGetClipPlane(ClipPlaneName plane, double[] equation); + [GlEntryPoint("glGetClipPlane")] + _glGetClipPlane _GetClipPlane { get; } + + delegate void _glGetClipPlane_ptr(ClipPlaneName plane, void* equation); + [GlEntryPoint("glGetClipPlane")] + _glGetClipPlane_ptr _GetClipPlane_ptr { get; } + + delegate void _glGetClipPlane_intptr(ClipPlaneName plane, IntPtr equation); + [GlEntryPoint("glGetClipPlane")] + _glGetClipPlane_intptr _GetClipPlane_intptr { get; } + + // --- + + delegate void _glGetClipPlanef(ClipPlaneName plane, float[] equation); + [GlEntryPoint("glGetClipPlanef")] + _glGetClipPlanef _GetClipPlanef { get; } + + delegate void _glGetClipPlanef_ptr(ClipPlaneName plane, void* equation); + [GlEntryPoint("glGetClipPlanef")] + _glGetClipPlanef_ptr _GetClipPlanef_ptr { get; } + + delegate void _glGetClipPlanef_intptr(ClipPlaneName plane, IntPtr equation); + [GlEntryPoint("glGetClipPlanef")] + _glGetClipPlanef_intptr _GetClipPlanef_intptr { get; } + + // --- + + delegate void _glGetClipPlanefOES(ClipPlaneName plane, float[] equation); + [GlEntryPoint("glGetClipPlanefOES")] + _glGetClipPlanefOES _GetClipPlanefOES { get; } + + delegate void _glGetClipPlanefOES_ptr(ClipPlaneName plane, void* equation); + [GlEntryPoint("glGetClipPlanefOES")] + _glGetClipPlanefOES_ptr _GetClipPlanefOES_ptr { get; } + + delegate void _glGetClipPlanefOES_intptr(ClipPlaneName plane, IntPtr equation); + [GlEntryPoint("glGetClipPlanefOES")] + _glGetClipPlanefOES_intptr _GetClipPlanefOES_intptr { get; } + + // --- + + delegate void _glGetClipPlanex(ClipPlaneName plane, float[] equation); + [GlEntryPoint("glGetClipPlanex")] + _glGetClipPlanex _GetClipPlanex { get; } + + delegate void _glGetClipPlanex_ptr(ClipPlaneName plane, void* equation); + [GlEntryPoint("glGetClipPlanex")] + _glGetClipPlanex_ptr _GetClipPlanex_ptr { get; } + + delegate void _glGetClipPlanex_intptr(ClipPlaneName plane, IntPtr equation); + [GlEntryPoint("glGetClipPlanex")] + _glGetClipPlanex_intptr _GetClipPlanex_intptr { get; } + + // --- + + delegate void _glGetClipPlanexOES(ClipPlaneName plane, float[] equation); + [GlEntryPoint("glGetClipPlanexOES")] + _glGetClipPlanexOES _GetClipPlanexOES { get; } + + delegate void _glGetClipPlanexOES_ptr(ClipPlaneName plane, void* equation); + [GlEntryPoint("glGetClipPlanexOES")] + _glGetClipPlanexOES_ptr _GetClipPlanexOES_ptr { get; } + + delegate void _glGetClipPlanexOES_intptr(ClipPlaneName plane, IntPtr equation); + [GlEntryPoint("glGetClipPlanexOES")] + _glGetClipPlanexOES_intptr _GetClipPlanexOES_intptr { get; } + + // --- + + delegate void _glGetColorTable(ColorTableTarget target, PixelFormat format, PixelType type, IntPtr table); + [GlEntryPoint("glGetColorTable")] + _glGetColorTable _GetColorTable { get; } + + // --- + + delegate void _glGetColorTableEXT(ColorTableTarget target, PixelFormat format, PixelType type, IntPtr data); + [GlEntryPoint("glGetColorTableEXT")] + _glGetColorTableEXT _GetColorTableEXT { get; } + + // --- + + delegate void _glGetColorTableParameterfv(ColorTableTarget target, GetColorTableParameterPNameSGI pname, float[] @params); + [GlEntryPoint("glGetColorTableParameterfv")] + _glGetColorTableParameterfv _GetColorTableParameterfv { get; } + + delegate void _glGetColorTableParameterfv_ptr(ColorTableTarget target, GetColorTableParameterPNameSGI pname, void* @params); + [GlEntryPoint("glGetColorTableParameterfv")] + _glGetColorTableParameterfv_ptr _GetColorTableParameterfv_ptr { get; } + + delegate void _glGetColorTableParameterfv_intptr(ColorTableTarget target, GetColorTableParameterPNameSGI pname, IntPtr @params); + [GlEntryPoint("glGetColorTableParameterfv")] + _glGetColorTableParameterfv_intptr _GetColorTableParameterfv_intptr { get; } + + // --- + + delegate void _glGetColorTableParameterfvEXT(ColorTableTarget target, GetColorTableParameterPNameSGI pname, float[] @params); + [GlEntryPoint("glGetColorTableParameterfvEXT")] + _glGetColorTableParameterfvEXT _GetColorTableParameterfvEXT { get; } + + delegate void _glGetColorTableParameterfvEXT_ptr(ColorTableTarget target, GetColorTableParameterPNameSGI pname, void* @params); + [GlEntryPoint("glGetColorTableParameterfvEXT")] + _glGetColorTableParameterfvEXT_ptr _GetColorTableParameterfvEXT_ptr { get; } + + delegate void _glGetColorTableParameterfvEXT_intptr(ColorTableTarget target, GetColorTableParameterPNameSGI pname, IntPtr @params); + [GlEntryPoint("glGetColorTableParameterfvEXT")] + _glGetColorTableParameterfvEXT_intptr _GetColorTableParameterfvEXT_intptr { get; } + + // --- + + delegate void _glGetColorTableParameterfvSGI(ColorTableTargetSGI target, GetColorTableParameterPNameSGI pname, float[] @params); + [GlEntryPoint("glGetColorTableParameterfvSGI")] + _glGetColorTableParameterfvSGI _GetColorTableParameterfvSGI { get; } + + delegate void _glGetColorTableParameterfvSGI_ptr(ColorTableTargetSGI target, GetColorTableParameterPNameSGI pname, void* @params); + [GlEntryPoint("glGetColorTableParameterfvSGI")] + _glGetColorTableParameterfvSGI_ptr _GetColorTableParameterfvSGI_ptr { get; } + + delegate void _glGetColorTableParameterfvSGI_intptr(ColorTableTargetSGI target, GetColorTableParameterPNameSGI pname, IntPtr @params); + [GlEntryPoint("glGetColorTableParameterfvSGI")] + _glGetColorTableParameterfvSGI_intptr _GetColorTableParameterfvSGI_intptr { get; } + + // --- + + delegate void _glGetColorTableParameteriv(ColorTableTarget target, GetColorTableParameterPNameSGI pname, int[] @params); + [GlEntryPoint("glGetColorTableParameteriv")] + _glGetColorTableParameteriv _GetColorTableParameteriv { get; } + + delegate void _glGetColorTableParameteriv_ptr(ColorTableTarget target, GetColorTableParameterPNameSGI pname, void* @params); + [GlEntryPoint("glGetColorTableParameteriv")] + _glGetColorTableParameteriv_ptr _GetColorTableParameteriv_ptr { get; } + + delegate void _glGetColorTableParameteriv_intptr(ColorTableTarget target, GetColorTableParameterPNameSGI pname, IntPtr @params); + [GlEntryPoint("glGetColorTableParameteriv")] + _glGetColorTableParameteriv_intptr _GetColorTableParameteriv_intptr { get; } + + // --- + + delegate void _glGetColorTableParameterivEXT(ColorTableTarget target, GetColorTableParameterPNameSGI pname, int[] @params); + [GlEntryPoint("glGetColorTableParameterivEXT")] + _glGetColorTableParameterivEXT _GetColorTableParameterivEXT { get; } + + delegate void _glGetColorTableParameterivEXT_ptr(ColorTableTarget target, GetColorTableParameterPNameSGI pname, void* @params); + [GlEntryPoint("glGetColorTableParameterivEXT")] + _glGetColorTableParameterivEXT_ptr _GetColorTableParameterivEXT_ptr { get; } + + delegate void _glGetColorTableParameterivEXT_intptr(ColorTableTarget target, GetColorTableParameterPNameSGI pname, IntPtr @params); + [GlEntryPoint("glGetColorTableParameterivEXT")] + _glGetColorTableParameterivEXT_intptr _GetColorTableParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetColorTableParameterivSGI(ColorTableTargetSGI target, GetColorTableParameterPNameSGI pname, int[] @params); + [GlEntryPoint("glGetColorTableParameterivSGI")] + _glGetColorTableParameterivSGI _GetColorTableParameterivSGI { get; } + + delegate void _glGetColorTableParameterivSGI_ptr(ColorTableTargetSGI target, GetColorTableParameterPNameSGI pname, void* @params); + [GlEntryPoint("glGetColorTableParameterivSGI")] + _glGetColorTableParameterivSGI_ptr _GetColorTableParameterivSGI_ptr { get; } + + delegate void _glGetColorTableParameterivSGI_intptr(ColorTableTargetSGI target, GetColorTableParameterPNameSGI pname, IntPtr @params); + [GlEntryPoint("glGetColorTableParameterivSGI")] + _glGetColorTableParameterivSGI_intptr _GetColorTableParameterivSGI_intptr { get; } + + // --- + + delegate void _glGetColorTableSGI(ColorTableTargetSGI target, PixelFormat format, PixelType type, IntPtr table); + [GlEntryPoint("glGetColorTableSGI")] + _glGetColorTableSGI _GetColorTableSGI { get; } + + // --- + + delegate void _glGetCombinerInputParameterfvNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerParameterNV pname, float[] @params); + [GlEntryPoint("glGetCombinerInputParameterfvNV")] + _glGetCombinerInputParameterfvNV _GetCombinerInputParameterfvNV { get; } + + delegate void _glGetCombinerInputParameterfvNV_ptr(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerParameterNV pname, void* @params); + [GlEntryPoint("glGetCombinerInputParameterfvNV")] + _glGetCombinerInputParameterfvNV_ptr _GetCombinerInputParameterfvNV_ptr { get; } + + delegate void _glGetCombinerInputParameterfvNV_intptr(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerParameterNV pname, IntPtr @params); + [GlEntryPoint("glGetCombinerInputParameterfvNV")] + _glGetCombinerInputParameterfvNV_intptr _GetCombinerInputParameterfvNV_intptr { get; } + + // --- + + delegate void _glGetCombinerInputParameterivNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerParameterNV pname, int[] @params); + [GlEntryPoint("glGetCombinerInputParameterivNV")] + _glGetCombinerInputParameterivNV _GetCombinerInputParameterivNV { get; } + + delegate void _glGetCombinerInputParameterivNV_ptr(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerParameterNV pname, void* @params); + [GlEntryPoint("glGetCombinerInputParameterivNV")] + _glGetCombinerInputParameterivNV_ptr _GetCombinerInputParameterivNV_ptr { get; } + + delegate void _glGetCombinerInputParameterivNV_intptr(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerParameterNV pname, IntPtr @params); + [GlEntryPoint("glGetCombinerInputParameterivNV")] + _glGetCombinerInputParameterivNV_intptr _GetCombinerInputParameterivNV_intptr { get; } + + // --- + + delegate void _glGetCombinerOutputParameterfvNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerParameterNV pname, float[] @params); + [GlEntryPoint("glGetCombinerOutputParameterfvNV")] + _glGetCombinerOutputParameterfvNV _GetCombinerOutputParameterfvNV { get; } + + delegate void _glGetCombinerOutputParameterfvNV_ptr(CombinerStageNV stage, CombinerPortionNV portion, CombinerParameterNV pname, void* @params); + [GlEntryPoint("glGetCombinerOutputParameterfvNV")] + _glGetCombinerOutputParameterfvNV_ptr _GetCombinerOutputParameterfvNV_ptr { get; } + + delegate void _glGetCombinerOutputParameterfvNV_intptr(CombinerStageNV stage, CombinerPortionNV portion, CombinerParameterNV pname, IntPtr @params); + [GlEntryPoint("glGetCombinerOutputParameterfvNV")] + _glGetCombinerOutputParameterfvNV_intptr _GetCombinerOutputParameterfvNV_intptr { get; } + + // --- + + delegate void _glGetCombinerOutputParameterivNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerParameterNV pname, int[] @params); + [GlEntryPoint("glGetCombinerOutputParameterivNV")] + _glGetCombinerOutputParameterivNV _GetCombinerOutputParameterivNV { get; } + + delegate void _glGetCombinerOutputParameterivNV_ptr(CombinerStageNV stage, CombinerPortionNV portion, CombinerParameterNV pname, void* @params); + [GlEntryPoint("glGetCombinerOutputParameterivNV")] + _glGetCombinerOutputParameterivNV_ptr _GetCombinerOutputParameterivNV_ptr { get; } + + delegate void _glGetCombinerOutputParameterivNV_intptr(CombinerStageNV stage, CombinerPortionNV portion, CombinerParameterNV pname, IntPtr @params); + [GlEntryPoint("glGetCombinerOutputParameterivNV")] + _glGetCombinerOutputParameterivNV_intptr _GetCombinerOutputParameterivNV_intptr { get; } + + // --- + + delegate void _glGetCombinerStageParameterfvNV(CombinerStageNV stage, CombinerParameterNV pname, float[] @params); + [GlEntryPoint("glGetCombinerStageParameterfvNV")] + _glGetCombinerStageParameterfvNV _GetCombinerStageParameterfvNV { get; } + + delegate void _glGetCombinerStageParameterfvNV_ptr(CombinerStageNV stage, CombinerParameterNV pname, void* @params); + [GlEntryPoint("glGetCombinerStageParameterfvNV")] + _glGetCombinerStageParameterfvNV_ptr _GetCombinerStageParameterfvNV_ptr { get; } + + delegate void _glGetCombinerStageParameterfvNV_intptr(CombinerStageNV stage, CombinerParameterNV pname, IntPtr @params); + [GlEntryPoint("glGetCombinerStageParameterfvNV")] + _glGetCombinerStageParameterfvNV_intptr _GetCombinerStageParameterfvNV_intptr { get; } + + // --- + + delegate uint _glGetCommandHeaderNV(int tokenID, uint size); + [GlEntryPoint("glGetCommandHeaderNV")] + _glGetCommandHeaderNV _GetCommandHeaderNV { get; } + + // --- + + delegate void _glGetCompressedMultiTexImageEXT(TextureUnit texunit, TextureTarget target, int lod, IntPtr img); + [GlEntryPoint("glGetCompressedMultiTexImageEXT")] + _glGetCompressedMultiTexImageEXT _GetCompressedMultiTexImageEXT { get; } + + // --- + + delegate void _glGetCompressedTexImage(TextureTarget target, int level, IntPtr img); + [GlEntryPoint("glGetCompressedTexImage")] + _glGetCompressedTexImage _GetCompressedTexImage { get; } + + // --- + + delegate void _glGetCompressedTexImageARB(TextureTarget target, int level, IntPtr img); + [GlEntryPoint("glGetCompressedTexImageARB")] + _glGetCompressedTexImageARB _GetCompressedTexImageARB { get; } + + // --- + + delegate void _glGetCompressedTextureImage(uint texture, int level, int bufSize, IntPtr pixels); + [GlEntryPoint("glGetCompressedTextureImage")] + _glGetCompressedTextureImage _GetCompressedTextureImage { get; } + + // --- + + delegate void _glGetCompressedTextureImageEXT(uint texture, TextureTarget target, int lod, IntPtr img); + [GlEntryPoint("glGetCompressedTextureImageEXT")] + _glGetCompressedTextureImageEXT _GetCompressedTextureImageEXT { get; } + + // --- + + delegate void _glGetCompressedTextureSubImage(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int bufSize, IntPtr pixels); + [GlEntryPoint("glGetCompressedTextureSubImage")] + _glGetCompressedTextureSubImage _GetCompressedTextureSubImage { get; } + + // --- + + delegate void _glGetConvolutionFilter(ConvolutionTarget target, PixelFormat format, PixelType type, IntPtr image); + [GlEntryPoint("glGetConvolutionFilter")] + _glGetConvolutionFilter _GetConvolutionFilter { get; } + + // --- + + delegate void _glGetConvolutionFilterEXT(ConvolutionTargetEXT target, PixelFormat format, PixelType type, IntPtr image); + [GlEntryPoint("glGetConvolutionFilterEXT")] + _glGetConvolutionFilterEXT _GetConvolutionFilterEXT { get; } + + // --- + + delegate void _glGetConvolutionParameterfv(ConvolutionTarget target, ConvolutionParameterEXT pname, float[] @params); + [GlEntryPoint("glGetConvolutionParameterfv")] + _glGetConvolutionParameterfv _GetConvolutionParameterfv { get; } + + delegate void _glGetConvolutionParameterfv_ptr(ConvolutionTarget target, ConvolutionParameterEXT pname, void* @params); + [GlEntryPoint("glGetConvolutionParameterfv")] + _glGetConvolutionParameterfv_ptr _GetConvolutionParameterfv_ptr { get; } + + delegate void _glGetConvolutionParameterfv_intptr(ConvolutionTarget target, ConvolutionParameterEXT pname, IntPtr @params); + [GlEntryPoint("glGetConvolutionParameterfv")] + _glGetConvolutionParameterfv_intptr _GetConvolutionParameterfv_intptr { get; } + + // --- + + delegate void _glGetConvolutionParameterfvEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, float[] @params); + [GlEntryPoint("glGetConvolutionParameterfvEXT")] + _glGetConvolutionParameterfvEXT _GetConvolutionParameterfvEXT { get; } + + delegate void _glGetConvolutionParameterfvEXT_ptr(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, void* @params); + [GlEntryPoint("glGetConvolutionParameterfvEXT")] + _glGetConvolutionParameterfvEXT_ptr _GetConvolutionParameterfvEXT_ptr { get; } + + delegate void _glGetConvolutionParameterfvEXT_intptr(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, IntPtr @params); + [GlEntryPoint("glGetConvolutionParameterfvEXT")] + _glGetConvolutionParameterfvEXT_intptr _GetConvolutionParameterfvEXT_intptr { get; } + + // --- + + delegate void _glGetConvolutionParameteriv(ConvolutionTarget target, ConvolutionParameterEXT pname, int[] @params); + [GlEntryPoint("glGetConvolutionParameteriv")] + _glGetConvolutionParameteriv _GetConvolutionParameteriv { get; } + + delegate void _glGetConvolutionParameteriv_ptr(ConvolutionTarget target, ConvolutionParameterEXT pname, void* @params); + [GlEntryPoint("glGetConvolutionParameteriv")] + _glGetConvolutionParameteriv_ptr _GetConvolutionParameteriv_ptr { get; } + + delegate void _glGetConvolutionParameteriv_intptr(ConvolutionTarget target, ConvolutionParameterEXT pname, IntPtr @params); + [GlEntryPoint("glGetConvolutionParameteriv")] + _glGetConvolutionParameteriv_intptr _GetConvolutionParameteriv_intptr { get; } + + // --- + + delegate void _glGetConvolutionParameterivEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, int[] @params); + [GlEntryPoint("glGetConvolutionParameterivEXT")] + _glGetConvolutionParameterivEXT _GetConvolutionParameterivEXT { get; } + + delegate void _glGetConvolutionParameterivEXT_ptr(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, void* @params); + [GlEntryPoint("glGetConvolutionParameterivEXT")] + _glGetConvolutionParameterivEXT_ptr _GetConvolutionParameterivEXT_ptr { get; } + + delegate void _glGetConvolutionParameterivEXT_intptr(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, IntPtr @params); + [GlEntryPoint("glGetConvolutionParameterivEXT")] + _glGetConvolutionParameterivEXT_intptr _GetConvolutionParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetConvolutionParameterxvOES(int target, int pname, float[] @params); + [GlEntryPoint("glGetConvolutionParameterxvOES")] + _glGetConvolutionParameterxvOES _GetConvolutionParameterxvOES { get; } + + delegate void _glGetConvolutionParameterxvOES_ptr(int target, int pname, void* @params); + [GlEntryPoint("glGetConvolutionParameterxvOES")] + _glGetConvolutionParameterxvOES_ptr _GetConvolutionParameterxvOES_ptr { get; } + + delegate void _glGetConvolutionParameterxvOES_intptr(int target, int pname, IntPtr @params); + [GlEntryPoint("glGetConvolutionParameterxvOES")] + _glGetConvolutionParameterxvOES_intptr _GetConvolutionParameterxvOES_intptr { get; } + + // --- + + delegate void _glGetCoverageModulationTableNV(int bufSize, float[] v); + [GlEntryPoint("glGetCoverageModulationTableNV")] + _glGetCoverageModulationTableNV _GetCoverageModulationTableNV { get; } + + delegate void _glGetCoverageModulationTableNV_ptr(int bufSize, void* v); + [GlEntryPoint("glGetCoverageModulationTableNV")] + _glGetCoverageModulationTableNV_ptr _GetCoverageModulationTableNV_ptr { get; } + + delegate void _glGetCoverageModulationTableNV_intptr(int bufSize, IntPtr v); + [GlEntryPoint("glGetCoverageModulationTableNV")] + _glGetCoverageModulationTableNV_intptr _GetCoverageModulationTableNV_intptr { get; } + + // --- + + delegate uint _glGetDebugMessageLog(uint count, int bufSize, DebugSource[] sources, DebugType[] types, uint[] ids, DebugSeverity[] severities, int[] lengths, string messageLog); + [GlEntryPoint("glGetDebugMessageLog")] + _glGetDebugMessageLog _GetDebugMessageLog { get; } + + delegate uint _glGetDebugMessageLog_ptr(uint count, int bufSize, void* sources, void* types, void* ids, void* severities, void* lengths, void* messageLog); + [GlEntryPoint("glGetDebugMessageLog")] + _glGetDebugMessageLog_ptr _GetDebugMessageLog_ptr { get; } + + delegate uint _glGetDebugMessageLog_intptr(uint count, int bufSize, IntPtr sources, IntPtr types, IntPtr ids, IntPtr severities, IntPtr lengths, IntPtr messageLog); + [GlEntryPoint("glGetDebugMessageLog")] + _glGetDebugMessageLog_intptr _GetDebugMessageLog_intptr { get; } + + // --- + + delegate uint _glGetDebugMessageLogAMD(uint count, int bufSize, int[] categories, uint[] severities, uint[] ids, int[] lengths, string message); + [GlEntryPoint("glGetDebugMessageLogAMD")] + _glGetDebugMessageLogAMD _GetDebugMessageLogAMD { get; } + + delegate uint _glGetDebugMessageLogAMD_ptr(uint count, int bufSize, void* categories, void* severities, void* ids, void* lengths, void* message); + [GlEntryPoint("glGetDebugMessageLogAMD")] + _glGetDebugMessageLogAMD_ptr _GetDebugMessageLogAMD_ptr { get; } + + delegate uint _glGetDebugMessageLogAMD_intptr(uint count, int bufSize, IntPtr categories, IntPtr severities, IntPtr ids, IntPtr lengths, IntPtr message); + [GlEntryPoint("glGetDebugMessageLogAMD")] + _glGetDebugMessageLogAMD_intptr _GetDebugMessageLogAMD_intptr { get; } + + // --- + + delegate uint _glGetDebugMessageLogARB(uint count, int bufSize, DebugSource[] sources, DebugType[] types, uint[] ids, DebugSeverity[] severities, int[] lengths, string messageLog); + [GlEntryPoint("glGetDebugMessageLogARB")] + _glGetDebugMessageLogARB _GetDebugMessageLogARB { get; } + + delegate uint _glGetDebugMessageLogARB_ptr(uint count, int bufSize, void* sources, void* types, void* ids, void* severities, void* lengths, void* messageLog); + [GlEntryPoint("glGetDebugMessageLogARB")] + _glGetDebugMessageLogARB_ptr _GetDebugMessageLogARB_ptr { get; } + + delegate uint _glGetDebugMessageLogARB_intptr(uint count, int bufSize, IntPtr sources, IntPtr types, IntPtr ids, IntPtr severities, IntPtr lengths, IntPtr messageLog); + [GlEntryPoint("glGetDebugMessageLogARB")] + _glGetDebugMessageLogARB_intptr _GetDebugMessageLogARB_intptr { get; } + + // --- + + delegate uint _glGetDebugMessageLogKHR(uint count, int bufSize, DebugSource[] sources, DebugType[] types, uint[] ids, DebugSeverity[] severities, int[] lengths, string messageLog); + [GlEntryPoint("glGetDebugMessageLogKHR")] + _glGetDebugMessageLogKHR _GetDebugMessageLogKHR { get; } + + delegate uint _glGetDebugMessageLogKHR_ptr(uint count, int bufSize, void* sources, void* types, void* ids, void* severities, void* lengths, void* messageLog); + [GlEntryPoint("glGetDebugMessageLogKHR")] + _glGetDebugMessageLogKHR_ptr _GetDebugMessageLogKHR_ptr { get; } + + delegate uint _glGetDebugMessageLogKHR_intptr(uint count, int bufSize, IntPtr sources, IntPtr types, IntPtr ids, IntPtr severities, IntPtr lengths, IntPtr messageLog); + [GlEntryPoint("glGetDebugMessageLogKHR")] + _glGetDebugMessageLogKHR_intptr _GetDebugMessageLogKHR_intptr { get; } + + // --- + + delegate void _glGetDetailTexFuncSGIS(TextureTarget target, float[] points); + [GlEntryPoint("glGetDetailTexFuncSGIS")] + _glGetDetailTexFuncSGIS _GetDetailTexFuncSGIS { get; } + + delegate void _glGetDetailTexFuncSGIS_ptr(TextureTarget target, void* points); + [GlEntryPoint("glGetDetailTexFuncSGIS")] + _glGetDetailTexFuncSGIS_ptr _GetDetailTexFuncSGIS_ptr { get; } + + delegate void _glGetDetailTexFuncSGIS_intptr(TextureTarget target, IntPtr points); + [GlEntryPoint("glGetDetailTexFuncSGIS")] + _glGetDetailTexFuncSGIS_intptr _GetDetailTexFuncSGIS_intptr { get; } + + // --- + + delegate void _glGetDoubleIndexedvEXT(int target, uint index, double[] data); + [GlEntryPoint("glGetDoubleIndexedvEXT")] + _glGetDoubleIndexedvEXT _GetDoubleIndexedvEXT { get; } + + delegate void _glGetDoubleIndexedvEXT_ptr(int target, uint index, void* data); + [GlEntryPoint("glGetDoubleIndexedvEXT")] + _glGetDoubleIndexedvEXT_ptr _GetDoubleIndexedvEXT_ptr { get; } + + delegate void _glGetDoubleIndexedvEXT_intptr(int target, uint index, IntPtr data); + [GlEntryPoint("glGetDoubleIndexedvEXT")] + _glGetDoubleIndexedvEXT_intptr _GetDoubleIndexedvEXT_intptr { get; } + + // --- + + delegate void _glGetDoublei_v(int target, uint index, double[] data); + [GlEntryPoint("glGetDoublei_v")] + _glGetDoublei_v _GetDoublei_v { get; } + + delegate void _glGetDoublei_v_ptr(int target, uint index, void* data); + [GlEntryPoint("glGetDoublei_v")] + _glGetDoublei_v_ptr _GetDoublei_v_ptr { get; } + + delegate void _glGetDoublei_v_intptr(int target, uint index, IntPtr data); + [GlEntryPoint("glGetDoublei_v")] + _glGetDoublei_v_intptr _GetDoublei_v_intptr { get; } + + // --- + + delegate void _glGetDoublei_vEXT(int pname, uint index, double[] @params); + [GlEntryPoint("glGetDoublei_vEXT")] + _glGetDoublei_vEXT _GetDoublei_vEXT { get; } + + delegate void _glGetDoublei_vEXT_ptr(int pname, uint index, void* @params); + [GlEntryPoint("glGetDoublei_vEXT")] + _glGetDoublei_vEXT_ptr _GetDoublei_vEXT_ptr { get; } + + delegate void _glGetDoublei_vEXT_intptr(int pname, uint index, IntPtr @params); + [GlEntryPoint("glGetDoublei_vEXT")] + _glGetDoublei_vEXT_intptr _GetDoublei_vEXT_intptr { get; } + + // --- + + delegate void _glGetDoublev(GetPName pname, double[] data); + [GlEntryPoint("glGetDoublev")] + _glGetDoublev _GetDoublev { get; } + + delegate void _glGetDoublev_ptr(GetPName pname, void* data); + [GlEntryPoint("glGetDoublev")] + _glGetDoublev_ptr _GetDoublev_ptr { get; } + + delegate void _glGetDoublev_intptr(GetPName pname, IntPtr data); + [GlEntryPoint("glGetDoublev")] + _glGetDoublev_intptr _GetDoublev_intptr { get; } + + // --- + + delegate void _glGetDriverControlStringQCOM(uint driverControl, int bufSize, int[] length, string driverControlString); + [GlEntryPoint("glGetDriverControlStringQCOM")] + _glGetDriverControlStringQCOM _GetDriverControlStringQCOM { get; } + + delegate void _glGetDriverControlStringQCOM_ptr(uint driverControl, int bufSize, void* length, void* driverControlString); + [GlEntryPoint("glGetDriverControlStringQCOM")] + _glGetDriverControlStringQCOM_ptr _GetDriverControlStringQCOM_ptr { get; } + + delegate void _glGetDriverControlStringQCOM_intptr(uint driverControl, int bufSize, IntPtr length, IntPtr driverControlString); + [GlEntryPoint("glGetDriverControlStringQCOM")] + _glGetDriverControlStringQCOM_intptr _GetDriverControlStringQCOM_intptr { get; } + + // --- + + delegate void _glGetDriverControlsQCOM(int[] num, int size, uint[] driverControls); + [GlEntryPoint("glGetDriverControlsQCOM")] + _glGetDriverControlsQCOM _GetDriverControlsQCOM { get; } + + delegate void _glGetDriverControlsQCOM_ptr(void* num, int size, void* driverControls); + [GlEntryPoint("glGetDriverControlsQCOM")] + _glGetDriverControlsQCOM_ptr _GetDriverControlsQCOM_ptr { get; } + + delegate void _glGetDriverControlsQCOM_intptr(IntPtr num, int size, IntPtr driverControls); + [GlEntryPoint("glGetDriverControlsQCOM")] + _glGetDriverControlsQCOM_intptr _GetDriverControlsQCOM_intptr { get; } + + // --- + + delegate int _glGetError(); + [GlEntryPoint("glGetError")] + _glGetError _GetError { get; } + + // --- + + delegate void _glGetFenceivNV(uint fence, FenceParameterNameNV pname, int[] @params); + [GlEntryPoint("glGetFenceivNV")] + _glGetFenceivNV _GetFenceivNV { get; } + + delegate void _glGetFenceivNV_ptr(uint fence, FenceParameterNameNV pname, void* @params); + [GlEntryPoint("glGetFenceivNV")] + _glGetFenceivNV_ptr _GetFenceivNV_ptr { get; } + + delegate void _glGetFenceivNV_intptr(uint fence, FenceParameterNameNV pname, IntPtr @params); + [GlEntryPoint("glGetFenceivNV")] + _glGetFenceivNV_intptr _GetFenceivNV_intptr { get; } + + // --- + + delegate void _glGetFinalCombinerInputParameterfvNV(CombinerVariableNV variable, CombinerParameterNV pname, float[] @params); + [GlEntryPoint("glGetFinalCombinerInputParameterfvNV")] + _glGetFinalCombinerInputParameterfvNV _GetFinalCombinerInputParameterfvNV { get; } + + delegate void _glGetFinalCombinerInputParameterfvNV_ptr(CombinerVariableNV variable, CombinerParameterNV pname, void* @params); + [GlEntryPoint("glGetFinalCombinerInputParameterfvNV")] + _glGetFinalCombinerInputParameterfvNV_ptr _GetFinalCombinerInputParameterfvNV_ptr { get; } + + delegate void _glGetFinalCombinerInputParameterfvNV_intptr(CombinerVariableNV variable, CombinerParameterNV pname, IntPtr @params); + [GlEntryPoint("glGetFinalCombinerInputParameterfvNV")] + _glGetFinalCombinerInputParameterfvNV_intptr _GetFinalCombinerInputParameterfvNV_intptr { get; } + + // --- + + delegate void _glGetFinalCombinerInputParameterivNV(CombinerVariableNV variable, CombinerParameterNV pname, int[] @params); + [GlEntryPoint("glGetFinalCombinerInputParameterivNV")] + _glGetFinalCombinerInputParameterivNV _GetFinalCombinerInputParameterivNV { get; } + + delegate void _glGetFinalCombinerInputParameterivNV_ptr(CombinerVariableNV variable, CombinerParameterNV pname, void* @params); + [GlEntryPoint("glGetFinalCombinerInputParameterivNV")] + _glGetFinalCombinerInputParameterivNV_ptr _GetFinalCombinerInputParameterivNV_ptr { get; } + + delegate void _glGetFinalCombinerInputParameterivNV_intptr(CombinerVariableNV variable, CombinerParameterNV pname, IntPtr @params); + [GlEntryPoint("glGetFinalCombinerInputParameterivNV")] + _glGetFinalCombinerInputParameterivNV_intptr _GetFinalCombinerInputParameterivNV_intptr { get; } + + // --- + + delegate void _glGetFirstPerfQueryIdINTEL(uint[] queryId); + [GlEntryPoint("glGetFirstPerfQueryIdINTEL")] + _glGetFirstPerfQueryIdINTEL _GetFirstPerfQueryIdINTEL { get; } + + delegate void _glGetFirstPerfQueryIdINTEL_ptr(void* queryId); + [GlEntryPoint("glGetFirstPerfQueryIdINTEL")] + _glGetFirstPerfQueryIdINTEL_ptr _GetFirstPerfQueryIdINTEL_ptr { get; } + + delegate void _glGetFirstPerfQueryIdINTEL_intptr(IntPtr queryId); + [GlEntryPoint("glGetFirstPerfQueryIdINTEL")] + _glGetFirstPerfQueryIdINTEL_intptr _GetFirstPerfQueryIdINTEL_intptr { get; } + + // --- + + delegate void _glGetFixedv(GetPName pname, float[] @params); + [GlEntryPoint("glGetFixedv")] + _glGetFixedv _GetFixedv { get; } + + delegate void _glGetFixedv_ptr(GetPName pname, void* @params); + [GlEntryPoint("glGetFixedv")] + _glGetFixedv_ptr _GetFixedv_ptr { get; } + + delegate void _glGetFixedv_intptr(GetPName pname, IntPtr @params); + [GlEntryPoint("glGetFixedv")] + _glGetFixedv_intptr _GetFixedv_intptr { get; } + + // --- + + delegate void _glGetFixedvOES(GetPName pname, float[] @params); + [GlEntryPoint("glGetFixedvOES")] + _glGetFixedvOES _GetFixedvOES { get; } + + delegate void _glGetFixedvOES_ptr(GetPName pname, void* @params); + [GlEntryPoint("glGetFixedvOES")] + _glGetFixedvOES_ptr _GetFixedvOES_ptr { get; } + + delegate void _glGetFixedvOES_intptr(GetPName pname, IntPtr @params); + [GlEntryPoint("glGetFixedvOES")] + _glGetFixedvOES_intptr _GetFixedvOES_intptr { get; } + + // --- + + delegate void _glGetFloatIndexedvEXT(int target, uint index, float[] data); + [GlEntryPoint("glGetFloatIndexedvEXT")] + _glGetFloatIndexedvEXT _GetFloatIndexedvEXT { get; } + + delegate void _glGetFloatIndexedvEXT_ptr(int target, uint index, void* data); + [GlEntryPoint("glGetFloatIndexedvEXT")] + _glGetFloatIndexedvEXT_ptr _GetFloatIndexedvEXT_ptr { get; } + + delegate void _glGetFloatIndexedvEXT_intptr(int target, uint index, IntPtr data); + [GlEntryPoint("glGetFloatIndexedvEXT")] + _glGetFloatIndexedvEXT_intptr _GetFloatIndexedvEXT_intptr { get; } + + // --- + + delegate void _glGetFloati_v(int target, uint index, float[] data); + [GlEntryPoint("glGetFloati_v")] + _glGetFloati_v _GetFloati_v { get; } + + delegate void _glGetFloati_v_ptr(int target, uint index, void* data); + [GlEntryPoint("glGetFloati_v")] + _glGetFloati_v_ptr _GetFloati_v_ptr { get; } + + delegate void _glGetFloati_v_intptr(int target, uint index, IntPtr data); + [GlEntryPoint("glGetFloati_v")] + _glGetFloati_v_intptr _GetFloati_v_intptr { get; } + + // --- + + delegate void _glGetFloati_vEXT(int pname, uint index, float[] @params); + [GlEntryPoint("glGetFloati_vEXT")] + _glGetFloati_vEXT _GetFloati_vEXT { get; } + + delegate void _glGetFloati_vEXT_ptr(int pname, uint index, void* @params); + [GlEntryPoint("glGetFloati_vEXT")] + _glGetFloati_vEXT_ptr _GetFloati_vEXT_ptr { get; } + + delegate void _glGetFloati_vEXT_intptr(int pname, uint index, IntPtr @params); + [GlEntryPoint("glGetFloati_vEXT")] + _glGetFloati_vEXT_intptr _GetFloati_vEXT_intptr { get; } + + // --- + + delegate void _glGetFloati_vNV(int target, uint index, float[] data); + [GlEntryPoint("glGetFloati_vNV")] + _glGetFloati_vNV _GetFloati_vNV { get; } + + delegate void _glGetFloati_vNV_ptr(int target, uint index, void* data); + [GlEntryPoint("glGetFloati_vNV")] + _glGetFloati_vNV_ptr _GetFloati_vNV_ptr { get; } + + delegate void _glGetFloati_vNV_intptr(int target, uint index, IntPtr data); + [GlEntryPoint("glGetFloati_vNV")] + _glGetFloati_vNV_intptr _GetFloati_vNV_intptr { get; } + + // --- + + delegate void _glGetFloati_vOES(int target, uint index, float[] data); + [GlEntryPoint("glGetFloati_vOES")] + _glGetFloati_vOES _GetFloati_vOES { get; } + + delegate void _glGetFloati_vOES_ptr(int target, uint index, void* data); + [GlEntryPoint("glGetFloati_vOES")] + _glGetFloati_vOES_ptr _GetFloati_vOES_ptr { get; } + + delegate void _glGetFloati_vOES_intptr(int target, uint index, IntPtr data); + [GlEntryPoint("glGetFloati_vOES")] + _glGetFloati_vOES_intptr _GetFloati_vOES_intptr { get; } + + // --- + + delegate void _glGetFloatv(GetPName pname, float[] data); + [GlEntryPoint("glGetFloatv")] + _glGetFloatv _GetFloatv { get; } + + delegate void _glGetFloatv_ptr(GetPName pname, void* data); + [GlEntryPoint("glGetFloatv")] + _glGetFloatv_ptr _GetFloatv_ptr { get; } + + delegate void _glGetFloatv_intptr(GetPName pname, IntPtr data); + [GlEntryPoint("glGetFloatv")] + _glGetFloatv_intptr _GetFloatv_intptr { get; } + + // --- + + delegate void _glGetFogFuncSGIS(float[] points); + [GlEntryPoint("glGetFogFuncSGIS")] + _glGetFogFuncSGIS _GetFogFuncSGIS { get; } + + delegate void _glGetFogFuncSGIS_ptr(void* points); + [GlEntryPoint("glGetFogFuncSGIS")] + _glGetFogFuncSGIS_ptr _GetFogFuncSGIS_ptr { get; } + + delegate void _glGetFogFuncSGIS_intptr(IntPtr points); + [GlEntryPoint("glGetFogFuncSGIS")] + _glGetFogFuncSGIS_intptr _GetFogFuncSGIS_intptr { get; } + + // --- + + delegate int _glGetFragDataIndex(uint program, string name); + [GlEntryPoint("glGetFragDataIndex")] + _glGetFragDataIndex _GetFragDataIndex { get; } + + delegate int _glGetFragDataIndex_ptr(uint program, void* name); + [GlEntryPoint("glGetFragDataIndex")] + _glGetFragDataIndex_ptr _GetFragDataIndex_ptr { get; } + + delegate int _glGetFragDataIndex_intptr(uint program, IntPtr name); + [GlEntryPoint("glGetFragDataIndex")] + _glGetFragDataIndex_intptr _GetFragDataIndex_intptr { get; } + + // --- + + delegate int _glGetFragDataIndexEXT(uint program, string name); + [GlEntryPoint("glGetFragDataIndexEXT")] + _glGetFragDataIndexEXT _GetFragDataIndexEXT { get; } + + delegate int _glGetFragDataIndexEXT_ptr(uint program, void* name); + [GlEntryPoint("glGetFragDataIndexEXT")] + _glGetFragDataIndexEXT_ptr _GetFragDataIndexEXT_ptr { get; } + + delegate int _glGetFragDataIndexEXT_intptr(uint program, IntPtr name); + [GlEntryPoint("glGetFragDataIndexEXT")] + _glGetFragDataIndexEXT_intptr _GetFragDataIndexEXT_intptr { get; } + + // --- + + delegate int _glGetFragDataLocation(uint program, string name); + [GlEntryPoint("glGetFragDataLocation")] + _glGetFragDataLocation _GetFragDataLocation { get; } + + delegate int _glGetFragDataLocation_ptr(uint program, void* name); + [GlEntryPoint("glGetFragDataLocation")] + _glGetFragDataLocation_ptr _GetFragDataLocation_ptr { get; } + + delegate int _glGetFragDataLocation_intptr(uint program, IntPtr name); + [GlEntryPoint("glGetFragDataLocation")] + _glGetFragDataLocation_intptr _GetFragDataLocation_intptr { get; } + + // --- + + delegate int _glGetFragDataLocationEXT(uint program, string name); + [GlEntryPoint("glGetFragDataLocationEXT")] + _glGetFragDataLocationEXT _GetFragDataLocationEXT { get; } + + delegate int _glGetFragDataLocationEXT_ptr(uint program, void* name); + [GlEntryPoint("glGetFragDataLocationEXT")] + _glGetFragDataLocationEXT_ptr _GetFragDataLocationEXT_ptr { get; } + + delegate int _glGetFragDataLocationEXT_intptr(uint program, IntPtr name); + [GlEntryPoint("glGetFragDataLocationEXT")] + _glGetFragDataLocationEXT_intptr _GetFragDataLocationEXT_intptr { get; } + + // --- + + delegate void _glGetFragmentLightfvSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, float[] @params); + [GlEntryPoint("glGetFragmentLightfvSGIX")] + _glGetFragmentLightfvSGIX _GetFragmentLightfvSGIX { get; } + + delegate void _glGetFragmentLightfvSGIX_ptr(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, void* @params); + [GlEntryPoint("glGetFragmentLightfvSGIX")] + _glGetFragmentLightfvSGIX_ptr _GetFragmentLightfvSGIX_ptr { get; } + + delegate void _glGetFragmentLightfvSGIX_intptr(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, IntPtr @params); + [GlEntryPoint("glGetFragmentLightfvSGIX")] + _glGetFragmentLightfvSGIX_intptr _GetFragmentLightfvSGIX_intptr { get; } + + // --- + + delegate void _glGetFragmentLightivSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, int[] @params); + [GlEntryPoint("glGetFragmentLightivSGIX")] + _glGetFragmentLightivSGIX _GetFragmentLightivSGIX { get; } + + delegate void _glGetFragmentLightivSGIX_ptr(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, void* @params); + [GlEntryPoint("glGetFragmentLightivSGIX")] + _glGetFragmentLightivSGIX_ptr _GetFragmentLightivSGIX_ptr { get; } + + delegate void _glGetFragmentLightivSGIX_intptr(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, IntPtr @params); + [GlEntryPoint("glGetFragmentLightivSGIX")] + _glGetFragmentLightivSGIX_intptr _GetFragmentLightivSGIX_intptr { get; } + + // --- + + delegate void _glGetFragmentMaterialfvSGIX(MaterialFace face, MaterialParameter pname, float[] @params); + [GlEntryPoint("glGetFragmentMaterialfvSGIX")] + _glGetFragmentMaterialfvSGIX _GetFragmentMaterialfvSGIX { get; } + + delegate void _glGetFragmentMaterialfvSGIX_ptr(MaterialFace face, MaterialParameter pname, void* @params); + [GlEntryPoint("glGetFragmentMaterialfvSGIX")] + _glGetFragmentMaterialfvSGIX_ptr _GetFragmentMaterialfvSGIX_ptr { get; } + + delegate void _glGetFragmentMaterialfvSGIX_intptr(MaterialFace face, MaterialParameter pname, IntPtr @params); + [GlEntryPoint("glGetFragmentMaterialfvSGIX")] + _glGetFragmentMaterialfvSGIX_intptr _GetFragmentMaterialfvSGIX_intptr { get; } + + // --- + + delegate void _glGetFragmentMaterialivSGIX(MaterialFace face, MaterialParameter pname, int[] @params); + [GlEntryPoint("glGetFragmentMaterialivSGIX")] + _glGetFragmentMaterialivSGIX _GetFragmentMaterialivSGIX { get; } + + delegate void _glGetFragmentMaterialivSGIX_ptr(MaterialFace face, MaterialParameter pname, void* @params); + [GlEntryPoint("glGetFragmentMaterialivSGIX")] + _glGetFragmentMaterialivSGIX_ptr _GetFragmentMaterialivSGIX_ptr { get; } + + delegate void _glGetFragmentMaterialivSGIX_intptr(MaterialFace face, MaterialParameter pname, IntPtr @params); + [GlEntryPoint("glGetFragmentMaterialivSGIX")] + _glGetFragmentMaterialivSGIX_intptr _GetFragmentMaterialivSGIX_intptr { get; } + + // --- + + delegate void _glGetFramebufferAttachmentParameteriv(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, int[] @params); + [GlEntryPoint("glGetFramebufferAttachmentParameteriv")] + _glGetFramebufferAttachmentParameteriv _GetFramebufferAttachmentParameteriv { get; } + + delegate void _glGetFramebufferAttachmentParameteriv_ptr(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, void* @params); + [GlEntryPoint("glGetFramebufferAttachmentParameteriv")] + _glGetFramebufferAttachmentParameteriv_ptr _GetFramebufferAttachmentParameteriv_ptr { get; } + + delegate void _glGetFramebufferAttachmentParameteriv_intptr(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, IntPtr @params); + [GlEntryPoint("glGetFramebufferAttachmentParameteriv")] + _glGetFramebufferAttachmentParameteriv_intptr _GetFramebufferAttachmentParameteriv_intptr { get; } + + // --- + + delegate void _glGetFramebufferAttachmentParameterivEXT(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, int[] @params); + [GlEntryPoint("glGetFramebufferAttachmentParameterivEXT")] + _glGetFramebufferAttachmentParameterivEXT _GetFramebufferAttachmentParameterivEXT { get; } + + delegate void _glGetFramebufferAttachmentParameterivEXT_ptr(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, void* @params); + [GlEntryPoint("glGetFramebufferAttachmentParameterivEXT")] + _glGetFramebufferAttachmentParameterivEXT_ptr _GetFramebufferAttachmentParameterivEXT_ptr { get; } + + delegate void _glGetFramebufferAttachmentParameterivEXT_intptr(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, IntPtr @params); + [GlEntryPoint("glGetFramebufferAttachmentParameterivEXT")] + _glGetFramebufferAttachmentParameterivEXT_intptr _GetFramebufferAttachmentParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetFramebufferAttachmentParameterivOES(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, int[] @params); + [GlEntryPoint("glGetFramebufferAttachmentParameterivOES")] + _glGetFramebufferAttachmentParameterivOES _GetFramebufferAttachmentParameterivOES { get; } + + delegate void _glGetFramebufferAttachmentParameterivOES_ptr(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, void* @params); + [GlEntryPoint("glGetFramebufferAttachmentParameterivOES")] + _glGetFramebufferAttachmentParameterivOES_ptr _GetFramebufferAttachmentParameterivOES_ptr { get; } + + delegate void _glGetFramebufferAttachmentParameterivOES_intptr(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, IntPtr @params); + [GlEntryPoint("glGetFramebufferAttachmentParameterivOES")] + _glGetFramebufferAttachmentParameterivOES_intptr _GetFramebufferAttachmentParameterivOES_intptr { get; } + + // --- + + delegate void _glGetFramebufferParameterfvAMD(FramebufferTarget target, FramebufferAttachmentParameterName pname, uint numsamples, uint pixelindex, int size, float[] values); + [GlEntryPoint("glGetFramebufferParameterfvAMD")] + _glGetFramebufferParameterfvAMD _GetFramebufferParameterfvAMD { get; } + + delegate void _glGetFramebufferParameterfvAMD_ptr(FramebufferTarget target, FramebufferAttachmentParameterName pname, uint numsamples, uint pixelindex, int size, void* values); + [GlEntryPoint("glGetFramebufferParameterfvAMD")] + _glGetFramebufferParameterfvAMD_ptr _GetFramebufferParameterfvAMD_ptr { get; } + + delegate void _glGetFramebufferParameterfvAMD_intptr(FramebufferTarget target, FramebufferAttachmentParameterName pname, uint numsamples, uint pixelindex, int size, IntPtr values); + [GlEntryPoint("glGetFramebufferParameterfvAMD")] + _glGetFramebufferParameterfvAMD_intptr _GetFramebufferParameterfvAMD_intptr { get; } + + // --- + + delegate void _glGetFramebufferParameteriv(FramebufferTarget target, FramebufferAttachmentParameterName pname, int[] @params); + [GlEntryPoint("glGetFramebufferParameteriv")] + _glGetFramebufferParameteriv _GetFramebufferParameteriv { get; } + + delegate void _glGetFramebufferParameteriv_ptr(FramebufferTarget target, FramebufferAttachmentParameterName pname, void* @params); + [GlEntryPoint("glGetFramebufferParameteriv")] + _glGetFramebufferParameteriv_ptr _GetFramebufferParameteriv_ptr { get; } + + delegate void _glGetFramebufferParameteriv_intptr(FramebufferTarget target, FramebufferAttachmentParameterName pname, IntPtr @params); + [GlEntryPoint("glGetFramebufferParameteriv")] + _glGetFramebufferParameteriv_intptr _GetFramebufferParameteriv_intptr { get; } + + // --- + + delegate void _glGetFramebufferParameterivEXT(uint framebuffer, GetFramebufferParameter pname, int[] @params); + [GlEntryPoint("glGetFramebufferParameterivEXT")] + _glGetFramebufferParameterivEXT _GetFramebufferParameterivEXT { get; } + + delegate void _glGetFramebufferParameterivEXT_ptr(uint framebuffer, GetFramebufferParameter pname, void* @params); + [GlEntryPoint("glGetFramebufferParameterivEXT")] + _glGetFramebufferParameterivEXT_ptr _GetFramebufferParameterivEXT_ptr { get; } + + delegate void _glGetFramebufferParameterivEXT_intptr(uint framebuffer, GetFramebufferParameter pname, IntPtr @params); + [GlEntryPoint("glGetFramebufferParameterivEXT")] + _glGetFramebufferParameterivEXT_intptr _GetFramebufferParameterivEXT_intptr { get; } + + // --- + + delegate int _glGetFramebufferPixelLocalStorageSizeEXT(uint target); + [GlEntryPoint("glGetFramebufferPixelLocalStorageSizeEXT")] + _glGetFramebufferPixelLocalStorageSizeEXT _GetFramebufferPixelLocalStorageSizeEXT { get; } + + // --- + + delegate int _glGetGraphicsResetStatus(); + [GlEntryPoint("glGetGraphicsResetStatus")] + _glGetGraphicsResetStatus _GetGraphicsResetStatus { get; } + + // --- + + delegate int _glGetGraphicsResetStatusARB(); + [GlEntryPoint("glGetGraphicsResetStatusARB")] + _glGetGraphicsResetStatusARB _GetGraphicsResetStatusARB { get; } + + // --- + + delegate int _glGetGraphicsResetStatusEXT(); + [GlEntryPoint("glGetGraphicsResetStatusEXT")] + _glGetGraphicsResetStatusEXT _GetGraphicsResetStatusEXT { get; } + + // --- + + delegate int _glGetGraphicsResetStatusKHR(); + [GlEntryPoint("glGetGraphicsResetStatusKHR")] + _glGetGraphicsResetStatusKHR _GetGraphicsResetStatusKHR { get; } + + // --- + + delegate int _glGetHandleARB(int pname); + [GlEntryPoint("glGetHandleARB")] + _glGetHandleARB _GetHandleARB { get; } + + // --- + + delegate void _glGetHistogram(HistogramTargetEXT target, bool reset, PixelFormat format, PixelType type, IntPtr values); + [GlEntryPoint("glGetHistogram")] + _glGetHistogram _GetHistogram { get; } + + // --- + + delegate void _glGetHistogramEXT(HistogramTargetEXT target, bool reset, PixelFormat format, PixelType type, IntPtr values); + [GlEntryPoint("glGetHistogramEXT")] + _glGetHistogramEXT _GetHistogramEXT { get; } + + // --- + + delegate void _glGetHistogramParameterfv(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, float[] @params); + [GlEntryPoint("glGetHistogramParameterfv")] + _glGetHistogramParameterfv _GetHistogramParameterfv { get; } + + delegate void _glGetHistogramParameterfv_ptr(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, void* @params); + [GlEntryPoint("glGetHistogramParameterfv")] + _glGetHistogramParameterfv_ptr _GetHistogramParameterfv_ptr { get; } + + delegate void _glGetHistogramParameterfv_intptr(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, IntPtr @params); + [GlEntryPoint("glGetHistogramParameterfv")] + _glGetHistogramParameterfv_intptr _GetHistogramParameterfv_intptr { get; } + + // --- + + delegate void _glGetHistogramParameterfvEXT(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, float[] @params); + [GlEntryPoint("glGetHistogramParameterfvEXT")] + _glGetHistogramParameterfvEXT _GetHistogramParameterfvEXT { get; } + + delegate void _glGetHistogramParameterfvEXT_ptr(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, void* @params); + [GlEntryPoint("glGetHistogramParameterfvEXT")] + _glGetHistogramParameterfvEXT_ptr _GetHistogramParameterfvEXT_ptr { get; } + + delegate void _glGetHistogramParameterfvEXT_intptr(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, IntPtr @params); + [GlEntryPoint("glGetHistogramParameterfvEXT")] + _glGetHistogramParameterfvEXT_intptr _GetHistogramParameterfvEXT_intptr { get; } + + // --- + + delegate void _glGetHistogramParameteriv(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, int[] @params); + [GlEntryPoint("glGetHistogramParameteriv")] + _glGetHistogramParameteriv _GetHistogramParameteriv { get; } + + delegate void _glGetHistogramParameteriv_ptr(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, void* @params); + [GlEntryPoint("glGetHistogramParameteriv")] + _glGetHistogramParameteriv_ptr _GetHistogramParameteriv_ptr { get; } + + delegate void _glGetHistogramParameteriv_intptr(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, IntPtr @params); + [GlEntryPoint("glGetHistogramParameteriv")] + _glGetHistogramParameteriv_intptr _GetHistogramParameteriv_intptr { get; } + + // --- + + delegate void _glGetHistogramParameterivEXT(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, int[] @params); + [GlEntryPoint("glGetHistogramParameterivEXT")] + _glGetHistogramParameterivEXT _GetHistogramParameterivEXT { get; } + + delegate void _glGetHistogramParameterivEXT_ptr(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, void* @params); + [GlEntryPoint("glGetHistogramParameterivEXT")] + _glGetHistogramParameterivEXT_ptr _GetHistogramParameterivEXT_ptr { get; } + + delegate void _glGetHistogramParameterivEXT_intptr(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, IntPtr @params); + [GlEntryPoint("glGetHistogramParameterivEXT")] + _glGetHistogramParameterivEXT_intptr _GetHistogramParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetHistogramParameterxvOES(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, float[] @params); + [GlEntryPoint("glGetHistogramParameterxvOES")] + _glGetHistogramParameterxvOES _GetHistogramParameterxvOES { get; } + + delegate void _glGetHistogramParameterxvOES_ptr(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, void* @params); + [GlEntryPoint("glGetHistogramParameterxvOES")] + _glGetHistogramParameterxvOES_ptr _GetHistogramParameterxvOES_ptr { get; } + + delegate void _glGetHistogramParameterxvOES_intptr(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, IntPtr @params); + [GlEntryPoint("glGetHistogramParameterxvOES")] + _glGetHistogramParameterxvOES_intptr _GetHistogramParameterxvOES_intptr { get; } + + // --- + + delegate UInt64 _glGetImageHandleARB(uint texture, int level, bool layered, int layer, PixelFormat format); + [GlEntryPoint("glGetImageHandleARB")] + _glGetImageHandleARB _GetImageHandleARB { get; } + + // --- + + delegate UInt64 _glGetImageHandleNV(uint texture, int level, bool layered, int layer, PixelFormat format); + [GlEntryPoint("glGetImageHandleNV")] + _glGetImageHandleNV _GetImageHandleNV { get; } + + // --- + + delegate void _glGetImageTransformParameterfvHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, float[] @params); + [GlEntryPoint("glGetImageTransformParameterfvHP")] + _glGetImageTransformParameterfvHP _GetImageTransformParameterfvHP { get; } + + delegate void _glGetImageTransformParameterfvHP_ptr(ImageTransformTargetHP target, ImageTransformPNameHP pname, void* @params); + [GlEntryPoint("glGetImageTransformParameterfvHP")] + _glGetImageTransformParameterfvHP_ptr _GetImageTransformParameterfvHP_ptr { get; } + + delegate void _glGetImageTransformParameterfvHP_intptr(ImageTransformTargetHP target, ImageTransformPNameHP pname, IntPtr @params); + [GlEntryPoint("glGetImageTransformParameterfvHP")] + _glGetImageTransformParameterfvHP_intptr _GetImageTransformParameterfvHP_intptr { get; } + + // --- + + delegate void _glGetImageTransformParameterivHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, int[] @params); + [GlEntryPoint("glGetImageTransformParameterivHP")] + _glGetImageTransformParameterivHP _GetImageTransformParameterivHP { get; } + + delegate void _glGetImageTransformParameterivHP_ptr(ImageTransformTargetHP target, ImageTransformPNameHP pname, void* @params); + [GlEntryPoint("glGetImageTransformParameterivHP")] + _glGetImageTransformParameterivHP_ptr _GetImageTransformParameterivHP_ptr { get; } + + delegate void _glGetImageTransformParameterivHP_intptr(ImageTransformTargetHP target, ImageTransformPNameHP pname, IntPtr @params); + [GlEntryPoint("glGetImageTransformParameterivHP")] + _glGetImageTransformParameterivHP_intptr _GetImageTransformParameterivHP_intptr { get; } + + // --- + + delegate void _glGetInfoLogARB(int obj, int maxLength, out int length, string infoLog); + [GlEntryPoint("glGetInfoLogARB")] + _glGetInfoLogARB _GetInfoLogARB { get; } + + delegate void _glGetInfoLogARB_ptr(int obj, int maxLength, out int length, void* infoLog); + [GlEntryPoint("glGetInfoLogARB")] + _glGetInfoLogARB_ptr _GetInfoLogARB_ptr { get; } + + delegate void _glGetInfoLogARB_intptr(int obj, int maxLength, out int length, IntPtr infoLog); + [GlEntryPoint("glGetInfoLogARB")] + _glGetInfoLogARB_intptr _GetInfoLogARB_intptr { get; } + + // --- + + delegate int _glGetInstrumentsSGIX(); + [GlEntryPoint("glGetInstrumentsSGIX")] + _glGetInstrumentsSGIX _GetInstrumentsSGIX { get; } + + // --- + + delegate void _glGetInteger64i_v(int target, uint index, Int64[] data); + [GlEntryPoint("glGetInteger64i_v")] + _glGetInteger64i_v _GetInteger64i_v { get; } + + delegate void _glGetInteger64i_v_ptr(int target, uint index, void* data); + [GlEntryPoint("glGetInteger64i_v")] + _glGetInteger64i_v_ptr _GetInteger64i_v_ptr { get; } + + delegate void _glGetInteger64i_v_intptr(int target, uint index, IntPtr data); + [GlEntryPoint("glGetInteger64i_v")] + _glGetInteger64i_v_intptr _GetInteger64i_v_intptr { get; } + + // --- + + delegate void _glGetInteger64v(GetPName pname, Int64[] data); + [GlEntryPoint("glGetInteger64v")] + _glGetInteger64v _GetInteger64v { get; } + + delegate void _glGetInteger64v_ptr(GetPName pname, void* data); + [GlEntryPoint("glGetInteger64v")] + _glGetInteger64v_ptr _GetInteger64v_ptr { get; } + + delegate void _glGetInteger64v_intptr(GetPName pname, IntPtr data); + [GlEntryPoint("glGetInteger64v")] + _glGetInteger64v_intptr _GetInteger64v_intptr { get; } + + // --- + + delegate void _glGetInteger64vAPPLE(GetPName pname, Int64[] @params); + [GlEntryPoint("glGetInteger64vAPPLE")] + _glGetInteger64vAPPLE _GetInteger64vAPPLE { get; } + + delegate void _glGetInteger64vAPPLE_ptr(GetPName pname, void* @params); + [GlEntryPoint("glGetInteger64vAPPLE")] + _glGetInteger64vAPPLE_ptr _GetInteger64vAPPLE_ptr { get; } + + delegate void _glGetInteger64vAPPLE_intptr(GetPName pname, IntPtr @params); + [GlEntryPoint("glGetInteger64vAPPLE")] + _glGetInteger64vAPPLE_intptr _GetInteger64vAPPLE_intptr { get; } + + // --- + + delegate void _glGetInteger64vEXT(GetPName pname, Int64[] data); + [GlEntryPoint("glGetInteger64vEXT")] + _glGetInteger64vEXT _GetInteger64vEXT { get; } + + delegate void _glGetInteger64vEXT_ptr(GetPName pname, void* data); + [GlEntryPoint("glGetInteger64vEXT")] + _glGetInteger64vEXT_ptr _GetInteger64vEXT_ptr { get; } + + delegate void _glGetInteger64vEXT_intptr(GetPName pname, IntPtr data); + [GlEntryPoint("glGetInteger64vEXT")] + _glGetInteger64vEXT_intptr _GetInteger64vEXT_intptr { get; } + + // --- + + delegate void _glGetIntegerIndexedvEXT(int target, uint index, int[] data); + [GlEntryPoint("glGetIntegerIndexedvEXT")] + _glGetIntegerIndexedvEXT _GetIntegerIndexedvEXT { get; } + + delegate void _glGetIntegerIndexedvEXT_ptr(int target, uint index, void* data); + [GlEntryPoint("glGetIntegerIndexedvEXT")] + _glGetIntegerIndexedvEXT_ptr _GetIntegerIndexedvEXT_ptr { get; } + + delegate void _glGetIntegerIndexedvEXT_intptr(int target, uint index, IntPtr data); + [GlEntryPoint("glGetIntegerIndexedvEXT")] + _glGetIntegerIndexedvEXT_intptr _GetIntegerIndexedvEXT_intptr { get; } + + // --- + + delegate void _glGetIntegeri_v(int target, uint index, int[] data); + [GlEntryPoint("glGetIntegeri_v")] + _glGetIntegeri_v _GetIntegeri_v { get; } + + delegate void _glGetIntegeri_v_ptr(int target, uint index, void* data); + [GlEntryPoint("glGetIntegeri_v")] + _glGetIntegeri_v_ptr _GetIntegeri_v_ptr { get; } + + delegate void _glGetIntegeri_v_intptr(int target, uint index, IntPtr data); + [GlEntryPoint("glGetIntegeri_v")] + _glGetIntegeri_v_intptr _GetIntegeri_v_intptr { get; } + + // --- + + delegate void _glGetIntegeri_vEXT(int target, uint index, int[] data); + [GlEntryPoint("glGetIntegeri_vEXT")] + _glGetIntegeri_vEXT _GetIntegeri_vEXT { get; } + + delegate void _glGetIntegeri_vEXT_ptr(int target, uint index, void* data); + [GlEntryPoint("glGetIntegeri_vEXT")] + _glGetIntegeri_vEXT_ptr _GetIntegeri_vEXT_ptr { get; } + + delegate void _glGetIntegeri_vEXT_intptr(int target, uint index, IntPtr data); + [GlEntryPoint("glGetIntegeri_vEXT")] + _glGetIntegeri_vEXT_intptr _GetIntegeri_vEXT_intptr { get; } + + // --- + + delegate void _glGetIntegerui64i_vNV(int value, uint index, UInt64[] result); + [GlEntryPoint("glGetIntegerui64i_vNV")] + _glGetIntegerui64i_vNV _GetIntegerui64i_vNV { get; } + + delegate void _glGetIntegerui64i_vNV_ptr(int value, uint index, void* result); + [GlEntryPoint("glGetIntegerui64i_vNV")] + _glGetIntegerui64i_vNV_ptr _GetIntegerui64i_vNV_ptr { get; } + + delegate void _glGetIntegerui64i_vNV_intptr(int value, uint index, IntPtr result); + [GlEntryPoint("glGetIntegerui64i_vNV")] + _glGetIntegerui64i_vNV_intptr _GetIntegerui64i_vNV_intptr { get; } + + // --- + + delegate void _glGetIntegerui64vNV(int value, UInt64[] result); + [GlEntryPoint("glGetIntegerui64vNV")] + _glGetIntegerui64vNV _GetIntegerui64vNV { get; } + + delegate void _glGetIntegerui64vNV_ptr(int value, void* result); + [GlEntryPoint("glGetIntegerui64vNV")] + _glGetIntegerui64vNV_ptr _GetIntegerui64vNV_ptr { get; } + + delegate void _glGetIntegerui64vNV_intptr(int value, IntPtr result); + [GlEntryPoint("glGetIntegerui64vNV")] + _glGetIntegerui64vNV_intptr _GetIntegerui64vNV_intptr { get; } + + // --- + + delegate void _glGetIntegerv(GetPName pname, int[] data); + [GlEntryPoint("glGetIntegerv")] + _glGetIntegerv _GetIntegerv { get; } + + delegate void _glGetIntegerv_ptr(GetPName pname, void* data); + [GlEntryPoint("glGetIntegerv")] + _glGetIntegerv_ptr _GetIntegerv_ptr { get; } + + delegate void _glGetIntegerv_intptr(GetPName pname, IntPtr data); + [GlEntryPoint("glGetIntegerv")] + _glGetIntegerv_intptr _GetIntegerv_intptr { get; } + + // --- + + delegate void _glGetInternalformatSampleivNV(TextureTarget target, InternalFormat internalformat, int samples, InternalFormatPName pname, int count, int[] @params); + [GlEntryPoint("glGetInternalformatSampleivNV")] + _glGetInternalformatSampleivNV _GetInternalformatSampleivNV { get; } + + delegate void _glGetInternalformatSampleivNV_ptr(TextureTarget target, InternalFormat internalformat, int samples, InternalFormatPName pname, int count, void* @params); + [GlEntryPoint("glGetInternalformatSampleivNV")] + _glGetInternalformatSampleivNV_ptr _GetInternalformatSampleivNV_ptr { get; } + + delegate void _glGetInternalformatSampleivNV_intptr(TextureTarget target, InternalFormat internalformat, int samples, InternalFormatPName pname, int count, IntPtr @params); + [GlEntryPoint("glGetInternalformatSampleivNV")] + _glGetInternalformatSampleivNV_intptr _GetInternalformatSampleivNV_intptr { get; } + + // --- + + delegate void _glGetInternalformati64v(TextureTarget target, InternalFormat internalformat, InternalFormatPName pname, int count, Int64[] @params); + [GlEntryPoint("glGetInternalformati64v")] + _glGetInternalformati64v _GetInternalformati64v { get; } + + delegate void _glGetInternalformati64v_ptr(TextureTarget target, InternalFormat internalformat, InternalFormatPName pname, int count, void* @params); + [GlEntryPoint("glGetInternalformati64v")] + _glGetInternalformati64v_ptr _GetInternalformati64v_ptr { get; } + + delegate void _glGetInternalformati64v_intptr(TextureTarget target, InternalFormat internalformat, InternalFormatPName pname, int count, IntPtr @params); + [GlEntryPoint("glGetInternalformati64v")] + _glGetInternalformati64v_intptr _GetInternalformati64v_intptr { get; } + + // --- + + delegate void _glGetInternalformativ(TextureTarget target, InternalFormat internalformat, InternalFormatPName pname, int count, int[] @params); + [GlEntryPoint("glGetInternalformativ")] + _glGetInternalformativ _GetInternalformativ { get; } + + delegate void _glGetInternalformativ_ptr(TextureTarget target, InternalFormat internalformat, InternalFormatPName pname, int count, void* @params); + [GlEntryPoint("glGetInternalformativ")] + _glGetInternalformativ_ptr _GetInternalformativ_ptr { get; } + + delegate void _glGetInternalformativ_intptr(TextureTarget target, InternalFormat internalformat, InternalFormatPName pname, int count, IntPtr @params); + [GlEntryPoint("glGetInternalformativ")] + _glGetInternalformativ_intptr _GetInternalformativ_intptr { get; } + + // --- + + delegate void _glGetInvariantBooleanvEXT(uint id, GetVariantValueEXT value, bool[] data); + [GlEntryPoint("glGetInvariantBooleanvEXT")] + _glGetInvariantBooleanvEXT _GetInvariantBooleanvEXT { get; } + + delegate void _glGetInvariantBooleanvEXT_ptr(uint id, GetVariantValueEXT value, void* data); + [GlEntryPoint("glGetInvariantBooleanvEXT")] + _glGetInvariantBooleanvEXT_ptr _GetInvariantBooleanvEXT_ptr { get; } + + delegate void _glGetInvariantBooleanvEXT_intptr(uint id, GetVariantValueEXT value, IntPtr data); + [GlEntryPoint("glGetInvariantBooleanvEXT")] + _glGetInvariantBooleanvEXT_intptr _GetInvariantBooleanvEXT_intptr { get; } + + // --- + + delegate void _glGetInvariantFloatvEXT(uint id, GetVariantValueEXT value, float[] data); + [GlEntryPoint("glGetInvariantFloatvEXT")] + _glGetInvariantFloatvEXT _GetInvariantFloatvEXT { get; } + + delegate void _glGetInvariantFloatvEXT_ptr(uint id, GetVariantValueEXT value, void* data); + [GlEntryPoint("glGetInvariantFloatvEXT")] + _glGetInvariantFloatvEXT_ptr _GetInvariantFloatvEXT_ptr { get; } + + delegate void _glGetInvariantFloatvEXT_intptr(uint id, GetVariantValueEXT value, IntPtr data); + [GlEntryPoint("glGetInvariantFloatvEXT")] + _glGetInvariantFloatvEXT_intptr _GetInvariantFloatvEXT_intptr { get; } + + // --- + + delegate void _glGetInvariantIntegervEXT(uint id, GetVariantValueEXT value, int[] data); + [GlEntryPoint("glGetInvariantIntegervEXT")] + _glGetInvariantIntegervEXT _GetInvariantIntegervEXT { get; } + + delegate void _glGetInvariantIntegervEXT_ptr(uint id, GetVariantValueEXT value, void* data); + [GlEntryPoint("glGetInvariantIntegervEXT")] + _glGetInvariantIntegervEXT_ptr _GetInvariantIntegervEXT_ptr { get; } + + delegate void _glGetInvariantIntegervEXT_intptr(uint id, GetVariantValueEXT value, IntPtr data); + [GlEntryPoint("glGetInvariantIntegervEXT")] + _glGetInvariantIntegervEXT_intptr _GetInvariantIntegervEXT_intptr { get; } + + // --- + + delegate void _glGetLightfv(LightName light, LightParameter pname, float[] @params); + [GlEntryPoint("glGetLightfv")] + _glGetLightfv _GetLightfv { get; } + + delegate void _glGetLightfv_ptr(LightName light, LightParameter pname, void* @params); + [GlEntryPoint("glGetLightfv")] + _glGetLightfv_ptr _GetLightfv_ptr { get; } + + delegate void _glGetLightfv_intptr(LightName light, LightParameter pname, IntPtr @params); + [GlEntryPoint("glGetLightfv")] + _glGetLightfv_intptr _GetLightfv_intptr { get; } + + // --- + + delegate void _glGetLightiv(LightName light, LightParameter pname, int[] @params); + [GlEntryPoint("glGetLightiv")] + _glGetLightiv _GetLightiv { get; } + + delegate void _glGetLightiv_ptr(LightName light, LightParameter pname, void* @params); + [GlEntryPoint("glGetLightiv")] + _glGetLightiv_ptr _GetLightiv_ptr { get; } + + delegate void _glGetLightiv_intptr(LightName light, LightParameter pname, IntPtr @params); + [GlEntryPoint("glGetLightiv")] + _glGetLightiv_intptr _GetLightiv_intptr { get; } + + // --- + + delegate void _glGetLightxOES(LightName light, LightParameter pname, float[] @params); + [GlEntryPoint("glGetLightxOES")] + _glGetLightxOES _GetLightxOES { get; } + + delegate void _glGetLightxOES_ptr(LightName light, LightParameter pname, void* @params); + [GlEntryPoint("glGetLightxOES")] + _glGetLightxOES_ptr _GetLightxOES_ptr { get; } + + delegate void _glGetLightxOES_intptr(LightName light, LightParameter pname, IntPtr @params); + [GlEntryPoint("glGetLightxOES")] + _glGetLightxOES_intptr _GetLightxOES_intptr { get; } + + // --- + + delegate void _glGetLightxv(LightName light, LightParameter pname, float[] @params); + [GlEntryPoint("glGetLightxv")] + _glGetLightxv _GetLightxv { get; } + + delegate void _glGetLightxv_ptr(LightName light, LightParameter pname, void* @params); + [GlEntryPoint("glGetLightxv")] + _glGetLightxv_ptr _GetLightxv_ptr { get; } + + delegate void _glGetLightxv_intptr(LightName light, LightParameter pname, IntPtr @params); + [GlEntryPoint("glGetLightxv")] + _glGetLightxv_intptr _GetLightxv_intptr { get; } + + // --- + + delegate void _glGetLightxvOES(LightName light, LightParameter pname, float[] @params); + [GlEntryPoint("glGetLightxvOES")] + _glGetLightxvOES _GetLightxvOES { get; } + + delegate void _glGetLightxvOES_ptr(LightName light, LightParameter pname, void* @params); + [GlEntryPoint("glGetLightxvOES")] + _glGetLightxvOES_ptr _GetLightxvOES_ptr { get; } + + delegate void _glGetLightxvOES_intptr(LightName light, LightParameter pname, IntPtr @params); + [GlEntryPoint("glGetLightxvOES")] + _glGetLightxvOES_intptr _GetLightxvOES_intptr { get; } + + // --- + + delegate void _glGetListParameterfvSGIX(uint list, ListParameterName pname, float[] @params); + [GlEntryPoint("glGetListParameterfvSGIX")] + _glGetListParameterfvSGIX _GetListParameterfvSGIX { get; } + + delegate void _glGetListParameterfvSGIX_ptr(uint list, ListParameterName pname, void* @params); + [GlEntryPoint("glGetListParameterfvSGIX")] + _glGetListParameterfvSGIX_ptr _GetListParameterfvSGIX_ptr { get; } + + delegate void _glGetListParameterfvSGIX_intptr(uint list, ListParameterName pname, IntPtr @params); + [GlEntryPoint("glGetListParameterfvSGIX")] + _glGetListParameterfvSGIX_intptr _GetListParameterfvSGIX_intptr { get; } + + // --- + + delegate void _glGetListParameterivSGIX(uint list, ListParameterName pname, int[] @params); + [GlEntryPoint("glGetListParameterivSGIX")] + _glGetListParameterivSGIX _GetListParameterivSGIX { get; } + + delegate void _glGetListParameterivSGIX_ptr(uint list, ListParameterName pname, void* @params); + [GlEntryPoint("glGetListParameterivSGIX")] + _glGetListParameterivSGIX_ptr _GetListParameterivSGIX_ptr { get; } + + delegate void _glGetListParameterivSGIX_intptr(uint list, ListParameterName pname, IntPtr @params); + [GlEntryPoint("glGetListParameterivSGIX")] + _glGetListParameterivSGIX_intptr _GetListParameterivSGIX_intptr { get; } + + // --- + + delegate void _glGetLocalConstantBooleanvEXT(uint id, GetVariantValueEXT value, bool[] data); + [GlEntryPoint("glGetLocalConstantBooleanvEXT")] + _glGetLocalConstantBooleanvEXT _GetLocalConstantBooleanvEXT { get; } + + delegate void _glGetLocalConstantBooleanvEXT_ptr(uint id, GetVariantValueEXT value, void* data); + [GlEntryPoint("glGetLocalConstantBooleanvEXT")] + _glGetLocalConstantBooleanvEXT_ptr _GetLocalConstantBooleanvEXT_ptr { get; } + + delegate void _glGetLocalConstantBooleanvEXT_intptr(uint id, GetVariantValueEXT value, IntPtr data); + [GlEntryPoint("glGetLocalConstantBooleanvEXT")] + _glGetLocalConstantBooleanvEXT_intptr _GetLocalConstantBooleanvEXT_intptr { get; } + + // --- + + delegate void _glGetLocalConstantFloatvEXT(uint id, GetVariantValueEXT value, float[] data); + [GlEntryPoint("glGetLocalConstantFloatvEXT")] + _glGetLocalConstantFloatvEXT _GetLocalConstantFloatvEXT { get; } + + delegate void _glGetLocalConstantFloatvEXT_ptr(uint id, GetVariantValueEXT value, void* data); + [GlEntryPoint("glGetLocalConstantFloatvEXT")] + _glGetLocalConstantFloatvEXT_ptr _GetLocalConstantFloatvEXT_ptr { get; } + + delegate void _glGetLocalConstantFloatvEXT_intptr(uint id, GetVariantValueEXT value, IntPtr data); + [GlEntryPoint("glGetLocalConstantFloatvEXT")] + _glGetLocalConstantFloatvEXT_intptr _GetLocalConstantFloatvEXT_intptr { get; } + + // --- + + delegate void _glGetLocalConstantIntegervEXT(uint id, GetVariantValueEXT value, int[] data); + [GlEntryPoint("glGetLocalConstantIntegervEXT")] + _glGetLocalConstantIntegervEXT _GetLocalConstantIntegervEXT { get; } + + delegate void _glGetLocalConstantIntegervEXT_ptr(uint id, GetVariantValueEXT value, void* data); + [GlEntryPoint("glGetLocalConstantIntegervEXT")] + _glGetLocalConstantIntegervEXT_ptr _GetLocalConstantIntegervEXT_ptr { get; } + + delegate void _glGetLocalConstantIntegervEXT_intptr(uint id, GetVariantValueEXT value, IntPtr data); + [GlEntryPoint("glGetLocalConstantIntegervEXT")] + _glGetLocalConstantIntegervEXT_intptr _GetLocalConstantIntegervEXT_intptr { get; } + + // --- + + delegate void _glGetMapAttribParameterfvNV(EvalTargetNV target, uint index, MapAttribParameterNV pname, float[] @params); + [GlEntryPoint("glGetMapAttribParameterfvNV")] + _glGetMapAttribParameterfvNV _GetMapAttribParameterfvNV { get; } + + delegate void _glGetMapAttribParameterfvNV_ptr(EvalTargetNV target, uint index, MapAttribParameterNV pname, void* @params); + [GlEntryPoint("glGetMapAttribParameterfvNV")] + _glGetMapAttribParameterfvNV_ptr _GetMapAttribParameterfvNV_ptr { get; } + + delegate void _glGetMapAttribParameterfvNV_intptr(EvalTargetNV target, uint index, MapAttribParameterNV pname, IntPtr @params); + [GlEntryPoint("glGetMapAttribParameterfvNV")] + _glGetMapAttribParameterfvNV_intptr _GetMapAttribParameterfvNV_intptr { get; } + + // --- + + delegate void _glGetMapAttribParameterivNV(EvalTargetNV target, uint index, MapAttribParameterNV pname, int[] @params); + [GlEntryPoint("glGetMapAttribParameterivNV")] + _glGetMapAttribParameterivNV _GetMapAttribParameterivNV { get; } + + delegate void _glGetMapAttribParameterivNV_ptr(EvalTargetNV target, uint index, MapAttribParameterNV pname, void* @params); + [GlEntryPoint("glGetMapAttribParameterivNV")] + _glGetMapAttribParameterivNV_ptr _GetMapAttribParameterivNV_ptr { get; } + + delegate void _glGetMapAttribParameterivNV_intptr(EvalTargetNV target, uint index, MapAttribParameterNV pname, IntPtr @params); + [GlEntryPoint("glGetMapAttribParameterivNV")] + _glGetMapAttribParameterivNV_intptr _GetMapAttribParameterivNV_intptr { get; } + + // --- + + delegate void _glGetMapControlPointsNV(EvalTargetNV target, uint index, MapTypeNV type, int ustride, int vstride, bool packed, IntPtr points); + [GlEntryPoint("glGetMapControlPointsNV")] + _glGetMapControlPointsNV _GetMapControlPointsNV { get; } + + // --- + + delegate void _glGetMapParameterfvNV(EvalTargetNV target, MapParameterNV pname, float[] @params); + [GlEntryPoint("glGetMapParameterfvNV")] + _glGetMapParameterfvNV _GetMapParameterfvNV { get; } + + delegate void _glGetMapParameterfvNV_ptr(EvalTargetNV target, MapParameterNV pname, void* @params); + [GlEntryPoint("glGetMapParameterfvNV")] + _glGetMapParameterfvNV_ptr _GetMapParameterfvNV_ptr { get; } + + delegate void _glGetMapParameterfvNV_intptr(EvalTargetNV target, MapParameterNV pname, IntPtr @params); + [GlEntryPoint("glGetMapParameterfvNV")] + _glGetMapParameterfvNV_intptr _GetMapParameterfvNV_intptr { get; } + + // --- + + delegate void _glGetMapParameterivNV(EvalTargetNV target, MapParameterNV pname, int[] @params); + [GlEntryPoint("glGetMapParameterivNV")] + _glGetMapParameterivNV _GetMapParameterivNV { get; } + + delegate void _glGetMapParameterivNV_ptr(EvalTargetNV target, MapParameterNV pname, void* @params); + [GlEntryPoint("glGetMapParameterivNV")] + _glGetMapParameterivNV_ptr _GetMapParameterivNV_ptr { get; } + + delegate void _glGetMapParameterivNV_intptr(EvalTargetNV target, MapParameterNV pname, IntPtr @params); + [GlEntryPoint("glGetMapParameterivNV")] + _glGetMapParameterivNV_intptr _GetMapParameterivNV_intptr { get; } + + // --- + + delegate void _glGetMapdv(MapTarget target, GetMapQuery query, double[] v); + [GlEntryPoint("glGetMapdv")] + _glGetMapdv _GetMapdv { get; } + + delegate void _glGetMapdv_ptr(MapTarget target, GetMapQuery query, void* v); + [GlEntryPoint("glGetMapdv")] + _glGetMapdv_ptr _GetMapdv_ptr { get; } + + delegate void _glGetMapdv_intptr(MapTarget target, GetMapQuery query, IntPtr v); + [GlEntryPoint("glGetMapdv")] + _glGetMapdv_intptr _GetMapdv_intptr { get; } + + // --- + + delegate void _glGetMapfv(MapTarget target, GetMapQuery query, float[] v); + [GlEntryPoint("glGetMapfv")] + _glGetMapfv _GetMapfv { get; } + + delegate void _glGetMapfv_ptr(MapTarget target, GetMapQuery query, void* v); + [GlEntryPoint("glGetMapfv")] + _glGetMapfv_ptr _GetMapfv_ptr { get; } + + delegate void _glGetMapfv_intptr(MapTarget target, GetMapQuery query, IntPtr v); + [GlEntryPoint("glGetMapfv")] + _glGetMapfv_intptr _GetMapfv_intptr { get; } + + // --- + + delegate void _glGetMapiv(MapTarget target, GetMapQuery query, int[] v); + [GlEntryPoint("glGetMapiv")] + _glGetMapiv _GetMapiv { get; } + + delegate void _glGetMapiv_ptr(MapTarget target, GetMapQuery query, void* v); + [GlEntryPoint("glGetMapiv")] + _glGetMapiv_ptr _GetMapiv_ptr { get; } + + delegate void _glGetMapiv_intptr(MapTarget target, GetMapQuery query, IntPtr v); + [GlEntryPoint("glGetMapiv")] + _glGetMapiv_intptr _GetMapiv_intptr { get; } + + // --- + + delegate void _glGetMapxvOES(MapTarget target, GetMapQuery query, float[] v); + [GlEntryPoint("glGetMapxvOES")] + _glGetMapxvOES _GetMapxvOES { get; } + + delegate void _glGetMapxvOES_ptr(MapTarget target, GetMapQuery query, void* v); + [GlEntryPoint("glGetMapxvOES")] + _glGetMapxvOES_ptr _GetMapxvOES_ptr { get; } + + delegate void _glGetMapxvOES_intptr(MapTarget target, GetMapQuery query, IntPtr v); + [GlEntryPoint("glGetMapxvOES")] + _glGetMapxvOES_intptr _GetMapxvOES_intptr { get; } + + // --- + + delegate void _glGetMaterialfv(MaterialFace face, MaterialParameter pname, float[] @params); + [GlEntryPoint("glGetMaterialfv")] + _glGetMaterialfv _GetMaterialfv { get; } + + delegate void _glGetMaterialfv_ptr(MaterialFace face, MaterialParameter pname, void* @params); + [GlEntryPoint("glGetMaterialfv")] + _glGetMaterialfv_ptr _GetMaterialfv_ptr { get; } + + delegate void _glGetMaterialfv_intptr(MaterialFace face, MaterialParameter pname, IntPtr @params); + [GlEntryPoint("glGetMaterialfv")] + _glGetMaterialfv_intptr _GetMaterialfv_intptr { get; } + + // --- + + delegate void _glGetMaterialiv(MaterialFace face, MaterialParameter pname, int[] @params); + [GlEntryPoint("glGetMaterialiv")] + _glGetMaterialiv _GetMaterialiv { get; } + + delegate void _glGetMaterialiv_ptr(MaterialFace face, MaterialParameter pname, void* @params); + [GlEntryPoint("glGetMaterialiv")] + _glGetMaterialiv_ptr _GetMaterialiv_ptr { get; } + + delegate void _glGetMaterialiv_intptr(MaterialFace face, MaterialParameter pname, IntPtr @params); + [GlEntryPoint("glGetMaterialiv")] + _glGetMaterialiv_intptr _GetMaterialiv_intptr { get; } + + // --- + + delegate void _glGetMaterialxOES(MaterialFace face, MaterialParameter pname, float param); + [GlEntryPoint("glGetMaterialxOES")] + _glGetMaterialxOES _GetMaterialxOES { get; } + + // --- + + delegate void _glGetMaterialxv(MaterialFace face, MaterialParameter pname, float[] @params); + [GlEntryPoint("glGetMaterialxv")] + _glGetMaterialxv _GetMaterialxv { get; } + + delegate void _glGetMaterialxv_ptr(MaterialFace face, MaterialParameter pname, void* @params); + [GlEntryPoint("glGetMaterialxv")] + _glGetMaterialxv_ptr _GetMaterialxv_ptr { get; } + + delegate void _glGetMaterialxv_intptr(MaterialFace face, MaterialParameter pname, IntPtr @params); + [GlEntryPoint("glGetMaterialxv")] + _glGetMaterialxv_intptr _GetMaterialxv_intptr { get; } + + // --- + + delegate void _glGetMaterialxvOES(MaterialFace face, MaterialParameter pname, float[] @params); + [GlEntryPoint("glGetMaterialxvOES")] + _glGetMaterialxvOES _GetMaterialxvOES { get; } + + delegate void _glGetMaterialxvOES_ptr(MaterialFace face, MaterialParameter pname, void* @params); + [GlEntryPoint("glGetMaterialxvOES")] + _glGetMaterialxvOES_ptr _GetMaterialxvOES_ptr { get; } + + delegate void _glGetMaterialxvOES_intptr(MaterialFace face, MaterialParameter pname, IntPtr @params); + [GlEntryPoint("glGetMaterialxvOES")] + _glGetMaterialxvOES_intptr _GetMaterialxvOES_intptr { get; } + + // --- + + delegate void _glGetMemoryObjectDetachedResourcesuivNV(uint memory, int pname, int first, int count, uint[] @params); + [GlEntryPoint("glGetMemoryObjectDetachedResourcesuivNV")] + _glGetMemoryObjectDetachedResourcesuivNV _GetMemoryObjectDetachedResourcesuivNV { get; } + + delegate void _glGetMemoryObjectDetachedResourcesuivNV_ptr(uint memory, int pname, int first, int count, void* @params); + [GlEntryPoint("glGetMemoryObjectDetachedResourcesuivNV")] + _glGetMemoryObjectDetachedResourcesuivNV_ptr _GetMemoryObjectDetachedResourcesuivNV_ptr { get; } + + delegate void _glGetMemoryObjectDetachedResourcesuivNV_intptr(uint memory, int pname, int first, int count, IntPtr @params); + [GlEntryPoint("glGetMemoryObjectDetachedResourcesuivNV")] + _glGetMemoryObjectDetachedResourcesuivNV_intptr _GetMemoryObjectDetachedResourcesuivNV_intptr { get; } + + // --- + + delegate void _glGetMemoryObjectParameterivEXT(uint memoryObject, MemoryObjectParameterName pname, int[] @params); + [GlEntryPoint("glGetMemoryObjectParameterivEXT")] + _glGetMemoryObjectParameterivEXT _GetMemoryObjectParameterivEXT { get; } + + delegate void _glGetMemoryObjectParameterivEXT_ptr(uint memoryObject, MemoryObjectParameterName pname, void* @params); + [GlEntryPoint("glGetMemoryObjectParameterivEXT")] + _glGetMemoryObjectParameterivEXT_ptr _GetMemoryObjectParameterivEXT_ptr { get; } + + delegate void _glGetMemoryObjectParameterivEXT_intptr(uint memoryObject, MemoryObjectParameterName pname, IntPtr @params); + [GlEntryPoint("glGetMemoryObjectParameterivEXT")] + _glGetMemoryObjectParameterivEXT_intptr _GetMemoryObjectParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetMinmax(MinmaxTargetEXT target, bool reset, PixelFormat format, PixelType type, IntPtr values); + [GlEntryPoint("glGetMinmax")] + _glGetMinmax _GetMinmax { get; } + + // --- + + delegate void _glGetMinmaxEXT(MinmaxTargetEXT target, bool reset, PixelFormat format, PixelType type, IntPtr values); + [GlEntryPoint("glGetMinmaxEXT")] + _glGetMinmaxEXT _GetMinmaxEXT { get; } + + // --- + + delegate void _glGetMinmaxParameterfv(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, float[] @params); + [GlEntryPoint("glGetMinmaxParameterfv")] + _glGetMinmaxParameterfv _GetMinmaxParameterfv { get; } + + delegate void _glGetMinmaxParameterfv_ptr(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, void* @params); + [GlEntryPoint("glGetMinmaxParameterfv")] + _glGetMinmaxParameterfv_ptr _GetMinmaxParameterfv_ptr { get; } + + delegate void _glGetMinmaxParameterfv_intptr(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, IntPtr @params); + [GlEntryPoint("glGetMinmaxParameterfv")] + _glGetMinmaxParameterfv_intptr _GetMinmaxParameterfv_intptr { get; } + + // --- + + delegate void _glGetMinmaxParameterfvEXT(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, float[] @params); + [GlEntryPoint("glGetMinmaxParameterfvEXT")] + _glGetMinmaxParameterfvEXT _GetMinmaxParameterfvEXT { get; } + + delegate void _glGetMinmaxParameterfvEXT_ptr(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, void* @params); + [GlEntryPoint("glGetMinmaxParameterfvEXT")] + _glGetMinmaxParameterfvEXT_ptr _GetMinmaxParameterfvEXT_ptr { get; } + + delegate void _glGetMinmaxParameterfvEXT_intptr(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, IntPtr @params); + [GlEntryPoint("glGetMinmaxParameterfvEXT")] + _glGetMinmaxParameterfvEXT_intptr _GetMinmaxParameterfvEXT_intptr { get; } + + // --- + + delegate void _glGetMinmaxParameteriv(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, int[] @params); + [GlEntryPoint("glGetMinmaxParameteriv")] + _glGetMinmaxParameteriv _GetMinmaxParameteriv { get; } + + delegate void _glGetMinmaxParameteriv_ptr(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, void* @params); + [GlEntryPoint("glGetMinmaxParameteriv")] + _glGetMinmaxParameteriv_ptr _GetMinmaxParameteriv_ptr { get; } + + delegate void _glGetMinmaxParameteriv_intptr(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, IntPtr @params); + [GlEntryPoint("glGetMinmaxParameteriv")] + _glGetMinmaxParameteriv_intptr _GetMinmaxParameteriv_intptr { get; } + + // --- + + delegate void _glGetMinmaxParameterivEXT(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, int[] @params); + [GlEntryPoint("glGetMinmaxParameterivEXT")] + _glGetMinmaxParameterivEXT _GetMinmaxParameterivEXT { get; } + + delegate void _glGetMinmaxParameterivEXT_ptr(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, void* @params); + [GlEntryPoint("glGetMinmaxParameterivEXT")] + _glGetMinmaxParameterivEXT_ptr _GetMinmaxParameterivEXT_ptr { get; } + + delegate void _glGetMinmaxParameterivEXT_intptr(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, IntPtr @params); + [GlEntryPoint("glGetMinmaxParameterivEXT")] + _glGetMinmaxParameterivEXT_intptr _GetMinmaxParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetMultiTexEnvfvEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, float[] @params); + [GlEntryPoint("glGetMultiTexEnvfvEXT")] + _glGetMultiTexEnvfvEXT _GetMultiTexEnvfvEXT { get; } + + delegate void _glGetMultiTexEnvfvEXT_ptr(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, void* @params); + [GlEntryPoint("glGetMultiTexEnvfvEXT")] + _glGetMultiTexEnvfvEXT_ptr _GetMultiTexEnvfvEXT_ptr { get; } + + delegate void _glGetMultiTexEnvfvEXT_intptr(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params); + [GlEntryPoint("glGetMultiTexEnvfvEXT")] + _glGetMultiTexEnvfvEXT_intptr _GetMultiTexEnvfvEXT_intptr { get; } + + // --- + + delegate void _glGetMultiTexEnvivEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, int[] @params); + [GlEntryPoint("glGetMultiTexEnvivEXT")] + _glGetMultiTexEnvivEXT _GetMultiTexEnvivEXT { get; } + + delegate void _glGetMultiTexEnvivEXT_ptr(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, void* @params); + [GlEntryPoint("glGetMultiTexEnvivEXT")] + _glGetMultiTexEnvivEXT_ptr _GetMultiTexEnvivEXT_ptr { get; } + + delegate void _glGetMultiTexEnvivEXT_intptr(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params); + [GlEntryPoint("glGetMultiTexEnvivEXT")] + _glGetMultiTexEnvivEXT_intptr _GetMultiTexEnvivEXT_intptr { get; } + + // --- + + delegate void _glGetMultiTexGendvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, double[] @params); + [GlEntryPoint("glGetMultiTexGendvEXT")] + _glGetMultiTexGendvEXT _GetMultiTexGendvEXT { get; } + + delegate void _glGetMultiTexGendvEXT_ptr(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glGetMultiTexGendvEXT")] + _glGetMultiTexGendvEXT_ptr _GetMultiTexGendvEXT_ptr { get; } + + delegate void _glGetMultiTexGendvEXT_intptr(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glGetMultiTexGendvEXT")] + _glGetMultiTexGendvEXT_intptr _GetMultiTexGendvEXT_intptr { get; } + + // --- + + delegate void _glGetMultiTexGenfvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, float[] @params); + [GlEntryPoint("glGetMultiTexGenfvEXT")] + _glGetMultiTexGenfvEXT _GetMultiTexGenfvEXT { get; } + + delegate void _glGetMultiTexGenfvEXT_ptr(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glGetMultiTexGenfvEXT")] + _glGetMultiTexGenfvEXT_ptr _GetMultiTexGenfvEXT_ptr { get; } + + delegate void _glGetMultiTexGenfvEXT_intptr(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glGetMultiTexGenfvEXT")] + _glGetMultiTexGenfvEXT_intptr _GetMultiTexGenfvEXT_intptr { get; } + + // --- + + delegate void _glGetMultiTexGenivEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, int[] @params); + [GlEntryPoint("glGetMultiTexGenivEXT")] + _glGetMultiTexGenivEXT _GetMultiTexGenivEXT { get; } + + delegate void _glGetMultiTexGenivEXT_ptr(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glGetMultiTexGenivEXT")] + _glGetMultiTexGenivEXT_ptr _GetMultiTexGenivEXT_ptr { get; } + + delegate void _glGetMultiTexGenivEXT_intptr(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glGetMultiTexGenivEXT")] + _glGetMultiTexGenivEXT_intptr _GetMultiTexGenivEXT_intptr { get; } + + // --- + + delegate void _glGetMultiTexImageEXT(TextureUnit texunit, TextureTarget target, int level, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glGetMultiTexImageEXT")] + _glGetMultiTexImageEXT _GetMultiTexImageEXT { get; } + + // --- + + delegate void _glGetMultiTexLevelParameterfvEXT(TextureUnit texunit, TextureTarget target, int level, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glGetMultiTexLevelParameterfvEXT")] + _glGetMultiTexLevelParameterfvEXT _GetMultiTexLevelParameterfvEXT { get; } + + delegate void _glGetMultiTexLevelParameterfvEXT_ptr(TextureUnit texunit, TextureTarget target, int level, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetMultiTexLevelParameterfvEXT")] + _glGetMultiTexLevelParameterfvEXT_ptr _GetMultiTexLevelParameterfvEXT_ptr { get; } + + delegate void _glGetMultiTexLevelParameterfvEXT_intptr(TextureUnit texunit, TextureTarget target, int level, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetMultiTexLevelParameterfvEXT")] + _glGetMultiTexLevelParameterfvEXT_intptr _GetMultiTexLevelParameterfvEXT_intptr { get; } + + // --- + + delegate void _glGetMultiTexLevelParameterivEXT(TextureUnit texunit, TextureTarget target, int level, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetMultiTexLevelParameterivEXT")] + _glGetMultiTexLevelParameterivEXT _GetMultiTexLevelParameterivEXT { get; } + + delegate void _glGetMultiTexLevelParameterivEXT_ptr(TextureUnit texunit, TextureTarget target, int level, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetMultiTexLevelParameterivEXT")] + _glGetMultiTexLevelParameterivEXT_ptr _GetMultiTexLevelParameterivEXT_ptr { get; } + + delegate void _glGetMultiTexLevelParameterivEXT_intptr(TextureUnit texunit, TextureTarget target, int level, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetMultiTexLevelParameterivEXT")] + _glGetMultiTexLevelParameterivEXT_intptr _GetMultiTexLevelParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetMultiTexParameterIivEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetMultiTexParameterIivEXT")] + _glGetMultiTexParameterIivEXT _GetMultiTexParameterIivEXT { get; } + + delegate void _glGetMultiTexParameterIivEXT_ptr(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetMultiTexParameterIivEXT")] + _glGetMultiTexParameterIivEXT_ptr _GetMultiTexParameterIivEXT_ptr { get; } + + delegate void _glGetMultiTexParameterIivEXT_intptr(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetMultiTexParameterIivEXT")] + _glGetMultiTexParameterIivEXT_intptr _GetMultiTexParameterIivEXT_intptr { get; } + + // --- + + delegate void _glGetMultiTexParameterIuivEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, uint[] @params); + [GlEntryPoint("glGetMultiTexParameterIuivEXT")] + _glGetMultiTexParameterIuivEXT _GetMultiTexParameterIuivEXT { get; } + + delegate void _glGetMultiTexParameterIuivEXT_ptr(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetMultiTexParameterIuivEXT")] + _glGetMultiTexParameterIuivEXT_ptr _GetMultiTexParameterIuivEXT_ptr { get; } + + delegate void _glGetMultiTexParameterIuivEXT_intptr(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetMultiTexParameterIuivEXT")] + _glGetMultiTexParameterIuivEXT_intptr _GetMultiTexParameterIuivEXT_intptr { get; } + + // --- + + delegate void _glGetMultiTexParameterfvEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glGetMultiTexParameterfvEXT")] + _glGetMultiTexParameterfvEXT _GetMultiTexParameterfvEXT { get; } + + delegate void _glGetMultiTexParameterfvEXT_ptr(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetMultiTexParameterfvEXT")] + _glGetMultiTexParameterfvEXT_ptr _GetMultiTexParameterfvEXT_ptr { get; } + + delegate void _glGetMultiTexParameterfvEXT_intptr(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetMultiTexParameterfvEXT")] + _glGetMultiTexParameterfvEXT_intptr _GetMultiTexParameterfvEXT_intptr { get; } + + // --- + + delegate void _glGetMultiTexParameterivEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetMultiTexParameterivEXT")] + _glGetMultiTexParameterivEXT _GetMultiTexParameterivEXT { get; } + + delegate void _glGetMultiTexParameterivEXT_ptr(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetMultiTexParameterivEXT")] + _glGetMultiTexParameterivEXT_ptr _GetMultiTexParameterivEXT_ptr { get; } + + delegate void _glGetMultiTexParameterivEXT_intptr(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetMultiTexParameterivEXT")] + _glGetMultiTexParameterivEXT_intptr _GetMultiTexParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetMultisamplefv(GetMultisamplePNameNV pname, uint index, float[] val); + [GlEntryPoint("glGetMultisamplefv")] + _glGetMultisamplefv _GetMultisamplefv { get; } + + delegate void _glGetMultisamplefv_ptr(GetMultisamplePNameNV pname, uint index, void* val); + [GlEntryPoint("glGetMultisamplefv")] + _glGetMultisamplefv_ptr _GetMultisamplefv_ptr { get; } + + delegate void _glGetMultisamplefv_intptr(GetMultisamplePNameNV pname, uint index, IntPtr val); + [GlEntryPoint("glGetMultisamplefv")] + _glGetMultisamplefv_intptr _GetMultisamplefv_intptr { get; } + + // --- + + delegate void _glGetMultisamplefvNV(GetMultisamplePNameNV pname, uint index, float[] val); + [GlEntryPoint("glGetMultisamplefvNV")] + _glGetMultisamplefvNV _GetMultisamplefvNV { get; } + + delegate void _glGetMultisamplefvNV_ptr(GetMultisamplePNameNV pname, uint index, void* val); + [GlEntryPoint("glGetMultisamplefvNV")] + _glGetMultisamplefvNV_ptr _GetMultisamplefvNV_ptr { get; } + + delegate void _glGetMultisamplefvNV_intptr(GetMultisamplePNameNV pname, uint index, IntPtr val); + [GlEntryPoint("glGetMultisamplefvNV")] + _glGetMultisamplefvNV_intptr _GetMultisamplefvNV_intptr { get; } + + // --- + + delegate void _glGetNamedBufferParameteri64v(uint buffer, BufferPNameARB pname, Int64[] @params); + [GlEntryPoint("glGetNamedBufferParameteri64v")] + _glGetNamedBufferParameteri64v _GetNamedBufferParameteri64v { get; } + + delegate void _glGetNamedBufferParameteri64v_ptr(uint buffer, BufferPNameARB pname, void* @params); + [GlEntryPoint("glGetNamedBufferParameteri64v")] + _glGetNamedBufferParameteri64v_ptr _GetNamedBufferParameteri64v_ptr { get; } + + delegate void _glGetNamedBufferParameteri64v_intptr(uint buffer, BufferPNameARB pname, IntPtr @params); + [GlEntryPoint("glGetNamedBufferParameteri64v")] + _glGetNamedBufferParameteri64v_intptr _GetNamedBufferParameteri64v_intptr { get; } + + // --- + + delegate void _glGetNamedBufferParameteriv(uint buffer, BufferPNameARB pname, int[] @params); + [GlEntryPoint("glGetNamedBufferParameteriv")] + _glGetNamedBufferParameteriv _GetNamedBufferParameteriv { get; } + + delegate void _glGetNamedBufferParameteriv_ptr(uint buffer, BufferPNameARB pname, void* @params); + [GlEntryPoint("glGetNamedBufferParameteriv")] + _glGetNamedBufferParameteriv_ptr _GetNamedBufferParameteriv_ptr { get; } + + delegate void _glGetNamedBufferParameteriv_intptr(uint buffer, BufferPNameARB pname, IntPtr @params); + [GlEntryPoint("glGetNamedBufferParameteriv")] + _glGetNamedBufferParameteriv_intptr _GetNamedBufferParameteriv_intptr { get; } + + // --- + + delegate void _glGetNamedBufferParameterivEXT(uint buffer, BufferPNameARB pname, int[] @params); + [GlEntryPoint("glGetNamedBufferParameterivEXT")] + _glGetNamedBufferParameterivEXT _GetNamedBufferParameterivEXT { get; } + + delegate void _glGetNamedBufferParameterivEXT_ptr(uint buffer, BufferPNameARB pname, void* @params); + [GlEntryPoint("glGetNamedBufferParameterivEXT")] + _glGetNamedBufferParameterivEXT_ptr _GetNamedBufferParameterivEXT_ptr { get; } + + delegate void _glGetNamedBufferParameterivEXT_intptr(uint buffer, BufferPNameARB pname, IntPtr @params); + [GlEntryPoint("glGetNamedBufferParameterivEXT")] + _glGetNamedBufferParameterivEXT_intptr _GetNamedBufferParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetNamedBufferParameterui64vNV(uint buffer, BufferPNameARB pname, UInt64[] @params); + [GlEntryPoint("glGetNamedBufferParameterui64vNV")] + _glGetNamedBufferParameterui64vNV _GetNamedBufferParameterui64vNV { get; } + + delegate void _glGetNamedBufferParameterui64vNV_ptr(uint buffer, BufferPNameARB pname, void* @params); + [GlEntryPoint("glGetNamedBufferParameterui64vNV")] + _glGetNamedBufferParameterui64vNV_ptr _GetNamedBufferParameterui64vNV_ptr { get; } + + delegate void _glGetNamedBufferParameterui64vNV_intptr(uint buffer, BufferPNameARB pname, IntPtr @params); + [GlEntryPoint("glGetNamedBufferParameterui64vNV")] + _glGetNamedBufferParameterui64vNV_intptr _GetNamedBufferParameterui64vNV_intptr { get; } + + // --- + + delegate void _glGetNamedBufferPointerv(uint buffer, BufferPointerNameARB pname, IntPtr* @params); + [GlEntryPoint("glGetNamedBufferPointerv")] + _glGetNamedBufferPointerv _GetNamedBufferPointerv { get; } + + // --- + + delegate void _glGetNamedBufferPointervEXT(uint buffer, BufferPointerNameARB pname, IntPtr* @params); + [GlEntryPoint("glGetNamedBufferPointervEXT")] + _glGetNamedBufferPointervEXT _GetNamedBufferPointervEXT { get; } + + // --- + + delegate void _glGetNamedBufferSubData(uint buffer, IntPtr offset, IntPtr size, IntPtr data); + [GlEntryPoint("glGetNamedBufferSubData")] + _glGetNamedBufferSubData _GetNamedBufferSubData { get; } + + // --- + + delegate void _glGetNamedBufferSubDataEXT(uint buffer, IntPtr offset, IntPtr size, IntPtr data); + [GlEntryPoint("glGetNamedBufferSubDataEXT")] + _glGetNamedBufferSubDataEXT _GetNamedBufferSubDataEXT { get; } + + // --- + + delegate void _glGetNamedFramebufferParameterfvAMD(uint framebuffer, int pname, uint numsamples, uint pixelindex, int size, float[] values); + [GlEntryPoint("glGetNamedFramebufferParameterfvAMD")] + _glGetNamedFramebufferParameterfvAMD _GetNamedFramebufferParameterfvAMD { get; } + + delegate void _glGetNamedFramebufferParameterfvAMD_ptr(uint framebuffer, int pname, uint numsamples, uint pixelindex, int size, void* values); + [GlEntryPoint("glGetNamedFramebufferParameterfvAMD")] + _glGetNamedFramebufferParameterfvAMD_ptr _GetNamedFramebufferParameterfvAMD_ptr { get; } + + delegate void _glGetNamedFramebufferParameterfvAMD_intptr(uint framebuffer, int pname, uint numsamples, uint pixelindex, int size, IntPtr values); + [GlEntryPoint("glGetNamedFramebufferParameterfvAMD")] + _glGetNamedFramebufferParameterfvAMD_intptr _GetNamedFramebufferParameterfvAMD_intptr { get; } + + // --- + + delegate void _glGetNamedFramebufferAttachmentParameteriv(uint framebuffer, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, int[] @params); + [GlEntryPoint("glGetNamedFramebufferAttachmentParameteriv")] + _glGetNamedFramebufferAttachmentParameteriv _GetNamedFramebufferAttachmentParameteriv { get; } + + delegate void _glGetNamedFramebufferAttachmentParameteriv_ptr(uint framebuffer, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, void* @params); + [GlEntryPoint("glGetNamedFramebufferAttachmentParameteriv")] + _glGetNamedFramebufferAttachmentParameteriv_ptr _GetNamedFramebufferAttachmentParameteriv_ptr { get; } + + delegate void _glGetNamedFramebufferAttachmentParameteriv_intptr(uint framebuffer, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, IntPtr @params); + [GlEntryPoint("glGetNamedFramebufferAttachmentParameteriv")] + _glGetNamedFramebufferAttachmentParameteriv_intptr _GetNamedFramebufferAttachmentParameteriv_intptr { get; } + + // --- + + delegate void _glGetNamedFramebufferAttachmentParameterivEXT(uint framebuffer, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, int[] @params); + [GlEntryPoint("glGetNamedFramebufferAttachmentParameterivEXT")] + _glGetNamedFramebufferAttachmentParameterivEXT _GetNamedFramebufferAttachmentParameterivEXT { get; } + + delegate void _glGetNamedFramebufferAttachmentParameterivEXT_ptr(uint framebuffer, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, void* @params); + [GlEntryPoint("glGetNamedFramebufferAttachmentParameterivEXT")] + _glGetNamedFramebufferAttachmentParameterivEXT_ptr _GetNamedFramebufferAttachmentParameterivEXT_ptr { get; } + + delegate void _glGetNamedFramebufferAttachmentParameterivEXT_intptr(uint framebuffer, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, IntPtr @params); + [GlEntryPoint("glGetNamedFramebufferAttachmentParameterivEXT")] + _glGetNamedFramebufferAttachmentParameterivEXT_intptr _GetNamedFramebufferAttachmentParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetNamedFramebufferParameteriv(uint framebuffer, GetFramebufferParameter pname, int[] param); + [GlEntryPoint("glGetNamedFramebufferParameteriv")] + _glGetNamedFramebufferParameteriv _GetNamedFramebufferParameteriv { get; } + + delegate void _glGetNamedFramebufferParameteriv_ptr(uint framebuffer, GetFramebufferParameter pname, void* param); + [GlEntryPoint("glGetNamedFramebufferParameteriv")] + _glGetNamedFramebufferParameteriv_ptr _GetNamedFramebufferParameteriv_ptr { get; } + + delegate void _glGetNamedFramebufferParameteriv_intptr(uint framebuffer, GetFramebufferParameter pname, IntPtr param); + [GlEntryPoint("glGetNamedFramebufferParameteriv")] + _glGetNamedFramebufferParameteriv_intptr _GetNamedFramebufferParameteriv_intptr { get; } + + // --- + + delegate void _glGetNamedFramebufferParameterivEXT(uint framebuffer, GetFramebufferParameter pname, int[] @params); + [GlEntryPoint("glGetNamedFramebufferParameterivEXT")] + _glGetNamedFramebufferParameterivEXT _GetNamedFramebufferParameterivEXT { get; } + + delegate void _glGetNamedFramebufferParameterivEXT_ptr(uint framebuffer, GetFramebufferParameter pname, void* @params); + [GlEntryPoint("glGetNamedFramebufferParameterivEXT")] + _glGetNamedFramebufferParameterivEXT_ptr _GetNamedFramebufferParameterivEXT_ptr { get; } + + delegate void _glGetNamedFramebufferParameterivEXT_intptr(uint framebuffer, GetFramebufferParameter pname, IntPtr @params); + [GlEntryPoint("glGetNamedFramebufferParameterivEXT")] + _glGetNamedFramebufferParameterivEXT_intptr _GetNamedFramebufferParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetNamedProgramLocalParameterIivEXT(uint program, ProgramTarget target, uint index, int[] @params); + [GlEntryPoint("glGetNamedProgramLocalParameterIivEXT")] + _glGetNamedProgramLocalParameterIivEXT _GetNamedProgramLocalParameterIivEXT { get; } + + delegate void _glGetNamedProgramLocalParameterIivEXT_ptr(uint program, ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glGetNamedProgramLocalParameterIivEXT")] + _glGetNamedProgramLocalParameterIivEXT_ptr _GetNamedProgramLocalParameterIivEXT_ptr { get; } + + delegate void _glGetNamedProgramLocalParameterIivEXT_intptr(uint program, ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glGetNamedProgramLocalParameterIivEXT")] + _glGetNamedProgramLocalParameterIivEXT_intptr _GetNamedProgramLocalParameterIivEXT_intptr { get; } + + // --- + + delegate void _glGetNamedProgramLocalParameterIuivEXT(uint program, ProgramTarget target, uint index, uint[] @params); + [GlEntryPoint("glGetNamedProgramLocalParameterIuivEXT")] + _glGetNamedProgramLocalParameterIuivEXT _GetNamedProgramLocalParameterIuivEXT { get; } + + delegate void _glGetNamedProgramLocalParameterIuivEXT_ptr(uint program, ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glGetNamedProgramLocalParameterIuivEXT")] + _glGetNamedProgramLocalParameterIuivEXT_ptr _GetNamedProgramLocalParameterIuivEXT_ptr { get; } + + delegate void _glGetNamedProgramLocalParameterIuivEXT_intptr(uint program, ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glGetNamedProgramLocalParameterIuivEXT")] + _glGetNamedProgramLocalParameterIuivEXT_intptr _GetNamedProgramLocalParameterIuivEXT_intptr { get; } + + // --- + + delegate void _glGetNamedProgramLocalParameterdvEXT(uint program, ProgramTarget target, uint index, double[] @params); + [GlEntryPoint("glGetNamedProgramLocalParameterdvEXT")] + _glGetNamedProgramLocalParameterdvEXT _GetNamedProgramLocalParameterdvEXT { get; } + + delegate void _glGetNamedProgramLocalParameterdvEXT_ptr(uint program, ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glGetNamedProgramLocalParameterdvEXT")] + _glGetNamedProgramLocalParameterdvEXT_ptr _GetNamedProgramLocalParameterdvEXT_ptr { get; } + + delegate void _glGetNamedProgramLocalParameterdvEXT_intptr(uint program, ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glGetNamedProgramLocalParameterdvEXT")] + _glGetNamedProgramLocalParameterdvEXT_intptr _GetNamedProgramLocalParameterdvEXT_intptr { get; } + + // --- + + delegate void _glGetNamedProgramLocalParameterfvEXT(uint program, ProgramTarget target, uint index, float[] @params); + [GlEntryPoint("glGetNamedProgramLocalParameterfvEXT")] + _glGetNamedProgramLocalParameterfvEXT _GetNamedProgramLocalParameterfvEXT { get; } + + delegate void _glGetNamedProgramLocalParameterfvEXT_ptr(uint program, ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glGetNamedProgramLocalParameterfvEXT")] + _glGetNamedProgramLocalParameterfvEXT_ptr _GetNamedProgramLocalParameterfvEXT_ptr { get; } + + delegate void _glGetNamedProgramLocalParameterfvEXT_intptr(uint program, ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glGetNamedProgramLocalParameterfvEXT")] + _glGetNamedProgramLocalParameterfvEXT_intptr _GetNamedProgramLocalParameterfvEXT_intptr { get; } + + // --- + + delegate void _glGetNamedProgramStringEXT(uint program, ProgramTarget target, ProgramStringProperty pname, IntPtr @string); + [GlEntryPoint("glGetNamedProgramStringEXT")] + _glGetNamedProgramStringEXT _GetNamedProgramStringEXT { get; } + + // --- + + delegate void _glGetNamedProgramivEXT(uint program, ProgramTarget target, ProgramPropertyARB pname, out int @params); + [GlEntryPoint("glGetNamedProgramivEXT")] + _glGetNamedProgramivEXT _GetNamedProgramivEXT { get; } + + // --- + + delegate void _glGetNamedRenderbufferParameteriv(uint renderbuffer, RenderbufferParameterName pname, int[] @params); + [GlEntryPoint("glGetNamedRenderbufferParameteriv")] + _glGetNamedRenderbufferParameteriv _GetNamedRenderbufferParameteriv { get; } + + delegate void _glGetNamedRenderbufferParameteriv_ptr(uint renderbuffer, RenderbufferParameterName pname, void* @params); + [GlEntryPoint("glGetNamedRenderbufferParameteriv")] + _glGetNamedRenderbufferParameteriv_ptr _GetNamedRenderbufferParameteriv_ptr { get; } + + delegate void _glGetNamedRenderbufferParameteriv_intptr(uint renderbuffer, RenderbufferParameterName pname, IntPtr @params); + [GlEntryPoint("glGetNamedRenderbufferParameteriv")] + _glGetNamedRenderbufferParameteriv_intptr _GetNamedRenderbufferParameteriv_intptr { get; } + + // --- + + delegate void _glGetNamedRenderbufferParameterivEXT(uint renderbuffer, RenderbufferParameterName pname, int[] @params); + [GlEntryPoint("glGetNamedRenderbufferParameterivEXT")] + _glGetNamedRenderbufferParameterivEXT _GetNamedRenderbufferParameterivEXT { get; } + + delegate void _glGetNamedRenderbufferParameterivEXT_ptr(uint renderbuffer, RenderbufferParameterName pname, void* @params); + [GlEntryPoint("glGetNamedRenderbufferParameterivEXT")] + _glGetNamedRenderbufferParameterivEXT_ptr _GetNamedRenderbufferParameterivEXT_ptr { get; } + + delegate void _glGetNamedRenderbufferParameterivEXT_intptr(uint renderbuffer, RenderbufferParameterName pname, IntPtr @params); + [GlEntryPoint("glGetNamedRenderbufferParameterivEXT")] + _glGetNamedRenderbufferParameterivEXT_intptr _GetNamedRenderbufferParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetNamedStringARB(int namelen, string name, int bufSize, out int stringlen, string @string); + [GlEntryPoint("glGetNamedStringARB")] + _glGetNamedStringARB _GetNamedStringARB { get; } + + delegate void _glGetNamedStringARB_ptr(int namelen, void* name, int bufSize, out int stringlen, void* @string); + [GlEntryPoint("glGetNamedStringARB")] + _glGetNamedStringARB_ptr _GetNamedStringARB_ptr { get; } + + delegate void _glGetNamedStringARB_intptr(int namelen, IntPtr name, int bufSize, out int stringlen, IntPtr @string); + [GlEntryPoint("glGetNamedStringARB")] + _glGetNamedStringARB_intptr _GetNamedStringARB_intptr { get; } + + // --- + + delegate void _glGetNamedStringivARB(int namelen, string name, int pname, int[] @params); + [GlEntryPoint("glGetNamedStringivARB")] + _glGetNamedStringivARB _GetNamedStringivARB { get; } + + delegate void _glGetNamedStringivARB_ptr(int namelen, void* name, int pname, void* @params); + [GlEntryPoint("glGetNamedStringivARB")] + _glGetNamedStringivARB_ptr _GetNamedStringivARB_ptr { get; } + + delegate void _glGetNamedStringivARB_intptr(int namelen, IntPtr name, int pname, IntPtr @params); + [GlEntryPoint("glGetNamedStringivARB")] + _glGetNamedStringivARB_intptr _GetNamedStringivARB_intptr { get; } + + // --- + + delegate void _glGetNextPerfQueryIdINTEL(uint queryId, uint[] nextQueryId); + [GlEntryPoint("glGetNextPerfQueryIdINTEL")] + _glGetNextPerfQueryIdINTEL _GetNextPerfQueryIdINTEL { get; } + + delegate void _glGetNextPerfQueryIdINTEL_ptr(uint queryId, void* nextQueryId); + [GlEntryPoint("glGetNextPerfQueryIdINTEL")] + _glGetNextPerfQueryIdINTEL_ptr _GetNextPerfQueryIdINTEL_ptr { get; } + + delegate void _glGetNextPerfQueryIdINTEL_intptr(uint queryId, IntPtr nextQueryId); + [GlEntryPoint("glGetNextPerfQueryIdINTEL")] + _glGetNextPerfQueryIdINTEL_intptr _GetNextPerfQueryIdINTEL_intptr { get; } + + // --- + + delegate void _glGetObjectBufferfvATI(uint buffer, ArrayObjectPNameATI pname, out float @params); + [GlEntryPoint("glGetObjectBufferfvATI")] + _glGetObjectBufferfvATI _GetObjectBufferfvATI { get; } + + // --- + + delegate void _glGetObjectBufferivATI(uint buffer, ArrayObjectPNameATI pname, out int @params); + [GlEntryPoint("glGetObjectBufferivATI")] + _glGetObjectBufferivATI _GetObjectBufferivATI { get; } + + // --- + + delegate void _glGetObjectLabel(ObjectIdentifier identifier, uint name, int bufSize, out int length, string label); + [GlEntryPoint("glGetObjectLabel")] + _glGetObjectLabel _GetObjectLabel { get; } + + delegate void _glGetObjectLabel_ptr(ObjectIdentifier identifier, uint name, int bufSize, out int length, void* label); + [GlEntryPoint("glGetObjectLabel")] + _glGetObjectLabel_ptr _GetObjectLabel_ptr { get; } + + delegate void _glGetObjectLabel_intptr(ObjectIdentifier identifier, uint name, int bufSize, out int length, IntPtr label); + [GlEntryPoint("glGetObjectLabel")] + _glGetObjectLabel_intptr _GetObjectLabel_intptr { get; } + + // --- + + delegate void _glGetObjectLabelEXT(int type, uint @object, int bufSize, out int length, string label); + [GlEntryPoint("glGetObjectLabelEXT")] + _glGetObjectLabelEXT _GetObjectLabelEXT { get; } + + delegate void _glGetObjectLabelEXT_ptr(int type, uint @object, int bufSize, out int length, void* label); + [GlEntryPoint("glGetObjectLabelEXT")] + _glGetObjectLabelEXT_ptr _GetObjectLabelEXT_ptr { get; } + + delegate void _glGetObjectLabelEXT_intptr(int type, uint @object, int bufSize, out int length, IntPtr label); + [GlEntryPoint("glGetObjectLabelEXT")] + _glGetObjectLabelEXT_intptr _GetObjectLabelEXT_intptr { get; } + + // --- + + delegate void _glGetObjectLabelKHR(int identifier, uint name, int bufSize, int[] length, string label); + [GlEntryPoint("glGetObjectLabelKHR")] + _glGetObjectLabelKHR _GetObjectLabelKHR { get; } + + delegate void _glGetObjectLabelKHR_ptr(int identifier, uint name, int bufSize, void* length, void* label); + [GlEntryPoint("glGetObjectLabelKHR")] + _glGetObjectLabelKHR_ptr _GetObjectLabelKHR_ptr { get; } + + delegate void _glGetObjectLabelKHR_intptr(int identifier, uint name, int bufSize, IntPtr length, IntPtr label); + [GlEntryPoint("glGetObjectLabelKHR")] + _glGetObjectLabelKHR_intptr _GetObjectLabelKHR_intptr { get; } + + // --- + + delegate void _glGetObjectParameterfvARB(int obj, int pname, float[] @params); + [GlEntryPoint("glGetObjectParameterfvARB")] + _glGetObjectParameterfvARB _GetObjectParameterfvARB { get; } + + delegate void _glGetObjectParameterfvARB_ptr(int obj, int pname, void* @params); + [GlEntryPoint("glGetObjectParameterfvARB")] + _glGetObjectParameterfvARB_ptr _GetObjectParameterfvARB_ptr { get; } + + delegate void _glGetObjectParameterfvARB_intptr(int obj, int pname, IntPtr @params); + [GlEntryPoint("glGetObjectParameterfvARB")] + _glGetObjectParameterfvARB_intptr _GetObjectParameterfvARB_intptr { get; } + + // --- + + delegate void _glGetObjectParameterivAPPLE(int objectType, uint name, int pname, int[] @params); + [GlEntryPoint("glGetObjectParameterivAPPLE")] + _glGetObjectParameterivAPPLE _GetObjectParameterivAPPLE { get; } + + delegate void _glGetObjectParameterivAPPLE_ptr(int objectType, uint name, int pname, void* @params); + [GlEntryPoint("glGetObjectParameterivAPPLE")] + _glGetObjectParameterivAPPLE_ptr _GetObjectParameterivAPPLE_ptr { get; } + + delegate void _glGetObjectParameterivAPPLE_intptr(int objectType, uint name, int pname, IntPtr @params); + [GlEntryPoint("glGetObjectParameterivAPPLE")] + _glGetObjectParameterivAPPLE_intptr _GetObjectParameterivAPPLE_intptr { get; } + + // --- + + delegate void _glGetObjectParameterivARB(int obj, int pname, int[] @params); + [GlEntryPoint("glGetObjectParameterivARB")] + _glGetObjectParameterivARB _GetObjectParameterivARB { get; } + + delegate void _glGetObjectParameterivARB_ptr(int obj, int pname, void* @params); + [GlEntryPoint("glGetObjectParameterivARB")] + _glGetObjectParameterivARB_ptr _GetObjectParameterivARB_ptr { get; } + + delegate void _glGetObjectParameterivARB_intptr(int obj, int pname, IntPtr @params); + [GlEntryPoint("glGetObjectParameterivARB")] + _glGetObjectParameterivARB_intptr _GetObjectParameterivARB_intptr { get; } + + // --- + + delegate void _glGetObjectPtrLabel(IntPtr ptr, int bufSize, out int length, string label); + [GlEntryPoint("glGetObjectPtrLabel")] + _glGetObjectPtrLabel _GetObjectPtrLabel { get; } + + delegate void _glGetObjectPtrLabel_ptr(IntPtr ptr, int bufSize, out int length, void* label); + [GlEntryPoint("glGetObjectPtrLabel")] + _glGetObjectPtrLabel_ptr _GetObjectPtrLabel_ptr { get; } + + delegate void _glGetObjectPtrLabel_intptr(IntPtr ptr, int bufSize, out int length, IntPtr label); + [GlEntryPoint("glGetObjectPtrLabel")] + _glGetObjectPtrLabel_intptr _GetObjectPtrLabel_intptr { get; } + + // --- + + delegate void _glGetObjectPtrLabelKHR(IntPtr ptr, int bufSize, out int length, string label); + [GlEntryPoint("glGetObjectPtrLabelKHR")] + _glGetObjectPtrLabelKHR _GetObjectPtrLabelKHR { get; } + + delegate void _glGetObjectPtrLabelKHR_ptr(IntPtr ptr, int bufSize, out int length, void* label); + [GlEntryPoint("glGetObjectPtrLabelKHR")] + _glGetObjectPtrLabelKHR_ptr _GetObjectPtrLabelKHR_ptr { get; } + + delegate void _glGetObjectPtrLabelKHR_intptr(IntPtr ptr, int bufSize, out int length, IntPtr label); + [GlEntryPoint("glGetObjectPtrLabelKHR")] + _glGetObjectPtrLabelKHR_intptr _GetObjectPtrLabelKHR_intptr { get; } + + // --- + + delegate void _glGetOcclusionQueryivNV(uint id, OcclusionQueryParameterNameNV pname, int[] @params); + [GlEntryPoint("glGetOcclusionQueryivNV")] + _glGetOcclusionQueryivNV _GetOcclusionQueryivNV { get; } + + delegate void _glGetOcclusionQueryivNV_ptr(uint id, OcclusionQueryParameterNameNV pname, void* @params); + [GlEntryPoint("glGetOcclusionQueryivNV")] + _glGetOcclusionQueryivNV_ptr _GetOcclusionQueryivNV_ptr { get; } + + delegate void _glGetOcclusionQueryivNV_intptr(uint id, OcclusionQueryParameterNameNV pname, IntPtr @params); + [GlEntryPoint("glGetOcclusionQueryivNV")] + _glGetOcclusionQueryivNV_intptr _GetOcclusionQueryivNV_intptr { get; } + + // --- + + delegate void _glGetOcclusionQueryuivNV(uint id, OcclusionQueryParameterNameNV pname, uint[] @params); + [GlEntryPoint("glGetOcclusionQueryuivNV")] + _glGetOcclusionQueryuivNV _GetOcclusionQueryuivNV { get; } + + delegate void _glGetOcclusionQueryuivNV_ptr(uint id, OcclusionQueryParameterNameNV pname, void* @params); + [GlEntryPoint("glGetOcclusionQueryuivNV")] + _glGetOcclusionQueryuivNV_ptr _GetOcclusionQueryuivNV_ptr { get; } + + delegate void _glGetOcclusionQueryuivNV_intptr(uint id, OcclusionQueryParameterNameNV pname, IntPtr @params); + [GlEntryPoint("glGetOcclusionQueryuivNV")] + _glGetOcclusionQueryuivNV_intptr _GetOcclusionQueryuivNV_intptr { get; } + + // --- + + delegate void _glGetPathColorGenfvNV(PathColor color, PathGenMode pname, float[] value); + [GlEntryPoint("glGetPathColorGenfvNV")] + _glGetPathColorGenfvNV _GetPathColorGenfvNV { get; } + + delegate void _glGetPathColorGenfvNV_ptr(PathColor color, PathGenMode pname, void* value); + [GlEntryPoint("glGetPathColorGenfvNV")] + _glGetPathColorGenfvNV_ptr _GetPathColorGenfvNV_ptr { get; } + + delegate void _glGetPathColorGenfvNV_intptr(PathColor color, PathGenMode pname, IntPtr value); + [GlEntryPoint("glGetPathColorGenfvNV")] + _glGetPathColorGenfvNV_intptr _GetPathColorGenfvNV_intptr { get; } + + // --- + + delegate void _glGetPathColorGenivNV(PathColor color, PathGenMode pname, int[] value); + [GlEntryPoint("glGetPathColorGenivNV")] + _glGetPathColorGenivNV _GetPathColorGenivNV { get; } + + delegate void _glGetPathColorGenivNV_ptr(PathColor color, PathGenMode pname, void* value); + [GlEntryPoint("glGetPathColorGenivNV")] + _glGetPathColorGenivNV_ptr _GetPathColorGenivNV_ptr { get; } + + delegate void _glGetPathColorGenivNV_intptr(PathColor color, PathGenMode pname, IntPtr value); + [GlEntryPoint("glGetPathColorGenivNV")] + _glGetPathColorGenivNV_intptr _GetPathColorGenivNV_intptr { get; } + + // --- + + delegate void _glGetPathCommandsNV(uint path, byte[] commands); + [GlEntryPoint("glGetPathCommandsNV")] + _glGetPathCommandsNV _GetPathCommandsNV { get; } + + delegate void _glGetPathCommandsNV_ptr(uint path, void* commands); + [GlEntryPoint("glGetPathCommandsNV")] + _glGetPathCommandsNV_ptr _GetPathCommandsNV_ptr { get; } + + delegate void _glGetPathCommandsNV_intptr(uint path, IntPtr commands); + [GlEntryPoint("glGetPathCommandsNV")] + _glGetPathCommandsNV_intptr _GetPathCommandsNV_intptr { get; } + + // --- + + delegate void _glGetPathCoordsNV(uint path, float[] coords); + [GlEntryPoint("glGetPathCoordsNV")] + _glGetPathCoordsNV _GetPathCoordsNV { get; } + + delegate void _glGetPathCoordsNV_ptr(uint path, void* coords); + [GlEntryPoint("glGetPathCoordsNV")] + _glGetPathCoordsNV_ptr _GetPathCoordsNV_ptr { get; } + + delegate void _glGetPathCoordsNV_intptr(uint path, IntPtr coords); + [GlEntryPoint("glGetPathCoordsNV")] + _glGetPathCoordsNV_intptr _GetPathCoordsNV_intptr { get; } + + // --- + + delegate void _glGetPathDashArrayNV(uint path, float[] dashArray); + [GlEntryPoint("glGetPathDashArrayNV")] + _glGetPathDashArrayNV _GetPathDashArrayNV { get; } + + delegate void _glGetPathDashArrayNV_ptr(uint path, void* dashArray); + [GlEntryPoint("glGetPathDashArrayNV")] + _glGetPathDashArrayNV_ptr _GetPathDashArrayNV_ptr { get; } + + delegate void _glGetPathDashArrayNV_intptr(uint path, IntPtr dashArray); + [GlEntryPoint("glGetPathDashArrayNV")] + _glGetPathDashArrayNV_intptr _GetPathDashArrayNV_intptr { get; } + + // --- + + delegate float _glGetPathLengthNV(uint path, int startSegment, int numSegments); + [GlEntryPoint("glGetPathLengthNV")] + _glGetPathLengthNV _GetPathLengthNV { get; } + + // --- + + delegate void _glGetPathMetricRangeNV(int metricQueryMask, uint firstPathName, int numPaths, int stride, float[] metrics); + [GlEntryPoint("glGetPathMetricRangeNV")] + _glGetPathMetricRangeNV _GetPathMetricRangeNV { get; } + + delegate void _glGetPathMetricRangeNV_ptr(int metricQueryMask, uint firstPathName, int numPaths, int stride, void* metrics); + [GlEntryPoint("glGetPathMetricRangeNV")] + _glGetPathMetricRangeNV_ptr _GetPathMetricRangeNV_ptr { get; } + + delegate void _glGetPathMetricRangeNV_intptr(int metricQueryMask, uint firstPathName, int numPaths, int stride, IntPtr metrics); + [GlEntryPoint("glGetPathMetricRangeNV")] + _glGetPathMetricRangeNV_intptr _GetPathMetricRangeNV_intptr { get; } + + // --- + + delegate void _glGetPathMetricsNV(int metricQueryMask, int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, int stride, float[] metrics); + [GlEntryPoint("glGetPathMetricsNV")] + _glGetPathMetricsNV _GetPathMetricsNV { get; } + + delegate void _glGetPathMetricsNV_ptr(int metricQueryMask, int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, int stride, void* metrics); + [GlEntryPoint("glGetPathMetricsNV")] + _glGetPathMetricsNV_ptr _GetPathMetricsNV_ptr { get; } + + delegate void _glGetPathMetricsNV_intptr(int metricQueryMask, int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, int stride, IntPtr metrics); + [GlEntryPoint("glGetPathMetricsNV")] + _glGetPathMetricsNV_intptr _GetPathMetricsNV_intptr { get; } + + // --- + + delegate void _glGetPathParameterfvNV(uint path, PathParameter pname, float[] value); + [GlEntryPoint("glGetPathParameterfvNV")] + _glGetPathParameterfvNV _GetPathParameterfvNV { get; } + + delegate void _glGetPathParameterfvNV_ptr(uint path, PathParameter pname, void* value); + [GlEntryPoint("glGetPathParameterfvNV")] + _glGetPathParameterfvNV_ptr _GetPathParameterfvNV_ptr { get; } + + delegate void _glGetPathParameterfvNV_intptr(uint path, PathParameter pname, IntPtr value); + [GlEntryPoint("glGetPathParameterfvNV")] + _glGetPathParameterfvNV_intptr _GetPathParameterfvNV_intptr { get; } + + // --- + + delegate void _glGetPathParameterivNV(uint path, PathParameter pname, int[] value); + [GlEntryPoint("glGetPathParameterivNV")] + _glGetPathParameterivNV _GetPathParameterivNV { get; } + + delegate void _glGetPathParameterivNV_ptr(uint path, PathParameter pname, void* value); + [GlEntryPoint("glGetPathParameterivNV")] + _glGetPathParameterivNV_ptr _GetPathParameterivNV_ptr { get; } + + delegate void _glGetPathParameterivNV_intptr(uint path, PathParameter pname, IntPtr value); + [GlEntryPoint("glGetPathParameterivNV")] + _glGetPathParameterivNV_intptr _GetPathParameterivNV_intptr { get; } + + // --- + + delegate void _glGetPathSpacingNV(PathListMode pathListMode, int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, float advanceScale, float kerningScale, PathTransformType transformType, float[] returnedSpacing); + [GlEntryPoint("glGetPathSpacingNV")] + _glGetPathSpacingNV _GetPathSpacingNV { get; } + + delegate void _glGetPathSpacingNV_ptr(PathListMode pathListMode, int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, float advanceScale, float kerningScale, PathTransformType transformType, void* returnedSpacing); + [GlEntryPoint("glGetPathSpacingNV")] + _glGetPathSpacingNV_ptr _GetPathSpacingNV_ptr { get; } + + delegate void _glGetPathSpacingNV_intptr(PathListMode pathListMode, int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, float advanceScale, float kerningScale, PathTransformType transformType, IntPtr returnedSpacing); + [GlEntryPoint("glGetPathSpacingNV")] + _glGetPathSpacingNV_intptr _GetPathSpacingNV_intptr { get; } + + // --- + + delegate void _glGetPathTexGenfvNV(TextureUnit texCoordSet, PathGenMode pname, float[] value); + [GlEntryPoint("glGetPathTexGenfvNV")] + _glGetPathTexGenfvNV _GetPathTexGenfvNV { get; } + + delegate void _glGetPathTexGenfvNV_ptr(TextureUnit texCoordSet, PathGenMode pname, void* value); + [GlEntryPoint("glGetPathTexGenfvNV")] + _glGetPathTexGenfvNV_ptr _GetPathTexGenfvNV_ptr { get; } + + delegate void _glGetPathTexGenfvNV_intptr(TextureUnit texCoordSet, PathGenMode pname, IntPtr value); + [GlEntryPoint("glGetPathTexGenfvNV")] + _glGetPathTexGenfvNV_intptr _GetPathTexGenfvNV_intptr { get; } + + // --- + + delegate void _glGetPathTexGenivNV(TextureUnit texCoordSet, PathGenMode pname, int[] value); + [GlEntryPoint("glGetPathTexGenivNV")] + _glGetPathTexGenivNV _GetPathTexGenivNV { get; } + + delegate void _glGetPathTexGenivNV_ptr(TextureUnit texCoordSet, PathGenMode pname, void* value); + [GlEntryPoint("glGetPathTexGenivNV")] + _glGetPathTexGenivNV_ptr _GetPathTexGenivNV_ptr { get; } + + delegate void _glGetPathTexGenivNV_intptr(TextureUnit texCoordSet, PathGenMode pname, IntPtr value); + [GlEntryPoint("glGetPathTexGenivNV")] + _glGetPathTexGenivNV_intptr _GetPathTexGenivNV_intptr { get; } + + // --- + + delegate void _glGetPerfCounterInfoINTEL(uint queryId, uint counterId, uint counterNameLength, string counterName, uint counterDescLength, string counterDesc, uint[] counterOffset, uint[] counterDataSize, uint[] counterTypeEnum, uint[] counterDataTypeEnum, UInt64[] rawCounterMaxValue); + [GlEntryPoint("glGetPerfCounterInfoINTEL")] + _glGetPerfCounterInfoINTEL _GetPerfCounterInfoINTEL { get; } + + delegate void _glGetPerfCounterInfoINTEL_ptr(uint queryId, uint counterId, uint counterNameLength, void* counterName, uint counterDescLength, void* counterDesc, void* counterOffset, void* counterDataSize, void* counterTypeEnum, void* counterDataTypeEnum, void* rawCounterMaxValue); + [GlEntryPoint("glGetPerfCounterInfoINTEL")] + _glGetPerfCounterInfoINTEL_ptr _GetPerfCounterInfoINTEL_ptr { get; } + + delegate void _glGetPerfCounterInfoINTEL_intptr(uint queryId, uint counterId, uint counterNameLength, IntPtr counterName, uint counterDescLength, IntPtr counterDesc, IntPtr counterOffset, IntPtr counterDataSize, IntPtr counterTypeEnum, IntPtr counterDataTypeEnum, IntPtr rawCounterMaxValue); + [GlEntryPoint("glGetPerfCounterInfoINTEL")] + _glGetPerfCounterInfoINTEL_intptr _GetPerfCounterInfoINTEL_intptr { get; } + + // --- + + delegate void _glGetPerfMonitorCounterDataAMD(uint monitor, int pname, int dataSize, uint[] data, out int bytesWritten); + [GlEntryPoint("glGetPerfMonitorCounterDataAMD")] + _glGetPerfMonitorCounterDataAMD _GetPerfMonitorCounterDataAMD { get; } + + delegate void _glGetPerfMonitorCounterDataAMD_ptr(uint monitor, int pname, int dataSize, void* data, out int bytesWritten); + [GlEntryPoint("glGetPerfMonitorCounterDataAMD")] + _glGetPerfMonitorCounterDataAMD_ptr _GetPerfMonitorCounterDataAMD_ptr { get; } + + delegate void _glGetPerfMonitorCounterDataAMD_intptr(uint monitor, int pname, int dataSize, IntPtr data, out int bytesWritten); + [GlEntryPoint("glGetPerfMonitorCounterDataAMD")] + _glGetPerfMonitorCounterDataAMD_intptr _GetPerfMonitorCounterDataAMD_intptr { get; } + + // --- + + delegate void _glGetPerfMonitorCounterInfoAMD(uint group, uint counter, int pname, IntPtr data); + [GlEntryPoint("glGetPerfMonitorCounterInfoAMD")] + _glGetPerfMonitorCounterInfoAMD _GetPerfMonitorCounterInfoAMD { get; } + + // --- + + delegate void _glGetPerfMonitorCounterStringAMD(uint group, uint counter, int bufSize, out int length, string counterString); + [GlEntryPoint("glGetPerfMonitorCounterStringAMD")] + _glGetPerfMonitorCounterStringAMD _GetPerfMonitorCounterStringAMD { get; } + + delegate void _glGetPerfMonitorCounterStringAMD_ptr(uint group, uint counter, int bufSize, out int length, void* counterString); + [GlEntryPoint("glGetPerfMonitorCounterStringAMD")] + _glGetPerfMonitorCounterStringAMD_ptr _GetPerfMonitorCounterStringAMD_ptr { get; } + + delegate void _glGetPerfMonitorCounterStringAMD_intptr(uint group, uint counter, int bufSize, out int length, IntPtr counterString); + [GlEntryPoint("glGetPerfMonitorCounterStringAMD")] + _glGetPerfMonitorCounterStringAMD_intptr _GetPerfMonitorCounterStringAMD_intptr { get; } + + // --- + + delegate void _glGetPerfMonitorCountersAMD(uint group, out int numCounters, out int maxActiveCounters, int counterSize, uint[] counters); + [GlEntryPoint("glGetPerfMonitorCountersAMD")] + _glGetPerfMonitorCountersAMD _GetPerfMonitorCountersAMD { get; } + + delegate void _glGetPerfMonitorCountersAMD_ptr(uint group, out int numCounters, out int maxActiveCounters, int counterSize, void* counters); + [GlEntryPoint("glGetPerfMonitorCountersAMD")] + _glGetPerfMonitorCountersAMD_ptr _GetPerfMonitorCountersAMD_ptr { get; } + + delegate void _glGetPerfMonitorCountersAMD_intptr(uint group, out int numCounters, out int maxActiveCounters, int counterSize, IntPtr counters); + [GlEntryPoint("glGetPerfMonitorCountersAMD")] + _glGetPerfMonitorCountersAMD_intptr _GetPerfMonitorCountersAMD_intptr { get; } + + // --- + + delegate void _glGetPerfMonitorGroupStringAMD(uint group, int bufSize, out int length, string groupString); + [GlEntryPoint("glGetPerfMonitorGroupStringAMD")] + _glGetPerfMonitorGroupStringAMD _GetPerfMonitorGroupStringAMD { get; } + + delegate void _glGetPerfMonitorGroupStringAMD_ptr(uint group, int bufSize, out int length, void* groupString); + [GlEntryPoint("glGetPerfMonitorGroupStringAMD")] + _glGetPerfMonitorGroupStringAMD_ptr _GetPerfMonitorGroupStringAMD_ptr { get; } + + delegate void _glGetPerfMonitorGroupStringAMD_intptr(uint group, int bufSize, out int length, IntPtr groupString); + [GlEntryPoint("glGetPerfMonitorGroupStringAMD")] + _glGetPerfMonitorGroupStringAMD_intptr _GetPerfMonitorGroupStringAMD_intptr { get; } + + // --- + + delegate void _glGetPerfMonitorGroupsAMD(out int numGroups, int groupsSize, uint[] groups); + [GlEntryPoint("glGetPerfMonitorGroupsAMD")] + _glGetPerfMonitorGroupsAMD _GetPerfMonitorGroupsAMD { get; } + + delegate void _glGetPerfMonitorGroupsAMD_ptr(out int numGroups, int groupsSize, void* groups); + [GlEntryPoint("glGetPerfMonitorGroupsAMD")] + _glGetPerfMonitorGroupsAMD_ptr _GetPerfMonitorGroupsAMD_ptr { get; } + + delegate void _glGetPerfMonitorGroupsAMD_intptr(out int numGroups, int groupsSize, IntPtr groups); + [GlEntryPoint("glGetPerfMonitorGroupsAMD")] + _glGetPerfMonitorGroupsAMD_intptr _GetPerfMonitorGroupsAMD_intptr { get; } + + // --- + + delegate void _glGetPerfQueryDataINTEL(uint queryHandle, uint flags, int dataSize, IntPtr data, uint[] bytesWritten); + [GlEntryPoint("glGetPerfQueryDataINTEL")] + _glGetPerfQueryDataINTEL _GetPerfQueryDataINTEL { get; } + + delegate void _glGetPerfQueryDataINTEL_ptr(uint queryHandle, uint flags, int dataSize, IntPtr data, void* bytesWritten); + [GlEntryPoint("glGetPerfQueryDataINTEL")] + _glGetPerfQueryDataINTEL_ptr _GetPerfQueryDataINTEL_ptr { get; } + + delegate void _glGetPerfQueryDataINTEL_intptr(uint queryHandle, uint flags, int dataSize, IntPtr data, IntPtr bytesWritten); + [GlEntryPoint("glGetPerfQueryDataINTEL")] + _glGetPerfQueryDataINTEL_intptr _GetPerfQueryDataINTEL_intptr { get; } + + // --- + + delegate void _glGetPerfQueryIdByNameINTEL(string queryName, uint[] queryId); + [GlEntryPoint("glGetPerfQueryIdByNameINTEL")] + _glGetPerfQueryIdByNameINTEL _GetPerfQueryIdByNameINTEL { get; } + + delegate void _glGetPerfQueryIdByNameINTEL_ptr(void* queryName, void* queryId); + [GlEntryPoint("glGetPerfQueryIdByNameINTEL")] + _glGetPerfQueryIdByNameINTEL_ptr _GetPerfQueryIdByNameINTEL_ptr { get; } + + delegate void _glGetPerfQueryIdByNameINTEL_intptr(IntPtr queryName, IntPtr queryId); + [GlEntryPoint("glGetPerfQueryIdByNameINTEL")] + _glGetPerfQueryIdByNameINTEL_intptr _GetPerfQueryIdByNameINTEL_intptr { get; } + + // --- + + delegate void _glGetPerfQueryInfoINTEL(uint queryId, uint queryNameLength, string queryName, uint[] dataSize, uint[] noCounters, uint[] noInstances, uint[] capsMask); + [GlEntryPoint("glGetPerfQueryInfoINTEL")] + _glGetPerfQueryInfoINTEL _GetPerfQueryInfoINTEL { get; } + + delegate void _glGetPerfQueryInfoINTEL_ptr(uint queryId, uint queryNameLength, void* queryName, void* dataSize, void* noCounters, void* noInstances, void* capsMask); + [GlEntryPoint("glGetPerfQueryInfoINTEL")] + _glGetPerfQueryInfoINTEL_ptr _GetPerfQueryInfoINTEL_ptr { get; } + + delegate void _glGetPerfQueryInfoINTEL_intptr(uint queryId, uint queryNameLength, IntPtr queryName, IntPtr dataSize, IntPtr noCounters, IntPtr noInstances, IntPtr capsMask); + [GlEntryPoint("glGetPerfQueryInfoINTEL")] + _glGetPerfQueryInfoINTEL_intptr _GetPerfQueryInfoINTEL_intptr { get; } + + // --- + + delegate void _glGetPixelMapfv(PixelMap map, float[] values); + [GlEntryPoint("glGetPixelMapfv")] + _glGetPixelMapfv _GetPixelMapfv { get; } + + delegate void _glGetPixelMapfv_ptr(PixelMap map, void* values); + [GlEntryPoint("glGetPixelMapfv")] + _glGetPixelMapfv_ptr _GetPixelMapfv_ptr { get; } + + delegate void _glGetPixelMapfv_intptr(PixelMap map, IntPtr values); + [GlEntryPoint("glGetPixelMapfv")] + _glGetPixelMapfv_intptr _GetPixelMapfv_intptr { get; } + + // --- + + delegate void _glGetPixelMapuiv(PixelMap map, uint[] values); + [GlEntryPoint("glGetPixelMapuiv")] + _glGetPixelMapuiv _GetPixelMapuiv { get; } + + delegate void _glGetPixelMapuiv_ptr(PixelMap map, void* values); + [GlEntryPoint("glGetPixelMapuiv")] + _glGetPixelMapuiv_ptr _GetPixelMapuiv_ptr { get; } + + delegate void _glGetPixelMapuiv_intptr(PixelMap map, IntPtr values); + [GlEntryPoint("glGetPixelMapuiv")] + _glGetPixelMapuiv_intptr _GetPixelMapuiv_intptr { get; } + + // --- + + delegate void _glGetPixelMapusv(PixelMap map, ushort[] values); + [GlEntryPoint("glGetPixelMapusv")] + _glGetPixelMapusv _GetPixelMapusv { get; } + + delegate void _glGetPixelMapusv_ptr(PixelMap map, void* values); + [GlEntryPoint("glGetPixelMapusv")] + _glGetPixelMapusv_ptr _GetPixelMapusv_ptr { get; } + + delegate void _glGetPixelMapusv_intptr(PixelMap map, IntPtr values); + [GlEntryPoint("glGetPixelMapusv")] + _glGetPixelMapusv_intptr _GetPixelMapusv_intptr { get; } + + // --- + + delegate void _glGetPixelMapxv(PixelMap map, int size, float[] values); + [GlEntryPoint("glGetPixelMapxv")] + _glGetPixelMapxv _GetPixelMapxv { get; } + + delegate void _glGetPixelMapxv_ptr(PixelMap map, int size, void* values); + [GlEntryPoint("glGetPixelMapxv")] + _glGetPixelMapxv_ptr _GetPixelMapxv_ptr { get; } + + delegate void _glGetPixelMapxv_intptr(PixelMap map, int size, IntPtr values); + [GlEntryPoint("glGetPixelMapxv")] + _glGetPixelMapxv_intptr _GetPixelMapxv_intptr { get; } + + // --- + + delegate void _glGetPixelTexGenParameterfvSGIS(PixelTexGenParameterNameSGIS pname, float[] @params); + [GlEntryPoint("glGetPixelTexGenParameterfvSGIS")] + _glGetPixelTexGenParameterfvSGIS _GetPixelTexGenParameterfvSGIS { get; } + + delegate void _glGetPixelTexGenParameterfvSGIS_ptr(PixelTexGenParameterNameSGIS pname, void* @params); + [GlEntryPoint("glGetPixelTexGenParameterfvSGIS")] + _glGetPixelTexGenParameterfvSGIS_ptr _GetPixelTexGenParameterfvSGIS_ptr { get; } + + delegate void _glGetPixelTexGenParameterfvSGIS_intptr(PixelTexGenParameterNameSGIS pname, IntPtr @params); + [GlEntryPoint("glGetPixelTexGenParameterfvSGIS")] + _glGetPixelTexGenParameterfvSGIS_intptr _GetPixelTexGenParameterfvSGIS_intptr { get; } + + // --- + + delegate void _glGetPixelTexGenParameterivSGIS(PixelTexGenParameterNameSGIS pname, int[] @params); + [GlEntryPoint("glGetPixelTexGenParameterivSGIS")] + _glGetPixelTexGenParameterivSGIS _GetPixelTexGenParameterivSGIS { get; } + + delegate void _glGetPixelTexGenParameterivSGIS_ptr(PixelTexGenParameterNameSGIS pname, void* @params); + [GlEntryPoint("glGetPixelTexGenParameterivSGIS")] + _glGetPixelTexGenParameterivSGIS_ptr _GetPixelTexGenParameterivSGIS_ptr { get; } + + delegate void _glGetPixelTexGenParameterivSGIS_intptr(PixelTexGenParameterNameSGIS pname, IntPtr @params); + [GlEntryPoint("glGetPixelTexGenParameterivSGIS")] + _glGetPixelTexGenParameterivSGIS_intptr _GetPixelTexGenParameterivSGIS_intptr { get; } + + // --- + + delegate void _glGetPixelTransformParameterfvEXT(int target, int pname, float[] @params); + [GlEntryPoint("glGetPixelTransformParameterfvEXT")] + _glGetPixelTransformParameterfvEXT _GetPixelTransformParameterfvEXT { get; } + + delegate void _glGetPixelTransformParameterfvEXT_ptr(int target, int pname, void* @params); + [GlEntryPoint("glGetPixelTransformParameterfvEXT")] + _glGetPixelTransformParameterfvEXT_ptr _GetPixelTransformParameterfvEXT_ptr { get; } + + delegate void _glGetPixelTransformParameterfvEXT_intptr(int target, int pname, IntPtr @params); + [GlEntryPoint("glGetPixelTransformParameterfvEXT")] + _glGetPixelTransformParameterfvEXT_intptr _GetPixelTransformParameterfvEXT_intptr { get; } + + // --- + + delegate void _glGetPixelTransformParameterivEXT(int target, int pname, int[] @params); + [GlEntryPoint("glGetPixelTransformParameterivEXT")] + _glGetPixelTransformParameterivEXT _GetPixelTransformParameterivEXT { get; } + + delegate void _glGetPixelTransformParameterivEXT_ptr(int target, int pname, void* @params); + [GlEntryPoint("glGetPixelTransformParameterivEXT")] + _glGetPixelTransformParameterivEXT_ptr _GetPixelTransformParameterivEXT_ptr { get; } + + delegate void _glGetPixelTransformParameterivEXT_intptr(int target, int pname, IntPtr @params); + [GlEntryPoint("glGetPixelTransformParameterivEXT")] + _glGetPixelTransformParameterivEXT_intptr _GetPixelTransformParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetPointerIndexedvEXT(int target, uint index, IntPtr* data); + [GlEntryPoint("glGetPointerIndexedvEXT")] + _glGetPointerIndexedvEXT _GetPointerIndexedvEXT { get; } + + // --- + + delegate void _glGetPointeri_vEXT(int pname, uint index, IntPtr* @params); + [GlEntryPoint("glGetPointeri_vEXT")] + _glGetPointeri_vEXT _GetPointeri_vEXT { get; } + + // --- + + delegate void _glGetPointerv(GetPointervPName pname, IntPtr* @params); + [GlEntryPoint("glGetPointerv")] + _glGetPointerv _GetPointerv { get; } + + // --- + + delegate void _glGetPointervEXT(GetPointervPName pname, IntPtr* @params); + [GlEntryPoint("glGetPointervEXT")] + _glGetPointervEXT _GetPointervEXT { get; } + + // --- + + delegate void _glGetPointervKHR(int pname, IntPtr* @params); + [GlEntryPoint("glGetPointervKHR")] + _glGetPointervKHR _GetPointervKHR { get; } + + // --- + + delegate void _glGetPolygonStipple(byte[] mask); + [GlEntryPoint("glGetPolygonStipple")] + _glGetPolygonStipple _GetPolygonStipple { get; } + + delegate void _glGetPolygonStipple_ptr(void* mask); + [GlEntryPoint("glGetPolygonStipple")] + _glGetPolygonStipple_ptr _GetPolygonStipple_ptr { get; } + + delegate void _glGetPolygonStipple_intptr(IntPtr mask); + [GlEntryPoint("glGetPolygonStipple")] + _glGetPolygonStipple_intptr _GetPolygonStipple_intptr { get; } + + // --- + + delegate void _glGetProgramBinary(uint program, int bufSize, out int length, out int binaryFormat, IntPtr binary); + [GlEntryPoint("glGetProgramBinary")] + _glGetProgramBinary _GetProgramBinary { get; } + + // --- + + delegate void _glGetProgramBinaryOES(uint program, int bufSize, out int length, out int binaryFormat, IntPtr binary); + [GlEntryPoint("glGetProgramBinaryOES")] + _glGetProgramBinaryOES _GetProgramBinaryOES { get; } + + // --- + + delegate void _glGetProgramEnvParameterIivNV(ProgramTarget target, uint index, int[] @params); + [GlEntryPoint("glGetProgramEnvParameterIivNV")] + _glGetProgramEnvParameterIivNV _GetProgramEnvParameterIivNV { get; } + + delegate void _glGetProgramEnvParameterIivNV_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glGetProgramEnvParameterIivNV")] + _glGetProgramEnvParameterIivNV_ptr _GetProgramEnvParameterIivNV_ptr { get; } + + delegate void _glGetProgramEnvParameterIivNV_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glGetProgramEnvParameterIivNV")] + _glGetProgramEnvParameterIivNV_intptr _GetProgramEnvParameterIivNV_intptr { get; } + + // --- + + delegate void _glGetProgramEnvParameterIuivNV(ProgramTarget target, uint index, uint[] @params); + [GlEntryPoint("glGetProgramEnvParameterIuivNV")] + _glGetProgramEnvParameterIuivNV _GetProgramEnvParameterIuivNV { get; } + + delegate void _glGetProgramEnvParameterIuivNV_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glGetProgramEnvParameterIuivNV")] + _glGetProgramEnvParameterIuivNV_ptr _GetProgramEnvParameterIuivNV_ptr { get; } + + delegate void _glGetProgramEnvParameterIuivNV_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glGetProgramEnvParameterIuivNV")] + _glGetProgramEnvParameterIuivNV_intptr _GetProgramEnvParameterIuivNV_intptr { get; } + + // --- + + delegate void _glGetProgramEnvParameterdvARB(ProgramTarget target, uint index, double[] @params); + [GlEntryPoint("glGetProgramEnvParameterdvARB")] + _glGetProgramEnvParameterdvARB _GetProgramEnvParameterdvARB { get; } + + delegate void _glGetProgramEnvParameterdvARB_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glGetProgramEnvParameterdvARB")] + _glGetProgramEnvParameterdvARB_ptr _GetProgramEnvParameterdvARB_ptr { get; } + + delegate void _glGetProgramEnvParameterdvARB_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glGetProgramEnvParameterdvARB")] + _glGetProgramEnvParameterdvARB_intptr _GetProgramEnvParameterdvARB_intptr { get; } + + // --- + + delegate void _glGetProgramEnvParameterfvARB(ProgramTarget target, uint index, float[] @params); + [GlEntryPoint("glGetProgramEnvParameterfvARB")] + _glGetProgramEnvParameterfvARB _GetProgramEnvParameterfvARB { get; } + + delegate void _glGetProgramEnvParameterfvARB_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glGetProgramEnvParameterfvARB")] + _glGetProgramEnvParameterfvARB_ptr _GetProgramEnvParameterfvARB_ptr { get; } + + delegate void _glGetProgramEnvParameterfvARB_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glGetProgramEnvParameterfvARB")] + _glGetProgramEnvParameterfvARB_intptr _GetProgramEnvParameterfvARB_intptr { get; } + + // --- + + delegate void _glGetProgramInfoLog(uint program, int bufSize, out int length, string infoLog); + [GlEntryPoint("glGetProgramInfoLog")] + _glGetProgramInfoLog _GetProgramInfoLog { get; } + + delegate void _glGetProgramInfoLog_ptr(uint program, int bufSize, out int length, void* infoLog); + [GlEntryPoint("glGetProgramInfoLog")] + _glGetProgramInfoLog_ptr _GetProgramInfoLog_ptr { get; } + + delegate void _glGetProgramInfoLog_intptr(uint program, int bufSize, out int length, IntPtr infoLog); + [GlEntryPoint("glGetProgramInfoLog")] + _glGetProgramInfoLog_intptr _GetProgramInfoLog_intptr { get; } + + // --- + + delegate void _glGetProgramInterfaceiv(uint program, ProgramInterface programInterface, ProgramInterfacePName pname, int[] @params); + [GlEntryPoint("glGetProgramInterfaceiv")] + _glGetProgramInterfaceiv _GetProgramInterfaceiv { get; } + + delegate void _glGetProgramInterfaceiv_ptr(uint program, ProgramInterface programInterface, ProgramInterfacePName pname, void* @params); + [GlEntryPoint("glGetProgramInterfaceiv")] + _glGetProgramInterfaceiv_ptr _GetProgramInterfaceiv_ptr { get; } + + delegate void _glGetProgramInterfaceiv_intptr(uint program, ProgramInterface programInterface, ProgramInterfacePName pname, IntPtr @params); + [GlEntryPoint("glGetProgramInterfaceiv")] + _glGetProgramInterfaceiv_intptr _GetProgramInterfaceiv_intptr { get; } + + // --- + + delegate void _glGetProgramLocalParameterIivNV(ProgramTarget target, uint index, int[] @params); + [GlEntryPoint("glGetProgramLocalParameterIivNV")] + _glGetProgramLocalParameterIivNV _GetProgramLocalParameterIivNV { get; } + + delegate void _glGetProgramLocalParameterIivNV_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glGetProgramLocalParameterIivNV")] + _glGetProgramLocalParameterIivNV_ptr _GetProgramLocalParameterIivNV_ptr { get; } + + delegate void _glGetProgramLocalParameterIivNV_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glGetProgramLocalParameterIivNV")] + _glGetProgramLocalParameterIivNV_intptr _GetProgramLocalParameterIivNV_intptr { get; } + + // --- + + delegate void _glGetProgramLocalParameterIuivNV(ProgramTarget target, uint index, uint[] @params); + [GlEntryPoint("glGetProgramLocalParameterIuivNV")] + _glGetProgramLocalParameterIuivNV _GetProgramLocalParameterIuivNV { get; } + + delegate void _glGetProgramLocalParameterIuivNV_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glGetProgramLocalParameterIuivNV")] + _glGetProgramLocalParameterIuivNV_ptr _GetProgramLocalParameterIuivNV_ptr { get; } + + delegate void _glGetProgramLocalParameterIuivNV_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glGetProgramLocalParameterIuivNV")] + _glGetProgramLocalParameterIuivNV_intptr _GetProgramLocalParameterIuivNV_intptr { get; } + + // --- + + delegate void _glGetProgramLocalParameterdvARB(ProgramTarget target, uint index, double[] @params); + [GlEntryPoint("glGetProgramLocalParameterdvARB")] + _glGetProgramLocalParameterdvARB _GetProgramLocalParameterdvARB { get; } + + delegate void _glGetProgramLocalParameterdvARB_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glGetProgramLocalParameterdvARB")] + _glGetProgramLocalParameterdvARB_ptr _GetProgramLocalParameterdvARB_ptr { get; } + + delegate void _glGetProgramLocalParameterdvARB_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glGetProgramLocalParameterdvARB")] + _glGetProgramLocalParameterdvARB_intptr _GetProgramLocalParameterdvARB_intptr { get; } + + // --- + + delegate void _glGetProgramLocalParameterfvARB(ProgramTarget target, uint index, float[] @params); + [GlEntryPoint("glGetProgramLocalParameterfvARB")] + _glGetProgramLocalParameterfvARB _GetProgramLocalParameterfvARB { get; } + + delegate void _glGetProgramLocalParameterfvARB_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glGetProgramLocalParameterfvARB")] + _glGetProgramLocalParameterfvARB_ptr _GetProgramLocalParameterfvARB_ptr { get; } + + delegate void _glGetProgramLocalParameterfvARB_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glGetProgramLocalParameterfvARB")] + _glGetProgramLocalParameterfvARB_intptr _GetProgramLocalParameterfvARB_intptr { get; } + + // --- + + delegate void _glGetProgramNamedParameterdvNV(uint id, int len, byte[] name, double[] @params); + [GlEntryPoint("glGetProgramNamedParameterdvNV")] + _glGetProgramNamedParameterdvNV _GetProgramNamedParameterdvNV { get; } + + delegate void _glGetProgramNamedParameterdvNV_ptr(uint id, int len, void* name, void* @params); + [GlEntryPoint("glGetProgramNamedParameterdvNV")] + _glGetProgramNamedParameterdvNV_ptr _GetProgramNamedParameterdvNV_ptr { get; } + + delegate void _glGetProgramNamedParameterdvNV_intptr(uint id, int len, IntPtr name, IntPtr @params); + [GlEntryPoint("glGetProgramNamedParameterdvNV")] + _glGetProgramNamedParameterdvNV_intptr _GetProgramNamedParameterdvNV_intptr { get; } + + // --- + + delegate void _glGetProgramNamedParameterfvNV(uint id, int len, byte[] name, float[] @params); + [GlEntryPoint("glGetProgramNamedParameterfvNV")] + _glGetProgramNamedParameterfvNV _GetProgramNamedParameterfvNV { get; } + + delegate void _glGetProgramNamedParameterfvNV_ptr(uint id, int len, void* name, void* @params); + [GlEntryPoint("glGetProgramNamedParameterfvNV")] + _glGetProgramNamedParameterfvNV_ptr _GetProgramNamedParameterfvNV_ptr { get; } + + delegate void _glGetProgramNamedParameterfvNV_intptr(uint id, int len, IntPtr name, IntPtr @params); + [GlEntryPoint("glGetProgramNamedParameterfvNV")] + _glGetProgramNamedParameterfvNV_intptr _GetProgramNamedParameterfvNV_intptr { get; } + + // --- + + delegate void _glGetProgramParameterdvNV(VertexAttribEnumNV target, uint index, VertexAttribEnumNV pname, double[] @params); + [GlEntryPoint("glGetProgramParameterdvNV")] + _glGetProgramParameterdvNV _GetProgramParameterdvNV { get; } + + delegate void _glGetProgramParameterdvNV_ptr(VertexAttribEnumNV target, uint index, VertexAttribEnumNV pname, void* @params); + [GlEntryPoint("glGetProgramParameterdvNV")] + _glGetProgramParameterdvNV_ptr _GetProgramParameterdvNV_ptr { get; } + + delegate void _glGetProgramParameterdvNV_intptr(VertexAttribEnumNV target, uint index, VertexAttribEnumNV pname, IntPtr @params); + [GlEntryPoint("glGetProgramParameterdvNV")] + _glGetProgramParameterdvNV_intptr _GetProgramParameterdvNV_intptr { get; } + + // --- + + delegate void _glGetProgramParameterfvNV(VertexAttribEnumNV target, uint index, VertexAttribEnumNV pname, float[] @params); + [GlEntryPoint("glGetProgramParameterfvNV")] + _glGetProgramParameterfvNV _GetProgramParameterfvNV { get; } + + delegate void _glGetProgramParameterfvNV_ptr(VertexAttribEnumNV target, uint index, VertexAttribEnumNV pname, void* @params); + [GlEntryPoint("glGetProgramParameterfvNV")] + _glGetProgramParameterfvNV_ptr _GetProgramParameterfvNV_ptr { get; } + + delegate void _glGetProgramParameterfvNV_intptr(VertexAttribEnumNV target, uint index, VertexAttribEnumNV pname, IntPtr @params); + [GlEntryPoint("glGetProgramParameterfvNV")] + _glGetProgramParameterfvNV_intptr _GetProgramParameterfvNV_intptr { get; } + + // --- + + delegate void _glGetProgramPipelineInfoLog(uint pipeline, int bufSize, out int length, string infoLog); + [GlEntryPoint("glGetProgramPipelineInfoLog")] + _glGetProgramPipelineInfoLog _GetProgramPipelineInfoLog { get; } + + delegate void _glGetProgramPipelineInfoLog_ptr(uint pipeline, int bufSize, out int length, void* infoLog); + [GlEntryPoint("glGetProgramPipelineInfoLog")] + _glGetProgramPipelineInfoLog_ptr _GetProgramPipelineInfoLog_ptr { get; } + + delegate void _glGetProgramPipelineInfoLog_intptr(uint pipeline, int bufSize, out int length, IntPtr infoLog); + [GlEntryPoint("glGetProgramPipelineInfoLog")] + _glGetProgramPipelineInfoLog_intptr _GetProgramPipelineInfoLog_intptr { get; } + + // --- + + delegate void _glGetProgramPipelineInfoLogEXT(uint pipeline, int bufSize, out int length, string infoLog); + [GlEntryPoint("glGetProgramPipelineInfoLogEXT")] + _glGetProgramPipelineInfoLogEXT _GetProgramPipelineInfoLogEXT { get; } + + delegate void _glGetProgramPipelineInfoLogEXT_ptr(uint pipeline, int bufSize, out int length, void* infoLog); + [GlEntryPoint("glGetProgramPipelineInfoLogEXT")] + _glGetProgramPipelineInfoLogEXT_ptr _GetProgramPipelineInfoLogEXT_ptr { get; } + + delegate void _glGetProgramPipelineInfoLogEXT_intptr(uint pipeline, int bufSize, out int length, IntPtr infoLog); + [GlEntryPoint("glGetProgramPipelineInfoLogEXT")] + _glGetProgramPipelineInfoLogEXT_intptr _GetProgramPipelineInfoLogEXT_intptr { get; } + + // --- + + delegate void _glGetProgramPipelineiv(uint pipeline, PipelineParameterName pname, int[] @params); + [GlEntryPoint("glGetProgramPipelineiv")] + _glGetProgramPipelineiv _GetProgramPipelineiv { get; } + + delegate void _glGetProgramPipelineiv_ptr(uint pipeline, PipelineParameterName pname, void* @params); + [GlEntryPoint("glGetProgramPipelineiv")] + _glGetProgramPipelineiv_ptr _GetProgramPipelineiv_ptr { get; } + + delegate void _glGetProgramPipelineiv_intptr(uint pipeline, PipelineParameterName pname, IntPtr @params); + [GlEntryPoint("glGetProgramPipelineiv")] + _glGetProgramPipelineiv_intptr _GetProgramPipelineiv_intptr { get; } + + // --- + + delegate void _glGetProgramPipelineivEXT(uint pipeline, PipelineParameterName pname, int[] @params); + [GlEntryPoint("glGetProgramPipelineivEXT")] + _glGetProgramPipelineivEXT _GetProgramPipelineivEXT { get; } + + delegate void _glGetProgramPipelineivEXT_ptr(uint pipeline, PipelineParameterName pname, void* @params); + [GlEntryPoint("glGetProgramPipelineivEXT")] + _glGetProgramPipelineivEXT_ptr _GetProgramPipelineivEXT_ptr { get; } + + delegate void _glGetProgramPipelineivEXT_intptr(uint pipeline, PipelineParameterName pname, IntPtr @params); + [GlEntryPoint("glGetProgramPipelineivEXT")] + _glGetProgramPipelineivEXT_intptr _GetProgramPipelineivEXT_intptr { get; } + + // --- + + delegate uint _glGetProgramResourceIndex(uint program, ProgramInterface programInterface, string name); + [GlEntryPoint("glGetProgramResourceIndex")] + _glGetProgramResourceIndex _GetProgramResourceIndex { get; } + + delegate uint _glGetProgramResourceIndex_ptr(uint program, ProgramInterface programInterface, void* name); + [GlEntryPoint("glGetProgramResourceIndex")] + _glGetProgramResourceIndex_ptr _GetProgramResourceIndex_ptr { get; } + + delegate uint _glGetProgramResourceIndex_intptr(uint program, ProgramInterface programInterface, IntPtr name); + [GlEntryPoint("glGetProgramResourceIndex")] + _glGetProgramResourceIndex_intptr _GetProgramResourceIndex_intptr { get; } + + // --- + + delegate int _glGetProgramResourceLocation(uint program, ProgramInterface programInterface, string name); + [GlEntryPoint("glGetProgramResourceLocation")] + _glGetProgramResourceLocation _GetProgramResourceLocation { get; } + + delegate int _glGetProgramResourceLocation_ptr(uint program, ProgramInterface programInterface, void* name); + [GlEntryPoint("glGetProgramResourceLocation")] + _glGetProgramResourceLocation_ptr _GetProgramResourceLocation_ptr { get; } + + delegate int _glGetProgramResourceLocation_intptr(uint program, ProgramInterface programInterface, IntPtr name); + [GlEntryPoint("glGetProgramResourceLocation")] + _glGetProgramResourceLocation_intptr _GetProgramResourceLocation_intptr { get; } + + // --- + + delegate int _glGetProgramResourceLocationIndex(uint program, ProgramInterface programInterface, string name); + [GlEntryPoint("glGetProgramResourceLocationIndex")] + _glGetProgramResourceLocationIndex _GetProgramResourceLocationIndex { get; } + + delegate int _glGetProgramResourceLocationIndex_ptr(uint program, ProgramInterface programInterface, void* name); + [GlEntryPoint("glGetProgramResourceLocationIndex")] + _glGetProgramResourceLocationIndex_ptr _GetProgramResourceLocationIndex_ptr { get; } + + delegate int _glGetProgramResourceLocationIndex_intptr(uint program, ProgramInterface programInterface, IntPtr name); + [GlEntryPoint("glGetProgramResourceLocationIndex")] + _glGetProgramResourceLocationIndex_intptr _GetProgramResourceLocationIndex_intptr { get; } + + // --- + + delegate int _glGetProgramResourceLocationIndexEXT(uint program, ProgramInterface programInterface, string name); + [GlEntryPoint("glGetProgramResourceLocationIndexEXT")] + _glGetProgramResourceLocationIndexEXT _GetProgramResourceLocationIndexEXT { get; } + + delegate int _glGetProgramResourceLocationIndexEXT_ptr(uint program, ProgramInterface programInterface, void* name); + [GlEntryPoint("glGetProgramResourceLocationIndexEXT")] + _glGetProgramResourceLocationIndexEXT_ptr _GetProgramResourceLocationIndexEXT_ptr { get; } + + delegate int _glGetProgramResourceLocationIndexEXT_intptr(uint program, ProgramInterface programInterface, IntPtr name); + [GlEntryPoint("glGetProgramResourceLocationIndexEXT")] + _glGetProgramResourceLocationIndexEXT_intptr _GetProgramResourceLocationIndexEXT_intptr { get; } + + // --- + + delegate void _glGetProgramResourceName(uint program, ProgramInterface programInterface, uint index, int bufSize, out int length, string name); + [GlEntryPoint("glGetProgramResourceName")] + _glGetProgramResourceName _GetProgramResourceName { get; } + + delegate void _glGetProgramResourceName_ptr(uint program, ProgramInterface programInterface, uint index, int bufSize, out int length, void* name); + [GlEntryPoint("glGetProgramResourceName")] + _glGetProgramResourceName_ptr _GetProgramResourceName_ptr { get; } + + delegate void _glGetProgramResourceName_intptr(uint program, ProgramInterface programInterface, uint index, int bufSize, out int length, IntPtr name); + [GlEntryPoint("glGetProgramResourceName")] + _glGetProgramResourceName_intptr _GetProgramResourceName_intptr { get; } + + // --- + + delegate void _glGetProgramResourcefvNV(uint program, ProgramInterface programInterface, uint index, int propCount, int[] props, int count, out int length, float[] @params); + [GlEntryPoint("glGetProgramResourcefvNV")] + _glGetProgramResourcefvNV _GetProgramResourcefvNV { get; } + + delegate void _glGetProgramResourcefvNV_ptr(uint program, ProgramInterface programInterface, uint index, int propCount, void* props, int count, out int length, void* @params); + [GlEntryPoint("glGetProgramResourcefvNV")] + _glGetProgramResourcefvNV_ptr _GetProgramResourcefvNV_ptr { get; } + + delegate void _glGetProgramResourcefvNV_intptr(uint program, ProgramInterface programInterface, uint index, int propCount, IntPtr props, int count, out int length, IntPtr @params); + [GlEntryPoint("glGetProgramResourcefvNV")] + _glGetProgramResourcefvNV_intptr _GetProgramResourcefvNV_intptr { get; } + + // --- + + delegate void _glGetProgramResourceiv(uint program, ProgramInterface programInterface, uint index, int propCount, ProgramResourceProperty[] props, int count, out int length, int[] @params); + [GlEntryPoint("glGetProgramResourceiv")] + _glGetProgramResourceiv _GetProgramResourceiv { get; } + + delegate void _glGetProgramResourceiv_ptr(uint program, ProgramInterface programInterface, uint index, int propCount, void* props, int count, out int length, void* @params); + [GlEntryPoint("glGetProgramResourceiv")] + _glGetProgramResourceiv_ptr _GetProgramResourceiv_ptr { get; } + + delegate void _glGetProgramResourceiv_intptr(uint program, ProgramInterface programInterface, uint index, int propCount, IntPtr props, int count, out int length, IntPtr @params); + [GlEntryPoint("glGetProgramResourceiv")] + _glGetProgramResourceiv_intptr _GetProgramResourceiv_intptr { get; } + + // --- + + delegate void _glGetProgramStageiv(uint program, ShaderType shadertype, ProgramStagePName pname, out int values); + [GlEntryPoint("glGetProgramStageiv")] + _glGetProgramStageiv _GetProgramStageiv { get; } + + // --- + + delegate void _glGetProgramStringARB(ProgramTarget target, ProgramStringProperty pname, IntPtr @string); + [GlEntryPoint("glGetProgramStringARB")] + _glGetProgramStringARB _GetProgramStringARB { get; } + + // --- + + delegate void _glGetProgramStringNV(uint id, VertexAttribEnumNV pname, byte[] program); + [GlEntryPoint("glGetProgramStringNV")] + _glGetProgramStringNV _GetProgramStringNV { get; } + + delegate void _glGetProgramStringNV_ptr(uint id, VertexAttribEnumNV pname, void* program); + [GlEntryPoint("glGetProgramStringNV")] + _glGetProgramStringNV_ptr _GetProgramStringNV_ptr { get; } + + delegate void _glGetProgramStringNV_intptr(uint id, VertexAttribEnumNV pname, IntPtr program); + [GlEntryPoint("glGetProgramStringNV")] + _glGetProgramStringNV_intptr _GetProgramStringNV_intptr { get; } + + // --- + + delegate void _glGetProgramSubroutineParameteruivNV(int target, uint index, uint[] param); + [GlEntryPoint("glGetProgramSubroutineParameteruivNV")] + _glGetProgramSubroutineParameteruivNV _GetProgramSubroutineParameteruivNV { get; } + + delegate void _glGetProgramSubroutineParameteruivNV_ptr(int target, uint index, void* param); + [GlEntryPoint("glGetProgramSubroutineParameteruivNV")] + _glGetProgramSubroutineParameteruivNV_ptr _GetProgramSubroutineParameteruivNV_ptr { get; } + + delegate void _glGetProgramSubroutineParameteruivNV_intptr(int target, uint index, IntPtr param); + [GlEntryPoint("glGetProgramSubroutineParameteruivNV")] + _glGetProgramSubroutineParameteruivNV_intptr _GetProgramSubroutineParameteruivNV_intptr { get; } + + // --- + + delegate void _glGetProgramiv(uint program, ProgramPropertyARB pname, int[] @params); + [GlEntryPoint("glGetProgramiv")] + _glGetProgramiv _GetProgramiv { get; } + + delegate void _glGetProgramiv_ptr(uint program, ProgramPropertyARB pname, void* @params); + [GlEntryPoint("glGetProgramiv")] + _glGetProgramiv_ptr _GetProgramiv_ptr { get; } + + delegate void _glGetProgramiv_intptr(uint program, ProgramPropertyARB pname, IntPtr @params); + [GlEntryPoint("glGetProgramiv")] + _glGetProgramiv_intptr _GetProgramiv_intptr { get; } + + // --- + + delegate void _glGetProgramivARB(ProgramTarget target, ProgramPropertyARB pname, out int @params); + [GlEntryPoint("glGetProgramivARB")] + _glGetProgramivARB _GetProgramivARB { get; } + + // --- + + delegate void _glGetProgramivNV(uint id, VertexAttribEnumNV pname, int[] @params); + [GlEntryPoint("glGetProgramivNV")] + _glGetProgramivNV _GetProgramivNV { get; } + + delegate void _glGetProgramivNV_ptr(uint id, VertexAttribEnumNV pname, void* @params); + [GlEntryPoint("glGetProgramivNV")] + _glGetProgramivNV_ptr _GetProgramivNV_ptr { get; } + + delegate void _glGetProgramivNV_intptr(uint id, VertexAttribEnumNV pname, IntPtr @params); + [GlEntryPoint("glGetProgramivNV")] + _glGetProgramivNV_intptr _GetProgramivNV_intptr { get; } + + // --- + + delegate void _glGetQueryBufferObjecti64v(uint id, uint buffer, QueryObjectParameterName pname, IntPtr offset); + [GlEntryPoint("glGetQueryBufferObjecti64v")] + _glGetQueryBufferObjecti64v _GetQueryBufferObjecti64v { get; } + + // --- + + delegate void _glGetQueryBufferObjectiv(uint id, uint buffer, QueryObjectParameterName pname, IntPtr offset); + [GlEntryPoint("glGetQueryBufferObjectiv")] + _glGetQueryBufferObjectiv _GetQueryBufferObjectiv { get; } + + // --- + + delegate void _glGetQueryBufferObjectui64v(uint id, uint buffer, QueryObjectParameterName pname, IntPtr offset); + [GlEntryPoint("glGetQueryBufferObjectui64v")] + _glGetQueryBufferObjectui64v _GetQueryBufferObjectui64v { get; } + + // --- + + delegate void _glGetQueryBufferObjectuiv(uint id, uint buffer, QueryObjectParameterName pname, IntPtr offset); + [GlEntryPoint("glGetQueryBufferObjectuiv")] + _glGetQueryBufferObjectuiv _GetQueryBufferObjectuiv { get; } + + // --- + + delegate void _glGetQueryIndexediv(QueryTarget target, uint index, QueryParameterName pname, int[] @params); + [GlEntryPoint("glGetQueryIndexediv")] + _glGetQueryIndexediv _GetQueryIndexediv { get; } + + delegate void _glGetQueryIndexediv_ptr(QueryTarget target, uint index, QueryParameterName pname, void* @params); + [GlEntryPoint("glGetQueryIndexediv")] + _glGetQueryIndexediv_ptr _GetQueryIndexediv_ptr { get; } + + delegate void _glGetQueryIndexediv_intptr(QueryTarget target, uint index, QueryParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryIndexediv")] + _glGetQueryIndexediv_intptr _GetQueryIndexediv_intptr { get; } + + // --- + + delegate void _glGetQueryObjecti64v(uint id, QueryObjectParameterName pname, Int64[] @params); + [GlEntryPoint("glGetQueryObjecti64v")] + _glGetQueryObjecti64v _GetQueryObjecti64v { get; } + + delegate void _glGetQueryObjecti64v_ptr(uint id, QueryObjectParameterName pname, void* @params); + [GlEntryPoint("glGetQueryObjecti64v")] + _glGetQueryObjecti64v_ptr _GetQueryObjecti64v_ptr { get; } + + delegate void _glGetQueryObjecti64v_intptr(uint id, QueryObjectParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryObjecti64v")] + _glGetQueryObjecti64v_intptr _GetQueryObjecti64v_intptr { get; } + + // --- + + delegate void _glGetQueryObjecti64vEXT(uint id, QueryObjectParameterName pname, Int64[] @params); + [GlEntryPoint("glGetQueryObjecti64vEXT")] + _glGetQueryObjecti64vEXT _GetQueryObjecti64vEXT { get; } + + delegate void _glGetQueryObjecti64vEXT_ptr(uint id, QueryObjectParameterName pname, void* @params); + [GlEntryPoint("glGetQueryObjecti64vEXT")] + _glGetQueryObjecti64vEXT_ptr _GetQueryObjecti64vEXT_ptr { get; } + + delegate void _glGetQueryObjecti64vEXT_intptr(uint id, QueryObjectParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryObjecti64vEXT")] + _glGetQueryObjecti64vEXT_intptr _GetQueryObjecti64vEXT_intptr { get; } + + // --- + + delegate void _glGetQueryObjectiv(uint id, QueryObjectParameterName pname, int[] @params); + [GlEntryPoint("glGetQueryObjectiv")] + _glGetQueryObjectiv _GetQueryObjectiv { get; } + + delegate void _glGetQueryObjectiv_ptr(uint id, QueryObjectParameterName pname, void* @params); + [GlEntryPoint("glGetQueryObjectiv")] + _glGetQueryObjectiv_ptr _GetQueryObjectiv_ptr { get; } + + delegate void _glGetQueryObjectiv_intptr(uint id, QueryObjectParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryObjectiv")] + _glGetQueryObjectiv_intptr _GetQueryObjectiv_intptr { get; } + + // --- + + delegate void _glGetQueryObjectivARB(uint id, QueryObjectParameterName pname, int[] @params); + [GlEntryPoint("glGetQueryObjectivARB")] + _glGetQueryObjectivARB _GetQueryObjectivARB { get; } + + delegate void _glGetQueryObjectivARB_ptr(uint id, QueryObjectParameterName pname, void* @params); + [GlEntryPoint("glGetQueryObjectivARB")] + _glGetQueryObjectivARB_ptr _GetQueryObjectivARB_ptr { get; } + + delegate void _glGetQueryObjectivARB_intptr(uint id, QueryObjectParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryObjectivARB")] + _glGetQueryObjectivARB_intptr _GetQueryObjectivARB_intptr { get; } + + // --- + + delegate void _glGetQueryObjectivEXT(uint id, QueryObjectParameterName pname, int[] @params); + [GlEntryPoint("glGetQueryObjectivEXT")] + _glGetQueryObjectivEXT _GetQueryObjectivEXT { get; } + + delegate void _glGetQueryObjectivEXT_ptr(uint id, QueryObjectParameterName pname, void* @params); + [GlEntryPoint("glGetQueryObjectivEXT")] + _glGetQueryObjectivEXT_ptr _GetQueryObjectivEXT_ptr { get; } + + delegate void _glGetQueryObjectivEXT_intptr(uint id, QueryObjectParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryObjectivEXT")] + _glGetQueryObjectivEXT_intptr _GetQueryObjectivEXT_intptr { get; } + + // --- + + delegate void _glGetQueryObjectui64v(uint id, QueryObjectParameterName pname, UInt64[] @params); + [GlEntryPoint("glGetQueryObjectui64v")] + _glGetQueryObjectui64v _GetQueryObjectui64v { get; } + + delegate void _glGetQueryObjectui64v_ptr(uint id, QueryObjectParameterName pname, void* @params); + [GlEntryPoint("glGetQueryObjectui64v")] + _glGetQueryObjectui64v_ptr _GetQueryObjectui64v_ptr { get; } + + delegate void _glGetQueryObjectui64v_intptr(uint id, QueryObjectParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryObjectui64v")] + _glGetQueryObjectui64v_intptr _GetQueryObjectui64v_intptr { get; } + + // --- + + delegate void _glGetQueryObjectui64vEXT(uint id, QueryObjectParameterName pname, UInt64[] @params); + [GlEntryPoint("glGetQueryObjectui64vEXT")] + _glGetQueryObjectui64vEXT _GetQueryObjectui64vEXT { get; } + + delegate void _glGetQueryObjectui64vEXT_ptr(uint id, QueryObjectParameterName pname, void* @params); + [GlEntryPoint("glGetQueryObjectui64vEXT")] + _glGetQueryObjectui64vEXT_ptr _GetQueryObjectui64vEXT_ptr { get; } + + delegate void _glGetQueryObjectui64vEXT_intptr(uint id, QueryObjectParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryObjectui64vEXT")] + _glGetQueryObjectui64vEXT_intptr _GetQueryObjectui64vEXT_intptr { get; } + + // --- + + delegate void _glGetQueryObjectuiv(uint id, QueryObjectParameterName pname, uint[] @params); + [GlEntryPoint("glGetQueryObjectuiv")] + _glGetQueryObjectuiv _GetQueryObjectuiv { get; } + + delegate void _glGetQueryObjectuiv_ptr(uint id, QueryObjectParameterName pname, void* @params); + [GlEntryPoint("glGetQueryObjectuiv")] + _glGetQueryObjectuiv_ptr _GetQueryObjectuiv_ptr { get; } + + delegate void _glGetQueryObjectuiv_intptr(uint id, QueryObjectParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryObjectuiv")] + _glGetQueryObjectuiv_intptr _GetQueryObjectuiv_intptr { get; } + + // --- + + delegate void _glGetQueryObjectuivARB(uint id, QueryObjectParameterName pname, uint[] @params); + [GlEntryPoint("glGetQueryObjectuivARB")] + _glGetQueryObjectuivARB _GetQueryObjectuivARB { get; } + + delegate void _glGetQueryObjectuivARB_ptr(uint id, QueryObjectParameterName pname, void* @params); + [GlEntryPoint("glGetQueryObjectuivARB")] + _glGetQueryObjectuivARB_ptr _GetQueryObjectuivARB_ptr { get; } + + delegate void _glGetQueryObjectuivARB_intptr(uint id, QueryObjectParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryObjectuivARB")] + _glGetQueryObjectuivARB_intptr _GetQueryObjectuivARB_intptr { get; } + + // --- + + delegate void _glGetQueryObjectuivEXT(uint id, QueryObjectParameterName pname, uint[] @params); + [GlEntryPoint("glGetQueryObjectuivEXT")] + _glGetQueryObjectuivEXT _GetQueryObjectuivEXT { get; } + + delegate void _glGetQueryObjectuivEXT_ptr(uint id, QueryObjectParameterName pname, void* @params); + [GlEntryPoint("glGetQueryObjectuivEXT")] + _glGetQueryObjectuivEXT_ptr _GetQueryObjectuivEXT_ptr { get; } + + delegate void _glGetQueryObjectuivEXT_intptr(uint id, QueryObjectParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryObjectuivEXT")] + _glGetQueryObjectuivEXT_intptr _GetQueryObjectuivEXT_intptr { get; } + + // --- + + delegate void _glGetQueryiv(QueryTarget target, QueryParameterName pname, int[] @params); + [GlEntryPoint("glGetQueryiv")] + _glGetQueryiv _GetQueryiv { get; } + + delegate void _glGetQueryiv_ptr(QueryTarget target, QueryParameterName pname, void* @params); + [GlEntryPoint("glGetQueryiv")] + _glGetQueryiv_ptr _GetQueryiv_ptr { get; } + + delegate void _glGetQueryiv_intptr(QueryTarget target, QueryParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryiv")] + _glGetQueryiv_intptr _GetQueryiv_intptr { get; } + + // --- + + delegate void _glGetQueryivARB(QueryTarget target, QueryParameterName pname, int[] @params); + [GlEntryPoint("glGetQueryivARB")] + _glGetQueryivARB _GetQueryivARB { get; } + + delegate void _glGetQueryivARB_ptr(QueryTarget target, QueryParameterName pname, void* @params); + [GlEntryPoint("glGetQueryivARB")] + _glGetQueryivARB_ptr _GetQueryivARB_ptr { get; } + + delegate void _glGetQueryivARB_intptr(QueryTarget target, QueryParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryivARB")] + _glGetQueryivARB_intptr _GetQueryivARB_intptr { get; } + + // --- + + delegate void _glGetQueryivEXT(QueryTarget target, QueryParameterName pname, int[] @params); + [GlEntryPoint("glGetQueryivEXT")] + _glGetQueryivEXT _GetQueryivEXT { get; } + + delegate void _glGetQueryivEXT_ptr(QueryTarget target, QueryParameterName pname, void* @params); + [GlEntryPoint("glGetQueryivEXT")] + _glGetQueryivEXT_ptr _GetQueryivEXT_ptr { get; } + + delegate void _glGetQueryivEXT_intptr(QueryTarget target, QueryParameterName pname, IntPtr @params); + [GlEntryPoint("glGetQueryivEXT")] + _glGetQueryivEXT_intptr _GetQueryivEXT_intptr { get; } + + // --- + + delegate void _glGetRenderbufferParameteriv(RenderbufferTarget target, RenderbufferParameterName pname, int[] @params); + [GlEntryPoint("glGetRenderbufferParameteriv")] + _glGetRenderbufferParameteriv _GetRenderbufferParameteriv { get; } + + delegate void _glGetRenderbufferParameteriv_ptr(RenderbufferTarget target, RenderbufferParameterName pname, void* @params); + [GlEntryPoint("glGetRenderbufferParameteriv")] + _glGetRenderbufferParameteriv_ptr _GetRenderbufferParameteriv_ptr { get; } + + delegate void _glGetRenderbufferParameteriv_intptr(RenderbufferTarget target, RenderbufferParameterName pname, IntPtr @params); + [GlEntryPoint("glGetRenderbufferParameteriv")] + _glGetRenderbufferParameteriv_intptr _GetRenderbufferParameteriv_intptr { get; } + + // --- + + delegate void _glGetRenderbufferParameterivEXT(RenderbufferTarget target, RenderbufferParameterName pname, int[] @params); + [GlEntryPoint("glGetRenderbufferParameterivEXT")] + _glGetRenderbufferParameterivEXT _GetRenderbufferParameterivEXT { get; } + + delegate void _glGetRenderbufferParameterivEXT_ptr(RenderbufferTarget target, RenderbufferParameterName pname, void* @params); + [GlEntryPoint("glGetRenderbufferParameterivEXT")] + _glGetRenderbufferParameterivEXT_ptr _GetRenderbufferParameterivEXT_ptr { get; } + + delegate void _glGetRenderbufferParameterivEXT_intptr(RenderbufferTarget target, RenderbufferParameterName pname, IntPtr @params); + [GlEntryPoint("glGetRenderbufferParameterivEXT")] + _glGetRenderbufferParameterivEXT_intptr _GetRenderbufferParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetRenderbufferParameterivOES(RenderbufferTarget target, RenderbufferParameterName pname, int[] @params); + [GlEntryPoint("glGetRenderbufferParameterivOES")] + _glGetRenderbufferParameterivOES _GetRenderbufferParameterivOES { get; } + + delegate void _glGetRenderbufferParameterivOES_ptr(RenderbufferTarget target, RenderbufferParameterName pname, void* @params); + [GlEntryPoint("glGetRenderbufferParameterivOES")] + _glGetRenderbufferParameterivOES_ptr _GetRenderbufferParameterivOES_ptr { get; } + + delegate void _glGetRenderbufferParameterivOES_intptr(RenderbufferTarget target, RenderbufferParameterName pname, IntPtr @params); + [GlEntryPoint("glGetRenderbufferParameterivOES")] + _glGetRenderbufferParameterivOES_intptr _GetRenderbufferParameterivOES_intptr { get; } + + // --- + + delegate void _glGetSamplerParameterIiv(uint sampler, SamplerParameterI pname, int[] @params); + [GlEntryPoint("glGetSamplerParameterIiv")] + _glGetSamplerParameterIiv _GetSamplerParameterIiv { get; } + + delegate void _glGetSamplerParameterIiv_ptr(uint sampler, SamplerParameterI pname, void* @params); + [GlEntryPoint("glGetSamplerParameterIiv")] + _glGetSamplerParameterIiv_ptr _GetSamplerParameterIiv_ptr { get; } + + delegate void _glGetSamplerParameterIiv_intptr(uint sampler, SamplerParameterI pname, IntPtr @params); + [GlEntryPoint("glGetSamplerParameterIiv")] + _glGetSamplerParameterIiv_intptr _GetSamplerParameterIiv_intptr { get; } + + // --- + + delegate void _glGetSamplerParameterIivEXT(uint sampler, SamplerParameterI pname, int[] @params); + [GlEntryPoint("glGetSamplerParameterIivEXT")] + _glGetSamplerParameterIivEXT _GetSamplerParameterIivEXT { get; } + + delegate void _glGetSamplerParameterIivEXT_ptr(uint sampler, SamplerParameterI pname, void* @params); + [GlEntryPoint("glGetSamplerParameterIivEXT")] + _glGetSamplerParameterIivEXT_ptr _GetSamplerParameterIivEXT_ptr { get; } + + delegate void _glGetSamplerParameterIivEXT_intptr(uint sampler, SamplerParameterI pname, IntPtr @params); + [GlEntryPoint("glGetSamplerParameterIivEXT")] + _glGetSamplerParameterIivEXT_intptr _GetSamplerParameterIivEXT_intptr { get; } + + // --- + + delegate void _glGetSamplerParameterIivOES(uint sampler, SamplerParameterI pname, int[] @params); + [GlEntryPoint("glGetSamplerParameterIivOES")] + _glGetSamplerParameterIivOES _GetSamplerParameterIivOES { get; } + + delegate void _glGetSamplerParameterIivOES_ptr(uint sampler, SamplerParameterI pname, void* @params); + [GlEntryPoint("glGetSamplerParameterIivOES")] + _glGetSamplerParameterIivOES_ptr _GetSamplerParameterIivOES_ptr { get; } + + delegate void _glGetSamplerParameterIivOES_intptr(uint sampler, SamplerParameterI pname, IntPtr @params); + [GlEntryPoint("glGetSamplerParameterIivOES")] + _glGetSamplerParameterIivOES_intptr _GetSamplerParameterIivOES_intptr { get; } + + // --- + + delegate void _glGetSamplerParameterIuiv(uint sampler, SamplerParameterI pname, uint[] @params); + [GlEntryPoint("glGetSamplerParameterIuiv")] + _glGetSamplerParameterIuiv _GetSamplerParameterIuiv { get; } + + delegate void _glGetSamplerParameterIuiv_ptr(uint sampler, SamplerParameterI pname, void* @params); + [GlEntryPoint("glGetSamplerParameterIuiv")] + _glGetSamplerParameterIuiv_ptr _GetSamplerParameterIuiv_ptr { get; } + + delegate void _glGetSamplerParameterIuiv_intptr(uint sampler, SamplerParameterI pname, IntPtr @params); + [GlEntryPoint("glGetSamplerParameterIuiv")] + _glGetSamplerParameterIuiv_intptr _GetSamplerParameterIuiv_intptr { get; } + + // --- + + delegate void _glGetSamplerParameterIuivEXT(uint sampler, SamplerParameterI pname, uint[] @params); + [GlEntryPoint("glGetSamplerParameterIuivEXT")] + _glGetSamplerParameterIuivEXT _GetSamplerParameterIuivEXT { get; } + + delegate void _glGetSamplerParameterIuivEXT_ptr(uint sampler, SamplerParameterI pname, void* @params); + [GlEntryPoint("glGetSamplerParameterIuivEXT")] + _glGetSamplerParameterIuivEXT_ptr _GetSamplerParameterIuivEXT_ptr { get; } + + delegate void _glGetSamplerParameterIuivEXT_intptr(uint sampler, SamplerParameterI pname, IntPtr @params); + [GlEntryPoint("glGetSamplerParameterIuivEXT")] + _glGetSamplerParameterIuivEXT_intptr _GetSamplerParameterIuivEXT_intptr { get; } + + // --- + + delegate void _glGetSamplerParameterIuivOES(uint sampler, SamplerParameterI pname, uint[] @params); + [GlEntryPoint("glGetSamplerParameterIuivOES")] + _glGetSamplerParameterIuivOES _GetSamplerParameterIuivOES { get; } + + delegate void _glGetSamplerParameterIuivOES_ptr(uint sampler, SamplerParameterI pname, void* @params); + [GlEntryPoint("glGetSamplerParameterIuivOES")] + _glGetSamplerParameterIuivOES_ptr _GetSamplerParameterIuivOES_ptr { get; } + + delegate void _glGetSamplerParameterIuivOES_intptr(uint sampler, SamplerParameterI pname, IntPtr @params); + [GlEntryPoint("glGetSamplerParameterIuivOES")] + _glGetSamplerParameterIuivOES_intptr _GetSamplerParameterIuivOES_intptr { get; } + + // --- + + delegate void _glGetSamplerParameterfv(uint sampler, SamplerParameterF pname, float[] @params); + [GlEntryPoint("glGetSamplerParameterfv")] + _glGetSamplerParameterfv _GetSamplerParameterfv { get; } + + delegate void _glGetSamplerParameterfv_ptr(uint sampler, SamplerParameterF pname, void* @params); + [GlEntryPoint("glGetSamplerParameterfv")] + _glGetSamplerParameterfv_ptr _GetSamplerParameterfv_ptr { get; } + + delegate void _glGetSamplerParameterfv_intptr(uint sampler, SamplerParameterF pname, IntPtr @params); + [GlEntryPoint("glGetSamplerParameterfv")] + _glGetSamplerParameterfv_intptr _GetSamplerParameterfv_intptr { get; } + + // --- + + delegate void _glGetSamplerParameteriv(uint sampler, SamplerParameterI pname, int[] @params); + [GlEntryPoint("glGetSamplerParameteriv")] + _glGetSamplerParameteriv _GetSamplerParameteriv { get; } + + delegate void _glGetSamplerParameteriv_ptr(uint sampler, SamplerParameterI pname, void* @params); + [GlEntryPoint("glGetSamplerParameteriv")] + _glGetSamplerParameteriv_ptr _GetSamplerParameteriv_ptr { get; } + + delegate void _glGetSamplerParameteriv_intptr(uint sampler, SamplerParameterI pname, IntPtr @params); + [GlEntryPoint("glGetSamplerParameteriv")] + _glGetSamplerParameteriv_intptr _GetSamplerParameteriv_intptr { get; } + + // --- + + delegate void _glGetSemaphoreParameterui64vEXT(uint semaphore, SemaphoreParameterName pname, UInt64[] @params); + [GlEntryPoint("glGetSemaphoreParameterui64vEXT")] + _glGetSemaphoreParameterui64vEXT _GetSemaphoreParameterui64vEXT { get; } + + delegate void _glGetSemaphoreParameterui64vEXT_ptr(uint semaphore, SemaphoreParameterName pname, void* @params); + [GlEntryPoint("glGetSemaphoreParameterui64vEXT")] + _glGetSemaphoreParameterui64vEXT_ptr _GetSemaphoreParameterui64vEXT_ptr { get; } + + delegate void _glGetSemaphoreParameterui64vEXT_intptr(uint semaphore, SemaphoreParameterName pname, IntPtr @params); + [GlEntryPoint("glGetSemaphoreParameterui64vEXT")] + _glGetSemaphoreParameterui64vEXT_intptr _GetSemaphoreParameterui64vEXT_intptr { get; } + + // --- + + delegate void _glGetSeparableFilter(SeparableTargetEXT target, PixelFormat format, PixelType type, IntPtr row, IntPtr column, IntPtr span); + [GlEntryPoint("glGetSeparableFilter")] + _glGetSeparableFilter _GetSeparableFilter { get; } + + // --- + + delegate void _glGetSeparableFilterEXT(SeparableTargetEXT target, PixelFormat format, PixelType type, IntPtr row, IntPtr column, IntPtr span); + [GlEntryPoint("glGetSeparableFilterEXT")] + _glGetSeparableFilterEXT _GetSeparableFilterEXT { get; } + + // --- + + delegate void _glGetShaderInfoLog(uint shader, int bufSize, out int length, string infoLog); + [GlEntryPoint("glGetShaderInfoLog")] + _glGetShaderInfoLog _GetShaderInfoLog { get; } + + delegate void _glGetShaderInfoLog_ptr(uint shader, int bufSize, out int length, void* infoLog); + [GlEntryPoint("glGetShaderInfoLog")] + _glGetShaderInfoLog_ptr _GetShaderInfoLog_ptr { get; } + + delegate void _glGetShaderInfoLog_intptr(uint shader, int bufSize, out int length, IntPtr infoLog); + [GlEntryPoint("glGetShaderInfoLog")] + _glGetShaderInfoLog_intptr _GetShaderInfoLog_intptr { get; } + + // --- + + delegate void _glGetShaderPrecisionFormat(ShaderType shadertype, PrecisionType precisiontype, int[] range, out int precision); + [GlEntryPoint("glGetShaderPrecisionFormat")] + _glGetShaderPrecisionFormat _GetShaderPrecisionFormat { get; } + + delegate void _glGetShaderPrecisionFormat_ptr(ShaderType shadertype, PrecisionType precisiontype, void* range, out int precision); + [GlEntryPoint("glGetShaderPrecisionFormat")] + _glGetShaderPrecisionFormat_ptr _GetShaderPrecisionFormat_ptr { get; } + + delegate void _glGetShaderPrecisionFormat_intptr(ShaderType shadertype, PrecisionType precisiontype, IntPtr range, out int precision); + [GlEntryPoint("glGetShaderPrecisionFormat")] + _glGetShaderPrecisionFormat_intptr _GetShaderPrecisionFormat_intptr { get; } + + // --- + + delegate void _glGetShaderSource(uint shader, int bufSize, out int length, string source); + [GlEntryPoint("glGetShaderSource")] + _glGetShaderSource _GetShaderSource { get; } + + delegate void _glGetShaderSource_ptr(uint shader, int bufSize, out int length, void* source); + [GlEntryPoint("glGetShaderSource")] + _glGetShaderSource_ptr _GetShaderSource_ptr { get; } + + delegate void _glGetShaderSource_intptr(uint shader, int bufSize, out int length, IntPtr source); + [GlEntryPoint("glGetShaderSource")] + _glGetShaderSource_intptr _GetShaderSource_intptr { get; } + + // --- + + delegate void _glGetShaderSourceARB(int obj, int maxLength, out int length, string source); + [GlEntryPoint("glGetShaderSourceARB")] + _glGetShaderSourceARB _GetShaderSourceARB { get; } + + delegate void _glGetShaderSourceARB_ptr(int obj, int maxLength, out int length, void* source); + [GlEntryPoint("glGetShaderSourceARB")] + _glGetShaderSourceARB_ptr _GetShaderSourceARB_ptr { get; } + + delegate void _glGetShaderSourceARB_intptr(int obj, int maxLength, out int length, IntPtr source); + [GlEntryPoint("glGetShaderSourceARB")] + _glGetShaderSourceARB_intptr _GetShaderSourceARB_intptr { get; } + + // --- + + delegate void _glGetShaderiv(uint shader, ShaderParameterName pname, int[] @params); + [GlEntryPoint("glGetShaderiv")] + _glGetShaderiv _GetShaderiv { get; } + + delegate void _glGetShaderiv_ptr(uint shader, ShaderParameterName pname, void* @params); + [GlEntryPoint("glGetShaderiv")] + _glGetShaderiv_ptr _GetShaderiv_ptr { get; } + + delegate void _glGetShaderiv_intptr(uint shader, ShaderParameterName pname, IntPtr @params); + [GlEntryPoint("glGetShaderiv")] + _glGetShaderiv_intptr _GetShaderiv_intptr { get; } + + // --- + + delegate void _glGetShadingRateImagePaletteNV(uint viewport, uint entry, out int rate); + [GlEntryPoint("glGetShadingRateImagePaletteNV")] + _glGetShadingRateImagePaletteNV _GetShadingRateImagePaletteNV { get; } + + // --- + + delegate void _glGetShadingRateSampleLocationivNV(int rate, uint samples, uint index, int[] location); + [GlEntryPoint("glGetShadingRateSampleLocationivNV")] + _glGetShadingRateSampleLocationivNV _GetShadingRateSampleLocationivNV { get; } + + delegate void _glGetShadingRateSampleLocationivNV_ptr(int rate, uint samples, uint index, void* location); + [GlEntryPoint("glGetShadingRateSampleLocationivNV")] + _glGetShadingRateSampleLocationivNV_ptr _GetShadingRateSampleLocationivNV_ptr { get; } + + delegate void _glGetShadingRateSampleLocationivNV_intptr(int rate, uint samples, uint index, IntPtr location); + [GlEntryPoint("glGetShadingRateSampleLocationivNV")] + _glGetShadingRateSampleLocationivNV_intptr _GetShadingRateSampleLocationivNV_intptr { get; } + + // --- + + delegate void _glGetSharpenTexFuncSGIS(TextureTarget target, float[] points); + [GlEntryPoint("glGetSharpenTexFuncSGIS")] + _glGetSharpenTexFuncSGIS _GetSharpenTexFuncSGIS { get; } + + delegate void _glGetSharpenTexFuncSGIS_ptr(TextureTarget target, void* points); + [GlEntryPoint("glGetSharpenTexFuncSGIS")] + _glGetSharpenTexFuncSGIS_ptr _GetSharpenTexFuncSGIS_ptr { get; } + + delegate void _glGetSharpenTexFuncSGIS_intptr(TextureTarget target, IntPtr points); + [GlEntryPoint("glGetSharpenTexFuncSGIS")] + _glGetSharpenTexFuncSGIS_intptr _GetSharpenTexFuncSGIS_intptr { get; } + + // --- + + delegate ushort _glGetStageIndexNV(ShaderType shadertype); + [GlEntryPoint("glGetStageIndexNV")] + _glGetStageIndexNV _GetStageIndexNV { get; } + + // --- + + delegate IntPtr _glGetString(StringName name); + [GlEntryPoint("glGetString")] + _glGetString _GetString { get; } + + // --- + + delegate IntPtr _glGetStringi(StringName name, uint index); + [GlEntryPoint("glGetStringi")] + _glGetStringi _GetStringi { get; } + + // --- + + delegate uint _glGetSubroutineIndex(uint program, ShaderType shadertype, string name); + [GlEntryPoint("glGetSubroutineIndex")] + _glGetSubroutineIndex _GetSubroutineIndex { get; } + + delegate uint _glGetSubroutineIndex_ptr(uint program, ShaderType shadertype, void* name); + [GlEntryPoint("glGetSubroutineIndex")] + _glGetSubroutineIndex_ptr _GetSubroutineIndex_ptr { get; } + + delegate uint _glGetSubroutineIndex_intptr(uint program, ShaderType shadertype, IntPtr name); + [GlEntryPoint("glGetSubroutineIndex")] + _glGetSubroutineIndex_intptr _GetSubroutineIndex_intptr { get; } + + // --- + + delegate int _glGetSubroutineUniformLocation(uint program, ShaderType shadertype, string name); + [GlEntryPoint("glGetSubroutineUniformLocation")] + _glGetSubroutineUniformLocation _GetSubroutineUniformLocation { get; } + + delegate int _glGetSubroutineUniformLocation_ptr(uint program, ShaderType shadertype, void* name); + [GlEntryPoint("glGetSubroutineUniformLocation")] + _glGetSubroutineUniformLocation_ptr _GetSubroutineUniformLocation_ptr { get; } + + delegate int _glGetSubroutineUniformLocation_intptr(uint program, ShaderType shadertype, IntPtr name); + [GlEntryPoint("glGetSubroutineUniformLocation")] + _glGetSubroutineUniformLocation_intptr _GetSubroutineUniformLocation_intptr { get; } + + // --- + + delegate void _glGetSynciv(int sync, SyncParameterName pname, int count, out int length, int[] values); + [GlEntryPoint("glGetSynciv")] + _glGetSynciv _GetSynciv { get; } + + delegate void _glGetSynciv_ptr(int sync, SyncParameterName pname, int count, out int length, void* values); + [GlEntryPoint("glGetSynciv")] + _glGetSynciv_ptr _GetSynciv_ptr { get; } + + delegate void _glGetSynciv_intptr(int sync, SyncParameterName pname, int count, out int length, IntPtr values); + [GlEntryPoint("glGetSynciv")] + _glGetSynciv_intptr _GetSynciv_intptr { get; } + + // --- + + delegate void _glGetSyncivAPPLE(int sync, SyncParameterName pname, int count, int[] length, int[] values); + [GlEntryPoint("glGetSyncivAPPLE")] + _glGetSyncivAPPLE _GetSyncivAPPLE { get; } + + delegate void _glGetSyncivAPPLE_ptr(int sync, SyncParameterName pname, int count, void* length, void* values); + [GlEntryPoint("glGetSyncivAPPLE")] + _glGetSyncivAPPLE_ptr _GetSyncivAPPLE_ptr { get; } + + delegate void _glGetSyncivAPPLE_intptr(int sync, SyncParameterName pname, int count, IntPtr length, IntPtr values); + [GlEntryPoint("glGetSyncivAPPLE")] + _glGetSyncivAPPLE_intptr _GetSyncivAPPLE_intptr { get; } + + // --- + + delegate void _glGetTexBumpParameterfvATI(GetTexBumpParameterATI pname, float[] param); + [GlEntryPoint("glGetTexBumpParameterfvATI")] + _glGetTexBumpParameterfvATI _GetTexBumpParameterfvATI { get; } + + delegate void _glGetTexBumpParameterfvATI_ptr(GetTexBumpParameterATI pname, void* param); + [GlEntryPoint("glGetTexBumpParameterfvATI")] + _glGetTexBumpParameterfvATI_ptr _GetTexBumpParameterfvATI_ptr { get; } + + delegate void _glGetTexBumpParameterfvATI_intptr(GetTexBumpParameterATI pname, IntPtr param); + [GlEntryPoint("glGetTexBumpParameterfvATI")] + _glGetTexBumpParameterfvATI_intptr _GetTexBumpParameterfvATI_intptr { get; } + + // --- + + delegate void _glGetTexBumpParameterivATI(GetTexBumpParameterATI pname, int[] param); + [GlEntryPoint("glGetTexBumpParameterivATI")] + _glGetTexBumpParameterivATI _GetTexBumpParameterivATI { get; } + + delegate void _glGetTexBumpParameterivATI_ptr(GetTexBumpParameterATI pname, void* param); + [GlEntryPoint("glGetTexBumpParameterivATI")] + _glGetTexBumpParameterivATI_ptr _GetTexBumpParameterivATI_ptr { get; } + + delegate void _glGetTexBumpParameterivATI_intptr(GetTexBumpParameterATI pname, IntPtr param); + [GlEntryPoint("glGetTexBumpParameterivATI")] + _glGetTexBumpParameterivATI_intptr _GetTexBumpParameterivATI_intptr { get; } + + // --- + + delegate void _glGetTexEnvfv(TextureEnvTarget target, TextureEnvParameter pname, float[] @params); + [GlEntryPoint("glGetTexEnvfv")] + _glGetTexEnvfv _GetTexEnvfv { get; } + + delegate void _glGetTexEnvfv_ptr(TextureEnvTarget target, TextureEnvParameter pname, void* @params); + [GlEntryPoint("glGetTexEnvfv")] + _glGetTexEnvfv_ptr _GetTexEnvfv_ptr { get; } + + delegate void _glGetTexEnvfv_intptr(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexEnvfv")] + _glGetTexEnvfv_intptr _GetTexEnvfv_intptr { get; } + + // --- + + delegate void _glGetTexEnviv(TextureEnvTarget target, TextureEnvParameter pname, int[] @params); + [GlEntryPoint("glGetTexEnviv")] + _glGetTexEnviv _GetTexEnviv { get; } + + delegate void _glGetTexEnviv_ptr(TextureEnvTarget target, TextureEnvParameter pname, void* @params); + [GlEntryPoint("glGetTexEnviv")] + _glGetTexEnviv_ptr _GetTexEnviv_ptr { get; } + + delegate void _glGetTexEnviv_intptr(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexEnviv")] + _glGetTexEnviv_intptr _GetTexEnviv_intptr { get; } + + // --- + + delegate void _glGetTexEnvxv(TextureEnvTarget target, TextureEnvParameter pname, float[] @params); + [GlEntryPoint("glGetTexEnvxv")] + _glGetTexEnvxv _GetTexEnvxv { get; } + + delegate void _glGetTexEnvxv_ptr(TextureEnvTarget target, TextureEnvParameter pname, void* @params); + [GlEntryPoint("glGetTexEnvxv")] + _glGetTexEnvxv_ptr _GetTexEnvxv_ptr { get; } + + delegate void _glGetTexEnvxv_intptr(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexEnvxv")] + _glGetTexEnvxv_intptr _GetTexEnvxv_intptr { get; } + + // --- + + delegate void _glGetTexEnvxvOES(TextureEnvTarget target, TextureEnvParameter pname, float[] @params); + [GlEntryPoint("glGetTexEnvxvOES")] + _glGetTexEnvxvOES _GetTexEnvxvOES { get; } + + delegate void _glGetTexEnvxvOES_ptr(TextureEnvTarget target, TextureEnvParameter pname, void* @params); + [GlEntryPoint("glGetTexEnvxvOES")] + _glGetTexEnvxvOES_ptr _GetTexEnvxvOES_ptr { get; } + + delegate void _glGetTexEnvxvOES_intptr(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexEnvxvOES")] + _glGetTexEnvxvOES_intptr _GetTexEnvxvOES_intptr { get; } + + // --- + + delegate void _glGetTexFilterFuncSGIS(TextureTarget target, TextureFilterSGIS filter, float[] weights); + [GlEntryPoint("glGetTexFilterFuncSGIS")] + _glGetTexFilterFuncSGIS _GetTexFilterFuncSGIS { get; } + + delegate void _glGetTexFilterFuncSGIS_ptr(TextureTarget target, TextureFilterSGIS filter, void* weights); + [GlEntryPoint("glGetTexFilterFuncSGIS")] + _glGetTexFilterFuncSGIS_ptr _GetTexFilterFuncSGIS_ptr { get; } + + delegate void _glGetTexFilterFuncSGIS_intptr(TextureTarget target, TextureFilterSGIS filter, IntPtr weights); + [GlEntryPoint("glGetTexFilterFuncSGIS")] + _glGetTexFilterFuncSGIS_intptr _GetTexFilterFuncSGIS_intptr { get; } + + // --- + + delegate void _glGetTexGendv(TextureCoordName coord, TextureGenParameter pname, double[] @params); + [GlEntryPoint("glGetTexGendv")] + _glGetTexGendv _GetTexGendv { get; } + + delegate void _glGetTexGendv_ptr(TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glGetTexGendv")] + _glGetTexGendv_ptr _GetTexGendv_ptr { get; } + + delegate void _glGetTexGendv_intptr(TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexGendv")] + _glGetTexGendv_intptr _GetTexGendv_intptr { get; } + + // --- + + delegate void _glGetTexGenfv(TextureCoordName coord, TextureGenParameter pname, float[] @params); + [GlEntryPoint("glGetTexGenfv")] + _glGetTexGenfv _GetTexGenfv { get; } + + delegate void _glGetTexGenfv_ptr(TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glGetTexGenfv")] + _glGetTexGenfv_ptr _GetTexGenfv_ptr { get; } + + delegate void _glGetTexGenfv_intptr(TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexGenfv")] + _glGetTexGenfv_intptr _GetTexGenfv_intptr { get; } + + // --- + + delegate void _glGetTexGenfvOES(TextureCoordName coord, TextureGenParameter pname, float[] @params); + [GlEntryPoint("glGetTexGenfvOES")] + _glGetTexGenfvOES _GetTexGenfvOES { get; } + + delegate void _glGetTexGenfvOES_ptr(TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glGetTexGenfvOES")] + _glGetTexGenfvOES_ptr _GetTexGenfvOES_ptr { get; } + + delegate void _glGetTexGenfvOES_intptr(TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexGenfvOES")] + _glGetTexGenfvOES_intptr _GetTexGenfvOES_intptr { get; } + + // --- + + delegate void _glGetTexGeniv(TextureCoordName coord, TextureGenParameter pname, int[] @params); + [GlEntryPoint("glGetTexGeniv")] + _glGetTexGeniv _GetTexGeniv { get; } + + delegate void _glGetTexGeniv_ptr(TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glGetTexGeniv")] + _glGetTexGeniv_ptr _GetTexGeniv_ptr { get; } + + delegate void _glGetTexGeniv_intptr(TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexGeniv")] + _glGetTexGeniv_intptr _GetTexGeniv_intptr { get; } + + // --- + + delegate void _glGetTexGenivOES(TextureCoordName coord, TextureGenParameter pname, int[] @params); + [GlEntryPoint("glGetTexGenivOES")] + _glGetTexGenivOES _GetTexGenivOES { get; } + + delegate void _glGetTexGenivOES_ptr(TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glGetTexGenivOES")] + _glGetTexGenivOES_ptr _GetTexGenivOES_ptr { get; } + + delegate void _glGetTexGenivOES_intptr(TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexGenivOES")] + _glGetTexGenivOES_intptr _GetTexGenivOES_intptr { get; } + + // --- + + delegate void _glGetTexGenxvOES(TextureCoordName coord, TextureGenParameter pname, float[] @params); + [GlEntryPoint("glGetTexGenxvOES")] + _glGetTexGenxvOES _GetTexGenxvOES { get; } + + delegate void _glGetTexGenxvOES_ptr(TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glGetTexGenxvOES")] + _glGetTexGenxvOES_ptr _GetTexGenxvOES_ptr { get; } + + delegate void _glGetTexGenxvOES_intptr(TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexGenxvOES")] + _glGetTexGenxvOES_intptr _GetTexGenxvOES_intptr { get; } + + // --- + + delegate void _glGetTexImage(TextureTarget target, int level, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glGetTexImage")] + _glGetTexImage _GetTexImage { get; } + + // --- + + delegate void _glGetTexLevelParameterfv(TextureTarget target, int level, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glGetTexLevelParameterfv")] + _glGetTexLevelParameterfv _GetTexLevelParameterfv { get; } + + delegate void _glGetTexLevelParameterfv_ptr(TextureTarget target, int level, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexLevelParameterfv")] + _glGetTexLevelParameterfv_ptr _GetTexLevelParameterfv_ptr { get; } + + delegate void _glGetTexLevelParameterfv_intptr(TextureTarget target, int level, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexLevelParameterfv")] + _glGetTexLevelParameterfv_intptr _GetTexLevelParameterfv_intptr { get; } + + // --- + + delegate void _glGetTexLevelParameteriv(TextureTarget target, int level, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetTexLevelParameteriv")] + _glGetTexLevelParameteriv _GetTexLevelParameteriv { get; } + + delegate void _glGetTexLevelParameteriv_ptr(TextureTarget target, int level, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexLevelParameteriv")] + _glGetTexLevelParameteriv_ptr _GetTexLevelParameteriv_ptr { get; } + + delegate void _glGetTexLevelParameteriv_intptr(TextureTarget target, int level, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexLevelParameteriv")] + _glGetTexLevelParameteriv_intptr _GetTexLevelParameteriv_intptr { get; } + + // --- + + delegate void _glGetTexLevelParameterxvOES(TextureTarget target, int level, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glGetTexLevelParameterxvOES")] + _glGetTexLevelParameterxvOES _GetTexLevelParameterxvOES { get; } + + delegate void _glGetTexLevelParameterxvOES_ptr(TextureTarget target, int level, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexLevelParameterxvOES")] + _glGetTexLevelParameterxvOES_ptr _GetTexLevelParameterxvOES_ptr { get; } + + delegate void _glGetTexLevelParameterxvOES_intptr(TextureTarget target, int level, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexLevelParameterxvOES")] + _glGetTexLevelParameterxvOES_intptr _GetTexLevelParameterxvOES_intptr { get; } + + // --- + + delegate void _glGetTexParameterIiv(TextureTarget target, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetTexParameterIiv")] + _glGetTexParameterIiv _GetTexParameterIiv { get; } + + delegate void _glGetTexParameterIiv_ptr(TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexParameterIiv")] + _glGetTexParameterIiv_ptr _GetTexParameterIiv_ptr { get; } + + delegate void _glGetTexParameterIiv_intptr(TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexParameterIiv")] + _glGetTexParameterIiv_intptr _GetTexParameterIiv_intptr { get; } + + // --- + + delegate void _glGetTexParameterIivEXT(TextureTarget target, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetTexParameterIivEXT")] + _glGetTexParameterIivEXT _GetTexParameterIivEXT { get; } + + delegate void _glGetTexParameterIivEXT_ptr(TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexParameterIivEXT")] + _glGetTexParameterIivEXT_ptr _GetTexParameterIivEXT_ptr { get; } + + delegate void _glGetTexParameterIivEXT_intptr(TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexParameterIivEXT")] + _glGetTexParameterIivEXT_intptr _GetTexParameterIivEXT_intptr { get; } + + // --- + + delegate void _glGetTexParameterIivOES(TextureTarget target, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetTexParameterIivOES")] + _glGetTexParameterIivOES _GetTexParameterIivOES { get; } + + delegate void _glGetTexParameterIivOES_ptr(TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexParameterIivOES")] + _glGetTexParameterIivOES_ptr _GetTexParameterIivOES_ptr { get; } + + delegate void _glGetTexParameterIivOES_intptr(TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexParameterIivOES")] + _glGetTexParameterIivOES_intptr _GetTexParameterIivOES_intptr { get; } + + // --- + + delegate void _glGetTexParameterIuiv(TextureTarget target, GetTextureParameter pname, uint[] @params); + [GlEntryPoint("glGetTexParameterIuiv")] + _glGetTexParameterIuiv _GetTexParameterIuiv { get; } + + delegate void _glGetTexParameterIuiv_ptr(TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexParameterIuiv")] + _glGetTexParameterIuiv_ptr _GetTexParameterIuiv_ptr { get; } + + delegate void _glGetTexParameterIuiv_intptr(TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexParameterIuiv")] + _glGetTexParameterIuiv_intptr _GetTexParameterIuiv_intptr { get; } + + // --- + + delegate void _glGetTexParameterIuivEXT(TextureTarget target, GetTextureParameter pname, uint[] @params); + [GlEntryPoint("glGetTexParameterIuivEXT")] + _glGetTexParameterIuivEXT _GetTexParameterIuivEXT { get; } + + delegate void _glGetTexParameterIuivEXT_ptr(TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexParameterIuivEXT")] + _glGetTexParameterIuivEXT_ptr _GetTexParameterIuivEXT_ptr { get; } + + delegate void _glGetTexParameterIuivEXT_intptr(TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexParameterIuivEXT")] + _glGetTexParameterIuivEXT_intptr _GetTexParameterIuivEXT_intptr { get; } + + // --- + + delegate void _glGetTexParameterIuivOES(TextureTarget target, GetTextureParameter pname, uint[] @params); + [GlEntryPoint("glGetTexParameterIuivOES")] + _glGetTexParameterIuivOES _GetTexParameterIuivOES { get; } + + delegate void _glGetTexParameterIuivOES_ptr(TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexParameterIuivOES")] + _glGetTexParameterIuivOES_ptr _GetTexParameterIuivOES_ptr { get; } + + delegate void _glGetTexParameterIuivOES_intptr(TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexParameterIuivOES")] + _glGetTexParameterIuivOES_intptr _GetTexParameterIuivOES_intptr { get; } + + // --- + + delegate void _glGetTexParameterPointervAPPLE(int target, int pname, IntPtr* @params); + [GlEntryPoint("glGetTexParameterPointervAPPLE")] + _glGetTexParameterPointervAPPLE _GetTexParameterPointervAPPLE { get; } + + // --- + + delegate void _glGetTexParameterfv(TextureTarget target, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glGetTexParameterfv")] + _glGetTexParameterfv _GetTexParameterfv { get; } + + delegate void _glGetTexParameterfv_ptr(TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexParameterfv")] + _glGetTexParameterfv_ptr _GetTexParameterfv_ptr { get; } + + delegate void _glGetTexParameterfv_intptr(TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexParameterfv")] + _glGetTexParameterfv_intptr _GetTexParameterfv_intptr { get; } + + // --- + + delegate void _glGetTexParameteriv(TextureTarget target, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetTexParameteriv")] + _glGetTexParameteriv _GetTexParameteriv { get; } + + delegate void _glGetTexParameteriv_ptr(TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexParameteriv")] + _glGetTexParameteriv_ptr _GetTexParameteriv_ptr { get; } + + delegate void _glGetTexParameteriv_intptr(TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexParameteriv")] + _glGetTexParameteriv_intptr _GetTexParameteriv_intptr { get; } + + // --- + + delegate void _glGetTexParameterxv(TextureTarget target, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glGetTexParameterxv")] + _glGetTexParameterxv _GetTexParameterxv { get; } + + delegate void _glGetTexParameterxv_ptr(TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexParameterxv")] + _glGetTexParameterxv_ptr _GetTexParameterxv_ptr { get; } + + delegate void _glGetTexParameterxv_intptr(TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexParameterxv")] + _glGetTexParameterxv_intptr _GetTexParameterxv_intptr { get; } + + // --- + + delegate void _glGetTexParameterxvOES(TextureTarget target, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glGetTexParameterxvOES")] + _glGetTexParameterxvOES _GetTexParameterxvOES { get; } + + delegate void _glGetTexParameterxvOES_ptr(TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTexParameterxvOES")] + _glGetTexParameterxvOES_ptr _GetTexParameterxvOES_ptr { get; } + + delegate void _glGetTexParameterxvOES_intptr(TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTexParameterxvOES")] + _glGetTexParameterxvOES_intptr _GetTexParameterxvOES_intptr { get; } + + // --- + + delegate UInt64 _glGetTextureHandleARB(uint texture); + [GlEntryPoint("glGetTextureHandleARB")] + _glGetTextureHandleARB _GetTextureHandleARB { get; } + + // --- + + delegate UInt64 _glGetTextureHandleIMG(uint texture); + [GlEntryPoint("glGetTextureHandleIMG")] + _glGetTextureHandleIMG _GetTextureHandleIMG { get; } + + // --- + + delegate UInt64 _glGetTextureHandleNV(uint texture); + [GlEntryPoint("glGetTextureHandleNV")] + _glGetTextureHandleNV _GetTextureHandleNV { get; } + + // --- + + delegate void _glGetTextureImage(uint texture, int level, PixelFormat format, PixelType type, int bufSize, IntPtr pixels); + [GlEntryPoint("glGetTextureImage")] + _glGetTextureImage _GetTextureImage { get; } + + // --- + + delegate void _glGetTextureImageEXT(uint texture, TextureTarget target, int level, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glGetTextureImageEXT")] + _glGetTextureImageEXT _GetTextureImageEXT { get; } + + // --- + + delegate void _glGetTextureLevelParameterfv(uint texture, int level, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glGetTextureLevelParameterfv")] + _glGetTextureLevelParameterfv _GetTextureLevelParameterfv { get; } + + delegate void _glGetTextureLevelParameterfv_ptr(uint texture, int level, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTextureLevelParameterfv")] + _glGetTextureLevelParameterfv_ptr _GetTextureLevelParameterfv_ptr { get; } + + delegate void _glGetTextureLevelParameterfv_intptr(uint texture, int level, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTextureLevelParameterfv")] + _glGetTextureLevelParameterfv_intptr _GetTextureLevelParameterfv_intptr { get; } + + // --- + + delegate void _glGetTextureLevelParameterfvEXT(uint texture, TextureTarget target, int level, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glGetTextureLevelParameterfvEXT")] + _glGetTextureLevelParameterfvEXT _GetTextureLevelParameterfvEXT { get; } + + delegate void _glGetTextureLevelParameterfvEXT_ptr(uint texture, TextureTarget target, int level, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTextureLevelParameterfvEXT")] + _glGetTextureLevelParameterfvEXT_ptr _GetTextureLevelParameterfvEXT_ptr { get; } + + delegate void _glGetTextureLevelParameterfvEXT_intptr(uint texture, TextureTarget target, int level, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTextureLevelParameterfvEXT")] + _glGetTextureLevelParameterfvEXT_intptr _GetTextureLevelParameterfvEXT_intptr { get; } + + // --- + + delegate void _glGetTextureLevelParameteriv(uint texture, int level, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetTextureLevelParameteriv")] + _glGetTextureLevelParameteriv _GetTextureLevelParameteriv { get; } + + delegate void _glGetTextureLevelParameteriv_ptr(uint texture, int level, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTextureLevelParameteriv")] + _glGetTextureLevelParameteriv_ptr _GetTextureLevelParameteriv_ptr { get; } + + delegate void _glGetTextureLevelParameteriv_intptr(uint texture, int level, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTextureLevelParameteriv")] + _glGetTextureLevelParameteriv_intptr _GetTextureLevelParameteriv_intptr { get; } + + // --- + + delegate void _glGetTextureLevelParameterivEXT(uint texture, TextureTarget target, int level, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetTextureLevelParameterivEXT")] + _glGetTextureLevelParameterivEXT _GetTextureLevelParameterivEXT { get; } + + delegate void _glGetTextureLevelParameterivEXT_ptr(uint texture, TextureTarget target, int level, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTextureLevelParameterivEXT")] + _glGetTextureLevelParameterivEXT_ptr _GetTextureLevelParameterivEXT_ptr { get; } + + delegate void _glGetTextureLevelParameterivEXT_intptr(uint texture, TextureTarget target, int level, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTextureLevelParameterivEXT")] + _glGetTextureLevelParameterivEXT_intptr _GetTextureLevelParameterivEXT_intptr { get; } + + // --- + + delegate void _glGetTextureParameterIiv(uint texture, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetTextureParameterIiv")] + _glGetTextureParameterIiv _GetTextureParameterIiv { get; } + + delegate void _glGetTextureParameterIiv_ptr(uint texture, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTextureParameterIiv")] + _glGetTextureParameterIiv_ptr _GetTextureParameterIiv_ptr { get; } + + delegate void _glGetTextureParameterIiv_intptr(uint texture, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTextureParameterIiv")] + _glGetTextureParameterIiv_intptr _GetTextureParameterIiv_intptr { get; } + + // --- + + delegate void _glGetTextureParameterIivEXT(uint texture, TextureTarget target, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetTextureParameterIivEXT")] + _glGetTextureParameterIivEXT _GetTextureParameterIivEXT { get; } + + delegate void _glGetTextureParameterIivEXT_ptr(uint texture, TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTextureParameterIivEXT")] + _glGetTextureParameterIivEXT_ptr _GetTextureParameterIivEXT_ptr { get; } + + delegate void _glGetTextureParameterIivEXT_intptr(uint texture, TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTextureParameterIivEXT")] + _glGetTextureParameterIivEXT_intptr _GetTextureParameterIivEXT_intptr { get; } + + // --- + + delegate void _glGetTextureParameterIuiv(uint texture, GetTextureParameter pname, uint[] @params); + [GlEntryPoint("glGetTextureParameterIuiv")] + _glGetTextureParameterIuiv _GetTextureParameterIuiv { get; } + + delegate void _glGetTextureParameterIuiv_ptr(uint texture, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTextureParameterIuiv")] + _glGetTextureParameterIuiv_ptr _GetTextureParameterIuiv_ptr { get; } + + delegate void _glGetTextureParameterIuiv_intptr(uint texture, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTextureParameterIuiv")] + _glGetTextureParameterIuiv_intptr _GetTextureParameterIuiv_intptr { get; } + + // --- + + delegate void _glGetTextureParameterIuivEXT(uint texture, TextureTarget target, GetTextureParameter pname, uint[] @params); + [GlEntryPoint("glGetTextureParameterIuivEXT")] + _glGetTextureParameterIuivEXT _GetTextureParameterIuivEXT { get; } + + delegate void _glGetTextureParameterIuivEXT_ptr(uint texture, TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTextureParameterIuivEXT")] + _glGetTextureParameterIuivEXT_ptr _GetTextureParameterIuivEXT_ptr { get; } + + delegate void _glGetTextureParameterIuivEXT_intptr(uint texture, TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTextureParameterIuivEXT")] + _glGetTextureParameterIuivEXT_intptr _GetTextureParameterIuivEXT_intptr { get; } + + // --- + + delegate void _glGetTextureParameterfv(uint texture, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glGetTextureParameterfv")] + _glGetTextureParameterfv _GetTextureParameterfv { get; } + + delegate void _glGetTextureParameterfv_ptr(uint texture, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTextureParameterfv")] + _glGetTextureParameterfv_ptr _GetTextureParameterfv_ptr { get; } + + delegate void _glGetTextureParameterfv_intptr(uint texture, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTextureParameterfv")] + _glGetTextureParameterfv_intptr _GetTextureParameterfv_intptr { get; } + + // --- + + delegate void _glGetTextureParameterfvEXT(uint texture, TextureTarget target, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glGetTextureParameterfvEXT")] + _glGetTextureParameterfvEXT _GetTextureParameterfvEXT { get; } + + delegate void _glGetTextureParameterfvEXT_ptr(uint texture, TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTextureParameterfvEXT")] + _glGetTextureParameterfvEXT_ptr _GetTextureParameterfvEXT_ptr { get; } + + delegate void _glGetTextureParameterfvEXT_intptr(uint texture, TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTextureParameterfvEXT")] + _glGetTextureParameterfvEXT_intptr _GetTextureParameterfvEXT_intptr { get; } + + // --- + + delegate void _glGetTextureParameteriv(uint texture, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetTextureParameteriv")] + _glGetTextureParameteriv _GetTextureParameteriv { get; } + + delegate void _glGetTextureParameteriv_ptr(uint texture, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTextureParameteriv")] + _glGetTextureParameteriv_ptr _GetTextureParameteriv_ptr { get; } + + delegate void _glGetTextureParameteriv_intptr(uint texture, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTextureParameteriv")] + _glGetTextureParameteriv_intptr _GetTextureParameteriv_intptr { get; } + + // --- + + delegate void _glGetTextureParameterivEXT(uint texture, TextureTarget target, GetTextureParameter pname, int[] @params); + [GlEntryPoint("glGetTextureParameterivEXT")] + _glGetTextureParameterivEXT _GetTextureParameterivEXT { get; } + + delegate void _glGetTextureParameterivEXT_ptr(uint texture, TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glGetTextureParameterivEXT")] + _glGetTextureParameterivEXT_ptr _GetTextureParameterivEXT_ptr { get; } + + delegate void _glGetTextureParameterivEXT_intptr(uint texture, TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glGetTextureParameterivEXT")] + _glGetTextureParameterivEXT_intptr _GetTextureParameterivEXT_intptr { get; } + + // --- + + delegate UInt64 _glGetTextureSamplerHandleARB(uint texture, uint sampler); + [GlEntryPoint("glGetTextureSamplerHandleARB")] + _glGetTextureSamplerHandleARB _GetTextureSamplerHandleARB { get; } + + // --- + + delegate UInt64 _glGetTextureSamplerHandleIMG(uint texture, uint sampler); + [GlEntryPoint("glGetTextureSamplerHandleIMG")] + _glGetTextureSamplerHandleIMG _GetTextureSamplerHandleIMG { get; } + + // --- + + delegate UInt64 _glGetTextureSamplerHandleNV(uint texture, uint sampler); + [GlEntryPoint("glGetTextureSamplerHandleNV")] + _glGetTextureSamplerHandleNV _GetTextureSamplerHandleNV { get; } + + // --- + + delegate void _glGetTextureSubImage(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, int bufSize, IntPtr pixels); + [GlEntryPoint("glGetTextureSubImage")] + _glGetTextureSubImage _GetTextureSubImage { get; } + + // --- + + delegate void _glGetTrackMatrixivNV(VertexAttribEnumNV target, uint address, VertexAttribEnumNV pname, out int @params); + [GlEntryPoint("glGetTrackMatrixivNV")] + _glGetTrackMatrixivNV _GetTrackMatrixivNV { get; } + + // --- + + delegate void _glGetTransformFeedbackVarying(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, string name); + [GlEntryPoint("glGetTransformFeedbackVarying")] + _glGetTransformFeedbackVarying _GetTransformFeedbackVarying { get; } + + delegate void _glGetTransformFeedbackVarying_ptr(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, void* name); + [GlEntryPoint("glGetTransformFeedbackVarying")] + _glGetTransformFeedbackVarying_ptr _GetTransformFeedbackVarying_ptr { get; } + + delegate void _glGetTransformFeedbackVarying_intptr(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, IntPtr name); + [GlEntryPoint("glGetTransformFeedbackVarying")] + _glGetTransformFeedbackVarying_intptr _GetTransformFeedbackVarying_intptr { get; } + + // --- + + delegate void _glGetTransformFeedbackVaryingEXT(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, string name); + [GlEntryPoint("glGetTransformFeedbackVaryingEXT")] + _glGetTransformFeedbackVaryingEXT _GetTransformFeedbackVaryingEXT { get; } + + delegate void _glGetTransformFeedbackVaryingEXT_ptr(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, void* name); + [GlEntryPoint("glGetTransformFeedbackVaryingEXT")] + _glGetTransformFeedbackVaryingEXT_ptr _GetTransformFeedbackVaryingEXT_ptr { get; } + + delegate void _glGetTransformFeedbackVaryingEXT_intptr(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, IntPtr name); + [GlEntryPoint("glGetTransformFeedbackVaryingEXT")] + _glGetTransformFeedbackVaryingEXT_intptr _GetTransformFeedbackVaryingEXT_intptr { get; } + + // --- + + delegate void _glGetTransformFeedbackVaryingNV(uint program, uint index, out int location); + [GlEntryPoint("glGetTransformFeedbackVaryingNV")] + _glGetTransformFeedbackVaryingNV _GetTransformFeedbackVaryingNV { get; } + + // --- + + delegate void _glGetTransformFeedbacki64_v(uint xfb, TransformFeedbackPName pname, uint index, Int64[] param); + [GlEntryPoint("glGetTransformFeedbacki64_v")] + _glGetTransformFeedbacki64_v _GetTransformFeedbacki64_v { get; } + + delegate void _glGetTransformFeedbacki64_v_ptr(uint xfb, TransformFeedbackPName pname, uint index, void* param); + [GlEntryPoint("glGetTransformFeedbacki64_v")] + _glGetTransformFeedbacki64_v_ptr _GetTransformFeedbacki64_v_ptr { get; } + + delegate void _glGetTransformFeedbacki64_v_intptr(uint xfb, TransformFeedbackPName pname, uint index, IntPtr param); + [GlEntryPoint("glGetTransformFeedbacki64_v")] + _glGetTransformFeedbacki64_v_intptr _GetTransformFeedbacki64_v_intptr { get; } + + // --- + + delegate void _glGetTransformFeedbacki_v(uint xfb, TransformFeedbackPName pname, uint index, int[] param); + [GlEntryPoint("glGetTransformFeedbacki_v")] + _glGetTransformFeedbacki_v _GetTransformFeedbacki_v { get; } + + delegate void _glGetTransformFeedbacki_v_ptr(uint xfb, TransformFeedbackPName pname, uint index, void* param); + [GlEntryPoint("glGetTransformFeedbacki_v")] + _glGetTransformFeedbacki_v_ptr _GetTransformFeedbacki_v_ptr { get; } + + delegate void _glGetTransformFeedbacki_v_intptr(uint xfb, TransformFeedbackPName pname, uint index, IntPtr param); + [GlEntryPoint("glGetTransformFeedbacki_v")] + _glGetTransformFeedbacki_v_intptr _GetTransformFeedbacki_v_intptr { get; } + + // --- + + delegate void _glGetTransformFeedbackiv(uint xfb, TransformFeedbackPName pname, int[] param); + [GlEntryPoint("glGetTransformFeedbackiv")] + _glGetTransformFeedbackiv _GetTransformFeedbackiv { get; } + + delegate void _glGetTransformFeedbackiv_ptr(uint xfb, TransformFeedbackPName pname, void* param); + [GlEntryPoint("glGetTransformFeedbackiv")] + _glGetTransformFeedbackiv_ptr _GetTransformFeedbackiv_ptr { get; } + + delegate void _glGetTransformFeedbackiv_intptr(uint xfb, TransformFeedbackPName pname, IntPtr param); + [GlEntryPoint("glGetTransformFeedbackiv")] + _glGetTransformFeedbackiv_intptr _GetTransformFeedbackiv_intptr { get; } + + // --- + + delegate void _glGetTranslatedShaderSourceANGLE(uint shader, int bufSize, out int length, string source); + [GlEntryPoint("glGetTranslatedShaderSourceANGLE")] + _glGetTranslatedShaderSourceANGLE _GetTranslatedShaderSourceANGLE { get; } + + delegate void _glGetTranslatedShaderSourceANGLE_ptr(uint shader, int bufSize, out int length, void* source); + [GlEntryPoint("glGetTranslatedShaderSourceANGLE")] + _glGetTranslatedShaderSourceANGLE_ptr _GetTranslatedShaderSourceANGLE_ptr { get; } + + delegate void _glGetTranslatedShaderSourceANGLE_intptr(uint shader, int bufSize, out int length, IntPtr source); + [GlEntryPoint("glGetTranslatedShaderSourceANGLE")] + _glGetTranslatedShaderSourceANGLE_intptr _GetTranslatedShaderSourceANGLE_intptr { get; } + + // --- + + delegate uint _glGetUniformBlockIndex(uint program, string uniformBlockName); + [GlEntryPoint("glGetUniformBlockIndex")] + _glGetUniformBlockIndex _GetUniformBlockIndex { get; } + + delegate uint _glGetUniformBlockIndex_ptr(uint program, void* uniformBlockName); + [GlEntryPoint("glGetUniformBlockIndex")] + _glGetUniformBlockIndex_ptr _GetUniformBlockIndex_ptr { get; } + + delegate uint _glGetUniformBlockIndex_intptr(uint program, IntPtr uniformBlockName); + [GlEntryPoint("glGetUniformBlockIndex")] + _glGetUniformBlockIndex_intptr _GetUniformBlockIndex_intptr { get; } + + // --- + + delegate int _glGetUniformBufferSizeEXT(uint program, int location); + [GlEntryPoint("glGetUniformBufferSizeEXT")] + _glGetUniformBufferSizeEXT _GetUniformBufferSizeEXT { get; } + + // --- + + delegate void _glGetUniformIndices(uint program, int uniformCount, string[] uniformNames, uint[] uniformIndices); + [GlEntryPoint("glGetUniformIndices")] + _glGetUniformIndices _GetUniformIndices { get; } + + delegate void _glGetUniformIndices_ptr(uint program, int uniformCount, void* uniformNames, void* uniformIndices); + [GlEntryPoint("glGetUniformIndices")] + _glGetUniformIndices_ptr _GetUniformIndices_ptr { get; } + + delegate void _glGetUniformIndices_intptr(uint program, int uniformCount, IntPtr uniformNames, IntPtr uniformIndices); + [GlEntryPoint("glGetUniformIndices")] + _glGetUniformIndices_intptr _GetUniformIndices_intptr { get; } + + // --- + + delegate int _glGetUniformLocation(uint program, string name); + [GlEntryPoint("glGetUniformLocation")] + _glGetUniformLocation _GetUniformLocation { get; } + + delegate int _glGetUniformLocation_ptr(uint program, void* name); + [GlEntryPoint("glGetUniformLocation")] + _glGetUniformLocation_ptr _GetUniformLocation_ptr { get; } + + delegate int _glGetUniformLocation_intptr(uint program, IntPtr name); + [GlEntryPoint("glGetUniformLocation")] + _glGetUniformLocation_intptr _GetUniformLocation_intptr { get; } + + // --- + + delegate int _glGetUniformLocationARB(int programObj, string name); + [GlEntryPoint("glGetUniformLocationARB")] + _glGetUniformLocationARB _GetUniformLocationARB { get; } + + delegate int _glGetUniformLocationARB_ptr(int programObj, void* name); + [GlEntryPoint("glGetUniformLocationARB")] + _glGetUniformLocationARB_ptr _GetUniformLocationARB_ptr { get; } + + delegate int _glGetUniformLocationARB_intptr(int programObj, IntPtr name); + [GlEntryPoint("glGetUniformLocationARB")] + _glGetUniformLocationARB_intptr _GetUniformLocationARB_intptr { get; } + + // --- + + delegate IntPtr _glGetUniformOffsetEXT(uint program, int location); + [GlEntryPoint("glGetUniformOffsetEXT")] + _glGetUniformOffsetEXT _GetUniformOffsetEXT { get; } + + // --- + + delegate void _glGetUniformSubroutineuiv(ShaderType shadertype, int location, out uint @params); + [GlEntryPoint("glGetUniformSubroutineuiv")] + _glGetUniformSubroutineuiv _GetUniformSubroutineuiv { get; } + + // --- + + delegate void _glGetUniformdv(uint program, int location, double[] @params); + [GlEntryPoint("glGetUniformdv")] + _glGetUniformdv _GetUniformdv { get; } + + delegate void _glGetUniformdv_ptr(uint program, int location, void* @params); + [GlEntryPoint("glGetUniformdv")] + _glGetUniformdv_ptr _GetUniformdv_ptr { get; } + + delegate void _glGetUniformdv_intptr(uint program, int location, IntPtr @params); + [GlEntryPoint("glGetUniformdv")] + _glGetUniformdv_intptr _GetUniformdv_intptr { get; } + + // --- + + delegate void _glGetUniformfv(uint program, int location, float[] @params); + [GlEntryPoint("glGetUniformfv")] + _glGetUniformfv _GetUniformfv { get; } + + delegate void _glGetUniformfv_ptr(uint program, int location, void* @params); + [GlEntryPoint("glGetUniformfv")] + _glGetUniformfv_ptr _GetUniformfv_ptr { get; } + + delegate void _glGetUniformfv_intptr(uint program, int location, IntPtr @params); + [GlEntryPoint("glGetUniformfv")] + _glGetUniformfv_intptr _GetUniformfv_intptr { get; } + + // --- + + delegate void _glGetUniformfvARB(int programObj, int location, float[] @params); + [GlEntryPoint("glGetUniformfvARB")] + _glGetUniformfvARB _GetUniformfvARB { get; } + + delegate void _glGetUniformfvARB_ptr(int programObj, int location, void* @params); + [GlEntryPoint("glGetUniformfvARB")] + _glGetUniformfvARB_ptr _GetUniformfvARB_ptr { get; } + + delegate void _glGetUniformfvARB_intptr(int programObj, int location, IntPtr @params); + [GlEntryPoint("glGetUniformfvARB")] + _glGetUniformfvARB_intptr _GetUniformfvARB_intptr { get; } + + // --- + + delegate void _glGetUniformi64vARB(uint program, int location, Int64[] @params); + [GlEntryPoint("glGetUniformi64vARB")] + _glGetUniformi64vARB _GetUniformi64vARB { get; } + + delegate void _glGetUniformi64vARB_ptr(uint program, int location, void* @params); + [GlEntryPoint("glGetUniformi64vARB")] + _glGetUniformi64vARB_ptr _GetUniformi64vARB_ptr { get; } + + delegate void _glGetUniformi64vARB_intptr(uint program, int location, IntPtr @params); + [GlEntryPoint("glGetUniformi64vARB")] + _glGetUniformi64vARB_intptr _GetUniformi64vARB_intptr { get; } + + // --- + + delegate void _glGetUniformi64vNV(uint program, int location, Int64[] @params); + [GlEntryPoint("glGetUniformi64vNV")] + _glGetUniformi64vNV _GetUniformi64vNV { get; } + + delegate void _glGetUniformi64vNV_ptr(uint program, int location, void* @params); + [GlEntryPoint("glGetUniformi64vNV")] + _glGetUniformi64vNV_ptr _GetUniformi64vNV_ptr { get; } + + delegate void _glGetUniformi64vNV_intptr(uint program, int location, IntPtr @params); + [GlEntryPoint("glGetUniformi64vNV")] + _glGetUniformi64vNV_intptr _GetUniformi64vNV_intptr { get; } + + // --- + + delegate void _glGetUniformiv(uint program, int location, int[] @params); + [GlEntryPoint("glGetUniformiv")] + _glGetUniformiv _GetUniformiv { get; } + + delegate void _glGetUniformiv_ptr(uint program, int location, void* @params); + [GlEntryPoint("glGetUniformiv")] + _glGetUniformiv_ptr _GetUniformiv_ptr { get; } + + delegate void _glGetUniformiv_intptr(uint program, int location, IntPtr @params); + [GlEntryPoint("glGetUniformiv")] + _glGetUniformiv_intptr _GetUniformiv_intptr { get; } + + // --- + + delegate void _glGetUniformivARB(int programObj, int location, int[] @params); + [GlEntryPoint("glGetUniformivARB")] + _glGetUniformivARB _GetUniformivARB { get; } + + delegate void _glGetUniformivARB_ptr(int programObj, int location, void* @params); + [GlEntryPoint("glGetUniformivARB")] + _glGetUniformivARB_ptr _GetUniformivARB_ptr { get; } + + delegate void _glGetUniformivARB_intptr(int programObj, int location, IntPtr @params); + [GlEntryPoint("glGetUniformivARB")] + _glGetUniformivARB_intptr _GetUniformivARB_intptr { get; } + + // --- + + delegate void _glGetUniformui64vARB(uint program, int location, UInt64[] @params); + [GlEntryPoint("glGetUniformui64vARB")] + _glGetUniformui64vARB _GetUniformui64vARB { get; } + + delegate void _glGetUniformui64vARB_ptr(uint program, int location, void* @params); + [GlEntryPoint("glGetUniformui64vARB")] + _glGetUniformui64vARB_ptr _GetUniformui64vARB_ptr { get; } + + delegate void _glGetUniformui64vARB_intptr(uint program, int location, IntPtr @params); + [GlEntryPoint("glGetUniformui64vARB")] + _glGetUniformui64vARB_intptr _GetUniformui64vARB_intptr { get; } + + // --- + + delegate void _glGetUniformui64vNV(uint program, int location, UInt64[] @params); + [GlEntryPoint("glGetUniformui64vNV")] + _glGetUniformui64vNV _GetUniformui64vNV { get; } + + delegate void _glGetUniformui64vNV_ptr(uint program, int location, void* @params); + [GlEntryPoint("glGetUniformui64vNV")] + _glGetUniformui64vNV_ptr _GetUniformui64vNV_ptr { get; } + + delegate void _glGetUniformui64vNV_intptr(uint program, int location, IntPtr @params); + [GlEntryPoint("glGetUniformui64vNV")] + _glGetUniformui64vNV_intptr _GetUniformui64vNV_intptr { get; } + + // --- + + delegate void _glGetUniformuiv(uint program, int location, uint[] @params); + [GlEntryPoint("glGetUniformuiv")] + _glGetUniformuiv _GetUniformuiv { get; } + + delegate void _glGetUniformuiv_ptr(uint program, int location, void* @params); + [GlEntryPoint("glGetUniformuiv")] + _glGetUniformuiv_ptr _GetUniformuiv_ptr { get; } + + delegate void _glGetUniformuiv_intptr(uint program, int location, IntPtr @params); + [GlEntryPoint("glGetUniformuiv")] + _glGetUniformuiv_intptr _GetUniformuiv_intptr { get; } + + // --- + + delegate void _glGetUniformuivEXT(uint program, int location, uint[] @params); + [GlEntryPoint("glGetUniformuivEXT")] + _glGetUniformuivEXT _GetUniformuivEXT { get; } + + delegate void _glGetUniformuivEXT_ptr(uint program, int location, void* @params); + [GlEntryPoint("glGetUniformuivEXT")] + _glGetUniformuivEXT_ptr _GetUniformuivEXT_ptr { get; } + + delegate void _glGetUniformuivEXT_intptr(uint program, int location, IntPtr @params); + [GlEntryPoint("glGetUniformuivEXT")] + _glGetUniformuivEXT_intptr _GetUniformuivEXT_intptr { get; } + + // --- + + delegate void _glGetUnsignedBytevEXT(GetPName pname, byte[] data); + [GlEntryPoint("glGetUnsignedBytevEXT")] + _glGetUnsignedBytevEXT _GetUnsignedBytevEXT { get; } + + delegate void _glGetUnsignedBytevEXT_ptr(GetPName pname, void* data); + [GlEntryPoint("glGetUnsignedBytevEXT")] + _glGetUnsignedBytevEXT_ptr _GetUnsignedBytevEXT_ptr { get; } + + delegate void _glGetUnsignedBytevEXT_intptr(GetPName pname, IntPtr data); + [GlEntryPoint("glGetUnsignedBytevEXT")] + _glGetUnsignedBytevEXT_intptr _GetUnsignedBytevEXT_intptr { get; } + + // --- + + delegate void _glGetUnsignedBytei_vEXT(int target, uint index, byte[] data); + [GlEntryPoint("glGetUnsignedBytei_vEXT")] + _glGetUnsignedBytei_vEXT _GetUnsignedBytei_vEXT { get; } + + delegate void _glGetUnsignedBytei_vEXT_ptr(int target, uint index, void* data); + [GlEntryPoint("glGetUnsignedBytei_vEXT")] + _glGetUnsignedBytei_vEXT_ptr _GetUnsignedBytei_vEXT_ptr { get; } + + delegate void _glGetUnsignedBytei_vEXT_intptr(int target, uint index, IntPtr data); + [GlEntryPoint("glGetUnsignedBytei_vEXT")] + _glGetUnsignedBytei_vEXT_intptr _GetUnsignedBytei_vEXT_intptr { get; } + + // --- + + delegate void _glGetVariantArrayObjectfvATI(uint id, ArrayObjectPNameATI pname, out float @params); + [GlEntryPoint("glGetVariantArrayObjectfvATI")] + _glGetVariantArrayObjectfvATI _GetVariantArrayObjectfvATI { get; } + + // --- + + delegate void _glGetVariantArrayObjectivATI(uint id, ArrayObjectPNameATI pname, out int @params); + [GlEntryPoint("glGetVariantArrayObjectivATI")] + _glGetVariantArrayObjectivATI _GetVariantArrayObjectivATI { get; } + + // --- + + delegate void _glGetVariantBooleanvEXT(uint id, GetVariantValueEXT value, bool[] data); + [GlEntryPoint("glGetVariantBooleanvEXT")] + _glGetVariantBooleanvEXT _GetVariantBooleanvEXT { get; } + + delegate void _glGetVariantBooleanvEXT_ptr(uint id, GetVariantValueEXT value, void* data); + [GlEntryPoint("glGetVariantBooleanvEXT")] + _glGetVariantBooleanvEXT_ptr _GetVariantBooleanvEXT_ptr { get; } + + delegate void _glGetVariantBooleanvEXT_intptr(uint id, GetVariantValueEXT value, IntPtr data); + [GlEntryPoint("glGetVariantBooleanvEXT")] + _glGetVariantBooleanvEXT_intptr _GetVariantBooleanvEXT_intptr { get; } + + // --- + + delegate void _glGetVariantFloatvEXT(uint id, GetVariantValueEXT value, float[] data); + [GlEntryPoint("glGetVariantFloatvEXT")] + _glGetVariantFloatvEXT _GetVariantFloatvEXT { get; } + + delegate void _glGetVariantFloatvEXT_ptr(uint id, GetVariantValueEXT value, void* data); + [GlEntryPoint("glGetVariantFloatvEXT")] + _glGetVariantFloatvEXT_ptr _GetVariantFloatvEXT_ptr { get; } + + delegate void _glGetVariantFloatvEXT_intptr(uint id, GetVariantValueEXT value, IntPtr data); + [GlEntryPoint("glGetVariantFloatvEXT")] + _glGetVariantFloatvEXT_intptr _GetVariantFloatvEXT_intptr { get; } + + // --- + + delegate void _glGetVariantIntegervEXT(uint id, GetVariantValueEXT value, int[] data); + [GlEntryPoint("glGetVariantIntegervEXT")] + _glGetVariantIntegervEXT _GetVariantIntegervEXT { get; } + + delegate void _glGetVariantIntegervEXT_ptr(uint id, GetVariantValueEXT value, void* data); + [GlEntryPoint("glGetVariantIntegervEXT")] + _glGetVariantIntegervEXT_ptr _GetVariantIntegervEXT_ptr { get; } + + delegate void _glGetVariantIntegervEXT_intptr(uint id, GetVariantValueEXT value, IntPtr data); + [GlEntryPoint("glGetVariantIntegervEXT")] + _glGetVariantIntegervEXT_intptr _GetVariantIntegervEXT_intptr { get; } + + // --- + + delegate void _glGetVariantPointervEXT(uint id, GetVariantValueEXT value, IntPtr* data); + [GlEntryPoint("glGetVariantPointervEXT")] + _glGetVariantPointervEXT _GetVariantPointervEXT { get; } + + // --- + + delegate int _glGetVaryingLocationNV(uint program, string name); + [GlEntryPoint("glGetVaryingLocationNV")] + _glGetVaryingLocationNV _GetVaryingLocationNV { get; } + + delegate int _glGetVaryingLocationNV_ptr(uint program, void* name); + [GlEntryPoint("glGetVaryingLocationNV")] + _glGetVaryingLocationNV_ptr _GetVaryingLocationNV_ptr { get; } + + delegate int _glGetVaryingLocationNV_intptr(uint program, IntPtr name); + [GlEntryPoint("glGetVaryingLocationNV")] + _glGetVaryingLocationNV_intptr _GetVaryingLocationNV_intptr { get; } + + // --- + + delegate void _glGetVertexArrayIndexed64iv(uint vaobj, uint index, VertexArrayPName pname, Int64[] param); + [GlEntryPoint("glGetVertexArrayIndexed64iv")] + _glGetVertexArrayIndexed64iv _GetVertexArrayIndexed64iv { get; } + + delegate void _glGetVertexArrayIndexed64iv_ptr(uint vaobj, uint index, VertexArrayPName pname, void* param); + [GlEntryPoint("glGetVertexArrayIndexed64iv")] + _glGetVertexArrayIndexed64iv_ptr _GetVertexArrayIndexed64iv_ptr { get; } + + delegate void _glGetVertexArrayIndexed64iv_intptr(uint vaobj, uint index, VertexArrayPName pname, IntPtr param); + [GlEntryPoint("glGetVertexArrayIndexed64iv")] + _glGetVertexArrayIndexed64iv_intptr _GetVertexArrayIndexed64iv_intptr { get; } + + // --- + + delegate void _glGetVertexArrayIndexediv(uint vaobj, uint index, VertexArrayPName pname, int[] param); + [GlEntryPoint("glGetVertexArrayIndexediv")] + _glGetVertexArrayIndexediv _GetVertexArrayIndexediv { get; } + + delegate void _glGetVertexArrayIndexediv_ptr(uint vaobj, uint index, VertexArrayPName pname, void* param); + [GlEntryPoint("glGetVertexArrayIndexediv")] + _glGetVertexArrayIndexediv_ptr _GetVertexArrayIndexediv_ptr { get; } + + delegate void _glGetVertexArrayIndexediv_intptr(uint vaobj, uint index, VertexArrayPName pname, IntPtr param); + [GlEntryPoint("glGetVertexArrayIndexediv")] + _glGetVertexArrayIndexediv_intptr _GetVertexArrayIndexediv_intptr { get; } + + // --- + + delegate void _glGetVertexArrayIntegeri_vEXT(uint vaobj, uint index, VertexArrayPName pname, int[] param); + [GlEntryPoint("glGetVertexArrayIntegeri_vEXT")] + _glGetVertexArrayIntegeri_vEXT _GetVertexArrayIntegeri_vEXT { get; } + + delegate void _glGetVertexArrayIntegeri_vEXT_ptr(uint vaobj, uint index, VertexArrayPName pname, void* param); + [GlEntryPoint("glGetVertexArrayIntegeri_vEXT")] + _glGetVertexArrayIntegeri_vEXT_ptr _GetVertexArrayIntegeri_vEXT_ptr { get; } + + delegate void _glGetVertexArrayIntegeri_vEXT_intptr(uint vaobj, uint index, VertexArrayPName pname, IntPtr param); + [GlEntryPoint("glGetVertexArrayIntegeri_vEXT")] + _glGetVertexArrayIntegeri_vEXT_intptr _GetVertexArrayIntegeri_vEXT_intptr { get; } + + // --- + + delegate void _glGetVertexArrayIntegervEXT(uint vaobj, VertexArrayPName pname, int[] param); + [GlEntryPoint("glGetVertexArrayIntegervEXT")] + _glGetVertexArrayIntegervEXT _GetVertexArrayIntegervEXT { get; } + + delegate void _glGetVertexArrayIntegervEXT_ptr(uint vaobj, VertexArrayPName pname, void* param); + [GlEntryPoint("glGetVertexArrayIntegervEXT")] + _glGetVertexArrayIntegervEXT_ptr _GetVertexArrayIntegervEXT_ptr { get; } + + delegate void _glGetVertexArrayIntegervEXT_intptr(uint vaobj, VertexArrayPName pname, IntPtr param); + [GlEntryPoint("glGetVertexArrayIntegervEXT")] + _glGetVertexArrayIntegervEXT_intptr _GetVertexArrayIntegervEXT_intptr { get; } + + // --- + + delegate void _glGetVertexArrayPointeri_vEXT(uint vaobj, uint index, VertexArrayPName pname, IntPtr* param); + [GlEntryPoint("glGetVertexArrayPointeri_vEXT")] + _glGetVertexArrayPointeri_vEXT _GetVertexArrayPointeri_vEXT { get; } + + // --- + + delegate void _glGetVertexArrayPointervEXT(uint vaobj, VertexArrayPName pname, IntPtr* param); + [GlEntryPoint("glGetVertexArrayPointervEXT")] + _glGetVertexArrayPointervEXT _GetVertexArrayPointervEXT { get; } + + // --- + + delegate void _glGetVertexArrayiv(uint vaobj, VertexArrayPName pname, int[] param); + [GlEntryPoint("glGetVertexArrayiv")] + _glGetVertexArrayiv _GetVertexArrayiv { get; } + + delegate void _glGetVertexArrayiv_ptr(uint vaobj, VertexArrayPName pname, void* param); + [GlEntryPoint("glGetVertexArrayiv")] + _glGetVertexArrayiv_ptr _GetVertexArrayiv_ptr { get; } + + delegate void _glGetVertexArrayiv_intptr(uint vaobj, VertexArrayPName pname, IntPtr param); + [GlEntryPoint("glGetVertexArrayiv")] + _glGetVertexArrayiv_intptr _GetVertexArrayiv_intptr { get; } + + // --- + + delegate void _glGetVertexAttribArrayObjectfvATI(uint index, ArrayObjectPNameATI pname, float[] @params); + [GlEntryPoint("glGetVertexAttribArrayObjectfvATI")] + _glGetVertexAttribArrayObjectfvATI _GetVertexAttribArrayObjectfvATI { get; } + + delegate void _glGetVertexAttribArrayObjectfvATI_ptr(uint index, ArrayObjectPNameATI pname, void* @params); + [GlEntryPoint("glGetVertexAttribArrayObjectfvATI")] + _glGetVertexAttribArrayObjectfvATI_ptr _GetVertexAttribArrayObjectfvATI_ptr { get; } + + delegate void _glGetVertexAttribArrayObjectfvATI_intptr(uint index, ArrayObjectPNameATI pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribArrayObjectfvATI")] + _glGetVertexAttribArrayObjectfvATI_intptr _GetVertexAttribArrayObjectfvATI_intptr { get; } + + // --- + + delegate void _glGetVertexAttribArrayObjectivATI(uint index, ArrayObjectPNameATI pname, int[] @params); + [GlEntryPoint("glGetVertexAttribArrayObjectivATI")] + _glGetVertexAttribArrayObjectivATI _GetVertexAttribArrayObjectivATI { get; } + + delegate void _glGetVertexAttribArrayObjectivATI_ptr(uint index, ArrayObjectPNameATI pname, void* @params); + [GlEntryPoint("glGetVertexAttribArrayObjectivATI")] + _glGetVertexAttribArrayObjectivATI_ptr _GetVertexAttribArrayObjectivATI_ptr { get; } + + delegate void _glGetVertexAttribArrayObjectivATI_intptr(uint index, ArrayObjectPNameATI pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribArrayObjectivATI")] + _glGetVertexAttribArrayObjectivATI_intptr _GetVertexAttribArrayObjectivATI_intptr { get; } + + // --- + + delegate void _glGetVertexAttribIiv(uint index, VertexAttribEnum pname, out int @params); + [GlEntryPoint("glGetVertexAttribIiv")] + _glGetVertexAttribIiv _GetVertexAttribIiv { get; } + + // --- + + delegate void _glGetVertexAttribIivEXT(uint index, VertexAttribEnum pname, out int @params); + [GlEntryPoint("glGetVertexAttribIivEXT")] + _glGetVertexAttribIivEXT _GetVertexAttribIivEXT { get; } + + // --- + + delegate void _glGetVertexAttribIuiv(uint index, VertexAttribEnum pname, out uint @params); + [GlEntryPoint("glGetVertexAttribIuiv")] + _glGetVertexAttribIuiv _GetVertexAttribIuiv { get; } + + // --- + + delegate void _glGetVertexAttribIuivEXT(uint index, VertexAttribEnum pname, out uint @params); + [GlEntryPoint("glGetVertexAttribIuivEXT")] + _glGetVertexAttribIuivEXT _GetVertexAttribIuivEXT { get; } + + // --- + + delegate void _glGetVertexAttribLdv(uint index, VertexAttribEnum pname, double[] @params); + [GlEntryPoint("glGetVertexAttribLdv")] + _glGetVertexAttribLdv _GetVertexAttribLdv { get; } + + delegate void _glGetVertexAttribLdv_ptr(uint index, VertexAttribEnum pname, void* @params); + [GlEntryPoint("glGetVertexAttribLdv")] + _glGetVertexAttribLdv_ptr _GetVertexAttribLdv_ptr { get; } + + delegate void _glGetVertexAttribLdv_intptr(uint index, VertexAttribEnum pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribLdv")] + _glGetVertexAttribLdv_intptr _GetVertexAttribLdv_intptr { get; } + + // --- + + delegate void _glGetVertexAttribLdvEXT(uint index, VertexAttribEnum pname, double[] @params); + [GlEntryPoint("glGetVertexAttribLdvEXT")] + _glGetVertexAttribLdvEXT _GetVertexAttribLdvEXT { get; } + + delegate void _glGetVertexAttribLdvEXT_ptr(uint index, VertexAttribEnum pname, void* @params); + [GlEntryPoint("glGetVertexAttribLdvEXT")] + _glGetVertexAttribLdvEXT_ptr _GetVertexAttribLdvEXT_ptr { get; } + + delegate void _glGetVertexAttribLdvEXT_intptr(uint index, VertexAttribEnum pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribLdvEXT")] + _glGetVertexAttribLdvEXT_intptr _GetVertexAttribLdvEXT_intptr { get; } + + // --- + + delegate void _glGetVertexAttribLi64vNV(uint index, VertexAttribEnum pname, Int64[] @params); + [GlEntryPoint("glGetVertexAttribLi64vNV")] + _glGetVertexAttribLi64vNV _GetVertexAttribLi64vNV { get; } + + delegate void _glGetVertexAttribLi64vNV_ptr(uint index, VertexAttribEnum pname, void* @params); + [GlEntryPoint("glGetVertexAttribLi64vNV")] + _glGetVertexAttribLi64vNV_ptr _GetVertexAttribLi64vNV_ptr { get; } + + delegate void _glGetVertexAttribLi64vNV_intptr(uint index, VertexAttribEnum pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribLi64vNV")] + _glGetVertexAttribLi64vNV_intptr _GetVertexAttribLi64vNV_intptr { get; } + + // --- + + delegate void _glGetVertexAttribLui64vARB(uint index, VertexAttribEnum pname, UInt64[] @params); + [GlEntryPoint("glGetVertexAttribLui64vARB")] + _glGetVertexAttribLui64vARB _GetVertexAttribLui64vARB { get; } + + delegate void _glGetVertexAttribLui64vARB_ptr(uint index, VertexAttribEnum pname, void* @params); + [GlEntryPoint("glGetVertexAttribLui64vARB")] + _glGetVertexAttribLui64vARB_ptr _GetVertexAttribLui64vARB_ptr { get; } + + delegate void _glGetVertexAttribLui64vARB_intptr(uint index, VertexAttribEnum pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribLui64vARB")] + _glGetVertexAttribLui64vARB_intptr _GetVertexAttribLui64vARB_intptr { get; } + + // --- + + delegate void _glGetVertexAttribLui64vNV(uint index, VertexAttribEnum pname, UInt64[] @params); + [GlEntryPoint("glGetVertexAttribLui64vNV")] + _glGetVertexAttribLui64vNV _GetVertexAttribLui64vNV { get; } + + delegate void _glGetVertexAttribLui64vNV_ptr(uint index, VertexAttribEnum pname, void* @params); + [GlEntryPoint("glGetVertexAttribLui64vNV")] + _glGetVertexAttribLui64vNV_ptr _GetVertexAttribLui64vNV_ptr { get; } + + delegate void _glGetVertexAttribLui64vNV_intptr(uint index, VertexAttribEnum pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribLui64vNV")] + _glGetVertexAttribLui64vNV_intptr _GetVertexAttribLui64vNV_intptr { get; } + + // --- + + delegate void _glGetVertexAttribPointerv(uint index, VertexAttribPointerPropertyARB pname, IntPtr* pointer); + [GlEntryPoint("glGetVertexAttribPointerv")] + _glGetVertexAttribPointerv _GetVertexAttribPointerv { get; } + + // --- + + delegate void _glGetVertexAttribPointervARB(uint index, VertexAttribPointerPropertyARB pname, IntPtr* pointer); + [GlEntryPoint("glGetVertexAttribPointervARB")] + _glGetVertexAttribPointervARB _GetVertexAttribPointervARB { get; } + + // --- + + delegate void _glGetVertexAttribPointervNV(uint index, VertexAttribEnumNV pname, IntPtr* pointer); + [GlEntryPoint("glGetVertexAttribPointervNV")] + _glGetVertexAttribPointervNV _GetVertexAttribPointervNV { get; } + + // --- + + delegate void _glGetVertexAttribdv(uint index, VertexAttribPropertyARB pname, double[] @params); + [GlEntryPoint("glGetVertexAttribdv")] + _glGetVertexAttribdv _GetVertexAttribdv { get; } + + delegate void _glGetVertexAttribdv_ptr(uint index, VertexAttribPropertyARB pname, void* @params); + [GlEntryPoint("glGetVertexAttribdv")] + _glGetVertexAttribdv_ptr _GetVertexAttribdv_ptr { get; } + + delegate void _glGetVertexAttribdv_intptr(uint index, VertexAttribPropertyARB pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribdv")] + _glGetVertexAttribdv_intptr _GetVertexAttribdv_intptr { get; } + + // --- + + delegate void _glGetVertexAttribdvARB(uint index, VertexAttribPropertyARB pname, double[] @params); + [GlEntryPoint("glGetVertexAttribdvARB")] + _glGetVertexAttribdvARB _GetVertexAttribdvARB { get; } + + delegate void _glGetVertexAttribdvARB_ptr(uint index, VertexAttribPropertyARB pname, void* @params); + [GlEntryPoint("glGetVertexAttribdvARB")] + _glGetVertexAttribdvARB_ptr _GetVertexAttribdvARB_ptr { get; } + + delegate void _glGetVertexAttribdvARB_intptr(uint index, VertexAttribPropertyARB pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribdvARB")] + _glGetVertexAttribdvARB_intptr _GetVertexAttribdvARB_intptr { get; } + + // --- + + delegate void _glGetVertexAttribdvNV(uint index, VertexAttribEnumNV pname, out double @params); + [GlEntryPoint("glGetVertexAttribdvNV")] + _glGetVertexAttribdvNV _GetVertexAttribdvNV { get; } + + // --- + + delegate void _glGetVertexAttribfv(uint index, VertexAttribPropertyARB pname, float[] @params); + [GlEntryPoint("glGetVertexAttribfv")] + _glGetVertexAttribfv _GetVertexAttribfv { get; } + + delegate void _glGetVertexAttribfv_ptr(uint index, VertexAttribPropertyARB pname, void* @params); + [GlEntryPoint("glGetVertexAttribfv")] + _glGetVertexAttribfv_ptr _GetVertexAttribfv_ptr { get; } + + delegate void _glGetVertexAttribfv_intptr(uint index, VertexAttribPropertyARB pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribfv")] + _glGetVertexAttribfv_intptr _GetVertexAttribfv_intptr { get; } + + // --- + + delegate void _glGetVertexAttribfvARB(uint index, VertexAttribPropertyARB pname, float[] @params); + [GlEntryPoint("glGetVertexAttribfvARB")] + _glGetVertexAttribfvARB _GetVertexAttribfvARB { get; } + + delegate void _glGetVertexAttribfvARB_ptr(uint index, VertexAttribPropertyARB pname, void* @params); + [GlEntryPoint("glGetVertexAttribfvARB")] + _glGetVertexAttribfvARB_ptr _GetVertexAttribfvARB_ptr { get; } + + delegate void _glGetVertexAttribfvARB_intptr(uint index, VertexAttribPropertyARB pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribfvARB")] + _glGetVertexAttribfvARB_intptr _GetVertexAttribfvARB_intptr { get; } + + // --- + + delegate void _glGetVertexAttribfvNV(uint index, VertexAttribEnumNV pname, out float @params); + [GlEntryPoint("glGetVertexAttribfvNV")] + _glGetVertexAttribfvNV _GetVertexAttribfvNV { get; } + + // --- + + delegate void _glGetVertexAttribiv(uint index, VertexAttribPropertyARB pname, int[] @params); + [GlEntryPoint("glGetVertexAttribiv")] + _glGetVertexAttribiv _GetVertexAttribiv { get; } + + delegate void _glGetVertexAttribiv_ptr(uint index, VertexAttribPropertyARB pname, void* @params); + [GlEntryPoint("glGetVertexAttribiv")] + _glGetVertexAttribiv_ptr _GetVertexAttribiv_ptr { get; } + + delegate void _glGetVertexAttribiv_intptr(uint index, VertexAttribPropertyARB pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribiv")] + _glGetVertexAttribiv_intptr _GetVertexAttribiv_intptr { get; } + + // --- + + delegate void _glGetVertexAttribivARB(uint index, VertexAttribPropertyARB pname, int[] @params); + [GlEntryPoint("glGetVertexAttribivARB")] + _glGetVertexAttribivARB _GetVertexAttribivARB { get; } + + delegate void _glGetVertexAttribivARB_ptr(uint index, VertexAttribPropertyARB pname, void* @params); + [GlEntryPoint("glGetVertexAttribivARB")] + _glGetVertexAttribivARB_ptr _GetVertexAttribivARB_ptr { get; } + + delegate void _glGetVertexAttribivARB_intptr(uint index, VertexAttribPropertyARB pname, IntPtr @params); + [GlEntryPoint("glGetVertexAttribivARB")] + _glGetVertexAttribivARB_intptr _GetVertexAttribivARB_intptr { get; } + + // --- + + delegate void _glGetVertexAttribivNV(uint index, VertexAttribEnumNV pname, out int @params); + [GlEntryPoint("glGetVertexAttribivNV")] + _glGetVertexAttribivNV _GetVertexAttribivNV { get; } + + // --- + + delegate void _glGetVideoCaptureStreamdvNV(uint video_capture_slot, uint stream, int pname, double[] @params); + [GlEntryPoint("glGetVideoCaptureStreamdvNV")] + _glGetVideoCaptureStreamdvNV _GetVideoCaptureStreamdvNV { get; } + + delegate void _glGetVideoCaptureStreamdvNV_ptr(uint video_capture_slot, uint stream, int pname, void* @params); + [GlEntryPoint("glGetVideoCaptureStreamdvNV")] + _glGetVideoCaptureStreamdvNV_ptr _GetVideoCaptureStreamdvNV_ptr { get; } + + delegate void _glGetVideoCaptureStreamdvNV_intptr(uint video_capture_slot, uint stream, int pname, IntPtr @params); + [GlEntryPoint("glGetVideoCaptureStreamdvNV")] + _glGetVideoCaptureStreamdvNV_intptr _GetVideoCaptureStreamdvNV_intptr { get; } + + // --- + + delegate void _glGetVideoCaptureStreamfvNV(uint video_capture_slot, uint stream, int pname, float[] @params); + [GlEntryPoint("glGetVideoCaptureStreamfvNV")] + _glGetVideoCaptureStreamfvNV _GetVideoCaptureStreamfvNV { get; } + + delegate void _glGetVideoCaptureStreamfvNV_ptr(uint video_capture_slot, uint stream, int pname, void* @params); + [GlEntryPoint("glGetVideoCaptureStreamfvNV")] + _glGetVideoCaptureStreamfvNV_ptr _GetVideoCaptureStreamfvNV_ptr { get; } + + delegate void _glGetVideoCaptureStreamfvNV_intptr(uint video_capture_slot, uint stream, int pname, IntPtr @params); + [GlEntryPoint("glGetVideoCaptureStreamfvNV")] + _glGetVideoCaptureStreamfvNV_intptr _GetVideoCaptureStreamfvNV_intptr { get; } + + // --- + + delegate void _glGetVideoCaptureStreamivNV(uint video_capture_slot, uint stream, int pname, int[] @params); + [GlEntryPoint("glGetVideoCaptureStreamivNV")] + _glGetVideoCaptureStreamivNV _GetVideoCaptureStreamivNV { get; } + + delegate void _glGetVideoCaptureStreamivNV_ptr(uint video_capture_slot, uint stream, int pname, void* @params); + [GlEntryPoint("glGetVideoCaptureStreamivNV")] + _glGetVideoCaptureStreamivNV_ptr _GetVideoCaptureStreamivNV_ptr { get; } + + delegate void _glGetVideoCaptureStreamivNV_intptr(uint video_capture_slot, uint stream, int pname, IntPtr @params); + [GlEntryPoint("glGetVideoCaptureStreamivNV")] + _glGetVideoCaptureStreamivNV_intptr _GetVideoCaptureStreamivNV_intptr { get; } + + // --- + + delegate void _glGetVideoCaptureivNV(uint video_capture_slot, int pname, int[] @params); + [GlEntryPoint("glGetVideoCaptureivNV")] + _glGetVideoCaptureivNV _GetVideoCaptureivNV { get; } + + delegate void _glGetVideoCaptureivNV_ptr(uint video_capture_slot, int pname, void* @params); + [GlEntryPoint("glGetVideoCaptureivNV")] + _glGetVideoCaptureivNV_ptr _GetVideoCaptureivNV_ptr { get; } + + delegate void _glGetVideoCaptureivNV_intptr(uint video_capture_slot, int pname, IntPtr @params); + [GlEntryPoint("glGetVideoCaptureivNV")] + _glGetVideoCaptureivNV_intptr _GetVideoCaptureivNV_intptr { get; } + + // --- + + delegate void _glGetVideoi64vNV(uint video_slot, int pname, Int64[] @params); + [GlEntryPoint("glGetVideoi64vNV")] + _glGetVideoi64vNV _GetVideoi64vNV { get; } + + delegate void _glGetVideoi64vNV_ptr(uint video_slot, int pname, void* @params); + [GlEntryPoint("glGetVideoi64vNV")] + _glGetVideoi64vNV_ptr _GetVideoi64vNV_ptr { get; } + + delegate void _glGetVideoi64vNV_intptr(uint video_slot, int pname, IntPtr @params); + [GlEntryPoint("glGetVideoi64vNV")] + _glGetVideoi64vNV_intptr _GetVideoi64vNV_intptr { get; } + + // --- + + delegate void _glGetVideoivNV(uint video_slot, int pname, int[] @params); + [GlEntryPoint("glGetVideoivNV")] + _glGetVideoivNV _GetVideoivNV { get; } + + delegate void _glGetVideoivNV_ptr(uint video_slot, int pname, void* @params); + [GlEntryPoint("glGetVideoivNV")] + _glGetVideoivNV_ptr _GetVideoivNV_ptr { get; } + + delegate void _glGetVideoivNV_intptr(uint video_slot, int pname, IntPtr @params); + [GlEntryPoint("glGetVideoivNV")] + _glGetVideoivNV_intptr _GetVideoivNV_intptr { get; } + + // --- + + delegate void _glGetVideoui64vNV(uint video_slot, int pname, UInt64[] @params); + [GlEntryPoint("glGetVideoui64vNV")] + _glGetVideoui64vNV _GetVideoui64vNV { get; } + + delegate void _glGetVideoui64vNV_ptr(uint video_slot, int pname, void* @params); + [GlEntryPoint("glGetVideoui64vNV")] + _glGetVideoui64vNV_ptr _GetVideoui64vNV_ptr { get; } + + delegate void _glGetVideoui64vNV_intptr(uint video_slot, int pname, IntPtr @params); + [GlEntryPoint("glGetVideoui64vNV")] + _glGetVideoui64vNV_intptr _GetVideoui64vNV_intptr { get; } + + // --- + + delegate void _glGetVideouivNV(uint video_slot, int pname, uint[] @params); + [GlEntryPoint("glGetVideouivNV")] + _glGetVideouivNV _GetVideouivNV { get; } + + delegate void _glGetVideouivNV_ptr(uint video_slot, int pname, void* @params); + [GlEntryPoint("glGetVideouivNV")] + _glGetVideouivNV_ptr _GetVideouivNV_ptr { get; } + + delegate void _glGetVideouivNV_intptr(uint video_slot, int pname, IntPtr @params); + [GlEntryPoint("glGetVideouivNV")] + _glGetVideouivNV_intptr _GetVideouivNV_intptr { get; } + + // --- + + delegate void _glGetnColorTable(ColorTableTarget target, PixelFormat format, PixelType type, int bufSize, IntPtr table); + [GlEntryPoint("glGetnColorTable")] + _glGetnColorTable _GetnColorTable { get; } + + // --- + + delegate void _glGetnColorTableARB(ColorTableTarget target, PixelFormat format, PixelType type, int bufSize, IntPtr table); + [GlEntryPoint("glGetnColorTableARB")] + _glGetnColorTableARB _GetnColorTableARB { get; } + + // --- + + delegate void _glGetnCompressedTexImage(TextureTarget target, int lod, int bufSize, IntPtr pixels); + [GlEntryPoint("glGetnCompressedTexImage")] + _glGetnCompressedTexImage _GetnCompressedTexImage { get; } + + // --- + + delegate void _glGetnCompressedTexImageARB(TextureTarget target, int lod, int bufSize, IntPtr img); + [GlEntryPoint("glGetnCompressedTexImageARB")] + _glGetnCompressedTexImageARB _GetnCompressedTexImageARB { get; } + + // --- + + delegate void _glGetnConvolutionFilter(ConvolutionTarget target, PixelFormat format, PixelType type, int bufSize, IntPtr image); + [GlEntryPoint("glGetnConvolutionFilter")] + _glGetnConvolutionFilter _GetnConvolutionFilter { get; } + + // --- + + delegate void _glGetnConvolutionFilterARB(ConvolutionTarget target, PixelFormat format, PixelType type, int bufSize, IntPtr image); + [GlEntryPoint("glGetnConvolutionFilterARB")] + _glGetnConvolutionFilterARB _GetnConvolutionFilterARB { get; } + + // --- + + delegate void _glGetnHistogram(HistogramTargetEXT target, bool reset, PixelFormat format, PixelType type, int bufSize, IntPtr values); + [GlEntryPoint("glGetnHistogram")] + _glGetnHistogram _GetnHistogram { get; } + + // --- + + delegate void _glGetnHistogramARB(HistogramTargetEXT target, bool reset, PixelFormat format, PixelType type, int bufSize, IntPtr values); + [GlEntryPoint("glGetnHistogramARB")] + _glGetnHistogramARB _GetnHistogramARB { get; } + + // --- + + delegate void _glGetnMapdv(MapTarget target, MapQuery query, int bufSize, double[] v); + [GlEntryPoint("glGetnMapdv")] + _glGetnMapdv _GetnMapdv { get; } + + delegate void _glGetnMapdv_ptr(MapTarget target, MapQuery query, int bufSize, void* v); + [GlEntryPoint("glGetnMapdv")] + _glGetnMapdv_ptr _GetnMapdv_ptr { get; } + + delegate void _glGetnMapdv_intptr(MapTarget target, MapQuery query, int bufSize, IntPtr v); + [GlEntryPoint("glGetnMapdv")] + _glGetnMapdv_intptr _GetnMapdv_intptr { get; } + + // --- + + delegate void _glGetnMapdvARB(MapTarget target, MapQuery query, int bufSize, double[] v); + [GlEntryPoint("glGetnMapdvARB")] + _glGetnMapdvARB _GetnMapdvARB { get; } + + delegate void _glGetnMapdvARB_ptr(MapTarget target, MapQuery query, int bufSize, void* v); + [GlEntryPoint("glGetnMapdvARB")] + _glGetnMapdvARB_ptr _GetnMapdvARB_ptr { get; } + + delegate void _glGetnMapdvARB_intptr(MapTarget target, MapQuery query, int bufSize, IntPtr v); + [GlEntryPoint("glGetnMapdvARB")] + _glGetnMapdvARB_intptr _GetnMapdvARB_intptr { get; } + + // --- + + delegate void _glGetnMapfv(MapTarget target, MapQuery query, int bufSize, float[] v); + [GlEntryPoint("glGetnMapfv")] + _glGetnMapfv _GetnMapfv { get; } + + delegate void _glGetnMapfv_ptr(MapTarget target, MapQuery query, int bufSize, void* v); + [GlEntryPoint("glGetnMapfv")] + _glGetnMapfv_ptr _GetnMapfv_ptr { get; } + + delegate void _glGetnMapfv_intptr(MapTarget target, MapQuery query, int bufSize, IntPtr v); + [GlEntryPoint("glGetnMapfv")] + _glGetnMapfv_intptr _GetnMapfv_intptr { get; } + + // --- + + delegate void _glGetnMapfvARB(MapTarget target, MapQuery query, int bufSize, float[] v); + [GlEntryPoint("glGetnMapfvARB")] + _glGetnMapfvARB _GetnMapfvARB { get; } + + delegate void _glGetnMapfvARB_ptr(MapTarget target, MapQuery query, int bufSize, void* v); + [GlEntryPoint("glGetnMapfvARB")] + _glGetnMapfvARB_ptr _GetnMapfvARB_ptr { get; } + + delegate void _glGetnMapfvARB_intptr(MapTarget target, MapQuery query, int bufSize, IntPtr v); + [GlEntryPoint("glGetnMapfvARB")] + _glGetnMapfvARB_intptr _GetnMapfvARB_intptr { get; } + + // --- + + delegate void _glGetnMapiv(MapTarget target, MapQuery query, int bufSize, int[] v); + [GlEntryPoint("glGetnMapiv")] + _glGetnMapiv _GetnMapiv { get; } + + delegate void _glGetnMapiv_ptr(MapTarget target, MapQuery query, int bufSize, void* v); + [GlEntryPoint("glGetnMapiv")] + _glGetnMapiv_ptr _GetnMapiv_ptr { get; } + + delegate void _glGetnMapiv_intptr(MapTarget target, MapQuery query, int bufSize, IntPtr v); + [GlEntryPoint("glGetnMapiv")] + _glGetnMapiv_intptr _GetnMapiv_intptr { get; } + + // --- + + delegate void _glGetnMapivARB(MapTarget target, MapQuery query, int bufSize, int[] v); + [GlEntryPoint("glGetnMapivARB")] + _glGetnMapivARB _GetnMapivARB { get; } + + delegate void _glGetnMapivARB_ptr(MapTarget target, MapQuery query, int bufSize, void* v); + [GlEntryPoint("glGetnMapivARB")] + _glGetnMapivARB_ptr _GetnMapivARB_ptr { get; } + + delegate void _glGetnMapivARB_intptr(MapTarget target, MapQuery query, int bufSize, IntPtr v); + [GlEntryPoint("glGetnMapivARB")] + _glGetnMapivARB_intptr _GetnMapivARB_intptr { get; } + + // --- + + delegate void _glGetnMinmax(MinmaxTargetEXT target, bool reset, PixelFormat format, PixelType type, int bufSize, IntPtr values); + [GlEntryPoint("glGetnMinmax")] + _glGetnMinmax _GetnMinmax { get; } + + // --- + + delegate void _glGetnMinmaxARB(MinmaxTargetEXT target, bool reset, PixelFormat format, PixelType type, int bufSize, IntPtr values); + [GlEntryPoint("glGetnMinmaxARB")] + _glGetnMinmaxARB _GetnMinmaxARB { get; } + + // --- + + delegate void _glGetnPixelMapfv(PixelMap map, int bufSize, float[] values); + [GlEntryPoint("glGetnPixelMapfv")] + _glGetnPixelMapfv _GetnPixelMapfv { get; } + + delegate void _glGetnPixelMapfv_ptr(PixelMap map, int bufSize, void* values); + [GlEntryPoint("glGetnPixelMapfv")] + _glGetnPixelMapfv_ptr _GetnPixelMapfv_ptr { get; } + + delegate void _glGetnPixelMapfv_intptr(PixelMap map, int bufSize, IntPtr values); + [GlEntryPoint("glGetnPixelMapfv")] + _glGetnPixelMapfv_intptr _GetnPixelMapfv_intptr { get; } + + // --- + + delegate void _glGetnPixelMapfvARB(PixelMap map, int bufSize, float[] values); + [GlEntryPoint("glGetnPixelMapfvARB")] + _glGetnPixelMapfvARB _GetnPixelMapfvARB { get; } + + delegate void _glGetnPixelMapfvARB_ptr(PixelMap map, int bufSize, void* values); + [GlEntryPoint("glGetnPixelMapfvARB")] + _glGetnPixelMapfvARB_ptr _GetnPixelMapfvARB_ptr { get; } + + delegate void _glGetnPixelMapfvARB_intptr(PixelMap map, int bufSize, IntPtr values); + [GlEntryPoint("glGetnPixelMapfvARB")] + _glGetnPixelMapfvARB_intptr _GetnPixelMapfvARB_intptr { get; } + + // --- + + delegate void _glGetnPixelMapuiv(PixelMap map, int bufSize, uint[] values); + [GlEntryPoint("glGetnPixelMapuiv")] + _glGetnPixelMapuiv _GetnPixelMapuiv { get; } + + delegate void _glGetnPixelMapuiv_ptr(PixelMap map, int bufSize, void* values); + [GlEntryPoint("glGetnPixelMapuiv")] + _glGetnPixelMapuiv_ptr _GetnPixelMapuiv_ptr { get; } + + delegate void _glGetnPixelMapuiv_intptr(PixelMap map, int bufSize, IntPtr values); + [GlEntryPoint("glGetnPixelMapuiv")] + _glGetnPixelMapuiv_intptr _GetnPixelMapuiv_intptr { get; } + + // --- + + delegate void _glGetnPixelMapuivARB(PixelMap map, int bufSize, uint[] values); + [GlEntryPoint("glGetnPixelMapuivARB")] + _glGetnPixelMapuivARB _GetnPixelMapuivARB { get; } + + delegate void _glGetnPixelMapuivARB_ptr(PixelMap map, int bufSize, void* values); + [GlEntryPoint("glGetnPixelMapuivARB")] + _glGetnPixelMapuivARB_ptr _GetnPixelMapuivARB_ptr { get; } + + delegate void _glGetnPixelMapuivARB_intptr(PixelMap map, int bufSize, IntPtr values); + [GlEntryPoint("glGetnPixelMapuivARB")] + _glGetnPixelMapuivARB_intptr _GetnPixelMapuivARB_intptr { get; } + + // --- + + delegate void _glGetnPixelMapusv(PixelMap map, int bufSize, ushort[] values); + [GlEntryPoint("glGetnPixelMapusv")] + _glGetnPixelMapusv _GetnPixelMapusv { get; } + + delegate void _glGetnPixelMapusv_ptr(PixelMap map, int bufSize, void* values); + [GlEntryPoint("glGetnPixelMapusv")] + _glGetnPixelMapusv_ptr _GetnPixelMapusv_ptr { get; } + + delegate void _glGetnPixelMapusv_intptr(PixelMap map, int bufSize, IntPtr values); + [GlEntryPoint("glGetnPixelMapusv")] + _glGetnPixelMapusv_intptr _GetnPixelMapusv_intptr { get; } + + // --- + + delegate void _glGetnPixelMapusvARB(PixelMap map, int bufSize, ushort[] values); + [GlEntryPoint("glGetnPixelMapusvARB")] + _glGetnPixelMapusvARB _GetnPixelMapusvARB { get; } + + delegate void _glGetnPixelMapusvARB_ptr(PixelMap map, int bufSize, void* values); + [GlEntryPoint("glGetnPixelMapusvARB")] + _glGetnPixelMapusvARB_ptr _GetnPixelMapusvARB_ptr { get; } + + delegate void _glGetnPixelMapusvARB_intptr(PixelMap map, int bufSize, IntPtr values); + [GlEntryPoint("glGetnPixelMapusvARB")] + _glGetnPixelMapusvARB_intptr _GetnPixelMapusvARB_intptr { get; } + + // --- + + delegate void _glGetnPolygonStipple(int bufSize, byte[] pattern); + [GlEntryPoint("glGetnPolygonStipple")] + _glGetnPolygonStipple _GetnPolygonStipple { get; } + + delegate void _glGetnPolygonStipple_ptr(int bufSize, void* pattern); + [GlEntryPoint("glGetnPolygonStipple")] + _glGetnPolygonStipple_ptr _GetnPolygonStipple_ptr { get; } + + delegate void _glGetnPolygonStipple_intptr(int bufSize, IntPtr pattern); + [GlEntryPoint("glGetnPolygonStipple")] + _glGetnPolygonStipple_intptr _GetnPolygonStipple_intptr { get; } + + // --- + + delegate void _glGetnPolygonStippleARB(int bufSize, byte[] pattern); + [GlEntryPoint("glGetnPolygonStippleARB")] + _glGetnPolygonStippleARB _GetnPolygonStippleARB { get; } + + delegate void _glGetnPolygonStippleARB_ptr(int bufSize, void* pattern); + [GlEntryPoint("glGetnPolygonStippleARB")] + _glGetnPolygonStippleARB_ptr _GetnPolygonStippleARB_ptr { get; } + + delegate void _glGetnPolygonStippleARB_intptr(int bufSize, IntPtr pattern); + [GlEntryPoint("glGetnPolygonStippleARB")] + _glGetnPolygonStippleARB_intptr _GetnPolygonStippleARB_intptr { get; } + + // --- + + delegate void _glGetnSeparableFilter(SeparableTargetEXT target, PixelFormat format, PixelType type, int rowBufSize, IntPtr row, int columnBufSize, IntPtr column, IntPtr span); + [GlEntryPoint("glGetnSeparableFilter")] + _glGetnSeparableFilter _GetnSeparableFilter { get; } + + // --- + + delegate void _glGetnSeparableFilterARB(SeparableTargetEXT target, PixelFormat format, PixelType type, int rowBufSize, IntPtr row, int columnBufSize, IntPtr column, IntPtr span); + [GlEntryPoint("glGetnSeparableFilterARB")] + _glGetnSeparableFilterARB _GetnSeparableFilterARB { get; } + + // --- + + delegate void _glGetnTexImage(TextureTarget target, int level, PixelFormat format, PixelType type, int bufSize, IntPtr pixels); + [GlEntryPoint("glGetnTexImage")] + _glGetnTexImage _GetnTexImage { get; } + + // --- + + delegate void _glGetnTexImageARB(TextureTarget target, int level, PixelFormat format, PixelType type, int bufSize, IntPtr img); + [GlEntryPoint("glGetnTexImageARB")] + _glGetnTexImageARB _GetnTexImageARB { get; } + + // --- + + delegate void _glGetnUniformdv(uint program, int location, int bufSize, double[] @params); + [GlEntryPoint("glGetnUniformdv")] + _glGetnUniformdv _GetnUniformdv { get; } + + delegate void _glGetnUniformdv_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformdv")] + _glGetnUniformdv_ptr _GetnUniformdv_ptr { get; } + + delegate void _glGetnUniformdv_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformdv")] + _glGetnUniformdv_intptr _GetnUniformdv_intptr { get; } + + // --- + + delegate void _glGetnUniformdvARB(uint program, int location, int bufSize, double[] @params); + [GlEntryPoint("glGetnUniformdvARB")] + _glGetnUniformdvARB _GetnUniformdvARB { get; } + + delegate void _glGetnUniformdvARB_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformdvARB")] + _glGetnUniformdvARB_ptr _GetnUniformdvARB_ptr { get; } + + delegate void _glGetnUniformdvARB_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformdvARB")] + _glGetnUniformdvARB_intptr _GetnUniformdvARB_intptr { get; } + + // --- + + delegate void _glGetnUniformfv(uint program, int location, int bufSize, float[] @params); + [GlEntryPoint("glGetnUniformfv")] + _glGetnUniformfv _GetnUniformfv { get; } + + delegate void _glGetnUniformfv_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformfv")] + _glGetnUniformfv_ptr _GetnUniformfv_ptr { get; } + + delegate void _glGetnUniformfv_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformfv")] + _glGetnUniformfv_intptr _GetnUniformfv_intptr { get; } + + // --- + + delegate void _glGetnUniformfvARB(uint program, int location, int bufSize, float[] @params); + [GlEntryPoint("glGetnUniformfvARB")] + _glGetnUniformfvARB _GetnUniformfvARB { get; } + + delegate void _glGetnUniformfvARB_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformfvARB")] + _glGetnUniformfvARB_ptr _GetnUniformfvARB_ptr { get; } + + delegate void _glGetnUniformfvARB_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformfvARB")] + _glGetnUniformfvARB_intptr _GetnUniformfvARB_intptr { get; } + + // --- + + delegate void _glGetnUniformfvEXT(uint program, int location, int bufSize, float[] @params); + [GlEntryPoint("glGetnUniformfvEXT")] + _glGetnUniformfvEXT _GetnUniformfvEXT { get; } + + delegate void _glGetnUniformfvEXT_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformfvEXT")] + _glGetnUniformfvEXT_ptr _GetnUniformfvEXT_ptr { get; } + + delegate void _glGetnUniformfvEXT_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformfvEXT")] + _glGetnUniformfvEXT_intptr _GetnUniformfvEXT_intptr { get; } + + // --- + + delegate void _glGetnUniformfvKHR(uint program, int location, int bufSize, float[] @params); + [GlEntryPoint("glGetnUniformfvKHR")] + _glGetnUniformfvKHR _GetnUniformfvKHR { get; } + + delegate void _glGetnUniformfvKHR_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformfvKHR")] + _glGetnUniformfvKHR_ptr _GetnUniformfvKHR_ptr { get; } + + delegate void _glGetnUniformfvKHR_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformfvKHR")] + _glGetnUniformfvKHR_intptr _GetnUniformfvKHR_intptr { get; } + + // --- + + delegate void _glGetnUniformi64vARB(uint program, int location, int bufSize, Int64[] @params); + [GlEntryPoint("glGetnUniformi64vARB")] + _glGetnUniformi64vARB _GetnUniformi64vARB { get; } + + delegate void _glGetnUniformi64vARB_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformi64vARB")] + _glGetnUniformi64vARB_ptr _GetnUniformi64vARB_ptr { get; } + + delegate void _glGetnUniformi64vARB_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformi64vARB")] + _glGetnUniformi64vARB_intptr _GetnUniformi64vARB_intptr { get; } + + // --- + + delegate void _glGetnUniformiv(uint program, int location, int bufSize, int[] @params); + [GlEntryPoint("glGetnUniformiv")] + _glGetnUniformiv _GetnUniformiv { get; } + + delegate void _glGetnUniformiv_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformiv")] + _glGetnUniformiv_ptr _GetnUniformiv_ptr { get; } + + delegate void _glGetnUniformiv_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformiv")] + _glGetnUniformiv_intptr _GetnUniformiv_intptr { get; } + + // --- + + delegate void _glGetnUniformivARB(uint program, int location, int bufSize, int[] @params); + [GlEntryPoint("glGetnUniformivARB")] + _glGetnUniformivARB _GetnUniformivARB { get; } + + delegate void _glGetnUniformivARB_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformivARB")] + _glGetnUniformivARB_ptr _GetnUniformivARB_ptr { get; } + + delegate void _glGetnUniformivARB_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformivARB")] + _glGetnUniformivARB_intptr _GetnUniformivARB_intptr { get; } + + // --- + + delegate void _glGetnUniformivEXT(uint program, int location, int bufSize, int[] @params); + [GlEntryPoint("glGetnUniformivEXT")] + _glGetnUniformivEXT _GetnUniformivEXT { get; } + + delegate void _glGetnUniformivEXT_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformivEXT")] + _glGetnUniformivEXT_ptr _GetnUniformivEXT_ptr { get; } + + delegate void _glGetnUniformivEXT_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformivEXT")] + _glGetnUniformivEXT_intptr _GetnUniformivEXT_intptr { get; } + + // --- + + delegate void _glGetnUniformivKHR(uint program, int location, int bufSize, int[] @params); + [GlEntryPoint("glGetnUniformivKHR")] + _glGetnUniformivKHR _GetnUniformivKHR { get; } + + delegate void _glGetnUniformivKHR_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformivKHR")] + _glGetnUniformivKHR_ptr _GetnUniformivKHR_ptr { get; } + + delegate void _glGetnUniformivKHR_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformivKHR")] + _glGetnUniformivKHR_intptr _GetnUniformivKHR_intptr { get; } + + // --- + + delegate void _glGetnUniformui64vARB(uint program, int location, int bufSize, UInt64[] @params); + [GlEntryPoint("glGetnUniformui64vARB")] + _glGetnUniformui64vARB _GetnUniformui64vARB { get; } + + delegate void _glGetnUniformui64vARB_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformui64vARB")] + _glGetnUniformui64vARB_ptr _GetnUniformui64vARB_ptr { get; } + + delegate void _glGetnUniformui64vARB_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformui64vARB")] + _glGetnUniformui64vARB_intptr _GetnUniformui64vARB_intptr { get; } + + // --- + + delegate void _glGetnUniformuiv(uint program, int location, int bufSize, uint[] @params); + [GlEntryPoint("glGetnUniformuiv")] + _glGetnUniformuiv _GetnUniformuiv { get; } + + delegate void _glGetnUniformuiv_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformuiv")] + _glGetnUniformuiv_ptr _GetnUniformuiv_ptr { get; } + + delegate void _glGetnUniformuiv_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformuiv")] + _glGetnUniformuiv_intptr _GetnUniformuiv_intptr { get; } + + // --- + + delegate void _glGetnUniformuivARB(uint program, int location, int bufSize, uint[] @params); + [GlEntryPoint("glGetnUniformuivARB")] + _glGetnUniformuivARB _GetnUniformuivARB { get; } + + delegate void _glGetnUniformuivARB_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformuivARB")] + _glGetnUniformuivARB_ptr _GetnUniformuivARB_ptr { get; } + + delegate void _glGetnUniformuivARB_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformuivARB")] + _glGetnUniformuivARB_intptr _GetnUniformuivARB_intptr { get; } + + // --- + + delegate void _glGetnUniformuivKHR(uint program, int location, int bufSize, uint[] @params); + [GlEntryPoint("glGetnUniformuivKHR")] + _glGetnUniformuivKHR _GetnUniformuivKHR { get; } + + delegate void _glGetnUniformuivKHR_ptr(uint program, int location, int bufSize, void* @params); + [GlEntryPoint("glGetnUniformuivKHR")] + _glGetnUniformuivKHR_ptr _GetnUniformuivKHR_ptr { get; } + + delegate void _glGetnUniformuivKHR_intptr(uint program, int location, int bufSize, IntPtr @params); + [GlEntryPoint("glGetnUniformuivKHR")] + _glGetnUniformuivKHR_intptr _GetnUniformuivKHR_intptr { get; } + + // --- + + delegate void _glGlobalAlphaFactorbSUN(sbyte factor); + [GlEntryPoint("glGlobalAlphaFactorbSUN")] + _glGlobalAlphaFactorbSUN _GlobalAlphaFactorbSUN { get; } + + // --- + + delegate void _glGlobalAlphaFactordSUN(double factor); + [GlEntryPoint("glGlobalAlphaFactordSUN")] + _glGlobalAlphaFactordSUN _GlobalAlphaFactordSUN { get; } + + // --- + + delegate void _glGlobalAlphaFactorfSUN(float factor); + [GlEntryPoint("glGlobalAlphaFactorfSUN")] + _glGlobalAlphaFactorfSUN _GlobalAlphaFactorfSUN { get; } + + // --- + + delegate void _glGlobalAlphaFactoriSUN(int factor); + [GlEntryPoint("glGlobalAlphaFactoriSUN")] + _glGlobalAlphaFactoriSUN _GlobalAlphaFactoriSUN { get; } + + // --- + + delegate void _glGlobalAlphaFactorsSUN(short factor); + [GlEntryPoint("glGlobalAlphaFactorsSUN")] + _glGlobalAlphaFactorsSUN _GlobalAlphaFactorsSUN { get; } + + // --- + + delegate void _glGlobalAlphaFactorubSUN(byte factor); + [GlEntryPoint("glGlobalAlphaFactorubSUN")] + _glGlobalAlphaFactorubSUN _GlobalAlphaFactorubSUN { get; } + + // --- + + delegate void _glGlobalAlphaFactoruiSUN(uint factor); + [GlEntryPoint("glGlobalAlphaFactoruiSUN")] + _glGlobalAlphaFactoruiSUN _GlobalAlphaFactoruiSUN { get; } + + // --- + + delegate void _glGlobalAlphaFactorusSUN(ushort factor); + [GlEntryPoint("glGlobalAlphaFactorusSUN")] + _glGlobalAlphaFactorusSUN _GlobalAlphaFactorusSUN { get; } + + // --- + + delegate void _glHint(HintTarget target, HintMode mode); + [GlEntryPoint("glHint")] + _glHint _Hint { get; } + + // --- + + delegate void _glHintPGI(HintTargetPGI target, int mode); + [GlEntryPoint("glHintPGI")] + _glHintPGI _HintPGI { get; } + + // --- + + delegate void _glHistogram(HistogramTargetEXT target, int width, InternalFormat internalformat, bool sink); + [GlEntryPoint("glHistogram")] + _glHistogram _Histogram { get; } + + // --- + + delegate void _glHistogramEXT(HistogramTargetEXT target, int width, InternalFormat internalformat, bool sink); + [GlEntryPoint("glHistogramEXT")] + _glHistogramEXT _HistogramEXT { get; } + + // --- + + delegate void _glIglooInterfaceSGIX(int pname, IntPtr @params); + [GlEntryPoint("glIglooInterfaceSGIX")] + _glIglooInterfaceSGIX _IglooInterfaceSGIX { get; } + + // --- + + delegate void _glImageTransformParameterfHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, float param); + [GlEntryPoint("glImageTransformParameterfHP")] + _glImageTransformParameterfHP _ImageTransformParameterfHP { get; } + + // --- + + delegate void _glImageTransformParameterfvHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, float[] @params); + [GlEntryPoint("glImageTransformParameterfvHP")] + _glImageTransformParameterfvHP _ImageTransformParameterfvHP { get; } + + delegate void _glImageTransformParameterfvHP_ptr(ImageTransformTargetHP target, ImageTransformPNameHP pname, void* @params); + [GlEntryPoint("glImageTransformParameterfvHP")] + _glImageTransformParameterfvHP_ptr _ImageTransformParameterfvHP_ptr { get; } + + delegate void _glImageTransformParameterfvHP_intptr(ImageTransformTargetHP target, ImageTransformPNameHP pname, IntPtr @params); + [GlEntryPoint("glImageTransformParameterfvHP")] + _glImageTransformParameterfvHP_intptr _ImageTransformParameterfvHP_intptr { get; } + + // --- + + delegate void _glImageTransformParameteriHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, int param); + [GlEntryPoint("glImageTransformParameteriHP")] + _glImageTransformParameteriHP _ImageTransformParameteriHP { get; } + + // --- + + delegate void _glImageTransformParameterivHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, int[] @params); + [GlEntryPoint("glImageTransformParameterivHP")] + _glImageTransformParameterivHP _ImageTransformParameterivHP { get; } + + delegate void _glImageTransformParameterivHP_ptr(ImageTransformTargetHP target, ImageTransformPNameHP pname, void* @params); + [GlEntryPoint("glImageTransformParameterivHP")] + _glImageTransformParameterivHP_ptr _ImageTransformParameterivHP_ptr { get; } + + delegate void _glImageTransformParameterivHP_intptr(ImageTransformTargetHP target, ImageTransformPNameHP pname, IntPtr @params); + [GlEntryPoint("glImageTransformParameterivHP")] + _glImageTransformParameterivHP_intptr _ImageTransformParameterivHP_intptr { get; } + + // --- + + delegate void _glImportMemoryFdEXT(uint memory, UInt64 size, ExternalHandleType handleType, int fd); + [GlEntryPoint("glImportMemoryFdEXT")] + _glImportMemoryFdEXT _ImportMemoryFdEXT { get; } + + // --- + + delegate void _glImportMemoryWin32HandleEXT(uint memory, UInt64 size, ExternalHandleType handleType, IntPtr handle); + [GlEntryPoint("glImportMemoryWin32HandleEXT")] + _glImportMemoryWin32HandleEXT _ImportMemoryWin32HandleEXT { get; } + + // --- + + delegate void _glImportMemoryWin32NameEXT(uint memory, UInt64 size, ExternalHandleType handleType, IntPtr name); + [GlEntryPoint("glImportMemoryWin32NameEXT")] + _glImportMemoryWin32NameEXT _ImportMemoryWin32NameEXT { get; } + + // --- + + delegate void _glImportSemaphoreFdEXT(uint semaphore, ExternalHandleType handleType, int fd); + [GlEntryPoint("glImportSemaphoreFdEXT")] + _glImportSemaphoreFdEXT _ImportSemaphoreFdEXT { get; } + + // --- + + delegate void _glImportSemaphoreWin32HandleEXT(uint semaphore, ExternalHandleType handleType, IntPtr handle); + [GlEntryPoint("glImportSemaphoreWin32HandleEXT")] + _glImportSemaphoreWin32HandleEXT _ImportSemaphoreWin32HandleEXT { get; } + + // --- + + delegate void _glImportSemaphoreWin32NameEXT(uint semaphore, ExternalHandleType handleType, IntPtr name); + [GlEntryPoint("glImportSemaphoreWin32NameEXT")] + _glImportSemaphoreWin32NameEXT _ImportSemaphoreWin32NameEXT { get; } + + // --- + + delegate int _glImportSyncEXT(int external_sync_type, IntPtr external_sync, int flags); + [GlEntryPoint("glImportSyncEXT")] + _glImportSyncEXT _ImportSyncEXT { get; } + + // --- + + delegate void _glIndexFormatNV(int type, int stride); + [GlEntryPoint("glIndexFormatNV")] + _glIndexFormatNV _IndexFormatNV { get; } + + // --- + + delegate void _glIndexFuncEXT(IndexFunctionEXT func, float @ref); + [GlEntryPoint("glIndexFuncEXT")] + _glIndexFuncEXT _IndexFuncEXT { get; } + + // --- + + delegate void _glIndexMask(uint mask); + [GlEntryPoint("glIndexMask")] + _glIndexMask _IndexMask { get; } + + // --- + + delegate void _glIndexMaterialEXT(MaterialFace face, IndexMaterialParameterEXT mode); + [GlEntryPoint("glIndexMaterialEXT")] + _glIndexMaterialEXT _IndexMaterialEXT { get; } + + // --- + + delegate void _glIndexPointer(IndexPointerType type, int stride, IntPtr pointer); + [GlEntryPoint("glIndexPointer")] + _glIndexPointer _IndexPointer { get; } + + // --- + + delegate void _glIndexPointerEXT(IndexPointerType type, int stride, int count, IntPtr pointer); + [GlEntryPoint("glIndexPointerEXT")] + _glIndexPointerEXT _IndexPointerEXT { get; } + + // --- + + delegate void _glIndexPointerListIBM(IndexPointerType type, int stride, IntPtr* pointer, int ptrstride); + [GlEntryPoint("glIndexPointerListIBM")] + _glIndexPointerListIBM _IndexPointerListIBM { get; } + + // --- + + delegate void _glIndexd(double c); + [GlEntryPoint("glIndexd")] + _glIndexd _Indexd { get; } + + // --- + + delegate void _glIndexdv(double[] c); + [GlEntryPoint("glIndexdv")] + _glIndexdv _Indexdv { get; } + + delegate void _glIndexdv_ptr(void* c); + [GlEntryPoint("glIndexdv")] + _glIndexdv_ptr _Indexdv_ptr { get; } + + delegate void _glIndexdv_intptr(IntPtr c); + [GlEntryPoint("glIndexdv")] + _glIndexdv_intptr _Indexdv_intptr { get; } + + // --- + + delegate void _glIndexf(float c); + [GlEntryPoint("glIndexf")] + _glIndexf _Indexf { get; } + + // --- + + delegate void _glIndexfv(float[] c); + [GlEntryPoint("glIndexfv")] + _glIndexfv _Indexfv { get; } + + delegate void _glIndexfv_ptr(void* c); + [GlEntryPoint("glIndexfv")] + _glIndexfv_ptr _Indexfv_ptr { get; } + + delegate void _glIndexfv_intptr(IntPtr c); + [GlEntryPoint("glIndexfv")] + _glIndexfv_intptr _Indexfv_intptr { get; } + + // --- + + delegate void _glIndexi(int c); + [GlEntryPoint("glIndexi")] + _glIndexi _Indexi { get; } + + // --- + + delegate void _glIndexiv(int[] c); + [GlEntryPoint("glIndexiv")] + _glIndexiv _Indexiv { get; } + + delegate void _glIndexiv_ptr(void* c); + [GlEntryPoint("glIndexiv")] + _glIndexiv_ptr _Indexiv_ptr { get; } + + delegate void _glIndexiv_intptr(IntPtr c); + [GlEntryPoint("glIndexiv")] + _glIndexiv_intptr _Indexiv_intptr { get; } + + // --- + + delegate void _glIndexs(short c); + [GlEntryPoint("glIndexs")] + _glIndexs _Indexs { get; } + + // --- + + delegate void _glIndexsv(short[] c); + [GlEntryPoint("glIndexsv")] + _glIndexsv _Indexsv { get; } + + delegate void _glIndexsv_ptr(void* c); + [GlEntryPoint("glIndexsv")] + _glIndexsv_ptr _Indexsv_ptr { get; } + + delegate void _glIndexsv_intptr(IntPtr c); + [GlEntryPoint("glIndexsv")] + _glIndexsv_intptr _Indexsv_intptr { get; } + + // --- + + delegate void _glIndexub(byte c); + [GlEntryPoint("glIndexub")] + _glIndexub _Indexub { get; } + + // --- + + delegate void _glIndexubv(byte[] c); + [GlEntryPoint("glIndexubv")] + _glIndexubv _Indexubv { get; } + + delegate void _glIndexubv_ptr(void* c); + [GlEntryPoint("glIndexubv")] + _glIndexubv_ptr _Indexubv_ptr { get; } + + delegate void _glIndexubv_intptr(IntPtr c); + [GlEntryPoint("glIndexubv")] + _glIndexubv_intptr _Indexubv_intptr { get; } + + // --- + + delegate void _glIndexxOES(float component); + [GlEntryPoint("glIndexxOES")] + _glIndexxOES _IndexxOES { get; } + + // --- + + delegate void _glIndexxvOES(float[] component); + [GlEntryPoint("glIndexxvOES")] + _glIndexxvOES _IndexxvOES { get; } + + delegate void _glIndexxvOES_ptr(void* component); + [GlEntryPoint("glIndexxvOES")] + _glIndexxvOES_ptr _IndexxvOES_ptr { get; } + + delegate void _glIndexxvOES_intptr(IntPtr component); + [GlEntryPoint("glIndexxvOES")] + _glIndexxvOES_intptr _IndexxvOES_intptr { get; } + + // --- + + delegate void _glInitNames(); + [GlEntryPoint("glInitNames")] + _glInitNames _InitNames { get; } + + // --- + + delegate void _glInsertComponentEXT(uint res, uint src, uint num); + [GlEntryPoint("glInsertComponentEXT")] + _glInsertComponentEXT _InsertComponentEXT { get; } + + // --- + + delegate void _glInsertEventMarkerEXT(int length, string marker); + [GlEntryPoint("glInsertEventMarkerEXT")] + _glInsertEventMarkerEXT _InsertEventMarkerEXT { get; } + + delegate void _glInsertEventMarkerEXT_ptr(int length, void* marker); + [GlEntryPoint("glInsertEventMarkerEXT")] + _glInsertEventMarkerEXT_ptr _InsertEventMarkerEXT_ptr { get; } + + delegate void _glInsertEventMarkerEXT_intptr(int length, IntPtr marker); + [GlEntryPoint("glInsertEventMarkerEXT")] + _glInsertEventMarkerEXT_intptr _InsertEventMarkerEXT_intptr { get; } + + // --- + + delegate void _glInstrumentsBufferSGIX(int size, int[] buffer); + [GlEntryPoint("glInstrumentsBufferSGIX")] + _glInstrumentsBufferSGIX _InstrumentsBufferSGIX { get; } + + delegate void _glInstrumentsBufferSGIX_ptr(int size, void* buffer); + [GlEntryPoint("glInstrumentsBufferSGIX")] + _glInstrumentsBufferSGIX_ptr _InstrumentsBufferSGIX_ptr { get; } + + delegate void _glInstrumentsBufferSGIX_intptr(int size, IntPtr buffer); + [GlEntryPoint("glInstrumentsBufferSGIX")] + _glInstrumentsBufferSGIX_intptr _InstrumentsBufferSGIX_intptr { get; } + + // --- + + delegate void _glInterleavedArrays(InterleavedArrayFormat format, int stride, IntPtr pointer); + [GlEntryPoint("glInterleavedArrays")] + _glInterleavedArrays _InterleavedArrays { get; } + + // --- + + delegate void _glInterpolatePathsNV(uint resultPath, uint pathA, uint pathB, float weight); + [GlEntryPoint("glInterpolatePathsNV")] + _glInterpolatePathsNV _InterpolatePathsNV { get; } + + // --- + + delegate void _glInvalidateBufferData(uint buffer); + [GlEntryPoint("glInvalidateBufferData")] + _glInvalidateBufferData _InvalidateBufferData { get; } + + // --- + + delegate void _glInvalidateBufferSubData(uint buffer, IntPtr offset, IntPtr length); + [GlEntryPoint("glInvalidateBufferSubData")] + _glInvalidateBufferSubData _InvalidateBufferSubData { get; } + + // --- + + delegate void _glInvalidateFramebuffer(FramebufferTarget target, int numAttachments, InvalidateFramebufferAttachment[] attachments); + [GlEntryPoint("glInvalidateFramebuffer")] + _glInvalidateFramebuffer _InvalidateFramebuffer { get; } + + delegate void _glInvalidateFramebuffer_ptr(FramebufferTarget target, int numAttachments, void* attachments); + [GlEntryPoint("glInvalidateFramebuffer")] + _glInvalidateFramebuffer_ptr _InvalidateFramebuffer_ptr { get; } + + delegate void _glInvalidateFramebuffer_intptr(FramebufferTarget target, int numAttachments, IntPtr attachments); + [GlEntryPoint("glInvalidateFramebuffer")] + _glInvalidateFramebuffer_intptr _InvalidateFramebuffer_intptr { get; } + + // --- + + delegate void _glInvalidateNamedFramebufferData(uint framebuffer, int numAttachments, FramebufferAttachment[] attachments); + [GlEntryPoint("glInvalidateNamedFramebufferData")] + _glInvalidateNamedFramebufferData _InvalidateNamedFramebufferData { get; } + + delegate void _glInvalidateNamedFramebufferData_ptr(uint framebuffer, int numAttachments, void* attachments); + [GlEntryPoint("glInvalidateNamedFramebufferData")] + _glInvalidateNamedFramebufferData_ptr _InvalidateNamedFramebufferData_ptr { get; } + + delegate void _glInvalidateNamedFramebufferData_intptr(uint framebuffer, int numAttachments, IntPtr attachments); + [GlEntryPoint("glInvalidateNamedFramebufferData")] + _glInvalidateNamedFramebufferData_intptr _InvalidateNamedFramebufferData_intptr { get; } + + // --- + + delegate void _glInvalidateNamedFramebufferSubData(uint framebuffer, int numAttachments, FramebufferAttachment[] attachments, int x, int y, int width, int height); + [GlEntryPoint("glInvalidateNamedFramebufferSubData")] + _glInvalidateNamedFramebufferSubData _InvalidateNamedFramebufferSubData { get; } + + delegate void _glInvalidateNamedFramebufferSubData_ptr(uint framebuffer, int numAttachments, void* attachments, int x, int y, int width, int height); + [GlEntryPoint("glInvalidateNamedFramebufferSubData")] + _glInvalidateNamedFramebufferSubData_ptr _InvalidateNamedFramebufferSubData_ptr { get; } + + delegate void _glInvalidateNamedFramebufferSubData_intptr(uint framebuffer, int numAttachments, IntPtr attachments, int x, int y, int width, int height); + [GlEntryPoint("glInvalidateNamedFramebufferSubData")] + _glInvalidateNamedFramebufferSubData_intptr _InvalidateNamedFramebufferSubData_intptr { get; } + + // --- + + delegate void _glInvalidateSubFramebuffer(FramebufferTarget target, int numAttachments, InvalidateFramebufferAttachment[] attachments, int x, int y, int width, int height); + [GlEntryPoint("glInvalidateSubFramebuffer")] + _glInvalidateSubFramebuffer _InvalidateSubFramebuffer { get; } + + delegate void _glInvalidateSubFramebuffer_ptr(FramebufferTarget target, int numAttachments, void* attachments, int x, int y, int width, int height); + [GlEntryPoint("glInvalidateSubFramebuffer")] + _glInvalidateSubFramebuffer_ptr _InvalidateSubFramebuffer_ptr { get; } + + delegate void _glInvalidateSubFramebuffer_intptr(FramebufferTarget target, int numAttachments, IntPtr attachments, int x, int y, int width, int height); + [GlEntryPoint("glInvalidateSubFramebuffer")] + _glInvalidateSubFramebuffer_intptr _InvalidateSubFramebuffer_intptr { get; } + + // --- + + delegate void _glInvalidateTexImage(uint texture, int level); + [GlEntryPoint("glInvalidateTexImage")] + _glInvalidateTexImage _InvalidateTexImage { get; } + + // --- + + delegate void _glInvalidateTexSubImage(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth); + [GlEntryPoint("glInvalidateTexSubImage")] + _glInvalidateTexSubImage _InvalidateTexSubImage { get; } + + // --- + + delegate bool _glIsAsyncMarkerSGIX(uint marker); + [GlEntryPoint("glIsAsyncMarkerSGIX")] + _glIsAsyncMarkerSGIX _IsAsyncMarkerSGIX { get; } + + // --- + + delegate bool _glIsBuffer(uint buffer); + [GlEntryPoint("glIsBuffer")] + _glIsBuffer _IsBuffer { get; } + + // --- + + delegate bool _glIsBufferARB(uint buffer); + [GlEntryPoint("glIsBufferARB")] + _glIsBufferARB _IsBufferARB { get; } + + // --- + + delegate bool _glIsBufferResidentNV(int target); + [GlEntryPoint("glIsBufferResidentNV")] + _glIsBufferResidentNV _IsBufferResidentNV { get; } + + // --- + + delegate bool _glIsCommandListNV(uint list); + [GlEntryPoint("glIsCommandListNV")] + _glIsCommandListNV _IsCommandListNV { get; } + + // --- + + delegate bool _glIsEnabled(EnableCap cap); + [GlEntryPoint("glIsEnabled")] + _glIsEnabled _IsEnabled { get; } + + // --- + + delegate bool _glIsEnabledIndexedEXT(EnableCap target, uint index); + [GlEntryPoint("glIsEnabledIndexedEXT")] + _glIsEnabledIndexedEXT _IsEnabledIndexedEXT { get; } + + // --- + + delegate bool _glIsEnabledi(EnableCap target, uint index); + [GlEntryPoint("glIsEnabledi")] + _glIsEnabledi _IsEnabledi { get; } + + // --- + + delegate bool _glIsEnablediEXT(EnableCap target, uint index); + [GlEntryPoint("glIsEnablediEXT")] + _glIsEnablediEXT _IsEnablediEXT { get; } + + // --- + + delegate bool _glIsEnablediNV(EnableCap target, uint index); + [GlEntryPoint("glIsEnablediNV")] + _glIsEnablediNV _IsEnablediNV { get; } + + // --- + + delegate bool _glIsEnablediOES(EnableCap target, uint index); + [GlEntryPoint("glIsEnablediOES")] + _glIsEnablediOES _IsEnablediOES { get; } + + // --- + + delegate bool _glIsFenceAPPLE(uint fence); + [GlEntryPoint("glIsFenceAPPLE")] + _glIsFenceAPPLE _IsFenceAPPLE { get; } + + // --- + + delegate bool _glIsFenceNV(uint fence); + [GlEntryPoint("glIsFenceNV")] + _glIsFenceNV _IsFenceNV { get; } + + // --- + + delegate bool _glIsFramebuffer(uint framebuffer); + [GlEntryPoint("glIsFramebuffer")] + _glIsFramebuffer _IsFramebuffer { get; } + + // --- + + delegate bool _glIsFramebufferEXT(uint framebuffer); + [GlEntryPoint("glIsFramebufferEXT")] + _glIsFramebufferEXT _IsFramebufferEXT { get; } + + // --- + + delegate bool _glIsFramebufferOES(uint framebuffer); + [GlEntryPoint("glIsFramebufferOES")] + _glIsFramebufferOES _IsFramebufferOES { get; } + + // --- + + delegate bool _glIsImageHandleResidentARB(UInt64 handle); + [GlEntryPoint("glIsImageHandleResidentARB")] + _glIsImageHandleResidentARB _IsImageHandleResidentARB { get; } + + // --- + + delegate bool _glIsImageHandleResidentNV(UInt64 handle); + [GlEntryPoint("glIsImageHandleResidentNV")] + _glIsImageHandleResidentNV _IsImageHandleResidentNV { get; } + + // --- + + delegate bool _glIsList(uint list); + [GlEntryPoint("glIsList")] + _glIsList _IsList { get; } + + // --- + + delegate bool _glIsMemoryObjectEXT(uint memoryObject); + [GlEntryPoint("glIsMemoryObjectEXT")] + _glIsMemoryObjectEXT _IsMemoryObjectEXT { get; } + + // --- + + delegate bool _glIsNameAMD(int identifier, uint name); + [GlEntryPoint("glIsNameAMD")] + _glIsNameAMD _IsNameAMD { get; } + + // --- + + delegate bool _glIsNamedBufferResidentNV(uint buffer); + [GlEntryPoint("glIsNamedBufferResidentNV")] + _glIsNamedBufferResidentNV _IsNamedBufferResidentNV { get; } + + // --- + + delegate bool _glIsNamedStringARB(int namelen, string name); + [GlEntryPoint("glIsNamedStringARB")] + _glIsNamedStringARB _IsNamedStringARB { get; } + + delegate bool _glIsNamedStringARB_ptr(int namelen, void* name); + [GlEntryPoint("glIsNamedStringARB")] + _glIsNamedStringARB_ptr _IsNamedStringARB_ptr { get; } + + delegate bool _glIsNamedStringARB_intptr(int namelen, IntPtr name); + [GlEntryPoint("glIsNamedStringARB")] + _glIsNamedStringARB_intptr _IsNamedStringARB_intptr { get; } + + // --- + + delegate bool _glIsObjectBufferATI(uint buffer); + [GlEntryPoint("glIsObjectBufferATI")] + _glIsObjectBufferATI _IsObjectBufferATI { get; } + + // --- + + delegate bool _glIsOcclusionQueryNV(uint id); + [GlEntryPoint("glIsOcclusionQueryNV")] + _glIsOcclusionQueryNV _IsOcclusionQueryNV { get; } + + // --- + + delegate bool _glIsPathNV(uint path); + [GlEntryPoint("glIsPathNV")] + _glIsPathNV _IsPathNV { get; } + + // --- + + delegate bool _glIsPointInFillPathNV(uint path, uint mask, float x, float y); + [GlEntryPoint("glIsPointInFillPathNV")] + _glIsPointInFillPathNV _IsPointInFillPathNV { get; } + + // --- + + delegate bool _glIsPointInStrokePathNV(uint path, float x, float y); + [GlEntryPoint("glIsPointInStrokePathNV")] + _glIsPointInStrokePathNV _IsPointInStrokePathNV { get; } + + // --- + + delegate bool _glIsProgram(uint program); + [GlEntryPoint("glIsProgram")] + _glIsProgram _IsProgram { get; } + + // --- + + delegate bool _glIsProgramARB(uint program); + [GlEntryPoint("glIsProgramARB")] + _glIsProgramARB _IsProgramARB { get; } + + // --- + + delegate bool _glIsProgramNV(uint id); + [GlEntryPoint("glIsProgramNV")] + _glIsProgramNV _IsProgramNV { get; } + + // --- + + delegate bool _glIsProgramPipeline(uint pipeline); + [GlEntryPoint("glIsProgramPipeline")] + _glIsProgramPipeline _IsProgramPipeline { get; } + + // --- + + delegate bool _glIsProgramPipelineEXT(uint pipeline); + [GlEntryPoint("glIsProgramPipelineEXT")] + _glIsProgramPipelineEXT _IsProgramPipelineEXT { get; } + + // --- + + delegate bool _glIsQuery(uint id); + [GlEntryPoint("glIsQuery")] + _glIsQuery _IsQuery { get; } + + // --- + + delegate bool _glIsQueryARB(uint id); + [GlEntryPoint("glIsQueryARB")] + _glIsQueryARB _IsQueryARB { get; } + + // --- + + delegate bool _glIsQueryEXT(uint id); + [GlEntryPoint("glIsQueryEXT")] + _glIsQueryEXT _IsQueryEXT { get; } + + // --- + + delegate bool _glIsRenderbuffer(uint renderbuffer); + [GlEntryPoint("glIsRenderbuffer")] + _glIsRenderbuffer _IsRenderbuffer { get; } + + // --- + + delegate bool _glIsRenderbufferEXT(uint renderbuffer); + [GlEntryPoint("glIsRenderbufferEXT")] + _glIsRenderbufferEXT _IsRenderbufferEXT { get; } + + // --- + + delegate bool _glIsRenderbufferOES(uint renderbuffer); + [GlEntryPoint("glIsRenderbufferOES")] + _glIsRenderbufferOES _IsRenderbufferOES { get; } + + // --- + + delegate bool _glIsSemaphoreEXT(uint semaphore); + [GlEntryPoint("glIsSemaphoreEXT")] + _glIsSemaphoreEXT _IsSemaphoreEXT { get; } + + // --- + + delegate bool _glIsSampler(uint sampler); + [GlEntryPoint("glIsSampler")] + _glIsSampler _IsSampler { get; } + + // --- + + delegate bool _glIsShader(uint shader); + [GlEntryPoint("glIsShader")] + _glIsShader _IsShader { get; } + + // --- + + delegate bool _glIsStateNV(uint state); + [GlEntryPoint("glIsStateNV")] + _glIsStateNV _IsStateNV { get; } + + // --- + + delegate bool _glIsSync(int sync); + [GlEntryPoint("glIsSync")] + _glIsSync _IsSync { get; } + + // --- + + delegate bool _glIsSyncAPPLE(int sync); + [GlEntryPoint("glIsSyncAPPLE")] + _glIsSyncAPPLE _IsSyncAPPLE { get; } + + // --- + + delegate bool _glIsTexture(uint texture); + [GlEntryPoint("glIsTexture")] + _glIsTexture _IsTexture { get; } + + // --- + + delegate bool _glIsTextureEXT(uint texture); + [GlEntryPoint("glIsTextureEXT")] + _glIsTextureEXT _IsTextureEXT { get; } + + // --- + + delegate bool _glIsTextureHandleResidentARB(UInt64 handle); + [GlEntryPoint("glIsTextureHandleResidentARB")] + _glIsTextureHandleResidentARB _IsTextureHandleResidentARB { get; } + + // --- + + delegate bool _glIsTextureHandleResidentNV(UInt64 handle); + [GlEntryPoint("glIsTextureHandleResidentNV")] + _glIsTextureHandleResidentNV _IsTextureHandleResidentNV { get; } + + // --- + + delegate bool _glIsTransformFeedback(uint id); + [GlEntryPoint("glIsTransformFeedback")] + _glIsTransformFeedback _IsTransformFeedback { get; } + + // --- + + delegate bool _glIsTransformFeedbackNV(uint id); + [GlEntryPoint("glIsTransformFeedbackNV")] + _glIsTransformFeedbackNV _IsTransformFeedbackNV { get; } + + // --- + + delegate bool _glIsVariantEnabledEXT(uint id, VariantCapEXT cap); + [GlEntryPoint("glIsVariantEnabledEXT")] + _glIsVariantEnabledEXT _IsVariantEnabledEXT { get; } + + // --- + + delegate bool _glIsVertexArray(uint array); + [GlEntryPoint("glIsVertexArray")] + _glIsVertexArray _IsVertexArray { get; } + + // --- + + delegate bool _glIsVertexArrayAPPLE(uint array); + [GlEntryPoint("glIsVertexArrayAPPLE")] + _glIsVertexArrayAPPLE _IsVertexArrayAPPLE { get; } + + // --- + + delegate bool _glIsVertexArrayOES(uint array); + [GlEntryPoint("glIsVertexArrayOES")] + _glIsVertexArrayOES _IsVertexArrayOES { get; } + + // --- + + delegate bool _glIsVertexAttribEnabledAPPLE(uint index, int pname); + [GlEntryPoint("glIsVertexAttribEnabledAPPLE")] + _glIsVertexAttribEnabledAPPLE _IsVertexAttribEnabledAPPLE { get; } + + // --- + + delegate void _glLGPUCopyImageSubDataNVX(uint sourceGpu, int destinationGpuMask, uint srcName, int srcTarget, int srcLevel, int srcX, int srxY, int srcZ, uint dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int width, int height, int depth); + [GlEntryPoint("glLGPUCopyImageSubDataNVX")] + _glLGPUCopyImageSubDataNVX _LGPUCopyImageSubDataNVX { get; } + + // --- + + delegate void _glLGPUInterlockNVX(); + [GlEntryPoint("glLGPUInterlockNVX")] + _glLGPUInterlockNVX _LGPUInterlockNVX { get; } + + // --- + + delegate void _glLGPUNamedBufferSubDataNVX(int gpuMask, uint buffer, IntPtr offset, IntPtr size, IntPtr data); + [GlEntryPoint("glLGPUNamedBufferSubDataNVX")] + _glLGPUNamedBufferSubDataNVX _LGPUNamedBufferSubDataNVX { get; } + + // --- + + delegate void _glLabelObjectEXT(int type, uint @object, int length, string label); + [GlEntryPoint("glLabelObjectEXT")] + _glLabelObjectEXT _LabelObjectEXT { get; } + + delegate void _glLabelObjectEXT_ptr(int type, uint @object, int length, void* label); + [GlEntryPoint("glLabelObjectEXT")] + _glLabelObjectEXT_ptr _LabelObjectEXT_ptr { get; } + + delegate void _glLabelObjectEXT_intptr(int type, uint @object, int length, IntPtr label); + [GlEntryPoint("glLabelObjectEXT")] + _glLabelObjectEXT_intptr _LabelObjectEXT_intptr { get; } + + // --- + + delegate void _glLightEnviSGIX(LightEnvParameterSGIX pname, int param); + [GlEntryPoint("glLightEnviSGIX")] + _glLightEnviSGIX _LightEnviSGIX { get; } + + // --- + + delegate void _glLightModelf(LightModelParameter pname, float param); + [GlEntryPoint("glLightModelf")] + _glLightModelf _LightModelf { get; } + + // --- + + delegate void _glLightModelfv(LightModelParameter pname, float[] @params); + [GlEntryPoint("glLightModelfv")] + _glLightModelfv _LightModelfv { get; } + + delegate void _glLightModelfv_ptr(LightModelParameter pname, void* @params); + [GlEntryPoint("glLightModelfv")] + _glLightModelfv_ptr _LightModelfv_ptr { get; } + + delegate void _glLightModelfv_intptr(LightModelParameter pname, IntPtr @params); + [GlEntryPoint("glLightModelfv")] + _glLightModelfv_intptr _LightModelfv_intptr { get; } + + // --- + + delegate void _glLightModeli(LightModelParameter pname, int param); + [GlEntryPoint("glLightModeli")] + _glLightModeli _LightModeli { get; } + + // --- + + delegate void _glLightModeliv(LightModelParameter pname, int[] @params); + [GlEntryPoint("glLightModeliv")] + _glLightModeliv _LightModeliv { get; } + + delegate void _glLightModeliv_ptr(LightModelParameter pname, void* @params); + [GlEntryPoint("glLightModeliv")] + _glLightModeliv_ptr _LightModeliv_ptr { get; } + + delegate void _glLightModeliv_intptr(LightModelParameter pname, IntPtr @params); + [GlEntryPoint("glLightModeliv")] + _glLightModeliv_intptr _LightModeliv_intptr { get; } + + // --- + + delegate void _glLightModelx(LightModelParameter pname, float param); + [GlEntryPoint("glLightModelx")] + _glLightModelx _LightModelx { get; } + + // --- + + delegate void _glLightModelxOES(LightModelParameter pname, float param); + [GlEntryPoint("glLightModelxOES")] + _glLightModelxOES _LightModelxOES { get; } + + // --- + + delegate void _glLightModelxv(LightModelParameter pname, float[] param); + [GlEntryPoint("glLightModelxv")] + _glLightModelxv _LightModelxv { get; } + + delegate void _glLightModelxv_ptr(LightModelParameter pname, void* param); + [GlEntryPoint("glLightModelxv")] + _glLightModelxv_ptr _LightModelxv_ptr { get; } + + delegate void _glLightModelxv_intptr(LightModelParameter pname, IntPtr param); + [GlEntryPoint("glLightModelxv")] + _glLightModelxv_intptr _LightModelxv_intptr { get; } + + // --- + + delegate void _glLightModelxvOES(LightModelParameter pname, float[] param); + [GlEntryPoint("glLightModelxvOES")] + _glLightModelxvOES _LightModelxvOES { get; } + + delegate void _glLightModelxvOES_ptr(LightModelParameter pname, void* param); + [GlEntryPoint("glLightModelxvOES")] + _glLightModelxvOES_ptr _LightModelxvOES_ptr { get; } + + delegate void _glLightModelxvOES_intptr(LightModelParameter pname, IntPtr param); + [GlEntryPoint("glLightModelxvOES")] + _glLightModelxvOES_intptr _LightModelxvOES_intptr { get; } + + // --- + + delegate void _glLightf(LightName light, LightParameter pname, float param); + [GlEntryPoint("glLightf")] + _glLightf _Lightf { get; } + + // --- + + delegate void _glLightfv(LightName light, LightParameter pname, float[] @params); + [GlEntryPoint("glLightfv")] + _glLightfv _Lightfv { get; } + + delegate void _glLightfv_ptr(LightName light, LightParameter pname, void* @params); + [GlEntryPoint("glLightfv")] + _glLightfv_ptr _Lightfv_ptr { get; } + + delegate void _glLightfv_intptr(LightName light, LightParameter pname, IntPtr @params); + [GlEntryPoint("glLightfv")] + _glLightfv_intptr _Lightfv_intptr { get; } + + // --- + + delegate void _glLighti(LightName light, LightParameter pname, int param); + [GlEntryPoint("glLighti")] + _glLighti _Lighti { get; } + + // --- + + delegate void _glLightiv(LightName light, LightParameter pname, int[] @params); + [GlEntryPoint("glLightiv")] + _glLightiv _Lightiv { get; } + + delegate void _glLightiv_ptr(LightName light, LightParameter pname, void* @params); + [GlEntryPoint("glLightiv")] + _glLightiv_ptr _Lightiv_ptr { get; } + + delegate void _glLightiv_intptr(LightName light, LightParameter pname, IntPtr @params); + [GlEntryPoint("glLightiv")] + _glLightiv_intptr _Lightiv_intptr { get; } + + // --- + + delegate void _glLightx(LightName light, LightParameter pname, float param); + [GlEntryPoint("glLightx")] + _glLightx _Lightx { get; } + + // --- + + delegate void _glLightxOES(LightName light, LightParameter pname, float param); + [GlEntryPoint("glLightxOES")] + _glLightxOES _LightxOES { get; } + + // --- + + delegate void _glLightxv(LightName light, LightParameter pname, float[] @params); + [GlEntryPoint("glLightxv")] + _glLightxv _Lightxv { get; } + + delegate void _glLightxv_ptr(LightName light, LightParameter pname, void* @params); + [GlEntryPoint("glLightxv")] + _glLightxv_ptr _Lightxv_ptr { get; } + + delegate void _glLightxv_intptr(LightName light, LightParameter pname, IntPtr @params); + [GlEntryPoint("glLightxv")] + _glLightxv_intptr _Lightxv_intptr { get; } + + // --- + + delegate void _glLightxvOES(LightName light, LightParameter pname, float[] @params); + [GlEntryPoint("glLightxvOES")] + _glLightxvOES _LightxvOES { get; } + + delegate void _glLightxvOES_ptr(LightName light, LightParameter pname, void* @params); + [GlEntryPoint("glLightxvOES")] + _glLightxvOES_ptr _LightxvOES_ptr { get; } + + delegate void _glLightxvOES_intptr(LightName light, LightParameter pname, IntPtr @params); + [GlEntryPoint("glLightxvOES")] + _glLightxvOES_intptr _LightxvOES_intptr { get; } + + // --- + + delegate void _glLineStipple(int factor, ushort pattern); + [GlEntryPoint("glLineStipple")] + _glLineStipple _LineStipple { get; } + + // --- + + delegate void _glLineWidth(float width); + [GlEntryPoint("glLineWidth")] + _glLineWidth _LineWidth { get; } + + // --- + + delegate void _glLineWidthx(float width); + [GlEntryPoint("glLineWidthx")] + _glLineWidthx _LineWidthx { get; } + + // --- + + delegate void _glLineWidthxOES(float width); + [GlEntryPoint("glLineWidthxOES")] + _glLineWidthxOES _LineWidthxOES { get; } + + // --- + + delegate void _glLinkProgram(uint program); + [GlEntryPoint("glLinkProgram")] + _glLinkProgram _LinkProgram { get; } + + // --- + + delegate void _glLinkProgramARB(int programObj); + [GlEntryPoint("glLinkProgramARB")] + _glLinkProgramARB _LinkProgramARB { get; } + + // --- + + delegate void _glListBase(uint @base); + [GlEntryPoint("glListBase")] + _glListBase _ListBase { get; } + + // --- + + delegate void _glListDrawCommandsStatesClientNV(uint list, uint segment, IntPtr* indirects, int[] sizes, uint[] states, uint[] fbos, uint count); + [GlEntryPoint("glListDrawCommandsStatesClientNV")] + _glListDrawCommandsStatesClientNV _ListDrawCommandsStatesClientNV { get; } + + delegate void _glListDrawCommandsStatesClientNV_ptr(uint list, uint segment, IntPtr* indirects, void* sizes, void* states, void* fbos, uint count); + [GlEntryPoint("glListDrawCommandsStatesClientNV")] + _glListDrawCommandsStatesClientNV_ptr _ListDrawCommandsStatesClientNV_ptr { get; } + + delegate void _glListDrawCommandsStatesClientNV_intptr(uint list, uint segment, IntPtr* indirects, IntPtr sizes, IntPtr states, IntPtr fbos, uint count); + [GlEntryPoint("glListDrawCommandsStatesClientNV")] + _glListDrawCommandsStatesClientNV_intptr _ListDrawCommandsStatesClientNV_intptr { get; } + + // --- + + delegate void _glListParameterfSGIX(uint list, ListParameterName pname, float param); + [GlEntryPoint("glListParameterfSGIX")] + _glListParameterfSGIX _ListParameterfSGIX { get; } + + // --- + + delegate void _glListParameterfvSGIX(uint list, ListParameterName pname, float[] @params); + [GlEntryPoint("glListParameterfvSGIX")] + _glListParameterfvSGIX _ListParameterfvSGIX { get; } + + delegate void _glListParameterfvSGIX_ptr(uint list, ListParameterName pname, void* @params); + [GlEntryPoint("glListParameterfvSGIX")] + _glListParameterfvSGIX_ptr _ListParameterfvSGIX_ptr { get; } + + delegate void _glListParameterfvSGIX_intptr(uint list, ListParameterName pname, IntPtr @params); + [GlEntryPoint("glListParameterfvSGIX")] + _glListParameterfvSGIX_intptr _ListParameterfvSGIX_intptr { get; } + + // --- + + delegate void _glListParameteriSGIX(uint list, ListParameterName pname, int param); + [GlEntryPoint("glListParameteriSGIX")] + _glListParameteriSGIX _ListParameteriSGIX { get; } + + // --- + + delegate void _glListParameterivSGIX(uint list, ListParameterName pname, int[] @params); + [GlEntryPoint("glListParameterivSGIX")] + _glListParameterivSGIX _ListParameterivSGIX { get; } + + delegate void _glListParameterivSGIX_ptr(uint list, ListParameterName pname, void* @params); + [GlEntryPoint("glListParameterivSGIX")] + _glListParameterivSGIX_ptr _ListParameterivSGIX_ptr { get; } + + delegate void _glListParameterivSGIX_intptr(uint list, ListParameterName pname, IntPtr @params); + [GlEntryPoint("glListParameterivSGIX")] + _glListParameterivSGIX_intptr _ListParameterivSGIX_intptr { get; } + + // --- + + delegate void _glLoadIdentity(); + [GlEntryPoint("glLoadIdentity")] + _glLoadIdentity _LoadIdentity { get; } + + // --- + + delegate void _glLoadIdentityDeformationMapSGIX(int mask); + [GlEntryPoint("glLoadIdentityDeformationMapSGIX")] + _glLoadIdentityDeformationMapSGIX _LoadIdentityDeformationMapSGIX { get; } + + // --- + + delegate void _glLoadMatrixd(double[] m); + [GlEntryPoint("glLoadMatrixd")] + _glLoadMatrixd _LoadMatrixd { get; } + + delegate void _glLoadMatrixd_ptr(void* m); + [GlEntryPoint("glLoadMatrixd")] + _glLoadMatrixd_ptr _LoadMatrixd_ptr { get; } + + delegate void _glLoadMatrixd_intptr(IntPtr m); + [GlEntryPoint("glLoadMatrixd")] + _glLoadMatrixd_intptr _LoadMatrixd_intptr { get; } + + // --- + + delegate void _glLoadMatrixf(float[] m); + [GlEntryPoint("glLoadMatrixf")] + _glLoadMatrixf _LoadMatrixf { get; } + + delegate void _glLoadMatrixf_ptr(void* m); + [GlEntryPoint("glLoadMatrixf")] + _glLoadMatrixf_ptr _LoadMatrixf_ptr { get; } + + delegate void _glLoadMatrixf_intptr(IntPtr m); + [GlEntryPoint("glLoadMatrixf")] + _glLoadMatrixf_intptr _LoadMatrixf_intptr { get; } + + // --- + + delegate void _glLoadMatrixx(float[] m); + [GlEntryPoint("glLoadMatrixx")] + _glLoadMatrixx _LoadMatrixx { get; } + + delegate void _glLoadMatrixx_ptr(void* m); + [GlEntryPoint("glLoadMatrixx")] + _glLoadMatrixx_ptr _LoadMatrixx_ptr { get; } + + delegate void _glLoadMatrixx_intptr(IntPtr m); + [GlEntryPoint("glLoadMatrixx")] + _glLoadMatrixx_intptr _LoadMatrixx_intptr { get; } + + // --- + + delegate void _glLoadMatrixxOES(float[] m); + [GlEntryPoint("glLoadMatrixxOES")] + _glLoadMatrixxOES _LoadMatrixxOES { get; } + + delegate void _glLoadMatrixxOES_ptr(void* m); + [GlEntryPoint("glLoadMatrixxOES")] + _glLoadMatrixxOES_ptr _LoadMatrixxOES_ptr { get; } + + delegate void _glLoadMatrixxOES_intptr(IntPtr m); + [GlEntryPoint("glLoadMatrixxOES")] + _glLoadMatrixxOES_intptr _LoadMatrixxOES_intptr { get; } + + // --- + + delegate void _glLoadName(uint name); + [GlEntryPoint("glLoadName")] + _glLoadName _LoadName { get; } + + // --- + + delegate void _glLoadPaletteFromModelViewMatrixOES(); + [GlEntryPoint("glLoadPaletteFromModelViewMatrixOES")] + _glLoadPaletteFromModelViewMatrixOES _LoadPaletteFromModelViewMatrixOES { get; } + + // --- + + delegate void _glLoadProgramNV(VertexAttribEnumNV target, uint id, int len, byte[] program); + [GlEntryPoint("glLoadProgramNV")] + _glLoadProgramNV _LoadProgramNV { get; } + + delegate void _glLoadProgramNV_ptr(VertexAttribEnumNV target, uint id, int len, void* program); + [GlEntryPoint("glLoadProgramNV")] + _glLoadProgramNV_ptr _LoadProgramNV_ptr { get; } + + delegate void _glLoadProgramNV_intptr(VertexAttribEnumNV target, uint id, int len, IntPtr program); + [GlEntryPoint("glLoadProgramNV")] + _glLoadProgramNV_intptr _LoadProgramNV_intptr { get; } + + // --- + + delegate void _glLoadTransposeMatrixd(double[] m); + [GlEntryPoint("glLoadTransposeMatrixd")] + _glLoadTransposeMatrixd _LoadTransposeMatrixd { get; } + + delegate void _glLoadTransposeMatrixd_ptr(void* m); + [GlEntryPoint("glLoadTransposeMatrixd")] + _glLoadTransposeMatrixd_ptr _LoadTransposeMatrixd_ptr { get; } + + delegate void _glLoadTransposeMatrixd_intptr(IntPtr m); + [GlEntryPoint("glLoadTransposeMatrixd")] + _glLoadTransposeMatrixd_intptr _LoadTransposeMatrixd_intptr { get; } + + // --- + + delegate void _glLoadTransposeMatrixdARB(double[] m); + [GlEntryPoint("glLoadTransposeMatrixdARB")] + _glLoadTransposeMatrixdARB _LoadTransposeMatrixdARB { get; } + + delegate void _glLoadTransposeMatrixdARB_ptr(void* m); + [GlEntryPoint("glLoadTransposeMatrixdARB")] + _glLoadTransposeMatrixdARB_ptr _LoadTransposeMatrixdARB_ptr { get; } + + delegate void _glLoadTransposeMatrixdARB_intptr(IntPtr m); + [GlEntryPoint("glLoadTransposeMatrixdARB")] + _glLoadTransposeMatrixdARB_intptr _LoadTransposeMatrixdARB_intptr { get; } + + // --- + + delegate void _glLoadTransposeMatrixf(float[] m); + [GlEntryPoint("glLoadTransposeMatrixf")] + _glLoadTransposeMatrixf _LoadTransposeMatrixf { get; } + + delegate void _glLoadTransposeMatrixf_ptr(void* m); + [GlEntryPoint("glLoadTransposeMatrixf")] + _glLoadTransposeMatrixf_ptr _LoadTransposeMatrixf_ptr { get; } + + delegate void _glLoadTransposeMatrixf_intptr(IntPtr m); + [GlEntryPoint("glLoadTransposeMatrixf")] + _glLoadTransposeMatrixf_intptr _LoadTransposeMatrixf_intptr { get; } + + // --- + + delegate void _glLoadTransposeMatrixfARB(float[] m); + [GlEntryPoint("glLoadTransposeMatrixfARB")] + _glLoadTransposeMatrixfARB _LoadTransposeMatrixfARB { get; } + + delegate void _glLoadTransposeMatrixfARB_ptr(void* m); + [GlEntryPoint("glLoadTransposeMatrixfARB")] + _glLoadTransposeMatrixfARB_ptr _LoadTransposeMatrixfARB_ptr { get; } + + delegate void _glLoadTransposeMatrixfARB_intptr(IntPtr m); + [GlEntryPoint("glLoadTransposeMatrixfARB")] + _glLoadTransposeMatrixfARB_intptr _LoadTransposeMatrixfARB_intptr { get; } + + // --- + + delegate void _glLoadTransposeMatrixxOES(float[] m); + [GlEntryPoint("glLoadTransposeMatrixxOES")] + _glLoadTransposeMatrixxOES _LoadTransposeMatrixxOES { get; } + + delegate void _glLoadTransposeMatrixxOES_ptr(void* m); + [GlEntryPoint("glLoadTransposeMatrixxOES")] + _glLoadTransposeMatrixxOES_ptr _LoadTransposeMatrixxOES_ptr { get; } + + delegate void _glLoadTransposeMatrixxOES_intptr(IntPtr m); + [GlEntryPoint("glLoadTransposeMatrixxOES")] + _glLoadTransposeMatrixxOES_intptr _LoadTransposeMatrixxOES_intptr { get; } + + // --- + + delegate void _glLockArraysEXT(int first, int count); + [GlEntryPoint("glLockArraysEXT")] + _glLockArraysEXT _LockArraysEXT { get; } + + // --- + + delegate void _glLogicOp(LogicOp opcode); + [GlEntryPoint("glLogicOp")] + _glLogicOp _LogicOp { get; } + + // --- + + delegate void _glMakeBufferNonResidentNV(int target); + [GlEntryPoint("glMakeBufferNonResidentNV")] + _glMakeBufferNonResidentNV _MakeBufferNonResidentNV { get; } + + // --- + + delegate void _glMakeBufferResidentNV(int target, int access); + [GlEntryPoint("glMakeBufferResidentNV")] + _glMakeBufferResidentNV _MakeBufferResidentNV { get; } + + // --- + + delegate void _glMakeImageHandleNonResidentARB(UInt64 handle); + [GlEntryPoint("glMakeImageHandleNonResidentARB")] + _glMakeImageHandleNonResidentARB _MakeImageHandleNonResidentARB { get; } + + // --- + + delegate void _glMakeImageHandleNonResidentNV(UInt64 handle); + [GlEntryPoint("glMakeImageHandleNonResidentNV")] + _glMakeImageHandleNonResidentNV _MakeImageHandleNonResidentNV { get; } + + // --- + + delegate void _glMakeImageHandleResidentARB(UInt64 handle, int access); + [GlEntryPoint("glMakeImageHandleResidentARB")] + _glMakeImageHandleResidentARB _MakeImageHandleResidentARB { get; } + + // --- + + delegate void _glMakeImageHandleResidentNV(UInt64 handle, int access); + [GlEntryPoint("glMakeImageHandleResidentNV")] + _glMakeImageHandleResidentNV _MakeImageHandleResidentNV { get; } + + // --- + + delegate void _glMakeNamedBufferNonResidentNV(uint buffer); + [GlEntryPoint("glMakeNamedBufferNonResidentNV")] + _glMakeNamedBufferNonResidentNV _MakeNamedBufferNonResidentNV { get; } + + // --- + + delegate void _glMakeNamedBufferResidentNV(uint buffer, int access); + [GlEntryPoint("glMakeNamedBufferResidentNV")] + _glMakeNamedBufferResidentNV _MakeNamedBufferResidentNV { get; } + + // --- + + delegate void _glMakeTextureHandleNonResidentARB(UInt64 handle); + [GlEntryPoint("glMakeTextureHandleNonResidentARB")] + _glMakeTextureHandleNonResidentARB _MakeTextureHandleNonResidentARB { get; } + + // --- + + delegate void _glMakeTextureHandleNonResidentNV(UInt64 handle); + [GlEntryPoint("glMakeTextureHandleNonResidentNV")] + _glMakeTextureHandleNonResidentNV _MakeTextureHandleNonResidentNV { get; } + + // --- + + delegate void _glMakeTextureHandleResidentARB(UInt64 handle); + [GlEntryPoint("glMakeTextureHandleResidentARB")] + _glMakeTextureHandleResidentARB _MakeTextureHandleResidentARB { get; } + + // --- + + delegate void _glMakeTextureHandleResidentNV(UInt64 handle); + [GlEntryPoint("glMakeTextureHandleResidentNV")] + _glMakeTextureHandleResidentNV _MakeTextureHandleResidentNV { get; } + + // --- + + delegate void _glMap1d(MapTarget target, double u1, double u2, int stride, int order, double[] points); + [GlEntryPoint("glMap1d")] + _glMap1d _Map1d { get; } + + delegate void _glMap1d_ptr(MapTarget target, double u1, double u2, int stride, int order, void* points); + [GlEntryPoint("glMap1d")] + _glMap1d_ptr _Map1d_ptr { get; } + + delegate void _glMap1d_intptr(MapTarget target, double u1, double u2, int stride, int order, IntPtr points); + [GlEntryPoint("glMap1d")] + _glMap1d_intptr _Map1d_intptr { get; } + + // --- + + delegate void _glMap1f(MapTarget target, float u1, float u2, int stride, int order, float[] points); + [GlEntryPoint("glMap1f")] + _glMap1f _Map1f { get; } + + delegate void _glMap1f_ptr(MapTarget target, float u1, float u2, int stride, int order, void* points); + [GlEntryPoint("glMap1f")] + _glMap1f_ptr _Map1f_ptr { get; } + + delegate void _glMap1f_intptr(MapTarget target, float u1, float u2, int stride, int order, IntPtr points); + [GlEntryPoint("glMap1f")] + _glMap1f_intptr _Map1f_intptr { get; } + + // --- + + delegate void _glMap1xOES(MapTarget target, float u1, float u2, int stride, int order, float points); + [GlEntryPoint("glMap1xOES")] + _glMap1xOES _Map1xOES { get; } + + // --- + + delegate void _glMap2d(MapTarget target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double[] points); + [GlEntryPoint("glMap2d")] + _glMap2d _Map2d { get; } + + delegate void _glMap2d_ptr(MapTarget target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, void* points); + [GlEntryPoint("glMap2d")] + _glMap2d_ptr _Map2d_ptr { get; } + + delegate void _glMap2d_intptr(MapTarget target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, IntPtr points); + [GlEntryPoint("glMap2d")] + _glMap2d_intptr _Map2d_intptr { get; } + + // --- + + delegate void _glMap2f(MapTarget target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float[] points); + [GlEntryPoint("glMap2f")] + _glMap2f _Map2f { get; } + + delegate void _glMap2f_ptr(MapTarget target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, void* points); + [GlEntryPoint("glMap2f")] + _glMap2f_ptr _Map2f_ptr { get; } + + delegate void _glMap2f_intptr(MapTarget target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, IntPtr points); + [GlEntryPoint("glMap2f")] + _glMap2f_intptr _Map2f_intptr { get; } + + // --- + + delegate void _glMap2xOES(MapTarget target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float points); + [GlEntryPoint("glMap2xOES")] + _glMap2xOES _Map2xOES { get; } + + // --- + + delegate void _glMapBuffer(BufferTargetARB target, BufferAccessARB access); + [GlEntryPoint("glMapBuffer")] + _glMapBuffer _MapBuffer { get; } + + // --- + + delegate void _glMapBufferARB(BufferTargetARB target, BufferAccessARB access); + [GlEntryPoint("glMapBufferARB")] + _glMapBufferARB _MapBufferARB { get; } + + // --- + + delegate void _glMapBufferOES(BufferTargetARB target, BufferAccessARB access); + [GlEntryPoint("glMapBufferOES")] + _glMapBufferOES _MapBufferOES { get; } + + // --- + + delegate void _glMapBufferRange(BufferTargetARB target, IntPtr offset, IntPtr length, int access); + [GlEntryPoint("glMapBufferRange")] + _glMapBufferRange _MapBufferRange { get; } + + // --- + + delegate void _glMapBufferRangeEXT(BufferTargetARB target, IntPtr offset, IntPtr length, int access); + [GlEntryPoint("glMapBufferRangeEXT")] + _glMapBufferRangeEXT _MapBufferRangeEXT { get; } + + // --- + + delegate void _glMapControlPointsNV(EvalTargetNV target, uint index, MapTypeNV type, int ustride, int vstride, int uorder, int vorder, bool packed, IntPtr points); + [GlEntryPoint("glMapControlPointsNV")] + _glMapControlPointsNV _MapControlPointsNV { get; } + + // --- + + delegate void _glMapGrid1d(int un, double u1, double u2); + [GlEntryPoint("glMapGrid1d")] + _glMapGrid1d _MapGrid1d { get; } + + // --- + + delegate void _glMapGrid1f(int un, float u1, float u2); + [GlEntryPoint("glMapGrid1f")] + _glMapGrid1f _MapGrid1f { get; } + + // --- + + delegate void _glMapGrid1xOES(int n, float u1, float u2); + [GlEntryPoint("glMapGrid1xOES")] + _glMapGrid1xOES _MapGrid1xOES { get; } + + // --- + + delegate void _glMapGrid2d(int un, double u1, double u2, int vn, double v1, double v2); + [GlEntryPoint("glMapGrid2d")] + _glMapGrid2d _MapGrid2d { get; } + + // --- + + delegate void _glMapGrid2f(int un, float u1, float u2, int vn, float v1, float v2); + [GlEntryPoint("glMapGrid2f")] + _glMapGrid2f _MapGrid2f { get; } + + // --- + + delegate void _glMapGrid2xOES(int n, float u1, float u2, float v1, float v2); + [GlEntryPoint("glMapGrid2xOES")] + _glMapGrid2xOES _MapGrid2xOES { get; } + + // --- + + delegate void _glMapNamedBuffer(uint buffer, BufferAccessARB access); + [GlEntryPoint("glMapNamedBuffer")] + _glMapNamedBuffer _MapNamedBuffer { get; } + + // --- + + delegate void _glMapNamedBufferEXT(uint buffer, BufferAccessARB access); + [GlEntryPoint("glMapNamedBufferEXT")] + _glMapNamedBufferEXT _MapNamedBufferEXT { get; } + + // --- + + delegate void _glMapNamedBufferRange(uint buffer, IntPtr offset, IntPtr length, int access); + [GlEntryPoint("glMapNamedBufferRange")] + _glMapNamedBufferRange _MapNamedBufferRange { get; } + + // --- + + delegate void _glMapNamedBufferRangeEXT(uint buffer, IntPtr offset, IntPtr length, int access); + [GlEntryPoint("glMapNamedBufferRangeEXT")] + _glMapNamedBufferRangeEXT _MapNamedBufferRangeEXT { get; } + + // --- + + delegate void _glMapObjectBufferATI(uint buffer); + [GlEntryPoint("glMapObjectBufferATI")] + _glMapObjectBufferATI _MapObjectBufferATI { get; } + + // --- + + delegate void _glMapParameterfvNV(EvalTargetNV target, MapParameterNV pname, float[] @params); + [GlEntryPoint("glMapParameterfvNV")] + _glMapParameterfvNV _MapParameterfvNV { get; } + + delegate void _glMapParameterfvNV_ptr(EvalTargetNV target, MapParameterNV pname, void* @params); + [GlEntryPoint("glMapParameterfvNV")] + _glMapParameterfvNV_ptr _MapParameterfvNV_ptr { get; } + + delegate void _glMapParameterfvNV_intptr(EvalTargetNV target, MapParameterNV pname, IntPtr @params); + [GlEntryPoint("glMapParameterfvNV")] + _glMapParameterfvNV_intptr _MapParameterfvNV_intptr { get; } + + // --- + + delegate void _glMapParameterivNV(EvalTargetNV target, MapParameterNV pname, int[] @params); + [GlEntryPoint("glMapParameterivNV")] + _glMapParameterivNV _MapParameterivNV { get; } + + delegate void _glMapParameterivNV_ptr(EvalTargetNV target, MapParameterNV pname, void* @params); + [GlEntryPoint("glMapParameterivNV")] + _glMapParameterivNV_ptr _MapParameterivNV_ptr { get; } + + delegate void _glMapParameterivNV_intptr(EvalTargetNV target, MapParameterNV pname, IntPtr @params); + [GlEntryPoint("glMapParameterivNV")] + _glMapParameterivNV_intptr _MapParameterivNV_intptr { get; } + + // --- + + delegate void _glMapTexture2DINTEL(uint texture, int level, int access, out int stride, out int layout); + [GlEntryPoint("glMapTexture2DINTEL")] + _glMapTexture2DINTEL _MapTexture2DINTEL { get; } + + // --- + + delegate void _glMapVertexAttrib1dAPPLE(uint index, uint size, double u1, double u2, int stride, int order, double[] points); + [GlEntryPoint("glMapVertexAttrib1dAPPLE")] + _glMapVertexAttrib1dAPPLE _MapVertexAttrib1dAPPLE { get; } + + delegate void _glMapVertexAttrib1dAPPLE_ptr(uint index, uint size, double u1, double u2, int stride, int order, void* points); + [GlEntryPoint("glMapVertexAttrib1dAPPLE")] + _glMapVertexAttrib1dAPPLE_ptr _MapVertexAttrib1dAPPLE_ptr { get; } + + delegate void _glMapVertexAttrib1dAPPLE_intptr(uint index, uint size, double u1, double u2, int stride, int order, IntPtr points); + [GlEntryPoint("glMapVertexAttrib1dAPPLE")] + _glMapVertexAttrib1dAPPLE_intptr _MapVertexAttrib1dAPPLE_intptr { get; } + + // --- + + delegate void _glMapVertexAttrib1fAPPLE(uint index, uint size, float u1, float u2, int stride, int order, float[] points); + [GlEntryPoint("glMapVertexAttrib1fAPPLE")] + _glMapVertexAttrib1fAPPLE _MapVertexAttrib1fAPPLE { get; } + + delegate void _glMapVertexAttrib1fAPPLE_ptr(uint index, uint size, float u1, float u2, int stride, int order, void* points); + [GlEntryPoint("glMapVertexAttrib1fAPPLE")] + _glMapVertexAttrib1fAPPLE_ptr _MapVertexAttrib1fAPPLE_ptr { get; } + + delegate void _glMapVertexAttrib1fAPPLE_intptr(uint index, uint size, float u1, float u2, int stride, int order, IntPtr points); + [GlEntryPoint("glMapVertexAttrib1fAPPLE")] + _glMapVertexAttrib1fAPPLE_intptr _MapVertexAttrib1fAPPLE_intptr { get; } + + // --- + + delegate void _glMapVertexAttrib2dAPPLE(uint index, uint size, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double[] points); + [GlEntryPoint("glMapVertexAttrib2dAPPLE")] + _glMapVertexAttrib2dAPPLE _MapVertexAttrib2dAPPLE { get; } + + delegate void _glMapVertexAttrib2dAPPLE_ptr(uint index, uint size, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, void* points); + [GlEntryPoint("glMapVertexAttrib2dAPPLE")] + _glMapVertexAttrib2dAPPLE_ptr _MapVertexAttrib2dAPPLE_ptr { get; } + + delegate void _glMapVertexAttrib2dAPPLE_intptr(uint index, uint size, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, IntPtr points); + [GlEntryPoint("glMapVertexAttrib2dAPPLE")] + _glMapVertexAttrib2dAPPLE_intptr _MapVertexAttrib2dAPPLE_intptr { get; } + + // --- + + delegate void _glMapVertexAttrib2fAPPLE(uint index, uint size, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float[] points); + [GlEntryPoint("glMapVertexAttrib2fAPPLE")] + _glMapVertexAttrib2fAPPLE _MapVertexAttrib2fAPPLE { get; } + + delegate void _glMapVertexAttrib2fAPPLE_ptr(uint index, uint size, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, void* points); + [GlEntryPoint("glMapVertexAttrib2fAPPLE")] + _glMapVertexAttrib2fAPPLE_ptr _MapVertexAttrib2fAPPLE_ptr { get; } + + delegate void _glMapVertexAttrib2fAPPLE_intptr(uint index, uint size, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, IntPtr points); + [GlEntryPoint("glMapVertexAttrib2fAPPLE")] + _glMapVertexAttrib2fAPPLE_intptr _MapVertexAttrib2fAPPLE_intptr { get; } + + // --- + + delegate void _glMaterialf(MaterialFace face, MaterialParameter pname, float param); + [GlEntryPoint("glMaterialf")] + _glMaterialf _Materialf { get; } + + // --- + + delegate void _glMaterialfv(MaterialFace face, MaterialParameter pname, float[] @params); + [GlEntryPoint("glMaterialfv")] + _glMaterialfv _Materialfv { get; } + + delegate void _glMaterialfv_ptr(MaterialFace face, MaterialParameter pname, void* @params); + [GlEntryPoint("glMaterialfv")] + _glMaterialfv_ptr _Materialfv_ptr { get; } + + delegate void _glMaterialfv_intptr(MaterialFace face, MaterialParameter pname, IntPtr @params); + [GlEntryPoint("glMaterialfv")] + _glMaterialfv_intptr _Materialfv_intptr { get; } + + // --- + + delegate void _glMateriali(MaterialFace face, MaterialParameter pname, int param); + [GlEntryPoint("glMateriali")] + _glMateriali _Materiali { get; } + + // --- + + delegate void _glMaterialiv(MaterialFace face, MaterialParameter pname, int[] @params); + [GlEntryPoint("glMaterialiv")] + _glMaterialiv _Materialiv { get; } + + delegate void _glMaterialiv_ptr(MaterialFace face, MaterialParameter pname, void* @params); + [GlEntryPoint("glMaterialiv")] + _glMaterialiv_ptr _Materialiv_ptr { get; } + + delegate void _glMaterialiv_intptr(MaterialFace face, MaterialParameter pname, IntPtr @params); + [GlEntryPoint("glMaterialiv")] + _glMaterialiv_intptr _Materialiv_intptr { get; } + + // --- + + delegate void _glMaterialx(MaterialFace face, MaterialParameter pname, float param); + [GlEntryPoint("glMaterialx")] + _glMaterialx _Materialx { get; } + + // --- + + delegate void _glMaterialxOES(MaterialFace face, MaterialParameter pname, float param); + [GlEntryPoint("glMaterialxOES")] + _glMaterialxOES _MaterialxOES { get; } + + // --- + + delegate void _glMaterialxv(MaterialFace face, MaterialParameter pname, float[] param); + [GlEntryPoint("glMaterialxv")] + _glMaterialxv _Materialxv { get; } + + delegate void _glMaterialxv_ptr(MaterialFace face, MaterialParameter pname, void* param); + [GlEntryPoint("glMaterialxv")] + _glMaterialxv_ptr _Materialxv_ptr { get; } + + delegate void _glMaterialxv_intptr(MaterialFace face, MaterialParameter pname, IntPtr param); + [GlEntryPoint("glMaterialxv")] + _glMaterialxv_intptr _Materialxv_intptr { get; } + + // --- + + delegate void _glMaterialxvOES(MaterialFace face, MaterialParameter pname, float[] param); + [GlEntryPoint("glMaterialxvOES")] + _glMaterialxvOES _MaterialxvOES { get; } + + delegate void _glMaterialxvOES_ptr(MaterialFace face, MaterialParameter pname, void* param); + [GlEntryPoint("glMaterialxvOES")] + _glMaterialxvOES_ptr _MaterialxvOES_ptr { get; } + + delegate void _glMaterialxvOES_intptr(MaterialFace face, MaterialParameter pname, IntPtr param); + [GlEntryPoint("glMaterialxvOES")] + _glMaterialxvOES_intptr _MaterialxvOES_intptr { get; } + + // --- + + delegate void _glMatrixFrustumEXT(MatrixMode mode, double left, double right, double bottom, double top, double zNear, double zFar); + [GlEntryPoint("glMatrixFrustumEXT")] + _glMatrixFrustumEXT _MatrixFrustumEXT { get; } + + // --- + + delegate void _glMatrixIndexPointerARB(int size, MatrixIndexPointerTypeARB type, int stride, IntPtr pointer); + [GlEntryPoint("glMatrixIndexPointerARB")] + _glMatrixIndexPointerARB _MatrixIndexPointerARB { get; } + + // --- + + delegate void _glMatrixIndexPointerOES(int size, MatrixIndexPointerTypeARB type, int stride, IntPtr pointer); + [GlEntryPoint("glMatrixIndexPointerOES")] + _glMatrixIndexPointerOES _MatrixIndexPointerOES { get; } + + // --- + + delegate void _glMatrixIndexubvARB(int size, byte[] indices); + [GlEntryPoint("glMatrixIndexubvARB")] + _glMatrixIndexubvARB _MatrixIndexubvARB { get; } + + delegate void _glMatrixIndexubvARB_ptr(int size, void* indices); + [GlEntryPoint("glMatrixIndexubvARB")] + _glMatrixIndexubvARB_ptr _MatrixIndexubvARB_ptr { get; } + + delegate void _glMatrixIndexubvARB_intptr(int size, IntPtr indices); + [GlEntryPoint("glMatrixIndexubvARB")] + _glMatrixIndexubvARB_intptr _MatrixIndexubvARB_intptr { get; } + + // --- + + delegate void _glMatrixIndexuivARB(int size, uint[] indices); + [GlEntryPoint("glMatrixIndexuivARB")] + _glMatrixIndexuivARB _MatrixIndexuivARB { get; } + + delegate void _glMatrixIndexuivARB_ptr(int size, void* indices); + [GlEntryPoint("glMatrixIndexuivARB")] + _glMatrixIndexuivARB_ptr _MatrixIndexuivARB_ptr { get; } + + delegate void _glMatrixIndexuivARB_intptr(int size, IntPtr indices); + [GlEntryPoint("glMatrixIndexuivARB")] + _glMatrixIndexuivARB_intptr _MatrixIndexuivARB_intptr { get; } + + // --- + + delegate void _glMatrixIndexusvARB(int size, ushort[] indices); + [GlEntryPoint("glMatrixIndexusvARB")] + _glMatrixIndexusvARB _MatrixIndexusvARB { get; } + + delegate void _glMatrixIndexusvARB_ptr(int size, void* indices); + [GlEntryPoint("glMatrixIndexusvARB")] + _glMatrixIndexusvARB_ptr _MatrixIndexusvARB_ptr { get; } + + delegate void _glMatrixIndexusvARB_intptr(int size, IntPtr indices); + [GlEntryPoint("glMatrixIndexusvARB")] + _glMatrixIndexusvARB_intptr _MatrixIndexusvARB_intptr { get; } + + // --- + + delegate void _glMatrixLoad3x2fNV(int matrixMode, float[] m); + [GlEntryPoint("glMatrixLoad3x2fNV")] + _glMatrixLoad3x2fNV _MatrixLoad3x2fNV { get; } + + delegate void _glMatrixLoad3x2fNV_ptr(int matrixMode, void* m); + [GlEntryPoint("glMatrixLoad3x2fNV")] + _glMatrixLoad3x2fNV_ptr _MatrixLoad3x2fNV_ptr { get; } + + delegate void _glMatrixLoad3x2fNV_intptr(int matrixMode, IntPtr m); + [GlEntryPoint("glMatrixLoad3x2fNV")] + _glMatrixLoad3x2fNV_intptr _MatrixLoad3x2fNV_intptr { get; } + + // --- + + delegate void _glMatrixLoad3x3fNV(int matrixMode, float[] m); + [GlEntryPoint("glMatrixLoad3x3fNV")] + _glMatrixLoad3x3fNV _MatrixLoad3x3fNV { get; } + + delegate void _glMatrixLoad3x3fNV_ptr(int matrixMode, void* m); + [GlEntryPoint("glMatrixLoad3x3fNV")] + _glMatrixLoad3x3fNV_ptr _MatrixLoad3x3fNV_ptr { get; } + + delegate void _glMatrixLoad3x3fNV_intptr(int matrixMode, IntPtr m); + [GlEntryPoint("glMatrixLoad3x3fNV")] + _glMatrixLoad3x3fNV_intptr _MatrixLoad3x3fNV_intptr { get; } + + // --- + + delegate void _glMatrixLoadIdentityEXT(MatrixMode mode); + [GlEntryPoint("glMatrixLoadIdentityEXT")] + _glMatrixLoadIdentityEXT _MatrixLoadIdentityEXT { get; } + + // --- + + delegate void _glMatrixLoadTranspose3x3fNV(int matrixMode, float[] m); + [GlEntryPoint("glMatrixLoadTranspose3x3fNV")] + _glMatrixLoadTranspose3x3fNV _MatrixLoadTranspose3x3fNV { get; } + + delegate void _glMatrixLoadTranspose3x3fNV_ptr(int matrixMode, void* m); + [GlEntryPoint("glMatrixLoadTranspose3x3fNV")] + _glMatrixLoadTranspose3x3fNV_ptr _MatrixLoadTranspose3x3fNV_ptr { get; } + + delegate void _glMatrixLoadTranspose3x3fNV_intptr(int matrixMode, IntPtr m); + [GlEntryPoint("glMatrixLoadTranspose3x3fNV")] + _glMatrixLoadTranspose3x3fNV_intptr _MatrixLoadTranspose3x3fNV_intptr { get; } + + // --- + + delegate void _glMatrixLoadTransposedEXT(MatrixMode mode, double[] m); + [GlEntryPoint("glMatrixLoadTransposedEXT")] + _glMatrixLoadTransposedEXT _MatrixLoadTransposedEXT { get; } + + delegate void _glMatrixLoadTransposedEXT_ptr(MatrixMode mode, void* m); + [GlEntryPoint("glMatrixLoadTransposedEXT")] + _glMatrixLoadTransposedEXT_ptr _MatrixLoadTransposedEXT_ptr { get; } + + delegate void _glMatrixLoadTransposedEXT_intptr(MatrixMode mode, IntPtr m); + [GlEntryPoint("glMatrixLoadTransposedEXT")] + _glMatrixLoadTransposedEXT_intptr _MatrixLoadTransposedEXT_intptr { get; } + + // --- + + delegate void _glMatrixLoadTransposefEXT(MatrixMode mode, float[] m); + [GlEntryPoint("glMatrixLoadTransposefEXT")] + _glMatrixLoadTransposefEXT _MatrixLoadTransposefEXT { get; } + + delegate void _glMatrixLoadTransposefEXT_ptr(MatrixMode mode, void* m); + [GlEntryPoint("glMatrixLoadTransposefEXT")] + _glMatrixLoadTransposefEXT_ptr _MatrixLoadTransposefEXT_ptr { get; } + + delegate void _glMatrixLoadTransposefEXT_intptr(MatrixMode mode, IntPtr m); + [GlEntryPoint("glMatrixLoadTransposefEXT")] + _glMatrixLoadTransposefEXT_intptr _MatrixLoadTransposefEXT_intptr { get; } + + // --- + + delegate void _glMatrixLoaddEXT(MatrixMode mode, double[] m); + [GlEntryPoint("glMatrixLoaddEXT")] + _glMatrixLoaddEXT _MatrixLoaddEXT { get; } + + delegate void _glMatrixLoaddEXT_ptr(MatrixMode mode, void* m); + [GlEntryPoint("glMatrixLoaddEXT")] + _glMatrixLoaddEXT_ptr _MatrixLoaddEXT_ptr { get; } + + delegate void _glMatrixLoaddEXT_intptr(MatrixMode mode, IntPtr m); + [GlEntryPoint("glMatrixLoaddEXT")] + _glMatrixLoaddEXT_intptr _MatrixLoaddEXT_intptr { get; } + + // --- + + delegate void _glMatrixLoadfEXT(MatrixMode mode, float[] m); + [GlEntryPoint("glMatrixLoadfEXT")] + _glMatrixLoadfEXT _MatrixLoadfEXT { get; } + + delegate void _glMatrixLoadfEXT_ptr(MatrixMode mode, void* m); + [GlEntryPoint("glMatrixLoadfEXT")] + _glMatrixLoadfEXT_ptr _MatrixLoadfEXT_ptr { get; } + + delegate void _glMatrixLoadfEXT_intptr(MatrixMode mode, IntPtr m); + [GlEntryPoint("glMatrixLoadfEXT")] + _glMatrixLoadfEXT_intptr _MatrixLoadfEXT_intptr { get; } + + // --- + + delegate void _glMatrixMode(MatrixMode mode); + [GlEntryPoint("glMatrixMode")] + _glMatrixMode _MatrixMode { get; } + + // --- + + delegate void _glMatrixMult3x2fNV(int matrixMode, float[] m); + [GlEntryPoint("glMatrixMult3x2fNV")] + _glMatrixMult3x2fNV _MatrixMult3x2fNV { get; } + + delegate void _glMatrixMult3x2fNV_ptr(int matrixMode, void* m); + [GlEntryPoint("glMatrixMult3x2fNV")] + _glMatrixMult3x2fNV_ptr _MatrixMult3x2fNV_ptr { get; } + + delegate void _glMatrixMult3x2fNV_intptr(int matrixMode, IntPtr m); + [GlEntryPoint("glMatrixMult3x2fNV")] + _glMatrixMult3x2fNV_intptr _MatrixMult3x2fNV_intptr { get; } + + // --- + + delegate void _glMatrixMult3x3fNV(int matrixMode, float[] m); + [GlEntryPoint("glMatrixMult3x3fNV")] + _glMatrixMult3x3fNV _MatrixMult3x3fNV { get; } + + delegate void _glMatrixMult3x3fNV_ptr(int matrixMode, void* m); + [GlEntryPoint("glMatrixMult3x3fNV")] + _glMatrixMult3x3fNV_ptr _MatrixMult3x3fNV_ptr { get; } + + delegate void _glMatrixMult3x3fNV_intptr(int matrixMode, IntPtr m); + [GlEntryPoint("glMatrixMult3x3fNV")] + _glMatrixMult3x3fNV_intptr _MatrixMult3x3fNV_intptr { get; } + + // --- + + delegate void _glMatrixMultTranspose3x3fNV(int matrixMode, float[] m); + [GlEntryPoint("glMatrixMultTranspose3x3fNV")] + _glMatrixMultTranspose3x3fNV _MatrixMultTranspose3x3fNV { get; } + + delegate void _glMatrixMultTranspose3x3fNV_ptr(int matrixMode, void* m); + [GlEntryPoint("glMatrixMultTranspose3x3fNV")] + _glMatrixMultTranspose3x3fNV_ptr _MatrixMultTranspose3x3fNV_ptr { get; } + + delegate void _glMatrixMultTranspose3x3fNV_intptr(int matrixMode, IntPtr m); + [GlEntryPoint("glMatrixMultTranspose3x3fNV")] + _glMatrixMultTranspose3x3fNV_intptr _MatrixMultTranspose3x3fNV_intptr { get; } + + // --- + + delegate void _glMatrixMultTransposedEXT(MatrixMode mode, double[] m); + [GlEntryPoint("glMatrixMultTransposedEXT")] + _glMatrixMultTransposedEXT _MatrixMultTransposedEXT { get; } + + delegate void _glMatrixMultTransposedEXT_ptr(MatrixMode mode, void* m); + [GlEntryPoint("glMatrixMultTransposedEXT")] + _glMatrixMultTransposedEXT_ptr _MatrixMultTransposedEXT_ptr { get; } + + delegate void _glMatrixMultTransposedEXT_intptr(MatrixMode mode, IntPtr m); + [GlEntryPoint("glMatrixMultTransposedEXT")] + _glMatrixMultTransposedEXT_intptr _MatrixMultTransposedEXT_intptr { get; } + + // --- + + delegate void _glMatrixMultTransposefEXT(MatrixMode mode, float[] m); + [GlEntryPoint("glMatrixMultTransposefEXT")] + _glMatrixMultTransposefEXT _MatrixMultTransposefEXT { get; } + + delegate void _glMatrixMultTransposefEXT_ptr(MatrixMode mode, void* m); + [GlEntryPoint("glMatrixMultTransposefEXT")] + _glMatrixMultTransposefEXT_ptr _MatrixMultTransposefEXT_ptr { get; } + + delegate void _glMatrixMultTransposefEXT_intptr(MatrixMode mode, IntPtr m); + [GlEntryPoint("glMatrixMultTransposefEXT")] + _glMatrixMultTransposefEXT_intptr _MatrixMultTransposefEXT_intptr { get; } + + // --- + + delegate void _glMatrixMultdEXT(MatrixMode mode, double[] m); + [GlEntryPoint("glMatrixMultdEXT")] + _glMatrixMultdEXT _MatrixMultdEXT { get; } + + delegate void _glMatrixMultdEXT_ptr(MatrixMode mode, void* m); + [GlEntryPoint("glMatrixMultdEXT")] + _glMatrixMultdEXT_ptr _MatrixMultdEXT_ptr { get; } + + delegate void _glMatrixMultdEXT_intptr(MatrixMode mode, IntPtr m); + [GlEntryPoint("glMatrixMultdEXT")] + _glMatrixMultdEXT_intptr _MatrixMultdEXT_intptr { get; } + + // --- + + delegate void _glMatrixMultfEXT(MatrixMode mode, float[] m); + [GlEntryPoint("glMatrixMultfEXT")] + _glMatrixMultfEXT _MatrixMultfEXT { get; } + + delegate void _glMatrixMultfEXT_ptr(MatrixMode mode, void* m); + [GlEntryPoint("glMatrixMultfEXT")] + _glMatrixMultfEXT_ptr _MatrixMultfEXT_ptr { get; } + + delegate void _glMatrixMultfEXT_intptr(MatrixMode mode, IntPtr m); + [GlEntryPoint("glMatrixMultfEXT")] + _glMatrixMultfEXT_intptr _MatrixMultfEXT_intptr { get; } + + // --- + + delegate void _glMatrixOrthoEXT(MatrixMode mode, double left, double right, double bottom, double top, double zNear, double zFar); + [GlEntryPoint("glMatrixOrthoEXT")] + _glMatrixOrthoEXT _MatrixOrthoEXT { get; } + + // --- + + delegate void _glMatrixPopEXT(MatrixMode mode); + [GlEntryPoint("glMatrixPopEXT")] + _glMatrixPopEXT _MatrixPopEXT { get; } + + // --- + + delegate void _glMatrixPushEXT(MatrixMode mode); + [GlEntryPoint("glMatrixPushEXT")] + _glMatrixPushEXT _MatrixPushEXT { get; } + + // --- + + delegate void _glMatrixRotatedEXT(MatrixMode mode, double angle, double x, double y, double z); + [GlEntryPoint("glMatrixRotatedEXT")] + _glMatrixRotatedEXT _MatrixRotatedEXT { get; } + + // --- + + delegate void _glMatrixRotatefEXT(MatrixMode mode, float angle, float x, float y, float z); + [GlEntryPoint("glMatrixRotatefEXT")] + _glMatrixRotatefEXT _MatrixRotatefEXT { get; } + + // --- + + delegate void _glMatrixScaledEXT(MatrixMode mode, double x, double y, double z); + [GlEntryPoint("glMatrixScaledEXT")] + _glMatrixScaledEXT _MatrixScaledEXT { get; } + + // --- + + delegate void _glMatrixScalefEXT(MatrixMode mode, float x, float y, float z); + [GlEntryPoint("glMatrixScalefEXT")] + _glMatrixScalefEXT _MatrixScalefEXT { get; } + + // --- + + delegate void _glMatrixTranslatedEXT(MatrixMode mode, double x, double y, double z); + [GlEntryPoint("glMatrixTranslatedEXT")] + _glMatrixTranslatedEXT _MatrixTranslatedEXT { get; } + + // --- + + delegate void _glMatrixTranslatefEXT(MatrixMode mode, float x, float y, float z); + [GlEntryPoint("glMatrixTranslatefEXT")] + _glMatrixTranslatefEXT _MatrixTranslatefEXT { get; } + + // --- + + delegate void _glMaxShaderCompilerThreadsKHR(uint count); + [GlEntryPoint("glMaxShaderCompilerThreadsKHR")] + _glMaxShaderCompilerThreadsKHR _MaxShaderCompilerThreadsKHR { get; } + + // --- + + delegate void _glMaxShaderCompilerThreadsARB(uint count); + [GlEntryPoint("glMaxShaderCompilerThreadsARB")] + _glMaxShaderCompilerThreadsARB _MaxShaderCompilerThreadsARB { get; } + + // --- + + delegate void _glMemoryBarrier(int barriers); + [GlEntryPoint("glMemoryBarrier")] + _glMemoryBarrier _MemoryBarrier { get; } + + // --- + + delegate void _glMemoryBarrierByRegion(int barriers); + [GlEntryPoint("glMemoryBarrierByRegion")] + _glMemoryBarrierByRegion _MemoryBarrierByRegion { get; } + + // --- + + delegate void _glMemoryBarrierEXT(int barriers); + [GlEntryPoint("glMemoryBarrierEXT")] + _glMemoryBarrierEXT _MemoryBarrierEXT { get; } + + // --- + + delegate void _glMemoryObjectParameterivEXT(uint memoryObject, MemoryObjectParameterName pname, int[] @params); + [GlEntryPoint("glMemoryObjectParameterivEXT")] + _glMemoryObjectParameterivEXT _MemoryObjectParameterivEXT { get; } + + delegate void _glMemoryObjectParameterivEXT_ptr(uint memoryObject, MemoryObjectParameterName pname, void* @params); + [GlEntryPoint("glMemoryObjectParameterivEXT")] + _glMemoryObjectParameterivEXT_ptr _MemoryObjectParameterivEXT_ptr { get; } + + delegate void _glMemoryObjectParameterivEXT_intptr(uint memoryObject, MemoryObjectParameterName pname, IntPtr @params); + [GlEntryPoint("glMemoryObjectParameterivEXT")] + _glMemoryObjectParameterivEXT_intptr _MemoryObjectParameterivEXT_intptr { get; } + + // --- + + delegate void _glMinSampleShading(float value); + [GlEntryPoint("glMinSampleShading")] + _glMinSampleShading _MinSampleShading { get; } + + // --- + + delegate void _glMinSampleShadingARB(float value); + [GlEntryPoint("glMinSampleShadingARB")] + _glMinSampleShadingARB _MinSampleShadingARB { get; } + + // --- + + delegate void _glMinSampleShadingOES(float value); + [GlEntryPoint("glMinSampleShadingOES")] + _glMinSampleShadingOES _MinSampleShadingOES { get; } + + // --- + + delegate void _glMinmax(MinmaxTargetEXT target, InternalFormat internalformat, bool sink); + [GlEntryPoint("glMinmax")] + _glMinmax _Minmax { get; } + + // --- + + delegate void _glMinmaxEXT(MinmaxTargetEXT target, InternalFormat internalformat, bool sink); + [GlEntryPoint("glMinmaxEXT")] + _glMinmaxEXT _MinmaxEXT { get; } + + // --- + + delegate void _glMultMatrixd(double[] m); + [GlEntryPoint("glMultMatrixd")] + _glMultMatrixd _MultMatrixd { get; } + + delegate void _glMultMatrixd_ptr(void* m); + [GlEntryPoint("glMultMatrixd")] + _glMultMatrixd_ptr _MultMatrixd_ptr { get; } + + delegate void _glMultMatrixd_intptr(IntPtr m); + [GlEntryPoint("glMultMatrixd")] + _glMultMatrixd_intptr _MultMatrixd_intptr { get; } + + // --- + + delegate void _glMultMatrixf(float[] m); + [GlEntryPoint("glMultMatrixf")] + _glMultMatrixf _MultMatrixf { get; } + + delegate void _glMultMatrixf_ptr(void* m); + [GlEntryPoint("glMultMatrixf")] + _glMultMatrixf_ptr _MultMatrixf_ptr { get; } + + delegate void _glMultMatrixf_intptr(IntPtr m); + [GlEntryPoint("glMultMatrixf")] + _glMultMatrixf_intptr _MultMatrixf_intptr { get; } + + // --- + + delegate void _glMultMatrixx(float[] m); + [GlEntryPoint("glMultMatrixx")] + _glMultMatrixx _MultMatrixx { get; } + + delegate void _glMultMatrixx_ptr(void* m); + [GlEntryPoint("glMultMatrixx")] + _glMultMatrixx_ptr _MultMatrixx_ptr { get; } + + delegate void _glMultMatrixx_intptr(IntPtr m); + [GlEntryPoint("glMultMatrixx")] + _glMultMatrixx_intptr _MultMatrixx_intptr { get; } + + // --- + + delegate void _glMultMatrixxOES(float[] m); + [GlEntryPoint("glMultMatrixxOES")] + _glMultMatrixxOES _MultMatrixxOES { get; } + + delegate void _glMultMatrixxOES_ptr(void* m); + [GlEntryPoint("glMultMatrixxOES")] + _glMultMatrixxOES_ptr _MultMatrixxOES_ptr { get; } + + delegate void _glMultMatrixxOES_intptr(IntPtr m); + [GlEntryPoint("glMultMatrixxOES")] + _glMultMatrixxOES_intptr _MultMatrixxOES_intptr { get; } + + // --- + + delegate void _glMultTransposeMatrixd(double[] m); + [GlEntryPoint("glMultTransposeMatrixd")] + _glMultTransposeMatrixd _MultTransposeMatrixd { get; } + + delegate void _glMultTransposeMatrixd_ptr(void* m); + [GlEntryPoint("glMultTransposeMatrixd")] + _glMultTransposeMatrixd_ptr _MultTransposeMatrixd_ptr { get; } + + delegate void _glMultTransposeMatrixd_intptr(IntPtr m); + [GlEntryPoint("glMultTransposeMatrixd")] + _glMultTransposeMatrixd_intptr _MultTransposeMatrixd_intptr { get; } + + // --- + + delegate void _glMultTransposeMatrixdARB(double[] m); + [GlEntryPoint("glMultTransposeMatrixdARB")] + _glMultTransposeMatrixdARB _MultTransposeMatrixdARB { get; } + + delegate void _glMultTransposeMatrixdARB_ptr(void* m); + [GlEntryPoint("glMultTransposeMatrixdARB")] + _glMultTransposeMatrixdARB_ptr _MultTransposeMatrixdARB_ptr { get; } + + delegate void _glMultTransposeMatrixdARB_intptr(IntPtr m); + [GlEntryPoint("glMultTransposeMatrixdARB")] + _glMultTransposeMatrixdARB_intptr _MultTransposeMatrixdARB_intptr { get; } + + // --- + + delegate void _glMultTransposeMatrixf(float[] m); + [GlEntryPoint("glMultTransposeMatrixf")] + _glMultTransposeMatrixf _MultTransposeMatrixf { get; } + + delegate void _glMultTransposeMatrixf_ptr(void* m); + [GlEntryPoint("glMultTransposeMatrixf")] + _glMultTransposeMatrixf_ptr _MultTransposeMatrixf_ptr { get; } + + delegate void _glMultTransposeMatrixf_intptr(IntPtr m); + [GlEntryPoint("glMultTransposeMatrixf")] + _glMultTransposeMatrixf_intptr _MultTransposeMatrixf_intptr { get; } + + // --- + + delegate void _glMultTransposeMatrixfARB(float[] m); + [GlEntryPoint("glMultTransposeMatrixfARB")] + _glMultTransposeMatrixfARB _MultTransposeMatrixfARB { get; } + + delegate void _glMultTransposeMatrixfARB_ptr(void* m); + [GlEntryPoint("glMultTransposeMatrixfARB")] + _glMultTransposeMatrixfARB_ptr _MultTransposeMatrixfARB_ptr { get; } + + delegate void _glMultTransposeMatrixfARB_intptr(IntPtr m); + [GlEntryPoint("glMultTransposeMatrixfARB")] + _glMultTransposeMatrixfARB_intptr _MultTransposeMatrixfARB_intptr { get; } + + // --- + + delegate void _glMultTransposeMatrixxOES(float[] m); + [GlEntryPoint("glMultTransposeMatrixxOES")] + _glMultTransposeMatrixxOES _MultTransposeMatrixxOES { get; } + + delegate void _glMultTransposeMatrixxOES_ptr(void* m); + [GlEntryPoint("glMultTransposeMatrixxOES")] + _glMultTransposeMatrixxOES_ptr _MultTransposeMatrixxOES_ptr { get; } + + delegate void _glMultTransposeMatrixxOES_intptr(IntPtr m); + [GlEntryPoint("glMultTransposeMatrixxOES")] + _glMultTransposeMatrixxOES_intptr _MultTransposeMatrixxOES_intptr { get; } + + // --- + + delegate void _glMultiDrawArrays(PrimitiveType mode, int[] first, int[] count, int drawcount); + [GlEntryPoint("glMultiDrawArrays")] + _glMultiDrawArrays _MultiDrawArrays { get; } + + delegate void _glMultiDrawArrays_ptr(PrimitiveType mode, void* first, void* count, int drawcount); + [GlEntryPoint("glMultiDrawArrays")] + _glMultiDrawArrays_ptr _MultiDrawArrays_ptr { get; } + + delegate void _glMultiDrawArrays_intptr(PrimitiveType mode, IntPtr first, IntPtr count, int drawcount); + [GlEntryPoint("glMultiDrawArrays")] + _glMultiDrawArrays_intptr _MultiDrawArrays_intptr { get; } + + // --- + + delegate void _glMultiDrawArraysEXT(PrimitiveType mode, int[] first, int[] count, int primcount); + [GlEntryPoint("glMultiDrawArraysEXT")] + _glMultiDrawArraysEXT _MultiDrawArraysEXT { get; } + + delegate void _glMultiDrawArraysEXT_ptr(PrimitiveType mode, void* first, void* count, int primcount); + [GlEntryPoint("glMultiDrawArraysEXT")] + _glMultiDrawArraysEXT_ptr _MultiDrawArraysEXT_ptr { get; } + + delegate void _glMultiDrawArraysEXT_intptr(PrimitiveType mode, IntPtr first, IntPtr count, int primcount); + [GlEntryPoint("glMultiDrawArraysEXT")] + _glMultiDrawArraysEXT_intptr _MultiDrawArraysEXT_intptr { get; } + + // --- + + delegate void _glMultiDrawArraysIndirect(PrimitiveType mode, IntPtr indirect, int drawcount, int stride); + [GlEntryPoint("glMultiDrawArraysIndirect")] + _glMultiDrawArraysIndirect _MultiDrawArraysIndirect { get; } + + // --- + + delegate void _glMultiDrawArraysIndirectAMD(PrimitiveType mode, IntPtr indirect, int primcount, int stride); + [GlEntryPoint("glMultiDrawArraysIndirectAMD")] + _glMultiDrawArraysIndirectAMD _MultiDrawArraysIndirectAMD { get; } + + // --- + + delegate void _glMultiDrawArraysIndirectBindlessCountNV(PrimitiveType mode, IntPtr indirect, int drawCount, int maxDrawCount, int stride, int vertexBufferCount); + [GlEntryPoint("glMultiDrawArraysIndirectBindlessCountNV")] + _glMultiDrawArraysIndirectBindlessCountNV _MultiDrawArraysIndirectBindlessCountNV { get; } + + // --- + + delegate void _glMultiDrawArraysIndirectBindlessNV(PrimitiveType mode, IntPtr indirect, int drawCount, int stride, int vertexBufferCount); + [GlEntryPoint("glMultiDrawArraysIndirectBindlessNV")] + _glMultiDrawArraysIndirectBindlessNV _MultiDrawArraysIndirectBindlessNV { get; } + + // --- + + delegate void _glMultiDrawArraysIndirectCount(PrimitiveType mode, IntPtr indirect, IntPtr drawcount, int maxdrawcount, int stride); + [GlEntryPoint("glMultiDrawArraysIndirectCount")] + _glMultiDrawArraysIndirectCount _MultiDrawArraysIndirectCount { get; } + + // --- + + delegate void _glMultiDrawArraysIndirectCountARB(PrimitiveType mode, IntPtr indirect, IntPtr drawcount, int maxdrawcount, int stride); + [GlEntryPoint("glMultiDrawArraysIndirectCountARB")] + _glMultiDrawArraysIndirectCountARB _MultiDrawArraysIndirectCountARB { get; } + + // --- + + delegate void _glMultiDrawArraysIndirectEXT(PrimitiveType mode, IntPtr indirect, int drawcount, int stride); + [GlEntryPoint("glMultiDrawArraysIndirectEXT")] + _glMultiDrawArraysIndirectEXT _MultiDrawArraysIndirectEXT { get; } + + // --- + + delegate void _glMultiDrawElementArrayAPPLE(PrimitiveType mode, int[] first, int[] count, int primcount); + [GlEntryPoint("glMultiDrawElementArrayAPPLE")] + _glMultiDrawElementArrayAPPLE _MultiDrawElementArrayAPPLE { get; } + + delegate void _glMultiDrawElementArrayAPPLE_ptr(PrimitiveType mode, void* first, void* count, int primcount); + [GlEntryPoint("glMultiDrawElementArrayAPPLE")] + _glMultiDrawElementArrayAPPLE_ptr _MultiDrawElementArrayAPPLE_ptr { get; } + + delegate void _glMultiDrawElementArrayAPPLE_intptr(PrimitiveType mode, IntPtr first, IntPtr count, int primcount); + [GlEntryPoint("glMultiDrawElementArrayAPPLE")] + _glMultiDrawElementArrayAPPLE_intptr _MultiDrawElementArrayAPPLE_intptr { get; } + + // --- + + delegate void _glMultiDrawElements(PrimitiveType mode, int[] count, DrawElementsType type, IntPtr* indices, int drawcount); + [GlEntryPoint("glMultiDrawElements")] + _glMultiDrawElements _MultiDrawElements { get; } + + delegate void _glMultiDrawElements_ptr(PrimitiveType mode, void* count, DrawElementsType type, IntPtr* indices, int drawcount); + [GlEntryPoint("glMultiDrawElements")] + _glMultiDrawElements_ptr _MultiDrawElements_ptr { get; } + + delegate void _glMultiDrawElements_intptr(PrimitiveType mode, IntPtr count, DrawElementsType type, IntPtr* indices, int drawcount); + [GlEntryPoint("glMultiDrawElements")] + _glMultiDrawElements_intptr _MultiDrawElements_intptr { get; } + + // --- + + delegate void _glMultiDrawElementsBaseVertex(PrimitiveType mode, int[] count, DrawElementsType type, IntPtr* indices, int drawcount, int[] basevertex); + [GlEntryPoint("glMultiDrawElementsBaseVertex")] + _glMultiDrawElementsBaseVertex _MultiDrawElementsBaseVertex { get; } + + delegate void _glMultiDrawElementsBaseVertex_ptr(PrimitiveType mode, void* count, DrawElementsType type, IntPtr* indices, int drawcount, void* basevertex); + [GlEntryPoint("glMultiDrawElementsBaseVertex")] + _glMultiDrawElementsBaseVertex_ptr _MultiDrawElementsBaseVertex_ptr { get; } + + delegate void _glMultiDrawElementsBaseVertex_intptr(PrimitiveType mode, IntPtr count, DrawElementsType type, IntPtr* indices, int drawcount, IntPtr basevertex); + [GlEntryPoint("glMultiDrawElementsBaseVertex")] + _glMultiDrawElementsBaseVertex_intptr _MultiDrawElementsBaseVertex_intptr { get; } + + // --- + + delegate void _glMultiDrawElementsBaseVertexEXT(PrimitiveType mode, int[] count, DrawElementsType type, IntPtr* indices, int primcount, int[] basevertex); + [GlEntryPoint("glMultiDrawElementsBaseVertexEXT")] + _glMultiDrawElementsBaseVertexEXT _MultiDrawElementsBaseVertexEXT { get; } + + delegate void _glMultiDrawElementsBaseVertexEXT_ptr(PrimitiveType mode, void* count, DrawElementsType type, IntPtr* indices, int primcount, void* basevertex); + [GlEntryPoint("glMultiDrawElementsBaseVertexEXT")] + _glMultiDrawElementsBaseVertexEXT_ptr _MultiDrawElementsBaseVertexEXT_ptr { get; } + + delegate void _glMultiDrawElementsBaseVertexEXT_intptr(PrimitiveType mode, IntPtr count, DrawElementsType type, IntPtr* indices, int primcount, IntPtr basevertex); + [GlEntryPoint("glMultiDrawElementsBaseVertexEXT")] + _glMultiDrawElementsBaseVertexEXT_intptr _MultiDrawElementsBaseVertexEXT_intptr { get; } + + // --- + + delegate void _glMultiDrawElementsEXT(PrimitiveType mode, int[] count, DrawElementsType type, IntPtr* indices, int primcount); + [GlEntryPoint("glMultiDrawElementsEXT")] + _glMultiDrawElementsEXT _MultiDrawElementsEXT { get; } + + delegate void _glMultiDrawElementsEXT_ptr(PrimitiveType mode, void* count, DrawElementsType type, IntPtr* indices, int primcount); + [GlEntryPoint("glMultiDrawElementsEXT")] + _glMultiDrawElementsEXT_ptr _MultiDrawElementsEXT_ptr { get; } + + delegate void _glMultiDrawElementsEXT_intptr(PrimitiveType mode, IntPtr count, DrawElementsType type, IntPtr* indices, int primcount); + [GlEntryPoint("glMultiDrawElementsEXT")] + _glMultiDrawElementsEXT_intptr _MultiDrawElementsEXT_intptr { get; } + + // --- + + delegate void _glMultiDrawElementsIndirect(PrimitiveType mode, DrawElementsType type, IntPtr indirect, int drawcount, int stride); + [GlEntryPoint("glMultiDrawElementsIndirect")] + _glMultiDrawElementsIndirect _MultiDrawElementsIndirect { get; } + + // --- + + delegate void _glMultiDrawElementsIndirectAMD(PrimitiveType mode, DrawElementsType type, IntPtr indirect, int primcount, int stride); + [GlEntryPoint("glMultiDrawElementsIndirectAMD")] + _glMultiDrawElementsIndirectAMD _MultiDrawElementsIndirectAMD { get; } + + // --- + + delegate void _glMultiDrawElementsIndirectBindlessCountNV(PrimitiveType mode, DrawElementsType type, IntPtr indirect, int drawCount, int maxDrawCount, int stride, int vertexBufferCount); + [GlEntryPoint("glMultiDrawElementsIndirectBindlessCountNV")] + _glMultiDrawElementsIndirectBindlessCountNV _MultiDrawElementsIndirectBindlessCountNV { get; } + + // --- + + delegate void _glMultiDrawElementsIndirectBindlessNV(PrimitiveType mode, DrawElementsType type, IntPtr indirect, int drawCount, int stride, int vertexBufferCount); + [GlEntryPoint("glMultiDrawElementsIndirectBindlessNV")] + _glMultiDrawElementsIndirectBindlessNV _MultiDrawElementsIndirectBindlessNV { get; } + + // --- + + delegate void _glMultiDrawElementsIndirectCount(PrimitiveType mode, DrawElementsType type, IntPtr indirect, IntPtr drawcount, int maxdrawcount, int stride); + [GlEntryPoint("glMultiDrawElementsIndirectCount")] + _glMultiDrawElementsIndirectCount _MultiDrawElementsIndirectCount { get; } + + // --- + + delegate void _glMultiDrawElementsIndirectCountARB(PrimitiveType mode, DrawElementsType type, IntPtr indirect, IntPtr drawcount, int maxdrawcount, int stride); + [GlEntryPoint("glMultiDrawElementsIndirectCountARB")] + _glMultiDrawElementsIndirectCountARB _MultiDrawElementsIndirectCountARB { get; } + + // --- + + delegate void _glMultiDrawElementsIndirectEXT(PrimitiveType mode, DrawElementsType type, IntPtr indirect, int drawcount, int stride); + [GlEntryPoint("glMultiDrawElementsIndirectEXT")] + _glMultiDrawElementsIndirectEXT _MultiDrawElementsIndirectEXT { get; } + + // --- + + delegate void _glMultiDrawMeshTasksIndirectNV(IntPtr indirect, int drawcount, int stride); + [GlEntryPoint("glMultiDrawMeshTasksIndirectNV")] + _glMultiDrawMeshTasksIndirectNV _MultiDrawMeshTasksIndirectNV { get; } + + // --- + + delegate void _glMultiDrawMeshTasksIndirectCountNV(IntPtr indirect, IntPtr drawcount, int maxdrawcount, int stride); + [GlEntryPoint("glMultiDrawMeshTasksIndirectCountNV")] + _glMultiDrawMeshTasksIndirectCountNV _MultiDrawMeshTasksIndirectCountNV { get; } + + // --- + + delegate void _glMultiDrawRangeElementArrayAPPLE(PrimitiveType mode, uint start, uint end, int[] first, int[] count, int primcount); + [GlEntryPoint("glMultiDrawRangeElementArrayAPPLE")] + _glMultiDrawRangeElementArrayAPPLE _MultiDrawRangeElementArrayAPPLE { get; } + + delegate void _glMultiDrawRangeElementArrayAPPLE_ptr(PrimitiveType mode, uint start, uint end, void* first, void* count, int primcount); + [GlEntryPoint("glMultiDrawRangeElementArrayAPPLE")] + _glMultiDrawRangeElementArrayAPPLE_ptr _MultiDrawRangeElementArrayAPPLE_ptr { get; } + + delegate void _glMultiDrawRangeElementArrayAPPLE_intptr(PrimitiveType mode, uint start, uint end, IntPtr first, IntPtr count, int primcount); + [GlEntryPoint("glMultiDrawRangeElementArrayAPPLE")] + _glMultiDrawRangeElementArrayAPPLE_intptr _MultiDrawRangeElementArrayAPPLE_intptr { get; } + + // --- + + delegate void _glMultiModeDrawArraysIBM(PrimitiveType[] mode, int[] first, int[] count, int primcount, int modestride); + [GlEntryPoint("glMultiModeDrawArraysIBM")] + _glMultiModeDrawArraysIBM _MultiModeDrawArraysIBM { get; } + + delegate void _glMultiModeDrawArraysIBM_ptr(void* mode, void* first, void* count, int primcount, int modestride); + [GlEntryPoint("glMultiModeDrawArraysIBM")] + _glMultiModeDrawArraysIBM_ptr _MultiModeDrawArraysIBM_ptr { get; } + + delegate void _glMultiModeDrawArraysIBM_intptr(IntPtr mode, IntPtr first, IntPtr count, int primcount, int modestride); + [GlEntryPoint("glMultiModeDrawArraysIBM")] + _glMultiModeDrawArraysIBM_intptr _MultiModeDrawArraysIBM_intptr { get; } + + // --- + + delegate void _glMultiModeDrawElementsIBM(PrimitiveType[] mode, int[] count, DrawElementsType type, IntPtr* indices, int primcount, int modestride); + [GlEntryPoint("glMultiModeDrawElementsIBM")] + _glMultiModeDrawElementsIBM _MultiModeDrawElementsIBM { get; } + + delegate void _glMultiModeDrawElementsIBM_ptr(void* mode, void* count, DrawElementsType type, IntPtr* indices, int primcount, int modestride); + [GlEntryPoint("glMultiModeDrawElementsIBM")] + _glMultiModeDrawElementsIBM_ptr _MultiModeDrawElementsIBM_ptr { get; } + + delegate void _glMultiModeDrawElementsIBM_intptr(IntPtr mode, IntPtr count, DrawElementsType type, IntPtr* indices, int primcount, int modestride); + [GlEntryPoint("glMultiModeDrawElementsIBM")] + _glMultiModeDrawElementsIBM_intptr _MultiModeDrawElementsIBM_intptr { get; } + + // --- + + delegate void _glMultiTexBufferEXT(TextureUnit texunit, TextureTarget target, int internalformat, uint buffer); + [GlEntryPoint("glMultiTexBufferEXT")] + _glMultiTexBufferEXT _MultiTexBufferEXT { get; } + + // --- + + delegate void _glMultiTexCoord1bOES(TextureUnit texture, sbyte s); + [GlEntryPoint("glMultiTexCoord1bOES")] + _glMultiTexCoord1bOES _MultiTexCoord1bOES { get; } + + // --- + + delegate void _glMultiTexCoord1bvOES(TextureUnit texture, sbyte[] coords); + [GlEntryPoint("glMultiTexCoord1bvOES")] + _glMultiTexCoord1bvOES _MultiTexCoord1bvOES { get; } + + delegate void _glMultiTexCoord1bvOES_ptr(TextureUnit texture, void* coords); + [GlEntryPoint("glMultiTexCoord1bvOES")] + _glMultiTexCoord1bvOES_ptr _MultiTexCoord1bvOES_ptr { get; } + + delegate void _glMultiTexCoord1bvOES_intptr(TextureUnit texture, IntPtr coords); + [GlEntryPoint("glMultiTexCoord1bvOES")] + _glMultiTexCoord1bvOES_intptr _MultiTexCoord1bvOES_intptr { get; } + + // --- + + delegate void _glMultiTexCoord1d(TextureUnit target, double s); + [GlEntryPoint("glMultiTexCoord1d")] + _glMultiTexCoord1d _MultiTexCoord1d { get; } + + // --- + + delegate void _glMultiTexCoord1dARB(TextureUnit target, double s); + [GlEntryPoint("glMultiTexCoord1dARB")] + _glMultiTexCoord1dARB _MultiTexCoord1dARB { get; } + + // --- + + delegate void _glMultiTexCoord1dv(TextureUnit target, double[] v); + [GlEntryPoint("glMultiTexCoord1dv")] + _glMultiTexCoord1dv _MultiTexCoord1dv { get; } + + delegate void _glMultiTexCoord1dv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord1dv")] + _glMultiTexCoord1dv_ptr _MultiTexCoord1dv_ptr { get; } + + delegate void _glMultiTexCoord1dv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord1dv")] + _glMultiTexCoord1dv_intptr _MultiTexCoord1dv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord1dvARB(TextureUnit target, double[] v); + [GlEntryPoint("glMultiTexCoord1dvARB")] + _glMultiTexCoord1dvARB _MultiTexCoord1dvARB { get; } + + delegate void _glMultiTexCoord1dvARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord1dvARB")] + _glMultiTexCoord1dvARB_ptr _MultiTexCoord1dvARB_ptr { get; } + + delegate void _glMultiTexCoord1dvARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord1dvARB")] + _glMultiTexCoord1dvARB_intptr _MultiTexCoord1dvARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord1f(TextureUnit target, float s); + [GlEntryPoint("glMultiTexCoord1f")] + _glMultiTexCoord1f _MultiTexCoord1f { get; } + + // --- + + delegate void _glMultiTexCoord1fARB(TextureUnit target, float s); + [GlEntryPoint("glMultiTexCoord1fARB")] + _glMultiTexCoord1fARB _MultiTexCoord1fARB { get; } + + // --- + + delegate void _glMultiTexCoord1fv(TextureUnit target, float[] v); + [GlEntryPoint("glMultiTexCoord1fv")] + _glMultiTexCoord1fv _MultiTexCoord1fv { get; } + + delegate void _glMultiTexCoord1fv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord1fv")] + _glMultiTexCoord1fv_ptr _MultiTexCoord1fv_ptr { get; } + + delegate void _glMultiTexCoord1fv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord1fv")] + _glMultiTexCoord1fv_intptr _MultiTexCoord1fv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord1fvARB(TextureUnit target, float[] v); + [GlEntryPoint("glMultiTexCoord1fvARB")] + _glMultiTexCoord1fvARB _MultiTexCoord1fvARB { get; } + + delegate void _glMultiTexCoord1fvARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord1fvARB")] + _glMultiTexCoord1fvARB_ptr _MultiTexCoord1fvARB_ptr { get; } + + delegate void _glMultiTexCoord1fvARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord1fvARB")] + _glMultiTexCoord1fvARB_intptr _MultiTexCoord1fvARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord1hNV(TextureUnit target, float s); + [GlEntryPoint("glMultiTexCoord1hNV")] + _glMultiTexCoord1hNV _MultiTexCoord1hNV { get; } + + // --- + + delegate void _glMultiTexCoord1hvNV(TextureUnit target, float[] v); + [GlEntryPoint("glMultiTexCoord1hvNV")] + _glMultiTexCoord1hvNV _MultiTexCoord1hvNV { get; } + + delegate void _glMultiTexCoord1hvNV_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord1hvNV")] + _glMultiTexCoord1hvNV_ptr _MultiTexCoord1hvNV_ptr { get; } + + delegate void _glMultiTexCoord1hvNV_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord1hvNV")] + _glMultiTexCoord1hvNV_intptr _MultiTexCoord1hvNV_intptr { get; } + + // --- + + delegate void _glMultiTexCoord1i(TextureUnit target, int s); + [GlEntryPoint("glMultiTexCoord1i")] + _glMultiTexCoord1i _MultiTexCoord1i { get; } + + // --- + + delegate void _glMultiTexCoord1iARB(TextureUnit target, int s); + [GlEntryPoint("glMultiTexCoord1iARB")] + _glMultiTexCoord1iARB _MultiTexCoord1iARB { get; } + + // --- + + delegate void _glMultiTexCoord1iv(TextureUnit target, int[] v); + [GlEntryPoint("glMultiTexCoord1iv")] + _glMultiTexCoord1iv _MultiTexCoord1iv { get; } + + delegate void _glMultiTexCoord1iv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord1iv")] + _glMultiTexCoord1iv_ptr _MultiTexCoord1iv_ptr { get; } + + delegate void _glMultiTexCoord1iv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord1iv")] + _glMultiTexCoord1iv_intptr _MultiTexCoord1iv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord1ivARB(TextureUnit target, int[] v); + [GlEntryPoint("glMultiTexCoord1ivARB")] + _glMultiTexCoord1ivARB _MultiTexCoord1ivARB { get; } + + delegate void _glMultiTexCoord1ivARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord1ivARB")] + _glMultiTexCoord1ivARB_ptr _MultiTexCoord1ivARB_ptr { get; } + + delegate void _glMultiTexCoord1ivARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord1ivARB")] + _glMultiTexCoord1ivARB_intptr _MultiTexCoord1ivARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord1s(TextureUnit target, short s); + [GlEntryPoint("glMultiTexCoord1s")] + _glMultiTexCoord1s _MultiTexCoord1s { get; } + + // --- + + delegate void _glMultiTexCoord1sARB(TextureUnit target, short s); + [GlEntryPoint("glMultiTexCoord1sARB")] + _glMultiTexCoord1sARB _MultiTexCoord1sARB { get; } + + // --- + + delegate void _glMultiTexCoord1sv(TextureUnit target, short[] v); + [GlEntryPoint("glMultiTexCoord1sv")] + _glMultiTexCoord1sv _MultiTexCoord1sv { get; } + + delegate void _glMultiTexCoord1sv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord1sv")] + _glMultiTexCoord1sv_ptr _MultiTexCoord1sv_ptr { get; } + + delegate void _glMultiTexCoord1sv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord1sv")] + _glMultiTexCoord1sv_intptr _MultiTexCoord1sv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord1svARB(TextureUnit target, short[] v); + [GlEntryPoint("glMultiTexCoord1svARB")] + _glMultiTexCoord1svARB _MultiTexCoord1svARB { get; } + + delegate void _glMultiTexCoord1svARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord1svARB")] + _glMultiTexCoord1svARB_ptr _MultiTexCoord1svARB_ptr { get; } + + delegate void _glMultiTexCoord1svARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord1svARB")] + _glMultiTexCoord1svARB_intptr _MultiTexCoord1svARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord1xOES(TextureUnit texture, float s); + [GlEntryPoint("glMultiTexCoord1xOES")] + _glMultiTexCoord1xOES _MultiTexCoord1xOES { get; } + + // --- + + delegate void _glMultiTexCoord1xvOES(TextureUnit texture, float[] coords); + [GlEntryPoint("glMultiTexCoord1xvOES")] + _glMultiTexCoord1xvOES _MultiTexCoord1xvOES { get; } + + delegate void _glMultiTexCoord1xvOES_ptr(TextureUnit texture, void* coords); + [GlEntryPoint("glMultiTexCoord1xvOES")] + _glMultiTexCoord1xvOES_ptr _MultiTexCoord1xvOES_ptr { get; } + + delegate void _glMultiTexCoord1xvOES_intptr(TextureUnit texture, IntPtr coords); + [GlEntryPoint("glMultiTexCoord1xvOES")] + _glMultiTexCoord1xvOES_intptr _MultiTexCoord1xvOES_intptr { get; } + + // --- + + delegate void _glMultiTexCoord2bOES(TextureUnit texture, sbyte s, sbyte t); + [GlEntryPoint("glMultiTexCoord2bOES")] + _glMultiTexCoord2bOES _MultiTexCoord2bOES { get; } + + // --- + + delegate void _glMultiTexCoord2bvOES(TextureUnit texture, sbyte[] coords); + [GlEntryPoint("glMultiTexCoord2bvOES")] + _glMultiTexCoord2bvOES _MultiTexCoord2bvOES { get; } + + delegate void _glMultiTexCoord2bvOES_ptr(TextureUnit texture, void* coords); + [GlEntryPoint("glMultiTexCoord2bvOES")] + _glMultiTexCoord2bvOES_ptr _MultiTexCoord2bvOES_ptr { get; } + + delegate void _glMultiTexCoord2bvOES_intptr(TextureUnit texture, IntPtr coords); + [GlEntryPoint("glMultiTexCoord2bvOES")] + _glMultiTexCoord2bvOES_intptr _MultiTexCoord2bvOES_intptr { get; } + + // --- + + delegate void _glMultiTexCoord2d(TextureUnit target, double s, double t); + [GlEntryPoint("glMultiTexCoord2d")] + _glMultiTexCoord2d _MultiTexCoord2d { get; } + + // --- + + delegate void _glMultiTexCoord2dARB(TextureUnit target, double s, double t); + [GlEntryPoint("glMultiTexCoord2dARB")] + _glMultiTexCoord2dARB _MultiTexCoord2dARB { get; } + + // --- + + delegate void _glMultiTexCoord2dv(TextureUnit target, double[] v); + [GlEntryPoint("glMultiTexCoord2dv")] + _glMultiTexCoord2dv _MultiTexCoord2dv { get; } + + delegate void _glMultiTexCoord2dv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord2dv")] + _glMultiTexCoord2dv_ptr _MultiTexCoord2dv_ptr { get; } + + delegate void _glMultiTexCoord2dv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord2dv")] + _glMultiTexCoord2dv_intptr _MultiTexCoord2dv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord2dvARB(TextureUnit target, double[] v); + [GlEntryPoint("glMultiTexCoord2dvARB")] + _glMultiTexCoord2dvARB _MultiTexCoord2dvARB { get; } + + delegate void _glMultiTexCoord2dvARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord2dvARB")] + _glMultiTexCoord2dvARB_ptr _MultiTexCoord2dvARB_ptr { get; } + + delegate void _glMultiTexCoord2dvARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord2dvARB")] + _glMultiTexCoord2dvARB_intptr _MultiTexCoord2dvARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord2f(TextureUnit target, float s, float t); + [GlEntryPoint("glMultiTexCoord2f")] + _glMultiTexCoord2f _MultiTexCoord2f { get; } + + // --- + + delegate void _glMultiTexCoord2fARB(TextureUnit target, float s, float t); + [GlEntryPoint("glMultiTexCoord2fARB")] + _glMultiTexCoord2fARB _MultiTexCoord2fARB { get; } + + // --- + + delegate void _glMultiTexCoord2fv(TextureUnit target, float[] v); + [GlEntryPoint("glMultiTexCoord2fv")] + _glMultiTexCoord2fv _MultiTexCoord2fv { get; } + + delegate void _glMultiTexCoord2fv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord2fv")] + _glMultiTexCoord2fv_ptr _MultiTexCoord2fv_ptr { get; } + + delegate void _glMultiTexCoord2fv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord2fv")] + _glMultiTexCoord2fv_intptr _MultiTexCoord2fv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord2fvARB(TextureUnit target, float[] v); + [GlEntryPoint("glMultiTexCoord2fvARB")] + _glMultiTexCoord2fvARB _MultiTexCoord2fvARB { get; } + + delegate void _glMultiTexCoord2fvARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord2fvARB")] + _glMultiTexCoord2fvARB_ptr _MultiTexCoord2fvARB_ptr { get; } + + delegate void _glMultiTexCoord2fvARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord2fvARB")] + _glMultiTexCoord2fvARB_intptr _MultiTexCoord2fvARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord2hNV(TextureUnit target, float s, float t); + [GlEntryPoint("glMultiTexCoord2hNV")] + _glMultiTexCoord2hNV _MultiTexCoord2hNV { get; } + + // --- + + delegate void _glMultiTexCoord2hvNV(TextureUnit target, float[] v); + [GlEntryPoint("glMultiTexCoord2hvNV")] + _glMultiTexCoord2hvNV _MultiTexCoord2hvNV { get; } + + delegate void _glMultiTexCoord2hvNV_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord2hvNV")] + _glMultiTexCoord2hvNV_ptr _MultiTexCoord2hvNV_ptr { get; } + + delegate void _glMultiTexCoord2hvNV_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord2hvNV")] + _glMultiTexCoord2hvNV_intptr _MultiTexCoord2hvNV_intptr { get; } + + // --- + + delegate void _glMultiTexCoord2i(TextureUnit target, int s, int t); + [GlEntryPoint("glMultiTexCoord2i")] + _glMultiTexCoord2i _MultiTexCoord2i { get; } + + // --- + + delegate void _glMultiTexCoord2iARB(TextureUnit target, int s, int t); + [GlEntryPoint("glMultiTexCoord2iARB")] + _glMultiTexCoord2iARB _MultiTexCoord2iARB { get; } + + // --- + + delegate void _glMultiTexCoord2iv(TextureUnit target, int[] v); + [GlEntryPoint("glMultiTexCoord2iv")] + _glMultiTexCoord2iv _MultiTexCoord2iv { get; } + + delegate void _glMultiTexCoord2iv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord2iv")] + _glMultiTexCoord2iv_ptr _MultiTexCoord2iv_ptr { get; } + + delegate void _glMultiTexCoord2iv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord2iv")] + _glMultiTexCoord2iv_intptr _MultiTexCoord2iv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord2ivARB(TextureUnit target, int[] v); + [GlEntryPoint("glMultiTexCoord2ivARB")] + _glMultiTexCoord2ivARB _MultiTexCoord2ivARB { get; } + + delegate void _glMultiTexCoord2ivARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord2ivARB")] + _glMultiTexCoord2ivARB_ptr _MultiTexCoord2ivARB_ptr { get; } + + delegate void _glMultiTexCoord2ivARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord2ivARB")] + _glMultiTexCoord2ivARB_intptr _MultiTexCoord2ivARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord2s(TextureUnit target, short s, short t); + [GlEntryPoint("glMultiTexCoord2s")] + _glMultiTexCoord2s _MultiTexCoord2s { get; } + + // --- + + delegate void _glMultiTexCoord2sARB(TextureUnit target, short s, short t); + [GlEntryPoint("glMultiTexCoord2sARB")] + _glMultiTexCoord2sARB _MultiTexCoord2sARB { get; } + + // --- + + delegate void _glMultiTexCoord2sv(TextureUnit target, short[] v); + [GlEntryPoint("glMultiTexCoord2sv")] + _glMultiTexCoord2sv _MultiTexCoord2sv { get; } + + delegate void _glMultiTexCoord2sv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord2sv")] + _glMultiTexCoord2sv_ptr _MultiTexCoord2sv_ptr { get; } + + delegate void _glMultiTexCoord2sv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord2sv")] + _glMultiTexCoord2sv_intptr _MultiTexCoord2sv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord2svARB(TextureUnit target, short[] v); + [GlEntryPoint("glMultiTexCoord2svARB")] + _glMultiTexCoord2svARB _MultiTexCoord2svARB { get; } + + delegate void _glMultiTexCoord2svARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord2svARB")] + _glMultiTexCoord2svARB_ptr _MultiTexCoord2svARB_ptr { get; } + + delegate void _glMultiTexCoord2svARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord2svARB")] + _glMultiTexCoord2svARB_intptr _MultiTexCoord2svARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord2xOES(TextureUnit texture, float s, float t); + [GlEntryPoint("glMultiTexCoord2xOES")] + _glMultiTexCoord2xOES _MultiTexCoord2xOES { get; } + + // --- + + delegate void _glMultiTexCoord2xvOES(TextureUnit texture, float[] coords); + [GlEntryPoint("glMultiTexCoord2xvOES")] + _glMultiTexCoord2xvOES _MultiTexCoord2xvOES { get; } + + delegate void _glMultiTexCoord2xvOES_ptr(TextureUnit texture, void* coords); + [GlEntryPoint("glMultiTexCoord2xvOES")] + _glMultiTexCoord2xvOES_ptr _MultiTexCoord2xvOES_ptr { get; } + + delegate void _glMultiTexCoord2xvOES_intptr(TextureUnit texture, IntPtr coords); + [GlEntryPoint("glMultiTexCoord2xvOES")] + _glMultiTexCoord2xvOES_intptr _MultiTexCoord2xvOES_intptr { get; } + + // --- + + delegate void _glMultiTexCoord3bOES(TextureUnit texture, sbyte s, sbyte t, sbyte r); + [GlEntryPoint("glMultiTexCoord3bOES")] + _glMultiTexCoord3bOES _MultiTexCoord3bOES { get; } + + // --- + + delegate void _glMultiTexCoord3bvOES(TextureUnit texture, sbyte[] coords); + [GlEntryPoint("glMultiTexCoord3bvOES")] + _glMultiTexCoord3bvOES _MultiTexCoord3bvOES { get; } + + delegate void _glMultiTexCoord3bvOES_ptr(TextureUnit texture, void* coords); + [GlEntryPoint("glMultiTexCoord3bvOES")] + _glMultiTexCoord3bvOES_ptr _MultiTexCoord3bvOES_ptr { get; } + + delegate void _glMultiTexCoord3bvOES_intptr(TextureUnit texture, IntPtr coords); + [GlEntryPoint("glMultiTexCoord3bvOES")] + _glMultiTexCoord3bvOES_intptr _MultiTexCoord3bvOES_intptr { get; } + + // --- + + delegate void _glMultiTexCoord3d(TextureUnit target, double s, double t, double r); + [GlEntryPoint("glMultiTexCoord3d")] + _glMultiTexCoord3d _MultiTexCoord3d { get; } + + // --- + + delegate void _glMultiTexCoord3dARB(TextureUnit target, double s, double t, double r); + [GlEntryPoint("glMultiTexCoord3dARB")] + _glMultiTexCoord3dARB _MultiTexCoord3dARB { get; } + + // --- + + delegate void _glMultiTexCoord3dv(TextureUnit target, double[] v); + [GlEntryPoint("glMultiTexCoord3dv")] + _glMultiTexCoord3dv _MultiTexCoord3dv { get; } + + delegate void _glMultiTexCoord3dv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord3dv")] + _glMultiTexCoord3dv_ptr _MultiTexCoord3dv_ptr { get; } + + delegate void _glMultiTexCoord3dv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord3dv")] + _glMultiTexCoord3dv_intptr _MultiTexCoord3dv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord3dvARB(TextureUnit target, double[] v); + [GlEntryPoint("glMultiTexCoord3dvARB")] + _glMultiTexCoord3dvARB _MultiTexCoord3dvARB { get; } + + delegate void _glMultiTexCoord3dvARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord3dvARB")] + _glMultiTexCoord3dvARB_ptr _MultiTexCoord3dvARB_ptr { get; } + + delegate void _glMultiTexCoord3dvARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord3dvARB")] + _glMultiTexCoord3dvARB_intptr _MultiTexCoord3dvARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord3f(TextureUnit target, float s, float t, float r); + [GlEntryPoint("glMultiTexCoord3f")] + _glMultiTexCoord3f _MultiTexCoord3f { get; } + + // --- + + delegate void _glMultiTexCoord3fARB(TextureUnit target, float s, float t, float r); + [GlEntryPoint("glMultiTexCoord3fARB")] + _glMultiTexCoord3fARB _MultiTexCoord3fARB { get; } + + // --- + + delegate void _glMultiTexCoord3fv(TextureUnit target, float[] v); + [GlEntryPoint("glMultiTexCoord3fv")] + _glMultiTexCoord3fv _MultiTexCoord3fv { get; } + + delegate void _glMultiTexCoord3fv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord3fv")] + _glMultiTexCoord3fv_ptr _MultiTexCoord3fv_ptr { get; } + + delegate void _glMultiTexCoord3fv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord3fv")] + _glMultiTexCoord3fv_intptr _MultiTexCoord3fv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord3fvARB(TextureUnit target, float[] v); + [GlEntryPoint("glMultiTexCoord3fvARB")] + _glMultiTexCoord3fvARB _MultiTexCoord3fvARB { get; } + + delegate void _glMultiTexCoord3fvARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord3fvARB")] + _glMultiTexCoord3fvARB_ptr _MultiTexCoord3fvARB_ptr { get; } + + delegate void _glMultiTexCoord3fvARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord3fvARB")] + _glMultiTexCoord3fvARB_intptr _MultiTexCoord3fvARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord3hNV(TextureUnit target, float s, float t, float r); + [GlEntryPoint("glMultiTexCoord3hNV")] + _glMultiTexCoord3hNV _MultiTexCoord3hNV { get; } + + // --- + + delegate void _glMultiTexCoord3hvNV(TextureUnit target, float[] v); + [GlEntryPoint("glMultiTexCoord3hvNV")] + _glMultiTexCoord3hvNV _MultiTexCoord3hvNV { get; } + + delegate void _glMultiTexCoord3hvNV_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord3hvNV")] + _glMultiTexCoord3hvNV_ptr _MultiTexCoord3hvNV_ptr { get; } + + delegate void _glMultiTexCoord3hvNV_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord3hvNV")] + _glMultiTexCoord3hvNV_intptr _MultiTexCoord3hvNV_intptr { get; } + + // --- + + delegate void _glMultiTexCoord3i(TextureUnit target, int s, int t, int r); + [GlEntryPoint("glMultiTexCoord3i")] + _glMultiTexCoord3i _MultiTexCoord3i { get; } + + // --- + + delegate void _glMultiTexCoord3iARB(TextureUnit target, int s, int t, int r); + [GlEntryPoint("glMultiTexCoord3iARB")] + _glMultiTexCoord3iARB _MultiTexCoord3iARB { get; } + + // --- + + delegate void _glMultiTexCoord3iv(TextureUnit target, int[] v); + [GlEntryPoint("glMultiTexCoord3iv")] + _glMultiTexCoord3iv _MultiTexCoord3iv { get; } + + delegate void _glMultiTexCoord3iv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord3iv")] + _glMultiTexCoord3iv_ptr _MultiTexCoord3iv_ptr { get; } + + delegate void _glMultiTexCoord3iv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord3iv")] + _glMultiTexCoord3iv_intptr _MultiTexCoord3iv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord3ivARB(TextureUnit target, int[] v); + [GlEntryPoint("glMultiTexCoord3ivARB")] + _glMultiTexCoord3ivARB _MultiTexCoord3ivARB { get; } + + delegate void _glMultiTexCoord3ivARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord3ivARB")] + _glMultiTexCoord3ivARB_ptr _MultiTexCoord3ivARB_ptr { get; } + + delegate void _glMultiTexCoord3ivARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord3ivARB")] + _glMultiTexCoord3ivARB_intptr _MultiTexCoord3ivARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord3s(TextureUnit target, short s, short t, short r); + [GlEntryPoint("glMultiTexCoord3s")] + _glMultiTexCoord3s _MultiTexCoord3s { get; } + + // --- + + delegate void _glMultiTexCoord3sARB(TextureUnit target, short s, short t, short r); + [GlEntryPoint("glMultiTexCoord3sARB")] + _glMultiTexCoord3sARB _MultiTexCoord3sARB { get; } + + // --- + + delegate void _glMultiTexCoord3sv(TextureUnit target, short[] v); + [GlEntryPoint("glMultiTexCoord3sv")] + _glMultiTexCoord3sv _MultiTexCoord3sv { get; } + + delegate void _glMultiTexCoord3sv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord3sv")] + _glMultiTexCoord3sv_ptr _MultiTexCoord3sv_ptr { get; } + + delegate void _glMultiTexCoord3sv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord3sv")] + _glMultiTexCoord3sv_intptr _MultiTexCoord3sv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord3svARB(TextureUnit target, short[] v); + [GlEntryPoint("glMultiTexCoord3svARB")] + _glMultiTexCoord3svARB _MultiTexCoord3svARB { get; } + + delegate void _glMultiTexCoord3svARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord3svARB")] + _glMultiTexCoord3svARB_ptr _MultiTexCoord3svARB_ptr { get; } + + delegate void _glMultiTexCoord3svARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord3svARB")] + _glMultiTexCoord3svARB_intptr _MultiTexCoord3svARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord3xOES(TextureUnit texture, float s, float t, float r); + [GlEntryPoint("glMultiTexCoord3xOES")] + _glMultiTexCoord3xOES _MultiTexCoord3xOES { get; } + + // --- + + delegate void _glMultiTexCoord3xvOES(TextureUnit texture, float[] coords); + [GlEntryPoint("glMultiTexCoord3xvOES")] + _glMultiTexCoord3xvOES _MultiTexCoord3xvOES { get; } + + delegate void _glMultiTexCoord3xvOES_ptr(TextureUnit texture, void* coords); + [GlEntryPoint("glMultiTexCoord3xvOES")] + _glMultiTexCoord3xvOES_ptr _MultiTexCoord3xvOES_ptr { get; } + + delegate void _glMultiTexCoord3xvOES_intptr(TextureUnit texture, IntPtr coords); + [GlEntryPoint("glMultiTexCoord3xvOES")] + _glMultiTexCoord3xvOES_intptr _MultiTexCoord3xvOES_intptr { get; } + + // --- + + delegate void _glMultiTexCoord4bOES(TextureUnit texture, sbyte s, sbyte t, sbyte r, sbyte q); + [GlEntryPoint("glMultiTexCoord4bOES")] + _glMultiTexCoord4bOES _MultiTexCoord4bOES { get; } + + // --- + + delegate void _glMultiTexCoord4bvOES(TextureUnit texture, sbyte[] coords); + [GlEntryPoint("glMultiTexCoord4bvOES")] + _glMultiTexCoord4bvOES _MultiTexCoord4bvOES { get; } + + delegate void _glMultiTexCoord4bvOES_ptr(TextureUnit texture, void* coords); + [GlEntryPoint("glMultiTexCoord4bvOES")] + _glMultiTexCoord4bvOES_ptr _MultiTexCoord4bvOES_ptr { get; } + + delegate void _glMultiTexCoord4bvOES_intptr(TextureUnit texture, IntPtr coords); + [GlEntryPoint("glMultiTexCoord4bvOES")] + _glMultiTexCoord4bvOES_intptr _MultiTexCoord4bvOES_intptr { get; } + + // --- + + delegate void _glMultiTexCoord4d(TextureUnit target, double s, double t, double r, double q); + [GlEntryPoint("glMultiTexCoord4d")] + _glMultiTexCoord4d _MultiTexCoord4d { get; } + + // --- + + delegate void _glMultiTexCoord4dARB(TextureUnit target, double s, double t, double r, double q); + [GlEntryPoint("glMultiTexCoord4dARB")] + _glMultiTexCoord4dARB _MultiTexCoord4dARB { get; } + + // --- + + delegate void _glMultiTexCoord4dv(TextureUnit target, double[] v); + [GlEntryPoint("glMultiTexCoord4dv")] + _glMultiTexCoord4dv _MultiTexCoord4dv { get; } + + delegate void _glMultiTexCoord4dv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord4dv")] + _glMultiTexCoord4dv_ptr _MultiTexCoord4dv_ptr { get; } + + delegate void _glMultiTexCoord4dv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord4dv")] + _glMultiTexCoord4dv_intptr _MultiTexCoord4dv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord4dvARB(TextureUnit target, double[] v); + [GlEntryPoint("glMultiTexCoord4dvARB")] + _glMultiTexCoord4dvARB _MultiTexCoord4dvARB { get; } + + delegate void _glMultiTexCoord4dvARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord4dvARB")] + _glMultiTexCoord4dvARB_ptr _MultiTexCoord4dvARB_ptr { get; } + + delegate void _glMultiTexCoord4dvARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord4dvARB")] + _glMultiTexCoord4dvARB_intptr _MultiTexCoord4dvARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord4f(TextureUnit target, float s, float t, float r, float q); + [GlEntryPoint("glMultiTexCoord4f")] + _glMultiTexCoord4f _MultiTexCoord4f { get; } + + // --- + + delegate void _glMultiTexCoord4fARB(TextureUnit target, float s, float t, float r, float q); + [GlEntryPoint("glMultiTexCoord4fARB")] + _glMultiTexCoord4fARB _MultiTexCoord4fARB { get; } + + // --- + + delegate void _glMultiTexCoord4fv(TextureUnit target, float[] v); + [GlEntryPoint("glMultiTexCoord4fv")] + _glMultiTexCoord4fv _MultiTexCoord4fv { get; } + + delegate void _glMultiTexCoord4fv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord4fv")] + _glMultiTexCoord4fv_ptr _MultiTexCoord4fv_ptr { get; } + + delegate void _glMultiTexCoord4fv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord4fv")] + _glMultiTexCoord4fv_intptr _MultiTexCoord4fv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord4fvARB(TextureUnit target, float[] v); + [GlEntryPoint("glMultiTexCoord4fvARB")] + _glMultiTexCoord4fvARB _MultiTexCoord4fvARB { get; } + + delegate void _glMultiTexCoord4fvARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord4fvARB")] + _glMultiTexCoord4fvARB_ptr _MultiTexCoord4fvARB_ptr { get; } + + delegate void _glMultiTexCoord4fvARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord4fvARB")] + _glMultiTexCoord4fvARB_intptr _MultiTexCoord4fvARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord4hNV(TextureUnit target, float s, float t, float r, float q); + [GlEntryPoint("glMultiTexCoord4hNV")] + _glMultiTexCoord4hNV _MultiTexCoord4hNV { get; } + + // --- + + delegate void _glMultiTexCoord4hvNV(TextureUnit target, float[] v); + [GlEntryPoint("glMultiTexCoord4hvNV")] + _glMultiTexCoord4hvNV _MultiTexCoord4hvNV { get; } + + delegate void _glMultiTexCoord4hvNV_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord4hvNV")] + _glMultiTexCoord4hvNV_ptr _MultiTexCoord4hvNV_ptr { get; } + + delegate void _glMultiTexCoord4hvNV_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord4hvNV")] + _glMultiTexCoord4hvNV_intptr _MultiTexCoord4hvNV_intptr { get; } + + // --- + + delegate void _glMultiTexCoord4i(TextureUnit target, int s, int t, int r, int q); + [GlEntryPoint("glMultiTexCoord4i")] + _glMultiTexCoord4i _MultiTexCoord4i { get; } + + // --- + + delegate void _glMultiTexCoord4iARB(TextureUnit target, int s, int t, int r, int q); + [GlEntryPoint("glMultiTexCoord4iARB")] + _glMultiTexCoord4iARB _MultiTexCoord4iARB { get; } + + // --- + + delegate void _glMultiTexCoord4iv(TextureUnit target, int[] v); + [GlEntryPoint("glMultiTexCoord4iv")] + _glMultiTexCoord4iv _MultiTexCoord4iv { get; } + + delegate void _glMultiTexCoord4iv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord4iv")] + _glMultiTexCoord4iv_ptr _MultiTexCoord4iv_ptr { get; } + + delegate void _glMultiTexCoord4iv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord4iv")] + _glMultiTexCoord4iv_intptr _MultiTexCoord4iv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord4ivARB(TextureUnit target, int[] v); + [GlEntryPoint("glMultiTexCoord4ivARB")] + _glMultiTexCoord4ivARB _MultiTexCoord4ivARB { get; } + + delegate void _glMultiTexCoord4ivARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord4ivARB")] + _glMultiTexCoord4ivARB_ptr _MultiTexCoord4ivARB_ptr { get; } + + delegate void _glMultiTexCoord4ivARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord4ivARB")] + _glMultiTexCoord4ivARB_intptr _MultiTexCoord4ivARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord4s(TextureUnit target, short s, short t, short r, short q); + [GlEntryPoint("glMultiTexCoord4s")] + _glMultiTexCoord4s _MultiTexCoord4s { get; } + + // --- + + delegate void _glMultiTexCoord4sARB(TextureUnit target, short s, short t, short r, short q); + [GlEntryPoint("glMultiTexCoord4sARB")] + _glMultiTexCoord4sARB _MultiTexCoord4sARB { get; } + + // --- + + delegate void _glMultiTexCoord4sv(TextureUnit target, short[] v); + [GlEntryPoint("glMultiTexCoord4sv")] + _glMultiTexCoord4sv _MultiTexCoord4sv { get; } + + delegate void _glMultiTexCoord4sv_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord4sv")] + _glMultiTexCoord4sv_ptr _MultiTexCoord4sv_ptr { get; } + + delegate void _glMultiTexCoord4sv_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord4sv")] + _glMultiTexCoord4sv_intptr _MultiTexCoord4sv_intptr { get; } + + // --- + + delegate void _glMultiTexCoord4svARB(TextureUnit target, short[] v); + [GlEntryPoint("glMultiTexCoord4svARB")] + _glMultiTexCoord4svARB _MultiTexCoord4svARB { get; } + + delegate void _glMultiTexCoord4svARB_ptr(TextureUnit target, void* v); + [GlEntryPoint("glMultiTexCoord4svARB")] + _glMultiTexCoord4svARB_ptr _MultiTexCoord4svARB_ptr { get; } + + delegate void _glMultiTexCoord4svARB_intptr(TextureUnit target, IntPtr v); + [GlEntryPoint("glMultiTexCoord4svARB")] + _glMultiTexCoord4svARB_intptr _MultiTexCoord4svARB_intptr { get; } + + // --- + + delegate void _glMultiTexCoord4x(TextureUnit texture, float s, float t, float r, float q); + [GlEntryPoint("glMultiTexCoord4x")] + _glMultiTexCoord4x _MultiTexCoord4x { get; } + + // --- + + delegate void _glMultiTexCoord4xOES(TextureUnit texture, float s, float t, float r, float q); + [GlEntryPoint("glMultiTexCoord4xOES")] + _glMultiTexCoord4xOES _MultiTexCoord4xOES { get; } + + // --- + + delegate void _glMultiTexCoord4xvOES(TextureUnit texture, float[] coords); + [GlEntryPoint("glMultiTexCoord4xvOES")] + _glMultiTexCoord4xvOES _MultiTexCoord4xvOES { get; } + + delegate void _glMultiTexCoord4xvOES_ptr(TextureUnit texture, void* coords); + [GlEntryPoint("glMultiTexCoord4xvOES")] + _glMultiTexCoord4xvOES_ptr _MultiTexCoord4xvOES_ptr { get; } + + delegate void _glMultiTexCoord4xvOES_intptr(TextureUnit texture, IntPtr coords); + [GlEntryPoint("glMultiTexCoord4xvOES")] + _glMultiTexCoord4xvOES_intptr _MultiTexCoord4xvOES_intptr { get; } + + // --- + + delegate void _glMultiTexCoordP1ui(TextureUnit texture, TexCoordPointerType type, uint coords); + [GlEntryPoint("glMultiTexCoordP1ui")] + _glMultiTexCoordP1ui _MultiTexCoordP1ui { get; } + + // --- + + delegate void _glMultiTexCoordP1uiv(TextureUnit texture, TexCoordPointerType type, uint[] coords); + [GlEntryPoint("glMultiTexCoordP1uiv")] + _glMultiTexCoordP1uiv _MultiTexCoordP1uiv { get; } + + delegate void _glMultiTexCoordP1uiv_ptr(TextureUnit texture, TexCoordPointerType type, void* coords); + [GlEntryPoint("glMultiTexCoordP1uiv")] + _glMultiTexCoordP1uiv_ptr _MultiTexCoordP1uiv_ptr { get; } + + delegate void _glMultiTexCoordP1uiv_intptr(TextureUnit texture, TexCoordPointerType type, IntPtr coords); + [GlEntryPoint("glMultiTexCoordP1uiv")] + _glMultiTexCoordP1uiv_intptr _MultiTexCoordP1uiv_intptr { get; } + + // --- + + delegate void _glMultiTexCoordP2ui(TextureUnit texture, TexCoordPointerType type, uint coords); + [GlEntryPoint("glMultiTexCoordP2ui")] + _glMultiTexCoordP2ui _MultiTexCoordP2ui { get; } + + // --- + + delegate void _glMultiTexCoordP2uiv(TextureUnit texture, TexCoordPointerType type, uint[] coords); + [GlEntryPoint("glMultiTexCoordP2uiv")] + _glMultiTexCoordP2uiv _MultiTexCoordP2uiv { get; } + + delegate void _glMultiTexCoordP2uiv_ptr(TextureUnit texture, TexCoordPointerType type, void* coords); + [GlEntryPoint("glMultiTexCoordP2uiv")] + _glMultiTexCoordP2uiv_ptr _MultiTexCoordP2uiv_ptr { get; } + + delegate void _glMultiTexCoordP2uiv_intptr(TextureUnit texture, TexCoordPointerType type, IntPtr coords); + [GlEntryPoint("glMultiTexCoordP2uiv")] + _glMultiTexCoordP2uiv_intptr _MultiTexCoordP2uiv_intptr { get; } + + // --- + + delegate void _glMultiTexCoordP3ui(TextureUnit texture, TexCoordPointerType type, uint coords); + [GlEntryPoint("glMultiTexCoordP3ui")] + _glMultiTexCoordP3ui _MultiTexCoordP3ui { get; } + + // --- + + delegate void _glMultiTexCoordP3uiv(TextureUnit texture, TexCoordPointerType type, uint[] coords); + [GlEntryPoint("glMultiTexCoordP3uiv")] + _glMultiTexCoordP3uiv _MultiTexCoordP3uiv { get; } + + delegate void _glMultiTexCoordP3uiv_ptr(TextureUnit texture, TexCoordPointerType type, void* coords); + [GlEntryPoint("glMultiTexCoordP3uiv")] + _glMultiTexCoordP3uiv_ptr _MultiTexCoordP3uiv_ptr { get; } + + delegate void _glMultiTexCoordP3uiv_intptr(TextureUnit texture, TexCoordPointerType type, IntPtr coords); + [GlEntryPoint("glMultiTexCoordP3uiv")] + _glMultiTexCoordP3uiv_intptr _MultiTexCoordP3uiv_intptr { get; } + + // --- + + delegate void _glMultiTexCoordP4ui(TextureUnit texture, TexCoordPointerType type, uint coords); + [GlEntryPoint("glMultiTexCoordP4ui")] + _glMultiTexCoordP4ui _MultiTexCoordP4ui { get; } + + // --- + + delegate void _glMultiTexCoordP4uiv(TextureUnit texture, TexCoordPointerType type, uint[] coords); + [GlEntryPoint("glMultiTexCoordP4uiv")] + _glMultiTexCoordP4uiv _MultiTexCoordP4uiv { get; } + + delegate void _glMultiTexCoordP4uiv_ptr(TextureUnit texture, TexCoordPointerType type, void* coords); + [GlEntryPoint("glMultiTexCoordP4uiv")] + _glMultiTexCoordP4uiv_ptr _MultiTexCoordP4uiv_ptr { get; } + + delegate void _glMultiTexCoordP4uiv_intptr(TextureUnit texture, TexCoordPointerType type, IntPtr coords); + [GlEntryPoint("glMultiTexCoordP4uiv")] + _glMultiTexCoordP4uiv_intptr _MultiTexCoordP4uiv_intptr { get; } + + // --- + + delegate void _glMultiTexCoordPointerEXT(TextureUnit texunit, int size, TexCoordPointerType type, int stride, IntPtr pointer); + [GlEntryPoint("glMultiTexCoordPointerEXT")] + _glMultiTexCoordPointerEXT _MultiTexCoordPointerEXT { get; } + + // --- + + delegate void _glMultiTexEnvfEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, float param); + [GlEntryPoint("glMultiTexEnvfEXT")] + _glMultiTexEnvfEXT _MultiTexEnvfEXT { get; } + + // --- + + delegate void _glMultiTexEnvfvEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, float[] @params); + [GlEntryPoint("glMultiTexEnvfvEXT")] + _glMultiTexEnvfvEXT _MultiTexEnvfvEXT { get; } + + delegate void _glMultiTexEnvfvEXT_ptr(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, void* @params); + [GlEntryPoint("glMultiTexEnvfvEXT")] + _glMultiTexEnvfvEXT_ptr _MultiTexEnvfvEXT_ptr { get; } + + delegate void _glMultiTexEnvfvEXT_intptr(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params); + [GlEntryPoint("glMultiTexEnvfvEXT")] + _glMultiTexEnvfvEXT_intptr _MultiTexEnvfvEXT_intptr { get; } + + // --- + + delegate void _glMultiTexEnviEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, int param); + [GlEntryPoint("glMultiTexEnviEXT")] + _glMultiTexEnviEXT _MultiTexEnviEXT { get; } + + // --- + + delegate void _glMultiTexEnvivEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, int[] @params); + [GlEntryPoint("glMultiTexEnvivEXT")] + _glMultiTexEnvivEXT _MultiTexEnvivEXT { get; } + + delegate void _glMultiTexEnvivEXT_ptr(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, void* @params); + [GlEntryPoint("glMultiTexEnvivEXT")] + _glMultiTexEnvivEXT_ptr _MultiTexEnvivEXT_ptr { get; } + + delegate void _glMultiTexEnvivEXT_intptr(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params); + [GlEntryPoint("glMultiTexEnvivEXT")] + _glMultiTexEnvivEXT_intptr _MultiTexEnvivEXT_intptr { get; } + + // --- + + delegate void _glMultiTexGendEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, double param); + [GlEntryPoint("glMultiTexGendEXT")] + _glMultiTexGendEXT _MultiTexGendEXT { get; } + + // --- + + delegate void _glMultiTexGendvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, double[] @params); + [GlEntryPoint("glMultiTexGendvEXT")] + _glMultiTexGendvEXT _MultiTexGendvEXT { get; } + + delegate void _glMultiTexGendvEXT_ptr(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glMultiTexGendvEXT")] + _glMultiTexGendvEXT_ptr _MultiTexGendvEXT_ptr { get; } + + delegate void _glMultiTexGendvEXT_intptr(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glMultiTexGendvEXT")] + _glMultiTexGendvEXT_intptr _MultiTexGendvEXT_intptr { get; } + + // --- + + delegate void _glMultiTexGenfEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, float param); + [GlEntryPoint("glMultiTexGenfEXT")] + _glMultiTexGenfEXT _MultiTexGenfEXT { get; } + + // --- + + delegate void _glMultiTexGenfvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, float[] @params); + [GlEntryPoint("glMultiTexGenfvEXT")] + _glMultiTexGenfvEXT _MultiTexGenfvEXT { get; } + + delegate void _glMultiTexGenfvEXT_ptr(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glMultiTexGenfvEXT")] + _glMultiTexGenfvEXT_ptr _MultiTexGenfvEXT_ptr { get; } + + delegate void _glMultiTexGenfvEXT_intptr(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glMultiTexGenfvEXT")] + _glMultiTexGenfvEXT_intptr _MultiTexGenfvEXT_intptr { get; } + + // --- + + delegate void _glMultiTexGeniEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, int param); + [GlEntryPoint("glMultiTexGeniEXT")] + _glMultiTexGeniEXT _MultiTexGeniEXT { get; } + + // --- + + delegate void _glMultiTexGenivEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, int[] @params); + [GlEntryPoint("glMultiTexGenivEXT")] + _glMultiTexGenivEXT _MultiTexGenivEXT { get; } + + delegate void _glMultiTexGenivEXT_ptr(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glMultiTexGenivEXT")] + _glMultiTexGenivEXT_ptr _MultiTexGenivEXT_ptr { get; } + + delegate void _glMultiTexGenivEXT_intptr(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glMultiTexGenivEXT")] + _glMultiTexGenivEXT_intptr _MultiTexGenivEXT_intptr { get; } + + // --- + + delegate void _glMultiTexImage1DEXT(TextureUnit texunit, TextureTarget target, int level, int internalformat, int width, int border, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glMultiTexImage1DEXT")] + _glMultiTexImage1DEXT _MultiTexImage1DEXT { get; } + + // --- + + delegate void _glMultiTexImage2DEXT(TextureUnit texunit, TextureTarget target, int level, int internalformat, int width, int height, int border, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glMultiTexImage2DEXT")] + _glMultiTexImage2DEXT _MultiTexImage2DEXT { get; } + + // --- + + delegate void _glMultiTexImage3DEXT(TextureUnit texunit, TextureTarget target, int level, int internalformat, int width, int height, int depth, int border, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glMultiTexImage3DEXT")] + _glMultiTexImage3DEXT _MultiTexImage3DEXT { get; } + + // --- + + delegate void _glMultiTexParameterIivEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, int[] @params); + [GlEntryPoint("glMultiTexParameterIivEXT")] + _glMultiTexParameterIivEXT _MultiTexParameterIivEXT { get; } + + delegate void _glMultiTexParameterIivEXT_ptr(TextureUnit texunit, TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glMultiTexParameterIivEXT")] + _glMultiTexParameterIivEXT_ptr _MultiTexParameterIivEXT_ptr { get; } + + delegate void _glMultiTexParameterIivEXT_intptr(TextureUnit texunit, TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glMultiTexParameterIivEXT")] + _glMultiTexParameterIivEXT_intptr _MultiTexParameterIivEXT_intptr { get; } + + // --- + + delegate void _glMultiTexParameterIuivEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, uint[] @params); + [GlEntryPoint("glMultiTexParameterIuivEXT")] + _glMultiTexParameterIuivEXT _MultiTexParameterIuivEXT { get; } + + delegate void _glMultiTexParameterIuivEXT_ptr(TextureUnit texunit, TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glMultiTexParameterIuivEXT")] + _glMultiTexParameterIuivEXT_ptr _MultiTexParameterIuivEXT_ptr { get; } + + delegate void _glMultiTexParameterIuivEXT_intptr(TextureUnit texunit, TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glMultiTexParameterIuivEXT")] + _glMultiTexParameterIuivEXT_intptr _MultiTexParameterIuivEXT_intptr { get; } + + // --- + + delegate void _glMultiTexParameterfEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, float param); + [GlEntryPoint("glMultiTexParameterfEXT")] + _glMultiTexParameterfEXT _MultiTexParameterfEXT { get; } + + // --- + + delegate void _glMultiTexParameterfvEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, float[] @params); + [GlEntryPoint("glMultiTexParameterfvEXT")] + _glMultiTexParameterfvEXT _MultiTexParameterfvEXT { get; } + + delegate void _glMultiTexParameterfvEXT_ptr(TextureUnit texunit, TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glMultiTexParameterfvEXT")] + _glMultiTexParameterfvEXT_ptr _MultiTexParameterfvEXT_ptr { get; } + + delegate void _glMultiTexParameterfvEXT_intptr(TextureUnit texunit, TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glMultiTexParameterfvEXT")] + _glMultiTexParameterfvEXT_intptr _MultiTexParameterfvEXT_intptr { get; } + + // --- + + delegate void _glMultiTexParameteriEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, int param); + [GlEntryPoint("glMultiTexParameteriEXT")] + _glMultiTexParameteriEXT _MultiTexParameteriEXT { get; } + + // --- + + delegate void _glMultiTexParameterivEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, int[] @params); + [GlEntryPoint("glMultiTexParameterivEXT")] + _glMultiTexParameterivEXT _MultiTexParameterivEXT { get; } + + delegate void _glMultiTexParameterivEXT_ptr(TextureUnit texunit, TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glMultiTexParameterivEXT")] + _glMultiTexParameterivEXT_ptr _MultiTexParameterivEXT_ptr { get; } + + delegate void _glMultiTexParameterivEXT_intptr(TextureUnit texunit, TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glMultiTexParameterivEXT")] + _glMultiTexParameterivEXT_intptr _MultiTexParameterivEXT_intptr { get; } + + // --- + + delegate void _glMultiTexRenderbufferEXT(TextureUnit texunit, TextureTarget target, uint renderbuffer); + [GlEntryPoint("glMultiTexRenderbufferEXT")] + _glMultiTexRenderbufferEXT _MultiTexRenderbufferEXT { get; } + + // --- + + delegate void _glMultiTexSubImage1DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int width, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glMultiTexSubImage1DEXT")] + _glMultiTexSubImage1DEXT _MultiTexSubImage1DEXT { get; } + + // --- + + delegate void _glMultiTexSubImage2DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glMultiTexSubImage2DEXT")] + _glMultiTexSubImage2DEXT _MultiTexSubImage2DEXT { get; } + + // --- + + delegate void _glMultiTexSubImage3DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glMultiTexSubImage3DEXT")] + _glMultiTexSubImage3DEXT _MultiTexSubImage3DEXT { get; } + + // --- + + delegate void _glMulticastBarrierNV(); + [GlEntryPoint("glMulticastBarrierNV")] + _glMulticastBarrierNV _MulticastBarrierNV { get; } + + // --- + + delegate void _glMulticastBlitFramebufferNV(uint srcGpu, uint dstGpu, int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter); + [GlEntryPoint("glMulticastBlitFramebufferNV")] + _glMulticastBlitFramebufferNV _MulticastBlitFramebufferNV { get; } + + // --- + + delegate void _glMulticastBufferSubDataNV(int gpuMask, uint buffer, IntPtr offset, IntPtr size, IntPtr data); + [GlEntryPoint("glMulticastBufferSubDataNV")] + _glMulticastBufferSubDataNV _MulticastBufferSubDataNV { get; } + + // --- + + delegate void _glMulticastCopyBufferSubDataNV(uint readGpu, int writeGpuMask, uint readBuffer, uint writeBuffer, IntPtr readOffset, IntPtr writeOffset, IntPtr size); + [GlEntryPoint("glMulticastCopyBufferSubDataNV")] + _glMulticastCopyBufferSubDataNV _MulticastCopyBufferSubDataNV { get; } + + // --- + + delegate void _glMulticastCopyImageSubDataNV(uint srcGpu, int dstGpuMask, uint srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth); + [GlEntryPoint("glMulticastCopyImageSubDataNV")] + _glMulticastCopyImageSubDataNV _MulticastCopyImageSubDataNV { get; } + + // --- + + delegate void _glMulticastFramebufferSampleLocationsfvNV(uint gpu, uint framebuffer, uint start, int count, float[] v); + [GlEntryPoint("glMulticastFramebufferSampleLocationsfvNV")] + _glMulticastFramebufferSampleLocationsfvNV _MulticastFramebufferSampleLocationsfvNV { get; } + + delegate void _glMulticastFramebufferSampleLocationsfvNV_ptr(uint gpu, uint framebuffer, uint start, int count, void* v); + [GlEntryPoint("glMulticastFramebufferSampleLocationsfvNV")] + _glMulticastFramebufferSampleLocationsfvNV_ptr _MulticastFramebufferSampleLocationsfvNV_ptr { get; } + + delegate void _glMulticastFramebufferSampleLocationsfvNV_intptr(uint gpu, uint framebuffer, uint start, int count, IntPtr v); + [GlEntryPoint("glMulticastFramebufferSampleLocationsfvNV")] + _glMulticastFramebufferSampleLocationsfvNV_intptr _MulticastFramebufferSampleLocationsfvNV_intptr { get; } + + // --- + + delegate void _glMulticastGetQueryObjecti64vNV(uint gpu, uint id, int pname, Int64[] @params); + [GlEntryPoint("glMulticastGetQueryObjecti64vNV")] + _glMulticastGetQueryObjecti64vNV _MulticastGetQueryObjecti64vNV { get; } + + delegate void _glMulticastGetQueryObjecti64vNV_ptr(uint gpu, uint id, int pname, void* @params); + [GlEntryPoint("glMulticastGetQueryObjecti64vNV")] + _glMulticastGetQueryObjecti64vNV_ptr _MulticastGetQueryObjecti64vNV_ptr { get; } + + delegate void _glMulticastGetQueryObjecti64vNV_intptr(uint gpu, uint id, int pname, IntPtr @params); + [GlEntryPoint("glMulticastGetQueryObjecti64vNV")] + _glMulticastGetQueryObjecti64vNV_intptr _MulticastGetQueryObjecti64vNV_intptr { get; } + + // --- + + delegate void _glMulticastGetQueryObjectivNV(uint gpu, uint id, int pname, int[] @params); + [GlEntryPoint("glMulticastGetQueryObjectivNV")] + _glMulticastGetQueryObjectivNV _MulticastGetQueryObjectivNV { get; } + + delegate void _glMulticastGetQueryObjectivNV_ptr(uint gpu, uint id, int pname, void* @params); + [GlEntryPoint("glMulticastGetQueryObjectivNV")] + _glMulticastGetQueryObjectivNV_ptr _MulticastGetQueryObjectivNV_ptr { get; } + + delegate void _glMulticastGetQueryObjectivNV_intptr(uint gpu, uint id, int pname, IntPtr @params); + [GlEntryPoint("glMulticastGetQueryObjectivNV")] + _glMulticastGetQueryObjectivNV_intptr _MulticastGetQueryObjectivNV_intptr { get; } + + // --- + + delegate void _glMulticastGetQueryObjectui64vNV(uint gpu, uint id, int pname, UInt64[] @params); + [GlEntryPoint("glMulticastGetQueryObjectui64vNV")] + _glMulticastGetQueryObjectui64vNV _MulticastGetQueryObjectui64vNV { get; } + + delegate void _glMulticastGetQueryObjectui64vNV_ptr(uint gpu, uint id, int pname, void* @params); + [GlEntryPoint("glMulticastGetQueryObjectui64vNV")] + _glMulticastGetQueryObjectui64vNV_ptr _MulticastGetQueryObjectui64vNV_ptr { get; } + + delegate void _glMulticastGetQueryObjectui64vNV_intptr(uint gpu, uint id, int pname, IntPtr @params); + [GlEntryPoint("glMulticastGetQueryObjectui64vNV")] + _glMulticastGetQueryObjectui64vNV_intptr _MulticastGetQueryObjectui64vNV_intptr { get; } + + // --- + + delegate void _glMulticastGetQueryObjectuivNV(uint gpu, uint id, int pname, uint[] @params); + [GlEntryPoint("glMulticastGetQueryObjectuivNV")] + _glMulticastGetQueryObjectuivNV _MulticastGetQueryObjectuivNV { get; } + + delegate void _glMulticastGetQueryObjectuivNV_ptr(uint gpu, uint id, int pname, void* @params); + [GlEntryPoint("glMulticastGetQueryObjectuivNV")] + _glMulticastGetQueryObjectuivNV_ptr _MulticastGetQueryObjectuivNV_ptr { get; } + + delegate void _glMulticastGetQueryObjectuivNV_intptr(uint gpu, uint id, int pname, IntPtr @params); + [GlEntryPoint("glMulticastGetQueryObjectuivNV")] + _glMulticastGetQueryObjectuivNV_intptr _MulticastGetQueryObjectuivNV_intptr { get; } + + // --- + + delegate void _glMulticastScissorArrayvNVX(uint gpu, uint first, int count, int[] v); + [GlEntryPoint("glMulticastScissorArrayvNVX")] + _glMulticastScissorArrayvNVX _MulticastScissorArrayvNVX { get; } + + delegate void _glMulticastScissorArrayvNVX_ptr(uint gpu, uint first, int count, void* v); + [GlEntryPoint("glMulticastScissorArrayvNVX")] + _glMulticastScissorArrayvNVX_ptr _MulticastScissorArrayvNVX_ptr { get; } + + delegate void _glMulticastScissorArrayvNVX_intptr(uint gpu, uint first, int count, IntPtr v); + [GlEntryPoint("glMulticastScissorArrayvNVX")] + _glMulticastScissorArrayvNVX_intptr _MulticastScissorArrayvNVX_intptr { get; } + + // --- + + delegate void _glMulticastViewportArrayvNVX(uint gpu, uint first, int count, float[] v); + [GlEntryPoint("glMulticastViewportArrayvNVX")] + _glMulticastViewportArrayvNVX _MulticastViewportArrayvNVX { get; } + + delegate void _glMulticastViewportArrayvNVX_ptr(uint gpu, uint first, int count, void* v); + [GlEntryPoint("glMulticastViewportArrayvNVX")] + _glMulticastViewportArrayvNVX_ptr _MulticastViewportArrayvNVX_ptr { get; } + + delegate void _glMulticastViewportArrayvNVX_intptr(uint gpu, uint first, int count, IntPtr v); + [GlEntryPoint("glMulticastViewportArrayvNVX")] + _glMulticastViewportArrayvNVX_intptr _MulticastViewportArrayvNVX_intptr { get; } + + // --- + + delegate void _glMulticastViewportPositionWScaleNVX(uint gpu, uint index, float xcoeff, float ycoeff); + [GlEntryPoint("glMulticastViewportPositionWScaleNVX")] + _glMulticastViewportPositionWScaleNVX _MulticastViewportPositionWScaleNVX { get; } + + // --- + + delegate void _glMulticastWaitSyncNV(uint signalGpu, int waitGpuMask); + [GlEntryPoint("glMulticastWaitSyncNV")] + _glMulticastWaitSyncNV _MulticastWaitSyncNV { get; } + + // --- + + delegate void _glNamedBufferAttachMemoryNV(uint buffer, uint memory, UInt64 offset); + [GlEntryPoint("glNamedBufferAttachMemoryNV")] + _glNamedBufferAttachMemoryNV _NamedBufferAttachMemoryNV { get; } + + // --- + + delegate void _glNamedBufferData(uint buffer, IntPtr size, IntPtr data, VertexBufferObjectUsage usage); + [GlEntryPoint("glNamedBufferData")] + _glNamedBufferData _NamedBufferData { get; } + + // --- + + delegate void _glNamedBufferDataEXT(uint buffer, IntPtr size, IntPtr data, VertexBufferObjectUsage usage); + [GlEntryPoint("glNamedBufferDataEXT")] + _glNamedBufferDataEXT _NamedBufferDataEXT { get; } + + // --- + + delegate void _glNamedBufferPageCommitmentARB(uint buffer, IntPtr offset, IntPtr size, bool commit); + [GlEntryPoint("glNamedBufferPageCommitmentARB")] + _glNamedBufferPageCommitmentARB _NamedBufferPageCommitmentARB { get; } + + // --- + + delegate void _glNamedBufferPageCommitmentEXT(uint buffer, IntPtr offset, IntPtr size, bool commit); + [GlEntryPoint("glNamedBufferPageCommitmentEXT")] + _glNamedBufferPageCommitmentEXT _NamedBufferPageCommitmentEXT { get; } + + // --- + + delegate void _glNamedBufferStorage(uint buffer, IntPtr size, IntPtr data, int flags); + [GlEntryPoint("glNamedBufferStorage")] + _glNamedBufferStorage _NamedBufferStorage { get; } + + // --- + + delegate void _glNamedBufferStorageExternalEXT(uint buffer, IntPtr offset, IntPtr size, IntPtr clientBuffer, int flags); + [GlEntryPoint("glNamedBufferStorageExternalEXT")] + _glNamedBufferStorageExternalEXT _NamedBufferStorageExternalEXT { get; } + + // --- + + delegate void _glNamedBufferStorageEXT(uint buffer, IntPtr size, IntPtr data, int flags); + [GlEntryPoint("glNamedBufferStorageEXT")] + _glNamedBufferStorageEXT _NamedBufferStorageEXT { get; } + + // --- + + delegate void _glNamedBufferStorageMemEXT(uint buffer, IntPtr size, uint memory, UInt64 offset); + [GlEntryPoint("glNamedBufferStorageMemEXT")] + _glNamedBufferStorageMemEXT _NamedBufferStorageMemEXT { get; } + + // --- + + delegate void _glNamedBufferSubData(uint buffer, IntPtr offset, IntPtr size, IntPtr data); + [GlEntryPoint("glNamedBufferSubData")] + _glNamedBufferSubData _NamedBufferSubData { get; } + + // --- + + delegate void _glNamedBufferSubDataEXT(uint buffer, IntPtr offset, IntPtr size, IntPtr data); + [GlEntryPoint("glNamedBufferSubDataEXT")] + _glNamedBufferSubDataEXT _NamedBufferSubDataEXT { get; } + + // --- + + delegate void _glNamedCopyBufferSubDataEXT(uint readBuffer, uint writeBuffer, IntPtr readOffset, IntPtr writeOffset, IntPtr size); + [GlEntryPoint("glNamedCopyBufferSubDataEXT")] + _glNamedCopyBufferSubDataEXT _NamedCopyBufferSubDataEXT { get; } + + // --- + + delegate void _glNamedFramebufferDrawBuffer(uint framebuffer, ColorBuffer buf); + [GlEntryPoint("glNamedFramebufferDrawBuffer")] + _glNamedFramebufferDrawBuffer _NamedFramebufferDrawBuffer { get; } + + // --- + + delegate void _glNamedFramebufferDrawBuffers(uint framebuffer, int n, ColorBuffer[] bufs); + [GlEntryPoint("glNamedFramebufferDrawBuffers")] + _glNamedFramebufferDrawBuffers _NamedFramebufferDrawBuffers { get; } + + delegate void _glNamedFramebufferDrawBuffers_ptr(uint framebuffer, int n, void* bufs); + [GlEntryPoint("glNamedFramebufferDrawBuffers")] + _glNamedFramebufferDrawBuffers_ptr _NamedFramebufferDrawBuffers_ptr { get; } + + delegate void _glNamedFramebufferDrawBuffers_intptr(uint framebuffer, int n, IntPtr bufs); + [GlEntryPoint("glNamedFramebufferDrawBuffers")] + _glNamedFramebufferDrawBuffers_intptr _NamedFramebufferDrawBuffers_intptr { get; } + + // --- + + delegate void _glNamedFramebufferParameteri(uint framebuffer, FramebufferParameterName pname, int param); + [GlEntryPoint("glNamedFramebufferParameteri")] + _glNamedFramebufferParameteri _NamedFramebufferParameteri { get; } + + // --- + + delegate void _glNamedFramebufferParameteriEXT(uint framebuffer, FramebufferParameterName pname, int param); + [GlEntryPoint("glNamedFramebufferParameteriEXT")] + _glNamedFramebufferParameteriEXT _NamedFramebufferParameteriEXT { get; } + + // --- + + delegate void _glNamedFramebufferReadBuffer(uint framebuffer, ColorBuffer src); + [GlEntryPoint("glNamedFramebufferReadBuffer")] + _glNamedFramebufferReadBuffer _NamedFramebufferReadBuffer { get; } + + // --- + + delegate void _glNamedFramebufferRenderbuffer(uint framebuffer, FramebufferAttachment attachment, RenderbufferTarget renderbuffertarget, uint renderbuffer); + [GlEntryPoint("glNamedFramebufferRenderbuffer")] + _glNamedFramebufferRenderbuffer _NamedFramebufferRenderbuffer { get; } + + // --- + + delegate void _glNamedFramebufferRenderbufferEXT(uint framebuffer, FramebufferAttachment attachment, RenderbufferTarget renderbuffertarget, uint renderbuffer); + [GlEntryPoint("glNamedFramebufferRenderbufferEXT")] + _glNamedFramebufferRenderbufferEXT _NamedFramebufferRenderbufferEXT { get; } + + // --- + + delegate void _glNamedFramebufferSampleLocationsfvARB(uint framebuffer, uint start, int count, float[] v); + [GlEntryPoint("glNamedFramebufferSampleLocationsfvARB")] + _glNamedFramebufferSampleLocationsfvARB _NamedFramebufferSampleLocationsfvARB { get; } + + delegate void _glNamedFramebufferSampleLocationsfvARB_ptr(uint framebuffer, uint start, int count, void* v); + [GlEntryPoint("glNamedFramebufferSampleLocationsfvARB")] + _glNamedFramebufferSampleLocationsfvARB_ptr _NamedFramebufferSampleLocationsfvARB_ptr { get; } + + delegate void _glNamedFramebufferSampleLocationsfvARB_intptr(uint framebuffer, uint start, int count, IntPtr v); + [GlEntryPoint("glNamedFramebufferSampleLocationsfvARB")] + _glNamedFramebufferSampleLocationsfvARB_intptr _NamedFramebufferSampleLocationsfvARB_intptr { get; } + + // --- + + delegate void _glNamedFramebufferSampleLocationsfvNV(uint framebuffer, uint start, int count, float[] v); + [GlEntryPoint("glNamedFramebufferSampleLocationsfvNV")] + _glNamedFramebufferSampleLocationsfvNV _NamedFramebufferSampleLocationsfvNV { get; } + + delegate void _glNamedFramebufferSampleLocationsfvNV_ptr(uint framebuffer, uint start, int count, void* v); + [GlEntryPoint("glNamedFramebufferSampleLocationsfvNV")] + _glNamedFramebufferSampleLocationsfvNV_ptr _NamedFramebufferSampleLocationsfvNV_ptr { get; } + + delegate void _glNamedFramebufferSampleLocationsfvNV_intptr(uint framebuffer, uint start, int count, IntPtr v); + [GlEntryPoint("glNamedFramebufferSampleLocationsfvNV")] + _glNamedFramebufferSampleLocationsfvNV_intptr _NamedFramebufferSampleLocationsfvNV_intptr { get; } + + // --- + + delegate void _glNamedFramebufferTexture(uint framebuffer, FramebufferAttachment attachment, uint texture, int level); + [GlEntryPoint("glNamedFramebufferTexture")] + _glNamedFramebufferTexture _NamedFramebufferTexture { get; } + + // --- + + delegate void _glNamedFramebufferSamplePositionsfvAMD(uint framebuffer, uint numsamples, uint pixelindex, float[] values); + [GlEntryPoint("glNamedFramebufferSamplePositionsfvAMD")] + _glNamedFramebufferSamplePositionsfvAMD _NamedFramebufferSamplePositionsfvAMD { get; } + + delegate void _glNamedFramebufferSamplePositionsfvAMD_ptr(uint framebuffer, uint numsamples, uint pixelindex, void* values); + [GlEntryPoint("glNamedFramebufferSamplePositionsfvAMD")] + _glNamedFramebufferSamplePositionsfvAMD_ptr _NamedFramebufferSamplePositionsfvAMD_ptr { get; } + + delegate void _glNamedFramebufferSamplePositionsfvAMD_intptr(uint framebuffer, uint numsamples, uint pixelindex, IntPtr values); + [GlEntryPoint("glNamedFramebufferSamplePositionsfvAMD")] + _glNamedFramebufferSamplePositionsfvAMD_intptr _NamedFramebufferSamplePositionsfvAMD_intptr { get; } + + // --- + + delegate void _glNamedFramebufferTexture1DEXT(uint framebuffer, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level); + [GlEntryPoint("glNamedFramebufferTexture1DEXT")] + _glNamedFramebufferTexture1DEXT _NamedFramebufferTexture1DEXT { get; } + + // --- + + delegate void _glNamedFramebufferTexture2DEXT(uint framebuffer, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level); + [GlEntryPoint("glNamedFramebufferTexture2DEXT")] + _glNamedFramebufferTexture2DEXT _NamedFramebufferTexture2DEXT { get; } + + // --- + + delegate void _glNamedFramebufferTexture3DEXT(uint framebuffer, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int zoffset); + [GlEntryPoint("glNamedFramebufferTexture3DEXT")] + _glNamedFramebufferTexture3DEXT _NamedFramebufferTexture3DEXT { get; } + + // --- + + delegate void _glNamedFramebufferTextureEXT(uint framebuffer, FramebufferAttachment attachment, uint texture, int level); + [GlEntryPoint("glNamedFramebufferTextureEXT")] + _glNamedFramebufferTextureEXT _NamedFramebufferTextureEXT { get; } + + // --- + + delegate void _glNamedFramebufferTextureFaceEXT(uint framebuffer, FramebufferAttachment attachment, uint texture, int level, TextureTarget face); + [GlEntryPoint("glNamedFramebufferTextureFaceEXT")] + _glNamedFramebufferTextureFaceEXT _NamedFramebufferTextureFaceEXT { get; } + + // --- + + delegate void _glNamedFramebufferTextureLayer(uint framebuffer, FramebufferAttachment attachment, uint texture, int level, int layer); + [GlEntryPoint("glNamedFramebufferTextureLayer")] + _glNamedFramebufferTextureLayer _NamedFramebufferTextureLayer { get; } + + // --- + + delegate void _glNamedFramebufferTextureLayerEXT(uint framebuffer, FramebufferAttachment attachment, uint texture, int level, int layer); + [GlEntryPoint("glNamedFramebufferTextureLayerEXT")] + _glNamedFramebufferTextureLayerEXT _NamedFramebufferTextureLayerEXT { get; } + + // --- + + delegate void _glNamedProgramLocalParameter4dEXT(uint program, ProgramTarget target, uint index, double x, double y, double z, double w); + [GlEntryPoint("glNamedProgramLocalParameter4dEXT")] + _glNamedProgramLocalParameter4dEXT _NamedProgramLocalParameter4dEXT { get; } + + // --- + + delegate void _glNamedProgramLocalParameter4dvEXT(uint program, ProgramTarget target, uint index, double[] @params); + [GlEntryPoint("glNamedProgramLocalParameter4dvEXT")] + _glNamedProgramLocalParameter4dvEXT _NamedProgramLocalParameter4dvEXT { get; } + + delegate void _glNamedProgramLocalParameter4dvEXT_ptr(uint program, ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glNamedProgramLocalParameter4dvEXT")] + _glNamedProgramLocalParameter4dvEXT_ptr _NamedProgramLocalParameter4dvEXT_ptr { get; } + + delegate void _glNamedProgramLocalParameter4dvEXT_intptr(uint program, ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glNamedProgramLocalParameter4dvEXT")] + _glNamedProgramLocalParameter4dvEXT_intptr _NamedProgramLocalParameter4dvEXT_intptr { get; } + + // --- + + delegate void _glNamedProgramLocalParameter4fEXT(uint program, ProgramTarget target, uint index, float x, float y, float z, float w); + [GlEntryPoint("glNamedProgramLocalParameter4fEXT")] + _glNamedProgramLocalParameter4fEXT _NamedProgramLocalParameter4fEXT { get; } + + // --- + + delegate void _glNamedProgramLocalParameter4fvEXT(uint program, ProgramTarget target, uint index, float[] @params); + [GlEntryPoint("glNamedProgramLocalParameter4fvEXT")] + _glNamedProgramLocalParameter4fvEXT _NamedProgramLocalParameter4fvEXT { get; } + + delegate void _glNamedProgramLocalParameter4fvEXT_ptr(uint program, ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glNamedProgramLocalParameter4fvEXT")] + _glNamedProgramLocalParameter4fvEXT_ptr _NamedProgramLocalParameter4fvEXT_ptr { get; } + + delegate void _glNamedProgramLocalParameter4fvEXT_intptr(uint program, ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glNamedProgramLocalParameter4fvEXT")] + _glNamedProgramLocalParameter4fvEXT_intptr _NamedProgramLocalParameter4fvEXT_intptr { get; } + + // --- + + delegate void _glNamedProgramLocalParameterI4iEXT(uint program, ProgramTarget target, uint index, int x, int y, int z, int w); + [GlEntryPoint("glNamedProgramLocalParameterI4iEXT")] + _glNamedProgramLocalParameterI4iEXT _NamedProgramLocalParameterI4iEXT { get; } + + // --- + + delegate void _glNamedProgramLocalParameterI4ivEXT(uint program, ProgramTarget target, uint index, int[] @params); + [GlEntryPoint("glNamedProgramLocalParameterI4ivEXT")] + _glNamedProgramLocalParameterI4ivEXT _NamedProgramLocalParameterI4ivEXT { get; } + + delegate void _glNamedProgramLocalParameterI4ivEXT_ptr(uint program, ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glNamedProgramLocalParameterI4ivEXT")] + _glNamedProgramLocalParameterI4ivEXT_ptr _NamedProgramLocalParameterI4ivEXT_ptr { get; } + + delegate void _glNamedProgramLocalParameterI4ivEXT_intptr(uint program, ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glNamedProgramLocalParameterI4ivEXT")] + _glNamedProgramLocalParameterI4ivEXT_intptr _NamedProgramLocalParameterI4ivEXT_intptr { get; } + + // --- + + delegate void _glNamedProgramLocalParameterI4uiEXT(uint program, ProgramTarget target, uint index, uint x, uint y, uint z, uint w); + [GlEntryPoint("glNamedProgramLocalParameterI4uiEXT")] + _glNamedProgramLocalParameterI4uiEXT _NamedProgramLocalParameterI4uiEXT { get; } + + // --- + + delegate void _glNamedProgramLocalParameterI4uivEXT(uint program, ProgramTarget target, uint index, uint[] @params); + [GlEntryPoint("glNamedProgramLocalParameterI4uivEXT")] + _glNamedProgramLocalParameterI4uivEXT _NamedProgramLocalParameterI4uivEXT { get; } + + delegate void _glNamedProgramLocalParameterI4uivEXT_ptr(uint program, ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glNamedProgramLocalParameterI4uivEXT")] + _glNamedProgramLocalParameterI4uivEXT_ptr _NamedProgramLocalParameterI4uivEXT_ptr { get; } + + delegate void _glNamedProgramLocalParameterI4uivEXT_intptr(uint program, ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glNamedProgramLocalParameterI4uivEXT")] + _glNamedProgramLocalParameterI4uivEXT_intptr _NamedProgramLocalParameterI4uivEXT_intptr { get; } + + // --- + + delegate void _glNamedProgramLocalParameters4fvEXT(uint program, ProgramTarget target, uint index, int count, float[] @params); + [GlEntryPoint("glNamedProgramLocalParameters4fvEXT")] + _glNamedProgramLocalParameters4fvEXT _NamedProgramLocalParameters4fvEXT { get; } + + delegate void _glNamedProgramLocalParameters4fvEXT_ptr(uint program, ProgramTarget target, uint index, int count, void* @params); + [GlEntryPoint("glNamedProgramLocalParameters4fvEXT")] + _glNamedProgramLocalParameters4fvEXT_ptr _NamedProgramLocalParameters4fvEXT_ptr { get; } + + delegate void _glNamedProgramLocalParameters4fvEXT_intptr(uint program, ProgramTarget target, uint index, int count, IntPtr @params); + [GlEntryPoint("glNamedProgramLocalParameters4fvEXT")] + _glNamedProgramLocalParameters4fvEXT_intptr _NamedProgramLocalParameters4fvEXT_intptr { get; } + + // --- + + delegate void _glNamedProgramLocalParametersI4ivEXT(uint program, ProgramTarget target, uint index, int count, int[] @params); + [GlEntryPoint("glNamedProgramLocalParametersI4ivEXT")] + _glNamedProgramLocalParametersI4ivEXT _NamedProgramLocalParametersI4ivEXT { get; } + + delegate void _glNamedProgramLocalParametersI4ivEXT_ptr(uint program, ProgramTarget target, uint index, int count, void* @params); + [GlEntryPoint("glNamedProgramLocalParametersI4ivEXT")] + _glNamedProgramLocalParametersI4ivEXT_ptr _NamedProgramLocalParametersI4ivEXT_ptr { get; } + + delegate void _glNamedProgramLocalParametersI4ivEXT_intptr(uint program, ProgramTarget target, uint index, int count, IntPtr @params); + [GlEntryPoint("glNamedProgramLocalParametersI4ivEXT")] + _glNamedProgramLocalParametersI4ivEXT_intptr _NamedProgramLocalParametersI4ivEXT_intptr { get; } + + // --- + + delegate void _glNamedProgramLocalParametersI4uivEXT(uint program, ProgramTarget target, uint index, int count, uint[] @params); + [GlEntryPoint("glNamedProgramLocalParametersI4uivEXT")] + _glNamedProgramLocalParametersI4uivEXT _NamedProgramLocalParametersI4uivEXT { get; } + + delegate void _glNamedProgramLocalParametersI4uivEXT_ptr(uint program, ProgramTarget target, uint index, int count, void* @params); + [GlEntryPoint("glNamedProgramLocalParametersI4uivEXT")] + _glNamedProgramLocalParametersI4uivEXT_ptr _NamedProgramLocalParametersI4uivEXT_ptr { get; } + + delegate void _glNamedProgramLocalParametersI4uivEXT_intptr(uint program, ProgramTarget target, uint index, int count, IntPtr @params); + [GlEntryPoint("glNamedProgramLocalParametersI4uivEXT")] + _glNamedProgramLocalParametersI4uivEXT_intptr _NamedProgramLocalParametersI4uivEXT_intptr { get; } + + // --- + + delegate void _glNamedProgramStringEXT(uint program, ProgramTarget target, ProgramFormat format, int len, IntPtr @string); + [GlEntryPoint("glNamedProgramStringEXT")] + _glNamedProgramStringEXT _NamedProgramStringEXT { get; } + + // --- + + delegate void _glNamedRenderbufferStorage(uint renderbuffer, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glNamedRenderbufferStorage")] + _glNamedRenderbufferStorage _NamedRenderbufferStorage { get; } + + // --- + + delegate void _glNamedRenderbufferStorageEXT(uint renderbuffer, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glNamedRenderbufferStorageEXT")] + _glNamedRenderbufferStorageEXT _NamedRenderbufferStorageEXT { get; } + + // --- + + delegate void _glNamedRenderbufferStorageMultisample(uint renderbuffer, int samples, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glNamedRenderbufferStorageMultisample")] + _glNamedRenderbufferStorageMultisample _NamedRenderbufferStorageMultisample { get; } + + // --- + + delegate void _glNamedRenderbufferStorageMultisampleAdvancedAMD(uint renderbuffer, int samples, int storageSamples, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glNamedRenderbufferStorageMultisampleAdvancedAMD")] + _glNamedRenderbufferStorageMultisampleAdvancedAMD _NamedRenderbufferStorageMultisampleAdvancedAMD { get; } + + // --- + + delegate void _glNamedRenderbufferStorageMultisampleCoverageEXT(uint renderbuffer, int coverageSamples, int colorSamples, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glNamedRenderbufferStorageMultisampleCoverageEXT")] + _glNamedRenderbufferStorageMultisampleCoverageEXT _NamedRenderbufferStorageMultisampleCoverageEXT { get; } + + // --- + + delegate void _glNamedRenderbufferStorageMultisampleEXT(uint renderbuffer, int samples, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glNamedRenderbufferStorageMultisampleEXT")] + _glNamedRenderbufferStorageMultisampleEXT _NamedRenderbufferStorageMultisampleEXT { get; } + + // --- + + delegate void _glNamedStringARB(int type, int namelen, string name, int stringlen, string @string); + [GlEntryPoint("glNamedStringARB")] + _glNamedStringARB _NamedStringARB { get; } + + delegate void _glNamedStringARB_ptr(int type, int namelen, void* name, int stringlen, void* @string); + [GlEntryPoint("glNamedStringARB")] + _glNamedStringARB_ptr _NamedStringARB_ptr { get; } + + delegate void _glNamedStringARB_intptr(int type, int namelen, IntPtr name, int stringlen, IntPtr @string); + [GlEntryPoint("glNamedStringARB")] + _glNamedStringARB_intptr _NamedStringARB_intptr { get; } + + // --- + + delegate void _glNewList(uint list, ListMode mode); + [GlEntryPoint("glNewList")] + _glNewList _NewList { get; } + + // --- + + delegate uint _glNewObjectBufferATI(int size, IntPtr pointer, ArrayObjectUsageATI usage); + [GlEntryPoint("glNewObjectBufferATI")] + _glNewObjectBufferATI _NewObjectBufferATI { get; } + + // --- + + delegate void _glNormal3b(sbyte nx, sbyte ny, sbyte nz); + [GlEntryPoint("glNormal3b")] + _glNormal3b _Normal3b { get; } + + // --- + + delegate void _glNormal3bv(sbyte[] v); + [GlEntryPoint("glNormal3bv")] + _glNormal3bv _Normal3bv { get; } + + delegate void _glNormal3bv_ptr(void* v); + [GlEntryPoint("glNormal3bv")] + _glNormal3bv_ptr _Normal3bv_ptr { get; } + + delegate void _glNormal3bv_intptr(IntPtr v); + [GlEntryPoint("glNormal3bv")] + _glNormal3bv_intptr _Normal3bv_intptr { get; } + + // --- + + delegate void _glNormal3d(double nx, double ny, double nz); + [GlEntryPoint("glNormal3d")] + _glNormal3d _Normal3d { get; } + + // --- + + delegate void _glNormal3dv(double[] v); + [GlEntryPoint("glNormal3dv")] + _glNormal3dv _Normal3dv { get; } + + delegate void _glNormal3dv_ptr(void* v); + [GlEntryPoint("glNormal3dv")] + _glNormal3dv_ptr _Normal3dv_ptr { get; } + + delegate void _glNormal3dv_intptr(IntPtr v); + [GlEntryPoint("glNormal3dv")] + _glNormal3dv_intptr _Normal3dv_intptr { get; } + + // --- + + delegate void _glNormal3f(float nx, float ny, float nz); + [GlEntryPoint("glNormal3f")] + _glNormal3f _Normal3f { get; } + + // --- + + delegate void _glNormal3fVertex3fSUN(float nx, float ny, float nz, float x, float y, float z); + [GlEntryPoint("glNormal3fVertex3fSUN")] + _glNormal3fVertex3fSUN _Normal3fVertex3fSUN { get; } + + // --- + + delegate void _glNormal3fVertex3fvSUN(float[] n, float[] v); + [GlEntryPoint("glNormal3fVertex3fvSUN")] + _glNormal3fVertex3fvSUN _Normal3fVertex3fvSUN { get; } + + delegate void _glNormal3fVertex3fvSUN_ptr(void* n, void* v); + [GlEntryPoint("glNormal3fVertex3fvSUN")] + _glNormal3fVertex3fvSUN_ptr _Normal3fVertex3fvSUN_ptr { get; } + + delegate void _glNormal3fVertex3fvSUN_intptr(IntPtr n, IntPtr v); + [GlEntryPoint("glNormal3fVertex3fvSUN")] + _glNormal3fVertex3fvSUN_intptr _Normal3fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glNormal3fv(float[] v); + [GlEntryPoint("glNormal3fv")] + _glNormal3fv _Normal3fv { get; } + + delegate void _glNormal3fv_ptr(void* v); + [GlEntryPoint("glNormal3fv")] + _glNormal3fv_ptr _Normal3fv_ptr { get; } + + delegate void _glNormal3fv_intptr(IntPtr v); + [GlEntryPoint("glNormal3fv")] + _glNormal3fv_intptr _Normal3fv_intptr { get; } + + // --- + + delegate void _glNormal3hNV(float nx, float ny, float nz); + [GlEntryPoint("glNormal3hNV")] + _glNormal3hNV _Normal3hNV { get; } + + // --- + + delegate void _glNormal3hvNV(float[] v); + [GlEntryPoint("glNormal3hvNV")] + _glNormal3hvNV _Normal3hvNV { get; } + + delegate void _glNormal3hvNV_ptr(void* v); + [GlEntryPoint("glNormal3hvNV")] + _glNormal3hvNV_ptr _Normal3hvNV_ptr { get; } + + delegate void _glNormal3hvNV_intptr(IntPtr v); + [GlEntryPoint("glNormal3hvNV")] + _glNormal3hvNV_intptr _Normal3hvNV_intptr { get; } + + // --- + + delegate void _glNormal3i(int nx, int ny, int nz); + [GlEntryPoint("glNormal3i")] + _glNormal3i _Normal3i { get; } + + // --- + + delegate void _glNormal3iv(int[] v); + [GlEntryPoint("glNormal3iv")] + _glNormal3iv _Normal3iv { get; } + + delegate void _glNormal3iv_ptr(void* v); + [GlEntryPoint("glNormal3iv")] + _glNormal3iv_ptr _Normal3iv_ptr { get; } + + delegate void _glNormal3iv_intptr(IntPtr v); + [GlEntryPoint("glNormal3iv")] + _glNormal3iv_intptr _Normal3iv_intptr { get; } + + // --- + + delegate void _glNormal3s(short nx, short ny, short nz); + [GlEntryPoint("glNormal3s")] + _glNormal3s _Normal3s { get; } + + // --- + + delegate void _glNormal3sv(short[] v); + [GlEntryPoint("glNormal3sv")] + _glNormal3sv _Normal3sv { get; } + + delegate void _glNormal3sv_ptr(void* v); + [GlEntryPoint("glNormal3sv")] + _glNormal3sv_ptr _Normal3sv_ptr { get; } + + delegate void _glNormal3sv_intptr(IntPtr v); + [GlEntryPoint("glNormal3sv")] + _glNormal3sv_intptr _Normal3sv_intptr { get; } + + // --- + + delegate void _glNormal3x(float nx, float ny, float nz); + [GlEntryPoint("glNormal3x")] + _glNormal3x _Normal3x { get; } + + // --- + + delegate void _glNormal3xOES(float nx, float ny, float nz); + [GlEntryPoint("glNormal3xOES")] + _glNormal3xOES _Normal3xOES { get; } + + // --- + + delegate void _glNormal3xvOES(float[] coords); + [GlEntryPoint("glNormal3xvOES")] + _glNormal3xvOES _Normal3xvOES { get; } + + delegate void _glNormal3xvOES_ptr(void* coords); + [GlEntryPoint("glNormal3xvOES")] + _glNormal3xvOES_ptr _Normal3xvOES_ptr { get; } + + delegate void _glNormal3xvOES_intptr(IntPtr coords); + [GlEntryPoint("glNormal3xvOES")] + _glNormal3xvOES_intptr _Normal3xvOES_intptr { get; } + + // --- + + delegate void _glNormalFormatNV(int type, int stride); + [GlEntryPoint("glNormalFormatNV")] + _glNormalFormatNV _NormalFormatNV { get; } + + // --- + + delegate void _glNormalP3ui(NormalPointerType type, uint coords); + [GlEntryPoint("glNormalP3ui")] + _glNormalP3ui _NormalP3ui { get; } + + // --- + + delegate void _glNormalP3uiv(NormalPointerType type, uint[] coords); + [GlEntryPoint("glNormalP3uiv")] + _glNormalP3uiv _NormalP3uiv { get; } + + delegate void _glNormalP3uiv_ptr(NormalPointerType type, void* coords); + [GlEntryPoint("glNormalP3uiv")] + _glNormalP3uiv_ptr _NormalP3uiv_ptr { get; } + + delegate void _glNormalP3uiv_intptr(NormalPointerType type, IntPtr coords); + [GlEntryPoint("glNormalP3uiv")] + _glNormalP3uiv_intptr _NormalP3uiv_intptr { get; } + + // --- + + delegate void _glNormalPointer(NormalPointerType type, int stride, IntPtr pointer); + [GlEntryPoint("glNormalPointer")] + _glNormalPointer _NormalPointer { get; } + + // --- + + delegate void _glNormalPointerEXT(NormalPointerType type, int stride, int count, IntPtr pointer); + [GlEntryPoint("glNormalPointerEXT")] + _glNormalPointerEXT _NormalPointerEXT { get; } + + // --- + + delegate void _glNormalPointerListIBM(NormalPointerType type, int stride, IntPtr* pointer, int ptrstride); + [GlEntryPoint("glNormalPointerListIBM")] + _glNormalPointerListIBM _NormalPointerListIBM { get; } + + // --- + + delegate void _glNormalPointervINTEL(NormalPointerType type, IntPtr* pointer); + [GlEntryPoint("glNormalPointervINTEL")] + _glNormalPointervINTEL _NormalPointervINTEL { get; } + + // --- + + delegate void _glNormalStream3bATI(VertexStreamATI stream, sbyte nx, sbyte ny, sbyte nz); + [GlEntryPoint("glNormalStream3bATI")] + _glNormalStream3bATI _NormalStream3bATI { get; } + + // --- + + delegate void _glNormalStream3bvATI(VertexStreamATI stream, sbyte[] coords); + [GlEntryPoint("glNormalStream3bvATI")] + _glNormalStream3bvATI _NormalStream3bvATI { get; } + + delegate void _glNormalStream3bvATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glNormalStream3bvATI")] + _glNormalStream3bvATI_ptr _NormalStream3bvATI_ptr { get; } + + delegate void _glNormalStream3bvATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glNormalStream3bvATI")] + _glNormalStream3bvATI_intptr _NormalStream3bvATI_intptr { get; } + + // --- + + delegate void _glNormalStream3dATI(VertexStreamATI stream, double nx, double ny, double nz); + [GlEntryPoint("glNormalStream3dATI")] + _glNormalStream3dATI _NormalStream3dATI { get; } + + // --- + + delegate void _glNormalStream3dvATI(VertexStreamATI stream, double[] coords); + [GlEntryPoint("glNormalStream3dvATI")] + _glNormalStream3dvATI _NormalStream3dvATI { get; } + + delegate void _glNormalStream3dvATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glNormalStream3dvATI")] + _glNormalStream3dvATI_ptr _NormalStream3dvATI_ptr { get; } + + delegate void _glNormalStream3dvATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glNormalStream3dvATI")] + _glNormalStream3dvATI_intptr _NormalStream3dvATI_intptr { get; } + + // --- + + delegate void _glNormalStream3fATI(VertexStreamATI stream, float nx, float ny, float nz); + [GlEntryPoint("glNormalStream3fATI")] + _glNormalStream3fATI _NormalStream3fATI { get; } + + // --- + + delegate void _glNormalStream3fvATI(VertexStreamATI stream, float[] coords); + [GlEntryPoint("glNormalStream3fvATI")] + _glNormalStream3fvATI _NormalStream3fvATI { get; } + + delegate void _glNormalStream3fvATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glNormalStream3fvATI")] + _glNormalStream3fvATI_ptr _NormalStream3fvATI_ptr { get; } + + delegate void _glNormalStream3fvATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glNormalStream3fvATI")] + _glNormalStream3fvATI_intptr _NormalStream3fvATI_intptr { get; } + + // --- + + delegate void _glNormalStream3iATI(VertexStreamATI stream, int nx, int ny, int nz); + [GlEntryPoint("glNormalStream3iATI")] + _glNormalStream3iATI _NormalStream3iATI { get; } + + // --- + + delegate void _glNormalStream3ivATI(VertexStreamATI stream, int[] coords); + [GlEntryPoint("glNormalStream3ivATI")] + _glNormalStream3ivATI _NormalStream3ivATI { get; } + + delegate void _glNormalStream3ivATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glNormalStream3ivATI")] + _glNormalStream3ivATI_ptr _NormalStream3ivATI_ptr { get; } + + delegate void _glNormalStream3ivATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glNormalStream3ivATI")] + _glNormalStream3ivATI_intptr _NormalStream3ivATI_intptr { get; } + + // --- + + delegate void _glNormalStream3sATI(VertexStreamATI stream, short nx, short ny, short nz); + [GlEntryPoint("glNormalStream3sATI")] + _glNormalStream3sATI _NormalStream3sATI { get; } + + // --- + + delegate void _glNormalStream3svATI(VertexStreamATI stream, short[] coords); + [GlEntryPoint("glNormalStream3svATI")] + _glNormalStream3svATI _NormalStream3svATI { get; } + + delegate void _glNormalStream3svATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glNormalStream3svATI")] + _glNormalStream3svATI_ptr _NormalStream3svATI_ptr { get; } + + delegate void _glNormalStream3svATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glNormalStream3svATI")] + _glNormalStream3svATI_intptr _NormalStream3svATI_intptr { get; } + + // --- + + delegate void _glObjectLabel(ObjectIdentifier identifier, uint name, int length, string label); + [GlEntryPoint("glObjectLabel")] + _glObjectLabel _ObjectLabel { get; } + + delegate void _glObjectLabel_ptr(ObjectIdentifier identifier, uint name, int length, void* label); + [GlEntryPoint("glObjectLabel")] + _glObjectLabel_ptr _ObjectLabel_ptr { get; } + + delegate void _glObjectLabel_intptr(ObjectIdentifier identifier, uint name, int length, IntPtr label); + [GlEntryPoint("glObjectLabel")] + _glObjectLabel_intptr _ObjectLabel_intptr { get; } + + // --- + + delegate void _glObjectLabelKHR(ObjectIdentifier identifier, uint name, int length, string label); + [GlEntryPoint("glObjectLabelKHR")] + _glObjectLabelKHR _ObjectLabelKHR { get; } + + delegate void _glObjectLabelKHR_ptr(ObjectIdentifier identifier, uint name, int length, void* label); + [GlEntryPoint("glObjectLabelKHR")] + _glObjectLabelKHR_ptr _ObjectLabelKHR_ptr { get; } + + delegate void _glObjectLabelKHR_intptr(ObjectIdentifier identifier, uint name, int length, IntPtr label); + [GlEntryPoint("glObjectLabelKHR")] + _glObjectLabelKHR_intptr _ObjectLabelKHR_intptr { get; } + + // --- + + delegate void _glObjectPtrLabel(IntPtr ptr, int length, string label); + [GlEntryPoint("glObjectPtrLabel")] + _glObjectPtrLabel _ObjectPtrLabel { get; } + + delegate void _glObjectPtrLabel_ptr(IntPtr ptr, int length, void* label); + [GlEntryPoint("glObjectPtrLabel")] + _glObjectPtrLabel_ptr _ObjectPtrLabel_ptr { get; } + + delegate void _glObjectPtrLabel_intptr(IntPtr ptr, int length, IntPtr label); + [GlEntryPoint("glObjectPtrLabel")] + _glObjectPtrLabel_intptr _ObjectPtrLabel_intptr { get; } + + // --- + + delegate void _glObjectPtrLabelKHR(IntPtr ptr, int length, string label); + [GlEntryPoint("glObjectPtrLabelKHR")] + _glObjectPtrLabelKHR _ObjectPtrLabelKHR { get; } + + delegate void _glObjectPtrLabelKHR_ptr(IntPtr ptr, int length, void* label); + [GlEntryPoint("glObjectPtrLabelKHR")] + _glObjectPtrLabelKHR_ptr _ObjectPtrLabelKHR_ptr { get; } + + delegate void _glObjectPtrLabelKHR_intptr(IntPtr ptr, int length, IntPtr label); + [GlEntryPoint("glObjectPtrLabelKHR")] + _glObjectPtrLabelKHR_intptr _ObjectPtrLabelKHR_intptr { get; } + + // --- + + delegate int _glObjectPurgeableAPPLE(int objectType, uint name, int option); + [GlEntryPoint("glObjectPurgeableAPPLE")] + _glObjectPurgeableAPPLE _ObjectPurgeableAPPLE { get; } + + // --- + + delegate int _glObjectUnpurgeableAPPLE(int objectType, uint name, int option); + [GlEntryPoint("glObjectUnpurgeableAPPLE")] + _glObjectUnpurgeableAPPLE _ObjectUnpurgeableAPPLE { get; } + + // --- + + delegate void _glOrtho(double left, double right, double bottom, double top, double zNear, double zFar); + [GlEntryPoint("glOrtho")] + _glOrtho _Ortho { get; } + + // --- + + delegate void _glOrthof(float l, float r, float b, float t, float n, float f); + [GlEntryPoint("glOrthof")] + _glOrthof _Orthof { get; } + + // --- + + delegate void _glOrthofOES(float l, float r, float b, float t, float n, float f); + [GlEntryPoint("glOrthofOES")] + _glOrthofOES _OrthofOES { get; } + + // --- + + delegate void _glOrthox(float l, float r, float b, float t, float n, float f); + [GlEntryPoint("glOrthox")] + _glOrthox _Orthox { get; } + + // --- + + delegate void _glOrthoxOES(float l, float r, float b, float t, float n, float f); + [GlEntryPoint("glOrthoxOES")] + _glOrthoxOES _OrthoxOES { get; } + + // --- + + delegate void _glPNTrianglesfATI(PNTrianglesPNameATI pname, float param); + [GlEntryPoint("glPNTrianglesfATI")] + _glPNTrianglesfATI _PNTrianglesfATI { get; } + + // --- + + delegate void _glPNTrianglesiATI(PNTrianglesPNameATI pname, int param); + [GlEntryPoint("glPNTrianglesiATI")] + _glPNTrianglesiATI _PNTrianglesiATI { get; } + + // --- + + delegate void _glPassTexCoordATI(uint dst, uint coord, SwizzleOpATI swizzle); + [GlEntryPoint("glPassTexCoordATI")] + _glPassTexCoordATI _PassTexCoordATI { get; } + + // --- + + delegate void _glPassThrough(float token); + [GlEntryPoint("glPassThrough")] + _glPassThrough _PassThrough { get; } + + // --- + + delegate void _glPassThroughxOES(float token); + [GlEntryPoint("glPassThroughxOES")] + _glPassThroughxOES _PassThroughxOES { get; } + + // --- + + delegate void _glPatchParameterfv(PatchParameterName pname, float[] values); + [GlEntryPoint("glPatchParameterfv")] + _glPatchParameterfv _PatchParameterfv { get; } + + delegate void _glPatchParameterfv_ptr(PatchParameterName pname, void* values); + [GlEntryPoint("glPatchParameterfv")] + _glPatchParameterfv_ptr _PatchParameterfv_ptr { get; } + + delegate void _glPatchParameterfv_intptr(PatchParameterName pname, IntPtr values); + [GlEntryPoint("glPatchParameterfv")] + _glPatchParameterfv_intptr _PatchParameterfv_intptr { get; } + + // --- + + delegate void _glPatchParameteri(PatchParameterName pname, int value); + [GlEntryPoint("glPatchParameteri")] + _glPatchParameteri _PatchParameteri { get; } + + // --- + + delegate void _glPatchParameteriEXT(PatchParameterName pname, int value); + [GlEntryPoint("glPatchParameteriEXT")] + _glPatchParameteriEXT _PatchParameteriEXT { get; } + + // --- + + delegate void _glPatchParameteriOES(PatchParameterName pname, int value); + [GlEntryPoint("glPatchParameteriOES")] + _glPatchParameteriOES _PatchParameteriOES { get; } + + // --- + + delegate void _glPathColorGenNV(PathColor color, PathGenMode genMode, PathColorFormat colorFormat, float[] coeffs); + [GlEntryPoint("glPathColorGenNV")] + _glPathColorGenNV _PathColorGenNV { get; } + + delegate void _glPathColorGenNV_ptr(PathColor color, PathGenMode genMode, PathColorFormat colorFormat, void* coeffs); + [GlEntryPoint("glPathColorGenNV")] + _glPathColorGenNV_ptr _PathColorGenNV_ptr { get; } + + delegate void _glPathColorGenNV_intptr(PathColor color, PathGenMode genMode, PathColorFormat colorFormat, IntPtr coeffs); + [GlEntryPoint("glPathColorGenNV")] + _glPathColorGenNV_intptr _PathColorGenNV_intptr { get; } + + // --- + + delegate void _glPathCommandsNV(uint path, int numCommands, byte[] commands, int numCoords, PathCoordType coordType, IntPtr coords); + [GlEntryPoint("glPathCommandsNV")] + _glPathCommandsNV _PathCommandsNV { get; } + + delegate void _glPathCommandsNV_ptr(uint path, int numCommands, void* commands, int numCoords, PathCoordType coordType, IntPtr coords); + [GlEntryPoint("glPathCommandsNV")] + _glPathCommandsNV_ptr _PathCommandsNV_ptr { get; } + + delegate void _glPathCommandsNV_intptr(uint path, int numCommands, IntPtr commands, int numCoords, PathCoordType coordType, IntPtr coords); + [GlEntryPoint("glPathCommandsNV")] + _glPathCommandsNV_intptr _PathCommandsNV_intptr { get; } + + // --- + + delegate void _glPathCoordsNV(uint path, int numCoords, PathCoordType coordType, IntPtr coords); + [GlEntryPoint("glPathCoordsNV")] + _glPathCoordsNV _PathCoordsNV { get; } + + // --- + + delegate void _glPathCoverDepthFuncNV(DepthFunction func); + [GlEntryPoint("glPathCoverDepthFuncNV")] + _glPathCoverDepthFuncNV _PathCoverDepthFuncNV { get; } + + // --- + + delegate void _glPathDashArrayNV(uint path, int dashCount, float[] dashArray); + [GlEntryPoint("glPathDashArrayNV")] + _glPathDashArrayNV _PathDashArrayNV { get; } + + delegate void _glPathDashArrayNV_ptr(uint path, int dashCount, void* dashArray); + [GlEntryPoint("glPathDashArrayNV")] + _glPathDashArrayNV_ptr _PathDashArrayNV_ptr { get; } + + delegate void _glPathDashArrayNV_intptr(uint path, int dashCount, IntPtr dashArray); + [GlEntryPoint("glPathDashArrayNV")] + _glPathDashArrayNV_intptr _PathDashArrayNV_intptr { get; } + + // --- + + delegate void _glPathFogGenNV(PathGenMode genMode); + [GlEntryPoint("glPathFogGenNV")] + _glPathFogGenNV _PathFogGenNV { get; } + + // --- + + delegate int _glPathGlyphIndexArrayNV(uint firstPathName, int fontTarget, IntPtr fontName, int fontStyle, uint firstGlyphIndex, int numGlyphs, uint pathParameterTemplate, float emScale); + [GlEntryPoint("glPathGlyphIndexArrayNV")] + _glPathGlyphIndexArrayNV _PathGlyphIndexArrayNV { get; } + + // --- + + delegate int _glPathGlyphIndexRangeNV(int fontTarget, IntPtr fontName, int fontStyle, uint pathParameterTemplate, float emScale, uint baseAndCount); + [GlEntryPoint("glPathGlyphIndexRangeNV")] + _glPathGlyphIndexRangeNV _PathGlyphIndexRangeNV { get; } + + // --- + + delegate void _glPathGlyphRangeNV(uint firstPathName, PathFontTarget fontTarget, IntPtr fontName, int fontStyle, uint firstGlyph, int numGlyphs, PathHandleMissingGlyphs handleMissingGlyphs, uint pathParameterTemplate, float emScale); + [GlEntryPoint("glPathGlyphRangeNV")] + _glPathGlyphRangeNV _PathGlyphRangeNV { get; } + + // --- + + delegate void _glPathGlyphsNV(uint firstPathName, PathFontTarget fontTarget, IntPtr fontName, int fontStyle, int numGlyphs, PathElementType type, IntPtr charcodes, PathHandleMissingGlyphs handleMissingGlyphs, uint pathParameterTemplate, float emScale); + [GlEntryPoint("glPathGlyphsNV")] + _glPathGlyphsNV _PathGlyphsNV { get; } + + // --- + + delegate int _glPathMemoryGlyphIndexArrayNV(uint firstPathName, int fontTarget, IntPtr fontSize, IntPtr fontData, int faceIndex, uint firstGlyphIndex, int numGlyphs, uint pathParameterTemplate, float emScale); + [GlEntryPoint("glPathMemoryGlyphIndexArrayNV")] + _glPathMemoryGlyphIndexArrayNV _PathMemoryGlyphIndexArrayNV { get; } + + // --- + + delegate void _glPathParameterfNV(uint path, PathParameter pname, float value); + [GlEntryPoint("glPathParameterfNV")] + _glPathParameterfNV _PathParameterfNV { get; } + + // --- + + delegate void _glPathParameterfvNV(uint path, PathParameter pname, float[] value); + [GlEntryPoint("glPathParameterfvNV")] + _glPathParameterfvNV _PathParameterfvNV { get; } + + delegate void _glPathParameterfvNV_ptr(uint path, PathParameter pname, void* value); + [GlEntryPoint("glPathParameterfvNV")] + _glPathParameterfvNV_ptr _PathParameterfvNV_ptr { get; } + + delegate void _glPathParameterfvNV_intptr(uint path, PathParameter pname, IntPtr value); + [GlEntryPoint("glPathParameterfvNV")] + _glPathParameterfvNV_intptr _PathParameterfvNV_intptr { get; } + + // --- + + delegate void _glPathParameteriNV(uint path, PathParameter pname, int value); + [GlEntryPoint("glPathParameteriNV")] + _glPathParameteriNV _PathParameteriNV { get; } + + // --- + + delegate void _glPathParameterivNV(uint path, PathParameter pname, int[] value); + [GlEntryPoint("glPathParameterivNV")] + _glPathParameterivNV _PathParameterivNV { get; } + + delegate void _glPathParameterivNV_ptr(uint path, PathParameter pname, void* value); + [GlEntryPoint("glPathParameterivNV")] + _glPathParameterivNV_ptr _PathParameterivNV_ptr { get; } + + delegate void _glPathParameterivNV_intptr(uint path, PathParameter pname, IntPtr value); + [GlEntryPoint("glPathParameterivNV")] + _glPathParameterivNV_intptr _PathParameterivNV_intptr { get; } + + // --- + + delegate void _glPathStencilDepthOffsetNV(float factor, float units); + [GlEntryPoint("glPathStencilDepthOffsetNV")] + _glPathStencilDepthOffsetNV _PathStencilDepthOffsetNV { get; } + + // --- + + delegate void _glPathStencilFuncNV(StencilFunction func, int @ref, uint mask); + [GlEntryPoint("glPathStencilFuncNV")] + _glPathStencilFuncNV _PathStencilFuncNV { get; } + + // --- + + delegate void _glPathStringNV(uint path, PathStringFormat format, int length, IntPtr pathString); + [GlEntryPoint("glPathStringNV")] + _glPathStringNV _PathStringNV { get; } + + // --- + + delegate void _glPathSubCommandsNV(uint path, int commandStart, int commandsToDelete, int numCommands, byte[] commands, int numCoords, PathCoordType coordType, IntPtr coords); + [GlEntryPoint("glPathSubCommandsNV")] + _glPathSubCommandsNV _PathSubCommandsNV { get; } + + delegate void _glPathSubCommandsNV_ptr(uint path, int commandStart, int commandsToDelete, int numCommands, void* commands, int numCoords, PathCoordType coordType, IntPtr coords); + [GlEntryPoint("glPathSubCommandsNV")] + _glPathSubCommandsNV_ptr _PathSubCommandsNV_ptr { get; } + + delegate void _glPathSubCommandsNV_intptr(uint path, int commandStart, int commandsToDelete, int numCommands, IntPtr commands, int numCoords, PathCoordType coordType, IntPtr coords); + [GlEntryPoint("glPathSubCommandsNV")] + _glPathSubCommandsNV_intptr _PathSubCommandsNV_intptr { get; } + + // --- + + delegate void _glPathSubCoordsNV(uint path, int coordStart, int numCoords, PathCoordType coordType, IntPtr coords); + [GlEntryPoint("glPathSubCoordsNV")] + _glPathSubCoordsNV _PathSubCoordsNV { get; } + + // --- + + delegate void _glPathTexGenNV(PathColor texCoordSet, PathGenMode genMode, int components, float[] coeffs); + [GlEntryPoint("glPathTexGenNV")] + _glPathTexGenNV _PathTexGenNV { get; } + + delegate void _glPathTexGenNV_ptr(PathColor texCoordSet, PathGenMode genMode, int components, void* coeffs); + [GlEntryPoint("glPathTexGenNV")] + _glPathTexGenNV_ptr _PathTexGenNV_ptr { get; } + + delegate void _glPathTexGenNV_intptr(PathColor texCoordSet, PathGenMode genMode, int components, IntPtr coeffs); + [GlEntryPoint("glPathTexGenNV")] + _glPathTexGenNV_intptr _PathTexGenNV_intptr { get; } + + // --- + + delegate void _glPauseTransformFeedback(); + [GlEntryPoint("glPauseTransformFeedback")] + _glPauseTransformFeedback _PauseTransformFeedback { get; } + + // --- + + delegate void _glPauseTransformFeedbackNV(); + [GlEntryPoint("glPauseTransformFeedbackNV")] + _glPauseTransformFeedbackNV _PauseTransformFeedbackNV { get; } + + // --- + + delegate void _glPixelDataRangeNV(PixelDataRangeTargetNV target, int length, IntPtr pointer); + [GlEntryPoint("glPixelDataRangeNV")] + _glPixelDataRangeNV _PixelDataRangeNV { get; } + + // --- + + delegate void _glPixelMapfv(PixelMap map, int mapsize, float[] values); + [GlEntryPoint("glPixelMapfv")] + _glPixelMapfv _PixelMapfv { get; } + + delegate void _glPixelMapfv_ptr(PixelMap map, int mapsize, void* values); + [GlEntryPoint("glPixelMapfv")] + _glPixelMapfv_ptr _PixelMapfv_ptr { get; } + + delegate void _glPixelMapfv_intptr(PixelMap map, int mapsize, IntPtr values); + [GlEntryPoint("glPixelMapfv")] + _glPixelMapfv_intptr _PixelMapfv_intptr { get; } + + // --- + + delegate void _glPixelMapuiv(PixelMap map, int mapsize, uint[] values); + [GlEntryPoint("glPixelMapuiv")] + _glPixelMapuiv _PixelMapuiv { get; } + + delegate void _glPixelMapuiv_ptr(PixelMap map, int mapsize, void* values); + [GlEntryPoint("glPixelMapuiv")] + _glPixelMapuiv_ptr _PixelMapuiv_ptr { get; } + + delegate void _glPixelMapuiv_intptr(PixelMap map, int mapsize, IntPtr values); + [GlEntryPoint("glPixelMapuiv")] + _glPixelMapuiv_intptr _PixelMapuiv_intptr { get; } + + // --- + + delegate void _glPixelMapusv(PixelMap map, int mapsize, ushort[] values); + [GlEntryPoint("glPixelMapusv")] + _glPixelMapusv _PixelMapusv { get; } + + delegate void _glPixelMapusv_ptr(PixelMap map, int mapsize, void* values); + [GlEntryPoint("glPixelMapusv")] + _glPixelMapusv_ptr _PixelMapusv_ptr { get; } + + delegate void _glPixelMapusv_intptr(PixelMap map, int mapsize, IntPtr values); + [GlEntryPoint("glPixelMapusv")] + _glPixelMapusv_intptr _PixelMapusv_intptr { get; } + + // --- + + delegate void _glPixelMapx(PixelMap map, int size, float[] values); + [GlEntryPoint("glPixelMapx")] + _glPixelMapx _PixelMapx { get; } + + delegate void _glPixelMapx_ptr(PixelMap map, int size, void* values); + [GlEntryPoint("glPixelMapx")] + _glPixelMapx_ptr _PixelMapx_ptr { get; } + + delegate void _glPixelMapx_intptr(PixelMap map, int size, IntPtr values); + [GlEntryPoint("glPixelMapx")] + _glPixelMapx_intptr _PixelMapx_intptr { get; } + + // --- + + delegate void _glPixelStoref(PixelStoreParameter pname, float param); + [GlEntryPoint("glPixelStoref")] + _glPixelStoref _PixelStoref { get; } + + // --- + + delegate void _glPixelStorei(PixelStoreParameter pname, int param); + [GlEntryPoint("glPixelStorei")] + _glPixelStorei _PixelStorei { get; } + + // --- + + delegate void _glPixelStorex(PixelStoreParameter pname, float param); + [GlEntryPoint("glPixelStorex")] + _glPixelStorex _PixelStorex { get; } + + // --- + + delegate void _glPixelTexGenParameterfSGIS(PixelTexGenParameterNameSGIS pname, float param); + [GlEntryPoint("glPixelTexGenParameterfSGIS")] + _glPixelTexGenParameterfSGIS _PixelTexGenParameterfSGIS { get; } + + // --- + + delegate void _glPixelTexGenParameterfvSGIS(PixelTexGenParameterNameSGIS pname, float[] @params); + [GlEntryPoint("glPixelTexGenParameterfvSGIS")] + _glPixelTexGenParameterfvSGIS _PixelTexGenParameterfvSGIS { get; } + + delegate void _glPixelTexGenParameterfvSGIS_ptr(PixelTexGenParameterNameSGIS pname, void* @params); + [GlEntryPoint("glPixelTexGenParameterfvSGIS")] + _glPixelTexGenParameterfvSGIS_ptr _PixelTexGenParameterfvSGIS_ptr { get; } + + delegate void _glPixelTexGenParameterfvSGIS_intptr(PixelTexGenParameterNameSGIS pname, IntPtr @params); + [GlEntryPoint("glPixelTexGenParameterfvSGIS")] + _glPixelTexGenParameterfvSGIS_intptr _PixelTexGenParameterfvSGIS_intptr { get; } + + // --- + + delegate void _glPixelTexGenParameteriSGIS(PixelTexGenParameterNameSGIS pname, int param); + [GlEntryPoint("glPixelTexGenParameteriSGIS")] + _glPixelTexGenParameteriSGIS _PixelTexGenParameteriSGIS { get; } + + // --- + + delegate void _glPixelTexGenParameterivSGIS(PixelTexGenParameterNameSGIS pname, int[] @params); + [GlEntryPoint("glPixelTexGenParameterivSGIS")] + _glPixelTexGenParameterivSGIS _PixelTexGenParameterivSGIS { get; } + + delegate void _glPixelTexGenParameterivSGIS_ptr(PixelTexGenParameterNameSGIS pname, void* @params); + [GlEntryPoint("glPixelTexGenParameterivSGIS")] + _glPixelTexGenParameterivSGIS_ptr _PixelTexGenParameterivSGIS_ptr { get; } + + delegate void _glPixelTexGenParameterivSGIS_intptr(PixelTexGenParameterNameSGIS pname, IntPtr @params); + [GlEntryPoint("glPixelTexGenParameterivSGIS")] + _glPixelTexGenParameterivSGIS_intptr _PixelTexGenParameterivSGIS_intptr { get; } + + // --- + + delegate void _glPixelTexGenSGIX(PixelTexGenModeSGIX mode); + [GlEntryPoint("glPixelTexGenSGIX")] + _glPixelTexGenSGIX _PixelTexGenSGIX { get; } + + // --- + + delegate void _glPixelTransferf(PixelTransferParameter pname, float param); + [GlEntryPoint("glPixelTransferf")] + _glPixelTransferf _PixelTransferf { get; } + + // --- + + delegate void _glPixelTransferi(PixelTransferParameter pname, int param); + [GlEntryPoint("glPixelTransferi")] + _glPixelTransferi _PixelTransferi { get; } + + // --- + + delegate void _glPixelTransferxOES(PixelTransferParameter pname, float param); + [GlEntryPoint("glPixelTransferxOES")] + _glPixelTransferxOES _PixelTransferxOES { get; } + + // --- + + delegate void _glPixelTransformParameterfEXT(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, float param); + [GlEntryPoint("glPixelTransformParameterfEXT")] + _glPixelTransformParameterfEXT _PixelTransformParameterfEXT { get; } + + // --- + + delegate void _glPixelTransformParameterfvEXT(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, float[] @params); + [GlEntryPoint("glPixelTransformParameterfvEXT")] + _glPixelTransformParameterfvEXT _PixelTransformParameterfvEXT { get; } + + delegate void _glPixelTransformParameterfvEXT_ptr(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, void* @params); + [GlEntryPoint("glPixelTransformParameterfvEXT")] + _glPixelTransformParameterfvEXT_ptr _PixelTransformParameterfvEXT_ptr { get; } + + delegate void _glPixelTransformParameterfvEXT_intptr(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, IntPtr @params); + [GlEntryPoint("glPixelTransformParameterfvEXT")] + _glPixelTransformParameterfvEXT_intptr _PixelTransformParameterfvEXT_intptr { get; } + + // --- + + delegate void _glPixelTransformParameteriEXT(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, int param); + [GlEntryPoint("glPixelTransformParameteriEXT")] + _glPixelTransformParameteriEXT _PixelTransformParameteriEXT { get; } + + // --- + + delegate void _glPixelTransformParameterivEXT(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, int[] @params); + [GlEntryPoint("glPixelTransformParameterivEXT")] + _glPixelTransformParameterivEXT _PixelTransformParameterivEXT { get; } + + delegate void _glPixelTransformParameterivEXT_ptr(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, void* @params); + [GlEntryPoint("glPixelTransformParameterivEXT")] + _glPixelTransformParameterivEXT_ptr _PixelTransformParameterivEXT_ptr { get; } + + delegate void _glPixelTransformParameterivEXT_intptr(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, IntPtr @params); + [GlEntryPoint("glPixelTransformParameterivEXT")] + _glPixelTransformParameterivEXT_intptr _PixelTransformParameterivEXT_intptr { get; } + + // --- + + delegate void _glPixelZoom(float xfactor, float yfactor); + [GlEntryPoint("glPixelZoom")] + _glPixelZoom _PixelZoom { get; } + + // --- + + delegate void _glPixelZoomxOES(float xfactor, float yfactor); + [GlEntryPoint("glPixelZoomxOES")] + _glPixelZoomxOES _PixelZoomxOES { get; } + + // --- + + delegate bool _glPointAlongPathNV(uint path, int startSegment, int numSegments, float distance, out float x, out float y, out float tangentX, out float tangentY); + [GlEntryPoint("glPointAlongPathNV")] + _glPointAlongPathNV _PointAlongPathNV { get; } + + // --- + + delegate void _glPointParameterf(PointParameterNameARB pname, float param); + [GlEntryPoint("glPointParameterf")] + _glPointParameterf _PointParameterf { get; } + + // --- + + delegate void _glPointParameterfARB(PointParameterNameARB pname, float param); + [GlEntryPoint("glPointParameterfARB")] + _glPointParameterfARB _PointParameterfARB { get; } + + // --- + + delegate void _glPointParameterfEXT(PointParameterNameARB pname, float param); + [GlEntryPoint("glPointParameterfEXT")] + _glPointParameterfEXT _PointParameterfEXT { get; } + + // --- + + delegate void _glPointParameterfSGIS(PointParameterNameARB pname, float param); + [GlEntryPoint("glPointParameterfSGIS")] + _glPointParameterfSGIS _PointParameterfSGIS { get; } + + // --- + + delegate void _glPointParameterfv(PointParameterNameARB pname, float[] @params); + [GlEntryPoint("glPointParameterfv")] + _glPointParameterfv _PointParameterfv { get; } + + delegate void _glPointParameterfv_ptr(PointParameterNameARB pname, void* @params); + [GlEntryPoint("glPointParameterfv")] + _glPointParameterfv_ptr _PointParameterfv_ptr { get; } + + delegate void _glPointParameterfv_intptr(PointParameterNameARB pname, IntPtr @params); + [GlEntryPoint("glPointParameterfv")] + _glPointParameterfv_intptr _PointParameterfv_intptr { get; } + + // --- + + delegate void _glPointParameterfvARB(PointParameterNameARB pname, float[] @params); + [GlEntryPoint("glPointParameterfvARB")] + _glPointParameterfvARB _PointParameterfvARB { get; } + + delegate void _glPointParameterfvARB_ptr(PointParameterNameARB pname, void* @params); + [GlEntryPoint("glPointParameterfvARB")] + _glPointParameterfvARB_ptr _PointParameterfvARB_ptr { get; } + + delegate void _glPointParameterfvARB_intptr(PointParameterNameARB pname, IntPtr @params); + [GlEntryPoint("glPointParameterfvARB")] + _glPointParameterfvARB_intptr _PointParameterfvARB_intptr { get; } + + // --- + + delegate void _glPointParameterfvEXT(PointParameterNameARB pname, float[] @params); + [GlEntryPoint("glPointParameterfvEXT")] + _glPointParameterfvEXT _PointParameterfvEXT { get; } + + delegate void _glPointParameterfvEXT_ptr(PointParameterNameARB pname, void* @params); + [GlEntryPoint("glPointParameterfvEXT")] + _glPointParameterfvEXT_ptr _PointParameterfvEXT_ptr { get; } + + delegate void _glPointParameterfvEXT_intptr(PointParameterNameARB pname, IntPtr @params); + [GlEntryPoint("glPointParameterfvEXT")] + _glPointParameterfvEXT_intptr _PointParameterfvEXT_intptr { get; } + + // --- + + delegate void _glPointParameterfvSGIS(PointParameterNameARB pname, float[] @params); + [GlEntryPoint("glPointParameterfvSGIS")] + _glPointParameterfvSGIS _PointParameterfvSGIS { get; } + + delegate void _glPointParameterfvSGIS_ptr(PointParameterNameARB pname, void* @params); + [GlEntryPoint("glPointParameterfvSGIS")] + _glPointParameterfvSGIS_ptr _PointParameterfvSGIS_ptr { get; } + + delegate void _glPointParameterfvSGIS_intptr(PointParameterNameARB pname, IntPtr @params); + [GlEntryPoint("glPointParameterfvSGIS")] + _glPointParameterfvSGIS_intptr _PointParameterfvSGIS_intptr { get; } + + // --- + + delegate void _glPointParameteri(PointParameterNameARB pname, int param); + [GlEntryPoint("glPointParameteri")] + _glPointParameteri _PointParameteri { get; } + + // --- + + delegate void _glPointParameteriNV(PointParameterNameARB pname, int param); + [GlEntryPoint("glPointParameteriNV")] + _glPointParameteriNV _PointParameteriNV { get; } + + // --- + + delegate void _glPointParameteriv(PointParameterNameARB pname, int[] @params); + [GlEntryPoint("glPointParameteriv")] + _glPointParameteriv _PointParameteriv { get; } + + delegate void _glPointParameteriv_ptr(PointParameterNameARB pname, void* @params); + [GlEntryPoint("glPointParameteriv")] + _glPointParameteriv_ptr _PointParameteriv_ptr { get; } + + delegate void _glPointParameteriv_intptr(PointParameterNameARB pname, IntPtr @params); + [GlEntryPoint("glPointParameteriv")] + _glPointParameteriv_intptr _PointParameteriv_intptr { get; } + + // --- + + delegate void _glPointParameterivNV(PointParameterNameARB pname, int[] @params); + [GlEntryPoint("glPointParameterivNV")] + _glPointParameterivNV _PointParameterivNV { get; } + + delegate void _glPointParameterivNV_ptr(PointParameterNameARB pname, void* @params); + [GlEntryPoint("glPointParameterivNV")] + _glPointParameterivNV_ptr _PointParameterivNV_ptr { get; } + + delegate void _glPointParameterivNV_intptr(PointParameterNameARB pname, IntPtr @params); + [GlEntryPoint("glPointParameterivNV")] + _glPointParameterivNV_intptr _PointParameterivNV_intptr { get; } + + // --- + + delegate void _glPointParameterx(PointParameterNameARB pname, float param); + [GlEntryPoint("glPointParameterx")] + _glPointParameterx _PointParameterx { get; } + + // --- + + delegate void _glPointParameterxOES(PointParameterNameARB pname, float param); + [GlEntryPoint("glPointParameterxOES")] + _glPointParameterxOES _PointParameterxOES { get; } + + // --- + + delegate void _glPointParameterxv(PointParameterNameARB pname, float[] @params); + [GlEntryPoint("glPointParameterxv")] + _glPointParameterxv _PointParameterxv { get; } + + delegate void _glPointParameterxv_ptr(PointParameterNameARB pname, void* @params); + [GlEntryPoint("glPointParameterxv")] + _glPointParameterxv_ptr _PointParameterxv_ptr { get; } + + delegate void _glPointParameterxv_intptr(PointParameterNameARB pname, IntPtr @params); + [GlEntryPoint("glPointParameterxv")] + _glPointParameterxv_intptr _PointParameterxv_intptr { get; } + + // --- + + delegate void _glPointParameterxvOES(PointParameterNameARB pname, float[] @params); + [GlEntryPoint("glPointParameterxvOES")] + _glPointParameterxvOES _PointParameterxvOES { get; } + + delegate void _glPointParameterxvOES_ptr(PointParameterNameARB pname, void* @params); + [GlEntryPoint("glPointParameterxvOES")] + _glPointParameterxvOES_ptr _PointParameterxvOES_ptr { get; } + + delegate void _glPointParameterxvOES_intptr(PointParameterNameARB pname, IntPtr @params); + [GlEntryPoint("glPointParameterxvOES")] + _glPointParameterxvOES_intptr _PointParameterxvOES_intptr { get; } + + // --- + + delegate void _glPointSize(float size); + [GlEntryPoint("glPointSize")] + _glPointSize _PointSize { get; } + + // --- + + delegate void _glPointSizePointerOES(int type, int stride, IntPtr pointer); + [GlEntryPoint("glPointSizePointerOES")] + _glPointSizePointerOES _PointSizePointerOES { get; } + + // --- + + delegate void _glPointSizex(float size); + [GlEntryPoint("glPointSizex")] + _glPointSizex _PointSizex { get; } + + // --- + + delegate void _glPointSizexOES(float size); + [GlEntryPoint("glPointSizexOES")] + _glPointSizexOES _PointSizexOES { get; } + + // --- + + delegate int _glPollAsyncSGIX(out uint markerp); + [GlEntryPoint("glPollAsyncSGIX")] + _glPollAsyncSGIX _PollAsyncSGIX { get; } + + // --- + + delegate int _glPollInstrumentsSGIX(out int marker_p); + [GlEntryPoint("glPollInstrumentsSGIX")] + _glPollInstrumentsSGIX _PollInstrumentsSGIX { get; } + + // --- + + delegate void _glPolygonMode(MaterialFace face, PolygonMode mode); + [GlEntryPoint("glPolygonMode")] + _glPolygonMode _PolygonMode { get; } + + // --- + + delegate void _glPolygonModeNV(MaterialFace face, PolygonMode mode); + [GlEntryPoint("glPolygonModeNV")] + _glPolygonModeNV _PolygonModeNV { get; } + + // --- + + delegate void _glPolygonOffset(float factor, float units); + [GlEntryPoint("glPolygonOffset")] + _glPolygonOffset _PolygonOffset { get; } + + // --- + + delegate void _glPolygonOffsetClamp(float factor, float units, float clamp); + [GlEntryPoint("glPolygonOffsetClamp")] + _glPolygonOffsetClamp _PolygonOffsetClamp { get; } + + // --- + + delegate void _glPolygonOffsetClampEXT(float factor, float units, float clamp); + [GlEntryPoint("glPolygonOffsetClampEXT")] + _glPolygonOffsetClampEXT _PolygonOffsetClampEXT { get; } + + // --- + + delegate void _glPolygonOffsetEXT(float factor, float bias); + [GlEntryPoint("glPolygonOffsetEXT")] + _glPolygonOffsetEXT _PolygonOffsetEXT { get; } + + // --- + + delegate void _glPolygonOffsetx(float factor, float units); + [GlEntryPoint("glPolygonOffsetx")] + _glPolygonOffsetx _PolygonOffsetx { get; } + + // --- + + delegate void _glPolygonOffsetxOES(float factor, float units); + [GlEntryPoint("glPolygonOffsetxOES")] + _glPolygonOffsetxOES _PolygonOffsetxOES { get; } + + // --- + + delegate void _glPolygonStipple(byte[] mask); + [GlEntryPoint("glPolygonStipple")] + _glPolygonStipple _PolygonStipple { get; } + + delegate void _glPolygonStipple_ptr(void* mask); + [GlEntryPoint("glPolygonStipple")] + _glPolygonStipple_ptr _PolygonStipple_ptr { get; } + + delegate void _glPolygonStipple_intptr(IntPtr mask); + [GlEntryPoint("glPolygonStipple")] + _glPolygonStipple_intptr _PolygonStipple_intptr { get; } + + // --- + + delegate void _glPopAttrib(); + [GlEntryPoint("glPopAttrib")] + _glPopAttrib _PopAttrib { get; } + + // --- + + delegate void _glPopClientAttrib(); + [GlEntryPoint("glPopClientAttrib")] + _glPopClientAttrib _PopClientAttrib { get; } + + // --- + + delegate void _glPopDebugGroup(); + [GlEntryPoint("glPopDebugGroup")] + _glPopDebugGroup _PopDebugGroup { get; } + + // --- + + delegate void _glPopDebugGroupKHR(); + [GlEntryPoint("glPopDebugGroupKHR")] + _glPopDebugGroupKHR _PopDebugGroupKHR { get; } + + // --- + + delegate void _glPopGroupMarkerEXT(); + [GlEntryPoint("glPopGroupMarkerEXT")] + _glPopGroupMarkerEXT _PopGroupMarkerEXT { get; } + + // --- + + delegate void _glPopMatrix(); + [GlEntryPoint("glPopMatrix")] + _glPopMatrix _PopMatrix { get; } + + // --- + + delegate void _glPopName(); + [GlEntryPoint("glPopName")] + _glPopName _PopName { get; } + + // --- + + delegate void _glPresentFrameDualFillNV(uint video_slot, UInt64 minPresentTime, uint beginPresentTimeId, uint presentDurationId, int type, int target0, uint fill0, int target1, uint fill1, int target2, uint fill2, int target3, uint fill3); + [GlEntryPoint("glPresentFrameDualFillNV")] + _glPresentFrameDualFillNV _PresentFrameDualFillNV { get; } + + // --- + + delegate void _glPresentFrameKeyedNV(uint video_slot, UInt64 minPresentTime, uint beginPresentTimeId, uint presentDurationId, int type, int target0, uint fill0, uint key0, int target1, uint fill1, uint key1); + [GlEntryPoint("glPresentFrameKeyedNV")] + _glPresentFrameKeyedNV _PresentFrameKeyedNV { get; } + + // --- + + delegate void _glPrimitiveBoundingBox(float minX, float minY, float minZ, float minW, float maxX, float maxY, float maxZ, float maxW); + [GlEntryPoint("glPrimitiveBoundingBox")] + _glPrimitiveBoundingBox _PrimitiveBoundingBox { get; } + + // --- + + delegate void _glPrimitiveBoundingBoxARB(float minX, float minY, float minZ, float minW, float maxX, float maxY, float maxZ, float maxW); + [GlEntryPoint("glPrimitiveBoundingBoxARB")] + _glPrimitiveBoundingBoxARB _PrimitiveBoundingBoxARB { get; } + + // --- + + delegate void _glPrimitiveBoundingBoxEXT(float minX, float minY, float minZ, float minW, float maxX, float maxY, float maxZ, float maxW); + [GlEntryPoint("glPrimitiveBoundingBoxEXT")] + _glPrimitiveBoundingBoxEXT _PrimitiveBoundingBoxEXT { get; } + + // --- + + delegate void _glPrimitiveBoundingBoxOES(float minX, float minY, float minZ, float minW, float maxX, float maxY, float maxZ, float maxW); + [GlEntryPoint("glPrimitiveBoundingBoxOES")] + _glPrimitiveBoundingBoxOES _PrimitiveBoundingBoxOES { get; } + + // --- + + delegate void _glPrimitiveRestartIndex(uint index); + [GlEntryPoint("glPrimitiveRestartIndex")] + _glPrimitiveRestartIndex _PrimitiveRestartIndex { get; } + + // --- + + delegate void _glPrimitiveRestartIndexNV(uint index); + [GlEntryPoint("glPrimitiveRestartIndexNV")] + _glPrimitiveRestartIndexNV _PrimitiveRestartIndexNV { get; } + + // --- + + delegate void _glPrimitiveRestartNV(); + [GlEntryPoint("glPrimitiveRestartNV")] + _glPrimitiveRestartNV _PrimitiveRestartNV { get; } + + // --- + + delegate void _glPrioritizeTextures(int n, uint[] textures, float[] priorities); + [GlEntryPoint("glPrioritizeTextures")] + _glPrioritizeTextures _PrioritizeTextures { get; } + + delegate void _glPrioritizeTextures_ptr(int n, void* textures, void* priorities); + [GlEntryPoint("glPrioritizeTextures")] + _glPrioritizeTextures_ptr _PrioritizeTextures_ptr { get; } + + delegate void _glPrioritizeTextures_intptr(int n, IntPtr textures, IntPtr priorities); + [GlEntryPoint("glPrioritizeTextures")] + _glPrioritizeTextures_intptr _PrioritizeTextures_intptr { get; } + + // --- + + delegate void _glPrioritizeTexturesEXT(int n, uint[] textures, float[] priorities); + [GlEntryPoint("glPrioritizeTexturesEXT")] + _glPrioritizeTexturesEXT _PrioritizeTexturesEXT { get; } + + delegate void _glPrioritizeTexturesEXT_ptr(int n, void* textures, void* priorities); + [GlEntryPoint("glPrioritizeTexturesEXT")] + _glPrioritizeTexturesEXT_ptr _PrioritizeTexturesEXT_ptr { get; } + + delegate void _glPrioritizeTexturesEXT_intptr(int n, IntPtr textures, IntPtr priorities); + [GlEntryPoint("glPrioritizeTexturesEXT")] + _glPrioritizeTexturesEXT_intptr _PrioritizeTexturesEXT_intptr { get; } + + // --- + + delegate void _glPrioritizeTexturesxOES(int n, uint[] textures, float[] priorities); + [GlEntryPoint("glPrioritizeTexturesxOES")] + _glPrioritizeTexturesxOES _PrioritizeTexturesxOES { get; } + + delegate void _glPrioritizeTexturesxOES_ptr(int n, void* textures, void* priorities); + [GlEntryPoint("glPrioritizeTexturesxOES")] + _glPrioritizeTexturesxOES_ptr _PrioritizeTexturesxOES_ptr { get; } + + delegate void _glPrioritizeTexturesxOES_intptr(int n, IntPtr textures, IntPtr priorities); + [GlEntryPoint("glPrioritizeTexturesxOES")] + _glPrioritizeTexturesxOES_intptr _PrioritizeTexturesxOES_intptr { get; } + + // --- + + delegate void _glProgramBinary(uint program, int binaryFormat, IntPtr binary, int length); + [GlEntryPoint("glProgramBinary")] + _glProgramBinary _ProgramBinary { get; } + + // --- + + delegate void _glProgramBinaryOES(uint program, int binaryFormat, IntPtr binary, int length); + [GlEntryPoint("glProgramBinaryOES")] + _glProgramBinaryOES _ProgramBinaryOES { get; } + + // --- + + delegate void _glProgramBufferParametersIivNV(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, int[] @params); + [GlEntryPoint("glProgramBufferParametersIivNV")] + _glProgramBufferParametersIivNV _ProgramBufferParametersIivNV { get; } + + delegate void _glProgramBufferParametersIivNV_ptr(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, void* @params); + [GlEntryPoint("glProgramBufferParametersIivNV")] + _glProgramBufferParametersIivNV_ptr _ProgramBufferParametersIivNV_ptr { get; } + + delegate void _glProgramBufferParametersIivNV_intptr(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, IntPtr @params); + [GlEntryPoint("glProgramBufferParametersIivNV")] + _glProgramBufferParametersIivNV_intptr _ProgramBufferParametersIivNV_intptr { get; } + + // --- + + delegate void _glProgramBufferParametersIuivNV(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, uint[] @params); + [GlEntryPoint("glProgramBufferParametersIuivNV")] + _glProgramBufferParametersIuivNV _ProgramBufferParametersIuivNV { get; } + + delegate void _glProgramBufferParametersIuivNV_ptr(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, void* @params); + [GlEntryPoint("glProgramBufferParametersIuivNV")] + _glProgramBufferParametersIuivNV_ptr _ProgramBufferParametersIuivNV_ptr { get; } + + delegate void _glProgramBufferParametersIuivNV_intptr(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, IntPtr @params); + [GlEntryPoint("glProgramBufferParametersIuivNV")] + _glProgramBufferParametersIuivNV_intptr _ProgramBufferParametersIuivNV_intptr { get; } + + // --- + + delegate void _glProgramBufferParametersfvNV(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, float[] @params); + [GlEntryPoint("glProgramBufferParametersfvNV")] + _glProgramBufferParametersfvNV _ProgramBufferParametersfvNV { get; } + + delegate void _glProgramBufferParametersfvNV_ptr(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, void* @params); + [GlEntryPoint("glProgramBufferParametersfvNV")] + _glProgramBufferParametersfvNV_ptr _ProgramBufferParametersfvNV_ptr { get; } + + delegate void _glProgramBufferParametersfvNV_intptr(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, IntPtr @params); + [GlEntryPoint("glProgramBufferParametersfvNV")] + _glProgramBufferParametersfvNV_intptr _ProgramBufferParametersfvNV_intptr { get; } + + // --- + + delegate void _glProgramEnvParameter4dARB(ProgramTarget target, uint index, double x, double y, double z, double w); + [GlEntryPoint("glProgramEnvParameter4dARB")] + _glProgramEnvParameter4dARB _ProgramEnvParameter4dARB { get; } + + // --- + + delegate void _glProgramEnvParameter4dvARB(ProgramTarget target, uint index, double[] @params); + [GlEntryPoint("glProgramEnvParameter4dvARB")] + _glProgramEnvParameter4dvARB _ProgramEnvParameter4dvARB { get; } + + delegate void _glProgramEnvParameter4dvARB_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glProgramEnvParameter4dvARB")] + _glProgramEnvParameter4dvARB_ptr _ProgramEnvParameter4dvARB_ptr { get; } + + delegate void _glProgramEnvParameter4dvARB_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glProgramEnvParameter4dvARB")] + _glProgramEnvParameter4dvARB_intptr _ProgramEnvParameter4dvARB_intptr { get; } + + // --- + + delegate void _glProgramEnvParameter4fARB(ProgramTarget target, uint index, float x, float y, float z, float w); + [GlEntryPoint("glProgramEnvParameter4fARB")] + _glProgramEnvParameter4fARB _ProgramEnvParameter4fARB { get; } + + // --- + + delegate void _glProgramEnvParameter4fvARB(ProgramTarget target, uint index, float[] @params); + [GlEntryPoint("glProgramEnvParameter4fvARB")] + _glProgramEnvParameter4fvARB _ProgramEnvParameter4fvARB { get; } + + delegate void _glProgramEnvParameter4fvARB_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glProgramEnvParameter4fvARB")] + _glProgramEnvParameter4fvARB_ptr _ProgramEnvParameter4fvARB_ptr { get; } + + delegate void _glProgramEnvParameter4fvARB_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glProgramEnvParameter4fvARB")] + _glProgramEnvParameter4fvARB_intptr _ProgramEnvParameter4fvARB_intptr { get; } + + // --- + + delegate void _glProgramEnvParameterI4iNV(ProgramTarget target, uint index, int x, int y, int z, int w); + [GlEntryPoint("glProgramEnvParameterI4iNV")] + _glProgramEnvParameterI4iNV _ProgramEnvParameterI4iNV { get; } + + // --- + + delegate void _glProgramEnvParameterI4ivNV(ProgramTarget target, uint index, int[] @params); + [GlEntryPoint("glProgramEnvParameterI4ivNV")] + _glProgramEnvParameterI4ivNV _ProgramEnvParameterI4ivNV { get; } + + delegate void _glProgramEnvParameterI4ivNV_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glProgramEnvParameterI4ivNV")] + _glProgramEnvParameterI4ivNV_ptr _ProgramEnvParameterI4ivNV_ptr { get; } + + delegate void _glProgramEnvParameterI4ivNV_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glProgramEnvParameterI4ivNV")] + _glProgramEnvParameterI4ivNV_intptr _ProgramEnvParameterI4ivNV_intptr { get; } + + // --- + + delegate void _glProgramEnvParameterI4uiNV(ProgramTarget target, uint index, uint x, uint y, uint z, uint w); + [GlEntryPoint("glProgramEnvParameterI4uiNV")] + _glProgramEnvParameterI4uiNV _ProgramEnvParameterI4uiNV { get; } + + // --- + + delegate void _glProgramEnvParameterI4uivNV(ProgramTarget target, uint index, uint[] @params); + [GlEntryPoint("glProgramEnvParameterI4uivNV")] + _glProgramEnvParameterI4uivNV _ProgramEnvParameterI4uivNV { get; } + + delegate void _glProgramEnvParameterI4uivNV_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glProgramEnvParameterI4uivNV")] + _glProgramEnvParameterI4uivNV_ptr _ProgramEnvParameterI4uivNV_ptr { get; } + + delegate void _glProgramEnvParameterI4uivNV_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glProgramEnvParameterI4uivNV")] + _glProgramEnvParameterI4uivNV_intptr _ProgramEnvParameterI4uivNV_intptr { get; } + + // --- + + delegate void _glProgramEnvParameters4fvEXT(ProgramTarget target, uint index, int count, float[] @params); + [GlEntryPoint("glProgramEnvParameters4fvEXT")] + _glProgramEnvParameters4fvEXT _ProgramEnvParameters4fvEXT { get; } + + delegate void _glProgramEnvParameters4fvEXT_ptr(ProgramTarget target, uint index, int count, void* @params); + [GlEntryPoint("glProgramEnvParameters4fvEXT")] + _glProgramEnvParameters4fvEXT_ptr _ProgramEnvParameters4fvEXT_ptr { get; } + + delegate void _glProgramEnvParameters4fvEXT_intptr(ProgramTarget target, uint index, int count, IntPtr @params); + [GlEntryPoint("glProgramEnvParameters4fvEXT")] + _glProgramEnvParameters4fvEXT_intptr _ProgramEnvParameters4fvEXT_intptr { get; } + + // --- + + delegate void _glProgramEnvParametersI4ivNV(ProgramTarget target, uint index, int count, int[] @params); + [GlEntryPoint("glProgramEnvParametersI4ivNV")] + _glProgramEnvParametersI4ivNV _ProgramEnvParametersI4ivNV { get; } + + delegate void _glProgramEnvParametersI4ivNV_ptr(ProgramTarget target, uint index, int count, void* @params); + [GlEntryPoint("glProgramEnvParametersI4ivNV")] + _glProgramEnvParametersI4ivNV_ptr _ProgramEnvParametersI4ivNV_ptr { get; } + + delegate void _glProgramEnvParametersI4ivNV_intptr(ProgramTarget target, uint index, int count, IntPtr @params); + [GlEntryPoint("glProgramEnvParametersI4ivNV")] + _glProgramEnvParametersI4ivNV_intptr _ProgramEnvParametersI4ivNV_intptr { get; } + + // --- + + delegate void _glProgramEnvParametersI4uivNV(ProgramTarget target, uint index, int count, uint[] @params); + [GlEntryPoint("glProgramEnvParametersI4uivNV")] + _glProgramEnvParametersI4uivNV _ProgramEnvParametersI4uivNV { get; } + + delegate void _glProgramEnvParametersI4uivNV_ptr(ProgramTarget target, uint index, int count, void* @params); + [GlEntryPoint("glProgramEnvParametersI4uivNV")] + _glProgramEnvParametersI4uivNV_ptr _ProgramEnvParametersI4uivNV_ptr { get; } + + delegate void _glProgramEnvParametersI4uivNV_intptr(ProgramTarget target, uint index, int count, IntPtr @params); + [GlEntryPoint("glProgramEnvParametersI4uivNV")] + _glProgramEnvParametersI4uivNV_intptr _ProgramEnvParametersI4uivNV_intptr { get; } + + // --- + + delegate void _glProgramLocalParameter4dARB(ProgramTarget target, uint index, double x, double y, double z, double w); + [GlEntryPoint("glProgramLocalParameter4dARB")] + _glProgramLocalParameter4dARB _ProgramLocalParameter4dARB { get; } + + // --- + + delegate void _glProgramLocalParameter4dvARB(ProgramTarget target, uint index, double[] @params); + [GlEntryPoint("glProgramLocalParameter4dvARB")] + _glProgramLocalParameter4dvARB _ProgramLocalParameter4dvARB { get; } + + delegate void _glProgramLocalParameter4dvARB_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glProgramLocalParameter4dvARB")] + _glProgramLocalParameter4dvARB_ptr _ProgramLocalParameter4dvARB_ptr { get; } + + delegate void _glProgramLocalParameter4dvARB_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glProgramLocalParameter4dvARB")] + _glProgramLocalParameter4dvARB_intptr _ProgramLocalParameter4dvARB_intptr { get; } + + // --- + + delegate void _glProgramLocalParameter4fARB(ProgramTarget target, uint index, float x, float y, float z, float w); + [GlEntryPoint("glProgramLocalParameter4fARB")] + _glProgramLocalParameter4fARB _ProgramLocalParameter4fARB { get; } + + // --- + + delegate void _glProgramLocalParameter4fvARB(ProgramTarget target, uint index, float[] @params); + [GlEntryPoint("glProgramLocalParameter4fvARB")] + _glProgramLocalParameter4fvARB _ProgramLocalParameter4fvARB { get; } + + delegate void _glProgramLocalParameter4fvARB_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glProgramLocalParameter4fvARB")] + _glProgramLocalParameter4fvARB_ptr _ProgramLocalParameter4fvARB_ptr { get; } + + delegate void _glProgramLocalParameter4fvARB_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glProgramLocalParameter4fvARB")] + _glProgramLocalParameter4fvARB_intptr _ProgramLocalParameter4fvARB_intptr { get; } + + // --- + + delegate void _glProgramLocalParameterI4iNV(ProgramTarget target, uint index, int x, int y, int z, int w); + [GlEntryPoint("glProgramLocalParameterI4iNV")] + _glProgramLocalParameterI4iNV _ProgramLocalParameterI4iNV { get; } + + // --- + + delegate void _glProgramLocalParameterI4ivNV(ProgramTarget target, uint index, int[] @params); + [GlEntryPoint("glProgramLocalParameterI4ivNV")] + _glProgramLocalParameterI4ivNV _ProgramLocalParameterI4ivNV { get; } + + delegate void _glProgramLocalParameterI4ivNV_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glProgramLocalParameterI4ivNV")] + _glProgramLocalParameterI4ivNV_ptr _ProgramLocalParameterI4ivNV_ptr { get; } + + delegate void _glProgramLocalParameterI4ivNV_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glProgramLocalParameterI4ivNV")] + _glProgramLocalParameterI4ivNV_intptr _ProgramLocalParameterI4ivNV_intptr { get; } + + // --- + + delegate void _glProgramLocalParameterI4uiNV(ProgramTarget target, uint index, uint x, uint y, uint z, uint w); + [GlEntryPoint("glProgramLocalParameterI4uiNV")] + _glProgramLocalParameterI4uiNV _ProgramLocalParameterI4uiNV { get; } + + // --- + + delegate void _glProgramLocalParameterI4uivNV(ProgramTarget target, uint index, uint[] @params); + [GlEntryPoint("glProgramLocalParameterI4uivNV")] + _glProgramLocalParameterI4uivNV _ProgramLocalParameterI4uivNV { get; } + + delegate void _glProgramLocalParameterI4uivNV_ptr(ProgramTarget target, uint index, void* @params); + [GlEntryPoint("glProgramLocalParameterI4uivNV")] + _glProgramLocalParameterI4uivNV_ptr _ProgramLocalParameterI4uivNV_ptr { get; } + + delegate void _glProgramLocalParameterI4uivNV_intptr(ProgramTarget target, uint index, IntPtr @params); + [GlEntryPoint("glProgramLocalParameterI4uivNV")] + _glProgramLocalParameterI4uivNV_intptr _ProgramLocalParameterI4uivNV_intptr { get; } + + // --- + + delegate void _glProgramLocalParameters4fvEXT(ProgramTarget target, uint index, int count, float[] @params); + [GlEntryPoint("glProgramLocalParameters4fvEXT")] + _glProgramLocalParameters4fvEXT _ProgramLocalParameters4fvEXT { get; } + + delegate void _glProgramLocalParameters4fvEXT_ptr(ProgramTarget target, uint index, int count, void* @params); + [GlEntryPoint("glProgramLocalParameters4fvEXT")] + _glProgramLocalParameters4fvEXT_ptr _ProgramLocalParameters4fvEXT_ptr { get; } + + delegate void _glProgramLocalParameters4fvEXT_intptr(ProgramTarget target, uint index, int count, IntPtr @params); + [GlEntryPoint("glProgramLocalParameters4fvEXT")] + _glProgramLocalParameters4fvEXT_intptr _ProgramLocalParameters4fvEXT_intptr { get; } + + // --- + + delegate void _glProgramLocalParametersI4ivNV(ProgramTarget target, uint index, int count, int[] @params); + [GlEntryPoint("glProgramLocalParametersI4ivNV")] + _glProgramLocalParametersI4ivNV _ProgramLocalParametersI4ivNV { get; } + + delegate void _glProgramLocalParametersI4ivNV_ptr(ProgramTarget target, uint index, int count, void* @params); + [GlEntryPoint("glProgramLocalParametersI4ivNV")] + _glProgramLocalParametersI4ivNV_ptr _ProgramLocalParametersI4ivNV_ptr { get; } + + delegate void _glProgramLocalParametersI4ivNV_intptr(ProgramTarget target, uint index, int count, IntPtr @params); + [GlEntryPoint("glProgramLocalParametersI4ivNV")] + _glProgramLocalParametersI4ivNV_intptr _ProgramLocalParametersI4ivNV_intptr { get; } + + // --- + + delegate void _glProgramLocalParametersI4uivNV(ProgramTarget target, uint index, int count, uint[] @params); + [GlEntryPoint("glProgramLocalParametersI4uivNV")] + _glProgramLocalParametersI4uivNV _ProgramLocalParametersI4uivNV { get; } + + delegate void _glProgramLocalParametersI4uivNV_ptr(ProgramTarget target, uint index, int count, void* @params); + [GlEntryPoint("glProgramLocalParametersI4uivNV")] + _glProgramLocalParametersI4uivNV_ptr _ProgramLocalParametersI4uivNV_ptr { get; } + + delegate void _glProgramLocalParametersI4uivNV_intptr(ProgramTarget target, uint index, int count, IntPtr @params); + [GlEntryPoint("glProgramLocalParametersI4uivNV")] + _glProgramLocalParametersI4uivNV_intptr _ProgramLocalParametersI4uivNV_intptr { get; } + + // --- + + delegate void _glProgramNamedParameter4dNV(uint id, int len, byte[] name, double x, double y, double z, double w); + [GlEntryPoint("glProgramNamedParameter4dNV")] + _glProgramNamedParameter4dNV _ProgramNamedParameter4dNV { get; } + + delegate void _glProgramNamedParameter4dNV_ptr(uint id, int len, void* name, double x, double y, double z, double w); + [GlEntryPoint("glProgramNamedParameter4dNV")] + _glProgramNamedParameter4dNV_ptr _ProgramNamedParameter4dNV_ptr { get; } + + delegate void _glProgramNamedParameter4dNV_intptr(uint id, int len, IntPtr name, double x, double y, double z, double w); + [GlEntryPoint("glProgramNamedParameter4dNV")] + _glProgramNamedParameter4dNV_intptr _ProgramNamedParameter4dNV_intptr { get; } + + // --- + + delegate void _glProgramNamedParameter4dvNV(uint id, int len, byte[] name, double[] v); + [GlEntryPoint("glProgramNamedParameter4dvNV")] + _glProgramNamedParameter4dvNV _ProgramNamedParameter4dvNV { get; } + + delegate void _glProgramNamedParameter4dvNV_ptr(uint id, int len, void* name, void* v); + [GlEntryPoint("glProgramNamedParameter4dvNV")] + _glProgramNamedParameter4dvNV_ptr _ProgramNamedParameter4dvNV_ptr { get; } + + delegate void _glProgramNamedParameter4dvNV_intptr(uint id, int len, IntPtr name, IntPtr v); + [GlEntryPoint("glProgramNamedParameter4dvNV")] + _glProgramNamedParameter4dvNV_intptr _ProgramNamedParameter4dvNV_intptr { get; } + + // --- + + delegate void _glProgramNamedParameter4fNV(uint id, int len, byte[] name, float x, float y, float z, float w); + [GlEntryPoint("glProgramNamedParameter4fNV")] + _glProgramNamedParameter4fNV _ProgramNamedParameter4fNV { get; } + + delegate void _glProgramNamedParameter4fNV_ptr(uint id, int len, void* name, float x, float y, float z, float w); + [GlEntryPoint("glProgramNamedParameter4fNV")] + _glProgramNamedParameter4fNV_ptr _ProgramNamedParameter4fNV_ptr { get; } + + delegate void _glProgramNamedParameter4fNV_intptr(uint id, int len, IntPtr name, float x, float y, float z, float w); + [GlEntryPoint("glProgramNamedParameter4fNV")] + _glProgramNamedParameter4fNV_intptr _ProgramNamedParameter4fNV_intptr { get; } + + // --- + + delegate void _glProgramNamedParameter4fvNV(uint id, int len, byte[] name, float[] v); + [GlEntryPoint("glProgramNamedParameter4fvNV")] + _glProgramNamedParameter4fvNV _ProgramNamedParameter4fvNV { get; } + + delegate void _glProgramNamedParameter4fvNV_ptr(uint id, int len, void* name, void* v); + [GlEntryPoint("glProgramNamedParameter4fvNV")] + _glProgramNamedParameter4fvNV_ptr _ProgramNamedParameter4fvNV_ptr { get; } + + delegate void _glProgramNamedParameter4fvNV_intptr(uint id, int len, IntPtr name, IntPtr v); + [GlEntryPoint("glProgramNamedParameter4fvNV")] + _glProgramNamedParameter4fvNV_intptr _ProgramNamedParameter4fvNV_intptr { get; } + + // --- + + delegate void _glProgramParameter4dNV(VertexAttribEnumNV target, uint index, double x, double y, double z, double w); + [GlEntryPoint("glProgramParameter4dNV")] + _glProgramParameter4dNV _ProgramParameter4dNV { get; } + + // --- + + delegate void _glProgramParameter4dvNV(VertexAttribEnumNV target, uint index, double[] v); + [GlEntryPoint("glProgramParameter4dvNV")] + _glProgramParameter4dvNV _ProgramParameter4dvNV { get; } + + delegate void _glProgramParameter4dvNV_ptr(VertexAttribEnumNV target, uint index, void* v); + [GlEntryPoint("glProgramParameter4dvNV")] + _glProgramParameter4dvNV_ptr _ProgramParameter4dvNV_ptr { get; } + + delegate void _glProgramParameter4dvNV_intptr(VertexAttribEnumNV target, uint index, IntPtr v); + [GlEntryPoint("glProgramParameter4dvNV")] + _glProgramParameter4dvNV_intptr _ProgramParameter4dvNV_intptr { get; } + + // --- + + delegate void _glProgramParameter4fNV(VertexAttribEnumNV target, uint index, float x, float y, float z, float w); + [GlEntryPoint("glProgramParameter4fNV")] + _glProgramParameter4fNV _ProgramParameter4fNV { get; } + + // --- + + delegate void _glProgramParameter4fvNV(VertexAttribEnumNV target, uint index, float[] v); + [GlEntryPoint("glProgramParameter4fvNV")] + _glProgramParameter4fvNV _ProgramParameter4fvNV { get; } + + delegate void _glProgramParameter4fvNV_ptr(VertexAttribEnumNV target, uint index, void* v); + [GlEntryPoint("glProgramParameter4fvNV")] + _glProgramParameter4fvNV_ptr _ProgramParameter4fvNV_ptr { get; } + + delegate void _glProgramParameter4fvNV_intptr(VertexAttribEnumNV target, uint index, IntPtr v); + [GlEntryPoint("glProgramParameter4fvNV")] + _glProgramParameter4fvNV_intptr _ProgramParameter4fvNV_intptr { get; } + + // --- + + delegate void _glProgramParameteri(uint program, ProgramParameterPName pname, int value); + [GlEntryPoint("glProgramParameteri")] + _glProgramParameteri _ProgramParameteri { get; } + + // --- + + delegate void _glProgramParameteriARB(uint program, ProgramParameterPName pname, int value); + [GlEntryPoint("glProgramParameteriARB")] + _glProgramParameteriARB _ProgramParameteriARB { get; } + + // --- + + delegate void _glProgramParameteriEXT(uint program, ProgramParameterPName pname, int value); + [GlEntryPoint("glProgramParameteriEXT")] + _glProgramParameteriEXT _ProgramParameteriEXT { get; } + + // --- + + delegate void _glProgramParameters4dvNV(VertexAttribEnumNV target, uint index, int count, double[] v); + [GlEntryPoint("glProgramParameters4dvNV")] + _glProgramParameters4dvNV _ProgramParameters4dvNV { get; } + + delegate void _glProgramParameters4dvNV_ptr(VertexAttribEnumNV target, uint index, int count, void* v); + [GlEntryPoint("glProgramParameters4dvNV")] + _glProgramParameters4dvNV_ptr _ProgramParameters4dvNV_ptr { get; } + + delegate void _glProgramParameters4dvNV_intptr(VertexAttribEnumNV target, uint index, int count, IntPtr v); + [GlEntryPoint("glProgramParameters4dvNV")] + _glProgramParameters4dvNV_intptr _ProgramParameters4dvNV_intptr { get; } + + // --- + + delegate void _glProgramParameters4fvNV(VertexAttribEnumNV target, uint index, int count, float[] v); + [GlEntryPoint("glProgramParameters4fvNV")] + _glProgramParameters4fvNV _ProgramParameters4fvNV { get; } + + delegate void _glProgramParameters4fvNV_ptr(VertexAttribEnumNV target, uint index, int count, void* v); + [GlEntryPoint("glProgramParameters4fvNV")] + _glProgramParameters4fvNV_ptr _ProgramParameters4fvNV_ptr { get; } + + delegate void _glProgramParameters4fvNV_intptr(VertexAttribEnumNV target, uint index, int count, IntPtr v); + [GlEntryPoint("glProgramParameters4fvNV")] + _glProgramParameters4fvNV_intptr _ProgramParameters4fvNV_intptr { get; } + + // --- + + delegate void _glProgramPathFragmentInputGenNV(uint program, int location, int genMode, int components, float[] coeffs); + [GlEntryPoint("glProgramPathFragmentInputGenNV")] + _glProgramPathFragmentInputGenNV _ProgramPathFragmentInputGenNV { get; } + + delegate void _glProgramPathFragmentInputGenNV_ptr(uint program, int location, int genMode, int components, void* coeffs); + [GlEntryPoint("glProgramPathFragmentInputGenNV")] + _glProgramPathFragmentInputGenNV_ptr _ProgramPathFragmentInputGenNV_ptr { get; } + + delegate void _glProgramPathFragmentInputGenNV_intptr(uint program, int location, int genMode, int components, IntPtr coeffs); + [GlEntryPoint("glProgramPathFragmentInputGenNV")] + _glProgramPathFragmentInputGenNV_intptr _ProgramPathFragmentInputGenNV_intptr { get; } + + // --- + + delegate void _glProgramStringARB(ProgramTarget target, ProgramFormat format, int len, IntPtr @string); + [GlEntryPoint("glProgramStringARB")] + _glProgramStringARB _ProgramStringARB { get; } + + // --- + + delegate void _glProgramSubroutineParametersuivNV(int target, int count, uint[] @params); + [GlEntryPoint("glProgramSubroutineParametersuivNV")] + _glProgramSubroutineParametersuivNV _ProgramSubroutineParametersuivNV { get; } + + delegate void _glProgramSubroutineParametersuivNV_ptr(int target, int count, void* @params); + [GlEntryPoint("glProgramSubroutineParametersuivNV")] + _glProgramSubroutineParametersuivNV_ptr _ProgramSubroutineParametersuivNV_ptr { get; } + + delegate void _glProgramSubroutineParametersuivNV_intptr(int target, int count, IntPtr @params); + [GlEntryPoint("glProgramSubroutineParametersuivNV")] + _glProgramSubroutineParametersuivNV_intptr _ProgramSubroutineParametersuivNV_intptr { get; } + + // --- + + delegate void _glProgramUniform1d(uint program, int location, double v0); + [GlEntryPoint("glProgramUniform1d")] + _glProgramUniform1d _ProgramUniform1d { get; } + + // --- + + delegate void _glProgramUniform1dEXT(uint program, int location, double x); + [GlEntryPoint("glProgramUniform1dEXT")] + _glProgramUniform1dEXT _ProgramUniform1dEXT { get; } + + // --- + + delegate void _glProgramUniform1dv(uint program, int location, int count, double[] value); + [GlEntryPoint("glProgramUniform1dv")] + _glProgramUniform1dv _ProgramUniform1dv { get; } + + delegate void _glProgramUniform1dv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform1dv")] + _glProgramUniform1dv_ptr _ProgramUniform1dv_ptr { get; } + + delegate void _glProgramUniform1dv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform1dv")] + _glProgramUniform1dv_intptr _ProgramUniform1dv_intptr { get; } + + // --- + + delegate void _glProgramUniform1dvEXT(uint program, int location, int count, double[] value); + [GlEntryPoint("glProgramUniform1dvEXT")] + _glProgramUniform1dvEXT _ProgramUniform1dvEXT { get; } + + delegate void _glProgramUniform1dvEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform1dvEXT")] + _glProgramUniform1dvEXT_ptr _ProgramUniform1dvEXT_ptr { get; } + + delegate void _glProgramUniform1dvEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform1dvEXT")] + _glProgramUniform1dvEXT_intptr _ProgramUniform1dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform1f(uint program, int location, float v0); + [GlEntryPoint("glProgramUniform1f")] + _glProgramUniform1f _ProgramUniform1f { get; } + + // --- + + delegate void _glProgramUniform1fEXT(uint program, int location, float v0); + [GlEntryPoint("glProgramUniform1fEXT")] + _glProgramUniform1fEXT _ProgramUniform1fEXT { get; } + + // --- + + delegate void _glProgramUniform1fv(uint program, int location, int count, float[] value); + [GlEntryPoint("glProgramUniform1fv")] + _glProgramUniform1fv _ProgramUniform1fv { get; } + + delegate void _glProgramUniform1fv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform1fv")] + _glProgramUniform1fv_ptr _ProgramUniform1fv_ptr { get; } + + delegate void _glProgramUniform1fv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform1fv")] + _glProgramUniform1fv_intptr _ProgramUniform1fv_intptr { get; } + + // --- + + delegate void _glProgramUniform1fvEXT(uint program, int location, int count, float[] value); + [GlEntryPoint("glProgramUniform1fvEXT")] + _glProgramUniform1fvEXT _ProgramUniform1fvEXT { get; } + + delegate void _glProgramUniform1fvEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform1fvEXT")] + _glProgramUniform1fvEXT_ptr _ProgramUniform1fvEXT_ptr { get; } + + delegate void _glProgramUniform1fvEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform1fvEXT")] + _glProgramUniform1fvEXT_intptr _ProgramUniform1fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform1i(uint program, int location, int v0); + [GlEntryPoint("glProgramUniform1i")] + _glProgramUniform1i _ProgramUniform1i { get; } + + // --- + + delegate void _glProgramUniform1i64ARB(uint program, int location, Int64 x); + [GlEntryPoint("glProgramUniform1i64ARB")] + _glProgramUniform1i64ARB _ProgramUniform1i64ARB { get; } + + // --- + + delegate void _glProgramUniform1i64NV(uint program, int location, Int64 x); + [GlEntryPoint("glProgramUniform1i64NV")] + _glProgramUniform1i64NV _ProgramUniform1i64NV { get; } + + // --- + + delegate void _glProgramUniform1i64vARB(uint program, int location, int count, Int64[] value); + [GlEntryPoint("glProgramUniform1i64vARB")] + _glProgramUniform1i64vARB _ProgramUniform1i64vARB { get; } + + delegate void _glProgramUniform1i64vARB_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform1i64vARB")] + _glProgramUniform1i64vARB_ptr _ProgramUniform1i64vARB_ptr { get; } + + delegate void _glProgramUniform1i64vARB_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform1i64vARB")] + _glProgramUniform1i64vARB_intptr _ProgramUniform1i64vARB_intptr { get; } + + // --- + + delegate void _glProgramUniform1i64vNV(uint program, int location, int count, Int64[] value); + [GlEntryPoint("glProgramUniform1i64vNV")] + _glProgramUniform1i64vNV _ProgramUniform1i64vNV { get; } + + delegate void _glProgramUniform1i64vNV_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform1i64vNV")] + _glProgramUniform1i64vNV_ptr _ProgramUniform1i64vNV_ptr { get; } + + delegate void _glProgramUniform1i64vNV_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform1i64vNV")] + _glProgramUniform1i64vNV_intptr _ProgramUniform1i64vNV_intptr { get; } + + // --- + + delegate void _glProgramUniform1iEXT(uint program, int location, int v0); + [GlEntryPoint("glProgramUniform1iEXT")] + _glProgramUniform1iEXT _ProgramUniform1iEXT { get; } + + // --- + + delegate void _glProgramUniform1iv(uint program, int location, int count, int[] value); + [GlEntryPoint("glProgramUniform1iv")] + _glProgramUniform1iv _ProgramUniform1iv { get; } + + delegate void _glProgramUniform1iv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform1iv")] + _glProgramUniform1iv_ptr _ProgramUniform1iv_ptr { get; } + + delegate void _glProgramUniform1iv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform1iv")] + _glProgramUniform1iv_intptr _ProgramUniform1iv_intptr { get; } + + // --- + + delegate void _glProgramUniform1ivEXT(uint program, int location, int count, int[] value); + [GlEntryPoint("glProgramUniform1ivEXT")] + _glProgramUniform1ivEXT _ProgramUniform1ivEXT { get; } + + delegate void _glProgramUniform1ivEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform1ivEXT")] + _glProgramUniform1ivEXT_ptr _ProgramUniform1ivEXT_ptr { get; } + + delegate void _glProgramUniform1ivEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform1ivEXT")] + _glProgramUniform1ivEXT_intptr _ProgramUniform1ivEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform1ui(uint program, int location, uint v0); + [GlEntryPoint("glProgramUniform1ui")] + _glProgramUniform1ui _ProgramUniform1ui { get; } + + // --- + + delegate void _glProgramUniform1ui64ARB(uint program, int location, UInt64 x); + [GlEntryPoint("glProgramUniform1ui64ARB")] + _glProgramUniform1ui64ARB _ProgramUniform1ui64ARB { get; } + + // --- + + delegate void _glProgramUniform1ui64NV(uint program, int location, UInt64 x); + [GlEntryPoint("glProgramUniform1ui64NV")] + _glProgramUniform1ui64NV _ProgramUniform1ui64NV { get; } + + // --- + + delegate void _glProgramUniform1ui64vARB(uint program, int location, int count, UInt64[] value); + [GlEntryPoint("glProgramUniform1ui64vARB")] + _glProgramUniform1ui64vARB _ProgramUniform1ui64vARB { get; } + + delegate void _glProgramUniform1ui64vARB_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform1ui64vARB")] + _glProgramUniform1ui64vARB_ptr _ProgramUniform1ui64vARB_ptr { get; } + + delegate void _glProgramUniform1ui64vARB_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform1ui64vARB")] + _glProgramUniform1ui64vARB_intptr _ProgramUniform1ui64vARB_intptr { get; } + + // --- + + delegate void _glProgramUniform1ui64vNV(uint program, int location, int count, UInt64[] value); + [GlEntryPoint("glProgramUniform1ui64vNV")] + _glProgramUniform1ui64vNV _ProgramUniform1ui64vNV { get; } + + delegate void _glProgramUniform1ui64vNV_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform1ui64vNV")] + _glProgramUniform1ui64vNV_ptr _ProgramUniform1ui64vNV_ptr { get; } + + delegate void _glProgramUniform1ui64vNV_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform1ui64vNV")] + _glProgramUniform1ui64vNV_intptr _ProgramUniform1ui64vNV_intptr { get; } + + // --- + + delegate void _glProgramUniform1uiEXT(uint program, int location, uint v0); + [GlEntryPoint("glProgramUniform1uiEXT")] + _glProgramUniform1uiEXT _ProgramUniform1uiEXT { get; } + + // --- + + delegate void _glProgramUniform1uiv(uint program, int location, int count, uint[] value); + [GlEntryPoint("glProgramUniform1uiv")] + _glProgramUniform1uiv _ProgramUniform1uiv { get; } + + delegate void _glProgramUniform1uiv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform1uiv")] + _glProgramUniform1uiv_ptr _ProgramUniform1uiv_ptr { get; } + + delegate void _glProgramUniform1uiv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform1uiv")] + _glProgramUniform1uiv_intptr _ProgramUniform1uiv_intptr { get; } + + // --- + + delegate void _glProgramUniform1uivEXT(uint program, int location, int count, uint[] value); + [GlEntryPoint("glProgramUniform1uivEXT")] + _glProgramUniform1uivEXT _ProgramUniform1uivEXT { get; } + + delegate void _glProgramUniform1uivEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform1uivEXT")] + _glProgramUniform1uivEXT_ptr _ProgramUniform1uivEXT_ptr { get; } + + delegate void _glProgramUniform1uivEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform1uivEXT")] + _glProgramUniform1uivEXT_intptr _ProgramUniform1uivEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform2d(uint program, int location, double v0, double v1); + [GlEntryPoint("glProgramUniform2d")] + _glProgramUniform2d _ProgramUniform2d { get; } + + // --- + + delegate void _glProgramUniform2dEXT(uint program, int location, double x, double y); + [GlEntryPoint("glProgramUniform2dEXT")] + _glProgramUniform2dEXT _ProgramUniform2dEXT { get; } + + // --- + + delegate void _glProgramUniform2dv(uint program, int location, int count, double[] value); + [GlEntryPoint("glProgramUniform2dv")] + _glProgramUniform2dv _ProgramUniform2dv { get; } + + delegate void _glProgramUniform2dv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform2dv")] + _glProgramUniform2dv_ptr _ProgramUniform2dv_ptr { get; } + + delegate void _glProgramUniform2dv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform2dv")] + _glProgramUniform2dv_intptr _ProgramUniform2dv_intptr { get; } + + // --- + + delegate void _glProgramUniform2dvEXT(uint program, int location, int count, double[] value); + [GlEntryPoint("glProgramUniform2dvEXT")] + _glProgramUniform2dvEXT _ProgramUniform2dvEXT { get; } + + delegate void _glProgramUniform2dvEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform2dvEXT")] + _glProgramUniform2dvEXT_ptr _ProgramUniform2dvEXT_ptr { get; } + + delegate void _glProgramUniform2dvEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform2dvEXT")] + _glProgramUniform2dvEXT_intptr _ProgramUniform2dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform2f(uint program, int location, float v0, float v1); + [GlEntryPoint("glProgramUniform2f")] + _glProgramUniform2f _ProgramUniform2f { get; } + + // --- + + delegate void _glProgramUniform2fEXT(uint program, int location, float v0, float v1); + [GlEntryPoint("glProgramUniform2fEXT")] + _glProgramUniform2fEXT _ProgramUniform2fEXT { get; } + + // --- + + delegate void _glProgramUniform2fv(uint program, int location, int count, float[] value); + [GlEntryPoint("glProgramUniform2fv")] + _glProgramUniform2fv _ProgramUniform2fv { get; } + + delegate void _glProgramUniform2fv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform2fv")] + _glProgramUniform2fv_ptr _ProgramUniform2fv_ptr { get; } + + delegate void _glProgramUniform2fv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform2fv")] + _glProgramUniform2fv_intptr _ProgramUniform2fv_intptr { get; } + + // --- + + delegate void _glProgramUniform2fvEXT(uint program, int location, int count, float[] value); + [GlEntryPoint("glProgramUniform2fvEXT")] + _glProgramUniform2fvEXT _ProgramUniform2fvEXT { get; } + + delegate void _glProgramUniform2fvEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform2fvEXT")] + _glProgramUniform2fvEXT_ptr _ProgramUniform2fvEXT_ptr { get; } + + delegate void _glProgramUniform2fvEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform2fvEXT")] + _glProgramUniform2fvEXT_intptr _ProgramUniform2fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform2i(uint program, int location, int v0, int v1); + [GlEntryPoint("glProgramUniform2i")] + _glProgramUniform2i _ProgramUniform2i { get; } + + // --- + + delegate void _glProgramUniform2i64ARB(uint program, int location, Int64 x, Int64 y); + [GlEntryPoint("glProgramUniform2i64ARB")] + _glProgramUniform2i64ARB _ProgramUniform2i64ARB { get; } + + // --- + + delegate void _glProgramUniform2i64NV(uint program, int location, Int64 x, Int64 y); + [GlEntryPoint("glProgramUniform2i64NV")] + _glProgramUniform2i64NV _ProgramUniform2i64NV { get; } + + // --- + + delegate void _glProgramUniform2i64vARB(uint program, int location, int count, Int64[] value); + [GlEntryPoint("glProgramUniform2i64vARB")] + _glProgramUniform2i64vARB _ProgramUniform2i64vARB { get; } + + delegate void _glProgramUniform2i64vARB_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform2i64vARB")] + _glProgramUniform2i64vARB_ptr _ProgramUniform2i64vARB_ptr { get; } + + delegate void _glProgramUniform2i64vARB_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform2i64vARB")] + _glProgramUniform2i64vARB_intptr _ProgramUniform2i64vARB_intptr { get; } + + // --- + + delegate void _glProgramUniform2i64vNV(uint program, int location, int count, Int64[] value); + [GlEntryPoint("glProgramUniform2i64vNV")] + _glProgramUniform2i64vNV _ProgramUniform2i64vNV { get; } + + delegate void _glProgramUniform2i64vNV_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform2i64vNV")] + _glProgramUniform2i64vNV_ptr _ProgramUniform2i64vNV_ptr { get; } + + delegate void _glProgramUniform2i64vNV_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform2i64vNV")] + _glProgramUniform2i64vNV_intptr _ProgramUniform2i64vNV_intptr { get; } + + // --- + + delegate void _glProgramUniform2iEXT(uint program, int location, int v0, int v1); + [GlEntryPoint("glProgramUniform2iEXT")] + _glProgramUniform2iEXT _ProgramUniform2iEXT { get; } + + // --- + + delegate void _glProgramUniform2iv(uint program, int location, int count, int[] value); + [GlEntryPoint("glProgramUniform2iv")] + _glProgramUniform2iv _ProgramUniform2iv { get; } + + delegate void _glProgramUniform2iv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform2iv")] + _glProgramUniform2iv_ptr _ProgramUniform2iv_ptr { get; } + + delegate void _glProgramUniform2iv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform2iv")] + _glProgramUniform2iv_intptr _ProgramUniform2iv_intptr { get; } + + // --- + + delegate void _glProgramUniform2ivEXT(uint program, int location, int count, int[] value); + [GlEntryPoint("glProgramUniform2ivEXT")] + _glProgramUniform2ivEXT _ProgramUniform2ivEXT { get; } + + delegate void _glProgramUniform2ivEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform2ivEXT")] + _glProgramUniform2ivEXT_ptr _ProgramUniform2ivEXT_ptr { get; } + + delegate void _glProgramUniform2ivEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform2ivEXT")] + _glProgramUniform2ivEXT_intptr _ProgramUniform2ivEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform2ui(uint program, int location, uint v0, uint v1); + [GlEntryPoint("glProgramUniform2ui")] + _glProgramUniform2ui _ProgramUniform2ui { get; } + + // --- + + delegate void _glProgramUniform2ui64ARB(uint program, int location, UInt64 x, UInt64 y); + [GlEntryPoint("glProgramUniform2ui64ARB")] + _glProgramUniform2ui64ARB _ProgramUniform2ui64ARB { get; } + + // --- + + delegate void _glProgramUniform2ui64NV(uint program, int location, UInt64 x, UInt64 y); + [GlEntryPoint("glProgramUniform2ui64NV")] + _glProgramUniform2ui64NV _ProgramUniform2ui64NV { get; } + + // --- + + delegate void _glProgramUniform2ui64vARB(uint program, int location, int count, UInt64[] value); + [GlEntryPoint("glProgramUniform2ui64vARB")] + _glProgramUniform2ui64vARB _ProgramUniform2ui64vARB { get; } + + delegate void _glProgramUniform2ui64vARB_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform2ui64vARB")] + _glProgramUniform2ui64vARB_ptr _ProgramUniform2ui64vARB_ptr { get; } + + delegate void _glProgramUniform2ui64vARB_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform2ui64vARB")] + _glProgramUniform2ui64vARB_intptr _ProgramUniform2ui64vARB_intptr { get; } + + // --- + + delegate void _glProgramUniform2ui64vNV(uint program, int location, int count, UInt64[] value); + [GlEntryPoint("glProgramUniform2ui64vNV")] + _glProgramUniform2ui64vNV _ProgramUniform2ui64vNV { get; } + + delegate void _glProgramUniform2ui64vNV_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform2ui64vNV")] + _glProgramUniform2ui64vNV_ptr _ProgramUniform2ui64vNV_ptr { get; } + + delegate void _glProgramUniform2ui64vNV_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform2ui64vNV")] + _glProgramUniform2ui64vNV_intptr _ProgramUniform2ui64vNV_intptr { get; } + + // --- + + delegate void _glProgramUniform2uiEXT(uint program, int location, uint v0, uint v1); + [GlEntryPoint("glProgramUniform2uiEXT")] + _glProgramUniform2uiEXT _ProgramUniform2uiEXT { get; } + + // --- + + delegate void _glProgramUniform2uiv(uint program, int location, int count, uint[] value); + [GlEntryPoint("glProgramUniform2uiv")] + _glProgramUniform2uiv _ProgramUniform2uiv { get; } + + delegate void _glProgramUniform2uiv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform2uiv")] + _glProgramUniform2uiv_ptr _ProgramUniform2uiv_ptr { get; } + + delegate void _glProgramUniform2uiv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform2uiv")] + _glProgramUniform2uiv_intptr _ProgramUniform2uiv_intptr { get; } + + // --- + + delegate void _glProgramUniform2uivEXT(uint program, int location, int count, uint[] value); + [GlEntryPoint("glProgramUniform2uivEXT")] + _glProgramUniform2uivEXT _ProgramUniform2uivEXT { get; } + + delegate void _glProgramUniform2uivEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform2uivEXT")] + _glProgramUniform2uivEXT_ptr _ProgramUniform2uivEXT_ptr { get; } + + delegate void _glProgramUniform2uivEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform2uivEXT")] + _glProgramUniform2uivEXT_intptr _ProgramUniform2uivEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform3d(uint program, int location, double v0, double v1, double v2); + [GlEntryPoint("glProgramUniform3d")] + _glProgramUniform3d _ProgramUniform3d { get; } + + // --- + + delegate void _glProgramUniform3dEXT(uint program, int location, double x, double y, double z); + [GlEntryPoint("glProgramUniform3dEXT")] + _glProgramUniform3dEXT _ProgramUniform3dEXT { get; } + + // --- + + delegate void _glProgramUniform3dv(uint program, int location, int count, double[] value); + [GlEntryPoint("glProgramUniform3dv")] + _glProgramUniform3dv _ProgramUniform3dv { get; } + + delegate void _glProgramUniform3dv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform3dv")] + _glProgramUniform3dv_ptr _ProgramUniform3dv_ptr { get; } + + delegate void _glProgramUniform3dv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform3dv")] + _glProgramUniform3dv_intptr _ProgramUniform3dv_intptr { get; } + + // --- + + delegate void _glProgramUniform3dvEXT(uint program, int location, int count, double[] value); + [GlEntryPoint("glProgramUniform3dvEXT")] + _glProgramUniform3dvEXT _ProgramUniform3dvEXT { get; } + + delegate void _glProgramUniform3dvEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform3dvEXT")] + _glProgramUniform3dvEXT_ptr _ProgramUniform3dvEXT_ptr { get; } + + delegate void _glProgramUniform3dvEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform3dvEXT")] + _glProgramUniform3dvEXT_intptr _ProgramUniform3dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform3f(uint program, int location, float v0, float v1, float v2); + [GlEntryPoint("glProgramUniform3f")] + _glProgramUniform3f _ProgramUniform3f { get; } + + // --- + + delegate void _glProgramUniform3fEXT(uint program, int location, float v0, float v1, float v2); + [GlEntryPoint("glProgramUniform3fEXT")] + _glProgramUniform3fEXT _ProgramUniform3fEXT { get; } + + // --- + + delegate void _glProgramUniform3fv(uint program, int location, int count, float[] value); + [GlEntryPoint("glProgramUniform3fv")] + _glProgramUniform3fv _ProgramUniform3fv { get; } + + delegate void _glProgramUniform3fv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform3fv")] + _glProgramUniform3fv_ptr _ProgramUniform3fv_ptr { get; } + + delegate void _glProgramUniform3fv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform3fv")] + _glProgramUniform3fv_intptr _ProgramUniform3fv_intptr { get; } + + // --- + + delegate void _glProgramUniform3fvEXT(uint program, int location, int count, float[] value); + [GlEntryPoint("glProgramUniform3fvEXT")] + _glProgramUniform3fvEXT _ProgramUniform3fvEXT { get; } + + delegate void _glProgramUniform3fvEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform3fvEXT")] + _glProgramUniform3fvEXT_ptr _ProgramUniform3fvEXT_ptr { get; } + + delegate void _glProgramUniform3fvEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform3fvEXT")] + _glProgramUniform3fvEXT_intptr _ProgramUniform3fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform3i(uint program, int location, int v0, int v1, int v2); + [GlEntryPoint("glProgramUniform3i")] + _glProgramUniform3i _ProgramUniform3i { get; } + + // --- + + delegate void _glProgramUniform3i64ARB(uint program, int location, Int64 x, Int64 y, Int64 z); + [GlEntryPoint("glProgramUniform3i64ARB")] + _glProgramUniform3i64ARB _ProgramUniform3i64ARB { get; } + + // --- + + delegate void _glProgramUniform3i64NV(uint program, int location, Int64 x, Int64 y, Int64 z); + [GlEntryPoint("glProgramUniform3i64NV")] + _glProgramUniform3i64NV _ProgramUniform3i64NV { get; } + + // --- + + delegate void _glProgramUniform3i64vARB(uint program, int location, int count, Int64[] value); + [GlEntryPoint("glProgramUniform3i64vARB")] + _glProgramUniform3i64vARB _ProgramUniform3i64vARB { get; } + + delegate void _glProgramUniform3i64vARB_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform3i64vARB")] + _glProgramUniform3i64vARB_ptr _ProgramUniform3i64vARB_ptr { get; } + + delegate void _glProgramUniform3i64vARB_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform3i64vARB")] + _glProgramUniform3i64vARB_intptr _ProgramUniform3i64vARB_intptr { get; } + + // --- + + delegate void _glProgramUniform3i64vNV(uint program, int location, int count, Int64[] value); + [GlEntryPoint("glProgramUniform3i64vNV")] + _glProgramUniform3i64vNV _ProgramUniform3i64vNV { get; } + + delegate void _glProgramUniform3i64vNV_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform3i64vNV")] + _glProgramUniform3i64vNV_ptr _ProgramUniform3i64vNV_ptr { get; } + + delegate void _glProgramUniform3i64vNV_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform3i64vNV")] + _glProgramUniform3i64vNV_intptr _ProgramUniform3i64vNV_intptr { get; } + + // --- + + delegate void _glProgramUniform3iEXT(uint program, int location, int v0, int v1, int v2); + [GlEntryPoint("glProgramUniform3iEXT")] + _glProgramUniform3iEXT _ProgramUniform3iEXT { get; } + + // --- + + delegate void _glProgramUniform3iv(uint program, int location, int count, int[] value); + [GlEntryPoint("glProgramUniform3iv")] + _glProgramUniform3iv _ProgramUniform3iv { get; } + + delegate void _glProgramUniform3iv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform3iv")] + _glProgramUniform3iv_ptr _ProgramUniform3iv_ptr { get; } + + delegate void _glProgramUniform3iv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform3iv")] + _glProgramUniform3iv_intptr _ProgramUniform3iv_intptr { get; } + + // --- + + delegate void _glProgramUniform3ivEXT(uint program, int location, int count, int[] value); + [GlEntryPoint("glProgramUniform3ivEXT")] + _glProgramUniform3ivEXT _ProgramUniform3ivEXT { get; } + + delegate void _glProgramUniform3ivEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform3ivEXT")] + _glProgramUniform3ivEXT_ptr _ProgramUniform3ivEXT_ptr { get; } + + delegate void _glProgramUniform3ivEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform3ivEXT")] + _glProgramUniform3ivEXT_intptr _ProgramUniform3ivEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform3ui(uint program, int location, uint v0, uint v1, uint v2); + [GlEntryPoint("glProgramUniform3ui")] + _glProgramUniform3ui _ProgramUniform3ui { get; } + + // --- + + delegate void _glProgramUniform3ui64ARB(uint program, int location, UInt64 x, UInt64 y, UInt64 z); + [GlEntryPoint("glProgramUniform3ui64ARB")] + _glProgramUniform3ui64ARB _ProgramUniform3ui64ARB { get; } + + // --- + + delegate void _glProgramUniform3ui64NV(uint program, int location, UInt64 x, UInt64 y, UInt64 z); + [GlEntryPoint("glProgramUniform3ui64NV")] + _glProgramUniform3ui64NV _ProgramUniform3ui64NV { get; } + + // --- + + delegate void _glProgramUniform3ui64vARB(uint program, int location, int count, UInt64[] value); + [GlEntryPoint("glProgramUniform3ui64vARB")] + _glProgramUniform3ui64vARB _ProgramUniform3ui64vARB { get; } + + delegate void _glProgramUniform3ui64vARB_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform3ui64vARB")] + _glProgramUniform3ui64vARB_ptr _ProgramUniform3ui64vARB_ptr { get; } + + delegate void _glProgramUniform3ui64vARB_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform3ui64vARB")] + _glProgramUniform3ui64vARB_intptr _ProgramUniform3ui64vARB_intptr { get; } + + // --- + + delegate void _glProgramUniform3ui64vNV(uint program, int location, int count, UInt64[] value); + [GlEntryPoint("glProgramUniform3ui64vNV")] + _glProgramUniform3ui64vNV _ProgramUniform3ui64vNV { get; } + + delegate void _glProgramUniform3ui64vNV_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform3ui64vNV")] + _glProgramUniform3ui64vNV_ptr _ProgramUniform3ui64vNV_ptr { get; } + + delegate void _glProgramUniform3ui64vNV_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform3ui64vNV")] + _glProgramUniform3ui64vNV_intptr _ProgramUniform3ui64vNV_intptr { get; } + + // --- + + delegate void _glProgramUniform3uiEXT(uint program, int location, uint v0, uint v1, uint v2); + [GlEntryPoint("glProgramUniform3uiEXT")] + _glProgramUniform3uiEXT _ProgramUniform3uiEXT { get; } + + // --- + + delegate void _glProgramUniform3uiv(uint program, int location, int count, uint[] value); + [GlEntryPoint("glProgramUniform3uiv")] + _glProgramUniform3uiv _ProgramUniform3uiv { get; } + + delegate void _glProgramUniform3uiv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform3uiv")] + _glProgramUniform3uiv_ptr _ProgramUniform3uiv_ptr { get; } + + delegate void _glProgramUniform3uiv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform3uiv")] + _glProgramUniform3uiv_intptr _ProgramUniform3uiv_intptr { get; } + + // --- + + delegate void _glProgramUniform3uivEXT(uint program, int location, int count, uint[] value); + [GlEntryPoint("glProgramUniform3uivEXT")] + _glProgramUniform3uivEXT _ProgramUniform3uivEXT { get; } + + delegate void _glProgramUniform3uivEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform3uivEXT")] + _glProgramUniform3uivEXT_ptr _ProgramUniform3uivEXT_ptr { get; } + + delegate void _glProgramUniform3uivEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform3uivEXT")] + _glProgramUniform3uivEXT_intptr _ProgramUniform3uivEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform4d(uint program, int location, double v0, double v1, double v2, double v3); + [GlEntryPoint("glProgramUniform4d")] + _glProgramUniform4d _ProgramUniform4d { get; } + + // --- + + delegate void _glProgramUniform4dEXT(uint program, int location, double x, double y, double z, double w); + [GlEntryPoint("glProgramUniform4dEXT")] + _glProgramUniform4dEXT _ProgramUniform4dEXT { get; } + + // --- + + delegate void _glProgramUniform4dv(uint program, int location, int count, double[] value); + [GlEntryPoint("glProgramUniform4dv")] + _glProgramUniform4dv _ProgramUniform4dv { get; } + + delegate void _glProgramUniform4dv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform4dv")] + _glProgramUniform4dv_ptr _ProgramUniform4dv_ptr { get; } + + delegate void _glProgramUniform4dv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform4dv")] + _glProgramUniform4dv_intptr _ProgramUniform4dv_intptr { get; } + + // --- + + delegate void _glProgramUniform4dvEXT(uint program, int location, int count, double[] value); + [GlEntryPoint("glProgramUniform4dvEXT")] + _glProgramUniform4dvEXT _ProgramUniform4dvEXT { get; } + + delegate void _glProgramUniform4dvEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform4dvEXT")] + _glProgramUniform4dvEXT_ptr _ProgramUniform4dvEXT_ptr { get; } + + delegate void _glProgramUniform4dvEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform4dvEXT")] + _glProgramUniform4dvEXT_intptr _ProgramUniform4dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform4f(uint program, int location, float v0, float v1, float v2, float v3); + [GlEntryPoint("glProgramUniform4f")] + _glProgramUniform4f _ProgramUniform4f { get; } + + // --- + + delegate void _glProgramUniform4fEXT(uint program, int location, float v0, float v1, float v2, float v3); + [GlEntryPoint("glProgramUniform4fEXT")] + _glProgramUniform4fEXT _ProgramUniform4fEXT { get; } + + // --- + + delegate void _glProgramUniform4fv(uint program, int location, int count, float[] value); + [GlEntryPoint("glProgramUniform4fv")] + _glProgramUniform4fv _ProgramUniform4fv { get; } + + delegate void _glProgramUniform4fv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform4fv")] + _glProgramUniform4fv_ptr _ProgramUniform4fv_ptr { get; } + + delegate void _glProgramUniform4fv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform4fv")] + _glProgramUniform4fv_intptr _ProgramUniform4fv_intptr { get; } + + // --- + + delegate void _glProgramUniform4fvEXT(uint program, int location, int count, float[] value); + [GlEntryPoint("glProgramUniform4fvEXT")] + _glProgramUniform4fvEXT _ProgramUniform4fvEXT { get; } + + delegate void _glProgramUniform4fvEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform4fvEXT")] + _glProgramUniform4fvEXT_ptr _ProgramUniform4fvEXT_ptr { get; } + + delegate void _glProgramUniform4fvEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform4fvEXT")] + _glProgramUniform4fvEXT_intptr _ProgramUniform4fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform4i(uint program, int location, int v0, int v1, int v2, int v3); + [GlEntryPoint("glProgramUniform4i")] + _glProgramUniform4i _ProgramUniform4i { get; } + + // --- + + delegate void _glProgramUniform4i64ARB(uint program, int location, Int64 x, Int64 y, Int64 z, Int64 w); + [GlEntryPoint("glProgramUniform4i64ARB")] + _glProgramUniform4i64ARB _ProgramUniform4i64ARB { get; } + + // --- + + delegate void _glProgramUniform4i64NV(uint program, int location, Int64 x, Int64 y, Int64 z, Int64 w); + [GlEntryPoint("glProgramUniform4i64NV")] + _glProgramUniform4i64NV _ProgramUniform4i64NV { get; } + + // --- + + delegate void _glProgramUniform4i64vARB(uint program, int location, int count, Int64[] value); + [GlEntryPoint("glProgramUniform4i64vARB")] + _glProgramUniform4i64vARB _ProgramUniform4i64vARB { get; } + + delegate void _glProgramUniform4i64vARB_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform4i64vARB")] + _glProgramUniform4i64vARB_ptr _ProgramUniform4i64vARB_ptr { get; } + + delegate void _glProgramUniform4i64vARB_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform4i64vARB")] + _glProgramUniform4i64vARB_intptr _ProgramUniform4i64vARB_intptr { get; } + + // --- + + delegate void _glProgramUniform4i64vNV(uint program, int location, int count, Int64[] value); + [GlEntryPoint("glProgramUniform4i64vNV")] + _glProgramUniform4i64vNV _ProgramUniform4i64vNV { get; } + + delegate void _glProgramUniform4i64vNV_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform4i64vNV")] + _glProgramUniform4i64vNV_ptr _ProgramUniform4i64vNV_ptr { get; } + + delegate void _glProgramUniform4i64vNV_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform4i64vNV")] + _glProgramUniform4i64vNV_intptr _ProgramUniform4i64vNV_intptr { get; } + + // --- + + delegate void _glProgramUniform4iEXT(uint program, int location, int v0, int v1, int v2, int v3); + [GlEntryPoint("glProgramUniform4iEXT")] + _glProgramUniform4iEXT _ProgramUniform4iEXT { get; } + + // --- + + delegate void _glProgramUniform4iv(uint program, int location, int count, int[] value); + [GlEntryPoint("glProgramUniform4iv")] + _glProgramUniform4iv _ProgramUniform4iv { get; } + + delegate void _glProgramUniform4iv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform4iv")] + _glProgramUniform4iv_ptr _ProgramUniform4iv_ptr { get; } + + delegate void _glProgramUniform4iv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform4iv")] + _glProgramUniform4iv_intptr _ProgramUniform4iv_intptr { get; } + + // --- + + delegate void _glProgramUniform4ivEXT(uint program, int location, int count, int[] value); + [GlEntryPoint("glProgramUniform4ivEXT")] + _glProgramUniform4ivEXT _ProgramUniform4ivEXT { get; } + + delegate void _glProgramUniform4ivEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform4ivEXT")] + _glProgramUniform4ivEXT_ptr _ProgramUniform4ivEXT_ptr { get; } + + delegate void _glProgramUniform4ivEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform4ivEXT")] + _glProgramUniform4ivEXT_intptr _ProgramUniform4ivEXT_intptr { get; } + + // --- + + delegate void _glProgramUniform4ui(uint program, int location, uint v0, uint v1, uint v2, uint v3); + [GlEntryPoint("glProgramUniform4ui")] + _glProgramUniform4ui _ProgramUniform4ui { get; } + + // --- + + delegate void _glProgramUniform4ui64ARB(uint program, int location, UInt64 x, UInt64 y, UInt64 z, UInt64 w); + [GlEntryPoint("glProgramUniform4ui64ARB")] + _glProgramUniform4ui64ARB _ProgramUniform4ui64ARB { get; } + + // --- + + delegate void _glProgramUniform4ui64NV(uint program, int location, UInt64 x, UInt64 y, UInt64 z, UInt64 w); + [GlEntryPoint("glProgramUniform4ui64NV")] + _glProgramUniform4ui64NV _ProgramUniform4ui64NV { get; } + + // --- + + delegate void _glProgramUniform4ui64vARB(uint program, int location, int count, UInt64[] value); + [GlEntryPoint("glProgramUniform4ui64vARB")] + _glProgramUniform4ui64vARB _ProgramUniform4ui64vARB { get; } + + delegate void _glProgramUniform4ui64vARB_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform4ui64vARB")] + _glProgramUniform4ui64vARB_ptr _ProgramUniform4ui64vARB_ptr { get; } + + delegate void _glProgramUniform4ui64vARB_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform4ui64vARB")] + _glProgramUniform4ui64vARB_intptr _ProgramUniform4ui64vARB_intptr { get; } + + // --- + + delegate void _glProgramUniform4ui64vNV(uint program, int location, int count, UInt64[] value); + [GlEntryPoint("glProgramUniform4ui64vNV")] + _glProgramUniform4ui64vNV _ProgramUniform4ui64vNV { get; } + + delegate void _glProgramUniform4ui64vNV_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform4ui64vNV")] + _glProgramUniform4ui64vNV_ptr _ProgramUniform4ui64vNV_ptr { get; } + + delegate void _glProgramUniform4ui64vNV_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform4ui64vNV")] + _glProgramUniform4ui64vNV_intptr _ProgramUniform4ui64vNV_intptr { get; } + + // --- + + delegate void _glProgramUniform4uiEXT(uint program, int location, uint v0, uint v1, uint v2, uint v3); + [GlEntryPoint("glProgramUniform4uiEXT")] + _glProgramUniform4uiEXT _ProgramUniform4uiEXT { get; } + + // --- + + delegate void _glProgramUniform4uiv(uint program, int location, int count, uint[] value); + [GlEntryPoint("glProgramUniform4uiv")] + _glProgramUniform4uiv _ProgramUniform4uiv { get; } + + delegate void _glProgramUniform4uiv_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform4uiv")] + _glProgramUniform4uiv_ptr _ProgramUniform4uiv_ptr { get; } + + delegate void _glProgramUniform4uiv_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform4uiv")] + _glProgramUniform4uiv_intptr _ProgramUniform4uiv_intptr { get; } + + // --- + + delegate void _glProgramUniform4uivEXT(uint program, int location, int count, uint[] value); + [GlEntryPoint("glProgramUniform4uivEXT")] + _glProgramUniform4uivEXT _ProgramUniform4uivEXT { get; } + + delegate void _glProgramUniform4uivEXT_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniform4uivEXT")] + _glProgramUniform4uivEXT_ptr _ProgramUniform4uivEXT_ptr { get; } + + delegate void _glProgramUniform4uivEXT_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniform4uivEXT")] + _glProgramUniform4uivEXT_intptr _ProgramUniform4uivEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformHandleui64ARB(uint program, int location, UInt64 value); + [GlEntryPoint("glProgramUniformHandleui64ARB")] + _glProgramUniformHandleui64ARB _ProgramUniformHandleui64ARB { get; } + + // --- + + delegate void _glProgramUniformHandleui64IMG(uint program, int location, UInt64 value); + [GlEntryPoint("glProgramUniformHandleui64IMG")] + _glProgramUniformHandleui64IMG _ProgramUniformHandleui64IMG { get; } + + // --- + + delegate void _glProgramUniformHandleui64NV(uint program, int location, UInt64 value); + [GlEntryPoint("glProgramUniformHandleui64NV")] + _glProgramUniformHandleui64NV _ProgramUniformHandleui64NV { get; } + + // --- + + delegate void _glProgramUniformHandleui64vARB(uint program, int location, int count, UInt64[] values); + [GlEntryPoint("glProgramUniformHandleui64vARB")] + _glProgramUniformHandleui64vARB _ProgramUniformHandleui64vARB { get; } + + delegate void _glProgramUniformHandleui64vARB_ptr(uint program, int location, int count, void* values); + [GlEntryPoint("glProgramUniformHandleui64vARB")] + _glProgramUniformHandleui64vARB_ptr _ProgramUniformHandleui64vARB_ptr { get; } + + delegate void _glProgramUniformHandleui64vARB_intptr(uint program, int location, int count, IntPtr values); + [GlEntryPoint("glProgramUniformHandleui64vARB")] + _glProgramUniformHandleui64vARB_intptr _ProgramUniformHandleui64vARB_intptr { get; } + + // --- + + delegate void _glProgramUniformHandleui64vIMG(uint program, int location, int count, UInt64[] values); + [GlEntryPoint("glProgramUniformHandleui64vIMG")] + _glProgramUniformHandleui64vIMG _ProgramUniformHandleui64vIMG { get; } + + delegate void _glProgramUniformHandleui64vIMG_ptr(uint program, int location, int count, void* values); + [GlEntryPoint("glProgramUniformHandleui64vIMG")] + _glProgramUniformHandleui64vIMG_ptr _ProgramUniformHandleui64vIMG_ptr { get; } + + delegate void _glProgramUniformHandleui64vIMG_intptr(uint program, int location, int count, IntPtr values); + [GlEntryPoint("glProgramUniformHandleui64vIMG")] + _glProgramUniformHandleui64vIMG_intptr _ProgramUniformHandleui64vIMG_intptr { get; } + + // --- + + delegate void _glProgramUniformHandleui64vNV(uint program, int location, int count, UInt64[] values); + [GlEntryPoint("glProgramUniformHandleui64vNV")] + _glProgramUniformHandleui64vNV _ProgramUniformHandleui64vNV { get; } + + delegate void _glProgramUniformHandleui64vNV_ptr(uint program, int location, int count, void* values); + [GlEntryPoint("glProgramUniformHandleui64vNV")] + _glProgramUniformHandleui64vNV_ptr _ProgramUniformHandleui64vNV_ptr { get; } + + delegate void _glProgramUniformHandleui64vNV_intptr(uint program, int location, int count, IntPtr values); + [GlEntryPoint("glProgramUniformHandleui64vNV")] + _glProgramUniformHandleui64vNV_intptr _ProgramUniformHandleui64vNV_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix2dv(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix2dv")] + _glProgramUniformMatrix2dv _ProgramUniformMatrix2dv { get; } + + delegate void _glProgramUniformMatrix2dv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix2dv")] + _glProgramUniformMatrix2dv_ptr _ProgramUniformMatrix2dv_ptr { get; } + + delegate void _glProgramUniformMatrix2dv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix2dv")] + _glProgramUniformMatrix2dv_intptr _ProgramUniformMatrix2dv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix2dvEXT(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix2dvEXT")] + _glProgramUniformMatrix2dvEXT _ProgramUniformMatrix2dvEXT { get; } + + delegate void _glProgramUniformMatrix2dvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix2dvEXT")] + _glProgramUniformMatrix2dvEXT_ptr _ProgramUniformMatrix2dvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix2dvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix2dvEXT")] + _glProgramUniformMatrix2dvEXT_intptr _ProgramUniformMatrix2dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix2fv(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix2fv")] + _glProgramUniformMatrix2fv _ProgramUniformMatrix2fv { get; } + + delegate void _glProgramUniformMatrix2fv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix2fv")] + _glProgramUniformMatrix2fv_ptr _ProgramUniformMatrix2fv_ptr { get; } + + delegate void _glProgramUniformMatrix2fv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix2fv")] + _glProgramUniformMatrix2fv_intptr _ProgramUniformMatrix2fv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix2fvEXT(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix2fvEXT")] + _glProgramUniformMatrix2fvEXT _ProgramUniformMatrix2fvEXT { get; } + + delegate void _glProgramUniformMatrix2fvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix2fvEXT")] + _glProgramUniformMatrix2fvEXT_ptr _ProgramUniformMatrix2fvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix2fvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix2fvEXT")] + _glProgramUniformMatrix2fvEXT_intptr _ProgramUniformMatrix2fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix2x3dv(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix2x3dv")] + _glProgramUniformMatrix2x3dv _ProgramUniformMatrix2x3dv { get; } + + delegate void _glProgramUniformMatrix2x3dv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix2x3dv")] + _glProgramUniformMatrix2x3dv_ptr _ProgramUniformMatrix2x3dv_ptr { get; } + + delegate void _glProgramUniformMatrix2x3dv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix2x3dv")] + _glProgramUniformMatrix2x3dv_intptr _ProgramUniformMatrix2x3dv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix2x3dvEXT(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix2x3dvEXT")] + _glProgramUniformMatrix2x3dvEXT _ProgramUniformMatrix2x3dvEXT { get; } + + delegate void _glProgramUniformMatrix2x3dvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix2x3dvEXT")] + _glProgramUniformMatrix2x3dvEXT_ptr _ProgramUniformMatrix2x3dvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix2x3dvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix2x3dvEXT")] + _glProgramUniformMatrix2x3dvEXT_intptr _ProgramUniformMatrix2x3dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix2x3fv(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix2x3fv")] + _glProgramUniformMatrix2x3fv _ProgramUniformMatrix2x3fv { get; } + + delegate void _glProgramUniformMatrix2x3fv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix2x3fv")] + _glProgramUniformMatrix2x3fv_ptr _ProgramUniformMatrix2x3fv_ptr { get; } + + delegate void _glProgramUniformMatrix2x3fv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix2x3fv")] + _glProgramUniformMatrix2x3fv_intptr _ProgramUniformMatrix2x3fv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix2x3fvEXT(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix2x3fvEXT")] + _glProgramUniformMatrix2x3fvEXT _ProgramUniformMatrix2x3fvEXT { get; } + + delegate void _glProgramUniformMatrix2x3fvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix2x3fvEXT")] + _glProgramUniformMatrix2x3fvEXT_ptr _ProgramUniformMatrix2x3fvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix2x3fvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix2x3fvEXT")] + _glProgramUniformMatrix2x3fvEXT_intptr _ProgramUniformMatrix2x3fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix2x4dv(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix2x4dv")] + _glProgramUniformMatrix2x4dv _ProgramUniformMatrix2x4dv { get; } + + delegate void _glProgramUniformMatrix2x4dv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix2x4dv")] + _glProgramUniformMatrix2x4dv_ptr _ProgramUniformMatrix2x4dv_ptr { get; } + + delegate void _glProgramUniformMatrix2x4dv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix2x4dv")] + _glProgramUniformMatrix2x4dv_intptr _ProgramUniformMatrix2x4dv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix2x4dvEXT(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix2x4dvEXT")] + _glProgramUniformMatrix2x4dvEXT _ProgramUniformMatrix2x4dvEXT { get; } + + delegate void _glProgramUniformMatrix2x4dvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix2x4dvEXT")] + _glProgramUniformMatrix2x4dvEXT_ptr _ProgramUniformMatrix2x4dvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix2x4dvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix2x4dvEXT")] + _glProgramUniformMatrix2x4dvEXT_intptr _ProgramUniformMatrix2x4dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix2x4fv(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix2x4fv")] + _glProgramUniformMatrix2x4fv _ProgramUniformMatrix2x4fv { get; } + + delegate void _glProgramUniformMatrix2x4fv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix2x4fv")] + _glProgramUniformMatrix2x4fv_ptr _ProgramUniformMatrix2x4fv_ptr { get; } + + delegate void _glProgramUniformMatrix2x4fv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix2x4fv")] + _glProgramUniformMatrix2x4fv_intptr _ProgramUniformMatrix2x4fv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix2x4fvEXT(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix2x4fvEXT")] + _glProgramUniformMatrix2x4fvEXT _ProgramUniformMatrix2x4fvEXT { get; } + + delegate void _glProgramUniformMatrix2x4fvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix2x4fvEXT")] + _glProgramUniformMatrix2x4fvEXT_ptr _ProgramUniformMatrix2x4fvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix2x4fvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix2x4fvEXT")] + _glProgramUniformMatrix2x4fvEXT_intptr _ProgramUniformMatrix2x4fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix3dv(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix3dv")] + _glProgramUniformMatrix3dv _ProgramUniformMatrix3dv { get; } + + delegate void _glProgramUniformMatrix3dv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix3dv")] + _glProgramUniformMatrix3dv_ptr _ProgramUniformMatrix3dv_ptr { get; } + + delegate void _glProgramUniformMatrix3dv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix3dv")] + _glProgramUniformMatrix3dv_intptr _ProgramUniformMatrix3dv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix3dvEXT(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix3dvEXT")] + _glProgramUniformMatrix3dvEXT _ProgramUniformMatrix3dvEXT { get; } + + delegate void _glProgramUniformMatrix3dvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix3dvEXT")] + _glProgramUniformMatrix3dvEXT_ptr _ProgramUniformMatrix3dvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix3dvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix3dvEXT")] + _glProgramUniformMatrix3dvEXT_intptr _ProgramUniformMatrix3dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix3fv(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix3fv")] + _glProgramUniformMatrix3fv _ProgramUniformMatrix3fv { get; } + + delegate void _glProgramUniformMatrix3fv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix3fv")] + _glProgramUniformMatrix3fv_ptr _ProgramUniformMatrix3fv_ptr { get; } + + delegate void _glProgramUniformMatrix3fv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix3fv")] + _glProgramUniformMatrix3fv_intptr _ProgramUniformMatrix3fv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix3fvEXT(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix3fvEXT")] + _glProgramUniformMatrix3fvEXT _ProgramUniformMatrix3fvEXT { get; } + + delegate void _glProgramUniformMatrix3fvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix3fvEXT")] + _glProgramUniformMatrix3fvEXT_ptr _ProgramUniformMatrix3fvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix3fvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix3fvEXT")] + _glProgramUniformMatrix3fvEXT_intptr _ProgramUniformMatrix3fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix3x2dv(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix3x2dv")] + _glProgramUniformMatrix3x2dv _ProgramUniformMatrix3x2dv { get; } + + delegate void _glProgramUniformMatrix3x2dv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix3x2dv")] + _glProgramUniformMatrix3x2dv_ptr _ProgramUniformMatrix3x2dv_ptr { get; } + + delegate void _glProgramUniformMatrix3x2dv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix3x2dv")] + _glProgramUniformMatrix3x2dv_intptr _ProgramUniformMatrix3x2dv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix3x2dvEXT(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix3x2dvEXT")] + _glProgramUniformMatrix3x2dvEXT _ProgramUniformMatrix3x2dvEXT { get; } + + delegate void _glProgramUniformMatrix3x2dvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix3x2dvEXT")] + _glProgramUniformMatrix3x2dvEXT_ptr _ProgramUniformMatrix3x2dvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix3x2dvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix3x2dvEXT")] + _glProgramUniformMatrix3x2dvEXT_intptr _ProgramUniformMatrix3x2dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix3x2fv(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix3x2fv")] + _glProgramUniformMatrix3x2fv _ProgramUniformMatrix3x2fv { get; } + + delegate void _glProgramUniformMatrix3x2fv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix3x2fv")] + _glProgramUniformMatrix3x2fv_ptr _ProgramUniformMatrix3x2fv_ptr { get; } + + delegate void _glProgramUniformMatrix3x2fv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix3x2fv")] + _glProgramUniformMatrix3x2fv_intptr _ProgramUniformMatrix3x2fv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix3x2fvEXT(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix3x2fvEXT")] + _glProgramUniformMatrix3x2fvEXT _ProgramUniformMatrix3x2fvEXT { get; } + + delegate void _glProgramUniformMatrix3x2fvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix3x2fvEXT")] + _glProgramUniformMatrix3x2fvEXT_ptr _ProgramUniformMatrix3x2fvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix3x2fvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix3x2fvEXT")] + _glProgramUniformMatrix3x2fvEXT_intptr _ProgramUniformMatrix3x2fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix3x4dv(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix3x4dv")] + _glProgramUniformMatrix3x4dv _ProgramUniformMatrix3x4dv { get; } + + delegate void _glProgramUniformMatrix3x4dv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix3x4dv")] + _glProgramUniformMatrix3x4dv_ptr _ProgramUniformMatrix3x4dv_ptr { get; } + + delegate void _glProgramUniformMatrix3x4dv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix3x4dv")] + _glProgramUniformMatrix3x4dv_intptr _ProgramUniformMatrix3x4dv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix3x4dvEXT(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix3x4dvEXT")] + _glProgramUniformMatrix3x4dvEXT _ProgramUniformMatrix3x4dvEXT { get; } + + delegate void _glProgramUniformMatrix3x4dvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix3x4dvEXT")] + _glProgramUniformMatrix3x4dvEXT_ptr _ProgramUniformMatrix3x4dvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix3x4dvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix3x4dvEXT")] + _glProgramUniformMatrix3x4dvEXT_intptr _ProgramUniformMatrix3x4dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix3x4fv(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix3x4fv")] + _glProgramUniformMatrix3x4fv _ProgramUniformMatrix3x4fv { get; } + + delegate void _glProgramUniformMatrix3x4fv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix3x4fv")] + _glProgramUniformMatrix3x4fv_ptr _ProgramUniformMatrix3x4fv_ptr { get; } + + delegate void _glProgramUniformMatrix3x4fv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix3x4fv")] + _glProgramUniformMatrix3x4fv_intptr _ProgramUniformMatrix3x4fv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix3x4fvEXT(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix3x4fvEXT")] + _glProgramUniformMatrix3x4fvEXT _ProgramUniformMatrix3x4fvEXT { get; } + + delegate void _glProgramUniformMatrix3x4fvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix3x4fvEXT")] + _glProgramUniformMatrix3x4fvEXT_ptr _ProgramUniformMatrix3x4fvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix3x4fvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix3x4fvEXT")] + _glProgramUniformMatrix3x4fvEXT_intptr _ProgramUniformMatrix3x4fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix4dv(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix4dv")] + _glProgramUniformMatrix4dv _ProgramUniformMatrix4dv { get; } + + delegate void _glProgramUniformMatrix4dv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix4dv")] + _glProgramUniformMatrix4dv_ptr _ProgramUniformMatrix4dv_ptr { get; } + + delegate void _glProgramUniformMatrix4dv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix4dv")] + _glProgramUniformMatrix4dv_intptr _ProgramUniformMatrix4dv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix4dvEXT(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix4dvEXT")] + _glProgramUniformMatrix4dvEXT _ProgramUniformMatrix4dvEXT { get; } + + delegate void _glProgramUniformMatrix4dvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix4dvEXT")] + _glProgramUniformMatrix4dvEXT_ptr _ProgramUniformMatrix4dvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix4dvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix4dvEXT")] + _glProgramUniformMatrix4dvEXT_intptr _ProgramUniformMatrix4dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix4fv(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix4fv")] + _glProgramUniformMatrix4fv _ProgramUniformMatrix4fv { get; } + + delegate void _glProgramUniformMatrix4fv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix4fv")] + _glProgramUniformMatrix4fv_ptr _ProgramUniformMatrix4fv_ptr { get; } + + delegate void _glProgramUniformMatrix4fv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix4fv")] + _glProgramUniformMatrix4fv_intptr _ProgramUniformMatrix4fv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix4fvEXT(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix4fvEXT")] + _glProgramUniformMatrix4fvEXT _ProgramUniformMatrix4fvEXT { get; } + + delegate void _glProgramUniformMatrix4fvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix4fvEXT")] + _glProgramUniformMatrix4fvEXT_ptr _ProgramUniformMatrix4fvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix4fvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix4fvEXT")] + _glProgramUniformMatrix4fvEXT_intptr _ProgramUniformMatrix4fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix4x2dv(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix4x2dv")] + _glProgramUniformMatrix4x2dv _ProgramUniformMatrix4x2dv { get; } + + delegate void _glProgramUniformMatrix4x2dv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix4x2dv")] + _glProgramUniformMatrix4x2dv_ptr _ProgramUniformMatrix4x2dv_ptr { get; } + + delegate void _glProgramUniformMatrix4x2dv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix4x2dv")] + _glProgramUniformMatrix4x2dv_intptr _ProgramUniformMatrix4x2dv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix4x2dvEXT(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix4x2dvEXT")] + _glProgramUniformMatrix4x2dvEXT _ProgramUniformMatrix4x2dvEXT { get; } + + delegate void _glProgramUniformMatrix4x2dvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix4x2dvEXT")] + _glProgramUniformMatrix4x2dvEXT_ptr _ProgramUniformMatrix4x2dvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix4x2dvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix4x2dvEXT")] + _glProgramUniformMatrix4x2dvEXT_intptr _ProgramUniformMatrix4x2dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix4x2fv(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix4x2fv")] + _glProgramUniformMatrix4x2fv _ProgramUniformMatrix4x2fv { get; } + + delegate void _glProgramUniformMatrix4x2fv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix4x2fv")] + _glProgramUniformMatrix4x2fv_ptr _ProgramUniformMatrix4x2fv_ptr { get; } + + delegate void _glProgramUniformMatrix4x2fv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix4x2fv")] + _glProgramUniformMatrix4x2fv_intptr _ProgramUniformMatrix4x2fv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix4x2fvEXT(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix4x2fvEXT")] + _glProgramUniformMatrix4x2fvEXT _ProgramUniformMatrix4x2fvEXT { get; } + + delegate void _glProgramUniformMatrix4x2fvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix4x2fvEXT")] + _glProgramUniformMatrix4x2fvEXT_ptr _ProgramUniformMatrix4x2fvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix4x2fvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix4x2fvEXT")] + _glProgramUniformMatrix4x2fvEXT_intptr _ProgramUniformMatrix4x2fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix4x3dv(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix4x3dv")] + _glProgramUniformMatrix4x3dv _ProgramUniformMatrix4x3dv { get; } + + delegate void _glProgramUniformMatrix4x3dv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix4x3dv")] + _glProgramUniformMatrix4x3dv_ptr _ProgramUniformMatrix4x3dv_ptr { get; } + + delegate void _glProgramUniformMatrix4x3dv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix4x3dv")] + _glProgramUniformMatrix4x3dv_intptr _ProgramUniformMatrix4x3dv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix4x3dvEXT(uint program, int location, int count, bool transpose, double[] value); + [GlEntryPoint("glProgramUniformMatrix4x3dvEXT")] + _glProgramUniformMatrix4x3dvEXT _ProgramUniformMatrix4x3dvEXT { get; } + + delegate void _glProgramUniformMatrix4x3dvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix4x3dvEXT")] + _glProgramUniformMatrix4x3dvEXT_ptr _ProgramUniformMatrix4x3dvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix4x3dvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix4x3dvEXT")] + _glProgramUniformMatrix4x3dvEXT_intptr _ProgramUniformMatrix4x3dvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix4x3fv(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix4x3fv")] + _glProgramUniformMatrix4x3fv _ProgramUniformMatrix4x3fv { get; } + + delegate void _glProgramUniformMatrix4x3fv_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix4x3fv")] + _glProgramUniformMatrix4x3fv_ptr _ProgramUniformMatrix4x3fv_ptr { get; } + + delegate void _glProgramUniformMatrix4x3fv_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix4x3fv")] + _glProgramUniformMatrix4x3fv_intptr _ProgramUniformMatrix4x3fv_intptr { get; } + + // --- + + delegate void _glProgramUniformMatrix4x3fvEXT(uint program, int location, int count, bool transpose, float[] value); + [GlEntryPoint("glProgramUniformMatrix4x3fvEXT")] + _glProgramUniformMatrix4x3fvEXT _ProgramUniformMatrix4x3fvEXT { get; } + + delegate void _glProgramUniformMatrix4x3fvEXT_ptr(uint program, int location, int count, bool transpose, void* value); + [GlEntryPoint("glProgramUniformMatrix4x3fvEXT")] + _glProgramUniformMatrix4x3fvEXT_ptr _ProgramUniformMatrix4x3fvEXT_ptr { get; } + + delegate void _glProgramUniformMatrix4x3fvEXT_intptr(uint program, int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glProgramUniformMatrix4x3fvEXT")] + _glProgramUniformMatrix4x3fvEXT_intptr _ProgramUniformMatrix4x3fvEXT_intptr { get; } + + // --- + + delegate void _glProgramUniformui64NV(uint program, int location, UInt64 value); + [GlEntryPoint("glProgramUniformui64NV")] + _glProgramUniformui64NV _ProgramUniformui64NV { get; } + + // --- + + delegate void _glProgramUniformui64vNV(uint program, int location, int count, UInt64[] value); + [GlEntryPoint("glProgramUniformui64vNV")] + _glProgramUniformui64vNV _ProgramUniformui64vNV { get; } + + delegate void _glProgramUniformui64vNV_ptr(uint program, int location, int count, void* value); + [GlEntryPoint("glProgramUniformui64vNV")] + _glProgramUniformui64vNV_ptr _ProgramUniformui64vNV_ptr { get; } + + delegate void _glProgramUniformui64vNV_intptr(uint program, int location, int count, IntPtr value); + [GlEntryPoint("glProgramUniformui64vNV")] + _glProgramUniformui64vNV_intptr _ProgramUniformui64vNV_intptr { get; } + + // --- + + delegate void _glProgramVertexLimitNV(ProgramTarget target, int limit); + [GlEntryPoint("glProgramVertexLimitNV")] + _glProgramVertexLimitNV _ProgramVertexLimitNV { get; } + + // --- + + delegate void _glProvokingVertex(VertexProvokingMode mode); + [GlEntryPoint("glProvokingVertex")] + _glProvokingVertex _ProvokingVertex { get; } + + // --- + + delegate void _glProvokingVertexEXT(VertexProvokingMode mode); + [GlEntryPoint("glProvokingVertexEXT")] + _glProvokingVertexEXT _ProvokingVertexEXT { get; } + + // --- + + delegate void _glPushAttrib(int mask); + [GlEntryPoint("glPushAttrib")] + _glPushAttrib _PushAttrib { get; } + + // --- + + delegate void _glPushClientAttrib(int mask); + [GlEntryPoint("glPushClientAttrib")] + _glPushClientAttrib _PushClientAttrib { get; } + + // --- + + delegate void _glPushClientAttribDefaultEXT(int mask); + [GlEntryPoint("glPushClientAttribDefaultEXT")] + _glPushClientAttribDefaultEXT _PushClientAttribDefaultEXT { get; } + + // --- + + delegate void _glPushDebugGroup(DebugSource source, uint id, int length, string message); + [GlEntryPoint("glPushDebugGroup")] + _glPushDebugGroup _PushDebugGroup { get; } + + delegate void _glPushDebugGroup_ptr(DebugSource source, uint id, int length, void* message); + [GlEntryPoint("glPushDebugGroup")] + _glPushDebugGroup_ptr _PushDebugGroup_ptr { get; } + + delegate void _glPushDebugGroup_intptr(DebugSource source, uint id, int length, IntPtr message); + [GlEntryPoint("glPushDebugGroup")] + _glPushDebugGroup_intptr _PushDebugGroup_intptr { get; } + + // --- + + delegate void _glPushDebugGroupKHR(DebugSource source, uint id, int length, string message); + [GlEntryPoint("glPushDebugGroupKHR")] + _glPushDebugGroupKHR _PushDebugGroupKHR { get; } + + delegate void _glPushDebugGroupKHR_ptr(DebugSource source, uint id, int length, void* message); + [GlEntryPoint("glPushDebugGroupKHR")] + _glPushDebugGroupKHR_ptr _PushDebugGroupKHR_ptr { get; } + + delegate void _glPushDebugGroupKHR_intptr(DebugSource source, uint id, int length, IntPtr message); + [GlEntryPoint("glPushDebugGroupKHR")] + _glPushDebugGroupKHR_intptr _PushDebugGroupKHR_intptr { get; } + + // --- + + delegate void _glPushGroupMarkerEXT(int length, string marker); + [GlEntryPoint("glPushGroupMarkerEXT")] + _glPushGroupMarkerEXT _PushGroupMarkerEXT { get; } + + delegate void _glPushGroupMarkerEXT_ptr(int length, void* marker); + [GlEntryPoint("glPushGroupMarkerEXT")] + _glPushGroupMarkerEXT_ptr _PushGroupMarkerEXT_ptr { get; } + + delegate void _glPushGroupMarkerEXT_intptr(int length, IntPtr marker); + [GlEntryPoint("glPushGroupMarkerEXT")] + _glPushGroupMarkerEXT_intptr _PushGroupMarkerEXT_intptr { get; } + + // --- + + delegate void _glPushMatrix(); + [GlEntryPoint("glPushMatrix")] + _glPushMatrix _PushMatrix { get; } + + // --- + + delegate void _glPushName(uint name); + [GlEntryPoint("glPushName")] + _glPushName _PushName { get; } + + // --- + + delegate void _glQueryCounter(uint id, QueryCounterTarget target); + [GlEntryPoint("glQueryCounter")] + _glQueryCounter _QueryCounter { get; } + + // --- + + delegate void _glQueryCounterEXT(uint id, QueryCounterTarget target); + [GlEntryPoint("glQueryCounterEXT")] + _glQueryCounterEXT _QueryCounterEXT { get; } + + // --- + + delegate int _glQueryMatrixxOES(float[] mantissa, int[] exponent); + [GlEntryPoint("glQueryMatrixxOES")] + _glQueryMatrixxOES _QueryMatrixxOES { get; } + + delegate int _glQueryMatrixxOES_ptr(void* mantissa, void* exponent); + [GlEntryPoint("glQueryMatrixxOES")] + _glQueryMatrixxOES_ptr _QueryMatrixxOES_ptr { get; } + + delegate int _glQueryMatrixxOES_intptr(IntPtr mantissa, IntPtr exponent); + [GlEntryPoint("glQueryMatrixxOES")] + _glQueryMatrixxOES_intptr _QueryMatrixxOES_intptr { get; } + + // --- + + delegate void _glQueryObjectParameteruiAMD(QueryTarget target, uint id, int pname, uint param); + [GlEntryPoint("glQueryObjectParameteruiAMD")] + _glQueryObjectParameteruiAMD _QueryObjectParameteruiAMD { get; } + + // --- + + delegate int _glQueryResourceNV(int queryType, int tagId, uint count, int[] buffer); + [GlEntryPoint("glQueryResourceNV")] + _glQueryResourceNV _QueryResourceNV { get; } + + delegate int _glQueryResourceNV_ptr(int queryType, int tagId, uint count, void* buffer); + [GlEntryPoint("glQueryResourceNV")] + _glQueryResourceNV_ptr _QueryResourceNV_ptr { get; } + + delegate int _glQueryResourceNV_intptr(int queryType, int tagId, uint count, IntPtr buffer); + [GlEntryPoint("glQueryResourceNV")] + _glQueryResourceNV_intptr _QueryResourceNV_intptr { get; } + + // --- + + delegate void _glQueryResourceTagNV(int tagId, string tagString); + [GlEntryPoint("glQueryResourceTagNV")] + _glQueryResourceTagNV _QueryResourceTagNV { get; } + + delegate void _glQueryResourceTagNV_ptr(int tagId, void* tagString); + [GlEntryPoint("glQueryResourceTagNV")] + _glQueryResourceTagNV_ptr _QueryResourceTagNV_ptr { get; } + + delegate void _glQueryResourceTagNV_intptr(int tagId, IntPtr tagString); + [GlEntryPoint("glQueryResourceTagNV")] + _glQueryResourceTagNV_intptr _QueryResourceTagNV_intptr { get; } + + // --- + + delegate void _glRasterPos2d(double x, double y); + [GlEntryPoint("glRasterPos2d")] + _glRasterPos2d _RasterPos2d { get; } + + // --- + + delegate void _glRasterPos2dv(double[] v); + [GlEntryPoint("glRasterPos2dv")] + _glRasterPos2dv _RasterPos2dv { get; } + + delegate void _glRasterPos2dv_ptr(void* v); + [GlEntryPoint("glRasterPos2dv")] + _glRasterPos2dv_ptr _RasterPos2dv_ptr { get; } + + delegate void _glRasterPos2dv_intptr(IntPtr v); + [GlEntryPoint("glRasterPos2dv")] + _glRasterPos2dv_intptr _RasterPos2dv_intptr { get; } + + // --- + + delegate void _glRasterPos2f(float x, float y); + [GlEntryPoint("glRasterPos2f")] + _glRasterPos2f _RasterPos2f { get; } + + // --- + + delegate void _glRasterPos2fv(float[] v); + [GlEntryPoint("glRasterPos2fv")] + _glRasterPos2fv _RasterPos2fv { get; } + + delegate void _glRasterPos2fv_ptr(void* v); + [GlEntryPoint("glRasterPos2fv")] + _glRasterPos2fv_ptr _RasterPos2fv_ptr { get; } + + delegate void _glRasterPos2fv_intptr(IntPtr v); + [GlEntryPoint("glRasterPos2fv")] + _glRasterPos2fv_intptr _RasterPos2fv_intptr { get; } + + // --- + + delegate void _glRasterPos2i(int x, int y); + [GlEntryPoint("glRasterPos2i")] + _glRasterPos2i _RasterPos2i { get; } + + // --- + + delegate void _glRasterPos2iv(int[] v); + [GlEntryPoint("glRasterPos2iv")] + _glRasterPos2iv _RasterPos2iv { get; } + + delegate void _glRasterPos2iv_ptr(void* v); + [GlEntryPoint("glRasterPos2iv")] + _glRasterPos2iv_ptr _RasterPos2iv_ptr { get; } + + delegate void _glRasterPos2iv_intptr(IntPtr v); + [GlEntryPoint("glRasterPos2iv")] + _glRasterPos2iv_intptr _RasterPos2iv_intptr { get; } + + // --- + + delegate void _glRasterPos2s(short x, short y); + [GlEntryPoint("glRasterPos2s")] + _glRasterPos2s _RasterPos2s { get; } + + // --- + + delegate void _glRasterPos2sv(short[] v); + [GlEntryPoint("glRasterPos2sv")] + _glRasterPos2sv _RasterPos2sv { get; } + + delegate void _glRasterPos2sv_ptr(void* v); + [GlEntryPoint("glRasterPos2sv")] + _glRasterPos2sv_ptr _RasterPos2sv_ptr { get; } + + delegate void _glRasterPos2sv_intptr(IntPtr v); + [GlEntryPoint("glRasterPos2sv")] + _glRasterPos2sv_intptr _RasterPos2sv_intptr { get; } + + // --- + + delegate void _glRasterPos2xOES(float x, float y); + [GlEntryPoint("glRasterPos2xOES")] + _glRasterPos2xOES _RasterPos2xOES { get; } + + // --- + + delegate void _glRasterPos2xvOES(float[] coords); + [GlEntryPoint("glRasterPos2xvOES")] + _glRasterPos2xvOES _RasterPos2xvOES { get; } + + delegate void _glRasterPos2xvOES_ptr(void* coords); + [GlEntryPoint("glRasterPos2xvOES")] + _glRasterPos2xvOES_ptr _RasterPos2xvOES_ptr { get; } + + delegate void _glRasterPos2xvOES_intptr(IntPtr coords); + [GlEntryPoint("glRasterPos2xvOES")] + _glRasterPos2xvOES_intptr _RasterPos2xvOES_intptr { get; } + + // --- + + delegate void _glRasterPos3d(double x, double y, double z); + [GlEntryPoint("glRasterPos3d")] + _glRasterPos3d _RasterPos3d { get; } + + // --- + + delegate void _glRasterPos3dv(double[] v); + [GlEntryPoint("glRasterPos3dv")] + _glRasterPos3dv _RasterPos3dv { get; } + + delegate void _glRasterPos3dv_ptr(void* v); + [GlEntryPoint("glRasterPos3dv")] + _glRasterPos3dv_ptr _RasterPos3dv_ptr { get; } + + delegate void _glRasterPos3dv_intptr(IntPtr v); + [GlEntryPoint("glRasterPos3dv")] + _glRasterPos3dv_intptr _RasterPos3dv_intptr { get; } + + // --- + + delegate void _glRasterPos3f(float x, float y, float z); + [GlEntryPoint("glRasterPos3f")] + _glRasterPos3f _RasterPos3f { get; } + + // --- + + delegate void _glRasterPos3fv(float[] v); + [GlEntryPoint("glRasterPos3fv")] + _glRasterPos3fv _RasterPos3fv { get; } + + delegate void _glRasterPos3fv_ptr(void* v); + [GlEntryPoint("glRasterPos3fv")] + _glRasterPos3fv_ptr _RasterPos3fv_ptr { get; } + + delegate void _glRasterPos3fv_intptr(IntPtr v); + [GlEntryPoint("glRasterPos3fv")] + _glRasterPos3fv_intptr _RasterPos3fv_intptr { get; } + + // --- + + delegate void _glRasterPos3i(int x, int y, int z); + [GlEntryPoint("glRasterPos3i")] + _glRasterPos3i _RasterPos3i { get; } + + // --- + + delegate void _glRasterPos3iv(int[] v); + [GlEntryPoint("glRasterPos3iv")] + _glRasterPos3iv _RasterPos3iv { get; } + + delegate void _glRasterPos3iv_ptr(void* v); + [GlEntryPoint("glRasterPos3iv")] + _glRasterPos3iv_ptr _RasterPos3iv_ptr { get; } + + delegate void _glRasterPos3iv_intptr(IntPtr v); + [GlEntryPoint("glRasterPos3iv")] + _glRasterPos3iv_intptr _RasterPos3iv_intptr { get; } + + // --- + + delegate void _glRasterPos3s(short x, short y, short z); + [GlEntryPoint("glRasterPos3s")] + _glRasterPos3s _RasterPos3s { get; } + + // --- + + delegate void _glRasterPos3sv(short[] v); + [GlEntryPoint("glRasterPos3sv")] + _glRasterPos3sv _RasterPos3sv { get; } + + delegate void _glRasterPos3sv_ptr(void* v); + [GlEntryPoint("glRasterPos3sv")] + _glRasterPos3sv_ptr _RasterPos3sv_ptr { get; } + + delegate void _glRasterPos3sv_intptr(IntPtr v); + [GlEntryPoint("glRasterPos3sv")] + _glRasterPos3sv_intptr _RasterPos3sv_intptr { get; } + + // --- + + delegate void _glRasterPos3xOES(float x, float y, float z); + [GlEntryPoint("glRasterPos3xOES")] + _glRasterPos3xOES _RasterPos3xOES { get; } + + // --- + + delegate void _glRasterPos3xvOES(float[] coords); + [GlEntryPoint("glRasterPos3xvOES")] + _glRasterPos3xvOES _RasterPos3xvOES { get; } + + delegate void _glRasterPos3xvOES_ptr(void* coords); + [GlEntryPoint("glRasterPos3xvOES")] + _glRasterPos3xvOES_ptr _RasterPos3xvOES_ptr { get; } + + delegate void _glRasterPos3xvOES_intptr(IntPtr coords); + [GlEntryPoint("glRasterPos3xvOES")] + _glRasterPos3xvOES_intptr _RasterPos3xvOES_intptr { get; } + + // --- + + delegate void _glRasterPos4d(double x, double y, double z, double w); + [GlEntryPoint("glRasterPos4d")] + _glRasterPos4d _RasterPos4d { get; } + + // --- + + delegate void _glRasterPos4dv(double[] v); + [GlEntryPoint("glRasterPos4dv")] + _glRasterPos4dv _RasterPos4dv { get; } + + delegate void _glRasterPos4dv_ptr(void* v); + [GlEntryPoint("glRasterPos4dv")] + _glRasterPos4dv_ptr _RasterPos4dv_ptr { get; } + + delegate void _glRasterPos4dv_intptr(IntPtr v); + [GlEntryPoint("glRasterPos4dv")] + _glRasterPos4dv_intptr _RasterPos4dv_intptr { get; } + + // --- + + delegate void _glRasterPos4f(float x, float y, float z, float w); + [GlEntryPoint("glRasterPos4f")] + _glRasterPos4f _RasterPos4f { get; } + + // --- + + delegate void _glRasterPos4fv(float[] v); + [GlEntryPoint("glRasterPos4fv")] + _glRasterPos4fv _RasterPos4fv { get; } + + delegate void _glRasterPos4fv_ptr(void* v); + [GlEntryPoint("glRasterPos4fv")] + _glRasterPos4fv_ptr _RasterPos4fv_ptr { get; } + + delegate void _glRasterPos4fv_intptr(IntPtr v); + [GlEntryPoint("glRasterPos4fv")] + _glRasterPos4fv_intptr _RasterPos4fv_intptr { get; } + + // --- + + delegate void _glRasterPos4i(int x, int y, int z, int w); + [GlEntryPoint("glRasterPos4i")] + _glRasterPos4i _RasterPos4i { get; } + + // --- + + delegate void _glRasterPos4iv(int[] v); + [GlEntryPoint("glRasterPos4iv")] + _glRasterPos4iv _RasterPos4iv { get; } + + delegate void _glRasterPos4iv_ptr(void* v); + [GlEntryPoint("glRasterPos4iv")] + _glRasterPos4iv_ptr _RasterPos4iv_ptr { get; } + + delegate void _glRasterPos4iv_intptr(IntPtr v); + [GlEntryPoint("glRasterPos4iv")] + _glRasterPos4iv_intptr _RasterPos4iv_intptr { get; } + + // --- + + delegate void _glRasterPos4s(short x, short y, short z, short w); + [GlEntryPoint("glRasterPos4s")] + _glRasterPos4s _RasterPos4s { get; } + + // --- + + delegate void _glRasterPos4sv(short[] v); + [GlEntryPoint("glRasterPos4sv")] + _glRasterPos4sv _RasterPos4sv { get; } + + delegate void _glRasterPos4sv_ptr(void* v); + [GlEntryPoint("glRasterPos4sv")] + _glRasterPos4sv_ptr _RasterPos4sv_ptr { get; } + + delegate void _glRasterPos4sv_intptr(IntPtr v); + [GlEntryPoint("glRasterPos4sv")] + _glRasterPos4sv_intptr _RasterPos4sv_intptr { get; } + + // --- + + delegate void _glRasterPos4xOES(float x, float y, float z, float w); + [GlEntryPoint("glRasterPos4xOES")] + _glRasterPos4xOES _RasterPos4xOES { get; } + + // --- + + delegate void _glRasterPos4xvOES(float[] coords); + [GlEntryPoint("glRasterPos4xvOES")] + _glRasterPos4xvOES _RasterPos4xvOES { get; } + + delegate void _glRasterPos4xvOES_ptr(void* coords); + [GlEntryPoint("glRasterPos4xvOES")] + _glRasterPos4xvOES_ptr _RasterPos4xvOES_ptr { get; } + + delegate void _glRasterPos4xvOES_intptr(IntPtr coords); + [GlEntryPoint("glRasterPos4xvOES")] + _glRasterPos4xvOES_intptr _RasterPos4xvOES_intptr { get; } + + // --- + + delegate void _glRasterSamplesEXT(uint samples, bool fixedsamplelocations); + [GlEntryPoint("glRasterSamplesEXT")] + _glRasterSamplesEXT _RasterSamplesEXT { get; } + + // --- + + delegate void _glReadBuffer(ReadBufferMode src); + [GlEntryPoint("glReadBuffer")] + _glReadBuffer _ReadBuffer { get; } + + // --- + + delegate void _glReadBufferIndexedEXT(ReadBufferMode src, int index); + [GlEntryPoint("glReadBufferIndexedEXT")] + _glReadBufferIndexedEXT _ReadBufferIndexedEXT { get; } + + // --- + + delegate void _glReadBufferNV(int mode); + [GlEntryPoint("glReadBufferNV")] + _glReadBufferNV _ReadBufferNV { get; } + + // --- + + delegate void _glReadInstrumentsSGIX(int marker); + [GlEntryPoint("glReadInstrumentsSGIX")] + _glReadInstrumentsSGIX _ReadInstrumentsSGIX { get; } + + // --- + + delegate void _glReadPixels(int x, int y, int width, int height, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glReadPixels")] + _glReadPixels _ReadPixels { get; } + + // --- + + delegate void _glReadnPixels(int x, int y, int width, int height, PixelFormat format, PixelType type, int bufSize, IntPtr data); + [GlEntryPoint("glReadnPixels")] + _glReadnPixels _ReadnPixels { get; } + + // --- + + delegate void _glReadnPixelsARB(int x, int y, int width, int height, PixelFormat format, PixelType type, int bufSize, IntPtr data); + [GlEntryPoint("glReadnPixelsARB")] + _glReadnPixelsARB _ReadnPixelsARB { get; } + + // --- + + delegate void _glReadnPixelsEXT(int x, int y, int width, int height, PixelFormat format, PixelType type, int bufSize, IntPtr data); + [GlEntryPoint("glReadnPixelsEXT")] + _glReadnPixelsEXT _ReadnPixelsEXT { get; } + + // --- + + delegate void _glReadnPixelsKHR(int x, int y, int width, int height, PixelFormat format, PixelType type, int bufSize, IntPtr data); + [GlEntryPoint("glReadnPixelsKHR")] + _glReadnPixelsKHR _ReadnPixelsKHR { get; } + + // --- + + delegate bool _glReleaseKeyedMutexWin32EXT(uint memory, UInt64 key); + [GlEntryPoint("glReleaseKeyedMutexWin32EXT")] + _glReleaseKeyedMutexWin32EXT _ReleaseKeyedMutexWin32EXT { get; } + + // --- + + delegate void _glRectd(double x1, double y1, double x2, double y2); + [GlEntryPoint("glRectd")] + _glRectd _Rectd { get; } + + // --- + + delegate void _glRectdv(double[] v1, double[] v2); + [GlEntryPoint("glRectdv")] + _glRectdv _Rectdv { get; } + + delegate void _glRectdv_ptr(void* v1, void* v2); + [GlEntryPoint("glRectdv")] + _glRectdv_ptr _Rectdv_ptr { get; } + + delegate void _glRectdv_intptr(IntPtr v1, IntPtr v2); + [GlEntryPoint("glRectdv")] + _glRectdv_intptr _Rectdv_intptr { get; } + + // --- + + delegate void _glRectf(float x1, float y1, float x2, float y2); + [GlEntryPoint("glRectf")] + _glRectf _Rectf { get; } + + // --- + + delegate void _glRectfv(float[] v1, float[] v2); + [GlEntryPoint("glRectfv")] + _glRectfv _Rectfv { get; } + + delegate void _glRectfv_ptr(void* v1, void* v2); + [GlEntryPoint("glRectfv")] + _glRectfv_ptr _Rectfv_ptr { get; } + + delegate void _glRectfv_intptr(IntPtr v1, IntPtr v2); + [GlEntryPoint("glRectfv")] + _glRectfv_intptr _Rectfv_intptr { get; } + + // --- + + delegate void _glRecti(int x1, int y1, int x2, int y2); + [GlEntryPoint("glRecti")] + _glRecti _Recti { get; } + + // --- + + delegate void _glRectiv(int[] v1, int[] v2); + [GlEntryPoint("glRectiv")] + _glRectiv _Rectiv { get; } + + delegate void _glRectiv_ptr(void* v1, void* v2); + [GlEntryPoint("glRectiv")] + _glRectiv_ptr _Rectiv_ptr { get; } + + delegate void _glRectiv_intptr(IntPtr v1, IntPtr v2); + [GlEntryPoint("glRectiv")] + _glRectiv_intptr _Rectiv_intptr { get; } + + // --- + + delegate void _glRects(short x1, short y1, short x2, short y2); + [GlEntryPoint("glRects")] + _glRects _Rects { get; } + + // --- + + delegate void _glRectsv(short[] v1, short[] v2); + [GlEntryPoint("glRectsv")] + _glRectsv _Rectsv { get; } + + delegate void _glRectsv_ptr(void* v1, void* v2); + [GlEntryPoint("glRectsv")] + _glRectsv_ptr _Rectsv_ptr { get; } + + delegate void _glRectsv_intptr(IntPtr v1, IntPtr v2); + [GlEntryPoint("glRectsv")] + _glRectsv_intptr _Rectsv_intptr { get; } + + // --- + + delegate void _glRectxOES(float x1, float y1, float x2, float y2); + [GlEntryPoint("glRectxOES")] + _glRectxOES _RectxOES { get; } + + // --- + + delegate void _glRectxvOES(float[] v1, float[] v2); + [GlEntryPoint("glRectxvOES")] + _glRectxvOES _RectxvOES { get; } + + delegate void _glRectxvOES_ptr(void* v1, void* v2); + [GlEntryPoint("glRectxvOES")] + _glRectxvOES_ptr _RectxvOES_ptr { get; } + + delegate void _glRectxvOES_intptr(IntPtr v1, IntPtr v2); + [GlEntryPoint("glRectxvOES")] + _glRectxvOES_intptr _RectxvOES_intptr { get; } + + // --- + + delegate void _glReferencePlaneSGIX(double[] equation); + [GlEntryPoint("glReferencePlaneSGIX")] + _glReferencePlaneSGIX _ReferencePlaneSGIX { get; } + + delegate void _glReferencePlaneSGIX_ptr(void* equation); + [GlEntryPoint("glReferencePlaneSGIX")] + _glReferencePlaneSGIX_ptr _ReferencePlaneSGIX_ptr { get; } + + delegate void _glReferencePlaneSGIX_intptr(IntPtr equation); + [GlEntryPoint("glReferencePlaneSGIX")] + _glReferencePlaneSGIX_intptr _ReferencePlaneSGIX_intptr { get; } + + // --- + + delegate void _glReleaseShaderCompiler(); + [GlEntryPoint("glReleaseShaderCompiler")] + _glReleaseShaderCompiler _ReleaseShaderCompiler { get; } + + // --- + + delegate void _glRenderGpuMaskNV(int mask); + [GlEntryPoint("glRenderGpuMaskNV")] + _glRenderGpuMaskNV _RenderGpuMaskNV { get; } + + // --- + + delegate int _glRenderMode(RenderingMode mode); + [GlEntryPoint("glRenderMode")] + _glRenderMode _RenderMode { get; } + + // --- + + delegate void _glRenderbufferStorage(RenderbufferTarget target, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glRenderbufferStorage")] + _glRenderbufferStorage _RenderbufferStorage { get; } + + // --- + + delegate void _glRenderbufferStorageEXT(RenderbufferTarget target, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glRenderbufferStorageEXT")] + _glRenderbufferStorageEXT _RenderbufferStorageEXT { get; } + + // --- + + delegate void _glRenderbufferStorageMultisample(RenderbufferTarget target, int samples, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glRenderbufferStorageMultisample")] + _glRenderbufferStorageMultisample _RenderbufferStorageMultisample { get; } + + // --- + + delegate void _glRenderbufferStorageMultisampleANGLE(RenderbufferTarget target, int samples, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glRenderbufferStorageMultisampleANGLE")] + _glRenderbufferStorageMultisampleANGLE _RenderbufferStorageMultisampleANGLE { get; } + + // --- + + delegate void _glRenderbufferStorageMultisampleAPPLE(RenderbufferTarget target, int samples, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glRenderbufferStorageMultisampleAPPLE")] + _glRenderbufferStorageMultisampleAPPLE _RenderbufferStorageMultisampleAPPLE { get; } + + // --- + + delegate void _glRenderbufferStorageMultisampleAdvancedAMD(RenderbufferTarget target, int samples, int storageSamples, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glRenderbufferStorageMultisampleAdvancedAMD")] + _glRenderbufferStorageMultisampleAdvancedAMD _RenderbufferStorageMultisampleAdvancedAMD { get; } + + // --- + + delegate void _glRenderbufferStorageMultisampleCoverageNV(RenderbufferTarget target, int coverageSamples, int colorSamples, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glRenderbufferStorageMultisampleCoverageNV")] + _glRenderbufferStorageMultisampleCoverageNV _RenderbufferStorageMultisampleCoverageNV { get; } + + // --- + + delegate void _glRenderbufferStorageMultisampleEXT(RenderbufferTarget target, int samples, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glRenderbufferStorageMultisampleEXT")] + _glRenderbufferStorageMultisampleEXT _RenderbufferStorageMultisampleEXT { get; } + + // --- + + delegate void _glRenderbufferStorageMultisampleIMG(RenderbufferTarget target, int samples, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glRenderbufferStorageMultisampleIMG")] + _glRenderbufferStorageMultisampleIMG _RenderbufferStorageMultisampleIMG { get; } + + // --- + + delegate void _glRenderbufferStorageMultisampleNV(RenderbufferTarget target, int samples, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glRenderbufferStorageMultisampleNV")] + _glRenderbufferStorageMultisampleNV _RenderbufferStorageMultisampleNV { get; } + + // --- + + delegate void _glRenderbufferStorageOES(RenderbufferTarget target, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glRenderbufferStorageOES")] + _glRenderbufferStorageOES _RenderbufferStorageOES { get; } + + // --- + + delegate void _glReplacementCodePointerSUN(ReplacementCodeTypeSUN type, int stride, IntPtr* pointer); + [GlEntryPoint("glReplacementCodePointerSUN")] + _glReplacementCodePointerSUN _ReplacementCodePointerSUN { get; } + + // --- + + delegate void _glReplacementCodeubSUN(byte code); + [GlEntryPoint("glReplacementCodeubSUN")] + _glReplacementCodeubSUN _ReplacementCodeubSUN { get; } + + // --- + + delegate void _glReplacementCodeubvSUN(byte[] code); + [GlEntryPoint("glReplacementCodeubvSUN")] + _glReplacementCodeubvSUN _ReplacementCodeubvSUN { get; } + + delegate void _glReplacementCodeubvSUN_ptr(void* code); + [GlEntryPoint("glReplacementCodeubvSUN")] + _glReplacementCodeubvSUN_ptr _ReplacementCodeubvSUN_ptr { get; } + + delegate void _glReplacementCodeubvSUN_intptr(IntPtr code); + [GlEntryPoint("glReplacementCodeubvSUN")] + _glReplacementCodeubvSUN_intptr _ReplacementCodeubvSUN_intptr { get; } + + // --- + + delegate void _glReplacementCodeuiColor3fVertex3fSUN(uint rc, float r, float g, float b, float x, float y, float z); + [GlEntryPoint("glReplacementCodeuiColor3fVertex3fSUN")] + _glReplacementCodeuiColor3fVertex3fSUN _ReplacementCodeuiColor3fVertex3fSUN { get; } + + // --- + + delegate void _glReplacementCodeuiColor3fVertex3fvSUN(uint[] rc, float[] c, float[] v); + [GlEntryPoint("glReplacementCodeuiColor3fVertex3fvSUN")] + _glReplacementCodeuiColor3fVertex3fvSUN _ReplacementCodeuiColor3fVertex3fvSUN { get; } + + delegate void _glReplacementCodeuiColor3fVertex3fvSUN_ptr(void* rc, void* c, void* v); + [GlEntryPoint("glReplacementCodeuiColor3fVertex3fvSUN")] + _glReplacementCodeuiColor3fVertex3fvSUN_ptr _ReplacementCodeuiColor3fVertex3fvSUN_ptr { get; } + + delegate void _glReplacementCodeuiColor3fVertex3fvSUN_intptr(IntPtr rc, IntPtr c, IntPtr v); + [GlEntryPoint("glReplacementCodeuiColor3fVertex3fvSUN")] + _glReplacementCodeuiColor3fVertex3fvSUN_intptr _ReplacementCodeuiColor3fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glReplacementCodeuiColor4fNormal3fVertex3fSUN(uint rc, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z); + [GlEntryPoint("glReplacementCodeuiColor4fNormal3fVertex3fSUN")] + _glReplacementCodeuiColor4fNormal3fVertex3fSUN _ReplacementCodeuiColor4fNormal3fVertex3fSUN { get; } + + // --- + + delegate void _glReplacementCodeuiColor4fNormal3fVertex3fvSUN(uint[] rc, float[] c, float[] n, float[] v); + [GlEntryPoint("glReplacementCodeuiColor4fNormal3fVertex3fvSUN")] + _glReplacementCodeuiColor4fNormal3fVertex3fvSUN _ReplacementCodeuiColor4fNormal3fVertex3fvSUN { get; } + + delegate void _glReplacementCodeuiColor4fNormal3fVertex3fvSUN_ptr(void* rc, void* c, void* n, void* v); + [GlEntryPoint("glReplacementCodeuiColor4fNormal3fVertex3fvSUN")] + _glReplacementCodeuiColor4fNormal3fVertex3fvSUN_ptr _ReplacementCodeuiColor4fNormal3fVertex3fvSUN_ptr { get; } + + delegate void _glReplacementCodeuiColor4fNormal3fVertex3fvSUN_intptr(IntPtr rc, IntPtr c, IntPtr n, IntPtr v); + [GlEntryPoint("glReplacementCodeuiColor4fNormal3fVertex3fvSUN")] + _glReplacementCodeuiColor4fNormal3fVertex3fvSUN_intptr _ReplacementCodeuiColor4fNormal3fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glReplacementCodeuiColor4ubVertex3fSUN(uint rc, byte r, byte g, byte b, byte a, float x, float y, float z); + [GlEntryPoint("glReplacementCodeuiColor4ubVertex3fSUN")] + _glReplacementCodeuiColor4ubVertex3fSUN _ReplacementCodeuiColor4ubVertex3fSUN { get; } + + // --- + + delegate void _glReplacementCodeuiColor4ubVertex3fvSUN(uint[] rc, byte[] c, float[] v); + [GlEntryPoint("glReplacementCodeuiColor4ubVertex3fvSUN")] + _glReplacementCodeuiColor4ubVertex3fvSUN _ReplacementCodeuiColor4ubVertex3fvSUN { get; } + + delegate void _glReplacementCodeuiColor4ubVertex3fvSUN_ptr(void* rc, void* c, void* v); + [GlEntryPoint("glReplacementCodeuiColor4ubVertex3fvSUN")] + _glReplacementCodeuiColor4ubVertex3fvSUN_ptr _ReplacementCodeuiColor4ubVertex3fvSUN_ptr { get; } + + delegate void _glReplacementCodeuiColor4ubVertex3fvSUN_intptr(IntPtr rc, IntPtr c, IntPtr v); + [GlEntryPoint("glReplacementCodeuiColor4ubVertex3fvSUN")] + _glReplacementCodeuiColor4ubVertex3fvSUN_intptr _ReplacementCodeuiColor4ubVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glReplacementCodeuiNormal3fVertex3fSUN(uint rc, float nx, float ny, float nz, float x, float y, float z); + [GlEntryPoint("glReplacementCodeuiNormal3fVertex3fSUN")] + _glReplacementCodeuiNormal3fVertex3fSUN _ReplacementCodeuiNormal3fVertex3fSUN { get; } + + // --- + + delegate void _glReplacementCodeuiNormal3fVertex3fvSUN(uint[] rc, float[] n, float[] v); + [GlEntryPoint("glReplacementCodeuiNormal3fVertex3fvSUN")] + _glReplacementCodeuiNormal3fVertex3fvSUN _ReplacementCodeuiNormal3fVertex3fvSUN { get; } + + delegate void _glReplacementCodeuiNormal3fVertex3fvSUN_ptr(void* rc, void* n, void* v); + [GlEntryPoint("glReplacementCodeuiNormal3fVertex3fvSUN")] + _glReplacementCodeuiNormal3fVertex3fvSUN_ptr _ReplacementCodeuiNormal3fVertex3fvSUN_ptr { get; } + + delegate void _glReplacementCodeuiNormal3fVertex3fvSUN_intptr(IntPtr rc, IntPtr n, IntPtr v); + [GlEntryPoint("glReplacementCodeuiNormal3fVertex3fvSUN")] + _glReplacementCodeuiNormal3fVertex3fvSUN_intptr _ReplacementCodeuiNormal3fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glReplacementCodeuiSUN(uint code); + [GlEntryPoint("glReplacementCodeuiSUN")] + _glReplacementCodeuiSUN _ReplacementCodeuiSUN { get; } + + // --- + + delegate void _glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN(uint rc, float s, float t, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z); + [GlEntryPoint("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN")] + _glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN _ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN { get; } + + // --- + + delegate void _glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(uint[] rc, float[] tc, float[] c, float[] n, float[] v); + [GlEntryPoint("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN")] + _glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN _ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN { get; } + + delegate void _glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_ptr(void* rc, void* tc, void* c, void* n, void* v); + [GlEntryPoint("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN")] + _glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_ptr _ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_ptr { get; } + + delegate void _glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_intptr(IntPtr rc, IntPtr tc, IntPtr c, IntPtr n, IntPtr v); + [GlEntryPoint("glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN")] + _glReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_intptr _ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN(uint rc, float s, float t, float nx, float ny, float nz, float x, float y, float z); + [GlEntryPoint("glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN")] + _glReplacementCodeuiTexCoord2fNormal3fVertex3fSUN _ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN { get; } + + // --- + + delegate void _glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(uint[] rc, float[] tc, float[] n, float[] v); + [GlEntryPoint("glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN")] + _glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN _ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN { get; } + + delegate void _glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_ptr(void* rc, void* tc, void* n, void* v); + [GlEntryPoint("glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN")] + _glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_ptr _ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_ptr { get; } + + delegate void _glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_intptr(IntPtr rc, IntPtr tc, IntPtr n, IntPtr v); + [GlEntryPoint("glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN")] + _glReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_intptr _ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glReplacementCodeuiTexCoord2fVertex3fSUN(uint rc, float s, float t, float x, float y, float z); + [GlEntryPoint("glReplacementCodeuiTexCoord2fVertex3fSUN")] + _glReplacementCodeuiTexCoord2fVertex3fSUN _ReplacementCodeuiTexCoord2fVertex3fSUN { get; } + + // --- + + delegate void _glReplacementCodeuiTexCoord2fVertex3fvSUN(uint[] rc, float[] tc, float[] v); + [GlEntryPoint("glReplacementCodeuiTexCoord2fVertex3fvSUN")] + _glReplacementCodeuiTexCoord2fVertex3fvSUN _ReplacementCodeuiTexCoord2fVertex3fvSUN { get; } + + delegate void _glReplacementCodeuiTexCoord2fVertex3fvSUN_ptr(void* rc, void* tc, void* v); + [GlEntryPoint("glReplacementCodeuiTexCoord2fVertex3fvSUN")] + _glReplacementCodeuiTexCoord2fVertex3fvSUN_ptr _ReplacementCodeuiTexCoord2fVertex3fvSUN_ptr { get; } + + delegate void _glReplacementCodeuiTexCoord2fVertex3fvSUN_intptr(IntPtr rc, IntPtr tc, IntPtr v); + [GlEntryPoint("glReplacementCodeuiTexCoord2fVertex3fvSUN")] + _glReplacementCodeuiTexCoord2fVertex3fvSUN_intptr _ReplacementCodeuiTexCoord2fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glReplacementCodeuiVertex3fSUN(uint rc, float x, float y, float z); + [GlEntryPoint("glReplacementCodeuiVertex3fSUN")] + _glReplacementCodeuiVertex3fSUN _ReplacementCodeuiVertex3fSUN { get; } + + // --- + + delegate void _glReplacementCodeuiVertex3fvSUN(uint[] rc, float[] v); + [GlEntryPoint("glReplacementCodeuiVertex3fvSUN")] + _glReplacementCodeuiVertex3fvSUN _ReplacementCodeuiVertex3fvSUN { get; } + + delegate void _glReplacementCodeuiVertex3fvSUN_ptr(void* rc, void* v); + [GlEntryPoint("glReplacementCodeuiVertex3fvSUN")] + _glReplacementCodeuiVertex3fvSUN_ptr _ReplacementCodeuiVertex3fvSUN_ptr { get; } + + delegate void _glReplacementCodeuiVertex3fvSUN_intptr(IntPtr rc, IntPtr v); + [GlEntryPoint("glReplacementCodeuiVertex3fvSUN")] + _glReplacementCodeuiVertex3fvSUN_intptr _ReplacementCodeuiVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glReplacementCodeuivSUN(uint[] code); + [GlEntryPoint("glReplacementCodeuivSUN")] + _glReplacementCodeuivSUN _ReplacementCodeuivSUN { get; } + + delegate void _glReplacementCodeuivSUN_ptr(void* code); + [GlEntryPoint("glReplacementCodeuivSUN")] + _glReplacementCodeuivSUN_ptr _ReplacementCodeuivSUN_ptr { get; } + + delegate void _glReplacementCodeuivSUN_intptr(IntPtr code); + [GlEntryPoint("glReplacementCodeuivSUN")] + _glReplacementCodeuivSUN_intptr _ReplacementCodeuivSUN_intptr { get; } + + // --- + + delegate void _glReplacementCodeusSUN(ushort code); + [GlEntryPoint("glReplacementCodeusSUN")] + _glReplacementCodeusSUN _ReplacementCodeusSUN { get; } + + // --- + + delegate void _glReplacementCodeusvSUN(ushort[] code); + [GlEntryPoint("glReplacementCodeusvSUN")] + _glReplacementCodeusvSUN _ReplacementCodeusvSUN { get; } + + delegate void _glReplacementCodeusvSUN_ptr(void* code); + [GlEntryPoint("glReplacementCodeusvSUN")] + _glReplacementCodeusvSUN_ptr _ReplacementCodeusvSUN_ptr { get; } + + delegate void _glReplacementCodeusvSUN_intptr(IntPtr code); + [GlEntryPoint("glReplacementCodeusvSUN")] + _glReplacementCodeusvSUN_intptr _ReplacementCodeusvSUN_intptr { get; } + + // --- + + delegate void _glRequestResidentProgramsNV(int n, uint[] programs); + [GlEntryPoint("glRequestResidentProgramsNV")] + _glRequestResidentProgramsNV _RequestResidentProgramsNV { get; } + + delegate void _glRequestResidentProgramsNV_ptr(int n, void* programs); + [GlEntryPoint("glRequestResidentProgramsNV")] + _glRequestResidentProgramsNV_ptr _RequestResidentProgramsNV_ptr { get; } + + delegate void _glRequestResidentProgramsNV_intptr(int n, IntPtr programs); + [GlEntryPoint("glRequestResidentProgramsNV")] + _glRequestResidentProgramsNV_intptr _RequestResidentProgramsNV_intptr { get; } + + // --- + + delegate void _glResetHistogram(HistogramTargetEXT target); + [GlEntryPoint("glResetHistogram")] + _glResetHistogram _ResetHistogram { get; } + + // --- + + delegate void _glResetHistogramEXT(HistogramTargetEXT target); + [GlEntryPoint("glResetHistogramEXT")] + _glResetHistogramEXT _ResetHistogramEXT { get; } + + // --- + + delegate void _glResetMemoryObjectParameterNV(uint memory, int pname); + [GlEntryPoint("glResetMemoryObjectParameterNV")] + _glResetMemoryObjectParameterNV _ResetMemoryObjectParameterNV { get; } + + // --- + + delegate void _glResetMinmax(MinmaxTargetEXT target); + [GlEntryPoint("glResetMinmax")] + _glResetMinmax _ResetMinmax { get; } + + // --- + + delegate void _glResetMinmaxEXT(MinmaxTargetEXT target); + [GlEntryPoint("glResetMinmaxEXT")] + _glResetMinmaxEXT _ResetMinmaxEXT { get; } + + // --- + + delegate void _glResizeBuffersMESA(); + [GlEntryPoint("glResizeBuffersMESA")] + _glResizeBuffersMESA _ResizeBuffersMESA { get; } + + // --- + + delegate void _glResolveDepthValuesNV(); + [GlEntryPoint("glResolveDepthValuesNV")] + _glResolveDepthValuesNV _ResolveDepthValuesNV { get; } + + // --- + + delegate void _glResolveMultisampleFramebufferAPPLE(); + [GlEntryPoint("glResolveMultisampleFramebufferAPPLE")] + _glResolveMultisampleFramebufferAPPLE _ResolveMultisampleFramebufferAPPLE { get; } + + // --- + + delegate void _glResumeTransformFeedback(); + [GlEntryPoint("glResumeTransformFeedback")] + _glResumeTransformFeedback _ResumeTransformFeedback { get; } + + // --- + + delegate void _glResumeTransformFeedbackNV(); + [GlEntryPoint("glResumeTransformFeedbackNV")] + _glResumeTransformFeedbackNV _ResumeTransformFeedbackNV { get; } + + // --- + + delegate void _glRotated(double angle, double x, double y, double z); + [GlEntryPoint("glRotated")] + _glRotated _Rotated { get; } + + // --- + + delegate void _glRotatef(float angle, float x, float y, float z); + [GlEntryPoint("glRotatef")] + _glRotatef _Rotatef { get; } + + // --- + + delegate void _glRotatex(float angle, float x, float y, float z); + [GlEntryPoint("glRotatex")] + _glRotatex _Rotatex { get; } + + // --- + + delegate void _glRotatexOES(float angle, float x, float y, float z); + [GlEntryPoint("glRotatexOES")] + _glRotatexOES _RotatexOES { get; } + + // --- + + delegate void _glSampleCoverage(float value, bool invert); + [GlEntryPoint("glSampleCoverage")] + _glSampleCoverage _SampleCoverage { get; } + + // --- + + delegate void _glSampleCoverageARB(float value, bool invert); + [GlEntryPoint("glSampleCoverageARB")] + _glSampleCoverageARB _SampleCoverageARB { get; } + + // --- + + delegate void _glSampleCoveragex(int value, bool invert); + [GlEntryPoint("glSampleCoveragex")] + _glSampleCoveragex _SampleCoveragex { get; } + + // --- + + delegate void _glSampleCoveragexOES(int value, bool invert); + [GlEntryPoint("glSampleCoveragexOES")] + _glSampleCoveragexOES _SampleCoveragexOES { get; } + + // --- + + delegate void _glSampleMapATI(uint dst, uint interp, SwizzleOpATI swizzle); + [GlEntryPoint("glSampleMapATI")] + _glSampleMapATI _SampleMapATI { get; } + + // --- + + delegate void _glSampleMaskEXT(float value, bool invert); + [GlEntryPoint("glSampleMaskEXT")] + _glSampleMaskEXT _SampleMaskEXT { get; } + + // --- + + delegate void _glSampleMaskIndexedNV(uint index, int mask); + [GlEntryPoint("glSampleMaskIndexedNV")] + _glSampleMaskIndexedNV _SampleMaskIndexedNV { get; } + + // --- + + delegate void _glSampleMaskSGIS(float value, bool invert); + [GlEntryPoint("glSampleMaskSGIS")] + _glSampleMaskSGIS _SampleMaskSGIS { get; } + + // --- + + delegate void _glSampleMaski(uint maskNumber, int mask); + [GlEntryPoint("glSampleMaski")] + _glSampleMaski _SampleMaski { get; } + + // --- + + delegate void _glSamplePatternEXT(SamplePatternEXT pattern); + [GlEntryPoint("glSamplePatternEXT")] + _glSamplePatternEXT _SamplePatternEXT { get; } + + // --- + + delegate void _glSamplePatternSGIS(SamplePatternSGIS pattern); + [GlEntryPoint("glSamplePatternSGIS")] + _glSamplePatternSGIS _SamplePatternSGIS { get; } + + // --- + + delegate void _glSamplerParameterIiv(uint sampler, SamplerParameterI pname, int[] param); + [GlEntryPoint("glSamplerParameterIiv")] + _glSamplerParameterIiv _SamplerParameterIiv { get; } + + delegate void _glSamplerParameterIiv_ptr(uint sampler, SamplerParameterI pname, void* param); + [GlEntryPoint("glSamplerParameterIiv")] + _glSamplerParameterIiv_ptr _SamplerParameterIiv_ptr { get; } + + delegate void _glSamplerParameterIiv_intptr(uint sampler, SamplerParameterI pname, IntPtr param); + [GlEntryPoint("glSamplerParameterIiv")] + _glSamplerParameterIiv_intptr _SamplerParameterIiv_intptr { get; } + + // --- + + delegate void _glSamplerParameterIivEXT(uint sampler, SamplerParameterI pname, int[] param); + [GlEntryPoint("glSamplerParameterIivEXT")] + _glSamplerParameterIivEXT _SamplerParameterIivEXT { get; } + + delegate void _glSamplerParameterIivEXT_ptr(uint sampler, SamplerParameterI pname, void* param); + [GlEntryPoint("glSamplerParameterIivEXT")] + _glSamplerParameterIivEXT_ptr _SamplerParameterIivEXT_ptr { get; } + + delegate void _glSamplerParameterIivEXT_intptr(uint sampler, SamplerParameterI pname, IntPtr param); + [GlEntryPoint("glSamplerParameterIivEXT")] + _glSamplerParameterIivEXT_intptr _SamplerParameterIivEXT_intptr { get; } + + // --- + + delegate void _glSamplerParameterIivOES(uint sampler, SamplerParameterI pname, int[] param); + [GlEntryPoint("glSamplerParameterIivOES")] + _glSamplerParameterIivOES _SamplerParameterIivOES { get; } + + delegate void _glSamplerParameterIivOES_ptr(uint sampler, SamplerParameterI pname, void* param); + [GlEntryPoint("glSamplerParameterIivOES")] + _glSamplerParameterIivOES_ptr _SamplerParameterIivOES_ptr { get; } + + delegate void _glSamplerParameterIivOES_intptr(uint sampler, SamplerParameterI pname, IntPtr param); + [GlEntryPoint("glSamplerParameterIivOES")] + _glSamplerParameterIivOES_intptr _SamplerParameterIivOES_intptr { get; } + + // --- + + delegate void _glSamplerParameterIuiv(uint sampler, SamplerParameterI pname, uint[] param); + [GlEntryPoint("glSamplerParameterIuiv")] + _glSamplerParameterIuiv _SamplerParameterIuiv { get; } + + delegate void _glSamplerParameterIuiv_ptr(uint sampler, SamplerParameterI pname, void* param); + [GlEntryPoint("glSamplerParameterIuiv")] + _glSamplerParameterIuiv_ptr _SamplerParameterIuiv_ptr { get; } + + delegate void _glSamplerParameterIuiv_intptr(uint sampler, SamplerParameterI pname, IntPtr param); + [GlEntryPoint("glSamplerParameterIuiv")] + _glSamplerParameterIuiv_intptr _SamplerParameterIuiv_intptr { get; } + + // --- + + delegate void _glSamplerParameterIuivEXT(uint sampler, SamplerParameterI pname, uint[] param); + [GlEntryPoint("glSamplerParameterIuivEXT")] + _glSamplerParameterIuivEXT _SamplerParameterIuivEXT { get; } + + delegate void _glSamplerParameterIuivEXT_ptr(uint sampler, SamplerParameterI pname, void* param); + [GlEntryPoint("glSamplerParameterIuivEXT")] + _glSamplerParameterIuivEXT_ptr _SamplerParameterIuivEXT_ptr { get; } + + delegate void _glSamplerParameterIuivEXT_intptr(uint sampler, SamplerParameterI pname, IntPtr param); + [GlEntryPoint("glSamplerParameterIuivEXT")] + _glSamplerParameterIuivEXT_intptr _SamplerParameterIuivEXT_intptr { get; } + + // --- + + delegate void _glSamplerParameterIuivOES(uint sampler, SamplerParameterI pname, uint[] param); + [GlEntryPoint("glSamplerParameterIuivOES")] + _glSamplerParameterIuivOES _SamplerParameterIuivOES { get; } + + delegate void _glSamplerParameterIuivOES_ptr(uint sampler, SamplerParameterI pname, void* param); + [GlEntryPoint("glSamplerParameterIuivOES")] + _glSamplerParameterIuivOES_ptr _SamplerParameterIuivOES_ptr { get; } + + delegate void _glSamplerParameterIuivOES_intptr(uint sampler, SamplerParameterI pname, IntPtr param); + [GlEntryPoint("glSamplerParameterIuivOES")] + _glSamplerParameterIuivOES_intptr _SamplerParameterIuivOES_intptr { get; } + + // --- + + delegate void _glSamplerParameterf(uint sampler, SamplerParameterF pname, float param); + [GlEntryPoint("glSamplerParameterf")] + _glSamplerParameterf _SamplerParameterf { get; } + + // --- + + delegate void _glSamplerParameterfv(uint sampler, SamplerParameterF pname, float[] param); + [GlEntryPoint("glSamplerParameterfv")] + _glSamplerParameterfv _SamplerParameterfv { get; } + + delegate void _glSamplerParameterfv_ptr(uint sampler, SamplerParameterF pname, void* param); + [GlEntryPoint("glSamplerParameterfv")] + _glSamplerParameterfv_ptr _SamplerParameterfv_ptr { get; } + + delegate void _glSamplerParameterfv_intptr(uint sampler, SamplerParameterF pname, IntPtr param); + [GlEntryPoint("glSamplerParameterfv")] + _glSamplerParameterfv_intptr _SamplerParameterfv_intptr { get; } + + // --- + + delegate void _glSamplerParameteri(uint sampler, SamplerParameterI pname, int param); + [GlEntryPoint("glSamplerParameteri")] + _glSamplerParameteri _SamplerParameteri { get; } + + // --- + + delegate void _glSamplerParameteriv(uint sampler, SamplerParameterI pname, int[] param); + [GlEntryPoint("glSamplerParameteriv")] + _glSamplerParameteriv _SamplerParameteriv { get; } + + delegate void _glSamplerParameteriv_ptr(uint sampler, SamplerParameterI pname, void* param); + [GlEntryPoint("glSamplerParameteriv")] + _glSamplerParameteriv_ptr _SamplerParameteriv_ptr { get; } + + delegate void _glSamplerParameteriv_intptr(uint sampler, SamplerParameterI pname, IntPtr param); + [GlEntryPoint("glSamplerParameteriv")] + _glSamplerParameteriv_intptr _SamplerParameteriv_intptr { get; } + + // --- + + delegate void _glScaled(double x, double y, double z); + [GlEntryPoint("glScaled")] + _glScaled _Scaled { get; } + + // --- + + delegate void _glScalef(float x, float y, float z); + [GlEntryPoint("glScalef")] + _glScalef _Scalef { get; } + + // --- + + delegate void _glScalex(float x, float y, float z); + [GlEntryPoint("glScalex")] + _glScalex _Scalex { get; } + + // --- + + delegate void _glScalexOES(float x, float y, float z); + [GlEntryPoint("glScalexOES")] + _glScalexOES _ScalexOES { get; } + + // --- + + delegate void _glScissor(int x, int y, int width, int height); + [GlEntryPoint("glScissor")] + _glScissor _Scissor { get; } + + // --- + + delegate void _glScissorArrayv(uint first, int count, int[] v); + [GlEntryPoint("glScissorArrayv")] + _glScissorArrayv _ScissorArrayv { get; } + + delegate void _glScissorArrayv_ptr(uint first, int count, void* v); + [GlEntryPoint("glScissorArrayv")] + _glScissorArrayv_ptr _ScissorArrayv_ptr { get; } + + delegate void _glScissorArrayv_intptr(uint first, int count, IntPtr v); + [GlEntryPoint("glScissorArrayv")] + _glScissorArrayv_intptr _ScissorArrayv_intptr { get; } + + // --- + + delegate void _glScissorArrayvNV(uint first, int count, int[] v); + [GlEntryPoint("glScissorArrayvNV")] + _glScissorArrayvNV _ScissorArrayvNV { get; } + + delegate void _glScissorArrayvNV_ptr(uint first, int count, void* v); + [GlEntryPoint("glScissorArrayvNV")] + _glScissorArrayvNV_ptr _ScissorArrayvNV_ptr { get; } + + delegate void _glScissorArrayvNV_intptr(uint first, int count, IntPtr v); + [GlEntryPoint("glScissorArrayvNV")] + _glScissorArrayvNV_intptr _ScissorArrayvNV_intptr { get; } + + // --- + + delegate void _glScissorArrayvOES(uint first, int count, int[] v); + [GlEntryPoint("glScissorArrayvOES")] + _glScissorArrayvOES _ScissorArrayvOES { get; } + + delegate void _glScissorArrayvOES_ptr(uint first, int count, void* v); + [GlEntryPoint("glScissorArrayvOES")] + _glScissorArrayvOES_ptr _ScissorArrayvOES_ptr { get; } + + delegate void _glScissorArrayvOES_intptr(uint first, int count, IntPtr v); + [GlEntryPoint("glScissorArrayvOES")] + _glScissorArrayvOES_intptr _ScissorArrayvOES_intptr { get; } + + // --- + + delegate void _glScissorExclusiveArrayvNV(uint first, int count, int[] v); + [GlEntryPoint("glScissorExclusiveArrayvNV")] + _glScissorExclusiveArrayvNV _ScissorExclusiveArrayvNV { get; } + + delegate void _glScissorExclusiveArrayvNV_ptr(uint first, int count, void* v); + [GlEntryPoint("glScissorExclusiveArrayvNV")] + _glScissorExclusiveArrayvNV_ptr _ScissorExclusiveArrayvNV_ptr { get; } + + delegate void _glScissorExclusiveArrayvNV_intptr(uint first, int count, IntPtr v); + [GlEntryPoint("glScissorExclusiveArrayvNV")] + _glScissorExclusiveArrayvNV_intptr _ScissorExclusiveArrayvNV_intptr { get; } + + // --- + + delegate void _glScissorExclusiveNV(int x, int y, int width, int height); + [GlEntryPoint("glScissorExclusiveNV")] + _glScissorExclusiveNV _ScissorExclusiveNV { get; } + + // --- + + delegate void _glScissorIndexed(uint index, int left, int bottom, int width, int height); + [GlEntryPoint("glScissorIndexed")] + _glScissorIndexed _ScissorIndexed { get; } + + // --- + + delegate void _glScissorIndexedNV(uint index, int left, int bottom, int width, int height); + [GlEntryPoint("glScissorIndexedNV")] + _glScissorIndexedNV _ScissorIndexedNV { get; } + + // --- + + delegate void _glScissorIndexedOES(uint index, int left, int bottom, int width, int height); + [GlEntryPoint("glScissorIndexedOES")] + _glScissorIndexedOES _ScissorIndexedOES { get; } + + // --- + + delegate void _glScissorIndexedv(uint index, int[] v); + [GlEntryPoint("glScissorIndexedv")] + _glScissorIndexedv _ScissorIndexedv { get; } + + delegate void _glScissorIndexedv_ptr(uint index, void* v); + [GlEntryPoint("glScissorIndexedv")] + _glScissorIndexedv_ptr _ScissorIndexedv_ptr { get; } + + delegate void _glScissorIndexedv_intptr(uint index, IntPtr v); + [GlEntryPoint("glScissorIndexedv")] + _glScissorIndexedv_intptr _ScissorIndexedv_intptr { get; } + + // --- + + delegate void _glScissorIndexedvNV(uint index, int[] v); + [GlEntryPoint("glScissorIndexedvNV")] + _glScissorIndexedvNV _ScissorIndexedvNV { get; } + + delegate void _glScissorIndexedvNV_ptr(uint index, void* v); + [GlEntryPoint("glScissorIndexedvNV")] + _glScissorIndexedvNV_ptr _ScissorIndexedvNV_ptr { get; } + + delegate void _glScissorIndexedvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glScissorIndexedvNV")] + _glScissorIndexedvNV_intptr _ScissorIndexedvNV_intptr { get; } + + // --- + + delegate void _glScissorIndexedvOES(uint index, int[] v); + [GlEntryPoint("glScissorIndexedvOES")] + _glScissorIndexedvOES _ScissorIndexedvOES { get; } + + delegate void _glScissorIndexedvOES_ptr(uint index, void* v); + [GlEntryPoint("glScissorIndexedvOES")] + _glScissorIndexedvOES_ptr _ScissorIndexedvOES_ptr { get; } + + delegate void _glScissorIndexedvOES_intptr(uint index, IntPtr v); + [GlEntryPoint("glScissorIndexedvOES")] + _glScissorIndexedvOES_intptr _ScissorIndexedvOES_intptr { get; } + + // --- + + delegate void _glSecondaryColor3b(sbyte red, sbyte green, sbyte blue); + [GlEntryPoint("glSecondaryColor3b")] + _glSecondaryColor3b _SecondaryColor3b { get; } + + // --- + + delegate void _glSecondaryColor3bEXT(sbyte red, sbyte green, sbyte blue); + [GlEntryPoint("glSecondaryColor3bEXT")] + _glSecondaryColor3bEXT _SecondaryColor3bEXT { get; } + + // --- + + delegate void _glSecondaryColor3bv(sbyte[] v); + [GlEntryPoint("glSecondaryColor3bv")] + _glSecondaryColor3bv _SecondaryColor3bv { get; } + + delegate void _glSecondaryColor3bv_ptr(void* v); + [GlEntryPoint("glSecondaryColor3bv")] + _glSecondaryColor3bv_ptr _SecondaryColor3bv_ptr { get; } + + delegate void _glSecondaryColor3bv_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3bv")] + _glSecondaryColor3bv_intptr _SecondaryColor3bv_intptr { get; } + + // --- + + delegate void _glSecondaryColor3bvEXT(sbyte[] v); + [GlEntryPoint("glSecondaryColor3bvEXT")] + _glSecondaryColor3bvEXT _SecondaryColor3bvEXT { get; } + + delegate void _glSecondaryColor3bvEXT_ptr(void* v); + [GlEntryPoint("glSecondaryColor3bvEXT")] + _glSecondaryColor3bvEXT_ptr _SecondaryColor3bvEXT_ptr { get; } + + delegate void _glSecondaryColor3bvEXT_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3bvEXT")] + _glSecondaryColor3bvEXT_intptr _SecondaryColor3bvEXT_intptr { get; } + + // --- + + delegate void _glSecondaryColor3d(double red, double green, double blue); + [GlEntryPoint("glSecondaryColor3d")] + _glSecondaryColor3d _SecondaryColor3d { get; } + + // --- + + delegate void _glSecondaryColor3dEXT(double red, double green, double blue); + [GlEntryPoint("glSecondaryColor3dEXT")] + _glSecondaryColor3dEXT _SecondaryColor3dEXT { get; } + + // --- + + delegate void _glSecondaryColor3dv(double[] v); + [GlEntryPoint("glSecondaryColor3dv")] + _glSecondaryColor3dv _SecondaryColor3dv { get; } + + delegate void _glSecondaryColor3dv_ptr(void* v); + [GlEntryPoint("glSecondaryColor3dv")] + _glSecondaryColor3dv_ptr _SecondaryColor3dv_ptr { get; } + + delegate void _glSecondaryColor3dv_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3dv")] + _glSecondaryColor3dv_intptr _SecondaryColor3dv_intptr { get; } + + // --- + + delegate void _glSecondaryColor3dvEXT(double[] v); + [GlEntryPoint("glSecondaryColor3dvEXT")] + _glSecondaryColor3dvEXT _SecondaryColor3dvEXT { get; } + + delegate void _glSecondaryColor3dvEXT_ptr(void* v); + [GlEntryPoint("glSecondaryColor3dvEXT")] + _glSecondaryColor3dvEXT_ptr _SecondaryColor3dvEXT_ptr { get; } + + delegate void _glSecondaryColor3dvEXT_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3dvEXT")] + _glSecondaryColor3dvEXT_intptr _SecondaryColor3dvEXT_intptr { get; } + + // --- + + delegate void _glSecondaryColor3f(float red, float green, float blue); + [GlEntryPoint("glSecondaryColor3f")] + _glSecondaryColor3f _SecondaryColor3f { get; } + + // --- + + delegate void _glSecondaryColor3fEXT(float red, float green, float blue); + [GlEntryPoint("glSecondaryColor3fEXT")] + _glSecondaryColor3fEXT _SecondaryColor3fEXT { get; } + + // --- + + delegate void _glSecondaryColor3fv(float[] v); + [GlEntryPoint("glSecondaryColor3fv")] + _glSecondaryColor3fv _SecondaryColor3fv { get; } + + delegate void _glSecondaryColor3fv_ptr(void* v); + [GlEntryPoint("glSecondaryColor3fv")] + _glSecondaryColor3fv_ptr _SecondaryColor3fv_ptr { get; } + + delegate void _glSecondaryColor3fv_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3fv")] + _glSecondaryColor3fv_intptr _SecondaryColor3fv_intptr { get; } + + // --- + + delegate void _glSecondaryColor3fvEXT(float[] v); + [GlEntryPoint("glSecondaryColor3fvEXT")] + _glSecondaryColor3fvEXT _SecondaryColor3fvEXT { get; } + + delegate void _glSecondaryColor3fvEXT_ptr(void* v); + [GlEntryPoint("glSecondaryColor3fvEXT")] + _glSecondaryColor3fvEXT_ptr _SecondaryColor3fvEXT_ptr { get; } + + delegate void _glSecondaryColor3fvEXT_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3fvEXT")] + _glSecondaryColor3fvEXT_intptr _SecondaryColor3fvEXT_intptr { get; } + + // --- + + delegate void _glSecondaryColor3hNV(float red, float green, float blue); + [GlEntryPoint("glSecondaryColor3hNV")] + _glSecondaryColor3hNV _SecondaryColor3hNV { get; } + + // --- + + delegate void _glSecondaryColor3hvNV(float[] v); + [GlEntryPoint("glSecondaryColor3hvNV")] + _glSecondaryColor3hvNV _SecondaryColor3hvNV { get; } + + delegate void _glSecondaryColor3hvNV_ptr(void* v); + [GlEntryPoint("glSecondaryColor3hvNV")] + _glSecondaryColor3hvNV_ptr _SecondaryColor3hvNV_ptr { get; } + + delegate void _glSecondaryColor3hvNV_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3hvNV")] + _glSecondaryColor3hvNV_intptr _SecondaryColor3hvNV_intptr { get; } + + // --- + + delegate void _glSecondaryColor3i(int red, int green, int blue); + [GlEntryPoint("glSecondaryColor3i")] + _glSecondaryColor3i _SecondaryColor3i { get; } + + // --- + + delegate void _glSecondaryColor3iEXT(int red, int green, int blue); + [GlEntryPoint("glSecondaryColor3iEXT")] + _glSecondaryColor3iEXT _SecondaryColor3iEXT { get; } + + // --- + + delegate void _glSecondaryColor3iv(int[] v); + [GlEntryPoint("glSecondaryColor3iv")] + _glSecondaryColor3iv _SecondaryColor3iv { get; } + + delegate void _glSecondaryColor3iv_ptr(void* v); + [GlEntryPoint("glSecondaryColor3iv")] + _glSecondaryColor3iv_ptr _SecondaryColor3iv_ptr { get; } + + delegate void _glSecondaryColor3iv_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3iv")] + _glSecondaryColor3iv_intptr _SecondaryColor3iv_intptr { get; } + + // --- + + delegate void _glSecondaryColor3ivEXT(int[] v); + [GlEntryPoint("glSecondaryColor3ivEXT")] + _glSecondaryColor3ivEXT _SecondaryColor3ivEXT { get; } + + delegate void _glSecondaryColor3ivEXT_ptr(void* v); + [GlEntryPoint("glSecondaryColor3ivEXT")] + _glSecondaryColor3ivEXT_ptr _SecondaryColor3ivEXT_ptr { get; } + + delegate void _glSecondaryColor3ivEXT_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3ivEXT")] + _glSecondaryColor3ivEXT_intptr _SecondaryColor3ivEXT_intptr { get; } + + // --- + + delegate void _glSecondaryColor3s(short red, short green, short blue); + [GlEntryPoint("glSecondaryColor3s")] + _glSecondaryColor3s _SecondaryColor3s { get; } + + // --- + + delegate void _glSecondaryColor3sEXT(short red, short green, short blue); + [GlEntryPoint("glSecondaryColor3sEXT")] + _glSecondaryColor3sEXT _SecondaryColor3sEXT { get; } + + // --- + + delegate void _glSecondaryColor3sv(short[] v); + [GlEntryPoint("glSecondaryColor3sv")] + _glSecondaryColor3sv _SecondaryColor3sv { get; } + + delegate void _glSecondaryColor3sv_ptr(void* v); + [GlEntryPoint("glSecondaryColor3sv")] + _glSecondaryColor3sv_ptr _SecondaryColor3sv_ptr { get; } + + delegate void _glSecondaryColor3sv_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3sv")] + _glSecondaryColor3sv_intptr _SecondaryColor3sv_intptr { get; } + + // --- + + delegate void _glSecondaryColor3svEXT(short[] v); + [GlEntryPoint("glSecondaryColor3svEXT")] + _glSecondaryColor3svEXT _SecondaryColor3svEXT { get; } + + delegate void _glSecondaryColor3svEXT_ptr(void* v); + [GlEntryPoint("glSecondaryColor3svEXT")] + _glSecondaryColor3svEXT_ptr _SecondaryColor3svEXT_ptr { get; } + + delegate void _glSecondaryColor3svEXT_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3svEXT")] + _glSecondaryColor3svEXT_intptr _SecondaryColor3svEXT_intptr { get; } + + // --- + + delegate void _glSecondaryColor3ub(byte red, byte green, byte blue); + [GlEntryPoint("glSecondaryColor3ub")] + _glSecondaryColor3ub _SecondaryColor3ub { get; } + + // --- + + delegate void _glSecondaryColor3ubEXT(byte red, byte green, byte blue); + [GlEntryPoint("glSecondaryColor3ubEXT")] + _glSecondaryColor3ubEXT _SecondaryColor3ubEXT { get; } + + // --- + + delegate void _glSecondaryColor3ubv(byte[] v); + [GlEntryPoint("glSecondaryColor3ubv")] + _glSecondaryColor3ubv _SecondaryColor3ubv { get; } + + delegate void _glSecondaryColor3ubv_ptr(void* v); + [GlEntryPoint("glSecondaryColor3ubv")] + _glSecondaryColor3ubv_ptr _SecondaryColor3ubv_ptr { get; } + + delegate void _glSecondaryColor3ubv_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3ubv")] + _glSecondaryColor3ubv_intptr _SecondaryColor3ubv_intptr { get; } + + // --- + + delegate void _glSecondaryColor3ubvEXT(byte[] v); + [GlEntryPoint("glSecondaryColor3ubvEXT")] + _glSecondaryColor3ubvEXT _SecondaryColor3ubvEXT { get; } + + delegate void _glSecondaryColor3ubvEXT_ptr(void* v); + [GlEntryPoint("glSecondaryColor3ubvEXT")] + _glSecondaryColor3ubvEXT_ptr _SecondaryColor3ubvEXT_ptr { get; } + + delegate void _glSecondaryColor3ubvEXT_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3ubvEXT")] + _glSecondaryColor3ubvEXT_intptr _SecondaryColor3ubvEXT_intptr { get; } + + // --- + + delegate void _glSecondaryColor3ui(uint red, uint green, uint blue); + [GlEntryPoint("glSecondaryColor3ui")] + _glSecondaryColor3ui _SecondaryColor3ui { get; } + + // --- + + delegate void _glSecondaryColor3uiEXT(uint red, uint green, uint blue); + [GlEntryPoint("glSecondaryColor3uiEXT")] + _glSecondaryColor3uiEXT _SecondaryColor3uiEXT { get; } + + // --- + + delegate void _glSecondaryColor3uiv(uint[] v); + [GlEntryPoint("glSecondaryColor3uiv")] + _glSecondaryColor3uiv _SecondaryColor3uiv { get; } + + delegate void _glSecondaryColor3uiv_ptr(void* v); + [GlEntryPoint("glSecondaryColor3uiv")] + _glSecondaryColor3uiv_ptr _SecondaryColor3uiv_ptr { get; } + + delegate void _glSecondaryColor3uiv_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3uiv")] + _glSecondaryColor3uiv_intptr _SecondaryColor3uiv_intptr { get; } + + // --- + + delegate void _glSecondaryColor3uivEXT(uint[] v); + [GlEntryPoint("glSecondaryColor3uivEXT")] + _glSecondaryColor3uivEXT _SecondaryColor3uivEXT { get; } + + delegate void _glSecondaryColor3uivEXT_ptr(void* v); + [GlEntryPoint("glSecondaryColor3uivEXT")] + _glSecondaryColor3uivEXT_ptr _SecondaryColor3uivEXT_ptr { get; } + + delegate void _glSecondaryColor3uivEXT_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3uivEXT")] + _glSecondaryColor3uivEXT_intptr _SecondaryColor3uivEXT_intptr { get; } + + // --- + + delegate void _glSecondaryColor3us(ushort red, ushort green, ushort blue); + [GlEntryPoint("glSecondaryColor3us")] + _glSecondaryColor3us _SecondaryColor3us { get; } + + // --- + + delegate void _glSecondaryColor3usEXT(ushort red, ushort green, ushort blue); + [GlEntryPoint("glSecondaryColor3usEXT")] + _glSecondaryColor3usEXT _SecondaryColor3usEXT { get; } + + // --- + + delegate void _glSecondaryColor3usv(ushort[] v); + [GlEntryPoint("glSecondaryColor3usv")] + _glSecondaryColor3usv _SecondaryColor3usv { get; } + + delegate void _glSecondaryColor3usv_ptr(void* v); + [GlEntryPoint("glSecondaryColor3usv")] + _glSecondaryColor3usv_ptr _SecondaryColor3usv_ptr { get; } + + delegate void _glSecondaryColor3usv_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3usv")] + _glSecondaryColor3usv_intptr _SecondaryColor3usv_intptr { get; } + + // --- + + delegate void _glSecondaryColor3usvEXT(ushort[] v); + [GlEntryPoint("glSecondaryColor3usvEXT")] + _glSecondaryColor3usvEXT _SecondaryColor3usvEXT { get; } + + delegate void _glSecondaryColor3usvEXT_ptr(void* v); + [GlEntryPoint("glSecondaryColor3usvEXT")] + _glSecondaryColor3usvEXT_ptr _SecondaryColor3usvEXT_ptr { get; } + + delegate void _glSecondaryColor3usvEXT_intptr(IntPtr v); + [GlEntryPoint("glSecondaryColor3usvEXT")] + _glSecondaryColor3usvEXT_intptr _SecondaryColor3usvEXT_intptr { get; } + + // --- + + delegate void _glSecondaryColorFormatNV(int size, ColorPointerType type, int stride); + [GlEntryPoint("glSecondaryColorFormatNV")] + _glSecondaryColorFormatNV _SecondaryColorFormatNV { get; } + + // --- + + delegate void _glSecondaryColorP3ui(ColorPointerType type, uint color); + [GlEntryPoint("glSecondaryColorP3ui")] + _glSecondaryColorP3ui _SecondaryColorP3ui { get; } + + // --- + + delegate void _glSecondaryColorP3uiv(ColorPointerType type, uint[] color); + [GlEntryPoint("glSecondaryColorP3uiv")] + _glSecondaryColorP3uiv _SecondaryColorP3uiv { get; } + + delegate void _glSecondaryColorP3uiv_ptr(ColorPointerType type, void* color); + [GlEntryPoint("glSecondaryColorP3uiv")] + _glSecondaryColorP3uiv_ptr _SecondaryColorP3uiv_ptr { get; } + + delegate void _glSecondaryColorP3uiv_intptr(ColorPointerType type, IntPtr color); + [GlEntryPoint("glSecondaryColorP3uiv")] + _glSecondaryColorP3uiv_intptr _SecondaryColorP3uiv_intptr { get; } + + // --- + + delegate void _glSecondaryColorPointer(int size, ColorPointerType type, int stride, IntPtr pointer); + [GlEntryPoint("glSecondaryColorPointer")] + _glSecondaryColorPointer _SecondaryColorPointer { get; } + + // --- + + delegate void _glSecondaryColorPointerEXT(int size, ColorPointerType type, int stride, IntPtr pointer); + [GlEntryPoint("glSecondaryColorPointerEXT")] + _glSecondaryColorPointerEXT _SecondaryColorPointerEXT { get; } + + // --- + + delegate void _glSecondaryColorPointerListIBM(int size, SecondaryColorPointerTypeIBM type, int stride, IntPtr* pointer, int ptrstride); + [GlEntryPoint("glSecondaryColorPointerListIBM")] + _glSecondaryColorPointerListIBM _SecondaryColorPointerListIBM { get; } + + // --- + + delegate void _glSelectBuffer(int size, uint[] buffer); + [GlEntryPoint("glSelectBuffer")] + _glSelectBuffer _SelectBuffer { get; } + + delegate void _glSelectBuffer_ptr(int size, void* buffer); + [GlEntryPoint("glSelectBuffer")] + _glSelectBuffer_ptr _SelectBuffer_ptr { get; } + + delegate void _glSelectBuffer_intptr(int size, IntPtr buffer); + [GlEntryPoint("glSelectBuffer")] + _glSelectBuffer_intptr _SelectBuffer_intptr { get; } + + // --- + + delegate void _glSelectPerfMonitorCountersAMD(uint monitor, bool enable, uint group, int numCounters, uint[] counterList); + [GlEntryPoint("glSelectPerfMonitorCountersAMD")] + _glSelectPerfMonitorCountersAMD _SelectPerfMonitorCountersAMD { get; } + + delegate void _glSelectPerfMonitorCountersAMD_ptr(uint monitor, bool enable, uint group, int numCounters, void* counterList); + [GlEntryPoint("glSelectPerfMonitorCountersAMD")] + _glSelectPerfMonitorCountersAMD_ptr _SelectPerfMonitorCountersAMD_ptr { get; } + + delegate void _glSelectPerfMonitorCountersAMD_intptr(uint monitor, bool enable, uint group, int numCounters, IntPtr counterList); + [GlEntryPoint("glSelectPerfMonitorCountersAMD")] + _glSelectPerfMonitorCountersAMD_intptr _SelectPerfMonitorCountersAMD_intptr { get; } + + // --- + + delegate void _glSemaphoreParameterui64vEXT(uint semaphore, SemaphoreParameterName pname, UInt64[] @params); + [GlEntryPoint("glSemaphoreParameterui64vEXT")] + _glSemaphoreParameterui64vEXT _SemaphoreParameterui64vEXT { get; } + + delegate void _glSemaphoreParameterui64vEXT_ptr(uint semaphore, SemaphoreParameterName pname, void* @params); + [GlEntryPoint("glSemaphoreParameterui64vEXT")] + _glSemaphoreParameterui64vEXT_ptr _SemaphoreParameterui64vEXT_ptr { get; } + + delegate void _glSemaphoreParameterui64vEXT_intptr(uint semaphore, SemaphoreParameterName pname, IntPtr @params); + [GlEntryPoint("glSemaphoreParameterui64vEXT")] + _glSemaphoreParameterui64vEXT_intptr _SemaphoreParameterui64vEXT_intptr { get; } + + // --- + + delegate void _glSeparableFilter2D(SeparableTargetEXT target, InternalFormat internalformat, int width, int height, PixelFormat format, PixelType type, IntPtr row, IntPtr column); + [GlEntryPoint("glSeparableFilter2D")] + _glSeparableFilter2D _SeparableFilter2D { get; } + + // --- + + delegate void _glSeparableFilter2DEXT(SeparableTargetEXT target, InternalFormat internalformat, int width, int height, PixelFormat format, PixelType type, IntPtr row, IntPtr column); + [GlEntryPoint("glSeparableFilter2DEXT")] + _glSeparableFilter2DEXT _SeparableFilter2DEXT { get; } + + // --- + + delegate void _glSetFenceAPPLE(uint fence); + [GlEntryPoint("glSetFenceAPPLE")] + _glSetFenceAPPLE _SetFenceAPPLE { get; } + + // --- + + delegate void _glSetFenceNV(uint fence, FenceConditionNV condition); + [GlEntryPoint("glSetFenceNV")] + _glSetFenceNV _SetFenceNV { get; } + + // --- + + delegate void _glSetFragmentShaderConstantATI(uint dst, float[] value); + [GlEntryPoint("glSetFragmentShaderConstantATI")] + _glSetFragmentShaderConstantATI _SetFragmentShaderConstantATI { get; } + + delegate void _glSetFragmentShaderConstantATI_ptr(uint dst, void* value); + [GlEntryPoint("glSetFragmentShaderConstantATI")] + _glSetFragmentShaderConstantATI_ptr _SetFragmentShaderConstantATI_ptr { get; } + + delegate void _glSetFragmentShaderConstantATI_intptr(uint dst, IntPtr value); + [GlEntryPoint("glSetFragmentShaderConstantATI")] + _glSetFragmentShaderConstantATI_intptr _SetFragmentShaderConstantATI_intptr { get; } + + // --- + + delegate void _glSetInvariantEXT(uint id, ScalarType type, IntPtr addr); + [GlEntryPoint("glSetInvariantEXT")] + _glSetInvariantEXT _SetInvariantEXT { get; } + + // --- + + delegate void _glSetLocalConstantEXT(uint id, ScalarType type, IntPtr addr); + [GlEntryPoint("glSetLocalConstantEXT")] + _glSetLocalConstantEXT _SetLocalConstantEXT { get; } + + // --- + + delegate void _glSetMultisamplefvAMD(int pname, uint index, float[] val); + [GlEntryPoint("glSetMultisamplefvAMD")] + _glSetMultisamplefvAMD _SetMultisamplefvAMD { get; } + + delegate void _glSetMultisamplefvAMD_ptr(int pname, uint index, void* val); + [GlEntryPoint("glSetMultisamplefvAMD")] + _glSetMultisamplefvAMD_ptr _SetMultisamplefvAMD_ptr { get; } + + delegate void _glSetMultisamplefvAMD_intptr(int pname, uint index, IntPtr val); + [GlEntryPoint("glSetMultisamplefvAMD")] + _glSetMultisamplefvAMD_intptr _SetMultisamplefvAMD_intptr { get; } + + // --- + + delegate void _glShadeModel(ShadingModel mode); + [GlEntryPoint("glShadeModel")] + _glShadeModel _ShadeModel { get; } + + // --- + + delegate void _glShaderBinary(int count, uint[] shaders, int binaryformat, IntPtr binary, int length); + [GlEntryPoint("glShaderBinary")] + _glShaderBinary _ShaderBinary { get; } + + delegate void _glShaderBinary_ptr(int count, void* shaders, int binaryformat, IntPtr binary, int length); + [GlEntryPoint("glShaderBinary")] + _glShaderBinary_ptr _ShaderBinary_ptr { get; } + + delegate void _glShaderBinary_intptr(int count, IntPtr shaders, int binaryformat, IntPtr binary, int length); + [GlEntryPoint("glShaderBinary")] + _glShaderBinary_intptr _ShaderBinary_intptr { get; } + + // --- + + delegate void _glShaderOp1EXT(VertexShaderOpEXT op, uint res, uint arg1); + [GlEntryPoint("glShaderOp1EXT")] + _glShaderOp1EXT _ShaderOp1EXT { get; } + + // --- + + delegate void _glShaderOp2EXT(VertexShaderOpEXT op, uint res, uint arg1, uint arg2); + [GlEntryPoint("glShaderOp2EXT")] + _glShaderOp2EXT _ShaderOp2EXT { get; } + + // --- + + delegate void _glShaderOp3EXT(VertexShaderOpEXT op, uint res, uint arg1, uint arg2, uint arg3); + [GlEntryPoint("glShaderOp3EXT")] + _glShaderOp3EXT _ShaderOp3EXT { get; } + + // --- + + delegate void _glShaderSource(uint shader, int count, string[] @string, int[] length); + [GlEntryPoint("glShaderSource")] + _glShaderSource _ShaderSource { get; } + + delegate void _glShaderSource_ptr(uint shader, int count, void* @string, void* length); + [GlEntryPoint("glShaderSource")] + _glShaderSource_ptr _ShaderSource_ptr { get; } + + delegate void _glShaderSource_intptr(uint shader, int count, IntPtr @string, IntPtr length); + [GlEntryPoint("glShaderSource")] + _glShaderSource_intptr _ShaderSource_intptr { get; } + + // --- + + delegate void _glShaderSourceARB(int shaderObj, int count, IntPtr* @string, int[] length); + [GlEntryPoint("glShaderSourceARB")] + _glShaderSourceARB _ShaderSourceARB { get; } + + delegate void _glShaderSourceARB_ptr(int shaderObj, int count, IntPtr* @string, void* length); + [GlEntryPoint("glShaderSourceARB")] + _glShaderSourceARB_ptr _ShaderSourceARB_ptr { get; } + + delegate void _glShaderSourceARB_intptr(int shaderObj, int count, IntPtr* @string, IntPtr length); + [GlEntryPoint("glShaderSourceARB")] + _glShaderSourceARB_intptr _ShaderSourceARB_intptr { get; } + + // --- + + delegate void _glShaderStorageBlockBinding(uint program, uint storageBlockIndex, uint storageBlockBinding); + [GlEntryPoint("glShaderStorageBlockBinding")] + _glShaderStorageBlockBinding _ShaderStorageBlockBinding { get; } + + // --- + + delegate void _glShadingRateImageBarrierNV(bool synchronize); + [GlEntryPoint("glShadingRateImageBarrierNV")] + _glShadingRateImageBarrierNV _ShadingRateImageBarrierNV { get; } + + // --- + + delegate void _glShadingRateQCOM(ShadingRateQCOM rate); + [GlEntryPoint("glShadingRateQCOM")] + _glShadingRateQCOM _ShadingRateQCOM { get; } + + // --- + + delegate void _glShadingRateImagePaletteNV(uint viewport, uint first, int count, int[] rates); + [GlEntryPoint("glShadingRateImagePaletteNV")] + _glShadingRateImagePaletteNV _ShadingRateImagePaletteNV { get; } + + delegate void _glShadingRateImagePaletteNV_ptr(uint viewport, uint first, int count, void* rates); + [GlEntryPoint("glShadingRateImagePaletteNV")] + _glShadingRateImagePaletteNV_ptr _ShadingRateImagePaletteNV_ptr { get; } + + delegate void _glShadingRateImagePaletteNV_intptr(uint viewport, uint first, int count, IntPtr rates); + [GlEntryPoint("glShadingRateImagePaletteNV")] + _glShadingRateImagePaletteNV_intptr _ShadingRateImagePaletteNV_intptr { get; } + + // --- + + delegate void _glShadingRateSampleOrderNV(int order); + [GlEntryPoint("glShadingRateSampleOrderNV")] + _glShadingRateSampleOrderNV _ShadingRateSampleOrderNV { get; } + + // --- + + delegate void _glShadingRateSampleOrderCustomNV(int rate, uint samples, int[] locations); + [GlEntryPoint("glShadingRateSampleOrderCustomNV")] + _glShadingRateSampleOrderCustomNV _ShadingRateSampleOrderCustomNV { get; } + + delegate void _glShadingRateSampleOrderCustomNV_ptr(int rate, uint samples, void* locations); + [GlEntryPoint("glShadingRateSampleOrderCustomNV")] + _glShadingRateSampleOrderCustomNV_ptr _ShadingRateSampleOrderCustomNV_ptr { get; } + + delegate void _glShadingRateSampleOrderCustomNV_intptr(int rate, uint samples, IntPtr locations); + [GlEntryPoint("glShadingRateSampleOrderCustomNV")] + _glShadingRateSampleOrderCustomNV_intptr _ShadingRateSampleOrderCustomNV_intptr { get; } + + // --- + + delegate void _glSharpenTexFuncSGIS(TextureTarget target, int n, float[] points); + [GlEntryPoint("glSharpenTexFuncSGIS")] + _glSharpenTexFuncSGIS _SharpenTexFuncSGIS { get; } + + delegate void _glSharpenTexFuncSGIS_ptr(TextureTarget target, int n, void* points); + [GlEntryPoint("glSharpenTexFuncSGIS")] + _glSharpenTexFuncSGIS_ptr _SharpenTexFuncSGIS_ptr { get; } + + delegate void _glSharpenTexFuncSGIS_intptr(TextureTarget target, int n, IntPtr points); + [GlEntryPoint("glSharpenTexFuncSGIS")] + _glSharpenTexFuncSGIS_intptr _SharpenTexFuncSGIS_intptr { get; } + + // --- + + delegate void _glSignalSemaphoreEXT(uint semaphore, uint numBufferBarriers, uint[] buffers, uint numTextureBarriers, uint[] textures, TextureLayout[] dstLayouts); + [GlEntryPoint("glSignalSemaphoreEXT")] + _glSignalSemaphoreEXT _SignalSemaphoreEXT { get; } + + delegate void _glSignalSemaphoreEXT_ptr(uint semaphore, uint numBufferBarriers, void* buffers, uint numTextureBarriers, void* textures, void* dstLayouts); + [GlEntryPoint("glSignalSemaphoreEXT")] + _glSignalSemaphoreEXT_ptr _SignalSemaphoreEXT_ptr { get; } + + delegate void _glSignalSemaphoreEXT_intptr(uint semaphore, uint numBufferBarriers, IntPtr buffers, uint numTextureBarriers, IntPtr textures, IntPtr dstLayouts); + [GlEntryPoint("glSignalSemaphoreEXT")] + _glSignalSemaphoreEXT_intptr _SignalSemaphoreEXT_intptr { get; } + + // --- + + delegate void _glSignalSemaphoreui64NVX(uint signalGpu, int fenceObjectCount, uint[] semaphoreArray, UInt64[] fenceValueArray); + [GlEntryPoint("glSignalSemaphoreui64NVX")] + _glSignalSemaphoreui64NVX _SignalSemaphoreui64NVX { get; } + + delegate void _glSignalSemaphoreui64NVX_ptr(uint signalGpu, int fenceObjectCount, void* semaphoreArray, void* fenceValueArray); + [GlEntryPoint("glSignalSemaphoreui64NVX")] + _glSignalSemaphoreui64NVX_ptr _SignalSemaphoreui64NVX_ptr { get; } + + delegate void _glSignalSemaphoreui64NVX_intptr(uint signalGpu, int fenceObjectCount, IntPtr semaphoreArray, IntPtr fenceValueArray); + [GlEntryPoint("glSignalSemaphoreui64NVX")] + _glSignalSemaphoreui64NVX_intptr _SignalSemaphoreui64NVX_intptr { get; } + + // --- + + delegate void _glSpecializeShader(uint shader, string pEntryPoint, uint numSpecializationConstants, uint[] pConstantIndex, uint[] pConstantValue); + [GlEntryPoint("glSpecializeShader")] + _glSpecializeShader _SpecializeShader { get; } + + delegate void _glSpecializeShader_ptr(uint shader, void* pEntryPoint, uint numSpecializationConstants, void* pConstantIndex, void* pConstantValue); + [GlEntryPoint("glSpecializeShader")] + _glSpecializeShader_ptr _SpecializeShader_ptr { get; } + + delegate void _glSpecializeShader_intptr(uint shader, IntPtr pEntryPoint, uint numSpecializationConstants, IntPtr pConstantIndex, IntPtr pConstantValue); + [GlEntryPoint("glSpecializeShader")] + _glSpecializeShader_intptr _SpecializeShader_intptr { get; } + + // --- + + delegate void _glSpecializeShaderARB(uint shader, string pEntryPoint, uint numSpecializationConstants, uint[] pConstantIndex, uint[] pConstantValue); + [GlEntryPoint("glSpecializeShaderARB")] + _glSpecializeShaderARB _SpecializeShaderARB { get; } + + delegate void _glSpecializeShaderARB_ptr(uint shader, void* pEntryPoint, uint numSpecializationConstants, void* pConstantIndex, void* pConstantValue); + [GlEntryPoint("glSpecializeShaderARB")] + _glSpecializeShaderARB_ptr _SpecializeShaderARB_ptr { get; } + + delegate void _glSpecializeShaderARB_intptr(uint shader, IntPtr pEntryPoint, uint numSpecializationConstants, IntPtr pConstantIndex, IntPtr pConstantValue); + [GlEntryPoint("glSpecializeShaderARB")] + _glSpecializeShaderARB_intptr _SpecializeShaderARB_intptr { get; } + + // --- + + delegate void _glSpriteParameterfSGIX(SpriteParameterNameSGIX pname, float param); + [GlEntryPoint("glSpriteParameterfSGIX")] + _glSpriteParameterfSGIX _SpriteParameterfSGIX { get; } + + // --- + + delegate void _glSpriteParameterfvSGIX(SpriteParameterNameSGIX pname, float[] @params); + [GlEntryPoint("glSpriteParameterfvSGIX")] + _glSpriteParameterfvSGIX _SpriteParameterfvSGIX { get; } + + delegate void _glSpriteParameterfvSGIX_ptr(SpriteParameterNameSGIX pname, void* @params); + [GlEntryPoint("glSpriteParameterfvSGIX")] + _glSpriteParameterfvSGIX_ptr _SpriteParameterfvSGIX_ptr { get; } + + delegate void _glSpriteParameterfvSGIX_intptr(SpriteParameterNameSGIX pname, IntPtr @params); + [GlEntryPoint("glSpriteParameterfvSGIX")] + _glSpriteParameterfvSGIX_intptr _SpriteParameterfvSGIX_intptr { get; } + + // --- + + delegate void _glSpriteParameteriSGIX(SpriteParameterNameSGIX pname, int param); + [GlEntryPoint("glSpriteParameteriSGIX")] + _glSpriteParameteriSGIX _SpriteParameteriSGIX { get; } + + // --- + + delegate void _glSpriteParameterivSGIX(SpriteParameterNameSGIX pname, int[] @params); + [GlEntryPoint("glSpriteParameterivSGIX")] + _glSpriteParameterivSGIX _SpriteParameterivSGIX { get; } + + delegate void _glSpriteParameterivSGIX_ptr(SpriteParameterNameSGIX pname, void* @params); + [GlEntryPoint("glSpriteParameterivSGIX")] + _glSpriteParameterivSGIX_ptr _SpriteParameterivSGIX_ptr { get; } + + delegate void _glSpriteParameterivSGIX_intptr(SpriteParameterNameSGIX pname, IntPtr @params); + [GlEntryPoint("glSpriteParameterivSGIX")] + _glSpriteParameterivSGIX_intptr _SpriteParameterivSGIX_intptr { get; } + + // --- + + delegate void _glStartInstrumentsSGIX(); + [GlEntryPoint("glStartInstrumentsSGIX")] + _glStartInstrumentsSGIX _StartInstrumentsSGIX { get; } + + // --- + + delegate void _glStartTilingQCOM(uint x, uint y, uint width, uint height, int preserveMask); + [GlEntryPoint("glStartTilingQCOM")] + _glStartTilingQCOM _StartTilingQCOM { get; } + + // --- + + delegate void _glStateCaptureNV(uint state, int mode); + [GlEntryPoint("glStateCaptureNV")] + _glStateCaptureNV _StateCaptureNV { get; } + + // --- + + delegate void _glStencilClearTagEXT(int stencilTagBits, uint stencilClearTag); + [GlEntryPoint("glStencilClearTagEXT")] + _glStencilClearTagEXT _StencilClearTagEXT { get; } + + // --- + + delegate void _glStencilFillPathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathFillMode fillMode, uint mask, PathTransformType transformType, float[] transformValues); + [GlEntryPoint("glStencilFillPathInstancedNV")] + _glStencilFillPathInstancedNV _StencilFillPathInstancedNV { get; } + + delegate void _glStencilFillPathInstancedNV_ptr(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathFillMode fillMode, uint mask, PathTransformType transformType, void* transformValues); + [GlEntryPoint("glStencilFillPathInstancedNV")] + _glStencilFillPathInstancedNV_ptr _StencilFillPathInstancedNV_ptr { get; } + + delegate void _glStencilFillPathInstancedNV_intptr(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathFillMode fillMode, uint mask, PathTransformType transformType, IntPtr transformValues); + [GlEntryPoint("glStencilFillPathInstancedNV")] + _glStencilFillPathInstancedNV_intptr _StencilFillPathInstancedNV_intptr { get; } + + // --- + + delegate void _glStencilFillPathNV(uint path, PathFillMode fillMode, uint mask); + [GlEntryPoint("glStencilFillPathNV")] + _glStencilFillPathNV _StencilFillPathNV { get; } + + // --- + + delegate void _glStencilFunc(StencilFunction func, int @ref, uint mask); + [GlEntryPoint("glStencilFunc")] + _glStencilFunc _StencilFunc { get; } + + // --- + + delegate void _glStencilFuncSeparate(StencilFaceDirection face, StencilFunction func, int @ref, uint mask); + [GlEntryPoint("glStencilFuncSeparate")] + _glStencilFuncSeparate _StencilFuncSeparate { get; } + + // --- + + delegate void _glStencilFuncSeparateATI(StencilFunction frontfunc, StencilFunction backfunc, int @ref, uint mask); + [GlEntryPoint("glStencilFuncSeparateATI")] + _glStencilFuncSeparateATI _StencilFuncSeparateATI { get; } + + // --- + + delegate void _glStencilMask(uint mask); + [GlEntryPoint("glStencilMask")] + _glStencilMask _StencilMask { get; } + + // --- + + delegate void _glStencilMaskSeparate(StencilFaceDirection face, uint mask); + [GlEntryPoint("glStencilMaskSeparate")] + _glStencilMaskSeparate _StencilMaskSeparate { get; } + + // --- + + delegate void _glStencilOp(StencilOp fail, StencilOp zfail, StencilOp zpass); + [GlEntryPoint("glStencilOp")] + _glStencilOp _StencilOp { get; } + + // --- + + delegate void _glStencilOpSeparate(StencilFaceDirection face, StencilOp sfail, StencilOp dpfail, StencilOp dppass); + [GlEntryPoint("glStencilOpSeparate")] + _glStencilOpSeparate _StencilOpSeparate { get; } + + // --- + + delegate void _glStencilOpSeparateATI(StencilFaceDirection face, StencilOp sfail, StencilOp dpfail, StencilOp dppass); + [GlEntryPoint("glStencilOpSeparateATI")] + _glStencilOpSeparateATI _StencilOpSeparateATI { get; } + + // --- + + delegate void _glStencilOpValueAMD(StencilFaceDirection face, uint value); + [GlEntryPoint("glStencilOpValueAMD")] + _glStencilOpValueAMD _StencilOpValueAMD { get; } + + // --- + + delegate void _glStencilStrokePathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, int reference, uint mask, PathTransformType transformType, float[] transformValues); + [GlEntryPoint("glStencilStrokePathInstancedNV")] + _glStencilStrokePathInstancedNV _StencilStrokePathInstancedNV { get; } + + delegate void _glStencilStrokePathInstancedNV_ptr(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, int reference, uint mask, PathTransformType transformType, void* transformValues); + [GlEntryPoint("glStencilStrokePathInstancedNV")] + _glStencilStrokePathInstancedNV_ptr _StencilStrokePathInstancedNV_ptr { get; } + + delegate void _glStencilStrokePathInstancedNV_intptr(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, int reference, uint mask, PathTransformType transformType, IntPtr transformValues); + [GlEntryPoint("glStencilStrokePathInstancedNV")] + _glStencilStrokePathInstancedNV_intptr _StencilStrokePathInstancedNV_intptr { get; } + + // --- + + delegate void _glStencilStrokePathNV(uint path, int reference, uint mask); + [GlEntryPoint("glStencilStrokePathNV")] + _glStencilStrokePathNV _StencilStrokePathNV { get; } + + // --- + + delegate void _glStencilThenCoverFillPathInstancedNV(int numPaths, int pathNameType, IntPtr paths, uint pathBase, int fillMode, uint mask, int coverMode, int transformType, float[] transformValues); + [GlEntryPoint("glStencilThenCoverFillPathInstancedNV")] + _glStencilThenCoverFillPathInstancedNV _StencilThenCoverFillPathInstancedNV { get; } + + delegate void _glStencilThenCoverFillPathInstancedNV_ptr(int numPaths, int pathNameType, IntPtr paths, uint pathBase, int fillMode, uint mask, int coverMode, int transformType, void* transformValues); + [GlEntryPoint("glStencilThenCoverFillPathInstancedNV")] + _glStencilThenCoverFillPathInstancedNV_ptr _StencilThenCoverFillPathInstancedNV_ptr { get; } + + delegate void _glStencilThenCoverFillPathInstancedNV_intptr(int numPaths, int pathNameType, IntPtr paths, uint pathBase, int fillMode, uint mask, int coverMode, int transformType, IntPtr transformValues); + [GlEntryPoint("glStencilThenCoverFillPathInstancedNV")] + _glStencilThenCoverFillPathInstancedNV_intptr _StencilThenCoverFillPathInstancedNV_intptr { get; } + + // --- + + delegate void _glStencilThenCoverFillPathNV(uint path, int fillMode, uint mask, int coverMode); + [GlEntryPoint("glStencilThenCoverFillPathNV")] + _glStencilThenCoverFillPathNV _StencilThenCoverFillPathNV { get; } + + // --- + + delegate void _glStencilThenCoverStrokePathInstancedNV(int numPaths, int pathNameType, IntPtr paths, uint pathBase, int reference, uint mask, int coverMode, int transformType, float[] transformValues); + [GlEntryPoint("glStencilThenCoverStrokePathInstancedNV")] + _glStencilThenCoverStrokePathInstancedNV _StencilThenCoverStrokePathInstancedNV { get; } + + delegate void _glStencilThenCoverStrokePathInstancedNV_ptr(int numPaths, int pathNameType, IntPtr paths, uint pathBase, int reference, uint mask, int coverMode, int transformType, void* transformValues); + [GlEntryPoint("glStencilThenCoverStrokePathInstancedNV")] + _glStencilThenCoverStrokePathInstancedNV_ptr _StencilThenCoverStrokePathInstancedNV_ptr { get; } + + delegate void _glStencilThenCoverStrokePathInstancedNV_intptr(int numPaths, int pathNameType, IntPtr paths, uint pathBase, int reference, uint mask, int coverMode, int transformType, IntPtr transformValues); + [GlEntryPoint("glStencilThenCoverStrokePathInstancedNV")] + _glStencilThenCoverStrokePathInstancedNV_intptr _StencilThenCoverStrokePathInstancedNV_intptr { get; } + + // --- + + delegate void _glStencilThenCoverStrokePathNV(uint path, int reference, uint mask, int coverMode); + [GlEntryPoint("glStencilThenCoverStrokePathNV")] + _glStencilThenCoverStrokePathNV _StencilThenCoverStrokePathNV { get; } + + // --- + + delegate void _glStopInstrumentsSGIX(int marker); + [GlEntryPoint("glStopInstrumentsSGIX")] + _glStopInstrumentsSGIX _StopInstrumentsSGIX { get; } + + // --- + + delegate void _glStringMarkerGREMEDY(int len, IntPtr @string); + [GlEntryPoint("glStringMarkerGREMEDY")] + _glStringMarkerGREMEDY _StringMarkerGREMEDY { get; } + + // --- + + delegate void _glSubpixelPrecisionBiasNV(uint xbits, uint ybits); + [GlEntryPoint("glSubpixelPrecisionBiasNV")] + _glSubpixelPrecisionBiasNV _SubpixelPrecisionBiasNV { get; } + + // --- + + delegate void _glSwizzleEXT(uint res, uint @in, VertexShaderCoordOutEXT outX, VertexShaderCoordOutEXT outY, VertexShaderCoordOutEXT outZ, VertexShaderCoordOutEXT outW); + [GlEntryPoint("glSwizzleEXT")] + _glSwizzleEXT _SwizzleEXT { get; } + + // --- + + delegate void _glSyncTextureINTEL(uint texture); + [GlEntryPoint("glSyncTextureINTEL")] + _glSyncTextureINTEL _SyncTextureINTEL { get; } + + // --- + + delegate void _glTagSampleBufferSGIX(); + [GlEntryPoint("glTagSampleBufferSGIX")] + _glTagSampleBufferSGIX _TagSampleBufferSGIX { get; } + + // --- + + delegate void _glTangent3bEXT(sbyte tx, sbyte ty, sbyte tz); + [GlEntryPoint("glTangent3bEXT")] + _glTangent3bEXT _Tangent3bEXT { get; } + + // --- + + delegate void _glTangent3bvEXT(sbyte[] v); + [GlEntryPoint("glTangent3bvEXT")] + _glTangent3bvEXT _Tangent3bvEXT { get; } + + delegate void _glTangent3bvEXT_ptr(void* v); + [GlEntryPoint("glTangent3bvEXT")] + _glTangent3bvEXT_ptr _Tangent3bvEXT_ptr { get; } + + delegate void _glTangent3bvEXT_intptr(IntPtr v); + [GlEntryPoint("glTangent3bvEXT")] + _glTangent3bvEXT_intptr _Tangent3bvEXT_intptr { get; } + + // --- + + delegate void _glTangent3dEXT(double tx, double ty, double tz); + [GlEntryPoint("glTangent3dEXT")] + _glTangent3dEXT _Tangent3dEXT { get; } + + // --- + + delegate void _glTangent3dvEXT(double[] v); + [GlEntryPoint("glTangent3dvEXT")] + _glTangent3dvEXT _Tangent3dvEXT { get; } + + delegate void _glTangent3dvEXT_ptr(void* v); + [GlEntryPoint("glTangent3dvEXT")] + _glTangent3dvEXT_ptr _Tangent3dvEXT_ptr { get; } + + delegate void _glTangent3dvEXT_intptr(IntPtr v); + [GlEntryPoint("glTangent3dvEXT")] + _glTangent3dvEXT_intptr _Tangent3dvEXT_intptr { get; } + + // --- + + delegate void _glTangent3fEXT(float tx, float ty, float tz); + [GlEntryPoint("glTangent3fEXT")] + _glTangent3fEXT _Tangent3fEXT { get; } + + // --- + + delegate void _glTangent3fvEXT(float[] v); + [GlEntryPoint("glTangent3fvEXT")] + _glTangent3fvEXT _Tangent3fvEXT { get; } + + delegate void _glTangent3fvEXT_ptr(void* v); + [GlEntryPoint("glTangent3fvEXT")] + _glTangent3fvEXT_ptr _Tangent3fvEXT_ptr { get; } + + delegate void _glTangent3fvEXT_intptr(IntPtr v); + [GlEntryPoint("glTangent3fvEXT")] + _glTangent3fvEXT_intptr _Tangent3fvEXT_intptr { get; } + + // --- + + delegate void _glTangent3iEXT(int tx, int ty, int tz); + [GlEntryPoint("glTangent3iEXT")] + _glTangent3iEXT _Tangent3iEXT { get; } + + // --- + + delegate void _glTangent3ivEXT(int[] v); + [GlEntryPoint("glTangent3ivEXT")] + _glTangent3ivEXT _Tangent3ivEXT { get; } + + delegate void _glTangent3ivEXT_ptr(void* v); + [GlEntryPoint("glTangent3ivEXT")] + _glTangent3ivEXT_ptr _Tangent3ivEXT_ptr { get; } + + delegate void _glTangent3ivEXT_intptr(IntPtr v); + [GlEntryPoint("glTangent3ivEXT")] + _glTangent3ivEXT_intptr _Tangent3ivEXT_intptr { get; } + + // --- + + delegate void _glTangent3sEXT(short tx, short ty, short tz); + [GlEntryPoint("glTangent3sEXT")] + _glTangent3sEXT _Tangent3sEXT { get; } + + // --- + + delegate void _glTangent3svEXT(short[] v); + [GlEntryPoint("glTangent3svEXT")] + _glTangent3svEXT _Tangent3svEXT { get; } + + delegate void _glTangent3svEXT_ptr(void* v); + [GlEntryPoint("glTangent3svEXT")] + _glTangent3svEXT_ptr _Tangent3svEXT_ptr { get; } + + delegate void _glTangent3svEXT_intptr(IntPtr v); + [GlEntryPoint("glTangent3svEXT")] + _glTangent3svEXT_intptr _Tangent3svEXT_intptr { get; } + + // --- + + delegate void _glTangentPointerEXT(TangentPointerTypeEXT type, int stride, IntPtr pointer); + [GlEntryPoint("glTangentPointerEXT")] + _glTangentPointerEXT _TangentPointerEXT { get; } + + // --- + + delegate void _glTbufferMask3DFX(uint mask); + [GlEntryPoint("glTbufferMask3DFX")] + _glTbufferMask3DFX _TbufferMask3DFX { get; } + + // --- + + delegate void _glTessellationFactorAMD(float factor); + [GlEntryPoint("glTessellationFactorAMD")] + _glTessellationFactorAMD _TessellationFactorAMD { get; } + + // --- + + delegate void _glTessellationModeAMD(int mode); + [GlEntryPoint("glTessellationModeAMD")] + _glTessellationModeAMD _TessellationModeAMD { get; } + + // --- + + delegate bool _glTestFenceAPPLE(uint fence); + [GlEntryPoint("glTestFenceAPPLE")] + _glTestFenceAPPLE _TestFenceAPPLE { get; } + + // --- + + delegate bool _glTestFenceNV(uint fence); + [GlEntryPoint("glTestFenceNV")] + _glTestFenceNV _TestFenceNV { get; } + + // --- + + delegate bool _glTestObjectAPPLE(ObjectTypeAPPLE @object, uint name); + [GlEntryPoint("glTestObjectAPPLE")] + _glTestObjectAPPLE _TestObjectAPPLE { get; } + + // --- + + delegate void _glTexAttachMemoryNV(TextureTarget target, uint memory, UInt64 offset); + [GlEntryPoint("glTexAttachMemoryNV")] + _glTexAttachMemoryNV _TexAttachMemoryNV { get; } + + // --- + + delegate void _glTexBuffer(TextureTarget target, InternalFormat internalformat, uint buffer); + [GlEntryPoint("glTexBuffer")] + _glTexBuffer _TexBuffer { get; } + + // --- + + delegate void _glTexBufferARB(TextureTarget target, InternalFormat internalformat, uint buffer); + [GlEntryPoint("glTexBufferARB")] + _glTexBufferARB _TexBufferARB { get; } + + // --- + + delegate void _glTexBufferEXT(TextureTarget target, InternalFormat internalformat, uint buffer); + [GlEntryPoint("glTexBufferEXT")] + _glTexBufferEXT _TexBufferEXT { get; } + + // --- + + delegate void _glTexBufferOES(TextureTarget target, InternalFormat internalformat, uint buffer); + [GlEntryPoint("glTexBufferOES")] + _glTexBufferOES _TexBufferOES { get; } + + // --- + + delegate void _glTexBufferRange(TextureTarget target, InternalFormat internalformat, uint buffer, IntPtr offset, IntPtr size); + [GlEntryPoint("glTexBufferRange")] + _glTexBufferRange _TexBufferRange { get; } + + // --- + + delegate void _glTexBufferRangeEXT(TextureTarget target, InternalFormat internalformat, uint buffer, IntPtr offset, IntPtr size); + [GlEntryPoint("glTexBufferRangeEXT")] + _glTexBufferRangeEXT _TexBufferRangeEXT { get; } + + // --- + + delegate void _glTexBufferRangeOES(TextureTarget target, InternalFormat internalformat, uint buffer, IntPtr offset, IntPtr size); + [GlEntryPoint("glTexBufferRangeOES")] + _glTexBufferRangeOES _TexBufferRangeOES { get; } + + // --- + + delegate void _glTexBumpParameterfvATI(TexBumpParameterATI pname, float[] param); + [GlEntryPoint("glTexBumpParameterfvATI")] + _glTexBumpParameterfvATI _TexBumpParameterfvATI { get; } + + delegate void _glTexBumpParameterfvATI_ptr(TexBumpParameterATI pname, void* param); + [GlEntryPoint("glTexBumpParameterfvATI")] + _glTexBumpParameterfvATI_ptr _TexBumpParameterfvATI_ptr { get; } + + delegate void _glTexBumpParameterfvATI_intptr(TexBumpParameterATI pname, IntPtr param); + [GlEntryPoint("glTexBumpParameterfvATI")] + _glTexBumpParameterfvATI_intptr _TexBumpParameterfvATI_intptr { get; } + + // --- + + delegate void _glTexBumpParameterivATI(TexBumpParameterATI pname, int[] param); + [GlEntryPoint("glTexBumpParameterivATI")] + _glTexBumpParameterivATI _TexBumpParameterivATI { get; } + + delegate void _glTexBumpParameterivATI_ptr(TexBumpParameterATI pname, void* param); + [GlEntryPoint("glTexBumpParameterivATI")] + _glTexBumpParameterivATI_ptr _TexBumpParameterivATI_ptr { get; } + + delegate void _glTexBumpParameterivATI_intptr(TexBumpParameterATI pname, IntPtr param); + [GlEntryPoint("glTexBumpParameterivATI")] + _glTexBumpParameterivATI_intptr _TexBumpParameterivATI_intptr { get; } + + // --- + + delegate void _glTexCoord1bOES(sbyte s); + [GlEntryPoint("glTexCoord1bOES")] + _glTexCoord1bOES _TexCoord1bOES { get; } + + // --- + + delegate void _glTexCoord1bvOES(sbyte[] coords); + [GlEntryPoint("glTexCoord1bvOES")] + _glTexCoord1bvOES _TexCoord1bvOES { get; } + + delegate void _glTexCoord1bvOES_ptr(void* coords); + [GlEntryPoint("glTexCoord1bvOES")] + _glTexCoord1bvOES_ptr _TexCoord1bvOES_ptr { get; } + + delegate void _glTexCoord1bvOES_intptr(IntPtr coords); + [GlEntryPoint("glTexCoord1bvOES")] + _glTexCoord1bvOES_intptr _TexCoord1bvOES_intptr { get; } + + // --- + + delegate void _glTexCoord1d(double s); + [GlEntryPoint("glTexCoord1d")] + _glTexCoord1d _TexCoord1d { get; } + + // --- + + delegate void _glTexCoord1dv(double[] v); + [GlEntryPoint("glTexCoord1dv")] + _glTexCoord1dv _TexCoord1dv { get; } + + delegate void _glTexCoord1dv_ptr(void* v); + [GlEntryPoint("glTexCoord1dv")] + _glTexCoord1dv_ptr _TexCoord1dv_ptr { get; } + + delegate void _glTexCoord1dv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord1dv")] + _glTexCoord1dv_intptr _TexCoord1dv_intptr { get; } + + // --- + + delegate void _glTexCoord1f(float s); + [GlEntryPoint("glTexCoord1f")] + _glTexCoord1f _TexCoord1f { get; } + + // --- + + delegate void _glTexCoord1fv(float[] v); + [GlEntryPoint("glTexCoord1fv")] + _glTexCoord1fv _TexCoord1fv { get; } + + delegate void _glTexCoord1fv_ptr(void* v); + [GlEntryPoint("glTexCoord1fv")] + _glTexCoord1fv_ptr _TexCoord1fv_ptr { get; } + + delegate void _glTexCoord1fv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord1fv")] + _glTexCoord1fv_intptr _TexCoord1fv_intptr { get; } + + // --- + + delegate void _glTexCoord1hNV(float s); + [GlEntryPoint("glTexCoord1hNV")] + _glTexCoord1hNV _TexCoord1hNV { get; } + + // --- + + delegate void _glTexCoord1hvNV(float[] v); + [GlEntryPoint("glTexCoord1hvNV")] + _glTexCoord1hvNV _TexCoord1hvNV { get; } + + delegate void _glTexCoord1hvNV_ptr(void* v); + [GlEntryPoint("glTexCoord1hvNV")] + _glTexCoord1hvNV_ptr _TexCoord1hvNV_ptr { get; } + + delegate void _glTexCoord1hvNV_intptr(IntPtr v); + [GlEntryPoint("glTexCoord1hvNV")] + _glTexCoord1hvNV_intptr _TexCoord1hvNV_intptr { get; } + + // --- + + delegate void _glTexCoord1i(int s); + [GlEntryPoint("glTexCoord1i")] + _glTexCoord1i _TexCoord1i { get; } + + // --- + + delegate void _glTexCoord1iv(int[] v); + [GlEntryPoint("glTexCoord1iv")] + _glTexCoord1iv _TexCoord1iv { get; } + + delegate void _glTexCoord1iv_ptr(void* v); + [GlEntryPoint("glTexCoord1iv")] + _glTexCoord1iv_ptr _TexCoord1iv_ptr { get; } + + delegate void _glTexCoord1iv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord1iv")] + _glTexCoord1iv_intptr _TexCoord1iv_intptr { get; } + + // --- + + delegate void _glTexCoord1s(short s); + [GlEntryPoint("glTexCoord1s")] + _glTexCoord1s _TexCoord1s { get; } + + // --- + + delegate void _glTexCoord1sv(short[] v); + [GlEntryPoint("glTexCoord1sv")] + _glTexCoord1sv _TexCoord1sv { get; } + + delegate void _glTexCoord1sv_ptr(void* v); + [GlEntryPoint("glTexCoord1sv")] + _glTexCoord1sv_ptr _TexCoord1sv_ptr { get; } + + delegate void _glTexCoord1sv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord1sv")] + _glTexCoord1sv_intptr _TexCoord1sv_intptr { get; } + + // --- + + delegate void _glTexCoord1xOES(float s); + [GlEntryPoint("glTexCoord1xOES")] + _glTexCoord1xOES _TexCoord1xOES { get; } + + // --- + + delegate void _glTexCoord1xvOES(float[] coords); + [GlEntryPoint("glTexCoord1xvOES")] + _glTexCoord1xvOES _TexCoord1xvOES { get; } + + delegate void _glTexCoord1xvOES_ptr(void* coords); + [GlEntryPoint("glTexCoord1xvOES")] + _glTexCoord1xvOES_ptr _TexCoord1xvOES_ptr { get; } + + delegate void _glTexCoord1xvOES_intptr(IntPtr coords); + [GlEntryPoint("glTexCoord1xvOES")] + _glTexCoord1xvOES_intptr _TexCoord1xvOES_intptr { get; } + + // --- + + delegate void _glTexCoord2bOES(sbyte s, sbyte t); + [GlEntryPoint("glTexCoord2bOES")] + _glTexCoord2bOES _TexCoord2bOES { get; } + + // --- + + delegate void _glTexCoord2bvOES(sbyte[] coords); + [GlEntryPoint("glTexCoord2bvOES")] + _glTexCoord2bvOES _TexCoord2bvOES { get; } + + delegate void _glTexCoord2bvOES_ptr(void* coords); + [GlEntryPoint("glTexCoord2bvOES")] + _glTexCoord2bvOES_ptr _TexCoord2bvOES_ptr { get; } + + delegate void _glTexCoord2bvOES_intptr(IntPtr coords); + [GlEntryPoint("glTexCoord2bvOES")] + _glTexCoord2bvOES_intptr _TexCoord2bvOES_intptr { get; } + + // --- + + delegate void _glTexCoord2d(double s, double t); + [GlEntryPoint("glTexCoord2d")] + _glTexCoord2d _TexCoord2d { get; } + + // --- + + delegate void _glTexCoord2dv(double[] v); + [GlEntryPoint("glTexCoord2dv")] + _glTexCoord2dv _TexCoord2dv { get; } + + delegate void _glTexCoord2dv_ptr(void* v); + [GlEntryPoint("glTexCoord2dv")] + _glTexCoord2dv_ptr _TexCoord2dv_ptr { get; } + + delegate void _glTexCoord2dv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord2dv")] + _glTexCoord2dv_intptr _TexCoord2dv_intptr { get; } + + // --- + + delegate void _glTexCoord2f(float s, float t); + [GlEntryPoint("glTexCoord2f")] + _glTexCoord2f _TexCoord2f { get; } + + // --- + + delegate void _glTexCoord2fColor3fVertex3fSUN(float s, float t, float r, float g, float b, float x, float y, float z); + [GlEntryPoint("glTexCoord2fColor3fVertex3fSUN")] + _glTexCoord2fColor3fVertex3fSUN _TexCoord2fColor3fVertex3fSUN { get; } + + // --- + + delegate void _glTexCoord2fColor3fVertex3fvSUN(float[] tc, float[] c, float[] v); + [GlEntryPoint("glTexCoord2fColor3fVertex3fvSUN")] + _glTexCoord2fColor3fVertex3fvSUN _TexCoord2fColor3fVertex3fvSUN { get; } + + delegate void _glTexCoord2fColor3fVertex3fvSUN_ptr(void* tc, void* c, void* v); + [GlEntryPoint("glTexCoord2fColor3fVertex3fvSUN")] + _glTexCoord2fColor3fVertex3fvSUN_ptr _TexCoord2fColor3fVertex3fvSUN_ptr { get; } + + delegate void _glTexCoord2fColor3fVertex3fvSUN_intptr(IntPtr tc, IntPtr c, IntPtr v); + [GlEntryPoint("glTexCoord2fColor3fVertex3fvSUN")] + _glTexCoord2fColor3fVertex3fvSUN_intptr _TexCoord2fColor3fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glTexCoord2fColor4fNormal3fVertex3fSUN(float s, float t, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z); + [GlEntryPoint("glTexCoord2fColor4fNormal3fVertex3fSUN")] + _glTexCoord2fColor4fNormal3fVertex3fSUN _TexCoord2fColor4fNormal3fVertex3fSUN { get; } + + // --- + + delegate void _glTexCoord2fColor4fNormal3fVertex3fvSUN(float[] tc, float[] c, float[] n, float[] v); + [GlEntryPoint("glTexCoord2fColor4fNormal3fVertex3fvSUN")] + _glTexCoord2fColor4fNormal3fVertex3fvSUN _TexCoord2fColor4fNormal3fVertex3fvSUN { get; } + + delegate void _glTexCoord2fColor4fNormal3fVertex3fvSUN_ptr(void* tc, void* c, void* n, void* v); + [GlEntryPoint("glTexCoord2fColor4fNormal3fVertex3fvSUN")] + _glTexCoord2fColor4fNormal3fVertex3fvSUN_ptr _TexCoord2fColor4fNormal3fVertex3fvSUN_ptr { get; } + + delegate void _glTexCoord2fColor4fNormal3fVertex3fvSUN_intptr(IntPtr tc, IntPtr c, IntPtr n, IntPtr v); + [GlEntryPoint("glTexCoord2fColor4fNormal3fVertex3fvSUN")] + _glTexCoord2fColor4fNormal3fVertex3fvSUN_intptr _TexCoord2fColor4fNormal3fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glTexCoord2fColor4ubVertex3fSUN(float s, float t, byte r, byte g, byte b, byte a, float x, float y, float z); + [GlEntryPoint("glTexCoord2fColor4ubVertex3fSUN")] + _glTexCoord2fColor4ubVertex3fSUN _TexCoord2fColor4ubVertex3fSUN { get; } + + // --- + + delegate void _glTexCoord2fColor4ubVertex3fvSUN(float[] tc, byte[] c, float[] v); + [GlEntryPoint("glTexCoord2fColor4ubVertex3fvSUN")] + _glTexCoord2fColor4ubVertex3fvSUN _TexCoord2fColor4ubVertex3fvSUN { get; } + + delegate void _glTexCoord2fColor4ubVertex3fvSUN_ptr(void* tc, void* c, void* v); + [GlEntryPoint("glTexCoord2fColor4ubVertex3fvSUN")] + _glTexCoord2fColor4ubVertex3fvSUN_ptr _TexCoord2fColor4ubVertex3fvSUN_ptr { get; } + + delegate void _glTexCoord2fColor4ubVertex3fvSUN_intptr(IntPtr tc, IntPtr c, IntPtr v); + [GlEntryPoint("glTexCoord2fColor4ubVertex3fvSUN")] + _glTexCoord2fColor4ubVertex3fvSUN_intptr _TexCoord2fColor4ubVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glTexCoord2fNormal3fVertex3fSUN(float s, float t, float nx, float ny, float nz, float x, float y, float z); + [GlEntryPoint("glTexCoord2fNormal3fVertex3fSUN")] + _glTexCoord2fNormal3fVertex3fSUN _TexCoord2fNormal3fVertex3fSUN { get; } + + // --- + + delegate void _glTexCoord2fNormal3fVertex3fvSUN(float[] tc, float[] n, float[] v); + [GlEntryPoint("glTexCoord2fNormal3fVertex3fvSUN")] + _glTexCoord2fNormal3fVertex3fvSUN _TexCoord2fNormal3fVertex3fvSUN { get; } + + delegate void _glTexCoord2fNormal3fVertex3fvSUN_ptr(void* tc, void* n, void* v); + [GlEntryPoint("glTexCoord2fNormal3fVertex3fvSUN")] + _glTexCoord2fNormal3fVertex3fvSUN_ptr _TexCoord2fNormal3fVertex3fvSUN_ptr { get; } + + delegate void _glTexCoord2fNormal3fVertex3fvSUN_intptr(IntPtr tc, IntPtr n, IntPtr v); + [GlEntryPoint("glTexCoord2fNormal3fVertex3fvSUN")] + _glTexCoord2fNormal3fVertex3fvSUN_intptr _TexCoord2fNormal3fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glTexCoord2fVertex3fSUN(float s, float t, float x, float y, float z); + [GlEntryPoint("glTexCoord2fVertex3fSUN")] + _glTexCoord2fVertex3fSUN _TexCoord2fVertex3fSUN { get; } + + // --- + + delegate void _glTexCoord2fVertex3fvSUN(float[] tc, float[] v); + [GlEntryPoint("glTexCoord2fVertex3fvSUN")] + _glTexCoord2fVertex3fvSUN _TexCoord2fVertex3fvSUN { get; } + + delegate void _glTexCoord2fVertex3fvSUN_ptr(void* tc, void* v); + [GlEntryPoint("glTexCoord2fVertex3fvSUN")] + _glTexCoord2fVertex3fvSUN_ptr _TexCoord2fVertex3fvSUN_ptr { get; } + + delegate void _glTexCoord2fVertex3fvSUN_intptr(IntPtr tc, IntPtr v); + [GlEntryPoint("glTexCoord2fVertex3fvSUN")] + _glTexCoord2fVertex3fvSUN_intptr _TexCoord2fVertex3fvSUN_intptr { get; } + + // --- + + delegate void _glTexCoord2fv(float[] v); + [GlEntryPoint("glTexCoord2fv")] + _glTexCoord2fv _TexCoord2fv { get; } + + delegate void _glTexCoord2fv_ptr(void* v); + [GlEntryPoint("glTexCoord2fv")] + _glTexCoord2fv_ptr _TexCoord2fv_ptr { get; } + + delegate void _glTexCoord2fv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord2fv")] + _glTexCoord2fv_intptr _TexCoord2fv_intptr { get; } + + // --- + + delegate void _glTexCoord2hNV(float s, float t); + [GlEntryPoint("glTexCoord2hNV")] + _glTexCoord2hNV _TexCoord2hNV { get; } + + // --- + + delegate void _glTexCoord2hvNV(float[] v); + [GlEntryPoint("glTexCoord2hvNV")] + _glTexCoord2hvNV _TexCoord2hvNV { get; } + + delegate void _glTexCoord2hvNV_ptr(void* v); + [GlEntryPoint("glTexCoord2hvNV")] + _glTexCoord2hvNV_ptr _TexCoord2hvNV_ptr { get; } + + delegate void _glTexCoord2hvNV_intptr(IntPtr v); + [GlEntryPoint("glTexCoord2hvNV")] + _glTexCoord2hvNV_intptr _TexCoord2hvNV_intptr { get; } + + // --- + + delegate void _glTexCoord2i(int s, int t); + [GlEntryPoint("glTexCoord2i")] + _glTexCoord2i _TexCoord2i { get; } + + // --- + + delegate void _glTexCoord2iv(int[] v); + [GlEntryPoint("glTexCoord2iv")] + _glTexCoord2iv _TexCoord2iv { get; } + + delegate void _glTexCoord2iv_ptr(void* v); + [GlEntryPoint("glTexCoord2iv")] + _glTexCoord2iv_ptr _TexCoord2iv_ptr { get; } + + delegate void _glTexCoord2iv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord2iv")] + _glTexCoord2iv_intptr _TexCoord2iv_intptr { get; } + + // --- + + delegate void _glTexCoord2s(short s, short t); + [GlEntryPoint("glTexCoord2s")] + _glTexCoord2s _TexCoord2s { get; } + + // --- + + delegate void _glTexCoord2sv(short[] v); + [GlEntryPoint("glTexCoord2sv")] + _glTexCoord2sv _TexCoord2sv { get; } + + delegate void _glTexCoord2sv_ptr(void* v); + [GlEntryPoint("glTexCoord2sv")] + _glTexCoord2sv_ptr _TexCoord2sv_ptr { get; } + + delegate void _glTexCoord2sv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord2sv")] + _glTexCoord2sv_intptr _TexCoord2sv_intptr { get; } + + // --- + + delegate void _glTexCoord2xOES(float s, float t); + [GlEntryPoint("glTexCoord2xOES")] + _glTexCoord2xOES _TexCoord2xOES { get; } + + // --- + + delegate void _glTexCoord2xvOES(float[] coords); + [GlEntryPoint("glTexCoord2xvOES")] + _glTexCoord2xvOES _TexCoord2xvOES { get; } + + delegate void _glTexCoord2xvOES_ptr(void* coords); + [GlEntryPoint("glTexCoord2xvOES")] + _glTexCoord2xvOES_ptr _TexCoord2xvOES_ptr { get; } + + delegate void _glTexCoord2xvOES_intptr(IntPtr coords); + [GlEntryPoint("glTexCoord2xvOES")] + _glTexCoord2xvOES_intptr _TexCoord2xvOES_intptr { get; } + + // --- + + delegate void _glTexCoord3bOES(sbyte s, sbyte t, sbyte r); + [GlEntryPoint("glTexCoord3bOES")] + _glTexCoord3bOES _TexCoord3bOES { get; } + + // --- + + delegate void _glTexCoord3bvOES(sbyte[] coords); + [GlEntryPoint("glTexCoord3bvOES")] + _glTexCoord3bvOES _TexCoord3bvOES { get; } + + delegate void _glTexCoord3bvOES_ptr(void* coords); + [GlEntryPoint("glTexCoord3bvOES")] + _glTexCoord3bvOES_ptr _TexCoord3bvOES_ptr { get; } + + delegate void _glTexCoord3bvOES_intptr(IntPtr coords); + [GlEntryPoint("glTexCoord3bvOES")] + _glTexCoord3bvOES_intptr _TexCoord3bvOES_intptr { get; } + + // --- + + delegate void _glTexCoord3d(double s, double t, double r); + [GlEntryPoint("glTexCoord3d")] + _glTexCoord3d _TexCoord3d { get; } + + // --- + + delegate void _glTexCoord3dv(double[] v); + [GlEntryPoint("glTexCoord3dv")] + _glTexCoord3dv _TexCoord3dv { get; } + + delegate void _glTexCoord3dv_ptr(void* v); + [GlEntryPoint("glTexCoord3dv")] + _glTexCoord3dv_ptr _TexCoord3dv_ptr { get; } + + delegate void _glTexCoord3dv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord3dv")] + _glTexCoord3dv_intptr _TexCoord3dv_intptr { get; } + + // --- + + delegate void _glTexCoord3f(float s, float t, float r); + [GlEntryPoint("glTexCoord3f")] + _glTexCoord3f _TexCoord3f { get; } + + // --- + + delegate void _glTexCoord3fv(float[] v); + [GlEntryPoint("glTexCoord3fv")] + _glTexCoord3fv _TexCoord3fv { get; } + + delegate void _glTexCoord3fv_ptr(void* v); + [GlEntryPoint("glTexCoord3fv")] + _glTexCoord3fv_ptr _TexCoord3fv_ptr { get; } + + delegate void _glTexCoord3fv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord3fv")] + _glTexCoord3fv_intptr _TexCoord3fv_intptr { get; } + + // --- + + delegate void _glTexCoord3hNV(float s, float t, float r); + [GlEntryPoint("glTexCoord3hNV")] + _glTexCoord3hNV _TexCoord3hNV { get; } + + // --- + + delegate void _glTexCoord3hvNV(float[] v); + [GlEntryPoint("glTexCoord3hvNV")] + _glTexCoord3hvNV _TexCoord3hvNV { get; } + + delegate void _glTexCoord3hvNV_ptr(void* v); + [GlEntryPoint("glTexCoord3hvNV")] + _glTexCoord3hvNV_ptr _TexCoord3hvNV_ptr { get; } + + delegate void _glTexCoord3hvNV_intptr(IntPtr v); + [GlEntryPoint("glTexCoord3hvNV")] + _glTexCoord3hvNV_intptr _TexCoord3hvNV_intptr { get; } + + // --- + + delegate void _glTexCoord3i(int s, int t, int r); + [GlEntryPoint("glTexCoord3i")] + _glTexCoord3i _TexCoord3i { get; } + + // --- + + delegate void _glTexCoord3iv(int[] v); + [GlEntryPoint("glTexCoord3iv")] + _glTexCoord3iv _TexCoord3iv { get; } + + delegate void _glTexCoord3iv_ptr(void* v); + [GlEntryPoint("glTexCoord3iv")] + _glTexCoord3iv_ptr _TexCoord3iv_ptr { get; } + + delegate void _glTexCoord3iv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord3iv")] + _glTexCoord3iv_intptr _TexCoord3iv_intptr { get; } + + // --- + + delegate void _glTexCoord3s(short s, short t, short r); + [GlEntryPoint("glTexCoord3s")] + _glTexCoord3s _TexCoord3s { get; } + + // --- + + delegate void _glTexCoord3sv(short[] v); + [GlEntryPoint("glTexCoord3sv")] + _glTexCoord3sv _TexCoord3sv { get; } + + delegate void _glTexCoord3sv_ptr(void* v); + [GlEntryPoint("glTexCoord3sv")] + _glTexCoord3sv_ptr _TexCoord3sv_ptr { get; } + + delegate void _glTexCoord3sv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord3sv")] + _glTexCoord3sv_intptr _TexCoord3sv_intptr { get; } + + // --- + + delegate void _glTexCoord3xOES(float s, float t, float r); + [GlEntryPoint("glTexCoord3xOES")] + _glTexCoord3xOES _TexCoord3xOES { get; } + + // --- + + delegate void _glTexCoord3xvOES(float[] coords); + [GlEntryPoint("glTexCoord3xvOES")] + _glTexCoord3xvOES _TexCoord3xvOES { get; } + + delegate void _glTexCoord3xvOES_ptr(void* coords); + [GlEntryPoint("glTexCoord3xvOES")] + _glTexCoord3xvOES_ptr _TexCoord3xvOES_ptr { get; } + + delegate void _glTexCoord3xvOES_intptr(IntPtr coords); + [GlEntryPoint("glTexCoord3xvOES")] + _glTexCoord3xvOES_intptr _TexCoord3xvOES_intptr { get; } + + // --- + + delegate void _glTexCoord4bOES(sbyte s, sbyte t, sbyte r, sbyte q); + [GlEntryPoint("glTexCoord4bOES")] + _glTexCoord4bOES _TexCoord4bOES { get; } + + // --- + + delegate void _glTexCoord4bvOES(sbyte[] coords); + [GlEntryPoint("glTexCoord4bvOES")] + _glTexCoord4bvOES _TexCoord4bvOES { get; } + + delegate void _glTexCoord4bvOES_ptr(void* coords); + [GlEntryPoint("glTexCoord4bvOES")] + _glTexCoord4bvOES_ptr _TexCoord4bvOES_ptr { get; } + + delegate void _glTexCoord4bvOES_intptr(IntPtr coords); + [GlEntryPoint("glTexCoord4bvOES")] + _glTexCoord4bvOES_intptr _TexCoord4bvOES_intptr { get; } + + // --- + + delegate void _glTexCoord4d(double s, double t, double r, double q); + [GlEntryPoint("glTexCoord4d")] + _glTexCoord4d _TexCoord4d { get; } + + // --- + + delegate void _glTexCoord4dv(double[] v); + [GlEntryPoint("glTexCoord4dv")] + _glTexCoord4dv _TexCoord4dv { get; } + + delegate void _glTexCoord4dv_ptr(void* v); + [GlEntryPoint("glTexCoord4dv")] + _glTexCoord4dv_ptr _TexCoord4dv_ptr { get; } + + delegate void _glTexCoord4dv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord4dv")] + _glTexCoord4dv_intptr _TexCoord4dv_intptr { get; } + + // --- + + delegate void _glTexCoord4f(float s, float t, float r, float q); + [GlEntryPoint("glTexCoord4f")] + _glTexCoord4f _TexCoord4f { get; } + + // --- + + delegate void _glTexCoord4fColor4fNormal3fVertex4fSUN(float s, float t, float p, float q, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z, float w); + [GlEntryPoint("glTexCoord4fColor4fNormal3fVertex4fSUN")] + _glTexCoord4fColor4fNormal3fVertex4fSUN _TexCoord4fColor4fNormal3fVertex4fSUN { get; } + + // --- + + delegate void _glTexCoord4fColor4fNormal3fVertex4fvSUN(float[] tc, float[] c, float[] n, float[] v); + [GlEntryPoint("glTexCoord4fColor4fNormal3fVertex4fvSUN")] + _glTexCoord4fColor4fNormal3fVertex4fvSUN _TexCoord4fColor4fNormal3fVertex4fvSUN { get; } + + delegate void _glTexCoord4fColor4fNormal3fVertex4fvSUN_ptr(void* tc, void* c, void* n, void* v); + [GlEntryPoint("glTexCoord4fColor4fNormal3fVertex4fvSUN")] + _glTexCoord4fColor4fNormal3fVertex4fvSUN_ptr _TexCoord4fColor4fNormal3fVertex4fvSUN_ptr { get; } + + delegate void _glTexCoord4fColor4fNormal3fVertex4fvSUN_intptr(IntPtr tc, IntPtr c, IntPtr n, IntPtr v); + [GlEntryPoint("glTexCoord4fColor4fNormal3fVertex4fvSUN")] + _glTexCoord4fColor4fNormal3fVertex4fvSUN_intptr _TexCoord4fColor4fNormal3fVertex4fvSUN_intptr { get; } + + // --- + + delegate void _glTexCoord4fVertex4fSUN(float s, float t, float p, float q, float x, float y, float z, float w); + [GlEntryPoint("glTexCoord4fVertex4fSUN")] + _glTexCoord4fVertex4fSUN _TexCoord4fVertex4fSUN { get; } + + // --- + + delegate void _glTexCoord4fVertex4fvSUN(float[] tc, float[] v); + [GlEntryPoint("glTexCoord4fVertex4fvSUN")] + _glTexCoord4fVertex4fvSUN _TexCoord4fVertex4fvSUN { get; } + + delegate void _glTexCoord4fVertex4fvSUN_ptr(void* tc, void* v); + [GlEntryPoint("glTexCoord4fVertex4fvSUN")] + _glTexCoord4fVertex4fvSUN_ptr _TexCoord4fVertex4fvSUN_ptr { get; } + + delegate void _glTexCoord4fVertex4fvSUN_intptr(IntPtr tc, IntPtr v); + [GlEntryPoint("glTexCoord4fVertex4fvSUN")] + _glTexCoord4fVertex4fvSUN_intptr _TexCoord4fVertex4fvSUN_intptr { get; } + + // --- + + delegate void _glTexCoord4fv(float[] v); + [GlEntryPoint("glTexCoord4fv")] + _glTexCoord4fv _TexCoord4fv { get; } + + delegate void _glTexCoord4fv_ptr(void* v); + [GlEntryPoint("glTexCoord4fv")] + _glTexCoord4fv_ptr _TexCoord4fv_ptr { get; } + + delegate void _glTexCoord4fv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord4fv")] + _glTexCoord4fv_intptr _TexCoord4fv_intptr { get; } + + // --- + + delegate void _glTexCoord4hNV(float s, float t, float r, float q); + [GlEntryPoint("glTexCoord4hNV")] + _glTexCoord4hNV _TexCoord4hNV { get; } + + // --- + + delegate void _glTexCoord4hvNV(float[] v); + [GlEntryPoint("glTexCoord4hvNV")] + _glTexCoord4hvNV _TexCoord4hvNV { get; } + + delegate void _glTexCoord4hvNV_ptr(void* v); + [GlEntryPoint("glTexCoord4hvNV")] + _glTexCoord4hvNV_ptr _TexCoord4hvNV_ptr { get; } + + delegate void _glTexCoord4hvNV_intptr(IntPtr v); + [GlEntryPoint("glTexCoord4hvNV")] + _glTexCoord4hvNV_intptr _TexCoord4hvNV_intptr { get; } + + // --- + + delegate void _glTexCoord4i(int s, int t, int r, int q); + [GlEntryPoint("glTexCoord4i")] + _glTexCoord4i _TexCoord4i { get; } + + // --- + + delegate void _glTexCoord4iv(int[] v); + [GlEntryPoint("glTexCoord4iv")] + _glTexCoord4iv _TexCoord4iv { get; } + + delegate void _glTexCoord4iv_ptr(void* v); + [GlEntryPoint("glTexCoord4iv")] + _glTexCoord4iv_ptr _TexCoord4iv_ptr { get; } + + delegate void _glTexCoord4iv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord4iv")] + _glTexCoord4iv_intptr _TexCoord4iv_intptr { get; } + + // --- + + delegate void _glTexCoord4s(short s, short t, short r, short q); + [GlEntryPoint("glTexCoord4s")] + _glTexCoord4s _TexCoord4s { get; } + + // --- + + delegate void _glTexCoord4sv(short[] v); + [GlEntryPoint("glTexCoord4sv")] + _glTexCoord4sv _TexCoord4sv { get; } + + delegate void _glTexCoord4sv_ptr(void* v); + [GlEntryPoint("glTexCoord4sv")] + _glTexCoord4sv_ptr _TexCoord4sv_ptr { get; } + + delegate void _glTexCoord4sv_intptr(IntPtr v); + [GlEntryPoint("glTexCoord4sv")] + _glTexCoord4sv_intptr _TexCoord4sv_intptr { get; } + + // --- + + delegate void _glTexCoord4xOES(float s, float t, float r, float q); + [GlEntryPoint("glTexCoord4xOES")] + _glTexCoord4xOES _TexCoord4xOES { get; } + + // --- + + delegate void _glTexCoord4xvOES(float[] coords); + [GlEntryPoint("glTexCoord4xvOES")] + _glTexCoord4xvOES _TexCoord4xvOES { get; } + + delegate void _glTexCoord4xvOES_ptr(void* coords); + [GlEntryPoint("glTexCoord4xvOES")] + _glTexCoord4xvOES_ptr _TexCoord4xvOES_ptr { get; } + + delegate void _glTexCoord4xvOES_intptr(IntPtr coords); + [GlEntryPoint("glTexCoord4xvOES")] + _glTexCoord4xvOES_intptr _TexCoord4xvOES_intptr { get; } + + // --- + + delegate void _glTexCoordFormatNV(int size, int type, int stride); + [GlEntryPoint("glTexCoordFormatNV")] + _glTexCoordFormatNV _TexCoordFormatNV { get; } + + // --- + + delegate void _glTexCoordP1ui(TexCoordPointerType type, uint coords); + [GlEntryPoint("glTexCoordP1ui")] + _glTexCoordP1ui _TexCoordP1ui { get; } + + // --- + + delegate void _glTexCoordP1uiv(TexCoordPointerType type, uint[] coords); + [GlEntryPoint("glTexCoordP1uiv")] + _glTexCoordP1uiv _TexCoordP1uiv { get; } + + delegate void _glTexCoordP1uiv_ptr(TexCoordPointerType type, void* coords); + [GlEntryPoint("glTexCoordP1uiv")] + _glTexCoordP1uiv_ptr _TexCoordP1uiv_ptr { get; } + + delegate void _glTexCoordP1uiv_intptr(TexCoordPointerType type, IntPtr coords); + [GlEntryPoint("glTexCoordP1uiv")] + _glTexCoordP1uiv_intptr _TexCoordP1uiv_intptr { get; } + + // --- + + delegate void _glTexCoordP2ui(TexCoordPointerType type, uint coords); + [GlEntryPoint("glTexCoordP2ui")] + _glTexCoordP2ui _TexCoordP2ui { get; } + + // --- + + delegate void _glTexCoordP2uiv(TexCoordPointerType type, uint[] coords); + [GlEntryPoint("glTexCoordP2uiv")] + _glTexCoordP2uiv _TexCoordP2uiv { get; } + + delegate void _glTexCoordP2uiv_ptr(TexCoordPointerType type, void* coords); + [GlEntryPoint("glTexCoordP2uiv")] + _glTexCoordP2uiv_ptr _TexCoordP2uiv_ptr { get; } + + delegate void _glTexCoordP2uiv_intptr(TexCoordPointerType type, IntPtr coords); + [GlEntryPoint("glTexCoordP2uiv")] + _glTexCoordP2uiv_intptr _TexCoordP2uiv_intptr { get; } + + // --- + + delegate void _glTexCoordP3ui(TexCoordPointerType type, uint coords); + [GlEntryPoint("glTexCoordP3ui")] + _glTexCoordP3ui _TexCoordP3ui { get; } + + // --- + + delegate void _glTexCoordP3uiv(TexCoordPointerType type, uint[] coords); + [GlEntryPoint("glTexCoordP3uiv")] + _glTexCoordP3uiv _TexCoordP3uiv { get; } + + delegate void _glTexCoordP3uiv_ptr(TexCoordPointerType type, void* coords); + [GlEntryPoint("glTexCoordP3uiv")] + _glTexCoordP3uiv_ptr _TexCoordP3uiv_ptr { get; } + + delegate void _glTexCoordP3uiv_intptr(TexCoordPointerType type, IntPtr coords); + [GlEntryPoint("glTexCoordP3uiv")] + _glTexCoordP3uiv_intptr _TexCoordP3uiv_intptr { get; } + + // --- + + delegate void _glTexCoordP4ui(TexCoordPointerType type, uint coords); + [GlEntryPoint("glTexCoordP4ui")] + _glTexCoordP4ui _TexCoordP4ui { get; } + + // --- + + delegate void _glTexCoordP4uiv(TexCoordPointerType type, uint[] coords); + [GlEntryPoint("glTexCoordP4uiv")] + _glTexCoordP4uiv _TexCoordP4uiv { get; } + + delegate void _glTexCoordP4uiv_ptr(TexCoordPointerType type, void* coords); + [GlEntryPoint("glTexCoordP4uiv")] + _glTexCoordP4uiv_ptr _TexCoordP4uiv_ptr { get; } + + delegate void _glTexCoordP4uiv_intptr(TexCoordPointerType type, IntPtr coords); + [GlEntryPoint("glTexCoordP4uiv")] + _glTexCoordP4uiv_intptr _TexCoordP4uiv_intptr { get; } + + // --- + + delegate void _glTexCoordPointer(int size, TexCoordPointerType type, int stride, IntPtr pointer); + [GlEntryPoint("glTexCoordPointer")] + _glTexCoordPointer _TexCoordPointer { get; } + + // --- + + delegate void _glTexCoordPointerEXT(int size, TexCoordPointerType type, int stride, int count, IntPtr pointer); + [GlEntryPoint("glTexCoordPointerEXT")] + _glTexCoordPointerEXT _TexCoordPointerEXT { get; } + + // --- + + delegate void _glTexCoordPointerListIBM(int size, TexCoordPointerType type, int stride, IntPtr* pointer, int ptrstride); + [GlEntryPoint("glTexCoordPointerListIBM")] + _glTexCoordPointerListIBM _TexCoordPointerListIBM { get; } + + // --- + + delegate void _glTexCoordPointervINTEL(int size, VertexPointerType type, IntPtr* pointer); + [GlEntryPoint("glTexCoordPointervINTEL")] + _glTexCoordPointervINTEL _TexCoordPointervINTEL { get; } + + // --- + + delegate void _glTexEnvf(TextureEnvTarget target, TextureEnvParameter pname, float param); + [GlEntryPoint("glTexEnvf")] + _glTexEnvf _TexEnvf { get; } + + // --- + + delegate void _glTexEnvfv(TextureEnvTarget target, TextureEnvParameter pname, float[] @params); + [GlEntryPoint("glTexEnvfv")] + _glTexEnvfv _TexEnvfv { get; } + + delegate void _glTexEnvfv_ptr(TextureEnvTarget target, TextureEnvParameter pname, void* @params); + [GlEntryPoint("glTexEnvfv")] + _glTexEnvfv_ptr _TexEnvfv_ptr { get; } + + delegate void _glTexEnvfv_intptr(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params); + [GlEntryPoint("glTexEnvfv")] + _glTexEnvfv_intptr _TexEnvfv_intptr { get; } + + // --- + + delegate void _glTexEnvi(TextureEnvTarget target, TextureEnvParameter pname, int param); + [GlEntryPoint("glTexEnvi")] + _glTexEnvi _TexEnvi { get; } + + // --- + + delegate void _glTexEnviv(TextureEnvTarget target, TextureEnvParameter pname, int[] @params); + [GlEntryPoint("glTexEnviv")] + _glTexEnviv _TexEnviv { get; } + + delegate void _glTexEnviv_ptr(TextureEnvTarget target, TextureEnvParameter pname, void* @params); + [GlEntryPoint("glTexEnviv")] + _glTexEnviv_ptr _TexEnviv_ptr { get; } + + delegate void _glTexEnviv_intptr(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params); + [GlEntryPoint("glTexEnviv")] + _glTexEnviv_intptr _TexEnviv_intptr { get; } + + // --- + + delegate void _glTexEnvx(TextureEnvTarget target, TextureEnvParameter pname, float param); + [GlEntryPoint("glTexEnvx")] + _glTexEnvx _TexEnvx { get; } + + // --- + + delegate void _glTexEnvxOES(TextureEnvTarget target, TextureEnvParameter pname, float param); + [GlEntryPoint("glTexEnvxOES")] + _glTexEnvxOES _TexEnvxOES { get; } + + // --- + + delegate void _glTexEnvxv(TextureEnvTarget target, TextureEnvParameter pname, float[] @params); + [GlEntryPoint("glTexEnvxv")] + _glTexEnvxv _TexEnvxv { get; } + + delegate void _glTexEnvxv_ptr(TextureEnvTarget target, TextureEnvParameter pname, void* @params); + [GlEntryPoint("glTexEnvxv")] + _glTexEnvxv_ptr _TexEnvxv_ptr { get; } + + delegate void _glTexEnvxv_intptr(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params); + [GlEntryPoint("glTexEnvxv")] + _glTexEnvxv_intptr _TexEnvxv_intptr { get; } + + // --- + + delegate void _glTexEnvxvOES(TextureEnvTarget target, TextureEnvParameter pname, float[] @params); + [GlEntryPoint("glTexEnvxvOES")] + _glTexEnvxvOES _TexEnvxvOES { get; } + + delegate void _glTexEnvxvOES_ptr(TextureEnvTarget target, TextureEnvParameter pname, void* @params); + [GlEntryPoint("glTexEnvxvOES")] + _glTexEnvxvOES_ptr _TexEnvxvOES_ptr { get; } + + delegate void _glTexEnvxvOES_intptr(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params); + [GlEntryPoint("glTexEnvxvOES")] + _glTexEnvxvOES_intptr _TexEnvxvOES_intptr { get; } + + // --- + + delegate void _glTexEstimateMotionQCOM(uint @ref, uint target, uint output); + [GlEntryPoint("glTexEstimateMotionQCOM")] + _glTexEstimateMotionQCOM _TexEstimateMotionQCOM { get; } + + // --- + + delegate void _glTexEstimateMotionRegionsQCOM(uint @ref, uint target, uint output, uint mask); + [GlEntryPoint("glTexEstimateMotionRegionsQCOM")] + _glTexEstimateMotionRegionsQCOM _TexEstimateMotionRegionsQCOM { get; } + + // --- + + delegate void _glTexFilterFuncSGIS(TextureTarget target, TextureFilterSGIS filter, int n, float[] weights); + [GlEntryPoint("glTexFilterFuncSGIS")] + _glTexFilterFuncSGIS _TexFilterFuncSGIS { get; } + + delegate void _glTexFilterFuncSGIS_ptr(TextureTarget target, TextureFilterSGIS filter, int n, void* weights); + [GlEntryPoint("glTexFilterFuncSGIS")] + _glTexFilterFuncSGIS_ptr _TexFilterFuncSGIS_ptr { get; } + + delegate void _glTexFilterFuncSGIS_intptr(TextureTarget target, TextureFilterSGIS filter, int n, IntPtr weights); + [GlEntryPoint("glTexFilterFuncSGIS")] + _glTexFilterFuncSGIS_intptr _TexFilterFuncSGIS_intptr { get; } + + // --- + + delegate void _glTexGend(TextureCoordName coord, TextureGenParameter pname, double param); + [GlEntryPoint("glTexGend")] + _glTexGend _TexGend { get; } + + // --- + + delegate void _glTexGendv(TextureCoordName coord, TextureGenParameter pname, double[] @params); + [GlEntryPoint("glTexGendv")] + _glTexGendv _TexGendv { get; } + + delegate void _glTexGendv_ptr(TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glTexGendv")] + _glTexGendv_ptr _TexGendv_ptr { get; } + + delegate void _glTexGendv_intptr(TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glTexGendv")] + _glTexGendv_intptr _TexGendv_intptr { get; } + + // --- + + delegate void _glTexGenf(TextureCoordName coord, TextureGenParameter pname, float param); + [GlEntryPoint("glTexGenf")] + _glTexGenf _TexGenf { get; } + + // --- + + delegate void _glTexGenfOES(TextureCoordName coord, TextureGenParameter pname, float param); + [GlEntryPoint("glTexGenfOES")] + _glTexGenfOES _TexGenfOES { get; } + + // --- + + delegate void _glTexGenfv(TextureCoordName coord, TextureGenParameter pname, float[] @params); + [GlEntryPoint("glTexGenfv")] + _glTexGenfv _TexGenfv { get; } + + delegate void _glTexGenfv_ptr(TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glTexGenfv")] + _glTexGenfv_ptr _TexGenfv_ptr { get; } + + delegate void _glTexGenfv_intptr(TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glTexGenfv")] + _glTexGenfv_intptr _TexGenfv_intptr { get; } + + // --- + + delegate void _glTexGenfvOES(TextureCoordName coord, TextureGenParameter pname, float[] @params); + [GlEntryPoint("glTexGenfvOES")] + _glTexGenfvOES _TexGenfvOES { get; } + + delegate void _glTexGenfvOES_ptr(TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glTexGenfvOES")] + _glTexGenfvOES_ptr _TexGenfvOES_ptr { get; } + + delegate void _glTexGenfvOES_intptr(TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glTexGenfvOES")] + _glTexGenfvOES_intptr _TexGenfvOES_intptr { get; } + + // --- + + delegate void _glTexGeni(TextureCoordName coord, TextureGenParameter pname, int param); + [GlEntryPoint("glTexGeni")] + _glTexGeni _TexGeni { get; } + + // --- + + delegate void _glTexGeniOES(TextureCoordName coord, TextureGenParameter pname, int param); + [GlEntryPoint("glTexGeniOES")] + _glTexGeniOES _TexGeniOES { get; } + + // --- + + delegate void _glTexGeniv(TextureCoordName coord, TextureGenParameter pname, int[] @params); + [GlEntryPoint("glTexGeniv")] + _glTexGeniv _TexGeniv { get; } + + delegate void _glTexGeniv_ptr(TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glTexGeniv")] + _glTexGeniv_ptr _TexGeniv_ptr { get; } + + delegate void _glTexGeniv_intptr(TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glTexGeniv")] + _glTexGeniv_intptr _TexGeniv_intptr { get; } + + // --- + + delegate void _glTexGenivOES(TextureCoordName coord, TextureGenParameter pname, int[] @params); + [GlEntryPoint("glTexGenivOES")] + _glTexGenivOES _TexGenivOES { get; } + + delegate void _glTexGenivOES_ptr(TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glTexGenivOES")] + _glTexGenivOES_ptr _TexGenivOES_ptr { get; } + + delegate void _glTexGenivOES_intptr(TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glTexGenivOES")] + _glTexGenivOES_intptr _TexGenivOES_intptr { get; } + + // --- + + delegate void _glTexGenxOES(TextureCoordName coord, TextureGenParameter pname, float param); + [GlEntryPoint("glTexGenxOES")] + _glTexGenxOES _TexGenxOES { get; } + + // --- + + delegate void _glTexGenxvOES(TextureCoordName coord, TextureGenParameter pname, float[] @params); + [GlEntryPoint("glTexGenxvOES")] + _glTexGenxvOES _TexGenxvOES { get; } + + delegate void _glTexGenxvOES_ptr(TextureCoordName coord, TextureGenParameter pname, void* @params); + [GlEntryPoint("glTexGenxvOES")] + _glTexGenxvOES_ptr _TexGenxvOES_ptr { get; } + + delegate void _glTexGenxvOES_intptr(TextureCoordName coord, TextureGenParameter pname, IntPtr @params); + [GlEntryPoint("glTexGenxvOES")] + _glTexGenxvOES_intptr _TexGenxvOES_intptr { get; } + + // --- + + delegate void _glTexImage1D(TextureTarget target, int level, int internalformat, int width, int border, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexImage1D")] + _glTexImage1D _TexImage1D { get; } + + // --- + + delegate void _glTexImage2D(TextureTarget target, int level, int internalformat, int width, int height, int border, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexImage2D")] + _glTexImage2D _TexImage2D { get; } + + // --- + + delegate void _glTexImage2DMultisample(TextureTarget target, int samples, InternalFormat internalformat, int width, int height, bool fixedsamplelocations); + [GlEntryPoint("glTexImage2DMultisample")] + _glTexImage2DMultisample _TexImage2DMultisample { get; } + + // --- + + delegate void _glTexImage2DMultisampleCoverageNV(TextureTarget target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, bool fixedSampleLocations); + [GlEntryPoint("glTexImage2DMultisampleCoverageNV")] + _glTexImage2DMultisampleCoverageNV _TexImage2DMultisampleCoverageNV { get; } + + // --- + + delegate void _glTexImage3D(TextureTarget target, int level, int internalformat, int width, int height, int depth, int border, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexImage3D")] + _glTexImage3D _TexImage3D { get; } + + // --- + + delegate void _glTexImage3DEXT(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexImage3DEXT")] + _glTexImage3DEXT _TexImage3DEXT { get; } + + // --- + + delegate void _glTexImage3DMultisample(TextureTarget target, int samples, InternalFormat internalformat, int width, int height, int depth, bool fixedsamplelocations); + [GlEntryPoint("glTexImage3DMultisample")] + _glTexImage3DMultisample _TexImage3DMultisample { get; } + + // --- + + delegate void _glTexImage3DMultisampleCoverageNV(TextureTarget target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations); + [GlEntryPoint("glTexImage3DMultisampleCoverageNV")] + _glTexImage3DMultisampleCoverageNV _TexImage3DMultisampleCoverageNV { get; } + + // --- + + delegate void _glTexImage3DOES(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexImage3DOES")] + _glTexImage3DOES _TexImage3DOES { get; } + + // --- + + delegate void _glTexImage4DSGIS(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int size4d, int border, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexImage4DSGIS")] + _glTexImage4DSGIS _TexImage4DSGIS { get; } + + // --- + + delegate void _glTexPageCommitmentARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, bool commit); + [GlEntryPoint("glTexPageCommitmentARB")] + _glTexPageCommitmentARB _TexPageCommitmentARB { get; } + + // --- + + delegate void _glTexPageCommitmentEXT(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, bool commit); + [GlEntryPoint("glTexPageCommitmentEXT")] + _glTexPageCommitmentEXT _TexPageCommitmentEXT { get; } + + // --- + + delegate void _glTexParameterIiv(TextureTarget target, TextureParameterName pname, int[] @params); + [GlEntryPoint("glTexParameterIiv")] + _glTexParameterIiv _TexParameterIiv { get; } + + delegate void _glTexParameterIiv_ptr(TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glTexParameterIiv")] + _glTexParameterIiv_ptr _TexParameterIiv_ptr { get; } + + delegate void _glTexParameterIiv_intptr(TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTexParameterIiv")] + _glTexParameterIiv_intptr _TexParameterIiv_intptr { get; } + + // --- + + delegate void _glTexParameterIivEXT(TextureTarget target, TextureParameterName pname, int[] @params); + [GlEntryPoint("glTexParameterIivEXT")] + _glTexParameterIivEXT _TexParameterIivEXT { get; } + + delegate void _glTexParameterIivEXT_ptr(TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glTexParameterIivEXT")] + _glTexParameterIivEXT_ptr _TexParameterIivEXT_ptr { get; } + + delegate void _glTexParameterIivEXT_intptr(TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTexParameterIivEXT")] + _glTexParameterIivEXT_intptr _TexParameterIivEXT_intptr { get; } + + // --- + + delegate void _glTexParameterIivOES(TextureTarget target, TextureParameterName pname, int[] @params); + [GlEntryPoint("glTexParameterIivOES")] + _glTexParameterIivOES _TexParameterIivOES { get; } + + delegate void _glTexParameterIivOES_ptr(TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glTexParameterIivOES")] + _glTexParameterIivOES_ptr _TexParameterIivOES_ptr { get; } + + delegate void _glTexParameterIivOES_intptr(TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTexParameterIivOES")] + _glTexParameterIivOES_intptr _TexParameterIivOES_intptr { get; } + + // --- + + delegate void _glTexParameterIuiv(TextureTarget target, TextureParameterName pname, uint[] @params); + [GlEntryPoint("glTexParameterIuiv")] + _glTexParameterIuiv _TexParameterIuiv { get; } + + delegate void _glTexParameterIuiv_ptr(TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glTexParameterIuiv")] + _glTexParameterIuiv_ptr _TexParameterIuiv_ptr { get; } + + delegate void _glTexParameterIuiv_intptr(TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTexParameterIuiv")] + _glTexParameterIuiv_intptr _TexParameterIuiv_intptr { get; } + + // --- + + delegate void _glTexParameterIuivEXT(TextureTarget target, TextureParameterName pname, uint[] @params); + [GlEntryPoint("glTexParameterIuivEXT")] + _glTexParameterIuivEXT _TexParameterIuivEXT { get; } + + delegate void _glTexParameterIuivEXT_ptr(TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glTexParameterIuivEXT")] + _glTexParameterIuivEXT_ptr _TexParameterIuivEXT_ptr { get; } + + delegate void _glTexParameterIuivEXT_intptr(TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTexParameterIuivEXT")] + _glTexParameterIuivEXT_intptr _TexParameterIuivEXT_intptr { get; } + + // --- + + delegate void _glTexParameterIuivOES(TextureTarget target, TextureParameterName pname, uint[] @params); + [GlEntryPoint("glTexParameterIuivOES")] + _glTexParameterIuivOES _TexParameterIuivOES { get; } + + delegate void _glTexParameterIuivOES_ptr(TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glTexParameterIuivOES")] + _glTexParameterIuivOES_ptr _TexParameterIuivOES_ptr { get; } + + delegate void _glTexParameterIuivOES_intptr(TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTexParameterIuivOES")] + _glTexParameterIuivOES_intptr _TexParameterIuivOES_intptr { get; } + + // --- + + delegate void _glTexParameterf(TextureTarget target, TextureParameterName pname, float param); + [GlEntryPoint("glTexParameterf")] + _glTexParameterf _TexParameterf { get; } + + // --- + + delegate void _glTexParameterfv(TextureTarget target, TextureParameterName pname, float[] @params); + [GlEntryPoint("glTexParameterfv")] + _glTexParameterfv _TexParameterfv { get; } + + delegate void _glTexParameterfv_ptr(TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glTexParameterfv")] + _glTexParameterfv_ptr _TexParameterfv_ptr { get; } + + delegate void _glTexParameterfv_intptr(TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTexParameterfv")] + _glTexParameterfv_intptr _TexParameterfv_intptr { get; } + + // --- + + delegate void _glTexParameteri(TextureTarget target, TextureParameterName pname, int param); + [GlEntryPoint("glTexParameteri")] + _glTexParameteri _TexParameteri { get; } + + // --- + + delegate void _glTexParameteriv(TextureTarget target, TextureParameterName pname, int[] @params); + [GlEntryPoint("glTexParameteriv")] + _glTexParameteriv _TexParameteriv { get; } + + delegate void _glTexParameteriv_ptr(TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glTexParameteriv")] + _glTexParameteriv_ptr _TexParameteriv_ptr { get; } + + delegate void _glTexParameteriv_intptr(TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTexParameteriv")] + _glTexParameteriv_intptr _TexParameteriv_intptr { get; } + + // --- + + delegate void _glTexParameterx(TextureTarget target, GetTextureParameter pname, float param); + [GlEntryPoint("glTexParameterx")] + _glTexParameterx _TexParameterx { get; } + + // --- + + delegate void _glTexParameterxOES(TextureTarget target, GetTextureParameter pname, float param); + [GlEntryPoint("glTexParameterxOES")] + _glTexParameterxOES _TexParameterxOES { get; } + + // --- + + delegate void _glTexParameterxv(TextureTarget target, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glTexParameterxv")] + _glTexParameterxv _TexParameterxv { get; } + + delegate void _glTexParameterxv_ptr(TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glTexParameterxv")] + _glTexParameterxv_ptr _TexParameterxv_ptr { get; } + + delegate void _glTexParameterxv_intptr(TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glTexParameterxv")] + _glTexParameterxv_intptr _TexParameterxv_intptr { get; } + + // --- + + delegate void _glTexParameterxvOES(TextureTarget target, GetTextureParameter pname, float[] @params); + [GlEntryPoint("glTexParameterxvOES")] + _glTexParameterxvOES _TexParameterxvOES { get; } + + delegate void _glTexParameterxvOES_ptr(TextureTarget target, GetTextureParameter pname, void* @params); + [GlEntryPoint("glTexParameterxvOES")] + _glTexParameterxvOES_ptr _TexParameterxvOES_ptr { get; } + + delegate void _glTexParameterxvOES_intptr(TextureTarget target, GetTextureParameter pname, IntPtr @params); + [GlEntryPoint("glTexParameterxvOES")] + _glTexParameterxvOES_intptr _TexParameterxvOES_intptr { get; } + + // --- + + delegate void _glTexRenderbufferNV(TextureTarget target, uint renderbuffer); + [GlEntryPoint("glTexRenderbufferNV")] + _glTexRenderbufferNV _TexRenderbufferNV { get; } + + // --- + + delegate void _glTexStorage1D(TextureTarget target, int levels, InternalFormat internalformat, int width); + [GlEntryPoint("glTexStorage1D")] + _glTexStorage1D _TexStorage1D { get; } + + // --- + + delegate void _glTexStorage1DEXT(TextureTarget target, int levels, InternalFormat internalformat, int width); + [GlEntryPoint("glTexStorage1DEXT")] + _glTexStorage1DEXT _TexStorage1DEXT { get; } + + // --- + + delegate void _glTexStorage2D(TextureTarget target, int levels, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glTexStorage2D")] + _glTexStorage2D _TexStorage2D { get; } + + // --- + + delegate void _glTexStorage2DEXT(TextureTarget target, int levels, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glTexStorage2DEXT")] + _glTexStorage2DEXT _TexStorage2DEXT { get; } + + // --- + + delegate void _glTexStorage2DMultisample(TextureTarget target, int samples, InternalFormat internalformat, int width, int height, bool fixedsamplelocations); + [GlEntryPoint("glTexStorage2DMultisample")] + _glTexStorage2DMultisample _TexStorage2DMultisample { get; } + + // --- + + delegate void _glTexStorage3D(TextureTarget target, int levels, InternalFormat internalformat, int width, int height, int depth); + [GlEntryPoint("glTexStorage3D")] + _glTexStorage3D _TexStorage3D { get; } + + // --- + + delegate void _glTexStorage3DEXT(TextureTarget target, int levels, InternalFormat internalformat, int width, int height, int depth); + [GlEntryPoint("glTexStorage3DEXT")] + _glTexStorage3DEXT _TexStorage3DEXT { get; } + + // --- + + delegate void _glTexStorage3DMultisample(TextureTarget target, int samples, InternalFormat internalformat, int width, int height, int depth, bool fixedsamplelocations); + [GlEntryPoint("glTexStorage3DMultisample")] + _glTexStorage3DMultisample _TexStorage3DMultisample { get; } + + // --- + + delegate void _glTexStorage3DMultisampleOES(TextureTarget target, int samples, InternalFormat internalformat, int width, int height, int depth, bool fixedsamplelocations); + [GlEntryPoint("glTexStorage3DMultisampleOES")] + _glTexStorage3DMultisampleOES _TexStorage3DMultisampleOES { get; } + + // --- + + delegate void _glTexStorageMem1DEXT(TextureTarget target, int levels, int internalFormat, int width, uint memory, UInt64 offset); + [GlEntryPoint("glTexStorageMem1DEXT")] + _glTexStorageMem1DEXT _TexStorageMem1DEXT { get; } + + // --- + + delegate void _glTexStorageMem2DEXT(TextureTarget target, int levels, int internalFormat, int width, int height, uint memory, UInt64 offset); + [GlEntryPoint("glTexStorageMem2DEXT")] + _glTexStorageMem2DEXT _TexStorageMem2DEXT { get; } + + // --- + + delegate void _glTexStorageMem2DMultisampleEXT(TextureTarget target, int samples, int internalFormat, int width, int height, bool fixedSampleLocations, uint memory, UInt64 offset); + [GlEntryPoint("glTexStorageMem2DMultisampleEXT")] + _glTexStorageMem2DMultisampleEXT _TexStorageMem2DMultisampleEXT { get; } + + // --- + + delegate void _glTexStorageMem3DEXT(TextureTarget target, int levels, int internalFormat, int width, int height, int depth, uint memory, UInt64 offset); + [GlEntryPoint("glTexStorageMem3DEXT")] + _glTexStorageMem3DEXT _TexStorageMem3DEXT { get; } + + // --- + + delegate void _glTexStorageMem3DMultisampleEXT(TextureTarget target, int samples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations, uint memory, UInt64 offset); + [GlEntryPoint("glTexStorageMem3DMultisampleEXT")] + _glTexStorageMem3DMultisampleEXT _TexStorageMem3DMultisampleEXT { get; } + + // --- + + delegate void _glTexStorageSparseAMD(TextureTarget target, InternalFormat internalFormat, int width, int height, int depth, int layers, int flags); + [GlEntryPoint("glTexStorageSparseAMD")] + _glTexStorageSparseAMD _TexStorageSparseAMD { get; } + + // --- + + delegate void _glTexSubImage1D(TextureTarget target, int level, int xoffset, int width, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexSubImage1D")] + _glTexSubImage1D _TexSubImage1D { get; } + + // --- + + delegate void _glTexSubImage1DEXT(TextureTarget target, int level, int xoffset, int width, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexSubImage1DEXT")] + _glTexSubImage1DEXT _TexSubImage1DEXT { get; } + + // --- + + delegate void _glTexSubImage2D(TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexSubImage2D")] + _glTexSubImage2D _TexSubImage2D { get; } + + // --- + + delegate void _glTexSubImage2DEXT(TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexSubImage2DEXT")] + _glTexSubImage2DEXT _TexSubImage2DEXT { get; } + + // --- + + delegate void _glTexSubImage3D(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexSubImage3D")] + _glTexSubImage3D _TexSubImage3D { get; } + + // --- + + delegate void _glTexSubImage3DEXT(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexSubImage3DEXT")] + _glTexSubImage3DEXT _TexSubImage3DEXT { get; } + + // --- + + delegate void _glTexSubImage3DOES(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexSubImage3DOES")] + _glTexSubImage3DOES _TexSubImage3DOES { get; } + + // --- + + delegate void _glTexSubImage4DSGIS(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int woffset, int width, int height, int depth, int size4d, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTexSubImage4DSGIS")] + _glTexSubImage4DSGIS _TexSubImage4DSGIS { get; } + + // --- + + delegate void _glTextureAttachMemoryNV(uint texture, uint memory, UInt64 offset); + [GlEntryPoint("glTextureAttachMemoryNV")] + _glTextureAttachMemoryNV _TextureAttachMemoryNV { get; } + + // --- + + delegate void _glTextureBarrier(); + [GlEntryPoint("glTextureBarrier")] + _glTextureBarrier _TextureBarrier { get; } + + // --- + + delegate void _glTextureBarrierNV(); + [GlEntryPoint("glTextureBarrierNV")] + _glTextureBarrierNV _TextureBarrierNV { get; } + + // --- + + delegate void _glTextureBuffer(uint texture, InternalFormat internalformat, uint buffer); + [GlEntryPoint("glTextureBuffer")] + _glTextureBuffer _TextureBuffer { get; } + + // --- + + delegate void _glTextureBufferEXT(uint texture, TextureTarget target, InternalFormat internalformat, uint buffer); + [GlEntryPoint("glTextureBufferEXT")] + _glTextureBufferEXT _TextureBufferEXT { get; } + + // --- + + delegate void _glTextureBufferRange(uint texture, InternalFormat internalformat, uint buffer, IntPtr offset, IntPtr size); + [GlEntryPoint("glTextureBufferRange")] + _glTextureBufferRange _TextureBufferRange { get; } + + // --- + + delegate void _glTextureBufferRangeEXT(uint texture, TextureTarget target, InternalFormat internalformat, uint buffer, IntPtr offset, IntPtr size); + [GlEntryPoint("glTextureBufferRangeEXT")] + _glTextureBufferRangeEXT _TextureBufferRangeEXT { get; } + + // --- + + delegate void _glTextureColorMaskSGIS(bool red, bool green, bool blue, bool alpha); + [GlEntryPoint("glTextureColorMaskSGIS")] + _glTextureColorMaskSGIS _TextureColorMaskSGIS { get; } + + // --- + + delegate void _glTextureFoveationParametersQCOM(uint texture, uint layer, uint focalPoint, float focalX, float focalY, float gainX, float gainY, float foveaArea); + [GlEntryPoint("glTextureFoveationParametersQCOM")] + _glTextureFoveationParametersQCOM _TextureFoveationParametersQCOM { get; } + + // --- + + delegate void _glTextureImage1DEXT(uint texture, TextureTarget target, int level, int internalformat, int width, int border, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTextureImage1DEXT")] + _glTextureImage1DEXT _TextureImage1DEXT { get; } + + // --- + + delegate void _glTextureImage2DEXT(uint texture, TextureTarget target, int level, int internalformat, int width, int height, int border, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTextureImage2DEXT")] + _glTextureImage2DEXT _TextureImage2DEXT { get; } + + // --- + + delegate void _glTextureImage2DMultisampleCoverageNV(uint texture, TextureTarget target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, bool fixedSampleLocations); + [GlEntryPoint("glTextureImage2DMultisampleCoverageNV")] + _glTextureImage2DMultisampleCoverageNV _TextureImage2DMultisampleCoverageNV { get; } + + // --- + + delegate void _glTextureImage2DMultisampleNV(uint texture, TextureTarget target, int samples, int internalFormat, int width, int height, bool fixedSampleLocations); + [GlEntryPoint("glTextureImage2DMultisampleNV")] + _glTextureImage2DMultisampleNV _TextureImage2DMultisampleNV { get; } + + // --- + + delegate void _glTextureImage3DEXT(uint texture, TextureTarget target, int level, int internalformat, int width, int height, int depth, int border, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTextureImage3DEXT")] + _glTextureImage3DEXT _TextureImage3DEXT { get; } + + // --- + + delegate void _glTextureImage3DMultisampleCoverageNV(uint texture, TextureTarget target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations); + [GlEntryPoint("glTextureImage3DMultisampleCoverageNV")] + _glTextureImage3DMultisampleCoverageNV _TextureImage3DMultisampleCoverageNV { get; } + + // --- + + delegate void _glTextureImage3DMultisampleNV(uint texture, TextureTarget target, int samples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations); + [GlEntryPoint("glTextureImage3DMultisampleNV")] + _glTextureImage3DMultisampleNV _TextureImage3DMultisampleNV { get; } + + // --- + + delegate void _glTextureLightEXT(LightTexturePNameEXT pname); + [GlEntryPoint("glTextureLightEXT")] + _glTextureLightEXT _TextureLightEXT { get; } + + // --- + + delegate void _glTextureMaterialEXT(MaterialFace face, MaterialParameter mode); + [GlEntryPoint("glTextureMaterialEXT")] + _glTextureMaterialEXT _TextureMaterialEXT { get; } + + // --- + + delegate void _glTextureNormalEXT(TextureNormalModeEXT mode); + [GlEntryPoint("glTextureNormalEXT")] + _glTextureNormalEXT _TextureNormalEXT { get; } + + // --- + + delegate void _glTexturePageCommitmentEXT(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, bool commit); + [GlEntryPoint("glTexturePageCommitmentEXT")] + _glTexturePageCommitmentEXT _TexturePageCommitmentEXT { get; } + + // --- + + delegate void _glTextureParameterIiv(uint texture, TextureParameterName pname, int[] @params); + [GlEntryPoint("glTextureParameterIiv")] + _glTextureParameterIiv _TextureParameterIiv { get; } + + delegate void _glTextureParameterIiv_ptr(uint texture, TextureParameterName pname, void* @params); + [GlEntryPoint("glTextureParameterIiv")] + _glTextureParameterIiv_ptr _TextureParameterIiv_ptr { get; } + + delegate void _glTextureParameterIiv_intptr(uint texture, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTextureParameterIiv")] + _glTextureParameterIiv_intptr _TextureParameterIiv_intptr { get; } + + // --- + + delegate void _glTextureParameterIivEXT(uint texture, TextureTarget target, TextureParameterName pname, int[] @params); + [GlEntryPoint("glTextureParameterIivEXT")] + _glTextureParameterIivEXT _TextureParameterIivEXT { get; } + + delegate void _glTextureParameterIivEXT_ptr(uint texture, TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glTextureParameterIivEXT")] + _glTextureParameterIivEXT_ptr _TextureParameterIivEXT_ptr { get; } + + delegate void _glTextureParameterIivEXT_intptr(uint texture, TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTextureParameterIivEXT")] + _glTextureParameterIivEXT_intptr _TextureParameterIivEXT_intptr { get; } + + // --- + + delegate void _glTextureParameterIuiv(uint texture, TextureParameterName pname, uint[] @params); + [GlEntryPoint("glTextureParameterIuiv")] + _glTextureParameterIuiv _TextureParameterIuiv { get; } + + delegate void _glTextureParameterIuiv_ptr(uint texture, TextureParameterName pname, void* @params); + [GlEntryPoint("glTextureParameterIuiv")] + _glTextureParameterIuiv_ptr _TextureParameterIuiv_ptr { get; } + + delegate void _glTextureParameterIuiv_intptr(uint texture, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTextureParameterIuiv")] + _glTextureParameterIuiv_intptr _TextureParameterIuiv_intptr { get; } + + // --- + + delegate void _glTextureParameterIuivEXT(uint texture, TextureTarget target, TextureParameterName pname, uint[] @params); + [GlEntryPoint("glTextureParameterIuivEXT")] + _glTextureParameterIuivEXT _TextureParameterIuivEXT { get; } + + delegate void _glTextureParameterIuivEXT_ptr(uint texture, TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glTextureParameterIuivEXT")] + _glTextureParameterIuivEXT_ptr _TextureParameterIuivEXT_ptr { get; } + + delegate void _glTextureParameterIuivEXT_intptr(uint texture, TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTextureParameterIuivEXT")] + _glTextureParameterIuivEXT_intptr _TextureParameterIuivEXT_intptr { get; } + + // --- + + delegate void _glTextureParameterf(uint texture, TextureParameterName pname, float param); + [GlEntryPoint("glTextureParameterf")] + _glTextureParameterf _TextureParameterf { get; } + + // --- + + delegate void _glTextureParameterfEXT(uint texture, TextureTarget target, TextureParameterName pname, float param); + [GlEntryPoint("glTextureParameterfEXT")] + _glTextureParameterfEXT _TextureParameterfEXT { get; } + + // --- + + delegate void _glTextureParameterfv(uint texture, TextureParameterName pname, float[] param); + [GlEntryPoint("glTextureParameterfv")] + _glTextureParameterfv _TextureParameterfv { get; } + + delegate void _glTextureParameterfv_ptr(uint texture, TextureParameterName pname, void* param); + [GlEntryPoint("glTextureParameterfv")] + _glTextureParameterfv_ptr _TextureParameterfv_ptr { get; } + + delegate void _glTextureParameterfv_intptr(uint texture, TextureParameterName pname, IntPtr param); + [GlEntryPoint("glTextureParameterfv")] + _glTextureParameterfv_intptr _TextureParameterfv_intptr { get; } + + // --- + + delegate void _glTextureParameterfvEXT(uint texture, TextureTarget target, TextureParameterName pname, float[] @params); + [GlEntryPoint("glTextureParameterfvEXT")] + _glTextureParameterfvEXT _TextureParameterfvEXT { get; } + + delegate void _glTextureParameterfvEXT_ptr(uint texture, TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glTextureParameterfvEXT")] + _glTextureParameterfvEXT_ptr _TextureParameterfvEXT_ptr { get; } + + delegate void _glTextureParameterfvEXT_intptr(uint texture, TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTextureParameterfvEXT")] + _glTextureParameterfvEXT_intptr _TextureParameterfvEXT_intptr { get; } + + // --- + + delegate void _glTextureParameteri(uint texture, TextureParameterName pname, int param); + [GlEntryPoint("glTextureParameteri")] + _glTextureParameteri _TextureParameteri { get; } + + // --- + + delegate void _glTextureParameteriEXT(uint texture, TextureTarget target, TextureParameterName pname, int param); + [GlEntryPoint("glTextureParameteriEXT")] + _glTextureParameteriEXT _TextureParameteriEXT { get; } + + // --- + + delegate void _glTextureParameteriv(uint texture, TextureParameterName pname, int[] param); + [GlEntryPoint("glTextureParameteriv")] + _glTextureParameteriv _TextureParameteriv { get; } + + delegate void _glTextureParameteriv_ptr(uint texture, TextureParameterName pname, void* param); + [GlEntryPoint("glTextureParameteriv")] + _glTextureParameteriv_ptr _TextureParameteriv_ptr { get; } + + delegate void _glTextureParameteriv_intptr(uint texture, TextureParameterName pname, IntPtr param); + [GlEntryPoint("glTextureParameteriv")] + _glTextureParameteriv_intptr _TextureParameteriv_intptr { get; } + + // --- + + delegate void _glTextureParameterivEXT(uint texture, TextureTarget target, TextureParameterName pname, int[] @params); + [GlEntryPoint("glTextureParameterivEXT")] + _glTextureParameterivEXT _TextureParameterivEXT { get; } + + delegate void _glTextureParameterivEXT_ptr(uint texture, TextureTarget target, TextureParameterName pname, void* @params); + [GlEntryPoint("glTextureParameterivEXT")] + _glTextureParameterivEXT_ptr _TextureParameterivEXT_ptr { get; } + + delegate void _glTextureParameterivEXT_intptr(uint texture, TextureTarget target, TextureParameterName pname, IntPtr @params); + [GlEntryPoint("glTextureParameterivEXT")] + _glTextureParameterivEXT_intptr _TextureParameterivEXT_intptr { get; } + + // --- + + delegate void _glTextureRangeAPPLE(int target, int length, IntPtr pointer); + [GlEntryPoint("glTextureRangeAPPLE")] + _glTextureRangeAPPLE _TextureRangeAPPLE { get; } + + // --- + + delegate void _glTextureRenderbufferEXT(uint texture, TextureTarget target, uint renderbuffer); + [GlEntryPoint("glTextureRenderbufferEXT")] + _glTextureRenderbufferEXT _TextureRenderbufferEXT { get; } + + // --- + + delegate void _glTextureStorage1D(uint texture, int levels, InternalFormat internalformat, int width); + [GlEntryPoint("glTextureStorage1D")] + _glTextureStorage1D _TextureStorage1D { get; } + + // --- + + delegate void _glTextureStorage1DEXT(uint texture, int target, int levels, InternalFormat internalformat, int width); + [GlEntryPoint("glTextureStorage1DEXT")] + _glTextureStorage1DEXT _TextureStorage1DEXT { get; } + + // --- + + delegate void _glTextureStorage2D(uint texture, int levels, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glTextureStorage2D")] + _glTextureStorage2D _TextureStorage2D { get; } + + // --- + + delegate void _glTextureStorage2DEXT(uint texture, int target, int levels, InternalFormat internalformat, int width, int height); + [GlEntryPoint("glTextureStorage2DEXT")] + _glTextureStorage2DEXT _TextureStorage2DEXT { get; } + + // --- + + delegate void _glTextureStorage2DMultisample(uint texture, int samples, InternalFormat internalformat, int width, int height, bool fixedsamplelocations); + [GlEntryPoint("glTextureStorage2DMultisample")] + _glTextureStorage2DMultisample _TextureStorage2DMultisample { get; } + + // --- + + delegate void _glTextureStorage2DMultisampleEXT(uint texture, TextureTarget target, int samples, InternalFormat internalformat, int width, int height, bool fixedsamplelocations); + [GlEntryPoint("glTextureStorage2DMultisampleEXT")] + _glTextureStorage2DMultisampleEXT _TextureStorage2DMultisampleEXT { get; } + + // --- + + delegate void _glTextureStorage3D(uint texture, int levels, InternalFormat internalformat, int width, int height, int depth); + [GlEntryPoint("glTextureStorage3D")] + _glTextureStorage3D _TextureStorage3D { get; } + + // --- + + delegate void _glTextureStorage3DEXT(uint texture, int target, int levels, InternalFormat internalformat, int width, int height, int depth); + [GlEntryPoint("glTextureStorage3DEXT")] + _glTextureStorage3DEXT _TextureStorage3DEXT { get; } + + // --- + + delegate void _glTextureStorage3DMultisample(uint texture, int samples, InternalFormat internalformat, int width, int height, int depth, bool fixedsamplelocations); + [GlEntryPoint("glTextureStorage3DMultisample")] + _glTextureStorage3DMultisample _TextureStorage3DMultisample { get; } + + // --- + + delegate void _glTextureStorage3DMultisampleEXT(uint texture, int target, int samples, InternalFormat internalformat, int width, int height, int depth, bool fixedsamplelocations); + [GlEntryPoint("glTextureStorage3DMultisampleEXT")] + _glTextureStorage3DMultisampleEXT _TextureStorage3DMultisampleEXT { get; } + + // --- + + delegate void _glTextureStorageMem1DEXT(uint texture, int levels, int internalFormat, int width, uint memory, UInt64 offset); + [GlEntryPoint("glTextureStorageMem1DEXT")] + _glTextureStorageMem1DEXT _TextureStorageMem1DEXT { get; } + + // --- + + delegate void _glTextureStorageMem2DEXT(uint texture, int levels, int internalFormat, int width, int height, uint memory, UInt64 offset); + [GlEntryPoint("glTextureStorageMem2DEXT")] + _glTextureStorageMem2DEXT _TextureStorageMem2DEXT { get; } + + // --- + + delegate void _glTextureStorageMem2DMultisampleEXT(uint texture, int samples, int internalFormat, int width, int height, bool fixedSampleLocations, uint memory, UInt64 offset); + [GlEntryPoint("glTextureStorageMem2DMultisampleEXT")] + _glTextureStorageMem2DMultisampleEXT _TextureStorageMem2DMultisampleEXT { get; } + + // --- + + delegate void _glTextureStorageMem3DEXT(uint texture, int levels, int internalFormat, int width, int height, int depth, uint memory, UInt64 offset); + [GlEntryPoint("glTextureStorageMem3DEXT")] + _glTextureStorageMem3DEXT _TextureStorageMem3DEXT { get; } + + // --- + + delegate void _glTextureStorageMem3DMultisampleEXT(uint texture, int samples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations, uint memory, UInt64 offset); + [GlEntryPoint("glTextureStorageMem3DMultisampleEXT")] + _glTextureStorageMem3DMultisampleEXT _TextureStorageMem3DMultisampleEXT { get; } + + // --- + + delegate void _glTextureStorageSparseAMD(uint texture, int target, InternalFormat internalFormat, int width, int height, int depth, int layers, int flags); + [GlEntryPoint("glTextureStorageSparseAMD")] + _glTextureStorageSparseAMD _TextureStorageSparseAMD { get; } + + // --- + + delegate void _glTextureSubImage1D(uint texture, int level, int xoffset, int width, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTextureSubImage1D")] + _glTextureSubImage1D _TextureSubImage1D { get; } + + // --- + + delegate void _glTextureSubImage1DEXT(uint texture, TextureTarget target, int level, int xoffset, int width, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTextureSubImage1DEXT")] + _glTextureSubImage1DEXT _TextureSubImage1DEXT { get; } + + // --- + + delegate void _glTextureSubImage2D(uint texture, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTextureSubImage2D")] + _glTextureSubImage2D _TextureSubImage2D { get; } + + // --- + + delegate void _glTextureSubImage2DEXT(uint texture, TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTextureSubImage2DEXT")] + _glTextureSubImage2DEXT _TextureSubImage2DEXT { get; } + + // --- + + delegate void _glTextureSubImage3D(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTextureSubImage3D")] + _glTextureSubImage3D _TextureSubImage3D { get; } + + // --- + + delegate void _glTextureSubImage3DEXT(uint texture, TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr pixels); + [GlEntryPoint("glTextureSubImage3DEXT")] + _glTextureSubImage3DEXT _TextureSubImage3DEXT { get; } + + // --- + + delegate void _glTextureView(uint texture, TextureTarget target, uint origtexture, InternalFormat internalformat, uint minlevel, uint numlevels, uint minlayer, uint numlayers); + [GlEntryPoint("glTextureView")] + _glTextureView _TextureView { get; } + + // --- + + delegate void _glTextureViewEXT(uint texture, TextureTarget target, uint origtexture, InternalFormat internalformat, uint minlevel, uint numlevels, uint minlayer, uint numlayers); + [GlEntryPoint("glTextureViewEXT")] + _glTextureViewEXT _TextureViewEXT { get; } + + // --- + + delegate void _glTextureViewOES(uint texture, TextureTarget target, uint origtexture, InternalFormat internalformat, uint minlevel, uint numlevels, uint minlayer, uint numlayers); + [GlEntryPoint("glTextureViewOES")] + _glTextureViewOES _TextureViewOES { get; } + + // --- + + delegate void _glTrackMatrixNV(VertexAttribEnumNV target, uint address, VertexAttribEnumNV matrix, VertexAttribEnumNV transform); + [GlEntryPoint("glTrackMatrixNV")] + _glTrackMatrixNV _TrackMatrixNV { get; } + + // --- + + delegate void _glTransformFeedbackAttribsNV(int count, int[] attribs, int bufferMode); + [GlEntryPoint("glTransformFeedbackAttribsNV")] + _glTransformFeedbackAttribsNV _TransformFeedbackAttribsNV { get; } + + delegate void _glTransformFeedbackAttribsNV_ptr(int count, void* attribs, int bufferMode); + [GlEntryPoint("glTransformFeedbackAttribsNV")] + _glTransformFeedbackAttribsNV_ptr _TransformFeedbackAttribsNV_ptr { get; } + + delegate void _glTransformFeedbackAttribsNV_intptr(int count, IntPtr attribs, int bufferMode); + [GlEntryPoint("glTransformFeedbackAttribsNV")] + _glTransformFeedbackAttribsNV_intptr _TransformFeedbackAttribsNV_intptr { get; } + + // --- + + delegate void _glTransformFeedbackBufferBase(uint xfb, uint index, uint buffer); + [GlEntryPoint("glTransformFeedbackBufferBase")] + _glTransformFeedbackBufferBase _TransformFeedbackBufferBase { get; } + + // --- + + delegate void _glTransformFeedbackBufferRange(uint xfb, uint index, uint buffer, IntPtr offset, IntPtr size); + [GlEntryPoint("glTransformFeedbackBufferRange")] + _glTransformFeedbackBufferRange _TransformFeedbackBufferRange { get; } + + // --- + + delegate void _glTransformFeedbackStreamAttribsNV(int count, int[] attribs, int nbuffers, int[] bufstreams, int bufferMode); + [GlEntryPoint("glTransformFeedbackStreamAttribsNV")] + _glTransformFeedbackStreamAttribsNV _TransformFeedbackStreamAttribsNV { get; } + + delegate void _glTransformFeedbackStreamAttribsNV_ptr(int count, void* attribs, int nbuffers, void* bufstreams, int bufferMode); + [GlEntryPoint("glTransformFeedbackStreamAttribsNV")] + _glTransformFeedbackStreamAttribsNV_ptr _TransformFeedbackStreamAttribsNV_ptr { get; } + + delegate void _glTransformFeedbackStreamAttribsNV_intptr(int count, IntPtr attribs, int nbuffers, IntPtr bufstreams, int bufferMode); + [GlEntryPoint("glTransformFeedbackStreamAttribsNV")] + _glTransformFeedbackStreamAttribsNV_intptr _TransformFeedbackStreamAttribsNV_intptr { get; } + + // --- + + delegate void _glTransformFeedbackVaryings(uint program, int count, string[] varyings, TransformFeedbackBufferMode bufferMode); + [GlEntryPoint("glTransformFeedbackVaryings")] + _glTransformFeedbackVaryings _TransformFeedbackVaryings { get; } + + delegate void _glTransformFeedbackVaryings_ptr(uint program, int count, void* varyings, TransformFeedbackBufferMode bufferMode); + [GlEntryPoint("glTransformFeedbackVaryings")] + _glTransformFeedbackVaryings_ptr _TransformFeedbackVaryings_ptr { get; } + + delegate void _glTransformFeedbackVaryings_intptr(uint program, int count, IntPtr varyings, TransformFeedbackBufferMode bufferMode); + [GlEntryPoint("glTransformFeedbackVaryings")] + _glTransformFeedbackVaryings_intptr _TransformFeedbackVaryings_intptr { get; } + + // --- + + delegate void _glTransformFeedbackVaryingsEXT(uint program, int count, string[] varyings, int bufferMode); + [GlEntryPoint("glTransformFeedbackVaryingsEXT")] + _glTransformFeedbackVaryingsEXT _TransformFeedbackVaryingsEXT { get; } + + delegate void _glTransformFeedbackVaryingsEXT_ptr(uint program, int count, void* varyings, int bufferMode); + [GlEntryPoint("glTransformFeedbackVaryingsEXT")] + _glTransformFeedbackVaryingsEXT_ptr _TransformFeedbackVaryingsEXT_ptr { get; } + + delegate void _glTransformFeedbackVaryingsEXT_intptr(uint program, int count, IntPtr varyings, int bufferMode); + [GlEntryPoint("glTransformFeedbackVaryingsEXT")] + _glTransformFeedbackVaryingsEXT_intptr _TransformFeedbackVaryingsEXT_intptr { get; } + + // --- + + delegate void _glTransformFeedbackVaryingsNV(uint program, int count, int[] locations, int bufferMode); + [GlEntryPoint("glTransformFeedbackVaryingsNV")] + _glTransformFeedbackVaryingsNV _TransformFeedbackVaryingsNV { get; } + + delegate void _glTransformFeedbackVaryingsNV_ptr(uint program, int count, void* locations, int bufferMode); + [GlEntryPoint("glTransformFeedbackVaryingsNV")] + _glTransformFeedbackVaryingsNV_ptr _TransformFeedbackVaryingsNV_ptr { get; } + + delegate void _glTransformFeedbackVaryingsNV_intptr(uint program, int count, IntPtr locations, int bufferMode); + [GlEntryPoint("glTransformFeedbackVaryingsNV")] + _glTransformFeedbackVaryingsNV_intptr _TransformFeedbackVaryingsNV_intptr { get; } + + // --- + + delegate void _glTransformPathNV(uint resultPath, uint srcPath, PathTransformType transformType, float[] transformValues); + [GlEntryPoint("glTransformPathNV")] + _glTransformPathNV _TransformPathNV { get; } + + delegate void _glTransformPathNV_ptr(uint resultPath, uint srcPath, PathTransformType transformType, void* transformValues); + [GlEntryPoint("glTransformPathNV")] + _glTransformPathNV_ptr _TransformPathNV_ptr { get; } + + delegate void _glTransformPathNV_intptr(uint resultPath, uint srcPath, PathTransformType transformType, IntPtr transformValues); + [GlEntryPoint("glTransformPathNV")] + _glTransformPathNV_intptr _TransformPathNV_intptr { get; } + + // --- + + delegate void _glTranslated(double x, double y, double z); + [GlEntryPoint("glTranslated")] + _glTranslated _Translated { get; } + + // --- + + delegate void _glTranslatef(float x, float y, float z); + [GlEntryPoint("glTranslatef")] + _glTranslatef _Translatef { get; } + + // --- + + delegate void _glTranslatex(float x, float y, float z); + [GlEntryPoint("glTranslatex")] + _glTranslatex _Translatex { get; } + + // --- + + delegate void _glTranslatexOES(float x, float y, float z); + [GlEntryPoint("glTranslatexOES")] + _glTranslatexOES _TranslatexOES { get; } + + // --- + + delegate void _glUniform1d(int location, double x); + [GlEntryPoint("glUniform1d")] + _glUniform1d _Uniform1d { get; } + + // --- + + delegate void _glUniform1dv(int location, int count, double[] value); + [GlEntryPoint("glUniform1dv")] + _glUniform1dv _Uniform1dv { get; } + + delegate void _glUniform1dv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform1dv")] + _glUniform1dv_ptr _Uniform1dv_ptr { get; } + + delegate void _glUniform1dv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform1dv")] + _glUniform1dv_intptr _Uniform1dv_intptr { get; } + + // --- + + delegate void _glUniform1f(int location, float v0); + [GlEntryPoint("glUniform1f")] + _glUniform1f _Uniform1f { get; } + + // --- + + delegate void _glUniform1fARB(int location, float v0); + [GlEntryPoint("glUniform1fARB")] + _glUniform1fARB _Uniform1fARB { get; } + + // --- + + delegate void _glUniform1fv(int location, int count, float[] value); + [GlEntryPoint("glUniform1fv")] + _glUniform1fv _Uniform1fv { get; } + + delegate void _glUniform1fv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform1fv")] + _glUniform1fv_ptr _Uniform1fv_ptr { get; } + + delegate void _glUniform1fv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform1fv")] + _glUniform1fv_intptr _Uniform1fv_intptr { get; } + + // --- + + delegate void _glUniform1fvARB(int location, int count, float[] value); + [GlEntryPoint("glUniform1fvARB")] + _glUniform1fvARB _Uniform1fvARB { get; } + + delegate void _glUniform1fvARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform1fvARB")] + _glUniform1fvARB_ptr _Uniform1fvARB_ptr { get; } + + delegate void _glUniform1fvARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform1fvARB")] + _glUniform1fvARB_intptr _Uniform1fvARB_intptr { get; } + + // --- + + delegate void _glUniform1i(int location, int v0); + [GlEntryPoint("glUniform1i")] + _glUniform1i _Uniform1i { get; } + + // --- + + delegate void _glUniform1i64ARB(int location, Int64 x); + [GlEntryPoint("glUniform1i64ARB")] + _glUniform1i64ARB _Uniform1i64ARB { get; } + + // --- + + delegate void _glUniform1i64NV(int location, Int64 x); + [GlEntryPoint("glUniform1i64NV")] + _glUniform1i64NV _Uniform1i64NV { get; } + + // --- + + delegate void _glUniform1i64vARB(int location, int count, Int64[] value); + [GlEntryPoint("glUniform1i64vARB")] + _glUniform1i64vARB _Uniform1i64vARB { get; } + + delegate void _glUniform1i64vARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform1i64vARB")] + _glUniform1i64vARB_ptr _Uniform1i64vARB_ptr { get; } + + delegate void _glUniform1i64vARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform1i64vARB")] + _glUniform1i64vARB_intptr _Uniform1i64vARB_intptr { get; } + + // --- + + delegate void _glUniform1i64vNV(int location, int count, Int64[] value); + [GlEntryPoint("glUniform1i64vNV")] + _glUniform1i64vNV _Uniform1i64vNV { get; } + + delegate void _glUniform1i64vNV_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform1i64vNV")] + _glUniform1i64vNV_ptr _Uniform1i64vNV_ptr { get; } + + delegate void _glUniform1i64vNV_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform1i64vNV")] + _glUniform1i64vNV_intptr _Uniform1i64vNV_intptr { get; } + + // --- + + delegate void _glUniform1iARB(int location, int v0); + [GlEntryPoint("glUniform1iARB")] + _glUniform1iARB _Uniform1iARB { get; } + + // --- + + delegate void _glUniform1iv(int location, int count, int[] value); + [GlEntryPoint("glUniform1iv")] + _glUniform1iv _Uniform1iv { get; } + + delegate void _glUniform1iv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform1iv")] + _glUniform1iv_ptr _Uniform1iv_ptr { get; } + + delegate void _glUniform1iv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform1iv")] + _glUniform1iv_intptr _Uniform1iv_intptr { get; } + + // --- + + delegate void _glUniform1ivARB(int location, int count, int[] value); + [GlEntryPoint("glUniform1ivARB")] + _glUniform1ivARB _Uniform1ivARB { get; } + + delegate void _glUniform1ivARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform1ivARB")] + _glUniform1ivARB_ptr _Uniform1ivARB_ptr { get; } + + delegate void _glUniform1ivARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform1ivARB")] + _glUniform1ivARB_intptr _Uniform1ivARB_intptr { get; } + + // --- + + delegate void _glUniform1ui(int location, uint v0); + [GlEntryPoint("glUniform1ui")] + _glUniform1ui _Uniform1ui { get; } + + // --- + + delegate void _glUniform1ui64ARB(int location, UInt64 x); + [GlEntryPoint("glUniform1ui64ARB")] + _glUniform1ui64ARB _Uniform1ui64ARB { get; } + + // --- + + delegate void _glUniform1ui64NV(int location, UInt64 x); + [GlEntryPoint("glUniform1ui64NV")] + _glUniform1ui64NV _Uniform1ui64NV { get; } + + // --- + + delegate void _glUniform1ui64vARB(int location, int count, UInt64[] value); + [GlEntryPoint("glUniform1ui64vARB")] + _glUniform1ui64vARB _Uniform1ui64vARB { get; } + + delegate void _glUniform1ui64vARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform1ui64vARB")] + _glUniform1ui64vARB_ptr _Uniform1ui64vARB_ptr { get; } + + delegate void _glUniform1ui64vARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform1ui64vARB")] + _glUniform1ui64vARB_intptr _Uniform1ui64vARB_intptr { get; } + + // --- + + delegate void _glUniform1ui64vNV(int location, int count, UInt64[] value); + [GlEntryPoint("glUniform1ui64vNV")] + _glUniform1ui64vNV _Uniform1ui64vNV { get; } + + delegate void _glUniform1ui64vNV_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform1ui64vNV")] + _glUniform1ui64vNV_ptr _Uniform1ui64vNV_ptr { get; } + + delegate void _glUniform1ui64vNV_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform1ui64vNV")] + _glUniform1ui64vNV_intptr _Uniform1ui64vNV_intptr { get; } + + // --- + + delegate void _glUniform1uiEXT(int location, uint v0); + [GlEntryPoint("glUniform1uiEXT")] + _glUniform1uiEXT _Uniform1uiEXT { get; } + + // --- + + delegate void _glUniform1uiv(int location, int count, uint[] value); + [GlEntryPoint("glUniform1uiv")] + _glUniform1uiv _Uniform1uiv { get; } + + delegate void _glUniform1uiv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform1uiv")] + _glUniform1uiv_ptr _Uniform1uiv_ptr { get; } + + delegate void _glUniform1uiv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform1uiv")] + _glUniform1uiv_intptr _Uniform1uiv_intptr { get; } + + // --- + + delegate void _glUniform1uivEXT(int location, int count, uint[] value); + [GlEntryPoint("glUniform1uivEXT")] + _glUniform1uivEXT _Uniform1uivEXT { get; } + + delegate void _glUniform1uivEXT_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform1uivEXT")] + _glUniform1uivEXT_ptr _Uniform1uivEXT_ptr { get; } + + delegate void _glUniform1uivEXT_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform1uivEXT")] + _glUniform1uivEXT_intptr _Uniform1uivEXT_intptr { get; } + + // --- + + delegate void _glUniform2d(int location, double x, double y); + [GlEntryPoint("glUniform2d")] + _glUniform2d _Uniform2d { get; } + + // --- + + delegate void _glUniform2dv(int location, int count, double[] value); + [GlEntryPoint("glUniform2dv")] + _glUniform2dv _Uniform2dv { get; } + + delegate void _glUniform2dv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform2dv")] + _glUniform2dv_ptr _Uniform2dv_ptr { get; } + + delegate void _glUniform2dv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform2dv")] + _glUniform2dv_intptr _Uniform2dv_intptr { get; } + + // --- + + delegate void _glUniform2f(int location, float v0, float v1); + [GlEntryPoint("glUniform2f")] + _glUniform2f _Uniform2f { get; } + + // --- + + delegate void _glUniform2fARB(int location, float v0, float v1); + [GlEntryPoint("glUniform2fARB")] + _glUniform2fARB _Uniform2fARB { get; } + + // --- + + delegate void _glUniform2fv(int location, int count, float[] value); + [GlEntryPoint("glUniform2fv")] + _glUniform2fv _Uniform2fv { get; } + + delegate void _glUniform2fv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform2fv")] + _glUniform2fv_ptr _Uniform2fv_ptr { get; } + + delegate void _glUniform2fv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform2fv")] + _glUniform2fv_intptr _Uniform2fv_intptr { get; } + + // --- + + delegate void _glUniform2fvARB(int location, int count, float[] value); + [GlEntryPoint("glUniform2fvARB")] + _glUniform2fvARB _Uniform2fvARB { get; } + + delegate void _glUniform2fvARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform2fvARB")] + _glUniform2fvARB_ptr _Uniform2fvARB_ptr { get; } + + delegate void _glUniform2fvARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform2fvARB")] + _glUniform2fvARB_intptr _Uniform2fvARB_intptr { get; } + + // --- + + delegate void _glUniform2i(int location, int v0, int v1); + [GlEntryPoint("glUniform2i")] + _glUniform2i _Uniform2i { get; } + + // --- + + delegate void _glUniform2i64ARB(int location, Int64 x, Int64 y); + [GlEntryPoint("glUniform2i64ARB")] + _glUniform2i64ARB _Uniform2i64ARB { get; } + + // --- + + delegate void _glUniform2i64NV(int location, Int64 x, Int64 y); + [GlEntryPoint("glUniform2i64NV")] + _glUniform2i64NV _Uniform2i64NV { get; } + + // --- + + delegate void _glUniform2i64vARB(int location, int count, Int64[] value); + [GlEntryPoint("glUniform2i64vARB")] + _glUniform2i64vARB _Uniform2i64vARB { get; } + + delegate void _glUniform2i64vARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform2i64vARB")] + _glUniform2i64vARB_ptr _Uniform2i64vARB_ptr { get; } + + delegate void _glUniform2i64vARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform2i64vARB")] + _glUniform2i64vARB_intptr _Uniform2i64vARB_intptr { get; } + + // --- + + delegate void _glUniform2i64vNV(int location, int count, Int64[] value); + [GlEntryPoint("glUniform2i64vNV")] + _glUniform2i64vNV _Uniform2i64vNV { get; } + + delegate void _glUniform2i64vNV_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform2i64vNV")] + _glUniform2i64vNV_ptr _Uniform2i64vNV_ptr { get; } + + delegate void _glUniform2i64vNV_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform2i64vNV")] + _glUniform2i64vNV_intptr _Uniform2i64vNV_intptr { get; } + + // --- + + delegate void _glUniform2iARB(int location, int v0, int v1); + [GlEntryPoint("glUniform2iARB")] + _glUniform2iARB _Uniform2iARB { get; } + + // --- + + delegate void _glUniform2iv(int location, int count, int[] value); + [GlEntryPoint("glUniform2iv")] + _glUniform2iv _Uniform2iv { get; } + + delegate void _glUniform2iv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform2iv")] + _glUniform2iv_ptr _Uniform2iv_ptr { get; } + + delegate void _glUniform2iv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform2iv")] + _glUniform2iv_intptr _Uniform2iv_intptr { get; } + + // --- + + delegate void _glUniform2ivARB(int location, int count, int[] value); + [GlEntryPoint("glUniform2ivARB")] + _glUniform2ivARB _Uniform2ivARB { get; } + + delegate void _glUniform2ivARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform2ivARB")] + _glUniform2ivARB_ptr _Uniform2ivARB_ptr { get; } + + delegate void _glUniform2ivARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform2ivARB")] + _glUniform2ivARB_intptr _Uniform2ivARB_intptr { get; } + + // --- + + delegate void _glUniform2ui(int location, uint v0, uint v1); + [GlEntryPoint("glUniform2ui")] + _glUniform2ui _Uniform2ui { get; } + + // --- + + delegate void _glUniform2ui64ARB(int location, UInt64 x, UInt64 y); + [GlEntryPoint("glUniform2ui64ARB")] + _glUniform2ui64ARB _Uniform2ui64ARB { get; } + + // --- + + delegate void _glUniform2ui64NV(int location, UInt64 x, UInt64 y); + [GlEntryPoint("glUniform2ui64NV")] + _glUniform2ui64NV _Uniform2ui64NV { get; } + + // --- + + delegate void _glUniform2ui64vARB(int location, int count, UInt64[] value); + [GlEntryPoint("glUniform2ui64vARB")] + _glUniform2ui64vARB _Uniform2ui64vARB { get; } + + delegate void _glUniform2ui64vARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform2ui64vARB")] + _glUniform2ui64vARB_ptr _Uniform2ui64vARB_ptr { get; } + + delegate void _glUniform2ui64vARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform2ui64vARB")] + _glUniform2ui64vARB_intptr _Uniform2ui64vARB_intptr { get; } + + // --- + + delegate void _glUniform2ui64vNV(int location, int count, UInt64[] value); + [GlEntryPoint("glUniform2ui64vNV")] + _glUniform2ui64vNV _Uniform2ui64vNV { get; } + + delegate void _glUniform2ui64vNV_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform2ui64vNV")] + _glUniform2ui64vNV_ptr _Uniform2ui64vNV_ptr { get; } + + delegate void _glUniform2ui64vNV_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform2ui64vNV")] + _glUniform2ui64vNV_intptr _Uniform2ui64vNV_intptr { get; } + + // --- + + delegate void _glUniform2uiEXT(int location, uint v0, uint v1); + [GlEntryPoint("glUniform2uiEXT")] + _glUniform2uiEXT _Uniform2uiEXT { get; } + + // --- + + delegate void _glUniform2uiv(int location, int count, uint[] value); + [GlEntryPoint("glUniform2uiv")] + _glUniform2uiv _Uniform2uiv { get; } + + delegate void _glUniform2uiv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform2uiv")] + _glUniform2uiv_ptr _Uniform2uiv_ptr { get; } + + delegate void _glUniform2uiv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform2uiv")] + _glUniform2uiv_intptr _Uniform2uiv_intptr { get; } + + // --- + + delegate void _glUniform2uivEXT(int location, int count, uint[] value); + [GlEntryPoint("glUniform2uivEXT")] + _glUniform2uivEXT _Uniform2uivEXT { get; } + + delegate void _glUniform2uivEXT_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform2uivEXT")] + _glUniform2uivEXT_ptr _Uniform2uivEXT_ptr { get; } + + delegate void _glUniform2uivEXT_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform2uivEXT")] + _glUniform2uivEXT_intptr _Uniform2uivEXT_intptr { get; } + + // --- + + delegate void _glUniform3d(int location, double x, double y, double z); + [GlEntryPoint("glUniform3d")] + _glUniform3d _Uniform3d { get; } + + // --- + + delegate void _glUniform3dv(int location, int count, double[] value); + [GlEntryPoint("glUniform3dv")] + _glUniform3dv _Uniform3dv { get; } + + delegate void _glUniform3dv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform3dv")] + _glUniform3dv_ptr _Uniform3dv_ptr { get; } + + delegate void _glUniform3dv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform3dv")] + _glUniform3dv_intptr _Uniform3dv_intptr { get; } + + // --- + + delegate void _glUniform3f(int location, float v0, float v1, float v2); + [GlEntryPoint("glUniform3f")] + _glUniform3f _Uniform3f { get; } + + // --- + + delegate void _glUniform3fARB(int location, float v0, float v1, float v2); + [GlEntryPoint("glUniform3fARB")] + _glUniform3fARB _Uniform3fARB { get; } + + // --- + + delegate void _glUniform3fv(int location, int count, float[] value); + [GlEntryPoint("glUniform3fv")] + _glUniform3fv _Uniform3fv { get; } + + delegate void _glUniform3fv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform3fv")] + _glUniform3fv_ptr _Uniform3fv_ptr { get; } + + delegate void _glUniform3fv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform3fv")] + _glUniform3fv_intptr _Uniform3fv_intptr { get; } + + // --- + + delegate void _glUniform3fvARB(int location, int count, float[] value); + [GlEntryPoint("glUniform3fvARB")] + _glUniform3fvARB _Uniform3fvARB { get; } + + delegate void _glUniform3fvARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform3fvARB")] + _glUniform3fvARB_ptr _Uniform3fvARB_ptr { get; } + + delegate void _glUniform3fvARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform3fvARB")] + _glUniform3fvARB_intptr _Uniform3fvARB_intptr { get; } + + // --- + + delegate void _glUniform3i(int location, int v0, int v1, int v2); + [GlEntryPoint("glUniform3i")] + _glUniform3i _Uniform3i { get; } + + // --- + + delegate void _glUniform3i64ARB(int location, Int64 x, Int64 y, Int64 z); + [GlEntryPoint("glUniform3i64ARB")] + _glUniform3i64ARB _Uniform3i64ARB { get; } + + // --- + + delegate void _glUniform3i64NV(int location, Int64 x, Int64 y, Int64 z); + [GlEntryPoint("glUniform3i64NV")] + _glUniform3i64NV _Uniform3i64NV { get; } + + // --- + + delegate void _glUniform3i64vARB(int location, int count, Int64[] value); + [GlEntryPoint("glUniform3i64vARB")] + _glUniform3i64vARB _Uniform3i64vARB { get; } + + delegate void _glUniform3i64vARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform3i64vARB")] + _glUniform3i64vARB_ptr _Uniform3i64vARB_ptr { get; } + + delegate void _glUniform3i64vARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform3i64vARB")] + _glUniform3i64vARB_intptr _Uniform3i64vARB_intptr { get; } + + // --- + + delegate void _glUniform3i64vNV(int location, int count, Int64[] value); + [GlEntryPoint("glUniform3i64vNV")] + _glUniform3i64vNV _Uniform3i64vNV { get; } + + delegate void _glUniform3i64vNV_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform3i64vNV")] + _glUniform3i64vNV_ptr _Uniform3i64vNV_ptr { get; } + + delegate void _glUniform3i64vNV_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform3i64vNV")] + _glUniform3i64vNV_intptr _Uniform3i64vNV_intptr { get; } + + // --- + + delegate void _glUniform3iARB(int location, int v0, int v1, int v2); + [GlEntryPoint("glUniform3iARB")] + _glUniform3iARB _Uniform3iARB { get; } + + // --- + + delegate void _glUniform3iv(int location, int count, int[] value); + [GlEntryPoint("glUniform3iv")] + _glUniform3iv _Uniform3iv { get; } + + delegate void _glUniform3iv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform3iv")] + _glUniform3iv_ptr _Uniform3iv_ptr { get; } + + delegate void _glUniform3iv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform3iv")] + _glUniform3iv_intptr _Uniform3iv_intptr { get; } + + // --- + + delegate void _glUniform3ivARB(int location, int count, int[] value); + [GlEntryPoint("glUniform3ivARB")] + _glUniform3ivARB _Uniform3ivARB { get; } + + delegate void _glUniform3ivARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform3ivARB")] + _glUniform3ivARB_ptr _Uniform3ivARB_ptr { get; } + + delegate void _glUniform3ivARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform3ivARB")] + _glUniform3ivARB_intptr _Uniform3ivARB_intptr { get; } + + // --- + + delegate void _glUniform3ui(int location, uint v0, uint v1, uint v2); + [GlEntryPoint("glUniform3ui")] + _glUniform3ui _Uniform3ui { get; } + + // --- + + delegate void _glUniform3ui64ARB(int location, UInt64 x, UInt64 y, UInt64 z); + [GlEntryPoint("glUniform3ui64ARB")] + _glUniform3ui64ARB _Uniform3ui64ARB { get; } + + // --- + + delegate void _glUniform3ui64NV(int location, UInt64 x, UInt64 y, UInt64 z); + [GlEntryPoint("glUniform3ui64NV")] + _glUniform3ui64NV _Uniform3ui64NV { get; } + + // --- + + delegate void _glUniform3ui64vARB(int location, int count, UInt64[] value); + [GlEntryPoint("glUniform3ui64vARB")] + _glUniform3ui64vARB _Uniform3ui64vARB { get; } + + delegate void _glUniform3ui64vARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform3ui64vARB")] + _glUniform3ui64vARB_ptr _Uniform3ui64vARB_ptr { get; } + + delegate void _glUniform3ui64vARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform3ui64vARB")] + _glUniform3ui64vARB_intptr _Uniform3ui64vARB_intptr { get; } + + // --- + + delegate void _glUniform3ui64vNV(int location, int count, UInt64[] value); + [GlEntryPoint("glUniform3ui64vNV")] + _glUniform3ui64vNV _Uniform3ui64vNV { get; } + + delegate void _glUniform3ui64vNV_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform3ui64vNV")] + _glUniform3ui64vNV_ptr _Uniform3ui64vNV_ptr { get; } + + delegate void _glUniform3ui64vNV_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform3ui64vNV")] + _glUniform3ui64vNV_intptr _Uniform3ui64vNV_intptr { get; } + + // --- + + delegate void _glUniform3uiEXT(int location, uint v0, uint v1, uint v2); + [GlEntryPoint("glUniform3uiEXT")] + _glUniform3uiEXT _Uniform3uiEXT { get; } + + // --- + + delegate void _glUniform3uiv(int location, int count, uint[] value); + [GlEntryPoint("glUniform3uiv")] + _glUniform3uiv _Uniform3uiv { get; } + + delegate void _glUniform3uiv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform3uiv")] + _glUniform3uiv_ptr _Uniform3uiv_ptr { get; } + + delegate void _glUniform3uiv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform3uiv")] + _glUniform3uiv_intptr _Uniform3uiv_intptr { get; } + + // --- + + delegate void _glUniform3uivEXT(int location, int count, uint[] value); + [GlEntryPoint("glUniform3uivEXT")] + _glUniform3uivEXT _Uniform3uivEXT { get; } + + delegate void _glUniform3uivEXT_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform3uivEXT")] + _glUniform3uivEXT_ptr _Uniform3uivEXT_ptr { get; } + + delegate void _glUniform3uivEXT_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform3uivEXT")] + _glUniform3uivEXT_intptr _Uniform3uivEXT_intptr { get; } + + // --- + + delegate void _glUniform4d(int location, double x, double y, double z, double w); + [GlEntryPoint("glUniform4d")] + _glUniform4d _Uniform4d { get; } + + // --- + + delegate void _glUniform4dv(int location, int count, double[] value); + [GlEntryPoint("glUniform4dv")] + _glUniform4dv _Uniform4dv { get; } + + delegate void _glUniform4dv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform4dv")] + _glUniform4dv_ptr _Uniform4dv_ptr { get; } + + delegate void _glUniform4dv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform4dv")] + _glUniform4dv_intptr _Uniform4dv_intptr { get; } + + // --- + + delegate void _glUniform4f(int location, float v0, float v1, float v2, float v3); + [GlEntryPoint("glUniform4f")] + _glUniform4f _Uniform4f { get; } + + // --- + + delegate void _glUniform4fARB(int location, float v0, float v1, float v2, float v3); + [GlEntryPoint("glUniform4fARB")] + _glUniform4fARB _Uniform4fARB { get; } + + // --- + + delegate void _glUniform4fv(int location, int count, float[] value); + [GlEntryPoint("glUniform4fv")] + _glUniform4fv _Uniform4fv { get; } + + delegate void _glUniform4fv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform4fv")] + _glUniform4fv_ptr _Uniform4fv_ptr { get; } + + delegate void _glUniform4fv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform4fv")] + _glUniform4fv_intptr _Uniform4fv_intptr { get; } + + // --- + + delegate void _glUniform4fvARB(int location, int count, float[] value); + [GlEntryPoint("glUniform4fvARB")] + _glUniform4fvARB _Uniform4fvARB { get; } + + delegate void _glUniform4fvARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform4fvARB")] + _glUniform4fvARB_ptr _Uniform4fvARB_ptr { get; } + + delegate void _glUniform4fvARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform4fvARB")] + _glUniform4fvARB_intptr _Uniform4fvARB_intptr { get; } + + // --- + + delegate void _glUniform4i(int location, int v0, int v1, int v2, int v3); + [GlEntryPoint("glUniform4i")] + _glUniform4i _Uniform4i { get; } + + // --- + + delegate void _glUniform4i64ARB(int location, Int64 x, Int64 y, Int64 z, Int64 w); + [GlEntryPoint("glUniform4i64ARB")] + _glUniform4i64ARB _Uniform4i64ARB { get; } + + // --- + + delegate void _glUniform4i64NV(int location, Int64 x, Int64 y, Int64 z, Int64 w); + [GlEntryPoint("glUniform4i64NV")] + _glUniform4i64NV _Uniform4i64NV { get; } + + // --- + + delegate void _glUniform4i64vARB(int location, int count, Int64[] value); + [GlEntryPoint("glUniform4i64vARB")] + _glUniform4i64vARB _Uniform4i64vARB { get; } + + delegate void _glUniform4i64vARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform4i64vARB")] + _glUniform4i64vARB_ptr _Uniform4i64vARB_ptr { get; } + + delegate void _glUniform4i64vARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform4i64vARB")] + _glUniform4i64vARB_intptr _Uniform4i64vARB_intptr { get; } + + // --- + + delegate void _glUniform4i64vNV(int location, int count, Int64[] value); + [GlEntryPoint("glUniform4i64vNV")] + _glUniform4i64vNV _Uniform4i64vNV { get; } + + delegate void _glUniform4i64vNV_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform4i64vNV")] + _glUniform4i64vNV_ptr _Uniform4i64vNV_ptr { get; } + + delegate void _glUniform4i64vNV_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform4i64vNV")] + _glUniform4i64vNV_intptr _Uniform4i64vNV_intptr { get; } + + // --- + + delegate void _glUniform4iARB(int location, int v0, int v1, int v2, int v3); + [GlEntryPoint("glUniform4iARB")] + _glUniform4iARB _Uniform4iARB { get; } + + // --- + + delegate void _glUniform4iv(int location, int count, int[] value); + [GlEntryPoint("glUniform4iv")] + _glUniform4iv _Uniform4iv { get; } + + delegate void _glUniform4iv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform4iv")] + _glUniform4iv_ptr _Uniform4iv_ptr { get; } + + delegate void _glUniform4iv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform4iv")] + _glUniform4iv_intptr _Uniform4iv_intptr { get; } + + // --- + + delegate void _glUniform4ivARB(int location, int count, int[] value); + [GlEntryPoint("glUniform4ivARB")] + _glUniform4ivARB _Uniform4ivARB { get; } + + delegate void _glUniform4ivARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform4ivARB")] + _glUniform4ivARB_ptr _Uniform4ivARB_ptr { get; } + + delegate void _glUniform4ivARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform4ivARB")] + _glUniform4ivARB_intptr _Uniform4ivARB_intptr { get; } + + // --- + + delegate void _glUniform4ui(int location, uint v0, uint v1, uint v2, uint v3); + [GlEntryPoint("glUniform4ui")] + _glUniform4ui _Uniform4ui { get; } + + // --- + + delegate void _glUniform4ui64ARB(int location, UInt64 x, UInt64 y, UInt64 z, UInt64 w); + [GlEntryPoint("glUniform4ui64ARB")] + _glUniform4ui64ARB _Uniform4ui64ARB { get; } + + // --- + + delegate void _glUniform4ui64NV(int location, UInt64 x, UInt64 y, UInt64 z, UInt64 w); + [GlEntryPoint("glUniform4ui64NV")] + _glUniform4ui64NV _Uniform4ui64NV { get; } + + // --- + + delegate void _glUniform4ui64vARB(int location, int count, UInt64[] value); + [GlEntryPoint("glUniform4ui64vARB")] + _glUniform4ui64vARB _Uniform4ui64vARB { get; } + + delegate void _glUniform4ui64vARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform4ui64vARB")] + _glUniform4ui64vARB_ptr _Uniform4ui64vARB_ptr { get; } + + delegate void _glUniform4ui64vARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform4ui64vARB")] + _glUniform4ui64vARB_intptr _Uniform4ui64vARB_intptr { get; } + + // --- + + delegate void _glUniform4ui64vNV(int location, int count, UInt64[] value); + [GlEntryPoint("glUniform4ui64vNV")] + _glUniform4ui64vNV _Uniform4ui64vNV { get; } + + delegate void _glUniform4ui64vNV_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform4ui64vNV")] + _glUniform4ui64vNV_ptr _Uniform4ui64vNV_ptr { get; } + + delegate void _glUniform4ui64vNV_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform4ui64vNV")] + _glUniform4ui64vNV_intptr _Uniform4ui64vNV_intptr { get; } + + // --- + + delegate void _glUniform4uiEXT(int location, uint v0, uint v1, uint v2, uint v3); + [GlEntryPoint("glUniform4uiEXT")] + _glUniform4uiEXT _Uniform4uiEXT { get; } + + // --- + + delegate void _glUniform4uiv(int location, int count, uint[] value); + [GlEntryPoint("glUniform4uiv")] + _glUniform4uiv _Uniform4uiv { get; } + + delegate void _glUniform4uiv_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform4uiv")] + _glUniform4uiv_ptr _Uniform4uiv_ptr { get; } + + delegate void _glUniform4uiv_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform4uiv")] + _glUniform4uiv_intptr _Uniform4uiv_intptr { get; } + + // --- + + delegate void _glUniform4uivEXT(int location, int count, uint[] value); + [GlEntryPoint("glUniform4uivEXT")] + _glUniform4uivEXT _Uniform4uivEXT { get; } + + delegate void _glUniform4uivEXT_ptr(int location, int count, void* value); + [GlEntryPoint("glUniform4uivEXT")] + _glUniform4uivEXT_ptr _Uniform4uivEXT_ptr { get; } + + delegate void _glUniform4uivEXT_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniform4uivEXT")] + _glUniform4uivEXT_intptr _Uniform4uivEXT_intptr { get; } + + // --- + + delegate void _glUniformBlockBinding(uint program, uint uniformBlockIndex, uint uniformBlockBinding); + [GlEntryPoint("glUniformBlockBinding")] + _glUniformBlockBinding _UniformBlockBinding { get; } + + // --- + + delegate void _glUniformBufferEXT(uint program, int location, uint buffer); + [GlEntryPoint("glUniformBufferEXT")] + _glUniformBufferEXT _UniformBufferEXT { get; } + + // --- + + delegate void _glUniformHandleui64ARB(int location, UInt64 value); + [GlEntryPoint("glUniformHandleui64ARB")] + _glUniformHandleui64ARB _UniformHandleui64ARB { get; } + + // --- + + delegate void _glUniformHandleui64IMG(int location, UInt64 value); + [GlEntryPoint("glUniformHandleui64IMG")] + _glUniformHandleui64IMG _UniformHandleui64IMG { get; } + + // --- + + delegate void _glUniformHandleui64NV(int location, UInt64 value); + [GlEntryPoint("glUniformHandleui64NV")] + _glUniformHandleui64NV _UniformHandleui64NV { get; } + + // --- + + delegate void _glUniformHandleui64vARB(int location, int count, UInt64[] value); + [GlEntryPoint("glUniformHandleui64vARB")] + _glUniformHandleui64vARB _UniformHandleui64vARB { get; } + + delegate void _glUniformHandleui64vARB_ptr(int location, int count, void* value); + [GlEntryPoint("glUniformHandleui64vARB")] + _glUniformHandleui64vARB_ptr _UniformHandleui64vARB_ptr { get; } + + delegate void _glUniformHandleui64vARB_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniformHandleui64vARB")] + _glUniformHandleui64vARB_intptr _UniformHandleui64vARB_intptr { get; } + + // --- + + delegate void _glUniformHandleui64vIMG(int location, int count, UInt64[] value); + [GlEntryPoint("glUniformHandleui64vIMG")] + _glUniformHandleui64vIMG _UniformHandleui64vIMG { get; } + + delegate void _glUniformHandleui64vIMG_ptr(int location, int count, void* value); + [GlEntryPoint("glUniformHandleui64vIMG")] + _glUniformHandleui64vIMG_ptr _UniformHandleui64vIMG_ptr { get; } + + delegate void _glUniformHandleui64vIMG_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniformHandleui64vIMG")] + _glUniformHandleui64vIMG_intptr _UniformHandleui64vIMG_intptr { get; } + + // --- + + delegate void _glUniformHandleui64vNV(int location, int count, UInt64[] value); + [GlEntryPoint("glUniformHandleui64vNV")] + _glUniformHandleui64vNV _UniformHandleui64vNV { get; } + + delegate void _glUniformHandleui64vNV_ptr(int location, int count, void* value); + [GlEntryPoint("glUniformHandleui64vNV")] + _glUniformHandleui64vNV_ptr _UniformHandleui64vNV_ptr { get; } + + delegate void _glUniformHandleui64vNV_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniformHandleui64vNV")] + _glUniformHandleui64vNV_intptr _UniformHandleui64vNV_intptr { get; } + + // --- + + delegate void _glUniformMatrix2dv(int location, int count, bool transpose, double[] value); + [GlEntryPoint("glUniformMatrix2dv")] + _glUniformMatrix2dv _UniformMatrix2dv { get; } + + delegate void _glUniformMatrix2dv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix2dv")] + _glUniformMatrix2dv_ptr _UniformMatrix2dv_ptr { get; } + + delegate void _glUniformMatrix2dv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix2dv")] + _glUniformMatrix2dv_intptr _UniformMatrix2dv_intptr { get; } + + // --- + + delegate void _glUniformMatrix2fv(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix2fv")] + _glUniformMatrix2fv _UniformMatrix2fv { get; } + + delegate void _glUniformMatrix2fv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix2fv")] + _glUniformMatrix2fv_ptr _UniformMatrix2fv_ptr { get; } + + delegate void _glUniformMatrix2fv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix2fv")] + _glUniformMatrix2fv_intptr _UniformMatrix2fv_intptr { get; } + + // --- + + delegate void _glUniformMatrix2fvARB(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix2fvARB")] + _glUniformMatrix2fvARB _UniformMatrix2fvARB { get; } + + delegate void _glUniformMatrix2fvARB_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix2fvARB")] + _glUniformMatrix2fvARB_ptr _UniformMatrix2fvARB_ptr { get; } + + delegate void _glUniformMatrix2fvARB_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix2fvARB")] + _glUniformMatrix2fvARB_intptr _UniformMatrix2fvARB_intptr { get; } + + // --- + + delegate void _glUniformMatrix2x3dv(int location, int count, bool transpose, double[] value); + [GlEntryPoint("glUniformMatrix2x3dv")] + _glUniformMatrix2x3dv _UniformMatrix2x3dv { get; } + + delegate void _glUniformMatrix2x3dv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix2x3dv")] + _glUniformMatrix2x3dv_ptr _UniformMatrix2x3dv_ptr { get; } + + delegate void _glUniformMatrix2x3dv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix2x3dv")] + _glUniformMatrix2x3dv_intptr _UniformMatrix2x3dv_intptr { get; } + + // --- + + delegate void _glUniformMatrix2x3fv(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix2x3fv")] + _glUniformMatrix2x3fv _UniformMatrix2x3fv { get; } + + delegate void _glUniformMatrix2x3fv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix2x3fv")] + _glUniformMatrix2x3fv_ptr _UniformMatrix2x3fv_ptr { get; } + + delegate void _glUniformMatrix2x3fv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix2x3fv")] + _glUniformMatrix2x3fv_intptr _UniformMatrix2x3fv_intptr { get; } + + // --- + + delegate void _glUniformMatrix2x3fvNV(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix2x3fvNV")] + _glUniformMatrix2x3fvNV _UniformMatrix2x3fvNV { get; } + + delegate void _glUniformMatrix2x3fvNV_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix2x3fvNV")] + _glUniformMatrix2x3fvNV_ptr _UniformMatrix2x3fvNV_ptr { get; } + + delegate void _glUniformMatrix2x3fvNV_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix2x3fvNV")] + _glUniformMatrix2x3fvNV_intptr _UniformMatrix2x3fvNV_intptr { get; } + + // --- + + delegate void _glUniformMatrix2x4dv(int location, int count, bool transpose, double[] value); + [GlEntryPoint("glUniformMatrix2x4dv")] + _glUniformMatrix2x4dv _UniformMatrix2x4dv { get; } + + delegate void _glUniformMatrix2x4dv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix2x4dv")] + _glUniformMatrix2x4dv_ptr _UniformMatrix2x4dv_ptr { get; } + + delegate void _glUniformMatrix2x4dv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix2x4dv")] + _glUniformMatrix2x4dv_intptr _UniformMatrix2x4dv_intptr { get; } + + // --- + + delegate void _glUniformMatrix2x4fv(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix2x4fv")] + _glUniformMatrix2x4fv _UniformMatrix2x4fv { get; } + + delegate void _glUniformMatrix2x4fv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix2x4fv")] + _glUniformMatrix2x4fv_ptr _UniformMatrix2x4fv_ptr { get; } + + delegate void _glUniformMatrix2x4fv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix2x4fv")] + _glUniformMatrix2x4fv_intptr _UniformMatrix2x4fv_intptr { get; } + + // --- + + delegate void _glUniformMatrix2x4fvNV(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix2x4fvNV")] + _glUniformMatrix2x4fvNV _UniformMatrix2x4fvNV { get; } + + delegate void _glUniformMatrix2x4fvNV_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix2x4fvNV")] + _glUniformMatrix2x4fvNV_ptr _UniformMatrix2x4fvNV_ptr { get; } + + delegate void _glUniformMatrix2x4fvNV_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix2x4fvNV")] + _glUniformMatrix2x4fvNV_intptr _UniformMatrix2x4fvNV_intptr { get; } + + // --- + + delegate void _glUniformMatrix3dv(int location, int count, bool transpose, double[] value); + [GlEntryPoint("glUniformMatrix3dv")] + _glUniformMatrix3dv _UniformMatrix3dv { get; } + + delegate void _glUniformMatrix3dv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix3dv")] + _glUniformMatrix3dv_ptr _UniformMatrix3dv_ptr { get; } + + delegate void _glUniformMatrix3dv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix3dv")] + _glUniformMatrix3dv_intptr _UniformMatrix3dv_intptr { get; } + + // --- + + delegate void _glUniformMatrix3fv(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix3fv")] + _glUniformMatrix3fv _UniformMatrix3fv { get; } + + delegate void _glUniformMatrix3fv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix3fv")] + _glUniformMatrix3fv_ptr _UniformMatrix3fv_ptr { get; } + + delegate void _glUniformMatrix3fv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix3fv")] + _glUniformMatrix3fv_intptr _UniformMatrix3fv_intptr { get; } + + // --- + + delegate void _glUniformMatrix3fvARB(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix3fvARB")] + _glUniformMatrix3fvARB _UniformMatrix3fvARB { get; } + + delegate void _glUniformMatrix3fvARB_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix3fvARB")] + _glUniformMatrix3fvARB_ptr _UniformMatrix3fvARB_ptr { get; } + + delegate void _glUniformMatrix3fvARB_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix3fvARB")] + _glUniformMatrix3fvARB_intptr _UniformMatrix3fvARB_intptr { get; } + + // --- + + delegate void _glUniformMatrix3x2dv(int location, int count, bool transpose, double[] value); + [GlEntryPoint("glUniformMatrix3x2dv")] + _glUniformMatrix3x2dv _UniformMatrix3x2dv { get; } + + delegate void _glUniformMatrix3x2dv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix3x2dv")] + _glUniformMatrix3x2dv_ptr _UniformMatrix3x2dv_ptr { get; } + + delegate void _glUniformMatrix3x2dv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix3x2dv")] + _glUniformMatrix3x2dv_intptr _UniformMatrix3x2dv_intptr { get; } + + // --- + + delegate void _glUniformMatrix3x2fv(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix3x2fv")] + _glUniformMatrix3x2fv _UniformMatrix3x2fv { get; } + + delegate void _glUniformMatrix3x2fv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix3x2fv")] + _glUniformMatrix3x2fv_ptr _UniformMatrix3x2fv_ptr { get; } + + delegate void _glUniformMatrix3x2fv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix3x2fv")] + _glUniformMatrix3x2fv_intptr _UniformMatrix3x2fv_intptr { get; } + + // --- + + delegate void _glUniformMatrix3x2fvNV(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix3x2fvNV")] + _glUniformMatrix3x2fvNV _UniformMatrix3x2fvNV { get; } + + delegate void _glUniformMatrix3x2fvNV_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix3x2fvNV")] + _glUniformMatrix3x2fvNV_ptr _UniformMatrix3x2fvNV_ptr { get; } + + delegate void _glUniformMatrix3x2fvNV_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix3x2fvNV")] + _glUniformMatrix3x2fvNV_intptr _UniformMatrix3x2fvNV_intptr { get; } + + // --- + + delegate void _glUniformMatrix3x4dv(int location, int count, bool transpose, double[] value); + [GlEntryPoint("glUniformMatrix3x4dv")] + _glUniformMatrix3x4dv _UniformMatrix3x4dv { get; } + + delegate void _glUniformMatrix3x4dv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix3x4dv")] + _glUniformMatrix3x4dv_ptr _UniformMatrix3x4dv_ptr { get; } + + delegate void _glUniformMatrix3x4dv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix3x4dv")] + _glUniformMatrix3x4dv_intptr _UniformMatrix3x4dv_intptr { get; } + + // --- + + delegate void _glUniformMatrix3x4fv(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix3x4fv")] + _glUniformMatrix3x4fv _UniformMatrix3x4fv { get; } + + delegate void _glUniformMatrix3x4fv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix3x4fv")] + _glUniformMatrix3x4fv_ptr _UniformMatrix3x4fv_ptr { get; } + + delegate void _glUniformMatrix3x4fv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix3x4fv")] + _glUniformMatrix3x4fv_intptr _UniformMatrix3x4fv_intptr { get; } + + // --- + + delegate void _glUniformMatrix3x4fvNV(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix3x4fvNV")] + _glUniformMatrix3x4fvNV _UniformMatrix3x4fvNV { get; } + + delegate void _glUniformMatrix3x4fvNV_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix3x4fvNV")] + _glUniformMatrix3x4fvNV_ptr _UniformMatrix3x4fvNV_ptr { get; } + + delegate void _glUniformMatrix3x4fvNV_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix3x4fvNV")] + _glUniformMatrix3x4fvNV_intptr _UniformMatrix3x4fvNV_intptr { get; } + + // --- + + delegate void _glUniformMatrix4dv(int location, int count, bool transpose, double[] value); + [GlEntryPoint("glUniformMatrix4dv")] + _glUniformMatrix4dv _UniformMatrix4dv { get; } + + delegate void _glUniformMatrix4dv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix4dv")] + _glUniformMatrix4dv_ptr _UniformMatrix4dv_ptr { get; } + + delegate void _glUniformMatrix4dv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix4dv")] + _glUniformMatrix4dv_intptr _UniformMatrix4dv_intptr { get; } + + // --- + + delegate void _glUniformMatrix4fv(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix4fv")] + _glUniformMatrix4fv _UniformMatrix4fv { get; } + + delegate void _glUniformMatrix4fv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix4fv")] + _glUniformMatrix4fv_ptr _UniformMatrix4fv_ptr { get; } + + delegate void _glUniformMatrix4fv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix4fv")] + _glUniformMatrix4fv_intptr _UniformMatrix4fv_intptr { get; } + + // --- + + delegate void _glUniformMatrix4fvARB(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix4fvARB")] + _glUniformMatrix4fvARB _UniformMatrix4fvARB { get; } + + delegate void _glUniformMatrix4fvARB_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix4fvARB")] + _glUniformMatrix4fvARB_ptr _UniformMatrix4fvARB_ptr { get; } + + delegate void _glUniformMatrix4fvARB_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix4fvARB")] + _glUniformMatrix4fvARB_intptr _UniformMatrix4fvARB_intptr { get; } + + // --- + + delegate void _glUniformMatrix4x2dv(int location, int count, bool transpose, double[] value); + [GlEntryPoint("glUniformMatrix4x2dv")] + _glUniformMatrix4x2dv _UniformMatrix4x2dv { get; } + + delegate void _glUniformMatrix4x2dv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix4x2dv")] + _glUniformMatrix4x2dv_ptr _UniformMatrix4x2dv_ptr { get; } + + delegate void _glUniformMatrix4x2dv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix4x2dv")] + _glUniformMatrix4x2dv_intptr _UniformMatrix4x2dv_intptr { get; } + + // --- + + delegate void _glUniformMatrix4x2fv(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix4x2fv")] + _glUniformMatrix4x2fv _UniformMatrix4x2fv { get; } + + delegate void _glUniformMatrix4x2fv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix4x2fv")] + _glUniformMatrix4x2fv_ptr _UniformMatrix4x2fv_ptr { get; } + + delegate void _glUniformMatrix4x2fv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix4x2fv")] + _glUniformMatrix4x2fv_intptr _UniformMatrix4x2fv_intptr { get; } + + // --- + + delegate void _glUniformMatrix4x2fvNV(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix4x2fvNV")] + _glUniformMatrix4x2fvNV _UniformMatrix4x2fvNV { get; } + + delegate void _glUniformMatrix4x2fvNV_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix4x2fvNV")] + _glUniformMatrix4x2fvNV_ptr _UniformMatrix4x2fvNV_ptr { get; } + + delegate void _glUniformMatrix4x2fvNV_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix4x2fvNV")] + _glUniformMatrix4x2fvNV_intptr _UniformMatrix4x2fvNV_intptr { get; } + + // --- + + delegate void _glUniformMatrix4x3dv(int location, int count, bool transpose, double[] value); + [GlEntryPoint("glUniformMatrix4x3dv")] + _glUniformMatrix4x3dv _UniformMatrix4x3dv { get; } + + delegate void _glUniformMatrix4x3dv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix4x3dv")] + _glUniformMatrix4x3dv_ptr _UniformMatrix4x3dv_ptr { get; } + + delegate void _glUniformMatrix4x3dv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix4x3dv")] + _glUniformMatrix4x3dv_intptr _UniformMatrix4x3dv_intptr { get; } + + // --- + + delegate void _glUniformMatrix4x3fv(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix4x3fv")] + _glUniformMatrix4x3fv _UniformMatrix4x3fv { get; } + + delegate void _glUniformMatrix4x3fv_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix4x3fv")] + _glUniformMatrix4x3fv_ptr _UniformMatrix4x3fv_ptr { get; } + + delegate void _glUniformMatrix4x3fv_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix4x3fv")] + _glUniformMatrix4x3fv_intptr _UniformMatrix4x3fv_intptr { get; } + + // --- + + delegate void _glUniformMatrix4x3fvNV(int location, int count, bool transpose, float[] value); + [GlEntryPoint("glUniformMatrix4x3fvNV")] + _glUniformMatrix4x3fvNV _UniformMatrix4x3fvNV { get; } + + delegate void _glUniformMatrix4x3fvNV_ptr(int location, int count, bool transpose, void* value); + [GlEntryPoint("glUniformMatrix4x3fvNV")] + _glUniformMatrix4x3fvNV_ptr _UniformMatrix4x3fvNV_ptr { get; } + + delegate void _glUniformMatrix4x3fvNV_intptr(int location, int count, bool transpose, IntPtr value); + [GlEntryPoint("glUniformMatrix4x3fvNV")] + _glUniformMatrix4x3fvNV_intptr _UniformMatrix4x3fvNV_intptr { get; } + + // --- + + delegate void _glUniformSubroutinesuiv(ShaderType shadertype, int count, uint[] indices); + [GlEntryPoint("glUniformSubroutinesuiv")] + _glUniformSubroutinesuiv _UniformSubroutinesuiv { get; } + + delegate void _glUniformSubroutinesuiv_ptr(ShaderType shadertype, int count, void* indices); + [GlEntryPoint("glUniformSubroutinesuiv")] + _glUniformSubroutinesuiv_ptr _UniformSubroutinesuiv_ptr { get; } + + delegate void _glUniformSubroutinesuiv_intptr(ShaderType shadertype, int count, IntPtr indices); + [GlEntryPoint("glUniformSubroutinesuiv")] + _glUniformSubroutinesuiv_intptr _UniformSubroutinesuiv_intptr { get; } + + // --- + + delegate void _glUniformui64NV(int location, UInt64 value); + [GlEntryPoint("glUniformui64NV")] + _glUniformui64NV _Uniformui64NV { get; } + + // --- + + delegate void _glUniformui64vNV(int location, int count, UInt64[] value); + [GlEntryPoint("glUniformui64vNV")] + _glUniformui64vNV _Uniformui64vNV { get; } + + delegate void _glUniformui64vNV_ptr(int location, int count, void* value); + [GlEntryPoint("glUniformui64vNV")] + _glUniformui64vNV_ptr _Uniformui64vNV_ptr { get; } + + delegate void _glUniformui64vNV_intptr(int location, int count, IntPtr value); + [GlEntryPoint("glUniformui64vNV")] + _glUniformui64vNV_intptr _Uniformui64vNV_intptr { get; } + + // --- + + delegate void _glUnlockArraysEXT(); + [GlEntryPoint("glUnlockArraysEXT")] + _glUnlockArraysEXT _UnlockArraysEXT { get; } + + // --- + + delegate bool _glUnmapBuffer(BufferTargetARB target); + [GlEntryPoint("glUnmapBuffer")] + _glUnmapBuffer _UnmapBuffer { get; } + + // --- + + delegate bool _glUnmapBufferARB(BufferTargetARB target); + [GlEntryPoint("glUnmapBufferARB")] + _glUnmapBufferARB _UnmapBufferARB { get; } + + // --- + + delegate bool _glUnmapBufferOES(int target); + [GlEntryPoint("glUnmapBufferOES")] + _glUnmapBufferOES _UnmapBufferOES { get; } + + // --- + + delegate bool _glUnmapNamedBuffer(uint buffer); + [GlEntryPoint("glUnmapNamedBuffer")] + _glUnmapNamedBuffer _UnmapNamedBuffer { get; } + + // --- + + delegate bool _glUnmapNamedBufferEXT(uint buffer); + [GlEntryPoint("glUnmapNamedBufferEXT")] + _glUnmapNamedBufferEXT _UnmapNamedBufferEXT { get; } + + // --- + + delegate void _glUnmapObjectBufferATI(uint buffer); + [GlEntryPoint("glUnmapObjectBufferATI")] + _glUnmapObjectBufferATI _UnmapObjectBufferATI { get; } + + // --- + + delegate void _glUnmapTexture2DINTEL(uint texture, int level); + [GlEntryPoint("glUnmapTexture2DINTEL")] + _glUnmapTexture2DINTEL _UnmapTexture2DINTEL { get; } + + // --- + + delegate void _glUpdateObjectBufferATI(uint buffer, uint offset, int size, IntPtr pointer, PreserveModeATI preserve); + [GlEntryPoint("glUpdateObjectBufferATI")] + _glUpdateObjectBufferATI _UpdateObjectBufferATI { get; } + + // --- + + delegate void _glUploadGpuMaskNVX(int mask); + [GlEntryPoint("glUploadGpuMaskNVX")] + _glUploadGpuMaskNVX _UploadGpuMaskNVX { get; } + + // --- + + delegate void _glUseProgram(uint program); + [GlEntryPoint("glUseProgram")] + _glUseProgram _UseProgram { get; } + + // --- + + delegate void _glUseProgramObjectARB(int programObj); + [GlEntryPoint("glUseProgramObjectARB")] + _glUseProgramObjectARB _UseProgramObjectARB { get; } + + // --- + + delegate void _glUseProgramStages(uint pipeline, int stages, uint program); + [GlEntryPoint("glUseProgramStages")] + _glUseProgramStages _UseProgramStages { get; } + + // --- + + delegate void _glUseProgramStagesEXT(uint pipeline, int stages, uint program); + [GlEntryPoint("glUseProgramStagesEXT")] + _glUseProgramStagesEXT _UseProgramStagesEXT { get; } + + // --- + + delegate void _glUseShaderProgramEXT(int type, uint program); + [GlEntryPoint("glUseShaderProgramEXT")] + _glUseShaderProgramEXT _UseShaderProgramEXT { get; } + + // --- + + delegate void _glVDPAUFiniNV(); + [GlEntryPoint("glVDPAUFiniNV")] + _glVDPAUFiniNV _VDPAUFiniNV { get; } + + // --- + + delegate void _glVDPAUGetSurfaceivNV(IntPtr surface, int pname, int count, int[] length, int[] values); + [GlEntryPoint("glVDPAUGetSurfaceivNV")] + _glVDPAUGetSurfaceivNV _VDPAUGetSurfaceivNV { get; } + + delegate void _glVDPAUGetSurfaceivNV_ptr(IntPtr surface, int pname, int count, void* length, void* values); + [GlEntryPoint("glVDPAUGetSurfaceivNV")] + _glVDPAUGetSurfaceivNV_ptr _VDPAUGetSurfaceivNV_ptr { get; } + + delegate void _glVDPAUGetSurfaceivNV_intptr(IntPtr surface, int pname, int count, IntPtr length, IntPtr values); + [GlEntryPoint("glVDPAUGetSurfaceivNV")] + _glVDPAUGetSurfaceivNV_intptr _VDPAUGetSurfaceivNV_intptr { get; } + + // --- + + delegate void _glVDPAUInitNV(IntPtr vdpDevice, IntPtr getProcAddress); + [GlEntryPoint("glVDPAUInitNV")] + _glVDPAUInitNV _VDPAUInitNV { get; } + + // --- + + delegate bool _glVDPAUIsSurfaceNV(IntPtr surface); + [GlEntryPoint("glVDPAUIsSurfaceNV")] + _glVDPAUIsSurfaceNV _VDPAUIsSurfaceNV { get; } + + // --- + + delegate void _glVDPAUMapSurfacesNV(int numSurfaces, IntPtr[] surfaces); + [GlEntryPoint("glVDPAUMapSurfacesNV")] + _glVDPAUMapSurfacesNV _VDPAUMapSurfacesNV { get; } + + delegate void _glVDPAUMapSurfacesNV_ptr(int numSurfaces, void* surfaces); + [GlEntryPoint("glVDPAUMapSurfacesNV")] + _glVDPAUMapSurfacesNV_ptr _VDPAUMapSurfacesNV_ptr { get; } + + delegate void _glVDPAUMapSurfacesNV_intptr(int numSurfaces, IntPtr surfaces); + [GlEntryPoint("glVDPAUMapSurfacesNV")] + _glVDPAUMapSurfacesNV_intptr _VDPAUMapSurfacesNV_intptr { get; } + + // --- + + delegate IntPtr _glVDPAURegisterOutputSurfaceNV(IntPtr vdpSurface, int target, int numTextureNames, uint[] textureNames); + [GlEntryPoint("glVDPAURegisterOutputSurfaceNV")] + _glVDPAURegisterOutputSurfaceNV _VDPAURegisterOutputSurfaceNV { get; } + + delegate IntPtr _glVDPAURegisterOutputSurfaceNV_ptr(IntPtr vdpSurface, int target, int numTextureNames, void* textureNames); + [GlEntryPoint("glVDPAURegisterOutputSurfaceNV")] + _glVDPAURegisterOutputSurfaceNV_ptr _VDPAURegisterOutputSurfaceNV_ptr { get; } + + delegate IntPtr _glVDPAURegisterOutputSurfaceNV_intptr(IntPtr vdpSurface, int target, int numTextureNames, IntPtr textureNames); + [GlEntryPoint("glVDPAURegisterOutputSurfaceNV")] + _glVDPAURegisterOutputSurfaceNV_intptr _VDPAURegisterOutputSurfaceNV_intptr { get; } + + // --- + + delegate IntPtr _glVDPAURegisterVideoSurfaceNV(IntPtr vdpSurface, int target, int numTextureNames, uint[] textureNames); + [GlEntryPoint("glVDPAURegisterVideoSurfaceNV")] + _glVDPAURegisterVideoSurfaceNV _VDPAURegisterVideoSurfaceNV { get; } + + delegate IntPtr _glVDPAURegisterVideoSurfaceNV_ptr(IntPtr vdpSurface, int target, int numTextureNames, void* textureNames); + [GlEntryPoint("glVDPAURegisterVideoSurfaceNV")] + _glVDPAURegisterVideoSurfaceNV_ptr _VDPAURegisterVideoSurfaceNV_ptr { get; } + + delegate IntPtr _glVDPAURegisterVideoSurfaceNV_intptr(IntPtr vdpSurface, int target, int numTextureNames, IntPtr textureNames); + [GlEntryPoint("glVDPAURegisterVideoSurfaceNV")] + _glVDPAURegisterVideoSurfaceNV_intptr _VDPAURegisterVideoSurfaceNV_intptr { get; } + + // --- + + delegate IntPtr _glVDPAURegisterVideoSurfaceWithPictureStructureNV(IntPtr vdpSurface, int target, int numTextureNames, uint[] textureNames, bool isFrameStructure); + [GlEntryPoint("glVDPAURegisterVideoSurfaceWithPictureStructureNV")] + _glVDPAURegisterVideoSurfaceWithPictureStructureNV _VDPAURegisterVideoSurfaceWithPictureStructureNV { get; } + + delegate IntPtr _glVDPAURegisterVideoSurfaceWithPictureStructureNV_ptr(IntPtr vdpSurface, int target, int numTextureNames, void* textureNames, bool isFrameStructure); + [GlEntryPoint("glVDPAURegisterVideoSurfaceWithPictureStructureNV")] + _glVDPAURegisterVideoSurfaceWithPictureStructureNV_ptr _VDPAURegisterVideoSurfaceWithPictureStructureNV_ptr { get; } + + delegate IntPtr _glVDPAURegisterVideoSurfaceWithPictureStructureNV_intptr(IntPtr vdpSurface, int target, int numTextureNames, IntPtr textureNames, bool isFrameStructure); + [GlEntryPoint("glVDPAURegisterVideoSurfaceWithPictureStructureNV")] + _glVDPAURegisterVideoSurfaceWithPictureStructureNV_intptr _VDPAURegisterVideoSurfaceWithPictureStructureNV_intptr { get; } + + // --- + + delegate void _glVDPAUSurfaceAccessNV(IntPtr surface, int access); + [GlEntryPoint("glVDPAUSurfaceAccessNV")] + _glVDPAUSurfaceAccessNV _VDPAUSurfaceAccessNV { get; } + + // --- + + delegate void _glVDPAUUnmapSurfacesNV(int numSurface, IntPtr[] surfaces); + [GlEntryPoint("glVDPAUUnmapSurfacesNV")] + _glVDPAUUnmapSurfacesNV _VDPAUUnmapSurfacesNV { get; } + + delegate void _glVDPAUUnmapSurfacesNV_ptr(int numSurface, void* surfaces); + [GlEntryPoint("glVDPAUUnmapSurfacesNV")] + _glVDPAUUnmapSurfacesNV_ptr _VDPAUUnmapSurfacesNV_ptr { get; } + + delegate void _glVDPAUUnmapSurfacesNV_intptr(int numSurface, IntPtr surfaces); + [GlEntryPoint("glVDPAUUnmapSurfacesNV")] + _glVDPAUUnmapSurfacesNV_intptr _VDPAUUnmapSurfacesNV_intptr { get; } + + // --- + + delegate void _glVDPAUUnregisterSurfaceNV(IntPtr surface); + [GlEntryPoint("glVDPAUUnregisterSurfaceNV")] + _glVDPAUUnregisterSurfaceNV _VDPAUUnregisterSurfaceNV { get; } + + // --- + + delegate void _glValidateProgram(uint program); + [GlEntryPoint("glValidateProgram")] + _glValidateProgram _ValidateProgram { get; } + + // --- + + delegate void _glValidateProgramARB(int programObj); + [GlEntryPoint("glValidateProgramARB")] + _glValidateProgramARB _ValidateProgramARB { get; } + + // --- + + delegate void _glValidateProgramPipeline(uint pipeline); + [GlEntryPoint("glValidateProgramPipeline")] + _glValidateProgramPipeline _ValidateProgramPipeline { get; } + + // --- + + delegate void _glValidateProgramPipelineEXT(uint pipeline); + [GlEntryPoint("glValidateProgramPipelineEXT")] + _glValidateProgramPipelineEXT _ValidateProgramPipelineEXT { get; } + + // --- + + delegate void _glVariantArrayObjectATI(uint id, ScalarType type, int stride, uint buffer, uint offset); + [GlEntryPoint("glVariantArrayObjectATI")] + _glVariantArrayObjectATI _VariantArrayObjectATI { get; } + + // --- + + delegate void _glVariantPointerEXT(uint id, ScalarType type, uint stride, IntPtr addr); + [GlEntryPoint("glVariantPointerEXT")] + _glVariantPointerEXT _VariantPointerEXT { get; } + + // --- + + delegate void _glVariantbvEXT(uint id, sbyte[] addr); + [GlEntryPoint("glVariantbvEXT")] + _glVariantbvEXT _VariantbvEXT { get; } + + delegate void _glVariantbvEXT_ptr(uint id, void* addr); + [GlEntryPoint("glVariantbvEXT")] + _glVariantbvEXT_ptr _VariantbvEXT_ptr { get; } + + delegate void _glVariantbvEXT_intptr(uint id, IntPtr addr); + [GlEntryPoint("glVariantbvEXT")] + _glVariantbvEXT_intptr _VariantbvEXT_intptr { get; } + + // --- + + delegate void _glVariantdvEXT(uint id, double[] addr); + [GlEntryPoint("glVariantdvEXT")] + _glVariantdvEXT _VariantdvEXT { get; } + + delegate void _glVariantdvEXT_ptr(uint id, void* addr); + [GlEntryPoint("glVariantdvEXT")] + _glVariantdvEXT_ptr _VariantdvEXT_ptr { get; } + + delegate void _glVariantdvEXT_intptr(uint id, IntPtr addr); + [GlEntryPoint("glVariantdvEXT")] + _glVariantdvEXT_intptr _VariantdvEXT_intptr { get; } + + // --- + + delegate void _glVariantfvEXT(uint id, float[] addr); + [GlEntryPoint("glVariantfvEXT")] + _glVariantfvEXT _VariantfvEXT { get; } + + delegate void _glVariantfvEXT_ptr(uint id, void* addr); + [GlEntryPoint("glVariantfvEXT")] + _glVariantfvEXT_ptr _VariantfvEXT_ptr { get; } + + delegate void _glVariantfvEXT_intptr(uint id, IntPtr addr); + [GlEntryPoint("glVariantfvEXT")] + _glVariantfvEXT_intptr _VariantfvEXT_intptr { get; } + + // --- + + delegate void _glVariantivEXT(uint id, int[] addr); + [GlEntryPoint("glVariantivEXT")] + _glVariantivEXT _VariantivEXT { get; } + + delegate void _glVariantivEXT_ptr(uint id, void* addr); + [GlEntryPoint("glVariantivEXT")] + _glVariantivEXT_ptr _VariantivEXT_ptr { get; } + + delegate void _glVariantivEXT_intptr(uint id, IntPtr addr); + [GlEntryPoint("glVariantivEXT")] + _glVariantivEXT_intptr _VariantivEXT_intptr { get; } + + // --- + + delegate void _glVariantsvEXT(uint id, short[] addr); + [GlEntryPoint("glVariantsvEXT")] + _glVariantsvEXT _VariantsvEXT { get; } + + delegate void _glVariantsvEXT_ptr(uint id, void* addr); + [GlEntryPoint("glVariantsvEXT")] + _glVariantsvEXT_ptr _VariantsvEXT_ptr { get; } + + delegate void _glVariantsvEXT_intptr(uint id, IntPtr addr); + [GlEntryPoint("glVariantsvEXT")] + _glVariantsvEXT_intptr _VariantsvEXT_intptr { get; } + + // --- + + delegate void _glVariantubvEXT(uint id, byte[] addr); + [GlEntryPoint("glVariantubvEXT")] + _glVariantubvEXT _VariantubvEXT { get; } + + delegate void _glVariantubvEXT_ptr(uint id, void* addr); + [GlEntryPoint("glVariantubvEXT")] + _glVariantubvEXT_ptr _VariantubvEXT_ptr { get; } + + delegate void _glVariantubvEXT_intptr(uint id, IntPtr addr); + [GlEntryPoint("glVariantubvEXT")] + _glVariantubvEXT_intptr _VariantubvEXT_intptr { get; } + + // --- + + delegate void _glVariantuivEXT(uint id, uint[] addr); + [GlEntryPoint("glVariantuivEXT")] + _glVariantuivEXT _VariantuivEXT { get; } + + delegate void _glVariantuivEXT_ptr(uint id, void* addr); + [GlEntryPoint("glVariantuivEXT")] + _glVariantuivEXT_ptr _VariantuivEXT_ptr { get; } + + delegate void _glVariantuivEXT_intptr(uint id, IntPtr addr); + [GlEntryPoint("glVariantuivEXT")] + _glVariantuivEXT_intptr _VariantuivEXT_intptr { get; } + + // --- + + delegate void _glVariantusvEXT(uint id, ushort[] addr); + [GlEntryPoint("glVariantusvEXT")] + _glVariantusvEXT _VariantusvEXT { get; } + + delegate void _glVariantusvEXT_ptr(uint id, void* addr); + [GlEntryPoint("glVariantusvEXT")] + _glVariantusvEXT_ptr _VariantusvEXT_ptr { get; } + + delegate void _glVariantusvEXT_intptr(uint id, IntPtr addr); + [GlEntryPoint("glVariantusvEXT")] + _glVariantusvEXT_intptr _VariantusvEXT_intptr { get; } + + // --- + + delegate void _glVertex2bOES(sbyte x, sbyte y); + [GlEntryPoint("glVertex2bOES")] + _glVertex2bOES _Vertex2bOES { get; } + + // --- + + delegate void _glVertex2bvOES(sbyte[] coords); + [GlEntryPoint("glVertex2bvOES")] + _glVertex2bvOES _Vertex2bvOES { get; } + + delegate void _glVertex2bvOES_ptr(void* coords); + [GlEntryPoint("glVertex2bvOES")] + _glVertex2bvOES_ptr _Vertex2bvOES_ptr { get; } + + delegate void _glVertex2bvOES_intptr(IntPtr coords); + [GlEntryPoint("glVertex2bvOES")] + _glVertex2bvOES_intptr _Vertex2bvOES_intptr { get; } + + // --- + + delegate void _glVertex2d(double x, double y); + [GlEntryPoint("glVertex2d")] + _glVertex2d _Vertex2d { get; } + + // --- + + delegate void _glVertex2dv(double[] v); + [GlEntryPoint("glVertex2dv")] + _glVertex2dv _Vertex2dv { get; } + + delegate void _glVertex2dv_ptr(void* v); + [GlEntryPoint("glVertex2dv")] + _glVertex2dv_ptr _Vertex2dv_ptr { get; } + + delegate void _glVertex2dv_intptr(IntPtr v); + [GlEntryPoint("glVertex2dv")] + _glVertex2dv_intptr _Vertex2dv_intptr { get; } + + // --- + + delegate void _glVertex2f(float x, float y); + [GlEntryPoint("glVertex2f")] + _glVertex2f _Vertex2f { get; } + + // --- + + delegate void _glVertex2fv(float[] v); + [GlEntryPoint("glVertex2fv")] + _glVertex2fv _Vertex2fv { get; } + + delegate void _glVertex2fv_ptr(void* v); + [GlEntryPoint("glVertex2fv")] + _glVertex2fv_ptr _Vertex2fv_ptr { get; } + + delegate void _glVertex2fv_intptr(IntPtr v); + [GlEntryPoint("glVertex2fv")] + _glVertex2fv_intptr _Vertex2fv_intptr { get; } + + // --- + + delegate void _glVertex2hNV(float x, float y); + [GlEntryPoint("glVertex2hNV")] + _glVertex2hNV _Vertex2hNV { get; } + + // --- + + delegate void _glVertex2hvNV(float[] v); + [GlEntryPoint("glVertex2hvNV")] + _glVertex2hvNV _Vertex2hvNV { get; } + + delegate void _glVertex2hvNV_ptr(void* v); + [GlEntryPoint("glVertex2hvNV")] + _glVertex2hvNV_ptr _Vertex2hvNV_ptr { get; } + + delegate void _glVertex2hvNV_intptr(IntPtr v); + [GlEntryPoint("glVertex2hvNV")] + _glVertex2hvNV_intptr _Vertex2hvNV_intptr { get; } + + // --- + + delegate void _glVertex2i(int x, int y); + [GlEntryPoint("glVertex2i")] + _glVertex2i _Vertex2i { get; } + + // --- + + delegate void _glVertex2iv(int[] v); + [GlEntryPoint("glVertex2iv")] + _glVertex2iv _Vertex2iv { get; } + + delegate void _glVertex2iv_ptr(void* v); + [GlEntryPoint("glVertex2iv")] + _glVertex2iv_ptr _Vertex2iv_ptr { get; } + + delegate void _glVertex2iv_intptr(IntPtr v); + [GlEntryPoint("glVertex2iv")] + _glVertex2iv_intptr _Vertex2iv_intptr { get; } + + // --- + + delegate void _glVertex2s(short x, short y); + [GlEntryPoint("glVertex2s")] + _glVertex2s _Vertex2s { get; } + + // --- + + delegate void _glVertex2sv(short[] v); + [GlEntryPoint("glVertex2sv")] + _glVertex2sv _Vertex2sv { get; } + + delegate void _glVertex2sv_ptr(void* v); + [GlEntryPoint("glVertex2sv")] + _glVertex2sv_ptr _Vertex2sv_ptr { get; } + + delegate void _glVertex2sv_intptr(IntPtr v); + [GlEntryPoint("glVertex2sv")] + _glVertex2sv_intptr _Vertex2sv_intptr { get; } + + // --- + + delegate void _glVertex2xOES(float x); + [GlEntryPoint("glVertex2xOES")] + _glVertex2xOES _Vertex2xOES { get; } + + // --- + + delegate void _glVertex2xvOES(float[] coords); + [GlEntryPoint("glVertex2xvOES")] + _glVertex2xvOES _Vertex2xvOES { get; } + + delegate void _glVertex2xvOES_ptr(void* coords); + [GlEntryPoint("glVertex2xvOES")] + _glVertex2xvOES_ptr _Vertex2xvOES_ptr { get; } + + delegate void _glVertex2xvOES_intptr(IntPtr coords); + [GlEntryPoint("glVertex2xvOES")] + _glVertex2xvOES_intptr _Vertex2xvOES_intptr { get; } + + // --- + + delegate void _glVertex3bOES(sbyte x, sbyte y, sbyte z); + [GlEntryPoint("glVertex3bOES")] + _glVertex3bOES _Vertex3bOES { get; } + + // --- + + delegate void _glVertex3bvOES(sbyte[] coords); + [GlEntryPoint("glVertex3bvOES")] + _glVertex3bvOES _Vertex3bvOES { get; } + + delegate void _glVertex3bvOES_ptr(void* coords); + [GlEntryPoint("glVertex3bvOES")] + _glVertex3bvOES_ptr _Vertex3bvOES_ptr { get; } + + delegate void _glVertex3bvOES_intptr(IntPtr coords); + [GlEntryPoint("glVertex3bvOES")] + _glVertex3bvOES_intptr _Vertex3bvOES_intptr { get; } + + // --- + + delegate void _glVertex3d(double x, double y, double z); + [GlEntryPoint("glVertex3d")] + _glVertex3d _Vertex3d { get; } + + // --- + + delegate void _glVertex3dv(double[] v); + [GlEntryPoint("glVertex3dv")] + _glVertex3dv _Vertex3dv { get; } + + delegate void _glVertex3dv_ptr(void* v); + [GlEntryPoint("glVertex3dv")] + _glVertex3dv_ptr _Vertex3dv_ptr { get; } + + delegate void _glVertex3dv_intptr(IntPtr v); + [GlEntryPoint("glVertex3dv")] + _glVertex3dv_intptr _Vertex3dv_intptr { get; } + + // --- + + delegate void _glVertex3f(float x, float y, float z); + [GlEntryPoint("glVertex3f")] + _glVertex3f _Vertex3f { get; } + + // --- + + delegate void _glVertex3fv(float[] v); + [GlEntryPoint("glVertex3fv")] + _glVertex3fv _Vertex3fv { get; } + + delegate void _glVertex3fv_ptr(void* v); + [GlEntryPoint("glVertex3fv")] + _glVertex3fv_ptr _Vertex3fv_ptr { get; } + + delegate void _glVertex3fv_intptr(IntPtr v); + [GlEntryPoint("glVertex3fv")] + _glVertex3fv_intptr _Vertex3fv_intptr { get; } + + // --- + + delegate void _glVertex3hNV(float x, float y, float z); + [GlEntryPoint("glVertex3hNV")] + _glVertex3hNV _Vertex3hNV { get; } + + // --- + + delegate void _glVertex3hvNV(float[] v); + [GlEntryPoint("glVertex3hvNV")] + _glVertex3hvNV _Vertex3hvNV { get; } + + delegate void _glVertex3hvNV_ptr(void* v); + [GlEntryPoint("glVertex3hvNV")] + _glVertex3hvNV_ptr _Vertex3hvNV_ptr { get; } + + delegate void _glVertex3hvNV_intptr(IntPtr v); + [GlEntryPoint("glVertex3hvNV")] + _glVertex3hvNV_intptr _Vertex3hvNV_intptr { get; } + + // --- + + delegate void _glVertex3i(int x, int y, int z); + [GlEntryPoint("glVertex3i")] + _glVertex3i _Vertex3i { get; } + + // --- + + delegate void _glVertex3iv(int[] v); + [GlEntryPoint("glVertex3iv")] + _glVertex3iv _Vertex3iv { get; } + + delegate void _glVertex3iv_ptr(void* v); + [GlEntryPoint("glVertex3iv")] + _glVertex3iv_ptr _Vertex3iv_ptr { get; } + + delegate void _glVertex3iv_intptr(IntPtr v); + [GlEntryPoint("glVertex3iv")] + _glVertex3iv_intptr _Vertex3iv_intptr { get; } + + // --- + + delegate void _glVertex3s(short x, short y, short z); + [GlEntryPoint("glVertex3s")] + _glVertex3s _Vertex3s { get; } + + // --- + + delegate void _glVertex3sv(short[] v); + [GlEntryPoint("glVertex3sv")] + _glVertex3sv _Vertex3sv { get; } + + delegate void _glVertex3sv_ptr(void* v); + [GlEntryPoint("glVertex3sv")] + _glVertex3sv_ptr _Vertex3sv_ptr { get; } + + delegate void _glVertex3sv_intptr(IntPtr v); + [GlEntryPoint("glVertex3sv")] + _glVertex3sv_intptr _Vertex3sv_intptr { get; } + + // --- + + delegate void _glVertex3xOES(float x, float y); + [GlEntryPoint("glVertex3xOES")] + _glVertex3xOES _Vertex3xOES { get; } + + // --- + + delegate void _glVertex3xvOES(float[] coords); + [GlEntryPoint("glVertex3xvOES")] + _glVertex3xvOES _Vertex3xvOES { get; } + + delegate void _glVertex3xvOES_ptr(void* coords); + [GlEntryPoint("glVertex3xvOES")] + _glVertex3xvOES_ptr _Vertex3xvOES_ptr { get; } + + delegate void _glVertex3xvOES_intptr(IntPtr coords); + [GlEntryPoint("glVertex3xvOES")] + _glVertex3xvOES_intptr _Vertex3xvOES_intptr { get; } + + // --- + + delegate void _glVertex4bOES(sbyte x, sbyte y, sbyte z, sbyte w); + [GlEntryPoint("glVertex4bOES")] + _glVertex4bOES _Vertex4bOES { get; } + + // --- + + delegate void _glVertex4bvOES(sbyte[] coords); + [GlEntryPoint("glVertex4bvOES")] + _glVertex4bvOES _Vertex4bvOES { get; } + + delegate void _glVertex4bvOES_ptr(void* coords); + [GlEntryPoint("glVertex4bvOES")] + _glVertex4bvOES_ptr _Vertex4bvOES_ptr { get; } + + delegate void _glVertex4bvOES_intptr(IntPtr coords); + [GlEntryPoint("glVertex4bvOES")] + _glVertex4bvOES_intptr _Vertex4bvOES_intptr { get; } + + // --- + + delegate void _glVertex4d(double x, double y, double z, double w); + [GlEntryPoint("glVertex4d")] + _glVertex4d _Vertex4d { get; } + + // --- + + delegate void _glVertex4dv(double[] v); + [GlEntryPoint("glVertex4dv")] + _glVertex4dv _Vertex4dv { get; } + + delegate void _glVertex4dv_ptr(void* v); + [GlEntryPoint("glVertex4dv")] + _glVertex4dv_ptr _Vertex4dv_ptr { get; } + + delegate void _glVertex4dv_intptr(IntPtr v); + [GlEntryPoint("glVertex4dv")] + _glVertex4dv_intptr _Vertex4dv_intptr { get; } + + // --- + + delegate void _glVertex4f(float x, float y, float z, float w); + [GlEntryPoint("glVertex4f")] + _glVertex4f _Vertex4f { get; } + + // --- + + delegate void _glVertex4fv(float[] v); + [GlEntryPoint("glVertex4fv")] + _glVertex4fv _Vertex4fv { get; } + + delegate void _glVertex4fv_ptr(void* v); + [GlEntryPoint("glVertex4fv")] + _glVertex4fv_ptr _Vertex4fv_ptr { get; } + + delegate void _glVertex4fv_intptr(IntPtr v); + [GlEntryPoint("glVertex4fv")] + _glVertex4fv_intptr _Vertex4fv_intptr { get; } + + // --- + + delegate void _glVertex4hNV(float x, float y, float z, float w); + [GlEntryPoint("glVertex4hNV")] + _glVertex4hNV _Vertex4hNV { get; } + + // --- + + delegate void _glVertex4hvNV(float[] v); + [GlEntryPoint("glVertex4hvNV")] + _glVertex4hvNV _Vertex4hvNV { get; } + + delegate void _glVertex4hvNV_ptr(void* v); + [GlEntryPoint("glVertex4hvNV")] + _glVertex4hvNV_ptr _Vertex4hvNV_ptr { get; } + + delegate void _glVertex4hvNV_intptr(IntPtr v); + [GlEntryPoint("glVertex4hvNV")] + _glVertex4hvNV_intptr _Vertex4hvNV_intptr { get; } + + // --- + + delegate void _glVertex4i(int x, int y, int z, int w); + [GlEntryPoint("glVertex4i")] + _glVertex4i _Vertex4i { get; } + + // --- + + delegate void _glVertex4iv(int[] v); + [GlEntryPoint("glVertex4iv")] + _glVertex4iv _Vertex4iv { get; } + + delegate void _glVertex4iv_ptr(void* v); + [GlEntryPoint("glVertex4iv")] + _glVertex4iv_ptr _Vertex4iv_ptr { get; } + + delegate void _glVertex4iv_intptr(IntPtr v); + [GlEntryPoint("glVertex4iv")] + _glVertex4iv_intptr _Vertex4iv_intptr { get; } + + // --- + + delegate void _glVertex4s(short x, short y, short z, short w); + [GlEntryPoint("glVertex4s")] + _glVertex4s _Vertex4s { get; } + + // --- + + delegate void _glVertex4sv(short[] v); + [GlEntryPoint("glVertex4sv")] + _glVertex4sv _Vertex4sv { get; } + + delegate void _glVertex4sv_ptr(void* v); + [GlEntryPoint("glVertex4sv")] + _glVertex4sv_ptr _Vertex4sv_ptr { get; } + + delegate void _glVertex4sv_intptr(IntPtr v); + [GlEntryPoint("glVertex4sv")] + _glVertex4sv_intptr _Vertex4sv_intptr { get; } + + // --- + + delegate void _glVertex4xOES(float x, float y, float z); + [GlEntryPoint("glVertex4xOES")] + _glVertex4xOES _Vertex4xOES { get; } + + // --- + + delegate void _glVertex4xvOES(float[] coords); + [GlEntryPoint("glVertex4xvOES")] + _glVertex4xvOES _Vertex4xvOES { get; } + + delegate void _glVertex4xvOES_ptr(void* coords); + [GlEntryPoint("glVertex4xvOES")] + _glVertex4xvOES_ptr _Vertex4xvOES_ptr { get; } + + delegate void _glVertex4xvOES_intptr(IntPtr coords); + [GlEntryPoint("glVertex4xvOES")] + _glVertex4xvOES_intptr _Vertex4xvOES_intptr { get; } + + // --- + + delegate void _glVertexArrayAttribBinding(uint vaobj, uint attribindex, uint bindingindex); + [GlEntryPoint("glVertexArrayAttribBinding")] + _glVertexArrayAttribBinding _VertexArrayAttribBinding { get; } + + // --- + + delegate void _glVertexArrayAttribFormat(uint vaobj, uint attribindex, int size, VertexAttribType type, bool normalized, uint relativeoffset); + [GlEntryPoint("glVertexArrayAttribFormat")] + _glVertexArrayAttribFormat _VertexArrayAttribFormat { get; } + + // --- + + delegate void _glVertexArrayAttribIFormat(uint vaobj, uint attribindex, int size, VertexAttribIType type, uint relativeoffset); + [GlEntryPoint("glVertexArrayAttribIFormat")] + _glVertexArrayAttribIFormat _VertexArrayAttribIFormat { get; } + + // --- + + delegate void _glVertexArrayAttribLFormat(uint vaobj, uint attribindex, int size, VertexAttribLType type, uint relativeoffset); + [GlEntryPoint("glVertexArrayAttribLFormat")] + _glVertexArrayAttribLFormat _VertexArrayAttribLFormat { get; } + + // --- + + delegate void _glVertexArrayBindVertexBufferEXT(uint vaobj, uint bindingindex, uint buffer, IntPtr offset, int stride); + [GlEntryPoint("glVertexArrayBindVertexBufferEXT")] + _glVertexArrayBindVertexBufferEXT _VertexArrayBindVertexBufferEXT { get; } + + // --- + + delegate void _glVertexArrayBindingDivisor(uint vaobj, uint bindingindex, uint divisor); + [GlEntryPoint("glVertexArrayBindingDivisor")] + _glVertexArrayBindingDivisor _VertexArrayBindingDivisor { get; } + + // --- + + delegate void _glVertexArrayColorOffsetEXT(uint vaobj, uint buffer, int size, ColorPointerType type, int stride, IntPtr offset); + [GlEntryPoint("glVertexArrayColorOffsetEXT")] + _glVertexArrayColorOffsetEXT _VertexArrayColorOffsetEXT { get; } + + // --- + + delegate void _glVertexArrayEdgeFlagOffsetEXT(uint vaobj, uint buffer, int stride, IntPtr offset); + [GlEntryPoint("glVertexArrayEdgeFlagOffsetEXT")] + _glVertexArrayEdgeFlagOffsetEXT _VertexArrayEdgeFlagOffsetEXT { get; } + + // --- + + delegate void _glVertexArrayElementBuffer(uint vaobj, uint buffer); + [GlEntryPoint("glVertexArrayElementBuffer")] + _glVertexArrayElementBuffer _VertexArrayElementBuffer { get; } + + // --- + + delegate void _glVertexArrayFogCoordOffsetEXT(uint vaobj, uint buffer, FogCoordinatePointerType type, int stride, IntPtr offset); + [GlEntryPoint("glVertexArrayFogCoordOffsetEXT")] + _glVertexArrayFogCoordOffsetEXT _VertexArrayFogCoordOffsetEXT { get; } + + // --- + + delegate void _glVertexArrayIndexOffsetEXT(uint vaobj, uint buffer, IndexPointerType type, int stride, IntPtr offset); + [GlEntryPoint("glVertexArrayIndexOffsetEXT")] + _glVertexArrayIndexOffsetEXT _VertexArrayIndexOffsetEXT { get; } + + // --- + + delegate void _glVertexArrayMultiTexCoordOffsetEXT(uint vaobj, uint buffer, int texunit, int size, TexCoordPointerType type, int stride, IntPtr offset); + [GlEntryPoint("glVertexArrayMultiTexCoordOffsetEXT")] + _glVertexArrayMultiTexCoordOffsetEXT _VertexArrayMultiTexCoordOffsetEXT { get; } + + // --- + + delegate void _glVertexArrayNormalOffsetEXT(uint vaobj, uint buffer, NormalPointerType type, int stride, IntPtr offset); + [GlEntryPoint("glVertexArrayNormalOffsetEXT")] + _glVertexArrayNormalOffsetEXT _VertexArrayNormalOffsetEXT { get; } + + // --- + + delegate void _glVertexArrayParameteriAPPLE(VertexArrayPNameAPPLE pname, int param); + [GlEntryPoint("glVertexArrayParameteriAPPLE")] + _glVertexArrayParameteriAPPLE _VertexArrayParameteriAPPLE { get; } + + // --- + + delegate void _glVertexArrayRangeAPPLE(int length, IntPtr pointer); + [GlEntryPoint("glVertexArrayRangeAPPLE")] + _glVertexArrayRangeAPPLE _VertexArrayRangeAPPLE { get; } + + // --- + + delegate void _glVertexArrayRangeNV(int length, IntPtr pointer); + [GlEntryPoint("glVertexArrayRangeNV")] + _glVertexArrayRangeNV _VertexArrayRangeNV { get; } + + // --- + + delegate void _glVertexArraySecondaryColorOffsetEXT(uint vaobj, uint buffer, int size, ColorPointerType type, int stride, IntPtr offset); + [GlEntryPoint("glVertexArraySecondaryColorOffsetEXT")] + _glVertexArraySecondaryColorOffsetEXT _VertexArraySecondaryColorOffsetEXT { get; } + + // --- + + delegate void _glVertexArrayTexCoordOffsetEXT(uint vaobj, uint buffer, int size, TexCoordPointerType type, int stride, IntPtr offset); + [GlEntryPoint("glVertexArrayTexCoordOffsetEXT")] + _glVertexArrayTexCoordOffsetEXT _VertexArrayTexCoordOffsetEXT { get; } + + // --- + + delegate void _glVertexArrayVertexAttribBindingEXT(uint vaobj, uint attribindex, uint bindingindex); + [GlEntryPoint("glVertexArrayVertexAttribBindingEXT")] + _glVertexArrayVertexAttribBindingEXT _VertexArrayVertexAttribBindingEXT { get; } + + // --- + + delegate void _glVertexArrayVertexAttribDivisorEXT(uint vaobj, uint index, uint divisor); + [GlEntryPoint("glVertexArrayVertexAttribDivisorEXT")] + _glVertexArrayVertexAttribDivisorEXT _VertexArrayVertexAttribDivisorEXT { get; } + + // --- + + delegate void _glVertexArrayVertexAttribFormatEXT(uint vaobj, uint attribindex, int size, VertexAttribType type, bool normalized, uint relativeoffset); + [GlEntryPoint("glVertexArrayVertexAttribFormatEXT")] + _glVertexArrayVertexAttribFormatEXT _VertexArrayVertexAttribFormatEXT { get; } + + // --- + + delegate void _glVertexArrayVertexAttribIFormatEXT(uint vaobj, uint attribindex, int size, VertexAttribIType type, uint relativeoffset); + [GlEntryPoint("glVertexArrayVertexAttribIFormatEXT")] + _glVertexArrayVertexAttribIFormatEXT _VertexArrayVertexAttribIFormatEXT { get; } + + // --- + + delegate void _glVertexArrayVertexAttribIOffsetEXT(uint vaobj, uint buffer, uint index, int size, VertexAttribType type, int stride, IntPtr offset); + [GlEntryPoint("glVertexArrayVertexAttribIOffsetEXT")] + _glVertexArrayVertexAttribIOffsetEXT _VertexArrayVertexAttribIOffsetEXT { get; } + + // --- + + delegate void _glVertexArrayVertexAttribLFormatEXT(uint vaobj, uint attribindex, int size, VertexAttribLType type, uint relativeoffset); + [GlEntryPoint("glVertexArrayVertexAttribLFormatEXT")] + _glVertexArrayVertexAttribLFormatEXT _VertexArrayVertexAttribLFormatEXT { get; } + + // --- + + delegate void _glVertexArrayVertexAttribLOffsetEXT(uint vaobj, uint buffer, uint index, int size, VertexAttribLType type, int stride, IntPtr offset); + [GlEntryPoint("glVertexArrayVertexAttribLOffsetEXT")] + _glVertexArrayVertexAttribLOffsetEXT _VertexArrayVertexAttribLOffsetEXT { get; } + + // --- + + delegate void _glVertexArrayVertexAttribOffsetEXT(uint vaobj, uint buffer, uint index, int size, VertexAttribPointerType type, bool normalized, int stride, IntPtr offset); + [GlEntryPoint("glVertexArrayVertexAttribOffsetEXT")] + _glVertexArrayVertexAttribOffsetEXT _VertexArrayVertexAttribOffsetEXT { get; } + + // --- + + delegate void _glVertexArrayVertexBindingDivisorEXT(uint vaobj, uint bindingindex, uint divisor); + [GlEntryPoint("glVertexArrayVertexBindingDivisorEXT")] + _glVertexArrayVertexBindingDivisorEXT _VertexArrayVertexBindingDivisorEXT { get; } + + // --- + + delegate void _glVertexArrayVertexBuffer(uint vaobj, uint bindingindex, uint buffer, IntPtr offset, int stride); + [GlEntryPoint("glVertexArrayVertexBuffer")] + _glVertexArrayVertexBuffer _VertexArrayVertexBuffer { get; } + + // --- + + delegate void _glVertexArrayVertexBuffers(uint vaobj, uint first, int count, uint[] buffers, IntPtr[] offsets, int[] strides); + [GlEntryPoint("glVertexArrayVertexBuffers")] + _glVertexArrayVertexBuffers _VertexArrayVertexBuffers { get; } + + delegate void _glVertexArrayVertexBuffers_ptr(uint vaobj, uint first, int count, void* buffers, void* offsets, void* strides); + [GlEntryPoint("glVertexArrayVertexBuffers")] + _glVertexArrayVertexBuffers_ptr _VertexArrayVertexBuffers_ptr { get; } + + delegate void _glVertexArrayVertexBuffers_intptr(uint vaobj, uint first, int count, IntPtr buffers, IntPtr offsets, IntPtr strides); + [GlEntryPoint("glVertexArrayVertexBuffers")] + _glVertexArrayVertexBuffers_intptr _VertexArrayVertexBuffers_intptr { get; } + + // --- + + delegate void _glVertexArrayVertexOffsetEXT(uint vaobj, uint buffer, int size, VertexPointerType type, int stride, IntPtr offset); + [GlEntryPoint("glVertexArrayVertexOffsetEXT")] + _glVertexArrayVertexOffsetEXT _VertexArrayVertexOffsetEXT { get; } + + // --- + + delegate void _glVertexAttrib1d(uint index, double x); + [GlEntryPoint("glVertexAttrib1d")] + _glVertexAttrib1d _VertexAttrib1d { get; } + + // --- + + delegate void _glVertexAttrib1dARB(uint index, double x); + [GlEntryPoint("glVertexAttrib1dARB")] + _glVertexAttrib1dARB _VertexAttrib1dARB { get; } + + // --- + + delegate void _glVertexAttrib1dNV(uint index, double x); + [GlEntryPoint("glVertexAttrib1dNV")] + _glVertexAttrib1dNV _VertexAttrib1dNV { get; } + + // --- + + delegate void _glVertexAttrib1dv(uint index, double[] v); + [GlEntryPoint("glVertexAttrib1dv")] + _glVertexAttrib1dv _VertexAttrib1dv { get; } + + delegate void _glVertexAttrib1dv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib1dv")] + _glVertexAttrib1dv_ptr _VertexAttrib1dv_ptr { get; } + + delegate void _glVertexAttrib1dv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib1dv")] + _glVertexAttrib1dv_intptr _VertexAttrib1dv_intptr { get; } + + // --- + + delegate void _glVertexAttrib1dvARB(uint index, double[] v); + [GlEntryPoint("glVertexAttrib1dvARB")] + _glVertexAttrib1dvARB _VertexAttrib1dvARB { get; } + + delegate void _glVertexAttrib1dvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib1dvARB")] + _glVertexAttrib1dvARB_ptr _VertexAttrib1dvARB_ptr { get; } + + delegate void _glVertexAttrib1dvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib1dvARB")] + _glVertexAttrib1dvARB_intptr _VertexAttrib1dvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib1dvNV(uint index, double[] v); + [GlEntryPoint("glVertexAttrib1dvNV")] + _glVertexAttrib1dvNV _VertexAttrib1dvNV { get; } + + delegate void _glVertexAttrib1dvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib1dvNV")] + _glVertexAttrib1dvNV_ptr _VertexAttrib1dvNV_ptr { get; } + + delegate void _glVertexAttrib1dvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib1dvNV")] + _glVertexAttrib1dvNV_intptr _VertexAttrib1dvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib1f(uint index, float x); + [GlEntryPoint("glVertexAttrib1f")] + _glVertexAttrib1f _VertexAttrib1f { get; } + + // --- + + delegate void _glVertexAttrib1fARB(uint index, float x); + [GlEntryPoint("glVertexAttrib1fARB")] + _glVertexAttrib1fARB _VertexAttrib1fARB { get; } + + // --- + + delegate void _glVertexAttrib1fNV(uint index, float x); + [GlEntryPoint("glVertexAttrib1fNV")] + _glVertexAttrib1fNV _VertexAttrib1fNV { get; } + + // --- + + delegate void _glVertexAttrib1fv(uint index, float[] v); + [GlEntryPoint("glVertexAttrib1fv")] + _glVertexAttrib1fv _VertexAttrib1fv { get; } + + delegate void _glVertexAttrib1fv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib1fv")] + _glVertexAttrib1fv_ptr _VertexAttrib1fv_ptr { get; } + + delegate void _glVertexAttrib1fv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib1fv")] + _glVertexAttrib1fv_intptr _VertexAttrib1fv_intptr { get; } + + // --- + + delegate void _glVertexAttrib1fvARB(uint index, float[] v); + [GlEntryPoint("glVertexAttrib1fvARB")] + _glVertexAttrib1fvARB _VertexAttrib1fvARB { get; } + + delegate void _glVertexAttrib1fvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib1fvARB")] + _glVertexAttrib1fvARB_ptr _VertexAttrib1fvARB_ptr { get; } + + delegate void _glVertexAttrib1fvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib1fvARB")] + _glVertexAttrib1fvARB_intptr _VertexAttrib1fvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib1fvNV(uint index, float[] v); + [GlEntryPoint("glVertexAttrib1fvNV")] + _glVertexAttrib1fvNV _VertexAttrib1fvNV { get; } + + delegate void _glVertexAttrib1fvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib1fvNV")] + _glVertexAttrib1fvNV_ptr _VertexAttrib1fvNV_ptr { get; } + + delegate void _glVertexAttrib1fvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib1fvNV")] + _glVertexAttrib1fvNV_intptr _VertexAttrib1fvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib1hNV(uint index, float x); + [GlEntryPoint("glVertexAttrib1hNV")] + _glVertexAttrib1hNV _VertexAttrib1hNV { get; } + + // --- + + delegate void _glVertexAttrib1hvNV(uint index, float[] v); + [GlEntryPoint("glVertexAttrib1hvNV")] + _glVertexAttrib1hvNV _VertexAttrib1hvNV { get; } + + delegate void _glVertexAttrib1hvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib1hvNV")] + _glVertexAttrib1hvNV_ptr _VertexAttrib1hvNV_ptr { get; } + + delegate void _glVertexAttrib1hvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib1hvNV")] + _glVertexAttrib1hvNV_intptr _VertexAttrib1hvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib1s(uint index, short x); + [GlEntryPoint("glVertexAttrib1s")] + _glVertexAttrib1s _VertexAttrib1s { get; } + + // --- + + delegate void _glVertexAttrib1sARB(uint index, short x); + [GlEntryPoint("glVertexAttrib1sARB")] + _glVertexAttrib1sARB _VertexAttrib1sARB { get; } + + // --- + + delegate void _glVertexAttrib1sNV(uint index, short x); + [GlEntryPoint("glVertexAttrib1sNV")] + _glVertexAttrib1sNV _VertexAttrib1sNV { get; } + + // --- + + delegate void _glVertexAttrib1sv(uint index, short[] v); + [GlEntryPoint("glVertexAttrib1sv")] + _glVertexAttrib1sv _VertexAttrib1sv { get; } + + delegate void _glVertexAttrib1sv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib1sv")] + _glVertexAttrib1sv_ptr _VertexAttrib1sv_ptr { get; } + + delegate void _glVertexAttrib1sv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib1sv")] + _glVertexAttrib1sv_intptr _VertexAttrib1sv_intptr { get; } + + // --- + + delegate void _glVertexAttrib1svARB(uint index, short[] v); + [GlEntryPoint("glVertexAttrib1svARB")] + _glVertexAttrib1svARB _VertexAttrib1svARB { get; } + + delegate void _glVertexAttrib1svARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib1svARB")] + _glVertexAttrib1svARB_ptr _VertexAttrib1svARB_ptr { get; } + + delegate void _glVertexAttrib1svARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib1svARB")] + _glVertexAttrib1svARB_intptr _VertexAttrib1svARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib1svNV(uint index, short[] v); + [GlEntryPoint("glVertexAttrib1svNV")] + _glVertexAttrib1svNV _VertexAttrib1svNV { get; } + + delegate void _glVertexAttrib1svNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib1svNV")] + _glVertexAttrib1svNV_ptr _VertexAttrib1svNV_ptr { get; } + + delegate void _glVertexAttrib1svNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib1svNV")] + _glVertexAttrib1svNV_intptr _VertexAttrib1svNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib2d(uint index, double x, double y); + [GlEntryPoint("glVertexAttrib2d")] + _glVertexAttrib2d _VertexAttrib2d { get; } + + // --- + + delegate void _glVertexAttrib2dARB(uint index, double x, double y); + [GlEntryPoint("glVertexAttrib2dARB")] + _glVertexAttrib2dARB _VertexAttrib2dARB { get; } + + // --- + + delegate void _glVertexAttrib2dNV(uint index, double x, double y); + [GlEntryPoint("glVertexAttrib2dNV")] + _glVertexAttrib2dNV _VertexAttrib2dNV { get; } + + // --- + + delegate void _glVertexAttrib2dv(uint index, double[] v); + [GlEntryPoint("glVertexAttrib2dv")] + _glVertexAttrib2dv _VertexAttrib2dv { get; } + + delegate void _glVertexAttrib2dv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib2dv")] + _glVertexAttrib2dv_ptr _VertexAttrib2dv_ptr { get; } + + delegate void _glVertexAttrib2dv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib2dv")] + _glVertexAttrib2dv_intptr _VertexAttrib2dv_intptr { get; } + + // --- + + delegate void _glVertexAttrib2dvARB(uint index, double[] v); + [GlEntryPoint("glVertexAttrib2dvARB")] + _glVertexAttrib2dvARB _VertexAttrib2dvARB { get; } + + delegate void _glVertexAttrib2dvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib2dvARB")] + _glVertexAttrib2dvARB_ptr _VertexAttrib2dvARB_ptr { get; } + + delegate void _glVertexAttrib2dvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib2dvARB")] + _glVertexAttrib2dvARB_intptr _VertexAttrib2dvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib2dvNV(uint index, double[] v); + [GlEntryPoint("glVertexAttrib2dvNV")] + _glVertexAttrib2dvNV _VertexAttrib2dvNV { get; } + + delegate void _glVertexAttrib2dvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib2dvNV")] + _glVertexAttrib2dvNV_ptr _VertexAttrib2dvNV_ptr { get; } + + delegate void _glVertexAttrib2dvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib2dvNV")] + _glVertexAttrib2dvNV_intptr _VertexAttrib2dvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib2f(uint index, float x, float y); + [GlEntryPoint("glVertexAttrib2f")] + _glVertexAttrib2f _VertexAttrib2f { get; } + + // --- + + delegate void _glVertexAttrib2fARB(uint index, float x, float y); + [GlEntryPoint("glVertexAttrib2fARB")] + _glVertexAttrib2fARB _VertexAttrib2fARB { get; } + + // --- + + delegate void _glVertexAttrib2fNV(uint index, float x, float y); + [GlEntryPoint("glVertexAttrib2fNV")] + _glVertexAttrib2fNV _VertexAttrib2fNV { get; } + + // --- + + delegate void _glVertexAttrib2fv(uint index, float[] v); + [GlEntryPoint("glVertexAttrib2fv")] + _glVertexAttrib2fv _VertexAttrib2fv { get; } + + delegate void _glVertexAttrib2fv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib2fv")] + _glVertexAttrib2fv_ptr _VertexAttrib2fv_ptr { get; } + + delegate void _glVertexAttrib2fv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib2fv")] + _glVertexAttrib2fv_intptr _VertexAttrib2fv_intptr { get; } + + // --- + + delegate void _glVertexAttrib2fvARB(uint index, float[] v); + [GlEntryPoint("glVertexAttrib2fvARB")] + _glVertexAttrib2fvARB _VertexAttrib2fvARB { get; } + + delegate void _glVertexAttrib2fvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib2fvARB")] + _glVertexAttrib2fvARB_ptr _VertexAttrib2fvARB_ptr { get; } + + delegate void _glVertexAttrib2fvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib2fvARB")] + _glVertexAttrib2fvARB_intptr _VertexAttrib2fvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib2fvNV(uint index, float[] v); + [GlEntryPoint("glVertexAttrib2fvNV")] + _glVertexAttrib2fvNV _VertexAttrib2fvNV { get; } + + delegate void _glVertexAttrib2fvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib2fvNV")] + _glVertexAttrib2fvNV_ptr _VertexAttrib2fvNV_ptr { get; } + + delegate void _glVertexAttrib2fvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib2fvNV")] + _glVertexAttrib2fvNV_intptr _VertexAttrib2fvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib2hNV(uint index, float x, float y); + [GlEntryPoint("glVertexAttrib2hNV")] + _glVertexAttrib2hNV _VertexAttrib2hNV { get; } + + // --- + + delegate void _glVertexAttrib2hvNV(uint index, float[] v); + [GlEntryPoint("glVertexAttrib2hvNV")] + _glVertexAttrib2hvNV _VertexAttrib2hvNV { get; } + + delegate void _glVertexAttrib2hvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib2hvNV")] + _glVertexAttrib2hvNV_ptr _VertexAttrib2hvNV_ptr { get; } + + delegate void _glVertexAttrib2hvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib2hvNV")] + _glVertexAttrib2hvNV_intptr _VertexAttrib2hvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib2s(uint index, short x, short y); + [GlEntryPoint("glVertexAttrib2s")] + _glVertexAttrib2s _VertexAttrib2s { get; } + + // --- + + delegate void _glVertexAttrib2sARB(uint index, short x, short y); + [GlEntryPoint("glVertexAttrib2sARB")] + _glVertexAttrib2sARB _VertexAttrib2sARB { get; } + + // --- + + delegate void _glVertexAttrib2sNV(uint index, short x, short y); + [GlEntryPoint("glVertexAttrib2sNV")] + _glVertexAttrib2sNV _VertexAttrib2sNV { get; } + + // --- + + delegate void _glVertexAttrib2sv(uint index, short[] v); + [GlEntryPoint("glVertexAttrib2sv")] + _glVertexAttrib2sv _VertexAttrib2sv { get; } + + delegate void _glVertexAttrib2sv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib2sv")] + _glVertexAttrib2sv_ptr _VertexAttrib2sv_ptr { get; } + + delegate void _glVertexAttrib2sv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib2sv")] + _glVertexAttrib2sv_intptr _VertexAttrib2sv_intptr { get; } + + // --- + + delegate void _glVertexAttrib2svARB(uint index, short[] v); + [GlEntryPoint("glVertexAttrib2svARB")] + _glVertexAttrib2svARB _VertexAttrib2svARB { get; } + + delegate void _glVertexAttrib2svARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib2svARB")] + _glVertexAttrib2svARB_ptr _VertexAttrib2svARB_ptr { get; } + + delegate void _glVertexAttrib2svARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib2svARB")] + _glVertexAttrib2svARB_intptr _VertexAttrib2svARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib2svNV(uint index, short[] v); + [GlEntryPoint("glVertexAttrib2svNV")] + _glVertexAttrib2svNV _VertexAttrib2svNV { get; } + + delegate void _glVertexAttrib2svNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib2svNV")] + _glVertexAttrib2svNV_ptr _VertexAttrib2svNV_ptr { get; } + + delegate void _glVertexAttrib2svNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib2svNV")] + _glVertexAttrib2svNV_intptr _VertexAttrib2svNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib3d(uint index, double x, double y, double z); + [GlEntryPoint("glVertexAttrib3d")] + _glVertexAttrib3d _VertexAttrib3d { get; } + + // --- + + delegate void _glVertexAttrib3dARB(uint index, double x, double y, double z); + [GlEntryPoint("glVertexAttrib3dARB")] + _glVertexAttrib3dARB _VertexAttrib3dARB { get; } + + // --- + + delegate void _glVertexAttrib3dNV(uint index, double x, double y, double z); + [GlEntryPoint("glVertexAttrib3dNV")] + _glVertexAttrib3dNV _VertexAttrib3dNV { get; } + + // --- + + delegate void _glVertexAttrib3dv(uint index, double[] v); + [GlEntryPoint("glVertexAttrib3dv")] + _glVertexAttrib3dv _VertexAttrib3dv { get; } + + delegate void _glVertexAttrib3dv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib3dv")] + _glVertexAttrib3dv_ptr _VertexAttrib3dv_ptr { get; } + + delegate void _glVertexAttrib3dv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib3dv")] + _glVertexAttrib3dv_intptr _VertexAttrib3dv_intptr { get; } + + // --- + + delegate void _glVertexAttrib3dvARB(uint index, double[] v); + [GlEntryPoint("glVertexAttrib3dvARB")] + _glVertexAttrib3dvARB _VertexAttrib3dvARB { get; } + + delegate void _glVertexAttrib3dvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib3dvARB")] + _glVertexAttrib3dvARB_ptr _VertexAttrib3dvARB_ptr { get; } + + delegate void _glVertexAttrib3dvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib3dvARB")] + _glVertexAttrib3dvARB_intptr _VertexAttrib3dvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib3dvNV(uint index, double[] v); + [GlEntryPoint("glVertexAttrib3dvNV")] + _glVertexAttrib3dvNV _VertexAttrib3dvNV { get; } + + delegate void _glVertexAttrib3dvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib3dvNV")] + _glVertexAttrib3dvNV_ptr _VertexAttrib3dvNV_ptr { get; } + + delegate void _glVertexAttrib3dvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib3dvNV")] + _glVertexAttrib3dvNV_intptr _VertexAttrib3dvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib3f(uint index, float x, float y, float z); + [GlEntryPoint("glVertexAttrib3f")] + _glVertexAttrib3f _VertexAttrib3f { get; } + + // --- + + delegate void _glVertexAttrib3fARB(uint index, float x, float y, float z); + [GlEntryPoint("glVertexAttrib3fARB")] + _glVertexAttrib3fARB _VertexAttrib3fARB { get; } + + // --- + + delegate void _glVertexAttrib3fNV(uint index, float x, float y, float z); + [GlEntryPoint("glVertexAttrib3fNV")] + _glVertexAttrib3fNV _VertexAttrib3fNV { get; } + + // --- + + delegate void _glVertexAttrib3fv(uint index, float[] v); + [GlEntryPoint("glVertexAttrib3fv")] + _glVertexAttrib3fv _VertexAttrib3fv { get; } + + delegate void _glVertexAttrib3fv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib3fv")] + _glVertexAttrib3fv_ptr _VertexAttrib3fv_ptr { get; } + + delegate void _glVertexAttrib3fv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib3fv")] + _glVertexAttrib3fv_intptr _VertexAttrib3fv_intptr { get; } + + // --- + + delegate void _glVertexAttrib3fvARB(uint index, float[] v); + [GlEntryPoint("glVertexAttrib3fvARB")] + _glVertexAttrib3fvARB _VertexAttrib3fvARB { get; } + + delegate void _glVertexAttrib3fvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib3fvARB")] + _glVertexAttrib3fvARB_ptr _VertexAttrib3fvARB_ptr { get; } + + delegate void _glVertexAttrib3fvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib3fvARB")] + _glVertexAttrib3fvARB_intptr _VertexAttrib3fvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib3fvNV(uint index, float[] v); + [GlEntryPoint("glVertexAttrib3fvNV")] + _glVertexAttrib3fvNV _VertexAttrib3fvNV { get; } + + delegate void _glVertexAttrib3fvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib3fvNV")] + _glVertexAttrib3fvNV_ptr _VertexAttrib3fvNV_ptr { get; } + + delegate void _glVertexAttrib3fvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib3fvNV")] + _glVertexAttrib3fvNV_intptr _VertexAttrib3fvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib3hNV(uint index, float x, float y, float z); + [GlEntryPoint("glVertexAttrib3hNV")] + _glVertexAttrib3hNV _VertexAttrib3hNV { get; } + + // --- + + delegate void _glVertexAttrib3hvNV(uint index, float[] v); + [GlEntryPoint("glVertexAttrib3hvNV")] + _glVertexAttrib3hvNV _VertexAttrib3hvNV { get; } + + delegate void _glVertexAttrib3hvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib3hvNV")] + _glVertexAttrib3hvNV_ptr _VertexAttrib3hvNV_ptr { get; } + + delegate void _glVertexAttrib3hvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib3hvNV")] + _glVertexAttrib3hvNV_intptr _VertexAttrib3hvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib3s(uint index, short x, short y, short z); + [GlEntryPoint("glVertexAttrib3s")] + _glVertexAttrib3s _VertexAttrib3s { get; } + + // --- + + delegate void _glVertexAttrib3sARB(uint index, short x, short y, short z); + [GlEntryPoint("glVertexAttrib3sARB")] + _glVertexAttrib3sARB _VertexAttrib3sARB { get; } + + // --- + + delegate void _glVertexAttrib3sNV(uint index, short x, short y, short z); + [GlEntryPoint("glVertexAttrib3sNV")] + _glVertexAttrib3sNV _VertexAttrib3sNV { get; } + + // --- + + delegate void _glVertexAttrib3sv(uint index, short[] v); + [GlEntryPoint("glVertexAttrib3sv")] + _glVertexAttrib3sv _VertexAttrib3sv { get; } + + delegate void _glVertexAttrib3sv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib3sv")] + _glVertexAttrib3sv_ptr _VertexAttrib3sv_ptr { get; } + + delegate void _glVertexAttrib3sv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib3sv")] + _glVertexAttrib3sv_intptr _VertexAttrib3sv_intptr { get; } + + // --- + + delegate void _glVertexAttrib3svARB(uint index, short[] v); + [GlEntryPoint("glVertexAttrib3svARB")] + _glVertexAttrib3svARB _VertexAttrib3svARB { get; } + + delegate void _glVertexAttrib3svARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib3svARB")] + _glVertexAttrib3svARB_ptr _VertexAttrib3svARB_ptr { get; } + + delegate void _glVertexAttrib3svARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib3svARB")] + _glVertexAttrib3svARB_intptr _VertexAttrib3svARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib3svNV(uint index, short[] v); + [GlEntryPoint("glVertexAttrib3svNV")] + _glVertexAttrib3svNV _VertexAttrib3svNV { get; } + + delegate void _glVertexAttrib3svNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib3svNV")] + _glVertexAttrib3svNV_ptr _VertexAttrib3svNV_ptr { get; } + + delegate void _glVertexAttrib3svNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib3svNV")] + _glVertexAttrib3svNV_intptr _VertexAttrib3svNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib4Nbv(uint index, sbyte[] v); + [GlEntryPoint("glVertexAttrib4Nbv")] + _glVertexAttrib4Nbv _VertexAttrib4Nbv { get; } + + delegate void _glVertexAttrib4Nbv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4Nbv")] + _glVertexAttrib4Nbv_ptr _VertexAttrib4Nbv_ptr { get; } + + delegate void _glVertexAttrib4Nbv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4Nbv")] + _glVertexAttrib4Nbv_intptr _VertexAttrib4Nbv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4NbvARB(uint index, sbyte[] v); + [GlEntryPoint("glVertexAttrib4NbvARB")] + _glVertexAttrib4NbvARB _VertexAttrib4NbvARB { get; } + + delegate void _glVertexAttrib4NbvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4NbvARB")] + _glVertexAttrib4NbvARB_ptr _VertexAttrib4NbvARB_ptr { get; } + + delegate void _glVertexAttrib4NbvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4NbvARB")] + _glVertexAttrib4NbvARB_intptr _VertexAttrib4NbvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4Niv(uint index, int[] v); + [GlEntryPoint("glVertexAttrib4Niv")] + _glVertexAttrib4Niv _VertexAttrib4Niv { get; } + + delegate void _glVertexAttrib4Niv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4Niv")] + _glVertexAttrib4Niv_ptr _VertexAttrib4Niv_ptr { get; } + + delegate void _glVertexAttrib4Niv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4Niv")] + _glVertexAttrib4Niv_intptr _VertexAttrib4Niv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4NivARB(uint index, int[] v); + [GlEntryPoint("glVertexAttrib4NivARB")] + _glVertexAttrib4NivARB _VertexAttrib4NivARB { get; } + + delegate void _glVertexAttrib4NivARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4NivARB")] + _glVertexAttrib4NivARB_ptr _VertexAttrib4NivARB_ptr { get; } + + delegate void _glVertexAttrib4NivARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4NivARB")] + _glVertexAttrib4NivARB_intptr _VertexAttrib4NivARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4Nsv(uint index, short[] v); + [GlEntryPoint("glVertexAttrib4Nsv")] + _glVertexAttrib4Nsv _VertexAttrib4Nsv { get; } + + delegate void _glVertexAttrib4Nsv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4Nsv")] + _glVertexAttrib4Nsv_ptr _VertexAttrib4Nsv_ptr { get; } + + delegate void _glVertexAttrib4Nsv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4Nsv")] + _glVertexAttrib4Nsv_intptr _VertexAttrib4Nsv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4NsvARB(uint index, short[] v); + [GlEntryPoint("glVertexAttrib4NsvARB")] + _glVertexAttrib4NsvARB _VertexAttrib4NsvARB { get; } + + delegate void _glVertexAttrib4NsvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4NsvARB")] + _glVertexAttrib4NsvARB_ptr _VertexAttrib4NsvARB_ptr { get; } + + delegate void _glVertexAttrib4NsvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4NsvARB")] + _glVertexAttrib4NsvARB_intptr _VertexAttrib4NsvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4Nub(uint index, byte x, byte y, byte z, byte w); + [GlEntryPoint("glVertexAttrib4Nub")] + _glVertexAttrib4Nub _VertexAttrib4Nub { get; } + + // --- + + delegate void _glVertexAttrib4NubARB(uint index, byte x, byte y, byte z, byte w); + [GlEntryPoint("glVertexAttrib4NubARB")] + _glVertexAttrib4NubARB _VertexAttrib4NubARB { get; } + + // --- + + delegate void _glVertexAttrib4Nubv(uint index, byte[] v); + [GlEntryPoint("glVertexAttrib4Nubv")] + _glVertexAttrib4Nubv _VertexAttrib4Nubv { get; } + + delegate void _glVertexAttrib4Nubv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4Nubv")] + _glVertexAttrib4Nubv_ptr _VertexAttrib4Nubv_ptr { get; } + + delegate void _glVertexAttrib4Nubv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4Nubv")] + _glVertexAttrib4Nubv_intptr _VertexAttrib4Nubv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4NubvARB(uint index, byte[] v); + [GlEntryPoint("glVertexAttrib4NubvARB")] + _glVertexAttrib4NubvARB _VertexAttrib4NubvARB { get; } + + delegate void _glVertexAttrib4NubvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4NubvARB")] + _glVertexAttrib4NubvARB_ptr _VertexAttrib4NubvARB_ptr { get; } + + delegate void _glVertexAttrib4NubvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4NubvARB")] + _glVertexAttrib4NubvARB_intptr _VertexAttrib4NubvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4Nuiv(uint index, uint[] v); + [GlEntryPoint("glVertexAttrib4Nuiv")] + _glVertexAttrib4Nuiv _VertexAttrib4Nuiv { get; } + + delegate void _glVertexAttrib4Nuiv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4Nuiv")] + _glVertexAttrib4Nuiv_ptr _VertexAttrib4Nuiv_ptr { get; } + + delegate void _glVertexAttrib4Nuiv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4Nuiv")] + _glVertexAttrib4Nuiv_intptr _VertexAttrib4Nuiv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4NuivARB(uint index, uint[] v); + [GlEntryPoint("glVertexAttrib4NuivARB")] + _glVertexAttrib4NuivARB _VertexAttrib4NuivARB { get; } + + delegate void _glVertexAttrib4NuivARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4NuivARB")] + _glVertexAttrib4NuivARB_ptr _VertexAttrib4NuivARB_ptr { get; } + + delegate void _glVertexAttrib4NuivARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4NuivARB")] + _glVertexAttrib4NuivARB_intptr _VertexAttrib4NuivARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4Nusv(uint index, ushort[] v); + [GlEntryPoint("glVertexAttrib4Nusv")] + _glVertexAttrib4Nusv _VertexAttrib4Nusv { get; } + + delegate void _glVertexAttrib4Nusv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4Nusv")] + _glVertexAttrib4Nusv_ptr _VertexAttrib4Nusv_ptr { get; } + + delegate void _glVertexAttrib4Nusv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4Nusv")] + _glVertexAttrib4Nusv_intptr _VertexAttrib4Nusv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4NusvARB(uint index, ushort[] v); + [GlEntryPoint("glVertexAttrib4NusvARB")] + _glVertexAttrib4NusvARB _VertexAttrib4NusvARB { get; } + + delegate void _glVertexAttrib4NusvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4NusvARB")] + _glVertexAttrib4NusvARB_ptr _VertexAttrib4NusvARB_ptr { get; } + + delegate void _glVertexAttrib4NusvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4NusvARB")] + _glVertexAttrib4NusvARB_intptr _VertexAttrib4NusvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4bv(uint index, sbyte[] v); + [GlEntryPoint("glVertexAttrib4bv")] + _glVertexAttrib4bv _VertexAttrib4bv { get; } + + delegate void _glVertexAttrib4bv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4bv")] + _glVertexAttrib4bv_ptr _VertexAttrib4bv_ptr { get; } + + delegate void _glVertexAttrib4bv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4bv")] + _glVertexAttrib4bv_intptr _VertexAttrib4bv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4bvARB(uint index, sbyte[] v); + [GlEntryPoint("glVertexAttrib4bvARB")] + _glVertexAttrib4bvARB _VertexAttrib4bvARB { get; } + + delegate void _glVertexAttrib4bvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4bvARB")] + _glVertexAttrib4bvARB_ptr _VertexAttrib4bvARB_ptr { get; } + + delegate void _glVertexAttrib4bvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4bvARB")] + _glVertexAttrib4bvARB_intptr _VertexAttrib4bvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4d(uint index, double x, double y, double z, double w); + [GlEntryPoint("glVertexAttrib4d")] + _glVertexAttrib4d _VertexAttrib4d { get; } + + // --- + + delegate void _glVertexAttrib4dARB(uint index, double x, double y, double z, double w); + [GlEntryPoint("glVertexAttrib4dARB")] + _glVertexAttrib4dARB _VertexAttrib4dARB { get; } + + // --- + + delegate void _glVertexAttrib4dNV(uint index, double x, double y, double z, double w); + [GlEntryPoint("glVertexAttrib4dNV")] + _glVertexAttrib4dNV _VertexAttrib4dNV { get; } + + // --- + + delegate void _glVertexAttrib4dv(uint index, double[] v); + [GlEntryPoint("glVertexAttrib4dv")] + _glVertexAttrib4dv _VertexAttrib4dv { get; } + + delegate void _glVertexAttrib4dv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4dv")] + _glVertexAttrib4dv_ptr _VertexAttrib4dv_ptr { get; } + + delegate void _glVertexAttrib4dv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4dv")] + _glVertexAttrib4dv_intptr _VertexAttrib4dv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4dvARB(uint index, double[] v); + [GlEntryPoint("glVertexAttrib4dvARB")] + _glVertexAttrib4dvARB _VertexAttrib4dvARB { get; } + + delegate void _glVertexAttrib4dvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4dvARB")] + _glVertexAttrib4dvARB_ptr _VertexAttrib4dvARB_ptr { get; } + + delegate void _glVertexAttrib4dvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4dvARB")] + _glVertexAttrib4dvARB_intptr _VertexAttrib4dvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4dvNV(uint index, double[] v); + [GlEntryPoint("glVertexAttrib4dvNV")] + _glVertexAttrib4dvNV _VertexAttrib4dvNV { get; } + + delegate void _glVertexAttrib4dvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4dvNV")] + _glVertexAttrib4dvNV_ptr _VertexAttrib4dvNV_ptr { get; } + + delegate void _glVertexAttrib4dvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4dvNV")] + _glVertexAttrib4dvNV_intptr _VertexAttrib4dvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib4f(uint index, float x, float y, float z, float w); + [GlEntryPoint("glVertexAttrib4f")] + _glVertexAttrib4f _VertexAttrib4f { get; } + + // --- + + delegate void _glVertexAttrib4fARB(uint index, float x, float y, float z, float w); + [GlEntryPoint("glVertexAttrib4fARB")] + _glVertexAttrib4fARB _VertexAttrib4fARB { get; } + + // --- + + delegate void _glVertexAttrib4fNV(uint index, float x, float y, float z, float w); + [GlEntryPoint("glVertexAttrib4fNV")] + _glVertexAttrib4fNV _VertexAttrib4fNV { get; } + + // --- + + delegate void _glVertexAttrib4fv(uint index, float[] v); + [GlEntryPoint("glVertexAttrib4fv")] + _glVertexAttrib4fv _VertexAttrib4fv { get; } + + delegate void _glVertexAttrib4fv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4fv")] + _glVertexAttrib4fv_ptr _VertexAttrib4fv_ptr { get; } + + delegate void _glVertexAttrib4fv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4fv")] + _glVertexAttrib4fv_intptr _VertexAttrib4fv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4fvARB(uint index, float[] v); + [GlEntryPoint("glVertexAttrib4fvARB")] + _glVertexAttrib4fvARB _VertexAttrib4fvARB { get; } + + delegate void _glVertexAttrib4fvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4fvARB")] + _glVertexAttrib4fvARB_ptr _VertexAttrib4fvARB_ptr { get; } + + delegate void _glVertexAttrib4fvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4fvARB")] + _glVertexAttrib4fvARB_intptr _VertexAttrib4fvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4fvNV(uint index, float[] v); + [GlEntryPoint("glVertexAttrib4fvNV")] + _glVertexAttrib4fvNV _VertexAttrib4fvNV { get; } + + delegate void _glVertexAttrib4fvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4fvNV")] + _glVertexAttrib4fvNV_ptr _VertexAttrib4fvNV_ptr { get; } + + delegate void _glVertexAttrib4fvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4fvNV")] + _glVertexAttrib4fvNV_intptr _VertexAttrib4fvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib4hNV(uint index, float x, float y, float z, float w); + [GlEntryPoint("glVertexAttrib4hNV")] + _glVertexAttrib4hNV _VertexAttrib4hNV { get; } + + // --- + + delegate void _glVertexAttrib4hvNV(uint index, float[] v); + [GlEntryPoint("glVertexAttrib4hvNV")] + _glVertexAttrib4hvNV _VertexAttrib4hvNV { get; } + + delegate void _glVertexAttrib4hvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4hvNV")] + _glVertexAttrib4hvNV_ptr _VertexAttrib4hvNV_ptr { get; } + + delegate void _glVertexAttrib4hvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4hvNV")] + _glVertexAttrib4hvNV_intptr _VertexAttrib4hvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib4iv(uint index, int[] v); + [GlEntryPoint("glVertexAttrib4iv")] + _glVertexAttrib4iv _VertexAttrib4iv { get; } + + delegate void _glVertexAttrib4iv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4iv")] + _glVertexAttrib4iv_ptr _VertexAttrib4iv_ptr { get; } + + delegate void _glVertexAttrib4iv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4iv")] + _glVertexAttrib4iv_intptr _VertexAttrib4iv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4ivARB(uint index, int[] v); + [GlEntryPoint("glVertexAttrib4ivARB")] + _glVertexAttrib4ivARB _VertexAttrib4ivARB { get; } + + delegate void _glVertexAttrib4ivARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4ivARB")] + _glVertexAttrib4ivARB_ptr _VertexAttrib4ivARB_ptr { get; } + + delegate void _glVertexAttrib4ivARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4ivARB")] + _glVertexAttrib4ivARB_intptr _VertexAttrib4ivARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4s(uint index, short x, short y, short z, short w); + [GlEntryPoint("glVertexAttrib4s")] + _glVertexAttrib4s _VertexAttrib4s { get; } + + // --- + + delegate void _glVertexAttrib4sARB(uint index, short x, short y, short z, short w); + [GlEntryPoint("glVertexAttrib4sARB")] + _glVertexAttrib4sARB _VertexAttrib4sARB { get; } + + // --- + + delegate void _glVertexAttrib4sNV(uint index, short x, short y, short z, short w); + [GlEntryPoint("glVertexAttrib4sNV")] + _glVertexAttrib4sNV _VertexAttrib4sNV { get; } + + // --- + + delegate void _glVertexAttrib4sv(uint index, short[] v); + [GlEntryPoint("glVertexAttrib4sv")] + _glVertexAttrib4sv _VertexAttrib4sv { get; } + + delegate void _glVertexAttrib4sv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4sv")] + _glVertexAttrib4sv_ptr _VertexAttrib4sv_ptr { get; } + + delegate void _glVertexAttrib4sv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4sv")] + _glVertexAttrib4sv_intptr _VertexAttrib4sv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4svARB(uint index, short[] v); + [GlEntryPoint("glVertexAttrib4svARB")] + _glVertexAttrib4svARB _VertexAttrib4svARB { get; } + + delegate void _glVertexAttrib4svARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4svARB")] + _glVertexAttrib4svARB_ptr _VertexAttrib4svARB_ptr { get; } + + delegate void _glVertexAttrib4svARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4svARB")] + _glVertexAttrib4svARB_intptr _VertexAttrib4svARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4svNV(uint index, short[] v); + [GlEntryPoint("glVertexAttrib4svNV")] + _glVertexAttrib4svNV _VertexAttrib4svNV { get; } + + delegate void _glVertexAttrib4svNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4svNV")] + _glVertexAttrib4svNV_ptr _VertexAttrib4svNV_ptr { get; } + + delegate void _glVertexAttrib4svNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4svNV")] + _glVertexAttrib4svNV_intptr _VertexAttrib4svNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib4ubNV(uint index, byte x, byte y, byte z, byte w); + [GlEntryPoint("glVertexAttrib4ubNV")] + _glVertexAttrib4ubNV _VertexAttrib4ubNV { get; } + + // --- + + delegate void _glVertexAttrib4ubv(uint index, byte[] v); + [GlEntryPoint("glVertexAttrib4ubv")] + _glVertexAttrib4ubv _VertexAttrib4ubv { get; } + + delegate void _glVertexAttrib4ubv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4ubv")] + _glVertexAttrib4ubv_ptr _VertexAttrib4ubv_ptr { get; } + + delegate void _glVertexAttrib4ubv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4ubv")] + _glVertexAttrib4ubv_intptr _VertexAttrib4ubv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4ubvARB(uint index, byte[] v); + [GlEntryPoint("glVertexAttrib4ubvARB")] + _glVertexAttrib4ubvARB _VertexAttrib4ubvARB { get; } + + delegate void _glVertexAttrib4ubvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4ubvARB")] + _glVertexAttrib4ubvARB_ptr _VertexAttrib4ubvARB_ptr { get; } + + delegate void _glVertexAttrib4ubvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4ubvARB")] + _glVertexAttrib4ubvARB_intptr _VertexAttrib4ubvARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4ubvNV(uint index, byte[] v); + [GlEntryPoint("glVertexAttrib4ubvNV")] + _glVertexAttrib4ubvNV _VertexAttrib4ubvNV { get; } + + delegate void _glVertexAttrib4ubvNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4ubvNV")] + _glVertexAttrib4ubvNV_ptr _VertexAttrib4ubvNV_ptr { get; } + + delegate void _glVertexAttrib4ubvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4ubvNV")] + _glVertexAttrib4ubvNV_intptr _VertexAttrib4ubvNV_intptr { get; } + + // --- + + delegate void _glVertexAttrib4uiv(uint index, uint[] v); + [GlEntryPoint("glVertexAttrib4uiv")] + _glVertexAttrib4uiv _VertexAttrib4uiv { get; } + + delegate void _glVertexAttrib4uiv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4uiv")] + _glVertexAttrib4uiv_ptr _VertexAttrib4uiv_ptr { get; } + + delegate void _glVertexAttrib4uiv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4uiv")] + _glVertexAttrib4uiv_intptr _VertexAttrib4uiv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4uivARB(uint index, uint[] v); + [GlEntryPoint("glVertexAttrib4uivARB")] + _glVertexAttrib4uivARB _VertexAttrib4uivARB { get; } + + delegate void _glVertexAttrib4uivARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4uivARB")] + _glVertexAttrib4uivARB_ptr _VertexAttrib4uivARB_ptr { get; } + + delegate void _glVertexAttrib4uivARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4uivARB")] + _glVertexAttrib4uivARB_intptr _VertexAttrib4uivARB_intptr { get; } + + // --- + + delegate void _glVertexAttrib4usv(uint index, ushort[] v); + [GlEntryPoint("glVertexAttrib4usv")] + _glVertexAttrib4usv _VertexAttrib4usv { get; } + + delegate void _glVertexAttrib4usv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4usv")] + _glVertexAttrib4usv_ptr _VertexAttrib4usv_ptr { get; } + + delegate void _glVertexAttrib4usv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4usv")] + _glVertexAttrib4usv_intptr _VertexAttrib4usv_intptr { get; } + + // --- + + delegate void _glVertexAttrib4usvARB(uint index, ushort[] v); + [GlEntryPoint("glVertexAttrib4usvARB")] + _glVertexAttrib4usvARB _VertexAttrib4usvARB { get; } + + delegate void _glVertexAttrib4usvARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttrib4usvARB")] + _glVertexAttrib4usvARB_ptr _VertexAttrib4usvARB_ptr { get; } + + delegate void _glVertexAttrib4usvARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttrib4usvARB")] + _glVertexAttrib4usvARB_intptr _VertexAttrib4usvARB_intptr { get; } + + // --- + + delegate void _glVertexAttribArrayObjectATI(uint index, int size, VertexAttribPointerType type, bool normalized, int stride, uint buffer, uint offset); + [GlEntryPoint("glVertexAttribArrayObjectATI")] + _glVertexAttribArrayObjectATI _VertexAttribArrayObjectATI { get; } + + // --- + + delegate void _glVertexAttribBinding(uint attribindex, uint bindingindex); + [GlEntryPoint("glVertexAttribBinding")] + _glVertexAttribBinding _VertexAttribBinding { get; } + + // --- + + delegate void _glVertexAttribDivisor(uint index, uint divisor); + [GlEntryPoint("glVertexAttribDivisor")] + _glVertexAttribDivisor _VertexAttribDivisor { get; } + + // --- + + delegate void _glVertexAttribDivisorANGLE(uint index, uint divisor); + [GlEntryPoint("glVertexAttribDivisorANGLE")] + _glVertexAttribDivisorANGLE _VertexAttribDivisorANGLE { get; } + + // --- + + delegate void _glVertexAttribDivisorARB(uint index, uint divisor); + [GlEntryPoint("glVertexAttribDivisorARB")] + _glVertexAttribDivisorARB _VertexAttribDivisorARB { get; } + + // --- + + delegate void _glVertexAttribDivisorEXT(uint index, uint divisor); + [GlEntryPoint("glVertexAttribDivisorEXT")] + _glVertexAttribDivisorEXT _VertexAttribDivisorEXT { get; } + + // --- + + delegate void _glVertexAttribDivisorNV(uint index, uint divisor); + [GlEntryPoint("glVertexAttribDivisorNV")] + _glVertexAttribDivisorNV _VertexAttribDivisorNV { get; } + + // --- + + delegate void _glVertexAttribFormat(uint attribindex, int size, VertexAttribType type, bool normalized, uint relativeoffset); + [GlEntryPoint("glVertexAttribFormat")] + _glVertexAttribFormat _VertexAttribFormat { get; } + + // --- + + delegate void _glVertexAttribFormatNV(uint index, int size, VertexAttribType type, bool normalized, int stride); + [GlEntryPoint("glVertexAttribFormatNV")] + _glVertexAttribFormatNV _VertexAttribFormatNV { get; } + + // --- + + delegate void _glVertexAttribI1i(uint index, int x); + [GlEntryPoint("glVertexAttribI1i")] + _glVertexAttribI1i _VertexAttribI1i { get; } + + // --- + + delegate void _glVertexAttribI1iEXT(uint index, int x); + [GlEntryPoint("glVertexAttribI1iEXT")] + _glVertexAttribI1iEXT _VertexAttribI1iEXT { get; } + + // --- + + delegate void _glVertexAttribI1iv(uint index, int[] v); + [GlEntryPoint("glVertexAttribI1iv")] + _glVertexAttribI1iv _VertexAttribI1iv { get; } + + delegate void _glVertexAttribI1iv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI1iv")] + _glVertexAttribI1iv_ptr _VertexAttribI1iv_ptr { get; } + + delegate void _glVertexAttribI1iv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI1iv")] + _glVertexAttribI1iv_intptr _VertexAttribI1iv_intptr { get; } + + // --- + + delegate void _glVertexAttribI1ivEXT(uint index, int[] v); + [GlEntryPoint("glVertexAttribI1ivEXT")] + _glVertexAttribI1ivEXT _VertexAttribI1ivEXT { get; } + + delegate void _glVertexAttribI1ivEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI1ivEXT")] + _glVertexAttribI1ivEXT_ptr _VertexAttribI1ivEXT_ptr { get; } + + delegate void _glVertexAttribI1ivEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI1ivEXT")] + _glVertexAttribI1ivEXT_intptr _VertexAttribI1ivEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribI1ui(uint index, uint x); + [GlEntryPoint("glVertexAttribI1ui")] + _glVertexAttribI1ui _VertexAttribI1ui { get; } + + // --- + + delegate void _glVertexAttribI1uiEXT(uint index, uint x); + [GlEntryPoint("glVertexAttribI1uiEXT")] + _glVertexAttribI1uiEXT _VertexAttribI1uiEXT { get; } + + // --- + + delegate void _glVertexAttribI1uiv(uint index, uint[] v); + [GlEntryPoint("glVertexAttribI1uiv")] + _glVertexAttribI1uiv _VertexAttribI1uiv { get; } + + delegate void _glVertexAttribI1uiv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI1uiv")] + _glVertexAttribI1uiv_ptr _VertexAttribI1uiv_ptr { get; } + + delegate void _glVertexAttribI1uiv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI1uiv")] + _glVertexAttribI1uiv_intptr _VertexAttribI1uiv_intptr { get; } + + // --- + + delegate void _glVertexAttribI1uivEXT(uint index, uint[] v); + [GlEntryPoint("glVertexAttribI1uivEXT")] + _glVertexAttribI1uivEXT _VertexAttribI1uivEXT { get; } + + delegate void _glVertexAttribI1uivEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI1uivEXT")] + _glVertexAttribI1uivEXT_ptr _VertexAttribI1uivEXT_ptr { get; } + + delegate void _glVertexAttribI1uivEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI1uivEXT")] + _glVertexAttribI1uivEXT_intptr _VertexAttribI1uivEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribI2i(uint index, int x, int y); + [GlEntryPoint("glVertexAttribI2i")] + _glVertexAttribI2i _VertexAttribI2i { get; } + + // --- + + delegate void _glVertexAttribI2iEXT(uint index, int x, int y); + [GlEntryPoint("glVertexAttribI2iEXT")] + _glVertexAttribI2iEXT _VertexAttribI2iEXT { get; } + + // --- + + delegate void _glVertexAttribI2iv(uint index, int[] v); + [GlEntryPoint("glVertexAttribI2iv")] + _glVertexAttribI2iv _VertexAttribI2iv { get; } + + delegate void _glVertexAttribI2iv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI2iv")] + _glVertexAttribI2iv_ptr _VertexAttribI2iv_ptr { get; } + + delegate void _glVertexAttribI2iv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI2iv")] + _glVertexAttribI2iv_intptr _VertexAttribI2iv_intptr { get; } + + // --- + + delegate void _glVertexAttribI2ivEXT(uint index, int[] v); + [GlEntryPoint("glVertexAttribI2ivEXT")] + _glVertexAttribI2ivEXT _VertexAttribI2ivEXT { get; } + + delegate void _glVertexAttribI2ivEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI2ivEXT")] + _glVertexAttribI2ivEXT_ptr _VertexAttribI2ivEXT_ptr { get; } + + delegate void _glVertexAttribI2ivEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI2ivEXT")] + _glVertexAttribI2ivEXT_intptr _VertexAttribI2ivEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribI2ui(uint index, uint x, uint y); + [GlEntryPoint("glVertexAttribI2ui")] + _glVertexAttribI2ui _VertexAttribI2ui { get; } + + // --- + + delegate void _glVertexAttribI2uiEXT(uint index, uint x, uint y); + [GlEntryPoint("glVertexAttribI2uiEXT")] + _glVertexAttribI2uiEXT _VertexAttribI2uiEXT { get; } + + // --- + + delegate void _glVertexAttribI2uiv(uint index, uint[] v); + [GlEntryPoint("glVertexAttribI2uiv")] + _glVertexAttribI2uiv _VertexAttribI2uiv { get; } + + delegate void _glVertexAttribI2uiv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI2uiv")] + _glVertexAttribI2uiv_ptr _VertexAttribI2uiv_ptr { get; } + + delegate void _glVertexAttribI2uiv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI2uiv")] + _glVertexAttribI2uiv_intptr _VertexAttribI2uiv_intptr { get; } + + // --- + + delegate void _glVertexAttribI2uivEXT(uint index, uint[] v); + [GlEntryPoint("glVertexAttribI2uivEXT")] + _glVertexAttribI2uivEXT _VertexAttribI2uivEXT { get; } + + delegate void _glVertexAttribI2uivEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI2uivEXT")] + _glVertexAttribI2uivEXT_ptr _VertexAttribI2uivEXT_ptr { get; } + + delegate void _glVertexAttribI2uivEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI2uivEXT")] + _glVertexAttribI2uivEXT_intptr _VertexAttribI2uivEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribI3i(uint index, int x, int y, int z); + [GlEntryPoint("glVertexAttribI3i")] + _glVertexAttribI3i _VertexAttribI3i { get; } + + // --- + + delegate void _glVertexAttribI3iEXT(uint index, int x, int y, int z); + [GlEntryPoint("glVertexAttribI3iEXT")] + _glVertexAttribI3iEXT _VertexAttribI3iEXT { get; } + + // --- + + delegate void _glVertexAttribI3iv(uint index, int[] v); + [GlEntryPoint("glVertexAttribI3iv")] + _glVertexAttribI3iv _VertexAttribI3iv { get; } + + delegate void _glVertexAttribI3iv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI3iv")] + _glVertexAttribI3iv_ptr _VertexAttribI3iv_ptr { get; } + + delegate void _glVertexAttribI3iv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI3iv")] + _glVertexAttribI3iv_intptr _VertexAttribI3iv_intptr { get; } + + // --- + + delegate void _glVertexAttribI3ivEXT(uint index, int[] v); + [GlEntryPoint("glVertexAttribI3ivEXT")] + _glVertexAttribI3ivEXT _VertexAttribI3ivEXT { get; } + + delegate void _glVertexAttribI3ivEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI3ivEXT")] + _glVertexAttribI3ivEXT_ptr _VertexAttribI3ivEXT_ptr { get; } + + delegate void _glVertexAttribI3ivEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI3ivEXT")] + _glVertexAttribI3ivEXT_intptr _VertexAttribI3ivEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribI3ui(uint index, uint x, uint y, uint z); + [GlEntryPoint("glVertexAttribI3ui")] + _glVertexAttribI3ui _VertexAttribI3ui { get; } + + // --- + + delegate void _glVertexAttribI3uiEXT(uint index, uint x, uint y, uint z); + [GlEntryPoint("glVertexAttribI3uiEXT")] + _glVertexAttribI3uiEXT _VertexAttribI3uiEXT { get; } + + // --- + + delegate void _glVertexAttribI3uiv(uint index, uint[] v); + [GlEntryPoint("glVertexAttribI3uiv")] + _glVertexAttribI3uiv _VertexAttribI3uiv { get; } + + delegate void _glVertexAttribI3uiv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI3uiv")] + _glVertexAttribI3uiv_ptr _VertexAttribI3uiv_ptr { get; } + + delegate void _glVertexAttribI3uiv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI3uiv")] + _glVertexAttribI3uiv_intptr _VertexAttribI3uiv_intptr { get; } + + // --- + + delegate void _glVertexAttribI3uivEXT(uint index, uint[] v); + [GlEntryPoint("glVertexAttribI3uivEXT")] + _glVertexAttribI3uivEXT _VertexAttribI3uivEXT { get; } + + delegate void _glVertexAttribI3uivEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI3uivEXT")] + _glVertexAttribI3uivEXT_ptr _VertexAttribI3uivEXT_ptr { get; } + + delegate void _glVertexAttribI3uivEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI3uivEXT")] + _glVertexAttribI3uivEXT_intptr _VertexAttribI3uivEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribI4bv(uint index, sbyte[] v); + [GlEntryPoint("glVertexAttribI4bv")] + _glVertexAttribI4bv _VertexAttribI4bv { get; } + + delegate void _glVertexAttribI4bv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI4bv")] + _glVertexAttribI4bv_ptr _VertexAttribI4bv_ptr { get; } + + delegate void _glVertexAttribI4bv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI4bv")] + _glVertexAttribI4bv_intptr _VertexAttribI4bv_intptr { get; } + + // --- + + delegate void _glVertexAttribI4bvEXT(uint index, sbyte[] v); + [GlEntryPoint("glVertexAttribI4bvEXT")] + _glVertexAttribI4bvEXT _VertexAttribI4bvEXT { get; } + + delegate void _glVertexAttribI4bvEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI4bvEXT")] + _glVertexAttribI4bvEXT_ptr _VertexAttribI4bvEXT_ptr { get; } + + delegate void _glVertexAttribI4bvEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI4bvEXT")] + _glVertexAttribI4bvEXT_intptr _VertexAttribI4bvEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribI4i(uint index, int x, int y, int z, int w); + [GlEntryPoint("glVertexAttribI4i")] + _glVertexAttribI4i _VertexAttribI4i { get; } + + // --- + + delegate void _glVertexAttribI4iEXT(uint index, int x, int y, int z, int w); + [GlEntryPoint("glVertexAttribI4iEXT")] + _glVertexAttribI4iEXT _VertexAttribI4iEXT { get; } + + // --- + + delegate void _glVertexAttribI4iv(uint index, int[] v); + [GlEntryPoint("glVertexAttribI4iv")] + _glVertexAttribI4iv _VertexAttribI4iv { get; } + + delegate void _glVertexAttribI4iv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI4iv")] + _glVertexAttribI4iv_ptr _VertexAttribI4iv_ptr { get; } + + delegate void _glVertexAttribI4iv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI4iv")] + _glVertexAttribI4iv_intptr _VertexAttribI4iv_intptr { get; } + + // --- + + delegate void _glVertexAttribI4ivEXT(uint index, int[] v); + [GlEntryPoint("glVertexAttribI4ivEXT")] + _glVertexAttribI4ivEXT _VertexAttribI4ivEXT { get; } + + delegate void _glVertexAttribI4ivEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI4ivEXT")] + _glVertexAttribI4ivEXT_ptr _VertexAttribI4ivEXT_ptr { get; } + + delegate void _glVertexAttribI4ivEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI4ivEXT")] + _glVertexAttribI4ivEXT_intptr _VertexAttribI4ivEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribI4sv(uint index, short[] v); + [GlEntryPoint("glVertexAttribI4sv")] + _glVertexAttribI4sv _VertexAttribI4sv { get; } + + delegate void _glVertexAttribI4sv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI4sv")] + _glVertexAttribI4sv_ptr _VertexAttribI4sv_ptr { get; } + + delegate void _glVertexAttribI4sv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI4sv")] + _glVertexAttribI4sv_intptr _VertexAttribI4sv_intptr { get; } + + // --- + + delegate void _glVertexAttribI4svEXT(uint index, short[] v); + [GlEntryPoint("glVertexAttribI4svEXT")] + _glVertexAttribI4svEXT _VertexAttribI4svEXT { get; } + + delegate void _glVertexAttribI4svEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI4svEXT")] + _glVertexAttribI4svEXT_ptr _VertexAttribI4svEXT_ptr { get; } + + delegate void _glVertexAttribI4svEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI4svEXT")] + _glVertexAttribI4svEXT_intptr _VertexAttribI4svEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribI4ubv(uint index, byte[] v); + [GlEntryPoint("glVertexAttribI4ubv")] + _glVertexAttribI4ubv _VertexAttribI4ubv { get; } + + delegate void _glVertexAttribI4ubv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI4ubv")] + _glVertexAttribI4ubv_ptr _VertexAttribI4ubv_ptr { get; } + + delegate void _glVertexAttribI4ubv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI4ubv")] + _glVertexAttribI4ubv_intptr _VertexAttribI4ubv_intptr { get; } + + // --- + + delegate void _glVertexAttribI4ubvEXT(uint index, byte[] v); + [GlEntryPoint("glVertexAttribI4ubvEXT")] + _glVertexAttribI4ubvEXT _VertexAttribI4ubvEXT { get; } + + delegate void _glVertexAttribI4ubvEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI4ubvEXT")] + _glVertexAttribI4ubvEXT_ptr _VertexAttribI4ubvEXT_ptr { get; } + + delegate void _glVertexAttribI4ubvEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI4ubvEXT")] + _glVertexAttribI4ubvEXT_intptr _VertexAttribI4ubvEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribI4ui(uint index, uint x, uint y, uint z, uint w); + [GlEntryPoint("glVertexAttribI4ui")] + _glVertexAttribI4ui _VertexAttribI4ui { get; } + + // --- + + delegate void _glVertexAttribI4uiEXT(uint index, uint x, uint y, uint z, uint w); + [GlEntryPoint("glVertexAttribI4uiEXT")] + _glVertexAttribI4uiEXT _VertexAttribI4uiEXT { get; } + + // --- + + delegate void _glVertexAttribI4uiv(uint index, uint[] v); + [GlEntryPoint("glVertexAttribI4uiv")] + _glVertexAttribI4uiv _VertexAttribI4uiv { get; } + + delegate void _glVertexAttribI4uiv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI4uiv")] + _glVertexAttribI4uiv_ptr _VertexAttribI4uiv_ptr { get; } + + delegate void _glVertexAttribI4uiv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI4uiv")] + _glVertexAttribI4uiv_intptr _VertexAttribI4uiv_intptr { get; } + + // --- + + delegate void _glVertexAttribI4uivEXT(uint index, uint[] v); + [GlEntryPoint("glVertexAttribI4uivEXT")] + _glVertexAttribI4uivEXT _VertexAttribI4uivEXT { get; } + + delegate void _glVertexAttribI4uivEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI4uivEXT")] + _glVertexAttribI4uivEXT_ptr _VertexAttribI4uivEXT_ptr { get; } + + delegate void _glVertexAttribI4uivEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI4uivEXT")] + _glVertexAttribI4uivEXT_intptr _VertexAttribI4uivEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribI4usv(uint index, ushort[] v); + [GlEntryPoint("glVertexAttribI4usv")] + _glVertexAttribI4usv _VertexAttribI4usv { get; } + + delegate void _glVertexAttribI4usv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI4usv")] + _glVertexAttribI4usv_ptr _VertexAttribI4usv_ptr { get; } + + delegate void _glVertexAttribI4usv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI4usv")] + _glVertexAttribI4usv_intptr _VertexAttribI4usv_intptr { get; } + + // --- + + delegate void _glVertexAttribI4usvEXT(uint index, ushort[] v); + [GlEntryPoint("glVertexAttribI4usvEXT")] + _glVertexAttribI4usvEXT _VertexAttribI4usvEXT { get; } + + delegate void _glVertexAttribI4usvEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribI4usvEXT")] + _glVertexAttribI4usvEXT_ptr _VertexAttribI4usvEXT_ptr { get; } + + delegate void _glVertexAttribI4usvEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribI4usvEXT")] + _glVertexAttribI4usvEXT_intptr _VertexAttribI4usvEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribIFormat(uint attribindex, int size, VertexAttribIType type, uint relativeoffset); + [GlEntryPoint("glVertexAttribIFormat")] + _glVertexAttribIFormat _VertexAttribIFormat { get; } + + // --- + + delegate void _glVertexAttribIFormatNV(uint index, int size, VertexAttribIType type, int stride); + [GlEntryPoint("glVertexAttribIFormatNV")] + _glVertexAttribIFormatNV _VertexAttribIFormatNV { get; } + + // --- + + delegate void _glVertexAttribIPointer(uint index, int size, VertexAttribIType type, int stride, IntPtr pointer); + [GlEntryPoint("glVertexAttribIPointer")] + _glVertexAttribIPointer _VertexAttribIPointer { get; } + + // --- + + delegate void _glVertexAttribIPointerEXT(uint index, int size, VertexAttribIType type, int stride, IntPtr pointer); + [GlEntryPoint("glVertexAttribIPointerEXT")] + _glVertexAttribIPointerEXT _VertexAttribIPointerEXT { get; } + + // --- + + delegate void _glVertexAttribL1d(uint index, double x); + [GlEntryPoint("glVertexAttribL1d")] + _glVertexAttribL1d _VertexAttribL1d { get; } + + // --- + + delegate void _glVertexAttribL1dEXT(uint index, double x); + [GlEntryPoint("glVertexAttribL1dEXT")] + _glVertexAttribL1dEXT _VertexAttribL1dEXT { get; } + + // --- + + delegate void _glVertexAttribL1dv(uint index, double[] v); + [GlEntryPoint("glVertexAttribL1dv")] + _glVertexAttribL1dv _VertexAttribL1dv { get; } + + delegate void _glVertexAttribL1dv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL1dv")] + _glVertexAttribL1dv_ptr _VertexAttribL1dv_ptr { get; } + + delegate void _glVertexAttribL1dv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL1dv")] + _glVertexAttribL1dv_intptr _VertexAttribL1dv_intptr { get; } + + // --- + + delegate void _glVertexAttribL1dvEXT(uint index, double[] v); + [GlEntryPoint("glVertexAttribL1dvEXT")] + _glVertexAttribL1dvEXT _VertexAttribL1dvEXT { get; } + + delegate void _glVertexAttribL1dvEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL1dvEXT")] + _glVertexAttribL1dvEXT_ptr _VertexAttribL1dvEXT_ptr { get; } + + delegate void _glVertexAttribL1dvEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL1dvEXT")] + _glVertexAttribL1dvEXT_intptr _VertexAttribL1dvEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribL1i64NV(uint index, Int64 x); + [GlEntryPoint("glVertexAttribL1i64NV")] + _glVertexAttribL1i64NV _VertexAttribL1i64NV { get; } + + // --- + + delegate void _glVertexAttribL1i64vNV(uint index, Int64[] v); + [GlEntryPoint("glVertexAttribL1i64vNV")] + _glVertexAttribL1i64vNV _VertexAttribL1i64vNV { get; } + + delegate void _glVertexAttribL1i64vNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL1i64vNV")] + _glVertexAttribL1i64vNV_ptr _VertexAttribL1i64vNV_ptr { get; } + + delegate void _glVertexAttribL1i64vNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL1i64vNV")] + _glVertexAttribL1i64vNV_intptr _VertexAttribL1i64vNV_intptr { get; } + + // --- + + delegate void _glVertexAttribL1ui64ARB(uint index, UInt64 x); + [GlEntryPoint("glVertexAttribL1ui64ARB")] + _glVertexAttribL1ui64ARB _VertexAttribL1ui64ARB { get; } + + // --- + + delegate void _glVertexAttribL1ui64NV(uint index, UInt64 x); + [GlEntryPoint("glVertexAttribL1ui64NV")] + _glVertexAttribL1ui64NV _VertexAttribL1ui64NV { get; } + + // --- + + delegate void _glVertexAttribL1ui64vARB(uint index, UInt64[] v); + [GlEntryPoint("glVertexAttribL1ui64vARB")] + _glVertexAttribL1ui64vARB _VertexAttribL1ui64vARB { get; } + + delegate void _glVertexAttribL1ui64vARB_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL1ui64vARB")] + _glVertexAttribL1ui64vARB_ptr _VertexAttribL1ui64vARB_ptr { get; } + + delegate void _glVertexAttribL1ui64vARB_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL1ui64vARB")] + _glVertexAttribL1ui64vARB_intptr _VertexAttribL1ui64vARB_intptr { get; } + + // --- + + delegate void _glVertexAttribL1ui64vNV(uint index, UInt64[] v); + [GlEntryPoint("glVertexAttribL1ui64vNV")] + _glVertexAttribL1ui64vNV _VertexAttribL1ui64vNV { get; } + + delegate void _glVertexAttribL1ui64vNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL1ui64vNV")] + _glVertexAttribL1ui64vNV_ptr _VertexAttribL1ui64vNV_ptr { get; } + + delegate void _glVertexAttribL1ui64vNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL1ui64vNV")] + _glVertexAttribL1ui64vNV_intptr _VertexAttribL1ui64vNV_intptr { get; } + + // --- + + delegate void _glVertexAttribL2d(uint index, double x, double y); + [GlEntryPoint("glVertexAttribL2d")] + _glVertexAttribL2d _VertexAttribL2d { get; } + + // --- + + delegate void _glVertexAttribL2dEXT(uint index, double x, double y); + [GlEntryPoint("glVertexAttribL2dEXT")] + _glVertexAttribL2dEXT _VertexAttribL2dEXT { get; } + + // --- + + delegate void _glVertexAttribL2dv(uint index, double[] v); + [GlEntryPoint("glVertexAttribL2dv")] + _glVertexAttribL2dv _VertexAttribL2dv { get; } + + delegate void _glVertexAttribL2dv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL2dv")] + _glVertexAttribL2dv_ptr _VertexAttribL2dv_ptr { get; } + + delegate void _glVertexAttribL2dv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL2dv")] + _glVertexAttribL2dv_intptr _VertexAttribL2dv_intptr { get; } + + // --- + + delegate void _glVertexAttribL2dvEXT(uint index, double[] v); + [GlEntryPoint("glVertexAttribL2dvEXT")] + _glVertexAttribL2dvEXT _VertexAttribL2dvEXT { get; } + + delegate void _glVertexAttribL2dvEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL2dvEXT")] + _glVertexAttribL2dvEXT_ptr _VertexAttribL2dvEXT_ptr { get; } + + delegate void _glVertexAttribL2dvEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL2dvEXT")] + _glVertexAttribL2dvEXT_intptr _VertexAttribL2dvEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribL2i64NV(uint index, Int64 x, Int64 y); + [GlEntryPoint("glVertexAttribL2i64NV")] + _glVertexAttribL2i64NV _VertexAttribL2i64NV { get; } + + // --- + + delegate void _glVertexAttribL2i64vNV(uint index, Int64[] v); + [GlEntryPoint("glVertexAttribL2i64vNV")] + _glVertexAttribL2i64vNV _VertexAttribL2i64vNV { get; } + + delegate void _glVertexAttribL2i64vNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL2i64vNV")] + _glVertexAttribL2i64vNV_ptr _VertexAttribL2i64vNV_ptr { get; } + + delegate void _glVertexAttribL2i64vNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL2i64vNV")] + _glVertexAttribL2i64vNV_intptr _VertexAttribL2i64vNV_intptr { get; } + + // --- + + delegate void _glVertexAttribL2ui64NV(uint index, UInt64 x, UInt64 y); + [GlEntryPoint("glVertexAttribL2ui64NV")] + _glVertexAttribL2ui64NV _VertexAttribL2ui64NV { get; } + + // --- + + delegate void _glVertexAttribL2ui64vNV(uint index, UInt64[] v); + [GlEntryPoint("glVertexAttribL2ui64vNV")] + _glVertexAttribL2ui64vNV _VertexAttribL2ui64vNV { get; } + + delegate void _glVertexAttribL2ui64vNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL2ui64vNV")] + _glVertexAttribL2ui64vNV_ptr _VertexAttribL2ui64vNV_ptr { get; } + + delegate void _glVertexAttribL2ui64vNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL2ui64vNV")] + _glVertexAttribL2ui64vNV_intptr _VertexAttribL2ui64vNV_intptr { get; } + + // --- + + delegate void _glVertexAttribL3d(uint index, double x, double y, double z); + [GlEntryPoint("glVertexAttribL3d")] + _glVertexAttribL3d _VertexAttribL3d { get; } + + // --- + + delegate void _glVertexAttribL3dEXT(uint index, double x, double y, double z); + [GlEntryPoint("glVertexAttribL3dEXT")] + _glVertexAttribL3dEXT _VertexAttribL3dEXT { get; } + + // --- + + delegate void _glVertexAttribL3dv(uint index, double[] v); + [GlEntryPoint("glVertexAttribL3dv")] + _glVertexAttribL3dv _VertexAttribL3dv { get; } + + delegate void _glVertexAttribL3dv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL3dv")] + _glVertexAttribL3dv_ptr _VertexAttribL3dv_ptr { get; } + + delegate void _glVertexAttribL3dv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL3dv")] + _glVertexAttribL3dv_intptr _VertexAttribL3dv_intptr { get; } + + // --- + + delegate void _glVertexAttribL3dvEXT(uint index, double[] v); + [GlEntryPoint("glVertexAttribL3dvEXT")] + _glVertexAttribL3dvEXT _VertexAttribL3dvEXT { get; } + + delegate void _glVertexAttribL3dvEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL3dvEXT")] + _glVertexAttribL3dvEXT_ptr _VertexAttribL3dvEXT_ptr { get; } + + delegate void _glVertexAttribL3dvEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL3dvEXT")] + _glVertexAttribL3dvEXT_intptr _VertexAttribL3dvEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribL3i64NV(uint index, Int64 x, Int64 y, Int64 z); + [GlEntryPoint("glVertexAttribL3i64NV")] + _glVertexAttribL3i64NV _VertexAttribL3i64NV { get; } + + // --- + + delegate void _glVertexAttribL3i64vNV(uint index, Int64[] v); + [GlEntryPoint("glVertexAttribL3i64vNV")] + _glVertexAttribL3i64vNV _VertexAttribL3i64vNV { get; } + + delegate void _glVertexAttribL3i64vNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL3i64vNV")] + _glVertexAttribL3i64vNV_ptr _VertexAttribL3i64vNV_ptr { get; } + + delegate void _glVertexAttribL3i64vNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL3i64vNV")] + _glVertexAttribL3i64vNV_intptr _VertexAttribL3i64vNV_intptr { get; } + + // --- + + delegate void _glVertexAttribL3ui64NV(uint index, UInt64 x, UInt64 y, UInt64 z); + [GlEntryPoint("glVertexAttribL3ui64NV")] + _glVertexAttribL3ui64NV _VertexAttribL3ui64NV { get; } + + // --- + + delegate void _glVertexAttribL3ui64vNV(uint index, UInt64[] v); + [GlEntryPoint("glVertexAttribL3ui64vNV")] + _glVertexAttribL3ui64vNV _VertexAttribL3ui64vNV { get; } + + delegate void _glVertexAttribL3ui64vNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL3ui64vNV")] + _glVertexAttribL3ui64vNV_ptr _VertexAttribL3ui64vNV_ptr { get; } + + delegate void _glVertexAttribL3ui64vNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL3ui64vNV")] + _glVertexAttribL3ui64vNV_intptr _VertexAttribL3ui64vNV_intptr { get; } + + // --- + + delegate void _glVertexAttribL4d(uint index, double x, double y, double z, double w); + [GlEntryPoint("glVertexAttribL4d")] + _glVertexAttribL4d _VertexAttribL4d { get; } + + // --- + + delegate void _glVertexAttribL4dEXT(uint index, double x, double y, double z, double w); + [GlEntryPoint("glVertexAttribL4dEXT")] + _glVertexAttribL4dEXT _VertexAttribL4dEXT { get; } + + // --- + + delegate void _glVertexAttribL4dv(uint index, double[] v); + [GlEntryPoint("glVertexAttribL4dv")] + _glVertexAttribL4dv _VertexAttribL4dv { get; } + + delegate void _glVertexAttribL4dv_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL4dv")] + _glVertexAttribL4dv_ptr _VertexAttribL4dv_ptr { get; } + + delegate void _glVertexAttribL4dv_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL4dv")] + _glVertexAttribL4dv_intptr _VertexAttribL4dv_intptr { get; } + + // --- + + delegate void _glVertexAttribL4dvEXT(uint index, double[] v); + [GlEntryPoint("glVertexAttribL4dvEXT")] + _glVertexAttribL4dvEXT _VertexAttribL4dvEXT { get; } + + delegate void _glVertexAttribL4dvEXT_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL4dvEXT")] + _glVertexAttribL4dvEXT_ptr _VertexAttribL4dvEXT_ptr { get; } + + delegate void _glVertexAttribL4dvEXT_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL4dvEXT")] + _glVertexAttribL4dvEXT_intptr _VertexAttribL4dvEXT_intptr { get; } + + // --- + + delegate void _glVertexAttribL4i64NV(uint index, Int64 x, Int64 y, Int64 z, Int64 w); + [GlEntryPoint("glVertexAttribL4i64NV")] + _glVertexAttribL4i64NV _VertexAttribL4i64NV { get; } + + // --- + + delegate void _glVertexAttribL4i64vNV(uint index, Int64[] v); + [GlEntryPoint("glVertexAttribL4i64vNV")] + _glVertexAttribL4i64vNV _VertexAttribL4i64vNV { get; } + + delegate void _glVertexAttribL4i64vNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL4i64vNV")] + _glVertexAttribL4i64vNV_ptr _VertexAttribL4i64vNV_ptr { get; } + + delegate void _glVertexAttribL4i64vNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL4i64vNV")] + _glVertexAttribL4i64vNV_intptr _VertexAttribL4i64vNV_intptr { get; } + + // --- + + delegate void _glVertexAttribL4ui64NV(uint index, UInt64 x, UInt64 y, UInt64 z, UInt64 w); + [GlEntryPoint("glVertexAttribL4ui64NV")] + _glVertexAttribL4ui64NV _VertexAttribL4ui64NV { get; } + + // --- + + delegate void _glVertexAttribL4ui64vNV(uint index, UInt64[] v); + [GlEntryPoint("glVertexAttribL4ui64vNV")] + _glVertexAttribL4ui64vNV _VertexAttribL4ui64vNV { get; } + + delegate void _glVertexAttribL4ui64vNV_ptr(uint index, void* v); + [GlEntryPoint("glVertexAttribL4ui64vNV")] + _glVertexAttribL4ui64vNV_ptr _VertexAttribL4ui64vNV_ptr { get; } + + delegate void _glVertexAttribL4ui64vNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glVertexAttribL4ui64vNV")] + _glVertexAttribL4ui64vNV_intptr _VertexAttribL4ui64vNV_intptr { get; } + + // --- + + delegate void _glVertexAttribLFormat(uint attribindex, int size, VertexAttribLType type, uint relativeoffset); + [GlEntryPoint("glVertexAttribLFormat")] + _glVertexAttribLFormat _VertexAttribLFormat { get; } + + // --- + + delegate void _glVertexAttribLFormatNV(uint index, int size, VertexAttribLType type, int stride); + [GlEntryPoint("glVertexAttribLFormatNV")] + _glVertexAttribLFormatNV _VertexAttribLFormatNV { get; } + + // --- + + delegate void _glVertexAttribLPointer(uint index, int size, VertexAttribLType type, int stride, IntPtr pointer); + [GlEntryPoint("glVertexAttribLPointer")] + _glVertexAttribLPointer _VertexAttribLPointer { get; } + + // --- + + delegate void _glVertexAttribLPointerEXT(uint index, int size, VertexAttribLType type, int stride, IntPtr pointer); + [GlEntryPoint("glVertexAttribLPointerEXT")] + _glVertexAttribLPointerEXT _VertexAttribLPointerEXT { get; } + + // --- + + delegate void _glVertexAttribP1ui(uint index, VertexAttribPointerType type, bool normalized, uint value); + [GlEntryPoint("glVertexAttribP1ui")] + _glVertexAttribP1ui _VertexAttribP1ui { get; } + + // --- + + delegate void _glVertexAttribP1uiv(uint index, VertexAttribPointerType type, bool normalized, uint[] value); + [GlEntryPoint("glVertexAttribP1uiv")] + _glVertexAttribP1uiv _VertexAttribP1uiv { get; } + + delegate void _glVertexAttribP1uiv_ptr(uint index, VertexAttribPointerType type, bool normalized, void* value); + [GlEntryPoint("glVertexAttribP1uiv")] + _glVertexAttribP1uiv_ptr _VertexAttribP1uiv_ptr { get; } + + delegate void _glVertexAttribP1uiv_intptr(uint index, VertexAttribPointerType type, bool normalized, IntPtr value); + [GlEntryPoint("glVertexAttribP1uiv")] + _glVertexAttribP1uiv_intptr _VertexAttribP1uiv_intptr { get; } + + // --- + + delegate void _glVertexAttribP2ui(uint index, VertexAttribPointerType type, bool normalized, uint value); + [GlEntryPoint("glVertexAttribP2ui")] + _glVertexAttribP2ui _VertexAttribP2ui { get; } + + // --- + + delegate void _glVertexAttribP2uiv(uint index, VertexAttribPointerType type, bool normalized, uint[] value); + [GlEntryPoint("glVertexAttribP2uiv")] + _glVertexAttribP2uiv _VertexAttribP2uiv { get; } + + delegate void _glVertexAttribP2uiv_ptr(uint index, VertexAttribPointerType type, bool normalized, void* value); + [GlEntryPoint("glVertexAttribP2uiv")] + _glVertexAttribP2uiv_ptr _VertexAttribP2uiv_ptr { get; } + + delegate void _glVertexAttribP2uiv_intptr(uint index, VertexAttribPointerType type, bool normalized, IntPtr value); + [GlEntryPoint("glVertexAttribP2uiv")] + _glVertexAttribP2uiv_intptr _VertexAttribP2uiv_intptr { get; } + + // --- + + delegate void _glVertexAttribP3ui(uint index, VertexAttribPointerType type, bool normalized, uint value); + [GlEntryPoint("glVertexAttribP3ui")] + _glVertexAttribP3ui _VertexAttribP3ui { get; } + + // --- + + delegate void _glVertexAttribP3uiv(uint index, VertexAttribPointerType type, bool normalized, uint[] value); + [GlEntryPoint("glVertexAttribP3uiv")] + _glVertexAttribP3uiv _VertexAttribP3uiv { get; } + + delegate void _glVertexAttribP3uiv_ptr(uint index, VertexAttribPointerType type, bool normalized, void* value); + [GlEntryPoint("glVertexAttribP3uiv")] + _glVertexAttribP3uiv_ptr _VertexAttribP3uiv_ptr { get; } + + delegate void _glVertexAttribP3uiv_intptr(uint index, VertexAttribPointerType type, bool normalized, IntPtr value); + [GlEntryPoint("glVertexAttribP3uiv")] + _glVertexAttribP3uiv_intptr _VertexAttribP3uiv_intptr { get; } + + // --- + + delegate void _glVertexAttribP4ui(uint index, VertexAttribPointerType type, bool normalized, uint value); + [GlEntryPoint("glVertexAttribP4ui")] + _glVertexAttribP4ui _VertexAttribP4ui { get; } + + // --- + + delegate void _glVertexAttribP4uiv(uint index, VertexAttribPointerType type, bool normalized, uint[] value); + [GlEntryPoint("glVertexAttribP4uiv")] + _glVertexAttribP4uiv _VertexAttribP4uiv { get; } + + delegate void _glVertexAttribP4uiv_ptr(uint index, VertexAttribPointerType type, bool normalized, void* value); + [GlEntryPoint("glVertexAttribP4uiv")] + _glVertexAttribP4uiv_ptr _VertexAttribP4uiv_ptr { get; } + + delegate void _glVertexAttribP4uiv_intptr(uint index, VertexAttribPointerType type, bool normalized, IntPtr value); + [GlEntryPoint("glVertexAttribP4uiv")] + _glVertexAttribP4uiv_intptr _VertexAttribP4uiv_intptr { get; } + + // --- + + delegate void _glVertexAttribParameteriAMD(uint index, int pname, int param); + [GlEntryPoint("glVertexAttribParameteriAMD")] + _glVertexAttribParameteriAMD _VertexAttribParameteriAMD { get; } + + // --- + + delegate void _glVertexAttribPointer(uint index, int size, VertexAttribPointerType type, bool normalized, int stride, IntPtr pointer); + [GlEntryPoint("glVertexAttribPointer")] + _glVertexAttribPointer _VertexAttribPointer { get; } + + // --- + + delegate void _glVertexAttribPointerARB(uint index, int size, VertexAttribPointerType type, bool normalized, int stride, IntPtr pointer); + [GlEntryPoint("glVertexAttribPointerARB")] + _glVertexAttribPointerARB _VertexAttribPointerARB { get; } + + // --- + + delegate void _glVertexAttribPointerNV(uint index, int fsize, VertexAttribEnumNV type, int stride, IntPtr pointer); + [GlEntryPoint("glVertexAttribPointerNV")] + _glVertexAttribPointerNV _VertexAttribPointerNV { get; } + + // --- + + delegate void _glVertexAttribs1dvNV(uint index, int count, double[] v); + [GlEntryPoint("glVertexAttribs1dvNV")] + _glVertexAttribs1dvNV _VertexAttribs1dvNV { get; } + + delegate void _glVertexAttribs1dvNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs1dvNV")] + _glVertexAttribs1dvNV_ptr _VertexAttribs1dvNV_ptr { get; } + + delegate void _glVertexAttribs1dvNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs1dvNV")] + _glVertexAttribs1dvNV_intptr _VertexAttribs1dvNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs1fvNV(uint index, int count, float[] v); + [GlEntryPoint("glVertexAttribs1fvNV")] + _glVertexAttribs1fvNV _VertexAttribs1fvNV { get; } + + delegate void _glVertexAttribs1fvNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs1fvNV")] + _glVertexAttribs1fvNV_ptr _VertexAttribs1fvNV_ptr { get; } + + delegate void _glVertexAttribs1fvNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs1fvNV")] + _glVertexAttribs1fvNV_intptr _VertexAttribs1fvNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs1hvNV(uint index, int n, float[] v); + [GlEntryPoint("glVertexAttribs1hvNV")] + _glVertexAttribs1hvNV _VertexAttribs1hvNV { get; } + + delegate void _glVertexAttribs1hvNV_ptr(uint index, int n, void* v); + [GlEntryPoint("glVertexAttribs1hvNV")] + _glVertexAttribs1hvNV_ptr _VertexAttribs1hvNV_ptr { get; } + + delegate void _glVertexAttribs1hvNV_intptr(uint index, int n, IntPtr v); + [GlEntryPoint("glVertexAttribs1hvNV")] + _glVertexAttribs1hvNV_intptr _VertexAttribs1hvNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs1svNV(uint index, int count, short[] v); + [GlEntryPoint("glVertexAttribs1svNV")] + _glVertexAttribs1svNV _VertexAttribs1svNV { get; } + + delegate void _glVertexAttribs1svNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs1svNV")] + _glVertexAttribs1svNV_ptr _VertexAttribs1svNV_ptr { get; } + + delegate void _glVertexAttribs1svNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs1svNV")] + _glVertexAttribs1svNV_intptr _VertexAttribs1svNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs2dvNV(uint index, int count, double[] v); + [GlEntryPoint("glVertexAttribs2dvNV")] + _glVertexAttribs2dvNV _VertexAttribs2dvNV { get; } + + delegate void _glVertexAttribs2dvNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs2dvNV")] + _glVertexAttribs2dvNV_ptr _VertexAttribs2dvNV_ptr { get; } + + delegate void _glVertexAttribs2dvNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs2dvNV")] + _glVertexAttribs2dvNV_intptr _VertexAttribs2dvNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs2fvNV(uint index, int count, float[] v); + [GlEntryPoint("glVertexAttribs2fvNV")] + _glVertexAttribs2fvNV _VertexAttribs2fvNV { get; } + + delegate void _glVertexAttribs2fvNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs2fvNV")] + _glVertexAttribs2fvNV_ptr _VertexAttribs2fvNV_ptr { get; } + + delegate void _glVertexAttribs2fvNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs2fvNV")] + _glVertexAttribs2fvNV_intptr _VertexAttribs2fvNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs2hvNV(uint index, int n, float[] v); + [GlEntryPoint("glVertexAttribs2hvNV")] + _glVertexAttribs2hvNV _VertexAttribs2hvNV { get; } + + delegate void _glVertexAttribs2hvNV_ptr(uint index, int n, void* v); + [GlEntryPoint("glVertexAttribs2hvNV")] + _glVertexAttribs2hvNV_ptr _VertexAttribs2hvNV_ptr { get; } + + delegate void _glVertexAttribs2hvNV_intptr(uint index, int n, IntPtr v); + [GlEntryPoint("glVertexAttribs2hvNV")] + _glVertexAttribs2hvNV_intptr _VertexAttribs2hvNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs2svNV(uint index, int count, short[] v); + [GlEntryPoint("glVertexAttribs2svNV")] + _glVertexAttribs2svNV _VertexAttribs2svNV { get; } + + delegate void _glVertexAttribs2svNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs2svNV")] + _glVertexAttribs2svNV_ptr _VertexAttribs2svNV_ptr { get; } + + delegate void _glVertexAttribs2svNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs2svNV")] + _glVertexAttribs2svNV_intptr _VertexAttribs2svNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs3dvNV(uint index, int count, double[] v); + [GlEntryPoint("glVertexAttribs3dvNV")] + _glVertexAttribs3dvNV _VertexAttribs3dvNV { get; } + + delegate void _glVertexAttribs3dvNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs3dvNV")] + _glVertexAttribs3dvNV_ptr _VertexAttribs3dvNV_ptr { get; } + + delegate void _glVertexAttribs3dvNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs3dvNV")] + _glVertexAttribs3dvNV_intptr _VertexAttribs3dvNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs3fvNV(uint index, int count, float[] v); + [GlEntryPoint("glVertexAttribs3fvNV")] + _glVertexAttribs3fvNV _VertexAttribs3fvNV { get; } + + delegate void _glVertexAttribs3fvNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs3fvNV")] + _glVertexAttribs3fvNV_ptr _VertexAttribs3fvNV_ptr { get; } + + delegate void _glVertexAttribs3fvNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs3fvNV")] + _glVertexAttribs3fvNV_intptr _VertexAttribs3fvNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs3hvNV(uint index, int n, float[] v); + [GlEntryPoint("glVertexAttribs3hvNV")] + _glVertexAttribs3hvNV _VertexAttribs3hvNV { get; } + + delegate void _glVertexAttribs3hvNV_ptr(uint index, int n, void* v); + [GlEntryPoint("glVertexAttribs3hvNV")] + _glVertexAttribs3hvNV_ptr _VertexAttribs3hvNV_ptr { get; } + + delegate void _glVertexAttribs3hvNV_intptr(uint index, int n, IntPtr v); + [GlEntryPoint("glVertexAttribs3hvNV")] + _glVertexAttribs3hvNV_intptr _VertexAttribs3hvNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs3svNV(uint index, int count, short[] v); + [GlEntryPoint("glVertexAttribs3svNV")] + _glVertexAttribs3svNV _VertexAttribs3svNV { get; } + + delegate void _glVertexAttribs3svNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs3svNV")] + _glVertexAttribs3svNV_ptr _VertexAttribs3svNV_ptr { get; } + + delegate void _glVertexAttribs3svNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs3svNV")] + _glVertexAttribs3svNV_intptr _VertexAttribs3svNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs4dvNV(uint index, int count, double[] v); + [GlEntryPoint("glVertexAttribs4dvNV")] + _glVertexAttribs4dvNV _VertexAttribs4dvNV { get; } + + delegate void _glVertexAttribs4dvNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs4dvNV")] + _glVertexAttribs4dvNV_ptr _VertexAttribs4dvNV_ptr { get; } + + delegate void _glVertexAttribs4dvNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs4dvNV")] + _glVertexAttribs4dvNV_intptr _VertexAttribs4dvNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs4fvNV(uint index, int count, float[] v); + [GlEntryPoint("glVertexAttribs4fvNV")] + _glVertexAttribs4fvNV _VertexAttribs4fvNV { get; } + + delegate void _glVertexAttribs4fvNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs4fvNV")] + _glVertexAttribs4fvNV_ptr _VertexAttribs4fvNV_ptr { get; } + + delegate void _glVertexAttribs4fvNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs4fvNV")] + _glVertexAttribs4fvNV_intptr _VertexAttribs4fvNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs4hvNV(uint index, int n, float[] v); + [GlEntryPoint("glVertexAttribs4hvNV")] + _glVertexAttribs4hvNV _VertexAttribs4hvNV { get; } + + delegate void _glVertexAttribs4hvNV_ptr(uint index, int n, void* v); + [GlEntryPoint("glVertexAttribs4hvNV")] + _glVertexAttribs4hvNV_ptr _VertexAttribs4hvNV_ptr { get; } + + delegate void _glVertexAttribs4hvNV_intptr(uint index, int n, IntPtr v); + [GlEntryPoint("glVertexAttribs4hvNV")] + _glVertexAttribs4hvNV_intptr _VertexAttribs4hvNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs4svNV(uint index, int count, short[] v); + [GlEntryPoint("glVertexAttribs4svNV")] + _glVertexAttribs4svNV _VertexAttribs4svNV { get; } + + delegate void _glVertexAttribs4svNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs4svNV")] + _glVertexAttribs4svNV_ptr _VertexAttribs4svNV_ptr { get; } + + delegate void _glVertexAttribs4svNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs4svNV")] + _glVertexAttribs4svNV_intptr _VertexAttribs4svNV_intptr { get; } + + // --- + + delegate void _glVertexAttribs4ubvNV(uint index, int count, byte[] v); + [GlEntryPoint("glVertexAttribs4ubvNV")] + _glVertexAttribs4ubvNV _VertexAttribs4ubvNV { get; } + + delegate void _glVertexAttribs4ubvNV_ptr(uint index, int count, void* v); + [GlEntryPoint("glVertexAttribs4ubvNV")] + _glVertexAttribs4ubvNV_ptr _VertexAttribs4ubvNV_ptr { get; } + + delegate void _glVertexAttribs4ubvNV_intptr(uint index, int count, IntPtr v); + [GlEntryPoint("glVertexAttribs4ubvNV")] + _glVertexAttribs4ubvNV_intptr _VertexAttribs4ubvNV_intptr { get; } + + // --- + + delegate void _glVertexBindingDivisor(uint bindingindex, uint divisor); + [GlEntryPoint("glVertexBindingDivisor")] + _glVertexBindingDivisor _VertexBindingDivisor { get; } + + // --- + + delegate void _glVertexBlendARB(int count); + [GlEntryPoint("glVertexBlendARB")] + _glVertexBlendARB _VertexBlendARB { get; } + + // --- + + delegate void _glVertexBlendEnvfATI(VertexStreamATI pname, float param); + [GlEntryPoint("glVertexBlendEnvfATI")] + _glVertexBlendEnvfATI _VertexBlendEnvfATI { get; } + + // --- + + delegate void _glVertexBlendEnviATI(VertexStreamATI pname, int param); + [GlEntryPoint("glVertexBlendEnviATI")] + _glVertexBlendEnviATI _VertexBlendEnviATI { get; } + + // --- + + delegate void _glVertexFormatNV(int size, VertexPointerType type, int stride); + [GlEntryPoint("glVertexFormatNV")] + _glVertexFormatNV _VertexFormatNV { get; } + + // --- + + delegate void _glVertexP2ui(VertexPointerType type, uint value); + [GlEntryPoint("glVertexP2ui")] + _glVertexP2ui _VertexP2ui { get; } + + // --- + + delegate void _glVertexP2uiv(VertexPointerType type, uint[] value); + [GlEntryPoint("glVertexP2uiv")] + _glVertexP2uiv _VertexP2uiv { get; } + + delegate void _glVertexP2uiv_ptr(VertexPointerType type, void* value); + [GlEntryPoint("glVertexP2uiv")] + _glVertexP2uiv_ptr _VertexP2uiv_ptr { get; } + + delegate void _glVertexP2uiv_intptr(VertexPointerType type, IntPtr value); + [GlEntryPoint("glVertexP2uiv")] + _glVertexP2uiv_intptr _VertexP2uiv_intptr { get; } + + // --- + + delegate void _glVertexP3ui(VertexPointerType type, uint value); + [GlEntryPoint("glVertexP3ui")] + _glVertexP3ui _VertexP3ui { get; } + + // --- + + delegate void _glVertexP3uiv(VertexPointerType type, uint[] value); + [GlEntryPoint("glVertexP3uiv")] + _glVertexP3uiv _VertexP3uiv { get; } + + delegate void _glVertexP3uiv_ptr(VertexPointerType type, void* value); + [GlEntryPoint("glVertexP3uiv")] + _glVertexP3uiv_ptr _VertexP3uiv_ptr { get; } + + delegate void _glVertexP3uiv_intptr(VertexPointerType type, IntPtr value); + [GlEntryPoint("glVertexP3uiv")] + _glVertexP3uiv_intptr _VertexP3uiv_intptr { get; } + + // --- + + delegate void _glVertexP4ui(VertexPointerType type, uint value); + [GlEntryPoint("glVertexP4ui")] + _glVertexP4ui _VertexP4ui { get; } + + // --- + + delegate void _glVertexP4uiv(VertexPointerType type, uint[] value); + [GlEntryPoint("glVertexP4uiv")] + _glVertexP4uiv _VertexP4uiv { get; } + + delegate void _glVertexP4uiv_ptr(VertexPointerType type, void* value); + [GlEntryPoint("glVertexP4uiv")] + _glVertexP4uiv_ptr _VertexP4uiv_ptr { get; } + + delegate void _glVertexP4uiv_intptr(VertexPointerType type, IntPtr value); + [GlEntryPoint("glVertexP4uiv")] + _glVertexP4uiv_intptr _VertexP4uiv_intptr { get; } + + // --- + + delegate void _glVertexPointer(int size, VertexPointerType type, int stride, IntPtr pointer); + [GlEntryPoint("glVertexPointer")] + _glVertexPointer _VertexPointer { get; } + + // --- + + delegate void _glVertexPointerEXT(int size, VertexPointerType type, int stride, int count, IntPtr pointer); + [GlEntryPoint("glVertexPointerEXT")] + _glVertexPointerEXT _VertexPointerEXT { get; } + + // --- + + delegate void _glVertexPointerListIBM(int size, VertexPointerType type, int stride, IntPtr* pointer, int ptrstride); + [GlEntryPoint("glVertexPointerListIBM")] + _glVertexPointerListIBM _VertexPointerListIBM { get; } + + // --- + + delegate void _glVertexPointervINTEL(int size, VertexPointerType type, IntPtr* pointer); + [GlEntryPoint("glVertexPointervINTEL")] + _glVertexPointervINTEL _VertexPointervINTEL { get; } + + // --- + + delegate void _glVertexStream1dATI(VertexStreamATI stream, double x); + [GlEntryPoint("glVertexStream1dATI")] + _glVertexStream1dATI _VertexStream1dATI { get; } + + // --- + + delegate void _glVertexStream1dvATI(VertexStreamATI stream, double[] coords); + [GlEntryPoint("glVertexStream1dvATI")] + _glVertexStream1dvATI _VertexStream1dvATI { get; } + + delegate void _glVertexStream1dvATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream1dvATI")] + _glVertexStream1dvATI_ptr _VertexStream1dvATI_ptr { get; } + + delegate void _glVertexStream1dvATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream1dvATI")] + _glVertexStream1dvATI_intptr _VertexStream1dvATI_intptr { get; } + + // --- + + delegate void _glVertexStream1fATI(VertexStreamATI stream, float x); + [GlEntryPoint("glVertexStream1fATI")] + _glVertexStream1fATI _VertexStream1fATI { get; } + + // --- + + delegate void _glVertexStream1fvATI(VertexStreamATI stream, float[] coords); + [GlEntryPoint("glVertexStream1fvATI")] + _glVertexStream1fvATI _VertexStream1fvATI { get; } + + delegate void _glVertexStream1fvATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream1fvATI")] + _glVertexStream1fvATI_ptr _VertexStream1fvATI_ptr { get; } + + delegate void _glVertexStream1fvATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream1fvATI")] + _glVertexStream1fvATI_intptr _VertexStream1fvATI_intptr { get; } + + // --- + + delegate void _glVertexStream1iATI(VertexStreamATI stream, int x); + [GlEntryPoint("glVertexStream1iATI")] + _glVertexStream1iATI _VertexStream1iATI { get; } + + // --- + + delegate void _glVertexStream1ivATI(VertexStreamATI stream, int[] coords); + [GlEntryPoint("glVertexStream1ivATI")] + _glVertexStream1ivATI _VertexStream1ivATI { get; } + + delegate void _glVertexStream1ivATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream1ivATI")] + _glVertexStream1ivATI_ptr _VertexStream1ivATI_ptr { get; } + + delegate void _glVertexStream1ivATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream1ivATI")] + _glVertexStream1ivATI_intptr _VertexStream1ivATI_intptr { get; } + + // --- + + delegate void _glVertexStream1sATI(VertexStreamATI stream, short x); + [GlEntryPoint("glVertexStream1sATI")] + _glVertexStream1sATI _VertexStream1sATI { get; } + + // --- + + delegate void _glVertexStream1svATI(VertexStreamATI stream, short[] coords); + [GlEntryPoint("glVertexStream1svATI")] + _glVertexStream1svATI _VertexStream1svATI { get; } + + delegate void _glVertexStream1svATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream1svATI")] + _glVertexStream1svATI_ptr _VertexStream1svATI_ptr { get; } + + delegate void _glVertexStream1svATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream1svATI")] + _glVertexStream1svATI_intptr _VertexStream1svATI_intptr { get; } + + // --- + + delegate void _glVertexStream2dATI(VertexStreamATI stream, double x, double y); + [GlEntryPoint("glVertexStream2dATI")] + _glVertexStream2dATI _VertexStream2dATI { get; } + + // --- + + delegate void _glVertexStream2dvATI(VertexStreamATI stream, double[] coords); + [GlEntryPoint("glVertexStream2dvATI")] + _glVertexStream2dvATI _VertexStream2dvATI { get; } + + delegate void _glVertexStream2dvATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream2dvATI")] + _glVertexStream2dvATI_ptr _VertexStream2dvATI_ptr { get; } + + delegate void _glVertexStream2dvATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream2dvATI")] + _glVertexStream2dvATI_intptr _VertexStream2dvATI_intptr { get; } + + // --- + + delegate void _glVertexStream2fATI(VertexStreamATI stream, float x, float y); + [GlEntryPoint("glVertexStream2fATI")] + _glVertexStream2fATI _VertexStream2fATI { get; } + + // --- + + delegate void _glVertexStream2fvATI(VertexStreamATI stream, float[] coords); + [GlEntryPoint("glVertexStream2fvATI")] + _glVertexStream2fvATI _VertexStream2fvATI { get; } + + delegate void _glVertexStream2fvATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream2fvATI")] + _glVertexStream2fvATI_ptr _VertexStream2fvATI_ptr { get; } + + delegate void _glVertexStream2fvATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream2fvATI")] + _glVertexStream2fvATI_intptr _VertexStream2fvATI_intptr { get; } + + // --- + + delegate void _glVertexStream2iATI(VertexStreamATI stream, int x, int y); + [GlEntryPoint("glVertexStream2iATI")] + _glVertexStream2iATI _VertexStream2iATI { get; } + + // --- + + delegate void _glVertexStream2ivATI(VertexStreamATI stream, int[] coords); + [GlEntryPoint("glVertexStream2ivATI")] + _glVertexStream2ivATI _VertexStream2ivATI { get; } + + delegate void _glVertexStream2ivATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream2ivATI")] + _glVertexStream2ivATI_ptr _VertexStream2ivATI_ptr { get; } + + delegate void _glVertexStream2ivATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream2ivATI")] + _glVertexStream2ivATI_intptr _VertexStream2ivATI_intptr { get; } + + // --- + + delegate void _glVertexStream2sATI(VertexStreamATI stream, short x, short y); + [GlEntryPoint("glVertexStream2sATI")] + _glVertexStream2sATI _VertexStream2sATI { get; } + + // --- + + delegate void _glVertexStream2svATI(VertexStreamATI stream, short[] coords); + [GlEntryPoint("glVertexStream2svATI")] + _glVertexStream2svATI _VertexStream2svATI { get; } + + delegate void _glVertexStream2svATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream2svATI")] + _glVertexStream2svATI_ptr _VertexStream2svATI_ptr { get; } + + delegate void _glVertexStream2svATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream2svATI")] + _glVertexStream2svATI_intptr _VertexStream2svATI_intptr { get; } + + // --- + + delegate void _glVertexStream3dATI(VertexStreamATI stream, double x, double y, double z); + [GlEntryPoint("glVertexStream3dATI")] + _glVertexStream3dATI _VertexStream3dATI { get; } + + // --- + + delegate void _glVertexStream3dvATI(VertexStreamATI stream, double[] coords); + [GlEntryPoint("glVertexStream3dvATI")] + _glVertexStream3dvATI _VertexStream3dvATI { get; } + + delegate void _glVertexStream3dvATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream3dvATI")] + _glVertexStream3dvATI_ptr _VertexStream3dvATI_ptr { get; } + + delegate void _glVertexStream3dvATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream3dvATI")] + _glVertexStream3dvATI_intptr _VertexStream3dvATI_intptr { get; } + + // --- + + delegate void _glVertexStream3fATI(VertexStreamATI stream, float x, float y, float z); + [GlEntryPoint("glVertexStream3fATI")] + _glVertexStream3fATI _VertexStream3fATI { get; } + + // --- + + delegate void _glVertexStream3fvATI(VertexStreamATI stream, float[] coords); + [GlEntryPoint("glVertexStream3fvATI")] + _glVertexStream3fvATI _VertexStream3fvATI { get; } + + delegate void _glVertexStream3fvATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream3fvATI")] + _glVertexStream3fvATI_ptr _VertexStream3fvATI_ptr { get; } + + delegate void _glVertexStream3fvATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream3fvATI")] + _glVertexStream3fvATI_intptr _VertexStream3fvATI_intptr { get; } + + // --- + + delegate void _glVertexStream3iATI(VertexStreamATI stream, int x, int y, int z); + [GlEntryPoint("glVertexStream3iATI")] + _glVertexStream3iATI _VertexStream3iATI { get; } + + // --- + + delegate void _glVertexStream3ivATI(VertexStreamATI stream, int[] coords); + [GlEntryPoint("glVertexStream3ivATI")] + _glVertexStream3ivATI _VertexStream3ivATI { get; } + + delegate void _glVertexStream3ivATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream3ivATI")] + _glVertexStream3ivATI_ptr _VertexStream3ivATI_ptr { get; } + + delegate void _glVertexStream3ivATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream3ivATI")] + _glVertexStream3ivATI_intptr _VertexStream3ivATI_intptr { get; } + + // --- + + delegate void _glVertexStream3sATI(VertexStreamATI stream, short x, short y, short z); + [GlEntryPoint("glVertexStream3sATI")] + _glVertexStream3sATI _VertexStream3sATI { get; } + + // --- + + delegate void _glVertexStream3svATI(VertexStreamATI stream, short[] coords); + [GlEntryPoint("glVertexStream3svATI")] + _glVertexStream3svATI _VertexStream3svATI { get; } + + delegate void _glVertexStream3svATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream3svATI")] + _glVertexStream3svATI_ptr _VertexStream3svATI_ptr { get; } + + delegate void _glVertexStream3svATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream3svATI")] + _glVertexStream3svATI_intptr _VertexStream3svATI_intptr { get; } + + // --- + + delegate void _glVertexStream4dATI(VertexStreamATI stream, double x, double y, double z, double w); + [GlEntryPoint("glVertexStream4dATI")] + _glVertexStream4dATI _VertexStream4dATI { get; } + + // --- + + delegate void _glVertexStream4dvATI(VertexStreamATI stream, double[] coords); + [GlEntryPoint("glVertexStream4dvATI")] + _glVertexStream4dvATI _VertexStream4dvATI { get; } + + delegate void _glVertexStream4dvATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream4dvATI")] + _glVertexStream4dvATI_ptr _VertexStream4dvATI_ptr { get; } + + delegate void _glVertexStream4dvATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream4dvATI")] + _glVertexStream4dvATI_intptr _VertexStream4dvATI_intptr { get; } + + // --- + + delegate void _glVertexStream4fATI(VertexStreamATI stream, float x, float y, float z, float w); + [GlEntryPoint("glVertexStream4fATI")] + _glVertexStream4fATI _VertexStream4fATI { get; } + + // --- + + delegate void _glVertexStream4fvATI(VertexStreamATI stream, float[] coords); + [GlEntryPoint("glVertexStream4fvATI")] + _glVertexStream4fvATI _VertexStream4fvATI { get; } + + delegate void _glVertexStream4fvATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream4fvATI")] + _glVertexStream4fvATI_ptr _VertexStream4fvATI_ptr { get; } + + delegate void _glVertexStream4fvATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream4fvATI")] + _glVertexStream4fvATI_intptr _VertexStream4fvATI_intptr { get; } + + // --- + + delegate void _glVertexStream4iATI(VertexStreamATI stream, int x, int y, int z, int w); + [GlEntryPoint("glVertexStream4iATI")] + _glVertexStream4iATI _VertexStream4iATI { get; } + + // --- + + delegate void _glVertexStream4ivATI(VertexStreamATI stream, int[] coords); + [GlEntryPoint("glVertexStream4ivATI")] + _glVertexStream4ivATI _VertexStream4ivATI { get; } + + delegate void _glVertexStream4ivATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream4ivATI")] + _glVertexStream4ivATI_ptr _VertexStream4ivATI_ptr { get; } + + delegate void _glVertexStream4ivATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream4ivATI")] + _glVertexStream4ivATI_intptr _VertexStream4ivATI_intptr { get; } + + // --- + + delegate void _glVertexStream4sATI(VertexStreamATI stream, short x, short y, short z, short w); + [GlEntryPoint("glVertexStream4sATI")] + _glVertexStream4sATI _VertexStream4sATI { get; } + + // --- + + delegate void _glVertexStream4svATI(VertexStreamATI stream, short[] coords); + [GlEntryPoint("glVertexStream4svATI")] + _glVertexStream4svATI _VertexStream4svATI { get; } + + delegate void _glVertexStream4svATI_ptr(VertexStreamATI stream, void* coords); + [GlEntryPoint("glVertexStream4svATI")] + _glVertexStream4svATI_ptr _VertexStream4svATI_ptr { get; } + + delegate void _glVertexStream4svATI_intptr(VertexStreamATI stream, IntPtr coords); + [GlEntryPoint("glVertexStream4svATI")] + _glVertexStream4svATI_intptr _VertexStream4svATI_intptr { get; } + + // --- + + delegate void _glVertexWeightPointerEXT(int size, VertexWeightPointerTypeEXT type, int stride, IntPtr pointer); + [GlEntryPoint("glVertexWeightPointerEXT")] + _glVertexWeightPointerEXT _VertexWeightPointerEXT { get; } + + // --- + + delegate void _glVertexWeightfEXT(float weight); + [GlEntryPoint("glVertexWeightfEXT")] + _glVertexWeightfEXT _VertexWeightfEXT { get; } + + // --- + + delegate void _glVertexWeightfvEXT(float[] weight); + [GlEntryPoint("glVertexWeightfvEXT")] + _glVertexWeightfvEXT _VertexWeightfvEXT { get; } + + delegate void _glVertexWeightfvEXT_ptr(void* weight); + [GlEntryPoint("glVertexWeightfvEXT")] + _glVertexWeightfvEXT_ptr _VertexWeightfvEXT_ptr { get; } + + delegate void _glVertexWeightfvEXT_intptr(IntPtr weight); + [GlEntryPoint("glVertexWeightfvEXT")] + _glVertexWeightfvEXT_intptr _VertexWeightfvEXT_intptr { get; } + + // --- + + delegate void _glVertexWeighthNV(float weight); + [GlEntryPoint("glVertexWeighthNV")] + _glVertexWeighthNV _VertexWeighthNV { get; } + + // --- + + delegate void _glVertexWeighthvNV(float[] weight); + [GlEntryPoint("glVertexWeighthvNV")] + _glVertexWeighthvNV _VertexWeighthvNV { get; } + + delegate void _glVertexWeighthvNV_ptr(void* weight); + [GlEntryPoint("glVertexWeighthvNV")] + _glVertexWeighthvNV_ptr _VertexWeighthvNV_ptr { get; } + + delegate void _glVertexWeighthvNV_intptr(IntPtr weight); + [GlEntryPoint("glVertexWeighthvNV")] + _glVertexWeighthvNV_intptr _VertexWeighthvNV_intptr { get; } + + // --- + + delegate int _glVideoCaptureNV(uint video_capture_slot, uint[] sequence_num, UInt64[] capture_time); + [GlEntryPoint("glVideoCaptureNV")] + _glVideoCaptureNV _VideoCaptureNV { get; } + + delegate int _glVideoCaptureNV_ptr(uint video_capture_slot, void* sequence_num, void* capture_time); + [GlEntryPoint("glVideoCaptureNV")] + _glVideoCaptureNV_ptr _VideoCaptureNV_ptr { get; } + + delegate int _glVideoCaptureNV_intptr(uint video_capture_slot, IntPtr sequence_num, IntPtr capture_time); + [GlEntryPoint("glVideoCaptureNV")] + _glVideoCaptureNV_intptr _VideoCaptureNV_intptr { get; } + + // --- + + delegate void _glVideoCaptureStreamParameterdvNV(uint video_capture_slot, uint stream, int pname, double[] @params); + [GlEntryPoint("glVideoCaptureStreamParameterdvNV")] + _glVideoCaptureStreamParameterdvNV _VideoCaptureStreamParameterdvNV { get; } + + delegate void _glVideoCaptureStreamParameterdvNV_ptr(uint video_capture_slot, uint stream, int pname, void* @params); + [GlEntryPoint("glVideoCaptureStreamParameterdvNV")] + _glVideoCaptureStreamParameterdvNV_ptr _VideoCaptureStreamParameterdvNV_ptr { get; } + + delegate void _glVideoCaptureStreamParameterdvNV_intptr(uint video_capture_slot, uint stream, int pname, IntPtr @params); + [GlEntryPoint("glVideoCaptureStreamParameterdvNV")] + _glVideoCaptureStreamParameterdvNV_intptr _VideoCaptureStreamParameterdvNV_intptr { get; } + + // --- + + delegate void _glVideoCaptureStreamParameterfvNV(uint video_capture_slot, uint stream, int pname, float[] @params); + [GlEntryPoint("glVideoCaptureStreamParameterfvNV")] + _glVideoCaptureStreamParameterfvNV _VideoCaptureStreamParameterfvNV { get; } + + delegate void _glVideoCaptureStreamParameterfvNV_ptr(uint video_capture_slot, uint stream, int pname, void* @params); + [GlEntryPoint("glVideoCaptureStreamParameterfvNV")] + _glVideoCaptureStreamParameterfvNV_ptr _VideoCaptureStreamParameterfvNV_ptr { get; } + + delegate void _glVideoCaptureStreamParameterfvNV_intptr(uint video_capture_slot, uint stream, int pname, IntPtr @params); + [GlEntryPoint("glVideoCaptureStreamParameterfvNV")] + _glVideoCaptureStreamParameterfvNV_intptr _VideoCaptureStreamParameterfvNV_intptr { get; } + + // --- + + delegate void _glVideoCaptureStreamParameterivNV(uint video_capture_slot, uint stream, int pname, int[] @params); + [GlEntryPoint("glVideoCaptureStreamParameterivNV")] + _glVideoCaptureStreamParameterivNV _VideoCaptureStreamParameterivNV { get; } + + delegate void _glVideoCaptureStreamParameterivNV_ptr(uint video_capture_slot, uint stream, int pname, void* @params); + [GlEntryPoint("glVideoCaptureStreamParameterivNV")] + _glVideoCaptureStreamParameterivNV_ptr _VideoCaptureStreamParameterivNV_ptr { get; } + + delegate void _glVideoCaptureStreamParameterivNV_intptr(uint video_capture_slot, uint stream, int pname, IntPtr @params); + [GlEntryPoint("glVideoCaptureStreamParameterivNV")] + _glVideoCaptureStreamParameterivNV_intptr _VideoCaptureStreamParameterivNV_intptr { get; } + + // --- + + delegate void _glViewport(int x, int y, int width, int height); + [GlEntryPoint("glViewport")] + _glViewport _Viewport { get; } + + // --- + + delegate void _glViewportArrayv(uint first, int count, float[] v); + [GlEntryPoint("glViewportArrayv")] + _glViewportArrayv _ViewportArrayv { get; } + + delegate void _glViewportArrayv_ptr(uint first, int count, void* v); + [GlEntryPoint("glViewportArrayv")] + _glViewportArrayv_ptr _ViewportArrayv_ptr { get; } + + delegate void _glViewportArrayv_intptr(uint first, int count, IntPtr v); + [GlEntryPoint("glViewportArrayv")] + _glViewportArrayv_intptr _ViewportArrayv_intptr { get; } + + // --- + + delegate void _glViewportArrayvNV(uint first, int count, float[] v); + [GlEntryPoint("glViewportArrayvNV")] + _glViewportArrayvNV _ViewportArrayvNV { get; } + + delegate void _glViewportArrayvNV_ptr(uint first, int count, void* v); + [GlEntryPoint("glViewportArrayvNV")] + _glViewportArrayvNV_ptr _ViewportArrayvNV_ptr { get; } + + delegate void _glViewportArrayvNV_intptr(uint first, int count, IntPtr v); + [GlEntryPoint("glViewportArrayvNV")] + _glViewportArrayvNV_intptr _ViewportArrayvNV_intptr { get; } + + // --- + + delegate void _glViewportArrayvOES(uint first, int count, float[] v); + [GlEntryPoint("glViewportArrayvOES")] + _glViewportArrayvOES _ViewportArrayvOES { get; } + + delegate void _glViewportArrayvOES_ptr(uint first, int count, void* v); + [GlEntryPoint("glViewportArrayvOES")] + _glViewportArrayvOES_ptr _ViewportArrayvOES_ptr { get; } + + delegate void _glViewportArrayvOES_intptr(uint first, int count, IntPtr v); + [GlEntryPoint("glViewportArrayvOES")] + _glViewportArrayvOES_intptr _ViewportArrayvOES_intptr { get; } + + // --- + + delegate void _glViewportIndexedf(uint index, float x, float y, float w, float h); + [GlEntryPoint("glViewportIndexedf")] + _glViewportIndexedf _ViewportIndexedf { get; } + + // --- + + delegate void _glViewportIndexedfOES(uint index, float x, float y, float w, float h); + [GlEntryPoint("glViewportIndexedfOES")] + _glViewportIndexedfOES _ViewportIndexedfOES { get; } + + // --- + + delegate void _glViewportIndexedfNV(uint index, float x, float y, float w, float h); + [GlEntryPoint("glViewportIndexedfNV")] + _glViewportIndexedfNV _ViewportIndexedfNV { get; } + + // --- + + delegate void _glViewportIndexedfv(uint index, float[] v); + [GlEntryPoint("glViewportIndexedfv")] + _glViewportIndexedfv _ViewportIndexedfv { get; } + + delegate void _glViewportIndexedfv_ptr(uint index, void* v); + [GlEntryPoint("glViewportIndexedfv")] + _glViewportIndexedfv_ptr _ViewportIndexedfv_ptr { get; } + + delegate void _glViewportIndexedfv_intptr(uint index, IntPtr v); + [GlEntryPoint("glViewportIndexedfv")] + _glViewportIndexedfv_intptr _ViewportIndexedfv_intptr { get; } + + // --- + + delegate void _glViewportIndexedfvOES(uint index, float[] v); + [GlEntryPoint("glViewportIndexedfvOES")] + _glViewportIndexedfvOES _ViewportIndexedfvOES { get; } + + delegate void _glViewportIndexedfvOES_ptr(uint index, void* v); + [GlEntryPoint("glViewportIndexedfvOES")] + _glViewportIndexedfvOES_ptr _ViewportIndexedfvOES_ptr { get; } + + delegate void _glViewportIndexedfvOES_intptr(uint index, IntPtr v); + [GlEntryPoint("glViewportIndexedfvOES")] + _glViewportIndexedfvOES_intptr _ViewportIndexedfvOES_intptr { get; } + + // --- + + delegate void _glViewportIndexedfvNV(uint index, float[] v); + [GlEntryPoint("glViewportIndexedfvNV")] + _glViewportIndexedfvNV _ViewportIndexedfvNV { get; } + + delegate void _glViewportIndexedfvNV_ptr(uint index, void* v); + [GlEntryPoint("glViewportIndexedfvNV")] + _glViewportIndexedfvNV_ptr _ViewportIndexedfvNV_ptr { get; } + + delegate void _glViewportIndexedfvNV_intptr(uint index, IntPtr v); + [GlEntryPoint("glViewportIndexedfvNV")] + _glViewportIndexedfvNV_intptr _ViewportIndexedfvNV_intptr { get; } + + // --- + + delegate void _glViewportPositionWScaleNV(uint index, float xcoeff, float ycoeff); + [GlEntryPoint("glViewportPositionWScaleNV")] + _glViewportPositionWScaleNV _ViewportPositionWScaleNV { get; } + + // --- + + delegate void _glViewportSwizzleNV(uint index, int swizzlex, int swizzley, int swizzlez, int swizzlew); + [GlEntryPoint("glViewportSwizzleNV")] + _glViewportSwizzleNV _ViewportSwizzleNV { get; } + + // --- + + delegate void _glWaitSemaphoreEXT(uint semaphore, uint numBufferBarriers, uint[] buffers, uint numTextureBarriers, uint[] textures, TextureLayout[] srcLayouts); + [GlEntryPoint("glWaitSemaphoreEXT")] + _glWaitSemaphoreEXT _WaitSemaphoreEXT { get; } + + delegate void _glWaitSemaphoreEXT_ptr(uint semaphore, uint numBufferBarriers, void* buffers, uint numTextureBarriers, void* textures, void* srcLayouts); + [GlEntryPoint("glWaitSemaphoreEXT")] + _glWaitSemaphoreEXT_ptr _WaitSemaphoreEXT_ptr { get; } + + delegate void _glWaitSemaphoreEXT_intptr(uint semaphore, uint numBufferBarriers, IntPtr buffers, uint numTextureBarriers, IntPtr textures, IntPtr srcLayouts); + [GlEntryPoint("glWaitSemaphoreEXT")] + _glWaitSemaphoreEXT_intptr _WaitSemaphoreEXT_intptr { get; } + + // --- + + delegate void _glWaitSemaphoreui64NVX(uint waitGpu, int fenceObjectCount, uint[] semaphoreArray, UInt64[] fenceValueArray); + [GlEntryPoint("glWaitSemaphoreui64NVX")] + _glWaitSemaphoreui64NVX _WaitSemaphoreui64NVX { get; } + + delegate void _glWaitSemaphoreui64NVX_ptr(uint waitGpu, int fenceObjectCount, void* semaphoreArray, void* fenceValueArray); + [GlEntryPoint("glWaitSemaphoreui64NVX")] + _glWaitSemaphoreui64NVX_ptr _WaitSemaphoreui64NVX_ptr { get; } + + delegate void _glWaitSemaphoreui64NVX_intptr(uint waitGpu, int fenceObjectCount, IntPtr semaphoreArray, IntPtr fenceValueArray); + [GlEntryPoint("glWaitSemaphoreui64NVX")] + _glWaitSemaphoreui64NVX_intptr _WaitSemaphoreui64NVX_intptr { get; } + + // --- + + delegate void _glWaitSync(int sync, int flags, UInt64 timeout); + [GlEntryPoint("glWaitSync")] + _glWaitSync _WaitSync { get; } + + // --- + + delegate void _glWaitSyncAPPLE(int sync, int flags, UInt64 timeout); + [GlEntryPoint("glWaitSyncAPPLE")] + _glWaitSyncAPPLE _WaitSyncAPPLE { get; } + + // --- + + delegate void _glWeightPathsNV(uint resultPath, int numPaths, uint[] paths, float[] weights); + [GlEntryPoint("glWeightPathsNV")] + _glWeightPathsNV _WeightPathsNV { get; } + + delegate void _glWeightPathsNV_ptr(uint resultPath, int numPaths, void* paths, void* weights); + [GlEntryPoint("glWeightPathsNV")] + _glWeightPathsNV_ptr _WeightPathsNV_ptr { get; } + + delegate void _glWeightPathsNV_intptr(uint resultPath, int numPaths, IntPtr paths, IntPtr weights); + [GlEntryPoint("glWeightPathsNV")] + _glWeightPathsNV_intptr _WeightPathsNV_intptr { get; } + + // --- + + delegate void _glWeightPointerARB(int size, WeightPointerTypeARB type, int stride, IntPtr pointer); + [GlEntryPoint("glWeightPointerARB")] + _glWeightPointerARB _WeightPointerARB { get; } + + // --- + + delegate void _glWeightPointerOES(int size, int type, int stride, IntPtr pointer); + [GlEntryPoint("glWeightPointerOES")] + _glWeightPointerOES _WeightPointerOES { get; } + + // --- + + delegate void _glWeightbvARB(int size, sbyte[] weights); + [GlEntryPoint("glWeightbvARB")] + _glWeightbvARB _WeightbvARB { get; } + + delegate void _glWeightbvARB_ptr(int size, void* weights); + [GlEntryPoint("glWeightbvARB")] + _glWeightbvARB_ptr _WeightbvARB_ptr { get; } + + delegate void _glWeightbvARB_intptr(int size, IntPtr weights); + [GlEntryPoint("glWeightbvARB")] + _glWeightbvARB_intptr _WeightbvARB_intptr { get; } + + // --- + + delegate void _glWeightdvARB(int size, double[] weights); + [GlEntryPoint("glWeightdvARB")] + _glWeightdvARB _WeightdvARB { get; } + + delegate void _glWeightdvARB_ptr(int size, void* weights); + [GlEntryPoint("glWeightdvARB")] + _glWeightdvARB_ptr _WeightdvARB_ptr { get; } + + delegate void _glWeightdvARB_intptr(int size, IntPtr weights); + [GlEntryPoint("glWeightdvARB")] + _glWeightdvARB_intptr _WeightdvARB_intptr { get; } + + // --- + + delegate void _glWeightfvARB(int size, float[] weights); + [GlEntryPoint("glWeightfvARB")] + _glWeightfvARB _WeightfvARB { get; } + + delegate void _glWeightfvARB_ptr(int size, void* weights); + [GlEntryPoint("glWeightfvARB")] + _glWeightfvARB_ptr _WeightfvARB_ptr { get; } + + delegate void _glWeightfvARB_intptr(int size, IntPtr weights); + [GlEntryPoint("glWeightfvARB")] + _glWeightfvARB_intptr _WeightfvARB_intptr { get; } + + // --- + + delegate void _glWeightivARB(int size, int[] weights); + [GlEntryPoint("glWeightivARB")] + _glWeightivARB _WeightivARB { get; } + + delegate void _glWeightivARB_ptr(int size, void* weights); + [GlEntryPoint("glWeightivARB")] + _glWeightivARB_ptr _WeightivARB_ptr { get; } + + delegate void _glWeightivARB_intptr(int size, IntPtr weights); + [GlEntryPoint("glWeightivARB")] + _glWeightivARB_intptr _WeightivARB_intptr { get; } + + // --- + + delegate void _glWeightsvARB(int size, short[] weights); + [GlEntryPoint("glWeightsvARB")] + _glWeightsvARB _WeightsvARB { get; } + + delegate void _glWeightsvARB_ptr(int size, void* weights); + [GlEntryPoint("glWeightsvARB")] + _glWeightsvARB_ptr _WeightsvARB_ptr { get; } + + delegate void _glWeightsvARB_intptr(int size, IntPtr weights); + [GlEntryPoint("glWeightsvARB")] + _glWeightsvARB_intptr _WeightsvARB_intptr { get; } + + // --- + + delegate void _glWeightubvARB(int size, byte[] weights); + [GlEntryPoint("glWeightubvARB")] + _glWeightubvARB _WeightubvARB { get; } + + delegate void _glWeightubvARB_ptr(int size, void* weights); + [GlEntryPoint("glWeightubvARB")] + _glWeightubvARB_ptr _WeightubvARB_ptr { get; } + + delegate void _glWeightubvARB_intptr(int size, IntPtr weights); + [GlEntryPoint("glWeightubvARB")] + _glWeightubvARB_intptr _WeightubvARB_intptr { get; } + + // --- + + delegate void _glWeightuivARB(int size, uint[] weights); + [GlEntryPoint("glWeightuivARB")] + _glWeightuivARB _WeightuivARB { get; } + + delegate void _glWeightuivARB_ptr(int size, void* weights); + [GlEntryPoint("glWeightuivARB")] + _glWeightuivARB_ptr _WeightuivARB_ptr { get; } + + delegate void _glWeightuivARB_intptr(int size, IntPtr weights); + [GlEntryPoint("glWeightuivARB")] + _glWeightuivARB_intptr _WeightuivARB_intptr { get; } + + // --- + + delegate void _glWeightusvARB(int size, ushort[] weights); + [GlEntryPoint("glWeightusvARB")] + _glWeightusvARB _WeightusvARB { get; } + + delegate void _glWeightusvARB_ptr(int size, void* weights); + [GlEntryPoint("glWeightusvARB")] + _glWeightusvARB_ptr _WeightusvARB_ptr { get; } + + delegate void _glWeightusvARB_intptr(int size, IntPtr weights); + [GlEntryPoint("glWeightusvARB")] + _glWeightusvARB_intptr _WeightusvARB_intptr { get; } + + // --- + + delegate void _glWindowPos2d(double x, double y); + [GlEntryPoint("glWindowPos2d")] + _glWindowPos2d _WindowPos2d { get; } + + // --- + + delegate void _glWindowPos2dARB(double x, double y); + [GlEntryPoint("glWindowPos2dARB")] + _glWindowPos2dARB _WindowPos2dARB { get; } + + // --- + + delegate void _glWindowPos2dMESA(double x, double y); + [GlEntryPoint("glWindowPos2dMESA")] + _glWindowPos2dMESA _WindowPos2dMESA { get; } + + // --- + + delegate void _glWindowPos2dv(double[] v); + [GlEntryPoint("glWindowPos2dv")] + _glWindowPos2dv _WindowPos2dv { get; } + + delegate void _glWindowPos2dv_ptr(void* v); + [GlEntryPoint("glWindowPos2dv")] + _glWindowPos2dv_ptr _WindowPos2dv_ptr { get; } + + delegate void _glWindowPos2dv_intptr(IntPtr v); + [GlEntryPoint("glWindowPos2dv")] + _glWindowPos2dv_intptr _WindowPos2dv_intptr { get; } + + // --- + + delegate void _glWindowPos2dvARB(double[] v); + [GlEntryPoint("glWindowPos2dvARB")] + _glWindowPos2dvARB _WindowPos2dvARB { get; } + + delegate void _glWindowPos2dvARB_ptr(void* v); + [GlEntryPoint("glWindowPos2dvARB")] + _glWindowPos2dvARB_ptr _WindowPos2dvARB_ptr { get; } + + delegate void _glWindowPos2dvARB_intptr(IntPtr v); + [GlEntryPoint("glWindowPos2dvARB")] + _glWindowPos2dvARB_intptr _WindowPos2dvARB_intptr { get; } + + // --- + + delegate void _glWindowPos2dvMESA(double[] v); + [GlEntryPoint("glWindowPos2dvMESA")] + _glWindowPos2dvMESA _WindowPos2dvMESA { get; } + + delegate void _glWindowPos2dvMESA_ptr(void* v); + [GlEntryPoint("glWindowPos2dvMESA")] + _glWindowPos2dvMESA_ptr _WindowPos2dvMESA_ptr { get; } + + delegate void _glWindowPos2dvMESA_intptr(IntPtr v); + [GlEntryPoint("glWindowPos2dvMESA")] + _glWindowPos2dvMESA_intptr _WindowPos2dvMESA_intptr { get; } + + // --- + + delegate void _glWindowPos2f(float x, float y); + [GlEntryPoint("glWindowPos2f")] + _glWindowPos2f _WindowPos2f { get; } + + // --- + + delegate void _glWindowPos2fARB(float x, float y); + [GlEntryPoint("glWindowPos2fARB")] + _glWindowPos2fARB _WindowPos2fARB { get; } + + // --- + + delegate void _glWindowPos2fMESA(float x, float y); + [GlEntryPoint("glWindowPos2fMESA")] + _glWindowPos2fMESA _WindowPos2fMESA { get; } + + // --- + + delegate void _glWindowPos2fv(float[] v); + [GlEntryPoint("glWindowPos2fv")] + _glWindowPos2fv _WindowPos2fv { get; } + + delegate void _glWindowPos2fv_ptr(void* v); + [GlEntryPoint("glWindowPos2fv")] + _glWindowPos2fv_ptr _WindowPos2fv_ptr { get; } + + delegate void _glWindowPos2fv_intptr(IntPtr v); + [GlEntryPoint("glWindowPos2fv")] + _glWindowPos2fv_intptr _WindowPos2fv_intptr { get; } + + // --- + + delegate void _glWindowPos2fvARB(float[] v); + [GlEntryPoint("glWindowPos2fvARB")] + _glWindowPos2fvARB _WindowPos2fvARB { get; } + + delegate void _glWindowPos2fvARB_ptr(void* v); + [GlEntryPoint("glWindowPos2fvARB")] + _glWindowPos2fvARB_ptr _WindowPos2fvARB_ptr { get; } + + delegate void _glWindowPos2fvARB_intptr(IntPtr v); + [GlEntryPoint("glWindowPos2fvARB")] + _glWindowPos2fvARB_intptr _WindowPos2fvARB_intptr { get; } + + // --- + + delegate void _glWindowPos2fvMESA(float[] v); + [GlEntryPoint("glWindowPos2fvMESA")] + _glWindowPos2fvMESA _WindowPos2fvMESA { get; } + + delegate void _glWindowPos2fvMESA_ptr(void* v); + [GlEntryPoint("glWindowPos2fvMESA")] + _glWindowPos2fvMESA_ptr _WindowPos2fvMESA_ptr { get; } + + delegate void _glWindowPos2fvMESA_intptr(IntPtr v); + [GlEntryPoint("glWindowPos2fvMESA")] + _glWindowPos2fvMESA_intptr _WindowPos2fvMESA_intptr { get; } + + // --- + + delegate void _glWindowPos2i(int x, int y); + [GlEntryPoint("glWindowPos2i")] + _glWindowPos2i _WindowPos2i { get; } + + // --- + + delegate void _glWindowPos2iARB(int x, int y); + [GlEntryPoint("glWindowPos2iARB")] + _glWindowPos2iARB _WindowPos2iARB { get; } + + // --- + + delegate void _glWindowPos2iMESA(int x, int y); + [GlEntryPoint("glWindowPos2iMESA")] + _glWindowPos2iMESA _WindowPos2iMESA { get; } + + // --- + + delegate void _glWindowPos2iv(int[] v); + [GlEntryPoint("glWindowPos2iv")] + _glWindowPos2iv _WindowPos2iv { get; } + + delegate void _glWindowPos2iv_ptr(void* v); + [GlEntryPoint("glWindowPos2iv")] + _glWindowPos2iv_ptr _WindowPos2iv_ptr { get; } + + delegate void _glWindowPos2iv_intptr(IntPtr v); + [GlEntryPoint("glWindowPos2iv")] + _glWindowPos2iv_intptr _WindowPos2iv_intptr { get; } + + // --- + + delegate void _glWindowPos2ivARB(int[] v); + [GlEntryPoint("glWindowPos2ivARB")] + _glWindowPos2ivARB _WindowPos2ivARB { get; } + + delegate void _glWindowPos2ivARB_ptr(void* v); + [GlEntryPoint("glWindowPos2ivARB")] + _glWindowPos2ivARB_ptr _WindowPos2ivARB_ptr { get; } + + delegate void _glWindowPos2ivARB_intptr(IntPtr v); + [GlEntryPoint("glWindowPos2ivARB")] + _glWindowPos2ivARB_intptr _WindowPos2ivARB_intptr { get; } + + // --- + + delegate void _glWindowPos2ivMESA(int[] v); + [GlEntryPoint("glWindowPos2ivMESA")] + _glWindowPos2ivMESA _WindowPos2ivMESA { get; } + + delegate void _glWindowPos2ivMESA_ptr(void* v); + [GlEntryPoint("glWindowPos2ivMESA")] + _glWindowPos2ivMESA_ptr _WindowPos2ivMESA_ptr { get; } + + delegate void _glWindowPos2ivMESA_intptr(IntPtr v); + [GlEntryPoint("glWindowPos2ivMESA")] + _glWindowPos2ivMESA_intptr _WindowPos2ivMESA_intptr { get; } + + // --- + + delegate void _glWindowPos2s(short x, short y); + [GlEntryPoint("glWindowPos2s")] + _glWindowPos2s _WindowPos2s { get; } + + // --- + + delegate void _glWindowPos2sARB(short x, short y); + [GlEntryPoint("glWindowPos2sARB")] + _glWindowPos2sARB _WindowPos2sARB { get; } + + // --- + + delegate void _glWindowPos2sMESA(short x, short y); + [GlEntryPoint("glWindowPos2sMESA")] + _glWindowPos2sMESA _WindowPos2sMESA { get; } + + // --- + + delegate void _glWindowPos2sv(short[] v); + [GlEntryPoint("glWindowPos2sv")] + _glWindowPos2sv _WindowPos2sv { get; } + + delegate void _glWindowPos2sv_ptr(void* v); + [GlEntryPoint("glWindowPos2sv")] + _glWindowPos2sv_ptr _WindowPos2sv_ptr { get; } + + delegate void _glWindowPos2sv_intptr(IntPtr v); + [GlEntryPoint("glWindowPos2sv")] + _glWindowPos2sv_intptr _WindowPos2sv_intptr { get; } + + // --- + + delegate void _glWindowPos2svARB(short[] v); + [GlEntryPoint("glWindowPos2svARB")] + _glWindowPos2svARB _WindowPos2svARB { get; } + + delegate void _glWindowPos2svARB_ptr(void* v); + [GlEntryPoint("glWindowPos2svARB")] + _glWindowPos2svARB_ptr _WindowPos2svARB_ptr { get; } + + delegate void _glWindowPos2svARB_intptr(IntPtr v); + [GlEntryPoint("glWindowPos2svARB")] + _glWindowPos2svARB_intptr _WindowPos2svARB_intptr { get; } + + // --- + + delegate void _glWindowPos2svMESA(short[] v); + [GlEntryPoint("glWindowPos2svMESA")] + _glWindowPos2svMESA _WindowPos2svMESA { get; } + + delegate void _glWindowPos2svMESA_ptr(void* v); + [GlEntryPoint("glWindowPos2svMESA")] + _glWindowPos2svMESA_ptr _WindowPos2svMESA_ptr { get; } + + delegate void _glWindowPos2svMESA_intptr(IntPtr v); + [GlEntryPoint("glWindowPos2svMESA")] + _glWindowPos2svMESA_intptr _WindowPos2svMESA_intptr { get; } + + // --- + + delegate void _glWindowPos3d(double x, double y, double z); + [GlEntryPoint("glWindowPos3d")] + _glWindowPos3d _WindowPos3d { get; } + + // --- + + delegate void _glWindowPos3dARB(double x, double y, double z); + [GlEntryPoint("glWindowPos3dARB")] + _glWindowPos3dARB _WindowPos3dARB { get; } + + // --- + + delegate void _glWindowPos3dMESA(double x, double y, double z); + [GlEntryPoint("glWindowPos3dMESA")] + _glWindowPos3dMESA _WindowPos3dMESA { get; } + + // --- + + delegate void _glWindowPos3dv(double[] v); + [GlEntryPoint("glWindowPos3dv")] + _glWindowPos3dv _WindowPos3dv { get; } + + delegate void _glWindowPos3dv_ptr(void* v); + [GlEntryPoint("glWindowPos3dv")] + _glWindowPos3dv_ptr _WindowPos3dv_ptr { get; } + + delegate void _glWindowPos3dv_intptr(IntPtr v); + [GlEntryPoint("glWindowPos3dv")] + _glWindowPos3dv_intptr _WindowPos3dv_intptr { get; } + + // --- + + delegate void _glWindowPos3dvARB(double[] v); + [GlEntryPoint("glWindowPos3dvARB")] + _glWindowPos3dvARB _WindowPos3dvARB { get; } + + delegate void _glWindowPos3dvARB_ptr(void* v); + [GlEntryPoint("glWindowPos3dvARB")] + _glWindowPos3dvARB_ptr _WindowPos3dvARB_ptr { get; } + + delegate void _glWindowPos3dvARB_intptr(IntPtr v); + [GlEntryPoint("glWindowPos3dvARB")] + _glWindowPos3dvARB_intptr _WindowPos3dvARB_intptr { get; } + + // --- + + delegate void _glWindowPos3dvMESA(double[] v); + [GlEntryPoint("glWindowPos3dvMESA")] + _glWindowPos3dvMESA _WindowPos3dvMESA { get; } + + delegate void _glWindowPos3dvMESA_ptr(void* v); + [GlEntryPoint("glWindowPos3dvMESA")] + _glWindowPos3dvMESA_ptr _WindowPos3dvMESA_ptr { get; } + + delegate void _glWindowPos3dvMESA_intptr(IntPtr v); + [GlEntryPoint("glWindowPos3dvMESA")] + _glWindowPos3dvMESA_intptr _WindowPos3dvMESA_intptr { get; } + + // --- + + delegate void _glWindowPos3f(float x, float y, float z); + [GlEntryPoint("glWindowPos3f")] + _glWindowPos3f _WindowPos3f { get; } + + // --- + + delegate void _glWindowPos3fARB(float x, float y, float z); + [GlEntryPoint("glWindowPos3fARB")] + _glWindowPos3fARB _WindowPos3fARB { get; } + + // --- + + delegate void _glWindowPos3fMESA(float x, float y, float z); + [GlEntryPoint("glWindowPos3fMESA")] + _glWindowPos3fMESA _WindowPos3fMESA { get; } + + // --- + + delegate void _glWindowPos3fv(float[] v); + [GlEntryPoint("glWindowPos3fv")] + _glWindowPos3fv _WindowPos3fv { get; } + + delegate void _glWindowPos3fv_ptr(void* v); + [GlEntryPoint("glWindowPos3fv")] + _glWindowPos3fv_ptr _WindowPos3fv_ptr { get; } + + delegate void _glWindowPos3fv_intptr(IntPtr v); + [GlEntryPoint("glWindowPos3fv")] + _glWindowPos3fv_intptr _WindowPos3fv_intptr { get; } + + // --- + + delegate void _glWindowPos3fvARB(float[] v); + [GlEntryPoint("glWindowPos3fvARB")] + _glWindowPos3fvARB _WindowPos3fvARB { get; } + + delegate void _glWindowPos3fvARB_ptr(void* v); + [GlEntryPoint("glWindowPos3fvARB")] + _glWindowPos3fvARB_ptr _WindowPos3fvARB_ptr { get; } + + delegate void _glWindowPos3fvARB_intptr(IntPtr v); + [GlEntryPoint("glWindowPos3fvARB")] + _glWindowPos3fvARB_intptr _WindowPos3fvARB_intptr { get; } + + // --- + + delegate void _glWindowPos3fvMESA(float[] v); + [GlEntryPoint("glWindowPos3fvMESA")] + _glWindowPos3fvMESA _WindowPos3fvMESA { get; } + + delegate void _glWindowPos3fvMESA_ptr(void* v); + [GlEntryPoint("glWindowPos3fvMESA")] + _glWindowPos3fvMESA_ptr _WindowPos3fvMESA_ptr { get; } + + delegate void _glWindowPos3fvMESA_intptr(IntPtr v); + [GlEntryPoint("glWindowPos3fvMESA")] + _glWindowPos3fvMESA_intptr _WindowPos3fvMESA_intptr { get; } + + // --- + + delegate void _glWindowPos3i(int x, int y, int z); + [GlEntryPoint("glWindowPos3i")] + _glWindowPos3i _WindowPos3i { get; } + + // --- + + delegate void _glWindowPos3iARB(int x, int y, int z); + [GlEntryPoint("glWindowPos3iARB")] + _glWindowPos3iARB _WindowPos3iARB { get; } + + // --- + + delegate void _glWindowPos3iMESA(int x, int y, int z); + [GlEntryPoint("glWindowPos3iMESA")] + _glWindowPos3iMESA _WindowPos3iMESA { get; } + + // --- + + delegate void _glWindowPos3iv(int[] v); + [GlEntryPoint("glWindowPos3iv")] + _glWindowPos3iv _WindowPos3iv { get; } + + delegate void _glWindowPos3iv_ptr(void* v); + [GlEntryPoint("glWindowPos3iv")] + _glWindowPos3iv_ptr _WindowPos3iv_ptr { get; } + + delegate void _glWindowPos3iv_intptr(IntPtr v); + [GlEntryPoint("glWindowPos3iv")] + _glWindowPos3iv_intptr _WindowPos3iv_intptr { get; } + + // --- + + delegate void _glWindowPos3ivARB(int[] v); + [GlEntryPoint("glWindowPos3ivARB")] + _glWindowPos3ivARB _WindowPos3ivARB { get; } + + delegate void _glWindowPos3ivARB_ptr(void* v); + [GlEntryPoint("glWindowPos3ivARB")] + _glWindowPos3ivARB_ptr _WindowPos3ivARB_ptr { get; } + + delegate void _glWindowPos3ivARB_intptr(IntPtr v); + [GlEntryPoint("glWindowPos3ivARB")] + _glWindowPos3ivARB_intptr _WindowPos3ivARB_intptr { get; } + + // --- + + delegate void _glWindowPos3ivMESA(int[] v); + [GlEntryPoint("glWindowPos3ivMESA")] + _glWindowPos3ivMESA _WindowPos3ivMESA { get; } + + delegate void _glWindowPos3ivMESA_ptr(void* v); + [GlEntryPoint("glWindowPos3ivMESA")] + _glWindowPos3ivMESA_ptr _WindowPos3ivMESA_ptr { get; } + + delegate void _glWindowPos3ivMESA_intptr(IntPtr v); + [GlEntryPoint("glWindowPos3ivMESA")] + _glWindowPos3ivMESA_intptr _WindowPos3ivMESA_intptr { get; } + + // --- + + delegate void _glWindowPos3s(short x, short y, short z); + [GlEntryPoint("glWindowPos3s")] + _glWindowPos3s _WindowPos3s { get; } + + // --- + + delegate void _glWindowPos3sARB(short x, short y, short z); + [GlEntryPoint("glWindowPos3sARB")] + _glWindowPos3sARB _WindowPos3sARB { get; } + + // --- + + delegate void _glWindowPos3sMESA(short x, short y, short z); + [GlEntryPoint("glWindowPos3sMESA")] + _glWindowPos3sMESA _WindowPos3sMESA { get; } + + // --- + + delegate void _glWindowPos3sv(short[] v); + [GlEntryPoint("glWindowPos3sv")] + _glWindowPos3sv _WindowPos3sv { get; } + + delegate void _glWindowPos3sv_ptr(void* v); + [GlEntryPoint("glWindowPos3sv")] + _glWindowPos3sv_ptr _WindowPos3sv_ptr { get; } + + delegate void _glWindowPos3sv_intptr(IntPtr v); + [GlEntryPoint("glWindowPos3sv")] + _glWindowPos3sv_intptr _WindowPos3sv_intptr { get; } + + // --- + + delegate void _glWindowPos3svARB(short[] v); + [GlEntryPoint("glWindowPos3svARB")] + _glWindowPos3svARB _WindowPos3svARB { get; } + + delegate void _glWindowPos3svARB_ptr(void* v); + [GlEntryPoint("glWindowPos3svARB")] + _glWindowPos3svARB_ptr _WindowPos3svARB_ptr { get; } + + delegate void _glWindowPos3svARB_intptr(IntPtr v); + [GlEntryPoint("glWindowPos3svARB")] + _glWindowPos3svARB_intptr _WindowPos3svARB_intptr { get; } + + // --- + + delegate void _glWindowPos3svMESA(short[] v); + [GlEntryPoint("glWindowPos3svMESA")] + _glWindowPos3svMESA _WindowPos3svMESA { get; } + + delegate void _glWindowPos3svMESA_ptr(void* v); + [GlEntryPoint("glWindowPos3svMESA")] + _glWindowPos3svMESA_ptr _WindowPos3svMESA_ptr { get; } + + delegate void _glWindowPos3svMESA_intptr(IntPtr v); + [GlEntryPoint("glWindowPos3svMESA")] + _glWindowPos3svMESA_intptr _WindowPos3svMESA_intptr { get; } + + // --- + + delegate void _glWindowPos4dMESA(double x, double y, double z, double w); + [GlEntryPoint("glWindowPos4dMESA")] + _glWindowPos4dMESA _WindowPos4dMESA { get; } + + // --- + + delegate void _glWindowPos4dvMESA(double[] v); + [GlEntryPoint("glWindowPos4dvMESA")] + _glWindowPos4dvMESA _WindowPos4dvMESA { get; } + + delegate void _glWindowPos4dvMESA_ptr(void* v); + [GlEntryPoint("glWindowPos4dvMESA")] + _glWindowPos4dvMESA_ptr _WindowPos4dvMESA_ptr { get; } + + delegate void _glWindowPos4dvMESA_intptr(IntPtr v); + [GlEntryPoint("glWindowPos4dvMESA")] + _glWindowPos4dvMESA_intptr _WindowPos4dvMESA_intptr { get; } + + // --- + + delegate void _glWindowPos4fMESA(float x, float y, float z, float w); + [GlEntryPoint("glWindowPos4fMESA")] + _glWindowPos4fMESA _WindowPos4fMESA { get; } + + // --- + + delegate void _glWindowPos4fvMESA(float[] v); + [GlEntryPoint("glWindowPos4fvMESA")] + _glWindowPos4fvMESA _WindowPos4fvMESA { get; } + + delegate void _glWindowPos4fvMESA_ptr(void* v); + [GlEntryPoint("glWindowPos4fvMESA")] + _glWindowPos4fvMESA_ptr _WindowPos4fvMESA_ptr { get; } + + delegate void _glWindowPos4fvMESA_intptr(IntPtr v); + [GlEntryPoint("glWindowPos4fvMESA")] + _glWindowPos4fvMESA_intptr _WindowPos4fvMESA_intptr { get; } + + // --- + + delegate void _glWindowPos4iMESA(int x, int y, int z, int w); + [GlEntryPoint("glWindowPos4iMESA")] + _glWindowPos4iMESA _WindowPos4iMESA { get; } + + // --- + + delegate void _glWindowPos4ivMESA(int[] v); + [GlEntryPoint("glWindowPos4ivMESA")] + _glWindowPos4ivMESA _WindowPos4ivMESA { get; } + + delegate void _glWindowPos4ivMESA_ptr(void* v); + [GlEntryPoint("glWindowPos4ivMESA")] + _glWindowPos4ivMESA_ptr _WindowPos4ivMESA_ptr { get; } + + delegate void _glWindowPos4ivMESA_intptr(IntPtr v); + [GlEntryPoint("glWindowPos4ivMESA")] + _glWindowPos4ivMESA_intptr _WindowPos4ivMESA_intptr { get; } + + // --- + + delegate void _glWindowPos4sMESA(short x, short y, short z, short w); + [GlEntryPoint("glWindowPos4sMESA")] + _glWindowPos4sMESA _WindowPos4sMESA { get; } + + // --- + + delegate void _glWindowPos4svMESA(short[] v); + [GlEntryPoint("glWindowPos4svMESA")] + _glWindowPos4svMESA _WindowPos4svMESA { get; } + + delegate void _glWindowPos4svMESA_ptr(void* v); + [GlEntryPoint("glWindowPos4svMESA")] + _glWindowPos4svMESA_ptr _WindowPos4svMESA_ptr { get; } + + delegate void _glWindowPos4svMESA_intptr(IntPtr v); + [GlEntryPoint("glWindowPos4svMESA")] + _glWindowPos4svMESA_intptr _WindowPos4svMESA_intptr { get; } + + // --- + + delegate void _glWindowRectanglesEXT(int mode, int count, int[] box); + [GlEntryPoint("glWindowRectanglesEXT")] + _glWindowRectanglesEXT _WindowRectanglesEXT { get; } + + delegate void _glWindowRectanglesEXT_ptr(int mode, int count, void* box); + [GlEntryPoint("glWindowRectanglesEXT")] + _glWindowRectanglesEXT_ptr _WindowRectanglesEXT_ptr { get; } + + delegate void _glWindowRectanglesEXT_intptr(int mode, int count, IntPtr box); + [GlEntryPoint("glWindowRectanglesEXT")] + _glWindowRectanglesEXT_intptr _WindowRectanglesEXT_intptr { get; } + + // --- + + delegate void _glWriteMaskEXT(uint res, uint @in, VertexShaderWriteMaskEXT outX, VertexShaderWriteMaskEXT outY, VertexShaderWriteMaskEXT outZ, VertexShaderWriteMaskEXT outW); + [GlEntryPoint("glWriteMaskEXT")] + _glWriteMaskEXT _WriteMaskEXT { get; } + + // --- + + delegate void _glDrawVkImageNV(UInt64 vkImage, uint sampler, float x0, float y0, float x1, float y1, float z, float s0, float t0, float s1, float t1); + [GlEntryPoint("glDrawVkImageNV")] + _glDrawVkImageNV _DrawVkImageNV { get; } + + // --- + + delegate VulkanProc _glGetVkProcAddrNV(string name); + [GlEntryPoint("glGetVkProcAddrNV")] + _glGetVkProcAddrNV _GetVkProcAddrNV { get; } + + delegate VulkanProc _glGetVkProcAddrNV_ptr(void* name); + [GlEntryPoint("glGetVkProcAddrNV")] + _glGetVkProcAddrNV_ptr _GetVkProcAddrNV_ptr { get; } + + delegate VulkanProc _glGetVkProcAddrNV_intptr(IntPtr name); + [GlEntryPoint("glGetVkProcAddrNV")] + _glGetVkProcAddrNV_intptr _GetVkProcAddrNV_intptr { get; } + + // --- + + delegate void _glWaitVkSemaphoreNV(UInt64 vkSemaphore); + [GlEntryPoint("glWaitVkSemaphoreNV")] + _glWaitVkSemaphoreNV _WaitVkSemaphoreNV { get; } + + // --- + + delegate void _glSignalVkSemaphoreNV(UInt64 vkSemaphore); + [GlEntryPoint("glSignalVkSemaphoreNV")] + _glSignalVkSemaphoreNV _SignalVkSemaphoreNV { get; } + + // --- + + delegate void _glSignalVkFenceNV(UInt64 vkFence); + [GlEntryPoint("glSignalVkFenceNV")] + _glSignalVkFenceNV _SignalVkFenceNV { get; } + + // --- + + delegate void _glFramebufferParameteriMESA(FramebufferTarget target, FramebufferParameterName pname, int param); + [GlEntryPoint("glFramebufferParameteriMESA")] + _glFramebufferParameteriMESA _FramebufferParameteriMESA { get; } + + // --- + + delegate void _glGetFramebufferParameterivMESA(FramebufferTarget target, FramebufferAttachmentParameterName pname, int[] @params); + [GlEntryPoint("glGetFramebufferParameterivMESA")] + _glGetFramebufferParameterivMESA _GetFramebufferParameterivMESA { get; } + + delegate void _glGetFramebufferParameterivMESA_ptr(FramebufferTarget target, FramebufferAttachmentParameterName pname, void* @params); + [GlEntryPoint("glGetFramebufferParameterivMESA")] + _glGetFramebufferParameterivMESA_ptr _GetFramebufferParameterivMESA_ptr { get; } + + delegate void _glGetFramebufferParameterivMESA_intptr(FramebufferTarget target, FramebufferAttachmentParameterName pname, IntPtr @params); + [GlEntryPoint("glGetFramebufferParameterivMESA")] + _glGetFramebufferParameterivMESA_intptr _GetFramebufferParameterivMESA_intptr { get; } + } + +} diff --git a/src/Avalonia.OpenGL/GlInterface.helpers.cs b/src/Avalonia.OpenGL/GlInterface.helpers.cs new file mode 100644 index 00000000000..1b433e1b204 --- /dev/null +++ b/src/Avalonia.OpenGL/GlInterface.helpers.cs @@ -0,0 +1,27 @@ +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +namespace Avalonia.OpenGL +{ + + public unsafe partial class GlInterface + { + + public int GetIntegerv_one(GetPName pname) + { + var oneArr = new int[1]; + GetIntegerv(pname, oneArr); + return oneArr[0]; + } + + public uint GenRenderbuffers_one(int n) + { + var oneArr = new uint[1]; + GenRenderbuffers(n, oneArr); + return oneArr[0]; + } + + } + +} \ No newline at end of file diff --git a/src/Avalonia.OpenGL/GlInterface.methods.cs b/src/Avalonia.OpenGL/GlInterface.methods.cs new file mode 100644 index 00000000000..7f063c25572 --- /dev/null +++ b/src/Avalonia.OpenGL/GlInterface.methods.cs @@ -0,0 +1,28918 @@ + +/* + + FUNCTION DOCUMENTATION FROM: https://github.com/KhronosGroup/OpenGL-Refpages/blob/master/gl4 + + API DOCUMENTATION LICENSE: + Copyright (C) 2010-2014 Khronos Group. + This material may be distributed subject to the terms and conditions set forth in + the Open Publication License, v 1.0, 8 June 1999. + http://opencontent.org/openpub/ + +*/ + + +using System; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +namespace Avalonia.OpenGL +{ + public unsafe partial class GlInterface + { + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Accum(AccumOp op, float value) => _Accum(op, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void AccumxOES(int op, float value) => _AccumxOES(op, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ActiveProgramEXT(uint program) => _ActiveProgramEXT(program); + + // --- + + /// + /// glActiveShaderProgram sets the linked program named by program to be the active program for the program pipeline object pipeline. The active program in the active program pipeline object is the target of calls to glUniform when no program has been made current through a call to glUseProgram. + /// + /// Specifies the program pipeline object to set the active program object for. + /// Specifies the program object to set as the active program pipeline object pipeline. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ActiveShaderProgram(uint pipeline, uint program) => _ActiveShaderProgram(pipeline, program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ActiveShaderProgramEXT(uint pipeline, uint program) => _ActiveShaderProgramEXT(pipeline, program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ActiveStencilFaceEXT(StencilFaceDirection face) => _ActiveStencilFaceEXT(face); + + // --- + + /// + /// glActiveTexture selects which texture unit subsequent texture state calls will affect. The number of texture units an implementation supports is implementation dependent, but must be at least 80. + /// + /// Specifies which texture unit to make active. The number of texture units is implementation dependent, but must be at least 80. texture must be one of GL_TEXTUREi, where i ranges from zero to the value of GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS minus one. The initial value is GL_TEXTURE0. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ActiveTexture(TextureUnit texture) => _ActiveTexture(texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ActiveTextureARB(TextureUnit texture) => _ActiveTextureARB(texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ActiveVaryingNV(uint program, string name) => _ActiveVaryingNV(program, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ActiveVaryingNV(uint program, void* name) => _ActiveVaryingNV_ptr(program, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ActiveVaryingNV(uint program, IntPtr name) => _ActiveVaryingNV_intptr(program, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void AlphaFragmentOp1ATI(FragmentOpATI op, uint dst, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod) => _AlphaFragmentOp1ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void AlphaFragmentOp2ATI(FragmentOpATI op, uint dst, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod, uint arg2, uint arg2Rep, uint arg2Mod) => _AlphaFragmentOp2ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void AlphaFragmentOp3ATI(FragmentOpATI op, uint dst, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod, uint arg2, uint arg2Rep, uint arg2Mod, uint arg3, uint arg3Rep, uint arg3Mod) => _AlphaFragmentOp3ATI(op, dst, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void AlphaFunc(AlphaFunction func, float @ref) => _AlphaFunc(func, @ref); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void AlphaFuncQCOM(int func, float @ref) => _AlphaFuncQCOM(func, @ref); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void AlphaFuncx(AlphaFunction func, float @ref) => _AlphaFuncx(func, @ref); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void AlphaFuncxOES(AlphaFunction func, float @ref) => _AlphaFuncxOES(func, @ref); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void AlphaToCoverageDitherControlNV(int mode) => _AlphaToCoverageDitherControlNV(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ApplyFramebufferAttachmentCMAAINTEL() => _ApplyFramebufferAttachmentCMAAINTEL(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ApplyTextureEXT(LightTextureModeEXT mode) => _ApplyTextureEXT(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool AcquireKeyedMutexWin32EXT(uint memory, UInt64 key, uint timeout) => _AcquireKeyedMutexWin32EXT(memory, key, timeout); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool AreProgramsResidentNV(int n, uint[] programs, bool[] residences) => _AreProgramsResidentNV(n, programs, residences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool AreProgramsResidentNV(int n, void* programs, void* residences) => _AreProgramsResidentNV_ptr(n, programs, residences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool AreProgramsResidentNV(int n, IntPtr programs, IntPtr residences) => _AreProgramsResidentNV_intptr(n, programs, residences); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool AreTexturesResident(int n, uint[] textures, bool[] residences) => _AreTexturesResident(n, textures, residences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool AreTexturesResident(int n, void* textures, void* residences) => _AreTexturesResident_ptr(n, textures, residences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool AreTexturesResident(int n, IntPtr textures, IntPtr residences) => _AreTexturesResident_intptr(n, textures, residences); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool AreTexturesResidentEXT(int n, uint[] textures, bool[] residences) => _AreTexturesResidentEXT(n, textures, residences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool AreTexturesResidentEXT(int n, void* textures, void* residences) => _AreTexturesResidentEXT_ptr(n, textures, residences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool AreTexturesResidentEXT(int n, IntPtr textures, IntPtr residences) => _AreTexturesResidentEXT_intptr(n, textures, residences); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ArrayElement(int i) => _ArrayElement(i); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ArrayElementEXT(int i) => _ArrayElementEXT(i); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ArrayObjectATI(EnableCap array, int size, ScalarType type, int stride, uint buffer, uint offset) => _ArrayObjectATI(array, size, type, stride, buffer, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint AsyncCopyBufferSubDataNVX(int waitSemaphoreCount, uint[] waitSemaphoreArray, UInt64[] fenceValueArray, uint readGpu, int writeGpuMask, uint readBuffer, uint writeBuffer, IntPtr readOffset, IntPtr writeOffset, IntPtr size, int signalSemaphoreCount, uint[] signalSemaphoreArray, UInt64[] signalValueArray) => _AsyncCopyBufferSubDataNVX(waitSemaphoreCount, waitSemaphoreArray, fenceValueArray, readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size, signalSemaphoreCount, signalSemaphoreArray, signalValueArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint AsyncCopyBufferSubDataNVX(int waitSemaphoreCount, void* waitSemaphoreArray, void* fenceValueArray, uint readGpu, int writeGpuMask, uint readBuffer, uint writeBuffer, IntPtr readOffset, IntPtr writeOffset, IntPtr size, int signalSemaphoreCount, void* signalSemaphoreArray, void* signalValueArray) => _AsyncCopyBufferSubDataNVX_ptr(waitSemaphoreCount, waitSemaphoreArray, fenceValueArray, readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size, signalSemaphoreCount, signalSemaphoreArray, signalValueArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint AsyncCopyBufferSubDataNVX(int waitSemaphoreCount, IntPtr waitSemaphoreArray, IntPtr fenceValueArray, uint readGpu, int writeGpuMask, uint readBuffer, uint writeBuffer, IntPtr readOffset, IntPtr writeOffset, IntPtr size, int signalSemaphoreCount, IntPtr signalSemaphoreArray, IntPtr signalValueArray) => _AsyncCopyBufferSubDataNVX_intptr(waitSemaphoreCount, waitSemaphoreArray, fenceValueArray, readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size, signalSemaphoreCount, signalSemaphoreArray, signalValueArray); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint AsyncCopyImageSubDataNVX(int waitSemaphoreCount, uint[] waitSemaphoreArray, UInt64[] waitValueArray, uint srcGpu, int dstGpuMask, uint srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth, int signalSemaphoreCount, uint[] signalSemaphoreArray, UInt64[] signalValueArray) => _AsyncCopyImageSubDataNVX(waitSemaphoreCount, waitSemaphoreArray, waitValueArray, srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth, signalSemaphoreCount, signalSemaphoreArray, signalValueArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint AsyncCopyImageSubDataNVX(int waitSemaphoreCount, void* waitSemaphoreArray, void* waitValueArray, uint srcGpu, int dstGpuMask, uint srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth, int signalSemaphoreCount, void* signalSemaphoreArray, void* signalValueArray) => _AsyncCopyImageSubDataNVX_ptr(waitSemaphoreCount, waitSemaphoreArray, waitValueArray, srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth, signalSemaphoreCount, signalSemaphoreArray, signalValueArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint AsyncCopyImageSubDataNVX(int waitSemaphoreCount, IntPtr waitSemaphoreArray, IntPtr waitValueArray, uint srcGpu, int dstGpuMask, uint srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth, int signalSemaphoreCount, IntPtr signalSemaphoreArray, IntPtr signalValueArray) => _AsyncCopyImageSubDataNVX_intptr(waitSemaphoreCount, waitSemaphoreArray, waitValueArray, srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth, signalSemaphoreCount, signalSemaphoreArray, signalValueArray); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void AsyncMarkerSGIX(uint marker) => _AsyncMarkerSGIX(marker); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void AttachObjectARB(int containerObj, int obj) => _AttachObjectARB(containerObj, obj); + + // --- + + /// + /// In order to create a complete shader program, there must be a way to specify the list of things that will be linked together. Program objects provide this mechanism. Shaders that are to be linked together in a program object must first be attached to that program object. glAttachShader attaches the shader object specified by shader to the program object specified by program. This indicates that shader will be included in link operations that will be performed on program. + /// All operations that can be performed on a shader object are valid whether or not the shader object is attached to a program object. It is permissible to attach a shader object to a program object before source code has been loaded into the shader object or before the shader object has been compiled. It is permissible to attach multiple shader objects of the same type because each may contain a portion of the complete shader. It is also permissible to attach a shader object to more than one program object. If a shader object is deleted while it is attached to a program object, it will be flagged for deletion, and deletion will not occur until glDetachShader is called to detach it from all program objects to which it is attached. + /// + /// Specifies the program object to which a shader object will be attached. + /// Specifies the shader object that is to be attached. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void AttachShader(uint program, uint shader) => _AttachShader(program, shader); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Begin(PrimitiveType mode) => _Begin(mode); + + // --- + + /// + /// Conditional rendering is started using glBeginConditionalRender and ended using glEndConditionalRender. During conditional rendering, all vertex array commands, as well as glClear and glClearBuffer have no effect if the (GL_SAMPLES_PASSED) result of the query object id is zero, or if the (GL_ANY_SAMPLES_PASSED) result is GL_FALSE. The results of commands setting the current vertex state, such as glVertexAttrib are undefined. If the (GL_SAMPLES_PASSED) result is non-zero or if the (GL_ANY_SAMPLES_PASSED) result is GL_TRUE, such commands are not discarded. The id parameter to glBeginConditionalRender must be the name of a query object previously returned from a call to glGenQueries. mode specifies how the results of the query object are to be interpreted. If mode is GL_QUERY_WAIT, the GL waits for the results of the query to be available and then uses the results to determine if subsequent rendering commands are discarded. If mode is GL_QUERY_NO_WAIT, the GL may choose to unconditionally execute the subsequent rendering commands without waiting for the query to complete. + /// If mode is GL_QUERY_BY_REGION_WAIT, the GL will also wait for occlusion query results and discard rendering commands if the result of the occlusion query is zero. If the query result is non-zero, subsequent rendering commands are executed, but the GL may discard the results of the commands for any region of the framebuffer that did not contribute to the sample count in the specified occlusion query. Any such discarding is done in an implementation-dependent manner, but the rendering command results may not be discarded for any samples that contributed to the occlusion query sample count. If mode is GL_QUERY_BY_REGION_NO_WAIT, the GL operates as in GL_QUERY_BY_REGION_WAIT, but may choose to unconditionally execute the subsequent rendering commands without waiting for the query to complete. + /// + /// Specifies the name of an occlusion query object whose results are used to determine if the rendering commands are discarded. + /// Specifies how glBeginConditionalRender interprets the results of the occlusion query. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginConditionalRender(uint id, ConditionalRenderMode mode) => _BeginConditionalRender(id, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginConditionalRenderNV(uint id, ConditionalRenderMode mode) => _BeginConditionalRenderNV(id, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginConditionalRenderNVX(uint id) => _BeginConditionalRenderNVX(id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginFragmentShaderATI() => _BeginFragmentShaderATI(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginOcclusionQueryNV(uint id) => _BeginOcclusionQueryNV(id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginPerfMonitorAMD(uint monitor) => _BeginPerfMonitorAMD(monitor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginPerfQueryINTEL(uint queryHandle) => _BeginPerfQueryINTEL(queryHandle); + + // --- + + /// + /// glBeginQuery and glEndQuery delimit the boundaries of a query object. query must be a name previously returned from a call to glGenQueries. If a query object with name id does not yet exist it is created with the type determined by target. target must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or GL_TIME_ELAPSED. The behavior of the query object depends on its type and is as follows. + /// If target is GL_SAMPLES_PASSED, id must be an unused name, or the name of an existing occlusion query object. When glBeginQuery is executed, the query object's samples-passed counter is reset to 0. Subsequent rendering will increment the counter for every sample that passes the depth test. If the value of GL_SAMPLE_BUFFERS is 0, then the samples-passed count is incremented by 1 for each fragment. If the value of GL_SAMPLE_BUFFERS is 1, then the samples-passed count is incremented by the number of samples whose coverage bit is set. However, implementations, at their discression may instead increase the samples-passed count by the value of GL_SAMPLES if any sample in the fragment is covered. When glEndQuery is executed, the samples-passed counter is assigned to the query object's result value. This value can be queried by calling glGetQueryObject with pnameGL_QUERY_RESULT. + /// If target is GL_ANY_SAMPLES_PASSED or GL_ANY_SAMPLES_PASSED_CONSERVATIVE, id must be an unused name, or the name of an existing boolean occlusion query object. When glBeginQuery is executed, the query object's samples-passed flag is reset to GL_FALSE. Subsequent rendering causes the flag to be set to GL_TRUE if any sample passes the depth test in the case of GL_ANY_SAMPLES_PASSED, or if the implementation determines that any sample might pass the depth test in the case of GL_ANY_SAMPLES_PASSED_CONSERVATIVE. The implementation may be able to provide a more efficient test in the case of GL_ANY_SAMPLES_PASSED_CONSERVATIVE if some false positives are acceptable to the application. When glEndQuery is executed, the samples-passed flag is assigned to the query object's result value. This value can be queried by calling glGetQueryObject with pnameGL_QUERY_RESULT. + /// If target is GL_PRIMITIVES_GENERATED, id must be an unused name, or the name of an existing primitive query object previously bound to the GL_PRIMITIVES_GENERATED query binding. When glBeginQuery is executed, the query object's primitives-generated counter is reset to 0. Subsequent rendering will increment the counter once for every vertex that is emitted from the geometry shader, or from the vertex shader if no geometry shader is present. When glEndQuery is executed, the primitives-generated counter is assigned to the query object's result value. This value can be queried by calling glGetQueryObject with pnameGL_QUERY_RESULT. + /// If target is GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, id must be an unused name, or the name of an existing primitive query object previously bound to the GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN query binding. When glBeginQuery is executed, the query object's primitives-written counter is reset to 0. Subsequent rendering will increment the counter once for every vertex that is written into the bound transform feedback buffer(s). If transform feedback mode is not activated between the call to glBeginQuery and glEndQuery, the counter will not be incremented. When glEndQuery is executed, the primitives-written counter is assigned to the query object's result value. This value can be queried by calling glGetQueryObject with pnameGL_QUERY_RESULT. + /// If target is GL_TIME_ELAPSED, id must be an unused name, or the name of an existing timer query object previously bound to the GL_TIME_ELAPSED query binding. When glBeginQuery is executed, the query object's time counter is reset to 0. When glEndQuery is executed, the elapsed server time that has passed since the call to glBeginQuery is written into the query object's time counter. This value can be queried by calling glGetQueryObject with pnameGL_QUERY_RESULT. + /// Querying the GL_QUERY_RESULT implicitly flushes the GL pipeline until the rendering delimited by the query object has completed and the result is available. GL_QUERY_RESULT_AVAILABLE can be queried to determine if the result is immediately available or if the rendering is not yet complete. + /// + /// Specifies the target type of query object established between glBeginQuery and the subsequent glEndQuery. The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED_CONSERVATIVE, GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or GL_TIME_ELAPSED. + /// Specifies the name of a query object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginQuery(QueryTarget target, uint id) => _BeginQuery(target, id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginQueryARB(int target, uint id) => _BeginQueryARB(target, id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginQueryEXT(QueryTarget target, uint id) => _BeginQueryEXT(target, id); + + // --- + + /// + /// glBeginQueryIndexed and glEndQueryIndexed delimit the boundaries of a query object. query must be a name previously returned from a call to glGenQueries. If a query object with name id does not yet exist it is created with the type determined by target. target must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or GL_TIME_ELAPSED. The behavior of the query object depends on its type and is as follows. + /// index specifies the index of the query target and must be between a target-specific maximum. + /// If target is GL_SAMPLES_PASSED, id must be an unused name, or the name of an existing occlusion query object. When glBeginQueryIndexed is executed, the query object's samples-passed counter is reset to 0. Subsequent rendering will increment the counter for every sample that passes the depth test. If the value of GL_SAMPLE_BUFFERS is 0, then the samples-passed count is incremented by 1 for each fragment. If the value of GL_SAMPLE_BUFFERS is 1, then the samples-passed count is incremented by the number of samples whose coverage bit is set. However, implementations, at their discression may instead increase the samples-passed count by the value of GL_SAMPLES if any sample in the fragment is covered. When glEndQueryIndexed is executed, the samples-passed counter is assigned to the query object's result value. This value can be queried by calling glGetQueryObject with pnameGL_QUERY_RESULT. When target is GL_SAMPLES_PASSED, index must be zero. + /// If target is GL_ANY_SAMPLES_PASSED, id must be an unused name, or the name of an existing boolean occlusion query object. When glBeginQueryIndexed is executed, the query object's samples-passed flag is reset to GL_FALSE. Subsequent rendering causes the flag to be set to GL_TRUE if any sample passes the depth test. When glEndQueryIndexed is executed, the samples-passed flag is assigned to the query object's result value. This value can be queried by calling glGetQueryObject with pnameGL_QUERY_RESULT. When target is GL_ANY_SAMPLES_PASSED, index must be zero. + /// If target is GL_PRIMITIVES_GENERATED, id must be an unused name, or the name of an existing primitive query object previously bound to the GL_PRIMITIVES_GENERATED query binding. When glBeginQueryIndexed is executed, the query object's primitives-generated counter is reset to 0. Subsequent rendering will increment the counter once for every vertex that is emitted from the geometry shader to the stream given by index, or from the vertex shader if index is zero and no geometry shader is present. When glEndQueryIndexed is executed, the primitives-generated counter for stream index is assigned to the query object's result value. This value can be queried by calling glGetQueryObject with pnameGL_QUERY_RESULT. When target is GL_PRIMITIVES_GENERATED, index must be less than the value of GL_MAX_VERTEX_STREAMS. + /// If target is GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, id must be an unused name, or the name of an existing primitive query object previously bound to the GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN query binding. When glBeginQueryIndexed is executed, the query object's primitives-written counter for the stream specified by index is reset to 0. Subsequent rendering will increment the counter once for every vertex that is written into the bound transform feedback buffer(s) for stream index. If transform feedback mode is not activated between the call to glBeginQueryIndexed and glEndQueryIndexed, the counter will not be incremented. When glEndQueryIndexed is executed, the primitives-written counter for stream index is assigned to the query object's result value. This value can be queried by calling glGetQueryObject with pnameGL_QUERY_RESULT. When target is GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, index must be less than the value of GL_MAX_VERTEX_STREAMS. + /// If target is GL_TIME_ELAPSED, id must be an unused name, or the name of an existing timer query object previously bound to the GL_TIME_ELAPSED query binding. When glBeginQueryIndexed is executed, the query object's time counter is reset to 0. When glEndQueryIndexed is executed, the elapsed server time that has passed since the call to glBeginQueryIndexed is written into the query object's time counter. This value can be queried by calling glGetQueryObject with pnameGL_QUERY_RESULT. When target is GL_TIME_ELAPSED, index must be zero. + /// Querying the GL_QUERY_RESULT implicitly flushes the GL pipeline until the rendering delimited by the query object has completed and the result is available. GL_QUERY_RESULT_AVAILABLE can be queried to determine if the result is immediately available or if the rendering is not yet complete. + /// + /// Specifies the target type of query object established between glBeginQueryIndexed and the subsequent glEndQueryIndexed. The symbolic constant must be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, or GL_TIME_ELAPSED. + /// Specifies the index of the query target upon which to begin the query. + /// Specifies the name of a query object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginQueryIndexed(QueryTarget target, uint index, uint id) => _BeginQueryIndexed(target, index, id); + + // --- + + /// + /// Transform feedback mode captures the values of varying variables written by the vertex shader (or, if active, the geometry shader). Transform feedback is said to be active after a call to glBeginTransformFeedback until a subsequent call to glEndTransformFeedback. Transform feedback commands must be paired. + /// If no geometry shader is present, while transform feedback is active the mode parameter to glDrawArrays must match those specified in the following table: + /// Transform Feedback primitiveMode Allowed Render Primitive modesGL_POINTSGL_POINTSGL_LINESGL_LINES, GL_LINE_LOOP, GL_LINE_STRIP, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCYGL_TRIANGLESGL_TRIANGLES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY + /// If a geometry shader is present, the output primitive type from the geometry shader must match those provided in the following table: + /// Transform Feedback primitiveMode Allowed Geometry Shader Output Primitive Type GL_POINTSpointsGL_LINESline_stripGL_TRIANGLEStriangle_strip + /// + /// Specify the output type of the primitives that will be recorded into the buffer objects that are bound for transform feedback. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginTransformFeedback(PrimitiveType primitiveMode) => _BeginTransformFeedback(primitiveMode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginTransformFeedbackEXT(PrimitiveType primitiveMode) => _BeginTransformFeedbackEXT(primitiveMode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginTransformFeedbackNV(PrimitiveType primitiveMode) => _BeginTransformFeedbackNV(primitiveMode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginVertexShaderEXT() => _BeginVertexShaderEXT(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BeginVideoCaptureNV(uint video_capture_slot) => _BeginVideoCaptureNV(video_capture_slot); + + // --- + + /// + /// glBindAttribLocation is used to associate a user-defined attribute variable in the program object specified by program with a generic vertex attribute index. The name of the user-defined attribute variable is passed as a null terminated string in name. The generic vertex attribute index to be bound to this variable is specified by index. When program is made part of current state, values provided via the generic vertex attribute index will modify the value of the user-defined attribute variable specified by name. + /// If name refers to a matrix attribute variable, index refers to the first column of the matrix. Other matrix columns are then automatically bound to locations index+1 for a matrix of type mat2; index+1 and index+2 for a matrix of type mat3; and index+1, index+2, and index+3 for a matrix of type mat4. + /// This command makes it possible for vertex shaders to use descriptive names for attribute variables rather than generic variables that are numbered from zero to the value of GL_MAX_VERTEX_ATTRIBS minus one. The values sent to each generic attribute index are part of current state. If a different program object is made current by calling glUseProgram, the generic vertex attributes are tracked in such a way that the same values will be observed by attributes in the new program object that are also bound to index. + /// Attribute variable name-to-generic attribute index bindings for a program object can be explicitly assigned at any time by calling glBindAttribLocation. Attribute bindings do not go into effect until glLinkProgram is called. After a program object has been linked successfully, the index values for generic attributes remain fixed (and their values can be queried) until the next link command occurs. + /// Any attribute binding that occurs after the program object has been linked will not take effect until the next time the program object is linked. + /// + /// Specifies the handle of the program object in which the association is to be made. + /// Specifies the index of the generic vertex attribute to be bound. + /// Specifies a null terminated string containing the name of the vertex shader attribute variable to which index is to be bound. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindAttribLocation(uint program, uint index, string name) => _BindAttribLocation(program, index, name); + + /// + /// glBindAttribLocation is used to associate a user-defined attribute variable in the program object specified by program with a generic vertex attribute index. The name of the user-defined attribute variable is passed as a null terminated string in name. The generic vertex attribute index to be bound to this variable is specified by index. When program is made part of current state, values provided via the generic vertex attribute index will modify the value of the user-defined attribute variable specified by name. + /// If name refers to a matrix attribute variable, index refers to the first column of the matrix. Other matrix columns are then automatically bound to locations index+1 for a matrix of type mat2; index+1 and index+2 for a matrix of type mat3; and index+1, index+2, and index+3 for a matrix of type mat4. + /// This command makes it possible for vertex shaders to use descriptive names for attribute variables rather than generic variables that are numbered from zero to the value of GL_MAX_VERTEX_ATTRIBS minus one. The values sent to each generic attribute index are part of current state. If a different program object is made current by calling glUseProgram, the generic vertex attributes are tracked in such a way that the same values will be observed by attributes in the new program object that are also bound to index. + /// Attribute variable name-to-generic attribute index bindings for a program object can be explicitly assigned at any time by calling glBindAttribLocation. Attribute bindings do not go into effect until glLinkProgram is called. After a program object has been linked successfully, the index values for generic attributes remain fixed (and their values can be queried) until the next link command occurs. + /// Any attribute binding that occurs after the program object has been linked will not take effect until the next time the program object is linked. + /// + /// Specifies the handle of the program object in which the association is to be made. + /// Specifies the index of the generic vertex attribute to be bound. + /// Specifies a null terminated string containing the name of the vertex shader attribute variable to which index is to be bound. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindAttribLocation(uint program, uint index, void* name) => _BindAttribLocation_ptr(program, index, name); + + /// + /// glBindAttribLocation is used to associate a user-defined attribute variable in the program object specified by program with a generic vertex attribute index. The name of the user-defined attribute variable is passed as a null terminated string in name. The generic vertex attribute index to be bound to this variable is specified by index. When program is made part of current state, values provided via the generic vertex attribute index will modify the value of the user-defined attribute variable specified by name. + /// If name refers to a matrix attribute variable, index refers to the first column of the matrix. Other matrix columns are then automatically bound to locations index+1 for a matrix of type mat2; index+1 and index+2 for a matrix of type mat3; and index+1, index+2, and index+3 for a matrix of type mat4. + /// This command makes it possible for vertex shaders to use descriptive names for attribute variables rather than generic variables that are numbered from zero to the value of GL_MAX_VERTEX_ATTRIBS minus one. The values sent to each generic attribute index are part of current state. If a different program object is made current by calling glUseProgram, the generic vertex attributes are tracked in such a way that the same values will be observed by attributes in the new program object that are also bound to index. + /// Attribute variable name-to-generic attribute index bindings for a program object can be explicitly assigned at any time by calling glBindAttribLocation. Attribute bindings do not go into effect until glLinkProgram is called. After a program object has been linked successfully, the index values for generic attributes remain fixed (and their values can be queried) until the next link command occurs. + /// Any attribute binding that occurs after the program object has been linked will not take effect until the next time the program object is linked. + /// + /// Specifies the handle of the program object in which the association is to be made. + /// Specifies the index of the generic vertex attribute to be bound. + /// Specifies a null terminated string containing the name of the vertex shader attribute variable to which index is to be bound. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindAttribLocation(uint program, uint index, IntPtr name) => _BindAttribLocation_intptr(program, index, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindAttribLocationARB(int programObj, uint index, string name) => _BindAttribLocationARB(programObj, index, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindAttribLocationARB(int programObj, uint index, void* name) => _BindAttribLocationARB_ptr(programObj, index, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindAttribLocationARB(int programObj, uint index, IntPtr name) => _BindAttribLocationARB_intptr(programObj, index, name); + + // --- + + /// + /// glBindBuffer binds a buffer object to the specified buffer binding point. Calling glBindBuffer with target set to one of the accepted symbolic constants and buffer set to the name of a buffer object binds that buffer object name to the target. If no buffer object with name buffer exists, one is created with that name. When a buffer object is bound to a target, the previous binding for that target is automatically broken. + /// Buffer object names are unsigned integers. The value zero is reserved, but there is no default buffer object for each buffer object target. Instead, buffer set to zero effectively unbinds any buffer object previously bound, and restores client memory usage for that buffer object target (if supported for that target). Buffer object names and the corresponding buffer object contents are local to the shared object space of the current GL rendering context; two rendering contexts share buffer object names only if they explicitly enable sharing between contexts through the appropriate GL windows interfaces functions. + /// glGenBuffers must be used to generate a set of unused buffer object names. + /// The state of a buffer object immediately after it is first bound is an unmapped zero-sized memory buffer with GL_READ_WRITE access and GL_STATIC_DRAW usage. + /// While a non-zero buffer object name is bound, GL operations on the target to which it is bound affect the bound buffer object, and queries of the target to which it is bound return state from the bound buffer object. While buffer object name zero is bound, as in the initial state, attempts to modify or query state on the target to which it is bound generates an GL_INVALID_OPERATION error. + /// When a non-zero buffer object is bound to the GL_ARRAY_BUFFER target, the vertex array pointer parameter is interpreted as an offset within the buffer object measured in basic machine units. + /// When a non-zero buffer object is bound to the GL_DRAW_INDIRECT_BUFFER target, parameters for draws issued through glDrawArraysIndirect and glDrawElementsIndirect are sourced from the specified offset in that buffer object's data store. + /// When a non-zero buffer object is bound to the GL_DISPATCH_INDIRECT_BUFFER target, the parameters for compute dispatches issued through glDispatchComputeIndirect are sourced from the specified offset in that buffer object's data store. + /// While a non-zero buffer object is bound to the GL_ELEMENT_ARRAY_BUFFER target, the indices parameter of glDrawElements, glDrawElementsInstanced, glDrawElementsBaseVertex, glDrawRangeElements, glDrawRangeElementsBaseVertex, glMultiDrawElements, or glMultiDrawElementsBaseVertex is interpreted as an offset within the buffer object measured in basic machine units. + /// While a non-zero buffer object is bound to the GL_PIXEL_PACK_BUFFER target, the following commands are affected: glGetCompressedTexImage, glGetTexImage, and glReadPixels. The pointer parameter is interpreted as an offset within the buffer object measured in basic machine units. + /// While a non-zero buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target, the following commands are affected: glCompressedTexImage1D, glCompressedTexImage2D, glCompressedTexImage3D, glCompressedTexSubImage1D, glCompressedTexSubImage2D, glCompressedTexSubImage3D, glTexImage1D, glTexImage2D, glTexImage3D, glTexSubImage1D, glTexSubImage2D, and glTexSubImage3D. The pointer parameter is interpreted as an offset within the buffer object measured in basic machine units. + /// The buffer targets GL_COPY_READ_BUFFER and GL_COPY_WRITE_BUFFER are provided to allow glCopyBufferSubData to be used without disturbing the state of other bindings. However, glCopyBufferSubData may be used with any pair of buffer binding points. + /// The GL_TRANSFORM_FEEDBACK_BUFFER buffer binding point may be passed to glBindBuffer, but will not directly affect transform feedback state. Instead, the indexed GL_TRANSFORM_FEEDBACK_BUFFER bindings must be used through a call to glBindBufferBase or glBindBufferRange. This will affect the generic GL_TRANSFORM_FEEDBACK_BUFFER binding. + /// Likewise, the GL_UNIFORM_BUFFER, GL_ATOMIC_COUNTER_BUFFER and GL_SHADER_STORAGE_BUFFER buffer binding points may be used, but do not directly affect uniform buffer, atomic counter buffer or shader storage buffer state, respectively. glBindBufferBase or glBindBufferRange must be used to bind a buffer to an indexed uniform buffer, atomic counter buffer or shader storage buffer binding point. + /// The GL_QUERY_BUFFER binding point is used to specify a buffer object that is to receive the results of query objects through calls to the glGetQueryObject family of commands. + /// A buffer object binding created with glBindBuffer remains active until a different buffer object name is bound to the same target, or until the bound buffer object is deleted with glDeleteBuffers. + /// Once created, a named buffer object may be re-bound to any target as often as needed. However, the GL implementation may make choices about how to optimize the storage of a buffer object based on its initial binding target. + /// + /// Specifies the target to which the buffer object is bound, which must be one of the buffer binding targets in the following table: + /// Specifies the name of a buffer object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBuffer(BufferTargetARB target, uint buffer) => _BindBuffer(target, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBufferARB(BufferTargetARB target, uint buffer) => _BindBufferARB(target, buffer); + + // --- + + /// + /// glBindBufferBase binds the buffer object buffer to the binding point at index index of the array of targets specified by target. Each target represents an indexed array of buffer binding points, as well as a single general binding point that can be used by other buffer manipulation functions such as glBindBuffer or glMapBuffer. In addition to binding buffer to the indexed buffer binding target, glBindBufferBase also binds buffer to the generic buffer binding point specified by target. + /// + /// Specify the target of the bind operation. target must be one of GL_ATOMIC_COUNTER_BUFFER, GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or GL_SHADER_STORAGE_BUFFER. + /// Specify the index of the binding point within the array specified by target. + /// The name of a buffer object to bind to the specified binding point. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBufferBase(BufferTargetARB target, uint index, uint buffer) => _BindBufferBase(target, index, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBufferBaseEXT(BufferTargetARB target, uint index, uint buffer) => _BindBufferBaseEXT(target, index, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBufferBaseNV(BufferTargetARB target, uint index, uint buffer) => _BindBufferBaseNV(target, index, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBufferOffsetEXT(BufferTargetARB target, uint index, uint buffer, IntPtr offset) => _BindBufferOffsetEXT(target, index, buffer, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBufferOffsetNV(BufferTargetARB target, uint index, uint buffer, IntPtr offset) => _BindBufferOffsetNV(target, index, buffer, offset); + + // --- + + /// + /// glBindBufferRange binds a range the buffer object buffer represented by offset and size to the binding point at index index of the array of targets specified by target. Each target represents an indexed array of buffer binding points, as well as a single general binding point that can be used by other buffer manipulation functions such as glBindBuffer or glMapBuffer. In addition to binding a range of buffer to the indexed buffer binding target, glBindBufferRange also binds the range to the generic buffer binding point specified by target. + /// offset specifies the offset in basic machine units into the buffer object buffer and size specifies the amount of data that can be read from the buffer object while used as an indexed target. + /// + /// Specify the target of the bind operation. target must be one of GL_ATOMIC_COUNTER_BUFFER, GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER, or GL_SHADER_STORAGE_BUFFER. + /// Specify the index of the binding point within the array specified by target. + /// The name of a buffer object to bind to the specified binding point. + /// The starting offset in basic machine units into the buffer object buffer. + /// The amount of data in machine units that can be read from the buffer object while used as an indexed target. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBufferRange(BufferTargetARB target, uint index, uint buffer, IntPtr offset, IntPtr size) => _BindBufferRange(target, index, buffer, offset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBufferRangeEXT(BufferTargetARB target, uint index, uint buffer, IntPtr offset, IntPtr size) => _BindBufferRangeEXT(target, index, buffer, offset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBufferRangeNV(BufferTargetARB target, uint index, uint buffer, IntPtr offset, IntPtr size) => _BindBufferRangeNV(target, index, buffer, offset, size); + + // --- + + /// + /// glBindBuffersBase binds a set of count buffer objects whose names are given in the array buffers to the count consecutive binding points starting from index first of the array of targets specified by target. If buffers is NULL then glBindBuffersBase unbinds any buffers that are currently bound to the referenced binding points. Assuming no errors are generated, it is equivalent to the following pseudo-code, which calls glBindBufferBase, with the exception that the non-indexed target is not changed by glBindBuffersBase: + /// for (i = 0; i < count; i++) { if (buffers != NULL) { glBindBufferBase(target, first + i, buffers[i]); } else { glBindBufferBase(target, first + i, 0); } } + /// Each entry in buffers will be checked individually and if found to be invalid, the state for that buffer binding index will not be changed and an error will be generated. However, the state for other buffer binding indices referenced by the command will still be updated. + /// + /// Specify the target of the bind operation. target must be one of GL_ATOMIC_COUNTER_BUFFER, GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or GL_SHADER_STORAGE_BUFFER. + /// Specify the index of the first binding point within the array specified by target. + /// Specify the number of contiguous binding points to which to bind buffers. + /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or NULL. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBuffersBase(BufferTargetARB target, uint first, int count, uint[] buffers) => _BindBuffersBase(target, first, count, buffers); + + /// + /// glBindBuffersBase binds a set of count buffer objects whose names are given in the array buffers to the count consecutive binding points starting from index first of the array of targets specified by target. If buffers is NULL then glBindBuffersBase unbinds any buffers that are currently bound to the referenced binding points. Assuming no errors are generated, it is equivalent to the following pseudo-code, which calls glBindBufferBase, with the exception that the non-indexed target is not changed by glBindBuffersBase: + /// for (i = 0; i < count; i++) { if (buffers != NULL) { glBindBufferBase(target, first + i, buffers[i]); } else { glBindBufferBase(target, first + i, 0); } } + /// Each entry in buffers will be checked individually and if found to be invalid, the state for that buffer binding index will not be changed and an error will be generated. However, the state for other buffer binding indices referenced by the command will still be updated. + /// + /// Specify the target of the bind operation. target must be one of GL_ATOMIC_COUNTER_BUFFER, GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or GL_SHADER_STORAGE_BUFFER. + /// Specify the index of the first binding point within the array specified by target. + /// Specify the number of contiguous binding points to which to bind buffers. + /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or NULL. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBuffersBase(BufferTargetARB target, uint first, int count, void* buffers) => _BindBuffersBase_ptr(target, first, count, buffers); + + /// + /// glBindBuffersBase binds a set of count buffer objects whose names are given in the array buffers to the count consecutive binding points starting from index first of the array of targets specified by target. If buffers is NULL then glBindBuffersBase unbinds any buffers that are currently bound to the referenced binding points. Assuming no errors are generated, it is equivalent to the following pseudo-code, which calls glBindBufferBase, with the exception that the non-indexed target is not changed by glBindBuffersBase: + /// for (i = 0; i < count; i++) { if (buffers != NULL) { glBindBufferBase(target, first + i, buffers[i]); } else { glBindBufferBase(target, first + i, 0); } } + /// Each entry in buffers will be checked individually and if found to be invalid, the state for that buffer binding index will not be changed and an error will be generated. However, the state for other buffer binding indices referenced by the command will still be updated. + /// + /// Specify the target of the bind operation. target must be one of GL_ATOMIC_COUNTER_BUFFER, GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or GL_SHADER_STORAGE_BUFFER. + /// Specify the index of the first binding point within the array specified by target. + /// Specify the number of contiguous binding points to which to bind buffers. + /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or NULL. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBuffersBase(BufferTargetARB target, uint first, int count, IntPtr buffers) => _BindBuffersBase_intptr(target, first, count, buffers); + + // --- + + /// + /// glBindBuffersRange binds a set of count ranges from buffer objects whose names are given in the array buffers to the count consecutive binding points starting from index first of the array of targets specified by target. offsets specifies the address of an array containing count starting offsets within the buffers, and sizes specifies the address of an array of count sizes of the ranges. If buffers is NULL then offsets and sizes are ignored and glBindBuffersRange unbinds any buffers that are currently bound to the referenced binding points. Assuming no errors are generated, it is equivalent to the following pseudo-code, which calls glBindBufferRange, with the exception that the non-indexed target is not changed by glBindBuffersRange: + /// for (i = 0; i < count; i++) { if (buffers != NULL) { glBindBufferRange(target, first + i, buffers[i], offsets[i], sizes[i]); } else { glBindBufferRange(target, first + i, 0); } } + /// Each entry in buffers, offsets, and sizes will be checked individually and if found to be invalid, the state for that buffer binding index will not be changed and an error will be generated. However, the state for other buffer binding indices referenced by the command will still be updated. + /// + /// Specify the target of the bind operation. target must be one of GL_ATOMIC_COUNTER_BUFFER, GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or GL_SHADER_STORAGE_BUFFER. + /// Specify the index of the first binding point within the array specified by target. + /// Specify the number of contiguous binding points to which to bind buffers. + /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or NULL. + /// A pointer to an array of offsets into the corresponding buffer in buffers to bind, or NULL if buffers is NULL. + /// A pointer to an array of sizes of the corresponding buffer in buffers to bind, or NULL if buffers is NULL. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBuffersRange(BufferTargetARB target, uint first, int count, uint[] buffers, IntPtr[] offsets, IntPtr[] sizes) => _BindBuffersRange(target, first, count, buffers, offsets, sizes); + + /// + /// glBindBuffersRange binds a set of count ranges from buffer objects whose names are given in the array buffers to the count consecutive binding points starting from index first of the array of targets specified by target. offsets specifies the address of an array containing count starting offsets within the buffers, and sizes specifies the address of an array of count sizes of the ranges. If buffers is NULL then offsets and sizes are ignored and glBindBuffersRange unbinds any buffers that are currently bound to the referenced binding points. Assuming no errors are generated, it is equivalent to the following pseudo-code, which calls glBindBufferRange, with the exception that the non-indexed target is not changed by glBindBuffersRange: + /// for (i = 0; i < count; i++) { if (buffers != NULL) { glBindBufferRange(target, first + i, buffers[i], offsets[i], sizes[i]); } else { glBindBufferRange(target, first + i, 0); } } + /// Each entry in buffers, offsets, and sizes will be checked individually and if found to be invalid, the state for that buffer binding index will not be changed and an error will be generated. However, the state for other buffer binding indices referenced by the command will still be updated. + /// + /// Specify the target of the bind operation. target must be one of GL_ATOMIC_COUNTER_BUFFER, GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or GL_SHADER_STORAGE_BUFFER. + /// Specify the index of the first binding point within the array specified by target. + /// Specify the number of contiguous binding points to which to bind buffers. + /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or NULL. + /// A pointer to an array of offsets into the corresponding buffer in buffers to bind, or NULL if buffers is NULL. + /// A pointer to an array of sizes of the corresponding buffer in buffers to bind, or NULL if buffers is NULL. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBuffersRange(BufferTargetARB target, uint first, int count, void* buffers, void* offsets, void* sizes) => _BindBuffersRange_ptr(target, first, count, buffers, offsets, sizes); + + /// + /// glBindBuffersRange binds a set of count ranges from buffer objects whose names are given in the array buffers to the count consecutive binding points starting from index first of the array of targets specified by target. offsets specifies the address of an array containing count starting offsets within the buffers, and sizes specifies the address of an array of count sizes of the ranges. If buffers is NULL then offsets and sizes are ignored and glBindBuffersRange unbinds any buffers that are currently bound to the referenced binding points. Assuming no errors are generated, it is equivalent to the following pseudo-code, which calls glBindBufferRange, with the exception that the non-indexed target is not changed by glBindBuffersRange: + /// for (i = 0; i < count; i++) { if (buffers != NULL) { glBindBufferRange(target, first + i, buffers[i], offsets[i], sizes[i]); } else { glBindBufferRange(target, first + i, 0); } } + /// Each entry in buffers, offsets, and sizes will be checked individually and if found to be invalid, the state for that buffer binding index will not be changed and an error will be generated. However, the state for other buffer binding indices referenced by the command will still be updated. + /// + /// Specify the target of the bind operation. target must be one of GL_ATOMIC_COUNTER_BUFFER, GL_TRANSFORM_FEEDBACK_BUFFER, GL_UNIFORM_BUFFER or GL_SHADER_STORAGE_BUFFER. + /// Specify the index of the first binding point within the array specified by target. + /// Specify the number of contiguous binding points to which to bind buffers. + /// A pointer to an array of names of buffer objects to bind to the targets on the specified binding point, or NULL. + /// A pointer to an array of offsets into the corresponding buffer in buffers to bind, or NULL if buffers is NULL. + /// A pointer to an array of sizes of the corresponding buffer in buffers to bind, or NULL if buffers is NULL. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindBuffersRange(BufferTargetARB target, uint first, int count, IntPtr buffers, IntPtr offsets, IntPtr sizes) => _BindBuffersRange_intptr(target, first, count, buffers, offsets, sizes); + + // --- + + /// + /// glBindFragDataLocation explicitly specifies the binding of the user-defined varying out variable name to fragment shader color number colorNumber for program program. If name was bound previously, its assigned binding is replaced with colorNumber. name must be a null-terminated string. colorNumber must be less than GL_MAX_DRAW_BUFFERS. + /// The bindings specified by glBindFragDataLocation have no effect until program is next linked. Bindings may be specified at any time after program has been created. Specifically, they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are reserved by the GL. + /// In addition to the errors generated by glBindFragDataLocation, the program program will fail to link if: The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. More than one varying out variable is bound to the same color number. + /// + /// The name of the program containing varying out variable whose binding to modify + /// The color number to bind the user-defined varying out variable to + /// The name of the user-defined varying out variable whose binding to modify + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragDataLocation(uint program, uint color, string name) => _BindFragDataLocation(program, color, name); + + /// + /// glBindFragDataLocation explicitly specifies the binding of the user-defined varying out variable name to fragment shader color number colorNumber for program program. If name was bound previously, its assigned binding is replaced with colorNumber. name must be a null-terminated string. colorNumber must be less than GL_MAX_DRAW_BUFFERS. + /// The bindings specified by glBindFragDataLocation have no effect until program is next linked. Bindings may be specified at any time after program has been created. Specifically, they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are reserved by the GL. + /// In addition to the errors generated by glBindFragDataLocation, the program program will fail to link if: The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. More than one varying out variable is bound to the same color number. + /// + /// The name of the program containing varying out variable whose binding to modify + /// The color number to bind the user-defined varying out variable to + /// The name of the user-defined varying out variable whose binding to modify + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragDataLocation(uint program, uint color, void* name) => _BindFragDataLocation_ptr(program, color, name); + + /// + /// glBindFragDataLocation explicitly specifies the binding of the user-defined varying out variable name to fragment shader color number colorNumber for program program. If name was bound previously, its assigned binding is replaced with colorNumber. name must be a null-terminated string. colorNumber must be less than GL_MAX_DRAW_BUFFERS. + /// The bindings specified by glBindFragDataLocation have no effect until program is next linked. Bindings may be specified at any time after program has been created. Specifically, they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are reserved by the GL. + /// In addition to the errors generated by glBindFragDataLocation, the program program will fail to link if: The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. More than one varying out variable is bound to the same color number. + /// + /// The name of the program containing varying out variable whose binding to modify + /// The color number to bind the user-defined varying out variable to + /// The name of the user-defined varying out variable whose binding to modify + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragDataLocation(uint program, uint color, IntPtr name) => _BindFragDataLocation_intptr(program, color, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragDataLocationEXT(uint program, uint color, string name) => _BindFragDataLocationEXT(program, color, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragDataLocationEXT(uint program, uint color, void* name) => _BindFragDataLocationEXT_ptr(program, color, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragDataLocationEXT(uint program, uint color, IntPtr name) => _BindFragDataLocationEXT_intptr(program, color, name); + + // --- + + /// + /// glBindFragDataLocationIndexed specifies that the varying out variable name in program should be bound to fragment color colorNumber when the program is next linked. index may be zero or one to specify that the color be used as either the first or second color input to the blend equation, respectively. + /// The bindings specified by glBindFragDataLocationIndexed have no effect until program is next linked. Bindings may be specified at any time after program has been created. Specifically, they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are reserved by the GL. + /// If name was bound previously, its assigned binding is replaced with colorNumber and index. name must be a null-terminated string. index must be less than or equal to one, and colorNumber must be less than the value of GL_MAX_DRAW_BUFFERS if index is zero, and less than the value of GL_MAX_DUAL_SOURCE_DRAW_BUFFERS if index is greater than or equal to one. + /// In addition to the errors generated by glBindFragDataLocationIndexed, the program program will fail to link if: The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. More than one varying out variable is bound to the same color number. + /// + /// The name of the program containing varying out variable whose binding to modify + /// The color number to bind the user-defined varying out variable to + /// The index of the color input to bind the user-defined varying out variable to + /// The name of the user-defined varying out variable whose binding to modify + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragDataLocationIndexed(uint program, uint colorNumber, uint index, string name) => _BindFragDataLocationIndexed(program, colorNumber, index, name); + + /// + /// glBindFragDataLocationIndexed specifies that the varying out variable name in program should be bound to fragment color colorNumber when the program is next linked. index may be zero or one to specify that the color be used as either the first or second color input to the blend equation, respectively. + /// The bindings specified by glBindFragDataLocationIndexed have no effect until program is next linked. Bindings may be specified at any time after program has been created. Specifically, they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are reserved by the GL. + /// If name was bound previously, its assigned binding is replaced with colorNumber and index. name must be a null-terminated string. index must be less than or equal to one, and colorNumber must be less than the value of GL_MAX_DRAW_BUFFERS if index is zero, and less than the value of GL_MAX_DUAL_SOURCE_DRAW_BUFFERS if index is greater than or equal to one. + /// In addition to the errors generated by glBindFragDataLocationIndexed, the program program will fail to link if: The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. More than one varying out variable is bound to the same color number. + /// + /// The name of the program containing varying out variable whose binding to modify + /// The color number to bind the user-defined varying out variable to + /// The index of the color input to bind the user-defined varying out variable to + /// The name of the user-defined varying out variable whose binding to modify + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragDataLocationIndexed(uint program, uint colorNumber, uint index, void* name) => _BindFragDataLocationIndexed_ptr(program, colorNumber, index, name); + + /// + /// glBindFragDataLocationIndexed specifies that the varying out variable name in program should be bound to fragment color colorNumber when the program is next linked. index may be zero or one to specify that the color be used as either the first or second color input to the blend equation, respectively. + /// The bindings specified by glBindFragDataLocationIndexed have no effect until program is next linked. Bindings may be specified at any time after program has been created. Specifically, they may be specified before shader objects are attached to the program. Therefore, any name may be specified in name, including a name that is never used as a varying out variable in any fragment shader object. Names beginning with gl_ are reserved by the GL. + /// If name was bound previously, its assigned binding is replaced with colorNumber and index. name must be a null-terminated string. index must be less than or equal to one, and colorNumber must be less than the value of GL_MAX_DRAW_BUFFERS if index is zero, and less than the value of GL_MAX_DUAL_SOURCE_DRAW_BUFFERS if index is greater than or equal to one. + /// In addition to the errors generated by glBindFragDataLocationIndexed, the program program will fail to link if: The number of active outputs is greater than the value GL_MAX_DRAW_BUFFERS. More than one varying out variable is bound to the same color number. + /// + /// The name of the program containing varying out variable whose binding to modify + /// The color number to bind the user-defined varying out variable to + /// The index of the color input to bind the user-defined varying out variable to + /// The name of the user-defined varying out variable whose binding to modify + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragDataLocationIndexed(uint program, uint colorNumber, uint index, IntPtr name) => _BindFragDataLocationIndexed_intptr(program, colorNumber, index, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragDataLocationIndexedEXT(uint program, uint colorNumber, uint index, string name) => _BindFragDataLocationIndexedEXT(program, colorNumber, index, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragDataLocationIndexedEXT(uint program, uint colorNumber, uint index, void* name) => _BindFragDataLocationIndexedEXT_ptr(program, colorNumber, index, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragDataLocationIndexedEXT(uint program, uint colorNumber, uint index, IntPtr name) => _BindFragDataLocationIndexedEXT_intptr(program, colorNumber, index, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFragmentShaderATI(uint id) => _BindFragmentShaderATI(id); + + // --- + + /// + /// glBindFramebuffer binds the framebuffer object with name framebuffer to the framebuffer target specified by target. target must be either GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. If a framebuffer object is bound to GL_DRAW_FRAMEBUFFER or GL_READ_FRAMEBUFFER, it becomes the target for rendering or readback operations, respectively, until it is deleted or another framebuffer is bound to the corresponding bind point. Calling glBindFramebuffer with target set to GL_FRAMEBUFFER binds framebuffer to both the read and draw framebuffer targets. framebuffer is the name of a framebuffer object previously returned from a call to glGenFramebuffers, or zero to break the existing binding of a framebuffer object to target. + /// + /// Specifies the framebuffer target of the binding operation. + /// Specifies the name of the framebuffer object to bind. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFramebuffer(FramebufferTarget target, uint framebuffer) => _BindFramebuffer(target, framebuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFramebufferEXT(FramebufferTarget target, uint framebuffer) => _BindFramebufferEXT(target, framebuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindFramebufferOES(FramebufferTarget target, uint framebuffer) => _BindFramebufferOES(target, framebuffer); + + // --- + + /// + /// glBindImageTexture binds a single level of a texture to an image unit for the purpose of reading and writing it from shaders. unit specifies the zero-based index of the image unit to which to bind the texture level. texture specifies the name of an existing texture object to bind to the image unit. If texture is zero, then any existing binding to the image unit is broken. level specifies the level of the texture to bind to the image unit. + /// If texture is the name of a one-, two-, or three-dimensional array texture, a cube map or cube map array texture, or a two-dimensional multisample array texture, then it is possible to bind either the entire array, or only a single layer of the array to the image unit. In such cases, if layered is GL_TRUE, the entire array is attached to the image unit and layer is ignored. However, if layered is GL_FALSE then layer specifies the layer of the array to attach to the image unit. + /// access specifies the access types to be performed by shaders and may be set to GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE to indicate read-only, write-only or read-write access, respectively. Violation of the access type specified in access (for example, if a shader writes to an image bound with access set to GL_READ_ONLY) will lead to undefined results, possibly including program termination. + /// format specifies the format that is to be used when performing formatted stores into the image from shaders. format must be compatible with the texture's internal format and must be one of the formats listed in the following table. + /// Internal Image Formats Image Unit Format Format Qualifier GL_RGBA32Frgba32fGL_RGBA16Frgba16fGL_RG32Frg32fGL_RG16Frg16fGL_R11F_G11F_B10Fr11f_g11f_b10fGL_R32Fr32fGL_R16Fr16fGL_RGBA32UIrgba32uiGL_RGBA16UIrgba16uiGL_RGB10_A2UIrgb10_a2uiGL_RGBA8UIrgba8uiGL_RG32UIrg32uiGL_RG16UIrg16uiGL_RG8UIrg8uiGL_R32UIr32uiGL_R16UIr16uiGL_R8UIr8uiGL_RGBA32Irgba32iGL_RGBA16Irgba16iGL_RGBA8Irgba8iGL_RG32Irg32iGL_RG16Irg16iGL_RG8Irg8iGL_R32Ir32iGL_R16Ir16iGL_R8Ir8iGL_RGBA16rgba16GL_RGB10_A2rgb10_a2GL_RGBA8rgba8GL_RG16rg16GL_RG8rg8GL_R16r16GL_R8r8GL_RGBA16_SNORMrgba16_snormGL_RGBA8_SNORMrgba8_snormGL_RG16_SNORMrg16_snormGL_RG8_SNORMrg8_snormGL_R16_SNORMr16_snormGL_R8_SNORMr8_snorm + /// When a texture is bound to an image unit, the format parameter for the image unit need not exactly match the texture internal format as long as the formats are considered compatible as defined in the OpenGL Specification. The matching criterion used for a given texture may be determined by calling glGetTexParameter with value set to GL_IMAGE_FORMAT_COMPATIBILITY_TYPE, with return values of GL_IMAGE_FORMAT_COMPATIBILITY_BY_SIZE and GL_IMAGE_FORMAT_COMPATIBILITY_BY_CLASS, specifying matches by size and class, respectively. + /// + /// Specifies the index of the image unit to which to bind the texture + /// Specifies the name of the texture to bind to the image unit. + /// Specifies the level of the texture that is to be bound. + /// Specifies whether a layered texture binding is to be established. + /// If layered is GL_FALSE, specifies the layer of texture to be bound to the image unit. Ignored otherwise. + /// Specifies a token indicating the type of access that will be performed on the image. + /// Specifies the format that the elements of the image will be treated as for the purposes of formatted stores. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindImageTexture(uint unit, uint texture, int level, bool layered, int layer, BufferAccessARB access, InternalFormat format) => _BindImageTexture(unit, texture, level, layered, layer, access, format); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindImageTextureEXT(uint index, uint texture, int level, bool layered, int layer, BufferAccessARB access, int format) => _BindImageTextureEXT(index, texture, level, layered, layer, access, format); + + // --- + + /// + /// glBindImageTextures binds images from an array of existing texture objects to a specified number of consecutive image units. count specifies the number of texture objects whose names are stored in the array textures. That number of texture names are read from the array and bound to the count consecutive texture units starting from first. If the name zero appears in the textures array, any existing binding to the image unit is reset. Any non-zero entry in textures must be the name of an existing texture object. When a non-zero entry in textures is present, the image at level zero is bound, the binding is considered layered, with the first layer set to zero, and the image is bound for read-write access. The image unit format parameter is taken from the internal format of the image at level zero of the texture object. For cube map textures, the internal format of the positive X image of level zero is used. If textures is NULL then it is as if an appropriately sized array containing only zeros had been specified. + /// glBindImageTextures is equivalent to the following pseudo code: + /// for (i = 0; i < count; i++) { if (textures == NULL || textures[i] = 0) { glBindImageTexture(first + i, 0, 0, GL_FALSE, 0, GL_READ_ONLY, GL_R8); } else { glBindImageTexture(first + i, textures[i], 0, GL_TRUE, 0, GL_READ_WRITE, lookupInternalFormat(textures[i])); } } + /// Each entry in textures will be checked individually and if found to be invalid, the state for that image unit will not be changed and an error will be generated. However, the state for other texture image units referenced by the command will still be updated. + /// + /// Specifies the first image unit to which a texture is to be bound. + /// Specifies the number of textures to bind. + /// Specifies the address of an array of names of existing texture objects. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindImageTextures(uint first, int count, uint[] textures) => _BindImageTextures(first, count, textures); + + /// + /// glBindImageTextures binds images from an array of existing texture objects to a specified number of consecutive image units. count specifies the number of texture objects whose names are stored in the array textures. That number of texture names are read from the array and bound to the count consecutive texture units starting from first. If the name zero appears in the textures array, any existing binding to the image unit is reset. Any non-zero entry in textures must be the name of an existing texture object. When a non-zero entry in textures is present, the image at level zero is bound, the binding is considered layered, with the first layer set to zero, and the image is bound for read-write access. The image unit format parameter is taken from the internal format of the image at level zero of the texture object. For cube map textures, the internal format of the positive X image of level zero is used. If textures is NULL then it is as if an appropriately sized array containing only zeros had been specified. + /// glBindImageTextures is equivalent to the following pseudo code: + /// for (i = 0; i < count; i++) { if (textures == NULL || textures[i] = 0) { glBindImageTexture(first + i, 0, 0, GL_FALSE, 0, GL_READ_ONLY, GL_R8); } else { glBindImageTexture(first + i, textures[i], 0, GL_TRUE, 0, GL_READ_WRITE, lookupInternalFormat(textures[i])); } } + /// Each entry in textures will be checked individually and if found to be invalid, the state for that image unit will not be changed and an error will be generated. However, the state for other texture image units referenced by the command will still be updated. + /// + /// Specifies the first image unit to which a texture is to be bound. + /// Specifies the number of textures to bind. + /// Specifies the address of an array of names of existing texture objects. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindImageTextures(uint first, int count, void* textures) => _BindImageTextures_ptr(first, count, textures); + + /// + /// glBindImageTextures binds images from an array of existing texture objects to a specified number of consecutive image units. count specifies the number of texture objects whose names are stored in the array textures. That number of texture names are read from the array and bound to the count consecutive texture units starting from first. If the name zero appears in the textures array, any existing binding to the image unit is reset. Any non-zero entry in textures must be the name of an existing texture object. When a non-zero entry in textures is present, the image at level zero is bound, the binding is considered layered, with the first layer set to zero, and the image is bound for read-write access. The image unit format parameter is taken from the internal format of the image at level zero of the texture object. For cube map textures, the internal format of the positive X image of level zero is used. If textures is NULL then it is as if an appropriately sized array containing only zeros had been specified. + /// glBindImageTextures is equivalent to the following pseudo code: + /// for (i = 0; i < count; i++) { if (textures == NULL || textures[i] = 0) { glBindImageTexture(first + i, 0, 0, GL_FALSE, 0, GL_READ_ONLY, GL_R8); } else { glBindImageTexture(first + i, textures[i], 0, GL_TRUE, 0, GL_READ_WRITE, lookupInternalFormat(textures[i])); } } + /// Each entry in textures will be checked individually and if found to be invalid, the state for that image unit will not be changed and an error will be generated. However, the state for other texture image units referenced by the command will still be updated. + /// + /// Specifies the first image unit to which a texture is to be bound. + /// Specifies the number of textures to bind. + /// Specifies the address of an array of names of existing texture objects. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindImageTextures(uint first, int count, IntPtr textures) => _BindImageTextures_intptr(first, count, textures); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint BindLightParameterEXT(LightName light, LightParameter value) => _BindLightParameterEXT(light, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint BindMaterialParameterEXT(MaterialFace face, MaterialParameter value) => _BindMaterialParameterEXT(face, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindMultiTextureEXT(TextureUnit texunit, TextureTarget target, uint texture) => _BindMultiTextureEXT(texunit, target, texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint BindParameterEXT(VertexShaderParameterEXT value) => _BindParameterEXT(value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindProgramARB(ProgramTarget target, uint program) => _BindProgramARB(target, program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindProgramNV(VertexAttribEnumNV target, uint id) => _BindProgramNV(target, id); + + // --- + + /// + /// glBindProgramPipeline binds a program pipeline object to the current context. pipeline must be a name previously returned from a call to glGenProgramPipelines. If no program pipeline exists with name pipeline then a new pipeline object is created with that name and initialized to the default state vector. + /// When a program pipeline object is bound using glBindProgramPipeline, any previous binding is broken and is replaced with a binding to the specified pipeline object. If pipeline is zero, the previous binding is broken and is not replaced, leaving no pipeline object bound. If no current program object has been established by glUseProgram, the program objects used for each stage and for uniform updates are taken from the bound program pipeline object, if any. If there is a current program object established by glUseProgram, the bound program pipeline object has no effect on rendering or uniform updates. When a bound program pipeline object is used for rendering, individual shader executables are taken from its program objects. + /// + /// Specifies the name of the pipeline object to bind to the context. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindProgramPipeline(uint pipeline) => _BindProgramPipeline(pipeline); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindProgramPipelineEXT(uint pipeline) => _BindProgramPipelineEXT(pipeline); + + // --- + + /// + /// glBindRenderbuffer binds the renderbuffer object with name renderbuffer to the renderbuffer target specified by target. target must be GL_RENDERBUFFER. renderbuffer is the name of a renderbuffer object previously returned from a call to glGenRenderbuffers, or zero to break the existing binding of a renderbuffer object to target. + /// + /// Specifies the renderbuffer target of the binding operation. target must be GL_RENDERBUFFER. + /// Specifies the name of the renderbuffer object to bind. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindRenderbuffer(RenderbufferTarget target, uint renderbuffer) => _BindRenderbuffer(target, renderbuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindRenderbufferEXT(RenderbufferTarget target, uint renderbuffer) => _BindRenderbufferEXT(target, renderbuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindRenderbufferOES(RenderbufferTarget target, uint renderbuffer) => _BindRenderbufferOES(target, renderbuffer); + + // --- + + /// + /// glBindSampler binds sampler to the texture unit at index unit. sampler must be zero or the name of a sampler object previously returned from a call to glGenSamplers. unit must be less than the value of GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS. + /// When a sampler object is bound to a texture unit, its state supersedes that of the texture object bound to that texture unit. If the sampler name zero is bound to a texture unit, the currently bound texture's sampler state becomes active. A single sampler object may be bound to multiple texture units simultaneously. + /// + /// Specifies the index of the texture unit to which the sampler is bound. + /// Specifies the name of a sampler. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindSampler(uint unit, uint sampler) => _BindSampler(unit, sampler); + + // --- + + /// + /// glBindSamplers binds samplers from an array of existing sampler objects to a specified number of consecutive sampler units. count specifies the number of sampler objects whose names are stored in the array samplers. That number of sampler names is read from the array and bound to the count consecutive sampler units starting from first. + /// If the name zero appears in the samplers array, any existing binding to the sampler unit is reset. Any non-zero entry in samplers must be the name of an existing sampler object. When a non-zero entry in samplers is present, that sampler object is bound to the corresponding sampler unit. If samplers is NULL then it is as if an appropriately sized array containing only zeros had been specified. + /// glBindSamplers is equivalent to the following pseudo code: + /// for (i = 0; i < count; i++) { if (samplers == NULL) { glBindSampler(first + i, 0); } else { glBindSampler(first + i, samplers[i]); } } + /// Each entry in samplers will be checked individually and if found to be invalid, the state for that sampler unit will not be changed and an error will be generated. However, the state for other sampler units referenced by the command will still be updated. + /// + /// Specifies the first sampler unit to which a sampler object is to be bound. + /// Specifies the number of samplers to bind. + /// Specifies the address of an array of names of existing sampler objects. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindSamplers(uint first, int count, uint[] samplers) => _BindSamplers(first, count, samplers); + + /// + /// glBindSamplers binds samplers from an array of existing sampler objects to a specified number of consecutive sampler units. count specifies the number of sampler objects whose names are stored in the array samplers. That number of sampler names is read from the array and bound to the count consecutive sampler units starting from first. + /// If the name zero appears in the samplers array, any existing binding to the sampler unit is reset. Any non-zero entry in samplers must be the name of an existing sampler object. When a non-zero entry in samplers is present, that sampler object is bound to the corresponding sampler unit. If samplers is NULL then it is as if an appropriately sized array containing only zeros had been specified. + /// glBindSamplers is equivalent to the following pseudo code: + /// for (i = 0; i < count; i++) { if (samplers == NULL) { glBindSampler(first + i, 0); } else { glBindSampler(first + i, samplers[i]); } } + /// Each entry in samplers will be checked individually and if found to be invalid, the state for that sampler unit will not be changed and an error will be generated. However, the state for other sampler units referenced by the command will still be updated. + /// + /// Specifies the first sampler unit to which a sampler object is to be bound. + /// Specifies the number of samplers to bind. + /// Specifies the address of an array of names of existing sampler objects. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindSamplers(uint first, int count, void* samplers) => _BindSamplers_ptr(first, count, samplers); + + /// + /// glBindSamplers binds samplers from an array of existing sampler objects to a specified number of consecutive sampler units. count specifies the number of sampler objects whose names are stored in the array samplers. That number of sampler names is read from the array and bound to the count consecutive sampler units starting from first. + /// If the name zero appears in the samplers array, any existing binding to the sampler unit is reset. Any non-zero entry in samplers must be the name of an existing sampler object. When a non-zero entry in samplers is present, that sampler object is bound to the corresponding sampler unit. If samplers is NULL then it is as if an appropriately sized array containing only zeros had been specified. + /// glBindSamplers is equivalent to the following pseudo code: + /// for (i = 0; i < count; i++) { if (samplers == NULL) { glBindSampler(first + i, 0); } else { glBindSampler(first + i, samplers[i]); } } + /// Each entry in samplers will be checked individually and if found to be invalid, the state for that sampler unit will not be changed and an error will be generated. However, the state for other sampler units referenced by the command will still be updated. + /// + /// Specifies the first sampler unit to which a sampler object is to be bound. + /// Specifies the number of samplers to bind. + /// Specifies the address of an array of names of existing sampler objects. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindSamplers(uint first, int count, IntPtr samplers) => _BindSamplers_intptr(first, count, samplers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindShadingRateImageNV(uint texture) => _BindShadingRateImageNV(texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint BindTexGenParameterEXT(TextureUnit unit, TextureCoordName coord, TextureGenParameter value) => _BindTexGenParameterEXT(unit, coord, value); + + // --- + + /// + /// glBindTexture lets you create or use a named texture. Calling glBindTexture with target set to GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, GL_TEXTURE_CUBE_MAP, GL_TEXTURE_CUBE_MAP_ARRAY, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE or GL_TEXTURE_2D_MULTISAMPLE_ARRAY and texture set to the name of the new texture binds the texture name to the target. When a texture is bound to a target, the previous binding for that target is automatically broken. + /// Texture names are unsigned integers. The value zero is reserved to represent the default texture for each texture target. Texture names and the corresponding texture contents are local to the shared object space of the current GL rendering context; two rendering contexts share texture names only if they explicitly enable sharing between contexts through the appropriate GL windows interfaces functions. + /// You must use glGenTextures to generate a set of new texture names. + /// When a texture is first bound, it assumes the specified target: A texture first bound to GL_TEXTURE_1D becomes one-dimensional texture, a texture first bound to GL_TEXTURE_2D becomes two-dimensional texture, a texture first bound to GL_TEXTURE_3D becomes three-dimensional texture, a texture first bound to GL_TEXTURE_1D_ARRAY becomes one-dimensional array texture, a texture first bound to GL_TEXTURE_2D_ARRAY becomes two-dimensional array texture, a texture first bound to GL_TEXTURE_RECTANGLE becomes rectangle texture, a texture first bound to GL_TEXTURE_CUBE_MAP becomes a cube-mapped texture, a texture first bound to GL_TEXTURE_CUBE_MAP_ARRAY becomes a cube-mapped array texture, a texture first bound to GL_TEXTURE_BUFFER becomes a buffer texture, a texture first bound to GL_TEXTURE_2D_MULTISAMPLE becomes a two-dimensional multisampled texture, and a texture first bound to GL_TEXTURE_2D_MULTISAMPLE_ARRAY becomes a two-dimensional multisampled array texture. The state of a one-dimensional texture immediately after it is first bound is equivalent to the state of the default GL_TEXTURE_1D at GL initialization, and similarly for the other texture types. + /// While a texture is bound, GL operations on the target to which it is bound affect the bound texture, and queries of the target to which it is bound return state from the bound texture. In effect, the texture targets become aliases for the textures currently bound to them, and the texture name zero refers to the default textures that were bound to them at initialization. + /// A texture binding created with glBindTexture remains active until a different texture is bound to the same target, or until the bound texture is deleted with glDeleteTextures. + /// Once created, a named texture may be re-bound to its same original target as often as needed. It is usually much faster to use glBindTexture to bind an existing named texture to one of the texture targets than it is to reload the texture image using glTexImage1D, glTexImage2D, glTexImage3D or another similar function. + /// + /// Specifies the target to which the texture is bound. Must be one of GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, GL_TEXTURE_CUBE_MAP, GL_TEXTURE_CUBE_MAP_ARRAY, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE or GL_TEXTURE_2D_MULTISAMPLE_ARRAY. + /// Specifies the name of a texture. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindTexture(TextureTarget target, uint texture) => _BindTexture(target, texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindTextureEXT(TextureTarget target, uint texture) => _BindTextureEXT(target, texture); + + // --- + + /// + /// glBindTextureUnit binds an existing texture object to the texture unit numbered unit. + /// texture must be zero or the name of an existing texture object. When texture is the name of an existing texture object, that object is bound to the target, in the corresponding texture unit, that was specified when the object was created. When texture is zero, each of the targets enumerated at the beginning of this section is reset to its default texture for the corresponding texture image unit. + /// + /// Specifies the texture unit, to which the texture object should be bound to. + /// Specifies the name of a texture. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindTextureUnit(uint unit, uint texture) => _BindTextureUnit(unit, texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint BindTextureUnitParameterEXT(TextureUnit unit, VertexShaderTextureUnitParameter value) => _BindTextureUnitParameterEXT(unit, value); + + // --- + + /// + /// glBindTextures binds an array of existing texture objects to a specified number of consecutive texture units. count specifies the number of texture objects whose names are stored in the array textures. That number of texture names are read from the array and bound to the count consecutive texture units starting from first. The target, or type of texture is deduced from the texture object and each texture is bound to the corresponding target of the texture unit. If the name zero appears in the textures array, any existing binding to any target of the texture unit is reset and the default texture for that target is bound in its place. Any non-zero entry in textures must be the name of an existing texture object. If textures is NULL then it is as if an appropriately sized array containing only zeros had been specified. + /// With the exception that the active texture selector maintains its current value, glBindTextures is equivalent to the following pseudo code: + /// for (i = 0; i < count; i++) { GLuint texture; if (textures == NULL) { texture = 0; } else { texture = textures[i]; } glActiveTexture(GL_TEXTURE0 + first + i); if (texture != 0) { GLenum target = /* target of textures[i] */; glBindTexture(target, textures[i]); } else { for (target in all supported targets) { glBindTexture(target, 0); } } } + /// Each entry in textures will be checked individually and if found to be invalid, the state for that texture unit will not be changed and an error will be generated. However, the state for other texture units referenced by the command will still be updated. + /// + /// Specifies the first texture unit to which a texture is to be bound. + /// Specifies the number of textures to bind. + /// Specifies the address of an array of names of existing texture objects. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindTextures(uint first, int count, uint[] textures) => _BindTextures(first, count, textures); + + /// + /// glBindTextures binds an array of existing texture objects to a specified number of consecutive texture units. count specifies the number of texture objects whose names are stored in the array textures. That number of texture names are read from the array and bound to the count consecutive texture units starting from first. The target, or type of texture is deduced from the texture object and each texture is bound to the corresponding target of the texture unit. If the name zero appears in the textures array, any existing binding to any target of the texture unit is reset and the default texture for that target is bound in its place. Any non-zero entry in textures must be the name of an existing texture object. If textures is NULL then it is as if an appropriately sized array containing only zeros had been specified. + /// With the exception that the active texture selector maintains its current value, glBindTextures is equivalent to the following pseudo code: + /// for (i = 0; i < count; i++) { GLuint texture; if (textures == NULL) { texture = 0; } else { texture = textures[i]; } glActiveTexture(GL_TEXTURE0 + first + i); if (texture != 0) { GLenum target = /* target of textures[i] */; glBindTexture(target, textures[i]); } else { for (target in all supported targets) { glBindTexture(target, 0); } } } + /// Each entry in textures will be checked individually and if found to be invalid, the state for that texture unit will not be changed and an error will be generated. However, the state for other texture units referenced by the command will still be updated. + /// + /// Specifies the first texture unit to which a texture is to be bound. + /// Specifies the number of textures to bind. + /// Specifies the address of an array of names of existing texture objects. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindTextures(uint first, int count, void* textures) => _BindTextures_ptr(first, count, textures); + + /// + /// glBindTextures binds an array of existing texture objects to a specified number of consecutive texture units. count specifies the number of texture objects whose names are stored in the array textures. That number of texture names are read from the array and bound to the count consecutive texture units starting from first. The target, or type of texture is deduced from the texture object and each texture is bound to the corresponding target of the texture unit. If the name zero appears in the textures array, any existing binding to any target of the texture unit is reset and the default texture for that target is bound in its place. Any non-zero entry in textures must be the name of an existing texture object. If textures is NULL then it is as if an appropriately sized array containing only zeros had been specified. + /// With the exception that the active texture selector maintains its current value, glBindTextures is equivalent to the following pseudo code: + /// for (i = 0; i < count; i++) { GLuint texture; if (textures == NULL) { texture = 0; } else { texture = textures[i]; } glActiveTexture(GL_TEXTURE0 + first + i); if (texture != 0) { GLenum target = /* target of textures[i] */; glBindTexture(target, textures[i]); } else { for (target in all supported targets) { glBindTexture(target, 0); } } } + /// Each entry in textures will be checked individually and if found to be invalid, the state for that texture unit will not be changed and an error will be generated. However, the state for other texture units referenced by the command will still be updated. + /// + /// Specifies the first texture unit to which a texture is to be bound. + /// Specifies the number of textures to bind. + /// Specifies the address of an array of names of existing texture objects. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindTextures(uint first, int count, IntPtr textures) => _BindTextures_intptr(first, count, textures); + + // --- + + /// + /// glBindTransformFeedback binds the transform feedback object with name id to the current GL state. id must be a name previously returned from a call to glGenTransformFeedbacks. If id has not previously been bound, a new transform feedback object with name id and initialized with the default transform state vector is created. + /// In the initial state, a default transform feedback object is bound and treated as a transform feedback object with a name of zero. If the name zero is subsequently bound, the default transform feedback object is again bound to the GL state. + /// While a transform feedback buffer object is bound, GL operations on the target to which it is bound affect the bound transform feedback object, and queries of the target to which a transform feedback object is bound return state from the bound object. When buffer objects are bound for transform feedback, they are attached to the currently bound transform feedback object. Buffer objects are used for trans- form feedback only if they are attached to the currently bound transform feedback object. + /// + /// Specifies the target to which to bind the transform feedback object id. target must be GL_TRANSFORM_FEEDBACK. + /// Specifies the name of a transform feedback object reserved by glGenTransformFeedbacks. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindTransformFeedback(BindTransformFeedbackTarget target, uint id) => _BindTransformFeedback(target, id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindTransformFeedbackNV(BufferTargetARB target, uint id) => _BindTransformFeedbackNV(target, id); + + // --- + + /// + /// glBindVertexArray binds the vertex array object with name array. array is the name of a vertex array object previously returned from a call to glGenVertexArrays, or zero to break the existing vertex array object binding. + /// If no vertex array object with name array exists, one is created when array is first bound. If the bind is successful no change is made to the state of the vertex array object, and any previous vertex array object binding is broken. + /// + /// Specifies the name of the vertex array to bind. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindVertexArray(uint array) => _BindVertexArray(array); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindVertexArrayAPPLE(uint array) => _BindVertexArrayAPPLE(array); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindVertexArrayOES(uint array) => _BindVertexArrayOES(array); + + // --- + + /// + /// glBindVertexBuffer and glVertexArrayVertexBuffer bind the buffer named buffer to the vertex buffer binding point whose index is given by bindingindex. glBindVertexBuffer modifies the binding of the currently bound vertex array object, whereas glVertexArrayVertexBuffer allows the caller to specify ID of the vertex array object with an argument named vaobj, for which the binding should be modified. offset and stride specify the offset of the first element within the buffer and the distance between elements within the buffer, respectively, and are both measured in basic machine units. bindingindex must be less than the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. offset and stride must be greater than or equal to zero. If buffer is zero, then any buffer currently bound to the specified binding point is unbound. + /// If buffer is not the name of an existing buffer object, the GL first creates a new state vector, initialized with a zero-sized memory buffer and comprising all the state and with the same initial values as in case of glBindBuffer. buffer is then attached to the specified bindingindex of the vertex array object. + /// + /// Specifies the name of the vertex array object to be used by glVertexArrayVertexBuffer function. + /// The index of the vertex buffer binding point to which to bind the buffer. + /// The name of a buffer to bind to the vertex buffer binding point. + /// The offset of the first element of the buffer. + /// The distance between elements within the buffer. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindVertexBuffer(uint bindingindex, uint buffer, IntPtr offset, int stride) => _BindVertexBuffer(bindingindex, buffer, offset, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindVertexBuffers(uint first, int count, uint[] buffers, IntPtr[] offsets, int[] strides) => _BindVertexBuffers(first, count, buffers, offsets, strides); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindVertexBuffers(uint first, int count, void* buffers, void* offsets, void* strides) => _BindVertexBuffers_ptr(first, count, buffers, offsets, strides); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindVertexBuffers(uint first, int count, IntPtr buffers, IntPtr offsets, IntPtr strides) => _BindVertexBuffers_intptr(first, count, buffers, offsets, strides); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindVertexShaderEXT(uint id) => _BindVertexShaderEXT(id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindVideoCaptureStreamBufferNV(uint video_capture_slot, uint stream, int frame_region, IntPtr offset) => _BindVideoCaptureStreamBufferNV(video_capture_slot, stream, frame_region, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BindVideoCaptureStreamTextureNV(uint video_capture_slot, uint stream, int frame_region, int target, uint texture) => _BindVideoCaptureStreamTextureNV(video_capture_slot, stream, frame_region, target, texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3bEXT(sbyte bx, sbyte by, sbyte bz) => _Binormal3bEXT(bx, by, bz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3bvEXT(sbyte[] v) => _Binormal3bvEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3bvEXT(void* v) => _Binormal3bvEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3bvEXT(IntPtr v) => _Binormal3bvEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3dEXT(double bx, double by, double bz) => _Binormal3dEXT(bx, by, bz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3dvEXT(double[] v) => _Binormal3dvEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3dvEXT(void* v) => _Binormal3dvEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3dvEXT(IntPtr v) => _Binormal3dvEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3fEXT(float bx, float by, float bz) => _Binormal3fEXT(bx, by, bz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3fvEXT(float[] v) => _Binormal3fvEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3fvEXT(void* v) => _Binormal3fvEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3fvEXT(IntPtr v) => _Binormal3fvEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3iEXT(int bx, int by, int bz) => _Binormal3iEXT(bx, by, bz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3ivEXT(int[] v) => _Binormal3ivEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3ivEXT(void* v) => _Binormal3ivEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3ivEXT(IntPtr v) => _Binormal3ivEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3sEXT(short bx, short by, short bz) => _Binormal3sEXT(bx, by, bz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3svEXT(short[] v) => _Binormal3svEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3svEXT(void* v) => _Binormal3svEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Binormal3svEXT(IntPtr v) => _Binormal3svEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BinormalPointerEXT(BinormalPointerTypeEXT type, int stride, IntPtr pointer) => _BinormalPointerEXT(type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Bitmap(int width, int height, float xorig, float yorig, float xmove, float ymove, byte[] bitmap) => _Bitmap(width, height, xorig, yorig, xmove, ymove, bitmap); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Bitmap(int width, int height, float xorig, float yorig, float xmove, float ymove, void* bitmap) => _Bitmap_ptr(width, height, xorig, yorig, xmove, ymove, bitmap); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Bitmap(int width, int height, float xorig, float yorig, float xmove, float ymove, IntPtr bitmap) => _Bitmap_intptr(width, height, xorig, yorig, xmove, ymove, bitmap); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BitmapxOES(int width, int height, float xorig, float yorig, float xmove, float ymove, byte[] bitmap) => _BitmapxOES(width, height, xorig, yorig, xmove, ymove, bitmap); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BitmapxOES(int width, int height, float xorig, float yorig, float xmove, float ymove, void* bitmap) => _BitmapxOES_ptr(width, height, xorig, yorig, xmove, ymove, bitmap); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BitmapxOES(int width, int height, float xorig, float yorig, float xmove, float ymove, IntPtr bitmap) => _BitmapxOES_intptr(width, height, xorig, yorig, xmove, ymove, bitmap); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendBarrier() => _BlendBarrier(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendBarrierKHR() => _BlendBarrierKHR(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendBarrierNV() => _BlendBarrierNV(); + + // --- + + /// + /// The GL_BLEND_COLOR may be used to calculate the source and destination blending factors. The color components are clamped to the range before being stored. See glBlendFunc for a complete description of the blending operations. Initially the GL_BLEND_COLOR is set to (0, 0, 0, 0). + /// + /// specify the components of GL_BLEND_COLOR + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendColor(float red, float green, float blue, float alpha) => _BlendColor(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendColorEXT(float red, float green, float blue, float alpha) => _BlendColorEXT(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendColorxOES(float red, float green, float blue, float alpha) => _BlendColorxOES(red, green, blue, alpha); + + // --- + + /// + /// The blend equations determine how a new pixel (the ''source'' color) is combined with a pixel already in the framebuffer (the ''destination'' color). This function sets both the RGB blend equation and the alpha blend equation to a single equation. glBlendEquationi specifies the blend equation for a single draw buffer whereas glBlendEquation sets the blend equation for all draw buffers. + /// These equations use the source and destination blend factors specified by either glBlendFunc or glBlendFuncSeparate. See glBlendFunc or glBlendFuncSeparate for a description of the various blend factors. + /// In the equations that follow, source and destination color components are referred to as . + /// The GL_MIN and GL_MAX equations are useful for applications that analyze image data (image thresholding against a constant color, for example). The GL_FUNC_ADD equation is useful for antialiasing and transparency, among other things. + /// Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. + /// + /// for glBlendEquationi, specifies the index of the draw buffer for which to set the blend equation. + /// specifies how source and destination colors are combined. It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquation(BlendEquationModeEXT mode) => _BlendEquation(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationEXT(BlendEquationModeEXT mode) => _BlendEquationEXT(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationIndexedAMD(uint buf, BlendEquationModeEXT mode) => _BlendEquationIndexedAMD(buf, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationOES(BlendEquationModeEXT mode) => _BlendEquationOES(mode); + + // --- + + /// + /// The blend equations determines how a new pixel (the ''source'' color) is combined with a pixel already in the framebuffer (the ''destination'' color). These functions specify one blend equation for the RGB-color components and one blend equation for the alpha component. glBlendEquationSeparatei specifies the blend equations for a single draw buffer whereas glBlendEquationSeparate sets the blend equations for all draw buffers. + /// The blend equations use the source and destination blend factors specified by either glBlendFunc or glBlendFuncSeparate. See glBlendFunc or glBlendFuncSeparate for a description of the various blend factors. + /// In the equations that follow, source and destination color components are referred to as . + /// The GL_MIN and GL_MAX equations are useful for applications that analyze image data (image thresholding against a constant color, for example). The GL_FUNC_ADD equation is useful for antialiasing and transparency, among other things. + /// Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD. + /// + /// for glBlendEquationSeparatei, specifies the index of the draw buffer for which to set the blend equations. + /// specifies the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. + /// specifies the alpha blend equation, how the alpha component of the source and destination colors are combined. It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationSeparate(BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha) => _BlendEquationSeparate(modeRGB, modeAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationSeparateEXT(BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha) => _BlendEquationSeparateEXT(modeRGB, modeAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationSeparateIndexedAMD(uint buf, BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha) => _BlendEquationSeparateIndexedAMD(buf, modeRGB, modeAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationSeparateOES(BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha) => _BlendEquationSeparateOES(modeRGB, modeAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationSeparatei(uint buf, BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha) => _BlendEquationSeparatei(buf, modeRGB, modeAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationSeparateiARB(uint buf, BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha) => _BlendEquationSeparateiARB(buf, modeRGB, modeAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationSeparateiEXT(uint buf, BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha) => _BlendEquationSeparateiEXT(buf, modeRGB, modeAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationSeparateiOES(uint buf, BlendEquationModeEXT modeRGB, BlendEquationModeEXT modeAlpha) => _BlendEquationSeparateiOES(buf, modeRGB, modeAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationi(uint buf, BlendEquationModeEXT mode) => _BlendEquationi(buf, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationiARB(uint buf, BlendEquationModeEXT mode) => _BlendEquationiARB(buf, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationiEXT(uint buf, BlendEquationModeEXT mode) => _BlendEquationiEXT(buf, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendEquationiOES(uint buf, BlendEquationModeEXT mode) => _BlendEquationiOES(buf, mode); + + // --- + + /// + /// Pixels can be drawn using a function that blends the incoming (source) RGBA values with the RGBA values that are already in the frame buffer (the destination values). Blending is initially disabled. Use glEnable and glDisable with argument GL_BLEND to enable and disable blending. + /// glBlendFunc defines the operation of blending for all draw buffers when it is enabled. glBlendFunci defines the operation of blending for a single draw buffer specified by buf when enabled for that draw buffer. sfactor specifies which method is used to scale the source color components. dfactor specifies which method is used to scale the destination color components. Both parameters must be one of the following symbolic constants: GL_ZERO, GL_ONE, GL_SRC_COLOR, GL_ONE_MINUS_SRC_COLOR, GL_DST_COLOR, GL_ONE_MINUS_DST_COLOR, GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_DST_ALPHA, GL_ONE_MINUS_DST_ALPHA, GL_CONSTANT_COLOR, GL_ONE_MINUS_CONSTANT_COLOR, GL_CONSTANT_ALPHA, GL_ONE_MINUS_CONSTANT_ALPHA, GL_SRC_ALPHA_SATURATE, GL_SRC1_COLOR, GL_ONE_MINUS_SRC1_COLOR, GL_SRC1_ALPHA, and GL_ONE_MINUS_SRC1_ALPHA. The possible methods are described in the following table. Each method defines four scale factors, one each for red, green, blue, and alpha. In the table and in subsequent equations, first source, second source and destination color components are referred to as ), representing complete opacity, to 0.0 (0), representing complete transparency. + /// When more than one color buffer is enabled for drawing, the GL performs blending separately for each enabled buffer, using the contents of that buffer for destination color. (See glDrawBuffer.) + /// When dual source blending is enabled (i.e., one of the blend factors requiring the second color input is used), the maximum number of enabled draw buffers is given by GL_MAX_DUAL_SOURCE_DRAW_BUFFERS, which may be lower than GL_MAX_DRAW_BUFFERS. + /// + /// For glBlendFunci, specifies the index of the draw buffer for which to set the blend function. + /// Specifies how the red, green, blue, and alpha source blending factors are computed. The initial value is GL_ONE. + /// Specifies how the red, green, blue, and alpha destination blending factors are computed. The following symbolic constants are accepted: GL_ZERO, GL_ONE, GL_SRC_COLOR, GL_ONE_MINUS_SRC_COLOR, GL_DST_COLOR, GL_ONE_MINUS_DST_COLOR, GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA, GL_DST_ALPHA, GL_ONE_MINUS_DST_ALPHA. GL_CONSTANT_COLOR, GL_ONE_MINUS_CONSTANT_COLOR, GL_CONSTANT_ALPHA, and GL_ONE_MINUS_CONSTANT_ALPHA. The initial value is GL_ZERO. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFunc(BlendingFactor sfactor, BlendingFactor dfactor) => _BlendFunc(sfactor, dfactor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFuncIndexedAMD(uint buf, int src, int dst) => _BlendFuncIndexedAMD(buf, src, dst); + + // --- + + /// + /// Pixels can be drawn using a function that blends the incoming (source) RGBA values with the RGBA values that are already in the frame buffer (the destination values). Blending is initially disabled. Use glEnable and glDisable with argument GL_BLEND to enable and disable blending. + /// glBlendFuncSeparate defines the operation of blending for all draw buffers when it is enabled. glBlendFuncSeparatei defines the operation of blending for a single draw buffer specified by buf when enabled for that draw buffer. srcRGB specifies which method is used to scale the source RGB-color components. dstRGB specifies which method is used to scale the destination RGB-color components. Likewise, srcAlpha specifies which method is used to scale the source alpha color component, and dstAlpha specifies which method is used to scale the destination alpha component. The possible methods are described in the following table. Each method defines four scale factors, one each for red, green, blue, and alpha. + /// In the table and in subsequent equations, first source, second source and destination color components are referred to as ), representing complete opacity, to 0.0 (0), representing complete transparency. + /// When more than one color buffer is enabled for drawing, the GL performs blending separately for each enabled buffer, using the contents of that buffer for destination color. (See glDrawBuffer.) + /// When dual source blending is enabled (i.e., one of the blend factors requiring the second color input is used), the maximum number of enabled draw buffers is given by GL_MAX_DUAL_SOURCE_DRAW_BUFFERS, which may be lower than GL_MAX_DRAW_BUFFERS. + /// + /// For glBlendFuncSeparatei, specifies the index of the draw buffer for which to set the blend functions. + /// Specifies how the red, green, and blue blending factors are computed. The initial value is GL_ONE. + /// Specifies how the red, green, and blue destination blending factors are computed. The initial value is GL_ZERO. + /// Specified how the alpha source blending factor is computed. The initial value is GL_ONE. + /// Specified how the alpha destination blending factor is computed. The initial value is GL_ZERO. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFuncSeparate(BlendingFactor sfactorRGB, BlendingFactor dfactorRGB, BlendingFactor sfactorAlpha, BlendingFactor dfactorAlpha) => _BlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFuncSeparateEXT(BlendingFactor sfactorRGB, BlendingFactor dfactorRGB, BlendingFactor sfactorAlpha, BlendingFactor dfactorAlpha) => _BlendFuncSeparateEXT(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFuncSeparateINGR(BlendingFactor sfactorRGB, BlendingFactor dfactorRGB, BlendingFactor sfactorAlpha, BlendingFactor dfactorAlpha) => _BlendFuncSeparateINGR(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFuncSeparateIndexedAMD(uint buf, BlendingFactor srcRGB, BlendingFactor dstRGB, BlendingFactor srcAlpha, BlendingFactor dstAlpha) => _BlendFuncSeparateIndexedAMD(buf, srcRGB, dstRGB, srcAlpha, dstAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFuncSeparateOES(BlendingFactor srcRGB, BlendingFactor dstRGB, BlendingFactor srcAlpha, BlendingFactor dstAlpha) => _BlendFuncSeparateOES(srcRGB, dstRGB, srcAlpha, dstAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFuncSeparatei(uint buf, BlendingFactor srcRGB, BlendingFactor dstRGB, BlendingFactor srcAlpha, BlendingFactor dstAlpha) => _BlendFuncSeparatei(buf, srcRGB, dstRGB, srcAlpha, dstAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFuncSeparateiARB(uint buf, BlendingFactor srcRGB, BlendingFactor dstRGB, BlendingFactor srcAlpha, BlendingFactor dstAlpha) => _BlendFuncSeparateiARB(buf, srcRGB, dstRGB, srcAlpha, dstAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFuncSeparateiEXT(uint buf, BlendingFactor srcRGB, BlendingFactor dstRGB, BlendingFactor srcAlpha, BlendingFactor dstAlpha) => _BlendFuncSeparateiEXT(buf, srcRGB, dstRGB, srcAlpha, dstAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFuncSeparateiOES(uint buf, BlendingFactor srcRGB, BlendingFactor dstRGB, BlendingFactor srcAlpha, BlendingFactor dstAlpha) => _BlendFuncSeparateiOES(buf, srcRGB, dstRGB, srcAlpha, dstAlpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFunci(uint buf, BlendingFactor src, BlendingFactor dst) => _BlendFunci(buf, src, dst); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFunciARB(uint buf, BlendingFactor src, BlendingFactor dst) => _BlendFunciARB(buf, src, dst); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFunciEXT(uint buf, BlendingFactor src, BlendingFactor dst) => _BlendFunciEXT(buf, src, dst); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendFunciOES(uint buf, BlendingFactor src, BlendingFactor dst) => _BlendFunciOES(buf, src, dst); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlendParameteriNV(int pname, int value) => _BlendParameteriNV(pname, value); + + // --- + + /// + /// glBlitFramebuffer and glBlitNamedFramebuffer transfer a rectangle of pixel values from one region of a read framebuffer to another region of a draw framebuffer. + /// For glBlitFramebuffer, the read and draw framebuffers are those bound to the GL_READ_FRAMEBUFFER and GL_DRAW_FRAMEBUFFER targets respectively. + /// For glBlitNamedFramebuffer, readFramebuffer and drawFramebuffer are the names of the read and draw framebuffer objects respectively. If readFramebuffer or drawFramebuffer is zero, then the default read or draw framebuffer respectively is used. + /// mask is the bitwise OR of a number of values indicating which buffers are to be copied. The values are GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, and GL_STENCIL_BUFFER_BIT. The pixels corresponding to these buffers are copied from the source rectangle bounded by the locations (srcX0, srcY0) and (srcX1, srcY1) to the destination rectangle bounded by the locations (dstX0, dstY0) and (dstX1, dstY1). The lower bounds of the rectangle are inclusive, while the upper bounds are exclusive. + /// The actual region taken from the read framebuffer is limited to the intersection of the source buffers being transferred, which may include the color buffer selected by the read buffer, the depth buffer, and/or the stencil buffer depending on mask. The actual region written to the draw framebuffer is limited to the intersection of the destination buffers being written, which may include multiple draw buffers, the depth buffer, and/or the stencil buffer depending on mask. Whether or not the source or destination regions are altered due to these limits, the scaling and offset applied to pixels being transferred is performed as though no such limits were present. + /// If the sizes of the source and destination rectangles are not equal, filter specifies the interpolation method that will be applied to resize the source image , and must be GL_NEAREST or GL_LINEAR. GL_LINEAR is only a valid interpolation method for the color buffer. If filter is not GL_NEAREST and mask includes GL_DEPTH_BUFFER_BIT or GL_STENCIL_BUFFER_BIT, no data is transferred and a GL_INVALID_OPERATION error is generated. + /// If filter is GL_LINEAR and the source rectangle would require sampling outside the bounds of the source framebuffer, values are read as if the GL_CLAMP_TO_EDGE texture wrapping mode were applied. + /// When the color buffer is transferred, values are taken from the read buffer of the specified read framebuffer and written to each of the draw buffers of the specified draw framebuffer. + /// If the source and destination rectangles overlap or are the same, and the read and draw buffers are the same, the result of the operation is undefined. + /// + /// Specifies the name of the source framebuffer object for glBlitNamedFramebuffer. + /// Specifies the name of the destination framebuffer object for glBlitNamedFramebuffer. + /// Specify the bounds of the source rectangle within the read buffer of the read framebuffer. + /// Specify the bounds of the destination rectangle within the write buffer of the write framebuffer. + /// The bitwise OR of the flags indicating which buffers are to be copied. The allowed flags are GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT and GL_STENCIL_BUFFER_BIT. + /// Specifies the interpolation to be applied if the image is stretched. Must be GL_NEAREST or GL_LINEAR. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlitFramebuffer(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, BlitFramebufferFilter filter) => _BlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlitFramebufferANGLE(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, BlitFramebufferFilter filter) => _BlitFramebufferANGLE(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlitFramebufferEXT(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, BlitFramebufferFilter filter) => _BlitFramebufferEXT(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlitFramebufferNV(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, BlitFramebufferFilter filter) => _BlitFramebufferNV(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BlitNamedFramebuffer(uint readFramebuffer, uint drawFramebuffer, int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, BlitFramebufferFilter filter) => _BlitNamedFramebuffer(readFramebuffer, drawFramebuffer, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BufferAddressRangeNV(int pname, uint index, UInt64 address, IntPtr length) => _BufferAddressRangeNV(pname, index, address, length); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BufferAttachMemoryNV(BufferTargetARB target, uint memory, UInt64 offset) => _BufferAttachMemoryNV(target, memory, offset); + + // --- + + /// + /// glBufferData and glNamedBufferData create a new data store for a buffer object. In case of glBufferData, the buffer object currently bound to target is used. For glNamedBufferData, a buffer object associated with ID specified by the caller in buffer will be used instead. + /// While creating the new storage, any pre-existing data store is deleted. The new data store is created with the specified size in bytes and usage. If data is not NULL, the data store is initialized with data from this pointer. In its initial state, the new data store is not mapped, it has a NULL mapped pointer, and its mapped access is GL_READ_WRITE. + /// usage is a hint to the GL implementation as to how a buffer object's data store will be accessed. This enables the GL implementation to make more intelligent decisions that may significantly impact buffer object performance. It does not, however, constrain the actual usage of the data store. usage can be broken down into two parts: first, the frequency of access (modification and usage), and second, the nature of that access. The frequency of access may be one of these: + /// STREAMThe data store contents will be modified once and used at most a few times.STATICThe data store contents will be modified once and used many times.DYNAMICThe data store contents will be modified repeatedly and used many times. + /// The nature of access may be one of these: + /// DRAWThe data store contents are modified by the application, and used as the source for GL drawing and image specification commands.READThe data store contents are modified by reading data from the GL, and used to return that data when queried by the application.COPYThe data store contents are modified by reading data from the GL, and used as the source for GL drawing and image specification commands. + /// + /// Specifies the target to which the buffer object is bound for glBufferData, which must be one of the buffer binding targets in the following table: + /// Specifies the name of the buffer object for glNamedBufferData function. + /// Specifies the size in bytes of the buffer object's new data store. + /// Specifies a pointer to data that will be copied into the data store for initialization, or NULL if no data is to be copied. + /// Specifies the expected usage pattern of the data store. The symbolic constant must be GL_STREAM_DRAW, GL_STREAM_READ, GL_STREAM_COPY, GL_STATIC_DRAW, GL_STATIC_READ, GL_STATIC_COPY, GL_DYNAMIC_DRAW, GL_DYNAMIC_READ, or GL_DYNAMIC_COPY. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BufferData(BufferTargetARB target, IntPtr size, IntPtr data, BufferUsageARB usage) => _BufferData(target, size, data, usage); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BufferDataARB(BufferTargetARB target, IntPtr size, IntPtr data, BufferUsageARB usage) => _BufferDataARB(target, size, data, usage); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BufferPageCommitmentARB(int target, IntPtr offset, IntPtr size, bool commit) => _BufferPageCommitmentARB(target, offset, size, commit); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BufferParameteriAPPLE(int target, int pname, int param) => _BufferParameteriAPPLE(target, pname, param); + + // --- + + /// + /// glBufferStorage and glNamedBufferStorage create a new immutable data store. For glBufferStorage, the buffer object currently bound to target will be initialized. For glNamedBufferStorage, buffer is the name of the buffer object that will be configured. The size of the data store is specified by size. If an initial data is available, its address may be supplied in data. Otherwise, to create an uninitialized data store, data should be NULL. + /// The flags parameters specifies the intended usage of the buffer's data store. It must be a bitwise combination of a subset of the following flags: GL_DYNAMIC_STORAGE_BITThe contents of the data store may be updated after creation through calls to glBufferSubData. If this bit is not set, the buffer content may not be directly updated by the client. The data argument may be used to specify the initial content of the buffer's data store regardless of the presence of the GL_DYNAMIC_STORAGE_BIT. Regardless of the presence of this bit, buffers may always be updated with server-side calls such as glCopyBufferSubData and glClearBufferSubData. GL_MAP_READ_BITThe data store may be mapped by the client for read access and a pointer in the client's address space obtained that may be read from.GL_MAP_WRITE_BITThe data store may be mapped by the client for write access and a pointer in the client's address space obtained that may be written through.GL_MAP_PERSISTENT_BITThe client may request that the server read from or write to the buffer while it is mapped. The client's pointer to the data store remains valid so long as the data store is mapped, even during execution of drawing or dispatch commands.GL_MAP_COHERENT_BITShared access to buffers that are simultaneously mapped for client access and are used by the server will be coherent, so long as that mapping is performed using glMapBufferRange. That is, data written to the store by either the client or server will be immediately visible to the other with no further action taken by the application. In particular,If GL_MAP_COHERENT_BIT is not set and the client performs a write followed by a call to the glMemoryBarrier command with the GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT set, then in subsequent commands the server will see the writes.If GL_MAP_COHERENT_BIT is set and the client performs a write, then in subsequent commands the server will see the writes.If GL_MAP_COHERENT_BIT is not set and the server performs a write, the application must call glMemoryBarrier with the GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT set and then call glFenceSync with GL_SYNC_GPU_COMMANDS_COMPLETE (or glFinish). Then the CPU will see the writes after the sync is complete.If GL_MAP_COHERENT_BIT is set and the server does a write, the app must call glFenceSync with GL_SYNC_GPU_COMMANDS_COMPLETE (or glFinish). Then the CPU will see the writes after the sync is complete.GL_CLIENT_STORAGE_BITWhen all other criteria for the buffer storage allocation are met, this bit may be used by an implementation to determine whether to use storage that is local to the server or to the client to serve as the backing store for the buffer. + /// The allowed combinations of flags are subject to certain restrictions. They are as follows: If flags contains GL_MAP_PERSISTENT_BIT, it must also contain at least one of GL_MAP_READ_BIT or GL_MAP_WRITE_BIT.If flags contains GL_MAP_COHERENT_BIT, it must also contain GL_MAP_PERSISTENT_BIT. + /// + /// Specifies the target to which the buffer object is bound for glBufferStorage, which must be one of the buffer binding targets in the following table: + /// Specifies the name of the buffer object for glNamedBufferStorage function. + /// Specifies the size in bytes of the buffer object's new data store. + /// Specifies a pointer to data that will be copied into the data store for initialization, or NULL if no data is to be copied. + /// Specifies the intended usage of the buffer's data store. Must be a bitwise combination of the following flags. GL_DYNAMIC_STORAGE_BIT, GL_MAP_READ_BITGL_MAP_WRITE_BIT, GL_MAP_PERSISTENT_BIT, GL_MAP_COHERENT_BIT, and GL_CLIENT_STORAGE_BIT. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BufferStorage(BufferStorageTarget target, IntPtr size, IntPtr data, int flags) => _BufferStorage(target, size, data, flags); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BufferStorageEXT(BufferStorageTarget target, IntPtr size, IntPtr data, int flags) => _BufferStorageEXT(target, size, data, flags); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BufferStorageExternalEXT(int target, IntPtr offset, IntPtr size, IntPtr clientBuffer, int flags) => _BufferStorageExternalEXT(target, offset, size, clientBuffer, flags); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BufferStorageMemEXT(BufferTargetARB target, IntPtr size, uint memory, UInt64 offset) => _BufferStorageMemEXT(target, size, memory, offset); + + // --- + + /// + /// glBufferSubData and glNamedBufferSubData redefine some or all of the data store for the specified buffer object. Data starting at byte offset offset and extending for size bytes is copied to the data store from the memory pointed to by data. offset and size must define a range lying entirely within the buffer object's data store. + /// + /// Specifies the target to which the buffer object is bound for glBufferSubData, which must be one of the buffer binding targets in the following table: + /// Specifies the name of the buffer object for glNamedBufferSubData. + /// Specifies the offset into the buffer object's data store where data replacement will begin, measured in bytes. + /// Specifies the size in bytes of the data store region being replaced. + /// Specifies a pointer to the new data that will be copied into the data store. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BufferSubData(BufferTargetARB target, IntPtr offset, IntPtr size, IntPtr data) => _BufferSubData(target, offset, size, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void BufferSubDataARB(BufferTargetARB target, IntPtr offset, IntPtr size, IntPtr data) => _BufferSubDataARB(target, offset, size, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CallCommandListNV(uint list) => _CallCommandListNV(list); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CallList(uint list) => _CallList(list); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CallLists(int n, ListNameType type, IntPtr lists) => _CallLists(n, type, lists); + + // --- + + /// + /// glCheckFramebufferStatus and glCheckNamedFramebufferStatus return the completeness status of a framebuffer object when treated as a read or draw framebuffer, depending on the value of target. + /// For glCheckFramebufferStatus, the framebuffer checked is that bound to target, which must be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. + /// For glCheckNamedFramebufferStatus, framebuffer is zero or the name of the framebuffer object to check. If framebuffer is zero, then the status of the default read or draw framebuffer, as determined by target, is returned. + /// The return value is GL_FRAMEBUFFER_COMPLETE if the specified framebuffer is complete. Otherwise, the return value is determined as follows: GL_FRAMEBUFFER_UNDEFINED is returned if the specified framebuffer is the default read or draw framebuffer, but the default framebuffer does not exist. GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT is returned if any of the framebuffer attachment points are framebuffer incomplete. GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT is returned if the framebuffer does not have at least one image attached to it. GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER is returned if the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_NONE for any color attachment point(s) named by GL_DRAW_BUFFERi. GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER is returned if GL_READ_BUFFER is not GL_NONE and the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE is GL_NONE for the color attachment point named by GL_READ_BUFFER. GL_FRAMEBUFFER_UNSUPPORTED is returned if the combination of internal formats of the attached images violates an implementation-dependent set of restrictions. GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE is returned if the value of GL_RENDERBUFFER_SAMPLES is not the same for all attached renderbuffers; if the value of GL_TEXTURE_SAMPLES is the not same for all attached textures; or, if the attached images are a mix of renderbuffers and textures, the value of GL_RENDERBUFFER_SAMPLES does not match the value of GL_TEXTURE_SAMPLES. GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE is also returned if the value of GL_TEXTURE_FIXED_SAMPLE_LOCATIONS is not the same for all attached textures; or, if the attached images are a mix of renderbuffers and textures, the value of GL_TEXTURE_FIXED_SAMPLE_LOCATIONS is not GL_TRUE for all attached textures. GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS is returned if any framebuffer attachment is layered, and any populated attachment is not layered, or if all populated color attachments are not from textures of the same target. + /// Additionally, if an error occurs, zero is returned. + /// + /// Specify the target to which the framebuffer is bound for glCheckFramebufferStatus, and the target against which framebuffer completeness of framebuffer is checked for glCheckNamedFramebufferStatus. + /// Specifies the name of the framebuffer object for glCheckNamedFramebufferStatus + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int CheckFramebufferStatus(FramebufferTarget target) => _CheckFramebufferStatus(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int CheckFramebufferStatusEXT(FramebufferTarget target) => _CheckFramebufferStatusEXT(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int CheckFramebufferStatusOES(FramebufferTarget target) => _CheckFramebufferStatusOES(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int CheckNamedFramebufferStatus(uint framebuffer, FramebufferTarget target) => _CheckNamedFramebufferStatus(framebuffer, target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int CheckNamedFramebufferStatusEXT(uint framebuffer, FramebufferTarget target) => _CheckNamedFramebufferStatusEXT(framebuffer, target); + + // --- + + /// + /// glClampColor controls color clamping that is performed during glReadPixels. target must be GL_CLAMP_READ_COLOR. If clamp is GL_TRUE, read color clamping is enabled; if clamp is GL_FALSE, read color clamping is disabled. If clamp is GL_FIXED_ONLY, read color clamping is enabled only if the selected read buffer has fixed point components and disabled otherwise. + /// + /// Target for color clamping. target must be GL_CLAMP_READ_COLOR. + /// Specifies whether to apply color clamping. clamp must be GL_TRUE or GL_FALSE. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClampColor(ClampColorTargetARB target, ClampColorModeARB clamp) => _ClampColor(target, clamp); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClampColorARB(ClampColorTargetARB target, ClampColorModeARB clamp) => _ClampColorARB(target, clamp); + + // --- + + /// + /// glClear sets the bitplane area of the window to values previously selected by glClearColor, glClearDepth, and glClearStencil. Multiple color buffers can be cleared simultaneously by selecting more than one buffer at a time using glDrawBuffer. + /// The pixel ownership test, the scissor test, dithering, and the buffer writemasks affect the operation of glClear. The scissor box bounds the cleared region. Alpha function, blend function, logical operation, stenciling, texture mapping, and depth-buffering are ignored by glClear. + /// glClear takes a single argument that is the bitwise OR of several values indicating which buffer is to be cleared. + /// The values are as follows: + /// GL_COLOR_BUFFER_BIT Indicates the buffers currently enabled for color writing. GL_DEPTH_BUFFER_BIT Indicates the depth buffer. GL_STENCIL_BUFFER_BIT Indicates the stencil buffer. + /// The value to which each buffer is cleared depends on the setting of the clear value for that buffer. + /// + /// Bitwise OR of masks that indicate the buffers to be cleared. The three masks are GL_COLOR_BUFFER_BIT, GL_DEPTH_BUFFER_BIT, and GL_STENCIL_BUFFER_BIT. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Clear(int mask) => _Clear(mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearAccum(float red, float green, float blue, float alpha) => _ClearAccum(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearAccumxOES(float red, float green, float blue, float alpha) => _ClearAccumxOES(red, green, blue, alpha); + + // --- + + /// + /// glClearBufferData and glClearNamedBufferData fill the entirety of a buffer object's data store with data from client memory. + /// Data, initially supplied in a format specified by format in data type type is read from the memory address given by data and converted into the internal representation given by internalformat, which must be one of the following sized internal formats: + /// This converted data is then replicated throughout the buffer object's data store. If data is NULL, then the buffer's data store is filled with zeros. + /// + /// Specifies the target to which the buffer object is bound for glClearBufferData, which must be one of the buffer binding targets in the following table: + /// Specifies the name of the buffer object for glClearNamedBufferData. + /// The internal format with which the data will be stored in the buffer object. + /// The format of the data in memory addressed by data. + /// The type of the data in memory addressed by data. + /// The address of a memory location storing the data to be replicated into the buffer's data store. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearBufferData(BufferStorageTarget target, InternalFormat internalformat, PixelFormat format, PixelType type, IntPtr data) => _ClearBufferData(target, internalformat, format, type, data); + + // --- + + /// + /// glClearBufferSubData and glClearNamedBufferSubData fill a specified region of a buffer object's data store with data from client memory. + /// offset and size specify the extent of the region within the data store of the buffer object to fill with data. Data, initially supplied in a format specified by format in data type type is read from the memory address given by data and converted into the internal representation given by internalformat, which must be one of the following sized internal formats: + /// This converted data is then replicated throughout the specified region of the buffer object's data store. If data is NULL, then the subrange of the buffer's data store is filled with zeros. + /// + /// Specifies the target to which the buffer object is bound for glClearBufferSubData, which must be one of the buffer binding targets in the following table: + /// Specifies the name of the buffer object for glClearNamedBufferSubData. + /// The internal format with which the data will be stored in the buffer object. + /// The offset in basic machine units into the buffer object's data store at which to start filling. + /// The size in basic machine units of the range of the data store to fill. + /// The format of the data in memory addressed by data. + /// The type of the data in memory addressed by data. + /// The address of a memory location storing the data to be replicated into the buffer's data store. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearBufferSubData(BufferTargetARB target, InternalFormat internalformat, IntPtr offset, IntPtr size, PixelFormat format, PixelType type, IntPtr data) => _ClearBufferSubData(target, internalformat, offset, size, format, type, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearBufferfi(Buffer buffer, int drawbuffer, float depth, int stencil) => _ClearBufferfi(buffer, drawbuffer, depth, stencil); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearBufferfv(Buffer buffer, int drawbuffer, float[] value) => _ClearBufferfv(buffer, drawbuffer, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearBufferfv(Buffer buffer, int drawbuffer, void* value) => _ClearBufferfv_ptr(buffer, drawbuffer, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearBufferfv(Buffer buffer, int drawbuffer, IntPtr value) => _ClearBufferfv_intptr(buffer, drawbuffer, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearBufferiv(Buffer buffer, int drawbuffer, int[] value) => _ClearBufferiv(buffer, drawbuffer, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearBufferiv(Buffer buffer, int drawbuffer, void* value) => _ClearBufferiv_ptr(buffer, drawbuffer, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearBufferiv(Buffer buffer, int drawbuffer, IntPtr value) => _ClearBufferiv_intptr(buffer, drawbuffer, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearBufferuiv(Buffer buffer, int drawbuffer, uint[] value) => _ClearBufferuiv(buffer, drawbuffer, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearBufferuiv(Buffer buffer, int drawbuffer, void* value) => _ClearBufferuiv_ptr(buffer, drawbuffer, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearBufferuiv(Buffer buffer, int drawbuffer, IntPtr value) => _ClearBufferuiv_intptr(buffer, drawbuffer, value); + + // --- + + /// + /// glClearColor specifies the red, green, blue, and alpha values used by glClear to clear the color buffers. Values specified by glClearColor are clamped to the range . + /// + /// Specify the red, green, blue, and alpha values used when the color buffers are cleared. The initial values are all 0. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearColor(float red, float green, float blue, float alpha) => _ClearColor(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearColorIiEXT(int red, int green, int blue, int alpha) => _ClearColorIiEXT(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearColorIuiEXT(uint red, uint green, uint blue, uint alpha) => _ClearColorIuiEXT(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearColorx(float red, float green, float blue, float alpha) => _ClearColorx(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearColorxOES(float red, float green, float blue, float alpha) => _ClearColorxOES(red, green, blue, alpha); + + // --- + + /// + /// glClearDepth specifies the depth value used by glClear to clear the depth buffer. Values specified by glClearDepth are clamped to the range . + /// + /// Specifies the depth value used when the depth buffer is cleared. The initial value is 1. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearDepth(double depth) => _ClearDepth(depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearDepthdNV(double depth) => _ClearDepthdNV(depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearDepthf(float d) => _ClearDepthf(d); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearDepthfOES(float depth) => _ClearDepthfOES(depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearDepthx(float depth) => _ClearDepthx(depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearDepthxOES(float depth) => _ClearDepthxOES(depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearIndex(float c) => _ClearIndex(c); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedBufferData(uint buffer, InternalFormat internalformat, PixelFormat format, PixelType type, IntPtr data) => _ClearNamedBufferData(buffer, internalformat, format, type, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedBufferDataEXT(uint buffer, InternalFormat internalformat, PixelFormat format, PixelType type, IntPtr data) => _ClearNamedBufferDataEXT(buffer, internalformat, format, type, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedBufferSubData(uint buffer, InternalFormat internalformat, IntPtr offset, IntPtr size, PixelFormat format, PixelType type, IntPtr data) => _ClearNamedBufferSubData(buffer, internalformat, offset, size, format, type, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedBufferSubDataEXT(uint buffer, int internalformat, IntPtr offset, IntPtr size, PixelFormat format, PixelType type, IntPtr data) => _ClearNamedBufferSubDataEXT(buffer, internalformat, offset, size, format, type, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedFramebufferfi(uint framebuffer, Buffer buffer, int drawbuffer, float depth, int stencil) => _ClearNamedFramebufferfi(framebuffer, buffer, drawbuffer, depth, stencil); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedFramebufferfv(uint framebuffer, Buffer buffer, int drawbuffer, float[] value) => _ClearNamedFramebufferfv(framebuffer, buffer, drawbuffer, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedFramebufferfv(uint framebuffer, Buffer buffer, int drawbuffer, void* value) => _ClearNamedFramebufferfv_ptr(framebuffer, buffer, drawbuffer, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedFramebufferfv(uint framebuffer, Buffer buffer, int drawbuffer, IntPtr value) => _ClearNamedFramebufferfv_intptr(framebuffer, buffer, drawbuffer, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedFramebufferiv(uint framebuffer, Buffer buffer, int drawbuffer, int[] value) => _ClearNamedFramebufferiv(framebuffer, buffer, drawbuffer, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedFramebufferiv(uint framebuffer, Buffer buffer, int drawbuffer, void* value) => _ClearNamedFramebufferiv_ptr(framebuffer, buffer, drawbuffer, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedFramebufferiv(uint framebuffer, Buffer buffer, int drawbuffer, IntPtr value) => _ClearNamedFramebufferiv_intptr(framebuffer, buffer, drawbuffer, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedFramebufferuiv(uint framebuffer, Buffer buffer, int drawbuffer, uint[] value) => _ClearNamedFramebufferuiv(framebuffer, buffer, drawbuffer, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedFramebufferuiv(uint framebuffer, Buffer buffer, int drawbuffer, void* value) => _ClearNamedFramebufferuiv_ptr(framebuffer, buffer, drawbuffer, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearNamedFramebufferuiv(uint framebuffer, Buffer buffer, int drawbuffer, IntPtr value) => _ClearNamedFramebufferuiv_intptr(framebuffer, buffer, drawbuffer, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearPixelLocalStorageuiEXT(int offset, int n, uint[] values) => _ClearPixelLocalStorageuiEXT(offset, n, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearPixelLocalStorageuiEXT(int offset, int n, void* values) => _ClearPixelLocalStorageuiEXT_ptr(offset, n, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearPixelLocalStorageuiEXT(int offset, int n, IntPtr values) => _ClearPixelLocalStorageuiEXT_intptr(offset, n, values); + + // --- + + /// + /// glClearStencil specifies the index used by glClear to clear the stencil buffer. s is masked with is the number of bits in the stencil buffer. + /// + /// Specifies the index used when the stencil buffer is cleared. The initial value is 0. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearStencil(int s) => _ClearStencil(s); + + // --- + + /// + /// glClearTexImage fills all an image contained in a texture with an application supplied value. texture must be the name of an existing texture. Further, texture may not be the name of a buffer texture, nor may its internal format be compressed. + /// format and type specify the format and type of the source data and are interpreted as they are for glTexImage3D. Textures with a base internal format of GL_DEPTH_COMPONENT, GL_STENCIL_INDEX, or GL_DEPTH_STENCIL require depth component, stencil, or depth-stencil component data respectively. Textures with other base internal formats require RGBA formats. Textures with integer internal formats require integer data. + /// data is a pointer to an array of between one and four components of texel data that will be used as the source for the constant fill value. The elements of data are converted by the GL into the internal format of the texture image (that was specified when the level was defined by any of the glTexImage*, glTexStorage* or glCopyTexImage* commands), and then used to fill the specified range of the destination texture level. If data is NULL, then the pointer is ignored and the sub-range of the texture image is filled with zeros. If texture is a multisample texture, all the samples in a texel are cleared to the value specified by data. + /// + /// The name of an existing texture object containing the image to be cleared. + /// The level of texture containing the region to be cleared. + /// The format of the data whose address in memory is given by data. + /// The type of the data whose address in memory is given by data. + /// The address in memory of the data to be used to clear the specified region. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearTexImage(uint texture, int level, PixelFormat format, PixelType type, IntPtr data) => _ClearTexImage(texture, level, format, type, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearTexImageEXT(uint texture, int level, PixelFormat format, PixelType type, IntPtr data) => _ClearTexImageEXT(texture, level, format, type, data); + + // --- + + /// + /// glClearTexSubImage fills all or part of an image contained in a texture with an application supplied value. texture must be the name of an existing texture. Further, texture may not be the name of a buffer texture, nor may its internal format be compressed. + /// Arguments xoffset, yoffset, and zoffset specify the lower left texel coordinates of a width-wide by height-high by depth-deep rectangular subregion of the texel array. + /// For one-dimensional array textures, yoffset is interpreted as the first layer to be cleared and height is the number of layers to clear. For two-dimensional array textures, zoffset is interpreted as the first layer to be cleared and depth is the number of layers to clear. Cube map textures are treated as an array of six slices in the z-dimension, where the value of zoffset is interpreted as specifying the cube map face for the corresponding layer and depth is the number of faces to clear. For cube map array textures, zoffset is the first layer-face to clear, and depth is the number of layer-faces to clear. Each layer-face is translated into an array layer and a cube map face as described in the OpenGL Specification. + /// Negative values of xoffset, yoffset, and zoffset correspond to the coordinates of border texels. Taking to be the xoffset, yoffset, zoffset, width, height, and depth argument values, any of the following relationships generates a GL_INVALID_OPERATION error: xws-wby<-hby+h>hs-hbz<-dbz+d>ds-db + /// For texture types that do not have certain dimensions, this command treats those dimensions as having a size of 1. For example, to clear a portion of a two-dimensional texture, use zoffset equal to zero and depth equal to one. + /// format and type specify the format and type of the source data and are interpreted as they are for glTexImage3D. Textures with a base internal format of GL_DEPTH_COMPONENT, GL_STENCIL_INDEX, or GL_DEPTH_STENCIL require depth component, stencil, or depth-stencil component data respectively. Textures with other base internal formats require RGBA formats. Textures with integer internal formats require integer data. + /// data is a pointer to an array of between one and four components of texel data that will be used as the source for the constant fill value. The elements of data are converted by the GL into the internal format of the texture image (that was specified when the level was defined by any of the glTexImage*, glTexStorage* or glCopyTexImage* commands), and then used to fill the specified range of the destination texture level. If data is NULL, then the pointer is ignored and the sub-range of the texture image is filled with zeros. If texture is a multisample texture, all the samples in a texel are cleared to the value specified by data. + /// + /// The name of an existing texture object containing the image to be cleared. + /// The level of texture containing the region to be cleared. + /// The coordinate of the left edge of the region to be cleared. + /// The coordinate of the lower edge of the region to be cleared. + /// The coordinate of the front of the region to be cleared. + /// The width of the region to be cleared. + /// The height of the region to be cleared. + /// The depth of the region to be cleared. + /// The format of the data whose address in memory is given by data. + /// The type of the data whose address in memory is given by data. + /// The address in memory of the data to be used to clear the specified region. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearTexSubImage(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr data) => _ClearTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClearTexSubImageEXT(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr data) => _ClearTexSubImageEXT(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClientActiveTexture(TextureUnit texture) => _ClientActiveTexture(texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClientActiveTextureARB(TextureUnit texture) => _ClientActiveTextureARB(texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClientActiveVertexStreamATI(VertexStreamATI stream) => _ClientActiveVertexStreamATI(stream); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClientAttribDefaultEXT(int mask) => _ClientAttribDefaultEXT(mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClientWaitSemaphoreui64NVX(int fenceObjectCount, uint[] semaphoreArray, UInt64[] fenceValueArray) => _ClientWaitSemaphoreui64NVX(fenceObjectCount, semaphoreArray, fenceValueArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClientWaitSemaphoreui64NVX(int fenceObjectCount, void* semaphoreArray, void* fenceValueArray) => _ClientWaitSemaphoreui64NVX_ptr(fenceObjectCount, semaphoreArray, fenceValueArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClientWaitSemaphoreui64NVX(int fenceObjectCount, IntPtr semaphoreArray, IntPtr fenceValueArray) => _ClientWaitSemaphoreui64NVX_intptr(fenceObjectCount, semaphoreArray, fenceValueArray); + + // --- + + /// + /// glClientWaitSync causes the client to block and wait for the sync object specified by sync to become signaled. If sync is signaled when glClientWaitSync is called, glClientWaitSync returns immediately, otherwise it will block and wait for up to timeout nanoseconds for sync to become signaled. + /// The return value is one of four status values: GL_ALREADY_SIGNALED indicates that sync was signaled at the time that glClientWaitSync was called. GL_TIMEOUT_EXPIRED indicates that at least timeout nanoseconds passed and sync did not become signaled. GL_CONDITION_SATISFIED indicates that sync was signaled before the timeout expired. GL_WAIT_FAILED indicates that an error occurred. Additionally, an OpenGL error will be generated. + /// + /// The sync object whose status to wait on. + /// A bitfield controlling the command flushing behavior. flags may be GL_SYNC_FLUSH_COMMANDS_BIT. + /// The timeout, specified in nanoseconds, for which the implementation should wait for sync to become signaled. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int ClientWaitSync(int sync, int flags, UInt64 timeout) => _ClientWaitSync(sync, flags, timeout); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int ClientWaitSyncAPPLE(int sync, int flags, UInt64 timeout) => _ClientWaitSyncAPPLE(sync, flags, timeout); + + // --- + + /// + /// glClipControl controls the clipping volume behavior and the clip coordinate to window coordinate transformation behavior. + /// The view volume is defined by $$z_{min} \leq z_c \leq w_c$$ where $z_{min} = -w_c$ when depth is GL_NEGATIVE_ONE_TO_ONE, and $z_{min} = 0$ when depth is GL_ZERO_TO_ONE. + /// The normalized device coordinate $y_d$ is given by $$y_d = { { f \times y_c } \over w_c }$$ where $f = 1$ when origin is GL_LOWER_LEFT, and $f = -1$ when origin is GL_UPPER_LEFT. + /// The window coordinate $z_w$ is given by $$z_w = s \times z_d + b$$ where $s = { { f - n } \over 2 }$ and $b = { {n + f} \over 2 }$ when depth is GL_NEGATIVE_ONE_TO_ONE, and $s = f - n$ and $b = n$ when depth is GL_ZERO_TO_ONE. $n$ and $f$ are the near and far depth range values set with glDepthRange. + /// Finally, the polygon area computation defined by gl_FrontFacing to determine if a polygon is front- or back-facing has its sign negated when origin is GL_UPPER_LEFT. + /// + /// Specifies the clip control origin. Must be one of GL_LOWER_LEFT or GL_UPPER_LEFT. + /// Specifies the clip control depth mode. Must be one of GL_NEGATIVE_ONE_TO_ONE or GL_ZERO_TO_ONE. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipControl(ClipControlOrigin origin, ClipControlDepth depth) => _ClipControl(origin, depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipControlEXT(int origin, int depth) => _ClipControlEXT(origin, depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlane(ClipPlaneName plane, double[] equation) => _ClipPlane(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlane(ClipPlaneName plane, void* equation) => _ClipPlane_ptr(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlane(ClipPlaneName plane, IntPtr equation) => _ClipPlane_intptr(plane, equation); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanef(ClipPlaneName p, float[] eqn) => _ClipPlanef(p, eqn); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanef(ClipPlaneName p, void* eqn) => _ClipPlanef_ptr(p, eqn); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanef(ClipPlaneName p, IntPtr eqn) => _ClipPlanef_intptr(p, eqn); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanefIMG(ClipPlaneName p, float[] eqn) => _ClipPlanefIMG(p, eqn); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanefIMG(ClipPlaneName p, void* eqn) => _ClipPlanefIMG_ptr(p, eqn); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanefIMG(ClipPlaneName p, IntPtr eqn) => _ClipPlanefIMG_intptr(p, eqn); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanefOES(ClipPlaneName plane, float[] equation) => _ClipPlanefOES(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanefOES(ClipPlaneName plane, void* equation) => _ClipPlanefOES_ptr(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanefOES(ClipPlaneName plane, IntPtr equation) => _ClipPlanefOES_intptr(plane, equation); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanex(ClipPlaneName plane, float[] equation) => _ClipPlanex(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanex(ClipPlaneName plane, void* equation) => _ClipPlanex_ptr(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanex(ClipPlaneName plane, IntPtr equation) => _ClipPlanex_intptr(plane, equation); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanexIMG(ClipPlaneName p, float[] eqn) => _ClipPlanexIMG(p, eqn); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanexIMG(ClipPlaneName p, void* eqn) => _ClipPlanexIMG_ptr(p, eqn); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanexIMG(ClipPlaneName p, IntPtr eqn) => _ClipPlanexIMG_intptr(p, eqn); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanexOES(ClipPlaneName plane, float[] equation) => _ClipPlanexOES(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanexOES(ClipPlaneName plane, void* equation) => _ClipPlanexOES_ptr(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ClipPlanexOES(ClipPlaneName plane, IntPtr equation) => _ClipPlanexOES_intptr(plane, equation); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3b(sbyte red, sbyte green, sbyte blue) => _Color3b(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3bv(sbyte[] v) => _Color3bv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3bv(void* v) => _Color3bv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3bv(IntPtr v) => _Color3bv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3d(double red, double green, double blue) => _Color3d(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3dv(double[] v) => _Color3dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3dv(void* v) => _Color3dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3dv(IntPtr v) => _Color3dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3f(float red, float green, float blue) => _Color3f(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3fVertex3fSUN(float r, float g, float b, float x, float y, float z) => _Color3fVertex3fSUN(r, g, b, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3fVertex3fvSUN(float[] c, float[] v) => _Color3fVertex3fvSUN(c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3fVertex3fvSUN(void* c, void* v) => _Color3fVertex3fvSUN_ptr(c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3fVertex3fvSUN(IntPtr c, IntPtr v) => _Color3fVertex3fvSUN_intptr(c, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3fv(float[] v) => _Color3fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3fv(void* v) => _Color3fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3fv(IntPtr v) => _Color3fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3hNV(float red, float green, float blue) => _Color3hNV(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3hvNV(float[] v) => _Color3hvNV(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3hvNV(void* v) => _Color3hvNV_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3hvNV(IntPtr v) => _Color3hvNV_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3i(int red, int green, int blue) => _Color3i(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3iv(int[] v) => _Color3iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3iv(void* v) => _Color3iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3iv(IntPtr v) => _Color3iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3s(short red, short green, short blue) => _Color3s(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3sv(short[] v) => _Color3sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3sv(void* v) => _Color3sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3sv(IntPtr v) => _Color3sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3ub(byte red, byte green, byte blue) => _Color3ub(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3ubv(byte[] v) => _Color3ubv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3ubv(void* v) => _Color3ubv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3ubv(IntPtr v) => _Color3ubv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3ui(uint red, uint green, uint blue) => _Color3ui(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3uiv(uint[] v) => _Color3uiv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3uiv(void* v) => _Color3uiv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3uiv(IntPtr v) => _Color3uiv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3us(ushort red, ushort green, ushort blue) => _Color3us(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3usv(ushort[] v) => _Color3usv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3usv(void* v) => _Color3usv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3usv(IntPtr v) => _Color3usv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3xOES(float red, float green, float blue) => _Color3xOES(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3xvOES(float[] components) => _Color3xvOES(components); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3xvOES(void* components) => _Color3xvOES_ptr(components); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color3xvOES(IntPtr components) => _Color3xvOES_intptr(components); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4b(sbyte red, sbyte green, sbyte blue, sbyte alpha) => _Color4b(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4bv(sbyte[] v) => _Color4bv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4bv(void* v) => _Color4bv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4bv(IntPtr v) => _Color4bv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4d(double red, double green, double blue, double alpha) => _Color4d(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4dv(double[] v) => _Color4dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4dv(void* v) => _Color4dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4dv(IntPtr v) => _Color4dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4f(float red, float green, float blue, float alpha) => _Color4f(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4fNormal3fVertex3fSUN(float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z) => _Color4fNormal3fVertex3fSUN(r, g, b, a, nx, ny, nz, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4fNormal3fVertex3fvSUN(float[] c, float[] n, float[] v) => _Color4fNormal3fVertex3fvSUN(c, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4fNormal3fVertex3fvSUN(void* c, void* n, void* v) => _Color4fNormal3fVertex3fvSUN_ptr(c, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4fNormal3fVertex3fvSUN(IntPtr c, IntPtr n, IntPtr v) => _Color4fNormal3fVertex3fvSUN_intptr(c, n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4fv(float[] v) => _Color4fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4fv(void* v) => _Color4fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4fv(IntPtr v) => _Color4fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4hNV(float red, float green, float blue, float alpha) => _Color4hNV(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4hvNV(float[] v) => _Color4hvNV(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4hvNV(void* v) => _Color4hvNV_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4hvNV(IntPtr v) => _Color4hvNV_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4i(int red, int green, int blue, int alpha) => _Color4i(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4iv(int[] v) => _Color4iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4iv(void* v) => _Color4iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4iv(IntPtr v) => _Color4iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4s(short red, short green, short blue, short alpha) => _Color4s(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4sv(short[] v) => _Color4sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4sv(void* v) => _Color4sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4sv(IntPtr v) => _Color4sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ub(byte red, byte green, byte blue, byte alpha) => _Color4ub(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ubVertex2fSUN(byte r, byte g, byte b, byte a, float x, float y) => _Color4ubVertex2fSUN(r, g, b, a, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ubVertex2fvSUN(byte[] c, float[] v) => _Color4ubVertex2fvSUN(c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ubVertex2fvSUN(void* c, void* v) => _Color4ubVertex2fvSUN_ptr(c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ubVertex2fvSUN(IntPtr c, IntPtr v) => _Color4ubVertex2fvSUN_intptr(c, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ubVertex3fSUN(byte r, byte g, byte b, byte a, float x, float y, float z) => _Color4ubVertex3fSUN(r, g, b, a, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ubVertex3fvSUN(byte[] c, float[] v) => _Color4ubVertex3fvSUN(c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ubVertex3fvSUN(void* c, void* v) => _Color4ubVertex3fvSUN_ptr(c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ubVertex3fvSUN(IntPtr c, IntPtr v) => _Color4ubVertex3fvSUN_intptr(c, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ubv(byte[] v) => _Color4ubv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ubv(void* v) => _Color4ubv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ubv(IntPtr v) => _Color4ubv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4ui(uint red, uint green, uint blue, uint alpha) => _Color4ui(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4uiv(uint[] v) => _Color4uiv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4uiv(void* v) => _Color4uiv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4uiv(IntPtr v) => _Color4uiv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4us(ushort red, ushort green, ushort blue, ushort alpha) => _Color4us(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4usv(ushort[] v) => _Color4usv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4usv(void* v) => _Color4usv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4usv(IntPtr v) => _Color4usv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4x(float red, float green, float blue, float alpha) => _Color4x(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4xOES(float red, float green, float blue, float alpha) => _Color4xOES(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4xvOES(float[] components) => _Color4xvOES(components); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4xvOES(void* components) => _Color4xvOES_ptr(components); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Color4xvOES(IntPtr components) => _Color4xvOES_intptr(components); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorFormatNV(int size, int type, int stride) => _ColorFormatNV(size, type, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorFragmentOp1ATI(FragmentOpATI op, uint dst, uint dstMask, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod) => _ColorFragmentOp1ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorFragmentOp2ATI(FragmentOpATI op, uint dst, uint dstMask, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod, uint arg2, uint arg2Rep, uint arg2Mod) => _ColorFragmentOp2ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorFragmentOp3ATI(FragmentOpATI op, uint dst, uint dstMask, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod, uint arg2, uint arg2Rep, uint arg2Mod, uint arg3, uint arg3Rep, uint arg3Mod) => _ColorFragmentOp3ATI(op, dst, dstMask, dstMod, arg1, arg1Rep, arg1Mod, arg2, arg2Rep, arg2Mod, arg3, arg3Rep, arg3Mod); + + // --- + + /// + /// glColorMask and glColorMaski specify whether the individual color components in the frame buffer can or cannot be written. glColorMaski sets the mask for a specific draw buffer, whereas glColorMask sets the mask for all draw buffers. If red is GL_FALSE, for example, no change is made to the red component of any pixel in any of the color buffers, regardless of the drawing operation attempted. + /// Changes to individual bits of components cannot be controlled. Rather, changes are either enabled or disabled for entire color components. + /// + /// For glColorMaski, specifies the index of the draw buffer whose color mask to set. + /// Specify whether red, green, blue, and alpha are to be written into the frame buffer. The initial values are all GL_TRUE, indicating that the color components are written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorMask(bool red, bool green, bool blue, bool alpha) => _ColorMask(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorMaskIndexedEXT(uint index, bool r, bool g, bool b, bool a) => _ColorMaskIndexedEXT(index, r, g, b, a); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorMaski(uint index, bool r, bool g, bool b, bool a) => _ColorMaski(index, r, g, b, a); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorMaskiEXT(uint index, bool r, bool g, bool b, bool a) => _ColorMaskiEXT(index, r, g, b, a); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorMaskiOES(uint index, bool r, bool g, bool b, bool a) => _ColorMaskiOES(index, r, g, b, a); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorMaterial(MaterialFace face, ColorMaterialParameter mode) => _ColorMaterial(face, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorP3ui(ColorPointerType type, uint color) => _ColorP3ui(type, color); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorP3uiv(ColorPointerType type, uint[] color) => _ColorP3uiv(type, color); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorP3uiv(ColorPointerType type, void* color) => _ColorP3uiv_ptr(type, color); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorP3uiv(ColorPointerType type, IntPtr color) => _ColorP3uiv_intptr(type, color); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorP4ui(ColorPointerType type, uint color) => _ColorP4ui(type, color); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorP4uiv(ColorPointerType type, uint[] color) => _ColorP4uiv(type, color); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorP4uiv(ColorPointerType type, void* color) => _ColorP4uiv_ptr(type, color); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorP4uiv(ColorPointerType type, IntPtr color) => _ColorP4uiv_intptr(type, color); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorPointer(int size, ColorPointerType type, int stride, IntPtr pointer) => _ColorPointer(size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorPointerEXT(int size, ColorPointerType type, int stride, int count, IntPtr pointer) => _ColorPointerEXT(size, type, stride, count, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorPointerListIBM(int size, ColorPointerType type, int stride, IntPtr* pointer, int ptrstride) => _ColorPointerListIBM(size, type, stride, pointer, ptrstride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorPointervINTEL(int size, VertexPointerType type, IntPtr* pointer) => _ColorPointervINTEL(size, type, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorSubTable(ColorTableTarget target, int start, int count, PixelFormat format, PixelType type, IntPtr data) => _ColorSubTable(target, start, count, format, type, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorSubTableEXT(ColorTableTarget target, int start, int count, PixelFormat format, PixelType type, IntPtr data) => _ColorSubTableEXT(target, start, count, format, type, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTable(ColorTableTarget target, InternalFormat internalformat, int width, PixelFormat format, PixelType type, IntPtr table) => _ColorTable(target, internalformat, width, format, type, table); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableEXT(ColorTableTarget target, InternalFormat internalFormat, int width, PixelFormat format, PixelType type, IntPtr table) => _ColorTableEXT(target, internalFormat, width, format, type, table); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableParameterfv(ColorTableTarget target, ColorTableParameterPNameSGI pname, float[] @params) => _ColorTableParameterfv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableParameterfv(ColorTableTarget target, ColorTableParameterPNameSGI pname, void* @params) => _ColorTableParameterfv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableParameterfv(ColorTableTarget target, ColorTableParameterPNameSGI pname, IntPtr @params) => _ColorTableParameterfv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableParameterfvSGI(ColorTableTargetSGI target, ColorTableParameterPNameSGI pname, float[] @params) => _ColorTableParameterfvSGI(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableParameterfvSGI(ColorTableTargetSGI target, ColorTableParameterPNameSGI pname, void* @params) => _ColorTableParameterfvSGI_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableParameterfvSGI(ColorTableTargetSGI target, ColorTableParameterPNameSGI pname, IntPtr @params) => _ColorTableParameterfvSGI_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableParameteriv(ColorTableTarget target, ColorTableParameterPNameSGI pname, int[] @params) => _ColorTableParameteriv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableParameteriv(ColorTableTarget target, ColorTableParameterPNameSGI pname, void* @params) => _ColorTableParameteriv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableParameteriv(ColorTableTarget target, ColorTableParameterPNameSGI pname, IntPtr @params) => _ColorTableParameteriv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableParameterivSGI(ColorTableTargetSGI target, ColorTableParameterPNameSGI pname, int[] @params) => _ColorTableParameterivSGI(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableParameterivSGI(ColorTableTargetSGI target, ColorTableParameterPNameSGI pname, void* @params) => _ColorTableParameterivSGI_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableParameterivSGI(ColorTableTargetSGI target, ColorTableParameterPNameSGI pname, IntPtr @params) => _ColorTableParameterivSGI_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ColorTableSGI(ColorTableTargetSGI target, InternalFormat internalformat, int width, PixelFormat format, PixelType type, IntPtr table) => _ColorTableSGI(target, internalformat, width, format, type, table); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerInputNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerRegisterNV input, CombinerMappingNV mapping, CombinerComponentUsageNV componentUsage) => _CombinerInputNV(stage, portion, variable, input, mapping, componentUsage); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerOutputNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerRegisterNV abOutput, CombinerRegisterNV cdOutput, CombinerRegisterNV sumOutput, CombinerScaleNV scale, CombinerBiasNV bias, bool abDotProduct, bool cdDotProduct, bool muxSum) => _CombinerOutputNV(stage, portion, abOutput, cdOutput, sumOutput, scale, bias, abDotProduct, cdDotProduct, muxSum); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerParameterfNV(CombinerParameterNV pname, float param) => _CombinerParameterfNV(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerParameterfvNV(CombinerParameterNV pname, float[] @params) => _CombinerParameterfvNV(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerParameterfvNV(CombinerParameterNV pname, void* @params) => _CombinerParameterfvNV_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerParameterfvNV(CombinerParameterNV pname, IntPtr @params) => _CombinerParameterfvNV_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerParameteriNV(CombinerParameterNV pname, int param) => _CombinerParameteriNV(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerParameterivNV(CombinerParameterNV pname, int[] @params) => _CombinerParameterivNV(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerParameterivNV(CombinerParameterNV pname, void* @params) => _CombinerParameterivNV_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerParameterivNV(CombinerParameterNV pname, IntPtr @params) => _CombinerParameterivNV_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerStageParameterfvNV(CombinerStageNV stage, CombinerParameterNV pname, float[] @params) => _CombinerStageParameterfvNV(stage, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerStageParameterfvNV(CombinerStageNV stage, CombinerParameterNV pname, void* @params) => _CombinerStageParameterfvNV_ptr(stage, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CombinerStageParameterfvNV(CombinerStageNV stage, CombinerParameterNV pname, IntPtr @params) => _CombinerStageParameterfvNV_intptr(stage, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CommandListSegmentsNV(uint list, uint segments) => _CommandListSegmentsNV(list, segments); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompileCommandListNV(uint list) => _CompileCommandListNV(list); + + // --- + + /// + /// glCompileShader compiles the source code strings that have been stored in the shader object specified by shader. + /// The compilation status will be stored as part of the shader object's state. This value will be set to GL_TRUE if the shader was compiled without errors and is ready for use, and GL_FALSE otherwise. It can be queried by calling glGetShader with arguments shader and GL_COMPILE_STATUS. + /// Compilation of a shader can fail for a number of reasons as specified by the OpenGL Shading Language Specification. Whether or not the compilation was successful, information about the compilation can be obtained from the shader object's information log by calling glGetShaderInfoLog. + /// + /// Specifies the shader object to be compiled. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompileShader(uint shader) => _CompileShader(shader); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompileShaderARB(int shaderObj) => _CompileShaderARB(shaderObj); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompileShaderIncludeARB(uint shader, int count, string[] path, int[] length) => _CompileShaderIncludeARB(shader, count, path, length); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompileShaderIncludeARB(uint shader, int count, void* path, void* length) => _CompileShaderIncludeARB_ptr(shader, count, path, length); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompileShaderIncludeARB(uint shader, int count, IntPtr path, IntPtr length) => _CompileShaderIncludeARB_intptr(shader, count, path, length); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedMultiTexImage1DEXT(TextureUnit texunit, TextureTarget target, int level, InternalFormat internalformat, int width, int border, int imageSize, IntPtr bits) => _CompressedMultiTexImage1DEXT(texunit, target, level, internalformat, width, border, imageSize, bits); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedMultiTexImage2DEXT(TextureUnit texunit, TextureTarget target, int level, InternalFormat internalformat, int width, int height, int border, int imageSize, IntPtr bits) => _CompressedMultiTexImage2DEXT(texunit, target, level, internalformat, width, height, border, imageSize, bits); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedMultiTexImage3DEXT(TextureUnit texunit, TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, int imageSize, IntPtr bits) => _CompressedMultiTexImage3DEXT(texunit, target, level, internalformat, width, height, depth, border, imageSize, bits); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedMultiTexSubImage1DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int width, PixelFormat format, int imageSize, IntPtr bits) => _CompressedMultiTexSubImage1DEXT(texunit, target, level, xoffset, width, format, imageSize, bits); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedMultiTexSubImage2DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, int imageSize, IntPtr bits) => _CompressedMultiTexSubImage2DEXT(texunit, target, level, xoffset, yoffset, width, height, format, imageSize, bits); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedMultiTexSubImage3DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, int imageSize, IntPtr bits) => _CompressedMultiTexSubImage3DEXT(texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits); + + // --- + + /// + /// Texturing allows elements of an image array to be read by shaders. + /// glCompressedTexImage1D loads a previously defined, and retrieved, compressed one-dimensional texture image if target is GL_TEXTURE_1D (see glTexImage1D). + /// If target is GL_PROXY_TEXTURE_1D, no data is read from data, but all of the texture image state is recalculated, checked for consistency, and checked against the implementation's capabilities. If the implementation cannot handle a texture of the requested texture size, it sets all of the image state to 0, but does not generate an error (see glGetError). To query for an entire mipmap array, use an image array level greater than or equal to 1. + /// internalformat must be an extension-specified compressed-texture format. When a texture is loaded with glTexImage1D using a generic compressed texture format (e.g., GL_COMPRESSED_RGB) the GL selects from one of its extensions supporting compressed textures. In order to load the compressed texture image using glCompressedTexImage1D, query the compressed texture image's size and format using glGetTexLevelParameter. + /// If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target (see glBindBuffer) while a texture image is specified, data is treated as a byte offset into the buffer object's data store. + /// If the compressed data are arranged into fixed-size blocks of texels, the pixel storage modes can be used to select a sub-rectangle from a larger containing rectangle. These pixel storage modes operate in the same way as they do for glTexImage1D. In the following description, denote by + /// + /// Specifies the target texture. Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies the format of the compressed image data stored at address data. + /// Specifies the width of the texture image. All implementations support texture images that are at least 64 texels wide. The height of the 1D texture image is 1. + /// This value must be 0. + /// Specifies the number of unsigned bytes of image data starting at the address specified by data. + /// Specifies a pointer to the compressed image data in memory. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexImage1D(TextureTarget target, int level, InternalFormat internalformat, int width, int border, int imageSize, IntPtr data) => _CompressedTexImage1D(target, level, internalformat, width, border, imageSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexImage1DARB(TextureTarget target, int level, InternalFormat internalformat, int width, int border, int imageSize, IntPtr data) => _CompressedTexImage1DARB(target, level, internalformat, width, border, imageSize, data); + + // --- + + /// + /// Texturing allows elements of an image array to be read by shaders. + /// glCompressedTexImage2D loads a previously defined, and retrieved, compressed two-dimensional texture image if target is GL_TEXTURE_2D, or one of the cube map faces such as GL_TEXTURE_CUBE_MAP_POSITIVE_X. (see glTexImage2D). + /// If target is GL_TEXTURE_1D_ARRAY, data is treated as an array of compressed 1D textures. + /// If target is GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY or GL_PROXY_TEXTURE_CUBE_MAP, no data is read from data, but all of the texture image state is recalculated, checked for consistency, and checked against the implementation's capabilities. If the implementation cannot handle a texture of the requested texture size, it sets all of the image state to 0, but does not generate an error (see glGetError). To query for an entire mipmap array, use an image array level greater than or equal to 1. + /// internalformat must be a known compressed image format (such as GL_RGTC) or an extension-specified compressed-texture format. When a texture is loaded with glTexImage2D using a generic compressed texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of its extensions supporting compressed textures. In order to load the compressed texture image using glCompressedTexImage2D, query the compressed texture image's size and format using glGetTexLevelParameter. + /// If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target (see glBindBuffer) while a texture image is specified, data is treated as a byte offset into the buffer object's data store. + /// If the compressed data are arranged into fixed-size blocks of texels, the pixel storage modes can be used to select a sub-rectangle from a larger containing rectangle. These pixel storage modes operate in the same way as they do for glTexImage2D. In the following description, denote by + /// + /// Specifies the target texture. Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or GL_PROXY_TEXTURE_CUBE_MAP. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies the format of the compressed image data stored at address data. + /// Specifies the width of the texture image. All implementations support 2D texture and cube map texture images that are at least 16384 texels wide. + /// Specifies the height of the texture image. All implementations support 2D texture and cube map texture images that are at least 16384 texels high. + /// This value must be 0. + /// Specifies the number of unsigned bytes of image data starting at the address specified by data. + /// Specifies a pointer to the compressed image data in memory. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexImage2D(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int border, int imageSize, IntPtr data) => _CompressedTexImage2D(target, level, internalformat, width, height, border, imageSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexImage2DARB(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int border, int imageSize, IntPtr data) => _CompressedTexImage2DARB(target, level, internalformat, width, height, border, imageSize, data); + + // --- + + /// + /// Texturing allows elements of an image array to be read by shaders. + /// glCompressedTexImage3D loads a previously defined, and retrieved, compressed three-dimensional texture image if target is GL_TEXTURE_3D (see glTexImage3D). + /// If target is GL_TEXTURE_2D_ARRAY, data is treated as an array of compressed 2D textures. + /// If target is GL_PROXY_TEXTURE_3D or GL_PROXY_TEXTURE_2D_ARRAY, no data is read from data, but all of the texture image state is recalculated, checked for consistency, and checked against the implementation's capabilities. If the implementation cannot handle a texture of the requested texture size, it sets all of the image state to 0, but does not generate an error (see glGetError). To query for an entire mipmap array, use an image array level greater than or equal to 1. + /// internalformat must be a known compressed image format (such as GL_RGTC) or an extension-specified compressed-texture format. When a texture is loaded with glTexImage2D using a generic compressed texture format (e.g., GL_COMPRESSED_RGB), the GL selects from one of its extensions supporting compressed textures. In order to load the compressed texture image using glCompressedTexImage3D, query the compressed texture image's size and format using glGetTexLevelParameter. + /// If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target (see glBindBuffer) while a texture image is specified, data is treated as a byte offset into the buffer object's data store. + /// If the compressed data are arranged into fixed-size blocks of texels, the pixel storage modes can be used to select a sub-rectangle from a larger containing rectangle. These pixel storage modes operate in the same way as they do for glTexImage1D. In the following description, denote by + /// + /// Specifies the target texture. Must be GL_TEXTURE_3D, GL_PROXY_TEXTURE_3D, GL_TEXTURE_2D_ARRAY or GL_PROXY_TEXTURE_2D_ARRAY. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies the format of the compressed image data stored at address data. + /// Specifies the width of the texture image. All implementations support 3D texture images that are at least 16 texels wide. + /// Specifies the height of the texture image. All implementations support 3D texture images that are at least 16 texels high. + /// Specifies the depth of the texture image. All implementations support 3D texture images that are at least 16 texels deep. + /// This value must be 0. + /// Specifies the number of unsigned bytes of image data starting at the address specified by data. + /// Specifies a pointer to the compressed image data in memory. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexImage3D(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, int imageSize, IntPtr data) => _CompressedTexImage3D(target, level, internalformat, width, height, depth, border, imageSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexImage3DARB(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, int imageSize, IntPtr data) => _CompressedTexImage3DARB(target, level, internalformat, width, height, depth, border, imageSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexImage3DOES(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, int imageSize, IntPtr data) => _CompressedTexImage3DOES(target, level, internalformat, width, height, depth, border, imageSize, data); + + // --- + + /// + /// Texturing allows elements of an image array to be read by shaders. + /// glCompressedTexSubImage1D and glCompressedTextureSubImage1D redefine a contiguous subregion of an existing one-dimensional texture image. The texels referenced by data replace the portion of the existing texture array with x indices xoffset and , inclusive. This region may not include any texels outside the range of the texture array as it was originally specified. It is not an error to specify a subtexture with width of 0, but such a specification has no effect. + /// internalformat must be a known compressed image format (such as GL_RGTC) or an extension-specified compressed-texture format. The format of the compressed texture image is selected by the GL implementation that compressed it (see glTexImage1D), and should be queried at the time the texture was compressed with glGetTexLevelParameter. + /// If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target (see glBindBuffer) while a texture image is specified, data is treated as a byte offset into the buffer object's data store. + /// + /// Specifies the target, to which the texture is bound, for glCompressedTexSubImage1D function. Must be GL_TEXTURE_1D. + /// Specifies the texture object name for glCompressedTextureSubImage1D function. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies a texel offset in the x direction within the texture array. + /// Specifies the width of the texture subimage. + /// Specifies the format of the compressed image data stored at address data. + /// Specifies the number of unsigned bytes of image data starting at the address specified by data. + /// Specifies a pointer to the compressed image data in memory. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexSubImage1D(TextureTarget target, int level, int xoffset, int width, PixelFormat format, int imageSize, IntPtr data) => _CompressedTexSubImage1D(target, level, xoffset, width, format, imageSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexSubImage1DARB(TextureTarget target, int level, int xoffset, int width, PixelFormat format, int imageSize, IntPtr data) => _CompressedTexSubImage1DARB(target, level, xoffset, width, format, imageSize, data); + + // --- + + /// + /// Texturing allows elements of an image array to be read by shaders. + /// glCompressedTexSubImage2D and glCompressedTextureSubImage2D redefine a contiguous subregion of an existing two-dimensional texture image. The texels referenced by data replace the portion of the existing texture array with x indices xoffset and , inclusive. This region may not include any texels outside the range of the texture array as it was originally specified. It is not an error to specify a subtexture with width of 0, but such a specification has no effect. + /// internalformat must be a known compressed image format (such as GL_RGTC) or an extension-specified compressed-texture format. The format of the compressed texture image is selected by the GL implementation that compressed it (see glTexImage2D) and should be queried at the time the texture was compressed with glGetTexLevelParameter. + /// If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target (see glBindBuffer) while a texture image is specified, data is treated as a byte offset into the buffer object's data store. + /// + /// Specifies the target to which the texture is bound for glCompressedTexSubImage2D function. Must be GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D, GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + /// Specifies the texture object name for glCompressedTextureSubImage2D function. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies a texel offset in the x direction within the texture array. + /// Specifies a texel offset in the y direction within the texture array. + /// Specifies the width of the texture subimage. + /// Specifies the height of the texture subimage. + /// Specifies the format of the compressed image data stored at address data. + /// Specifies the number of unsigned bytes of image data starting at the address specified by data. + /// Specifies a pointer to the compressed image data in memory. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexSubImage2D(TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, int imageSize, IntPtr data) => _CompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, imageSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexSubImage2DARB(TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, int imageSize, IntPtr data) => _CompressedTexSubImage2DARB(target, level, xoffset, yoffset, width, height, format, imageSize, data); + + // --- + + /// + /// Texturing allows elements of an image array to be read by shaders. + /// glCompressedTexSubImage3D and glCompressedTextureSubImage3D redefine a contiguous subregion of an existing three-dimensional texture image. The texels referenced by data replace the portion of the existing texture array with x indices xoffset and , inclusive. This region may not include any texels outside the range of the texture array as it was originally specified. It is not an error to specify a subtexture with width of 0, but such a specification has no effect. + /// internalformat must be a known compressed image format (such as GL_RGTC) or an extension-specified compressed-texture format. The format of the compressed texture image is selected by the GL implementation that compressed it (see glTexImage3D) and should be queried at the time the texture was compressed with glGetTexLevelParameter. + /// If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target (see glBindBuffer) while a texture image is specified, data is treated as a byte offset into the buffer object's data store. + /// + /// Specifies the target to which the texture is bound for glCompressedTexSubImage3D function. Must be GL_TEXTURE_2D_ARRAY, GL_TEXTURE_3D, or GL_TEXTURE_CUBE_MAP_ARRAY. + /// Specifies the texture object name for glCompressedTextureSubImage3D function. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies a texel offset in the x direction within the texture array. + /// Specifies a texel offset in the y direction within the texture array. + /// Specifies the width of the texture subimage. + /// Specifies the height of the texture subimage. + /// Specifies the depth of the texture subimage. + /// Specifies the format of the compressed image data stored at address data. + /// Specifies the number of unsigned bytes of image data starting at the address specified by data. + /// Specifies a pointer to the compressed image data in memory. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexSubImage3D(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, int imageSize, IntPtr data) => _CompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexSubImage3DARB(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, int imageSize, IntPtr data) => _CompressedTexSubImage3DARB(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTexSubImage3DOES(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, int imageSize, IntPtr data) => _CompressedTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTextureImage1DEXT(uint texture, TextureTarget target, int level, InternalFormat internalformat, int width, int border, int imageSize, IntPtr bits) => _CompressedTextureImage1DEXT(texture, target, level, internalformat, width, border, imageSize, bits); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTextureImage2DEXT(uint texture, TextureTarget target, int level, InternalFormat internalformat, int width, int height, int border, int imageSize, IntPtr bits) => _CompressedTextureImage2DEXT(texture, target, level, internalformat, width, height, border, imageSize, bits); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTextureImage3DEXT(uint texture, TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, int imageSize, IntPtr bits) => _CompressedTextureImage3DEXT(texture, target, level, internalformat, width, height, depth, border, imageSize, bits); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTextureSubImage1D(uint texture, int level, int xoffset, int width, PixelFormat format, int imageSize, IntPtr data) => _CompressedTextureSubImage1D(texture, level, xoffset, width, format, imageSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTextureSubImage1DEXT(uint texture, TextureTarget target, int level, int xoffset, int width, PixelFormat format, int imageSize, IntPtr bits) => _CompressedTextureSubImage1DEXT(texture, target, level, xoffset, width, format, imageSize, bits); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTextureSubImage2D(uint texture, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, int imageSize, IntPtr data) => _CompressedTextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, imageSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTextureSubImage2DEXT(uint texture, TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, int imageSize, IntPtr bits) => _CompressedTextureSubImage2DEXT(texture, target, level, xoffset, yoffset, width, height, format, imageSize, bits); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTextureSubImage3D(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, int imageSize, IntPtr data) => _CompressedTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CompressedTextureSubImage3DEXT(uint texture, TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, int imageSize, IntPtr bits) => _CompressedTextureSubImage3DEXT(texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, imageSize, bits); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConservativeRasterParameterfNV(int pname, float value) => _ConservativeRasterParameterfNV(pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConservativeRasterParameteriNV(int pname, int param) => _ConservativeRasterParameteriNV(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionFilter1D(ConvolutionTarget target, InternalFormat internalformat, int width, PixelFormat format, PixelType type, IntPtr image) => _ConvolutionFilter1D(target, internalformat, width, format, type, image); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionFilter1DEXT(ConvolutionTargetEXT target, InternalFormat internalformat, int width, PixelFormat format, PixelType type, IntPtr image) => _ConvolutionFilter1DEXT(target, internalformat, width, format, type, image); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionFilter2D(ConvolutionTarget target, InternalFormat internalformat, int width, int height, PixelFormat format, PixelType type, IntPtr image) => _ConvolutionFilter2D(target, internalformat, width, height, format, type, image); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionFilter2DEXT(ConvolutionTargetEXT target, InternalFormat internalformat, int width, int height, PixelFormat format, PixelType type, IntPtr image) => _ConvolutionFilter2DEXT(target, internalformat, width, height, format, type, image); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterf(ConvolutionTarget target, ConvolutionParameterEXT pname, float @params) => _ConvolutionParameterf(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterfEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, float @params) => _ConvolutionParameterfEXT(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterfv(ConvolutionTarget target, ConvolutionParameterEXT pname, float[] @params) => _ConvolutionParameterfv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterfv(ConvolutionTarget target, ConvolutionParameterEXT pname, void* @params) => _ConvolutionParameterfv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterfv(ConvolutionTarget target, ConvolutionParameterEXT pname, IntPtr @params) => _ConvolutionParameterfv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterfvEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, float[] @params) => _ConvolutionParameterfvEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterfvEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, void* @params) => _ConvolutionParameterfvEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterfvEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, IntPtr @params) => _ConvolutionParameterfvEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameteri(ConvolutionTarget target, ConvolutionParameterEXT pname, int @params) => _ConvolutionParameteri(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameteriEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, int @params) => _ConvolutionParameteriEXT(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameteriv(ConvolutionTarget target, ConvolutionParameterEXT pname, int[] @params) => _ConvolutionParameteriv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameteriv(ConvolutionTarget target, ConvolutionParameterEXT pname, void* @params) => _ConvolutionParameteriv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameteriv(ConvolutionTarget target, ConvolutionParameterEXT pname, IntPtr @params) => _ConvolutionParameteriv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterivEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, int[] @params) => _ConvolutionParameterivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterivEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, void* @params) => _ConvolutionParameterivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterivEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, IntPtr @params) => _ConvolutionParameterivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterxOES(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, float param) => _ConvolutionParameterxOES(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterxvOES(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, float[] @params) => _ConvolutionParameterxvOES(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterxvOES(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, void* @params) => _ConvolutionParameterxvOES_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ConvolutionParameterxvOES(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, IntPtr @params) => _ConvolutionParameterxvOES_intptr(target, pname, @params); + + // --- + + /// + /// glCopyBufferSubData and glCopyNamedBufferSubData copy part of the data store attached to a source buffer object to the data store attached to a destination buffer object. The number of basic machine units indicated by size is copied from the source at offset readOffset to the destination at writeOffset. readOffset, writeOffset and size are in terms of basic machine units. + /// For glCopyBufferSubData, readTarget and writeTarget specify the targets to which the source and destination buffer objects are bound, and must each be one of the buffer binding targets in the following table: + /// Any of these targets may be used, but the targets GL_COPY_READ_BUFFER and GL_COPY_WRITE_BUFFER are provided specifically to allow copies between buffers without disturbing other GL state. + /// readOffset, writeOffset and size must all be greater than or equal to zero. Furthermore, $readOffset+size$ must not exceeed the size of the source buffer object, and $writeOffset+size$ must not exceeed the size of the buffer bound to writeTarget. If the source and destination are the same buffer object, then the source and destination ranges must not overlap. + /// + /// Specifies the target to which the source buffer object is bound for glCopyBufferSubData + /// Specifies the target to which the destination buffer object is bound for glCopyBufferSubData. + /// Specifies the name of the source buffer object for glCopyNamedBufferSubData. + /// Specifies the name of the destination buffer object for glCopyNamedBufferSubData. + /// Specifies the offset, in basic machine units, within the data store of the source buffer object at which data will be read. + /// Specifies the offset, in basic machine units, within the data store of the destination buffer object at which data will be written. + /// Specifies the size, in basic machine units, of the data to be copied from the source buffer object to the destination buffer object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyBufferSubData(CopyBufferSubDataTarget readTarget, CopyBufferSubDataTarget writeTarget, IntPtr readOffset, IntPtr writeOffset, IntPtr size) => _CopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyBufferSubDataNV(CopyBufferSubDataTarget readTarget, CopyBufferSubDataTarget writeTarget, IntPtr readOffset, IntPtr writeOffset, IntPtr size) => _CopyBufferSubDataNV(readTarget, writeTarget, readOffset, writeOffset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyColorSubTable(ColorTableTarget target, int start, int x, int y, int width) => _CopyColorSubTable(target, start, x, y, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyColorSubTableEXT(ColorTableTarget target, int start, int x, int y, int width) => _CopyColorSubTableEXT(target, start, x, y, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyColorTable(ColorTableTarget target, InternalFormat internalformat, int x, int y, int width) => _CopyColorTable(target, internalformat, x, y, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyColorTableSGI(ColorTableTargetSGI target, InternalFormat internalformat, int x, int y, int width) => _CopyColorTableSGI(target, internalformat, x, y, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyConvolutionFilter1D(ConvolutionTarget target, InternalFormat internalformat, int x, int y, int width) => _CopyConvolutionFilter1D(target, internalformat, x, y, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyConvolutionFilter1DEXT(ConvolutionTargetEXT target, InternalFormat internalformat, int x, int y, int width) => _CopyConvolutionFilter1DEXT(target, internalformat, x, y, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyConvolutionFilter2D(ConvolutionTarget target, InternalFormat internalformat, int x, int y, int width, int height) => _CopyConvolutionFilter2D(target, internalformat, x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyConvolutionFilter2DEXT(ConvolutionTargetEXT target, InternalFormat internalformat, int x, int y, int width, int height) => _CopyConvolutionFilter2DEXT(target, internalformat, x, y, width, height); + + // --- + + /// + /// glCopyImageSubData may be used to copy data from one image (i.e. texture or renderbuffer) to another. glCopyImageSubData does not perform general-purpose conversions such as scaling, resizing, blending, color-space, or format conversions. It should be considered to operate in a manner similar to a CPU memcpy. CopyImageSubData can copy between images with different internal formats, provided the formats are compatible. + /// glCopyImageSubData also allows copying between certain types of compressed and uncompressed internal formats. This copy does not perform on-the-fly compression or decompression. When copying from an uncompressed internal format to a compressed internal format, each texel of uncompressed data becomes a single block of compressed data. When copying from a compressed internal format to an uncompressed internal format, a block of compressed data becomes a single texel of uncompressed data. The texel size of the uncompressed format must be the same size the block size of the compressed formats. Thus it is permitted to copy between a 128-bit uncompressed format and a compressed format which uses 8-bit 4x4 blocks, or between a 64-bit uncompressed format and a compressed format which uses 4-bit 4x4 blocks. + /// The source object is identified by srcName and srcTarget and the destination object is identified by dstName and dstTarget. The interpretation of the name depends on the value of the corresponding target parameter. If target is GL_RENDERBUFFER, the name is interpreted as the name of a renderbuffer object. If the target parameter is a texture target, the name is interpreted as a texture object. All non-proxy texture targets are accepted, with the exception of GL_TEXTURE_BUFFER and the cubemap face selectors. + /// srcLevel and dstLevel identify the source and destination level of detail. For textures, this must be a valid level of detail in the texture object. For renderbuffers, this value must be zero. + /// srcX, srcY, and srcZ specify the lower left texel coordinates of a srcWidth-wide by srcHeight-high by srcDepth-deep rectangular subregion of the source texel array. Similarly, dstX, dstY and dstZ specify the coordinates of a subregion of the destination texel array. The source and destination subregions must be contained entirely within the specified level of the corresponding image objects. + /// The dimensions are always specified in texels, even for compressed texture formats. However, it should be noted that if only one of the source and destination textures is compressed then the number of texels touched in the compressed image will be a factor of the block size larger than in the uncompressed image. + /// Slices of a GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_CUBE_MAP_ARRAYGL_TEXTURE_3D and faces of GL_TEXTURE_CUBE_MAP are all compatible provided they share a compatible internal format, and multiple slices or faces may be copied between these objects with a single call by specifying the starting slice with srcZ and dstZ, and the number of slices to be copied with srcDepth. Cubemap textures always have six faces which are selected by a zero-based face index. + /// For the purposes of CopyImageSubData, two internal formats are considered compatible if any of the following conditions are met: the formats are the same, the formats are considered compatible according to the compatibility rules used for texture views as defined in section 3.9.X. In particular, if both internal formats are listed in the same entry of Table 3.X.2, they are considered compatible, or one format is compressed and the other is uncompressed and Table 4.X.1 lists the two formats in the same row. If the formats are not compatible, an INVALID_OPERATION error is generated. + /// Sized Internal Formats Texel / Block Size Uncompressed Internal Format Compressed Internal Format(s) 64-bitGL_RGBA32UI, GL_RGBA32I, GL_RGBA32FGL_COMPRESSED_RGBA_S3TC_DXT3_EXT, GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT, GL_COMPRESSED_RGBA_S3TC_DXT5_EXT, GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT, GL_COMPRESSED_RG_RGTC2, GL_COMPRESSED_SIGNED_RG_RGTC2, GL_COMPRESSED_RGBA_BPTC_UNORM, GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM, GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT, GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT128-bitGL_RGBA16UI, GL_RGBA16I, GL_RGBA16F, GL_RG32F, GL_RG32UI, GL_RG32I, GL_RGBA16, GL_RGBA16_SNORMGL_COMPRESSED_RGB_S3TC_DXT1_EXT, GL_COMPRESSED_SRGB_S3TC_DXT1_EXT, GL_COMPRESSED_RGBA_S3TC_DXT1_EXT, GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT, GL_COMPRESSED_RED_RGTC1, GL_COMPRESSED_SIGNED_RED_RGTC1 + /// + /// The name of a texture or renderbuffer object from which to copy. + /// The target representing the namespace of the source name srcName. + /// The mipmap level to read from the source. + /// The X coordinate of the left edge of the souce region to copy. + /// The Y coordinate of the top edge of the souce region to copy. + /// The Z coordinate of the near edge of the souce region to copy. + /// The name of a texture or renderbuffer object to which to copy. + /// The target representing the namespace of the destination name dstName. + /// The X coordinate of the left edge of the destination region. + /// The Y coordinate of the top edge of the destination region. + /// The Z coordinate of the near edge of the destination region. + /// The width of the region to be copied. + /// The height of the region to be copied. + /// The depth of the region to be copied. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyImageSubData(uint srcName, CopyImageSubDataTarget srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, CopyImageSubDataTarget dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth) => _CopyImageSubData(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyImageSubDataEXT(uint srcName, CopyBufferSubDataTarget srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, CopyBufferSubDataTarget dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth) => _CopyImageSubDataEXT(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyImageSubDataNV(uint srcName, CopyBufferSubDataTarget srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, CopyBufferSubDataTarget dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int width, int height, int depth) => _CopyImageSubDataNV(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyImageSubDataOES(uint srcName, CopyBufferSubDataTarget srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, CopyBufferSubDataTarget dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth) => _CopyImageSubDataOES(srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyMultiTexImage1DEXT(TextureUnit texunit, TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int border) => _CopyMultiTexImage1DEXT(texunit, target, level, internalformat, x, y, width, border); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyMultiTexImage2DEXT(TextureUnit texunit, TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int height, int border) => _CopyMultiTexImage2DEXT(texunit, target, level, internalformat, x, y, width, height, border); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyMultiTexSubImage1DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int x, int y, int width) => _CopyMultiTexSubImage1DEXT(texunit, target, level, xoffset, x, y, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyMultiTexSubImage2DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int yoffset, int x, int y, int width, int height) => _CopyMultiTexSubImage2DEXT(texunit, target, level, xoffset, yoffset, x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyMultiTexSubImage3DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height) => _CopyMultiTexSubImage3DEXT(texunit, target, level, xoffset, yoffset, zoffset, x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyNamedBufferSubData(uint readBuffer, uint writeBuffer, IntPtr readOffset, IntPtr writeOffset, IntPtr size) => _CopyNamedBufferSubData(readBuffer, writeBuffer, readOffset, writeOffset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyPathNV(uint resultPath, uint srcPath) => _CopyPathNV(resultPath, srcPath); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyPixels(int x, int y, int width, int height, PixelCopyType type) => _CopyPixels(x, y, width, height, type); + + // --- + + /// + /// glCopyTexImage1D defines a one-dimensional texture image with pixels from the current GL_READ_BUFFER. + /// The screen-aligned pixel row with left corner at is the returned value of GL_MAX_TEXTURE_SIZE. + /// GL_INVALID_VALUE is generated if internalformat is not an allowable value. + /// GL_INVALID_VALUE is generated if width is less than 0 or greater than GL_MAX_TEXTURE_SIZE. + /// GL_INVALID_VALUE is generated if border is not 0. + /// GL_INVALID_OPERATION is generated if internalformat is GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth buffer. + /// + /// Specifies the target texture. Must be GL_TEXTURE_1D. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies the internal format of the texture. Must be one of the following symbolic constants: GL_COMPRESSED_RED, GL_COMPRESSED_RG, GL_COMPRESSED_RGB, GL_COMPRESSED_RGBA. GL_COMPRESSED_SRGB, GL_COMPRESSED_SRGB_ALPHA. GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, GL_DEPTH_COMPONENT32, GL_STENCIL_INDEX8, GL_RED, GL_RG, GL_RGB, GL_R3_G3_B2, GL_RGB4, GL_RGB5, GL_RGB8, GL_RGB10, GL_RGB12, GL_RGB16, GL_RGBA, GL_RGBA2, GL_RGBA4, GL_RGB5_A1, GL_RGBA8, GL_RGB10_A2, GL_RGBA12, GL_RGBA16, GL_SRGB, GL_SRGB8, GL_SRGB_ALPHA, or GL_SRGB8_ALPHA8. + /// Specify the window coordinates of the left corner of the row of pixels to be copied. + /// Specifies the width of the texture image. The height of the texture image is 1. + /// Must be 0. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTexImage1D(TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int border) => _CopyTexImage1D(target, level, internalformat, x, y, width, border); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTexImage1DEXT(TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int border) => _CopyTexImage1DEXT(target, level, internalformat, x, y, width, border); + + // --- + + /// + /// glCopyTexImage2D defines a two-dimensional texture image, or cube-map texture image with pixels from the current GL_READ_BUFFER. + /// The screen-aligned pixel rectangle with lower left corner at (x, y) and with a width of is the returned value of GL_MAX_TEXTURE_SIZE. + /// GL_INVALID_VALUE is generated if width is less than 0 or greater than GL_MAX_TEXTURE_SIZE. + /// GL_INVALID_VALUE is generated if border is not 0. + /// GL_INVALID_VALUE is generated if internalformat is not an accepted format. + /// GL_INVALID_OPERATION is generated if internalformat is GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32 and there is no depth buffer. + /// + /// Specifies the target texture. Must be GL_TEXTURE_2D, GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies the internal format of the texture. Must be one of the following symbolic constants: GL_COMPRESSED_RED, GL_COMPRESSED_RG, GL_COMPRESSED_RGB, GL_COMPRESSED_RGBA. GL_COMPRESSED_SRGB, GL_COMPRESSED_SRGB_ALPHA. GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, GL_DEPTH_COMPONENT32, GL_STENCIL_INDEX8, GL_RED, GL_RG, GL_RGB, GL_R3_G3_B2, GL_RGB4, GL_RGB5, GL_RGB8, GL_RGB10, GL_RGB12, GL_RGB16, GL_RGBA, GL_RGBA2, GL_RGBA4, GL_RGB5_A1, GL_RGBA8, GL_RGB10_A2, GL_RGBA12, GL_RGBA16, GL_SRGB, GL_SRGB8, GL_SRGB_ALPHA, or GL_SRGB8_ALPHA8. + /// Specify the window coordinates of the lower left corner of the rectangular region of pixels to be copied. + /// Specifies the width of the texture image. + /// Specifies the height of the texture image. + /// Must be 0. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTexImage2D(TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int height, int border) => _CopyTexImage2D(target, level, internalformat, x, y, width, height, border); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTexImage2DEXT(TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int height, int border) => _CopyTexImage2DEXT(target, level, internalformat, x, y, width, height, border); + + // --- + + /// + /// glCopyTexSubImage1D and glCopyTextureSubImage1D replace a portion of a one-dimensional texture image with pixels from the current GL_READ_BUFFER (rather than from main memory, as is the case for glTexSubImage1D). For glCopyTexSubImage1D, the texture object that is bound to target will be used for the process. For glCopyTextureSubImage1D, texture tells which texture object should be used for the purpose of the call. + /// The screen-aligned pixel row with left corner at (x,\ y), and with length width replaces the portion of the texture array with x indices xoffset through is the GL_TEXTURE_WIDTH of the texture image being modified. + /// GL_INVALID_OPERATION is generated if: + /// the read buffer is GL_NONE, orthe value of GL_READ_FRAMEBUFFER_BINDING is non-zero, and:the read buffer selects an attachment that has no image attached, orthe effective value of GL_SAMPLE_BUFFERS for the read framebuffer is one. + /// + /// Specifies the target to which the texture object is bound for glCopyTexSubImage1D function. Must be GL_TEXTURE_1D. + /// Specifies the texture object name for glCopyTextureSubImage1D function. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies the texel offset within the texture array. + /// Specify the window coordinates of the left corner of the row of pixels to be copied. + /// Specifies the width of the texture subimage. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTexSubImage1D(TextureTarget target, int level, int xoffset, int x, int y, int width) => _CopyTexSubImage1D(target, level, xoffset, x, y, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTexSubImage1DEXT(TextureTarget target, int level, int xoffset, int x, int y, int width) => _CopyTexSubImage1DEXT(target, level, xoffset, x, y, width); + + // --- + + /// + /// glCopyTexSubImage2D and glCopyTextureSubImage2D replace a rectangular portion of a two-dimensional texture image, cube-map texture image, rectangular image, or a linear portion of a number of slices of a one-dimensional array texture with pixels from the current GL_READ_BUFFER (rather than from main memory, as is the case for glTexSubImage2D). + /// The screen-aligned pixel rectangle with lower left corner at is the GL_TEXTURE_HEIGHT and of the texture image being modified. + /// GL_INVALID_OPERATION is generated if: + /// the read buffer is GL_NONE, orthe value of GL_READ_FRAMEBUFFER_BINDING is non-zero, and:the read buffer selects an attachment that has no image attached, orthe effective value of GL_SAMPLE_BUFFERS for the read framebuffer is one. + /// + /// Specifies the target to which the texture object is bound for glCopyTexSubImage2D function. Must be GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D, GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or GL_TEXTURE_RECTANGLE. + /// Specifies the texture object name for glCopyTextureSubImage2D function. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies a texel offset in the x direction within the texture array. + /// Specifies a texel offset in the y direction within the texture array. + /// Specify the window coordinates of the lower left corner of the rectangular region of pixels to be copied. + /// Specifies the width of the texture subimage. + /// Specifies the height of the texture subimage. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTexSubImage2D(TextureTarget target, int level, int xoffset, int yoffset, int x, int y, int width, int height) => _CopyTexSubImage2D(target, level, xoffset, yoffset, x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTexSubImage2DEXT(TextureTarget target, int level, int xoffset, int yoffset, int x, int y, int width, int height) => _CopyTexSubImage2DEXT(target, level, xoffset, yoffset, x, y, width, height); + + // --- + + /// + /// glCopyTexSubImage3D and glCopyTextureSubImage3D functions replace a rectangular portion of a three-dimensional or two-dimensional array texture image with pixels from the current GL_READ_BUFFER (rather than from main memory, as is the case for glTexSubImage3D). + /// The screen-aligned pixel rectangle with lower left corner at (x, y) and with width width and height height replaces the portion of the texture array with x indices xoffset through include twice the border width. + /// GL_INVALID_OPERATION is generated if:the read buffer is GL_NONE, orthe value of GL_READ_FRAMEBUFFER_BINDING is non-zero, and:the read buffer selects an attachment that has no image attached, orthe effective value of GL_SAMPLE_BUFFERS for the read framebuffer is one. + /// + /// Specifies the target to which the texture object is bound for glCopyTexSubImage3D function. Must be GL_TEXTURE_3D, GL_TEXTURE_2D_ARRAY or GL_TEXTURE_CUBE_MAP_ARRAY. + /// Specifies the texture object name for glCopyTextureSubImage3D function. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies a texel offset in the x direction within the texture array. + /// Specifies a texel offset in the y direction within the texture array. + /// Specifies a texel offset in the z direction within the texture array. + /// Specify the window coordinates of the lower left corner of the rectangular region of pixels to be copied. + /// Specifies the width of the texture subimage. + /// Specifies the height of the texture subimage. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTexSubImage3D(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height) => _CopyTexSubImage3D(target, level, xoffset, yoffset, zoffset, x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTexSubImage3DEXT(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height) => _CopyTexSubImage3DEXT(target, level, xoffset, yoffset, zoffset, x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTexSubImage3DOES(int target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height) => _CopyTexSubImage3DOES(target, level, xoffset, yoffset, zoffset, x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTextureImage1DEXT(uint texture, TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int border) => _CopyTextureImage1DEXT(texture, target, level, internalformat, x, y, width, border); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTextureImage2DEXT(uint texture, TextureTarget target, int level, InternalFormat internalformat, int x, int y, int width, int height, int border) => _CopyTextureImage2DEXT(texture, target, level, internalformat, x, y, width, height, border); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTextureLevelsAPPLE(uint destinationTexture, uint sourceTexture, int sourceBaseLevel, int sourceLevelCount) => _CopyTextureLevelsAPPLE(destinationTexture, sourceTexture, sourceBaseLevel, sourceLevelCount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTextureSubImage1D(uint texture, int level, int xoffset, int x, int y, int width) => _CopyTextureSubImage1D(texture, level, xoffset, x, y, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTextureSubImage1DEXT(uint texture, TextureTarget target, int level, int xoffset, int x, int y, int width) => _CopyTextureSubImage1DEXT(texture, target, level, xoffset, x, y, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTextureSubImage2D(uint texture, int level, int xoffset, int yoffset, int x, int y, int width, int height) => _CopyTextureSubImage2D(texture, level, xoffset, yoffset, x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTextureSubImage2DEXT(uint texture, TextureTarget target, int level, int xoffset, int yoffset, int x, int y, int width, int height) => _CopyTextureSubImage2DEXT(texture, target, level, xoffset, yoffset, x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTextureSubImage3D(uint texture, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height) => _CopyTextureSubImage3D(texture, level, xoffset, yoffset, zoffset, x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CopyTextureSubImage3DEXT(uint texture, TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height) => _CopyTextureSubImage3DEXT(texture, target, level, xoffset, yoffset, zoffset, x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverFillPathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathCoverMode coverMode, PathTransformType transformType, float[] transformValues) => _CoverFillPathInstancedNV(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverFillPathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathCoverMode coverMode, PathTransformType transformType, void* transformValues) => _CoverFillPathInstancedNV_ptr(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverFillPathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathCoverMode coverMode, PathTransformType transformType, IntPtr transformValues) => _CoverFillPathInstancedNV_intptr(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverFillPathNV(uint path, PathCoverMode coverMode) => _CoverFillPathNV(path, coverMode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverStrokePathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathCoverMode coverMode, PathTransformType transformType, float[] transformValues) => _CoverStrokePathInstancedNV(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverStrokePathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathCoverMode coverMode, PathTransformType transformType, void* transformValues) => _CoverStrokePathInstancedNV_ptr(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverStrokePathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathCoverMode coverMode, PathTransformType transformType, IntPtr transformValues) => _CoverStrokePathInstancedNV_intptr(numPaths, pathNameType, paths, pathBase, coverMode, transformType, transformValues); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverStrokePathNV(uint path, PathCoverMode coverMode) => _CoverStrokePathNV(path, coverMode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverageMaskNV(bool mask) => _CoverageMaskNV(mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverageModulationNV(int components) => _CoverageModulationNV(components); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverageModulationTableNV(int n, float[] v) => _CoverageModulationTableNV(n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverageModulationTableNV(int n, void* v) => _CoverageModulationTableNV_ptr(n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverageModulationTableNV(int n, IntPtr v) => _CoverageModulationTableNV_intptr(n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CoverageOperationNV(int operation) => _CoverageOperationNV(operation); + + // --- + + /// + /// glCreateBuffers returns n previously unused buffer names in buffers, each representing a new buffer object initialized as if it had been bound to an unspecified target. + /// + /// Specifies the number of buffer objects to create. + /// Specifies an array in which names of the new buffer objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateBuffers(int n, uint[] buffers) => _CreateBuffers(n, buffers); + + /// + /// glCreateBuffers returns n previously unused buffer names in buffers, each representing a new buffer object initialized as if it had been bound to an unspecified target. + /// + /// Specifies the number of buffer objects to create. + /// Specifies an array in which names of the new buffer objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateBuffers(int n, void* buffers) => _CreateBuffers_ptr(n, buffers); + + /// + /// glCreateBuffers returns n previously unused buffer names in buffers, each representing a new buffer object initialized as if it had been bound to an unspecified target. + /// + /// Specifies the number of buffer objects to create. + /// Specifies an array in which names of the new buffer objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateBuffers(int n, IntPtr buffers) => _CreateBuffers_intptr(n, buffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateCommandListsNV(int n, uint[] lists) => _CreateCommandListsNV(n, lists); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateCommandListsNV(int n, void* lists) => _CreateCommandListsNV_ptr(n, lists); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateCommandListsNV(int n, IntPtr lists) => _CreateCommandListsNV_intptr(n, lists); + + // --- + + /// + /// glCreateFramebuffers returns n previously unused framebuffer names in framebuffers, each representing a new framebuffer object initialized to the default state. + /// + /// Number of framebuffer objects to create. + /// Specifies an array in which names of the new framebuffer objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateFramebuffers(int n, uint[] framebuffers) => _CreateFramebuffers(n, framebuffers); + + /// + /// glCreateFramebuffers returns n previously unused framebuffer names in framebuffers, each representing a new framebuffer object initialized to the default state. + /// + /// Number of framebuffer objects to create. + /// Specifies an array in which names of the new framebuffer objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateFramebuffers(int n, void* framebuffers) => _CreateFramebuffers_ptr(n, framebuffers); + + /// + /// glCreateFramebuffers returns n previously unused framebuffer names in framebuffers, each representing a new framebuffer object initialized to the default state. + /// + /// Number of framebuffer objects to create. + /// Specifies an array in which names of the new framebuffer objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateFramebuffers(int n, IntPtr framebuffers) => _CreateFramebuffers_intptr(n, framebuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateMemoryObjectsEXT(int n, uint[] memoryObjects) => _CreateMemoryObjectsEXT(n, memoryObjects); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateMemoryObjectsEXT(int n, void* memoryObjects) => _CreateMemoryObjectsEXT_ptr(n, memoryObjects); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateMemoryObjectsEXT(int n, IntPtr memoryObjects) => _CreateMemoryObjectsEXT_intptr(n, memoryObjects); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreatePerfQueryINTEL(uint queryId, uint[] queryHandle) => _CreatePerfQueryINTEL(queryId, queryHandle); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreatePerfQueryINTEL(uint queryId, void* queryHandle) => _CreatePerfQueryINTEL_ptr(queryId, queryHandle); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreatePerfQueryINTEL(uint queryId, IntPtr queryHandle) => _CreatePerfQueryINTEL_intptr(queryId, queryHandle); + + // --- + + /// + /// glCreateProgram creates an empty program object and returns a non-zero value by which it can be referenced. A program object is an object to which shader objects can be attached. This provides a mechanism to specify the shader objects that will be linked to create a program. It also provides a means for checking the compatibility of the shaders that will be used to create a program (for instance, checking the compatibility between a vertex shader and a fragment shader). When no longer needed as part of a program object, shader objects can be detached. + /// One or more executables are created in a program object by successfully attaching shader objects to it with glAttachShader, successfully compiling the shader objects with glCompileShader, and successfully linking the program object with glLinkProgram. These executables are made part of current state when glUseProgram is called. Program objects can be deleted by calling glDeleteProgram. The memory associated with the program object will be deleted when it is no longer part of current rendering state for any context. + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint CreateProgram() => _CreateProgram(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int CreateProgramObjectARB() => _CreateProgramObjectARB(); + + // --- + + /// + /// glCreateProgramPipelines returns n previously unused program pipeline names in pipelines, each representing a new program pipeline object initialized to the default state. + /// + /// Number of program pipeline objects to create. + /// Specifies an array in which names of the new program pipeline objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateProgramPipelines(int n, uint[] pipelines) => _CreateProgramPipelines(n, pipelines); + + /// + /// glCreateProgramPipelines returns n previously unused program pipeline names in pipelines, each representing a new program pipeline object initialized to the default state. + /// + /// Number of program pipeline objects to create. + /// Specifies an array in which names of the new program pipeline objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateProgramPipelines(int n, void* pipelines) => _CreateProgramPipelines_ptr(n, pipelines); + + /// + /// glCreateProgramPipelines returns n previously unused program pipeline names in pipelines, each representing a new program pipeline object initialized to the default state. + /// + /// Number of program pipeline objects to create. + /// Specifies an array in which names of the new program pipeline objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateProgramPipelines(int n, IntPtr pipelines) => _CreateProgramPipelines_intptr(n, pipelines); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint CreateProgressFenceNVX() => _CreateProgressFenceNVX(); + + // --- + + /// + /// glCreateQueries returns n previously unused query object names in ids, each representing a new query object with the specified target. + /// target may be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED_CONSERVATIVE, GL_TIME_ELAPSED, GL_TIMESTAMP, GL_PRIMITIVES_GENERATED or GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN. + /// + /// Specifies the target of each created query object. + /// Number of query objects to create. + /// Specifies an array in which names of the new query objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateQueries(QueryTarget target, int n, uint[] ids) => _CreateQueries(target, n, ids); + + /// + /// glCreateQueries returns n previously unused query object names in ids, each representing a new query object with the specified target. + /// target may be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED_CONSERVATIVE, GL_TIME_ELAPSED, GL_TIMESTAMP, GL_PRIMITIVES_GENERATED or GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN. + /// + /// Specifies the target of each created query object. + /// Number of query objects to create. + /// Specifies an array in which names of the new query objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateQueries(QueryTarget target, int n, void* ids) => _CreateQueries_ptr(target, n, ids); + + /// + /// glCreateQueries returns n previously unused query object names in ids, each representing a new query object with the specified target. + /// target may be one of GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED_CONSERVATIVE, GL_TIME_ELAPSED, GL_TIMESTAMP, GL_PRIMITIVES_GENERATED or GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN. + /// + /// Specifies the target of each created query object. + /// Number of query objects to create. + /// Specifies an array in which names of the new query objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateQueries(QueryTarget target, int n, IntPtr ids) => _CreateQueries_intptr(target, n, ids); + + // --- + + /// + /// glCreateRenderbuffers returns n previously unused renderbuffer object names in renderbuffers, each representing a new renderbuffer object initialized to the default state. + /// + /// Number of renderbuffer objects to create. + /// Specifies an array in which names of the new renderbuffer objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateRenderbuffers(int n, uint[] renderbuffers) => _CreateRenderbuffers(n, renderbuffers); + + /// + /// glCreateRenderbuffers returns n previously unused renderbuffer object names in renderbuffers, each representing a new renderbuffer object initialized to the default state. + /// + /// Number of renderbuffer objects to create. + /// Specifies an array in which names of the new renderbuffer objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateRenderbuffers(int n, void* renderbuffers) => _CreateRenderbuffers_ptr(n, renderbuffers); + + /// + /// glCreateRenderbuffers returns n previously unused renderbuffer object names in renderbuffers, each representing a new renderbuffer object initialized to the default state. + /// + /// Number of renderbuffer objects to create. + /// Specifies an array in which names of the new renderbuffer objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateRenderbuffers(int n, IntPtr renderbuffers) => _CreateRenderbuffers_intptr(n, renderbuffers); + + // --- + + /// + /// glCreateSamplers returns n previously unused sampler names in samplers, each representing a new sampler object initialized to the default state. + /// + /// Number of sampler objects to create. + /// Specifies an array in which names of the new sampler objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateSamplers(int n, uint[] samplers) => _CreateSamplers(n, samplers); + + /// + /// glCreateSamplers returns n previously unused sampler names in samplers, each representing a new sampler object initialized to the default state. + /// + /// Number of sampler objects to create. + /// Specifies an array in which names of the new sampler objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateSamplers(int n, void* samplers) => _CreateSamplers_ptr(n, samplers); + + /// + /// glCreateSamplers returns n previously unused sampler names in samplers, each representing a new sampler object initialized to the default state. + /// + /// Number of sampler objects to create. + /// Specifies an array in which names of the new sampler objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateSamplers(int n, IntPtr samplers) => _CreateSamplers_intptr(n, samplers); + + // --- + + /// + /// glCreateShader creates an empty shader object and returns a non-zero value by which it can be referenced. A shader object is used to maintain the source code strings that define a shader. shaderType indicates the type of shader to be created. Five types of shader are supported. A shader of type GL_COMPUTE_SHADER is a shader that is intended to run on the programmable compute processor. A shader of type GL_VERTEX_SHADER is a shader that is intended to run on the programmable vertex processor. A shader of type GL_TESS_CONTROL_SHADER is a shader that is intended to run on the programmable tessellation processor in the control stage. A shader of type GL_TESS_EVALUATION_SHADER is a shader that is intended to run on the programmable tessellation processor in the evaluation stage. A shader of type GL_GEOMETRY_SHADER is a shader that is intended to run on the programmable geometry processor. A shader of type GL_FRAGMENT_SHADER is a shader that is intended to run on the programmable fragment processor. + /// When created, a shader object's GL_SHADER_TYPE parameter is set to either GL_COMPUTE_SHADER, GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or GL_FRAGMENT_SHADER, depending on the value of shaderType. + /// + /// Specifies the type of shader to be created. Must be one of GL_COMPUTE_SHADER, GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER, or GL_FRAGMENT_SHADER. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint CreateShader(ShaderType type) => _CreateShader(type); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int CreateShaderObjectARB(ShaderType shaderType) => _CreateShaderObjectARB(shaderType); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint CreateShaderProgramEXT(ShaderType type, string @string) => _CreateShaderProgramEXT(type, @string); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint CreateShaderProgramEXT(ShaderType type, void* @string) => _CreateShaderProgramEXT_ptr(type, @string); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint CreateShaderProgramEXT(ShaderType type, IntPtr @string) => _CreateShaderProgramEXT_intptr(type, @string); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint CreateShaderProgramv(ShaderType type, int count, string[] strings) => _CreateShaderProgramv(type, count, strings); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint CreateShaderProgramv(ShaderType type, int count, void* strings) => _CreateShaderProgramv_ptr(type, count, strings); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint CreateShaderProgramv(ShaderType type, int count, IntPtr strings) => _CreateShaderProgramv_intptr(type, count, strings); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint CreateShaderProgramvEXT(ShaderType type, int count, IntPtr* strings) => _CreateShaderProgramvEXT(type, count, strings); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateStatesNV(int n, uint[] states) => _CreateStatesNV(n, states); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateStatesNV(int n, void* states) => _CreateStatesNV_ptr(n, states); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateStatesNV(int n, IntPtr states) => _CreateStatesNV_intptr(n, states); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int CreateSyncFromCLeventARB(IntPtr[] context, IntPtr[] @event, int flags) => _CreateSyncFromCLeventARB(context, @event, flags); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int CreateSyncFromCLeventARB(void* context, void* @event, int flags) => _CreateSyncFromCLeventARB_ptr(context, @event, flags); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int CreateSyncFromCLeventARB(IntPtr context, IntPtr @event, int flags) => _CreateSyncFromCLeventARB_intptr(context, @event, flags); + + // --- + + /// + /// glCreateTextures returns n previously unused texture names in textures, each representing a new texture object of the dimensionality and type specified by target and initialized to the default values for that texture type. + /// target must be one of GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, GL_TEXTURE_CUBE_MAP, GL_TEXTURE_CUBE_MAP_ARRAY, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE or GL_TEXTURE_2D_MULTISAMPLE_ARRAY. + /// + /// Specifies the effective texture target of each created texture. + /// Number of texture objects to create. + /// Specifies an array in which names of the new texture objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateTextures(TextureTarget target, int n, uint[] textures) => _CreateTextures(target, n, textures); + + /// + /// glCreateTextures returns n previously unused texture names in textures, each representing a new texture object of the dimensionality and type specified by target and initialized to the default values for that texture type. + /// target must be one of GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, GL_TEXTURE_CUBE_MAP, GL_TEXTURE_CUBE_MAP_ARRAY, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE or GL_TEXTURE_2D_MULTISAMPLE_ARRAY. + /// + /// Specifies the effective texture target of each created texture. + /// Number of texture objects to create. + /// Specifies an array in which names of the new texture objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateTextures(TextureTarget target, int n, void* textures) => _CreateTextures_ptr(target, n, textures); + + /// + /// glCreateTextures returns n previously unused texture names in textures, each representing a new texture object of the dimensionality and type specified by target and initialized to the default values for that texture type. + /// target must be one of GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_RECTANGLE, GL_TEXTURE_CUBE_MAP, GL_TEXTURE_CUBE_MAP_ARRAY, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE or GL_TEXTURE_2D_MULTISAMPLE_ARRAY. + /// + /// Specifies the effective texture target of each created texture. + /// Number of texture objects to create. + /// Specifies an array in which names of the new texture objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateTextures(TextureTarget target, int n, IntPtr textures) => _CreateTextures_intptr(target, n, textures); + + // --- + + /// + /// glCreateTransformFeedbacks returns n previously unused transform feedback object names in ids, each representing a new transform feedback object initialized to the default state. + /// + /// Number of transform feedback objects to create. + /// Specifies an array in which names of the new transform feedback objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateTransformFeedbacks(int n, uint[] ids) => _CreateTransformFeedbacks(n, ids); + + /// + /// glCreateTransformFeedbacks returns n previously unused transform feedback object names in ids, each representing a new transform feedback object initialized to the default state. + /// + /// Number of transform feedback objects to create. + /// Specifies an array in which names of the new transform feedback objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateTransformFeedbacks(int n, void* ids) => _CreateTransformFeedbacks_ptr(n, ids); + + /// + /// glCreateTransformFeedbacks returns n previously unused transform feedback object names in ids, each representing a new transform feedback object initialized to the default state. + /// + /// Number of transform feedback objects to create. + /// Specifies an array in which names of the new transform feedback objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateTransformFeedbacks(int n, IntPtr ids) => _CreateTransformFeedbacks_intptr(n, ids); + + // --- + + /// + /// glCreateVertexArrays returns n previously unused vertex array object names in arrays, each representing a new vertex array object initialized to the default state. + /// + /// Number of vertex array objects to create. + /// Specifies an array in which names of the new vertex array objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateVertexArrays(int n, uint[] arrays) => _CreateVertexArrays(n, arrays); + + /// + /// glCreateVertexArrays returns n previously unused vertex array object names in arrays, each representing a new vertex array object initialized to the default state. + /// + /// Number of vertex array objects to create. + /// Specifies an array in which names of the new vertex array objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateVertexArrays(int n, void* arrays) => _CreateVertexArrays_ptr(n, arrays); + + /// + /// glCreateVertexArrays returns n previously unused vertex array object names in arrays, each representing a new vertex array object initialized to the default state. + /// + /// Number of vertex array objects to create. + /// Specifies an array in which names of the new vertex array objects are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CreateVertexArrays(int n, IntPtr arrays) => _CreateVertexArrays_intptr(n, arrays); + + // --- + + /// + /// glCullFace specifies whether front- or back-facing facets are culled (as specified by mode) when facet culling is enabled. Facet culling is initially disabled. To enable and disable facet culling, call the glEnable and glDisable commands with the argument GL_CULL_FACE. Facets include triangles, quadrilaterals, polygons, and rectangles. + /// glFrontFace specifies which of the clockwise and counterclockwise facets are front-facing and back-facing. See glFrontFace. + /// + /// Specifies whether front- or back-facing facets are candidates for culling. Symbolic constants GL_FRONT, GL_BACK, and GL_FRONT_AND_BACK are accepted. The initial value is GL_BACK. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CullFace(CullFaceMode mode) => _CullFace(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CullParameterdvEXT(CullParameterEXT pname, double[] @params) => _CullParameterdvEXT(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CullParameterdvEXT(CullParameterEXT pname, void* @params) => _CullParameterdvEXT_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CullParameterdvEXT(CullParameterEXT pname, IntPtr @params) => _CullParameterdvEXT_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CullParameterfvEXT(CullParameterEXT pname, float[] @params) => _CullParameterfvEXT(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CullParameterfvEXT(CullParameterEXT pname, void* @params) => _CullParameterfvEXT_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CullParameterfvEXT(CullParameterEXT pname, IntPtr @params) => _CullParameterfvEXT_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CurrentPaletteMatrixARB(int index) => _CurrentPaletteMatrixARB(index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void CurrentPaletteMatrixOES(uint matrixpaletteindex) => _CurrentPaletteMatrixOES(matrixpaletteindex); + + // --- + + /// + /// glDebugMessageCallback sets the current debug output callback function to the function whose address is given in callback. The callback function should have the following prototype (in C), or be otherwise compatible with such a prototype: + /// typedef void (APIENTRY *DEBUGPROC)(GLenum source, GLenum type, GLuint id, GLenum severity, GLsizei length, const GLchar *message, const void *userParam); + /// This function is defined to have the same calling convention as the GL API functions. In most cases this is defined as APIENTRY, although it will vary depending on platform, language and compiler. + /// Each time a debug message is generated the debug callback function will be invoked with source, type, id, and severity associated with the message, and length set to the length of debug message whose character string is in the array pointed to by messageuserParam will be set to the value passed in the userParam parameter to the most recent call to glDebugMessageCallback. + /// + /// The address of a callback function that will be called when a debug message is generated. + /// A user supplied pointer that will be passed on each invocation of callback. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageCallback(GlDebugProc callback, IntPtr userParam) => _DebugMessageCallback(callback, userParam); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageCallbackAMD(GlDebugProc callback, IntPtr userParam) => _DebugMessageCallbackAMD(callback, userParam); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageCallbackARB(GlDebugProc callback, IntPtr userParam) => _DebugMessageCallbackARB(callback, userParam); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageCallbackKHR(GlDebugProc callback, IntPtr userParam) => _DebugMessageCallbackKHR(callback, userParam); + + // --- + + /// + /// glDebugMessageControl controls the reporting of debug messages generated by a debug context. The parameters source, type and severity form a filter to select messages from the pool of potential messages generated by the GL. + /// source may be GL_DEBUG_SOURCE_API, GL_DEBUG_SOURCE_WINDOW_SYSTEM_, GL_DEBUG_SOURCE_SHADER_COMPILER, GL_DEBUG_SOURCE_THIRD_PARTY, GL_DEBUG_SOURCE_APPLICATION, GL_DEBUG_SOURCE_OTHER to select messages generated by usage of the GL API, the window system, the shader compiler, third party tools or libraries, explicitly by the application or by some other source, respectively. It may also take the value GL_DONT_CARE. If source is not GL_DONT_CARE then only messages whose source matches source will be referenced. + /// type may be one of GL_DEBUG_TYPE_ERROR, GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR, GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR, GL_DEBUG_TYPE_PORTABILITY, GL_DEBUG_TYPE_PERFORMANCE, GL_DEBUG_TYPE_MARKER, GL_DEBUG_TYPE_PUSH_GROUP, GL_DEBUG_TYPE_POP_GROUP, or GL_DEBUG_TYPE_OTHER to indicate the type of messages describing GL errors, attempted use of deprecated features, triggering of undefined behavior, portability issues, performance notifications, markers, group push and pop events, and other types of messages, respectively. It may also take the value GL_DONT_CARE. If type is not GL_DONT_CARE then only messages whose type matches type will be referenced. + /// severity may be one of GL_DEBUG_SEVERITY_LOW, GL_DEBUG_SEVERITY_MEDIUM, or GL_DEBUG_SEVERITY_HIGH to select messages of low, medium or high severity messages or to GL_DEBUG_SEVERITY_NOTIFICATION for notifications. It may also take the value GL_DONT_CARE. If severity is not GL_DONT_CARE then only messages whose severity matches severity will be referenced. + /// ids contains a list of count message identifiers to select specific messages from the pool of available messages. If count is zero then the value of ids is ignored. Otherwise, only messages appearing in this list are selected. In this case, source and type may not be GL_DONT_CARE and severity must be GL_DONT_CARE. + /// If enabled is GL_TRUE then messages that match the filter formed by source, type, severity and ids are enabled. Otherwise, those messages are disabled. + /// + /// The source of debug messages to enable or disable. + /// The type of debug messages to enable or disable. + /// The severity of debug messages to enable or disable. + /// The length of the array ids. + /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable. + /// A Boolean flag determining whether the selected messages should be enabled or disabled. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageControl(DebugSource source, DebugType type, DebugSeverity severity, int count, uint[] ids, bool enabled) => _DebugMessageControl(source, type, severity, count, ids, enabled); + + /// + /// glDebugMessageControl controls the reporting of debug messages generated by a debug context. The parameters source, type and severity form a filter to select messages from the pool of potential messages generated by the GL. + /// source may be GL_DEBUG_SOURCE_API, GL_DEBUG_SOURCE_WINDOW_SYSTEM_, GL_DEBUG_SOURCE_SHADER_COMPILER, GL_DEBUG_SOURCE_THIRD_PARTY, GL_DEBUG_SOURCE_APPLICATION, GL_DEBUG_SOURCE_OTHER to select messages generated by usage of the GL API, the window system, the shader compiler, third party tools or libraries, explicitly by the application or by some other source, respectively. It may also take the value GL_DONT_CARE. If source is not GL_DONT_CARE then only messages whose source matches source will be referenced. + /// type may be one of GL_DEBUG_TYPE_ERROR, GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR, GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR, GL_DEBUG_TYPE_PORTABILITY, GL_DEBUG_TYPE_PERFORMANCE, GL_DEBUG_TYPE_MARKER, GL_DEBUG_TYPE_PUSH_GROUP, GL_DEBUG_TYPE_POP_GROUP, or GL_DEBUG_TYPE_OTHER to indicate the type of messages describing GL errors, attempted use of deprecated features, triggering of undefined behavior, portability issues, performance notifications, markers, group push and pop events, and other types of messages, respectively. It may also take the value GL_DONT_CARE. If type is not GL_DONT_CARE then only messages whose type matches type will be referenced. + /// severity may be one of GL_DEBUG_SEVERITY_LOW, GL_DEBUG_SEVERITY_MEDIUM, or GL_DEBUG_SEVERITY_HIGH to select messages of low, medium or high severity messages or to GL_DEBUG_SEVERITY_NOTIFICATION for notifications. It may also take the value GL_DONT_CARE. If severity is not GL_DONT_CARE then only messages whose severity matches severity will be referenced. + /// ids contains a list of count message identifiers to select specific messages from the pool of available messages. If count is zero then the value of ids is ignored. Otherwise, only messages appearing in this list are selected. In this case, source and type may not be GL_DONT_CARE and severity must be GL_DONT_CARE. + /// If enabled is GL_TRUE then messages that match the filter formed by source, type, severity and ids are enabled. Otherwise, those messages are disabled. + /// + /// The source of debug messages to enable or disable. + /// The type of debug messages to enable or disable. + /// The severity of debug messages to enable or disable. + /// The length of the array ids. + /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable. + /// A Boolean flag determining whether the selected messages should be enabled or disabled. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageControl(DebugSource source, DebugType type, DebugSeverity severity, int count, void* ids, bool enabled) => _DebugMessageControl_ptr(source, type, severity, count, ids, enabled); + + /// + /// glDebugMessageControl controls the reporting of debug messages generated by a debug context. The parameters source, type and severity form a filter to select messages from the pool of potential messages generated by the GL. + /// source may be GL_DEBUG_SOURCE_API, GL_DEBUG_SOURCE_WINDOW_SYSTEM_, GL_DEBUG_SOURCE_SHADER_COMPILER, GL_DEBUG_SOURCE_THIRD_PARTY, GL_DEBUG_SOURCE_APPLICATION, GL_DEBUG_SOURCE_OTHER to select messages generated by usage of the GL API, the window system, the shader compiler, third party tools or libraries, explicitly by the application or by some other source, respectively. It may also take the value GL_DONT_CARE. If source is not GL_DONT_CARE then only messages whose source matches source will be referenced. + /// type may be one of GL_DEBUG_TYPE_ERROR, GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR, GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR, GL_DEBUG_TYPE_PORTABILITY, GL_DEBUG_TYPE_PERFORMANCE, GL_DEBUG_TYPE_MARKER, GL_DEBUG_TYPE_PUSH_GROUP, GL_DEBUG_TYPE_POP_GROUP, or GL_DEBUG_TYPE_OTHER to indicate the type of messages describing GL errors, attempted use of deprecated features, triggering of undefined behavior, portability issues, performance notifications, markers, group push and pop events, and other types of messages, respectively. It may also take the value GL_DONT_CARE. If type is not GL_DONT_CARE then only messages whose type matches type will be referenced. + /// severity may be one of GL_DEBUG_SEVERITY_LOW, GL_DEBUG_SEVERITY_MEDIUM, or GL_DEBUG_SEVERITY_HIGH to select messages of low, medium or high severity messages or to GL_DEBUG_SEVERITY_NOTIFICATION for notifications. It may also take the value GL_DONT_CARE. If severity is not GL_DONT_CARE then only messages whose severity matches severity will be referenced. + /// ids contains a list of count message identifiers to select specific messages from the pool of available messages. If count is zero then the value of ids is ignored. Otherwise, only messages appearing in this list are selected. In this case, source and type may not be GL_DONT_CARE and severity must be GL_DONT_CARE. + /// If enabled is GL_TRUE then messages that match the filter formed by source, type, severity and ids are enabled. Otherwise, those messages are disabled. + /// + /// The source of debug messages to enable or disable. + /// The type of debug messages to enable or disable. + /// The severity of debug messages to enable or disable. + /// The length of the array ids. + /// The address of an array of unsigned integers contianing the ids of the messages to enable or disable. + /// A Boolean flag determining whether the selected messages should be enabled or disabled. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageControl(DebugSource source, DebugType type, DebugSeverity severity, int count, IntPtr ids, bool enabled) => _DebugMessageControl_intptr(source, type, severity, count, ids, enabled); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageControlARB(DebugSource source, DebugType type, DebugSeverity severity, int count, uint[] ids, bool enabled) => _DebugMessageControlARB(source, type, severity, count, ids, enabled); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageControlARB(DebugSource source, DebugType type, DebugSeverity severity, int count, void* ids, bool enabled) => _DebugMessageControlARB_ptr(source, type, severity, count, ids, enabled); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageControlARB(DebugSource source, DebugType type, DebugSeverity severity, int count, IntPtr ids, bool enabled) => _DebugMessageControlARB_intptr(source, type, severity, count, ids, enabled); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageControlKHR(DebugSource source, DebugType type, DebugSeverity severity, int count, uint[] ids, bool enabled) => _DebugMessageControlKHR(source, type, severity, count, ids, enabled); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageControlKHR(DebugSource source, DebugType type, DebugSeverity severity, int count, void* ids, bool enabled) => _DebugMessageControlKHR_ptr(source, type, severity, count, ids, enabled); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageControlKHR(DebugSource source, DebugType type, DebugSeverity severity, int count, IntPtr ids, bool enabled) => _DebugMessageControlKHR_intptr(source, type, severity, count, ids, enabled); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageEnableAMD(int category, DebugSeverity severity, int count, uint[] ids, bool enabled) => _DebugMessageEnableAMD(category, severity, count, ids, enabled); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageEnableAMD(int category, DebugSeverity severity, int count, void* ids, bool enabled) => _DebugMessageEnableAMD_ptr(category, severity, count, ids, enabled); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageEnableAMD(int category, DebugSeverity severity, int count, IntPtr ids, bool enabled) => _DebugMessageEnableAMD_intptr(category, severity, count, ids, enabled); + + // --- + + /// + /// glDebugMessageInsert inserts a user-supplied message into the debug output queue. source specifies the source that will be used to classify the message and must be GL_DEBUG_SOURCE_APPLICATION or GL_DEBUG_SOURCE_THIRD_PARTY. All other sources are reserved for use by the GL implementation. type indicates the type of the message to be inserted and may be one of GL_DEBUG_TYPE_ERROR, GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR, GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR, GL_DEBUG_TYPE_PORTABILITY, GL_DEBUG_TYPE_PERFORMANCE, GL_DEBUG_TYPE_MARKER, GL_DEBUG_TYPE_PUSH_GROUP, GL_DEBUG_TYPE_POP_GROUP, or GL_DEBUG_TYPE_OTHER. severity indicates the severity of the message and may be GL_DEBUG_SEVERITY_LOW, GL_DEBUG_SEVERITY_MEDIUM, GL_DEBUG_SEVERITY_HIGH or GL_DEBUG_SEVERITY_NOTIFICATION. id is available for application defined use and may be any value. This value will be recorded and used to identify the message. + /// length contains a count of the characters in the character array whose address is given in message. If length is negative then message is treated as a null-terminated string. The length of the message, whether specified explicitly or implicitly, must be less than or equal to the implementation defined constant GL_MAX_DEBUG_MESSAGE_LENGTH. + /// + /// The source of the debug message to insert. + /// The type of the debug message insert. + /// The user-supplied identifier of the message to insert. + /// The severity of the debug messages to insert. + /// The length string contained in the character array whose address is given by message. + /// The address of a character array containing the message to insert. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageInsert(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, string buf) => _DebugMessageInsert(source, type, id, severity, length, buf); + + /// + /// glDebugMessageInsert inserts a user-supplied message into the debug output queue. source specifies the source that will be used to classify the message and must be GL_DEBUG_SOURCE_APPLICATION or GL_DEBUG_SOURCE_THIRD_PARTY. All other sources are reserved for use by the GL implementation. type indicates the type of the message to be inserted and may be one of GL_DEBUG_TYPE_ERROR, GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR, GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR, GL_DEBUG_TYPE_PORTABILITY, GL_DEBUG_TYPE_PERFORMANCE, GL_DEBUG_TYPE_MARKER, GL_DEBUG_TYPE_PUSH_GROUP, GL_DEBUG_TYPE_POP_GROUP, or GL_DEBUG_TYPE_OTHER. severity indicates the severity of the message and may be GL_DEBUG_SEVERITY_LOW, GL_DEBUG_SEVERITY_MEDIUM, GL_DEBUG_SEVERITY_HIGH or GL_DEBUG_SEVERITY_NOTIFICATION. id is available for application defined use and may be any value. This value will be recorded and used to identify the message. + /// length contains a count of the characters in the character array whose address is given in message. If length is negative then message is treated as a null-terminated string. The length of the message, whether specified explicitly or implicitly, must be less than or equal to the implementation defined constant GL_MAX_DEBUG_MESSAGE_LENGTH. + /// + /// The source of the debug message to insert. + /// The type of the debug message insert. + /// The user-supplied identifier of the message to insert. + /// The severity of the debug messages to insert. + /// The length string contained in the character array whose address is given by message. + /// The address of a character array containing the message to insert. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageInsert(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, void* buf) => _DebugMessageInsert_ptr(source, type, id, severity, length, buf); + + /// + /// glDebugMessageInsert inserts a user-supplied message into the debug output queue. source specifies the source that will be used to classify the message and must be GL_DEBUG_SOURCE_APPLICATION or GL_DEBUG_SOURCE_THIRD_PARTY. All other sources are reserved for use by the GL implementation. type indicates the type of the message to be inserted and may be one of GL_DEBUG_TYPE_ERROR, GL_DEBUG_TYPE_DEPRECATED_BEHAVIOR, GL_DEBUG_TYPE_UNDEFINED_BEHAVIOR, GL_DEBUG_TYPE_PORTABILITY, GL_DEBUG_TYPE_PERFORMANCE, GL_DEBUG_TYPE_MARKER, GL_DEBUG_TYPE_PUSH_GROUP, GL_DEBUG_TYPE_POP_GROUP, or GL_DEBUG_TYPE_OTHER. severity indicates the severity of the message and may be GL_DEBUG_SEVERITY_LOW, GL_DEBUG_SEVERITY_MEDIUM, GL_DEBUG_SEVERITY_HIGH or GL_DEBUG_SEVERITY_NOTIFICATION. id is available for application defined use and may be any value. This value will be recorded and used to identify the message. + /// length contains a count of the characters in the character array whose address is given in message. If length is negative then message is treated as a null-terminated string. The length of the message, whether specified explicitly or implicitly, must be less than or equal to the implementation defined constant GL_MAX_DEBUG_MESSAGE_LENGTH. + /// + /// The source of the debug message to insert. + /// The type of the debug message insert. + /// The user-supplied identifier of the message to insert. + /// The severity of the debug messages to insert. + /// The length string contained in the character array whose address is given by message. + /// The address of a character array containing the message to insert. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageInsert(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, IntPtr buf) => _DebugMessageInsert_intptr(source, type, id, severity, length, buf); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageInsertAMD(int category, DebugSeverity severity, uint id, int length, string buf) => _DebugMessageInsertAMD(category, severity, id, length, buf); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageInsertAMD(int category, DebugSeverity severity, uint id, int length, void* buf) => _DebugMessageInsertAMD_ptr(category, severity, id, length, buf); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageInsertAMD(int category, DebugSeverity severity, uint id, int length, IntPtr buf) => _DebugMessageInsertAMD_intptr(category, severity, id, length, buf); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageInsertARB(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, string buf) => _DebugMessageInsertARB(source, type, id, severity, length, buf); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageInsertARB(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, void* buf) => _DebugMessageInsertARB_ptr(source, type, id, severity, length, buf); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageInsertARB(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, IntPtr buf) => _DebugMessageInsertARB_intptr(source, type, id, severity, length, buf); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageInsertKHR(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, string buf) => _DebugMessageInsertKHR(source, type, id, severity, length, buf); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageInsertKHR(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, void* buf) => _DebugMessageInsertKHR_ptr(source, type, id, severity, length, buf); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DebugMessageInsertKHR(DebugSource source, DebugType type, uint id, DebugSeverity severity, int length, IntPtr buf) => _DebugMessageInsertKHR_intptr(source, type, id, severity, length, buf); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeformSGIX(int mask) => _DeformSGIX(mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeformationMap3dSGIX(FfdTargetSGIX target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double w1, double w2, int wstride, int worder, double[] points) => _DeformationMap3dSGIX(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeformationMap3dSGIX(FfdTargetSGIX target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double w1, double w2, int wstride, int worder, void* points) => _DeformationMap3dSGIX_ptr(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeformationMap3dSGIX(FfdTargetSGIX target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double w1, double w2, int wstride, int worder, IntPtr points) => _DeformationMap3dSGIX_intptr(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeformationMap3fSGIX(FfdTargetSGIX target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float w1, float w2, int wstride, int worder, float[] points) => _DeformationMap3fSGIX(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeformationMap3fSGIX(FfdTargetSGIX target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float w1, float w2, int wstride, int worder, void* points) => _DeformationMap3fSGIX_ptr(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeformationMap3fSGIX(FfdTargetSGIX target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float w1, float w2, int wstride, int worder, IntPtr points) => _DeformationMap3fSGIX_intptr(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, w1, w2, wstride, worder, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteAsyncMarkersSGIX(uint marker, int range) => _DeleteAsyncMarkersSGIX(marker, range); + + // --- + + /// + /// glDeleteBuffers deletes n buffer objects named by the elements of the array buffers. After a buffer object is deleted, it has no contents, and its name is free for reuse (for example by glGenBuffers). If a buffer object that is currently bound is deleted, the binding reverts to 0 (the absence of any buffer object). + /// glDeleteBuffers silently ignores 0's and names that do not correspond to existing buffer objects. + /// + /// Specifies the number of buffer objects to be deleted. + /// Specifies an array of buffer objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteBuffers(int n, uint[] buffers) => _DeleteBuffers(n, buffers); + + /// + /// glDeleteBuffers deletes n buffer objects named by the elements of the array buffers. After a buffer object is deleted, it has no contents, and its name is free for reuse (for example by glGenBuffers). If a buffer object that is currently bound is deleted, the binding reverts to 0 (the absence of any buffer object). + /// glDeleteBuffers silently ignores 0's and names that do not correspond to existing buffer objects. + /// + /// Specifies the number of buffer objects to be deleted. + /// Specifies an array of buffer objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteBuffers(int n, void* buffers) => _DeleteBuffers_ptr(n, buffers); + + /// + /// glDeleteBuffers deletes n buffer objects named by the elements of the array buffers. After a buffer object is deleted, it has no contents, and its name is free for reuse (for example by glGenBuffers). If a buffer object that is currently bound is deleted, the binding reverts to 0 (the absence of any buffer object). + /// glDeleteBuffers silently ignores 0's and names that do not correspond to existing buffer objects. + /// + /// Specifies the number of buffer objects to be deleted. + /// Specifies an array of buffer objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteBuffers(int n, IntPtr buffers) => _DeleteBuffers_intptr(n, buffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteBuffersARB(int n, uint[] buffers) => _DeleteBuffersARB(n, buffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteBuffersARB(int n, void* buffers) => _DeleteBuffersARB_ptr(n, buffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteBuffersARB(int n, IntPtr buffers) => _DeleteBuffersARB_intptr(n, buffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteCommandListsNV(int n, uint[] lists) => _DeleteCommandListsNV(n, lists); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteCommandListsNV(int n, void* lists) => _DeleteCommandListsNV_ptr(n, lists); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteCommandListsNV(int n, IntPtr lists) => _DeleteCommandListsNV_intptr(n, lists); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFencesAPPLE(int n, uint[] fences) => _DeleteFencesAPPLE(n, fences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFencesAPPLE(int n, void* fences) => _DeleteFencesAPPLE_ptr(n, fences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFencesAPPLE(int n, IntPtr fences) => _DeleteFencesAPPLE_intptr(n, fences); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFencesNV(int n, uint[] fences) => _DeleteFencesNV(n, fences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFencesNV(int n, void* fences) => _DeleteFencesNV_ptr(n, fences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFencesNV(int n, IntPtr fences) => _DeleteFencesNV_intptr(n, fences); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFragmentShaderATI(uint id) => _DeleteFragmentShaderATI(id); + + // --- + + /// + /// glDeleteFramebuffers deletes the n framebuffer objects whose names are stored in the array addressed by framebuffers. The name zero is reserved by the GL and is silently ignored, should it occur in framebuffers, as are other unused names. Once a framebuffer object is deleted, its name is again unused and it has no attachments. If a framebuffer that is currently bound to one or more of the targets GL_DRAW_FRAMEBUFFER or GL_READ_FRAMEBUFFER is deleted, it is as though glBindFramebuffer had been executed with the corresponding target and framebuffer zero. + /// + /// Specifies the number of framebuffer objects to be deleted. + /// A pointer to an array containing n framebuffer objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFramebuffers(int n, uint[] framebuffers) => _DeleteFramebuffers(n, framebuffers); + + /// + /// glDeleteFramebuffers deletes the n framebuffer objects whose names are stored in the array addressed by framebuffers. The name zero is reserved by the GL and is silently ignored, should it occur in framebuffers, as are other unused names. Once a framebuffer object is deleted, its name is again unused and it has no attachments. If a framebuffer that is currently bound to one or more of the targets GL_DRAW_FRAMEBUFFER or GL_READ_FRAMEBUFFER is deleted, it is as though glBindFramebuffer had been executed with the corresponding target and framebuffer zero. + /// + /// Specifies the number of framebuffer objects to be deleted. + /// A pointer to an array containing n framebuffer objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFramebuffers(int n, void* framebuffers) => _DeleteFramebuffers_ptr(n, framebuffers); + + /// + /// glDeleteFramebuffers deletes the n framebuffer objects whose names are stored in the array addressed by framebuffers. The name zero is reserved by the GL and is silently ignored, should it occur in framebuffers, as are other unused names. Once a framebuffer object is deleted, its name is again unused and it has no attachments. If a framebuffer that is currently bound to one or more of the targets GL_DRAW_FRAMEBUFFER or GL_READ_FRAMEBUFFER is deleted, it is as though glBindFramebuffer had been executed with the corresponding target and framebuffer zero. + /// + /// Specifies the number of framebuffer objects to be deleted. + /// A pointer to an array containing n framebuffer objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFramebuffers(int n, IntPtr framebuffers) => _DeleteFramebuffers_intptr(n, framebuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFramebuffersEXT(int n, uint[] framebuffers) => _DeleteFramebuffersEXT(n, framebuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFramebuffersEXT(int n, void* framebuffers) => _DeleteFramebuffersEXT_ptr(n, framebuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFramebuffersEXT(int n, IntPtr framebuffers) => _DeleteFramebuffersEXT_intptr(n, framebuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFramebuffersOES(int n, uint[] framebuffers) => _DeleteFramebuffersOES(n, framebuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFramebuffersOES(int n, void* framebuffers) => _DeleteFramebuffersOES_ptr(n, framebuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteFramebuffersOES(int n, IntPtr framebuffers) => _DeleteFramebuffersOES_intptr(n, framebuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteLists(uint list, int range) => _DeleteLists(list, range); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteMemoryObjectsEXT(int n, uint[] memoryObjects) => _DeleteMemoryObjectsEXT(n, memoryObjects); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteMemoryObjectsEXT(int n, void* memoryObjects) => _DeleteMemoryObjectsEXT_ptr(n, memoryObjects); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteMemoryObjectsEXT(int n, IntPtr memoryObjects) => _DeleteMemoryObjectsEXT_intptr(n, memoryObjects); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteNamedStringARB(int namelen, string name) => _DeleteNamedStringARB(namelen, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteNamedStringARB(int namelen, void* name) => _DeleteNamedStringARB_ptr(namelen, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteNamedStringARB(int namelen, IntPtr name) => _DeleteNamedStringARB_intptr(namelen, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteNamesAMD(int identifier, uint num, uint[] names) => _DeleteNamesAMD(identifier, num, names); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteNamesAMD(int identifier, uint num, void* names) => _DeleteNamesAMD_ptr(identifier, num, names); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteNamesAMD(int identifier, uint num, IntPtr names) => _DeleteNamesAMD_intptr(identifier, num, names); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteObjectARB(int obj) => _DeleteObjectARB(obj); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteOcclusionQueriesNV(int n, uint[] ids) => _DeleteOcclusionQueriesNV(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteOcclusionQueriesNV(int n, void* ids) => _DeleteOcclusionQueriesNV_ptr(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteOcclusionQueriesNV(int n, IntPtr ids) => _DeleteOcclusionQueriesNV_intptr(n, ids); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeletePathsNV(uint path, int range) => _DeletePathsNV(path, range); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeletePerfMonitorsAMD(int n, uint[] monitors) => _DeletePerfMonitorsAMD(n, monitors); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeletePerfMonitorsAMD(int n, void* monitors) => _DeletePerfMonitorsAMD_ptr(n, monitors); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeletePerfMonitorsAMD(int n, IntPtr monitors) => _DeletePerfMonitorsAMD_intptr(n, monitors); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeletePerfQueryINTEL(uint queryHandle) => _DeletePerfQueryINTEL(queryHandle); + + // --- + + /// + /// glDeleteProgram frees the memory and invalidates the name associated with the program object specified by program. This command effectively undoes the effects of a call to glCreateProgram. + /// If a program object is in use as part of current rendering state, it will be flagged for deletion, but it will not be deleted until it is no longer part of current state for any rendering context. If a program object to be deleted has shader objects attached to it, those shader objects will be automatically detached but not deleted unless they have already been flagged for deletion by a previous call to glDeleteShader. A value of 0 for program will be silently ignored. + /// To determine whether a program object has been flagged for deletion, call glGetProgram with arguments program and GL_DELETE_STATUS. + /// + /// Specifies the program object to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgram(uint program) => _DeleteProgram(program); + + // --- + + /// + /// glDeleteProgramPipelines deletes the n program pipeline objects whose names are stored in the array pipelines. Unused names in pipelines are ignored, as is the name zero. After a program pipeline object is deleted, its name is again unused and it has no contents. If program pipeline object that is currently bound is deleted, the binding for that object reverts to zero and no program pipeline object becomes current. + /// + /// Specifies the number of program pipeline objects to delete. + /// Specifies an array of names of program pipeline objects to delete. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgramPipelines(int n, uint[] pipelines) => _DeleteProgramPipelines(n, pipelines); + + /// + /// glDeleteProgramPipelines deletes the n program pipeline objects whose names are stored in the array pipelines. Unused names in pipelines are ignored, as is the name zero. After a program pipeline object is deleted, its name is again unused and it has no contents. If program pipeline object that is currently bound is deleted, the binding for that object reverts to zero and no program pipeline object becomes current. + /// + /// Specifies the number of program pipeline objects to delete. + /// Specifies an array of names of program pipeline objects to delete. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgramPipelines(int n, void* pipelines) => _DeleteProgramPipelines_ptr(n, pipelines); + + /// + /// glDeleteProgramPipelines deletes the n program pipeline objects whose names are stored in the array pipelines. Unused names in pipelines are ignored, as is the name zero. After a program pipeline object is deleted, its name is again unused and it has no contents. If program pipeline object that is currently bound is deleted, the binding for that object reverts to zero and no program pipeline object becomes current. + /// + /// Specifies the number of program pipeline objects to delete. + /// Specifies an array of names of program pipeline objects to delete. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgramPipelines(int n, IntPtr pipelines) => _DeleteProgramPipelines_intptr(n, pipelines); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgramPipelinesEXT(int n, uint[] pipelines) => _DeleteProgramPipelinesEXT(n, pipelines); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgramPipelinesEXT(int n, void* pipelines) => _DeleteProgramPipelinesEXT_ptr(n, pipelines); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgramPipelinesEXT(int n, IntPtr pipelines) => _DeleteProgramPipelinesEXT_intptr(n, pipelines); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgramsARB(int n, uint[] programs) => _DeleteProgramsARB(n, programs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgramsARB(int n, void* programs) => _DeleteProgramsARB_ptr(n, programs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgramsARB(int n, IntPtr programs) => _DeleteProgramsARB_intptr(n, programs); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgramsNV(int n, uint[] programs) => _DeleteProgramsNV(n, programs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgramsNV(int n, void* programs) => _DeleteProgramsNV_ptr(n, programs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteProgramsNV(int n, IntPtr programs) => _DeleteProgramsNV_intptr(n, programs); + + // --- + + /// + /// glDeleteQueries deletes n query objects named by the elements of the array ids. After a query object is deleted, it has no contents, and its name is free for reuse (for example by glGenQueries). + /// glDeleteQueries silently ignores 0's and names that do not correspond to existing query objects. + /// + /// Specifies the number of query objects to be deleted. + /// Specifies an array of query objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteQueries(int n, uint[] ids) => _DeleteQueries(n, ids); + + /// + /// glDeleteQueries deletes n query objects named by the elements of the array ids. After a query object is deleted, it has no contents, and its name is free for reuse (for example by glGenQueries). + /// glDeleteQueries silently ignores 0's and names that do not correspond to existing query objects. + /// + /// Specifies the number of query objects to be deleted. + /// Specifies an array of query objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteQueries(int n, void* ids) => _DeleteQueries_ptr(n, ids); + + /// + /// glDeleteQueries deletes n query objects named by the elements of the array ids. After a query object is deleted, it has no contents, and its name is free for reuse (for example by glGenQueries). + /// glDeleteQueries silently ignores 0's and names that do not correspond to existing query objects. + /// + /// Specifies the number of query objects to be deleted. + /// Specifies an array of query objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteQueries(int n, IntPtr ids) => _DeleteQueries_intptr(n, ids); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteQueriesARB(int n, uint[] ids) => _DeleteQueriesARB(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteQueriesARB(int n, void* ids) => _DeleteQueriesARB_ptr(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteQueriesARB(int n, IntPtr ids) => _DeleteQueriesARB_intptr(n, ids); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteQueriesEXT(int n, uint[] ids) => _DeleteQueriesEXT(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteQueriesEXT(int n, void* ids) => _DeleteQueriesEXT_ptr(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteQueriesEXT(int n, IntPtr ids) => _DeleteQueriesEXT_intptr(n, ids); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteQueryResourceTagNV(int n, int[] tagIds) => _DeleteQueryResourceTagNV(n, tagIds); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteQueryResourceTagNV(int n, void* tagIds) => _DeleteQueryResourceTagNV_ptr(n, tagIds); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteQueryResourceTagNV(int n, IntPtr tagIds) => _DeleteQueryResourceTagNV_intptr(n, tagIds); + + // --- + + /// + /// glDeleteRenderbuffers deletes the n renderbuffer objects whose names are stored in the array addressed by renderbuffers. The name zero is reserved by the GL and is silently ignored, should it occur in renderbuffers, as are other unused names. Once a renderbuffer object is deleted, its name is again unused and it has no contents. If a renderbuffer that is currently bound to the target GL_RENDERBUFFER is deleted, it is as though glBindRenderbuffer had been executed with a target of GL_RENDERBUFFER and a name of zero. + /// If a renderbuffer object is attached to one or more attachment points in the currently bound framebuffer, then it as if glFramebufferRenderbuffer had been called, with a renderbuffer of zero for each attachment point to which this image was attached in the currently bound framebuffer. In other words, this renderbuffer object is first detached from all attachment ponits in the currently bound framebuffer. Note that the renderbuffer image is specifically not detached from any non-bound framebuffers. + /// + /// Specifies the number of renderbuffer objects to be deleted. + /// A pointer to an array containing n renderbuffer objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteRenderbuffers(int n, uint[] renderbuffers) => _DeleteRenderbuffers(n, renderbuffers); + + /// + /// glDeleteRenderbuffers deletes the n renderbuffer objects whose names are stored in the array addressed by renderbuffers. The name zero is reserved by the GL and is silently ignored, should it occur in renderbuffers, as are other unused names. Once a renderbuffer object is deleted, its name is again unused and it has no contents. If a renderbuffer that is currently bound to the target GL_RENDERBUFFER is deleted, it is as though glBindRenderbuffer had been executed with a target of GL_RENDERBUFFER and a name of zero. + /// If a renderbuffer object is attached to one or more attachment points in the currently bound framebuffer, then it as if glFramebufferRenderbuffer had been called, with a renderbuffer of zero for each attachment point to which this image was attached in the currently bound framebuffer. In other words, this renderbuffer object is first detached from all attachment ponits in the currently bound framebuffer. Note that the renderbuffer image is specifically not detached from any non-bound framebuffers. + /// + /// Specifies the number of renderbuffer objects to be deleted. + /// A pointer to an array containing n renderbuffer objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteRenderbuffers(int n, void* renderbuffers) => _DeleteRenderbuffers_ptr(n, renderbuffers); + + /// + /// glDeleteRenderbuffers deletes the n renderbuffer objects whose names are stored in the array addressed by renderbuffers. The name zero is reserved by the GL and is silently ignored, should it occur in renderbuffers, as are other unused names. Once a renderbuffer object is deleted, its name is again unused and it has no contents. If a renderbuffer that is currently bound to the target GL_RENDERBUFFER is deleted, it is as though glBindRenderbuffer had been executed with a target of GL_RENDERBUFFER and a name of zero. + /// If a renderbuffer object is attached to one or more attachment points in the currently bound framebuffer, then it as if glFramebufferRenderbuffer had been called, with a renderbuffer of zero for each attachment point to which this image was attached in the currently bound framebuffer. In other words, this renderbuffer object is first detached from all attachment ponits in the currently bound framebuffer. Note that the renderbuffer image is specifically not detached from any non-bound framebuffers. + /// + /// Specifies the number of renderbuffer objects to be deleted. + /// A pointer to an array containing n renderbuffer objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteRenderbuffers(int n, IntPtr renderbuffers) => _DeleteRenderbuffers_intptr(n, renderbuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteRenderbuffersEXT(int n, uint[] renderbuffers) => _DeleteRenderbuffersEXT(n, renderbuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteRenderbuffersEXT(int n, void* renderbuffers) => _DeleteRenderbuffersEXT_ptr(n, renderbuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteRenderbuffersEXT(int n, IntPtr renderbuffers) => _DeleteRenderbuffersEXT_intptr(n, renderbuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteRenderbuffersOES(int n, uint[] renderbuffers) => _DeleteRenderbuffersOES(n, renderbuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteRenderbuffersOES(int n, void* renderbuffers) => _DeleteRenderbuffersOES_ptr(n, renderbuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteRenderbuffersOES(int n, IntPtr renderbuffers) => _DeleteRenderbuffersOES_intptr(n, renderbuffers); + + // --- + + /// + /// glDeleteSamplers deletes n sampler objects named by the elements of the array samplers. After a sampler object is deleted, its name is again unused. If a sampler object that is currently bound to a sampler unit is deleted, it is as though glBindSampler is called with unit set to the unit the sampler is bound to and sampler zero. Unused names in samplers are silently ignored, as is the reserved name zero. + /// + /// Specifies the number of sampler objects to be deleted. + /// Specifies an array of sampler objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteSamplers(int count, uint[] samplers) => _DeleteSamplers(count, samplers); + + /// + /// glDeleteSamplers deletes n sampler objects named by the elements of the array samplers. After a sampler object is deleted, its name is again unused. If a sampler object that is currently bound to a sampler unit is deleted, it is as though glBindSampler is called with unit set to the unit the sampler is bound to and sampler zero. Unused names in samplers are silently ignored, as is the reserved name zero. + /// + /// Specifies the number of sampler objects to be deleted. + /// Specifies an array of sampler objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteSamplers(int count, void* samplers) => _DeleteSamplers_ptr(count, samplers); + + /// + /// glDeleteSamplers deletes n sampler objects named by the elements of the array samplers. After a sampler object is deleted, its name is again unused. If a sampler object that is currently bound to a sampler unit is deleted, it is as though glBindSampler is called with unit set to the unit the sampler is bound to and sampler zero. Unused names in samplers are silently ignored, as is the reserved name zero. + /// + /// Specifies the number of sampler objects to be deleted. + /// Specifies an array of sampler objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteSamplers(int count, IntPtr samplers) => _DeleteSamplers_intptr(count, samplers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteSemaphoresEXT(int n, uint[] semaphores) => _DeleteSemaphoresEXT(n, semaphores); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteSemaphoresEXT(int n, void* semaphores) => _DeleteSemaphoresEXT_ptr(n, semaphores); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteSemaphoresEXT(int n, IntPtr semaphores) => _DeleteSemaphoresEXT_intptr(n, semaphores); + + // --- + + /// + /// glDeleteShader frees the memory and invalidates the name associated with the shader object specified by shader. This command effectively undoes the effects of a call to glCreateShader. + /// If a shader object to be deleted is attached to a program object, it will be flagged for deletion, but it will not be deleted until it is no longer attached to any program object, for any rendering context (i.e., it must be detached from wherever it was attached before it will be deleted). A value of 0 for shader will be silently ignored. + /// To determine whether an object has been flagged for deletion, call glGetShader with arguments shader and GL_DELETE_STATUS. + /// + /// Specifies the shader object to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteShader(uint shader) => _DeleteShader(shader); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteStatesNV(int n, uint[] states) => _DeleteStatesNV(n, states); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteStatesNV(int n, void* states) => _DeleteStatesNV_ptr(n, states); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteStatesNV(int n, IntPtr states) => _DeleteStatesNV_intptr(n, states); + + // --- + + /// + /// glDeleteSync deletes the sync object specified by sync. If the fence command corresponding to the specified sync object has completed, or if no glWaitSync or glClientWaitSync commands are blocking on sync, the object is deleted immediately. Otherwise, sync is flagged for deletion and will be deleted when it is no longer associated with any fence command and is no longer blocking any glWaitSync or glClientWaitSync command. In either case, after glDeleteSync returns, the name sync is invalid and can no longer be used to refer to the sync object. + /// glDeleteSync will silently ignore a sync value of zero. + /// + /// The sync object to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteSync(int sync) => _DeleteSync(sync); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteSyncAPPLE(int sync) => _DeleteSyncAPPLE(sync); + + // --- + + /// + /// glDeleteTextures deletes n textures named by the elements of the array textures. After a texture is deleted, it has no contents or dimensionality, and its name is free for reuse (for example by glGenTextures). If a texture that is currently bound is deleted, the binding reverts to 0 (the default texture). + /// glDeleteTextures silently ignores 0's and names that do not correspond to existing textures. + /// + /// Specifies the number of textures to be deleted. + /// Specifies an array of textures to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteTextures(int n, uint[] textures) => _DeleteTextures(n, textures); + + /// + /// glDeleteTextures deletes n textures named by the elements of the array textures. After a texture is deleted, it has no contents or dimensionality, and its name is free for reuse (for example by glGenTextures). If a texture that is currently bound is deleted, the binding reverts to 0 (the default texture). + /// glDeleteTextures silently ignores 0's and names that do not correspond to existing textures. + /// + /// Specifies the number of textures to be deleted. + /// Specifies an array of textures to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteTextures(int n, void* textures) => _DeleteTextures_ptr(n, textures); + + /// + /// glDeleteTextures deletes n textures named by the elements of the array textures. After a texture is deleted, it has no contents or dimensionality, and its name is free for reuse (for example by glGenTextures). If a texture that is currently bound is deleted, the binding reverts to 0 (the default texture). + /// glDeleteTextures silently ignores 0's and names that do not correspond to existing textures. + /// + /// Specifies the number of textures to be deleted. + /// Specifies an array of textures to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteTextures(int n, IntPtr textures) => _DeleteTextures_intptr(n, textures); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteTexturesEXT(int n, uint[] textures) => _DeleteTexturesEXT(n, textures); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteTexturesEXT(int n, void* textures) => _DeleteTexturesEXT_ptr(n, textures); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteTexturesEXT(int n, IntPtr textures) => _DeleteTexturesEXT_intptr(n, textures); + + // --- + + /// + /// glDeleteTransformFeedbacks deletes the n transform feedback objects whose names are stored in the array ids. Unused names in ids are ignored, as is the name zero. After a transform feedback object is deleted, its name is again unused and it has no contents. If an active transform feedback object is deleted, its name immediately becomes unused, but the underlying object is not deleted until it is no longer active. + /// + /// Specifies the number of transform feedback objects to delete. + /// Specifies an array of names of transform feedback objects to delete. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteTransformFeedbacks(int n, uint[] ids) => _DeleteTransformFeedbacks(n, ids); + + /// + /// glDeleteTransformFeedbacks deletes the n transform feedback objects whose names are stored in the array ids. Unused names in ids are ignored, as is the name zero. After a transform feedback object is deleted, its name is again unused and it has no contents. If an active transform feedback object is deleted, its name immediately becomes unused, but the underlying object is not deleted until it is no longer active. + /// + /// Specifies the number of transform feedback objects to delete. + /// Specifies an array of names of transform feedback objects to delete. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteTransformFeedbacks(int n, void* ids) => _DeleteTransformFeedbacks_ptr(n, ids); + + /// + /// glDeleteTransformFeedbacks deletes the n transform feedback objects whose names are stored in the array ids. Unused names in ids are ignored, as is the name zero. After a transform feedback object is deleted, its name is again unused and it has no contents. If an active transform feedback object is deleted, its name immediately becomes unused, but the underlying object is not deleted until it is no longer active. + /// + /// Specifies the number of transform feedback objects to delete. + /// Specifies an array of names of transform feedback objects to delete. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteTransformFeedbacks(int n, IntPtr ids) => _DeleteTransformFeedbacks_intptr(n, ids); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteTransformFeedbacksNV(int n, uint[] ids) => _DeleteTransformFeedbacksNV(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteTransformFeedbacksNV(int n, void* ids) => _DeleteTransformFeedbacksNV_ptr(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteTransformFeedbacksNV(int n, IntPtr ids) => _DeleteTransformFeedbacksNV_intptr(n, ids); + + // --- + + /// + /// glDeleteVertexArrays deletes n vertex array objects whose names are stored in the array addressed by arrays. Once a vertex array object is deleted it has no contents and its name is again unused. If a vertex array object that is currently bound is deleted, the binding for that object reverts to zero and the default vertex array becomes current. Unused names in arrays are silently ignored, as is the value zero. + /// + /// Specifies the number of vertex array objects to be deleted. + /// Specifies the address of an array containing the n names of the objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteVertexArrays(int n, uint[] arrays) => _DeleteVertexArrays(n, arrays); + + /// + /// glDeleteVertexArrays deletes n vertex array objects whose names are stored in the array addressed by arrays. Once a vertex array object is deleted it has no contents and its name is again unused. If a vertex array object that is currently bound is deleted, the binding for that object reverts to zero and the default vertex array becomes current. Unused names in arrays are silently ignored, as is the value zero. + /// + /// Specifies the number of vertex array objects to be deleted. + /// Specifies the address of an array containing the n names of the objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteVertexArrays(int n, void* arrays) => _DeleteVertexArrays_ptr(n, arrays); + + /// + /// glDeleteVertexArrays deletes n vertex array objects whose names are stored in the array addressed by arrays. Once a vertex array object is deleted it has no contents and its name is again unused. If a vertex array object that is currently bound is deleted, the binding for that object reverts to zero and the default vertex array becomes current. Unused names in arrays are silently ignored, as is the value zero. + /// + /// Specifies the number of vertex array objects to be deleted. + /// Specifies the address of an array containing the n names of the objects to be deleted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteVertexArrays(int n, IntPtr arrays) => _DeleteVertexArrays_intptr(n, arrays); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteVertexArraysAPPLE(int n, uint[] arrays) => _DeleteVertexArraysAPPLE(n, arrays); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteVertexArraysAPPLE(int n, void* arrays) => _DeleteVertexArraysAPPLE_ptr(n, arrays); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteVertexArraysAPPLE(int n, IntPtr arrays) => _DeleteVertexArraysAPPLE_intptr(n, arrays); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteVertexArraysOES(int n, uint[] arrays) => _DeleteVertexArraysOES(n, arrays); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteVertexArraysOES(int n, void* arrays) => _DeleteVertexArraysOES_ptr(n, arrays); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteVertexArraysOES(int n, IntPtr arrays) => _DeleteVertexArraysOES_intptr(n, arrays); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DeleteVertexShaderEXT(uint id) => _DeleteVertexShaderEXT(id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthBoundsEXT(double zmin, double zmax) => _DepthBoundsEXT(zmin, zmax); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthBoundsdNV(double zmin, double zmax) => _DepthBoundsdNV(zmin, zmax); + + // --- + + /// + /// glDepthFunc specifies the function used to compare each incoming pixel depth value with the depth value present in the depth buffer. The comparison is performed only if depth testing is enabled. (See glEnable and glDisable of GL_DEPTH_TEST.) + /// func specifies the conditions under which the pixel will be drawn. The comparison functions are as follows: + /// GL_NEVER Never passes. GL_LESS Passes if the incoming depth value is less than the stored depth value. GL_EQUAL Passes if the incoming depth value is equal to the stored depth value. GL_LEQUAL Passes if the incoming depth value is less than or equal to the stored depth value. GL_GREATER Passes if the incoming depth value is greater than the stored depth value. GL_NOTEQUAL Passes if the incoming depth value is not equal to the stored depth value. GL_GEQUAL Passes if the incoming depth value is greater than or equal to the stored depth value. GL_ALWAYS Always passes. + /// The initial value of func is GL_LESS. Initially, depth testing is disabled. If depth testing is disabled or if no depth buffer exists, it is as if the depth test always passes. + /// + /// Specifies the depth comparison function. Symbolic constants GL_NEVER, GL_LESS, GL_EQUAL, GL_LEQUAL, GL_GREATER, GL_NOTEQUAL, GL_GEQUAL, and GL_ALWAYS are accepted. The initial value is GL_LESS. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthFunc(DepthFunction func) => _DepthFunc(func); + + // --- + + /// + /// glDepthMask specifies whether the depth buffer is enabled for writing. If flag is GL_FALSE, depth buffer writing is disabled. Otherwise, it is enabled. Initially, depth buffer writing is enabled. + /// + /// Specifies whether the depth buffer is enabled for writing. If flag is GL_FALSE, depth buffer writing is disabled. Otherwise, it is enabled. Initially, depth buffer writing is enabled. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthMask(bool flag) => _DepthMask(flag); + + // --- + + /// + /// After clipping and division by w, depth coordinates range from are acceptable. + /// The type of the nearVal and farVal parameters was changed from GLclampf to GLfloat for glDepthRangef and from GLclampd to GLdouble for glDepthRange. This change is transparent to user code and is described in detail on the removedTypes page. + /// + /// Specifies the mapping of the near clipping plane to window coordinates. The initial value is 0. + /// Specifies the mapping of the far clipping plane to window coordinates. The initial value is 1. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRange(double n, double f) => _DepthRange(n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeArraydvNV(uint first, int count, double[] v) => _DepthRangeArraydvNV(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeArraydvNV(uint first, int count, void* v) => _DepthRangeArraydvNV_ptr(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeArraydvNV(uint first, int count, IntPtr v) => _DepthRangeArraydvNV_intptr(first, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeArrayfvNV(uint first, int count, float[] v) => _DepthRangeArrayfvNV(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeArrayfvNV(uint first, int count, void* v) => _DepthRangeArrayfvNV_ptr(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeArrayfvNV(uint first, int count, IntPtr v) => _DepthRangeArrayfvNV_intptr(first, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeArrayfvOES(uint first, int count, float[] v) => _DepthRangeArrayfvOES(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeArrayfvOES(uint first, int count, void* v) => _DepthRangeArrayfvOES_ptr(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeArrayfvOES(uint first, int count, IntPtr v) => _DepthRangeArrayfvOES_intptr(first, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeArrayv(uint first, int count, double[] v) => _DepthRangeArrayv(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeArrayv(uint first, int count, void* v) => _DepthRangeArrayv_ptr(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeArrayv(uint first, int count, IntPtr v) => _DepthRangeArrayv_intptr(first, count, v); + + // --- + + /// + /// After clipping and division by w, depth coordinates range from are acceptable. + /// The type of the nearVal and farVal parameters was changed from GLclampd to GLdouble. This change is transparent to user code and is described in detail on the removedTypes page. + /// + /// Specifies the index of the viewport whose depth range to update. + /// Specifies the mapping of the near clipping plane to window coordinates. The initial value is 0. + /// Specifies the mapping of the far clipping plane to window coordinates. The initial value is 1. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeIndexed(uint index, double n, double f) => _DepthRangeIndexed(index, n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeIndexeddNV(uint index, double n, double f) => _DepthRangeIndexeddNV(index, n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeIndexedfNV(uint index, float n, float f) => _DepthRangeIndexedfNV(index, n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangeIndexedfOES(uint index, float n, float f) => _DepthRangeIndexedfOES(index, n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangedNV(double zNear, double zFar) => _DepthRangedNV(zNear, zFar); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangef(float n, float f) => _DepthRangef(n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangefOES(float n, float f) => _DepthRangefOES(n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangex(float n, float f) => _DepthRangex(n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DepthRangexOES(float n, float f) => _DepthRangexOES(n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DetachObjectARB(int containerObj, int attachedObj) => _DetachObjectARB(containerObj, attachedObj); + + // --- + + /// + /// glDetachShader detaches the shader object specified by shader from the program object specified by program. This command can be used to undo the effect of the command glAttachShader. + /// If shader has already been flagged for deletion by a call to glDeleteShader and it is not attached to any other program object, it will be deleted after it has been detached. + /// + /// Specifies the program object from which to detach the shader object. + /// Specifies the shader object to be detached. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DetachShader(uint program, uint shader) => _DetachShader(program, shader); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DetailTexFuncSGIS(TextureTarget target, int n, float[] points) => _DetailTexFuncSGIS(target, n, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DetailTexFuncSGIS(TextureTarget target, int n, void* points) => _DetailTexFuncSGIS_ptr(target, n, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DetailTexFuncSGIS(TextureTarget target, int n, IntPtr points) => _DetailTexFuncSGIS_intptr(target, n, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Disable(EnableCap cap) => _Disable(cap); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableClientState(EnableCap array) => _DisableClientState(array); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableClientStateIndexedEXT(EnableCap array, uint index) => _DisableClientStateIndexedEXT(array, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableClientStateiEXT(EnableCap array, uint index) => _DisableClientStateiEXT(array, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableDriverControlQCOM(uint driverControl) => _DisableDriverControlQCOM(driverControl); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableIndexedEXT(EnableCap target, uint index) => _DisableIndexedEXT(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableVariantClientStateEXT(uint id) => _DisableVariantClientStateEXT(id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableVertexArrayAttrib(uint vaobj, uint index) => _DisableVertexArrayAttrib(vaobj, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableVertexArrayAttribEXT(uint vaobj, uint index) => _DisableVertexArrayAttribEXT(vaobj, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableVertexArrayEXT(uint vaobj, EnableCap array) => _DisableVertexArrayEXT(vaobj, array); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableVertexAttribAPPLE(uint index, int pname) => _DisableVertexAttribAPPLE(index, pname); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableVertexAttribArray(uint index) => _DisableVertexAttribArray(index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableVertexAttribArrayARB(uint index) => _DisableVertexAttribArrayARB(index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Disablei(EnableCap target, uint index) => _Disablei(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableiEXT(EnableCap target, uint index) => _DisableiEXT(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableiNV(EnableCap target, uint index) => _DisableiNV(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DisableiOES(EnableCap target, uint index) => _DisableiOES(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DiscardFramebufferEXT(FramebufferTarget target, int numAttachments, InvalidateFramebufferAttachment[] attachments) => _DiscardFramebufferEXT(target, numAttachments, attachments); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DiscardFramebufferEXT(FramebufferTarget target, int numAttachments, void* attachments) => _DiscardFramebufferEXT_ptr(target, numAttachments, attachments); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DiscardFramebufferEXT(FramebufferTarget target, int numAttachments, IntPtr attachments) => _DiscardFramebufferEXT_intptr(target, numAttachments, attachments); + + // --- + + /// + /// glDispatchCompute launches one or more compute work groups. Each work group is processed by the active program object for the compute shader stage. While the individual shader invocations within a work group are executed as a unit, work groups are executed completely independently and in unspecified order. num_groups_x, num_groups_y and num_groups_z specify the number of local work groups that will be dispatched in the X, Y and Z dimensions, respectively. + /// + /// The number of work groups to be launched in the X dimension. + /// The number of work groups to be launched in the Y dimension. + /// The number of work groups to be launched in the Z dimension. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DispatchCompute(uint num_groups_x, uint num_groups_y, uint num_groups_z) => _DispatchCompute(num_groups_x, num_groups_y, num_groups_z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DispatchComputeGroupSizeARB(uint num_groups_x, uint num_groups_y, uint num_groups_z, uint group_size_x, uint group_size_y, uint group_size_z) => _DispatchComputeGroupSizeARB(num_groups_x, num_groups_y, num_groups_z, group_size_x, group_size_y, group_size_z); + + // --- + + /// + /// glDispatchComputeIndirect launches one or more compute work groups using parameters stored in the buffer object currently bound to the GL_DISPATCH_INDIRECT_BUFFER target. Each work group is processed by the active program object for the compute shader stage. While the individual shader invocations within a work group are executed as a unit, work groups are executed completely independently and in unspecified order. indirect contains the offset into the data store of the buffer object bound to the GL_DISPATCH_INDIRECT_BUFFER target at which the parameters are stored. + /// The parameters addressed by indirect are packed a structure, which takes the form (in C): typedef struct { uint num_groups_x; uint num_groups_y; uint num_groups_z; } DispatchIndirectCommand; + /// A call to glDispatchComputeIndirect is equivalent, assuming no errors are generated, to: cmd = (const DispatchIndirectCommand *)indirect; glDispatchCompute(cmd->num_groups_x, cmd->num_groups_y, cmd->num_groups_z); + /// Unlike glDispatchCompute, no error is generated if any of the num_groups_x, num_groups_y or num_groups_z members of the DispatchIndirectCommand is larger than the value of GL_MAX_COMPUTE_WORK_GROUP_COUNT for the corresponding dimension. In such circumstances, behavior is undefined and may lead to application termination. + /// + /// The offset into the buffer object currently bound to the GL_DISPATCH_INDIRECT_BUFFER buffer target at which the dispatch parameters are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DispatchComputeIndirect(IntPtr indirect) => _DispatchComputeIndirect(indirect); + + // --- + + /// + /// glDrawArrays specifies multiple geometric primitives with very few subroutine calls. Instead of calling a GL procedure to pass each individual vertex, normal, texture coordinate, edge flag, or color, you can prespecify separate arrays of vertices, normals, and colors and use them to construct a sequence of primitives with a single call to glDrawArrays. + /// When glDrawArrays is called, it uses count sequential elements from each enabled array to construct a sequence of geometric primitives, beginning with element first. mode specifies what kind of primitives are constructed and how the array elements construct those primitives. + /// Vertex attributes that are modified by glDrawArrays have an unspecified value after glDrawArrays returns. Attributes that aren't modified remain well defined. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Specifies the starting index in the enabled arrays. + /// Specifies the number of indices to be rendered. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawArrays(PrimitiveType mode, int first, int count) => _DrawArrays(mode, first, count); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawArraysEXT(PrimitiveType mode, int first, int count) => _DrawArraysEXT(mode, first, count); + + // --- + + /// + /// glDrawArraysIndirect specifies multiple geometric primitives with very few subroutine calls. glDrawArraysIndirect behaves similarly to glDrawArraysInstancedBaseInstance, execept that the parameters to glDrawArraysInstancedBaseInstance are stored in memory at the address given by indirect. + /// The parameters addressed by indirect are packed into a structure that takes the form (in C): typedef struct { uint count; uint primCount; uint first; uint baseInstance; } DrawArraysIndirectCommand; const DrawArraysIndirectCommand *cmd = (const DrawArraysIndirectCommand *)indirect; glDrawArraysInstancedBaseInstance(mode, cmd->first, cmd->count, cmd->primCount, cmd->baseInstance); + /// If a buffer is bound to the GL_DRAW_INDIRECT_BUFFER binding at the time of a call to glDrawArraysIndirect, indirect is interpreted as an offset, in basic machine units, into that buffer and the parameter data is read from the buffer rather than from client memory. + /// In contrast to glDrawArraysInstancedBaseInstance, the first member of the parameter structure is unsigned, and out-of-range indices do not generate an error. + /// Vertex attributes that are modified by glDrawArraysIndirect have an unspecified value after glDrawArraysIndirect returns. Attributes that aren't modified remain well defined. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, and GL_PATCHES are accepted. + /// Specifies the address of a structure containing the draw parameters. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawArraysIndirect(PrimitiveType mode, IntPtr indirect) => _DrawArraysIndirect(mode, indirect); + + // --- + + /// + /// glDrawArraysInstanced behaves identically to glDrawArrays except that instancecount instances of the range of elements are executed and the value of the internal counter instanceID advances for each iteration. instanceID is an internal 32-bit integer counter that may be read by a vertex shader as gl_InstanceID. + /// glDrawArraysInstanced has the same effect as: if ( mode or count is invalid ) generate appropriate error else { for (int i = 0; i < instancecount ; i++) { instanceID = i; glDrawArrays(mode, first, count); } instanceID = 0; } + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLESGL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. + /// Specifies the starting index in the enabled arrays. + /// Specifies the number of indices to be rendered. + /// Specifies the number of instances of the specified range of indices to be rendered. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawArraysInstanced(PrimitiveType mode, int first, int count, int instancecount) => _DrawArraysInstanced(mode, first, count, instancecount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawArraysInstancedANGLE(PrimitiveType mode, int first, int count, int primcount) => _DrawArraysInstancedANGLE(mode, first, count, primcount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawArraysInstancedARB(PrimitiveType mode, int first, int count, int primcount) => _DrawArraysInstancedARB(mode, first, count, primcount); + + // --- + + /// + /// glDrawArraysInstancedBaseInstance behaves identically to glDrawArrays except that instancecount instances of the range of elements are executed and the value of the internal counter instanceID advances for each iteration. instanceID is an internal 32-bit integer counter that may be read by a vertex shader as gl_InstanceID. + /// glDrawArraysInstancedBaseInstance has the same effect as: if ( mode or count is invalid ) generate appropriate error else { for (int i = 0; i < instancecount ; i++) { instanceID = i; glDrawArrays(mode, first, count); } instanceID = 0; } + /// Specific vertex attributes may be classified as instanced through the use of glVertexAttribDivisor. Instanced vertex attributes supply per-instance vertex data to the vertex shader. The index of the vertex fetched from the enabled instanced vertex attribute arrays is calculated as: . Note that baseinstance does not affect the shader-visible value of gl_InstanceID. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLESGL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. + /// Specifies the starting index in the enabled arrays. + /// Specifies the number of indices to be rendered. + /// Specifies the number of instances of the specified range of indices to be rendered. + /// Specifies the base instance for use in fetching instanced vertex attributes. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawArraysInstancedBaseInstance(PrimitiveType mode, int first, int count, int instancecount, uint baseinstance) => _DrawArraysInstancedBaseInstance(mode, first, count, instancecount, baseinstance); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawArraysInstancedBaseInstanceEXT(PrimitiveType mode, int first, int count, int instancecount, uint baseinstance) => _DrawArraysInstancedBaseInstanceEXT(mode, first, count, instancecount, baseinstance); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawArraysInstancedEXT(PrimitiveType mode, int start, int count, int primcount) => _DrawArraysInstancedEXT(mode, start, count, primcount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawArraysInstancedNV(PrimitiveType mode, int first, int count, int primcount) => _DrawArraysInstancedNV(mode, first, count, primcount); + + // --- + + /// + /// When colors are written to the frame buffer, they are written into the color buffers specified by glDrawBuffer. One of the following values can be used for default framebuffer: + /// GL_NONENo color buffers are written.GL_FRONT_LEFTOnly the front left color buffer is written.GL_FRONT_RIGHTOnly the front right color buffer is written.GL_BACK_LEFTOnly the back left color buffer is written.GL_BACK_RIGHTOnly the back right color buffer is written.GL_FRONTOnly the front left and front right color buffers are written. If there is no front right color buffer, only the front left color buffer is written.GL_BACKOnly the back left and back right color buffers are written. If there is no back right color buffer, only the back left color buffer is written.GL_LEFTOnly the front left and back left color buffers are written. If there is no back left color buffer, only the front left color buffer is written.GL_RIGHTOnly the front right and back right color buffers are written. If there is no back right color buffer, only the front right color buffer is written.GL_FRONT_AND_BACKAll the front and back color buffers (front left, front right, back left, back right) are written. If there are no back color buffers, only the front left and front right color buffers are written. If there are no right color buffers, only the front left and back left color buffers are written. If there are no right or back color buffers, only the front left color buffer is written. + /// If more than one color buffer is selected for drawing, then blending or logical operations are computed and applied independently for each color buffer and can produce different results in each buffer. + /// Monoscopic contexts include only left buffers, and stereoscopic contexts include both left and right buffers. Likewise, single-buffered contexts include only front buffers, and double-buffered contexts include both front and back buffers. The context is selected at GL initialization. + /// For framebuffer objects, GL_COLOR_ATTACHMENT$m$ and GL_NONE enums are accepted, where $m$ is a value between 0 and GL_MAX_COLOR_ATTACHMENTS. glDrawBuffer will set the draw buffer for fragment colors other than zero to GL_NONE. + /// + /// Specifies the name of the framebuffer object for glNamedFramebufferDrawBuffer function. Must be zero or the name of a framebuffer object. + /// For default framebuffer, the argument specifies up to four color buffers to be drawn into. Symbolic constants GL_NONE, GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT, GL_BACK_RIGHT, GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, and GL_FRONT_AND_BACK are accepted. The initial value is GL_FRONT for single-buffered contexts, and GL_BACK for double-buffered contexts. For framebuffer objects, GL_COLOR_ATTACHMENT$m$ and GL_NONE enums are accepted, where $m$ is a value between 0 and GL_MAX_COLOR_ATTACHMENTS. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffer(DrawBufferMode buf) => _DrawBuffer(buf); + + // --- + + /// + /// glDrawBuffers and glNamedFramebufferDrawBuffers define an array of buffers into which outputs from the fragment shader data will be written. If a fragment shader writes a value to one or more user defined output variables, then the value of each variable will be written into the buffer specified at a location within bufs corresponding to the location assigned to that user defined output. The draw buffer used for user defined outputs assigned to locations greater than or equal to n is implicitly set to GL_NONE and any data written to such an output is discarded. + /// For glDrawBuffers, the framebuffer object that is bound to the GL_DRAW_FRAMEBUFFER binding will be used. For glNamedFramebufferDrawBuffers, framebuffer is the name of the framebuffer object. If framebuffer is zero, then the default framebuffer is affected. + /// The symbolic constants contained in bufs may be any of the following: + /// GL_NONEThe fragment shader output value is not written into any color buffer.GL_FRONT_LEFTThe fragment shader output value is written into the front left color buffer.GL_FRONT_RIGHTThe fragment shader output value is written into the front right color buffer.GL_BACK_LEFTThe fragment shader output value is written into the back left color buffer.GL_BACK_RIGHTThe fragment shader output value is written into the back right color buffer.GL_COLOR_ATTACHMENTnThe fragment shader output value is written into the nth color attachment of the current framebuffer. n may range from zero to the value of GL_MAX_COLOR_ATTACHMENTS. + /// Except for GL_NONE, the preceding symbolic constants may not appear more than once in bufs. The maximum number of draw buffers supported is implementation dependent and can be queried by calling glGet with the argument GL_MAX_DRAW_BUFFERS. + /// + /// Specifies the name of the framebuffer object for glNamedFramebufferDrawBuffers. + /// Specifies the number of buffers in bufs. + /// Points to an array of symbolic constants specifying the buffers into which fragment colors or data values will be written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffers(int n, DrawBufferMode[] bufs) => _DrawBuffers(n, bufs); + + /// + /// glDrawBuffers and glNamedFramebufferDrawBuffers define an array of buffers into which outputs from the fragment shader data will be written. If a fragment shader writes a value to one or more user defined output variables, then the value of each variable will be written into the buffer specified at a location within bufs corresponding to the location assigned to that user defined output. The draw buffer used for user defined outputs assigned to locations greater than or equal to n is implicitly set to GL_NONE and any data written to such an output is discarded. + /// For glDrawBuffers, the framebuffer object that is bound to the GL_DRAW_FRAMEBUFFER binding will be used. For glNamedFramebufferDrawBuffers, framebuffer is the name of the framebuffer object. If framebuffer is zero, then the default framebuffer is affected. + /// The symbolic constants contained in bufs may be any of the following: + /// GL_NONEThe fragment shader output value is not written into any color buffer.GL_FRONT_LEFTThe fragment shader output value is written into the front left color buffer.GL_FRONT_RIGHTThe fragment shader output value is written into the front right color buffer.GL_BACK_LEFTThe fragment shader output value is written into the back left color buffer.GL_BACK_RIGHTThe fragment shader output value is written into the back right color buffer.GL_COLOR_ATTACHMENTnThe fragment shader output value is written into the nth color attachment of the current framebuffer. n may range from zero to the value of GL_MAX_COLOR_ATTACHMENTS. + /// Except for GL_NONE, the preceding symbolic constants may not appear more than once in bufs. The maximum number of draw buffers supported is implementation dependent and can be queried by calling glGet with the argument GL_MAX_DRAW_BUFFERS. + /// + /// Specifies the name of the framebuffer object for glNamedFramebufferDrawBuffers. + /// Specifies the number of buffers in bufs. + /// Points to an array of symbolic constants specifying the buffers into which fragment colors or data values will be written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffers(int n, void* bufs) => _DrawBuffers_ptr(n, bufs); + + /// + /// glDrawBuffers and glNamedFramebufferDrawBuffers define an array of buffers into which outputs from the fragment shader data will be written. If a fragment shader writes a value to one or more user defined output variables, then the value of each variable will be written into the buffer specified at a location within bufs corresponding to the location assigned to that user defined output. The draw buffer used for user defined outputs assigned to locations greater than or equal to n is implicitly set to GL_NONE and any data written to such an output is discarded. + /// For glDrawBuffers, the framebuffer object that is bound to the GL_DRAW_FRAMEBUFFER binding will be used. For glNamedFramebufferDrawBuffers, framebuffer is the name of the framebuffer object. If framebuffer is zero, then the default framebuffer is affected. + /// The symbolic constants contained in bufs may be any of the following: + /// GL_NONEThe fragment shader output value is not written into any color buffer.GL_FRONT_LEFTThe fragment shader output value is written into the front left color buffer.GL_FRONT_RIGHTThe fragment shader output value is written into the front right color buffer.GL_BACK_LEFTThe fragment shader output value is written into the back left color buffer.GL_BACK_RIGHTThe fragment shader output value is written into the back right color buffer.GL_COLOR_ATTACHMENTnThe fragment shader output value is written into the nth color attachment of the current framebuffer. n may range from zero to the value of GL_MAX_COLOR_ATTACHMENTS. + /// Except for GL_NONE, the preceding symbolic constants may not appear more than once in bufs. The maximum number of draw buffers supported is implementation dependent and can be queried by calling glGet with the argument GL_MAX_DRAW_BUFFERS. + /// + /// Specifies the name of the framebuffer object for glNamedFramebufferDrawBuffers. + /// Specifies the number of buffers in bufs. + /// Points to an array of symbolic constants specifying the buffers into which fragment colors or data values will be written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffers(int n, IntPtr bufs) => _DrawBuffers_intptr(n, bufs); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersARB(int n, DrawBufferMode[] bufs) => _DrawBuffersARB(n, bufs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersARB(int n, void* bufs) => _DrawBuffersARB_ptr(n, bufs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersARB(int n, IntPtr bufs) => _DrawBuffersARB_intptr(n, bufs); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersATI(int n, DrawBufferMode[] bufs) => _DrawBuffersATI(n, bufs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersATI(int n, void* bufs) => _DrawBuffersATI_ptr(n, bufs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersATI(int n, IntPtr bufs) => _DrawBuffersATI_intptr(n, bufs); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersEXT(int n, int[] bufs) => _DrawBuffersEXT(n, bufs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersEXT(int n, void* bufs) => _DrawBuffersEXT_ptr(n, bufs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersEXT(int n, IntPtr bufs) => _DrawBuffersEXT_intptr(n, bufs); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersIndexedEXT(int n, int[] location, int[] indices) => _DrawBuffersIndexedEXT(n, location, indices); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersIndexedEXT(int n, void* location, void* indices) => _DrawBuffersIndexedEXT_ptr(n, location, indices); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersIndexedEXT(int n, IntPtr location, IntPtr indices) => _DrawBuffersIndexedEXT_intptr(n, location, indices); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersNV(int n, int[] bufs) => _DrawBuffersNV(n, bufs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersNV(int n, void* bufs) => _DrawBuffersNV_ptr(n, bufs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawBuffersNV(int n, IntPtr bufs) => _DrawBuffersNV_intptr(n, bufs); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawCommandsAddressNV(int primitiveMode, UInt64[] indirects, int[] sizes, uint count) => _DrawCommandsAddressNV(primitiveMode, indirects, sizes, count); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawCommandsAddressNV(int primitiveMode, void* indirects, void* sizes, uint count) => _DrawCommandsAddressNV_ptr(primitiveMode, indirects, sizes, count); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawCommandsAddressNV(int primitiveMode, IntPtr indirects, IntPtr sizes, uint count) => _DrawCommandsAddressNV_intptr(primitiveMode, indirects, sizes, count); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawCommandsNV(int primitiveMode, uint buffer, IntPtr[] indirects, int[] sizes, uint count) => _DrawCommandsNV(primitiveMode, buffer, indirects, sizes, count); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawCommandsNV(int primitiveMode, uint buffer, void* indirects, void* sizes, uint count) => _DrawCommandsNV_ptr(primitiveMode, buffer, indirects, sizes, count); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawCommandsNV(int primitiveMode, uint buffer, IntPtr indirects, IntPtr sizes, uint count) => _DrawCommandsNV_intptr(primitiveMode, buffer, indirects, sizes, count); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawCommandsStatesAddressNV(UInt64[] indirects, int[] sizes, uint[] states, uint[] fbos, uint count) => _DrawCommandsStatesAddressNV(indirects, sizes, states, fbos, count); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawCommandsStatesAddressNV(void* indirects, void* sizes, void* states, void* fbos, uint count) => _DrawCommandsStatesAddressNV_ptr(indirects, sizes, states, fbos, count); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawCommandsStatesAddressNV(IntPtr indirects, IntPtr sizes, IntPtr states, IntPtr fbos, uint count) => _DrawCommandsStatesAddressNV_intptr(indirects, sizes, states, fbos, count); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawCommandsStatesNV(uint buffer, IntPtr[] indirects, int[] sizes, uint[] states, uint[] fbos, uint count) => _DrawCommandsStatesNV(buffer, indirects, sizes, states, fbos, count); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawCommandsStatesNV(uint buffer, void* indirects, void* sizes, void* states, void* fbos, uint count) => _DrawCommandsStatesNV_ptr(buffer, indirects, sizes, states, fbos, count); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawCommandsStatesNV(uint buffer, IntPtr indirects, IntPtr sizes, IntPtr states, IntPtr fbos, uint count) => _DrawCommandsStatesNV_intptr(buffer, indirects, sizes, states, fbos, count); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementArrayAPPLE(PrimitiveType mode, int first, int count) => _DrawElementArrayAPPLE(mode, first, count); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementArrayATI(PrimitiveType mode, int count) => _DrawElementArrayATI(mode, count); + + // --- + + /// + /// glDrawElements specifies multiple geometric primitives with very few subroutine calls. Instead of calling a GL function to pass each individual vertex, normal, texture coordinate, edge flag, or color, you can prespecify separate arrays of vertices, normals, and so on, and use them to construct a sequence of primitives with a single call to glDrawElements. + /// When glDrawElements is called, it uses count sequential elements from an enabled array, starting at indices to construct a sequence of geometric primitives. mode specifies what kind of primitives are constructed and how the array elements construct these primitives. If more than one array is enabled, each is used. + /// Vertex attributes that are modified by glDrawElements have an unspecified value after glDrawElements returns. Attributes that aren't modified maintain their previous values. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Specifies the number of elements to be rendered. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElements(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices) => _DrawElements(mode, count, type, indices); + + // --- + + /// + /// glDrawElementsBaseVertex behaves identically to glDrawElements except that the ith element transferred by the corresponding draw call will be taken from element indices[i] + basevertex of each enabled array. If the resulting value is larger than the maximum value representable by type, it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). The operation is undefined if the sum would be negative. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. + /// Specifies the number of elements to be rendered. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsBaseVertex(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int basevertex) => _DrawElementsBaseVertex(mode, count, type, indices, basevertex); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsBaseVertexEXT(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int basevertex) => _DrawElementsBaseVertexEXT(mode, count, type, indices, basevertex); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsBaseVertexOES(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int basevertex) => _DrawElementsBaseVertexOES(mode, count, type, indices, basevertex); + + // --- + + /// + /// glDrawElementsIndirect specifies multiple indexed geometric primitives with very few subroutine calls. glDrawElementsIndirect behaves similarly to glDrawElementsInstancedBaseVertexBaseInstance, execpt that the parameters to glDrawElementsInstancedBaseVertexBaseInstance are stored in memory at the address given by indirect. + /// The parameters addressed by indirect are packed into a structure that takes the form (in C): + /// typedef struct { uint count; uint primCount; uint firstIndex; uint baseVertex; uint baseInstance; } DrawElementsIndirectCommand; + /// glDrawElementsIndirect is equivalent to: + /// void glDrawElementsIndirect(GLenum mode, GLenum type, const void * indirect) { const DrawElementsIndirectCommand *cmd = (const DrawElementsIndirectCommand *)indirect; glDrawElementsInstancedBaseVertexBaseInstance(mode, cmd->count, type, cmd->firstIndex * size-of-type, cmd->primCount, cmd->baseVertex, cmd->baseInstance); } + /// If a buffer is bound to the GL_DRAW_INDIRECT_BUFFER binding at the time of a call to glDrawElementsIndirect, indirect is interpreted as an offset, in basic machine units, into that buffer and the parameter data is read from the buffer rather than from client memory. + /// Note that indices stored in client memory are not supported. If no buffer is bound to the GL_ELEMENT_ARRAY_BUFFER binding, an error will be generated. + /// The results of the operation are undefined if the reservedMustBeZero member of the parameter structure is non-zero. However, no error is generated in this case. + /// Vertex attributes that are modified by glDrawElementsIndirect have an unspecified value after glDrawElementsIndirect returns. Attributes that aren't modified remain well defined. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, and GL_PATCHES are accepted. + /// Specifies the type of data in the buffer bound to the GL_ELEMENT_ARRAY_BUFFER binding. + /// Specifies the address of a structure containing the draw parameters. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsIndirect(PrimitiveType mode, DrawElementsType type, IntPtr indirect) => _DrawElementsIndirect(mode, type, indirect); + + // --- + + /// + /// glDrawElementsInstanced behaves identically to glDrawElements except that instancecount instances of the set of elements are executed and the value of the internal counter instanceID advances for each iteration. instanceID is an internal 32-bit integer counter that may be read by a vertex shader as gl_InstanceID. + /// glDrawElementsInstanced has the same effect as: if (mode, count, or type is invalid ) generate appropriate error else { for (int i = 0; i < instancecount ; i++) { instanceID = i; glDrawElements(mode, count, type, indices); } instanceID = 0; } + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Specifies the number of elements to be rendered. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + /// Specifies the number of instances of the specified range of indices to be rendered. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsInstanced(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int instancecount) => _DrawElementsInstanced(mode, count, type, indices, instancecount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsInstancedANGLE(PrimitiveType mode, int count, PrimitiveType type, IntPtr indices, int primcount) => _DrawElementsInstancedANGLE(mode, count, type, indices, primcount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsInstancedARB(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int primcount) => _DrawElementsInstancedARB(mode, count, type, indices, primcount); + + // --- + + /// + /// glDrawElementsInstancedBaseInstance behaves identically to glDrawElements except that instancecount instances of the set of elements are executed and the value of the internal counter instanceID advances for each iteration. instanceID is an internal 32-bit integer counter that may be read by a vertex shader as gl_InstanceID. + /// glDrawElementsInstancedBaseInstance has the same effect as: if (mode, count, or type is invalid ) generate appropriate error else { for (int i = 0; i < instancecount ; i++) { instanceID = i; glDrawElements(mode, count, type, indices); } instanceID = 0; } + /// Specific vertex attributes may be classified as instanced through the use of glVertexAttribDivisor. Instanced vertex attributes supply per-instance vertex data to the vertex shader. The index of the vertex fetched from the enabled instanced vertex attribute arrays is calculated as . Note that baseinstance does not affect the shader-visible value of gl_InstanceID. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Specifies the number of elements to be rendered. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + /// Specifies the number of instances of the specified range of indices to be rendered. + /// Specifies the base instance for use in fetching instanced vertex attributes. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsInstancedBaseInstance(PrimitiveType mode, int count, PrimitiveType type, IntPtr indices, int instancecount, uint baseinstance) => _DrawElementsInstancedBaseInstance(mode, count, type, indices, instancecount, baseinstance); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsInstancedBaseInstanceEXT(PrimitiveType mode, int count, PrimitiveType type, IntPtr indices, int instancecount, uint baseinstance) => _DrawElementsInstancedBaseInstanceEXT(mode, count, type, indices, instancecount, baseinstance); + + // --- + + /// + /// glDrawElementsInstancedBaseVertex behaves identically to glDrawElementsInstanced except that the ith element transferred by the corresponding draw call will be taken from element indices[i] + basevertex of each enabled array. If the resulting value is larger than the maximum value representable by type, it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). The operation is undefined if the sum would be negative. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. + /// Specifies the number of elements to be rendered. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + /// Specifies the number of instances of the indexed geometry that should be drawn. + /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsInstancedBaseVertex(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int instancecount, int basevertex) => _DrawElementsInstancedBaseVertex(mode, count, type, indices, instancecount, basevertex); + + // --- + + /// + /// glDrawElementsInstancedBaseVertexBaseInstance behaves identically to glDrawElementsInstanced except that the ith element transferred by the corresponding draw call will be taken from element indices[i] + basevertex of each enabled array. If the resulting value is larger than the maximum value representable by type, it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). The operation is undefined if the sum would be negative. + /// Specific vertex attributes may be classified as instanced through the use of glVertexAttribDivisor. Instanced vertex attributes supply per-instance vertex data to the vertex shader. The index of the vertex fetched from the enabled instanced vertex attribute arrays is calculated as . Note that baseinstance does not affect the shader-visible value of gl_InstanceID. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. + /// Specifies the number of elements to be rendered. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + /// Specifies the number of instances of the indexed geometry that should be drawn. + /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays. + /// Specifies the base instance for use in fetching instanced vertex attributes. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsInstancedBaseVertexBaseInstance(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int instancecount, int basevertex, uint baseinstance) => _DrawElementsInstancedBaseVertexBaseInstance(mode, count, type, indices, instancecount, basevertex, baseinstance); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsInstancedBaseVertexBaseInstanceEXT(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int instancecount, int basevertex, uint baseinstance) => _DrawElementsInstancedBaseVertexBaseInstanceEXT(mode, count, type, indices, instancecount, basevertex, baseinstance); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsInstancedBaseVertexEXT(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int instancecount, int basevertex) => _DrawElementsInstancedBaseVertexEXT(mode, count, type, indices, instancecount, basevertex); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsInstancedBaseVertexOES(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int instancecount, int basevertex) => _DrawElementsInstancedBaseVertexOES(mode, count, type, indices, instancecount, basevertex); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsInstancedEXT(PrimitiveType mode, int count, DrawElementsType type, IntPtr indices, int primcount) => _DrawElementsInstancedEXT(mode, count, type, indices, primcount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawElementsInstancedNV(PrimitiveType mode, int count, PrimitiveType type, IntPtr indices, int primcount) => _DrawElementsInstancedNV(mode, count, type, indices, primcount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawMeshArraysSUN(PrimitiveType mode, int first, int count, int width) => _DrawMeshArraysSUN(mode, first, count, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawMeshTasksNV(uint first, uint count) => _DrawMeshTasksNV(first, count); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawMeshTasksIndirectNV(IntPtr indirect) => _DrawMeshTasksIndirectNV(indirect); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawPixels(int width, int height, PixelFormat format, PixelType type, IntPtr pixels) => _DrawPixels(width, height, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawRangeElementArrayAPPLE(PrimitiveType mode, uint start, uint end, int first, int count) => _DrawRangeElementArrayAPPLE(mode, start, end, first, count); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawRangeElementArrayATI(PrimitiveType mode, uint start, uint end, int count) => _DrawRangeElementArrayATI(mode, start, end, count); + + // --- + + /// + /// glDrawRangeElements is a restricted form of glDrawElements. mode, and count match the corresponding arguments to glDrawElements, with the additional constraint that all values in the arrays count must lie between start and end, inclusive. + /// Implementations denote recommended maximum amounts of vertex and index data, which may be queried by calling glGet with argument GL_MAX_ELEMENTS_VERTICES and GL_MAX_ELEMENTS_INDICES. If . + /// GL_INVALID_OPERATION is generated if a geometry shader is active and mode is incompatible with the input primitive type of the geometry shader in the currently installed program object. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an enabled array or the element array and the buffer object's data store is currently mapped. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Specifies the minimum array index contained in indices. + /// Specifies the maximum array index contained in indices. + /// Specifies the number of elements to be rendered. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawRangeElements(PrimitiveType mode, uint start, uint end, int count, DrawElementsType type, IntPtr indices) => _DrawRangeElements(mode, start, end, count, type, indices); + + // --- + + /// + /// glDrawRangeElementsBaseVertex is a restricted form of glDrawElementsBaseVertex. mode, count and basevertex match the corresponding arguments to glDrawElementsBaseVertex, with the additional constraint that all values in the array indices must lie between start and end, inclusive, prior to adding basevertex. Index values lying outside the range [start, end] are treated in the same way as glDrawElementsBaseVertex. The ith element transferred by the corresponding draw call will be taken from element indices[i] + basevertex of each enabled array. If the resulting value is larger than the maximum value representable by type, it is as if the calculation were upconverted to 32-bit unsigned integers (with wrapping on overflow conditions). The operation is undefined if the sum would be negative. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_LINES_ADJACENCY, GL_LINE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, GL_TRIANGLE_STRIP_ADJACENCY and GL_PATCHES are accepted. + /// Specifies the minimum array index contained in indices. + /// Specifies the maximum array index contained in indices. + /// Specifies the number of elements to be rendered. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + /// Specifies a constant that should be added to each element of indices when chosing elements from the enabled vertex arrays. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawRangeElementsBaseVertex(PrimitiveType mode, uint start, uint end, int count, DrawElementsType type, IntPtr indices, int basevertex) => _DrawRangeElementsBaseVertex(mode, start, end, count, type, indices, basevertex); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawRangeElementsBaseVertexEXT(PrimitiveType mode, uint start, uint end, int count, DrawElementsType type, IntPtr indices, int basevertex) => _DrawRangeElementsBaseVertexEXT(mode, start, end, count, type, indices, basevertex); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawRangeElementsBaseVertexOES(PrimitiveType mode, uint start, uint end, int count, DrawElementsType type, IntPtr indices, int basevertex) => _DrawRangeElementsBaseVertexOES(mode, start, end, count, type, indices, basevertex); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawRangeElementsEXT(PrimitiveType mode, uint start, uint end, int count, DrawElementsType type, IntPtr indices) => _DrawRangeElementsEXT(mode, start, end, count, type, indices); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexfOES(float x, float y, float z, float width, float height) => _DrawTexfOES(x, y, z, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexfvOES(float[] coords) => _DrawTexfvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexfvOES(void* coords) => _DrawTexfvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexfvOES(IntPtr coords) => _DrawTexfvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexiOES(int x, int y, int z, int width, int height) => _DrawTexiOES(x, y, z, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexivOES(int[] coords) => _DrawTexivOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexivOES(void* coords) => _DrawTexivOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexivOES(IntPtr coords) => _DrawTexivOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexsOES(short x, short y, short z, short width, short height) => _DrawTexsOES(x, y, z, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexsvOES(short[] coords) => _DrawTexsvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexsvOES(void* coords) => _DrawTexsvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexsvOES(IntPtr coords) => _DrawTexsvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTextureNV(uint texture, uint sampler, float x0, float y0, float x1, float y1, float z, float s0, float t0, float s1, float t1) => _DrawTextureNV(texture, sampler, x0, y0, x1, y1, z, s0, t0, s1, t1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexxOES(float x, float y, float z, float width, float height) => _DrawTexxOES(x, y, z, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexxvOES(float[] coords) => _DrawTexxvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexxvOES(void* coords) => _DrawTexxvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTexxvOES(IntPtr coords) => _DrawTexxvOES_intptr(coords); + + // --- + + /// + /// glDrawTransformFeedback draws primitives of a type specified by mode using a count retrieved from the transform feedback specified by id. Calling glDrawTransformFeedback is equivalent to calling glDrawArrays with mode as specified, first set to zero, and count set to the number of vertices captured on vertex stream zero the last time transform feedback was active on the transform feedback object named by id. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, and GL_PATCHES are accepted. + /// Specifies the name of a transform feedback object from which to retrieve a primitive count. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTransformFeedback(PrimitiveType mode, uint id) => _DrawTransformFeedback(mode, id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTransformFeedbackEXT(PrimitiveType mode, uint id) => _DrawTransformFeedbackEXT(mode, id); + + // --- + + /// + /// glDrawTransformFeedbackInstanced draws multiple copies of a range of primitives of a type specified by mode using a count retrieved from the transform feedback stream specified by stream of the transform feedback object specified by id. Calling glDrawTransformFeedbackInstanced is equivalent to calling glDrawArraysInstanced with mode and instancecount as specified, first set to zero, and count set to the number of vertices captured on vertex stream zero the last time transform feedback was active on the transform feedback object named by id. + /// Calling glDrawTransformFeedbackInstanced is equivalent to calling glDrawTransformFeedbackStreamInstanced with stream set to zero. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, and GL_PATCHES are accepted. + /// Specifies the name of a transform feedback object from which to retrieve a primitive count. + /// Specifies the number of instances of the geometry to render. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTransformFeedbackInstanced(PrimitiveType mode, uint id, int instancecount) => _DrawTransformFeedbackInstanced(mode, id, instancecount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTransformFeedbackInstancedEXT(PrimitiveType mode, uint id, int instancecount) => _DrawTransformFeedbackInstancedEXT(mode, id, instancecount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTransformFeedbackNV(PrimitiveType mode, uint id) => _DrawTransformFeedbackNV(mode, id); + + // --- + + /// + /// glDrawTransformFeedbackStream draws primitives of a type specified by mode using a count retrieved from the transform feedback stream specified by stream of the transform feedback object specified by id. Calling glDrawTransformFeedbackStream is equivalent to calling glDrawArrays with mode as specified, first set to zero, and count set to the number of vertices captured on vertex stream stream the last time transform feedback was active on the transform feedback object named by id. + /// Calling glDrawTransformFeedback is equivalent to calling glDrawTransformFeedbackStream with stream set to zero. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, and GL_PATCHES are accepted. + /// Specifies the name of a transform feedback object from which to retrieve a primitive count. + /// Specifies the index of the transform feedback stream from which to retrieve a primitive count. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTransformFeedbackStream(PrimitiveType mode, uint id, uint stream) => _DrawTransformFeedbackStream(mode, id, stream); + + // --- + + /// + /// glDrawTransformFeedbackStreamInstanced draws multiple copies of a range of primitives of a type specified by mode using a count retrieved from the transform feedback stream specified by stream of the transform feedback object specified by id. Calling glDrawTransformFeedbackStreamInstanced is equivalent to calling glDrawArraysInstanced with mode and instancecount as specified, first set to zero, and count set to the number of vertices captured on vertex stream stream the last time transform feedback was active on the transform feedback object named by id. + /// Calling glDrawTransformFeedbackInstanced is equivalent to calling glDrawTransformFeedbackStreamInstanced with stream set to zero. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, and GL_PATCHES are accepted. + /// Specifies the name of a transform feedback object from which to retrieve a primitive count. + /// Specifies the index of the transform feedback stream from which to retrieve a primitive count. + /// Specifies the number of instances of the geometry to render. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawTransformFeedbackStreamInstanced(PrimitiveType mode, uint id, uint stream, int instancecount) => _DrawTransformFeedbackStreamInstanced(mode, id, stream, instancecount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EGLImageTargetRenderbufferStorageOES(int target, IntPtr image) => _EGLImageTargetRenderbufferStorageOES(target, image); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EGLImageTargetTexStorageEXT(int target, IntPtr image, int[] attrib_list) => _EGLImageTargetTexStorageEXT(target, image, attrib_list); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EGLImageTargetTexStorageEXT(int target, IntPtr image, void* attrib_list) => _EGLImageTargetTexStorageEXT_ptr(target, image, attrib_list); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EGLImageTargetTexStorageEXT(int target, IntPtr image, IntPtr attrib_list) => _EGLImageTargetTexStorageEXT_intptr(target, image, attrib_list); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EGLImageTargetTexture2DOES(int target, IntPtr image) => _EGLImageTargetTexture2DOES(target, image); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EGLImageTargetTextureStorageEXT(uint texture, IntPtr image, int[] attrib_list) => _EGLImageTargetTextureStorageEXT(texture, image, attrib_list); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EGLImageTargetTextureStorageEXT(uint texture, IntPtr image, void* attrib_list) => _EGLImageTargetTextureStorageEXT_ptr(texture, image, attrib_list); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EGLImageTargetTextureStorageEXT(uint texture, IntPtr image, IntPtr attrib_list) => _EGLImageTargetTextureStorageEXT_intptr(texture, image, attrib_list); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EdgeFlag(bool flag) => _EdgeFlag(flag); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EdgeFlagFormatNV(int stride) => _EdgeFlagFormatNV(stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EdgeFlagPointer(int stride, IntPtr pointer) => _EdgeFlagPointer(stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EdgeFlagPointerEXT(int stride, int count, bool[] pointer) => _EdgeFlagPointerEXT(stride, count, pointer); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EdgeFlagPointerEXT(int stride, int count, void* pointer) => _EdgeFlagPointerEXT_ptr(stride, count, pointer); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EdgeFlagPointerEXT(int stride, int count, IntPtr pointer) => _EdgeFlagPointerEXT_intptr(stride, count, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EdgeFlagPointerListIBM(int stride, IntPtr* pointer, int ptrstride) => _EdgeFlagPointerListIBM(stride, pointer, ptrstride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EdgeFlagv(bool[] flag) => _EdgeFlagv(flag); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EdgeFlagv(void* flag) => _EdgeFlagv_ptr(flag); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EdgeFlagv(IntPtr flag) => _EdgeFlagv_intptr(flag); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ElementPointerAPPLE(ElementPointerTypeATI type, IntPtr pointer) => _ElementPointerAPPLE(type, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ElementPointerATI(ElementPointerTypeATI type, IntPtr pointer) => _ElementPointerATI(type, pointer); + + // --- + + /// + /// glEnable and glDisable enable and disable various capabilities. Use glIsEnabled or glGet to determine the current setting of any capability. The initial value for each capability with the exception of GL_DITHER and GL_MULTISAMPLE is GL_FALSE. The initial value for GL_DITHER and GL_MULTISAMPLE is GL_TRUE. + /// Both glEnable and glDisable take a single argument, cap, which can assume one of the following values: + /// Some of the GL's capabilities are indexed. glEnablei and glDisablei enable and disable indexed capabilities. + /// GL_BLEND If enabled, blend the computed fragment color values with the values in the color buffers. See glBlendFunc. GL_CLIP_DISTANCEi If enabled, clip geometry against user-defined half space i. GL_COLOR_LOGIC_OP If enabled, apply the currently selected logical operation to the computed fragment color and color buffer values. See glLogicOp. GL_CULL_FACE If enabled, cull polygons based on their winding in window coordinates. See glCullFace. GL_DEBUG_OUTPUT If enabled, debug messages are produced by a debug context. When disabled, the debug message log is silenced. Note that in a non-debug context, very few, if any messages might be produced, even when GL_DEBUG_OUTPUT is enabled. GL_DEBUG_OUTPUT_SYNCHRONOUS If enabled, debug messages are produced synchronously by a debug context. If disabled, debug messages may be produced asynchronously. In particular, they may be delayed relative to the execution of GL commands, and the debug callback function may be called from a thread other than that in which the commands are executed. See glDebugMessageCallback. GL_DEPTH_CLAMP If enabled, the where n is equal to 8 for GL_UNSIGNED_BYTE, 16 for GL_UNSIGNED_SHORT and 32 for GL_UNSIGNED_INT. GL_RASTERIZER_DISCARD If enabled, primitives are discarded after the optional transform feedback stage, but before rasterization. Furthermore, when enabled, glClear, glClearBufferData, glClearBufferSubData, glClearTexImage, and glClearTexSubImage are ignored. GL_SAMPLE_ALPHA_TO_COVERAGE If enabled, compute a temporary coverage value where each bit is determined by the alpha value at the corresponding sample location. The temporary coverage value is then ANDed with the fragment coverage value. GL_SAMPLE_ALPHA_TO_ONE If enabled, each sample alpha value is replaced by the maximum representable alpha value. GL_SAMPLE_COVERAGE If enabled, the fragment's coverage is ANDed with the temporary coverage value. If GL_SAMPLE_COVERAGE_INVERT is set to GL_TRUE, invert the coverage value. See glSampleCoverage. GL_SAMPLE_SHADING If enabled, the active fragment shader is run once for each covered sample, or at fraction of this rate as determined by the current value of GL_MIN_SAMPLE_SHADING_VALUE. See glMinSampleShading. GL_SAMPLE_MASK If enabled, the sample coverage mask generated for a fragment during rasterization will be ANDed with the value of GL_SAMPLE_MASK_VALUE before shading occurs. See glSampleMaski. GL_SCISSOR_TEST If enabled, discard fragments that are outside the scissor rectangle. See glScissor. GL_STENCIL_TEST If enabled, do stencil testing and update the stencil buffer. See glStencilFunc and glStencilOp. GL_TEXTURE_CUBE_MAP_SEAMLESS If enabled, cubemap textures are sampled such that when linearly sampling from the border between two adjacent faces, texels from both faces are used to generate the final sample value. When disabled, texels from only a single face are used to construct the final sample value. GL_PROGRAM_POINT_SIZE If enabled and a vertex or geometry shader is active, then the derived point size is taken from the (potentially clipped) shader builtin gl_PointSize and clamped to the implementation-dependent point size range. + /// + /// Specifies a symbolic constant indicating a GL capability. + /// Specifies the index of the switch to disable (for glEnablei and glDisablei only). + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Enable(EnableCap cap) => _Enable(cap); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableClientState(EnableCap array) => _EnableClientState(array); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableClientStateIndexedEXT(EnableCap array, uint index) => _EnableClientStateIndexedEXT(array, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableClientStateiEXT(EnableCap array, uint index) => _EnableClientStateiEXT(array, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableDriverControlQCOM(uint driverControl) => _EnableDriverControlQCOM(driverControl); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableIndexedEXT(EnableCap target, uint index) => _EnableIndexedEXT(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableVariantClientStateEXT(uint id) => _EnableVariantClientStateEXT(id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableVertexArrayAttrib(uint vaobj, uint index) => _EnableVertexArrayAttrib(vaobj, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableVertexArrayAttribEXT(uint vaobj, uint index) => _EnableVertexArrayAttribEXT(vaobj, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableVertexArrayEXT(uint vaobj, EnableCap array) => _EnableVertexArrayEXT(vaobj, array); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableVertexAttribAPPLE(uint index, int pname) => _EnableVertexAttribAPPLE(index, pname); + + // --- + + /// + /// glEnableVertexAttribArray and glEnableVertexArrayAttrib enable the generic vertex attribute array specified by index. glEnableVertexAttribArray uses currently bound vertex array object for the operation, whereas glEnableVertexArrayAttrib updates state of the vertex array object with ID vaobj. + /// glDisableVertexAttribArray and glDisableVertexArrayAttrib disable the generic vertex attribute array specified by index. glDisableVertexAttribArray uses currently bound vertex array object for the operation, whereas glDisableVertexArrayAttrib updates state of the vertex array object with ID vaobj. + /// By default, all client-side capabilities are disabled, including all generic vertex attribute arrays. If enabled, the values in the generic vertex attribute array will be accessed and used for rendering when calls are made to vertex array commands such as glDrawArrays, glDrawElements, glDrawRangeElements, glMultiDrawElements, or glMultiDrawArrays. + /// + /// Specifies the name of the vertex array object for glDisableVertexArrayAttrib and glEnableVertexArrayAttrib functions. + /// Specifies the index of the generic vertex attribute to be enabled or disabled. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableVertexAttribArray(uint index) => _EnableVertexAttribArray(index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableVertexAttribArrayARB(uint index) => _EnableVertexAttribArrayARB(index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Enablei(EnableCap target, uint index) => _Enablei(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableiEXT(EnableCap target, uint index) => _EnableiEXT(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableiNV(EnableCap target, uint index) => _EnableiNV(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EnableiOES(EnableCap target, uint index) => _EnableiOES(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void End() => _End(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndConditionalRender() => _EndConditionalRender(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndConditionalRenderNV() => _EndConditionalRenderNV(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndConditionalRenderNVX() => _EndConditionalRenderNVX(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndFragmentShaderATI() => _EndFragmentShaderATI(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndList() => _EndList(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndOcclusionQueryNV() => _EndOcclusionQueryNV(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndPerfMonitorAMD(uint monitor) => _EndPerfMonitorAMD(monitor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndPerfQueryINTEL(uint queryHandle) => _EndPerfQueryINTEL(queryHandle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndQuery(QueryTarget target) => _EndQuery(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndQueryARB(QueryTarget target) => _EndQueryARB(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndQueryEXT(QueryTarget target) => _EndQueryEXT(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndQueryIndexed(QueryTarget target, uint index) => _EndQueryIndexed(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndTilingQCOM(int preserveMask) => _EndTilingQCOM(preserveMask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndTransformFeedback() => _EndTransformFeedback(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndTransformFeedbackEXT() => _EndTransformFeedbackEXT(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndTransformFeedbackNV() => _EndTransformFeedbackNV(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndVertexShaderEXT() => _EndVertexShaderEXT(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EndVideoCaptureNV(uint video_capture_slot) => _EndVideoCaptureNV(video_capture_slot); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord1d(double u) => _EvalCoord1d(u); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord1dv(double[] u) => _EvalCoord1dv(u); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord1dv(void* u) => _EvalCoord1dv_ptr(u); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord1dv(IntPtr u) => _EvalCoord1dv_intptr(u); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord1f(float u) => _EvalCoord1f(u); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord1fv(float[] u) => _EvalCoord1fv(u); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord1fv(void* u) => _EvalCoord1fv_ptr(u); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord1fv(IntPtr u) => _EvalCoord1fv_intptr(u); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord1xOES(float u) => _EvalCoord1xOES(u); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord1xvOES(float[] coords) => _EvalCoord1xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord1xvOES(void* coords) => _EvalCoord1xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord1xvOES(IntPtr coords) => _EvalCoord1xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord2d(double u, double v) => _EvalCoord2d(u, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord2dv(double[] u) => _EvalCoord2dv(u); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord2dv(void* u) => _EvalCoord2dv_ptr(u); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord2dv(IntPtr u) => _EvalCoord2dv_intptr(u); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord2f(float u, float v) => _EvalCoord2f(u, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord2fv(float[] u) => _EvalCoord2fv(u); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord2fv(void* u) => _EvalCoord2fv_ptr(u); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord2fv(IntPtr u) => _EvalCoord2fv_intptr(u); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord2xOES(float u, float v) => _EvalCoord2xOES(u, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord2xvOES(float[] coords) => _EvalCoord2xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord2xvOES(void* coords) => _EvalCoord2xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalCoord2xvOES(IntPtr coords) => _EvalCoord2xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalMapsNV(EvalTargetNV target, EvalMapsModeNV mode) => _EvalMapsNV(target, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalMesh1(MeshMode1 mode, int i1, int i2) => _EvalMesh1(mode, i1, i2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalMesh2(MeshMode2 mode, int i1, int i2, int j1, int j2) => _EvalMesh2(mode, i1, i2, j1, j2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalPoint1(int i) => _EvalPoint1(i); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvalPoint2(int i, int j) => _EvalPoint2(i, j); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void EvaluateDepthValuesARB() => _EvaluateDepthValuesARB(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExecuteProgramNV(VertexAttribEnumNV target, uint id, float[] @params) => _ExecuteProgramNV(target, id, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExecuteProgramNV(VertexAttribEnumNV target, uint id, void* @params) => _ExecuteProgramNV_ptr(target, id, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExecuteProgramNV(VertexAttribEnumNV target, uint id, IntPtr @params) => _ExecuteProgramNV_intptr(target, id, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetBufferPointervQCOM(int target, IntPtr* @params) => _ExtGetBufferPointervQCOM(target, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetBuffersQCOM(uint[] buffers, int maxBuffers, out int numBuffers) => _ExtGetBuffersQCOM(buffers, maxBuffers, out numBuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetBuffersQCOM(void* buffers, int maxBuffers, out int numBuffers) => _ExtGetBuffersQCOM_ptr(buffers, maxBuffers, out numBuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetBuffersQCOM(IntPtr buffers, int maxBuffers, out int numBuffers) => _ExtGetBuffersQCOM_intptr(buffers, maxBuffers, out numBuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetFramebuffersQCOM(uint[] framebuffers, int maxFramebuffers, out int numFramebuffers) => _ExtGetFramebuffersQCOM(framebuffers, maxFramebuffers, out numFramebuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetFramebuffersQCOM(void* framebuffers, int maxFramebuffers, out int numFramebuffers) => _ExtGetFramebuffersQCOM_ptr(framebuffers, maxFramebuffers, out numFramebuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetFramebuffersQCOM(IntPtr framebuffers, int maxFramebuffers, out int numFramebuffers) => _ExtGetFramebuffersQCOM_intptr(framebuffers, maxFramebuffers, out numFramebuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetProgramBinarySourceQCOM(uint program, ShaderType shadertype, string source, int[] length) => _ExtGetProgramBinarySourceQCOM(program, shadertype, source, length); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetProgramBinarySourceQCOM(uint program, ShaderType shadertype, void* source, void* length) => _ExtGetProgramBinarySourceQCOM_ptr(program, shadertype, source, length); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetProgramBinarySourceQCOM(uint program, ShaderType shadertype, IntPtr source, IntPtr length) => _ExtGetProgramBinarySourceQCOM_intptr(program, shadertype, source, length); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetProgramsQCOM(uint[] programs, int maxPrograms, out int numPrograms) => _ExtGetProgramsQCOM(programs, maxPrograms, out numPrograms); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetProgramsQCOM(void* programs, int maxPrograms, out int numPrograms) => _ExtGetProgramsQCOM_ptr(programs, maxPrograms, out numPrograms); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetProgramsQCOM(IntPtr programs, int maxPrograms, out int numPrograms) => _ExtGetProgramsQCOM_intptr(programs, maxPrograms, out numPrograms); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetRenderbuffersQCOM(uint[] renderbuffers, int maxRenderbuffers, out int numRenderbuffers) => _ExtGetRenderbuffersQCOM(renderbuffers, maxRenderbuffers, out numRenderbuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetRenderbuffersQCOM(void* renderbuffers, int maxRenderbuffers, out int numRenderbuffers) => _ExtGetRenderbuffersQCOM_ptr(renderbuffers, maxRenderbuffers, out numRenderbuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetRenderbuffersQCOM(IntPtr renderbuffers, int maxRenderbuffers, out int numRenderbuffers) => _ExtGetRenderbuffersQCOM_intptr(renderbuffers, maxRenderbuffers, out numRenderbuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetShadersQCOM(uint[] shaders, int maxShaders, out int numShaders) => _ExtGetShadersQCOM(shaders, maxShaders, out numShaders); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetShadersQCOM(void* shaders, int maxShaders, out int numShaders) => _ExtGetShadersQCOM_ptr(shaders, maxShaders, out numShaders); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetShadersQCOM(IntPtr shaders, int maxShaders, out int numShaders) => _ExtGetShadersQCOM_intptr(shaders, maxShaders, out numShaders); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetTexLevelParameterivQCOM(uint texture, int face, int level, int pname, int[] @params) => _ExtGetTexLevelParameterivQCOM(texture, face, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetTexLevelParameterivQCOM(uint texture, int face, int level, int pname, void* @params) => _ExtGetTexLevelParameterivQCOM_ptr(texture, face, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetTexLevelParameterivQCOM(uint texture, int face, int level, int pname, IntPtr @params) => _ExtGetTexLevelParameterivQCOM_intptr(texture, face, level, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetTexSubImageQCOM(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr texels) => _ExtGetTexSubImageQCOM(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, texels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetTexturesQCOM(uint[] textures, int maxTextures, int[] numTextures) => _ExtGetTexturesQCOM(textures, maxTextures, numTextures); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetTexturesQCOM(void* textures, int maxTextures, void* numTextures) => _ExtGetTexturesQCOM_ptr(textures, maxTextures, numTextures); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtGetTexturesQCOM(IntPtr textures, int maxTextures, IntPtr numTextures) => _ExtGetTexturesQCOM_intptr(textures, maxTextures, numTextures); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool ExtIsProgramBinaryQCOM(uint program) => _ExtIsProgramBinaryQCOM(program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtTexObjectStateOverrideiQCOM(int target, int pname, int param) => _ExtTexObjectStateOverrideiQCOM(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ExtractComponentEXT(uint res, uint src, uint num) => _ExtractComponentEXT(res, src, num); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FeedbackBuffer(int size, FeedbackType type, float[] buffer) => _FeedbackBuffer(size, type, buffer); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FeedbackBuffer(int size, FeedbackType type, void* buffer) => _FeedbackBuffer_ptr(size, type, buffer); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FeedbackBuffer(int size, FeedbackType type, IntPtr buffer) => _FeedbackBuffer_intptr(size, type, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FeedbackBufferxOES(int n, int type, float[] buffer) => _FeedbackBufferxOES(n, type, buffer); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FeedbackBufferxOES(int n, int type, void* buffer) => _FeedbackBufferxOES_ptr(n, type, buffer); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FeedbackBufferxOES(int n, int type, IntPtr buffer) => _FeedbackBufferxOES_intptr(n, type, buffer); + + // --- + + /// + /// glFenceSync creates a new fence sync object, inserts a fence command into the GL command stream and associates it with that sync object, and returns a non-zero name corresponding to the sync object. + /// When the specified condition of the sync object is satisfied by the fence command, the sync object is signaled by the GL, causing any glWaitSync, glClientWaitSync commands blocking in sync to unblock. No other state is affected by glFenceSync or by the execution of the associated fence command. + /// condition must be GL_SYNC_GPU_COMMANDS_COMPLETE. This condition is satisfied by completion of the fence command corresponding to the sync object and all preceding commands in the same command stream. The sync object will not be signaled until all effects from these commands on GL client and server state and the framebuffer are fully realized. Note that completion of the fence command occurs once the state of the corresponding sync object has been changed, but commands waiting on that sync object may not be unblocked until after the fence command completes. + /// + /// Specifies the condition that must be met to set the sync object's state to signaled. condition must be GL_SYNC_GPU_COMMANDS_COMPLETE. + /// Specifies a bitwise combination of flags controlling the behavior of the sync object. No flags are presently defined for this operation and flags must be zero.flags is a placeholder for anticipated future extensions of fence sync object capabilities. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int FenceSync(SyncCondition condition, int flags) => _FenceSync(condition, flags); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int FenceSyncAPPLE(SyncCondition condition, int flags) => _FenceSyncAPPLE(condition, flags); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FinalCombinerInputNV(CombinerVariableNV variable, CombinerRegisterNV input, CombinerMappingNV mapping, CombinerComponentUsageNV componentUsage) => _FinalCombinerInputNV(variable, input, mapping, componentUsage); + + // --- + + /// + /// glFinish does not return until the effects of all previously called GL commands are complete. Such effects include all changes to GL state, all changes to connection state, and all changes to the frame buffer contents. + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Finish() => _Finish(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int FinishAsyncSGIX(out uint markerp) => _FinishAsyncSGIX(out markerp); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FinishFenceAPPLE(uint fence) => _FinishFenceAPPLE(fence); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FinishFenceNV(uint fence) => _FinishFenceNV(fence); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FinishObjectAPPLE(ObjectTypeAPPLE @object, int name) => _FinishObjectAPPLE(@object, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FinishTextureSUNX() => _FinishTextureSUNX(); + + // --- + + /// + /// Different GL implementations buffer commands in several different locations, including network buffers and the graphics accelerator itself. glFlush empties all of these buffers, causing all issued commands to be executed as quickly as they are accepted by the actual rendering engine. Though this execution may not be completed in any particular time period, it does complete in finite time. + /// Because any GL program might be executed over a network, or on an accelerator that buffers commands, all programs should call glFlush whenever they count on having all of their previously issued commands completed. For example, call glFlush before waiting for user input that depends on the generated image. + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Flush() => _Flush(); + + // --- + + /// + /// glFlushMappedBufferRange indicates that modifications have been made to a range of a mapped buffer object. The buffer object must previously have been mapped with the GL_MAP_FLUSH_EXPLICIT_BIT flag. + /// offset and length indicate the modified subrange of the mapping, in basic machine units. The specified subrange to flush is relative to the start of the currently mapped range of the buffer. These commands may be called multiple times to indicate distinct subranges of the mapping which require flushing. + /// If a buffer range is mapped with both GL_MAP_PERSISTENT_BIT and GL_MAP_FLUSH_EXPLICIT_BIT set, then these commands may be called to ensure that data written by the client into the flushed region becomes visible to the server. Data written to a coherent store will always become visible to the server after an unspecified period of time. + /// + /// Specifies the target to which the buffer object is bound for glFlushMappedBufferRange, which must be one of the buffer binding targets in the following table: + /// Specifies the name of the buffer object for glFlushMappedNamedBufferRange. + /// Specifies the start of the buffer subrange, in basic machine units. + /// Specifies the length of the buffer subrange, in basic machine units. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FlushMappedBufferRange(BufferTargetARB target, IntPtr offset, IntPtr length) => _FlushMappedBufferRange(target, offset, length); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FlushMappedBufferRangeAPPLE(BufferTargetARB target, IntPtr offset, IntPtr size) => _FlushMappedBufferRangeAPPLE(target, offset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FlushMappedBufferRangeEXT(BufferTargetARB target, IntPtr offset, IntPtr length) => _FlushMappedBufferRangeEXT(target, offset, length); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FlushMappedNamedBufferRange(uint buffer, IntPtr offset, IntPtr length) => _FlushMappedNamedBufferRange(buffer, offset, length); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FlushMappedNamedBufferRangeEXT(uint buffer, IntPtr offset, IntPtr length) => _FlushMappedNamedBufferRangeEXT(buffer, offset, length); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FlushPixelDataRangeNV(PixelDataRangeTargetNV target) => _FlushPixelDataRangeNV(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FlushRasterSGIX() => _FlushRasterSGIX(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FlushStaticDataIBM(int target) => _FlushStaticDataIBM(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FlushVertexArrayRangeAPPLE(int length, IntPtr pointer) => _FlushVertexArrayRangeAPPLE(length, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FlushVertexArrayRangeNV() => _FlushVertexArrayRangeNV(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordFormatNV(int type, int stride) => _FogCoordFormatNV(type, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordPointer(FogPointerTypeEXT type, int stride, IntPtr pointer) => _FogCoordPointer(type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordPointerEXT(FogPointerTypeEXT type, int stride, IntPtr pointer) => _FogCoordPointerEXT(type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordPointerListIBM(FogPointerTypeIBM type, int stride, IntPtr* pointer, int ptrstride) => _FogCoordPointerListIBM(type, stride, pointer, ptrstride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordd(double coord) => _FogCoordd(coord); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoorddEXT(double coord) => _FogCoorddEXT(coord); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoorddv(double[] coord) => _FogCoorddv(coord); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoorddv(void* coord) => _FogCoorddv_ptr(coord); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoorddv(IntPtr coord) => _FogCoorddv_intptr(coord); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoorddvEXT(double[] coord) => _FogCoorddvEXT(coord); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoorddvEXT(void* coord) => _FogCoorddvEXT_ptr(coord); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoorddvEXT(IntPtr coord) => _FogCoorddvEXT_intptr(coord); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordf(float coord) => _FogCoordf(coord); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordfEXT(float coord) => _FogCoordfEXT(coord); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordfv(float[] coord) => _FogCoordfv(coord); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordfv(void* coord) => _FogCoordfv_ptr(coord); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordfv(IntPtr coord) => _FogCoordfv_intptr(coord); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordfvEXT(float[] coord) => _FogCoordfvEXT(coord); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordfvEXT(void* coord) => _FogCoordfvEXT_ptr(coord); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordfvEXT(IntPtr coord) => _FogCoordfvEXT_intptr(coord); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordhNV(float fog) => _FogCoordhNV(fog); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordhvNV(float[] fog) => _FogCoordhvNV(fog); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordhvNV(void* fog) => _FogCoordhvNV_ptr(fog); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogCoordhvNV(IntPtr fog) => _FogCoordhvNV_intptr(fog); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogFuncSGIS(int n, float[] points) => _FogFuncSGIS(n, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogFuncSGIS(int n, void* points) => _FogFuncSGIS_ptr(n, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogFuncSGIS(int n, IntPtr points) => _FogFuncSGIS_intptr(n, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Fogf(FogParameter pname, float param) => _Fogf(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Fogfv(FogParameter pname, float[] @params) => _Fogfv(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Fogfv(FogParameter pname, void* @params) => _Fogfv_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Fogfv(FogParameter pname, IntPtr @params) => _Fogfv_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Fogi(FogParameter pname, int param) => _Fogi(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Fogiv(FogParameter pname, int[] @params) => _Fogiv(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Fogiv(FogParameter pname, void* @params) => _Fogiv_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Fogiv(FogParameter pname, IntPtr @params) => _Fogiv_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Fogx(FogPName pname, float param) => _Fogx(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogxOES(FogPName pname, float param) => _FogxOES(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Fogxv(FogPName pname, float[] param) => _Fogxv(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Fogxv(FogPName pname, void* param) => _Fogxv_ptr(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Fogxv(FogPName pname, IntPtr param) => _Fogxv_intptr(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogxvOES(FogPName pname, float[] param) => _FogxvOES(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogxvOES(FogPName pname, void* param) => _FogxvOES_ptr(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FogxvOES(FogPName pname, IntPtr param) => _FogxvOES_intptr(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentColorMaterialSGIX(MaterialFace face, MaterialParameter mode) => _FragmentColorMaterialSGIX(face, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentCoverageColorNV(uint color) => _FragmentCoverageColorNV(color); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightModelfSGIX(FragmentLightModelParameterSGIX pname, float param) => _FragmentLightModelfSGIX(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightModelfvSGIX(FragmentLightModelParameterSGIX pname, float[] @params) => _FragmentLightModelfvSGIX(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightModelfvSGIX(FragmentLightModelParameterSGIX pname, void* @params) => _FragmentLightModelfvSGIX_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightModelfvSGIX(FragmentLightModelParameterSGIX pname, IntPtr @params) => _FragmentLightModelfvSGIX_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightModeliSGIX(FragmentLightModelParameterSGIX pname, int param) => _FragmentLightModeliSGIX(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightModelivSGIX(FragmentLightModelParameterSGIX pname, int[] @params) => _FragmentLightModelivSGIX(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightModelivSGIX(FragmentLightModelParameterSGIX pname, void* @params) => _FragmentLightModelivSGIX_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightModelivSGIX(FragmentLightModelParameterSGIX pname, IntPtr @params) => _FragmentLightModelivSGIX_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightfSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, float param) => _FragmentLightfSGIX(light, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightfvSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, float[] @params) => _FragmentLightfvSGIX(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightfvSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, void* @params) => _FragmentLightfvSGIX_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightfvSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, IntPtr @params) => _FragmentLightfvSGIX_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightiSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, int param) => _FragmentLightiSGIX(light, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightivSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, int[] @params) => _FragmentLightivSGIX(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightivSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, void* @params) => _FragmentLightivSGIX_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentLightivSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, IntPtr @params) => _FragmentLightivSGIX_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentMaterialfSGIX(MaterialFace face, MaterialParameter pname, float param) => _FragmentMaterialfSGIX(face, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentMaterialfvSGIX(MaterialFace face, MaterialParameter pname, float[] @params) => _FragmentMaterialfvSGIX(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentMaterialfvSGIX(MaterialFace face, MaterialParameter pname, void* @params) => _FragmentMaterialfvSGIX_ptr(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentMaterialfvSGIX(MaterialFace face, MaterialParameter pname, IntPtr @params) => _FragmentMaterialfvSGIX_intptr(face, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentMaterialiSGIX(MaterialFace face, MaterialParameter pname, int param) => _FragmentMaterialiSGIX(face, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentMaterialivSGIX(MaterialFace face, MaterialParameter pname, int[] @params) => _FragmentMaterialivSGIX(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentMaterialivSGIX(MaterialFace face, MaterialParameter pname, void* @params) => _FragmentMaterialivSGIX_ptr(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FragmentMaterialivSGIX(MaterialFace face, MaterialParameter pname, IntPtr @params) => _FragmentMaterialivSGIX_intptr(face, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FrameTerminatorGREMEDY() => _FrameTerminatorGREMEDY(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FrameZoomSGIX(int factor) => _FrameZoomSGIX(factor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferDrawBufferEXT(uint framebuffer, DrawBufferMode mode) => _FramebufferDrawBufferEXT(framebuffer, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferDrawBuffersEXT(uint framebuffer, int n, DrawBufferMode[] bufs) => _FramebufferDrawBuffersEXT(framebuffer, n, bufs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferDrawBuffersEXT(uint framebuffer, int n, void* bufs) => _FramebufferDrawBuffersEXT_ptr(framebuffer, n, bufs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferDrawBuffersEXT(uint framebuffer, int n, IntPtr bufs) => _FramebufferDrawBuffersEXT_intptr(framebuffer, n, bufs); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferFetchBarrierEXT() => _FramebufferFetchBarrierEXT(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferFetchBarrierQCOM() => _FramebufferFetchBarrierQCOM(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferFoveationConfigQCOM(uint framebuffer, uint numLayers, uint focalPointsPerLayer, uint requestedFeatures, out uint providedFeatures) => _FramebufferFoveationConfigQCOM(framebuffer, numLayers, focalPointsPerLayer, requestedFeatures, out providedFeatures); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferFoveationParametersQCOM(uint framebuffer, uint layer, uint focalPoint, float focalX, float focalY, float gainX, float gainY, float foveaArea) => _FramebufferFoveationParametersQCOM(framebuffer, layer, focalPoint, focalX, focalY, gainX, gainY, foveaArea); + + // --- + + /// + /// glFramebufferParameteri and glNamedFramebufferParameteri modify the value of the parameter named pname in the specified framebuffer object. There are no modifiable parameters of the default draw and read framebuffer, so they are not valid targets of these commands. + /// For glFramebufferParameteri, the framebuffer object is that bound to target, which must be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. + /// For glNamedFramebufferParameteri, framebuffer is the name of the framebuffer object. + /// pname specifies the parameter to be modified. The following values are accepted: + /// GL_FRAMEBUFFER_DEFAULT_WIDTHparam specifies the assumed with for a framebuffer object with no attachments. If a framebuffer has attachments then the width of those attachments is used, otherwise the value of GL_FRAMEBUFFER_DEFAULT_WIDTH is used for the framebuffer. param must be greater than or equal to zero and less than or equal to the value of GL_MAX_FRAMEBUFFER_WIDTH. GL_FRAMEBUFFER_DEFAULT_HEIGHTparam specifies the assumed height for a framebuffer object with no attachments. If a framebuffer has attachments then the height of those attachments is used, otherwise the value of GL_FRAMEBUFFER_DEFAULT_HEIGHT is used for the framebuffer. param must be greater than or equal to zero and less than or equal to the value of GL_MAX_FRAMEBUFFER_HEIGHT. GL_FRAMEBUFFER_DEFAULT_LAYERSparam specifies the assumed number of layers for a framebuffer object with no attachments. If a framebuffer has attachments then the layer count of those attachments is used, otherwise the value of GL_FRAMEBUFFER_DEFAULT_LAYERS is used for the framebuffer. param must be greater than or equal to zero and less than or equal to the value of GL_MAX_FRAMEBUFFER_LAYERS. GL_FRAMEBUFFER_DEFAULT_SAMPLESparam specifies the assumed number of samples in a framebuffer object with no attachments. If a framebuffer has attachments then the sample count of those attachments is used, otherwise the value of GL_FRAMEBUFFER_DEFAULT_SAMPLES is used for the framebuffer. param must be greater than or equal to zero and less than or equal to the value of GL_MAX_FRAMEBUFFER_SAMPLE. GL_FRAMEBUFFER_DEFAULT_FIXED_SAMPLE_LOCATIONSparam specifies whether the framebuffer should assume identical sample locations and the same number of samples for all texels in the virtual image. If param is zero, then the implementation may vary the position or the count of samples within the virtual image from pixel to pixel, otherwise it will use the same sample position and count for all pixels in the virtual image. + /// + /// Specifies the target to which the framebuffer is bound for glFramebufferParameteri. + /// Specifies the name of the framebuffer object for glNamedFramebufferParameteri. + /// Specifies the framebuffer parameter to be modified. + /// The new value for the parameter named pname. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferParameteri(FramebufferTarget target, FramebufferParameterName pname, int param) => _FramebufferParameteri(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferPixelLocalStorageSizeEXT(uint target, int size) => _FramebufferPixelLocalStorageSizeEXT(target, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferReadBufferEXT(uint framebuffer, ReadBufferMode mode) => _FramebufferReadBufferEXT(framebuffer, mode); + + // --- + + /// + /// glFramebufferRenderbuffer and glNamedFramebufferRenderbuffer attaches a renderbuffer as one of the logical buffers of the specified framebuffer object. Renderbuffers cannot be attached to the default draw and read framebuffer, so they are not valid targets of these commands. + /// For glFramebufferRenderbuffer, the framebuffer object is that bound to target, which must be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. + /// For glNamedFramebufferRenderbuffer, framebuffer is the name of the framebuffer object. + /// renderbuffertarget must be GL_RENDERBUFFER. + /// renderbuffer must be zero or the name of an existing renderbuffer object of type renderbuffertarget. If renderbuffer is not zero, then the specified renderbuffer will be used as the logical buffer identified by attachment of the specified framebuffer object. If renderbuffer is zero, then the value of renderbuffertarget is ignored. + /// attachment specifies the logical attachment of the framebuffer and must be GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMENT. i in may range from zero to the value of GL_MAX_COLOR_ATTACHMENTS minus one. Setting attachment to the value GL_DEPTH_STENCIL_ATTACHMENT is a special case causing both the depth and stencil attachments of the specified framebuffer object to be set to renderbuffer, which should have the base internal format GL_DEPTH_STENCIL. + /// The value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE for the specified attachment point is set to GL_RENDERBUFFER and the value of GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME is set to renderbuffer. All other state values of specified attachment point are set to their default values. No change is made to the state of the renderbuuffer object and any previous attachment to the attachment logical buffer of the specified framebuffer object is broken. + /// If renderbuffer is zero, these commands will detach the image, if any, identified by the specified attachment point of the specified framebuffer object. All state values of the attachment point are set to their default values. + /// + /// Specifies the target to which the framebuffer is bound for glFramebufferRenderbuffer. + /// Specifies the name of the framebuffer object for glNamedFramebufferRenderbuffer. + /// Specifies the attachment point of the framebuffer. + /// Specifies the renderbuffer target. Must be GL_RENDERBUFFER. + /// Specifies the name of an existing renderbuffer object of type renderbuffertarget to attach. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferRenderbuffer(FramebufferTarget target, FramebufferAttachment attachment, RenderbufferTarget renderbuffertarget, uint renderbuffer) => _FramebufferRenderbuffer(target, attachment, renderbuffertarget, renderbuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferRenderbufferEXT(FramebufferTarget target, FramebufferAttachment attachment, RenderbufferTarget renderbuffertarget, uint renderbuffer) => _FramebufferRenderbufferEXT(target, attachment, renderbuffertarget, renderbuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferRenderbufferOES(FramebufferTarget target, FramebufferAttachment attachment, RenderbufferTarget renderbuffertarget, uint renderbuffer) => _FramebufferRenderbufferOES(target, attachment, renderbuffertarget, renderbuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferSampleLocationsfvARB(FramebufferTarget target, uint start, int count, float[] v) => _FramebufferSampleLocationsfvARB(target, start, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferSampleLocationsfvARB(FramebufferTarget target, uint start, int count, void* v) => _FramebufferSampleLocationsfvARB_ptr(target, start, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferSampleLocationsfvARB(FramebufferTarget target, uint start, int count, IntPtr v) => _FramebufferSampleLocationsfvARB_intptr(target, start, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferSampleLocationsfvNV(FramebufferTarget target, uint start, int count, float[] v) => _FramebufferSampleLocationsfvNV(target, start, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferSampleLocationsfvNV(FramebufferTarget target, uint start, int count, void* v) => _FramebufferSampleLocationsfvNV_ptr(target, start, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferSampleLocationsfvNV(FramebufferTarget target, uint start, int count, IntPtr v) => _FramebufferSampleLocationsfvNV_intptr(target, start, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferSamplePositionsfvAMD(FramebufferTarget target, uint numsamples, uint pixelindex, float[] values) => _FramebufferSamplePositionsfvAMD(target, numsamples, pixelindex, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferSamplePositionsfvAMD(FramebufferTarget target, uint numsamples, uint pixelindex, void* values) => _FramebufferSamplePositionsfvAMD_ptr(target, numsamples, pixelindex, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferSamplePositionsfvAMD(FramebufferTarget target, uint numsamples, uint pixelindex, IntPtr values) => _FramebufferSamplePositionsfvAMD_intptr(target, numsamples, pixelindex, values); + + // --- + + /// + /// These commands attach a selected mipmap level or image of a texture object as one of the logical buffers of the specified framebuffer object. Textures cannot be attached to the default draw and read framebuffer, so they are not valid targets of these commands. + /// For all commands exceptglNamedFramebufferTexture, the framebuffer object is that bound to target, which must be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. + /// For glNamedFramebufferTexture, framebuffer is the name of the framebuffer object. + /// attachment specifies the logical attachment of the framebuffer and must be GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMENT. i in GL_COLOR_ATTACHMENTi may range from zero to the value of GL_MAX_COLOR_ATTACHMENTS minus one. Attaching a level of a texture to GL_DEPTH_STENCIL_ATTACHMENT is equivalent to attaching that level to both the GL_DEPTH_ATTACHMENTand the GL_STENCIL_ATTACHMENT attachment points simultaneously. + /// For glFramebufferTexture1D, glFramebufferTexture2D and glFramebufferTexture3D, textarget specifies what type of texture is named by texture, and for cube map textures, specifies the face that is to be attached. If texture is not zero, it must be the name of an existing texture object with effective target textarget unless it is a cube map texture, in which case textarget must be GL_TEXTURE_CUBE_MAP_POSITIVE_XGL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, or GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + /// If texture is non-zero, the specified level of the texture object named texture is attached to the framebfufer attachment point named by attachment. For glFramebufferTexture1D, glFramebufferTexture2D, and glFramebufferTexture3D, texture must be zero or the name of an existing texture with an effective target of textarget, or texture must be the name of an existing cube-map texture and textarget must be one of GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, or GL_TEXTURE_CUBE_MAP_NEGATIVE_Z. + /// If textarget is GL_TEXTURE_RECTANGLE, GL_TEXTURE_2D_MULTISAMPLE, or GL_TEXTURE_2D_MULTISAMPLE_ARRAY, then level must be zero. + /// If textarget is GL_TEXTURE_3D, then level must be greater than or equal to zero and less than or equal to $log_2$ of the value of GL_MAX_3D_TEXTURE_SIZE. + /// If textarget is one of GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, or GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, then level must be greater than or equal to zero and less than or equal to $log_2$ of the value of GL_MAX_CUBE_MAP_TEXTURE_SIZE. + /// For all other values of textarget, level must be greater than or equal to zero and less than or equal to $log_2$ of the value of GL_MAX_TEXTURE_SIZE. + /// layer specifies the layer of a 2-dimensional image within a 3-dimensional texture. + /// For glFramebufferTexture1D, if texture is not zero, then textarget must be GL_TEXTURE_1D. For glFramebufferTexture2D, if texture is not zero, textarget must be one of GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE, GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or GL_TEXTURE_2D_MULTISAMPLE. For glFramebufferTexture3D, if texture is not zero, then textarget must be GL_TEXTURE_3D. + /// For glFramebufferTexture and glNamedFramebufferTexture, if texture is the name of a three-dimensional, cube map array, cube map, one- or two-dimensional array, or two-dimensional multisample array texture, the specified texture level is an array of images, and the framebuffer attachment is considered to be layered. + /// + /// Specifies the target to which the framebuffer is bound for all commands exceptglNamedFramebufferTexture. + /// Specifies the name of the framebuffer object for glNamedFramebufferTexture. + /// Specifies the attachment point of the framebuffer. + /// For glFramebufferTexture1D, glFramebufferTexture2D and glFramebufferTexture3D, specifies what type of texture is expected in the texture parameter, or for cube map textures, which face is to be attached. + /// Specifies the name of an existing texture object to attach. + /// Specifies the mipmap level of the texture object to attach. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTexture(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level) => _FramebufferTexture(target, attachment, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTexture1D(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level) => _FramebufferTexture1D(target, attachment, textarget, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTexture1DEXT(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level) => _FramebufferTexture1DEXT(target, attachment, textarget, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTexture2D(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level) => _FramebufferTexture2D(target, attachment, textarget, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTexture2DEXT(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level) => _FramebufferTexture2DEXT(target, attachment, textarget, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTexture2DDownsampleIMG(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int xscale, int yscale) => _FramebufferTexture2DDownsampleIMG(target, attachment, textarget, texture, level, xscale, yscale); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTexture2DMultisampleEXT(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int samples) => _FramebufferTexture2DMultisampleEXT(target, attachment, textarget, texture, level, samples); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTexture2DMultisampleIMG(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int samples) => _FramebufferTexture2DMultisampleIMG(target, attachment, textarget, texture, level, samples); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTexture2DOES(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level) => _FramebufferTexture2DOES(target, attachment, textarget, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTexture3D(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int zoffset) => _FramebufferTexture3D(target, attachment, textarget, texture, level, zoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTexture3DEXT(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int zoffset) => _FramebufferTexture3DEXT(target, attachment, textarget, texture, level, zoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTexture3DOES(FramebufferTarget target, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int zoffset) => _FramebufferTexture3DOES(target, attachment, textarget, texture, level, zoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTextureARB(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level) => _FramebufferTextureARB(target, attachment, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTextureEXT(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level) => _FramebufferTextureEXT(target, attachment, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTextureFaceARB(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, TextureTarget face) => _FramebufferTextureFaceARB(target, attachment, texture, level, face); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTextureFaceEXT(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, TextureTarget face) => _FramebufferTextureFaceEXT(target, attachment, texture, level, face); + + // --- + + /// + /// glFramebufferTextureLayer and glNamedFramebufferTextureLayer attach a single layer of a three-dimensional or array texture object as one of the logical buffers of the specified framebuffer object. Textures cannot be attached to the default draw and read framebuffer, so they are not valid targets of these commands. + /// For glFramebufferTextureLayer, the framebuffer object is that bound to target, which must be GL_DRAW_FRAMEBUFFER, GL_READ_FRAMEBUFFER, or GL_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. + /// For glNamedFramebufferTextureLayer, framebuffer is the name of the framebuffer object. + /// attachment specifies the logical attachment of the framebuffer and must be GL_COLOR_ATTACHMENTi, GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENT or GL_DEPTH_STENCIL_ATTACHMENT. i in GL_COLOR_ATTACHMENTi may range from zero to the value of GL_MAX_COLOR_ATTACHMENTS minus one. Attaching a level of a texture to GL_DEPTH_STENCIL_ATTACHMENT is equivalent to attaching that level to both the GL_DEPTH_ATTACHMENTand the GL_STENCIL_ATTACHMENT attachment points simultaneously. + /// If texture is not zero, it must be the name of a three-dimensional, two-dimensional multisample array, one- or two-dimensional array, or cube map array texture. + /// If texture is a three-dimensional texture, then level must be greater than or equal to zero and less than or equal to $log_2$ of the value of GL_MAX_3D_TEXTURE_SIZE. + /// If texture is a two-dimensional array texture, then level must be greater than or equal to zero and less than or equal to $log_2$ of the value of GL_MAX_TEXTURE_SIZE. + /// For cube map textures, layer is translated into a cube map face according to $$ face = k \bmod 6. $$ For cube map array textures, layer is translated into an array layer and face according to $$ layer = \left\lfloor { layer \over 6 } \right\rfloor$$ and $$ face = k \bmod 6. $$ + /// + /// Specifies the target to which the framebuffer is bound for glFramebufferTextureLayer. + /// Specifies the name of the framebuffer object for glNamedFramebufferTextureLayer. + /// Specifies the attachment point of the framebuffer. + /// Specifies the name of an existing texture object to attach. + /// Specifies the mipmap level of the texture object to attach. + /// Specifies the layer of the texture object to attach. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTextureLayer(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, int layer) => _FramebufferTextureLayer(target, attachment, texture, level, layer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTextureLayerARB(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, int layer) => _FramebufferTextureLayerARB(target, attachment, texture, level, layer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTextureLayerEXT(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, int layer) => _FramebufferTextureLayerEXT(target, attachment, texture, level, layer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTextureLayerDownsampleIMG(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, int layer, int xscale, int yscale) => _FramebufferTextureLayerDownsampleIMG(target, attachment, texture, level, layer, xscale, yscale); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTextureMultisampleMultiviewOVR(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, int samples, int baseViewIndex, int numViews) => _FramebufferTextureMultisampleMultiviewOVR(target, attachment, texture, level, samples, baseViewIndex, numViews); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTextureMultiviewOVR(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level, int baseViewIndex, int numViews) => _FramebufferTextureMultiviewOVR(target, attachment, texture, level, baseViewIndex, numViews); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferTextureOES(FramebufferTarget target, FramebufferAttachment attachment, uint texture, int level) => _FramebufferTextureOES(target, attachment, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FreeObjectBufferATI(uint buffer) => _FreeObjectBufferATI(buffer); + + // --- + + /// + /// In a scene composed entirely of opaque closed surfaces, back-facing polygons are never visible. Eliminating these invisible polygons has the obvious benefit of speeding up the rendering of the image. To enable and disable elimination of back-facing polygons, call glEnable and glDisable with argument GL_CULL_FACE. + /// The projection of a polygon to window coordinates is said to have clockwise winding if an imaginary object following the path from its first vertex, its second vertex, and so on, to its last vertex, and finally back to its first vertex, moves in a clockwise direction about the interior of the polygon. The polygon's winding is said to be counterclockwise if the imaginary object following the same path moves in a counterclockwise direction about the interior of the polygon. glFrontFace specifies whether polygons with clockwise winding in window coordinates, or counterclockwise winding in window coordinates, are taken to be front-facing. Passing GL_CCW to mode selects counterclockwise polygons as front-facing; GL_CW selects clockwise polygons as front-facing. By default, counterclockwise polygons are taken to be front-facing. + /// + /// Specifies the orientation of front-facing polygons. GL_CW and GL_CCW are accepted. The initial value is GL_CCW. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FrontFace(FrontFaceDirection mode) => _FrontFace(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Frustum(double left, double right, double bottom, double top, double zNear, double zFar) => _Frustum(left, right, bottom, top, zNear, zFar); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Frustumf(float l, float r, float b, float t, float n, float f) => _Frustumf(l, r, b, t, n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FrustumfOES(float l, float r, float b, float t, float n, float f) => _FrustumfOES(l, r, b, t, n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Frustumx(float l, float r, float b, float t, float n, float f) => _Frustumx(l, r, b, t, n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FrustumxOES(float l, float r, float b, float t, float n, float f) => _FrustumxOES(l, r, b, t, n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GenAsyncMarkersSGIX(int range) => _GenAsyncMarkersSGIX(range); + + // --- + + /// + /// glGenBuffers returns n buffer object names in buffers. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenBuffers. + /// Buffer object names returned by a call to glGenBuffers are not returned by subsequent calls, unless they are first deleted with glDeleteBuffers. + /// No buffer objects are associated with the returned buffer object names until they are first bound by calling glBindBuffer. + /// + /// Specifies the number of buffer object names to be generated. + /// Specifies an array in which the generated buffer object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenBuffers(int n, uint[] buffers) => _GenBuffers(n, buffers); + + /// + /// glGenBuffers returns n buffer object names in buffers. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenBuffers. + /// Buffer object names returned by a call to glGenBuffers are not returned by subsequent calls, unless they are first deleted with glDeleteBuffers. + /// No buffer objects are associated with the returned buffer object names until they are first bound by calling glBindBuffer. + /// + /// Specifies the number of buffer object names to be generated. + /// Specifies an array in which the generated buffer object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenBuffers(int n, void* buffers) => _GenBuffers_ptr(n, buffers); + + /// + /// glGenBuffers returns n buffer object names in buffers. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenBuffers. + /// Buffer object names returned by a call to glGenBuffers are not returned by subsequent calls, unless they are first deleted with glDeleteBuffers. + /// No buffer objects are associated with the returned buffer object names until they are first bound by calling glBindBuffer. + /// + /// Specifies the number of buffer object names to be generated. + /// Specifies an array in which the generated buffer object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenBuffers(int n, IntPtr buffers) => _GenBuffers_intptr(n, buffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenBuffersARB(int n, uint[] buffers) => _GenBuffersARB(n, buffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenBuffersARB(int n, void* buffers) => _GenBuffersARB_ptr(n, buffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenBuffersARB(int n, IntPtr buffers) => _GenBuffersARB_intptr(n, buffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFencesAPPLE(int n, uint[] fences) => _GenFencesAPPLE(n, fences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFencesAPPLE(int n, void* fences) => _GenFencesAPPLE_ptr(n, fences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFencesAPPLE(int n, IntPtr fences) => _GenFencesAPPLE_intptr(n, fences); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFencesNV(int n, uint[] fences) => _GenFencesNV(n, fences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFencesNV(int n, void* fences) => _GenFencesNV_ptr(n, fences); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFencesNV(int n, IntPtr fences) => _GenFencesNV_intptr(n, fences); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GenFragmentShadersATI(uint range) => _GenFragmentShadersATI(range); + + // --- + + /// + /// glGenFramebuffers returns n framebuffer object names in ids. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenFramebuffers. + /// Framebuffer object names returned by a call to glGenFramebuffers are not returned by subsequent calls, unless they are first deleted with glDeleteFramebuffers. + /// The names returned in ids are marked as used, for the purposes of glGenFramebuffers only, but they acquire state and type only when they are first bound. + /// + /// Specifies the number of framebuffer object names to generate. + /// Specifies an array in which the generated framebuffer object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFramebuffers(int n, uint[] framebuffers) => _GenFramebuffers(n, framebuffers); + + /// + /// glGenFramebuffers returns n framebuffer object names in ids. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenFramebuffers. + /// Framebuffer object names returned by a call to glGenFramebuffers are not returned by subsequent calls, unless they are first deleted with glDeleteFramebuffers. + /// The names returned in ids are marked as used, for the purposes of glGenFramebuffers only, but they acquire state and type only when they are first bound. + /// + /// Specifies the number of framebuffer object names to generate. + /// Specifies an array in which the generated framebuffer object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFramebuffers(int n, void* framebuffers) => _GenFramebuffers_ptr(n, framebuffers); + + /// + /// glGenFramebuffers returns n framebuffer object names in ids. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenFramebuffers. + /// Framebuffer object names returned by a call to glGenFramebuffers are not returned by subsequent calls, unless they are first deleted with glDeleteFramebuffers. + /// The names returned in ids are marked as used, for the purposes of glGenFramebuffers only, but they acquire state and type only when they are first bound. + /// + /// Specifies the number of framebuffer object names to generate. + /// Specifies an array in which the generated framebuffer object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFramebuffers(int n, IntPtr framebuffers) => _GenFramebuffers_intptr(n, framebuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFramebuffersEXT(int n, uint[] framebuffers) => _GenFramebuffersEXT(n, framebuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFramebuffersEXT(int n, void* framebuffers) => _GenFramebuffersEXT_ptr(n, framebuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFramebuffersEXT(int n, IntPtr framebuffers) => _GenFramebuffersEXT_intptr(n, framebuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFramebuffersOES(int n, uint[] framebuffers) => _GenFramebuffersOES(n, framebuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFramebuffersOES(int n, void* framebuffers) => _GenFramebuffersOES_ptr(n, framebuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenFramebuffersOES(int n, IntPtr framebuffers) => _GenFramebuffersOES_intptr(n, framebuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GenLists(int range) => _GenLists(range); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenNamesAMD(int identifier, uint num, uint[] names) => _GenNamesAMD(identifier, num, names); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenNamesAMD(int identifier, uint num, void* names) => _GenNamesAMD_ptr(identifier, num, names); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenNamesAMD(int identifier, uint num, IntPtr names) => _GenNamesAMD_intptr(identifier, num, names); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenOcclusionQueriesNV(int n, uint[] ids) => _GenOcclusionQueriesNV(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenOcclusionQueriesNV(int n, void* ids) => _GenOcclusionQueriesNV_ptr(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenOcclusionQueriesNV(int n, IntPtr ids) => _GenOcclusionQueriesNV_intptr(n, ids); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GenPathsNV(int range) => _GenPathsNV(range); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenPerfMonitorsAMD(int n, uint[] monitors) => _GenPerfMonitorsAMD(n, monitors); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenPerfMonitorsAMD(int n, void* monitors) => _GenPerfMonitorsAMD_ptr(n, monitors); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenPerfMonitorsAMD(int n, IntPtr monitors) => _GenPerfMonitorsAMD_intptr(n, monitors); + + // --- + + /// + /// glGenProgramPipelines returns n previously unused program pipeline object names in pipelines. These names are marked as used, for the purposes of glGenProgramPipelines only, but they acquire program pipeline state only when they are first bound. + /// + /// Specifies the number of program pipeline object names to reserve. + /// Specifies an array of into which the reserved names will be written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenProgramPipelines(int n, uint[] pipelines) => _GenProgramPipelines(n, pipelines); + + /// + /// glGenProgramPipelines returns n previously unused program pipeline object names in pipelines. These names are marked as used, for the purposes of glGenProgramPipelines only, but they acquire program pipeline state only when they are first bound. + /// + /// Specifies the number of program pipeline object names to reserve. + /// Specifies an array of into which the reserved names will be written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenProgramPipelines(int n, void* pipelines) => _GenProgramPipelines_ptr(n, pipelines); + + /// + /// glGenProgramPipelines returns n previously unused program pipeline object names in pipelines. These names are marked as used, for the purposes of glGenProgramPipelines only, but they acquire program pipeline state only when they are first bound. + /// + /// Specifies the number of program pipeline object names to reserve. + /// Specifies an array of into which the reserved names will be written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenProgramPipelines(int n, IntPtr pipelines) => _GenProgramPipelines_intptr(n, pipelines); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenProgramPipelinesEXT(int n, uint[] pipelines) => _GenProgramPipelinesEXT(n, pipelines); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenProgramPipelinesEXT(int n, void* pipelines) => _GenProgramPipelinesEXT_ptr(n, pipelines); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenProgramPipelinesEXT(int n, IntPtr pipelines) => _GenProgramPipelinesEXT_intptr(n, pipelines); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenProgramsARB(int n, uint[] programs) => _GenProgramsARB(n, programs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenProgramsARB(int n, void* programs) => _GenProgramsARB_ptr(n, programs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenProgramsARB(int n, IntPtr programs) => _GenProgramsARB_intptr(n, programs); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenProgramsNV(int n, uint[] programs) => _GenProgramsNV(n, programs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenProgramsNV(int n, void* programs) => _GenProgramsNV_ptr(n, programs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenProgramsNV(int n, IntPtr programs) => _GenProgramsNV_intptr(n, programs); + + // --- + + /// + /// glGenQueries returns n query object names in ids. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenQueries. + /// Query object names returned by a call to glGenQueries are not returned by subsequent calls, unless they are first deleted with glDeleteQueries. + /// No query objects are associated with the returned query object names until they are first used by calling glBeginQuery. + /// + /// Specifies the number of query object names to be generated. + /// Specifies an array in which the generated query object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenQueries(int n, uint[] ids) => _GenQueries(n, ids); + + /// + /// glGenQueries returns n query object names in ids. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenQueries. + /// Query object names returned by a call to glGenQueries are not returned by subsequent calls, unless they are first deleted with glDeleteQueries. + /// No query objects are associated with the returned query object names until they are first used by calling glBeginQuery. + /// + /// Specifies the number of query object names to be generated. + /// Specifies an array in which the generated query object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenQueries(int n, void* ids) => _GenQueries_ptr(n, ids); + + /// + /// glGenQueries returns n query object names in ids. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenQueries. + /// Query object names returned by a call to glGenQueries are not returned by subsequent calls, unless they are first deleted with glDeleteQueries. + /// No query objects are associated with the returned query object names until they are first used by calling glBeginQuery. + /// + /// Specifies the number of query object names to be generated. + /// Specifies an array in which the generated query object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenQueries(int n, IntPtr ids) => _GenQueries_intptr(n, ids); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenQueriesARB(int n, uint[] ids) => _GenQueriesARB(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenQueriesARB(int n, void* ids) => _GenQueriesARB_ptr(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenQueriesARB(int n, IntPtr ids) => _GenQueriesARB_intptr(n, ids); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenQueriesEXT(int n, uint[] ids) => _GenQueriesEXT(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenQueriesEXT(int n, void* ids) => _GenQueriesEXT_ptr(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenQueriesEXT(int n, IntPtr ids) => _GenQueriesEXT_intptr(n, ids); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenQueryResourceTagNV(int n, int[] tagIds) => _GenQueryResourceTagNV(n, tagIds); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenQueryResourceTagNV(int n, void* tagIds) => _GenQueryResourceTagNV_ptr(n, tagIds); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenQueryResourceTagNV(int n, IntPtr tagIds) => _GenQueryResourceTagNV_intptr(n, tagIds); + + // --- + + /// + /// glGenRenderbuffers returns n renderbuffer object names in renderbuffers. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenRenderbuffers. + /// Renderbuffer object names returned by a call to glGenRenderbuffers are not returned by subsequent calls, unless they are first deleted with glDeleteRenderbuffers. + /// The names returned in renderbuffers are marked as used, for the purposes of glGenRenderbuffers only, but they acquire state and type only when they are first bound. + /// + /// Specifies the number of renderbuffer object names to generate. + /// Specifies an array in which the generated renderbuffer object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenRenderbuffers(int n, uint[] renderbuffers) => _GenRenderbuffers(n, renderbuffers); + + /// + /// glGenRenderbuffers returns n renderbuffer object names in renderbuffers. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenRenderbuffers. + /// Renderbuffer object names returned by a call to glGenRenderbuffers are not returned by subsequent calls, unless they are first deleted with glDeleteRenderbuffers. + /// The names returned in renderbuffers are marked as used, for the purposes of glGenRenderbuffers only, but they acquire state and type only when they are first bound. + /// + /// Specifies the number of renderbuffer object names to generate. + /// Specifies an array in which the generated renderbuffer object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenRenderbuffers(int n, void* renderbuffers) => _GenRenderbuffers_ptr(n, renderbuffers); + + /// + /// glGenRenderbuffers returns n renderbuffer object names in renderbuffers. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenRenderbuffers. + /// Renderbuffer object names returned by a call to glGenRenderbuffers are not returned by subsequent calls, unless they are first deleted with glDeleteRenderbuffers. + /// The names returned in renderbuffers are marked as used, for the purposes of glGenRenderbuffers only, but they acquire state and type only when they are first bound. + /// + /// Specifies the number of renderbuffer object names to generate. + /// Specifies an array in which the generated renderbuffer object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenRenderbuffers(int n, IntPtr renderbuffers) => _GenRenderbuffers_intptr(n, renderbuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenRenderbuffersEXT(int n, uint[] renderbuffers) => _GenRenderbuffersEXT(n, renderbuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenRenderbuffersEXT(int n, void* renderbuffers) => _GenRenderbuffersEXT_ptr(n, renderbuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenRenderbuffersEXT(int n, IntPtr renderbuffers) => _GenRenderbuffersEXT_intptr(n, renderbuffers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenRenderbuffersOES(int n, uint[] renderbuffers) => _GenRenderbuffersOES(n, renderbuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenRenderbuffersOES(int n, void* renderbuffers) => _GenRenderbuffersOES_ptr(n, renderbuffers); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenRenderbuffersOES(int n, IntPtr renderbuffers) => _GenRenderbuffersOES_intptr(n, renderbuffers); + + // --- + + /// + /// glGenSamplers returns n sampler object names in samplers. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenSamplers. + /// Sampler object names returned by a call to glGenSamplers are not returned by subsequent calls, unless they are first deleted with glDeleteSamplers. + /// The names returned in samplers are marked as used, for the purposes of glGenSamplers only, but they acquire state and type only when they are first bound. + /// + /// Specifies the number of sampler object names to generate. + /// Specifies an array in which the generated sampler object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenSamplers(int count, uint[] samplers) => _GenSamplers(count, samplers); + + /// + /// glGenSamplers returns n sampler object names in samplers. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenSamplers. + /// Sampler object names returned by a call to glGenSamplers are not returned by subsequent calls, unless they are first deleted with glDeleteSamplers. + /// The names returned in samplers are marked as used, for the purposes of glGenSamplers only, but they acquire state and type only when they are first bound. + /// + /// Specifies the number of sampler object names to generate. + /// Specifies an array in which the generated sampler object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenSamplers(int count, void* samplers) => _GenSamplers_ptr(count, samplers); + + /// + /// glGenSamplers returns n sampler object names in samplers. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenSamplers. + /// Sampler object names returned by a call to glGenSamplers are not returned by subsequent calls, unless they are first deleted with glDeleteSamplers. + /// The names returned in samplers are marked as used, for the purposes of glGenSamplers only, but they acquire state and type only when they are first bound. + /// + /// Specifies the number of sampler object names to generate. + /// Specifies an array in which the generated sampler object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenSamplers(int count, IntPtr samplers) => _GenSamplers_intptr(count, samplers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenSemaphoresEXT(int n, uint[] semaphores) => _GenSemaphoresEXT(n, semaphores); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenSemaphoresEXT(int n, void* semaphores) => _GenSemaphoresEXT_ptr(n, semaphores); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenSemaphoresEXT(int n, IntPtr semaphores) => _GenSemaphoresEXT_intptr(n, semaphores); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GenSymbolsEXT(DataTypeEXT datatype, VertexShaderStorageTypeEXT storagetype, ParameterRangeEXT range, uint components) => _GenSymbolsEXT(datatype, storagetype, range, components); + + // --- + + /// + /// glGenTextures returns n texture names in textures. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenTextures. + /// The generated textures have no dimensionality; they assume the dimensionality of the texture target to which they are first bound (see glBindTexture). + /// Texture names returned by a call to glGenTextures are not returned by subsequent calls, unless they are first deleted with glDeleteTextures. + /// + /// Specifies the number of texture names to be generated. + /// Specifies an array in which the generated texture names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenTextures(int n, uint[] textures) => _GenTextures(n, textures); + + /// + /// glGenTextures returns n texture names in textures. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenTextures. + /// The generated textures have no dimensionality; they assume the dimensionality of the texture target to which they are first bound (see glBindTexture). + /// Texture names returned by a call to glGenTextures are not returned by subsequent calls, unless they are first deleted with glDeleteTextures. + /// + /// Specifies the number of texture names to be generated. + /// Specifies an array in which the generated texture names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenTextures(int n, void* textures) => _GenTextures_ptr(n, textures); + + /// + /// glGenTextures returns n texture names in textures. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenTextures. + /// The generated textures have no dimensionality; they assume the dimensionality of the texture target to which they are first bound (see glBindTexture). + /// Texture names returned by a call to glGenTextures are not returned by subsequent calls, unless they are first deleted with glDeleteTextures. + /// + /// Specifies the number of texture names to be generated. + /// Specifies an array in which the generated texture names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenTextures(int n, IntPtr textures) => _GenTextures_intptr(n, textures); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenTexturesEXT(int n, uint[] textures) => _GenTexturesEXT(n, textures); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenTexturesEXT(int n, void* textures) => _GenTexturesEXT_ptr(n, textures); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenTexturesEXT(int n, IntPtr textures) => _GenTexturesEXT_intptr(n, textures); + + // --- + + /// + /// glGenTransformFeedbacks returns n previously unused transform feedback object names in ids. These names are marked as used, for the purposes of glGenTransformFeedbacks only, but they acquire transform feedback state only when they are first bound. + /// + /// Specifies the number of transform feedback object names to reserve. + /// Specifies an array of into which the reserved names will be written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenTransformFeedbacks(int n, uint[] ids) => _GenTransformFeedbacks(n, ids); + + /// + /// glGenTransformFeedbacks returns n previously unused transform feedback object names in ids. These names are marked as used, for the purposes of glGenTransformFeedbacks only, but they acquire transform feedback state only when they are first bound. + /// + /// Specifies the number of transform feedback object names to reserve. + /// Specifies an array of into which the reserved names will be written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenTransformFeedbacks(int n, void* ids) => _GenTransformFeedbacks_ptr(n, ids); + + /// + /// glGenTransformFeedbacks returns n previously unused transform feedback object names in ids. These names are marked as used, for the purposes of glGenTransformFeedbacks only, but they acquire transform feedback state only when they are first bound. + /// + /// Specifies the number of transform feedback object names to reserve. + /// Specifies an array of into which the reserved names will be written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenTransformFeedbacks(int n, IntPtr ids) => _GenTransformFeedbacks_intptr(n, ids); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenTransformFeedbacksNV(int n, uint[] ids) => _GenTransformFeedbacksNV(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenTransformFeedbacksNV(int n, void* ids) => _GenTransformFeedbacksNV_ptr(n, ids); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenTransformFeedbacksNV(int n, IntPtr ids) => _GenTransformFeedbacksNV_intptr(n, ids); + + // --- + + /// + /// glGenVertexArrays returns n vertex array object names in arrays. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenVertexArrays. + /// Vertex array object names returned by a call to glGenVertexArrays are not returned by subsequent calls, unless they are first deleted with glDeleteVertexArrays. + /// The names returned in arrays are marked as used, for the purposes of glGenVertexArrays only, but they acquire state and type only when they are first bound. + /// + /// Specifies the number of vertex array object names to generate. + /// Specifies an array in which the generated vertex array object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenVertexArrays(int n, uint[] arrays) => _GenVertexArrays(n, arrays); + + /// + /// glGenVertexArrays returns n vertex array object names in arrays. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenVertexArrays. + /// Vertex array object names returned by a call to glGenVertexArrays are not returned by subsequent calls, unless they are first deleted with glDeleteVertexArrays. + /// The names returned in arrays are marked as used, for the purposes of glGenVertexArrays only, but they acquire state and type only when they are first bound. + /// + /// Specifies the number of vertex array object names to generate. + /// Specifies an array in which the generated vertex array object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenVertexArrays(int n, void* arrays) => _GenVertexArrays_ptr(n, arrays); + + /// + /// glGenVertexArrays returns n vertex array object names in arrays. There is no guarantee that the names form a contiguous set of integers; however, it is guaranteed that none of the returned names was in use immediately before the call to glGenVertexArrays. + /// Vertex array object names returned by a call to glGenVertexArrays are not returned by subsequent calls, unless they are first deleted with glDeleteVertexArrays. + /// The names returned in arrays are marked as used, for the purposes of glGenVertexArrays only, but they acquire state and type only when they are first bound. + /// + /// Specifies the number of vertex array object names to generate. + /// Specifies an array in which the generated vertex array object names are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenVertexArrays(int n, IntPtr arrays) => _GenVertexArrays_intptr(n, arrays); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenVertexArraysAPPLE(int n, uint[] arrays) => _GenVertexArraysAPPLE(n, arrays); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenVertexArraysAPPLE(int n, void* arrays) => _GenVertexArraysAPPLE_ptr(n, arrays); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenVertexArraysAPPLE(int n, IntPtr arrays) => _GenVertexArraysAPPLE_intptr(n, arrays); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenVertexArraysOES(int n, uint[] arrays) => _GenVertexArraysOES(n, arrays); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenVertexArraysOES(int n, void* arrays) => _GenVertexArraysOES_ptr(n, arrays); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenVertexArraysOES(int n, IntPtr arrays) => _GenVertexArraysOES_intptr(n, arrays); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GenVertexShadersEXT(uint range) => _GenVertexShadersEXT(range); + + // --- + + /// + /// glGenerateMipmap and glGenerateTextureMipmap generates mipmaps for the specified texture object. For glGenerateMipmap, the texture object that is bound to target. For glGenerateTextureMipmap, texture is the name of the texture object. + /// For cube map and cube map array textures, the texture object must be cube complete or cube array complete respectively. + /// Mipmap generation replaces texel image levels $level_{base} + 1$ through $q$ with images derived from the $level_{base}$ image, regardless of their previous contents. All other mimap images, including the $level_{base}+1$ image, are left unchanged by this computation. + /// The internal formats of the derived mipmap images all match those of the $level_{base}$ image. The contents of the derived images are computed by repeated, filtered reduction of the $level_{base} + 1$ image. For one- and two-dimensional array and cube map array textures, each layer is filtered independently. + /// + /// Specifies the target to which the texture object is bound for glGenerateMipmap. Must be one of GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_CUBE_MAP, or GL_TEXTURE_CUBE_MAP_ARRAY. + /// Specifies the texture object name for glGenerateTextureMipmap. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenerateMipmap(TextureTarget target) => _GenerateMipmap(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenerateMipmapEXT(TextureTarget target) => _GenerateMipmapEXT(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenerateMipmapOES(TextureTarget target) => _GenerateMipmapOES(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenerateMultiTexMipmapEXT(TextureUnit texunit, TextureTarget target) => _GenerateMultiTexMipmapEXT(texunit, target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenerateTextureMipmap(uint texture) => _GenerateTextureMipmap(texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GenerateTextureMipmapEXT(uint texture, TextureTarget target) => _GenerateTextureMipmapEXT(texture, target); + + // --- + + /// + /// glGetActiveAtomicCounterBufferiv retrieves information about the set of active atomic counter buffers for a program object. program is the name of a program object for which the command glLinkProgram has been issued in the past. It is not necessary for program to have been linked successfully. The link may have failed because the number of active atomic counters exceeded the limits. + /// bufferIndex specifies the index of an active atomic counter buffer and must be in the range zero to the value of GL_ACTIVE_ATOMIC_COUNTER_BUFFERS minus one. The value of GL_ACTIVE_ATOMIC_COUNTER_BUFFERS for program indicates the number of active atomic counter buffer and can be queried with glGetProgram. + /// If no error occurs, the parameter(s) specified by pname are returned in params. If an error is generated, the contents of params are not modified. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_BINDING, then the index of the counter buffer binding point associated with the active atomic counter buffer bufferIndex for program is returned. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE, then the implementation-dependent minimum total buffer object size, in baseic machine units, required to hold all active atomic counters in the atomic counter binding point identified by bufferIndex is returned. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS, then the number of active atomic counters for the atomic counter buffer identified by bufferIndex is returned. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES, then a list of the active atomic counter indices for the atomic counter buffer identified by bufferIndex is returned. The number of elements that will be written into params is the value of GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS for bufferIndex. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER then a boolean value indicating whether the atomic counter buffer identified by bufferIndex is referenced by the vertex, tessellation control, tessellation evaluation, geometry, fragment or compute processing stages of program, respectively, is returned. + /// + /// The name of a program object from which to retrieve information. + /// Specifies index of an active atomic counter buffer. + /// Specifies which parameter of the atomic counter buffer to retrieve. + /// Specifies the address of a variable into which to write the retrieved information. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveAtomicCounterBufferiv(uint program, uint bufferIndex, AtomicCounterBufferPName pname, int[] @params) => _GetActiveAtomicCounterBufferiv(program, bufferIndex, pname, @params); + + /// + /// glGetActiveAtomicCounterBufferiv retrieves information about the set of active atomic counter buffers for a program object. program is the name of a program object for which the command glLinkProgram has been issued in the past. It is not necessary for program to have been linked successfully. The link may have failed because the number of active atomic counters exceeded the limits. + /// bufferIndex specifies the index of an active atomic counter buffer and must be in the range zero to the value of GL_ACTIVE_ATOMIC_COUNTER_BUFFERS minus one. The value of GL_ACTIVE_ATOMIC_COUNTER_BUFFERS for program indicates the number of active atomic counter buffer and can be queried with glGetProgram. + /// If no error occurs, the parameter(s) specified by pname are returned in params. If an error is generated, the contents of params are not modified. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_BINDING, then the index of the counter buffer binding point associated with the active atomic counter buffer bufferIndex for program is returned. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE, then the implementation-dependent minimum total buffer object size, in baseic machine units, required to hold all active atomic counters in the atomic counter binding point identified by bufferIndex is returned. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS, then the number of active atomic counters for the atomic counter buffer identified by bufferIndex is returned. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES, then a list of the active atomic counter indices for the atomic counter buffer identified by bufferIndex is returned. The number of elements that will be written into params is the value of GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS for bufferIndex. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER then a boolean value indicating whether the atomic counter buffer identified by bufferIndex is referenced by the vertex, tessellation control, tessellation evaluation, geometry, fragment or compute processing stages of program, respectively, is returned. + /// + /// The name of a program object from which to retrieve information. + /// Specifies index of an active atomic counter buffer. + /// Specifies which parameter of the atomic counter buffer to retrieve. + /// Specifies the address of a variable into which to write the retrieved information. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveAtomicCounterBufferiv(uint program, uint bufferIndex, AtomicCounterBufferPName pname, void* @params) => _GetActiveAtomicCounterBufferiv_ptr(program, bufferIndex, pname, @params); + + /// + /// glGetActiveAtomicCounterBufferiv retrieves information about the set of active atomic counter buffers for a program object. program is the name of a program object for which the command glLinkProgram has been issued in the past. It is not necessary for program to have been linked successfully. The link may have failed because the number of active atomic counters exceeded the limits. + /// bufferIndex specifies the index of an active atomic counter buffer and must be in the range zero to the value of GL_ACTIVE_ATOMIC_COUNTER_BUFFERS minus one. The value of GL_ACTIVE_ATOMIC_COUNTER_BUFFERS for program indicates the number of active atomic counter buffer and can be queried with glGetProgram. + /// If no error occurs, the parameter(s) specified by pname are returned in params. If an error is generated, the contents of params are not modified. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_BINDING, then the index of the counter buffer binding point associated with the active atomic counter buffer bufferIndex for program is returned. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_DATA_SIZE, then the implementation-dependent minimum total buffer object size, in baseic machine units, required to hold all active atomic counters in the atomic counter binding point identified by bufferIndex is returned. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS, then the number of active atomic counters for the atomic counter buffer identified by bufferIndex is returned. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTER_INDICES, then a list of the active atomic counter indices for the atomic counter buffer identified by bufferIndex is returned. The number of elements that will be written into params is the value of GL_ATOMIC_COUNTER_BUFFER_ACTIVE_ATOMIC_COUNTERS for bufferIndex. + /// If pname is GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_VERTEX_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_CONTROL_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_TESS_EVALUATION_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_GEOMETRY_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_FRAGMENT_SHADER, GL_ATOMIC_COUNTER_BUFFER_REFERENCED_BY_COMPUTE_SHADER then a boolean value indicating whether the atomic counter buffer identified by bufferIndex is referenced by the vertex, tessellation control, tessellation evaluation, geometry, fragment or compute processing stages of program, respectively, is returned. + /// + /// The name of a program object from which to retrieve information. + /// Specifies index of an active atomic counter buffer. + /// Specifies which parameter of the atomic counter buffer to retrieve. + /// Specifies the address of a variable into which to write the retrieved information. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveAtomicCounterBufferiv(uint program, uint bufferIndex, AtomicCounterBufferPName pname, IntPtr @params) => _GetActiveAtomicCounterBufferiv_intptr(program, bufferIndex, pname, @params); + + // --- + + /// + /// glGetActiveAttrib returns information about an active attribute variable in the program object specified by program. The number of active attributes can be obtained by calling glGetProgram with the value GL_ACTIVE_ATTRIBUTES. A value of 0 for index selects the first active attribute variable. Permissible values for index range from zero to the number of active attribute variables minus one. + /// A vertex shader may use either built-in attribute variables, user-defined attribute variables, or both. Built-in attribute variables have a prefix of "gl_" and reference conventional OpenGL vertex attribtes (e.g., gl_Vertex, gl_Normal, etc., see the OpenGL Shading Language specification for a complete list.) User-defined attribute variables have arbitrary names and obtain their values through numbered generic vertex attributes. An attribute variable (either built-in or user-defined) is considered active if it is determined during the link operation that it may be accessed during program execution. Therefore, program should have previously been the target of a call to glLinkProgram, but it is not necessary for it to have been linked successfully. + /// The size of the character buffer required to store the longest attribute variable name in program can be obtained by calling glGetProgram with the value GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. This value should be used to allocate a buffer of sufficient size to store the returned attribute name. The size of this character buffer is passed in bufSize, and a pointer to this character buffer is passed in name. + /// glGetActiveAttrib returns the name of the attribute variable indicated by index, storing it in the character buffer specified by name. The string returned will be null terminated. The actual number of characters written into this buffer is returned in length, and this count does not include the null termination character. If the length of the returned string is not required, a value of NULL can be passed in the length argument. + /// The type argument specifies a pointer to a variable into which the attribute variable's data type will be written. The symbolic constants GL_FLOAT, GL_FLOAT_VEC2, GL_FLOAT_VEC3, GL_FLOAT_VEC4, GL_FLOAT_MAT2, GL_FLOAT_MAT3, GL_FLOAT_MAT4, GL_FLOAT_MAT2x3, GL_FLOAT_MAT2x4, GL_FLOAT_MAT3x2, GL_FLOAT_MAT3x4, GL_FLOAT_MAT4x2, GL_FLOAT_MAT4x3, GL_INT, GL_INT_VEC2, GL_INT_VEC3, GL_INT_VEC4, GL_UNSIGNED_INT, GL_UNSIGNED_INT_VEC2, GL_UNSIGNED_INT_VEC3, GL_UNSIGNED_INT_VEC4, GL_DOUBLE, GL_DOUBLE_VEC2, GL_DOUBLE_VEC3, GL_DOUBLE_VEC4, GL_DOUBLE_MAT2, GL_DOUBLE_MAT3, GL_DOUBLE_MAT4, GL_DOUBLE_MAT2x3, GL_DOUBLE_MAT2x4, GL_DOUBLE_MAT3x2, GL_DOUBLE_MAT3x4, GL_DOUBLE_MAT4x2, or GL_DOUBLE_MAT4x3 may be returned. The size argument will return the size of the attribute, in units of the type returned in type. + /// The list of active attribute variables may include both built-in attribute variables (which begin with the prefix "gl_") as well as user-defined attribute variable names. + /// This function will return as much information as it can about the specified active attribute variable. If no information is available, length will be 0, and name will be an empty string. This situation could occur if this function is called after a link operation that failed. If an error occurs, the return values length, size, type, and name will be unmodified. + /// + /// Specifies the program object to be queried. + /// Specifies the index of the attribute variable to be queried. + /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name. + /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than NULL is passed. + /// Returns the size of the attribute variable. + /// Returns the data type of the attribute variable. + /// Returns a null terminated string containing the name of the attribute variable. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveAttrib(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, string name) => _GetActiveAttrib(program, index, bufSize, out length, out size, out type, name); + + /// + /// glGetActiveAttrib returns information about an active attribute variable in the program object specified by program. The number of active attributes can be obtained by calling glGetProgram with the value GL_ACTIVE_ATTRIBUTES. A value of 0 for index selects the first active attribute variable. Permissible values for index range from zero to the number of active attribute variables minus one. + /// A vertex shader may use either built-in attribute variables, user-defined attribute variables, or both. Built-in attribute variables have a prefix of "gl_" and reference conventional OpenGL vertex attribtes (e.g., gl_Vertex, gl_Normal, etc., see the OpenGL Shading Language specification for a complete list.) User-defined attribute variables have arbitrary names and obtain their values through numbered generic vertex attributes. An attribute variable (either built-in or user-defined) is considered active if it is determined during the link operation that it may be accessed during program execution. Therefore, program should have previously been the target of a call to glLinkProgram, but it is not necessary for it to have been linked successfully. + /// The size of the character buffer required to store the longest attribute variable name in program can be obtained by calling glGetProgram with the value GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. This value should be used to allocate a buffer of sufficient size to store the returned attribute name. The size of this character buffer is passed in bufSize, and a pointer to this character buffer is passed in name. + /// glGetActiveAttrib returns the name of the attribute variable indicated by index, storing it in the character buffer specified by name. The string returned will be null terminated. The actual number of characters written into this buffer is returned in length, and this count does not include the null termination character. If the length of the returned string is not required, a value of NULL can be passed in the length argument. + /// The type argument specifies a pointer to a variable into which the attribute variable's data type will be written. The symbolic constants GL_FLOAT, GL_FLOAT_VEC2, GL_FLOAT_VEC3, GL_FLOAT_VEC4, GL_FLOAT_MAT2, GL_FLOAT_MAT3, GL_FLOAT_MAT4, GL_FLOAT_MAT2x3, GL_FLOAT_MAT2x4, GL_FLOAT_MAT3x2, GL_FLOAT_MAT3x4, GL_FLOAT_MAT4x2, GL_FLOAT_MAT4x3, GL_INT, GL_INT_VEC2, GL_INT_VEC3, GL_INT_VEC4, GL_UNSIGNED_INT, GL_UNSIGNED_INT_VEC2, GL_UNSIGNED_INT_VEC3, GL_UNSIGNED_INT_VEC4, GL_DOUBLE, GL_DOUBLE_VEC2, GL_DOUBLE_VEC3, GL_DOUBLE_VEC4, GL_DOUBLE_MAT2, GL_DOUBLE_MAT3, GL_DOUBLE_MAT4, GL_DOUBLE_MAT2x3, GL_DOUBLE_MAT2x4, GL_DOUBLE_MAT3x2, GL_DOUBLE_MAT3x4, GL_DOUBLE_MAT4x2, or GL_DOUBLE_MAT4x3 may be returned. The size argument will return the size of the attribute, in units of the type returned in type. + /// The list of active attribute variables may include both built-in attribute variables (which begin with the prefix "gl_") as well as user-defined attribute variable names. + /// This function will return as much information as it can about the specified active attribute variable. If no information is available, length will be 0, and name will be an empty string. This situation could occur if this function is called after a link operation that failed. If an error occurs, the return values length, size, type, and name will be unmodified. + /// + /// Specifies the program object to be queried. + /// Specifies the index of the attribute variable to be queried. + /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name. + /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than NULL is passed. + /// Returns the size of the attribute variable. + /// Returns the data type of the attribute variable. + /// Returns a null terminated string containing the name of the attribute variable. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveAttrib(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, void* name) => _GetActiveAttrib_ptr(program, index, bufSize, out length, out size, out type, name); + + /// + /// glGetActiveAttrib returns information about an active attribute variable in the program object specified by program. The number of active attributes can be obtained by calling glGetProgram with the value GL_ACTIVE_ATTRIBUTES. A value of 0 for index selects the first active attribute variable. Permissible values for index range from zero to the number of active attribute variables minus one. + /// A vertex shader may use either built-in attribute variables, user-defined attribute variables, or both. Built-in attribute variables have a prefix of "gl_" and reference conventional OpenGL vertex attribtes (e.g., gl_Vertex, gl_Normal, etc., see the OpenGL Shading Language specification for a complete list.) User-defined attribute variables have arbitrary names and obtain their values through numbered generic vertex attributes. An attribute variable (either built-in or user-defined) is considered active if it is determined during the link operation that it may be accessed during program execution. Therefore, program should have previously been the target of a call to glLinkProgram, but it is not necessary for it to have been linked successfully. + /// The size of the character buffer required to store the longest attribute variable name in program can be obtained by calling glGetProgram with the value GL_ACTIVE_ATTRIBUTE_MAX_LENGTH. This value should be used to allocate a buffer of sufficient size to store the returned attribute name. The size of this character buffer is passed in bufSize, and a pointer to this character buffer is passed in name. + /// glGetActiveAttrib returns the name of the attribute variable indicated by index, storing it in the character buffer specified by name. The string returned will be null terminated. The actual number of characters written into this buffer is returned in length, and this count does not include the null termination character. If the length of the returned string is not required, a value of NULL can be passed in the length argument. + /// The type argument specifies a pointer to a variable into which the attribute variable's data type will be written. The symbolic constants GL_FLOAT, GL_FLOAT_VEC2, GL_FLOAT_VEC3, GL_FLOAT_VEC4, GL_FLOAT_MAT2, GL_FLOAT_MAT3, GL_FLOAT_MAT4, GL_FLOAT_MAT2x3, GL_FLOAT_MAT2x4, GL_FLOAT_MAT3x2, GL_FLOAT_MAT3x4, GL_FLOAT_MAT4x2, GL_FLOAT_MAT4x3, GL_INT, GL_INT_VEC2, GL_INT_VEC3, GL_INT_VEC4, GL_UNSIGNED_INT, GL_UNSIGNED_INT_VEC2, GL_UNSIGNED_INT_VEC3, GL_UNSIGNED_INT_VEC4, GL_DOUBLE, GL_DOUBLE_VEC2, GL_DOUBLE_VEC3, GL_DOUBLE_VEC4, GL_DOUBLE_MAT2, GL_DOUBLE_MAT3, GL_DOUBLE_MAT4, GL_DOUBLE_MAT2x3, GL_DOUBLE_MAT2x4, GL_DOUBLE_MAT3x2, GL_DOUBLE_MAT3x4, GL_DOUBLE_MAT4x2, or GL_DOUBLE_MAT4x3 may be returned. The size argument will return the size of the attribute, in units of the type returned in type. + /// The list of active attribute variables may include both built-in attribute variables (which begin with the prefix "gl_") as well as user-defined attribute variable names. + /// This function will return as much information as it can about the specified active attribute variable. If no information is available, length will be 0, and name will be an empty string. This situation could occur if this function is called after a link operation that failed. If an error occurs, the return values length, size, type, and name will be unmodified. + /// + /// Specifies the program object to be queried. + /// Specifies the index of the attribute variable to be queried. + /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name. + /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than NULL is passed. + /// Returns the size of the attribute variable. + /// Returns the data type of the attribute variable. + /// Returns a null terminated string containing the name of the attribute variable. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveAttrib(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, IntPtr name) => _GetActiveAttrib_intptr(program, index, bufSize, out length, out size, out type, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveAttribARB(int programObj, uint index, int maxLength, out int length, out int size, out AttributeType type, string name) => _GetActiveAttribARB(programObj, index, maxLength, out length, out size, out type, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveAttribARB(int programObj, uint index, int maxLength, out int length, out int size, out AttributeType type, void* name) => _GetActiveAttribARB_ptr(programObj, index, maxLength, out length, out size, out type, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveAttribARB(int programObj, uint index, int maxLength, out int length, out int size, out AttributeType type, IntPtr name) => _GetActiveAttribARB_intptr(programObj, index, maxLength, out length, out size, out type, name); + + // --- + + /// + /// glGetActiveSubroutineName queries the name of an active shader subroutine uniform from the program object given in program. index specifies the index of the shader subroutine uniform within the shader stage given by stage, and must between zero and the value of GL_ACTIVE_SUBROUTINES minus one for the shader stage. + /// The name of the selected subroutine is returned as a null-terminated string in name. The actual number of characters written into name, not including the null-terminator, is returned in length. If length is NULL, no length is returned. The maximum number of characters that may be written into name, including the null-terminator, is given in bufSize. + /// + /// Specifies the name of the program containing the subroutine. + /// Specifies the shader stage from which to query the subroutine name. + /// Specifies the index of the shader subroutine uniform. + /// Specifies the size of the buffer whose address is given in name. + /// Specifies the address of a variable which is to receive the length of the shader subroutine uniform name. + /// Specifies the address of an array into which the name of the shader subroutine uniform will be written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveSubroutineName(uint program, ShaderType shadertype, uint index, int bufSize, out int length, string name) => _GetActiveSubroutineName(program, shadertype, index, bufSize, out length, name); + + /// + /// glGetActiveSubroutineName queries the name of an active shader subroutine uniform from the program object given in program. index specifies the index of the shader subroutine uniform within the shader stage given by stage, and must between zero and the value of GL_ACTIVE_SUBROUTINES minus one for the shader stage. + /// The name of the selected subroutine is returned as a null-terminated string in name. The actual number of characters written into name, not including the null-terminator, is returned in length. If length is NULL, no length is returned. The maximum number of characters that may be written into name, including the null-terminator, is given in bufSize. + /// + /// Specifies the name of the program containing the subroutine. + /// Specifies the shader stage from which to query the subroutine name. + /// Specifies the index of the shader subroutine uniform. + /// Specifies the size of the buffer whose address is given in name. + /// Specifies the address of a variable which is to receive the length of the shader subroutine uniform name. + /// Specifies the address of an array into which the name of the shader subroutine uniform will be written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveSubroutineName(uint program, ShaderType shadertype, uint index, int bufSize, out int length, void* name) => _GetActiveSubroutineName_ptr(program, shadertype, index, bufSize, out length, name); + + /// + /// glGetActiveSubroutineName queries the name of an active shader subroutine uniform from the program object given in program. index specifies the index of the shader subroutine uniform within the shader stage given by stage, and must between zero and the value of GL_ACTIVE_SUBROUTINES minus one for the shader stage. + /// The name of the selected subroutine is returned as a null-terminated string in name. The actual number of characters written into name, not including the null-terminator, is returned in length. If length is NULL, no length is returned. The maximum number of characters that may be written into name, including the null-terminator, is given in bufSize. + /// + /// Specifies the name of the program containing the subroutine. + /// Specifies the shader stage from which to query the subroutine name. + /// Specifies the index of the shader subroutine uniform. + /// Specifies the size of the buffer whose address is given in name. + /// Specifies the address of a variable which is to receive the length of the shader subroutine uniform name. + /// Specifies the address of an array into which the name of the shader subroutine uniform will be written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveSubroutineName(uint program, ShaderType shadertype, uint index, int bufSize, out int length, IntPtr name) => _GetActiveSubroutineName_intptr(program, shadertype, index, bufSize, out length, name); + + // --- + + /// + /// glGetActiveSubroutineUniformName retrieves the name of an active shader subroutine uniform. program contains the name of the program containing the uniform. shadertype specifies the stage for which the uniform location, given by index, is valid. index must be between zero and the value of GL_ACTIVE_SUBROUTINE_UNIFORMS minus one for the shader stage. + /// The uniform name is returned as a null-terminated string in name. The actual number of characters written into name, excluding the null terminator is returned in length. If length is NULL, no length is returned. The maximum number of characters that may be written into name, including the null terminator, is specified by bufSize. The length of the longest subroutine uniform name in program and shadertype is given by the value of GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH, which can be queried with glGetProgramStage. + /// + /// Specifies the name of the program containing the subroutine. + /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or GL_FRAGMENT_SHADER. + /// Specifies the index of the shader subroutine uniform. + /// Specifies the size of the buffer whose address is given in name. + /// Specifies the address of a variable into which is written the number of characters copied into name. + /// Specifies the address of a buffer that will receive the name of the specified shader subroutine uniform. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveSubroutineUniformName(uint program, ShaderType shadertype, uint index, int bufSize, out int length, string name) => _GetActiveSubroutineUniformName(program, shadertype, index, bufSize, out length, name); + + /// + /// glGetActiveSubroutineUniformName retrieves the name of an active shader subroutine uniform. program contains the name of the program containing the uniform. shadertype specifies the stage for which the uniform location, given by index, is valid. index must be between zero and the value of GL_ACTIVE_SUBROUTINE_UNIFORMS minus one for the shader stage. + /// The uniform name is returned as a null-terminated string in name. The actual number of characters written into name, excluding the null terminator is returned in length. If length is NULL, no length is returned. The maximum number of characters that may be written into name, including the null terminator, is specified by bufSize. The length of the longest subroutine uniform name in program and shadertype is given by the value of GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH, which can be queried with glGetProgramStage. + /// + /// Specifies the name of the program containing the subroutine. + /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or GL_FRAGMENT_SHADER. + /// Specifies the index of the shader subroutine uniform. + /// Specifies the size of the buffer whose address is given in name. + /// Specifies the address of a variable into which is written the number of characters copied into name. + /// Specifies the address of a buffer that will receive the name of the specified shader subroutine uniform. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveSubroutineUniformName(uint program, ShaderType shadertype, uint index, int bufSize, out int length, void* name) => _GetActiveSubroutineUniformName_ptr(program, shadertype, index, bufSize, out length, name); + + /// + /// glGetActiveSubroutineUniformName retrieves the name of an active shader subroutine uniform. program contains the name of the program containing the uniform. shadertype specifies the stage for which the uniform location, given by index, is valid. index must be between zero and the value of GL_ACTIVE_SUBROUTINE_UNIFORMS minus one for the shader stage. + /// The uniform name is returned as a null-terminated string in name. The actual number of characters written into name, excluding the null terminator is returned in length. If length is NULL, no length is returned. The maximum number of characters that may be written into name, including the null terminator, is specified by bufSize. The length of the longest subroutine uniform name in program and shadertype is given by the value of GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH, which can be queried with glGetProgramStage. + /// + /// Specifies the name of the program containing the subroutine. + /// Specifies the shader stage from which to query for the subroutine parameter. shadertype must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or GL_FRAGMENT_SHADER. + /// Specifies the index of the shader subroutine uniform. + /// Specifies the size of the buffer whose address is given in name. + /// Specifies the address of a variable into which is written the number of characters copied into name. + /// Specifies the address of a buffer that will receive the name of the specified shader subroutine uniform. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveSubroutineUniformName(uint program, ShaderType shadertype, uint index, int bufSize, out int length, IntPtr name) => _GetActiveSubroutineUniformName_intptr(program, shadertype, index, bufSize, out length, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveSubroutineUniformiv(uint program, ShaderType shadertype, uint index, SubroutineParameterName pname, int[] values) => _GetActiveSubroutineUniformiv(program, shadertype, index, pname, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveSubroutineUniformiv(uint program, ShaderType shadertype, uint index, SubroutineParameterName pname, void* values) => _GetActiveSubroutineUniformiv_ptr(program, shadertype, index, pname, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveSubroutineUniformiv(uint program, ShaderType shadertype, uint index, SubroutineParameterName pname, IntPtr values) => _GetActiveSubroutineUniformiv_intptr(program, shadertype, index, pname, values); + + // --- + + /// + /// glGetActiveUniform returns information about an active uniform variable in the program object specified by program. The number of active uniform variables can be obtained by calling glGetProgram with the value GL_ACTIVE_UNIFORMS. A value of 0 for index selects the first active uniform variable. Permissible values for index range from zero to the number of active uniform variables minus one. + /// Shaders may use either built-in uniform variables, user-defined uniform variables, or both. Built-in uniform variables have a prefix of "gl_" and reference existing OpenGL state or values derived from such state (e.g., gl_DepthRangeParameters, see the OpenGL Shading Language specification for a complete list.) User-defined uniform variables have arbitrary names and obtain their values from the application through calls to glUniform. A uniform variable (either built-in or user-defined) is considered active if it is determined during the link operation that it may be accessed during program execution. Therefore, program should have previously been the target of a call to glLinkProgram, but it is not necessary for it to have been linked successfully. + /// The size of the character buffer required to store the longest uniform variable name in program can be obtained by calling glGetProgram with the value GL_ACTIVE_UNIFORM_MAX_LENGTH. This value should be used to allocate a buffer of sufficient size to store the returned uniform variable name. The size of this character buffer is passed in bufSize, and a pointer to this character buffer is passed in name. + /// glGetActiveUniform returns the name of the uniform variable indicated by index, storing it in the character buffer specified by name. The string returned will be null terminated. The actual number of characters written into this buffer is returned in length, and this count does not include the null termination character. If the length of the returned string is not required, a value of NULL can be passed in the length argument. + /// The type argument will return a pointer to the uniform variable's data type. The symbolic constants returned for uniform types are shown in the table below. Returned Symbolic Contant Shader Uniform Type GL_FLOATfloatGL_FLOAT_VEC2vec2GL_FLOAT_VEC3vec3GL_FLOAT_VEC4vec4GL_DOUBLEdoubleGL_DOUBLE_VEC2dvec2GL_DOUBLE_VEC3dvec3GL_DOUBLE_VEC4dvec4GL_INTintGL_INT_VEC2ivec2GL_INT_VEC3ivec3GL_INT_VEC4ivec4GL_UNSIGNED_INTunsigned intGL_UNSIGNED_INT_VEC2uvec2GL_UNSIGNED_INT_VEC3uvec3GL_UNSIGNED_INT_VEC4uvec4GL_BOOLboolGL_BOOL_VEC2bvec2GL_BOOL_VEC3bvec3GL_BOOL_VEC4bvec4GL_FLOAT_MAT2mat2GL_FLOAT_MAT3mat3GL_FLOAT_MAT4mat4GL_FLOAT_MAT2x3mat2x3GL_FLOAT_MAT2x4mat2x4GL_FLOAT_MAT3x2mat3x2GL_FLOAT_MAT3x4mat3x4GL_FLOAT_MAT4x2mat4x2GL_FLOAT_MAT4x3mat4x3GL_DOUBLE_MAT2dmat2GL_DOUBLE_MAT3dmat3GL_DOUBLE_MAT4dmat4GL_DOUBLE_MAT2x3dmat2x3GL_DOUBLE_MAT2x4dmat2x4GL_DOUBLE_MAT3x2dmat3x2GL_DOUBLE_MAT3x4dmat3x4GL_DOUBLE_MAT4x2dmat4x2GL_DOUBLE_MAT4x3dmat4x3GL_SAMPLER_1Dsampler1DGL_SAMPLER_2Dsampler2DGL_SAMPLER_3Dsampler3DGL_SAMPLER_CUBEsamplerCubeGL_SAMPLER_1D_SHADOWsampler1DShadowGL_SAMPLER_2D_SHADOWsampler2DShadowGL_SAMPLER_1D_ARRAYsampler1DArrayGL_SAMPLER_2D_ARRAYsampler2DArrayGL_SAMPLER_1D_ARRAY_SHADOWsampler1DArrayShadowGL_SAMPLER_2D_ARRAY_SHADOWsampler2DArrayShadowGL_SAMPLER_2D_MULTISAMPLEsampler2DMSGL_SAMPLER_2D_MULTISAMPLE_ARRAYsampler2DMSArrayGL_SAMPLER_CUBE_SHADOWsamplerCubeShadowGL_SAMPLER_BUFFERsamplerBufferGL_SAMPLER_2D_RECTsampler2DRectGL_SAMPLER_2D_RECT_SHADOWsampler2DRectShadowGL_INT_SAMPLER_1Disampler1DGL_INT_SAMPLER_2Disampler2DGL_INT_SAMPLER_3Disampler3DGL_INT_SAMPLER_CUBEisamplerCubeGL_INT_SAMPLER_1D_ARRAYisampler1DArrayGL_INT_SAMPLER_2D_ARRAYisampler2DArrayGL_INT_SAMPLER_2D_MULTISAMPLEisampler2DMSGL_INT_SAMPLER_2D_MULTISAMPLE_ARRAYisampler2DMSArrayGL_INT_SAMPLER_BUFFERisamplerBufferGL_INT_SAMPLER_2D_RECTisampler2DRectGL_UNSIGNED_INT_SAMPLER_1Dusampler1DGL_UNSIGNED_INT_SAMPLER_2Dusampler2DGL_UNSIGNED_INT_SAMPLER_3Dusampler3DGL_UNSIGNED_INT_SAMPLER_CUBEusamplerCubeGL_UNSIGNED_INT_SAMPLER_1D_ARRAYusampler2DArrayGL_UNSIGNED_INT_SAMPLER_2D_ARRAYusampler2DArrayGL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLEusampler2DMSGL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAYusampler2DMSArrayGL_UNSIGNED_INT_SAMPLER_BUFFERusamplerBufferGL_UNSIGNED_INT_SAMPLER_2D_RECTusampler2DRectGL_IMAGE_1Dimage1DGL_IMAGE_2Dimage2DGL_IMAGE_3Dimage3DGL_IMAGE_2D_RECTimage2DRectGL_IMAGE_CUBEimageCubeGL_IMAGE_BUFFERimageBufferGL_IMAGE_1D_ARRAYimage1DArrayGL_IMAGE_2D_ARRAYimage2DArrayGL_IMAGE_2D_MULTISAMPLEimage2DMSGL_IMAGE_2D_MULTISAMPLE_ARRAYimage2DMSArrayGL_INT_IMAGE_1Diimage1DGL_INT_IMAGE_2Diimage2DGL_INT_IMAGE_3Diimage3DGL_INT_IMAGE_2D_RECTiimage2DRectGL_INT_IMAGE_CUBEiimageCubeGL_INT_IMAGE_BUFFERiimageBufferGL_INT_IMAGE_1D_ARRAYiimage1DArrayGL_INT_IMAGE_2D_ARRAYiimage2DArrayGL_INT_IMAGE_2D_MULTISAMPLEiimage2DMSGL_INT_IMAGE_2D_MULTISAMPLE_ARRAYiimage2DMSArrayGL_UNSIGNED_INT_IMAGE_1Duimage1DGL_UNSIGNED_INT_IMAGE_2Duimage2DGL_UNSIGNED_INT_IMAGE_3Duimage3DGL_UNSIGNED_INT_IMAGE_2D_RECTuimage2DRectGL_UNSIGNED_INT_IMAGE_CUBEuimageCubeGL_UNSIGNED_INT_IMAGE_BUFFERuimageBufferGL_UNSIGNED_INT_IMAGE_1D_ARRAYuimage1DArrayGL_UNSIGNED_INT_IMAGE_2D_ARRAYuimage2DArrayGL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLEuimage2DMSGL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAYuimage2DMSArrayGL_UNSIGNED_INT_ATOMIC_COUNTERatomic_uint + /// If one or more elements of an array are active, the name of the array is returned in name, the type is returned in type, and the size parameter returns the highest array element index used, plus one, as determined by the compiler and/or linker. Only one active uniform variable will be reported for a uniform array. + /// Uniform variables that are declared as structures or arrays of structures will not be returned directly by this function. Instead, each of these uniform variables will be reduced to its fundamental components containing the "." and "[]" operators such that each of the names is valid as an argument to glGetUniformLocation. Each of these reduced uniform variables is counted as one active uniform variable and is assigned an index. A valid name cannot be a structure, an array of structures, or a subcomponent of a vector or matrix. + /// The size of the uniform variable will be returned in size. Uniform variables other than arrays will have a size of 1. Structures and arrays of structures will be reduced as described earlier, such that each of the names returned will be a data type in the earlier list. If this reduction results in an array, the size returned will be as described for uniform arrays; otherwise, the size returned will be 1. + /// The list of active uniform variables may include both built-in uniform variables (which begin with the prefix "gl_") as well as user-defined uniform variable names. + /// This function will return as much information as it can about the specified active uniform variable. If no information is available, length will be 0, and name will be an empty string. This situation could occur if this function is called after a link operation that failed. If an error occurs, the return values length, size, type, and name will be unmodified. + /// + /// Specifies the program object to be queried. + /// Specifies the index of the uniform variable to be queried. + /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name. + /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than NULL is passed. + /// Returns the size of the uniform variable. + /// Returns the data type of the uniform variable. + /// Returns a null terminated string containing the name of the uniform variable. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniform(uint program, uint index, int bufSize, out int length, out int size, out UniformType type, string name) => _GetActiveUniform(program, index, bufSize, out length, out size, out type, name); + + /// + /// glGetActiveUniform returns information about an active uniform variable in the program object specified by program. The number of active uniform variables can be obtained by calling glGetProgram with the value GL_ACTIVE_UNIFORMS. A value of 0 for index selects the first active uniform variable. Permissible values for index range from zero to the number of active uniform variables minus one. + /// Shaders may use either built-in uniform variables, user-defined uniform variables, or both. Built-in uniform variables have a prefix of "gl_" and reference existing OpenGL state or values derived from such state (e.g., gl_DepthRangeParameters, see the OpenGL Shading Language specification for a complete list.) User-defined uniform variables have arbitrary names and obtain their values from the application through calls to glUniform. A uniform variable (either built-in or user-defined) is considered active if it is determined during the link operation that it may be accessed during program execution. Therefore, program should have previously been the target of a call to glLinkProgram, but it is not necessary for it to have been linked successfully. + /// The size of the character buffer required to store the longest uniform variable name in program can be obtained by calling glGetProgram with the value GL_ACTIVE_UNIFORM_MAX_LENGTH. This value should be used to allocate a buffer of sufficient size to store the returned uniform variable name. The size of this character buffer is passed in bufSize, and a pointer to this character buffer is passed in name. + /// glGetActiveUniform returns the name of the uniform variable indicated by index, storing it in the character buffer specified by name. The string returned will be null terminated. The actual number of characters written into this buffer is returned in length, and this count does not include the null termination character. If the length of the returned string is not required, a value of NULL can be passed in the length argument. + /// The type argument will return a pointer to the uniform variable's data type. The symbolic constants returned for uniform types are shown in the table below. Returned Symbolic Contant Shader Uniform Type GL_FLOATfloatGL_FLOAT_VEC2vec2GL_FLOAT_VEC3vec3GL_FLOAT_VEC4vec4GL_DOUBLEdoubleGL_DOUBLE_VEC2dvec2GL_DOUBLE_VEC3dvec3GL_DOUBLE_VEC4dvec4GL_INTintGL_INT_VEC2ivec2GL_INT_VEC3ivec3GL_INT_VEC4ivec4GL_UNSIGNED_INTunsigned intGL_UNSIGNED_INT_VEC2uvec2GL_UNSIGNED_INT_VEC3uvec3GL_UNSIGNED_INT_VEC4uvec4GL_BOOLboolGL_BOOL_VEC2bvec2GL_BOOL_VEC3bvec3GL_BOOL_VEC4bvec4GL_FLOAT_MAT2mat2GL_FLOAT_MAT3mat3GL_FLOAT_MAT4mat4GL_FLOAT_MAT2x3mat2x3GL_FLOAT_MAT2x4mat2x4GL_FLOAT_MAT3x2mat3x2GL_FLOAT_MAT3x4mat3x4GL_FLOAT_MAT4x2mat4x2GL_FLOAT_MAT4x3mat4x3GL_DOUBLE_MAT2dmat2GL_DOUBLE_MAT3dmat3GL_DOUBLE_MAT4dmat4GL_DOUBLE_MAT2x3dmat2x3GL_DOUBLE_MAT2x4dmat2x4GL_DOUBLE_MAT3x2dmat3x2GL_DOUBLE_MAT3x4dmat3x4GL_DOUBLE_MAT4x2dmat4x2GL_DOUBLE_MAT4x3dmat4x3GL_SAMPLER_1Dsampler1DGL_SAMPLER_2Dsampler2DGL_SAMPLER_3Dsampler3DGL_SAMPLER_CUBEsamplerCubeGL_SAMPLER_1D_SHADOWsampler1DShadowGL_SAMPLER_2D_SHADOWsampler2DShadowGL_SAMPLER_1D_ARRAYsampler1DArrayGL_SAMPLER_2D_ARRAYsampler2DArrayGL_SAMPLER_1D_ARRAY_SHADOWsampler1DArrayShadowGL_SAMPLER_2D_ARRAY_SHADOWsampler2DArrayShadowGL_SAMPLER_2D_MULTISAMPLEsampler2DMSGL_SAMPLER_2D_MULTISAMPLE_ARRAYsampler2DMSArrayGL_SAMPLER_CUBE_SHADOWsamplerCubeShadowGL_SAMPLER_BUFFERsamplerBufferGL_SAMPLER_2D_RECTsampler2DRectGL_SAMPLER_2D_RECT_SHADOWsampler2DRectShadowGL_INT_SAMPLER_1Disampler1DGL_INT_SAMPLER_2Disampler2DGL_INT_SAMPLER_3Disampler3DGL_INT_SAMPLER_CUBEisamplerCubeGL_INT_SAMPLER_1D_ARRAYisampler1DArrayGL_INT_SAMPLER_2D_ARRAYisampler2DArrayGL_INT_SAMPLER_2D_MULTISAMPLEisampler2DMSGL_INT_SAMPLER_2D_MULTISAMPLE_ARRAYisampler2DMSArrayGL_INT_SAMPLER_BUFFERisamplerBufferGL_INT_SAMPLER_2D_RECTisampler2DRectGL_UNSIGNED_INT_SAMPLER_1Dusampler1DGL_UNSIGNED_INT_SAMPLER_2Dusampler2DGL_UNSIGNED_INT_SAMPLER_3Dusampler3DGL_UNSIGNED_INT_SAMPLER_CUBEusamplerCubeGL_UNSIGNED_INT_SAMPLER_1D_ARRAYusampler2DArrayGL_UNSIGNED_INT_SAMPLER_2D_ARRAYusampler2DArrayGL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLEusampler2DMSGL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAYusampler2DMSArrayGL_UNSIGNED_INT_SAMPLER_BUFFERusamplerBufferGL_UNSIGNED_INT_SAMPLER_2D_RECTusampler2DRectGL_IMAGE_1Dimage1DGL_IMAGE_2Dimage2DGL_IMAGE_3Dimage3DGL_IMAGE_2D_RECTimage2DRectGL_IMAGE_CUBEimageCubeGL_IMAGE_BUFFERimageBufferGL_IMAGE_1D_ARRAYimage1DArrayGL_IMAGE_2D_ARRAYimage2DArrayGL_IMAGE_2D_MULTISAMPLEimage2DMSGL_IMAGE_2D_MULTISAMPLE_ARRAYimage2DMSArrayGL_INT_IMAGE_1Diimage1DGL_INT_IMAGE_2Diimage2DGL_INT_IMAGE_3Diimage3DGL_INT_IMAGE_2D_RECTiimage2DRectGL_INT_IMAGE_CUBEiimageCubeGL_INT_IMAGE_BUFFERiimageBufferGL_INT_IMAGE_1D_ARRAYiimage1DArrayGL_INT_IMAGE_2D_ARRAYiimage2DArrayGL_INT_IMAGE_2D_MULTISAMPLEiimage2DMSGL_INT_IMAGE_2D_MULTISAMPLE_ARRAYiimage2DMSArrayGL_UNSIGNED_INT_IMAGE_1Duimage1DGL_UNSIGNED_INT_IMAGE_2Duimage2DGL_UNSIGNED_INT_IMAGE_3Duimage3DGL_UNSIGNED_INT_IMAGE_2D_RECTuimage2DRectGL_UNSIGNED_INT_IMAGE_CUBEuimageCubeGL_UNSIGNED_INT_IMAGE_BUFFERuimageBufferGL_UNSIGNED_INT_IMAGE_1D_ARRAYuimage1DArrayGL_UNSIGNED_INT_IMAGE_2D_ARRAYuimage2DArrayGL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLEuimage2DMSGL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAYuimage2DMSArrayGL_UNSIGNED_INT_ATOMIC_COUNTERatomic_uint + /// If one or more elements of an array are active, the name of the array is returned in name, the type is returned in type, and the size parameter returns the highest array element index used, plus one, as determined by the compiler and/or linker. Only one active uniform variable will be reported for a uniform array. + /// Uniform variables that are declared as structures or arrays of structures will not be returned directly by this function. Instead, each of these uniform variables will be reduced to its fundamental components containing the "." and "[]" operators such that each of the names is valid as an argument to glGetUniformLocation. Each of these reduced uniform variables is counted as one active uniform variable and is assigned an index. A valid name cannot be a structure, an array of structures, or a subcomponent of a vector or matrix. + /// The size of the uniform variable will be returned in size. Uniform variables other than arrays will have a size of 1. Structures and arrays of structures will be reduced as described earlier, such that each of the names returned will be a data type in the earlier list. If this reduction results in an array, the size returned will be as described for uniform arrays; otherwise, the size returned will be 1. + /// The list of active uniform variables may include both built-in uniform variables (which begin with the prefix "gl_") as well as user-defined uniform variable names. + /// This function will return as much information as it can about the specified active uniform variable. If no information is available, length will be 0, and name will be an empty string. This situation could occur if this function is called after a link operation that failed. If an error occurs, the return values length, size, type, and name will be unmodified. + /// + /// Specifies the program object to be queried. + /// Specifies the index of the uniform variable to be queried. + /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name. + /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than NULL is passed. + /// Returns the size of the uniform variable. + /// Returns the data type of the uniform variable. + /// Returns a null terminated string containing the name of the uniform variable. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniform(uint program, uint index, int bufSize, out int length, out int size, out UniformType type, void* name) => _GetActiveUniform_ptr(program, index, bufSize, out length, out size, out type, name); + + /// + /// glGetActiveUniform returns information about an active uniform variable in the program object specified by program. The number of active uniform variables can be obtained by calling glGetProgram with the value GL_ACTIVE_UNIFORMS. A value of 0 for index selects the first active uniform variable. Permissible values for index range from zero to the number of active uniform variables minus one. + /// Shaders may use either built-in uniform variables, user-defined uniform variables, or both. Built-in uniform variables have a prefix of "gl_" and reference existing OpenGL state or values derived from such state (e.g., gl_DepthRangeParameters, see the OpenGL Shading Language specification for a complete list.) User-defined uniform variables have arbitrary names and obtain their values from the application through calls to glUniform. A uniform variable (either built-in or user-defined) is considered active if it is determined during the link operation that it may be accessed during program execution. Therefore, program should have previously been the target of a call to glLinkProgram, but it is not necessary for it to have been linked successfully. + /// The size of the character buffer required to store the longest uniform variable name in program can be obtained by calling glGetProgram with the value GL_ACTIVE_UNIFORM_MAX_LENGTH. This value should be used to allocate a buffer of sufficient size to store the returned uniform variable name. The size of this character buffer is passed in bufSize, and a pointer to this character buffer is passed in name. + /// glGetActiveUniform returns the name of the uniform variable indicated by index, storing it in the character buffer specified by name. The string returned will be null terminated. The actual number of characters written into this buffer is returned in length, and this count does not include the null termination character. If the length of the returned string is not required, a value of NULL can be passed in the length argument. + /// The type argument will return a pointer to the uniform variable's data type. The symbolic constants returned for uniform types are shown in the table below. Returned Symbolic Contant Shader Uniform Type GL_FLOATfloatGL_FLOAT_VEC2vec2GL_FLOAT_VEC3vec3GL_FLOAT_VEC4vec4GL_DOUBLEdoubleGL_DOUBLE_VEC2dvec2GL_DOUBLE_VEC3dvec3GL_DOUBLE_VEC4dvec4GL_INTintGL_INT_VEC2ivec2GL_INT_VEC3ivec3GL_INT_VEC4ivec4GL_UNSIGNED_INTunsigned intGL_UNSIGNED_INT_VEC2uvec2GL_UNSIGNED_INT_VEC3uvec3GL_UNSIGNED_INT_VEC4uvec4GL_BOOLboolGL_BOOL_VEC2bvec2GL_BOOL_VEC3bvec3GL_BOOL_VEC4bvec4GL_FLOAT_MAT2mat2GL_FLOAT_MAT3mat3GL_FLOAT_MAT4mat4GL_FLOAT_MAT2x3mat2x3GL_FLOAT_MAT2x4mat2x4GL_FLOAT_MAT3x2mat3x2GL_FLOAT_MAT3x4mat3x4GL_FLOAT_MAT4x2mat4x2GL_FLOAT_MAT4x3mat4x3GL_DOUBLE_MAT2dmat2GL_DOUBLE_MAT3dmat3GL_DOUBLE_MAT4dmat4GL_DOUBLE_MAT2x3dmat2x3GL_DOUBLE_MAT2x4dmat2x4GL_DOUBLE_MAT3x2dmat3x2GL_DOUBLE_MAT3x4dmat3x4GL_DOUBLE_MAT4x2dmat4x2GL_DOUBLE_MAT4x3dmat4x3GL_SAMPLER_1Dsampler1DGL_SAMPLER_2Dsampler2DGL_SAMPLER_3Dsampler3DGL_SAMPLER_CUBEsamplerCubeGL_SAMPLER_1D_SHADOWsampler1DShadowGL_SAMPLER_2D_SHADOWsampler2DShadowGL_SAMPLER_1D_ARRAYsampler1DArrayGL_SAMPLER_2D_ARRAYsampler2DArrayGL_SAMPLER_1D_ARRAY_SHADOWsampler1DArrayShadowGL_SAMPLER_2D_ARRAY_SHADOWsampler2DArrayShadowGL_SAMPLER_2D_MULTISAMPLEsampler2DMSGL_SAMPLER_2D_MULTISAMPLE_ARRAYsampler2DMSArrayGL_SAMPLER_CUBE_SHADOWsamplerCubeShadowGL_SAMPLER_BUFFERsamplerBufferGL_SAMPLER_2D_RECTsampler2DRectGL_SAMPLER_2D_RECT_SHADOWsampler2DRectShadowGL_INT_SAMPLER_1Disampler1DGL_INT_SAMPLER_2Disampler2DGL_INT_SAMPLER_3Disampler3DGL_INT_SAMPLER_CUBEisamplerCubeGL_INT_SAMPLER_1D_ARRAYisampler1DArrayGL_INT_SAMPLER_2D_ARRAYisampler2DArrayGL_INT_SAMPLER_2D_MULTISAMPLEisampler2DMSGL_INT_SAMPLER_2D_MULTISAMPLE_ARRAYisampler2DMSArrayGL_INT_SAMPLER_BUFFERisamplerBufferGL_INT_SAMPLER_2D_RECTisampler2DRectGL_UNSIGNED_INT_SAMPLER_1Dusampler1DGL_UNSIGNED_INT_SAMPLER_2Dusampler2DGL_UNSIGNED_INT_SAMPLER_3Dusampler3DGL_UNSIGNED_INT_SAMPLER_CUBEusamplerCubeGL_UNSIGNED_INT_SAMPLER_1D_ARRAYusampler2DArrayGL_UNSIGNED_INT_SAMPLER_2D_ARRAYusampler2DArrayGL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLEusampler2DMSGL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAYusampler2DMSArrayGL_UNSIGNED_INT_SAMPLER_BUFFERusamplerBufferGL_UNSIGNED_INT_SAMPLER_2D_RECTusampler2DRectGL_IMAGE_1Dimage1DGL_IMAGE_2Dimage2DGL_IMAGE_3Dimage3DGL_IMAGE_2D_RECTimage2DRectGL_IMAGE_CUBEimageCubeGL_IMAGE_BUFFERimageBufferGL_IMAGE_1D_ARRAYimage1DArrayGL_IMAGE_2D_ARRAYimage2DArrayGL_IMAGE_2D_MULTISAMPLEimage2DMSGL_IMAGE_2D_MULTISAMPLE_ARRAYimage2DMSArrayGL_INT_IMAGE_1Diimage1DGL_INT_IMAGE_2Diimage2DGL_INT_IMAGE_3Diimage3DGL_INT_IMAGE_2D_RECTiimage2DRectGL_INT_IMAGE_CUBEiimageCubeGL_INT_IMAGE_BUFFERiimageBufferGL_INT_IMAGE_1D_ARRAYiimage1DArrayGL_INT_IMAGE_2D_ARRAYiimage2DArrayGL_INT_IMAGE_2D_MULTISAMPLEiimage2DMSGL_INT_IMAGE_2D_MULTISAMPLE_ARRAYiimage2DMSArrayGL_UNSIGNED_INT_IMAGE_1Duimage1DGL_UNSIGNED_INT_IMAGE_2Duimage2DGL_UNSIGNED_INT_IMAGE_3Duimage3DGL_UNSIGNED_INT_IMAGE_2D_RECTuimage2DRectGL_UNSIGNED_INT_IMAGE_CUBEuimageCubeGL_UNSIGNED_INT_IMAGE_BUFFERuimageBufferGL_UNSIGNED_INT_IMAGE_1D_ARRAYuimage1DArrayGL_UNSIGNED_INT_IMAGE_2D_ARRAYuimage2DArrayGL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLEuimage2DMSGL_UNSIGNED_INT_IMAGE_2D_MULTISAMPLE_ARRAYuimage2DMSArrayGL_UNSIGNED_INT_ATOMIC_COUNTERatomic_uint + /// If one or more elements of an array are active, the name of the array is returned in name, the type is returned in type, and the size parameter returns the highest array element index used, plus one, as determined by the compiler and/or linker. Only one active uniform variable will be reported for a uniform array. + /// Uniform variables that are declared as structures or arrays of structures will not be returned directly by this function. Instead, each of these uniform variables will be reduced to its fundamental components containing the "." and "[]" operators such that each of the names is valid as an argument to glGetUniformLocation. Each of these reduced uniform variables is counted as one active uniform variable and is assigned an index. A valid name cannot be a structure, an array of structures, or a subcomponent of a vector or matrix. + /// The size of the uniform variable will be returned in size. Uniform variables other than arrays will have a size of 1. Structures and arrays of structures will be reduced as described earlier, such that each of the names returned will be a data type in the earlier list. If this reduction results in an array, the size returned will be as described for uniform arrays; otherwise, the size returned will be 1. + /// The list of active uniform variables may include both built-in uniform variables (which begin with the prefix "gl_") as well as user-defined uniform variable names. + /// This function will return as much information as it can about the specified active uniform variable. If no information is available, length will be 0, and name will be an empty string. This situation could occur if this function is called after a link operation that failed. If an error occurs, the return values length, size, type, and name will be unmodified. + /// + /// Specifies the program object to be queried. + /// Specifies the index of the uniform variable to be queried. + /// Specifies the maximum number of characters OpenGL is allowed to write in the character buffer indicated by name. + /// Returns the number of characters actually written by OpenGL in the string indicated by name (excluding the null terminator) if a value other than NULL is passed. + /// Returns the size of the uniform variable. + /// Returns the data type of the uniform variable. + /// Returns a null terminated string containing the name of the uniform variable. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniform(uint program, uint index, int bufSize, out int length, out int size, out UniformType type, IntPtr name) => _GetActiveUniform_intptr(program, index, bufSize, out length, out size, out type, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformARB(int programObj, uint index, int maxLength, out int length, out int size, out UniformType type, string name) => _GetActiveUniformARB(programObj, index, maxLength, out length, out size, out type, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformARB(int programObj, uint index, int maxLength, out int length, out int size, out UniformType type, void* name) => _GetActiveUniformARB_ptr(programObj, index, maxLength, out length, out size, out type, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformARB(int programObj, uint index, int maxLength, out int length, out int size, out UniformType type, IntPtr name) => _GetActiveUniformARB_intptr(programObj, index, maxLength, out length, out size, out type, name); + + // --- + + /// + /// glGetActiveUniformBlockName retrieves the name of the active uniform block at uniformBlockIndex within program. + /// program must be the name of a program object for which the command glLinkProgram must have been called in the past, although it is not required that glLinkProgram must have succeeded. The link could have failed because the number of active uniforms exceeded the limit. + /// uniformBlockIndex is an active uniform block index of program, and must be less than the value of GL_ACTIVE_UNIFORM_BLOCKS. + /// Upon success, the name of the uniform block identified by unifomBlockIndex is returned into uniformBlockName. The name is nul-terminated. The actual number of characters written into uniformBlockName, excluding the nul terminator, is returned in length. If length is NULL, no length is returned. + /// bufSize contains the maximum number of characters (including the nul terminator) that will be written into uniformBlockName. + /// If an error occurs, nothing will be written to uniformBlockName or length. + /// + /// Specifies the name of a program containing the uniform block. + /// Specifies the index of the uniform block within program. + /// Specifies the size of the buffer addressed by uniformBlockName. + /// Specifies the address of a variable to receive the number of characters that were written to uniformBlockName. + /// Specifies the address an array of characters to receive the name of the uniform block at uniformBlockIndex. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformBlockName(uint program, uint uniformBlockIndex, int bufSize, out int length, string uniformBlockName) => _GetActiveUniformBlockName(program, uniformBlockIndex, bufSize, out length, uniformBlockName); + + /// + /// glGetActiveUniformBlockName retrieves the name of the active uniform block at uniformBlockIndex within program. + /// program must be the name of a program object for which the command glLinkProgram must have been called in the past, although it is not required that glLinkProgram must have succeeded. The link could have failed because the number of active uniforms exceeded the limit. + /// uniformBlockIndex is an active uniform block index of program, and must be less than the value of GL_ACTIVE_UNIFORM_BLOCKS. + /// Upon success, the name of the uniform block identified by unifomBlockIndex is returned into uniformBlockName. The name is nul-terminated. The actual number of characters written into uniformBlockName, excluding the nul terminator, is returned in length. If length is NULL, no length is returned. + /// bufSize contains the maximum number of characters (including the nul terminator) that will be written into uniformBlockName. + /// If an error occurs, nothing will be written to uniformBlockName or length. + /// + /// Specifies the name of a program containing the uniform block. + /// Specifies the index of the uniform block within program. + /// Specifies the size of the buffer addressed by uniformBlockName. + /// Specifies the address of a variable to receive the number of characters that were written to uniformBlockName. + /// Specifies the address an array of characters to receive the name of the uniform block at uniformBlockIndex. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformBlockName(uint program, uint uniformBlockIndex, int bufSize, out int length, void* uniformBlockName) => _GetActiveUniformBlockName_ptr(program, uniformBlockIndex, bufSize, out length, uniformBlockName); + + /// + /// glGetActiveUniformBlockName retrieves the name of the active uniform block at uniformBlockIndex within program. + /// program must be the name of a program object for which the command glLinkProgram must have been called in the past, although it is not required that glLinkProgram must have succeeded. The link could have failed because the number of active uniforms exceeded the limit. + /// uniformBlockIndex is an active uniform block index of program, and must be less than the value of GL_ACTIVE_UNIFORM_BLOCKS. + /// Upon success, the name of the uniform block identified by unifomBlockIndex is returned into uniformBlockName. The name is nul-terminated. The actual number of characters written into uniformBlockName, excluding the nul terminator, is returned in length. If length is NULL, no length is returned. + /// bufSize contains the maximum number of characters (including the nul terminator) that will be written into uniformBlockName. + /// If an error occurs, nothing will be written to uniformBlockName or length. + /// + /// Specifies the name of a program containing the uniform block. + /// Specifies the index of the uniform block within program. + /// Specifies the size of the buffer addressed by uniformBlockName. + /// Specifies the address of a variable to receive the number of characters that were written to uniformBlockName. + /// Specifies the address an array of characters to receive the name of the uniform block at uniformBlockIndex. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformBlockName(uint program, uint uniformBlockIndex, int bufSize, out int length, IntPtr uniformBlockName) => _GetActiveUniformBlockName_intptr(program, uniformBlockIndex, bufSize, out length, uniformBlockName); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformBlockiv(uint program, uint uniformBlockIndex, UniformBlockPName pname, int[] @params) => _GetActiveUniformBlockiv(program, uniformBlockIndex, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformBlockiv(uint program, uint uniformBlockIndex, UniformBlockPName pname, void* @params) => _GetActiveUniformBlockiv_ptr(program, uniformBlockIndex, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformBlockiv(uint program, uint uniformBlockIndex, UniformBlockPName pname, IntPtr @params) => _GetActiveUniformBlockiv_intptr(program, uniformBlockIndex, pname, @params); + + // --- + + /// + /// glGetActiveUniformName returns the name of the active uniform at uniformIndex within program. If uniformName is not NULL, up to bufSize characters (including a nul-terminator) will be written into the array whose address is specified by uniformName. If length is not NULL, the number of characters that were (or would have been) written into uniformName (not including the nul-terminator) will be placed in the variable whose address is specified in length. If length is NULL, no length is returned. The length of the longest uniform name in program is given by the value of GL_ACTIVE_UNIFORM_MAX_LENGTH, which can be queried with glGetProgram. + /// If glGetActiveUniformName is not successful, nothing is written to length or uniformName. + /// program must be the name of a program for which the command glLinkProgram has been issued in the past. It is not necessary for program to have been linked successfully. The link could have failed because the number of active uniforms exceeded the limit. + /// uniformIndex must be an active uniform index of the program program, in the range zero to the value of GL_ACTIVE_UNIFORMS minus one. The value of GL_ACTIVE_UNIFORMS can be queried with glGetProgram. + /// + /// Specifies the program containing the active uniform index uniformIndex. + /// Specifies the index of the active uniform whose name to query. + /// Specifies the size of the buffer, in units of GLchar, of the buffer whose address is specified in uniformName. + /// Specifies the address of a variable that will receive the number of characters that were or would have been written to the buffer addressed by uniformName. + /// Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex within program. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformName(uint program, uint uniformIndex, int bufSize, out int length, string uniformName) => _GetActiveUniformName(program, uniformIndex, bufSize, out length, uniformName); + + /// + /// glGetActiveUniformName returns the name of the active uniform at uniformIndex within program. If uniformName is not NULL, up to bufSize characters (including a nul-terminator) will be written into the array whose address is specified by uniformName. If length is not NULL, the number of characters that were (or would have been) written into uniformName (not including the nul-terminator) will be placed in the variable whose address is specified in length. If length is NULL, no length is returned. The length of the longest uniform name in program is given by the value of GL_ACTIVE_UNIFORM_MAX_LENGTH, which can be queried with glGetProgram. + /// If glGetActiveUniformName is not successful, nothing is written to length or uniformName. + /// program must be the name of a program for which the command glLinkProgram has been issued in the past. It is not necessary for program to have been linked successfully. The link could have failed because the number of active uniforms exceeded the limit. + /// uniformIndex must be an active uniform index of the program program, in the range zero to the value of GL_ACTIVE_UNIFORMS minus one. The value of GL_ACTIVE_UNIFORMS can be queried with glGetProgram. + /// + /// Specifies the program containing the active uniform index uniformIndex. + /// Specifies the index of the active uniform whose name to query. + /// Specifies the size of the buffer, in units of GLchar, of the buffer whose address is specified in uniformName. + /// Specifies the address of a variable that will receive the number of characters that were or would have been written to the buffer addressed by uniformName. + /// Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex within program. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformName(uint program, uint uniformIndex, int bufSize, out int length, void* uniformName) => _GetActiveUniformName_ptr(program, uniformIndex, bufSize, out length, uniformName); + + /// + /// glGetActiveUniformName returns the name of the active uniform at uniformIndex within program. If uniformName is not NULL, up to bufSize characters (including a nul-terminator) will be written into the array whose address is specified by uniformName. If length is not NULL, the number of characters that were (or would have been) written into uniformName (not including the nul-terminator) will be placed in the variable whose address is specified in length. If length is NULL, no length is returned. The length of the longest uniform name in program is given by the value of GL_ACTIVE_UNIFORM_MAX_LENGTH, which can be queried with glGetProgram. + /// If glGetActiveUniformName is not successful, nothing is written to length or uniformName. + /// program must be the name of a program for which the command glLinkProgram has been issued in the past. It is not necessary for program to have been linked successfully. The link could have failed because the number of active uniforms exceeded the limit. + /// uniformIndex must be an active uniform index of the program program, in the range zero to the value of GL_ACTIVE_UNIFORMS minus one. The value of GL_ACTIVE_UNIFORMS can be queried with glGetProgram. + /// + /// Specifies the program containing the active uniform index uniformIndex. + /// Specifies the index of the active uniform whose name to query. + /// Specifies the size of the buffer, in units of GLchar, of the buffer whose address is specified in uniformName. + /// Specifies the address of a variable that will receive the number of characters that were or would have been written to the buffer addressed by uniformName. + /// Specifies the address of a buffer into which the GL will place the name of the active uniform at uniformIndex within program. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformName(uint program, uint uniformIndex, int bufSize, out int length, IntPtr uniformName) => _GetActiveUniformName_intptr(program, uniformIndex, bufSize, out length, uniformName); + + // --- + + /// + /// glGetActiveUniformsiv queries the value of the parameter named pname for each of the uniforms within program whose indices are specified in the array of uniformCount unsigned integers uniformIndices. Upon success, the value of the parameter for each uniform is written into the corresponding entry in the array whose address is given in params. If an error is generated, nothing is written into params. + /// If pname is GL_UNIFORM_TYPE, then an array identifying the types of uniforms specified by the corresponding array of uniformIndices is returned. The returned types can be any of the values from the following table: Returned Symbolic Contant Shader Uniform Type GL_FLOATfloatGL_FLOAT_VEC2vec2GL_FLOAT_VEC3vec3GL_FLOAT_VEC4vec4GL_DOUBLEdoubleGL_DOUBLE_VEC2dvec2GL_DOUBLE_VEC3dvec3GL_DOUBLE_VEC4dvec4GL_INTintGL_INT_VEC2ivec2GL_INT_VEC3ivec3GL_INT_VEC4ivec4GL_UNSIGNED_INTunsigned intGL_UNSIGNED_INT_VEC2uvec2GL_UNSIGNED_INT_VEC3uvec3GL_UNSIGNED_INT_VEC4uvec4GL_BOOLboolGL_BOOL_VEC2bvec2GL_BOOL_VEC3bvec3GL_BOOL_VEC4bvec4GL_FLOAT_MAT2mat2GL_FLOAT_MAT3mat3GL_FLOAT_MAT4mat4GL_FLOAT_MAT2x3mat2x3GL_FLOAT_MAT2x4mat2x4GL_FLOAT_MAT3x2mat3x2GL_FLOAT_MAT3x4mat3x4GL_FLOAT_MAT4x2mat4x2GL_FLOAT_MAT4x3mat4x3GL_DOUBLE_MAT2dmat2GL_DOUBLE_MAT3dmat3GL_DOUBLE_MAT4dmat4GL_DOUBLE_MAT2x3dmat2x3GL_DOUBLE_MAT2x4dmat2x4GL_DOUBLE_MAT3x2dmat3x2GL_DOUBLE_MAT3x4dmat3x4GL_DOUBLE_MAT4x2dmat4x2GL_DOUBLE_MAT4x3dmat4x3GL_SAMPLER_1Dsampler1DGL_SAMPLER_2Dsampler2DGL_SAMPLER_3Dsampler3DGL_SAMPLER_CUBEsamplerCubeGL_SAMPLER_1D_SHADOWsampler1DShadowGL_SAMPLER_2D_SHADOWsampler2DShadowGL_SAMPLER_1D_ARRAYsampler1DArrayGL_SAMPLER_2D_ARRAYsampler2DArrayGL_SAMPLER_1D_ARRAY_SHADOWsampler1DArrayShadowGL_SAMPLER_2D_ARRAY_SHADOWsampler2DArrayShadowGL_SAMPLER_2D_MULTISAMPLEsampler2DMSGL_SAMPLER_2D_MULTISAMPLE_ARRAYsampler2DMSArrayGL_SAMPLER_CUBE_SHADOWsamplerCubeShadowGL_SAMPLER_BUFFERsamplerBufferGL_SAMPLER_2D_RECTsampler2DRectGL_SAMPLER_2D_RECT_SHADOWsampler2DRectShadowGL_INT_SAMPLER_1Disampler1DGL_INT_SAMPLER_2Disampler2DGL_INT_SAMPLER_3Disampler3DGL_INT_SAMPLER_CUBEisamplerCubeGL_INT_SAMPLER_1D_ARRAYisampler1DArrayGL_INT_SAMPLER_2D_ARRAYisampler2DArrayGL_INT_SAMPLER_2D_MULTISAMPLEisampler2DMSGL_INT_SAMPLER_2D_MULTISAMPLE_ARRAYisampler2DMSArrayGL_INT_SAMPLER_BUFFERisamplerBufferGL_INT_SAMPLER_2D_RECTisampler2DRectGL_UNSIGNED_INT_SAMPLER_1Dusampler1DGL_UNSIGNED_INT_SAMPLER_2Dusampler2DGL_UNSIGNED_INT_SAMPLER_3Dusampler3DGL_UNSIGNED_INT_SAMPLER_CUBEusamplerCubeGL_UNSIGNED_INT_SAMPLER_1D_ARRAYusampler2DArrayGL_UNSIGNED_INT_SAMPLER_2D_ARRAYusampler2DArrayGL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLEusampler2DMSGL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAYusampler2DMSArrayGL_UNSIGNED_INT_SAMPLER_BUFFERusamplerBufferGL_UNSIGNED_INT_SAMPLER_2D_RECTusampler2DRect + /// If pname is GL_UNIFORM_SIZE, then an array identifying the size of the uniforms specified by the corresponding array of uniformIndices is returned. The sizes returned are in units of the type returned by a query of GL_UNIFORM_TYPE. For active uniforms that are arrays, the size is the number of active elements in the array; for all other uniforms, the size is one. + /// If pname is GL_UNIFORM_NAME_LENGTH, then an array identifying the length, including the terminating null character, of the uniform name strings specified by the corresponding array of uniformIndices is returned. + /// If pname is GL_UNIFORM_BLOCK_INDEX, then an array identifying the uniform block index of each of the uniforms specified by the corresponding array of uniformIndices is returned. The uniform block index of a uniform associated with the default uniform block is -1. + /// If pname is GL_UNIFORM_OFFSET, then an array of uniform buffer offsets is returned. For uniforms in a named uniform block, the returned value will be its offset, in basic machine units, relative to the beginning of the uniform block in the buffer object data store. For atomic counter uniforms, the returned value will be its offset relative to the beginning of its active atomic counter buffer. For all other uniforms, -1 will be returned. + /// If pname is GL_UNIFORM_ARRAY_STRIDE, then an array identifying the stride between elements of each of the uniforms specified by the corresponding array of uniformIndices is returned. For uniforms in named uniform blocks and for uniforms declared as atomic counters, the stride is the difference, in basic machine units, of consecutive elements in an array, or zero for uniforms not declared as an array. For all other uniforms, a stride of -1 will be returned. + /// If pname is GL_UNIFORM_MATRIX_STRIDE, then an array identifying the stride between columns of a column-major matrix or rows of a row-major matrix, in basic machine units, of each of the uniforms specified by the corresponding array of uniformIndices is returned. The matrix stride of a uniform associated with the default uniform block is -1. Note that this information only makes sense for uniforms that are matrices. For uniforms that are not matrices, but are declared in a named uniform block, a matrix stride of zero is returned. + /// If pname is GL_UNIFORM_IS_ROW_MAJOR, then an array identifying whether each of the uniforms specified by the corresponding array of uniformIndices is a row-major matrix or not is returned. A value of one indicates a row-major matrix, and a value of zero indicates a column-major matrix, a matrix in the default uniform block, or a non-matrix. + /// If pname is GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX, then an array identifying the active atomic counter buffer index of each of the uniforms specified by the corresponding array of uniformIndices is returned. For uniforms other than atomic counters, the returned buffer index is -1. The returned indices may be passed to glGetActiveAtomicCounterBufferiv to query the properties of the associated buffer, and not necessarily the binding point specified in the uniform declaration. + /// + /// Specifies the program object to be queried. + /// Specifies both the number of elements in the array of indices uniformIndices and the number of parameters written to params upon successful return. + /// Specifies the address of an array of uniformCount integers containing the indices of uniforms within program whose parameter pname should be queried. + /// Specifies the property of each uniform in uniformIndices that should be written into the corresponding element of params. + /// Specifies the address of an array of uniformCount integers which are to receive the value of pname for each uniform in uniformIndices. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformsiv(uint program, int uniformCount, uint[] uniformIndices, UniformPName pname, int[] @params) => _GetActiveUniformsiv(program, uniformCount, uniformIndices, pname, @params); + + /// + /// glGetActiveUniformsiv queries the value of the parameter named pname for each of the uniforms within program whose indices are specified in the array of uniformCount unsigned integers uniformIndices. Upon success, the value of the parameter for each uniform is written into the corresponding entry in the array whose address is given in params. If an error is generated, nothing is written into params. + /// If pname is GL_UNIFORM_TYPE, then an array identifying the types of uniforms specified by the corresponding array of uniformIndices is returned. The returned types can be any of the values from the following table: Returned Symbolic Contant Shader Uniform Type GL_FLOATfloatGL_FLOAT_VEC2vec2GL_FLOAT_VEC3vec3GL_FLOAT_VEC4vec4GL_DOUBLEdoubleGL_DOUBLE_VEC2dvec2GL_DOUBLE_VEC3dvec3GL_DOUBLE_VEC4dvec4GL_INTintGL_INT_VEC2ivec2GL_INT_VEC3ivec3GL_INT_VEC4ivec4GL_UNSIGNED_INTunsigned intGL_UNSIGNED_INT_VEC2uvec2GL_UNSIGNED_INT_VEC3uvec3GL_UNSIGNED_INT_VEC4uvec4GL_BOOLboolGL_BOOL_VEC2bvec2GL_BOOL_VEC3bvec3GL_BOOL_VEC4bvec4GL_FLOAT_MAT2mat2GL_FLOAT_MAT3mat3GL_FLOAT_MAT4mat4GL_FLOAT_MAT2x3mat2x3GL_FLOAT_MAT2x4mat2x4GL_FLOAT_MAT3x2mat3x2GL_FLOAT_MAT3x4mat3x4GL_FLOAT_MAT4x2mat4x2GL_FLOAT_MAT4x3mat4x3GL_DOUBLE_MAT2dmat2GL_DOUBLE_MAT3dmat3GL_DOUBLE_MAT4dmat4GL_DOUBLE_MAT2x3dmat2x3GL_DOUBLE_MAT2x4dmat2x4GL_DOUBLE_MAT3x2dmat3x2GL_DOUBLE_MAT3x4dmat3x4GL_DOUBLE_MAT4x2dmat4x2GL_DOUBLE_MAT4x3dmat4x3GL_SAMPLER_1Dsampler1DGL_SAMPLER_2Dsampler2DGL_SAMPLER_3Dsampler3DGL_SAMPLER_CUBEsamplerCubeGL_SAMPLER_1D_SHADOWsampler1DShadowGL_SAMPLER_2D_SHADOWsampler2DShadowGL_SAMPLER_1D_ARRAYsampler1DArrayGL_SAMPLER_2D_ARRAYsampler2DArrayGL_SAMPLER_1D_ARRAY_SHADOWsampler1DArrayShadowGL_SAMPLER_2D_ARRAY_SHADOWsampler2DArrayShadowGL_SAMPLER_2D_MULTISAMPLEsampler2DMSGL_SAMPLER_2D_MULTISAMPLE_ARRAYsampler2DMSArrayGL_SAMPLER_CUBE_SHADOWsamplerCubeShadowGL_SAMPLER_BUFFERsamplerBufferGL_SAMPLER_2D_RECTsampler2DRectGL_SAMPLER_2D_RECT_SHADOWsampler2DRectShadowGL_INT_SAMPLER_1Disampler1DGL_INT_SAMPLER_2Disampler2DGL_INT_SAMPLER_3Disampler3DGL_INT_SAMPLER_CUBEisamplerCubeGL_INT_SAMPLER_1D_ARRAYisampler1DArrayGL_INT_SAMPLER_2D_ARRAYisampler2DArrayGL_INT_SAMPLER_2D_MULTISAMPLEisampler2DMSGL_INT_SAMPLER_2D_MULTISAMPLE_ARRAYisampler2DMSArrayGL_INT_SAMPLER_BUFFERisamplerBufferGL_INT_SAMPLER_2D_RECTisampler2DRectGL_UNSIGNED_INT_SAMPLER_1Dusampler1DGL_UNSIGNED_INT_SAMPLER_2Dusampler2DGL_UNSIGNED_INT_SAMPLER_3Dusampler3DGL_UNSIGNED_INT_SAMPLER_CUBEusamplerCubeGL_UNSIGNED_INT_SAMPLER_1D_ARRAYusampler2DArrayGL_UNSIGNED_INT_SAMPLER_2D_ARRAYusampler2DArrayGL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLEusampler2DMSGL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAYusampler2DMSArrayGL_UNSIGNED_INT_SAMPLER_BUFFERusamplerBufferGL_UNSIGNED_INT_SAMPLER_2D_RECTusampler2DRect + /// If pname is GL_UNIFORM_SIZE, then an array identifying the size of the uniforms specified by the corresponding array of uniformIndices is returned. The sizes returned are in units of the type returned by a query of GL_UNIFORM_TYPE. For active uniforms that are arrays, the size is the number of active elements in the array; for all other uniforms, the size is one. + /// If pname is GL_UNIFORM_NAME_LENGTH, then an array identifying the length, including the terminating null character, of the uniform name strings specified by the corresponding array of uniformIndices is returned. + /// If pname is GL_UNIFORM_BLOCK_INDEX, then an array identifying the uniform block index of each of the uniforms specified by the corresponding array of uniformIndices is returned. The uniform block index of a uniform associated with the default uniform block is -1. + /// If pname is GL_UNIFORM_OFFSET, then an array of uniform buffer offsets is returned. For uniforms in a named uniform block, the returned value will be its offset, in basic machine units, relative to the beginning of the uniform block in the buffer object data store. For atomic counter uniforms, the returned value will be its offset relative to the beginning of its active atomic counter buffer. For all other uniforms, -1 will be returned. + /// If pname is GL_UNIFORM_ARRAY_STRIDE, then an array identifying the stride between elements of each of the uniforms specified by the corresponding array of uniformIndices is returned. For uniforms in named uniform blocks and for uniforms declared as atomic counters, the stride is the difference, in basic machine units, of consecutive elements in an array, or zero for uniforms not declared as an array. For all other uniforms, a stride of -1 will be returned. + /// If pname is GL_UNIFORM_MATRIX_STRIDE, then an array identifying the stride between columns of a column-major matrix or rows of a row-major matrix, in basic machine units, of each of the uniforms specified by the corresponding array of uniformIndices is returned. The matrix stride of a uniform associated with the default uniform block is -1. Note that this information only makes sense for uniforms that are matrices. For uniforms that are not matrices, but are declared in a named uniform block, a matrix stride of zero is returned. + /// If pname is GL_UNIFORM_IS_ROW_MAJOR, then an array identifying whether each of the uniforms specified by the corresponding array of uniformIndices is a row-major matrix or not is returned. A value of one indicates a row-major matrix, and a value of zero indicates a column-major matrix, a matrix in the default uniform block, or a non-matrix. + /// If pname is GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX, then an array identifying the active atomic counter buffer index of each of the uniforms specified by the corresponding array of uniformIndices is returned. For uniforms other than atomic counters, the returned buffer index is -1. The returned indices may be passed to glGetActiveAtomicCounterBufferiv to query the properties of the associated buffer, and not necessarily the binding point specified in the uniform declaration. + /// + /// Specifies the program object to be queried. + /// Specifies both the number of elements in the array of indices uniformIndices and the number of parameters written to params upon successful return. + /// Specifies the address of an array of uniformCount integers containing the indices of uniforms within program whose parameter pname should be queried. + /// Specifies the property of each uniform in uniformIndices that should be written into the corresponding element of params. + /// Specifies the address of an array of uniformCount integers which are to receive the value of pname for each uniform in uniformIndices. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformsiv(uint program, int uniformCount, void* uniformIndices, UniformPName pname, void* @params) => _GetActiveUniformsiv_ptr(program, uniformCount, uniformIndices, pname, @params); + + /// + /// glGetActiveUniformsiv queries the value of the parameter named pname for each of the uniforms within program whose indices are specified in the array of uniformCount unsigned integers uniformIndices. Upon success, the value of the parameter for each uniform is written into the corresponding entry in the array whose address is given in params. If an error is generated, nothing is written into params. + /// If pname is GL_UNIFORM_TYPE, then an array identifying the types of uniforms specified by the corresponding array of uniformIndices is returned. The returned types can be any of the values from the following table: Returned Symbolic Contant Shader Uniform Type GL_FLOATfloatGL_FLOAT_VEC2vec2GL_FLOAT_VEC3vec3GL_FLOAT_VEC4vec4GL_DOUBLEdoubleGL_DOUBLE_VEC2dvec2GL_DOUBLE_VEC3dvec3GL_DOUBLE_VEC4dvec4GL_INTintGL_INT_VEC2ivec2GL_INT_VEC3ivec3GL_INT_VEC4ivec4GL_UNSIGNED_INTunsigned intGL_UNSIGNED_INT_VEC2uvec2GL_UNSIGNED_INT_VEC3uvec3GL_UNSIGNED_INT_VEC4uvec4GL_BOOLboolGL_BOOL_VEC2bvec2GL_BOOL_VEC3bvec3GL_BOOL_VEC4bvec4GL_FLOAT_MAT2mat2GL_FLOAT_MAT3mat3GL_FLOAT_MAT4mat4GL_FLOAT_MAT2x3mat2x3GL_FLOAT_MAT2x4mat2x4GL_FLOAT_MAT3x2mat3x2GL_FLOAT_MAT3x4mat3x4GL_FLOAT_MAT4x2mat4x2GL_FLOAT_MAT4x3mat4x3GL_DOUBLE_MAT2dmat2GL_DOUBLE_MAT3dmat3GL_DOUBLE_MAT4dmat4GL_DOUBLE_MAT2x3dmat2x3GL_DOUBLE_MAT2x4dmat2x4GL_DOUBLE_MAT3x2dmat3x2GL_DOUBLE_MAT3x4dmat3x4GL_DOUBLE_MAT4x2dmat4x2GL_DOUBLE_MAT4x3dmat4x3GL_SAMPLER_1Dsampler1DGL_SAMPLER_2Dsampler2DGL_SAMPLER_3Dsampler3DGL_SAMPLER_CUBEsamplerCubeGL_SAMPLER_1D_SHADOWsampler1DShadowGL_SAMPLER_2D_SHADOWsampler2DShadowGL_SAMPLER_1D_ARRAYsampler1DArrayGL_SAMPLER_2D_ARRAYsampler2DArrayGL_SAMPLER_1D_ARRAY_SHADOWsampler1DArrayShadowGL_SAMPLER_2D_ARRAY_SHADOWsampler2DArrayShadowGL_SAMPLER_2D_MULTISAMPLEsampler2DMSGL_SAMPLER_2D_MULTISAMPLE_ARRAYsampler2DMSArrayGL_SAMPLER_CUBE_SHADOWsamplerCubeShadowGL_SAMPLER_BUFFERsamplerBufferGL_SAMPLER_2D_RECTsampler2DRectGL_SAMPLER_2D_RECT_SHADOWsampler2DRectShadowGL_INT_SAMPLER_1Disampler1DGL_INT_SAMPLER_2Disampler2DGL_INT_SAMPLER_3Disampler3DGL_INT_SAMPLER_CUBEisamplerCubeGL_INT_SAMPLER_1D_ARRAYisampler1DArrayGL_INT_SAMPLER_2D_ARRAYisampler2DArrayGL_INT_SAMPLER_2D_MULTISAMPLEisampler2DMSGL_INT_SAMPLER_2D_MULTISAMPLE_ARRAYisampler2DMSArrayGL_INT_SAMPLER_BUFFERisamplerBufferGL_INT_SAMPLER_2D_RECTisampler2DRectGL_UNSIGNED_INT_SAMPLER_1Dusampler1DGL_UNSIGNED_INT_SAMPLER_2Dusampler2DGL_UNSIGNED_INT_SAMPLER_3Dusampler3DGL_UNSIGNED_INT_SAMPLER_CUBEusamplerCubeGL_UNSIGNED_INT_SAMPLER_1D_ARRAYusampler2DArrayGL_UNSIGNED_INT_SAMPLER_2D_ARRAYusampler2DArrayGL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLEusampler2DMSGL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAYusampler2DMSArrayGL_UNSIGNED_INT_SAMPLER_BUFFERusamplerBufferGL_UNSIGNED_INT_SAMPLER_2D_RECTusampler2DRect + /// If pname is GL_UNIFORM_SIZE, then an array identifying the size of the uniforms specified by the corresponding array of uniformIndices is returned. The sizes returned are in units of the type returned by a query of GL_UNIFORM_TYPE. For active uniforms that are arrays, the size is the number of active elements in the array; for all other uniforms, the size is one. + /// If pname is GL_UNIFORM_NAME_LENGTH, then an array identifying the length, including the terminating null character, of the uniform name strings specified by the corresponding array of uniformIndices is returned. + /// If pname is GL_UNIFORM_BLOCK_INDEX, then an array identifying the uniform block index of each of the uniforms specified by the corresponding array of uniformIndices is returned. The uniform block index of a uniform associated with the default uniform block is -1. + /// If pname is GL_UNIFORM_OFFSET, then an array of uniform buffer offsets is returned. For uniforms in a named uniform block, the returned value will be its offset, in basic machine units, relative to the beginning of the uniform block in the buffer object data store. For atomic counter uniforms, the returned value will be its offset relative to the beginning of its active atomic counter buffer. For all other uniforms, -1 will be returned. + /// If pname is GL_UNIFORM_ARRAY_STRIDE, then an array identifying the stride between elements of each of the uniforms specified by the corresponding array of uniformIndices is returned. For uniforms in named uniform blocks and for uniforms declared as atomic counters, the stride is the difference, in basic machine units, of consecutive elements in an array, or zero for uniforms not declared as an array. For all other uniforms, a stride of -1 will be returned. + /// If pname is GL_UNIFORM_MATRIX_STRIDE, then an array identifying the stride between columns of a column-major matrix or rows of a row-major matrix, in basic machine units, of each of the uniforms specified by the corresponding array of uniformIndices is returned. The matrix stride of a uniform associated with the default uniform block is -1. Note that this information only makes sense for uniforms that are matrices. For uniforms that are not matrices, but are declared in a named uniform block, a matrix stride of zero is returned. + /// If pname is GL_UNIFORM_IS_ROW_MAJOR, then an array identifying whether each of the uniforms specified by the corresponding array of uniformIndices is a row-major matrix or not is returned. A value of one indicates a row-major matrix, and a value of zero indicates a column-major matrix, a matrix in the default uniform block, or a non-matrix. + /// If pname is GL_UNIFORM_ATOMIC_COUNTER_BUFFER_INDEX, then an array identifying the active atomic counter buffer index of each of the uniforms specified by the corresponding array of uniformIndices is returned. For uniforms other than atomic counters, the returned buffer index is -1. The returned indices may be passed to glGetActiveAtomicCounterBufferiv to query the properties of the associated buffer, and not necessarily the binding point specified in the uniform declaration. + /// + /// Specifies the program object to be queried. + /// Specifies both the number of elements in the array of indices uniformIndices and the number of parameters written to params upon successful return. + /// Specifies the address of an array of uniformCount integers containing the indices of uniforms within program whose parameter pname should be queried. + /// Specifies the property of each uniform in uniformIndices that should be written into the corresponding element of params. + /// Specifies the address of an array of uniformCount integers which are to receive the value of pname for each uniform in uniformIndices. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveUniformsiv(uint program, int uniformCount, IntPtr uniformIndices, UniformPName pname, IntPtr @params) => _GetActiveUniformsiv_intptr(program, uniformCount, uniformIndices, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveVaryingNV(uint program, uint index, int bufSize, out int length, out int size, out int type, string name) => _GetActiveVaryingNV(program, index, bufSize, out length, out size, out type, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveVaryingNV(uint program, uint index, int bufSize, out int length, out int size, out int type, void* name) => _GetActiveVaryingNV_ptr(program, index, bufSize, out length, out size, out type, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetActiveVaryingNV(uint program, uint index, int bufSize, out int length, out int size, out int type, IntPtr name) => _GetActiveVaryingNV_intptr(program, index, bufSize, out length, out size, out type, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetArrayObjectfvATI(EnableCap array, ArrayObjectPNameATI pname, out float @params) => _GetArrayObjectfvATI(array, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetArrayObjectivATI(EnableCap array, ArrayObjectPNameATI pname, out int @params) => _GetArrayObjectivATI(array, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetAttachedObjectsARB(int containerObj, int maxCount, out int count, int[] obj) => _GetAttachedObjectsARB(containerObj, maxCount, out count, obj); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetAttachedObjectsARB(int containerObj, int maxCount, out int count, void* obj) => _GetAttachedObjectsARB_ptr(containerObj, maxCount, out count, obj); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetAttachedObjectsARB(int containerObj, int maxCount, out int count, IntPtr obj) => _GetAttachedObjectsARB_intptr(containerObj, maxCount, out count, obj); + + // --- + + /// + /// glGetAttachedShaders returns the names of the shader objects attached to program. The names of shader objects that are attached to program will be returned in shaders. The actual number of shader names written into shaders is returned in count. If no shader objects are attached to program, count is set to 0. The maximum number of shader names that may be returned in shaders is specified by maxCount. + /// If the number of names actually returned is not required (for instance, if it has just been obtained by calling glGetProgram), a value of NULL may be passed for count. If no shader objects are attached to program, a value of 0 will be returned in count. The actual number of attached shaders can be obtained by calling glGetProgram with the value GL_ATTACHED_SHADERS. + /// + /// Specifies the program object to be queried. + /// Specifies the size of the array for storing the returned object names. + /// Returns the number of names actually returned in shaders. + /// Specifies an array that is used to return the names of attached shader objects. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetAttachedShaders(uint program, int maxCount, out int count, uint[] shaders) => _GetAttachedShaders(program, maxCount, out count, shaders); + + /// + /// glGetAttachedShaders returns the names of the shader objects attached to program. The names of shader objects that are attached to program will be returned in shaders. The actual number of shader names written into shaders is returned in count. If no shader objects are attached to program, count is set to 0. The maximum number of shader names that may be returned in shaders is specified by maxCount. + /// If the number of names actually returned is not required (for instance, if it has just been obtained by calling glGetProgram), a value of NULL may be passed for count. If no shader objects are attached to program, a value of 0 will be returned in count. The actual number of attached shaders can be obtained by calling glGetProgram with the value GL_ATTACHED_SHADERS. + /// + /// Specifies the program object to be queried. + /// Specifies the size of the array for storing the returned object names. + /// Returns the number of names actually returned in shaders. + /// Specifies an array that is used to return the names of attached shader objects. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetAttachedShaders(uint program, int maxCount, out int count, void* shaders) => _GetAttachedShaders_ptr(program, maxCount, out count, shaders); + + /// + /// glGetAttachedShaders returns the names of the shader objects attached to program. The names of shader objects that are attached to program will be returned in shaders. The actual number of shader names written into shaders is returned in count. If no shader objects are attached to program, count is set to 0. The maximum number of shader names that may be returned in shaders is specified by maxCount. + /// If the number of names actually returned is not required (for instance, if it has just been obtained by calling glGetProgram), a value of NULL may be passed for count. If no shader objects are attached to program, a value of 0 will be returned in count. The actual number of attached shaders can be obtained by calling glGetProgram with the value GL_ATTACHED_SHADERS. + /// + /// Specifies the program object to be queried. + /// Specifies the size of the array for storing the returned object names. + /// Returns the number of names actually returned in shaders. + /// Specifies an array that is used to return the names of attached shader objects. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetAttachedShaders(uint program, int maxCount, out int count, IntPtr shaders) => _GetAttachedShaders_intptr(program, maxCount, out count, shaders); + + // --- + + /// + /// glGetAttribLocation queries the previously linked program object specified by program for the attribute variable specified by name and returns the index of the generic vertex attribute that is bound to that attribute variable. If name is a matrix attribute variable, the index of the first column of the matrix is returned. If the named attribute variable is not an active attribute in the specified program object or if name starts with the reserved prefix "gl_", a value of -1 is returned. + /// The association between an attribute variable name and a generic attribute index can be specified at any time by calling glBindAttribLocation. Attribute bindings do not go into effect until glLinkProgram is called. After a program object has been linked successfully, the index values for attribute variables remain fixed until the next link command occurs. The attribute values can only be queried after a link if the link was successful. glGetAttribLocation returns the binding that actually went into effect the last time glLinkProgram was called for the specified program object. Attribute bindings that have been specified since the last link operation are not returned by glGetAttribLocation. + /// + /// Specifies the program object to be queried. + /// Points to a null terminated string containing the name of the attribute variable whose location is to be queried. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetAttribLocation(uint program, string name) => _GetAttribLocation(program, name); + + /// + /// glGetAttribLocation queries the previously linked program object specified by program for the attribute variable specified by name and returns the index of the generic vertex attribute that is bound to that attribute variable. If name is a matrix attribute variable, the index of the first column of the matrix is returned. If the named attribute variable is not an active attribute in the specified program object or if name starts with the reserved prefix "gl_", a value of -1 is returned. + /// The association between an attribute variable name and a generic attribute index can be specified at any time by calling glBindAttribLocation. Attribute bindings do not go into effect until glLinkProgram is called. After a program object has been linked successfully, the index values for attribute variables remain fixed until the next link command occurs. The attribute values can only be queried after a link if the link was successful. glGetAttribLocation returns the binding that actually went into effect the last time glLinkProgram was called for the specified program object. Attribute bindings that have been specified since the last link operation are not returned by glGetAttribLocation. + /// + /// Specifies the program object to be queried. + /// Points to a null terminated string containing the name of the attribute variable whose location is to be queried. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetAttribLocation(uint program, void* name) => _GetAttribLocation_ptr(program, name); + + /// + /// glGetAttribLocation queries the previously linked program object specified by program for the attribute variable specified by name and returns the index of the generic vertex attribute that is bound to that attribute variable. If name is a matrix attribute variable, the index of the first column of the matrix is returned. If the named attribute variable is not an active attribute in the specified program object or if name starts with the reserved prefix "gl_", a value of -1 is returned. + /// The association between an attribute variable name and a generic attribute index can be specified at any time by calling glBindAttribLocation. Attribute bindings do not go into effect until glLinkProgram is called. After a program object has been linked successfully, the index values for attribute variables remain fixed until the next link command occurs. The attribute values can only be queried after a link if the link was successful. glGetAttribLocation returns the binding that actually went into effect the last time glLinkProgram was called for the specified program object. Attribute bindings that have been specified since the last link operation are not returned by glGetAttribLocation. + /// + /// Specifies the program object to be queried. + /// Points to a null terminated string containing the name of the attribute variable whose location is to be queried. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetAttribLocation(uint program, IntPtr name) => _GetAttribLocation_intptr(program, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetAttribLocationARB(int programObj, string name) => _GetAttribLocationARB(programObj, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetAttribLocationARB(int programObj, void* name) => _GetAttribLocationARB_ptr(programObj, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetAttribLocationARB(int programObj, IntPtr name) => _GetAttribLocationARB_intptr(programObj, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBooleanIndexedvEXT(BufferTargetARB target, uint index, bool[] data) => _GetBooleanIndexedvEXT(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBooleanIndexedvEXT(BufferTargetARB target, uint index, void* data) => _GetBooleanIndexedvEXT_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBooleanIndexedvEXT(BufferTargetARB target, uint index, IntPtr data) => _GetBooleanIndexedvEXT_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBooleani_v(BufferTargetARB target, uint index, bool[] data) => _GetBooleani_v(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBooleani_v(BufferTargetARB target, uint index, void* data) => _GetBooleani_v_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBooleani_v(BufferTargetARB target, uint index, IntPtr data) => _GetBooleani_v_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBooleanv(GetPName pname, bool[] data) => _GetBooleanv(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBooleanv(GetPName pname, void* data) => _GetBooleanv_ptr(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBooleanv(GetPName pname, IntPtr data) => _GetBooleanv_intptr(pname, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferParameteri64v(BufferTargetARB target, BufferPNameARB pname, Int64[] @params) => _GetBufferParameteri64v(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferParameteri64v(BufferTargetARB target, BufferPNameARB pname, void* @params) => _GetBufferParameteri64v_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferParameteri64v(BufferTargetARB target, BufferPNameARB pname, IntPtr @params) => _GetBufferParameteri64v_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferParameteriv(BufferTargetARB target, BufferPNameARB pname, int[] @params) => _GetBufferParameteriv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferParameteriv(BufferTargetARB target, BufferPNameARB pname, void* @params) => _GetBufferParameteriv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferParameteriv(BufferTargetARB target, BufferPNameARB pname, IntPtr @params) => _GetBufferParameteriv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferParameterivARB(BufferTargetARB target, BufferPNameARB pname, int[] @params) => _GetBufferParameterivARB(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferParameterivARB(BufferTargetARB target, BufferPNameARB pname, void* @params) => _GetBufferParameterivARB_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferParameterivARB(BufferTargetARB target, BufferPNameARB pname, IntPtr @params) => _GetBufferParameterivARB_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferParameterui64vNV(BufferTargetARB target, int pname, UInt64[] @params) => _GetBufferParameterui64vNV(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferParameterui64vNV(BufferTargetARB target, int pname, void* @params) => _GetBufferParameterui64vNV_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferParameterui64vNV(BufferTargetARB target, int pname, IntPtr @params) => _GetBufferParameterui64vNV_intptr(target, pname, @params); + + // --- + + /// + /// glGetBufferPointerv and glGetNamedBufferPointerv return the buffer pointer pname, which must be GL_BUFFER_MAP_POINTER. The single buffer map pointer is returned in params. A NULL pointer is returned if the buffer object's data store is not currently mapped; or if the requesting context did not map the buffer object's data store, and the implementation is unable to support mappings on multiple clients. + /// + /// Specifies the target to which the buffer object is bound for glGetBufferPointerv, which must be one of the buffer binding targets in the following table: + /// Specifies the name of the buffer object for glGetNamedBufferPointerv. + /// Specifies the name of the pointer to be returned. Must be GL_BUFFER_MAP_POINTER. + /// Returns the pointer value specified by pname. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferPointerv(BufferTargetARB target, BufferPointerNameARB pname, IntPtr* @params) => _GetBufferPointerv(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferPointervARB(BufferTargetARB target, BufferPointerNameARB pname, IntPtr* @params) => _GetBufferPointervARB(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferPointervOES(BufferTargetARB target, BufferPointerNameARB pname, IntPtr* @params) => _GetBufferPointervOES(target, pname, @params); + + // --- + + /// + /// glGetBufferSubData and glGetNamedBufferSubData return some or all of the data contents of the data store of the specified buffer object. Data starting at byte offset offset and extending for size bytes is copied from the buffer object's data store to the memory pointed to by data. An error is thrown if the buffer object is currently mapped, or if offset and size together define a range beyond the bounds of the buffer object's data store. + /// + /// Specifies the target to which the buffer object is bound for glGetBufferSubData, which must be one of the buffer binding targets in the following table: + /// Specifies the name of the buffer object for glGetNamedBufferSubData. + /// Specifies the offset into the buffer object's data store from which data will be returned, measured in bytes. + /// Specifies the size in bytes of the data store region being returned. + /// Specifies a pointer to the location where buffer object data is returned. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferSubData(BufferTargetARB target, IntPtr offset, IntPtr size, IntPtr data) => _GetBufferSubData(target, offset, size, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetBufferSubDataARB(BufferTargetARB target, IntPtr offset, IntPtr size, IntPtr data) => _GetBufferSubDataARB(target, offset, size, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlane(ClipPlaneName plane, double[] equation) => _GetClipPlane(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlane(ClipPlaneName plane, void* equation) => _GetClipPlane_ptr(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlane(ClipPlaneName plane, IntPtr equation) => _GetClipPlane_intptr(plane, equation); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlanef(ClipPlaneName plane, float[] equation) => _GetClipPlanef(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlanef(ClipPlaneName plane, void* equation) => _GetClipPlanef_ptr(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlanef(ClipPlaneName plane, IntPtr equation) => _GetClipPlanef_intptr(plane, equation); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlanefOES(ClipPlaneName plane, float[] equation) => _GetClipPlanefOES(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlanefOES(ClipPlaneName plane, void* equation) => _GetClipPlanefOES_ptr(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlanefOES(ClipPlaneName plane, IntPtr equation) => _GetClipPlanefOES_intptr(plane, equation); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlanex(ClipPlaneName plane, float[] equation) => _GetClipPlanex(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlanex(ClipPlaneName plane, void* equation) => _GetClipPlanex_ptr(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlanex(ClipPlaneName plane, IntPtr equation) => _GetClipPlanex_intptr(plane, equation); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlanexOES(ClipPlaneName plane, float[] equation) => _GetClipPlanexOES(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlanexOES(ClipPlaneName plane, void* equation) => _GetClipPlanexOES_ptr(plane, equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetClipPlanexOES(ClipPlaneName plane, IntPtr equation) => _GetClipPlanexOES_intptr(plane, equation); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTable(ColorTableTarget target, PixelFormat format, PixelType type, IntPtr table) => _GetColorTable(target, format, type, table); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableEXT(ColorTableTarget target, PixelFormat format, PixelType type, IntPtr data) => _GetColorTableEXT(target, format, type, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterfv(ColorTableTarget target, GetColorTableParameterPNameSGI pname, float[] @params) => _GetColorTableParameterfv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterfv(ColorTableTarget target, GetColorTableParameterPNameSGI pname, void* @params) => _GetColorTableParameterfv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterfv(ColorTableTarget target, GetColorTableParameterPNameSGI pname, IntPtr @params) => _GetColorTableParameterfv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterfvEXT(ColorTableTarget target, GetColorTableParameterPNameSGI pname, float[] @params) => _GetColorTableParameterfvEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterfvEXT(ColorTableTarget target, GetColorTableParameterPNameSGI pname, void* @params) => _GetColorTableParameterfvEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterfvEXT(ColorTableTarget target, GetColorTableParameterPNameSGI pname, IntPtr @params) => _GetColorTableParameterfvEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterfvSGI(ColorTableTargetSGI target, GetColorTableParameterPNameSGI pname, float[] @params) => _GetColorTableParameterfvSGI(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterfvSGI(ColorTableTargetSGI target, GetColorTableParameterPNameSGI pname, void* @params) => _GetColorTableParameterfvSGI_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterfvSGI(ColorTableTargetSGI target, GetColorTableParameterPNameSGI pname, IntPtr @params) => _GetColorTableParameterfvSGI_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameteriv(ColorTableTarget target, GetColorTableParameterPNameSGI pname, int[] @params) => _GetColorTableParameteriv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameteriv(ColorTableTarget target, GetColorTableParameterPNameSGI pname, void* @params) => _GetColorTableParameteriv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameteriv(ColorTableTarget target, GetColorTableParameterPNameSGI pname, IntPtr @params) => _GetColorTableParameteriv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterivEXT(ColorTableTarget target, GetColorTableParameterPNameSGI pname, int[] @params) => _GetColorTableParameterivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterivEXT(ColorTableTarget target, GetColorTableParameterPNameSGI pname, void* @params) => _GetColorTableParameterivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterivEXT(ColorTableTarget target, GetColorTableParameterPNameSGI pname, IntPtr @params) => _GetColorTableParameterivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterivSGI(ColorTableTargetSGI target, GetColorTableParameterPNameSGI pname, int[] @params) => _GetColorTableParameterivSGI(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterivSGI(ColorTableTargetSGI target, GetColorTableParameterPNameSGI pname, void* @params) => _GetColorTableParameterivSGI_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableParameterivSGI(ColorTableTargetSGI target, GetColorTableParameterPNameSGI pname, IntPtr @params) => _GetColorTableParameterivSGI_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetColorTableSGI(ColorTableTargetSGI target, PixelFormat format, PixelType type, IntPtr table) => _GetColorTableSGI(target, format, type, table); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerInputParameterfvNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerParameterNV pname, float[] @params) => _GetCombinerInputParameterfvNV(stage, portion, variable, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerInputParameterfvNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerParameterNV pname, void* @params) => _GetCombinerInputParameterfvNV_ptr(stage, portion, variable, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerInputParameterfvNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerParameterNV pname, IntPtr @params) => _GetCombinerInputParameterfvNV_intptr(stage, portion, variable, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerInputParameterivNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerParameterNV pname, int[] @params) => _GetCombinerInputParameterivNV(stage, portion, variable, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerInputParameterivNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerParameterNV pname, void* @params) => _GetCombinerInputParameterivNV_ptr(stage, portion, variable, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerInputParameterivNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerVariableNV variable, CombinerParameterNV pname, IntPtr @params) => _GetCombinerInputParameterivNV_intptr(stage, portion, variable, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerOutputParameterfvNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerParameterNV pname, float[] @params) => _GetCombinerOutputParameterfvNV(stage, portion, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerOutputParameterfvNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerParameterNV pname, void* @params) => _GetCombinerOutputParameterfvNV_ptr(stage, portion, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerOutputParameterfvNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerParameterNV pname, IntPtr @params) => _GetCombinerOutputParameterfvNV_intptr(stage, portion, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerOutputParameterivNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerParameterNV pname, int[] @params) => _GetCombinerOutputParameterivNV(stage, portion, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerOutputParameterivNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerParameterNV pname, void* @params) => _GetCombinerOutputParameterivNV_ptr(stage, portion, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerOutputParameterivNV(CombinerStageNV stage, CombinerPortionNV portion, CombinerParameterNV pname, IntPtr @params) => _GetCombinerOutputParameterivNV_intptr(stage, portion, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerStageParameterfvNV(CombinerStageNV stage, CombinerParameterNV pname, float[] @params) => _GetCombinerStageParameterfvNV(stage, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerStageParameterfvNV(CombinerStageNV stage, CombinerParameterNV pname, void* @params) => _GetCombinerStageParameterfvNV_ptr(stage, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCombinerStageParameterfvNV(CombinerStageNV stage, CombinerParameterNV pname, IntPtr @params) => _GetCombinerStageParameterfvNV_intptr(stage, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetCommandHeaderNV(int tokenID, uint size) => _GetCommandHeaderNV(tokenID, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCompressedMultiTexImageEXT(TextureUnit texunit, TextureTarget target, int lod, IntPtr img) => _GetCompressedMultiTexImageEXT(texunit, target, lod, img); + + // --- + + /// + /// glGetCompressedTexImage and glGetnCompressedTexImage return the compressed texture image associated with target and lod into pixels. glGetCompressedTextureImage serves the same purpose, but instead of taking a texture target, it takes the ID of the texture object. pixels should be an array of bufSize bytes for glGetnCompresedTexImage and glGetCompressedTextureImage functions, and of GL_TEXTURE_COMPRESSED_IMAGE_SIZE bytes in case of glGetCompressedTexImage. If the actual data takes less space than bufSize, the remaining bytes will not be touched. target specifies the texture target, to which the texture the data the function should extract the data from is bound to. lod specifies the level-of-detail number of the desired image. + /// If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target (see glBindBuffer) while a texture image is requested, pixels is treated as a byte offset into the buffer object's data store. + /// To minimize errors, first verify that the texture is compressed by calling glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED. If the texture is compressed, you can determine the amount of memory required to store the compressed texture by calling glGetTexLevelParameter with argument GL_TEXTURE_COMPRESSED_IMAGE_SIZE. Finally, retrieve the internal format of the texture by calling glGetTexLevelParameter with argument GL_TEXTURE_INTERNAL_FORMAT. To store the texture for later use, associate the internal format and size with the retrieved texture image. These data can be used by the respective texture or subtexture loading routine used for loading target textures. + /// + /// Specifies the target to which the texture is bound for glGetCompressedTexImage and glGetnCompressedTexImage functions. GL_TEXTURE_1D, GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_3D, GL_TEXTURE_CUBE_MAP_ARRAY, GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, and GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, GL_TEXTURE_RECTANGLE are accepted. + /// Specifies the texture object name for glGetCompressedTextureImage function. + /// Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level $n$ is the $n$-th mipmap reduction image. + /// Specifies the size of the buffer pixels for glGetCompressedTextureImage and glGetnCompressedTexImage functions. + /// Returns the compressed texture image. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCompressedTexImage(TextureTarget target, int level, IntPtr img) => _GetCompressedTexImage(target, level, img); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCompressedTexImageARB(TextureTarget target, int level, IntPtr img) => _GetCompressedTexImageARB(target, level, img); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCompressedTextureImage(uint texture, int level, int bufSize, IntPtr pixels) => _GetCompressedTextureImage(texture, level, bufSize, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCompressedTextureImageEXT(uint texture, TextureTarget target, int lod, IntPtr img) => _GetCompressedTextureImageEXT(texture, target, lod, img); + + // --- + + /// + /// glGetCompressedTextureSubImage can be used to obtain a sub-region of a compressed texture image instead of the whole image, as long as the compressed data are arranged into fixed-size blocks of texels. texture is the name of the texture object, and must not be a buffer or multisample texture. The effective target is the value of GL_TEXTURE_TARGET for texture. level and pixels have the same meaning as the corresponding arguments of glCompressedTexSubImage3D. bufSize indicates the size of the buffer to receive the retrieved pixel data. + /// For cube map textures, the behavior is as though glGetCompressedTexImage were called once for each requested face (selected by zoffset and depth, as described below) with target corresponding to the requested texture cube map face as indicated by the table presented below. pixels is offset appropriately for each successive image. + /// Layer numberCube Map Face0GL_TEXTURE_CUBE_MAP_POSITIVE_X1GL_TEXTURE_CUBE_MAP_NEGATIVE_X2GL_TEXTURE_CUBE_MAP_POSITIVE_Y3GL_TEXTURE_CUBE_MAP_NEGATIVE_Y4GL_TEXTURE_CUBE_MAP_POSITIVE_Z5GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + /// xoffset, yoffset and zoffset indicate the position of the subregion to return. width, height and depth indicate the size of the region to return. These arguments have the same meaning as for glCompressedTexSubImage3D, though there are extra restrictions, described in the errors section below. + /// The mapping between the xoffset, yoffset, zoffset, width, height and depth parameters and the faces, layers, and layer-faces for cube map, array, and cube map array textures is the same as for glGetTextureSubImage. + /// The xoffset, yoffset, zoffset offsets and width, height and depth sizes must be multiples of the values of GL_PACK_COMPRESSED_BLOCK_WIDTH, GL_PACK_COMPRESSED_BLOCK_HEIGHT, and GL_PACK_COMPRESSED_BLOCK_DEPTH respectively, unless offset is zero and the corresponding size is the same as the texture size in that dimension. + /// Pixel storage modes are treated as for glGetCompressedTexSubImage. The texel at (xoffset, yoffset, zoffset) will be stored at the location indicated by pixels and the current pixel packing parameters. + /// + /// Specifies the name of the source texture object. Must be GL_TEXTURE_1D, GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_3D, GL_TEXTURE_CUBE_MAP, GL_TEXTURE_CUBE_MAP_ARRAY or GL_TEXTURE_RECTANGLE. In specific, buffer and multisample textures are not permitted. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level $n$ is the $n$th mipmap reduction image. + /// Specifies a texel offset in the x direction within the texture array. + /// Specifies a texel offset in the y direction within the texture array. + /// Specifies a texel offset in the z direction within the texture array. + /// Specifies the width of the texture subimage. Must be a multiple of the compressed block's width, unless the offset is zero and the size equals the texture image size. + /// Specifies the height of the texture subimage. Must be a multiple of the compressed block's height, unless the offset is zero and the size equals the texture image size. + /// Specifies the depth of the texture subimage. Must be a multiple of the compressed block's depth, unless the offset is zero and the size equals the texture image size. + /// Specifies the size of the buffer to receive the retrieved pixel data. + /// Returns the texture subimage. Should be a pointer to an array of the type specified by type. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCompressedTextureSubImage(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int bufSize, IntPtr pixels) => _GetCompressedTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, bufSize, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionFilter(ConvolutionTarget target, PixelFormat format, PixelType type, IntPtr image) => _GetConvolutionFilter(target, format, type, image); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionFilterEXT(ConvolutionTargetEXT target, PixelFormat format, PixelType type, IntPtr image) => _GetConvolutionFilterEXT(target, format, type, image); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameterfv(ConvolutionTarget target, ConvolutionParameterEXT pname, float[] @params) => _GetConvolutionParameterfv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameterfv(ConvolutionTarget target, ConvolutionParameterEXT pname, void* @params) => _GetConvolutionParameterfv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameterfv(ConvolutionTarget target, ConvolutionParameterEXT pname, IntPtr @params) => _GetConvolutionParameterfv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameterfvEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, float[] @params) => _GetConvolutionParameterfvEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameterfvEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, void* @params) => _GetConvolutionParameterfvEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameterfvEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, IntPtr @params) => _GetConvolutionParameterfvEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameteriv(ConvolutionTarget target, ConvolutionParameterEXT pname, int[] @params) => _GetConvolutionParameteriv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameteriv(ConvolutionTarget target, ConvolutionParameterEXT pname, void* @params) => _GetConvolutionParameteriv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameteriv(ConvolutionTarget target, ConvolutionParameterEXT pname, IntPtr @params) => _GetConvolutionParameteriv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameterivEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, int[] @params) => _GetConvolutionParameterivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameterivEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, void* @params) => _GetConvolutionParameterivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameterivEXT(ConvolutionTargetEXT target, ConvolutionParameterEXT pname, IntPtr @params) => _GetConvolutionParameterivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameterxvOES(int target, int pname, float[] @params) => _GetConvolutionParameterxvOES(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameterxvOES(int target, int pname, void* @params) => _GetConvolutionParameterxvOES_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetConvolutionParameterxvOES(int target, int pname, IntPtr @params) => _GetConvolutionParameterxvOES_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCoverageModulationTableNV(int bufSize, float[] v) => _GetCoverageModulationTableNV(bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCoverageModulationTableNV(int bufSize, void* v) => _GetCoverageModulationTableNV_ptr(bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetCoverageModulationTableNV(int bufSize, IntPtr v) => _GetCoverageModulationTableNV_intptr(bufSize, v); + + // --- + + /// + /// glGetDebugMessageLog retrieves messages from the debug message log. A maximum of count messages are retrieved from the log. If sources is not NULL then the source of each message is written into up to count elements of the array. If types is not NULL then the type of each message is written into up to count elements of the array. If id is not NULL then the identifier of each message is written into up to count elements of the array. If severities is not NULL then the severity of each message is written into up to count elements of the array. If lengths is not NULL then the length of each message is written into up to count elements of the array. + /// messageLog specifies the address of a character array into which the debug messages will be written. Each message will be concatenated onto the array starting at the first element of messageLog. bufSize specifies the size of the array messageLog. If a message will not fit into the remaining space in messageLog then the function terminates and returns the number of messages written so far, which may be zero. + /// If glGetDebugMessageLog returns zero then no messages are present in the debug log, or there was not enough space in messageLog to retrieve the first message in the queue. If messageLog is NULL then no messages are written and the value of bufSize is ignored. + /// + /// The number of debug messages to retrieve from the log. + /// The size of the buffer whose address is given by messageLog. + /// The address of an array of variables to receive the sources of the retrieved messages. + /// The address of an array of variables to receive the types of the retrieved messages. + /// The address of an array of unsigned integers to receive the ids of the retrieved messages. + /// The address of an array of variables to receive the severites of the retrieved messages. + /// The address of an array of variables to receive the lengths of the received messages. + /// The address of an array of characters that will receive the messages. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetDebugMessageLog(uint count, int bufSize, DebugSource[] sources, DebugType[] types, uint[] ids, DebugSeverity[] severities, int[] lengths, string messageLog) => _GetDebugMessageLog(count, bufSize, sources, types, ids, severities, lengths, messageLog); + + /// + /// glGetDebugMessageLog retrieves messages from the debug message log. A maximum of count messages are retrieved from the log. If sources is not NULL then the source of each message is written into up to count elements of the array. If types is not NULL then the type of each message is written into up to count elements of the array. If id is not NULL then the identifier of each message is written into up to count elements of the array. If severities is not NULL then the severity of each message is written into up to count elements of the array. If lengths is not NULL then the length of each message is written into up to count elements of the array. + /// messageLog specifies the address of a character array into which the debug messages will be written. Each message will be concatenated onto the array starting at the first element of messageLog. bufSize specifies the size of the array messageLog. If a message will not fit into the remaining space in messageLog then the function terminates and returns the number of messages written so far, which may be zero. + /// If glGetDebugMessageLog returns zero then no messages are present in the debug log, or there was not enough space in messageLog to retrieve the first message in the queue. If messageLog is NULL then no messages are written and the value of bufSize is ignored. + /// + /// The number of debug messages to retrieve from the log. + /// The size of the buffer whose address is given by messageLog. + /// The address of an array of variables to receive the sources of the retrieved messages. + /// The address of an array of variables to receive the types of the retrieved messages. + /// The address of an array of unsigned integers to receive the ids of the retrieved messages. + /// The address of an array of variables to receive the severites of the retrieved messages. + /// The address of an array of variables to receive the lengths of the received messages. + /// The address of an array of characters that will receive the messages. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetDebugMessageLog(uint count, int bufSize, void* sources, void* types, void* ids, void* severities, void* lengths, void* messageLog) => _GetDebugMessageLog_ptr(count, bufSize, sources, types, ids, severities, lengths, messageLog); + + /// + /// glGetDebugMessageLog retrieves messages from the debug message log. A maximum of count messages are retrieved from the log. If sources is not NULL then the source of each message is written into up to count elements of the array. If types is not NULL then the type of each message is written into up to count elements of the array. If id is not NULL then the identifier of each message is written into up to count elements of the array. If severities is not NULL then the severity of each message is written into up to count elements of the array. If lengths is not NULL then the length of each message is written into up to count elements of the array. + /// messageLog specifies the address of a character array into which the debug messages will be written. Each message will be concatenated onto the array starting at the first element of messageLog. bufSize specifies the size of the array messageLog. If a message will not fit into the remaining space in messageLog then the function terminates and returns the number of messages written so far, which may be zero. + /// If glGetDebugMessageLog returns zero then no messages are present in the debug log, or there was not enough space in messageLog to retrieve the first message in the queue. If messageLog is NULL then no messages are written and the value of bufSize is ignored. + /// + /// The number of debug messages to retrieve from the log. + /// The size of the buffer whose address is given by messageLog. + /// The address of an array of variables to receive the sources of the retrieved messages. + /// The address of an array of variables to receive the types of the retrieved messages. + /// The address of an array of unsigned integers to receive the ids of the retrieved messages. + /// The address of an array of variables to receive the severites of the retrieved messages. + /// The address of an array of variables to receive the lengths of the received messages. + /// The address of an array of characters that will receive the messages. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetDebugMessageLog(uint count, int bufSize, IntPtr sources, IntPtr types, IntPtr ids, IntPtr severities, IntPtr lengths, IntPtr messageLog) => _GetDebugMessageLog_intptr(count, bufSize, sources, types, ids, severities, lengths, messageLog); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetDebugMessageLogAMD(uint count, int bufSize, int[] categories, uint[] severities, uint[] ids, int[] lengths, string message) => _GetDebugMessageLogAMD(count, bufSize, categories, severities, ids, lengths, message); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetDebugMessageLogAMD(uint count, int bufSize, void* categories, void* severities, void* ids, void* lengths, void* message) => _GetDebugMessageLogAMD_ptr(count, bufSize, categories, severities, ids, lengths, message); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetDebugMessageLogAMD(uint count, int bufSize, IntPtr categories, IntPtr severities, IntPtr ids, IntPtr lengths, IntPtr message) => _GetDebugMessageLogAMD_intptr(count, bufSize, categories, severities, ids, lengths, message); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetDebugMessageLogARB(uint count, int bufSize, DebugSource[] sources, DebugType[] types, uint[] ids, DebugSeverity[] severities, int[] lengths, string messageLog) => _GetDebugMessageLogARB(count, bufSize, sources, types, ids, severities, lengths, messageLog); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetDebugMessageLogARB(uint count, int bufSize, void* sources, void* types, void* ids, void* severities, void* lengths, void* messageLog) => _GetDebugMessageLogARB_ptr(count, bufSize, sources, types, ids, severities, lengths, messageLog); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetDebugMessageLogARB(uint count, int bufSize, IntPtr sources, IntPtr types, IntPtr ids, IntPtr severities, IntPtr lengths, IntPtr messageLog) => _GetDebugMessageLogARB_intptr(count, bufSize, sources, types, ids, severities, lengths, messageLog); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetDebugMessageLogKHR(uint count, int bufSize, DebugSource[] sources, DebugType[] types, uint[] ids, DebugSeverity[] severities, int[] lengths, string messageLog) => _GetDebugMessageLogKHR(count, bufSize, sources, types, ids, severities, lengths, messageLog); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetDebugMessageLogKHR(uint count, int bufSize, void* sources, void* types, void* ids, void* severities, void* lengths, void* messageLog) => _GetDebugMessageLogKHR_ptr(count, bufSize, sources, types, ids, severities, lengths, messageLog); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetDebugMessageLogKHR(uint count, int bufSize, IntPtr sources, IntPtr types, IntPtr ids, IntPtr severities, IntPtr lengths, IntPtr messageLog) => _GetDebugMessageLogKHR_intptr(count, bufSize, sources, types, ids, severities, lengths, messageLog); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDetailTexFuncSGIS(TextureTarget target, float[] points) => _GetDetailTexFuncSGIS(target, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDetailTexFuncSGIS(TextureTarget target, void* points) => _GetDetailTexFuncSGIS_ptr(target, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDetailTexFuncSGIS(TextureTarget target, IntPtr points) => _GetDetailTexFuncSGIS_intptr(target, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDoubleIndexedvEXT(int target, uint index, double[] data) => _GetDoubleIndexedvEXT(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDoubleIndexedvEXT(int target, uint index, void* data) => _GetDoubleIndexedvEXT_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDoubleIndexedvEXT(int target, uint index, IntPtr data) => _GetDoubleIndexedvEXT_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDoublei_v(int target, uint index, double[] data) => _GetDoublei_v(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDoublei_v(int target, uint index, void* data) => _GetDoublei_v_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDoublei_v(int target, uint index, IntPtr data) => _GetDoublei_v_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDoublei_vEXT(int pname, uint index, double[] @params) => _GetDoublei_vEXT(pname, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDoublei_vEXT(int pname, uint index, void* @params) => _GetDoublei_vEXT_ptr(pname, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDoublei_vEXT(int pname, uint index, IntPtr @params) => _GetDoublei_vEXT_intptr(pname, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDoublev(GetPName pname, double[] data) => _GetDoublev(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDoublev(GetPName pname, void* data) => _GetDoublev_ptr(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDoublev(GetPName pname, IntPtr data) => _GetDoublev_intptr(pname, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDriverControlStringQCOM(uint driverControl, int bufSize, int[] length, string driverControlString) => _GetDriverControlStringQCOM(driverControl, bufSize, length, driverControlString); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDriverControlStringQCOM(uint driverControl, int bufSize, void* length, void* driverControlString) => _GetDriverControlStringQCOM_ptr(driverControl, bufSize, length, driverControlString); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDriverControlStringQCOM(uint driverControl, int bufSize, IntPtr length, IntPtr driverControlString) => _GetDriverControlStringQCOM_intptr(driverControl, bufSize, length, driverControlString); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDriverControlsQCOM(int[] num, int size, uint[] driverControls) => _GetDriverControlsQCOM(num, size, driverControls); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDriverControlsQCOM(void* num, int size, void* driverControls) => _GetDriverControlsQCOM_ptr(num, size, driverControls); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetDriverControlsQCOM(IntPtr num, int size, IntPtr driverControls) => _GetDriverControlsQCOM_intptr(num, size, driverControls); + + // --- + + /// + /// glGetError returns the value of the error flag. Each detectable error is assigned a numeric code and symbolic name. When an error occurs, the error flag is set to the appropriate error code value. No other errors are recorded until glGetError is called, the error code is returned, and the flag is reset to GL_NO_ERROR. If a call to glGetError returns GL_NO_ERROR, there has been no detectable error since the last call to glGetError, or since the GL was initialized. + /// To allow for distributed implementations, there may be several error flags. If any single error flag has recorded an error, the value of that flag is returned and that flag is reset to GL_NO_ERROR when glGetError is called. If more than one flag has recorded an error, glGetError returns and clears an arbitrary error flag value. Thus, glGetError should always be called in a loop, until it returns GL_NO_ERROR, if all error flags are to be reset. + /// Initially, all error flags are set to GL_NO_ERROR. + /// The following errors are currently defined: + /// GL_NO_ERROR No error has been recorded. The value of this symbolic constant is guaranteed to be 0. GL_INVALID_ENUM An unacceptable value is specified for an enumerated argument. The offending command is ignored and has no other side effect than to set the error flag. GL_INVALID_VALUE A numeric argument is out of range. The offending command is ignored and has no other side effect than to set the error flag. GL_INVALID_OPERATION The specified operation is not allowed in the current state. The offending command is ignored and has no other side effect than to set the error flag. GL_INVALID_FRAMEBUFFER_OPERATION The framebuffer object is not complete. The offending command is ignored and has no other side effect than to set the error flag. GL_OUT_OF_MEMORY There is not enough memory left to execute the command. The state of the GL is undefined, except for the state of the error flags, after this error is recorded. GL_STACK_UNDERFLOW An attempt has been made to perform an operation that would cause an internal stack to underflow. GL_STACK_OVERFLOW An attempt has been made to perform an operation that would cause an internal stack to overflow. + /// When an error flag is set, results of a GL operation are undefined only if GL_OUT_OF_MEMORY has occurred. In all other cases, the command generating the error is ignored and has no effect on the GL state or frame buffer contents. If the generating command returns a value, it returns 0. If glGetError itself generates an error, it returns 0. + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetError() => _GetError(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFenceivNV(uint fence, FenceParameterNameNV pname, int[] @params) => _GetFenceivNV(fence, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFenceivNV(uint fence, FenceParameterNameNV pname, void* @params) => _GetFenceivNV_ptr(fence, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFenceivNV(uint fence, FenceParameterNameNV pname, IntPtr @params) => _GetFenceivNV_intptr(fence, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFinalCombinerInputParameterfvNV(CombinerVariableNV variable, CombinerParameterNV pname, float[] @params) => _GetFinalCombinerInputParameterfvNV(variable, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFinalCombinerInputParameterfvNV(CombinerVariableNV variable, CombinerParameterNV pname, void* @params) => _GetFinalCombinerInputParameterfvNV_ptr(variable, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFinalCombinerInputParameterfvNV(CombinerVariableNV variable, CombinerParameterNV pname, IntPtr @params) => _GetFinalCombinerInputParameterfvNV_intptr(variable, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFinalCombinerInputParameterivNV(CombinerVariableNV variable, CombinerParameterNV pname, int[] @params) => _GetFinalCombinerInputParameterivNV(variable, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFinalCombinerInputParameterivNV(CombinerVariableNV variable, CombinerParameterNV pname, void* @params) => _GetFinalCombinerInputParameterivNV_ptr(variable, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFinalCombinerInputParameterivNV(CombinerVariableNV variable, CombinerParameterNV pname, IntPtr @params) => _GetFinalCombinerInputParameterivNV_intptr(variable, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFirstPerfQueryIdINTEL(uint[] queryId) => _GetFirstPerfQueryIdINTEL(queryId); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFirstPerfQueryIdINTEL(void* queryId) => _GetFirstPerfQueryIdINTEL_ptr(queryId); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFirstPerfQueryIdINTEL(IntPtr queryId) => _GetFirstPerfQueryIdINTEL_intptr(queryId); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFixedv(GetPName pname, float[] @params) => _GetFixedv(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFixedv(GetPName pname, void* @params) => _GetFixedv_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFixedv(GetPName pname, IntPtr @params) => _GetFixedv_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFixedvOES(GetPName pname, float[] @params) => _GetFixedvOES(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFixedvOES(GetPName pname, void* @params) => _GetFixedvOES_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFixedvOES(GetPName pname, IntPtr @params) => _GetFixedvOES_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloatIndexedvEXT(int target, uint index, float[] data) => _GetFloatIndexedvEXT(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloatIndexedvEXT(int target, uint index, void* data) => _GetFloatIndexedvEXT_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloatIndexedvEXT(int target, uint index, IntPtr data) => _GetFloatIndexedvEXT_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloati_v(int target, uint index, float[] data) => _GetFloati_v(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloati_v(int target, uint index, void* data) => _GetFloati_v_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloati_v(int target, uint index, IntPtr data) => _GetFloati_v_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloati_vEXT(int pname, uint index, float[] @params) => _GetFloati_vEXT(pname, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloati_vEXT(int pname, uint index, void* @params) => _GetFloati_vEXT_ptr(pname, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloati_vEXT(int pname, uint index, IntPtr @params) => _GetFloati_vEXT_intptr(pname, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloati_vNV(int target, uint index, float[] data) => _GetFloati_vNV(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloati_vNV(int target, uint index, void* data) => _GetFloati_vNV_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloati_vNV(int target, uint index, IntPtr data) => _GetFloati_vNV_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloati_vOES(int target, uint index, float[] data) => _GetFloati_vOES(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloati_vOES(int target, uint index, void* data) => _GetFloati_vOES_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloati_vOES(int target, uint index, IntPtr data) => _GetFloati_vOES_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloatv(GetPName pname, float[] data) => _GetFloatv(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloatv(GetPName pname, void* data) => _GetFloatv_ptr(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFloatv(GetPName pname, IntPtr data) => _GetFloatv_intptr(pname, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFogFuncSGIS(float[] points) => _GetFogFuncSGIS(points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFogFuncSGIS(void* points) => _GetFogFuncSGIS_ptr(points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFogFuncSGIS(IntPtr points) => _GetFogFuncSGIS_intptr(points); + + // --- + + /// + /// glGetFragDataIndex returns the index of the fragment color to which the variable name was bound when the program object program was last linked. If name is not a varying out variable of program, or if an error occurs, -1 will be returned. + /// + /// The name of the program containing varying out variable whose binding to query + /// The name of the user-defined varying out variable whose index to query + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFragDataIndex(uint program, string name) => _GetFragDataIndex(program, name); + + /// + /// glGetFragDataIndex returns the index of the fragment color to which the variable name was bound when the program object program was last linked. If name is not a varying out variable of program, or if an error occurs, -1 will be returned. + /// + /// The name of the program containing varying out variable whose binding to query + /// The name of the user-defined varying out variable whose index to query + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFragDataIndex(uint program, void* name) => _GetFragDataIndex_ptr(program, name); + + /// + /// glGetFragDataIndex returns the index of the fragment color to which the variable name was bound when the program object program was last linked. If name is not a varying out variable of program, or if an error occurs, -1 will be returned. + /// + /// The name of the program containing varying out variable whose binding to query + /// The name of the user-defined varying out variable whose index to query + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFragDataIndex(uint program, IntPtr name) => _GetFragDataIndex_intptr(program, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFragDataIndexEXT(uint program, string name) => _GetFragDataIndexEXT(program, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFragDataIndexEXT(uint program, void* name) => _GetFragDataIndexEXT_ptr(program, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFragDataIndexEXT(uint program, IntPtr name) => _GetFragDataIndexEXT_intptr(program, name); + + // --- + + /// + /// glGetFragDataLocation retrieves the assigned color number binding for the user-defined varying out variable name for program program. program must have previously been linked. name must be a null-terminated string. If name is not the name of an active user-defined varying out fragment shader variable within program, -1 will be returned. + /// + /// The name of the program containing varying out variable whose binding to query + /// The name of the user-defined varying out variable whose binding to query + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFragDataLocation(uint program, string name) => _GetFragDataLocation(program, name); + + /// + /// glGetFragDataLocation retrieves the assigned color number binding for the user-defined varying out variable name for program program. program must have previously been linked. name must be a null-terminated string. If name is not the name of an active user-defined varying out fragment shader variable within program, -1 will be returned. + /// + /// The name of the program containing varying out variable whose binding to query + /// The name of the user-defined varying out variable whose binding to query + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFragDataLocation(uint program, void* name) => _GetFragDataLocation_ptr(program, name); + + /// + /// glGetFragDataLocation retrieves the assigned color number binding for the user-defined varying out variable name for program program. program must have previously been linked. name must be a null-terminated string. If name is not the name of an active user-defined varying out fragment shader variable within program, -1 will be returned. + /// + /// The name of the program containing varying out variable whose binding to query + /// The name of the user-defined varying out variable whose binding to query + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFragDataLocation(uint program, IntPtr name) => _GetFragDataLocation_intptr(program, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFragDataLocationEXT(uint program, string name) => _GetFragDataLocationEXT(program, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFragDataLocationEXT(uint program, void* name) => _GetFragDataLocationEXT_ptr(program, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFragDataLocationEXT(uint program, IntPtr name) => _GetFragDataLocationEXT_intptr(program, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFragmentLightfvSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, float[] @params) => _GetFragmentLightfvSGIX(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFragmentLightfvSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, void* @params) => _GetFragmentLightfvSGIX_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFragmentLightfvSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, IntPtr @params) => _GetFragmentLightfvSGIX_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFragmentLightivSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, int[] @params) => _GetFragmentLightivSGIX(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFragmentLightivSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, void* @params) => _GetFragmentLightivSGIX_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFragmentLightivSGIX(FragmentLightNameSGIX light, FragmentLightParameterSGIX pname, IntPtr @params) => _GetFragmentLightivSGIX_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFragmentMaterialfvSGIX(MaterialFace face, MaterialParameter pname, float[] @params) => _GetFragmentMaterialfvSGIX(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFragmentMaterialfvSGIX(MaterialFace face, MaterialParameter pname, void* @params) => _GetFragmentMaterialfvSGIX_ptr(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFragmentMaterialfvSGIX(MaterialFace face, MaterialParameter pname, IntPtr @params) => _GetFragmentMaterialfvSGIX_intptr(face, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFragmentMaterialivSGIX(MaterialFace face, MaterialParameter pname, int[] @params) => _GetFragmentMaterialivSGIX(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFragmentMaterialivSGIX(MaterialFace face, MaterialParameter pname, void* @params) => _GetFragmentMaterialivSGIX_ptr(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFragmentMaterialivSGIX(MaterialFace face, MaterialParameter pname, IntPtr @params) => _GetFragmentMaterialivSGIX_intptr(face, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferAttachmentParameteriv(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, int[] @params) => _GetFramebufferAttachmentParameteriv(target, attachment, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferAttachmentParameteriv(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, void* @params) => _GetFramebufferAttachmentParameteriv_ptr(target, attachment, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferAttachmentParameteriv(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, IntPtr @params) => _GetFramebufferAttachmentParameteriv_intptr(target, attachment, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferAttachmentParameterivEXT(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, int[] @params) => _GetFramebufferAttachmentParameterivEXT(target, attachment, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferAttachmentParameterivEXT(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, void* @params) => _GetFramebufferAttachmentParameterivEXT_ptr(target, attachment, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferAttachmentParameterivEXT(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, IntPtr @params) => _GetFramebufferAttachmentParameterivEXT_intptr(target, attachment, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferAttachmentParameterivOES(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, int[] @params) => _GetFramebufferAttachmentParameterivOES(target, attachment, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferAttachmentParameterivOES(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, void* @params) => _GetFramebufferAttachmentParameterivOES_ptr(target, attachment, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferAttachmentParameterivOES(FramebufferTarget target, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, IntPtr @params) => _GetFramebufferAttachmentParameterivOES_intptr(target, attachment, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferParameterfvAMD(FramebufferTarget target, FramebufferAttachmentParameterName pname, uint numsamples, uint pixelindex, int size, float[] values) => _GetFramebufferParameterfvAMD(target, pname, numsamples, pixelindex, size, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferParameterfvAMD(FramebufferTarget target, FramebufferAttachmentParameterName pname, uint numsamples, uint pixelindex, int size, void* values) => _GetFramebufferParameterfvAMD_ptr(target, pname, numsamples, pixelindex, size, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferParameterfvAMD(FramebufferTarget target, FramebufferAttachmentParameterName pname, uint numsamples, uint pixelindex, int size, IntPtr values) => _GetFramebufferParameterfvAMD_intptr(target, pname, numsamples, pixelindex, size, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferParameteriv(FramebufferTarget target, FramebufferAttachmentParameterName pname, int[] @params) => _GetFramebufferParameteriv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferParameteriv(FramebufferTarget target, FramebufferAttachmentParameterName pname, void* @params) => _GetFramebufferParameteriv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferParameteriv(FramebufferTarget target, FramebufferAttachmentParameterName pname, IntPtr @params) => _GetFramebufferParameteriv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferParameterivEXT(uint framebuffer, GetFramebufferParameter pname, int[] @params) => _GetFramebufferParameterivEXT(framebuffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferParameterivEXT(uint framebuffer, GetFramebufferParameter pname, void* @params) => _GetFramebufferParameterivEXT_ptr(framebuffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferParameterivEXT(uint framebuffer, GetFramebufferParameter pname, IntPtr @params) => _GetFramebufferParameterivEXT_intptr(framebuffer, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetFramebufferPixelLocalStorageSizeEXT(uint target) => _GetFramebufferPixelLocalStorageSizeEXT(target); + + // --- + + /// + /// Certain events can result in a reset of the GL context. Such a reset causes all context state to be lost and requires the application to recreate all objects in the affected context. + /// glGetGraphicsResetStatus can return one of the following constants: + /// GL_NO_ERROR Indicates that the GL context has not been in a reset state since the last call. GL_GUILTY_CONTEXT_RESET Indicates that a reset has been detected that is attributable to the current GL context. GL_INNOCENT_CONTEXT_RESET Indicates a reset has been detected that is not attributable to the current GL context. GL_UNKNOWN_CONTEXT_RESET Indicates a detected graphics reset whose cause is unknown. + /// If a reset status other than GL_NO_ERROR is returned and subsequent calls return GL_NO_ERROR, the context reset was encountered and completed. If a reset status is repeatedly returned, the context may be in the process of resetting. + /// Reset notification behavior is determined at context creation time, and may be queried by calling GetIntegerv with the symbolic constant GL_RESET_NOTIFICATION_STRATEGY. + /// If the reset notification behavior is GL_NO_RESET_NOTIFICATION, then the implementation will never deliver notification of reset events, and glGetGraphicsResetStatus will always return GL_NO_ERROR. + /// If the behavior is GL_LOSE_CONTEXT_ON_RESET, a graphics reset will result in the loss of all context state, requiring the recreation of all associated objects. In this case glGetGraphicsResetStatus may return any of the values described above. + /// If a graphics reset notification occurs in a context, a notification must also occur in all other contexts which share objects with that context. + /// After a graphics reset has occurred on a context, subsequent GL commands on that context (or any context which shares with that context) will generate a GL_CONTEXT_LOST error. Such commands will not have side effects (in particular, they will not modify memory passed by pointer for query results), and will not block indefinitely or cause termination of the application. There are two important exceptions to this behavior: + /// glGetError and glGetGraphicsResetStatus behave normally following a graphics reset, so that the application can determine a reset has occurred, and when it is safe to destroy and re-create the context. Any commands which might cause a polling application to block indefinitely will generate a GL_CONTEXT_LOST error, but will also return a value indicating completion to the application. Such commands include: glGetSynciv with pname GL_SYNC_STATUS ignores the other parameters and returns GL_SIGNALED in values. glGetQueryObjectuiv with pname GL_QUERY_RESULT_AVAILABLE ignores the other parameters and returns TRUE in params. + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetGraphicsResetStatus() => _GetGraphicsResetStatus(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetGraphicsResetStatusARB() => _GetGraphicsResetStatusARB(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetGraphicsResetStatusEXT() => _GetGraphicsResetStatusEXT(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetGraphicsResetStatusKHR() => _GetGraphicsResetStatusKHR(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetHandleARB(int pname) => _GetHandleARB(pname); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogram(HistogramTargetEXT target, bool reset, PixelFormat format, PixelType type, IntPtr values) => _GetHistogram(target, reset, format, type, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramEXT(HistogramTargetEXT target, bool reset, PixelFormat format, PixelType type, IntPtr values) => _GetHistogramEXT(target, reset, format, type, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameterfv(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, float[] @params) => _GetHistogramParameterfv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameterfv(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, void* @params) => _GetHistogramParameterfv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameterfv(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, IntPtr @params) => _GetHistogramParameterfv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameterfvEXT(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, float[] @params) => _GetHistogramParameterfvEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameterfvEXT(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, void* @params) => _GetHistogramParameterfvEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameterfvEXT(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, IntPtr @params) => _GetHistogramParameterfvEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameteriv(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, int[] @params) => _GetHistogramParameteriv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameteriv(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, void* @params) => _GetHistogramParameteriv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameteriv(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, IntPtr @params) => _GetHistogramParameteriv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameterivEXT(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, int[] @params) => _GetHistogramParameterivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameterivEXT(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, void* @params) => _GetHistogramParameterivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameterivEXT(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, IntPtr @params) => _GetHistogramParameterivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameterxvOES(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, float[] @params) => _GetHistogramParameterxvOES(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameterxvOES(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, void* @params) => _GetHistogramParameterxvOES_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetHistogramParameterxvOES(HistogramTargetEXT target, GetHistogramParameterPNameEXT pname, IntPtr @params) => _GetHistogramParameterxvOES_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public UInt64 GetImageHandleARB(uint texture, int level, bool layered, int layer, PixelFormat format) => _GetImageHandleARB(texture, level, layered, layer, format); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public UInt64 GetImageHandleNV(uint texture, int level, bool layered, int layer, PixelFormat format) => _GetImageHandleNV(texture, level, layered, layer, format); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetImageTransformParameterfvHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, float[] @params) => _GetImageTransformParameterfvHP(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetImageTransformParameterfvHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, void* @params) => _GetImageTransformParameterfvHP_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetImageTransformParameterfvHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, IntPtr @params) => _GetImageTransformParameterfvHP_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetImageTransformParameterivHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, int[] @params) => _GetImageTransformParameterivHP(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetImageTransformParameterivHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, void* @params) => _GetImageTransformParameterivHP_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetImageTransformParameterivHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, IntPtr @params) => _GetImageTransformParameterivHP_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInfoLogARB(int obj, int maxLength, out int length, string infoLog) => _GetInfoLogARB(obj, maxLength, out length, infoLog); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInfoLogARB(int obj, int maxLength, out int length, void* infoLog) => _GetInfoLogARB_ptr(obj, maxLength, out length, infoLog); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInfoLogARB(int obj, int maxLength, out int length, IntPtr infoLog) => _GetInfoLogARB_intptr(obj, maxLength, out length, infoLog); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetInstrumentsSGIX() => _GetInstrumentsSGIX(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInteger64i_v(int target, uint index, Int64[] data) => _GetInteger64i_v(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInteger64i_v(int target, uint index, void* data) => _GetInteger64i_v_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInteger64i_v(int target, uint index, IntPtr data) => _GetInteger64i_v_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInteger64v(GetPName pname, Int64[] data) => _GetInteger64v(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInteger64v(GetPName pname, void* data) => _GetInteger64v_ptr(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInteger64v(GetPName pname, IntPtr data) => _GetInteger64v_intptr(pname, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInteger64vAPPLE(GetPName pname, Int64[] @params) => _GetInteger64vAPPLE(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInteger64vAPPLE(GetPName pname, void* @params) => _GetInteger64vAPPLE_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInteger64vAPPLE(GetPName pname, IntPtr @params) => _GetInteger64vAPPLE_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInteger64vEXT(GetPName pname, Int64[] data) => _GetInteger64vEXT(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInteger64vEXT(GetPName pname, void* data) => _GetInteger64vEXT_ptr(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInteger64vEXT(GetPName pname, IntPtr data) => _GetInteger64vEXT_intptr(pname, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegerIndexedvEXT(int target, uint index, int[] data) => _GetIntegerIndexedvEXT(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegerIndexedvEXT(int target, uint index, void* data) => _GetIntegerIndexedvEXT_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegerIndexedvEXT(int target, uint index, IntPtr data) => _GetIntegerIndexedvEXT_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegeri_v(int target, uint index, int[] data) => _GetIntegeri_v(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegeri_v(int target, uint index, void* data) => _GetIntegeri_v_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegeri_v(int target, uint index, IntPtr data) => _GetIntegeri_v_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegeri_vEXT(int target, uint index, int[] data) => _GetIntegeri_vEXT(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegeri_vEXT(int target, uint index, void* data) => _GetIntegeri_vEXT_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegeri_vEXT(int target, uint index, IntPtr data) => _GetIntegeri_vEXT_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegerui64i_vNV(int value, uint index, UInt64[] result) => _GetIntegerui64i_vNV(value, index, result); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegerui64i_vNV(int value, uint index, void* result) => _GetIntegerui64i_vNV_ptr(value, index, result); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegerui64i_vNV(int value, uint index, IntPtr result) => _GetIntegerui64i_vNV_intptr(value, index, result); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegerui64vNV(int value, UInt64[] result) => _GetIntegerui64vNV(value, result); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegerui64vNV(int value, void* result) => _GetIntegerui64vNV_ptr(value, result); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegerui64vNV(int value, IntPtr result) => _GetIntegerui64vNV_intptr(value, result); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegerv(GetPName pname, int[] data) => _GetIntegerv(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegerv(GetPName pname, void* data) => _GetIntegerv_ptr(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetIntegerv(GetPName pname, IntPtr data) => _GetIntegerv_intptr(pname, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInternalformatSampleivNV(TextureTarget target, InternalFormat internalformat, int samples, InternalFormatPName pname, int count, int[] @params) => _GetInternalformatSampleivNV(target, internalformat, samples, pname, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInternalformatSampleivNV(TextureTarget target, InternalFormat internalformat, int samples, InternalFormatPName pname, int count, void* @params) => _GetInternalformatSampleivNV_ptr(target, internalformat, samples, pname, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInternalformatSampleivNV(TextureTarget target, InternalFormat internalformat, int samples, InternalFormatPName pname, int count, IntPtr @params) => _GetInternalformatSampleivNV_intptr(target, internalformat, samples, pname, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInternalformati64v(TextureTarget target, InternalFormat internalformat, InternalFormatPName pname, int count, Int64[] @params) => _GetInternalformati64v(target, internalformat, pname, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInternalformati64v(TextureTarget target, InternalFormat internalformat, InternalFormatPName pname, int count, void* @params) => _GetInternalformati64v_ptr(target, internalformat, pname, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInternalformati64v(TextureTarget target, InternalFormat internalformat, InternalFormatPName pname, int count, IntPtr @params) => _GetInternalformati64v_intptr(target, internalformat, pname, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInternalformativ(TextureTarget target, InternalFormat internalformat, InternalFormatPName pname, int count, int[] @params) => _GetInternalformativ(target, internalformat, pname, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInternalformativ(TextureTarget target, InternalFormat internalformat, InternalFormatPName pname, int count, void* @params) => _GetInternalformativ_ptr(target, internalformat, pname, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInternalformativ(TextureTarget target, InternalFormat internalformat, InternalFormatPName pname, int count, IntPtr @params) => _GetInternalformativ_intptr(target, internalformat, pname, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInvariantBooleanvEXT(uint id, GetVariantValueEXT value, bool[] data) => _GetInvariantBooleanvEXT(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInvariantBooleanvEXT(uint id, GetVariantValueEXT value, void* data) => _GetInvariantBooleanvEXT_ptr(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInvariantBooleanvEXT(uint id, GetVariantValueEXT value, IntPtr data) => _GetInvariantBooleanvEXT_intptr(id, value, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInvariantFloatvEXT(uint id, GetVariantValueEXT value, float[] data) => _GetInvariantFloatvEXT(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInvariantFloatvEXT(uint id, GetVariantValueEXT value, void* data) => _GetInvariantFloatvEXT_ptr(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInvariantFloatvEXT(uint id, GetVariantValueEXT value, IntPtr data) => _GetInvariantFloatvEXT_intptr(id, value, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInvariantIntegervEXT(uint id, GetVariantValueEXT value, int[] data) => _GetInvariantIntegervEXT(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInvariantIntegervEXT(uint id, GetVariantValueEXT value, void* data) => _GetInvariantIntegervEXT_ptr(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetInvariantIntegervEXT(uint id, GetVariantValueEXT value, IntPtr data) => _GetInvariantIntegervEXT_intptr(id, value, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightfv(LightName light, LightParameter pname, float[] @params) => _GetLightfv(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightfv(LightName light, LightParameter pname, void* @params) => _GetLightfv_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightfv(LightName light, LightParameter pname, IntPtr @params) => _GetLightfv_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightiv(LightName light, LightParameter pname, int[] @params) => _GetLightiv(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightiv(LightName light, LightParameter pname, void* @params) => _GetLightiv_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightiv(LightName light, LightParameter pname, IntPtr @params) => _GetLightiv_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightxOES(LightName light, LightParameter pname, float[] @params) => _GetLightxOES(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightxOES(LightName light, LightParameter pname, void* @params) => _GetLightxOES_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightxOES(LightName light, LightParameter pname, IntPtr @params) => _GetLightxOES_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightxv(LightName light, LightParameter pname, float[] @params) => _GetLightxv(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightxv(LightName light, LightParameter pname, void* @params) => _GetLightxv_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightxv(LightName light, LightParameter pname, IntPtr @params) => _GetLightxv_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightxvOES(LightName light, LightParameter pname, float[] @params) => _GetLightxvOES(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightxvOES(LightName light, LightParameter pname, void* @params) => _GetLightxvOES_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLightxvOES(LightName light, LightParameter pname, IntPtr @params) => _GetLightxvOES_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetListParameterfvSGIX(uint list, ListParameterName pname, float[] @params) => _GetListParameterfvSGIX(list, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetListParameterfvSGIX(uint list, ListParameterName pname, void* @params) => _GetListParameterfvSGIX_ptr(list, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetListParameterfvSGIX(uint list, ListParameterName pname, IntPtr @params) => _GetListParameterfvSGIX_intptr(list, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetListParameterivSGIX(uint list, ListParameterName pname, int[] @params) => _GetListParameterivSGIX(list, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetListParameterivSGIX(uint list, ListParameterName pname, void* @params) => _GetListParameterivSGIX_ptr(list, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetListParameterivSGIX(uint list, ListParameterName pname, IntPtr @params) => _GetListParameterivSGIX_intptr(list, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLocalConstantBooleanvEXT(uint id, GetVariantValueEXT value, bool[] data) => _GetLocalConstantBooleanvEXT(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLocalConstantBooleanvEXT(uint id, GetVariantValueEXT value, void* data) => _GetLocalConstantBooleanvEXT_ptr(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLocalConstantBooleanvEXT(uint id, GetVariantValueEXT value, IntPtr data) => _GetLocalConstantBooleanvEXT_intptr(id, value, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLocalConstantFloatvEXT(uint id, GetVariantValueEXT value, float[] data) => _GetLocalConstantFloatvEXT(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLocalConstantFloatvEXT(uint id, GetVariantValueEXT value, void* data) => _GetLocalConstantFloatvEXT_ptr(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLocalConstantFloatvEXT(uint id, GetVariantValueEXT value, IntPtr data) => _GetLocalConstantFloatvEXT_intptr(id, value, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLocalConstantIntegervEXT(uint id, GetVariantValueEXT value, int[] data) => _GetLocalConstantIntegervEXT(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLocalConstantIntegervEXT(uint id, GetVariantValueEXT value, void* data) => _GetLocalConstantIntegervEXT_ptr(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetLocalConstantIntegervEXT(uint id, GetVariantValueEXT value, IntPtr data) => _GetLocalConstantIntegervEXT_intptr(id, value, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapAttribParameterfvNV(EvalTargetNV target, uint index, MapAttribParameterNV pname, float[] @params) => _GetMapAttribParameterfvNV(target, index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapAttribParameterfvNV(EvalTargetNV target, uint index, MapAttribParameterNV pname, void* @params) => _GetMapAttribParameterfvNV_ptr(target, index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapAttribParameterfvNV(EvalTargetNV target, uint index, MapAttribParameterNV pname, IntPtr @params) => _GetMapAttribParameterfvNV_intptr(target, index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapAttribParameterivNV(EvalTargetNV target, uint index, MapAttribParameterNV pname, int[] @params) => _GetMapAttribParameterivNV(target, index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapAttribParameterivNV(EvalTargetNV target, uint index, MapAttribParameterNV pname, void* @params) => _GetMapAttribParameterivNV_ptr(target, index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapAttribParameterivNV(EvalTargetNV target, uint index, MapAttribParameterNV pname, IntPtr @params) => _GetMapAttribParameterivNV_intptr(target, index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapControlPointsNV(EvalTargetNV target, uint index, MapTypeNV type, int ustride, int vstride, bool packed, IntPtr points) => _GetMapControlPointsNV(target, index, type, ustride, vstride, packed, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapParameterfvNV(EvalTargetNV target, MapParameterNV pname, float[] @params) => _GetMapParameterfvNV(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapParameterfvNV(EvalTargetNV target, MapParameterNV pname, void* @params) => _GetMapParameterfvNV_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapParameterfvNV(EvalTargetNV target, MapParameterNV pname, IntPtr @params) => _GetMapParameterfvNV_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapParameterivNV(EvalTargetNV target, MapParameterNV pname, int[] @params) => _GetMapParameterivNV(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapParameterivNV(EvalTargetNV target, MapParameterNV pname, void* @params) => _GetMapParameterivNV_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapParameterivNV(EvalTargetNV target, MapParameterNV pname, IntPtr @params) => _GetMapParameterivNV_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapdv(MapTarget target, GetMapQuery query, double[] v) => _GetMapdv(target, query, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapdv(MapTarget target, GetMapQuery query, void* v) => _GetMapdv_ptr(target, query, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapdv(MapTarget target, GetMapQuery query, IntPtr v) => _GetMapdv_intptr(target, query, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapfv(MapTarget target, GetMapQuery query, float[] v) => _GetMapfv(target, query, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapfv(MapTarget target, GetMapQuery query, void* v) => _GetMapfv_ptr(target, query, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapfv(MapTarget target, GetMapQuery query, IntPtr v) => _GetMapfv_intptr(target, query, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapiv(MapTarget target, GetMapQuery query, int[] v) => _GetMapiv(target, query, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapiv(MapTarget target, GetMapQuery query, void* v) => _GetMapiv_ptr(target, query, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapiv(MapTarget target, GetMapQuery query, IntPtr v) => _GetMapiv_intptr(target, query, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapxvOES(MapTarget target, GetMapQuery query, float[] v) => _GetMapxvOES(target, query, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapxvOES(MapTarget target, GetMapQuery query, void* v) => _GetMapxvOES_ptr(target, query, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMapxvOES(MapTarget target, GetMapQuery query, IntPtr v) => _GetMapxvOES_intptr(target, query, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialfv(MaterialFace face, MaterialParameter pname, float[] @params) => _GetMaterialfv(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialfv(MaterialFace face, MaterialParameter pname, void* @params) => _GetMaterialfv_ptr(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialfv(MaterialFace face, MaterialParameter pname, IntPtr @params) => _GetMaterialfv_intptr(face, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialiv(MaterialFace face, MaterialParameter pname, int[] @params) => _GetMaterialiv(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialiv(MaterialFace face, MaterialParameter pname, void* @params) => _GetMaterialiv_ptr(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialiv(MaterialFace face, MaterialParameter pname, IntPtr @params) => _GetMaterialiv_intptr(face, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialxOES(MaterialFace face, MaterialParameter pname, float param) => _GetMaterialxOES(face, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialxv(MaterialFace face, MaterialParameter pname, float[] @params) => _GetMaterialxv(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialxv(MaterialFace face, MaterialParameter pname, void* @params) => _GetMaterialxv_ptr(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialxv(MaterialFace face, MaterialParameter pname, IntPtr @params) => _GetMaterialxv_intptr(face, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialxvOES(MaterialFace face, MaterialParameter pname, float[] @params) => _GetMaterialxvOES(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialxvOES(MaterialFace face, MaterialParameter pname, void* @params) => _GetMaterialxvOES_ptr(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMaterialxvOES(MaterialFace face, MaterialParameter pname, IntPtr @params) => _GetMaterialxvOES_intptr(face, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMemoryObjectDetachedResourcesuivNV(uint memory, int pname, int first, int count, uint[] @params) => _GetMemoryObjectDetachedResourcesuivNV(memory, pname, first, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMemoryObjectDetachedResourcesuivNV(uint memory, int pname, int first, int count, void* @params) => _GetMemoryObjectDetachedResourcesuivNV_ptr(memory, pname, first, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMemoryObjectDetachedResourcesuivNV(uint memory, int pname, int first, int count, IntPtr @params) => _GetMemoryObjectDetachedResourcesuivNV_intptr(memory, pname, first, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMemoryObjectParameterivEXT(uint memoryObject, MemoryObjectParameterName pname, int[] @params) => _GetMemoryObjectParameterivEXT(memoryObject, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMemoryObjectParameterivEXT(uint memoryObject, MemoryObjectParameterName pname, void* @params) => _GetMemoryObjectParameterivEXT_ptr(memoryObject, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMemoryObjectParameterivEXT(uint memoryObject, MemoryObjectParameterName pname, IntPtr @params) => _GetMemoryObjectParameterivEXT_intptr(memoryObject, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmax(MinmaxTargetEXT target, bool reset, PixelFormat format, PixelType type, IntPtr values) => _GetMinmax(target, reset, format, type, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxEXT(MinmaxTargetEXT target, bool reset, PixelFormat format, PixelType type, IntPtr values) => _GetMinmaxEXT(target, reset, format, type, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxParameterfv(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, float[] @params) => _GetMinmaxParameterfv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxParameterfv(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, void* @params) => _GetMinmaxParameterfv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxParameterfv(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, IntPtr @params) => _GetMinmaxParameterfv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxParameterfvEXT(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, float[] @params) => _GetMinmaxParameterfvEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxParameterfvEXT(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, void* @params) => _GetMinmaxParameterfvEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxParameterfvEXT(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, IntPtr @params) => _GetMinmaxParameterfvEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxParameteriv(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, int[] @params) => _GetMinmaxParameteriv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxParameteriv(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, void* @params) => _GetMinmaxParameteriv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxParameteriv(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, IntPtr @params) => _GetMinmaxParameteriv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxParameterivEXT(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, int[] @params) => _GetMinmaxParameterivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxParameterivEXT(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, void* @params) => _GetMinmaxParameterivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMinmaxParameterivEXT(MinmaxTargetEXT target, GetMinmaxParameterPNameEXT pname, IntPtr @params) => _GetMinmaxParameterivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexEnvfvEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, float[] @params) => _GetMultiTexEnvfvEXT(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexEnvfvEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, void* @params) => _GetMultiTexEnvfvEXT_ptr(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexEnvfvEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params) => _GetMultiTexEnvfvEXT_intptr(texunit, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexEnvivEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, int[] @params) => _GetMultiTexEnvivEXT(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexEnvivEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, void* @params) => _GetMultiTexEnvivEXT_ptr(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexEnvivEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params) => _GetMultiTexEnvivEXT_intptr(texunit, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexGendvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, double[] @params) => _GetMultiTexGendvEXT(texunit, coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexGendvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, void* @params) => _GetMultiTexGendvEXT_ptr(texunit, coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexGendvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _GetMultiTexGendvEXT_intptr(texunit, coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexGenfvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, float[] @params) => _GetMultiTexGenfvEXT(texunit, coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexGenfvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, void* @params) => _GetMultiTexGenfvEXT_ptr(texunit, coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexGenfvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _GetMultiTexGenfvEXT_intptr(texunit, coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexGenivEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, int[] @params) => _GetMultiTexGenivEXT(texunit, coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexGenivEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, void* @params) => _GetMultiTexGenivEXT_ptr(texunit, coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexGenivEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _GetMultiTexGenivEXT_intptr(texunit, coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexImageEXT(TextureUnit texunit, TextureTarget target, int level, PixelFormat format, PixelType type, IntPtr pixels) => _GetMultiTexImageEXT(texunit, target, level, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexLevelParameterfvEXT(TextureUnit texunit, TextureTarget target, int level, GetTextureParameter pname, float[] @params) => _GetMultiTexLevelParameterfvEXT(texunit, target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexLevelParameterfvEXT(TextureUnit texunit, TextureTarget target, int level, GetTextureParameter pname, void* @params) => _GetMultiTexLevelParameterfvEXT_ptr(texunit, target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexLevelParameterfvEXT(TextureUnit texunit, TextureTarget target, int level, GetTextureParameter pname, IntPtr @params) => _GetMultiTexLevelParameterfvEXT_intptr(texunit, target, level, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexLevelParameterivEXT(TextureUnit texunit, TextureTarget target, int level, GetTextureParameter pname, int[] @params) => _GetMultiTexLevelParameterivEXT(texunit, target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexLevelParameterivEXT(TextureUnit texunit, TextureTarget target, int level, GetTextureParameter pname, void* @params) => _GetMultiTexLevelParameterivEXT_ptr(texunit, target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexLevelParameterivEXT(TextureUnit texunit, TextureTarget target, int level, GetTextureParameter pname, IntPtr @params) => _GetMultiTexLevelParameterivEXT_intptr(texunit, target, level, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexParameterIivEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, int[] @params) => _GetMultiTexParameterIivEXT(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexParameterIivEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, void* @params) => _GetMultiTexParameterIivEXT_ptr(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexParameterIivEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetMultiTexParameterIivEXT_intptr(texunit, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexParameterIuivEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, uint[] @params) => _GetMultiTexParameterIuivEXT(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexParameterIuivEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, void* @params) => _GetMultiTexParameterIuivEXT_ptr(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexParameterIuivEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetMultiTexParameterIuivEXT_intptr(texunit, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexParameterfvEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, float[] @params) => _GetMultiTexParameterfvEXT(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexParameterfvEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, void* @params) => _GetMultiTexParameterfvEXT_ptr(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexParameterfvEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetMultiTexParameterfvEXT_intptr(texunit, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexParameterivEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, int[] @params) => _GetMultiTexParameterivEXT(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexParameterivEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, void* @params) => _GetMultiTexParameterivEXT_ptr(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultiTexParameterivEXT(TextureUnit texunit, TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetMultiTexParameterivEXT_intptr(texunit, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultisamplefv(GetMultisamplePNameNV pname, uint index, float[] val) => _GetMultisamplefv(pname, index, val); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultisamplefv(GetMultisamplePNameNV pname, uint index, void* val) => _GetMultisamplefv_ptr(pname, index, val); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultisamplefv(GetMultisamplePNameNV pname, uint index, IntPtr val) => _GetMultisamplefv_intptr(pname, index, val); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultisamplefvNV(GetMultisamplePNameNV pname, uint index, float[] val) => _GetMultisamplefvNV(pname, index, val); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultisamplefvNV(GetMultisamplePNameNV pname, uint index, void* val) => _GetMultisamplefvNV_ptr(pname, index, val); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetMultisamplefvNV(GetMultisamplePNameNV pname, uint index, IntPtr val) => _GetMultisamplefvNV_intptr(pname, index, val); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferParameteri64v(uint buffer, BufferPNameARB pname, Int64[] @params) => _GetNamedBufferParameteri64v(buffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferParameteri64v(uint buffer, BufferPNameARB pname, void* @params) => _GetNamedBufferParameteri64v_ptr(buffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferParameteri64v(uint buffer, BufferPNameARB pname, IntPtr @params) => _GetNamedBufferParameteri64v_intptr(buffer, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferParameteriv(uint buffer, BufferPNameARB pname, int[] @params) => _GetNamedBufferParameteriv(buffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferParameteriv(uint buffer, BufferPNameARB pname, void* @params) => _GetNamedBufferParameteriv_ptr(buffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferParameteriv(uint buffer, BufferPNameARB pname, IntPtr @params) => _GetNamedBufferParameteriv_intptr(buffer, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferParameterivEXT(uint buffer, BufferPNameARB pname, int[] @params) => _GetNamedBufferParameterivEXT(buffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferParameterivEXT(uint buffer, BufferPNameARB pname, void* @params) => _GetNamedBufferParameterivEXT_ptr(buffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferParameterivEXT(uint buffer, BufferPNameARB pname, IntPtr @params) => _GetNamedBufferParameterivEXT_intptr(buffer, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferParameterui64vNV(uint buffer, BufferPNameARB pname, UInt64[] @params) => _GetNamedBufferParameterui64vNV(buffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferParameterui64vNV(uint buffer, BufferPNameARB pname, void* @params) => _GetNamedBufferParameterui64vNV_ptr(buffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferParameterui64vNV(uint buffer, BufferPNameARB pname, IntPtr @params) => _GetNamedBufferParameterui64vNV_intptr(buffer, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferPointerv(uint buffer, BufferPointerNameARB pname, IntPtr* @params) => _GetNamedBufferPointerv(buffer, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferPointervEXT(uint buffer, BufferPointerNameARB pname, IntPtr* @params) => _GetNamedBufferPointervEXT(buffer, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferSubData(uint buffer, IntPtr offset, IntPtr size, IntPtr data) => _GetNamedBufferSubData(buffer, offset, size, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedBufferSubDataEXT(uint buffer, IntPtr offset, IntPtr size, IntPtr data) => _GetNamedBufferSubDataEXT(buffer, offset, size, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferParameterfvAMD(uint framebuffer, int pname, uint numsamples, uint pixelindex, int size, float[] values) => _GetNamedFramebufferParameterfvAMD(framebuffer, pname, numsamples, pixelindex, size, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferParameterfvAMD(uint framebuffer, int pname, uint numsamples, uint pixelindex, int size, void* values) => _GetNamedFramebufferParameterfvAMD_ptr(framebuffer, pname, numsamples, pixelindex, size, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferParameterfvAMD(uint framebuffer, int pname, uint numsamples, uint pixelindex, int size, IntPtr values) => _GetNamedFramebufferParameterfvAMD_intptr(framebuffer, pname, numsamples, pixelindex, size, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferAttachmentParameteriv(uint framebuffer, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, int[] @params) => _GetNamedFramebufferAttachmentParameteriv(framebuffer, attachment, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferAttachmentParameteriv(uint framebuffer, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, void* @params) => _GetNamedFramebufferAttachmentParameteriv_ptr(framebuffer, attachment, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferAttachmentParameteriv(uint framebuffer, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, IntPtr @params) => _GetNamedFramebufferAttachmentParameteriv_intptr(framebuffer, attachment, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferAttachmentParameterivEXT(uint framebuffer, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, int[] @params) => _GetNamedFramebufferAttachmentParameterivEXT(framebuffer, attachment, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferAttachmentParameterivEXT(uint framebuffer, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, void* @params) => _GetNamedFramebufferAttachmentParameterivEXT_ptr(framebuffer, attachment, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferAttachmentParameterivEXT(uint framebuffer, FramebufferAttachment attachment, FramebufferAttachmentParameterName pname, IntPtr @params) => _GetNamedFramebufferAttachmentParameterivEXT_intptr(framebuffer, attachment, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferParameteriv(uint framebuffer, GetFramebufferParameter pname, int[] param) => _GetNamedFramebufferParameteriv(framebuffer, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferParameteriv(uint framebuffer, GetFramebufferParameter pname, void* param) => _GetNamedFramebufferParameteriv_ptr(framebuffer, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferParameteriv(uint framebuffer, GetFramebufferParameter pname, IntPtr param) => _GetNamedFramebufferParameteriv_intptr(framebuffer, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferParameterivEXT(uint framebuffer, GetFramebufferParameter pname, int[] @params) => _GetNamedFramebufferParameterivEXT(framebuffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferParameterivEXT(uint framebuffer, GetFramebufferParameter pname, void* @params) => _GetNamedFramebufferParameterivEXT_ptr(framebuffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedFramebufferParameterivEXT(uint framebuffer, GetFramebufferParameter pname, IntPtr @params) => _GetNamedFramebufferParameterivEXT_intptr(framebuffer, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramLocalParameterIivEXT(uint program, ProgramTarget target, uint index, int[] @params) => _GetNamedProgramLocalParameterIivEXT(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramLocalParameterIivEXT(uint program, ProgramTarget target, uint index, void* @params) => _GetNamedProgramLocalParameterIivEXT_ptr(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramLocalParameterIivEXT(uint program, ProgramTarget target, uint index, IntPtr @params) => _GetNamedProgramLocalParameterIivEXT_intptr(program, target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramLocalParameterIuivEXT(uint program, ProgramTarget target, uint index, uint[] @params) => _GetNamedProgramLocalParameterIuivEXT(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramLocalParameterIuivEXT(uint program, ProgramTarget target, uint index, void* @params) => _GetNamedProgramLocalParameterIuivEXT_ptr(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramLocalParameterIuivEXT(uint program, ProgramTarget target, uint index, IntPtr @params) => _GetNamedProgramLocalParameterIuivEXT_intptr(program, target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramLocalParameterdvEXT(uint program, ProgramTarget target, uint index, double[] @params) => _GetNamedProgramLocalParameterdvEXT(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramLocalParameterdvEXT(uint program, ProgramTarget target, uint index, void* @params) => _GetNamedProgramLocalParameterdvEXT_ptr(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramLocalParameterdvEXT(uint program, ProgramTarget target, uint index, IntPtr @params) => _GetNamedProgramLocalParameterdvEXT_intptr(program, target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramLocalParameterfvEXT(uint program, ProgramTarget target, uint index, float[] @params) => _GetNamedProgramLocalParameterfvEXT(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramLocalParameterfvEXT(uint program, ProgramTarget target, uint index, void* @params) => _GetNamedProgramLocalParameterfvEXT_ptr(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramLocalParameterfvEXT(uint program, ProgramTarget target, uint index, IntPtr @params) => _GetNamedProgramLocalParameterfvEXT_intptr(program, target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramStringEXT(uint program, ProgramTarget target, ProgramStringProperty pname, IntPtr @string) => _GetNamedProgramStringEXT(program, target, pname, @string); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedProgramivEXT(uint program, ProgramTarget target, ProgramPropertyARB pname, out int @params) => _GetNamedProgramivEXT(program, target, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedRenderbufferParameteriv(uint renderbuffer, RenderbufferParameterName pname, int[] @params) => _GetNamedRenderbufferParameteriv(renderbuffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedRenderbufferParameteriv(uint renderbuffer, RenderbufferParameterName pname, void* @params) => _GetNamedRenderbufferParameteriv_ptr(renderbuffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedRenderbufferParameteriv(uint renderbuffer, RenderbufferParameterName pname, IntPtr @params) => _GetNamedRenderbufferParameteriv_intptr(renderbuffer, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedRenderbufferParameterivEXT(uint renderbuffer, RenderbufferParameterName pname, int[] @params) => _GetNamedRenderbufferParameterivEXT(renderbuffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedRenderbufferParameterivEXT(uint renderbuffer, RenderbufferParameterName pname, void* @params) => _GetNamedRenderbufferParameterivEXT_ptr(renderbuffer, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedRenderbufferParameterivEXT(uint renderbuffer, RenderbufferParameterName pname, IntPtr @params) => _GetNamedRenderbufferParameterivEXT_intptr(renderbuffer, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedStringARB(int namelen, string name, int bufSize, out int stringlen, string @string) => _GetNamedStringARB(namelen, name, bufSize, out stringlen, @string); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedStringARB(int namelen, void* name, int bufSize, out int stringlen, void* @string) => _GetNamedStringARB_ptr(namelen, name, bufSize, out stringlen, @string); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedStringARB(int namelen, IntPtr name, int bufSize, out int stringlen, IntPtr @string) => _GetNamedStringARB_intptr(namelen, name, bufSize, out stringlen, @string); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedStringivARB(int namelen, string name, int pname, int[] @params) => _GetNamedStringivARB(namelen, name, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedStringivARB(int namelen, void* name, int pname, void* @params) => _GetNamedStringivARB_ptr(namelen, name, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNamedStringivARB(int namelen, IntPtr name, int pname, IntPtr @params) => _GetNamedStringivARB_intptr(namelen, name, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNextPerfQueryIdINTEL(uint queryId, uint[] nextQueryId) => _GetNextPerfQueryIdINTEL(queryId, nextQueryId); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNextPerfQueryIdINTEL(uint queryId, void* nextQueryId) => _GetNextPerfQueryIdINTEL_ptr(queryId, nextQueryId); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetNextPerfQueryIdINTEL(uint queryId, IntPtr nextQueryId) => _GetNextPerfQueryIdINTEL_intptr(queryId, nextQueryId); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectBufferfvATI(uint buffer, ArrayObjectPNameATI pname, out float @params) => _GetObjectBufferfvATI(buffer, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectBufferivATI(uint buffer, ArrayObjectPNameATI pname, out int @params) => _GetObjectBufferivATI(buffer, pname, out @params); + + // --- + + /// + /// glGetObjectLabel retrieves the label of the object identified by name within the namespace given by identifier. identifier must be one of GL_BUFFER, GL_SHADER, GL_PROGRAM, GL_VERTEX_ARRAY, GL_QUERY, GL_PROGRAM_PIPELINE, GL_TRANSFORM_FEEDBACK, GL_SAMPLER, GL_TEXTURE, GL_RENDERBUFFER, GL_FRAMEBUFFER, to indicate the namespace containing the names of buffers, shaders, programs, vertex array objects, query objects, program pipelines, transform feedback objects, samplers, textures, renderbuffers and frame buffers, respectively. + /// label is the address of a string that will be used to store the object label. bufSize specifies the number of characters in the array identified by label. length contains the address of a variable which will receive the number of characters in the object label. If length is NULL, then it is ignored and no data is written. Likewise, if label is NULL, or if bufSize is zero then no data is written to label. + /// + /// The namespace from which the name of the object is allocated. + /// The name of the object whose label to retrieve. + /// The length of the buffer whose address is in label. + /// The address of a variable to receive the length of the object label. + /// The address of a string that will receive the object label. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectLabel(ObjectIdentifier identifier, uint name, int bufSize, out int length, string label) => _GetObjectLabel(identifier, name, bufSize, out length, label); + + /// + /// glGetObjectLabel retrieves the label of the object identified by name within the namespace given by identifier. identifier must be one of GL_BUFFER, GL_SHADER, GL_PROGRAM, GL_VERTEX_ARRAY, GL_QUERY, GL_PROGRAM_PIPELINE, GL_TRANSFORM_FEEDBACK, GL_SAMPLER, GL_TEXTURE, GL_RENDERBUFFER, GL_FRAMEBUFFER, to indicate the namespace containing the names of buffers, shaders, programs, vertex array objects, query objects, program pipelines, transform feedback objects, samplers, textures, renderbuffers and frame buffers, respectively. + /// label is the address of a string that will be used to store the object label. bufSize specifies the number of characters in the array identified by label. length contains the address of a variable which will receive the number of characters in the object label. If length is NULL, then it is ignored and no data is written. Likewise, if label is NULL, or if bufSize is zero then no data is written to label. + /// + /// The namespace from which the name of the object is allocated. + /// The name of the object whose label to retrieve. + /// The length of the buffer whose address is in label. + /// The address of a variable to receive the length of the object label. + /// The address of a string that will receive the object label. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectLabel(ObjectIdentifier identifier, uint name, int bufSize, out int length, void* label) => _GetObjectLabel_ptr(identifier, name, bufSize, out length, label); + + /// + /// glGetObjectLabel retrieves the label of the object identified by name within the namespace given by identifier. identifier must be one of GL_BUFFER, GL_SHADER, GL_PROGRAM, GL_VERTEX_ARRAY, GL_QUERY, GL_PROGRAM_PIPELINE, GL_TRANSFORM_FEEDBACK, GL_SAMPLER, GL_TEXTURE, GL_RENDERBUFFER, GL_FRAMEBUFFER, to indicate the namespace containing the names of buffers, shaders, programs, vertex array objects, query objects, program pipelines, transform feedback objects, samplers, textures, renderbuffers and frame buffers, respectively. + /// label is the address of a string that will be used to store the object label. bufSize specifies the number of characters in the array identified by label. length contains the address of a variable which will receive the number of characters in the object label. If length is NULL, then it is ignored and no data is written. Likewise, if label is NULL, or if bufSize is zero then no data is written to label. + /// + /// The namespace from which the name of the object is allocated. + /// The name of the object whose label to retrieve. + /// The length of the buffer whose address is in label. + /// The address of a variable to receive the length of the object label. + /// The address of a string that will receive the object label. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectLabel(ObjectIdentifier identifier, uint name, int bufSize, out int length, IntPtr label) => _GetObjectLabel_intptr(identifier, name, bufSize, out length, label); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectLabelEXT(int type, uint @object, int bufSize, out int length, string label) => _GetObjectLabelEXT(type, @object, bufSize, out length, label); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectLabelEXT(int type, uint @object, int bufSize, out int length, void* label) => _GetObjectLabelEXT_ptr(type, @object, bufSize, out length, label); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectLabelEXT(int type, uint @object, int bufSize, out int length, IntPtr label) => _GetObjectLabelEXT_intptr(type, @object, bufSize, out length, label); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectLabelKHR(int identifier, uint name, int bufSize, int[] length, string label) => _GetObjectLabelKHR(identifier, name, bufSize, length, label); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectLabelKHR(int identifier, uint name, int bufSize, void* length, void* label) => _GetObjectLabelKHR_ptr(identifier, name, bufSize, length, label); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectLabelKHR(int identifier, uint name, int bufSize, IntPtr length, IntPtr label) => _GetObjectLabelKHR_intptr(identifier, name, bufSize, length, label); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectParameterfvARB(int obj, int pname, float[] @params) => _GetObjectParameterfvARB(obj, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectParameterfvARB(int obj, int pname, void* @params) => _GetObjectParameterfvARB_ptr(obj, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectParameterfvARB(int obj, int pname, IntPtr @params) => _GetObjectParameterfvARB_intptr(obj, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectParameterivAPPLE(int objectType, uint name, int pname, int[] @params) => _GetObjectParameterivAPPLE(objectType, name, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectParameterivAPPLE(int objectType, uint name, int pname, void* @params) => _GetObjectParameterivAPPLE_ptr(objectType, name, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectParameterivAPPLE(int objectType, uint name, int pname, IntPtr @params) => _GetObjectParameterivAPPLE_intptr(objectType, name, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectParameterivARB(int obj, int pname, int[] @params) => _GetObjectParameterivARB(obj, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectParameterivARB(int obj, int pname, void* @params) => _GetObjectParameterivARB_ptr(obj, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectParameterivARB(int obj, int pname, IntPtr @params) => _GetObjectParameterivARB_intptr(obj, pname, @params); + + // --- + + /// + /// glGetObjectPtrLabel retrieves the label of the sync object identified by ptr. + /// label is the address of a string that will be used to store the object label. bufSize specifies the number of characters in the array identified by label. length contains the address of a variable which will receive the number of characters in the object label. If length is NULL, then it is ignored and no data is written. Likewise, if label is NULL, or if bufSize is zero then no data is written to label. + /// + /// The name of the sync object whose label to retrieve. + /// The length of the buffer whose address is in label. + /// The address of a variable to receive the length of the object label. + /// The address of a string that will receive the object label. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectPtrLabel(IntPtr ptr, int bufSize, out int length, string label) => _GetObjectPtrLabel(ptr, bufSize, out length, label); + + /// + /// glGetObjectPtrLabel retrieves the label of the sync object identified by ptr. + /// label is the address of a string that will be used to store the object label. bufSize specifies the number of characters in the array identified by label. length contains the address of a variable which will receive the number of characters in the object label. If length is NULL, then it is ignored and no data is written. Likewise, if label is NULL, or if bufSize is zero then no data is written to label. + /// + /// The name of the sync object whose label to retrieve. + /// The length of the buffer whose address is in label. + /// The address of a variable to receive the length of the object label. + /// The address of a string that will receive the object label. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectPtrLabel(IntPtr ptr, int bufSize, out int length, void* label) => _GetObjectPtrLabel_ptr(ptr, bufSize, out length, label); + + /// + /// glGetObjectPtrLabel retrieves the label of the sync object identified by ptr. + /// label is the address of a string that will be used to store the object label. bufSize specifies the number of characters in the array identified by label. length contains the address of a variable which will receive the number of characters in the object label. If length is NULL, then it is ignored and no data is written. Likewise, if label is NULL, or if bufSize is zero then no data is written to label. + /// + /// The name of the sync object whose label to retrieve. + /// The length of the buffer whose address is in label. + /// The address of a variable to receive the length of the object label. + /// The address of a string that will receive the object label. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectPtrLabel(IntPtr ptr, int bufSize, out int length, IntPtr label) => _GetObjectPtrLabel_intptr(ptr, bufSize, out length, label); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectPtrLabelKHR(IntPtr ptr, int bufSize, out int length, string label) => _GetObjectPtrLabelKHR(ptr, bufSize, out length, label); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectPtrLabelKHR(IntPtr ptr, int bufSize, out int length, void* label) => _GetObjectPtrLabelKHR_ptr(ptr, bufSize, out length, label); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetObjectPtrLabelKHR(IntPtr ptr, int bufSize, out int length, IntPtr label) => _GetObjectPtrLabelKHR_intptr(ptr, bufSize, out length, label); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetOcclusionQueryivNV(uint id, OcclusionQueryParameterNameNV pname, int[] @params) => _GetOcclusionQueryivNV(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetOcclusionQueryivNV(uint id, OcclusionQueryParameterNameNV pname, void* @params) => _GetOcclusionQueryivNV_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetOcclusionQueryivNV(uint id, OcclusionQueryParameterNameNV pname, IntPtr @params) => _GetOcclusionQueryivNV_intptr(id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetOcclusionQueryuivNV(uint id, OcclusionQueryParameterNameNV pname, uint[] @params) => _GetOcclusionQueryuivNV(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetOcclusionQueryuivNV(uint id, OcclusionQueryParameterNameNV pname, void* @params) => _GetOcclusionQueryuivNV_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetOcclusionQueryuivNV(uint id, OcclusionQueryParameterNameNV pname, IntPtr @params) => _GetOcclusionQueryuivNV_intptr(id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathColorGenfvNV(PathColor color, PathGenMode pname, float[] value) => _GetPathColorGenfvNV(color, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathColorGenfvNV(PathColor color, PathGenMode pname, void* value) => _GetPathColorGenfvNV_ptr(color, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathColorGenfvNV(PathColor color, PathGenMode pname, IntPtr value) => _GetPathColorGenfvNV_intptr(color, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathColorGenivNV(PathColor color, PathGenMode pname, int[] value) => _GetPathColorGenivNV(color, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathColorGenivNV(PathColor color, PathGenMode pname, void* value) => _GetPathColorGenivNV_ptr(color, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathColorGenivNV(PathColor color, PathGenMode pname, IntPtr value) => _GetPathColorGenivNV_intptr(color, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathCommandsNV(uint path, byte[] commands) => _GetPathCommandsNV(path, commands); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathCommandsNV(uint path, void* commands) => _GetPathCommandsNV_ptr(path, commands); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathCommandsNV(uint path, IntPtr commands) => _GetPathCommandsNV_intptr(path, commands); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathCoordsNV(uint path, float[] coords) => _GetPathCoordsNV(path, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathCoordsNV(uint path, void* coords) => _GetPathCoordsNV_ptr(path, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathCoordsNV(uint path, IntPtr coords) => _GetPathCoordsNV_intptr(path, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathDashArrayNV(uint path, float[] dashArray) => _GetPathDashArrayNV(path, dashArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathDashArrayNV(uint path, void* dashArray) => _GetPathDashArrayNV_ptr(path, dashArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathDashArrayNV(uint path, IntPtr dashArray) => _GetPathDashArrayNV_intptr(path, dashArray); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public float GetPathLengthNV(uint path, int startSegment, int numSegments) => _GetPathLengthNV(path, startSegment, numSegments); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathMetricRangeNV(int metricQueryMask, uint firstPathName, int numPaths, int stride, float[] metrics) => _GetPathMetricRangeNV(metricQueryMask, firstPathName, numPaths, stride, metrics); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathMetricRangeNV(int metricQueryMask, uint firstPathName, int numPaths, int stride, void* metrics) => _GetPathMetricRangeNV_ptr(metricQueryMask, firstPathName, numPaths, stride, metrics); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathMetricRangeNV(int metricQueryMask, uint firstPathName, int numPaths, int stride, IntPtr metrics) => _GetPathMetricRangeNV_intptr(metricQueryMask, firstPathName, numPaths, stride, metrics); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathMetricsNV(int metricQueryMask, int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, int stride, float[] metrics) => _GetPathMetricsNV(metricQueryMask, numPaths, pathNameType, paths, pathBase, stride, metrics); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathMetricsNV(int metricQueryMask, int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, int stride, void* metrics) => _GetPathMetricsNV_ptr(metricQueryMask, numPaths, pathNameType, paths, pathBase, stride, metrics); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathMetricsNV(int metricQueryMask, int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, int stride, IntPtr metrics) => _GetPathMetricsNV_intptr(metricQueryMask, numPaths, pathNameType, paths, pathBase, stride, metrics); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathParameterfvNV(uint path, PathParameter pname, float[] value) => _GetPathParameterfvNV(path, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathParameterfvNV(uint path, PathParameter pname, void* value) => _GetPathParameterfvNV_ptr(path, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathParameterfvNV(uint path, PathParameter pname, IntPtr value) => _GetPathParameterfvNV_intptr(path, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathParameterivNV(uint path, PathParameter pname, int[] value) => _GetPathParameterivNV(path, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathParameterivNV(uint path, PathParameter pname, void* value) => _GetPathParameterivNV_ptr(path, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathParameterivNV(uint path, PathParameter pname, IntPtr value) => _GetPathParameterivNV_intptr(path, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathSpacingNV(PathListMode pathListMode, int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, float advanceScale, float kerningScale, PathTransformType transformType, float[] returnedSpacing) => _GetPathSpacingNV(pathListMode, numPaths, pathNameType, paths, pathBase, advanceScale, kerningScale, transformType, returnedSpacing); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathSpacingNV(PathListMode pathListMode, int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, float advanceScale, float kerningScale, PathTransformType transformType, void* returnedSpacing) => _GetPathSpacingNV_ptr(pathListMode, numPaths, pathNameType, paths, pathBase, advanceScale, kerningScale, transformType, returnedSpacing); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathSpacingNV(PathListMode pathListMode, int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, float advanceScale, float kerningScale, PathTransformType transformType, IntPtr returnedSpacing) => _GetPathSpacingNV_intptr(pathListMode, numPaths, pathNameType, paths, pathBase, advanceScale, kerningScale, transformType, returnedSpacing); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathTexGenfvNV(TextureUnit texCoordSet, PathGenMode pname, float[] value) => _GetPathTexGenfvNV(texCoordSet, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathTexGenfvNV(TextureUnit texCoordSet, PathGenMode pname, void* value) => _GetPathTexGenfvNV_ptr(texCoordSet, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathTexGenfvNV(TextureUnit texCoordSet, PathGenMode pname, IntPtr value) => _GetPathTexGenfvNV_intptr(texCoordSet, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathTexGenivNV(TextureUnit texCoordSet, PathGenMode pname, int[] value) => _GetPathTexGenivNV(texCoordSet, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathTexGenivNV(TextureUnit texCoordSet, PathGenMode pname, void* value) => _GetPathTexGenivNV_ptr(texCoordSet, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPathTexGenivNV(TextureUnit texCoordSet, PathGenMode pname, IntPtr value) => _GetPathTexGenivNV_intptr(texCoordSet, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfCounterInfoINTEL(uint queryId, uint counterId, uint counterNameLength, string counterName, uint counterDescLength, string counterDesc, uint[] counterOffset, uint[] counterDataSize, uint[] counterTypeEnum, uint[] counterDataTypeEnum, UInt64[] rawCounterMaxValue) => _GetPerfCounterInfoINTEL(queryId, counterId, counterNameLength, counterName, counterDescLength, counterDesc, counterOffset, counterDataSize, counterTypeEnum, counterDataTypeEnum, rawCounterMaxValue); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfCounterInfoINTEL(uint queryId, uint counterId, uint counterNameLength, void* counterName, uint counterDescLength, void* counterDesc, void* counterOffset, void* counterDataSize, void* counterTypeEnum, void* counterDataTypeEnum, void* rawCounterMaxValue) => _GetPerfCounterInfoINTEL_ptr(queryId, counterId, counterNameLength, counterName, counterDescLength, counterDesc, counterOffset, counterDataSize, counterTypeEnum, counterDataTypeEnum, rawCounterMaxValue); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfCounterInfoINTEL(uint queryId, uint counterId, uint counterNameLength, IntPtr counterName, uint counterDescLength, IntPtr counterDesc, IntPtr counterOffset, IntPtr counterDataSize, IntPtr counterTypeEnum, IntPtr counterDataTypeEnum, IntPtr rawCounterMaxValue) => _GetPerfCounterInfoINTEL_intptr(queryId, counterId, counterNameLength, counterName, counterDescLength, counterDesc, counterOffset, counterDataSize, counterTypeEnum, counterDataTypeEnum, rawCounterMaxValue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorCounterDataAMD(uint monitor, int pname, int dataSize, uint[] data, out int bytesWritten) => _GetPerfMonitorCounterDataAMD(monitor, pname, dataSize, data, out bytesWritten); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorCounterDataAMD(uint monitor, int pname, int dataSize, void* data, out int bytesWritten) => _GetPerfMonitorCounterDataAMD_ptr(monitor, pname, dataSize, data, out bytesWritten); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorCounterDataAMD(uint monitor, int pname, int dataSize, IntPtr data, out int bytesWritten) => _GetPerfMonitorCounterDataAMD_intptr(monitor, pname, dataSize, data, out bytesWritten); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorCounterInfoAMD(uint group, uint counter, int pname, IntPtr data) => _GetPerfMonitorCounterInfoAMD(group, counter, pname, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorCounterStringAMD(uint group, uint counter, int bufSize, out int length, string counterString) => _GetPerfMonitorCounterStringAMD(group, counter, bufSize, out length, counterString); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorCounterStringAMD(uint group, uint counter, int bufSize, out int length, void* counterString) => _GetPerfMonitorCounterStringAMD_ptr(group, counter, bufSize, out length, counterString); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorCounterStringAMD(uint group, uint counter, int bufSize, out int length, IntPtr counterString) => _GetPerfMonitorCounterStringAMD_intptr(group, counter, bufSize, out length, counterString); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorCountersAMD(uint group, out int numCounters, out int maxActiveCounters, int counterSize, uint[] counters) => _GetPerfMonitorCountersAMD(group, out numCounters, out maxActiveCounters, counterSize, counters); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorCountersAMD(uint group, out int numCounters, out int maxActiveCounters, int counterSize, void* counters) => _GetPerfMonitorCountersAMD_ptr(group, out numCounters, out maxActiveCounters, counterSize, counters); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorCountersAMD(uint group, out int numCounters, out int maxActiveCounters, int counterSize, IntPtr counters) => _GetPerfMonitorCountersAMD_intptr(group, out numCounters, out maxActiveCounters, counterSize, counters); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorGroupStringAMD(uint group, int bufSize, out int length, string groupString) => _GetPerfMonitorGroupStringAMD(group, bufSize, out length, groupString); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorGroupStringAMD(uint group, int bufSize, out int length, void* groupString) => _GetPerfMonitorGroupStringAMD_ptr(group, bufSize, out length, groupString); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorGroupStringAMD(uint group, int bufSize, out int length, IntPtr groupString) => _GetPerfMonitorGroupStringAMD_intptr(group, bufSize, out length, groupString); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorGroupsAMD(out int numGroups, int groupsSize, uint[] groups) => _GetPerfMonitorGroupsAMD(out numGroups, groupsSize, groups); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorGroupsAMD(out int numGroups, int groupsSize, void* groups) => _GetPerfMonitorGroupsAMD_ptr(out numGroups, groupsSize, groups); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfMonitorGroupsAMD(out int numGroups, int groupsSize, IntPtr groups) => _GetPerfMonitorGroupsAMD_intptr(out numGroups, groupsSize, groups); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfQueryDataINTEL(uint queryHandle, uint flags, int dataSize, IntPtr data, uint[] bytesWritten) => _GetPerfQueryDataINTEL(queryHandle, flags, dataSize, data, bytesWritten); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfQueryDataINTEL(uint queryHandle, uint flags, int dataSize, IntPtr data, void* bytesWritten) => _GetPerfQueryDataINTEL_ptr(queryHandle, flags, dataSize, data, bytesWritten); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfQueryDataINTEL(uint queryHandle, uint flags, int dataSize, IntPtr data, IntPtr bytesWritten) => _GetPerfQueryDataINTEL_intptr(queryHandle, flags, dataSize, data, bytesWritten); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfQueryIdByNameINTEL(string queryName, uint[] queryId) => _GetPerfQueryIdByNameINTEL(queryName, queryId); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfQueryIdByNameINTEL(void* queryName, void* queryId) => _GetPerfQueryIdByNameINTEL_ptr(queryName, queryId); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfQueryIdByNameINTEL(IntPtr queryName, IntPtr queryId) => _GetPerfQueryIdByNameINTEL_intptr(queryName, queryId); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfQueryInfoINTEL(uint queryId, uint queryNameLength, string queryName, uint[] dataSize, uint[] noCounters, uint[] noInstances, uint[] capsMask) => _GetPerfQueryInfoINTEL(queryId, queryNameLength, queryName, dataSize, noCounters, noInstances, capsMask); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfQueryInfoINTEL(uint queryId, uint queryNameLength, void* queryName, void* dataSize, void* noCounters, void* noInstances, void* capsMask) => _GetPerfQueryInfoINTEL_ptr(queryId, queryNameLength, queryName, dataSize, noCounters, noInstances, capsMask); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPerfQueryInfoINTEL(uint queryId, uint queryNameLength, IntPtr queryName, IntPtr dataSize, IntPtr noCounters, IntPtr noInstances, IntPtr capsMask) => _GetPerfQueryInfoINTEL_intptr(queryId, queryNameLength, queryName, dataSize, noCounters, noInstances, capsMask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelMapfv(PixelMap map, float[] values) => _GetPixelMapfv(map, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelMapfv(PixelMap map, void* values) => _GetPixelMapfv_ptr(map, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelMapfv(PixelMap map, IntPtr values) => _GetPixelMapfv_intptr(map, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelMapuiv(PixelMap map, uint[] values) => _GetPixelMapuiv(map, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelMapuiv(PixelMap map, void* values) => _GetPixelMapuiv_ptr(map, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelMapuiv(PixelMap map, IntPtr values) => _GetPixelMapuiv_intptr(map, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelMapusv(PixelMap map, ushort[] values) => _GetPixelMapusv(map, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelMapusv(PixelMap map, void* values) => _GetPixelMapusv_ptr(map, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelMapusv(PixelMap map, IntPtr values) => _GetPixelMapusv_intptr(map, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelMapxv(PixelMap map, int size, float[] values) => _GetPixelMapxv(map, size, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelMapxv(PixelMap map, int size, void* values) => _GetPixelMapxv_ptr(map, size, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelMapxv(PixelMap map, int size, IntPtr values) => _GetPixelMapxv_intptr(map, size, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelTexGenParameterfvSGIS(PixelTexGenParameterNameSGIS pname, float[] @params) => _GetPixelTexGenParameterfvSGIS(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelTexGenParameterfvSGIS(PixelTexGenParameterNameSGIS pname, void* @params) => _GetPixelTexGenParameterfvSGIS_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelTexGenParameterfvSGIS(PixelTexGenParameterNameSGIS pname, IntPtr @params) => _GetPixelTexGenParameterfvSGIS_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelTexGenParameterivSGIS(PixelTexGenParameterNameSGIS pname, int[] @params) => _GetPixelTexGenParameterivSGIS(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelTexGenParameterivSGIS(PixelTexGenParameterNameSGIS pname, void* @params) => _GetPixelTexGenParameterivSGIS_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelTexGenParameterivSGIS(PixelTexGenParameterNameSGIS pname, IntPtr @params) => _GetPixelTexGenParameterivSGIS_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelTransformParameterfvEXT(int target, int pname, float[] @params) => _GetPixelTransformParameterfvEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelTransformParameterfvEXT(int target, int pname, void* @params) => _GetPixelTransformParameterfvEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelTransformParameterfvEXT(int target, int pname, IntPtr @params) => _GetPixelTransformParameterfvEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelTransformParameterivEXT(int target, int pname, int[] @params) => _GetPixelTransformParameterivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelTransformParameterivEXT(int target, int pname, void* @params) => _GetPixelTransformParameterivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPixelTransformParameterivEXT(int target, int pname, IntPtr @params) => _GetPixelTransformParameterivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPointerIndexedvEXT(int target, uint index, IntPtr* data) => _GetPointerIndexedvEXT(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPointeri_vEXT(int pname, uint index, IntPtr* @params) => _GetPointeri_vEXT(pname, index, @params); + + // --- + + /// + /// glGetPointerv returns pointer information. pname indicates the pointer to be returned, and params is a pointer to a location in which to place the returned data. The parameters that may be queried include: + /// GL_DEBUG_CALLBACK_FUNCTION Returns the current callback function set with the callback argument of glDebugMessageCallback. GL_DEBUG_CALLBACK_USER_PARAM Returns the user parameter to the current callback function set with the userParam argument of glDebugMessageCallback. + /// + /// Specifies the pointer to be returned. Must be one of GL_DEBUG_CALLBACK_FUNCTION or GL_DEBUG_CALLBACK_USER_PARAM. + /// Returns the pointer value specified by pname. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPointerv(GetPointervPName pname, IntPtr* @params) => _GetPointerv(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPointervEXT(GetPointervPName pname, IntPtr* @params) => _GetPointervEXT(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPointervKHR(int pname, IntPtr* @params) => _GetPointervKHR(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPolygonStipple(byte[] mask) => _GetPolygonStipple(mask); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPolygonStipple(void* mask) => _GetPolygonStipple_ptr(mask); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetPolygonStipple(IntPtr mask) => _GetPolygonStipple_intptr(mask); + + // --- + + /// + /// glGetProgramBinary returns a binary representation of the compiled and linked executable for program into the array of bytes whose address is specified in binary. The maximum number of bytes that may be written into binary is specified by bufSize. If the program binary is greater in size than bufSize bytes, then an error is generated, otherwise the actual number of bytes written into binary is returned in the variable whose address is given by length. If length is NULL, then no length is returned. + /// The format of the program binary written into binary is returned in the variable whose address is given by binaryFormat, and may be implementation dependent. The binary produced by the GL may subsequently be returned to the GL by calling glProgramBinary, with binaryFormat and length set to the values returned by glGetProgramBinary, and passing the returned binary data in the binary parameter. + /// + /// Specifies the name of a program object whose binary representation to retrieve. + /// Specifies the size of the buffer whose address is given by binary. + /// Specifies the address of a variable to receive the number of bytes written into binary. + /// Specifies the address of a variable to receive a token indicating the format of the binary data returned by the GL. + /// Specifies the address an array into which the GL will return program's binary representation. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramBinary(uint program, int bufSize, out int length, out int binaryFormat, IntPtr binary) => _GetProgramBinary(program, bufSize, out length, out binaryFormat, binary); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramBinaryOES(uint program, int bufSize, out int length, out int binaryFormat, IntPtr binary) => _GetProgramBinaryOES(program, bufSize, out length, out binaryFormat, binary); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramEnvParameterIivNV(ProgramTarget target, uint index, int[] @params) => _GetProgramEnvParameterIivNV(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramEnvParameterIivNV(ProgramTarget target, uint index, void* @params) => _GetProgramEnvParameterIivNV_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramEnvParameterIivNV(ProgramTarget target, uint index, IntPtr @params) => _GetProgramEnvParameterIivNV_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramEnvParameterIuivNV(ProgramTarget target, uint index, uint[] @params) => _GetProgramEnvParameterIuivNV(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramEnvParameterIuivNV(ProgramTarget target, uint index, void* @params) => _GetProgramEnvParameterIuivNV_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramEnvParameterIuivNV(ProgramTarget target, uint index, IntPtr @params) => _GetProgramEnvParameterIuivNV_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramEnvParameterdvARB(ProgramTarget target, uint index, double[] @params) => _GetProgramEnvParameterdvARB(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramEnvParameterdvARB(ProgramTarget target, uint index, void* @params) => _GetProgramEnvParameterdvARB_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramEnvParameterdvARB(ProgramTarget target, uint index, IntPtr @params) => _GetProgramEnvParameterdvARB_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramEnvParameterfvARB(ProgramTarget target, uint index, float[] @params) => _GetProgramEnvParameterfvARB(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramEnvParameterfvARB(ProgramTarget target, uint index, void* @params) => _GetProgramEnvParameterfvARB_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramEnvParameterfvARB(ProgramTarget target, uint index, IntPtr @params) => _GetProgramEnvParameterfvARB_intptr(target, index, @params); + + // --- + + /// + /// glGetProgramInfoLog returns the information log for the specified program object. The information log for a program object is modified when the program object is linked or validated. The string that is returned will be null terminated. + /// glGetProgramInfoLog returns in infoLog as much of the information log as it can, up to a maximum of maxLength characters. The number of characters actually returned, excluding the null termination character, is specified by length. If the length of the returned string is not required, a value of NULL can be passed in the length argument. The size of the buffer required to store the returned information log can be obtained by calling glGetProgram with the value GL_INFO_LOG_LENGTH. + /// The information log for a program object is either an empty string, or a string containing information about the last link operation, or a string containing information about the last validation operation. It may contain diagnostic messages, warning messages, and other information. When a program object is created, its information log will be a string of length 0. + /// + /// Specifies the program object whose information log is to be queried. + /// Specifies the size of the character buffer for storing the returned information log. + /// Returns the length of the string returned in infoLog (excluding the null terminator). + /// Specifies an array of characters that is used to return the information log. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramInfoLog(uint program, int bufSize, out int length, string infoLog) => _GetProgramInfoLog(program, bufSize, out length, infoLog); + + /// + /// glGetProgramInfoLog returns the information log for the specified program object. The information log for a program object is modified when the program object is linked or validated. The string that is returned will be null terminated. + /// glGetProgramInfoLog returns in infoLog as much of the information log as it can, up to a maximum of maxLength characters. The number of characters actually returned, excluding the null termination character, is specified by length. If the length of the returned string is not required, a value of NULL can be passed in the length argument. The size of the buffer required to store the returned information log can be obtained by calling glGetProgram with the value GL_INFO_LOG_LENGTH. + /// The information log for a program object is either an empty string, or a string containing information about the last link operation, or a string containing information about the last validation operation. It may contain diagnostic messages, warning messages, and other information. When a program object is created, its information log will be a string of length 0. + /// + /// Specifies the program object whose information log is to be queried. + /// Specifies the size of the character buffer for storing the returned information log. + /// Returns the length of the string returned in infoLog (excluding the null terminator). + /// Specifies an array of characters that is used to return the information log. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramInfoLog(uint program, int bufSize, out int length, void* infoLog) => _GetProgramInfoLog_ptr(program, bufSize, out length, infoLog); + + /// + /// glGetProgramInfoLog returns the information log for the specified program object. The information log for a program object is modified when the program object is linked or validated. The string that is returned will be null terminated. + /// glGetProgramInfoLog returns in infoLog as much of the information log as it can, up to a maximum of maxLength characters. The number of characters actually returned, excluding the null termination character, is specified by length. If the length of the returned string is not required, a value of NULL can be passed in the length argument. The size of the buffer required to store the returned information log can be obtained by calling glGetProgram with the value GL_INFO_LOG_LENGTH. + /// The information log for a program object is either an empty string, or a string containing information about the last link operation, or a string containing information about the last validation operation. It may contain diagnostic messages, warning messages, and other information. When a program object is created, its information log will be a string of length 0. + /// + /// Specifies the program object whose information log is to be queried. + /// Specifies the size of the character buffer for storing the returned information log. + /// Returns the length of the string returned in infoLog (excluding the null terminator). + /// Specifies an array of characters that is used to return the information log. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramInfoLog(uint program, int bufSize, out int length, IntPtr infoLog) => _GetProgramInfoLog_intptr(program, bufSize, out length, infoLog); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramInterfaceiv(uint program, ProgramInterface programInterface, ProgramInterfacePName pname, int[] @params) => _GetProgramInterfaceiv(program, programInterface, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramInterfaceiv(uint program, ProgramInterface programInterface, ProgramInterfacePName pname, void* @params) => _GetProgramInterfaceiv_ptr(program, programInterface, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramInterfaceiv(uint program, ProgramInterface programInterface, ProgramInterfacePName pname, IntPtr @params) => _GetProgramInterfaceiv_intptr(program, programInterface, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramLocalParameterIivNV(ProgramTarget target, uint index, int[] @params) => _GetProgramLocalParameterIivNV(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramLocalParameterIivNV(ProgramTarget target, uint index, void* @params) => _GetProgramLocalParameterIivNV_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramLocalParameterIivNV(ProgramTarget target, uint index, IntPtr @params) => _GetProgramLocalParameterIivNV_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramLocalParameterIuivNV(ProgramTarget target, uint index, uint[] @params) => _GetProgramLocalParameterIuivNV(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramLocalParameterIuivNV(ProgramTarget target, uint index, void* @params) => _GetProgramLocalParameterIuivNV_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramLocalParameterIuivNV(ProgramTarget target, uint index, IntPtr @params) => _GetProgramLocalParameterIuivNV_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramLocalParameterdvARB(ProgramTarget target, uint index, double[] @params) => _GetProgramLocalParameterdvARB(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramLocalParameterdvARB(ProgramTarget target, uint index, void* @params) => _GetProgramLocalParameterdvARB_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramLocalParameterdvARB(ProgramTarget target, uint index, IntPtr @params) => _GetProgramLocalParameterdvARB_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramLocalParameterfvARB(ProgramTarget target, uint index, float[] @params) => _GetProgramLocalParameterfvARB(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramLocalParameterfvARB(ProgramTarget target, uint index, void* @params) => _GetProgramLocalParameterfvARB_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramLocalParameterfvARB(ProgramTarget target, uint index, IntPtr @params) => _GetProgramLocalParameterfvARB_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramNamedParameterdvNV(uint id, int len, byte[] name, double[] @params) => _GetProgramNamedParameterdvNV(id, len, name, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramNamedParameterdvNV(uint id, int len, void* name, void* @params) => _GetProgramNamedParameterdvNV_ptr(id, len, name, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramNamedParameterdvNV(uint id, int len, IntPtr name, IntPtr @params) => _GetProgramNamedParameterdvNV_intptr(id, len, name, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramNamedParameterfvNV(uint id, int len, byte[] name, float[] @params) => _GetProgramNamedParameterfvNV(id, len, name, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramNamedParameterfvNV(uint id, int len, void* name, void* @params) => _GetProgramNamedParameterfvNV_ptr(id, len, name, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramNamedParameterfvNV(uint id, int len, IntPtr name, IntPtr @params) => _GetProgramNamedParameterfvNV_intptr(id, len, name, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramParameterdvNV(VertexAttribEnumNV target, uint index, VertexAttribEnumNV pname, double[] @params) => _GetProgramParameterdvNV(target, index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramParameterdvNV(VertexAttribEnumNV target, uint index, VertexAttribEnumNV pname, void* @params) => _GetProgramParameterdvNV_ptr(target, index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramParameterdvNV(VertexAttribEnumNV target, uint index, VertexAttribEnumNV pname, IntPtr @params) => _GetProgramParameterdvNV_intptr(target, index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramParameterfvNV(VertexAttribEnumNV target, uint index, VertexAttribEnumNV pname, float[] @params) => _GetProgramParameterfvNV(target, index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramParameterfvNV(VertexAttribEnumNV target, uint index, VertexAttribEnumNV pname, void* @params) => _GetProgramParameterfvNV_ptr(target, index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramParameterfvNV(VertexAttribEnumNV target, uint index, VertexAttribEnumNV pname, IntPtr @params) => _GetProgramParameterfvNV_intptr(target, index, pname, @params); + + // --- + + /// + /// glGetProgramPipelineInfoLog retrieves the info log for the program pipeline object pipeline. The info log, including its null terminator, is written into the array of characters whose address is given by infoLog. The maximum number of characters that may be written into infoLog is given by bufSize, and the actual number of characters written into infoLog is returned in the integer whose address is given by length. If length is NULL, no length is returned. + /// The actual length of the info log for the program pipeline may be determined by calling glGetProgramPipeline with pname set to GL_INFO_LOG_LENGTH. + /// + /// Specifies the name of a program pipeline object from which to retrieve the info log. + /// Specifies the maximum number of characters, including the null terminator, that may be written into infoLog. + /// Specifies the address of a variable into which will be written the number of characters written into infoLog. + /// Specifies the address of an array of characters into which will be written the info log for pipeline. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramPipelineInfoLog(uint pipeline, int bufSize, out int length, string infoLog) => _GetProgramPipelineInfoLog(pipeline, bufSize, out length, infoLog); + + /// + /// glGetProgramPipelineInfoLog retrieves the info log for the program pipeline object pipeline. The info log, including its null terminator, is written into the array of characters whose address is given by infoLog. The maximum number of characters that may be written into infoLog is given by bufSize, and the actual number of characters written into infoLog is returned in the integer whose address is given by length. If length is NULL, no length is returned. + /// The actual length of the info log for the program pipeline may be determined by calling glGetProgramPipeline with pname set to GL_INFO_LOG_LENGTH. + /// + /// Specifies the name of a program pipeline object from which to retrieve the info log. + /// Specifies the maximum number of characters, including the null terminator, that may be written into infoLog. + /// Specifies the address of a variable into which will be written the number of characters written into infoLog. + /// Specifies the address of an array of characters into which will be written the info log for pipeline. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramPipelineInfoLog(uint pipeline, int bufSize, out int length, void* infoLog) => _GetProgramPipelineInfoLog_ptr(pipeline, bufSize, out length, infoLog); + + /// + /// glGetProgramPipelineInfoLog retrieves the info log for the program pipeline object pipeline. The info log, including its null terminator, is written into the array of characters whose address is given by infoLog. The maximum number of characters that may be written into infoLog is given by bufSize, and the actual number of characters written into infoLog is returned in the integer whose address is given by length. If length is NULL, no length is returned. + /// The actual length of the info log for the program pipeline may be determined by calling glGetProgramPipeline with pname set to GL_INFO_LOG_LENGTH. + /// + /// Specifies the name of a program pipeline object from which to retrieve the info log. + /// Specifies the maximum number of characters, including the null terminator, that may be written into infoLog. + /// Specifies the address of a variable into which will be written the number of characters written into infoLog. + /// Specifies the address of an array of characters into which will be written the info log for pipeline. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramPipelineInfoLog(uint pipeline, int bufSize, out int length, IntPtr infoLog) => _GetProgramPipelineInfoLog_intptr(pipeline, bufSize, out length, infoLog); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramPipelineInfoLogEXT(uint pipeline, int bufSize, out int length, string infoLog) => _GetProgramPipelineInfoLogEXT(pipeline, bufSize, out length, infoLog); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramPipelineInfoLogEXT(uint pipeline, int bufSize, out int length, void* infoLog) => _GetProgramPipelineInfoLogEXT_ptr(pipeline, bufSize, out length, infoLog); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramPipelineInfoLogEXT(uint pipeline, int bufSize, out int length, IntPtr infoLog) => _GetProgramPipelineInfoLogEXT_intptr(pipeline, bufSize, out length, infoLog); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramPipelineiv(uint pipeline, PipelineParameterName pname, int[] @params) => _GetProgramPipelineiv(pipeline, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramPipelineiv(uint pipeline, PipelineParameterName pname, void* @params) => _GetProgramPipelineiv_ptr(pipeline, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramPipelineiv(uint pipeline, PipelineParameterName pname, IntPtr @params) => _GetProgramPipelineiv_intptr(pipeline, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramPipelineivEXT(uint pipeline, PipelineParameterName pname, int[] @params) => _GetProgramPipelineivEXT(pipeline, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramPipelineivEXT(uint pipeline, PipelineParameterName pname, void* @params) => _GetProgramPipelineivEXT_ptr(pipeline, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramPipelineivEXT(uint pipeline, PipelineParameterName pname, IntPtr @params) => _GetProgramPipelineivEXT_intptr(pipeline, pname, @params); + + // --- + + /// + /// glGetProgramResourceIndex returns the unsigned integer index assigned to a resource named name in the interface type programInterface of program object program. + /// program must be the name of an existing program object. programInterface is the name of the interface within program which contains the resource named nameand must be one of the following values: + /// GL_UNIFORM The query is targeted at the set of active uniforms within program. GL_UNIFORM_BLOCK The query is targeted at the set of active uniform blocks within program. GL_PROGRAM_INPUT The query is targeted at the set of active input variables used by the first shader stage of program. If program contains multiple shader stages then input variables from any stage other than the first will not be enumerated. GL_PROGRAM_OUTPUT The query is targeted at the set of active output variables produced by the last shader stage of program. If program contains multiple shader stages then output variables from any stage other than the last will not be enumerated. GL_VERTEX_SUBROUTINEGL_TESS_CONTROL_SUBROUTINEGL_TESS_EVALUATION_SUBROUTINEGL_GEOMETRY_SUBROUTINEGL_FRAGMENT_SUBROUTINEGL_COMPUTE_SUBROUTINE The query is targeted at the set of active subroutines for the vertex, tessellation control, tessellation evaluation, geometry, fragment and compute shader stages of program, respectively. GL_VERTEX_SUBROUTINE_UNIFORMGL_TESS_CONTROL_SUBROUTINE_UNIFORMGL_TESS_EVALUATION_SUBROUTINE_UNIFORMGL_GEOMETRY_SUBROUTINE_UNIFORMGL_FRAGMENT_SUBROUTINE_UNIFORMGL_COMPUTE_SUBROUTINE_UNIFORM The query is targeted at the set of active subroutine uniform variables used by the vertex, tessellation control, tessellation evaluation, geometry, fragment and compute shader stages of program, respectively. GL_TRANSFORM_FEEDBACK_VARYING The query is targeted at the set of output variables from the last non-fragment stage of program that would be captured if transform feedback were active. GL_TRANSFORM_FEEDBACK_BUFFER The query is targeted at the set of active buffer binding points to which output variables in the GL_TRANSFORM_FEEDBACK_VARYING interface are written. GL_BUFFER_VARIABLE The query is targeted at the set of active buffer variables used by program. GL_SHADER_STORAGE_BLOCK The query is targeted at the set of active shader storage blocks used by program. + /// If name exactly matches the name string of one of the active resources for programInterface, the index of the matched resource is returned. Additionally, if name would exactly match the name string of an active resource if "[0]" were appended to name, the index of the matched resource is returned. Otherwise, name is considered not to be the name of an active resource, and GL_INVALID_INDEX is returned. + /// For the interface GL_TRANSFORM_FEEDBACK_VARYING, the value GL_INVALID_INDEX should be returned when querying the index assigned to the special names gl_NextBuffer, gl_SkipComponents1, gl_SkipComponents2, gl_SkipComponents3, or gl_SkipComponents4. + /// + /// The name of a program object whose resources to query. + /// A token identifying the interface within program containing the resource named name. + /// The name of the resource to query the index of. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetProgramResourceIndex(uint program, ProgramInterface programInterface, string name) => _GetProgramResourceIndex(program, programInterface, name); + + /// + /// glGetProgramResourceIndex returns the unsigned integer index assigned to a resource named name in the interface type programInterface of program object program. + /// program must be the name of an existing program object. programInterface is the name of the interface within program which contains the resource named nameand must be one of the following values: + /// GL_UNIFORM The query is targeted at the set of active uniforms within program. GL_UNIFORM_BLOCK The query is targeted at the set of active uniform blocks within program. GL_PROGRAM_INPUT The query is targeted at the set of active input variables used by the first shader stage of program. If program contains multiple shader stages then input variables from any stage other than the first will not be enumerated. GL_PROGRAM_OUTPUT The query is targeted at the set of active output variables produced by the last shader stage of program. If program contains multiple shader stages then output variables from any stage other than the last will not be enumerated. GL_VERTEX_SUBROUTINEGL_TESS_CONTROL_SUBROUTINEGL_TESS_EVALUATION_SUBROUTINEGL_GEOMETRY_SUBROUTINEGL_FRAGMENT_SUBROUTINEGL_COMPUTE_SUBROUTINE The query is targeted at the set of active subroutines for the vertex, tessellation control, tessellation evaluation, geometry, fragment and compute shader stages of program, respectively. GL_VERTEX_SUBROUTINE_UNIFORMGL_TESS_CONTROL_SUBROUTINE_UNIFORMGL_TESS_EVALUATION_SUBROUTINE_UNIFORMGL_GEOMETRY_SUBROUTINE_UNIFORMGL_FRAGMENT_SUBROUTINE_UNIFORMGL_COMPUTE_SUBROUTINE_UNIFORM The query is targeted at the set of active subroutine uniform variables used by the vertex, tessellation control, tessellation evaluation, geometry, fragment and compute shader stages of program, respectively. GL_TRANSFORM_FEEDBACK_VARYING The query is targeted at the set of output variables from the last non-fragment stage of program that would be captured if transform feedback were active. GL_TRANSFORM_FEEDBACK_BUFFER The query is targeted at the set of active buffer binding points to which output variables in the GL_TRANSFORM_FEEDBACK_VARYING interface are written. GL_BUFFER_VARIABLE The query is targeted at the set of active buffer variables used by program. GL_SHADER_STORAGE_BLOCK The query is targeted at the set of active shader storage blocks used by program. + /// If name exactly matches the name string of one of the active resources for programInterface, the index of the matched resource is returned. Additionally, if name would exactly match the name string of an active resource if "[0]" were appended to name, the index of the matched resource is returned. Otherwise, name is considered not to be the name of an active resource, and GL_INVALID_INDEX is returned. + /// For the interface GL_TRANSFORM_FEEDBACK_VARYING, the value GL_INVALID_INDEX should be returned when querying the index assigned to the special names gl_NextBuffer, gl_SkipComponents1, gl_SkipComponents2, gl_SkipComponents3, or gl_SkipComponents4. + /// + /// The name of a program object whose resources to query. + /// A token identifying the interface within program containing the resource named name. + /// The name of the resource to query the index of. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetProgramResourceIndex(uint program, ProgramInterface programInterface, void* name) => _GetProgramResourceIndex_ptr(program, programInterface, name); + + /// + /// glGetProgramResourceIndex returns the unsigned integer index assigned to a resource named name in the interface type programInterface of program object program. + /// program must be the name of an existing program object. programInterface is the name of the interface within program which contains the resource named nameand must be one of the following values: + /// GL_UNIFORM The query is targeted at the set of active uniforms within program. GL_UNIFORM_BLOCK The query is targeted at the set of active uniform blocks within program. GL_PROGRAM_INPUT The query is targeted at the set of active input variables used by the first shader stage of program. If program contains multiple shader stages then input variables from any stage other than the first will not be enumerated. GL_PROGRAM_OUTPUT The query is targeted at the set of active output variables produced by the last shader stage of program. If program contains multiple shader stages then output variables from any stage other than the last will not be enumerated. GL_VERTEX_SUBROUTINEGL_TESS_CONTROL_SUBROUTINEGL_TESS_EVALUATION_SUBROUTINEGL_GEOMETRY_SUBROUTINEGL_FRAGMENT_SUBROUTINEGL_COMPUTE_SUBROUTINE The query is targeted at the set of active subroutines for the vertex, tessellation control, tessellation evaluation, geometry, fragment and compute shader stages of program, respectively. GL_VERTEX_SUBROUTINE_UNIFORMGL_TESS_CONTROL_SUBROUTINE_UNIFORMGL_TESS_EVALUATION_SUBROUTINE_UNIFORMGL_GEOMETRY_SUBROUTINE_UNIFORMGL_FRAGMENT_SUBROUTINE_UNIFORMGL_COMPUTE_SUBROUTINE_UNIFORM The query is targeted at the set of active subroutine uniform variables used by the vertex, tessellation control, tessellation evaluation, geometry, fragment and compute shader stages of program, respectively. GL_TRANSFORM_FEEDBACK_VARYING The query is targeted at the set of output variables from the last non-fragment stage of program that would be captured if transform feedback were active. GL_TRANSFORM_FEEDBACK_BUFFER The query is targeted at the set of active buffer binding points to which output variables in the GL_TRANSFORM_FEEDBACK_VARYING interface are written. GL_BUFFER_VARIABLE The query is targeted at the set of active buffer variables used by program. GL_SHADER_STORAGE_BLOCK The query is targeted at the set of active shader storage blocks used by program. + /// If name exactly matches the name string of one of the active resources for programInterface, the index of the matched resource is returned. Additionally, if name would exactly match the name string of an active resource if "[0]" were appended to name, the index of the matched resource is returned. Otherwise, name is considered not to be the name of an active resource, and GL_INVALID_INDEX is returned. + /// For the interface GL_TRANSFORM_FEEDBACK_VARYING, the value GL_INVALID_INDEX should be returned when querying the index assigned to the special names gl_NextBuffer, gl_SkipComponents1, gl_SkipComponents2, gl_SkipComponents3, or gl_SkipComponents4. + /// + /// The name of a program object whose resources to query. + /// A token identifying the interface within program containing the resource named name. + /// The name of the resource to query the index of. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetProgramResourceIndex(uint program, ProgramInterface programInterface, IntPtr name) => _GetProgramResourceIndex_intptr(program, programInterface, name); + + // --- + + /// + /// glGetProgramResourceLocation returns the location assigned to the variable named name in interface programInterface of program object program. program must be the name of a program that has been linked successfully. programInterface must be one of GL_UNIFORM, GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT, GL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM, or GL_TRANSFORM_FEEDBACK_BUFFER. + /// The value -1 will be returned if an error occurs, if name does not identify an active variable on programInterface, or if name identifies an active variable that does not have a valid location assigned, as described above. The locations returned by these commands are the same locations returned when querying the GL_LOCATION and GL_LOCATION_INDEX resource properties. + /// A string provided to glGetProgramResourceLocation is considered to match an active variable if: + /// the string exactly matches the name of the active variable if the string identifies the base name of an active array, where the string would exactly match the name of the variable if the suffix "[0]" were appended to the string if the string identifies an active element of the array, where the string ends with the concatenation of the "[" character, an integer with no "+" sign, extra leading zeroes, or whitespace identifying an array element, and the "]" character, the integer is less than the number of active elements of the array variable, and where the string would exactly match the enumerated name of the array if the decimal integer were replaced with zero. + /// Any other string is considered not to identify an active variable. If the string specifies an element of an array variable, glGetProgramResourceLocation returns the location assigned to that element. If it specifies the base name of an array, it identifies the resources associated with the first element of the array. + /// + /// The name of a program object whose resources to query. + /// A token identifying the interface within program containing the resource named name. + /// The name of the resource to query the location of. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetProgramResourceLocation(uint program, ProgramInterface programInterface, string name) => _GetProgramResourceLocation(program, programInterface, name); + + /// + /// glGetProgramResourceLocation returns the location assigned to the variable named name in interface programInterface of program object program. program must be the name of a program that has been linked successfully. programInterface must be one of GL_UNIFORM, GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT, GL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM, or GL_TRANSFORM_FEEDBACK_BUFFER. + /// The value -1 will be returned if an error occurs, if name does not identify an active variable on programInterface, or if name identifies an active variable that does not have a valid location assigned, as described above. The locations returned by these commands are the same locations returned when querying the GL_LOCATION and GL_LOCATION_INDEX resource properties. + /// A string provided to glGetProgramResourceLocation is considered to match an active variable if: + /// the string exactly matches the name of the active variable if the string identifies the base name of an active array, where the string would exactly match the name of the variable if the suffix "[0]" were appended to the string if the string identifies an active element of the array, where the string ends with the concatenation of the "[" character, an integer with no "+" sign, extra leading zeroes, or whitespace identifying an array element, and the "]" character, the integer is less than the number of active elements of the array variable, and where the string would exactly match the enumerated name of the array if the decimal integer were replaced with zero. + /// Any other string is considered not to identify an active variable. If the string specifies an element of an array variable, glGetProgramResourceLocation returns the location assigned to that element. If it specifies the base name of an array, it identifies the resources associated with the first element of the array. + /// + /// The name of a program object whose resources to query. + /// A token identifying the interface within program containing the resource named name. + /// The name of the resource to query the location of. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetProgramResourceLocation(uint program, ProgramInterface programInterface, void* name) => _GetProgramResourceLocation_ptr(program, programInterface, name); + + /// + /// glGetProgramResourceLocation returns the location assigned to the variable named name in interface programInterface of program object program. program must be the name of a program that has been linked successfully. programInterface must be one of GL_UNIFORM, GL_PROGRAM_INPUT, GL_PROGRAM_OUTPUT, GL_VERTEX_SUBROUTINE_UNIFORM, GL_TESS_CONTROL_SUBROUTINE_UNIFORM, GL_TESS_EVALUATION_SUBROUTINE_UNIFORM, GL_GEOMETRY_SUBROUTINE_UNIFORM, GL_FRAGMENT_SUBROUTINE_UNIFORM, GL_COMPUTE_SUBROUTINE_UNIFORM, or GL_TRANSFORM_FEEDBACK_BUFFER. + /// The value -1 will be returned if an error occurs, if name does not identify an active variable on programInterface, or if name identifies an active variable that does not have a valid location assigned, as described above. The locations returned by these commands are the same locations returned when querying the GL_LOCATION and GL_LOCATION_INDEX resource properties. + /// A string provided to glGetProgramResourceLocation is considered to match an active variable if: + /// the string exactly matches the name of the active variable if the string identifies the base name of an active array, where the string would exactly match the name of the variable if the suffix "[0]" were appended to the string if the string identifies an active element of the array, where the string ends with the concatenation of the "[" character, an integer with no "+" sign, extra leading zeroes, or whitespace identifying an array element, and the "]" character, the integer is less than the number of active elements of the array variable, and where the string would exactly match the enumerated name of the array if the decimal integer were replaced with zero. + /// Any other string is considered not to identify an active variable. If the string specifies an element of an array variable, glGetProgramResourceLocation returns the location assigned to that element. If it specifies the base name of an array, it identifies the resources associated with the first element of the array. + /// + /// The name of a program object whose resources to query. + /// A token identifying the interface within program containing the resource named name. + /// The name of the resource to query the location of. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetProgramResourceLocation(uint program, ProgramInterface programInterface, IntPtr name) => _GetProgramResourceLocation_intptr(program, programInterface, name); + + // --- + + /// + /// glGetProgramResourceLocationIndex returns the fragment color index assigned to the variable named name in interface programInterface of program object program. program must be the name of a program that has been linked successfully. programInterface must be GL_PROGRAM_OUTPUT. + /// The value -1 will be returned if an error occurs, if name does not identify an active variable on programInterface, or if name identifies an active variable that does not have a valid location assigned, as described above. The locations returned by these commands are the same locations returned when querying the GL_LOCATION and GL_LOCATION_INDEX resource properties. + /// A string provided to glGetProgramResourceLocationIndex is considered to match an active variable if: + /// the string exactly matches the name of the active variable if the string identifies the base name of an active array, where the string would exactly match the name of the variable if the suffix "[0]" were appended to the string if the string identifies an active element of the array, where the string ends with the concatenation of the "[" character, an integer with no "+" sign, extra leading zeroes, or whitespace identifying an array element, and the "]" character, the integer is less than the number of active elements of the array variable, and where the string would exactly match the enumerated name of the array if the decimal integer were replaced with zero. + /// Any other string is considered not to identify an active variable. If the string specifies an element of an array variable, glGetProgramResourceLocation returns the location assigned to that element. If it specifies the base name of an array, it identifies the resources associated with the first element of the array. + /// + /// The name of a program object whose resources to query. + /// A token identifying the interface within program containing the resource named name. + /// The name of the resource to query the location of. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetProgramResourceLocationIndex(uint program, ProgramInterface programInterface, string name) => _GetProgramResourceLocationIndex(program, programInterface, name); + + /// + /// glGetProgramResourceLocationIndex returns the fragment color index assigned to the variable named name in interface programInterface of program object program. program must be the name of a program that has been linked successfully. programInterface must be GL_PROGRAM_OUTPUT. + /// The value -1 will be returned if an error occurs, if name does not identify an active variable on programInterface, or if name identifies an active variable that does not have a valid location assigned, as described above. The locations returned by these commands are the same locations returned when querying the GL_LOCATION and GL_LOCATION_INDEX resource properties. + /// A string provided to glGetProgramResourceLocationIndex is considered to match an active variable if: + /// the string exactly matches the name of the active variable if the string identifies the base name of an active array, where the string would exactly match the name of the variable if the suffix "[0]" were appended to the string if the string identifies an active element of the array, where the string ends with the concatenation of the "[" character, an integer with no "+" sign, extra leading zeroes, or whitespace identifying an array element, and the "]" character, the integer is less than the number of active elements of the array variable, and where the string would exactly match the enumerated name of the array if the decimal integer were replaced with zero. + /// Any other string is considered not to identify an active variable. If the string specifies an element of an array variable, glGetProgramResourceLocation returns the location assigned to that element. If it specifies the base name of an array, it identifies the resources associated with the first element of the array. + /// + /// The name of a program object whose resources to query. + /// A token identifying the interface within program containing the resource named name. + /// The name of the resource to query the location of. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetProgramResourceLocationIndex(uint program, ProgramInterface programInterface, void* name) => _GetProgramResourceLocationIndex_ptr(program, programInterface, name); + + /// + /// glGetProgramResourceLocationIndex returns the fragment color index assigned to the variable named name in interface programInterface of program object program. program must be the name of a program that has been linked successfully. programInterface must be GL_PROGRAM_OUTPUT. + /// The value -1 will be returned if an error occurs, if name does not identify an active variable on programInterface, or if name identifies an active variable that does not have a valid location assigned, as described above. The locations returned by these commands are the same locations returned when querying the GL_LOCATION and GL_LOCATION_INDEX resource properties. + /// A string provided to glGetProgramResourceLocationIndex is considered to match an active variable if: + /// the string exactly matches the name of the active variable if the string identifies the base name of an active array, where the string would exactly match the name of the variable if the suffix "[0]" were appended to the string if the string identifies an active element of the array, where the string ends with the concatenation of the "[" character, an integer with no "+" sign, extra leading zeroes, or whitespace identifying an array element, and the "]" character, the integer is less than the number of active elements of the array variable, and where the string would exactly match the enumerated name of the array if the decimal integer were replaced with zero. + /// Any other string is considered not to identify an active variable. If the string specifies an element of an array variable, glGetProgramResourceLocation returns the location assigned to that element. If it specifies the base name of an array, it identifies the resources associated with the first element of the array. + /// + /// The name of a program object whose resources to query. + /// A token identifying the interface within program containing the resource named name. + /// The name of the resource to query the location of. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetProgramResourceLocationIndex(uint program, ProgramInterface programInterface, IntPtr name) => _GetProgramResourceLocationIndex_intptr(program, programInterface, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetProgramResourceLocationIndexEXT(uint program, ProgramInterface programInterface, string name) => _GetProgramResourceLocationIndexEXT(program, programInterface, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetProgramResourceLocationIndexEXT(uint program, ProgramInterface programInterface, void* name) => _GetProgramResourceLocationIndexEXT_ptr(program, programInterface, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetProgramResourceLocationIndexEXT(uint program, ProgramInterface programInterface, IntPtr name) => _GetProgramResourceLocationIndexEXT_intptr(program, programInterface, name); + + // --- + + /// + /// glGetProgramResourceName retrieves the name string assigned to the single active resource with an index of index in the interface programInterface of program object program. index must be less than the number of entries in the active resource list for programInterface. + /// program must be the name of an existing program object. programInterface is the name of the interface within program which contains the resource and must be one of the following values: + /// GL_UNIFORM The query is targeted at the set of active uniforms within program. GL_UNIFORM_BLOCK The query is targeted at the set of active uniform blocks within program. GL_PROGRAM_INPUT The query is targeted at the set of active input variables used by the first shader stage of program. If program contains multiple shader stages then input variables from any stage other than the first will not be enumerated. GL_PROGRAM_OUTPUT The query is targeted at the set of active output variables produced by the last shader stage of program. If program contains multiple shader stages then output variables from any stage other than the last will not be enumerated. GL_VERTEX_SUBROUTINEGL_TESS_CONTROL_SUBROUTINEGL_TESS_EVALUATION_SUBROUTINEGL_GEOMETRY_SUBROUTINEGL_FRAGMENT_SUBROUTINEGL_COMPUTE_SUBROUTINE The query is targeted at the set of active subroutines for the vertex, tessellation control, tessellation evaluation, geometry, fragment and compute shader stages of program, respectively. GL_VERTEX_SUBROUTINE_UNIFORMGL_TESS_CONTROL_SUBROUTINE_UNIFORMGL_TESS_EVALUATION_SUBROUTINE_UNIFORMGL_GEOMETRY_SUBROUTINE_UNIFORMGL_FRAGMENT_SUBROUTINE_UNIFORMGL_COMPUTE_SUBROUTINE_UNIFORM The query is targeted at the set of active subroutine uniform variables used by the vertex, tessellation control, tessellation evaluation, geometry, fragment and compute shader stages of program, respectively. GL_TRANSFORM_FEEDBACK_VARYING The query is targeted at the set of output variables from the last non-fragment stage of program that would be captured if transform feedback were active. GL_BUFFER_VARIABLE The query is targeted at the set of active buffer variables used by program. GL_SHADER_STORAGE_BLOCK The query is targeted at the set of active shader storage blocks used by program. + /// The name string assigned to the active resource identified by index is returned as a null-terminated string in the character array whose address is given in name. The actual number of characters written into name, excluding the null terminator, is returned in length. If length is NULL, no length is returned. The maximum number of characters that may be written into name, including the null terminator, is specified by bufSize. If the length of the name string including the null terminator is greater than bufSize, the first bufSize-1 characters of the name string will be written to name, followed by a null terminator. If bufSize is zero, no error will be generated but no characters will be written to name. The length of the longest name string for programInterface>, including a null terminator, can be queried by calling glGetProgramInterface with a pname of GL_MAX_NAME_LENGTH. + /// + /// The name of a program object whose resources to query. + /// A token identifying the interface within program containing the indexed resource. + /// The index of the resource within programInterface of program. + /// The size of the character array whose address is given by name. + /// The address of a variable which will receive the length of the resource name. + /// The address of a character array into which will be written the name of the resource. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramResourceName(uint program, ProgramInterface programInterface, uint index, int bufSize, out int length, string name) => _GetProgramResourceName(program, programInterface, index, bufSize, out length, name); + + /// + /// glGetProgramResourceName retrieves the name string assigned to the single active resource with an index of index in the interface programInterface of program object program. index must be less than the number of entries in the active resource list for programInterface. + /// program must be the name of an existing program object. programInterface is the name of the interface within program which contains the resource and must be one of the following values: + /// GL_UNIFORM The query is targeted at the set of active uniforms within program. GL_UNIFORM_BLOCK The query is targeted at the set of active uniform blocks within program. GL_PROGRAM_INPUT The query is targeted at the set of active input variables used by the first shader stage of program. If program contains multiple shader stages then input variables from any stage other than the first will not be enumerated. GL_PROGRAM_OUTPUT The query is targeted at the set of active output variables produced by the last shader stage of program. If program contains multiple shader stages then output variables from any stage other than the last will not be enumerated. GL_VERTEX_SUBROUTINEGL_TESS_CONTROL_SUBROUTINEGL_TESS_EVALUATION_SUBROUTINEGL_GEOMETRY_SUBROUTINEGL_FRAGMENT_SUBROUTINEGL_COMPUTE_SUBROUTINE The query is targeted at the set of active subroutines for the vertex, tessellation control, tessellation evaluation, geometry, fragment and compute shader stages of program, respectively. GL_VERTEX_SUBROUTINE_UNIFORMGL_TESS_CONTROL_SUBROUTINE_UNIFORMGL_TESS_EVALUATION_SUBROUTINE_UNIFORMGL_GEOMETRY_SUBROUTINE_UNIFORMGL_FRAGMENT_SUBROUTINE_UNIFORMGL_COMPUTE_SUBROUTINE_UNIFORM The query is targeted at the set of active subroutine uniform variables used by the vertex, tessellation control, tessellation evaluation, geometry, fragment and compute shader stages of program, respectively. GL_TRANSFORM_FEEDBACK_VARYING The query is targeted at the set of output variables from the last non-fragment stage of program that would be captured if transform feedback were active. GL_BUFFER_VARIABLE The query is targeted at the set of active buffer variables used by program. GL_SHADER_STORAGE_BLOCK The query is targeted at the set of active shader storage blocks used by program. + /// The name string assigned to the active resource identified by index is returned as a null-terminated string in the character array whose address is given in name. The actual number of characters written into name, excluding the null terminator, is returned in length. If length is NULL, no length is returned. The maximum number of characters that may be written into name, including the null terminator, is specified by bufSize. If the length of the name string including the null terminator is greater than bufSize, the first bufSize-1 characters of the name string will be written to name, followed by a null terminator. If bufSize is zero, no error will be generated but no characters will be written to name. The length of the longest name string for programInterface>, including a null terminator, can be queried by calling glGetProgramInterface with a pname of GL_MAX_NAME_LENGTH. + /// + /// The name of a program object whose resources to query. + /// A token identifying the interface within program containing the indexed resource. + /// The index of the resource within programInterface of program. + /// The size of the character array whose address is given by name. + /// The address of a variable which will receive the length of the resource name. + /// The address of a character array into which will be written the name of the resource. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramResourceName(uint program, ProgramInterface programInterface, uint index, int bufSize, out int length, void* name) => _GetProgramResourceName_ptr(program, programInterface, index, bufSize, out length, name); + + /// + /// glGetProgramResourceName retrieves the name string assigned to the single active resource with an index of index in the interface programInterface of program object program. index must be less than the number of entries in the active resource list for programInterface. + /// program must be the name of an existing program object. programInterface is the name of the interface within program which contains the resource and must be one of the following values: + /// GL_UNIFORM The query is targeted at the set of active uniforms within program. GL_UNIFORM_BLOCK The query is targeted at the set of active uniform blocks within program. GL_PROGRAM_INPUT The query is targeted at the set of active input variables used by the first shader stage of program. If program contains multiple shader stages then input variables from any stage other than the first will not be enumerated. GL_PROGRAM_OUTPUT The query is targeted at the set of active output variables produced by the last shader stage of program. If program contains multiple shader stages then output variables from any stage other than the last will not be enumerated. GL_VERTEX_SUBROUTINEGL_TESS_CONTROL_SUBROUTINEGL_TESS_EVALUATION_SUBROUTINEGL_GEOMETRY_SUBROUTINEGL_FRAGMENT_SUBROUTINEGL_COMPUTE_SUBROUTINE The query is targeted at the set of active subroutines for the vertex, tessellation control, tessellation evaluation, geometry, fragment and compute shader stages of program, respectively. GL_VERTEX_SUBROUTINE_UNIFORMGL_TESS_CONTROL_SUBROUTINE_UNIFORMGL_TESS_EVALUATION_SUBROUTINE_UNIFORMGL_GEOMETRY_SUBROUTINE_UNIFORMGL_FRAGMENT_SUBROUTINE_UNIFORMGL_COMPUTE_SUBROUTINE_UNIFORM The query is targeted at the set of active subroutine uniform variables used by the vertex, tessellation control, tessellation evaluation, geometry, fragment and compute shader stages of program, respectively. GL_TRANSFORM_FEEDBACK_VARYING The query is targeted at the set of output variables from the last non-fragment stage of program that would be captured if transform feedback were active. GL_BUFFER_VARIABLE The query is targeted at the set of active buffer variables used by program. GL_SHADER_STORAGE_BLOCK The query is targeted at the set of active shader storage blocks used by program. + /// The name string assigned to the active resource identified by index is returned as a null-terminated string in the character array whose address is given in name. The actual number of characters written into name, excluding the null terminator, is returned in length. If length is NULL, no length is returned. The maximum number of characters that may be written into name, including the null terminator, is specified by bufSize. If the length of the name string including the null terminator is greater than bufSize, the first bufSize-1 characters of the name string will be written to name, followed by a null terminator. If bufSize is zero, no error will be generated but no characters will be written to name. The length of the longest name string for programInterface>, including a null terminator, can be queried by calling glGetProgramInterface with a pname of GL_MAX_NAME_LENGTH. + /// + /// The name of a program object whose resources to query. + /// A token identifying the interface within program containing the indexed resource. + /// The index of the resource within programInterface of program. + /// The size of the character array whose address is given by name. + /// The address of a variable which will receive the length of the resource name. + /// The address of a character array into which will be written the name of the resource. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramResourceName(uint program, ProgramInterface programInterface, uint index, int bufSize, out int length, IntPtr name) => _GetProgramResourceName_intptr(program, programInterface, index, bufSize, out length, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramResourcefvNV(uint program, ProgramInterface programInterface, uint index, int propCount, int[] props, int count, out int length, float[] @params) => _GetProgramResourcefvNV(program, programInterface, index, propCount, props, count, out length, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramResourcefvNV(uint program, ProgramInterface programInterface, uint index, int propCount, void* props, int count, out int length, void* @params) => _GetProgramResourcefvNV_ptr(program, programInterface, index, propCount, props, count, out length, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramResourcefvNV(uint program, ProgramInterface programInterface, uint index, int propCount, IntPtr props, int count, out int length, IntPtr @params) => _GetProgramResourcefvNV_intptr(program, programInterface, index, propCount, props, count, out length, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramResourceiv(uint program, ProgramInterface programInterface, uint index, int propCount, ProgramResourceProperty[] props, int count, out int length, int[] @params) => _GetProgramResourceiv(program, programInterface, index, propCount, props, count, out length, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramResourceiv(uint program, ProgramInterface programInterface, uint index, int propCount, void* props, int count, out int length, void* @params) => _GetProgramResourceiv_ptr(program, programInterface, index, propCount, props, count, out length, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramResourceiv(uint program, ProgramInterface programInterface, uint index, int propCount, IntPtr props, int count, out int length, IntPtr @params) => _GetProgramResourceiv_intptr(program, programInterface, index, propCount, props, count, out length, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramStageiv(uint program, ShaderType shadertype, ProgramStagePName pname, out int values) => _GetProgramStageiv(program, shadertype, pname, out values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramStringARB(ProgramTarget target, ProgramStringProperty pname, IntPtr @string) => _GetProgramStringARB(target, pname, @string); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramStringNV(uint id, VertexAttribEnumNV pname, byte[] program) => _GetProgramStringNV(id, pname, program); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramStringNV(uint id, VertexAttribEnumNV pname, void* program) => _GetProgramStringNV_ptr(id, pname, program); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramStringNV(uint id, VertexAttribEnumNV pname, IntPtr program) => _GetProgramStringNV_intptr(id, pname, program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramSubroutineParameteruivNV(int target, uint index, uint[] param) => _GetProgramSubroutineParameteruivNV(target, index, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramSubroutineParameteruivNV(int target, uint index, void* param) => _GetProgramSubroutineParameteruivNV_ptr(target, index, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramSubroutineParameteruivNV(int target, uint index, IntPtr param) => _GetProgramSubroutineParameteruivNV_intptr(target, index, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramiv(uint program, ProgramPropertyARB pname, int[] @params) => _GetProgramiv(program, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramiv(uint program, ProgramPropertyARB pname, void* @params) => _GetProgramiv_ptr(program, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramiv(uint program, ProgramPropertyARB pname, IntPtr @params) => _GetProgramiv_intptr(program, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramivARB(ProgramTarget target, ProgramPropertyARB pname, out int @params) => _GetProgramivARB(target, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramivNV(uint id, VertexAttribEnumNV pname, int[] @params) => _GetProgramivNV(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramivNV(uint id, VertexAttribEnumNV pname, void* @params) => _GetProgramivNV_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetProgramivNV(uint id, VertexAttribEnumNV pname, IntPtr @params) => _GetProgramivNV_intptr(id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryBufferObjecti64v(uint id, uint buffer, QueryObjectParameterName pname, IntPtr offset) => _GetQueryBufferObjecti64v(id, buffer, pname, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryBufferObjectiv(uint id, uint buffer, QueryObjectParameterName pname, IntPtr offset) => _GetQueryBufferObjectiv(id, buffer, pname, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryBufferObjectui64v(uint id, uint buffer, QueryObjectParameterName pname, IntPtr offset) => _GetQueryBufferObjectui64v(id, buffer, pname, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryBufferObjectuiv(uint id, uint buffer, QueryObjectParameterName pname, IntPtr offset) => _GetQueryBufferObjectuiv(id, buffer, pname, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryIndexediv(QueryTarget target, uint index, QueryParameterName pname, int[] @params) => _GetQueryIndexediv(target, index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryIndexediv(QueryTarget target, uint index, QueryParameterName pname, void* @params) => _GetQueryIndexediv_ptr(target, index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryIndexediv(QueryTarget target, uint index, QueryParameterName pname, IntPtr @params) => _GetQueryIndexediv_intptr(target, index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjecti64v(uint id, QueryObjectParameterName pname, Int64[] @params) => _GetQueryObjecti64v(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjecti64v(uint id, QueryObjectParameterName pname, void* @params) => _GetQueryObjecti64v_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjecti64v(uint id, QueryObjectParameterName pname, IntPtr @params) => _GetQueryObjecti64v_intptr(id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjecti64vEXT(uint id, QueryObjectParameterName pname, Int64[] @params) => _GetQueryObjecti64vEXT(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjecti64vEXT(uint id, QueryObjectParameterName pname, void* @params) => _GetQueryObjecti64vEXT_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjecti64vEXT(uint id, QueryObjectParameterName pname, IntPtr @params) => _GetQueryObjecti64vEXT_intptr(id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectiv(uint id, QueryObjectParameterName pname, int[] @params) => _GetQueryObjectiv(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectiv(uint id, QueryObjectParameterName pname, void* @params) => _GetQueryObjectiv_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectiv(uint id, QueryObjectParameterName pname, IntPtr @params) => _GetQueryObjectiv_intptr(id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectivARB(uint id, QueryObjectParameterName pname, int[] @params) => _GetQueryObjectivARB(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectivARB(uint id, QueryObjectParameterName pname, void* @params) => _GetQueryObjectivARB_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectivARB(uint id, QueryObjectParameterName pname, IntPtr @params) => _GetQueryObjectivARB_intptr(id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectivEXT(uint id, QueryObjectParameterName pname, int[] @params) => _GetQueryObjectivEXT(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectivEXT(uint id, QueryObjectParameterName pname, void* @params) => _GetQueryObjectivEXT_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectivEXT(uint id, QueryObjectParameterName pname, IntPtr @params) => _GetQueryObjectivEXT_intptr(id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectui64v(uint id, QueryObjectParameterName pname, UInt64[] @params) => _GetQueryObjectui64v(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectui64v(uint id, QueryObjectParameterName pname, void* @params) => _GetQueryObjectui64v_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectui64v(uint id, QueryObjectParameterName pname, IntPtr @params) => _GetQueryObjectui64v_intptr(id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectui64vEXT(uint id, QueryObjectParameterName pname, UInt64[] @params) => _GetQueryObjectui64vEXT(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectui64vEXT(uint id, QueryObjectParameterName pname, void* @params) => _GetQueryObjectui64vEXT_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectui64vEXT(uint id, QueryObjectParameterName pname, IntPtr @params) => _GetQueryObjectui64vEXT_intptr(id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectuiv(uint id, QueryObjectParameterName pname, uint[] @params) => _GetQueryObjectuiv(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectuiv(uint id, QueryObjectParameterName pname, void* @params) => _GetQueryObjectuiv_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectuiv(uint id, QueryObjectParameterName pname, IntPtr @params) => _GetQueryObjectuiv_intptr(id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectuivARB(uint id, QueryObjectParameterName pname, uint[] @params) => _GetQueryObjectuivARB(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectuivARB(uint id, QueryObjectParameterName pname, void* @params) => _GetQueryObjectuivARB_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectuivARB(uint id, QueryObjectParameterName pname, IntPtr @params) => _GetQueryObjectuivARB_intptr(id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectuivEXT(uint id, QueryObjectParameterName pname, uint[] @params) => _GetQueryObjectuivEXT(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectuivEXT(uint id, QueryObjectParameterName pname, void* @params) => _GetQueryObjectuivEXT_ptr(id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryObjectuivEXT(uint id, QueryObjectParameterName pname, IntPtr @params) => _GetQueryObjectuivEXT_intptr(id, pname, @params); + + // --- + + /// + /// glGetQueryiv returns in params a selected parameter of the query object target specified by target. + /// pname names a specific query object target parameter. When pname is GL_CURRENT_QUERY, the name of the currently active query for target, or zero if no query is active, will be placed in params. If pname is GL_QUERY_COUNTER_BITS, the implementation-dependent number of bits used to hold the result of queries for target is returned in params. + /// + /// Specifies a query object target. Must be GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED_CONSERVATIVEGL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, GL_TIME_ELAPSED, or GL_TIMESTAMP. + /// Specifies the symbolic name of a query object target parameter. Accepted values are GL_CURRENT_QUERY or GL_QUERY_COUNTER_BITS. + /// Returns the requested data. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryiv(QueryTarget target, QueryParameterName pname, int[] @params) => _GetQueryiv(target, pname, @params); + + /// + /// glGetQueryiv returns in params a selected parameter of the query object target specified by target. + /// pname names a specific query object target parameter. When pname is GL_CURRENT_QUERY, the name of the currently active query for target, or zero if no query is active, will be placed in params. If pname is GL_QUERY_COUNTER_BITS, the implementation-dependent number of bits used to hold the result of queries for target is returned in params. + /// + /// Specifies a query object target. Must be GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED_CONSERVATIVEGL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, GL_TIME_ELAPSED, or GL_TIMESTAMP. + /// Specifies the symbolic name of a query object target parameter. Accepted values are GL_CURRENT_QUERY or GL_QUERY_COUNTER_BITS. + /// Returns the requested data. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryiv(QueryTarget target, QueryParameterName pname, void* @params) => _GetQueryiv_ptr(target, pname, @params); + + /// + /// glGetQueryiv returns in params a selected parameter of the query object target specified by target. + /// pname names a specific query object target parameter. When pname is GL_CURRENT_QUERY, the name of the currently active query for target, or zero if no query is active, will be placed in params. If pname is GL_QUERY_COUNTER_BITS, the implementation-dependent number of bits used to hold the result of queries for target is returned in params. + /// + /// Specifies a query object target. Must be GL_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED, GL_ANY_SAMPLES_PASSED_CONSERVATIVEGL_PRIMITIVES_GENERATED, GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN, GL_TIME_ELAPSED, or GL_TIMESTAMP. + /// Specifies the symbolic name of a query object target parameter. Accepted values are GL_CURRENT_QUERY or GL_QUERY_COUNTER_BITS. + /// Returns the requested data. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryiv(QueryTarget target, QueryParameterName pname, IntPtr @params) => _GetQueryiv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryivARB(QueryTarget target, QueryParameterName pname, int[] @params) => _GetQueryivARB(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryivARB(QueryTarget target, QueryParameterName pname, void* @params) => _GetQueryivARB_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryivARB(QueryTarget target, QueryParameterName pname, IntPtr @params) => _GetQueryivARB_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryivEXT(QueryTarget target, QueryParameterName pname, int[] @params) => _GetQueryivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryivEXT(QueryTarget target, QueryParameterName pname, void* @params) => _GetQueryivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetQueryivEXT(QueryTarget target, QueryParameterName pname, IntPtr @params) => _GetQueryivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetRenderbufferParameteriv(RenderbufferTarget target, RenderbufferParameterName pname, int[] @params) => _GetRenderbufferParameteriv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetRenderbufferParameteriv(RenderbufferTarget target, RenderbufferParameterName pname, void* @params) => _GetRenderbufferParameteriv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetRenderbufferParameteriv(RenderbufferTarget target, RenderbufferParameterName pname, IntPtr @params) => _GetRenderbufferParameteriv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetRenderbufferParameterivEXT(RenderbufferTarget target, RenderbufferParameterName pname, int[] @params) => _GetRenderbufferParameterivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetRenderbufferParameterivEXT(RenderbufferTarget target, RenderbufferParameterName pname, void* @params) => _GetRenderbufferParameterivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetRenderbufferParameterivEXT(RenderbufferTarget target, RenderbufferParameterName pname, IntPtr @params) => _GetRenderbufferParameterivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetRenderbufferParameterivOES(RenderbufferTarget target, RenderbufferParameterName pname, int[] @params) => _GetRenderbufferParameterivOES(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetRenderbufferParameterivOES(RenderbufferTarget target, RenderbufferParameterName pname, void* @params) => _GetRenderbufferParameterivOES_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetRenderbufferParameterivOES(RenderbufferTarget target, RenderbufferParameterName pname, IntPtr @params) => _GetRenderbufferParameterivOES_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIiv(uint sampler, SamplerParameterI pname, int[] @params) => _GetSamplerParameterIiv(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIiv(uint sampler, SamplerParameterI pname, void* @params) => _GetSamplerParameterIiv_ptr(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIiv(uint sampler, SamplerParameterI pname, IntPtr @params) => _GetSamplerParameterIiv_intptr(sampler, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIivEXT(uint sampler, SamplerParameterI pname, int[] @params) => _GetSamplerParameterIivEXT(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIivEXT(uint sampler, SamplerParameterI pname, void* @params) => _GetSamplerParameterIivEXT_ptr(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIivEXT(uint sampler, SamplerParameterI pname, IntPtr @params) => _GetSamplerParameterIivEXT_intptr(sampler, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIivOES(uint sampler, SamplerParameterI pname, int[] @params) => _GetSamplerParameterIivOES(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIivOES(uint sampler, SamplerParameterI pname, void* @params) => _GetSamplerParameterIivOES_ptr(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIivOES(uint sampler, SamplerParameterI pname, IntPtr @params) => _GetSamplerParameterIivOES_intptr(sampler, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIuiv(uint sampler, SamplerParameterI pname, uint[] @params) => _GetSamplerParameterIuiv(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIuiv(uint sampler, SamplerParameterI pname, void* @params) => _GetSamplerParameterIuiv_ptr(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIuiv(uint sampler, SamplerParameterI pname, IntPtr @params) => _GetSamplerParameterIuiv_intptr(sampler, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIuivEXT(uint sampler, SamplerParameterI pname, uint[] @params) => _GetSamplerParameterIuivEXT(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIuivEXT(uint sampler, SamplerParameterI pname, void* @params) => _GetSamplerParameterIuivEXT_ptr(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIuivEXT(uint sampler, SamplerParameterI pname, IntPtr @params) => _GetSamplerParameterIuivEXT_intptr(sampler, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIuivOES(uint sampler, SamplerParameterI pname, uint[] @params) => _GetSamplerParameterIuivOES(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIuivOES(uint sampler, SamplerParameterI pname, void* @params) => _GetSamplerParameterIuivOES_ptr(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterIuivOES(uint sampler, SamplerParameterI pname, IntPtr @params) => _GetSamplerParameterIuivOES_intptr(sampler, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterfv(uint sampler, SamplerParameterF pname, float[] @params) => _GetSamplerParameterfv(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterfv(uint sampler, SamplerParameterF pname, void* @params) => _GetSamplerParameterfv_ptr(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameterfv(uint sampler, SamplerParameterF pname, IntPtr @params) => _GetSamplerParameterfv_intptr(sampler, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameteriv(uint sampler, SamplerParameterI pname, int[] @params) => _GetSamplerParameteriv(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameteriv(uint sampler, SamplerParameterI pname, void* @params) => _GetSamplerParameteriv_ptr(sampler, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSamplerParameteriv(uint sampler, SamplerParameterI pname, IntPtr @params) => _GetSamplerParameteriv_intptr(sampler, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSemaphoreParameterui64vEXT(uint semaphore, SemaphoreParameterName pname, UInt64[] @params) => _GetSemaphoreParameterui64vEXT(semaphore, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSemaphoreParameterui64vEXT(uint semaphore, SemaphoreParameterName pname, void* @params) => _GetSemaphoreParameterui64vEXT_ptr(semaphore, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSemaphoreParameterui64vEXT(uint semaphore, SemaphoreParameterName pname, IntPtr @params) => _GetSemaphoreParameterui64vEXT_intptr(semaphore, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSeparableFilter(SeparableTargetEXT target, PixelFormat format, PixelType type, IntPtr row, IntPtr column, IntPtr span) => _GetSeparableFilter(target, format, type, row, column, span); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSeparableFilterEXT(SeparableTargetEXT target, PixelFormat format, PixelType type, IntPtr row, IntPtr column, IntPtr span) => _GetSeparableFilterEXT(target, format, type, row, column, span); + + // --- + + /// + /// glGetShaderInfoLog returns the information log for the specified shader object. The information log for a shader object is modified when the shader is compiled. The string that is returned will be null terminated. + /// glGetShaderInfoLog returns in infoLog as much of the information log as it can, up to a maximum of maxLength characters. The number of characters actually returned, excluding the null termination character, is specified by length. If the length of the returned string is not required, a value of NULL can be passed in the length argument. The size of the buffer required to store the returned information log can be obtained by calling glGetShader with the value GL_INFO_LOG_LENGTH. + /// The information log for a shader object is a string that may contain diagnostic messages, warning messages, and other information about the last compile operation. When a shader object is created, its information log will be a string of length 0. + /// + /// Specifies the shader object whose information log is to be queried. + /// Specifies the size of the character buffer for storing the returned information log. + /// Returns the length of the string returned in infoLog (excluding the null terminator). + /// Specifies an array of characters that is used to return the information log. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderInfoLog(uint shader, int bufSize, out int length, string infoLog) => _GetShaderInfoLog(shader, bufSize, out length, infoLog); + + /// + /// glGetShaderInfoLog returns the information log for the specified shader object. The information log for a shader object is modified when the shader is compiled. The string that is returned will be null terminated. + /// glGetShaderInfoLog returns in infoLog as much of the information log as it can, up to a maximum of maxLength characters. The number of characters actually returned, excluding the null termination character, is specified by length. If the length of the returned string is not required, a value of NULL can be passed in the length argument. The size of the buffer required to store the returned information log can be obtained by calling glGetShader with the value GL_INFO_LOG_LENGTH. + /// The information log for a shader object is a string that may contain diagnostic messages, warning messages, and other information about the last compile operation. When a shader object is created, its information log will be a string of length 0. + /// + /// Specifies the shader object whose information log is to be queried. + /// Specifies the size of the character buffer for storing the returned information log. + /// Returns the length of the string returned in infoLog (excluding the null terminator). + /// Specifies an array of characters that is used to return the information log. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderInfoLog(uint shader, int bufSize, out int length, void* infoLog) => _GetShaderInfoLog_ptr(shader, bufSize, out length, infoLog); + + /// + /// glGetShaderInfoLog returns the information log for the specified shader object. The information log for a shader object is modified when the shader is compiled. The string that is returned will be null terminated. + /// glGetShaderInfoLog returns in infoLog as much of the information log as it can, up to a maximum of maxLength characters. The number of characters actually returned, excluding the null termination character, is specified by length. If the length of the returned string is not required, a value of NULL can be passed in the length argument. The size of the buffer required to store the returned information log can be obtained by calling glGetShader with the value GL_INFO_LOG_LENGTH. + /// The information log for a shader object is a string that may contain diagnostic messages, warning messages, and other information about the last compile operation. When a shader object is created, its information log will be a string of length 0. + /// + /// Specifies the shader object whose information log is to be queried. + /// Specifies the size of the character buffer for storing the returned information log. + /// Returns the length of the string returned in infoLog (excluding the null terminator). + /// Specifies an array of characters that is used to return the information log. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderInfoLog(uint shader, int bufSize, out int length, IntPtr infoLog) => _GetShaderInfoLog_intptr(shader, bufSize, out length, infoLog); + + // --- + + /// + /// glGetShaderPrecisionFormat retrieves the numeric range and precision for the implementation's representation of quantities in different numeric formats in specified shader type. shaderType specifies the type of shader for which the numeric precision and range is to be retrieved and must be one of GL_VERTEX_SHADER or GL_FRAGMENT_SHADER. precisionType specifies the numeric format to query and must be one of GL_LOW_FLOAT, GL_MEDIUM_FLOATGL_HIGH_FLOAT, GL_LOW_INT, GL_MEDIUM_INT, or GL_HIGH_INT. + /// range points to an array of two integers into which the format's numeric range will be returned. If min and max are the smallest values representable in the format, then the values returned are defined to be: range[0] = floor(log2(|min|)) and range[1] = floor(log2(|max|)). + /// precision specifies the address of an integer into which will be written the log2 value of the number of bits of precision of the format. If the smallest representable value greater than 1 is 1 + eps, then the integer addressed by precision will contain floor(-log2(eps)). + /// + /// Specifies the type of shader whose precision to query. shaderType must be GL_VERTEX_SHADER or GL_FRAGMENT_SHADER. + /// Specifies the numeric format whose precision and range to query. + /// Specifies the address of array of two integers into which encodings of the implementation's numeric range are returned. + /// Specifies the address of an integer into which the numeric precision of the implementation is written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderPrecisionFormat(ShaderType shadertype, PrecisionType precisiontype, int[] range, out int precision) => _GetShaderPrecisionFormat(shadertype, precisiontype, range, out precision); + + /// + /// glGetShaderPrecisionFormat retrieves the numeric range and precision for the implementation's representation of quantities in different numeric formats in specified shader type. shaderType specifies the type of shader for which the numeric precision and range is to be retrieved and must be one of GL_VERTEX_SHADER or GL_FRAGMENT_SHADER. precisionType specifies the numeric format to query and must be one of GL_LOW_FLOAT, GL_MEDIUM_FLOATGL_HIGH_FLOAT, GL_LOW_INT, GL_MEDIUM_INT, or GL_HIGH_INT. + /// range points to an array of two integers into which the format's numeric range will be returned. If min and max are the smallest values representable in the format, then the values returned are defined to be: range[0] = floor(log2(|min|)) and range[1] = floor(log2(|max|)). + /// precision specifies the address of an integer into which will be written the log2 value of the number of bits of precision of the format. If the smallest representable value greater than 1 is 1 + eps, then the integer addressed by precision will contain floor(-log2(eps)). + /// + /// Specifies the type of shader whose precision to query. shaderType must be GL_VERTEX_SHADER or GL_FRAGMENT_SHADER. + /// Specifies the numeric format whose precision and range to query. + /// Specifies the address of array of two integers into which encodings of the implementation's numeric range are returned. + /// Specifies the address of an integer into which the numeric precision of the implementation is written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderPrecisionFormat(ShaderType shadertype, PrecisionType precisiontype, void* range, out int precision) => _GetShaderPrecisionFormat_ptr(shadertype, precisiontype, range, out precision); + + /// + /// glGetShaderPrecisionFormat retrieves the numeric range and precision for the implementation's representation of quantities in different numeric formats in specified shader type. shaderType specifies the type of shader for which the numeric precision and range is to be retrieved and must be one of GL_VERTEX_SHADER or GL_FRAGMENT_SHADER. precisionType specifies the numeric format to query and must be one of GL_LOW_FLOAT, GL_MEDIUM_FLOATGL_HIGH_FLOAT, GL_LOW_INT, GL_MEDIUM_INT, or GL_HIGH_INT. + /// range points to an array of two integers into which the format's numeric range will be returned. If min and max are the smallest values representable in the format, then the values returned are defined to be: range[0] = floor(log2(|min|)) and range[1] = floor(log2(|max|)). + /// precision specifies the address of an integer into which will be written the log2 value of the number of bits of precision of the format. If the smallest representable value greater than 1 is 1 + eps, then the integer addressed by precision will contain floor(-log2(eps)). + /// + /// Specifies the type of shader whose precision to query. shaderType must be GL_VERTEX_SHADER or GL_FRAGMENT_SHADER. + /// Specifies the numeric format whose precision and range to query. + /// Specifies the address of array of two integers into which encodings of the implementation's numeric range are returned. + /// Specifies the address of an integer into which the numeric precision of the implementation is written. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderPrecisionFormat(ShaderType shadertype, PrecisionType precisiontype, IntPtr range, out int precision) => _GetShaderPrecisionFormat_intptr(shadertype, precisiontype, range, out precision); + + // --- + + /// + /// glGetShaderSource returns the concatenation of the source code strings from the shader object specified by shader. The source code strings for a shader object are the result of a previous call to glShaderSource. The string returned by the function will be null terminated. + /// glGetShaderSource returns in source as much of the source code string as it can, up to a maximum of bufSize characters. The number of characters actually returned, excluding the null termination character, is specified by length. If the length of the returned string is not required, a value of NULL can be passed in the length argument. The size of the buffer required to store the returned source code string can be obtained by calling glGetShader with the value GL_SHADER_SOURCE_LENGTH. + /// + /// Specifies the shader object to be queried. + /// Specifies the size of the character buffer for storing the returned source code string. + /// Returns the length of the string returned in source (excluding the null terminator). + /// Specifies an array of characters that is used to return the source code string. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderSource(uint shader, int bufSize, out int length, string source) => _GetShaderSource(shader, bufSize, out length, source); + + /// + /// glGetShaderSource returns the concatenation of the source code strings from the shader object specified by shader. The source code strings for a shader object are the result of a previous call to glShaderSource. The string returned by the function will be null terminated. + /// glGetShaderSource returns in source as much of the source code string as it can, up to a maximum of bufSize characters. The number of characters actually returned, excluding the null termination character, is specified by length. If the length of the returned string is not required, a value of NULL can be passed in the length argument. The size of the buffer required to store the returned source code string can be obtained by calling glGetShader with the value GL_SHADER_SOURCE_LENGTH. + /// + /// Specifies the shader object to be queried. + /// Specifies the size of the character buffer for storing the returned source code string. + /// Returns the length of the string returned in source (excluding the null terminator). + /// Specifies an array of characters that is used to return the source code string. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderSource(uint shader, int bufSize, out int length, void* source) => _GetShaderSource_ptr(shader, bufSize, out length, source); + + /// + /// glGetShaderSource returns the concatenation of the source code strings from the shader object specified by shader. The source code strings for a shader object are the result of a previous call to glShaderSource. The string returned by the function will be null terminated. + /// glGetShaderSource returns in source as much of the source code string as it can, up to a maximum of bufSize characters. The number of characters actually returned, excluding the null termination character, is specified by length. If the length of the returned string is not required, a value of NULL can be passed in the length argument. The size of the buffer required to store the returned source code string can be obtained by calling glGetShader with the value GL_SHADER_SOURCE_LENGTH. + /// + /// Specifies the shader object to be queried. + /// Specifies the size of the character buffer for storing the returned source code string. + /// Returns the length of the string returned in source (excluding the null terminator). + /// Specifies an array of characters that is used to return the source code string. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderSource(uint shader, int bufSize, out int length, IntPtr source) => _GetShaderSource_intptr(shader, bufSize, out length, source); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderSourceARB(int obj, int maxLength, out int length, string source) => _GetShaderSourceARB(obj, maxLength, out length, source); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderSourceARB(int obj, int maxLength, out int length, void* source) => _GetShaderSourceARB_ptr(obj, maxLength, out length, source); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderSourceARB(int obj, int maxLength, out int length, IntPtr source) => _GetShaderSourceARB_intptr(obj, maxLength, out length, source); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderiv(uint shader, ShaderParameterName pname, int[] @params) => _GetShaderiv(shader, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderiv(uint shader, ShaderParameterName pname, void* @params) => _GetShaderiv_ptr(shader, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShaderiv(uint shader, ShaderParameterName pname, IntPtr @params) => _GetShaderiv_intptr(shader, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShadingRateImagePaletteNV(uint viewport, uint entry, out int rate) => _GetShadingRateImagePaletteNV(viewport, entry, out rate); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShadingRateSampleLocationivNV(int rate, uint samples, uint index, int[] location) => _GetShadingRateSampleLocationivNV(rate, samples, index, location); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShadingRateSampleLocationivNV(int rate, uint samples, uint index, void* location) => _GetShadingRateSampleLocationivNV_ptr(rate, samples, index, location); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetShadingRateSampleLocationivNV(int rate, uint samples, uint index, IntPtr location) => _GetShadingRateSampleLocationivNV_intptr(rate, samples, index, location); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSharpenTexFuncSGIS(TextureTarget target, float[] points) => _GetSharpenTexFuncSGIS(target, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSharpenTexFuncSGIS(TextureTarget target, void* points) => _GetSharpenTexFuncSGIS_ptr(target, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSharpenTexFuncSGIS(TextureTarget target, IntPtr points) => _GetSharpenTexFuncSGIS_intptr(target, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public ushort GetStageIndexNV(ShaderType shadertype) => _GetStageIndexNV(shadertype); + + // --- + + /// + /// glGetString returns a pointer to a static string describing some aspect of the current GL connection. name can be one of the following: + /// GL_VENDOR Returns the company responsible for this GL implementation. This name does not change from release to release. GL_RENDERER Returns the name of the renderer. This name is typically specific to a particular configuration of a hardware platform. It does not change from release to release. GL_VERSION Returns a version or release number. GL_SHADING_LANGUAGE_VERSION Returns a version or release number for the shading language. + /// glGetStringi returns a pointer to a static string indexed by index. name can be one of the following: + /// GL_EXTENSIONS For glGetStringi only, returns the extension string supported by the implementation at index. + /// Strings GL_VENDOR and GL_RENDERER together uniquely specify a platform. They do not change from release to release and should be used by platform-recognition algorithms. + /// The GL_VERSION and GL_SHADING_LANGUAGE_VERSION strings begin with a version number. The version number uses one of these forms: + /// major_number.minor_numbermajor_number.minor_number.release_number + /// Vendor-specific information may follow the version number. Its format depends on the implementation, but a space always separates the version number and the vendor-specific information. + /// All strings are null-terminated. + /// + /// Specifies a symbolic constant, one of GL_VENDOR, GL_RENDERER, GL_VERSION, or GL_SHADING_LANGUAGE_VERSION. Additionally, glGetStringi accepts the GL_EXTENSIONS token. + /// For glGetStringi, specifies the index of the string to return. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public string GetString(StringName name) + { + var ptr = _GetString(name); + if (ptr != IntPtr.Zero) + return Marshal.PtrToStringAnsi(ptr); + + return null; + } + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public IntPtr GetStringi(StringName name, uint index) => _GetStringi(name, index); + + // --- + + /// + /// glGetSubroutineIndex returns the index of a subroutine uniform within a shader stage attached to a program object. program contains the name of the program to which the shader is attached. shadertype specifies the stage from which to query shader subroutine index. name contains the null-terminated name of the subroutine uniform whose name to query. + /// If name is not the name of a subroutine uniform in the shader stage, GL_INVALID_INDEX is returned, but no error is generated. If name is the name of a subroutine uniform in the shader stage, a value between zero and the value of GL_ACTIVE_SUBROUTINES minus one will be returned. Subroutine indices are assigned using consecutive integers in the range from zero to the value of GL_ACTIVE_SUBROUTINES minus one for the shader stage. + /// + /// Specifies the name of the program containing shader stage. + /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or GL_FRAGMENT_SHADER. + /// Specifies the name of the subroutine uniform whose index to query. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetSubroutineIndex(uint program, ShaderType shadertype, string name) => _GetSubroutineIndex(program, shadertype, name); + + /// + /// glGetSubroutineIndex returns the index of a subroutine uniform within a shader stage attached to a program object. program contains the name of the program to which the shader is attached. shadertype specifies the stage from which to query shader subroutine index. name contains the null-terminated name of the subroutine uniform whose name to query. + /// If name is not the name of a subroutine uniform in the shader stage, GL_INVALID_INDEX is returned, but no error is generated. If name is the name of a subroutine uniform in the shader stage, a value between zero and the value of GL_ACTIVE_SUBROUTINES minus one will be returned. Subroutine indices are assigned using consecutive integers in the range from zero to the value of GL_ACTIVE_SUBROUTINES minus one for the shader stage. + /// + /// Specifies the name of the program containing shader stage. + /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or GL_FRAGMENT_SHADER. + /// Specifies the name of the subroutine uniform whose index to query. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetSubroutineIndex(uint program, ShaderType shadertype, void* name) => _GetSubroutineIndex_ptr(program, shadertype, name); + + /// + /// glGetSubroutineIndex returns the index of a subroutine uniform within a shader stage attached to a program object. program contains the name of the program to which the shader is attached. shadertype specifies the stage from which to query shader subroutine index. name contains the null-terminated name of the subroutine uniform whose name to query. + /// If name is not the name of a subroutine uniform in the shader stage, GL_INVALID_INDEX is returned, but no error is generated. If name is the name of a subroutine uniform in the shader stage, a value between zero and the value of GL_ACTIVE_SUBROUTINES minus one will be returned. Subroutine indices are assigned using consecutive integers in the range from zero to the value of GL_ACTIVE_SUBROUTINES minus one for the shader stage. + /// + /// Specifies the name of the program containing shader stage. + /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or GL_FRAGMENT_SHADER. + /// Specifies the name of the subroutine uniform whose index to query. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetSubroutineIndex(uint program, ShaderType shadertype, IntPtr name) => _GetSubroutineIndex_intptr(program, shadertype, name); + + // --- + + /// + /// glGetSubroutineUniformLocation returns the location of the subroutine uniform variable name in the shader stage of type shadertype attached to program, with behavior otherwise identical to glGetUniformLocation. + /// If name is not the name of a subroutine uniform in the shader stage, -1 is returned, but no error is generated. If name is the name of a subroutine uniform in the shader stage, a value between zero and the value of GL_ACTIVE_SUBROUTINE_LOCATIONS minus one will be returned. Subroutine locations are assigned using consecutive integers in the range from zero to the value of GL_ACTIVE_SUBROUTINE_LOCATIONS minus one for the shader stage. For active subroutine uniforms declared as arrays, the declared array elements are assigned consecutive locations. + /// + /// Specifies the name of the program containing shader stage. + /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or GL_FRAGMENT_SHADER. + /// Specifies the name of the subroutine uniform whose index to query. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetSubroutineUniformLocation(uint program, ShaderType shadertype, string name) => _GetSubroutineUniformLocation(program, shadertype, name); + + /// + /// glGetSubroutineUniformLocation returns the location of the subroutine uniform variable name in the shader stage of type shadertype attached to program, with behavior otherwise identical to glGetUniformLocation. + /// If name is not the name of a subroutine uniform in the shader stage, -1 is returned, but no error is generated. If name is the name of a subroutine uniform in the shader stage, a value between zero and the value of GL_ACTIVE_SUBROUTINE_LOCATIONS minus one will be returned. Subroutine locations are assigned using consecutive integers in the range from zero to the value of GL_ACTIVE_SUBROUTINE_LOCATIONS minus one for the shader stage. For active subroutine uniforms declared as arrays, the declared array elements are assigned consecutive locations. + /// + /// Specifies the name of the program containing shader stage. + /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or GL_FRAGMENT_SHADER. + /// Specifies the name of the subroutine uniform whose index to query. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetSubroutineUniformLocation(uint program, ShaderType shadertype, void* name) => _GetSubroutineUniformLocation_ptr(program, shadertype, name); + + /// + /// glGetSubroutineUniformLocation returns the location of the subroutine uniform variable name in the shader stage of type shadertype attached to program, with behavior otherwise identical to glGetUniformLocation. + /// If name is not the name of a subroutine uniform in the shader stage, -1 is returned, but no error is generated. If name is the name of a subroutine uniform in the shader stage, a value between zero and the value of GL_ACTIVE_SUBROUTINE_LOCATIONS minus one will be returned. Subroutine locations are assigned using consecutive integers in the range from zero to the value of GL_ACTIVE_SUBROUTINE_LOCATIONS minus one for the shader stage. For active subroutine uniforms declared as arrays, the declared array elements are assigned consecutive locations. + /// + /// Specifies the name of the program containing shader stage. + /// Specifies the shader stage from which to query for subroutine uniform index. shadertype must be one of GL_VERTEX_SHADER, GL_TESS_CONTROL_SHADER, GL_TESS_EVALUATION_SHADER, GL_GEOMETRY_SHADER or GL_FRAGMENT_SHADER. + /// Specifies the name of the subroutine uniform whose index to query. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetSubroutineUniformLocation(uint program, ShaderType shadertype, IntPtr name) => _GetSubroutineUniformLocation_intptr(program, shadertype, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSynciv(int sync, SyncParameterName pname, int count, out int length, int[] values) => _GetSynciv(sync, pname, count, out length, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSynciv(int sync, SyncParameterName pname, int count, out int length, void* values) => _GetSynciv_ptr(sync, pname, count, out length, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSynciv(int sync, SyncParameterName pname, int count, out int length, IntPtr values) => _GetSynciv_intptr(sync, pname, count, out length, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSyncivAPPLE(int sync, SyncParameterName pname, int count, int[] length, int[] values) => _GetSyncivAPPLE(sync, pname, count, length, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSyncivAPPLE(int sync, SyncParameterName pname, int count, void* length, void* values) => _GetSyncivAPPLE_ptr(sync, pname, count, length, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetSyncivAPPLE(int sync, SyncParameterName pname, int count, IntPtr length, IntPtr values) => _GetSyncivAPPLE_intptr(sync, pname, count, length, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexBumpParameterfvATI(GetTexBumpParameterATI pname, float[] param) => _GetTexBumpParameterfvATI(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexBumpParameterfvATI(GetTexBumpParameterATI pname, void* param) => _GetTexBumpParameterfvATI_ptr(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexBumpParameterfvATI(GetTexBumpParameterATI pname, IntPtr param) => _GetTexBumpParameterfvATI_intptr(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexBumpParameterivATI(GetTexBumpParameterATI pname, int[] param) => _GetTexBumpParameterivATI(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexBumpParameterivATI(GetTexBumpParameterATI pname, void* param) => _GetTexBumpParameterivATI_ptr(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexBumpParameterivATI(GetTexBumpParameterATI pname, IntPtr param) => _GetTexBumpParameterivATI_intptr(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexEnvfv(TextureEnvTarget target, TextureEnvParameter pname, float[] @params) => _GetTexEnvfv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexEnvfv(TextureEnvTarget target, TextureEnvParameter pname, void* @params) => _GetTexEnvfv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexEnvfv(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params) => _GetTexEnvfv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexEnviv(TextureEnvTarget target, TextureEnvParameter pname, int[] @params) => _GetTexEnviv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexEnviv(TextureEnvTarget target, TextureEnvParameter pname, void* @params) => _GetTexEnviv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexEnviv(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params) => _GetTexEnviv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexEnvxv(TextureEnvTarget target, TextureEnvParameter pname, float[] @params) => _GetTexEnvxv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexEnvxv(TextureEnvTarget target, TextureEnvParameter pname, void* @params) => _GetTexEnvxv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexEnvxv(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params) => _GetTexEnvxv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexEnvxvOES(TextureEnvTarget target, TextureEnvParameter pname, float[] @params) => _GetTexEnvxvOES(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexEnvxvOES(TextureEnvTarget target, TextureEnvParameter pname, void* @params) => _GetTexEnvxvOES_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexEnvxvOES(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params) => _GetTexEnvxvOES_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexFilterFuncSGIS(TextureTarget target, TextureFilterSGIS filter, float[] weights) => _GetTexFilterFuncSGIS(target, filter, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexFilterFuncSGIS(TextureTarget target, TextureFilterSGIS filter, void* weights) => _GetTexFilterFuncSGIS_ptr(target, filter, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexFilterFuncSGIS(TextureTarget target, TextureFilterSGIS filter, IntPtr weights) => _GetTexFilterFuncSGIS_intptr(target, filter, weights); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGendv(TextureCoordName coord, TextureGenParameter pname, double[] @params) => _GetTexGendv(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGendv(TextureCoordName coord, TextureGenParameter pname, void* @params) => _GetTexGendv_ptr(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGendv(TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _GetTexGendv_intptr(coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGenfv(TextureCoordName coord, TextureGenParameter pname, float[] @params) => _GetTexGenfv(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGenfv(TextureCoordName coord, TextureGenParameter pname, void* @params) => _GetTexGenfv_ptr(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGenfv(TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _GetTexGenfv_intptr(coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGenfvOES(TextureCoordName coord, TextureGenParameter pname, float[] @params) => _GetTexGenfvOES(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGenfvOES(TextureCoordName coord, TextureGenParameter pname, void* @params) => _GetTexGenfvOES_ptr(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGenfvOES(TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _GetTexGenfvOES_intptr(coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGeniv(TextureCoordName coord, TextureGenParameter pname, int[] @params) => _GetTexGeniv(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGeniv(TextureCoordName coord, TextureGenParameter pname, void* @params) => _GetTexGeniv_ptr(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGeniv(TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _GetTexGeniv_intptr(coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGenivOES(TextureCoordName coord, TextureGenParameter pname, int[] @params) => _GetTexGenivOES(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGenivOES(TextureCoordName coord, TextureGenParameter pname, void* @params) => _GetTexGenivOES_ptr(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGenivOES(TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _GetTexGenivOES_intptr(coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGenxvOES(TextureCoordName coord, TextureGenParameter pname, float[] @params) => _GetTexGenxvOES(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGenxvOES(TextureCoordName coord, TextureGenParameter pname, void* @params) => _GetTexGenxvOES_ptr(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexGenxvOES(TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _GetTexGenxvOES_intptr(coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexImage(TextureTarget target, int level, PixelFormat format, PixelType type, IntPtr pixels) => _GetTexImage(target, level, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexLevelParameterfv(TextureTarget target, int level, GetTextureParameter pname, float[] @params) => _GetTexLevelParameterfv(target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexLevelParameterfv(TextureTarget target, int level, GetTextureParameter pname, void* @params) => _GetTexLevelParameterfv_ptr(target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexLevelParameterfv(TextureTarget target, int level, GetTextureParameter pname, IntPtr @params) => _GetTexLevelParameterfv_intptr(target, level, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexLevelParameteriv(TextureTarget target, int level, GetTextureParameter pname, int[] @params) => _GetTexLevelParameteriv(target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexLevelParameteriv(TextureTarget target, int level, GetTextureParameter pname, void* @params) => _GetTexLevelParameteriv_ptr(target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexLevelParameteriv(TextureTarget target, int level, GetTextureParameter pname, IntPtr @params) => _GetTexLevelParameteriv_intptr(target, level, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexLevelParameterxvOES(TextureTarget target, int level, GetTextureParameter pname, float[] @params) => _GetTexLevelParameterxvOES(target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexLevelParameterxvOES(TextureTarget target, int level, GetTextureParameter pname, void* @params) => _GetTexLevelParameterxvOES_ptr(target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexLevelParameterxvOES(TextureTarget target, int level, GetTextureParameter pname, IntPtr @params) => _GetTexLevelParameterxvOES_intptr(target, level, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIiv(TextureTarget target, GetTextureParameter pname, int[] @params) => _GetTexParameterIiv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIiv(TextureTarget target, GetTextureParameter pname, void* @params) => _GetTexParameterIiv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIiv(TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTexParameterIiv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIivEXT(TextureTarget target, GetTextureParameter pname, int[] @params) => _GetTexParameterIivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIivEXT(TextureTarget target, GetTextureParameter pname, void* @params) => _GetTexParameterIivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIivEXT(TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTexParameterIivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIivOES(TextureTarget target, GetTextureParameter pname, int[] @params) => _GetTexParameterIivOES(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIivOES(TextureTarget target, GetTextureParameter pname, void* @params) => _GetTexParameterIivOES_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIivOES(TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTexParameterIivOES_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIuiv(TextureTarget target, GetTextureParameter pname, uint[] @params) => _GetTexParameterIuiv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIuiv(TextureTarget target, GetTextureParameter pname, void* @params) => _GetTexParameterIuiv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIuiv(TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTexParameterIuiv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIuivEXT(TextureTarget target, GetTextureParameter pname, uint[] @params) => _GetTexParameterIuivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIuivEXT(TextureTarget target, GetTextureParameter pname, void* @params) => _GetTexParameterIuivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIuivEXT(TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTexParameterIuivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIuivOES(TextureTarget target, GetTextureParameter pname, uint[] @params) => _GetTexParameterIuivOES(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIuivOES(TextureTarget target, GetTextureParameter pname, void* @params) => _GetTexParameterIuivOES_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterIuivOES(TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTexParameterIuivOES_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterPointervAPPLE(int target, int pname, IntPtr* @params) => _GetTexParameterPointervAPPLE(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterfv(TextureTarget target, GetTextureParameter pname, float[] @params) => _GetTexParameterfv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterfv(TextureTarget target, GetTextureParameter pname, void* @params) => _GetTexParameterfv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterfv(TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTexParameterfv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameteriv(TextureTarget target, GetTextureParameter pname, int[] @params) => _GetTexParameteriv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameteriv(TextureTarget target, GetTextureParameter pname, void* @params) => _GetTexParameteriv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameteriv(TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTexParameteriv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterxv(TextureTarget target, GetTextureParameter pname, float[] @params) => _GetTexParameterxv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterxv(TextureTarget target, GetTextureParameter pname, void* @params) => _GetTexParameterxv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterxv(TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTexParameterxv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterxvOES(TextureTarget target, GetTextureParameter pname, float[] @params) => _GetTexParameterxvOES(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterxvOES(TextureTarget target, GetTextureParameter pname, void* @params) => _GetTexParameterxvOES_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTexParameterxvOES(TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTexParameterxvOES_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public UInt64 GetTextureHandleARB(uint texture) => _GetTextureHandleARB(texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public UInt64 GetTextureHandleIMG(uint texture) => _GetTextureHandleIMG(texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public UInt64 GetTextureHandleNV(uint texture) => _GetTextureHandleNV(texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureImage(uint texture, int level, PixelFormat format, PixelType type, int bufSize, IntPtr pixels) => _GetTextureImage(texture, level, format, type, bufSize, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureImageEXT(uint texture, TextureTarget target, int level, PixelFormat format, PixelType type, IntPtr pixels) => _GetTextureImageEXT(texture, target, level, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureLevelParameterfv(uint texture, int level, GetTextureParameter pname, float[] @params) => _GetTextureLevelParameterfv(texture, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureLevelParameterfv(uint texture, int level, GetTextureParameter pname, void* @params) => _GetTextureLevelParameterfv_ptr(texture, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureLevelParameterfv(uint texture, int level, GetTextureParameter pname, IntPtr @params) => _GetTextureLevelParameterfv_intptr(texture, level, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureLevelParameterfvEXT(uint texture, TextureTarget target, int level, GetTextureParameter pname, float[] @params) => _GetTextureLevelParameterfvEXT(texture, target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureLevelParameterfvEXT(uint texture, TextureTarget target, int level, GetTextureParameter pname, void* @params) => _GetTextureLevelParameterfvEXT_ptr(texture, target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureLevelParameterfvEXT(uint texture, TextureTarget target, int level, GetTextureParameter pname, IntPtr @params) => _GetTextureLevelParameterfvEXT_intptr(texture, target, level, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureLevelParameteriv(uint texture, int level, GetTextureParameter pname, int[] @params) => _GetTextureLevelParameteriv(texture, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureLevelParameteriv(uint texture, int level, GetTextureParameter pname, void* @params) => _GetTextureLevelParameteriv_ptr(texture, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureLevelParameteriv(uint texture, int level, GetTextureParameter pname, IntPtr @params) => _GetTextureLevelParameteriv_intptr(texture, level, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureLevelParameterivEXT(uint texture, TextureTarget target, int level, GetTextureParameter pname, int[] @params) => _GetTextureLevelParameterivEXT(texture, target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureLevelParameterivEXT(uint texture, TextureTarget target, int level, GetTextureParameter pname, void* @params) => _GetTextureLevelParameterivEXT_ptr(texture, target, level, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureLevelParameterivEXT(uint texture, TextureTarget target, int level, GetTextureParameter pname, IntPtr @params) => _GetTextureLevelParameterivEXT_intptr(texture, target, level, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterIiv(uint texture, GetTextureParameter pname, int[] @params) => _GetTextureParameterIiv(texture, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterIiv(uint texture, GetTextureParameter pname, void* @params) => _GetTextureParameterIiv_ptr(texture, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterIiv(uint texture, GetTextureParameter pname, IntPtr @params) => _GetTextureParameterIiv_intptr(texture, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterIivEXT(uint texture, TextureTarget target, GetTextureParameter pname, int[] @params) => _GetTextureParameterIivEXT(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterIivEXT(uint texture, TextureTarget target, GetTextureParameter pname, void* @params) => _GetTextureParameterIivEXT_ptr(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterIivEXT(uint texture, TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTextureParameterIivEXT_intptr(texture, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterIuiv(uint texture, GetTextureParameter pname, uint[] @params) => _GetTextureParameterIuiv(texture, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterIuiv(uint texture, GetTextureParameter pname, void* @params) => _GetTextureParameterIuiv_ptr(texture, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterIuiv(uint texture, GetTextureParameter pname, IntPtr @params) => _GetTextureParameterIuiv_intptr(texture, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterIuivEXT(uint texture, TextureTarget target, GetTextureParameter pname, uint[] @params) => _GetTextureParameterIuivEXT(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterIuivEXT(uint texture, TextureTarget target, GetTextureParameter pname, void* @params) => _GetTextureParameterIuivEXT_ptr(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterIuivEXT(uint texture, TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTextureParameterIuivEXT_intptr(texture, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterfv(uint texture, GetTextureParameter pname, float[] @params) => _GetTextureParameterfv(texture, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterfv(uint texture, GetTextureParameter pname, void* @params) => _GetTextureParameterfv_ptr(texture, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterfv(uint texture, GetTextureParameter pname, IntPtr @params) => _GetTextureParameterfv_intptr(texture, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterfvEXT(uint texture, TextureTarget target, GetTextureParameter pname, float[] @params) => _GetTextureParameterfvEXT(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterfvEXT(uint texture, TextureTarget target, GetTextureParameter pname, void* @params) => _GetTextureParameterfvEXT_ptr(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterfvEXT(uint texture, TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTextureParameterfvEXT_intptr(texture, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameteriv(uint texture, GetTextureParameter pname, int[] @params) => _GetTextureParameteriv(texture, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameteriv(uint texture, GetTextureParameter pname, void* @params) => _GetTextureParameteriv_ptr(texture, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameteriv(uint texture, GetTextureParameter pname, IntPtr @params) => _GetTextureParameteriv_intptr(texture, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterivEXT(uint texture, TextureTarget target, GetTextureParameter pname, int[] @params) => _GetTextureParameterivEXT(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterivEXT(uint texture, TextureTarget target, GetTextureParameter pname, void* @params) => _GetTextureParameterivEXT_ptr(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureParameterivEXT(uint texture, TextureTarget target, GetTextureParameter pname, IntPtr @params) => _GetTextureParameterivEXT_intptr(texture, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public UInt64 GetTextureSamplerHandleARB(uint texture, uint sampler) => _GetTextureSamplerHandleARB(texture, sampler); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public UInt64 GetTextureSamplerHandleIMG(uint texture, uint sampler) => _GetTextureSamplerHandleIMG(texture, sampler); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public UInt64 GetTextureSamplerHandleNV(uint texture, uint sampler) => _GetTextureSamplerHandleNV(texture, sampler); + + // --- + + /// + /// glGetTextureSubImage returns a texture subimage into pixels. + /// texture is the name of the source texture object and must not be a buffer or multisample texture. The effective target parameter is the value of GL_TEXTURE_TARGET for texture. Level, format, type and pixels have the same meaning as for glGetTexImage. bufSize is the size of the buffer to receive the retrieved pixel data. + /// For cube map textures, the behavior is as though GetTextureImage were called, but only texels from the requested cube map faces (selected by zoffset and depth, as described below) were returned. + /// xoffset, yoffset and zoffset values indicate the position of the subregion to return. width, height and depth indicate the size of the region to return. These parameters have the same meaning as for glTexSubImage3D, though for one- and two-dimensional textures there are extra restrictions, described in the errors section below. + /// For one-dimensional array textures, yoffset is interpreted as the first layer to access and height is the number of layers to access. + /// For two-dimensional array textures, zoffset is interpreted as the first layer to access and depth is the number of layers to access. + /// Cube map textures are treated as an array of six slices in the z-dimension, where the value of zoffset is interpreted as specifying the cube map face for the corresponding layer (as presented in the table below) and depth is the number of faces to access: + /// Layer numberCube Map Face0GL_TEXTURE_CUBE_MAP_POSITIVE_X1GL_TEXTURE_CUBE_MAP_NEGATIVE_X2GL_TEXTURE_CUBE_MAP_POSITIVE_Y3GL_TEXTURE_CUBE_MAP_NEGATIVE_Y4GL_TEXTURE_CUBE_MAP_POSITIVE_Z5GL_TEXTURE_CUBE_MAP_NEGATIVE_Z + /// For cube map array textures, zoffset is the first layer-face to access, and depth is the number of layer-faces to access. A layer-face described by $k$ is translated into an array layer and face according to $$ layer = \left\lfloor { layer \over 6 } \right\rfloor$$ and $$ face = k \bmod 6. $$ + /// Component groups from the specified sub-region are packed and placed into memory as described for glGetTextureImage, starting with the texel at (xoffset, yoffset, zoffset). + /// + /// Specifies the name of the source texture object. Must be GL_TEXTURE_1D, GL_TEXTURE_1D_ARRAY, GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_3D, GL_TEXTURE_CUBE_MAP, GL_TEXTURE_CUBE_MAP_ARRAY or GL_TEXTURE_RECTANGLE. In specific, buffer and multisample textures are not permitted. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level $n$ is the $n$th mipmap reduction image. + /// Specifies a texel offset in the x direction within the texture array. + /// Specifies a texel offset in the y direction within the texture array. + /// Specifies a texel offset in the z direction within the texture array. + /// Specifies the width of the texture subimage. + /// Specifies the height of the texture subimage. + /// Specifies the depth of the texture subimage. + /// Specifies the format of the pixel data. The following symbolic values are accepted: GL_RED, GL_RG, GL_RGB, GL_BGR, GL_RGBA, GL_BGRA, GL_DEPTH_COMPONENT and GL_STENCIL_INDEX. + /// Specifies the data type of the pixel data. The following symbolic values are accepted: GL_UNSIGNED_BYTE, GL_BYTE, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT, GL_FLOAT, GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_5_6_5_REV, GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, and GL_UNSIGNED_INT_2_10_10_10_REV. + /// Specifies the size of the buffer to receive the retrieved pixel data. + /// Returns the texture subimage. Should be a pointer to an array of the type specified by type. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTextureSubImage(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, int bufSize, IntPtr pixels) => _GetTextureSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, bufSize, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTrackMatrixivNV(VertexAttribEnumNV target, uint address, VertexAttribEnumNV pname, out int @params) => _GetTrackMatrixivNV(target, address, pname, out @params); + + // --- + + /// + /// Information about the set of varying variables in a linked program that will be captured during transform feedback may be retrieved by calling glGetTransformFeedbackVarying. glGetTransformFeedbackVarying provides information about the varying variable selected by index. An index of 0 selects the first varying variable specified in the varyings array passed to glTransformFeedbackVaryings, and an index of the value of GL_TRANSFORM_FEEDBACK_VARYINGS minus one selects the last such variable. + /// The name of the selected varying is returned as a null-terminated string in name. The actual number of characters written into name, excluding the null terminator, is returned in length. If length is NULL, no length is returned. The maximum number of characters that may be written into name, including the null terminator, is specified by bufSize. + /// The length of the longest varying name in program is given by GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH, which can be queried with glGetProgram. + /// For the selected varying variable, its type is returned into type. The size of the varying is returned into size. The value in size is in units of the type returned in type. The type returned can be any of the scalar, vector, or matrix attribute types returned by glGetActiveAttrib. If an error occurred, the return parameters length, size, type and name will be unmodified. This command will return as much information about the varying variables as possible. If no information is available, length will be set to zero and name will be an empty string. This situation could arise if glGetTransformFeedbackVarying is called after a failed link. + /// + /// The name of the target program object. + /// The index of the varying variable whose information to retrieve. + /// The maximum number of characters, including the null terminator, that may be written into name. + /// The address of a variable which will receive the number of characters written into name, excluding the null-terminator. If length is NULL no length is returned. + /// The address of a variable that will receive the size of the varying. + /// The address of a variable that will receive the type of the varying. + /// The address of a buffer into which will be written the name of the varying. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbackVarying(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, string name) => _GetTransformFeedbackVarying(program, index, bufSize, out length, out size, out type, name); + + /// + /// Information about the set of varying variables in a linked program that will be captured during transform feedback may be retrieved by calling glGetTransformFeedbackVarying. glGetTransformFeedbackVarying provides information about the varying variable selected by index. An index of 0 selects the first varying variable specified in the varyings array passed to glTransformFeedbackVaryings, and an index of the value of GL_TRANSFORM_FEEDBACK_VARYINGS minus one selects the last such variable. + /// The name of the selected varying is returned as a null-terminated string in name. The actual number of characters written into name, excluding the null terminator, is returned in length. If length is NULL, no length is returned. The maximum number of characters that may be written into name, including the null terminator, is specified by bufSize. + /// The length of the longest varying name in program is given by GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH, which can be queried with glGetProgram. + /// For the selected varying variable, its type is returned into type. The size of the varying is returned into size. The value in size is in units of the type returned in type. The type returned can be any of the scalar, vector, or matrix attribute types returned by glGetActiveAttrib. If an error occurred, the return parameters length, size, type and name will be unmodified. This command will return as much information about the varying variables as possible. If no information is available, length will be set to zero and name will be an empty string. This situation could arise if glGetTransformFeedbackVarying is called after a failed link. + /// + /// The name of the target program object. + /// The index of the varying variable whose information to retrieve. + /// The maximum number of characters, including the null terminator, that may be written into name. + /// The address of a variable which will receive the number of characters written into name, excluding the null-terminator. If length is NULL no length is returned. + /// The address of a variable that will receive the size of the varying. + /// The address of a variable that will receive the type of the varying. + /// The address of a buffer into which will be written the name of the varying. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbackVarying(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, void* name) => _GetTransformFeedbackVarying_ptr(program, index, bufSize, out length, out size, out type, name); + + /// + /// Information about the set of varying variables in a linked program that will be captured during transform feedback may be retrieved by calling glGetTransformFeedbackVarying. glGetTransformFeedbackVarying provides information about the varying variable selected by index. An index of 0 selects the first varying variable specified in the varyings array passed to glTransformFeedbackVaryings, and an index of the value of GL_TRANSFORM_FEEDBACK_VARYINGS minus one selects the last such variable. + /// The name of the selected varying is returned as a null-terminated string in name. The actual number of characters written into name, excluding the null terminator, is returned in length. If length is NULL, no length is returned. The maximum number of characters that may be written into name, including the null terminator, is specified by bufSize. + /// The length of the longest varying name in program is given by GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH, which can be queried with glGetProgram. + /// For the selected varying variable, its type is returned into type. The size of the varying is returned into size. The value in size is in units of the type returned in type. The type returned can be any of the scalar, vector, or matrix attribute types returned by glGetActiveAttrib. If an error occurred, the return parameters length, size, type and name will be unmodified. This command will return as much information about the varying variables as possible. If no information is available, length will be set to zero and name will be an empty string. This situation could arise if glGetTransformFeedbackVarying is called after a failed link. + /// + /// The name of the target program object. + /// The index of the varying variable whose information to retrieve. + /// The maximum number of characters, including the null terminator, that may be written into name. + /// The address of a variable which will receive the number of characters written into name, excluding the null-terminator. If length is NULL no length is returned. + /// The address of a variable that will receive the size of the varying. + /// The address of a variable that will receive the type of the varying. + /// The address of a buffer into which will be written the name of the varying. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbackVarying(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, IntPtr name) => _GetTransformFeedbackVarying_intptr(program, index, bufSize, out length, out size, out type, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbackVaryingEXT(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, string name) => _GetTransformFeedbackVaryingEXT(program, index, bufSize, out length, out size, out type, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbackVaryingEXT(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, void* name) => _GetTransformFeedbackVaryingEXT_ptr(program, index, bufSize, out length, out size, out type, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbackVaryingEXT(uint program, uint index, int bufSize, out int length, out int size, out AttributeType type, IntPtr name) => _GetTransformFeedbackVaryingEXT_intptr(program, index, bufSize, out length, out size, out type, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbackVaryingNV(uint program, uint index, out int location) => _GetTransformFeedbackVaryingNV(program, index, out location); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbacki64_v(uint xfb, TransformFeedbackPName pname, uint index, Int64[] param) => _GetTransformFeedbacki64_v(xfb, pname, index, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbacki64_v(uint xfb, TransformFeedbackPName pname, uint index, void* param) => _GetTransformFeedbacki64_v_ptr(xfb, pname, index, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbacki64_v(uint xfb, TransformFeedbackPName pname, uint index, IntPtr param) => _GetTransformFeedbacki64_v_intptr(xfb, pname, index, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbacki_v(uint xfb, TransformFeedbackPName pname, uint index, int[] param) => _GetTransformFeedbacki_v(xfb, pname, index, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbacki_v(uint xfb, TransformFeedbackPName pname, uint index, void* param) => _GetTransformFeedbacki_v_ptr(xfb, pname, index, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbacki_v(uint xfb, TransformFeedbackPName pname, uint index, IntPtr param) => _GetTransformFeedbacki_v_intptr(xfb, pname, index, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbackiv(uint xfb, TransformFeedbackPName pname, int[] param) => _GetTransformFeedbackiv(xfb, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbackiv(uint xfb, TransformFeedbackPName pname, void* param) => _GetTransformFeedbackiv_ptr(xfb, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTransformFeedbackiv(uint xfb, TransformFeedbackPName pname, IntPtr param) => _GetTransformFeedbackiv_intptr(xfb, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTranslatedShaderSourceANGLE(uint shader, int bufSize, out int length, string source) => _GetTranslatedShaderSourceANGLE(shader, bufSize, out length, source); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTranslatedShaderSourceANGLE(uint shader, int bufSize, out int length, void* source) => _GetTranslatedShaderSourceANGLE_ptr(shader, bufSize, out length, source); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetTranslatedShaderSourceANGLE(uint shader, int bufSize, out int length, IntPtr source) => _GetTranslatedShaderSourceANGLE_intptr(shader, bufSize, out length, source); + + // --- + + /// + /// glGetUniformBlockIndex retrieves the index of a uniform block within program. + /// program must be the name of a program object for which the command glLinkProgram must have been called in the past, although it is not required that glLinkProgram must have succeeded. The link could have failed because the number of active uniforms exceeded the limit. + /// uniformBlockName must contain a nul-terminated string specifying the name of the uniform block. + /// glGetUniformBlockIndex returns the uniform block index for the uniform block named uniformBlockName of program. If uniformBlockName does not identify an active uniform block of program, glGetUniformBlockIndex returns the special identifier, GL_INVALID_INDEX. Indices of the active uniform blocks of a program are assigned in consecutive order, beginning with zero. + /// + /// Specifies the name of a program containing the uniform block. + /// Specifies the address an array of characters to containing the name of the uniform block whose index to retrieve. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetUniformBlockIndex(uint program, string uniformBlockName) => _GetUniformBlockIndex(program, uniformBlockName); + + /// + /// glGetUniformBlockIndex retrieves the index of a uniform block within program. + /// program must be the name of a program object for which the command glLinkProgram must have been called in the past, although it is not required that glLinkProgram must have succeeded. The link could have failed because the number of active uniforms exceeded the limit. + /// uniformBlockName must contain a nul-terminated string specifying the name of the uniform block. + /// glGetUniformBlockIndex returns the uniform block index for the uniform block named uniformBlockName of program. If uniformBlockName does not identify an active uniform block of program, glGetUniformBlockIndex returns the special identifier, GL_INVALID_INDEX. Indices of the active uniform blocks of a program are assigned in consecutive order, beginning with zero. + /// + /// Specifies the name of a program containing the uniform block. + /// Specifies the address an array of characters to containing the name of the uniform block whose index to retrieve. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetUniformBlockIndex(uint program, void* uniformBlockName) => _GetUniformBlockIndex_ptr(program, uniformBlockName); + + /// + /// glGetUniformBlockIndex retrieves the index of a uniform block within program. + /// program must be the name of a program object for which the command glLinkProgram must have been called in the past, although it is not required that glLinkProgram must have succeeded. The link could have failed because the number of active uniforms exceeded the limit. + /// uniformBlockName must contain a nul-terminated string specifying the name of the uniform block. + /// glGetUniformBlockIndex returns the uniform block index for the uniform block named uniformBlockName of program. If uniformBlockName does not identify an active uniform block of program, glGetUniformBlockIndex returns the special identifier, GL_INVALID_INDEX. Indices of the active uniform blocks of a program are assigned in consecutive order, beginning with zero. + /// + /// Specifies the name of a program containing the uniform block. + /// Specifies the address an array of characters to containing the name of the uniform block whose index to retrieve. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint GetUniformBlockIndex(uint program, IntPtr uniformBlockName) => _GetUniformBlockIndex_intptr(program, uniformBlockName); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetUniformBufferSizeEXT(uint program, int location) => _GetUniformBufferSizeEXT(program, location); + + // --- + + /// + /// glGetUniformIndices retrieves the indices of a number of uniforms within program. + /// program must be the name of a program object for which the command glLinkProgram must have been called in the past, although it is not required that glLinkProgram must have succeeded. The link could have failed because the number of active uniforms exceeded the limit. + /// uniformCount indicates both the number of elements in the array of names uniformNames and the number of indices that may be written to uniformIndices. + /// uniformNames contains a list of uniformCount name strings identifying the uniform names to be queried for indices. For each name string in uniformNames, the index assigned to the active uniform of that name will be written to the corresponding element of uniformIndices. If a string in uniformNames is not the name of an active uniform, the special value GL_INVALID_INDEX will be written to the corresponding element of uniformIndices. + /// If an error occurs, nothing is written to uniformIndices. + /// + /// Specifies the name of a program containing uniforms whose indices to query. + /// Specifies the number of uniforms whose indices to query. + /// Specifies the address of an array of pointers to buffers containing the names of the queried uniforms. + /// Specifies the address of an array that will receive the indices of the uniforms. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformIndices(uint program, int uniformCount, string[] uniformNames, uint[] uniformIndices) => _GetUniformIndices(program, uniformCount, uniformNames, uniformIndices); + + /// + /// glGetUniformIndices retrieves the indices of a number of uniforms within program. + /// program must be the name of a program object for which the command glLinkProgram must have been called in the past, although it is not required that glLinkProgram must have succeeded. The link could have failed because the number of active uniforms exceeded the limit. + /// uniformCount indicates both the number of elements in the array of names uniformNames and the number of indices that may be written to uniformIndices. + /// uniformNames contains a list of uniformCount name strings identifying the uniform names to be queried for indices. For each name string in uniformNames, the index assigned to the active uniform of that name will be written to the corresponding element of uniformIndices. If a string in uniformNames is not the name of an active uniform, the special value GL_INVALID_INDEX will be written to the corresponding element of uniformIndices. + /// If an error occurs, nothing is written to uniformIndices. + /// + /// Specifies the name of a program containing uniforms whose indices to query. + /// Specifies the number of uniforms whose indices to query. + /// Specifies the address of an array of pointers to buffers containing the names of the queried uniforms. + /// Specifies the address of an array that will receive the indices of the uniforms. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformIndices(uint program, int uniformCount, void* uniformNames, void* uniformIndices) => _GetUniformIndices_ptr(program, uniformCount, uniformNames, uniformIndices); + + /// + /// glGetUniformIndices retrieves the indices of a number of uniforms within program. + /// program must be the name of a program object for which the command glLinkProgram must have been called in the past, although it is not required that glLinkProgram must have succeeded. The link could have failed because the number of active uniforms exceeded the limit. + /// uniformCount indicates both the number of elements in the array of names uniformNames and the number of indices that may be written to uniformIndices. + /// uniformNames contains a list of uniformCount name strings identifying the uniform names to be queried for indices. For each name string in uniformNames, the index assigned to the active uniform of that name will be written to the corresponding element of uniformIndices. If a string in uniformNames is not the name of an active uniform, the special value GL_INVALID_INDEX will be written to the corresponding element of uniformIndices. + /// If an error occurs, nothing is written to uniformIndices. + /// + /// Specifies the name of a program containing uniforms whose indices to query. + /// Specifies the number of uniforms whose indices to query. + /// Specifies the address of an array of pointers to buffers containing the names of the queried uniforms. + /// Specifies the address of an array that will receive the indices of the uniforms. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformIndices(uint program, int uniformCount, IntPtr uniformNames, IntPtr uniformIndices) => _GetUniformIndices_intptr(program, uniformCount, uniformNames, uniformIndices); + + // --- + + /// + /// glGetUniformLocation returns an integer that represents the location of a specific uniform variable within a program object. name must be a null terminated string that contains no white space. name must be an active uniform variable name in program that is not a structure, an array of structures, or a subcomponent of a vector or a matrix. This function returns -1 if name does not correspond to an active uniform variable in program, if name starts with the reserved prefix "gl_", or if name is associated with an atomic counter or a named uniform block. + /// Uniform variables that are structures or arrays of structures may be queried by calling glGetUniformLocation for each field within the structure. The array element operator "[]" and the structure field operator "." may be used in name in order to select elements within an array or fields within a structure. The result of using these operators is not allowed to be another structure, an array of structures, or a subcomponent of a vector or a matrix. Except if the last part of name indicates a uniform variable array, the location of the first element of an array can be retrieved by using the name of the array, or by using the name appended by "[0]". + /// The actual locations assigned to uniform variables are not known until the program object is linked successfully. After linking has occurred, the command glGetUniformLocation can be used to obtain the location of a uniform variable. This location value can then be passed to glUniform to set the value of the uniform variable or to glGetUniform in order to query the current value of the uniform variable. After a program object has been linked successfully, the index values for uniform variables remain fixed until the next link command occurs. Uniform variable locations and values can only be queried after a link if the link was successful. + /// + /// Specifies the program object to be queried. + /// Points to a null terminated string containing the name of the uniform variable whose location is to be queried. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetUniformLocation(uint program, string name) => _GetUniformLocation(program, name); + + /// + /// glGetUniformLocation returns an integer that represents the location of a specific uniform variable within a program object. name must be a null terminated string that contains no white space. name must be an active uniform variable name in program that is not a structure, an array of structures, or a subcomponent of a vector or a matrix. This function returns -1 if name does not correspond to an active uniform variable in program, if name starts with the reserved prefix "gl_", or if name is associated with an atomic counter or a named uniform block. + /// Uniform variables that are structures or arrays of structures may be queried by calling glGetUniformLocation for each field within the structure. The array element operator "[]" and the structure field operator "." may be used in name in order to select elements within an array or fields within a structure. The result of using these operators is not allowed to be another structure, an array of structures, or a subcomponent of a vector or a matrix. Except if the last part of name indicates a uniform variable array, the location of the first element of an array can be retrieved by using the name of the array, or by using the name appended by "[0]". + /// The actual locations assigned to uniform variables are not known until the program object is linked successfully. After linking has occurred, the command glGetUniformLocation can be used to obtain the location of a uniform variable. This location value can then be passed to glUniform to set the value of the uniform variable or to glGetUniform in order to query the current value of the uniform variable. After a program object has been linked successfully, the index values for uniform variables remain fixed until the next link command occurs. Uniform variable locations and values can only be queried after a link if the link was successful. + /// + /// Specifies the program object to be queried. + /// Points to a null terminated string containing the name of the uniform variable whose location is to be queried. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetUniformLocation(uint program, void* name) => _GetUniformLocation_ptr(program, name); + + /// + /// glGetUniformLocation returns an integer that represents the location of a specific uniform variable within a program object. name must be a null terminated string that contains no white space. name must be an active uniform variable name in program that is not a structure, an array of structures, or a subcomponent of a vector or a matrix. This function returns -1 if name does not correspond to an active uniform variable in program, if name starts with the reserved prefix "gl_", or if name is associated with an atomic counter or a named uniform block. + /// Uniform variables that are structures or arrays of structures may be queried by calling glGetUniformLocation for each field within the structure. The array element operator "[]" and the structure field operator "." may be used in name in order to select elements within an array or fields within a structure. The result of using these operators is not allowed to be another structure, an array of structures, or a subcomponent of a vector or a matrix. Except if the last part of name indicates a uniform variable array, the location of the first element of an array can be retrieved by using the name of the array, or by using the name appended by "[0]". + /// The actual locations assigned to uniform variables are not known until the program object is linked successfully. After linking has occurred, the command glGetUniformLocation can be used to obtain the location of a uniform variable. This location value can then be passed to glUniform to set the value of the uniform variable or to glGetUniform in order to query the current value of the uniform variable. After a program object has been linked successfully, the index values for uniform variables remain fixed until the next link command occurs. Uniform variable locations and values can only be queried after a link if the link was successful. + /// + /// Specifies the program object to be queried. + /// Points to a null terminated string containing the name of the uniform variable whose location is to be queried. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetUniformLocation(uint program, IntPtr name) => _GetUniformLocation_intptr(program, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetUniformLocationARB(int programObj, string name) => _GetUniformLocationARB(programObj, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetUniformLocationARB(int programObj, void* name) => _GetUniformLocationARB_ptr(programObj, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetUniformLocationARB(int programObj, IntPtr name) => _GetUniformLocationARB_intptr(programObj, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public IntPtr GetUniformOffsetEXT(uint program, int location) => _GetUniformOffsetEXT(program, location); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformSubroutineuiv(ShaderType shadertype, int location, out uint @params) => _GetUniformSubroutineuiv(shadertype, location, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformdv(uint program, int location, double[] @params) => _GetUniformdv(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformdv(uint program, int location, void* @params) => _GetUniformdv_ptr(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformdv(uint program, int location, IntPtr @params) => _GetUniformdv_intptr(program, location, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformfv(uint program, int location, float[] @params) => _GetUniformfv(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformfv(uint program, int location, void* @params) => _GetUniformfv_ptr(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformfv(uint program, int location, IntPtr @params) => _GetUniformfv_intptr(program, location, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformfvARB(int programObj, int location, float[] @params) => _GetUniformfvARB(programObj, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformfvARB(int programObj, int location, void* @params) => _GetUniformfvARB_ptr(programObj, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformfvARB(int programObj, int location, IntPtr @params) => _GetUniformfvARB_intptr(programObj, location, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformi64vARB(uint program, int location, Int64[] @params) => _GetUniformi64vARB(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformi64vARB(uint program, int location, void* @params) => _GetUniformi64vARB_ptr(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformi64vARB(uint program, int location, IntPtr @params) => _GetUniformi64vARB_intptr(program, location, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformi64vNV(uint program, int location, Int64[] @params) => _GetUniformi64vNV(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformi64vNV(uint program, int location, void* @params) => _GetUniformi64vNV_ptr(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformi64vNV(uint program, int location, IntPtr @params) => _GetUniformi64vNV_intptr(program, location, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformiv(uint program, int location, int[] @params) => _GetUniformiv(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformiv(uint program, int location, void* @params) => _GetUniformiv_ptr(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformiv(uint program, int location, IntPtr @params) => _GetUniformiv_intptr(program, location, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformivARB(int programObj, int location, int[] @params) => _GetUniformivARB(programObj, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformivARB(int programObj, int location, void* @params) => _GetUniformivARB_ptr(programObj, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformivARB(int programObj, int location, IntPtr @params) => _GetUniformivARB_intptr(programObj, location, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformui64vARB(uint program, int location, UInt64[] @params) => _GetUniformui64vARB(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformui64vARB(uint program, int location, void* @params) => _GetUniformui64vARB_ptr(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformui64vARB(uint program, int location, IntPtr @params) => _GetUniformui64vARB_intptr(program, location, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformui64vNV(uint program, int location, UInt64[] @params) => _GetUniformui64vNV(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformui64vNV(uint program, int location, void* @params) => _GetUniformui64vNV_ptr(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformui64vNV(uint program, int location, IntPtr @params) => _GetUniformui64vNV_intptr(program, location, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformuiv(uint program, int location, uint[] @params) => _GetUniformuiv(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformuiv(uint program, int location, void* @params) => _GetUniformuiv_ptr(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformuiv(uint program, int location, IntPtr @params) => _GetUniformuiv_intptr(program, location, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformuivEXT(uint program, int location, uint[] @params) => _GetUniformuivEXT(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformuivEXT(uint program, int location, void* @params) => _GetUniformuivEXT_ptr(program, location, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUniformuivEXT(uint program, int location, IntPtr @params) => _GetUniformuivEXT_intptr(program, location, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUnsignedBytevEXT(GetPName pname, byte[] data) => _GetUnsignedBytevEXT(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUnsignedBytevEXT(GetPName pname, void* data) => _GetUnsignedBytevEXT_ptr(pname, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUnsignedBytevEXT(GetPName pname, IntPtr data) => _GetUnsignedBytevEXT_intptr(pname, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUnsignedBytei_vEXT(int target, uint index, byte[] data) => _GetUnsignedBytei_vEXT(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUnsignedBytei_vEXT(int target, uint index, void* data) => _GetUnsignedBytei_vEXT_ptr(target, index, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetUnsignedBytei_vEXT(int target, uint index, IntPtr data) => _GetUnsignedBytei_vEXT_intptr(target, index, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVariantArrayObjectfvATI(uint id, ArrayObjectPNameATI pname, out float @params) => _GetVariantArrayObjectfvATI(id, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVariantArrayObjectivATI(uint id, ArrayObjectPNameATI pname, out int @params) => _GetVariantArrayObjectivATI(id, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVariantBooleanvEXT(uint id, GetVariantValueEXT value, bool[] data) => _GetVariantBooleanvEXT(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVariantBooleanvEXT(uint id, GetVariantValueEXT value, void* data) => _GetVariantBooleanvEXT_ptr(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVariantBooleanvEXT(uint id, GetVariantValueEXT value, IntPtr data) => _GetVariantBooleanvEXT_intptr(id, value, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVariantFloatvEXT(uint id, GetVariantValueEXT value, float[] data) => _GetVariantFloatvEXT(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVariantFloatvEXT(uint id, GetVariantValueEXT value, void* data) => _GetVariantFloatvEXT_ptr(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVariantFloatvEXT(uint id, GetVariantValueEXT value, IntPtr data) => _GetVariantFloatvEXT_intptr(id, value, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVariantIntegervEXT(uint id, GetVariantValueEXT value, int[] data) => _GetVariantIntegervEXT(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVariantIntegervEXT(uint id, GetVariantValueEXT value, void* data) => _GetVariantIntegervEXT_ptr(id, value, data); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVariantIntegervEXT(uint id, GetVariantValueEXT value, IntPtr data) => _GetVariantIntegervEXT_intptr(id, value, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVariantPointervEXT(uint id, GetVariantValueEXT value, IntPtr* data) => _GetVariantPointervEXT(id, value, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetVaryingLocationNV(uint program, string name) => _GetVaryingLocationNV(program, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetVaryingLocationNV(uint program, void* name) => _GetVaryingLocationNV_ptr(program, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int GetVaryingLocationNV(uint program, IntPtr name) => _GetVaryingLocationNV_intptr(program, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayIndexed64iv(uint vaobj, uint index, VertexArrayPName pname, Int64[] param) => _GetVertexArrayIndexed64iv(vaobj, index, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayIndexed64iv(uint vaobj, uint index, VertexArrayPName pname, void* param) => _GetVertexArrayIndexed64iv_ptr(vaobj, index, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayIndexed64iv(uint vaobj, uint index, VertexArrayPName pname, IntPtr param) => _GetVertexArrayIndexed64iv_intptr(vaobj, index, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayIndexediv(uint vaobj, uint index, VertexArrayPName pname, int[] param) => _GetVertexArrayIndexediv(vaobj, index, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayIndexediv(uint vaobj, uint index, VertexArrayPName pname, void* param) => _GetVertexArrayIndexediv_ptr(vaobj, index, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayIndexediv(uint vaobj, uint index, VertexArrayPName pname, IntPtr param) => _GetVertexArrayIndexediv_intptr(vaobj, index, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayIntegeri_vEXT(uint vaobj, uint index, VertexArrayPName pname, int[] param) => _GetVertexArrayIntegeri_vEXT(vaobj, index, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayIntegeri_vEXT(uint vaobj, uint index, VertexArrayPName pname, void* param) => _GetVertexArrayIntegeri_vEXT_ptr(vaobj, index, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayIntegeri_vEXT(uint vaobj, uint index, VertexArrayPName pname, IntPtr param) => _GetVertexArrayIntegeri_vEXT_intptr(vaobj, index, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayIntegervEXT(uint vaobj, VertexArrayPName pname, int[] param) => _GetVertexArrayIntegervEXT(vaobj, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayIntegervEXT(uint vaobj, VertexArrayPName pname, void* param) => _GetVertexArrayIntegervEXT_ptr(vaobj, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayIntegervEXT(uint vaobj, VertexArrayPName pname, IntPtr param) => _GetVertexArrayIntegervEXT_intptr(vaobj, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayPointeri_vEXT(uint vaobj, uint index, VertexArrayPName pname, IntPtr* param) => _GetVertexArrayPointeri_vEXT(vaobj, index, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayPointervEXT(uint vaobj, VertexArrayPName pname, IntPtr* param) => _GetVertexArrayPointervEXT(vaobj, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayiv(uint vaobj, VertexArrayPName pname, int[] param) => _GetVertexArrayiv(vaobj, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayiv(uint vaobj, VertexArrayPName pname, void* param) => _GetVertexArrayiv_ptr(vaobj, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexArrayiv(uint vaobj, VertexArrayPName pname, IntPtr param) => _GetVertexArrayiv_intptr(vaobj, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribArrayObjectfvATI(uint index, ArrayObjectPNameATI pname, float[] @params) => _GetVertexAttribArrayObjectfvATI(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribArrayObjectfvATI(uint index, ArrayObjectPNameATI pname, void* @params) => _GetVertexAttribArrayObjectfvATI_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribArrayObjectfvATI(uint index, ArrayObjectPNameATI pname, IntPtr @params) => _GetVertexAttribArrayObjectfvATI_intptr(index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribArrayObjectivATI(uint index, ArrayObjectPNameATI pname, int[] @params) => _GetVertexAttribArrayObjectivATI(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribArrayObjectivATI(uint index, ArrayObjectPNameATI pname, void* @params) => _GetVertexAttribArrayObjectivATI_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribArrayObjectivATI(uint index, ArrayObjectPNameATI pname, IntPtr @params) => _GetVertexAttribArrayObjectivATI_intptr(index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribIiv(uint index, VertexAttribEnum pname, out int @params) => _GetVertexAttribIiv(index, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribIivEXT(uint index, VertexAttribEnum pname, out int @params) => _GetVertexAttribIivEXT(index, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribIuiv(uint index, VertexAttribEnum pname, out uint @params) => _GetVertexAttribIuiv(index, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribIuivEXT(uint index, VertexAttribEnum pname, out uint @params) => _GetVertexAttribIuivEXT(index, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLdv(uint index, VertexAttribEnum pname, double[] @params) => _GetVertexAttribLdv(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLdv(uint index, VertexAttribEnum pname, void* @params) => _GetVertexAttribLdv_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLdv(uint index, VertexAttribEnum pname, IntPtr @params) => _GetVertexAttribLdv_intptr(index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLdvEXT(uint index, VertexAttribEnum pname, double[] @params) => _GetVertexAttribLdvEXT(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLdvEXT(uint index, VertexAttribEnum pname, void* @params) => _GetVertexAttribLdvEXT_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLdvEXT(uint index, VertexAttribEnum pname, IntPtr @params) => _GetVertexAttribLdvEXT_intptr(index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLi64vNV(uint index, VertexAttribEnum pname, Int64[] @params) => _GetVertexAttribLi64vNV(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLi64vNV(uint index, VertexAttribEnum pname, void* @params) => _GetVertexAttribLi64vNV_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLi64vNV(uint index, VertexAttribEnum pname, IntPtr @params) => _GetVertexAttribLi64vNV_intptr(index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLui64vARB(uint index, VertexAttribEnum pname, UInt64[] @params) => _GetVertexAttribLui64vARB(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLui64vARB(uint index, VertexAttribEnum pname, void* @params) => _GetVertexAttribLui64vARB_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLui64vARB(uint index, VertexAttribEnum pname, IntPtr @params) => _GetVertexAttribLui64vARB_intptr(index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLui64vNV(uint index, VertexAttribEnum pname, UInt64[] @params) => _GetVertexAttribLui64vNV(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLui64vNV(uint index, VertexAttribEnum pname, void* @params) => _GetVertexAttribLui64vNV_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribLui64vNV(uint index, VertexAttribEnum pname, IntPtr @params) => _GetVertexAttribLui64vNV_intptr(index, pname, @params); + + // --- + + /// + /// glGetVertexAttribPointerv returns pointer information. index is the generic vertex attribute to be queried, pname is a symbolic constant indicating the pointer to be returned, and params is a pointer to a location in which to place the returned data. + /// The pointer returned is a byte offset into the data store of the buffer object that was bound to the GL_ARRAY_BUFFER target (see glBindBuffer) when the desired pointer was previously specified. + /// + /// Specifies the generic vertex attribute parameter to be returned. + /// Specifies the symbolic name of the generic vertex attribute parameter to be returned. Must be GL_VERTEX_ATTRIB_ARRAY_POINTER. + /// Returns the pointer value. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribPointerv(uint index, VertexAttribPointerPropertyARB pname, IntPtr* pointer) => _GetVertexAttribPointerv(index, pname, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribPointervARB(uint index, VertexAttribPointerPropertyARB pname, IntPtr* pointer) => _GetVertexAttribPointervARB(index, pname, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribPointervNV(uint index, VertexAttribEnumNV pname, IntPtr* pointer) => _GetVertexAttribPointervNV(index, pname, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribdv(uint index, VertexAttribPropertyARB pname, double[] @params) => _GetVertexAttribdv(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribdv(uint index, VertexAttribPropertyARB pname, void* @params) => _GetVertexAttribdv_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribdv(uint index, VertexAttribPropertyARB pname, IntPtr @params) => _GetVertexAttribdv_intptr(index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribdvARB(uint index, VertexAttribPropertyARB pname, double[] @params) => _GetVertexAttribdvARB(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribdvARB(uint index, VertexAttribPropertyARB pname, void* @params) => _GetVertexAttribdvARB_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribdvARB(uint index, VertexAttribPropertyARB pname, IntPtr @params) => _GetVertexAttribdvARB_intptr(index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribdvNV(uint index, VertexAttribEnumNV pname, out double @params) => _GetVertexAttribdvNV(index, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribfv(uint index, VertexAttribPropertyARB pname, float[] @params) => _GetVertexAttribfv(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribfv(uint index, VertexAttribPropertyARB pname, void* @params) => _GetVertexAttribfv_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribfv(uint index, VertexAttribPropertyARB pname, IntPtr @params) => _GetVertexAttribfv_intptr(index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribfvARB(uint index, VertexAttribPropertyARB pname, float[] @params) => _GetVertexAttribfvARB(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribfvARB(uint index, VertexAttribPropertyARB pname, void* @params) => _GetVertexAttribfvARB_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribfvARB(uint index, VertexAttribPropertyARB pname, IntPtr @params) => _GetVertexAttribfvARB_intptr(index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribfvNV(uint index, VertexAttribEnumNV pname, out float @params) => _GetVertexAttribfvNV(index, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribiv(uint index, VertexAttribPropertyARB pname, int[] @params) => _GetVertexAttribiv(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribiv(uint index, VertexAttribPropertyARB pname, void* @params) => _GetVertexAttribiv_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribiv(uint index, VertexAttribPropertyARB pname, IntPtr @params) => _GetVertexAttribiv_intptr(index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribivARB(uint index, VertexAttribPropertyARB pname, int[] @params) => _GetVertexAttribivARB(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribivARB(uint index, VertexAttribPropertyARB pname, void* @params) => _GetVertexAttribivARB_ptr(index, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribivARB(uint index, VertexAttribPropertyARB pname, IntPtr @params) => _GetVertexAttribivARB_intptr(index, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVertexAttribivNV(uint index, VertexAttribEnumNV pname, out int @params) => _GetVertexAttribivNV(index, pname, out @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoCaptureStreamdvNV(uint video_capture_slot, uint stream, int pname, double[] @params) => _GetVideoCaptureStreamdvNV(video_capture_slot, stream, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoCaptureStreamdvNV(uint video_capture_slot, uint stream, int pname, void* @params) => _GetVideoCaptureStreamdvNV_ptr(video_capture_slot, stream, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoCaptureStreamdvNV(uint video_capture_slot, uint stream, int pname, IntPtr @params) => _GetVideoCaptureStreamdvNV_intptr(video_capture_slot, stream, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoCaptureStreamfvNV(uint video_capture_slot, uint stream, int pname, float[] @params) => _GetVideoCaptureStreamfvNV(video_capture_slot, stream, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoCaptureStreamfvNV(uint video_capture_slot, uint stream, int pname, void* @params) => _GetVideoCaptureStreamfvNV_ptr(video_capture_slot, stream, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoCaptureStreamfvNV(uint video_capture_slot, uint stream, int pname, IntPtr @params) => _GetVideoCaptureStreamfvNV_intptr(video_capture_slot, stream, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoCaptureStreamivNV(uint video_capture_slot, uint stream, int pname, int[] @params) => _GetVideoCaptureStreamivNV(video_capture_slot, stream, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoCaptureStreamivNV(uint video_capture_slot, uint stream, int pname, void* @params) => _GetVideoCaptureStreamivNV_ptr(video_capture_slot, stream, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoCaptureStreamivNV(uint video_capture_slot, uint stream, int pname, IntPtr @params) => _GetVideoCaptureStreamivNV_intptr(video_capture_slot, stream, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoCaptureivNV(uint video_capture_slot, int pname, int[] @params) => _GetVideoCaptureivNV(video_capture_slot, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoCaptureivNV(uint video_capture_slot, int pname, void* @params) => _GetVideoCaptureivNV_ptr(video_capture_slot, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoCaptureivNV(uint video_capture_slot, int pname, IntPtr @params) => _GetVideoCaptureivNV_intptr(video_capture_slot, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoi64vNV(uint video_slot, int pname, Int64[] @params) => _GetVideoi64vNV(video_slot, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoi64vNV(uint video_slot, int pname, void* @params) => _GetVideoi64vNV_ptr(video_slot, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoi64vNV(uint video_slot, int pname, IntPtr @params) => _GetVideoi64vNV_intptr(video_slot, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoivNV(uint video_slot, int pname, int[] @params) => _GetVideoivNV(video_slot, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoivNV(uint video_slot, int pname, void* @params) => _GetVideoivNV_ptr(video_slot, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoivNV(uint video_slot, int pname, IntPtr @params) => _GetVideoivNV_intptr(video_slot, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoui64vNV(uint video_slot, int pname, UInt64[] @params) => _GetVideoui64vNV(video_slot, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoui64vNV(uint video_slot, int pname, void* @params) => _GetVideoui64vNV_ptr(video_slot, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideoui64vNV(uint video_slot, int pname, IntPtr @params) => _GetVideoui64vNV_intptr(video_slot, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideouivNV(uint video_slot, int pname, uint[] @params) => _GetVideouivNV(video_slot, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideouivNV(uint video_slot, int pname, void* @params) => _GetVideouivNV_ptr(video_slot, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetVideouivNV(uint video_slot, int pname, IntPtr @params) => _GetVideouivNV_intptr(video_slot, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnColorTable(ColorTableTarget target, PixelFormat format, PixelType type, int bufSize, IntPtr table) => _GetnColorTable(target, format, type, bufSize, table); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnColorTableARB(ColorTableTarget target, PixelFormat format, PixelType type, int bufSize, IntPtr table) => _GetnColorTableARB(target, format, type, bufSize, table); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnCompressedTexImage(TextureTarget target, int lod, int bufSize, IntPtr pixels) => _GetnCompressedTexImage(target, lod, bufSize, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnCompressedTexImageARB(TextureTarget target, int lod, int bufSize, IntPtr img) => _GetnCompressedTexImageARB(target, lod, bufSize, img); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnConvolutionFilter(ConvolutionTarget target, PixelFormat format, PixelType type, int bufSize, IntPtr image) => _GetnConvolutionFilter(target, format, type, bufSize, image); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnConvolutionFilterARB(ConvolutionTarget target, PixelFormat format, PixelType type, int bufSize, IntPtr image) => _GetnConvolutionFilterARB(target, format, type, bufSize, image); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnHistogram(HistogramTargetEXT target, bool reset, PixelFormat format, PixelType type, int bufSize, IntPtr values) => _GetnHistogram(target, reset, format, type, bufSize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnHistogramARB(HistogramTargetEXT target, bool reset, PixelFormat format, PixelType type, int bufSize, IntPtr values) => _GetnHistogramARB(target, reset, format, type, bufSize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapdv(MapTarget target, MapQuery query, int bufSize, double[] v) => _GetnMapdv(target, query, bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapdv(MapTarget target, MapQuery query, int bufSize, void* v) => _GetnMapdv_ptr(target, query, bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapdv(MapTarget target, MapQuery query, int bufSize, IntPtr v) => _GetnMapdv_intptr(target, query, bufSize, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapdvARB(MapTarget target, MapQuery query, int bufSize, double[] v) => _GetnMapdvARB(target, query, bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapdvARB(MapTarget target, MapQuery query, int bufSize, void* v) => _GetnMapdvARB_ptr(target, query, bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapdvARB(MapTarget target, MapQuery query, int bufSize, IntPtr v) => _GetnMapdvARB_intptr(target, query, bufSize, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapfv(MapTarget target, MapQuery query, int bufSize, float[] v) => _GetnMapfv(target, query, bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapfv(MapTarget target, MapQuery query, int bufSize, void* v) => _GetnMapfv_ptr(target, query, bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapfv(MapTarget target, MapQuery query, int bufSize, IntPtr v) => _GetnMapfv_intptr(target, query, bufSize, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapfvARB(MapTarget target, MapQuery query, int bufSize, float[] v) => _GetnMapfvARB(target, query, bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapfvARB(MapTarget target, MapQuery query, int bufSize, void* v) => _GetnMapfvARB_ptr(target, query, bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapfvARB(MapTarget target, MapQuery query, int bufSize, IntPtr v) => _GetnMapfvARB_intptr(target, query, bufSize, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapiv(MapTarget target, MapQuery query, int bufSize, int[] v) => _GetnMapiv(target, query, bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapiv(MapTarget target, MapQuery query, int bufSize, void* v) => _GetnMapiv_ptr(target, query, bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapiv(MapTarget target, MapQuery query, int bufSize, IntPtr v) => _GetnMapiv_intptr(target, query, bufSize, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapivARB(MapTarget target, MapQuery query, int bufSize, int[] v) => _GetnMapivARB(target, query, bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapivARB(MapTarget target, MapQuery query, int bufSize, void* v) => _GetnMapivARB_ptr(target, query, bufSize, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMapivARB(MapTarget target, MapQuery query, int bufSize, IntPtr v) => _GetnMapivARB_intptr(target, query, bufSize, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMinmax(MinmaxTargetEXT target, bool reset, PixelFormat format, PixelType type, int bufSize, IntPtr values) => _GetnMinmax(target, reset, format, type, bufSize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnMinmaxARB(MinmaxTargetEXT target, bool reset, PixelFormat format, PixelType type, int bufSize, IntPtr values) => _GetnMinmaxARB(target, reset, format, type, bufSize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapfv(PixelMap map, int bufSize, float[] values) => _GetnPixelMapfv(map, bufSize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapfv(PixelMap map, int bufSize, void* values) => _GetnPixelMapfv_ptr(map, bufSize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapfv(PixelMap map, int bufSize, IntPtr values) => _GetnPixelMapfv_intptr(map, bufSize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapfvARB(PixelMap map, int bufSize, float[] values) => _GetnPixelMapfvARB(map, bufSize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapfvARB(PixelMap map, int bufSize, void* values) => _GetnPixelMapfvARB_ptr(map, bufSize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapfvARB(PixelMap map, int bufSize, IntPtr values) => _GetnPixelMapfvARB_intptr(map, bufSize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapuiv(PixelMap map, int bufSize, uint[] values) => _GetnPixelMapuiv(map, bufSize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapuiv(PixelMap map, int bufSize, void* values) => _GetnPixelMapuiv_ptr(map, bufSize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapuiv(PixelMap map, int bufSize, IntPtr values) => _GetnPixelMapuiv_intptr(map, bufSize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapuivARB(PixelMap map, int bufSize, uint[] values) => _GetnPixelMapuivARB(map, bufSize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapuivARB(PixelMap map, int bufSize, void* values) => _GetnPixelMapuivARB_ptr(map, bufSize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapuivARB(PixelMap map, int bufSize, IntPtr values) => _GetnPixelMapuivARB_intptr(map, bufSize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapusv(PixelMap map, int bufSize, ushort[] values) => _GetnPixelMapusv(map, bufSize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapusv(PixelMap map, int bufSize, void* values) => _GetnPixelMapusv_ptr(map, bufSize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapusv(PixelMap map, int bufSize, IntPtr values) => _GetnPixelMapusv_intptr(map, bufSize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapusvARB(PixelMap map, int bufSize, ushort[] values) => _GetnPixelMapusvARB(map, bufSize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapusvARB(PixelMap map, int bufSize, void* values) => _GetnPixelMapusvARB_ptr(map, bufSize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPixelMapusvARB(PixelMap map, int bufSize, IntPtr values) => _GetnPixelMapusvARB_intptr(map, bufSize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPolygonStipple(int bufSize, byte[] pattern) => _GetnPolygonStipple(bufSize, pattern); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPolygonStipple(int bufSize, void* pattern) => _GetnPolygonStipple_ptr(bufSize, pattern); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPolygonStipple(int bufSize, IntPtr pattern) => _GetnPolygonStipple_intptr(bufSize, pattern); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPolygonStippleARB(int bufSize, byte[] pattern) => _GetnPolygonStippleARB(bufSize, pattern); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPolygonStippleARB(int bufSize, void* pattern) => _GetnPolygonStippleARB_ptr(bufSize, pattern); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnPolygonStippleARB(int bufSize, IntPtr pattern) => _GetnPolygonStippleARB_intptr(bufSize, pattern); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnSeparableFilter(SeparableTargetEXT target, PixelFormat format, PixelType type, int rowBufSize, IntPtr row, int columnBufSize, IntPtr column, IntPtr span) => _GetnSeparableFilter(target, format, type, rowBufSize, row, columnBufSize, column, span); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnSeparableFilterARB(SeparableTargetEXT target, PixelFormat format, PixelType type, int rowBufSize, IntPtr row, int columnBufSize, IntPtr column, IntPtr span) => _GetnSeparableFilterARB(target, format, type, rowBufSize, row, columnBufSize, column, span); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnTexImage(TextureTarget target, int level, PixelFormat format, PixelType type, int bufSize, IntPtr pixels) => _GetnTexImage(target, level, format, type, bufSize, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnTexImageARB(TextureTarget target, int level, PixelFormat format, PixelType type, int bufSize, IntPtr img) => _GetnTexImageARB(target, level, format, type, bufSize, img); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformdv(uint program, int location, int bufSize, double[] @params) => _GetnUniformdv(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformdv(uint program, int location, int bufSize, void* @params) => _GetnUniformdv_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformdv(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformdv_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformdvARB(uint program, int location, int bufSize, double[] @params) => _GetnUniformdvARB(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformdvARB(uint program, int location, int bufSize, void* @params) => _GetnUniformdvARB_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformdvARB(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformdvARB_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformfv(uint program, int location, int bufSize, float[] @params) => _GetnUniformfv(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformfv(uint program, int location, int bufSize, void* @params) => _GetnUniformfv_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformfv(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformfv_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformfvARB(uint program, int location, int bufSize, float[] @params) => _GetnUniformfvARB(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformfvARB(uint program, int location, int bufSize, void* @params) => _GetnUniformfvARB_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformfvARB(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformfvARB_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformfvEXT(uint program, int location, int bufSize, float[] @params) => _GetnUniformfvEXT(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformfvEXT(uint program, int location, int bufSize, void* @params) => _GetnUniformfvEXT_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformfvEXT(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformfvEXT_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformfvKHR(uint program, int location, int bufSize, float[] @params) => _GetnUniformfvKHR(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformfvKHR(uint program, int location, int bufSize, void* @params) => _GetnUniformfvKHR_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformfvKHR(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformfvKHR_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformi64vARB(uint program, int location, int bufSize, Int64[] @params) => _GetnUniformi64vARB(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformi64vARB(uint program, int location, int bufSize, void* @params) => _GetnUniformi64vARB_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformi64vARB(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformi64vARB_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformiv(uint program, int location, int bufSize, int[] @params) => _GetnUniformiv(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformiv(uint program, int location, int bufSize, void* @params) => _GetnUniformiv_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformiv(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformiv_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformivARB(uint program, int location, int bufSize, int[] @params) => _GetnUniformivARB(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformivARB(uint program, int location, int bufSize, void* @params) => _GetnUniformivARB_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformivARB(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformivARB_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformivEXT(uint program, int location, int bufSize, int[] @params) => _GetnUniformivEXT(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformivEXT(uint program, int location, int bufSize, void* @params) => _GetnUniformivEXT_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformivEXT(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformivEXT_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformivKHR(uint program, int location, int bufSize, int[] @params) => _GetnUniformivKHR(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformivKHR(uint program, int location, int bufSize, void* @params) => _GetnUniformivKHR_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformivKHR(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformivKHR_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformui64vARB(uint program, int location, int bufSize, UInt64[] @params) => _GetnUniformui64vARB(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformui64vARB(uint program, int location, int bufSize, void* @params) => _GetnUniformui64vARB_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformui64vARB(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformui64vARB_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformuiv(uint program, int location, int bufSize, uint[] @params) => _GetnUniformuiv(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformuiv(uint program, int location, int bufSize, void* @params) => _GetnUniformuiv_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformuiv(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformuiv_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformuivARB(uint program, int location, int bufSize, uint[] @params) => _GetnUniformuivARB(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformuivARB(uint program, int location, int bufSize, void* @params) => _GetnUniformuivARB_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformuivARB(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformuivARB_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformuivKHR(uint program, int location, int bufSize, uint[] @params) => _GetnUniformuivKHR(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformuivKHR(uint program, int location, int bufSize, void* @params) => _GetnUniformuivKHR_ptr(program, location, bufSize, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetnUniformuivKHR(uint program, int location, int bufSize, IntPtr @params) => _GetnUniformuivKHR_intptr(program, location, bufSize, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GlobalAlphaFactorbSUN(sbyte factor) => _GlobalAlphaFactorbSUN(factor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GlobalAlphaFactordSUN(double factor) => _GlobalAlphaFactordSUN(factor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GlobalAlphaFactorfSUN(float factor) => _GlobalAlphaFactorfSUN(factor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GlobalAlphaFactoriSUN(int factor) => _GlobalAlphaFactoriSUN(factor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GlobalAlphaFactorsSUN(short factor) => _GlobalAlphaFactorsSUN(factor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GlobalAlphaFactorubSUN(byte factor) => _GlobalAlphaFactorubSUN(factor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GlobalAlphaFactoruiSUN(uint factor) => _GlobalAlphaFactoruiSUN(factor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GlobalAlphaFactorusSUN(ushort factor) => _GlobalAlphaFactorusSUN(factor); + + // --- + + /// + /// Certain aspects of GL behavior, when there is room for interpretation, can be controlled with hints. A hint is specified with two arguments. target is a symbolic constant indicating the behavior to be controlled, and mode is another symbolic constant indicating the desired behavior. The initial value for each target is GL_DONT_CARE. mode can be one of the following: + /// GL_FASTEST The most efficient option should be chosen. GL_NICEST The most correct, or highest quality, option should be chosen. GL_DONT_CARE No preference. + /// Though the implementation aspects that can be hinted are well defined, the interpretation of the hints depends on the implementation. The hint aspects that can be specified with target, along with suggested semantics, are as follows: + /// GL_FRAGMENT_SHADER_DERIVATIVE_HINT Indicates the accuracy of the derivative calculation for the GL shading language fragment processing built-in functions: dFdx, dFdy, and fwidth. GL_LINE_SMOOTH_HINT Indicates the sampling quality of antialiased lines. If a larger filter function is applied, hinting GL_NICEST can result in more pixel fragments being generated during rasterization. GL_POLYGON_SMOOTH_HINT Indicates the sampling quality of antialiased polygons. Hinting GL_NICEST can result in more pixel fragments being generated during rasterization, if a larger filter function is applied. GL_TEXTURE_COMPRESSION_HINT Indicates the quality and performance of the compressing texture images. Hinting GL_FASTEST indicates that texture images should be compressed as quickly as possible, while GL_NICEST indicates that texture images should be compressed with as little image quality loss as possible. GL_NICEST should be selected if the texture is to be retrieved by glGetCompressedTexImage for reuse. + /// + /// Specifies a symbolic constant indicating the behavior to be controlled. GL_LINE_SMOOTH_HINT, GL_POLYGON_SMOOTH_HINT, GL_TEXTURE_COMPRESSION_HINT, and GL_FRAGMENT_SHADER_DERIVATIVE_HINT are accepted. + /// Specifies a symbolic constant indicating the desired behavior. GL_FASTEST, GL_NICEST, and GL_DONT_CARE are accepted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Hint(HintTarget target, HintMode mode) => _Hint(target, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void HintPGI(HintTargetPGI target, int mode) => _HintPGI(target, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Histogram(HistogramTargetEXT target, int width, InternalFormat internalformat, bool sink) => _Histogram(target, width, internalformat, sink); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void HistogramEXT(HistogramTargetEXT target, int width, InternalFormat internalformat, bool sink) => _HistogramEXT(target, width, internalformat, sink); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void IglooInterfaceSGIX(int pname, IntPtr @params) => _IglooInterfaceSGIX(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImageTransformParameterfHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, float param) => _ImageTransformParameterfHP(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImageTransformParameterfvHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, float[] @params) => _ImageTransformParameterfvHP(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImageTransformParameterfvHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, void* @params) => _ImageTransformParameterfvHP_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImageTransformParameterfvHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, IntPtr @params) => _ImageTransformParameterfvHP_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImageTransformParameteriHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, int param) => _ImageTransformParameteriHP(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImageTransformParameterivHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, int[] @params) => _ImageTransformParameterivHP(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImageTransformParameterivHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, void* @params) => _ImageTransformParameterivHP_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImageTransformParameterivHP(ImageTransformTargetHP target, ImageTransformPNameHP pname, IntPtr @params) => _ImageTransformParameterivHP_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImportMemoryFdEXT(uint memory, UInt64 size, ExternalHandleType handleType, int fd) => _ImportMemoryFdEXT(memory, size, handleType, fd); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImportMemoryWin32HandleEXT(uint memory, UInt64 size, ExternalHandleType handleType, IntPtr handle) => _ImportMemoryWin32HandleEXT(memory, size, handleType, handle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImportMemoryWin32NameEXT(uint memory, UInt64 size, ExternalHandleType handleType, IntPtr name) => _ImportMemoryWin32NameEXT(memory, size, handleType, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImportSemaphoreFdEXT(uint semaphore, ExternalHandleType handleType, int fd) => _ImportSemaphoreFdEXT(semaphore, handleType, fd); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImportSemaphoreWin32HandleEXT(uint semaphore, ExternalHandleType handleType, IntPtr handle) => _ImportSemaphoreWin32HandleEXT(semaphore, handleType, handle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ImportSemaphoreWin32NameEXT(uint semaphore, ExternalHandleType handleType, IntPtr name) => _ImportSemaphoreWin32NameEXT(semaphore, handleType, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int ImportSyncEXT(int external_sync_type, IntPtr external_sync, int flags) => _ImportSyncEXT(external_sync_type, external_sync, flags); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void IndexFormatNV(int type, int stride) => _IndexFormatNV(type, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void IndexFuncEXT(IndexFunctionEXT func, float @ref) => _IndexFuncEXT(func, @ref); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void IndexMask(uint mask) => _IndexMask(mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void IndexMaterialEXT(MaterialFace face, IndexMaterialParameterEXT mode) => _IndexMaterialEXT(face, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void IndexPointer(IndexPointerType type, int stride, IntPtr pointer) => _IndexPointer(type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void IndexPointerEXT(IndexPointerType type, int stride, int count, IntPtr pointer) => _IndexPointerEXT(type, stride, count, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void IndexPointerListIBM(IndexPointerType type, int stride, IntPtr* pointer, int ptrstride) => _IndexPointerListIBM(type, stride, pointer, ptrstride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexd(double c) => _Indexd(c); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexdv(double[] c) => _Indexdv(c); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexdv(void* c) => _Indexdv_ptr(c); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexdv(IntPtr c) => _Indexdv_intptr(c); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexf(float c) => _Indexf(c); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexfv(float[] c) => _Indexfv(c); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexfv(void* c) => _Indexfv_ptr(c); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexfv(IntPtr c) => _Indexfv_intptr(c); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexi(int c) => _Indexi(c); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexiv(int[] c) => _Indexiv(c); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexiv(void* c) => _Indexiv_ptr(c); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexiv(IntPtr c) => _Indexiv_intptr(c); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexs(short c) => _Indexs(c); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexsv(short[] c) => _Indexsv(c); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexsv(void* c) => _Indexsv_ptr(c); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexsv(IntPtr c) => _Indexsv_intptr(c); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexub(byte c) => _Indexub(c); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexubv(byte[] c) => _Indexubv(c); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexubv(void* c) => _Indexubv_ptr(c); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Indexubv(IntPtr c) => _Indexubv_intptr(c); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void IndexxOES(float component) => _IndexxOES(component); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void IndexxvOES(float[] component) => _IndexxvOES(component); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void IndexxvOES(void* component) => _IndexxvOES_ptr(component); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void IndexxvOES(IntPtr component) => _IndexxvOES_intptr(component); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InitNames() => _InitNames(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InsertComponentEXT(uint res, uint src, uint num) => _InsertComponentEXT(res, src, num); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InsertEventMarkerEXT(int length, string marker) => _InsertEventMarkerEXT(length, marker); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InsertEventMarkerEXT(int length, void* marker) => _InsertEventMarkerEXT_ptr(length, marker); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InsertEventMarkerEXT(int length, IntPtr marker) => _InsertEventMarkerEXT_intptr(length, marker); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InstrumentsBufferSGIX(int size, int[] buffer) => _InstrumentsBufferSGIX(size, buffer); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InstrumentsBufferSGIX(int size, void* buffer) => _InstrumentsBufferSGIX_ptr(size, buffer); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InstrumentsBufferSGIX(int size, IntPtr buffer) => _InstrumentsBufferSGIX_intptr(size, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InterleavedArrays(InterleavedArrayFormat format, int stride, IntPtr pointer) => _InterleavedArrays(format, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InterpolatePathsNV(uint resultPath, uint pathA, uint pathB, float weight) => _InterpolatePathsNV(resultPath, pathA, pathB, weight); + + // --- + + /// + /// glInvalidateBufferData invalidates all of the content of the data store of a buffer object. After invalidation, the content of the buffer's data store becomes undefined. + /// + /// The name of a buffer object whose data store to invalidate. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateBufferData(uint buffer) => _InvalidateBufferData(buffer); + + // --- + + /// + /// glInvalidateBufferSubData invalidates all or part of the content of the data store of a buffer object. After invalidation, the content of the specified range of the buffer's data store becomes undefined. The start of the range is given by offset and its size is given by length, both measured in basic machine units. + /// + /// The name of a buffer object, a subrange of whose data store to invalidate. + /// The offset within the buffer's data store of the start of the range to be invalidated. + /// The length of the range within the buffer's data store to be invalidated. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateBufferSubData(uint buffer, IntPtr offset, IntPtr length) => _InvalidateBufferSubData(buffer, offset, length); + + // --- + + /// + /// glInvalidateFramebuffer and glInvalidateNamedFramebufferData invalidate the entire contents of a specified set of attachments of a framebuffer. + /// For glInvalidateFramebuffer, the framebuffer object is that bound to target. target must be GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_DRAW_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. Default framebuffers may also be invalidated if bound to target. + /// For glInvalidateNamedFramebufferData, framebuffer is the name of the framebuffer object. If framebuffer is zero, the default draw framebuffer is affected. + /// The set of attachments whose contents are to be invalidated are specified in the attachments array, which contains numAttachments elements. + /// If the specified framebuffer is a framebuffer object, each element of attachments must be one of GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENTGL_DEPTH_STENCIL_ATTACHMENT, or GL_COLOR_ATTACHMENTi, where i is between zero and the value of GL_MAX_FRAMEBUFFER_ATTACHMENTS minus one. + /// If the specified framebuffer is a default framebuffer, each element of attachments must be one of GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT, GL_BACK_RIGHT, GL_AUXi, GL_ACCUM, GL_COLOR, GL_DEPTH, or GL_STENCIL. GL_COLOR, is treated as GL_BACK_LEFT for a double-buffered context and GL_FRONT_LEFT for a single-buffered context. The other attachments identify the corresponding specific buffer. + /// The entire contents of each specified attachment become undefined after execution of glInvalidateFramebuffer or glInvalidateNamedFramebufferData. + /// If the framebuffer object is not complete, glInvalidateFramebuffer and glInvalidateNamedFramebufferData may be ignored. This is not an error. + /// + /// Specifies the target to which the framebuffer object is attached for glInvalidateFramebuffer. + /// Specifies the name of the framebuffer object for glInvalidateNamedFramebufferData. + /// Specifies the number of entries in the attachments array. + /// Specifies a pointer to an array identifying the attachments to be invalidated. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateFramebuffer(FramebufferTarget target, int numAttachments, InvalidateFramebufferAttachment[] attachments) => _InvalidateFramebuffer(target, numAttachments, attachments); + + /// + /// glInvalidateFramebuffer and glInvalidateNamedFramebufferData invalidate the entire contents of a specified set of attachments of a framebuffer. + /// For glInvalidateFramebuffer, the framebuffer object is that bound to target. target must be GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_DRAW_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. Default framebuffers may also be invalidated if bound to target. + /// For glInvalidateNamedFramebufferData, framebuffer is the name of the framebuffer object. If framebuffer is zero, the default draw framebuffer is affected. + /// The set of attachments whose contents are to be invalidated are specified in the attachments array, which contains numAttachments elements. + /// If the specified framebuffer is a framebuffer object, each element of attachments must be one of GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENTGL_DEPTH_STENCIL_ATTACHMENT, or GL_COLOR_ATTACHMENTi, where i is between zero and the value of GL_MAX_FRAMEBUFFER_ATTACHMENTS minus one. + /// If the specified framebuffer is a default framebuffer, each element of attachments must be one of GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT, GL_BACK_RIGHT, GL_AUXi, GL_ACCUM, GL_COLOR, GL_DEPTH, or GL_STENCIL. GL_COLOR, is treated as GL_BACK_LEFT for a double-buffered context and GL_FRONT_LEFT for a single-buffered context. The other attachments identify the corresponding specific buffer. + /// The entire contents of each specified attachment become undefined after execution of glInvalidateFramebuffer or glInvalidateNamedFramebufferData. + /// If the framebuffer object is not complete, glInvalidateFramebuffer and glInvalidateNamedFramebufferData may be ignored. This is not an error. + /// + /// Specifies the target to which the framebuffer object is attached for glInvalidateFramebuffer. + /// Specifies the name of the framebuffer object for glInvalidateNamedFramebufferData. + /// Specifies the number of entries in the attachments array. + /// Specifies a pointer to an array identifying the attachments to be invalidated. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateFramebuffer(FramebufferTarget target, int numAttachments, void* attachments) => _InvalidateFramebuffer_ptr(target, numAttachments, attachments); + + /// + /// glInvalidateFramebuffer and glInvalidateNamedFramebufferData invalidate the entire contents of a specified set of attachments of a framebuffer. + /// For glInvalidateFramebuffer, the framebuffer object is that bound to target. target must be GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_DRAW_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. Default framebuffers may also be invalidated if bound to target. + /// For glInvalidateNamedFramebufferData, framebuffer is the name of the framebuffer object. If framebuffer is zero, the default draw framebuffer is affected. + /// The set of attachments whose contents are to be invalidated are specified in the attachments array, which contains numAttachments elements. + /// If the specified framebuffer is a framebuffer object, each element of attachments must be one of GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENTGL_DEPTH_STENCIL_ATTACHMENT, or GL_COLOR_ATTACHMENTi, where i is between zero and the value of GL_MAX_FRAMEBUFFER_ATTACHMENTS minus one. + /// If the specified framebuffer is a default framebuffer, each element of attachments must be one of GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT, GL_BACK_RIGHT, GL_AUXi, GL_ACCUM, GL_COLOR, GL_DEPTH, or GL_STENCIL. GL_COLOR, is treated as GL_BACK_LEFT for a double-buffered context and GL_FRONT_LEFT for a single-buffered context. The other attachments identify the corresponding specific buffer. + /// The entire contents of each specified attachment become undefined after execution of glInvalidateFramebuffer or glInvalidateNamedFramebufferData. + /// If the framebuffer object is not complete, glInvalidateFramebuffer and glInvalidateNamedFramebufferData may be ignored. This is not an error. + /// + /// Specifies the target to which the framebuffer object is attached for glInvalidateFramebuffer. + /// Specifies the name of the framebuffer object for glInvalidateNamedFramebufferData. + /// Specifies the number of entries in the attachments array. + /// Specifies a pointer to an array identifying the attachments to be invalidated. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateFramebuffer(FramebufferTarget target, int numAttachments, IntPtr attachments) => _InvalidateFramebuffer_intptr(target, numAttachments, attachments); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateNamedFramebufferData(uint framebuffer, int numAttachments, FramebufferAttachment[] attachments) => _InvalidateNamedFramebufferData(framebuffer, numAttachments, attachments); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateNamedFramebufferData(uint framebuffer, int numAttachments, void* attachments) => _InvalidateNamedFramebufferData_ptr(framebuffer, numAttachments, attachments); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateNamedFramebufferData(uint framebuffer, int numAttachments, IntPtr attachments) => _InvalidateNamedFramebufferData_intptr(framebuffer, numAttachments, attachments); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateNamedFramebufferSubData(uint framebuffer, int numAttachments, FramebufferAttachment[] attachments, int x, int y, int width, int height) => _InvalidateNamedFramebufferSubData(framebuffer, numAttachments, attachments, x, y, width, height); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateNamedFramebufferSubData(uint framebuffer, int numAttachments, void* attachments, int x, int y, int width, int height) => _InvalidateNamedFramebufferSubData_ptr(framebuffer, numAttachments, attachments, x, y, width, height); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateNamedFramebufferSubData(uint framebuffer, int numAttachments, IntPtr attachments, int x, int y, int width, int height) => _InvalidateNamedFramebufferSubData_intptr(framebuffer, numAttachments, attachments, x, y, width, height); + + // --- + + /// + /// glInvalidateSubFramebuffer and glInvalidateNamedFramebufferSubData invalidate the contents of a specified region of a specified set of attachments of a framebuffer. + /// For glInvalidateSubFramebuffer, the framebuffer object is that bound to target, which must be one of GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_DRAW_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. Default framebuffers may also be invalidated if bound to target. + /// For glInvalidateNamedFramebufferSubData, framebuffer is the name of the framebuffer object. If framebuffer is zero, the default draw framebuffer is affected. + /// The set of attachments of which a region is to be invalidated are specified in the attachments array, which contains numAttachments elements. + /// If the specified framebuffer is a framebuffer object, each element of attachments must be one of GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENTGL_DEPTH_STENCIL_ATTACHMENT, or GL_COLOR_ATTACHMENTi, where i is between zero and the value of GL_MAX_FRAMEBUFFER_ATTACHMENTS minus one. + /// If the specified framebuffer is a default framebuffer, each element of attachments must be one of GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT, GL_BACK_RIGHT, GL_AUXi, GL_ACCUM, GL_COLOR, GL_DEPTH, or GL_STENCIL. GL_COLOR, is treated as GL_BACK_LEFT for a double-buffered context and GL_FRONT_LEFT for a single-buffered context. The other attachments identify the corresponding specific buffer. + /// The contents of the specified region of each specified attachment become undefined after execution of glInvalidateSubFramebuffer or glInvalidateNamedFramebufferSubData. The region to be invalidated is specified by x, y, width and height where x and y give the offset from the origin (with lower-left corner at $(0,0)$) and width and height are the width and height, respectively, of the region. Any pixels lying outside of the window allocated to the current GL context (for the default framebuffer), or outside of the attachments of the framebuffer object, are ignored. If the framebuffer object is not complete, these commands may be ignored. + /// If the framebuffer object is not complete, glInvalidateSubFramebuffer and glInvalidateNamedFramebufferSubData may be ignored. This is not an error. + /// + /// Specifies the target to which the framebuffer object is attached for glInvalidateSubFramebuffer. + /// Specifies the name of the framebuffer object for glInvalidateNamedFramebufferSubData. + /// Specifies the number of entries in the attachments array. + /// Specifies a pointer to an array identifying the attachments to be invalidated. + /// Specifies the X offset of the region to be invalidated. + /// Specifies the Y offset of the region to be invalidated. + /// Specifies the width of the region to be invalidated. + /// Specifies the height of the region to be invalidated. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateSubFramebuffer(FramebufferTarget target, int numAttachments, InvalidateFramebufferAttachment[] attachments, int x, int y, int width, int height) => _InvalidateSubFramebuffer(target, numAttachments, attachments, x, y, width, height); + + /// + /// glInvalidateSubFramebuffer and glInvalidateNamedFramebufferSubData invalidate the contents of a specified region of a specified set of attachments of a framebuffer. + /// For glInvalidateSubFramebuffer, the framebuffer object is that bound to target, which must be one of GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_DRAW_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. Default framebuffers may also be invalidated if bound to target. + /// For glInvalidateNamedFramebufferSubData, framebuffer is the name of the framebuffer object. If framebuffer is zero, the default draw framebuffer is affected. + /// The set of attachments of which a region is to be invalidated are specified in the attachments array, which contains numAttachments elements. + /// If the specified framebuffer is a framebuffer object, each element of attachments must be one of GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENTGL_DEPTH_STENCIL_ATTACHMENT, or GL_COLOR_ATTACHMENTi, where i is between zero and the value of GL_MAX_FRAMEBUFFER_ATTACHMENTS minus one. + /// If the specified framebuffer is a default framebuffer, each element of attachments must be one of GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT, GL_BACK_RIGHT, GL_AUXi, GL_ACCUM, GL_COLOR, GL_DEPTH, or GL_STENCIL. GL_COLOR, is treated as GL_BACK_LEFT for a double-buffered context and GL_FRONT_LEFT for a single-buffered context. The other attachments identify the corresponding specific buffer. + /// The contents of the specified region of each specified attachment become undefined after execution of glInvalidateSubFramebuffer or glInvalidateNamedFramebufferSubData. The region to be invalidated is specified by x, y, width and height where x and y give the offset from the origin (with lower-left corner at $(0,0)$) and width and height are the width and height, respectively, of the region. Any pixels lying outside of the window allocated to the current GL context (for the default framebuffer), or outside of the attachments of the framebuffer object, are ignored. If the framebuffer object is not complete, these commands may be ignored. + /// If the framebuffer object is not complete, glInvalidateSubFramebuffer and glInvalidateNamedFramebufferSubData may be ignored. This is not an error. + /// + /// Specifies the target to which the framebuffer object is attached for glInvalidateSubFramebuffer. + /// Specifies the name of the framebuffer object for glInvalidateNamedFramebufferSubData. + /// Specifies the number of entries in the attachments array. + /// Specifies a pointer to an array identifying the attachments to be invalidated. + /// Specifies the X offset of the region to be invalidated. + /// Specifies the Y offset of the region to be invalidated. + /// Specifies the width of the region to be invalidated. + /// Specifies the height of the region to be invalidated. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateSubFramebuffer(FramebufferTarget target, int numAttachments, void* attachments, int x, int y, int width, int height) => _InvalidateSubFramebuffer_ptr(target, numAttachments, attachments, x, y, width, height); + + /// + /// glInvalidateSubFramebuffer and glInvalidateNamedFramebufferSubData invalidate the contents of a specified region of a specified set of attachments of a framebuffer. + /// For glInvalidateSubFramebuffer, the framebuffer object is that bound to target, which must be one of GL_FRAMEBUFFER, GL_READ_FRAMEBUFFER or GL_DRAW_FRAMEBUFFER. GL_FRAMEBUFFER is equivalent to GL_DRAW_FRAMEBUFFER. Default framebuffers may also be invalidated if bound to target. + /// For glInvalidateNamedFramebufferSubData, framebuffer is the name of the framebuffer object. If framebuffer is zero, the default draw framebuffer is affected. + /// The set of attachments of which a region is to be invalidated are specified in the attachments array, which contains numAttachments elements. + /// If the specified framebuffer is a framebuffer object, each element of attachments must be one of GL_DEPTH_ATTACHMENT, GL_STENCIL_ATTACHMENTGL_DEPTH_STENCIL_ATTACHMENT, or GL_COLOR_ATTACHMENTi, where i is between zero and the value of GL_MAX_FRAMEBUFFER_ATTACHMENTS minus one. + /// If the specified framebuffer is a default framebuffer, each element of attachments must be one of GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT, GL_BACK_RIGHT, GL_AUXi, GL_ACCUM, GL_COLOR, GL_DEPTH, or GL_STENCIL. GL_COLOR, is treated as GL_BACK_LEFT for a double-buffered context and GL_FRONT_LEFT for a single-buffered context. The other attachments identify the corresponding specific buffer. + /// The contents of the specified region of each specified attachment become undefined after execution of glInvalidateSubFramebuffer or glInvalidateNamedFramebufferSubData. The region to be invalidated is specified by x, y, width and height where x and y give the offset from the origin (with lower-left corner at $(0,0)$) and width and height are the width and height, respectively, of the region. Any pixels lying outside of the window allocated to the current GL context (for the default framebuffer), or outside of the attachments of the framebuffer object, are ignored. If the framebuffer object is not complete, these commands may be ignored. + /// If the framebuffer object is not complete, glInvalidateSubFramebuffer and glInvalidateNamedFramebufferSubData may be ignored. This is not an error. + /// + /// Specifies the target to which the framebuffer object is attached for glInvalidateSubFramebuffer. + /// Specifies the name of the framebuffer object for glInvalidateNamedFramebufferSubData. + /// Specifies the number of entries in the attachments array. + /// Specifies a pointer to an array identifying the attachments to be invalidated. + /// Specifies the X offset of the region to be invalidated. + /// Specifies the Y offset of the region to be invalidated. + /// Specifies the width of the region to be invalidated. + /// Specifies the height of the region to be invalidated. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateSubFramebuffer(FramebufferTarget target, int numAttachments, IntPtr attachments, int x, int y, int width, int height) => _InvalidateSubFramebuffer_intptr(target, numAttachments, attachments, x, y, width, height); + + // --- + + /// + /// glInvalidateTexSubImage invalidates all of a texture image. texture and level indicated which texture image is being invalidated. After this command, data in the texture image has undefined values. + /// level must be greater than or equal to zero and be less than the base 2 logarithm of the maximum texture width, height, or depth. + /// For textures of targets GL_TEXTURE_RECTANGLE, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE, or GL_TEXTURE_2D_MULTISAMPLE_ARRAY, level must be zero. + /// + /// The name of a texture object to invalidate. + /// The level of detail of the texture object to invalidate. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateTexImage(uint texture, int level) => _InvalidateTexImage(texture, level); + + // --- + + /// + /// glInvalidateTexSubImage invalidates all or part of a texture image. texture and level indicated which texture image is being invalidated. After this command, data in that subregion have undefined values. xoffset, yoffset, zoffset, width, height, and depth are interpreted as they are in glTexSubImage3D. For texture targets that don't have certain dimensions, this command treats those dimensions as having a size of 1. For example, to invalidate a portion of a two- dimensional texture, the application would use zoffset equal to zero and depth equal to one. Cube map textures are treated as an array of six slices in the z-dimension, where a value of zoffset is interpreted as specifying face GL_TEXTURE_CUBE_MAP_POSITIVE_X + zoffset. + /// level must be greater than or equal to zero and be less than the base 2 logarithm of the maximum texture width, height, or depth. xoffset, yoffset and zoffset must be greater than or equal to zero and be less than the width, height or depth of the image, respectively. Furthermore, xoffset + width, yoffset + height, and zoffset + depth must be less than or equal to the width, height or depth of the image, respectively. + /// For textures of targets GL_TEXTURE_RECTANGLE, GL_TEXTURE_BUFFER, GL_TEXTURE_2D_MULTISAMPLE, or GL_TEXTURE_2D_MULTISAMPLE_ARRAY, level must be zero. + /// + /// The name of a texture object a subregion of which to invalidate. + /// The level of detail of the texture object within which the region resides. + /// The X offset of the region to be invalidated. + /// The Y offset of the region to be invalidated. + /// The Z offset of the region to be invalidated. + /// The width of the region to be invalidated. + /// The height of the region to be invalidated. + /// The depth of the region to be invalidated. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void InvalidateTexSubImage(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth) => _InvalidateTexSubImage(texture, level, xoffset, yoffset, zoffset, width, height, depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsAsyncMarkerSGIX(uint marker) => _IsAsyncMarkerSGIX(marker); + + // --- + + /// + /// glIsBuffer returns GL_TRUE if buffer is currently the name of a buffer object. If buffer is zero, or is a non-zero value that is not currently the name of a buffer object, or if an error occurs, glIsBuffer returns GL_FALSE. + /// A name returned by glGenBuffers, but not yet associated with a buffer object by calling glBindBuffer, is not the name of a buffer object. + /// + /// Specifies a value that may be the name of a buffer object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsBuffer(uint buffer) => _IsBuffer(buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsBufferARB(uint buffer) => _IsBufferARB(buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsBufferResidentNV(int target) => _IsBufferResidentNV(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsCommandListNV(uint list) => _IsCommandListNV(list); + + // --- + + /// + /// glIsEnabled returns GL_TRUE if cap is an enabled capability and returns GL_FALSE otherwise. Boolean states that are indexed may be tested with glIsEnabledi. For glIsEnabledi, index specifies the index of the capability to test. index must be between zero and the count of indexed capabilities for cap. Initially all capabilities except GL_DITHER are disabled; GL_DITHER is initially enabled. + /// The following capabilities are accepted for cap: + /// Constant See GL_BLENDglBlendFunc, glLogicOpGL_CLIP_DISTANCEiglEnableGL_COLOR_LOGIC_OPglLogicOpGL_CULL_FACEglCullFaceGL_DEPTH_CLAMPglEnableGL_DEBUG_OUTPUTglEnableGL_DEBUG_OUTPUT_SYNCHRONOUSglEnableGL_DEPTH_TESTglDepthFunc, glDepthRangeGL_DITHERglEnableGL_FRAMEBUFFER_SRGBglEnableGL_LINE_SMOOTHglLineWidthGL_MULTISAMPLEglSampleCoverageGL_POLYGON_SMOOTHglPolygonModeGL_POLYGON_OFFSET_FILLglPolygonOffsetGL_POLYGON_OFFSET_LINEglPolygonOffsetGL_POLYGON_OFFSET_POINTglPolygonOffsetGL_PROGRAM_POINT_SIZEglEnableGL_PRIMITIVE_RESTARTglEnable, glPrimitiveRestartIndexGL_SAMPLE_ALPHA_TO_COVERAGEglSampleCoverageGL_SAMPLE_ALPHA_TO_ONEglSampleCoverageGL_SAMPLE_COVERAGEglSampleCoverageGL_SAMPLE_MASKglEnableGL_SCISSOR_TESTglScissorGL_STENCIL_TESTglStencilFunc, glStencilOpGL_TEXTURE_CUBE_MAP_SEAMLESSglEnable + /// + /// Specifies a symbolic constant indicating a GL capability. + /// Specifies the index of the capability. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsEnabled(EnableCap cap) => _IsEnabled(cap); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsEnabledIndexedEXT(EnableCap target, uint index) => _IsEnabledIndexedEXT(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsEnabledi(EnableCap target, uint index) => _IsEnabledi(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsEnablediEXT(EnableCap target, uint index) => _IsEnablediEXT(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsEnablediNV(EnableCap target, uint index) => _IsEnablediNV(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsEnablediOES(EnableCap target, uint index) => _IsEnablediOES(target, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsFenceAPPLE(uint fence) => _IsFenceAPPLE(fence); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsFenceNV(uint fence) => _IsFenceNV(fence); + + // --- + + /// + /// glIsFramebuffer returns GL_TRUE if framebuffer is currently the name of a framebuffer object. If framebuffer is zero, or if framebuffer is not the name of a framebuffer object, or if an error occurs, glIsFramebuffer returns GL_FALSE. If framebuffer is a name returned by glGenFramebuffers, by that has not yet been bound through a call to glBindFramebuffer, then the name is not a framebuffer object and glIsFramebuffer returns GL_FALSE. + /// + /// Specifies a value that may be the name of a framebuffer object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsFramebuffer(uint framebuffer) => _IsFramebuffer(framebuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsFramebufferEXT(uint framebuffer) => _IsFramebufferEXT(framebuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsFramebufferOES(uint framebuffer) => _IsFramebufferOES(framebuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsImageHandleResidentARB(UInt64 handle) => _IsImageHandleResidentARB(handle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsImageHandleResidentNV(UInt64 handle) => _IsImageHandleResidentNV(handle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsList(uint list) => _IsList(list); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsMemoryObjectEXT(uint memoryObject) => _IsMemoryObjectEXT(memoryObject); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsNameAMD(int identifier, uint name) => _IsNameAMD(identifier, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsNamedBufferResidentNV(uint buffer) => _IsNamedBufferResidentNV(buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsNamedStringARB(int namelen, string name) => _IsNamedStringARB(namelen, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsNamedStringARB(int namelen, void* name) => _IsNamedStringARB_ptr(namelen, name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsNamedStringARB(int namelen, IntPtr name) => _IsNamedStringARB_intptr(namelen, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsObjectBufferATI(uint buffer) => _IsObjectBufferATI(buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsOcclusionQueryNV(uint id) => _IsOcclusionQueryNV(id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsPathNV(uint path) => _IsPathNV(path); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsPointInFillPathNV(uint path, uint mask, float x, float y) => _IsPointInFillPathNV(path, mask, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsPointInStrokePathNV(uint path, float x, float y) => _IsPointInStrokePathNV(path, x, y); + + // --- + + /// + /// glIsProgram returns GL_TRUE if program is the name of a program object previously created with glCreateProgram and not yet deleted with glDeleteProgram. If program is zero or a non-zero value that is not the name of a program object, or if an error occurs, glIsProgram returns GL_FALSE. + /// + /// Specifies a potential program object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsProgram(uint program) => _IsProgram(program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsProgramARB(uint program) => _IsProgramARB(program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsProgramNV(uint id) => _IsProgramNV(id); + + // --- + + /// + /// glIsProgramPipeline returns GL_TRUE if pipeline is currently the name of a program pipeline object. If pipeline is zero, or if pipeline is not the name of a program pipeline object, or if an error occurs, glIsProgramPipeline returns GL_FALSE. If pipeline is a name returned by glGenProgramPipelines, but that has not yet been bound through a call to glBindProgramPipeline, then the name is not a program pipeline object and glIsProgramPipeline returns GL_FALSE. + /// + /// Specifies a value that may be the name of a program pipeline object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsProgramPipeline(uint pipeline) => _IsProgramPipeline(pipeline); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsProgramPipelineEXT(uint pipeline) => _IsProgramPipelineEXT(pipeline); + + // --- + + /// + /// glIsQuery returns GL_TRUE if id is currently the name of a query object. If id is zero, or is a non-zero value that is not currently the name of a query object, or if an error occurs, glIsQuery returns GL_FALSE. + /// A name returned by glGenQueries, but not yet associated with a query object by calling glBeginQuery, is not the name of a query object. + /// + /// Specifies a value that may be the name of a query object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsQuery(uint id) => _IsQuery(id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsQueryARB(uint id) => _IsQueryARB(id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsQueryEXT(uint id) => _IsQueryEXT(id); + + // --- + + /// + /// glIsRenderbuffer returns GL_TRUE if renderbuffer is currently the name of a renderbuffer object. If renderbuffer is zero, or if renderbuffer is not the name of a renderbuffer object, or if an error occurs, glIsRenderbuffer returns GL_FALSE. If renderbuffer is a name returned by glGenRenderbuffers, by that has not yet been bound through a call to glBindRenderbuffer or glFramebufferRenderbuffer, then the name is not a renderbuffer object and glIsRenderbuffer returns GL_FALSE. + /// + /// Specifies a value that may be the name of a renderbuffer object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsRenderbuffer(uint renderbuffer) => _IsRenderbuffer(renderbuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsRenderbufferEXT(uint renderbuffer) => _IsRenderbufferEXT(renderbuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsRenderbufferOES(uint renderbuffer) => _IsRenderbufferOES(renderbuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsSemaphoreEXT(uint semaphore) => _IsSemaphoreEXT(semaphore); + + // --- + + /// + /// glIsSampler returns GL_TRUE if id is currently the name of a sampler object. If id is zero, or is a non-zero value that is not currently the name of a sampler object, or if an error occurs, glIsSampler returns GL_FALSE. + /// A name returned by glGenSamplers, is the name of a sampler object. + /// + /// Specifies a value that may be the name of a sampler object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsSampler(uint sampler) => _IsSampler(sampler); + + // --- + + /// + /// glIsShader returns GL_TRUE if shader is the name of a shader object previously created with glCreateShader and not yet deleted with glDeleteShader. If shader is zero or a non-zero value that is not the name of a shader object, or if an error occurs, glIsShader returns GL_FALSE. + /// + /// Specifies a potential shader object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsShader(uint shader) => _IsShader(shader); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsStateNV(uint state) => _IsStateNV(state); + + // --- + + /// + /// glIsSync returns GL_TRUE if sync is currently the name of a sync object. If sync is not the name of a sync object, or if an error occurs, glIsSync returns GL_FALSE. Note that zero is not the name of a sync object. + /// + /// Specifies a value that may be the name of a sync object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsSync(int sync) => _IsSync(sync); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsSyncAPPLE(int sync) => _IsSyncAPPLE(sync); + + // --- + + /// + /// glIsTexture returns GL_TRUE if texture is currently the name of a texture. If texture is zero, or is a non-zero value that is not currently the name of a texture, or if an error occurs, glIsTexture returns GL_FALSE. + /// A name returned by glGenTextures, but not yet associated with a texture by calling glBindTexture, is not the name of a texture. + /// + /// Specifies a value that may be the name of a texture. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsTexture(uint texture) => _IsTexture(texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsTextureEXT(uint texture) => _IsTextureEXT(texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsTextureHandleResidentARB(UInt64 handle) => _IsTextureHandleResidentARB(handle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsTextureHandleResidentNV(UInt64 handle) => _IsTextureHandleResidentNV(handle); + + // --- + + /// + /// glIsTransformFeedback returns GL_TRUE if id is currently the name of a transform feedback object. If id is zero, or if id is not the name of a transform feedback object, or if an error occurs, glIsTransformFeedback returns GL_FALSE. If id is a name returned by glGenTransformFeedbacks, but that has not yet been bound through a call to glBindTransformFeedback, then the name is not a transform feedback object and glIsTransformFeedback returns GL_FALSE. + /// + /// Specifies a value that may be the name of a transform feedback object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsTransformFeedback(uint id) => _IsTransformFeedback(id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsTransformFeedbackNV(uint id) => _IsTransformFeedbackNV(id); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsVariantEnabledEXT(uint id, VariantCapEXT cap) => _IsVariantEnabledEXT(id, cap); + + // --- + + /// + /// glIsVertexArray returns GL_TRUE if array is currently the name of a vertex array object. If array is zero, or if array is not the name of a vertex array object, or if an error occurs, glIsVertexArray returns GL_FALSE. If array is a name returned by glGenVertexArrays, by that has not yet been bound through a call to glBindVertexArray, then the name is not a vertex array object and glIsVertexArray returns GL_FALSE. + /// + /// Specifies a value that may be the name of a vertex array object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsVertexArray(uint array) => _IsVertexArray(array); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsVertexArrayAPPLE(uint array) => _IsVertexArrayAPPLE(array); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsVertexArrayOES(uint array) => _IsVertexArrayOES(array); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool IsVertexAttribEnabledAPPLE(uint index, int pname) => _IsVertexAttribEnabledAPPLE(index, pname); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LGPUCopyImageSubDataNVX(uint sourceGpu, int destinationGpuMask, uint srcName, int srcTarget, int srcLevel, int srcX, int srxY, int srcZ, uint dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int width, int height, int depth) => _LGPUCopyImageSubDataNVX(sourceGpu, destinationGpuMask, srcName, srcTarget, srcLevel, srcX, srxY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, width, height, depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LGPUInterlockNVX() => _LGPUInterlockNVX(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LGPUNamedBufferSubDataNVX(int gpuMask, uint buffer, IntPtr offset, IntPtr size, IntPtr data) => _LGPUNamedBufferSubDataNVX(gpuMask, buffer, offset, size, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LabelObjectEXT(int type, uint @object, int length, string label) => _LabelObjectEXT(type, @object, length, label); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LabelObjectEXT(int type, uint @object, int length, void* label) => _LabelObjectEXT_ptr(type, @object, length, label); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LabelObjectEXT(int type, uint @object, int length, IntPtr label) => _LabelObjectEXT_intptr(type, @object, length, label); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightEnviSGIX(LightEnvParameterSGIX pname, int param) => _LightEnviSGIX(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModelf(LightModelParameter pname, float param) => _LightModelf(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModelfv(LightModelParameter pname, float[] @params) => _LightModelfv(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModelfv(LightModelParameter pname, void* @params) => _LightModelfv_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModelfv(LightModelParameter pname, IntPtr @params) => _LightModelfv_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModeli(LightModelParameter pname, int param) => _LightModeli(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModeliv(LightModelParameter pname, int[] @params) => _LightModeliv(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModeliv(LightModelParameter pname, void* @params) => _LightModeliv_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModeliv(LightModelParameter pname, IntPtr @params) => _LightModeliv_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModelx(LightModelParameter pname, float param) => _LightModelx(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModelxOES(LightModelParameter pname, float param) => _LightModelxOES(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModelxv(LightModelParameter pname, float[] param) => _LightModelxv(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModelxv(LightModelParameter pname, void* param) => _LightModelxv_ptr(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModelxv(LightModelParameter pname, IntPtr param) => _LightModelxv_intptr(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModelxvOES(LightModelParameter pname, float[] param) => _LightModelxvOES(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModelxvOES(LightModelParameter pname, void* param) => _LightModelxvOES_ptr(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightModelxvOES(LightModelParameter pname, IntPtr param) => _LightModelxvOES_intptr(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Lightf(LightName light, LightParameter pname, float param) => _Lightf(light, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Lightfv(LightName light, LightParameter pname, float[] @params) => _Lightfv(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Lightfv(LightName light, LightParameter pname, void* @params) => _Lightfv_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Lightfv(LightName light, LightParameter pname, IntPtr @params) => _Lightfv_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Lighti(LightName light, LightParameter pname, int param) => _Lighti(light, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Lightiv(LightName light, LightParameter pname, int[] @params) => _Lightiv(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Lightiv(LightName light, LightParameter pname, void* @params) => _Lightiv_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Lightiv(LightName light, LightParameter pname, IntPtr @params) => _Lightiv_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Lightx(LightName light, LightParameter pname, float param) => _Lightx(light, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightxOES(LightName light, LightParameter pname, float param) => _LightxOES(light, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Lightxv(LightName light, LightParameter pname, float[] @params) => _Lightxv(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Lightxv(LightName light, LightParameter pname, void* @params) => _Lightxv_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Lightxv(LightName light, LightParameter pname, IntPtr @params) => _Lightxv_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightxvOES(LightName light, LightParameter pname, float[] @params) => _LightxvOES(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightxvOES(LightName light, LightParameter pname, void* @params) => _LightxvOES_ptr(light, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LightxvOES(LightName light, LightParameter pname, IntPtr @params) => _LightxvOES_intptr(light, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LineStipple(int factor, ushort pattern) => _LineStipple(factor, pattern); + + // --- + + /// + /// glLineWidth specifies the rasterized width of both aliased and antialiased lines. Using a line width other than 1 has different effects, depending on whether line antialiasing is enabled. To enable and disable line antialiasing, call glEnable and glDisable with argument GL_LINE_SMOOTH. Line antialiasing is initially disabled. + /// If line antialiasing is disabled, the actual width is determined by rounding the supplied width to the nearest integer. (If the rounding results in the value 0, it is as if the line width were 1.) If , i pixels are filled in each column that is rasterized, where i is the rounded value of width. Otherwise, i pixels are filled in each row that is rasterized. + /// If antialiasing is enabled, line rasterization produces a fragment for each pixel square that intersects the region lying within the rectangle having width equal to the current line width, length equal to the actual length of the line, and centered on the mathematical line segment. The coverage value for each fragment is the window coordinate area of the intersection of the rectangular region with the corresponding pixel square. This value is saved and used in the final rasterization step. + /// Not all widths can be supported when line antialiasing is enabled. If an unsupported width is requested, the nearest supported width is used. Only width 1 is guaranteed to be supported; others depend on the implementation. Likewise, there is a range for aliased line widths as well. To query the range of supported widths and the size difference between supported widths within the range, call glGet with arguments GL_ALIASED_LINE_WIDTH_RANGE, GL_SMOOTH_LINE_WIDTH_RANGE, and GL_SMOOTH_LINE_WIDTH_GRANULARITY. + /// + /// Specifies the width of rasterized lines. The initial value is 1. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LineWidth(float width) => _LineWidth(width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LineWidthx(float width) => _LineWidthx(width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LineWidthxOES(float width) => _LineWidthxOES(width); + + // --- + + /// + /// glLinkProgram links the program object specified by program. If any shader objects of type GL_VERTEX_SHADER are attached to program, they will be used to create an executable that will run on the programmable vertex processor. If any shader objects of type GL_GEOMETRY_SHADER are attached to program, they will be used to create an executable that will run on the programmable geometry processor. If any shader objects of type GL_FRAGMENT_SHADER are attached to program, they will be used to create an executable that will run on the programmable fragment processor. + /// The status of the link operation will be stored as part of the program object's state. This value will be set to GL_TRUE if the program object was linked without errors and is ready for use, and GL_FALSE otherwise. It can be queried by calling glGetProgram with arguments program and GL_LINK_STATUS. + /// As a result of a successful link operation, all active user-defined uniform variables belonging to program will be initialized to 0, and each of the program object's active uniform variables will be assigned a location that can be queried by calling glGetUniformLocation. Also, any active user-defined attribute variables that have not been bound to a generic vertex attribute index will be bound to one at this time. + /// Linking of a program object can fail for a number of reasons as specified in the OpenGL Shading Language Specification. The following lists some of the conditions that will cause a link error. + /// The number of active attribute variables supported by the implementation has been exceeded.The storage limit for uniform variables has been exceeded.The number of active uniform variables supported by the implementation has been exceeded.The main function is missing for the vertex, geometry or fragment shader.A varying variable actually used in the fragment shader is not declared in the same way (or is not declared at all) in the vertex shader, or geometry shader if present.A reference to a function or variable name is unresolved.A shared global is declared with two different types or two different initial values.One or more of the attached shader objects has not been successfully compiled.Binding a generic attribute matrix caused some rows of the matrix to fall outside the allowed maximum of GL_MAX_VERTEX_ATTRIBS.Not enough contiguous vertex attribute slots could be found to bind attribute matrices.The program object contains objects to form a fragment shader but does not contain objects to form a vertex shader.The program object contains objects to form a geometry shader but does not contain objects to form a vertex shader.The program object contains objects to form a geometry shader and the input primitive type, output primitive type, or maximum output vertex count is not specified in any compiled geometry shader object.The program object contains objects to form a geometry shader and the input primitive type, output primitive type, or maximum output vertex count is specified differently in multiple geometry shader objects.The number of active outputs in the fragment shader is greater than the value of GL_MAX_DRAW_BUFFERS.The program has an active output assigned to a location greater than or equal to the value of GL_MAX_DUAL_SOURCE_DRAW_BUFFERS and has an active output assigned an index greater than or equal to one.More than one varying out variable is bound to the same number and index.The explicit binding assigments do not leave enough space for the linker to automatically assign a location for a varying out array, which requires multiple contiguous locations.The count specified by glTransformFeedbackVaryings is non-zero, but the program object has no vertex or geometry shader.Any variable name specified to glTransformFeedbackVaryings in the varyings array is not declared as an output in the vertex shader (or the geometry shader, if active).Any two entries in the varyings array given glTransformFeedbackVaryings specify the same varying variable.The total number of components to capture in any transform feedback varying variable is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS and the buffer mode is GL_SEPARATE_ATTRIBS. + /// When a program object has been successfully linked, the program object can be made part of current state by calling glUseProgram. Whether or not the link operation was successful, the program object's information log will be overwritten. The information log can be retrieved by calling glGetProgramInfoLog. + /// glLinkProgram will also install the generated executables as part of the current rendering state if the link operation was successful and the specified program object is already currently in use as a result of a previous call to glUseProgram. If the program object currently in use is relinked unsuccessfully, its link status will be set to GL_FALSE , but the executables and associated state will remain part of the current state until a subsequent call to glUseProgram removes it from use. After it is removed from use, it cannot be made part of current state until it has been successfully relinked. + /// If program contains shader objects of type GL_VERTEX_SHADER, and optionally of type GL_GEOMETRY_SHADER, but does not contain shader objects of type GL_FRAGMENT_SHADER, the vertex shader executable will be installed on the programmable vertex processor, the geometry shader executable, if present, will be installed on the programmable geometry processor, but no executable will be installed on the fragment processor. The results of rasterizing primitives with such a program will be undefined. + /// The program object's information log is updated and the program is generated at the time of the link operation. After the link operation, applications are free to modify attached shader objects, compile attached shader objects, detach shader objects, delete shader objects, and attach additional shader objects. None of these operations affects the information log or the program that is part of the program object. + /// + /// Specifies the handle of the program object to be linked. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LinkProgram(uint program) => _LinkProgram(program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LinkProgramARB(int programObj) => _LinkProgramARB(programObj); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ListBase(uint @base) => _ListBase(@base); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ListDrawCommandsStatesClientNV(uint list, uint segment, IntPtr* indirects, int[] sizes, uint[] states, uint[] fbos, uint count) => _ListDrawCommandsStatesClientNV(list, segment, indirects, sizes, states, fbos, count); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ListDrawCommandsStatesClientNV(uint list, uint segment, IntPtr* indirects, void* sizes, void* states, void* fbos, uint count) => _ListDrawCommandsStatesClientNV_ptr(list, segment, indirects, sizes, states, fbos, count); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ListDrawCommandsStatesClientNV(uint list, uint segment, IntPtr* indirects, IntPtr sizes, IntPtr states, IntPtr fbos, uint count) => _ListDrawCommandsStatesClientNV_intptr(list, segment, indirects, sizes, states, fbos, count); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ListParameterfSGIX(uint list, ListParameterName pname, float param) => _ListParameterfSGIX(list, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ListParameterfvSGIX(uint list, ListParameterName pname, float[] @params) => _ListParameterfvSGIX(list, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ListParameterfvSGIX(uint list, ListParameterName pname, void* @params) => _ListParameterfvSGIX_ptr(list, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ListParameterfvSGIX(uint list, ListParameterName pname, IntPtr @params) => _ListParameterfvSGIX_intptr(list, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ListParameteriSGIX(uint list, ListParameterName pname, int param) => _ListParameteriSGIX(list, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ListParameterivSGIX(uint list, ListParameterName pname, int[] @params) => _ListParameterivSGIX(list, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ListParameterivSGIX(uint list, ListParameterName pname, void* @params) => _ListParameterivSGIX_ptr(list, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ListParameterivSGIX(uint list, ListParameterName pname, IntPtr @params) => _ListParameterivSGIX_intptr(list, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadIdentity() => _LoadIdentity(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadIdentityDeformationMapSGIX(int mask) => _LoadIdentityDeformationMapSGIX(mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadMatrixd(double[] m) => _LoadMatrixd(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadMatrixd(void* m) => _LoadMatrixd_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadMatrixd(IntPtr m) => _LoadMatrixd_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadMatrixf(float[] m) => _LoadMatrixf(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadMatrixf(void* m) => _LoadMatrixf_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadMatrixf(IntPtr m) => _LoadMatrixf_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadMatrixx(float[] m) => _LoadMatrixx(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadMatrixx(void* m) => _LoadMatrixx_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadMatrixx(IntPtr m) => _LoadMatrixx_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadMatrixxOES(float[] m) => _LoadMatrixxOES(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadMatrixxOES(void* m) => _LoadMatrixxOES_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadMatrixxOES(IntPtr m) => _LoadMatrixxOES_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadName(uint name) => _LoadName(name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadPaletteFromModelViewMatrixOES() => _LoadPaletteFromModelViewMatrixOES(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadProgramNV(VertexAttribEnumNV target, uint id, int len, byte[] program) => _LoadProgramNV(target, id, len, program); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadProgramNV(VertexAttribEnumNV target, uint id, int len, void* program) => _LoadProgramNV_ptr(target, id, len, program); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadProgramNV(VertexAttribEnumNV target, uint id, int len, IntPtr program) => _LoadProgramNV_intptr(target, id, len, program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixd(double[] m) => _LoadTransposeMatrixd(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixd(void* m) => _LoadTransposeMatrixd_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixd(IntPtr m) => _LoadTransposeMatrixd_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixdARB(double[] m) => _LoadTransposeMatrixdARB(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixdARB(void* m) => _LoadTransposeMatrixdARB_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixdARB(IntPtr m) => _LoadTransposeMatrixdARB_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixf(float[] m) => _LoadTransposeMatrixf(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixf(void* m) => _LoadTransposeMatrixf_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixf(IntPtr m) => _LoadTransposeMatrixf_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixfARB(float[] m) => _LoadTransposeMatrixfARB(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixfARB(void* m) => _LoadTransposeMatrixfARB_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixfARB(IntPtr m) => _LoadTransposeMatrixfARB_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixxOES(float[] m) => _LoadTransposeMatrixxOES(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixxOES(void* m) => _LoadTransposeMatrixxOES_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LoadTransposeMatrixxOES(IntPtr m) => _LoadTransposeMatrixxOES_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LockArraysEXT(int first, int count) => _LockArraysEXT(first, count); + + // --- + + /// + /// glLogicOp specifies a logical operation that, when enabled, is applied between the incoming RGBA color and the RGBA color at the corresponding location in the frame buffer. To enable or disable the logical operation, call glEnable and glDisable using the symbolic constant GL_COLOR_LOGIC_OP. The initial value is disabled. + /// Opcode Resulting Operation GL_CLEAR 0 GL_SET 1 GL_COPY s GL_COPY_INVERTED ~s GL_NOOP d GL_INVERT ~d GL_AND s & d GL_NAND ~(s & d) GL_OR s | d GL_NOR ~(s | d) GL_XOR s ^ d GL_EQUIV ~(s ^ d) GL_AND_REVERSE s & ~d GL_AND_INVERTED ~s & d GL_OR_REVERSE s | ~d GL_OR_INVERTED ~s | d + /// opcode is a symbolic constant chosen from the list above. In the explanation of the logical operations, s represents the incoming color and d represents the color in the frame buffer. Standard C-language operators are used. As these bitwise operators suggest, the logical operation is applied independently to each bit pair of the source and destination colors. + /// + /// Specifies a symbolic constant that selects a logical operation. The following symbols are accepted: GL_CLEAR, GL_SET, GL_COPY, GL_COPY_INVERTED, GL_NOOP, GL_INVERT, GL_AND, GL_NAND, GL_OR, GL_NOR, GL_XOR, GL_EQUIV, GL_AND_REVERSE, GL_AND_INVERTED, GL_OR_REVERSE, and GL_OR_INVERTED. The initial value is GL_COPY. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void LogicOp(LogicOp opcode) => _LogicOp(opcode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MakeBufferNonResidentNV(int target) => _MakeBufferNonResidentNV(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MakeBufferResidentNV(int target, int access) => _MakeBufferResidentNV(target, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MakeImageHandleNonResidentARB(UInt64 handle) => _MakeImageHandleNonResidentARB(handle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MakeImageHandleNonResidentNV(UInt64 handle) => _MakeImageHandleNonResidentNV(handle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MakeImageHandleResidentARB(UInt64 handle, int access) => _MakeImageHandleResidentARB(handle, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MakeImageHandleResidentNV(UInt64 handle, int access) => _MakeImageHandleResidentNV(handle, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MakeNamedBufferNonResidentNV(uint buffer) => _MakeNamedBufferNonResidentNV(buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MakeNamedBufferResidentNV(uint buffer, int access) => _MakeNamedBufferResidentNV(buffer, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MakeTextureHandleNonResidentARB(UInt64 handle) => _MakeTextureHandleNonResidentARB(handle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MakeTextureHandleNonResidentNV(UInt64 handle) => _MakeTextureHandleNonResidentNV(handle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MakeTextureHandleResidentARB(UInt64 handle) => _MakeTextureHandleResidentARB(handle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MakeTextureHandleResidentNV(UInt64 handle) => _MakeTextureHandleResidentNV(handle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map1d(MapTarget target, double u1, double u2, int stride, int order, double[] points) => _Map1d(target, u1, u2, stride, order, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map1d(MapTarget target, double u1, double u2, int stride, int order, void* points) => _Map1d_ptr(target, u1, u2, stride, order, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map1d(MapTarget target, double u1, double u2, int stride, int order, IntPtr points) => _Map1d_intptr(target, u1, u2, stride, order, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map1f(MapTarget target, float u1, float u2, int stride, int order, float[] points) => _Map1f(target, u1, u2, stride, order, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map1f(MapTarget target, float u1, float u2, int stride, int order, void* points) => _Map1f_ptr(target, u1, u2, stride, order, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map1f(MapTarget target, float u1, float u2, int stride, int order, IntPtr points) => _Map1f_intptr(target, u1, u2, stride, order, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map1xOES(MapTarget target, float u1, float u2, int stride, int order, float points) => _Map1xOES(target, u1, u2, stride, order, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map2d(MapTarget target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double[] points) => _Map2d(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map2d(MapTarget target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, void* points) => _Map2d_ptr(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map2d(MapTarget target, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, IntPtr points) => _Map2d_intptr(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map2f(MapTarget target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float[] points) => _Map2f(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map2f(MapTarget target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, void* points) => _Map2f_ptr(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map2f(MapTarget target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, IntPtr points) => _Map2f_intptr(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Map2xOES(MapTarget target, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float points) => _Map2xOES(target, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + // --- + + /// + /// glMapBuffer and glMapNamedBuffer map the entire data store of a specified buffer object into the client's address space. The data can then be directly read and/or written relative to the returned pointer, depending on the specified access policy. + /// A pointer to the beginning of the mapped range is returned once all pending operations on that buffer object have completed, and may be used to modify and/or query the corresponding range of the data store according to the value of access: GL_READ_ONLY indicates that the returned pointer may be used to read buffer object data. GL_WRITE_ONLY indicates that the returned pointer may be used to modify buffer object data. GL_READ_WRITE indicates that the returned pointer may be used to read and to modify buffer object data. + /// If an error is generated, a NULL pointer is returned. + /// If no error occurs, the returned pointer will reflect an allocation aligned to the value of GL_MIN_MAP_BUFFER_ALIGNMENT basic machine units. + /// The returned pointer values may not be passed as parameter values to GL commands. For example, they may not be used to specify array pointers, or to specify or query pixel or texture image data; such actions produce undefined results, although implementations may not check for such behavior for performance reasons. + /// No GL error is generated if the returned pointer is accessed in a way inconsistent with access (e.g. used to read from a mapping made with accessGL_WRITE_ONLY or write to a mapping made with accessGL_READ_ONLY), but the result is undefined and system errors (possibly including program termination) may occur. + /// Mappings to the data stores of buffer objects may have nonstandard performance characteristics. For example, such mappings may be marked as uncacheable regions of memory, and in such cases reading from them may be very slow. To ensure optimal performance, the client should use the mapping in a fashion consistent with the values of GL_BUFFER_USAGE for the buffer object and of access. Using a mapping in a fashion inconsistent with these values is liable to be multiple orders of magnitude slower than using normal memory. + /// + /// Specifies the target to which the buffer object is bound for glMapBuffer, which must be one of the buffer binding targets in the following table: + /// Specifies the name of the buffer object for glMapNamedBuffer. + /// Specifies the access policy for glMapBuffer and glMapNamedBuffer, indicating whether it will be possible to read from, write to, or both read from and write to the buffer object's mapped data store. The symbolic constant must be GL_READ_ONLY, GL_WRITE_ONLY, or GL_READ_WRITE. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapBuffer(BufferTargetARB target, BufferAccessARB access) => _MapBuffer(target, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapBufferARB(BufferTargetARB target, BufferAccessARB access) => _MapBufferARB(target, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapBufferOES(BufferTargetARB target, BufferAccessARB access) => _MapBufferOES(target, access); + + // --- + + /// + /// glMapBufferRange and glMapNamedBufferRange map all or part of the data store of a specified buffer object into the client's address space. offset and length indicate the range of data in the buffer object that is to be mapped, in terms of basic machine units. access is a bitfield containing flags which describe the requested mapping. These flags are described below. + /// A pointer to the beginning of the mapped range is returned once all pending operations on the buffer object have completed, and may be used to modify and/or query the corresponding range of the data store according to the following flag bits set in access: GL_MAP_READ_BIT indicates that the returned pointer may be used to read buffer object data. No GL error is generated if the pointer is used to query a mapping which excludes this flag, but the result is undefined and system errors (possibly including program termination) may occur. GL_MAP_WRITE_BIT indicates that the returned pointer may be used to modify buffer object data. No GL error is generated if the pointer is used to modify a mapping which excludes this flag, but the result is undefined and system errors (possibly including program termination) may occur. GL_MAP_PERSISTENT_BIT indicates that the mapping is to be made in a persistent fashion and that the client intends to hold and use the returned pointer during subsequent GL operation. It is not an error to call drawing commands (render) while buffers are mapped using this flag. It is an error to specify this flag if the buffer's data store was not allocated through a call to the glBufferStorage command in which the GL_MAP_PERSISTENT_BIT was also set. GL_MAP_COHERENT_BIT indicates that a persistent mapping is also to be coherent. Coherent maps guarantee that the effect of writes to a buffer's data store by either the client or server will eventually become visible to the other without further intervention from the application. In the absence of this bit, persistent mappings are not coherent and modified ranges of the buffer store must be explicitly communicated to the GL, either by unmapping the buffer, or through a call to glFlushMappedBufferRange or glMemoryBarrier. + /// The following optional flag bits in access may be used to modify the mapping: GL_MAP_INVALIDATE_RANGE_BIT indicates that the previous contents of the specified range may be discarded. Data within this range are undefined with the exception of subsequently written data. No GL error is generated if subsequent GL operations access unwritten data, but the result is undefined and system errors (possibly including program termination) may occur. This flag may not be used in combination with GL_MAP_READ_BIT. GL_MAP_INVALIDATE_BUFFER_BIT indicates that the previous contents of the entire buffer may be discarded. Data within the entire buffer are undefined with the exception of subsequently written data. No GL error is generated if subsequent GL operations access unwritten data, but the result is undefined and system errors (possibly including program termination) may occur. This flag may not be used in combination with GL_MAP_READ_BIT. GL_MAP_FLUSH_EXPLICIT_BIT indicates that one or more discrete subranges of the mapping may be modified. When this flag is set, modifications to each subrange must be explicitly flushed by calling glFlushMappedBufferRange. No GL error is set if a subrange of the mapping is modified and not flushed, but data within the corresponding subrange of the buffer are undefined. This flag may only be used in conjunction with GL_MAP_WRITE_BIT. When this option is selected, flushing is strictly limited to regions that are explicitly indicated with calls to glFlushMappedBufferRange prior to unmap; if this option is not selected glUnmapBuffer will automatically flush the entire mapped range when called. GL_MAP_UNSYNCHRONIZED_BIT indicates that the GL should not attempt to synchronize pending operations on the buffer prior to returning from glMapBufferRange or glMapNamedBufferRange. No GL error is generated if pending operations which source or modify the buffer overlap the mapped region, but the result of such previous and any subsequent operations is undefined. + /// If an error occurs, a NULL pointer is returned. + /// If no error occurs, the returned pointer will reflect an allocation aligned to the value of GL_MIN_MAP_BUFFER_ALIGNMENT basic machine units. Subtracting offset from this returned pointer will always produce a multiple of the value of GL_MIN_MAP_BUFFER_ALIGNMENT. + /// The returned pointer values may not be passed as parameter values to GL commands. For example, they may not be used to specify array pointers, or to specify or query pixel or texture image data; such actions produce undefined results, although implementations may not check for such behavior for performance reasons. + /// Mappings to the data stores of buffer objects may have nonstandard performance characteristics. For example, such mappings may be marked as uncacheable regions of memory, and in such cases reading from them may be very slow. To ensure optimal performance, the client should use the mapping in a fashion consistent with the values of GL_BUFFER_USAGE for the buffer object and of access. Using a mapping in a fashion inconsistent with these values is liable to be multiple orders of magnitude slower than using normal memory. + /// + /// Specifies the target to which the buffer object is bound for glMapBufferRange, which must be one of the buffer binding targets in the following table: + /// Specifies the name of the buffer object for glMapNamedBufferRange. + /// Specifies the starting offset within the buffer of the range to be mapped. + /// Specifies the length of the range to be mapped. + /// Specifies a combination of access flags indicating the desired access to the mapped range. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapBufferRange(BufferTargetARB target, IntPtr offset, IntPtr length, int access) => _MapBufferRange(target, offset, length, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapBufferRangeEXT(BufferTargetARB target, IntPtr offset, IntPtr length, int access) => _MapBufferRangeEXT(target, offset, length, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapControlPointsNV(EvalTargetNV target, uint index, MapTypeNV type, int ustride, int vstride, int uorder, int vorder, bool packed, IntPtr points) => _MapControlPointsNV(target, index, type, ustride, vstride, uorder, vorder, packed, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapGrid1d(int un, double u1, double u2) => _MapGrid1d(un, u1, u2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapGrid1f(int un, float u1, float u2) => _MapGrid1f(un, u1, u2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapGrid1xOES(int n, float u1, float u2) => _MapGrid1xOES(n, u1, u2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapGrid2d(int un, double u1, double u2, int vn, double v1, double v2) => _MapGrid2d(un, u1, u2, vn, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapGrid2f(int un, float u1, float u2, int vn, float v1, float v2) => _MapGrid2f(un, u1, u2, vn, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapGrid2xOES(int n, float u1, float u2, float v1, float v2) => _MapGrid2xOES(n, u1, u2, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapNamedBuffer(uint buffer, BufferAccessARB access) => _MapNamedBuffer(buffer, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapNamedBufferEXT(uint buffer, BufferAccessARB access) => _MapNamedBufferEXT(buffer, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapNamedBufferRange(uint buffer, IntPtr offset, IntPtr length, int access) => _MapNamedBufferRange(buffer, offset, length, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapNamedBufferRangeEXT(uint buffer, IntPtr offset, IntPtr length, int access) => _MapNamedBufferRangeEXT(buffer, offset, length, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapObjectBufferATI(uint buffer) => _MapObjectBufferATI(buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapParameterfvNV(EvalTargetNV target, MapParameterNV pname, float[] @params) => _MapParameterfvNV(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapParameterfvNV(EvalTargetNV target, MapParameterNV pname, void* @params) => _MapParameterfvNV_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapParameterfvNV(EvalTargetNV target, MapParameterNV pname, IntPtr @params) => _MapParameterfvNV_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapParameterivNV(EvalTargetNV target, MapParameterNV pname, int[] @params) => _MapParameterivNV(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapParameterivNV(EvalTargetNV target, MapParameterNV pname, void* @params) => _MapParameterivNV_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapParameterivNV(EvalTargetNV target, MapParameterNV pname, IntPtr @params) => _MapParameterivNV_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapTexture2DINTEL(uint texture, int level, int access, out int stride, out int layout) => _MapTexture2DINTEL(texture, level, access, out stride, out layout); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapVertexAttrib1dAPPLE(uint index, uint size, double u1, double u2, int stride, int order, double[] points) => _MapVertexAttrib1dAPPLE(index, size, u1, u2, stride, order, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapVertexAttrib1dAPPLE(uint index, uint size, double u1, double u2, int stride, int order, void* points) => _MapVertexAttrib1dAPPLE_ptr(index, size, u1, u2, stride, order, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapVertexAttrib1dAPPLE(uint index, uint size, double u1, double u2, int stride, int order, IntPtr points) => _MapVertexAttrib1dAPPLE_intptr(index, size, u1, u2, stride, order, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapVertexAttrib1fAPPLE(uint index, uint size, float u1, float u2, int stride, int order, float[] points) => _MapVertexAttrib1fAPPLE(index, size, u1, u2, stride, order, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapVertexAttrib1fAPPLE(uint index, uint size, float u1, float u2, int stride, int order, void* points) => _MapVertexAttrib1fAPPLE_ptr(index, size, u1, u2, stride, order, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapVertexAttrib1fAPPLE(uint index, uint size, float u1, float u2, int stride, int order, IntPtr points) => _MapVertexAttrib1fAPPLE_intptr(index, size, u1, u2, stride, order, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapVertexAttrib2dAPPLE(uint index, uint size, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double[] points) => _MapVertexAttrib2dAPPLE(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapVertexAttrib2dAPPLE(uint index, uint size, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, void* points) => _MapVertexAttrib2dAPPLE_ptr(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapVertexAttrib2dAPPLE(uint index, uint size, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, IntPtr points) => _MapVertexAttrib2dAPPLE_intptr(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapVertexAttrib2fAPPLE(uint index, uint size, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float[] points) => _MapVertexAttrib2fAPPLE(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapVertexAttrib2fAPPLE(uint index, uint size, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, void* points) => _MapVertexAttrib2fAPPLE_ptr(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MapVertexAttrib2fAPPLE(uint index, uint size, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, IntPtr points) => _MapVertexAttrib2fAPPLE_intptr(index, size, u1, u2, ustride, uorder, v1, v2, vstride, vorder, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Materialf(MaterialFace face, MaterialParameter pname, float param) => _Materialf(face, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Materialfv(MaterialFace face, MaterialParameter pname, float[] @params) => _Materialfv(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Materialfv(MaterialFace face, MaterialParameter pname, void* @params) => _Materialfv_ptr(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Materialfv(MaterialFace face, MaterialParameter pname, IntPtr @params) => _Materialfv_intptr(face, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Materiali(MaterialFace face, MaterialParameter pname, int param) => _Materiali(face, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Materialiv(MaterialFace face, MaterialParameter pname, int[] @params) => _Materialiv(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Materialiv(MaterialFace face, MaterialParameter pname, void* @params) => _Materialiv_ptr(face, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Materialiv(MaterialFace face, MaterialParameter pname, IntPtr @params) => _Materialiv_intptr(face, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Materialx(MaterialFace face, MaterialParameter pname, float param) => _Materialx(face, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MaterialxOES(MaterialFace face, MaterialParameter pname, float param) => _MaterialxOES(face, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Materialxv(MaterialFace face, MaterialParameter pname, float[] param) => _Materialxv(face, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Materialxv(MaterialFace face, MaterialParameter pname, void* param) => _Materialxv_ptr(face, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Materialxv(MaterialFace face, MaterialParameter pname, IntPtr param) => _Materialxv_intptr(face, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MaterialxvOES(MaterialFace face, MaterialParameter pname, float[] param) => _MaterialxvOES(face, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MaterialxvOES(MaterialFace face, MaterialParameter pname, void* param) => _MaterialxvOES_ptr(face, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MaterialxvOES(MaterialFace face, MaterialParameter pname, IntPtr param) => _MaterialxvOES_intptr(face, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixFrustumEXT(MatrixMode mode, double left, double right, double bottom, double top, double zNear, double zFar) => _MatrixFrustumEXT(mode, left, right, bottom, top, zNear, zFar); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixIndexPointerARB(int size, MatrixIndexPointerTypeARB type, int stride, IntPtr pointer) => _MatrixIndexPointerARB(size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixIndexPointerOES(int size, MatrixIndexPointerTypeARB type, int stride, IntPtr pointer) => _MatrixIndexPointerOES(size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixIndexubvARB(int size, byte[] indices) => _MatrixIndexubvARB(size, indices); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixIndexubvARB(int size, void* indices) => _MatrixIndexubvARB_ptr(size, indices); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixIndexubvARB(int size, IntPtr indices) => _MatrixIndexubvARB_intptr(size, indices); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixIndexuivARB(int size, uint[] indices) => _MatrixIndexuivARB(size, indices); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixIndexuivARB(int size, void* indices) => _MatrixIndexuivARB_ptr(size, indices); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixIndexuivARB(int size, IntPtr indices) => _MatrixIndexuivARB_intptr(size, indices); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixIndexusvARB(int size, ushort[] indices) => _MatrixIndexusvARB(size, indices); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixIndexusvARB(int size, void* indices) => _MatrixIndexusvARB_ptr(size, indices); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixIndexusvARB(int size, IntPtr indices) => _MatrixIndexusvARB_intptr(size, indices); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoad3x2fNV(int matrixMode, float[] m) => _MatrixLoad3x2fNV(matrixMode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoad3x2fNV(int matrixMode, void* m) => _MatrixLoad3x2fNV_ptr(matrixMode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoad3x2fNV(int matrixMode, IntPtr m) => _MatrixLoad3x2fNV_intptr(matrixMode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoad3x3fNV(int matrixMode, float[] m) => _MatrixLoad3x3fNV(matrixMode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoad3x3fNV(int matrixMode, void* m) => _MatrixLoad3x3fNV_ptr(matrixMode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoad3x3fNV(int matrixMode, IntPtr m) => _MatrixLoad3x3fNV_intptr(matrixMode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadIdentityEXT(MatrixMode mode) => _MatrixLoadIdentityEXT(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadTranspose3x3fNV(int matrixMode, float[] m) => _MatrixLoadTranspose3x3fNV(matrixMode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadTranspose3x3fNV(int matrixMode, void* m) => _MatrixLoadTranspose3x3fNV_ptr(matrixMode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadTranspose3x3fNV(int matrixMode, IntPtr m) => _MatrixLoadTranspose3x3fNV_intptr(matrixMode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadTransposedEXT(MatrixMode mode, double[] m) => _MatrixLoadTransposedEXT(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadTransposedEXT(MatrixMode mode, void* m) => _MatrixLoadTransposedEXT_ptr(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadTransposedEXT(MatrixMode mode, IntPtr m) => _MatrixLoadTransposedEXT_intptr(mode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadTransposefEXT(MatrixMode mode, float[] m) => _MatrixLoadTransposefEXT(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadTransposefEXT(MatrixMode mode, void* m) => _MatrixLoadTransposefEXT_ptr(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadTransposefEXT(MatrixMode mode, IntPtr m) => _MatrixLoadTransposefEXT_intptr(mode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoaddEXT(MatrixMode mode, double[] m) => _MatrixLoaddEXT(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoaddEXT(MatrixMode mode, void* m) => _MatrixLoaddEXT_ptr(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoaddEXT(MatrixMode mode, IntPtr m) => _MatrixLoaddEXT_intptr(mode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadfEXT(MatrixMode mode, float[] m) => _MatrixLoadfEXT(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadfEXT(MatrixMode mode, void* m) => _MatrixLoadfEXT_ptr(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixLoadfEXT(MatrixMode mode, IntPtr m) => _MatrixLoadfEXT_intptr(mode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMode(MatrixMode mode) => _MatrixMode(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMult3x2fNV(int matrixMode, float[] m) => _MatrixMult3x2fNV(matrixMode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMult3x2fNV(int matrixMode, void* m) => _MatrixMult3x2fNV_ptr(matrixMode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMult3x2fNV(int matrixMode, IntPtr m) => _MatrixMult3x2fNV_intptr(matrixMode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMult3x3fNV(int matrixMode, float[] m) => _MatrixMult3x3fNV(matrixMode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMult3x3fNV(int matrixMode, void* m) => _MatrixMult3x3fNV_ptr(matrixMode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMult3x3fNV(int matrixMode, IntPtr m) => _MatrixMult3x3fNV_intptr(matrixMode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultTranspose3x3fNV(int matrixMode, float[] m) => _MatrixMultTranspose3x3fNV(matrixMode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultTranspose3x3fNV(int matrixMode, void* m) => _MatrixMultTranspose3x3fNV_ptr(matrixMode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultTranspose3x3fNV(int matrixMode, IntPtr m) => _MatrixMultTranspose3x3fNV_intptr(matrixMode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultTransposedEXT(MatrixMode mode, double[] m) => _MatrixMultTransposedEXT(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultTransposedEXT(MatrixMode mode, void* m) => _MatrixMultTransposedEXT_ptr(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultTransposedEXT(MatrixMode mode, IntPtr m) => _MatrixMultTransposedEXT_intptr(mode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultTransposefEXT(MatrixMode mode, float[] m) => _MatrixMultTransposefEXT(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultTransposefEXT(MatrixMode mode, void* m) => _MatrixMultTransposefEXT_ptr(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultTransposefEXT(MatrixMode mode, IntPtr m) => _MatrixMultTransposefEXT_intptr(mode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultdEXT(MatrixMode mode, double[] m) => _MatrixMultdEXT(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultdEXT(MatrixMode mode, void* m) => _MatrixMultdEXT_ptr(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultdEXT(MatrixMode mode, IntPtr m) => _MatrixMultdEXT_intptr(mode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultfEXT(MatrixMode mode, float[] m) => _MatrixMultfEXT(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultfEXT(MatrixMode mode, void* m) => _MatrixMultfEXT_ptr(mode, m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixMultfEXT(MatrixMode mode, IntPtr m) => _MatrixMultfEXT_intptr(mode, m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixOrthoEXT(MatrixMode mode, double left, double right, double bottom, double top, double zNear, double zFar) => _MatrixOrthoEXT(mode, left, right, bottom, top, zNear, zFar); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixPopEXT(MatrixMode mode) => _MatrixPopEXT(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixPushEXT(MatrixMode mode) => _MatrixPushEXT(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixRotatedEXT(MatrixMode mode, double angle, double x, double y, double z) => _MatrixRotatedEXT(mode, angle, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixRotatefEXT(MatrixMode mode, float angle, float x, float y, float z) => _MatrixRotatefEXT(mode, angle, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixScaledEXT(MatrixMode mode, double x, double y, double z) => _MatrixScaledEXT(mode, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixScalefEXT(MatrixMode mode, float x, float y, float z) => _MatrixScalefEXT(mode, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixTranslatedEXT(MatrixMode mode, double x, double y, double z) => _MatrixTranslatedEXT(mode, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MatrixTranslatefEXT(MatrixMode mode, float x, float y, float z) => _MatrixTranslatefEXT(mode, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MaxShaderCompilerThreadsKHR(uint count) => _MaxShaderCompilerThreadsKHR(count); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MaxShaderCompilerThreadsARB(uint count) => _MaxShaderCompilerThreadsARB(count); + + // --- + + /// + /// glMemoryBarrier defines a barrier ordering the memory transactions issued prior to the command relative to those issued after the barrier. For the purposes of this ordering, memory transactions performed by shaders are considered to be issued by the rendering command that triggered the execution of the shader. barriers is a bitfield indicating the set of operations that are synchronized with shader stores; the bits used in barriers are as follows: + /// GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT If set, vertex data sourced from buffer objects after the barrier will reflect data written by shaders prior to the barrier. The set of buffer objects affected by this bit is derived from the buffer object bindings used for generic vertex attributes derived from the GL_VERTEX_ATTRIB_ARRAY_BUFFER bindings. GL_ELEMENT_ARRAY_BARRIER_BIT If set, vertex array indices sourced from buffer objects after the barrier will reflect data written by shaders prior to the barrier. The buffer objects affected by this bit are derived from the GL_ELEMENT_ARRAY_BUFFER binding. GL_UNIFORM_BARRIER_BIT Shader uniforms sourced from buffer objects after the barrier will reflect data written by shaders prior to the barrier. GL_TEXTURE_FETCH_BARRIER_BIT Texture fetches from shaders, including fetches from buffer object memory via buffer textures, after the barrier will reflect data written by shaders prior to the barrier. GL_SHADER_IMAGE_ACCESS_BARRIER_BIT Memory accesses using shader image load, store, and atomic built-in functions issued after the barrier will reflect data written by shaders prior to the barrier. Additionally, image stores and atomics issued after the barrier will not execute until all memory accesses (e.g., loads, stores, texture fetches, vertex fetches) initiated prior to the barrier complete. GL_COMMAND_BARRIER_BIT Command data sourced from buffer objects by Draw*Indirect commands after the barrier will reflect data written by shaders prior to the barrier. The buffer objects affected by this bit are derived from the GL_DRAW_INDIRECT_BUFFER binding. GL_PIXEL_BUFFER_BARRIER_BIT Reads and writes of buffer objects via the GL_PIXEL_PACK_BUFFER and GL_PIXEL_UNPACK_BUFFER bindings (via glReadPixels, glTexSubImage1D, etc.) after the barrier will reflect data written by shaders prior to the barrier. Additionally, buffer object writes issued after the barrier will wait on the completion of all shader writes initiated prior to the barrier. GL_TEXTURE_UPDATE_BARRIER_BIT Writes to a texture via glTex(Sub)Image*, glCopyTex(Sub)Image*, glCompressedTex(Sub)Image*, and reads via glGetTexImage after the barrier will reflect data written by shaders prior to the barrier. Additionally, texture writes from these commands issued after the barrier will not execute until all shader writes initiated prior to the barrier complete. GL_BUFFER_UPDATE_BARRIER_BIT Reads or writes via glBufferSubData, glCopyBufferSubData, or glGetBufferSubData, or to buffer object memory mapped by glMapBuffer or glMapBufferRange after the barrier will reflect data written by shaders prior to the barrier. Additionally, writes via these commands issued after the barrier will wait on the completion of any shader writes to the same memory initiated prior to the barrier. GL_CLIENT_MAPPED_BUFFER_BARRIER_BIT Access by the client to persistent mapped regions of buffer objects will reflect data written by shaders prior to the barrier. Note that this may cause additional synchronization operations. GL_FRAMEBUFFER_BARRIER_BIT Reads and writes via framebuffer object attachments after the barrier will reflect data written by shaders prior to the barrier. Additionally, framebuffer writes issued after the barrier will wait on the completion of all shader writes issued prior to the barrier. GL_TRANSFORM_FEEDBACK_BARRIER_BIT Writes via transform feedback bindings after the barrier will reflect data written by shaders prior to the barrier. Additionally, transform feedback writes issued after the barrier will wait on the completion of all shader writes issued prior to the barrier. GL_ATOMIC_COUNTER_BARRIER_BIT Accesses to atomic counters after the barrier will reflect writes prior to the barrier. GL_SHADER_STORAGE_BARRIER_BIT Accesses to shader storage blocks after the barrier will reflect writes prior to the barrier. GL_QUERY_BUFFER_BARRIER_BIT Writes of buffer objects via the GL_QUERY_BUFFER binding after the barrier will reflect data written by shaders prior to the barrier. Additionally, buffer object writes issued after the barrier will wait on the completion of all shader writes initiated prior to the barrier. + /// If barriers is GL_ALL_BARRIER_BITS, shader memory accesses will be synchronized relative to all the operations described above. + /// Implementations may cache buffer object and texture image memory that could be written by shaders in multiple caches; for example, there may be separate caches for texture, vertex fetching, and one or more caches for shader memory accesses. Implementations are not required to keep these caches coherent with shader memory writes. Stores issued by one invocation may not be immediately observable by other pipeline stages or other shader invocations because the value stored may remain in a cache local to the processor executing the store, or because data overwritten by the store is still in a cache elsewhere in the system. When glMemoryBarrier is called, the GL flushes and/or invalidates any caches relevant to the operations specified by the barriers parameter to ensure consistent ordering of operations across the barrier. + /// To allow for independent shader invocations to communicate by reads and writes to a common memory address, image variables in the OpenGL Shading Language may be declared as "coherent". Buffer object or texture image memory accessed through such variables may be cached only if caches are automatically updated due to stores issued by any other shader invocation. If the same address is accessed using both coherent and non-coherent variables, the accesses using variables declared as coherent will observe the results stored using coherent variables in other invocations. Using variables declared as "coherent" guarantees only that the results of stores will be immediately visible to shader invocations using similarly-declared variables; calling glMemoryBarrier is required to ensure that the stores are visible to other operations. + /// The following guidelines may be helpful in choosing when to use coherent memory accesses and when to use barriers. + /// Data that are read-only or constant may be accessed without using coherent variables or calling MemoryBarrier(). Updates to the read-only data via API calls such as glBufferSubData will invalidate shader caches implicitly as required. Data that are shared between shader invocations at a fine granularity (e.g., written by one invocation, consumed by another invocation) should use coherent variables to read and write the shared data. Data written by one shader invocation and consumed by other shader invocations launched as a result of its execution ("dependent invocations") should use coherent variables in the producing shader invocation and call memoryBarrier() after the last write. The consuming shader invocation should also use coherent variables. Data written to image variables in one rendering pass and read by the shader in a later pass need not use coherent variables or memoryBarrier(). Calling glMemoryBarrier with the SHADER_IMAGE_ACCESS_BARRIER_BIT set in barriers between passes is necessary. Data written by the shader in one rendering pass and read by another mechanism (e.g., vertex or index buffer pulling) in a later pass need not use coherent variables or memoryBarrier(). Calling glMemoryBarrier with the appropriate bits set in barriers between passes is necessary. + /// + /// Specifies the barriers to insert. For glMemoryBarrier, must be a bitwise combination of any of GL_VERTEX_ATTRIB_ARRAY_BARRIER_BIT, GL_ELEMENT_ARRAY_BARRIER_BIT, GL_UNIFORM_BARRIER_BIT, GL_TEXTURE_FETCH_BARRIER_BIT, GL_SHADER_IMAGE_ACCESS_BARRIER_BIT, GL_COMMAND_BARRIER_BIT, GL_PIXEL_BUFFER_BARRIER_BIT, GL_TEXTURE_UPDATE_BARRIER_BIT, GL_BUFFER_UPDATE_BARRIER_BIT, GL_FRAMEBUFFER_BARRIER_BIT, GL_TRANSFORM_FEEDBACK_BARRIER_BIT, GL_ATOMIC_COUNTER_BARRIER_BIT, or GL_SHADER_STORAGE_BARRIER_BIT. For glMemoryBarrier, must be a bitwise combination of any of GL_ATOMIC_COUNTER_BARRIER_BIT, or GL_FRAMEBUFFER_BARRIER_BIT, GL_SHADER_IMAGE_ACCESS_BARRIER_BIT, GL_SHADER_STORAGE_BARRIER_BIT. GL_TEXTURE_FETCH_BARRIER_BIT, or GL_UNIFORM_BARRIER_BIT. If the special value GL_ALL_BARRIER_BITS is specified, all supported barriers for the corresponding command will be inserted. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MemoryBarrier(int barriers) => _MemoryBarrier(barriers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MemoryBarrierByRegion(int barriers) => _MemoryBarrierByRegion(barriers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MemoryBarrierEXT(int barriers) => _MemoryBarrierEXT(barriers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MemoryObjectParameterivEXT(uint memoryObject, MemoryObjectParameterName pname, int[] @params) => _MemoryObjectParameterivEXT(memoryObject, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MemoryObjectParameterivEXT(uint memoryObject, MemoryObjectParameterName pname, void* @params) => _MemoryObjectParameterivEXT_ptr(memoryObject, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MemoryObjectParameterivEXT(uint memoryObject, MemoryObjectParameterName pname, IntPtr @params) => _MemoryObjectParameterivEXT_intptr(memoryObject, pname, @params); + + // --- + + /// + /// glMinSampleShading specifies the rate at which samples are shaded within a covered pixel. Sample-rate shading is enabled by calling glEnable with the parameter GL_SAMPLE_SHADING. If GL_MULTISAMPLE or GL_SAMPLE_SHADING is disabled, sample shading has no effect. Otherwise, an implementation must provide at least as many unique color values for each covered fragment as specified by value times samples where samples is the value of GL_SAMPLES for the current framebuffer. At least 1 sample for each covered fragment is generated. + /// A value of 1.0 indicates that each sample in the framebuffer should be independently shaded. A value of 0.0 effectively allows the GL to ignore sample rate shading. Any value between 0.0 and 1.0 allows the GL to shade only a subset of the total samples within each covered fragment. Which samples are shaded and the algorithm used to select that subset of the fragment's samples is implementation dependent. + /// + /// Specifies the rate at which samples are shaded within each covered pixel. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MinSampleShading(float value) => _MinSampleShading(value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MinSampleShadingARB(float value) => _MinSampleShadingARB(value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MinSampleShadingOES(float value) => _MinSampleShadingOES(value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Minmax(MinmaxTargetEXT target, InternalFormat internalformat, bool sink) => _Minmax(target, internalformat, sink); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MinmaxEXT(MinmaxTargetEXT target, InternalFormat internalformat, bool sink) => _MinmaxEXT(target, internalformat, sink); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultMatrixd(double[] m) => _MultMatrixd(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultMatrixd(void* m) => _MultMatrixd_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultMatrixd(IntPtr m) => _MultMatrixd_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultMatrixf(float[] m) => _MultMatrixf(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultMatrixf(void* m) => _MultMatrixf_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultMatrixf(IntPtr m) => _MultMatrixf_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultMatrixx(float[] m) => _MultMatrixx(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultMatrixx(void* m) => _MultMatrixx_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultMatrixx(IntPtr m) => _MultMatrixx_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultMatrixxOES(float[] m) => _MultMatrixxOES(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultMatrixxOES(void* m) => _MultMatrixxOES_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultMatrixxOES(IntPtr m) => _MultMatrixxOES_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixd(double[] m) => _MultTransposeMatrixd(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixd(void* m) => _MultTransposeMatrixd_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixd(IntPtr m) => _MultTransposeMatrixd_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixdARB(double[] m) => _MultTransposeMatrixdARB(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixdARB(void* m) => _MultTransposeMatrixdARB_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixdARB(IntPtr m) => _MultTransposeMatrixdARB_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixf(float[] m) => _MultTransposeMatrixf(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixf(void* m) => _MultTransposeMatrixf_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixf(IntPtr m) => _MultTransposeMatrixf_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixfARB(float[] m) => _MultTransposeMatrixfARB(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixfARB(void* m) => _MultTransposeMatrixfARB_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixfARB(IntPtr m) => _MultTransposeMatrixfARB_intptr(m); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixxOES(float[] m) => _MultTransposeMatrixxOES(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixxOES(void* m) => _MultTransposeMatrixxOES_ptr(m); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultTransposeMatrixxOES(IntPtr m) => _MultTransposeMatrixxOES_intptr(m); + + // --- + + /// + /// glMultiDrawArrays specifies multiple sets of geometric primitives with very few subroutine calls. Instead of calling a GL procedure to pass each individual vertex, normal, texture coordinate, edge flag, or color, you can prespecify separate arrays of vertices, normals, and colors and use them to construct a sequence of primitives with a single call to glMultiDrawArrays. + /// glMultiDrawArrays behaves identically to glDrawArrays except that drawcount separate ranges of elements are specified instead. + /// When glMultiDrawArrays is called, it uses count sequential elements from each enabled array to construct a sequence of geometric primitives, beginning with element first. mode specifies what kind of primitives are constructed, and how the array elements construct those primitives. + /// Vertex attributes that are modified by glMultiDrawArrays have an unspecified value after glMultiDrawArrays returns. Attributes that aren't modified remain well defined. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Points to an array of starting indices in the enabled arrays. + /// Points to an array of the number of indices to be rendered. + /// Specifies the size of the first and count + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArrays(PrimitiveType mode, int[] first, int[] count, int drawcount) => _MultiDrawArrays(mode, first, count, drawcount); + + /// + /// glMultiDrawArrays specifies multiple sets of geometric primitives with very few subroutine calls. Instead of calling a GL procedure to pass each individual vertex, normal, texture coordinate, edge flag, or color, you can prespecify separate arrays of vertices, normals, and colors and use them to construct a sequence of primitives with a single call to glMultiDrawArrays. + /// glMultiDrawArrays behaves identically to glDrawArrays except that drawcount separate ranges of elements are specified instead. + /// When glMultiDrawArrays is called, it uses count sequential elements from each enabled array to construct a sequence of geometric primitives, beginning with element first. mode specifies what kind of primitives are constructed, and how the array elements construct those primitives. + /// Vertex attributes that are modified by glMultiDrawArrays have an unspecified value after glMultiDrawArrays returns. Attributes that aren't modified remain well defined. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Points to an array of starting indices in the enabled arrays. + /// Points to an array of the number of indices to be rendered. + /// Specifies the size of the first and count + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArrays(PrimitiveType mode, void* first, void* count, int drawcount) => _MultiDrawArrays_ptr(mode, first, count, drawcount); + + /// + /// glMultiDrawArrays specifies multiple sets of geometric primitives with very few subroutine calls. Instead of calling a GL procedure to pass each individual vertex, normal, texture coordinate, edge flag, or color, you can prespecify separate arrays of vertices, normals, and colors and use them to construct a sequence of primitives with a single call to glMultiDrawArrays. + /// glMultiDrawArrays behaves identically to glDrawArrays except that drawcount separate ranges of elements are specified instead. + /// When glMultiDrawArrays is called, it uses count sequential elements from each enabled array to construct a sequence of geometric primitives, beginning with element first. mode specifies what kind of primitives are constructed, and how the array elements construct those primitives. + /// Vertex attributes that are modified by glMultiDrawArrays have an unspecified value after glMultiDrawArrays returns. Attributes that aren't modified remain well defined. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Points to an array of starting indices in the enabled arrays. + /// Points to an array of the number of indices to be rendered. + /// Specifies the size of the first and count + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArrays(PrimitiveType mode, IntPtr first, IntPtr count, int drawcount) => _MultiDrawArrays_intptr(mode, first, count, drawcount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArraysEXT(PrimitiveType mode, int[] first, int[] count, int primcount) => _MultiDrawArraysEXT(mode, first, count, primcount); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArraysEXT(PrimitiveType mode, void* first, void* count, int primcount) => _MultiDrawArraysEXT_ptr(mode, first, count, primcount); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArraysEXT(PrimitiveType mode, IntPtr first, IntPtr count, int primcount) => _MultiDrawArraysEXT_intptr(mode, first, count, primcount); + + // --- + + /// + /// glMultiDrawArraysIndirect specifies multiple geometric primitives with very few subroutine calls. glMultiDrawArraysIndirect behaves similarly to a multitude of calls to glDrawArraysInstancedBaseInstance, execept that the parameters to each call to glDrawArraysInstancedBaseInstance are stored in an array in memory at the address given by indirect, separated by the stride, in basic machine units, specified by stride. If stride is zero, then the array is assumed to be tightly packed in memory. + /// The parameters addressed by indirect are packed into an array of structures, each element of which takes the form (in C): typedef struct { uint count; uint instanceCount; uint first; uint baseInstance; } DrawArraysIndirectCommand; + /// A single call to glMultiDrawArraysIndirect is equivalent, assuming no errors are generated to: GLsizei n; for (n = 0; n < drawcount; n++) { const DrawArraysIndirectCommand *cmd; if (stride != 0) { cmd = (const DrawArraysIndirectCommand *)((uintptr)indirect + n * stride); } else { cmd = (const DrawArraysIndirectCommand *)indirect + n; } glDrawArraysInstancedBaseInstance(mode, cmd->first, cmd->count, cmd->instanceCount, cmd->baseInstance); } + /// If a buffer is bound to the GL_DRAW_INDIRECT_BUFFER binding at the time of a call to glMultiDrawArraysIndirect, indirect is interpreted as an offset, in basic machine units, into that buffer and the parameter data is read from the buffer rather than from client memory. + /// In contrast to glDrawArraysInstancedBaseInstance, the first member of the parameter structure is unsigned, and out-of-range indices do not generate an error. + /// Vertex attributes that are modified by glMultiDrawArraysIndirect have an unspecified value after glMultiDrawArraysIndirect returns. Attributes that aren't modified remain well defined. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, and GL_PATCHES are accepted. + /// Specifies the address of an array of structures containing the draw parameters. + /// Specifies the number of elements in the array of draw parameter structures. + /// Specifies the distance in basic machine units between elements of the draw parameter array. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArraysIndirect(PrimitiveType mode, IntPtr indirect, int drawcount, int stride) => _MultiDrawArraysIndirect(mode, indirect, drawcount, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArraysIndirectAMD(PrimitiveType mode, IntPtr indirect, int primcount, int stride) => _MultiDrawArraysIndirectAMD(mode, indirect, primcount, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArraysIndirectBindlessCountNV(PrimitiveType mode, IntPtr indirect, int drawCount, int maxDrawCount, int stride, int vertexBufferCount) => _MultiDrawArraysIndirectBindlessCountNV(mode, indirect, drawCount, maxDrawCount, stride, vertexBufferCount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArraysIndirectBindlessNV(PrimitiveType mode, IntPtr indirect, int drawCount, int stride, int vertexBufferCount) => _MultiDrawArraysIndirectBindlessNV(mode, indirect, drawCount, stride, vertexBufferCount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArraysIndirectCount(PrimitiveType mode, IntPtr indirect, IntPtr drawcount, int maxdrawcount, int stride) => _MultiDrawArraysIndirectCount(mode, indirect, drawcount, maxdrawcount, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArraysIndirectCountARB(PrimitiveType mode, IntPtr indirect, IntPtr drawcount, int maxdrawcount, int stride) => _MultiDrawArraysIndirectCountARB(mode, indirect, drawcount, maxdrawcount, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawArraysIndirectEXT(PrimitiveType mode, IntPtr indirect, int drawcount, int stride) => _MultiDrawArraysIndirectEXT(mode, indirect, drawcount, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementArrayAPPLE(PrimitiveType mode, int[] first, int[] count, int primcount) => _MultiDrawElementArrayAPPLE(mode, first, count, primcount); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementArrayAPPLE(PrimitiveType mode, void* first, void* count, int primcount) => _MultiDrawElementArrayAPPLE_ptr(mode, first, count, primcount); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementArrayAPPLE(PrimitiveType mode, IntPtr first, IntPtr count, int primcount) => _MultiDrawElementArrayAPPLE_intptr(mode, first, count, primcount); + + // --- + + /// + /// glMultiDrawElements specifies multiple sets of geometric primitives with very few subroutine calls. Instead of calling a GL function to pass each individual vertex, normal, texture coordinate, edge flag, or color, you can prespecify separate arrays of vertices, normals, and so on, and use them to construct a sequence of primitives with a single call to glMultiDrawElements. + /// glMultiDrawElements is identical in operation to glDrawElements except that drawcount separate lists of elements are specified. + /// Vertex attributes that are modified by glMultiDrawElements have an unspecified value after glMultiDrawElements returns. Attributes that aren't modified maintain their previous values. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Points to an array of the elements counts. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + /// Specifies the size of the count and indices arrays. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElements(PrimitiveType mode, int[] count, DrawElementsType type, IntPtr* indices, int drawcount) => _MultiDrawElements(mode, count, type, indices, drawcount); + + /// + /// glMultiDrawElements specifies multiple sets of geometric primitives with very few subroutine calls. Instead of calling a GL function to pass each individual vertex, normal, texture coordinate, edge flag, or color, you can prespecify separate arrays of vertices, normals, and so on, and use them to construct a sequence of primitives with a single call to glMultiDrawElements. + /// glMultiDrawElements is identical in operation to glDrawElements except that drawcount separate lists of elements are specified. + /// Vertex attributes that are modified by glMultiDrawElements have an unspecified value after glMultiDrawElements returns. Attributes that aren't modified maintain their previous values. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Points to an array of the elements counts. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + /// Specifies the size of the count and indices arrays. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElements(PrimitiveType mode, void* count, DrawElementsType type, IntPtr* indices, int drawcount) => _MultiDrawElements_ptr(mode, count, type, indices, drawcount); + + /// + /// glMultiDrawElements specifies multiple sets of geometric primitives with very few subroutine calls. Instead of calling a GL function to pass each individual vertex, normal, texture coordinate, edge flag, or color, you can prespecify separate arrays of vertices, normals, and so on, and use them to construct a sequence of primitives with a single call to glMultiDrawElements. + /// glMultiDrawElements is identical in operation to glDrawElements except that drawcount separate lists of elements are specified. + /// Vertex attributes that are modified by glMultiDrawElements have an unspecified value after glMultiDrawElements returns. Attributes that aren't modified maintain their previous values. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Points to an array of the elements counts. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + /// Specifies the size of the count and indices arrays. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElements(PrimitiveType mode, IntPtr count, DrawElementsType type, IntPtr* indices, int drawcount) => _MultiDrawElements_intptr(mode, count, type, indices, drawcount); + + // --- + + /// + /// glMultiDrawElementsBaseVertex behaves identically to glDrawElementsBaseVertex, except that drawcount separate lists of elements are specifried instead. + /// It has the same effect as: for (int i = 0; i < drawcount; i++) if (count[i] > 0) glDrawElementsBaseVertex(mode, count[i], type, indices[i], basevertex[i]); + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Points to an array of the elements counts. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + /// Specifies the size of the count, indices and basevertex arrays. + /// Specifies a pointer to the location where the base vertices are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsBaseVertex(PrimitiveType mode, int[] count, DrawElementsType type, IntPtr* indices, int drawcount, int[] basevertex) => _MultiDrawElementsBaseVertex(mode, count, type, indices, drawcount, basevertex); + + /// + /// glMultiDrawElementsBaseVertex behaves identically to glDrawElementsBaseVertex, except that drawcount separate lists of elements are specifried instead. + /// It has the same effect as: for (int i = 0; i < drawcount; i++) if (count[i] > 0) glDrawElementsBaseVertex(mode, count[i], type, indices[i], basevertex[i]); + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Points to an array of the elements counts. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + /// Specifies the size of the count, indices and basevertex arrays. + /// Specifies a pointer to the location where the base vertices are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsBaseVertex(PrimitiveType mode, void* count, DrawElementsType type, IntPtr* indices, int drawcount, void* basevertex) => _MultiDrawElementsBaseVertex_ptr(mode, count, type, indices, drawcount, basevertex); + + /// + /// glMultiDrawElementsBaseVertex behaves identically to glDrawElementsBaseVertex, except that drawcount separate lists of elements are specifried instead. + /// It has the same effect as: for (int i = 0; i < drawcount; i++) if (count[i] > 0) glDrawElementsBaseVertex(mode, count[i], type, indices[i], basevertex[i]); + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY and GL_PATCHES are accepted. + /// Points to an array of the elements counts. + /// Specifies the type of the values in indices. Must be one of GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, or GL_UNSIGNED_INT. + /// Specifies a pointer to the location where the indices are stored. + /// Specifies the size of the count, indices and basevertex arrays. + /// Specifies a pointer to the location where the base vertices are stored. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsBaseVertex(PrimitiveType mode, IntPtr count, DrawElementsType type, IntPtr* indices, int drawcount, IntPtr basevertex) => _MultiDrawElementsBaseVertex_intptr(mode, count, type, indices, drawcount, basevertex); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsBaseVertexEXT(PrimitiveType mode, int[] count, DrawElementsType type, IntPtr* indices, int primcount, int[] basevertex) => _MultiDrawElementsBaseVertexEXT(mode, count, type, indices, primcount, basevertex); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsBaseVertexEXT(PrimitiveType mode, void* count, DrawElementsType type, IntPtr* indices, int primcount, void* basevertex) => _MultiDrawElementsBaseVertexEXT_ptr(mode, count, type, indices, primcount, basevertex); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsBaseVertexEXT(PrimitiveType mode, IntPtr count, DrawElementsType type, IntPtr* indices, int primcount, IntPtr basevertex) => _MultiDrawElementsBaseVertexEXT_intptr(mode, count, type, indices, primcount, basevertex); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsEXT(PrimitiveType mode, int[] count, DrawElementsType type, IntPtr* indices, int primcount) => _MultiDrawElementsEXT(mode, count, type, indices, primcount); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsEXT(PrimitiveType mode, void* count, DrawElementsType type, IntPtr* indices, int primcount) => _MultiDrawElementsEXT_ptr(mode, count, type, indices, primcount); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsEXT(PrimitiveType mode, IntPtr count, DrawElementsType type, IntPtr* indices, int primcount) => _MultiDrawElementsEXT_intptr(mode, count, type, indices, primcount); + + // --- + + /// + /// glMultiDrawElementsIndirect specifies multiple indexed geometric primitives with very few subroutine calls. glMultiDrawElementsIndirect behaves similarly to a multitude of calls to glDrawElementsInstancedBaseVertexBaseInstance, execpt that the parameters to glDrawElementsInstancedBaseVertexBaseInstance are stored in an array in memory at the address given by indirect, separated by the stride, in basic machine units, specified by stride. If stride is zero, then the array is assumed to be tightly packed in memory. + /// The parameters addressed by indirect are packed into a structure that takes the form (in C): typedef struct { uint count; uint instanceCount; uint firstIndex; uint baseVertex; uint baseInstance; } DrawElementsIndirectCommand; + /// A single call to glMultiDrawElementsIndirect is equivalent, assuming no errors are generated to: GLsizei n; for (n = 0; n < drawcount; n++) { const DrawElementsIndirectCommand *cmd; if (stride != 0) { cmd = (const DrawElementsIndirectCommand *)((uintptr)indirect + n * stride); } else { cmd = (const DrawElementsIndirectCommand *)indirect + n; } glDrawElementsInstancedBaseVertexBaseInstance(mode, cmd->count, type, cmd->firstIndex * size-of-type, cmd->instanceCount, cmd->baseVertex, cmd->baseInstance); } + /// If a buffer is bound to the GL_DRAW_INDIRECT_BUFFER binding at the time of a call to glDrawElementsIndirect, indirect is interpreted as an offset, in basic machine units, into that buffer and the parameter data is read from the buffer rather than from client memory. + /// Note that indices stored in client memory are not supported. If no buffer is bound to the GL_ELEMENT_ARRAY_BUFFER binding, an error will be generated. + /// The results of the operation are undefined if the reservedMustBeZero member of the parameter structure is non-zero. However, no error is generated in this case. + /// Vertex attributes that are modified by glDrawElementsIndirect have an unspecified value after glDrawElementsIndirect returns. Attributes that aren't modified remain well defined. + /// + /// Specifies what kind of primitives to render. Symbolic constants GL_POINTS, GL_LINE_STRIP, GL_LINE_LOOP, GL_LINES, GL_LINE_STRIP_ADJACENCY, GL_LINES_ADJACENCY, GL_TRIANGLE_STRIP, GL_TRIANGLE_FAN, GL_TRIANGLES, GL_TRIANGLE_STRIP_ADJACENCY, GL_TRIANGLES_ADJACENCY, and GL_PATCHES are accepted. + /// Specifies the type of data in the buffer bound to the GL_ELEMENT_ARRAY_BUFFER binding. + /// Specifies the address of a structure containing an array of draw parameters. + /// Specifies the number of elements in the array addressed by indirect. + /// Specifies the distance in basic machine units between elements of the draw parameter array. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsIndirect(PrimitiveType mode, DrawElementsType type, IntPtr indirect, int drawcount, int stride) => _MultiDrawElementsIndirect(mode, type, indirect, drawcount, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsIndirectAMD(PrimitiveType mode, DrawElementsType type, IntPtr indirect, int primcount, int stride) => _MultiDrawElementsIndirectAMD(mode, type, indirect, primcount, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsIndirectBindlessCountNV(PrimitiveType mode, DrawElementsType type, IntPtr indirect, int drawCount, int maxDrawCount, int stride, int vertexBufferCount) => _MultiDrawElementsIndirectBindlessCountNV(mode, type, indirect, drawCount, maxDrawCount, stride, vertexBufferCount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsIndirectBindlessNV(PrimitiveType mode, DrawElementsType type, IntPtr indirect, int drawCount, int stride, int vertexBufferCount) => _MultiDrawElementsIndirectBindlessNV(mode, type, indirect, drawCount, stride, vertexBufferCount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsIndirectCount(PrimitiveType mode, DrawElementsType type, IntPtr indirect, IntPtr drawcount, int maxdrawcount, int stride) => _MultiDrawElementsIndirectCount(mode, type, indirect, drawcount, maxdrawcount, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsIndirectCountARB(PrimitiveType mode, DrawElementsType type, IntPtr indirect, IntPtr drawcount, int maxdrawcount, int stride) => _MultiDrawElementsIndirectCountARB(mode, type, indirect, drawcount, maxdrawcount, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawElementsIndirectEXT(PrimitiveType mode, DrawElementsType type, IntPtr indirect, int drawcount, int stride) => _MultiDrawElementsIndirectEXT(mode, type, indirect, drawcount, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawMeshTasksIndirectNV(IntPtr indirect, int drawcount, int stride) => _MultiDrawMeshTasksIndirectNV(indirect, drawcount, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawMeshTasksIndirectCountNV(IntPtr indirect, IntPtr drawcount, int maxdrawcount, int stride) => _MultiDrawMeshTasksIndirectCountNV(indirect, drawcount, maxdrawcount, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawRangeElementArrayAPPLE(PrimitiveType mode, uint start, uint end, int[] first, int[] count, int primcount) => _MultiDrawRangeElementArrayAPPLE(mode, start, end, first, count, primcount); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawRangeElementArrayAPPLE(PrimitiveType mode, uint start, uint end, void* first, void* count, int primcount) => _MultiDrawRangeElementArrayAPPLE_ptr(mode, start, end, first, count, primcount); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiDrawRangeElementArrayAPPLE(PrimitiveType mode, uint start, uint end, IntPtr first, IntPtr count, int primcount) => _MultiDrawRangeElementArrayAPPLE_intptr(mode, start, end, first, count, primcount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiModeDrawArraysIBM(PrimitiveType[] mode, int[] first, int[] count, int primcount, int modestride) => _MultiModeDrawArraysIBM(mode, first, count, primcount, modestride); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiModeDrawArraysIBM(void* mode, void* first, void* count, int primcount, int modestride) => _MultiModeDrawArraysIBM_ptr(mode, first, count, primcount, modestride); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiModeDrawArraysIBM(IntPtr mode, IntPtr first, IntPtr count, int primcount, int modestride) => _MultiModeDrawArraysIBM_intptr(mode, first, count, primcount, modestride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiModeDrawElementsIBM(PrimitiveType[] mode, int[] count, DrawElementsType type, IntPtr* indices, int primcount, int modestride) => _MultiModeDrawElementsIBM(mode, count, type, indices, primcount, modestride); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiModeDrawElementsIBM(void* mode, void* count, DrawElementsType type, IntPtr* indices, int primcount, int modestride) => _MultiModeDrawElementsIBM_ptr(mode, count, type, indices, primcount, modestride); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiModeDrawElementsIBM(IntPtr mode, IntPtr count, DrawElementsType type, IntPtr* indices, int primcount, int modestride) => _MultiModeDrawElementsIBM_intptr(mode, count, type, indices, primcount, modestride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexBufferEXT(TextureUnit texunit, TextureTarget target, int internalformat, uint buffer) => _MultiTexBufferEXT(texunit, target, internalformat, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1bOES(TextureUnit texture, sbyte s) => _MultiTexCoord1bOES(texture, s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1bvOES(TextureUnit texture, sbyte[] coords) => _MultiTexCoord1bvOES(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1bvOES(TextureUnit texture, void* coords) => _MultiTexCoord1bvOES_ptr(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1bvOES(TextureUnit texture, IntPtr coords) => _MultiTexCoord1bvOES_intptr(texture, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1d(TextureUnit target, double s) => _MultiTexCoord1d(target, s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1dARB(TextureUnit target, double s) => _MultiTexCoord1dARB(target, s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1dv(TextureUnit target, double[] v) => _MultiTexCoord1dv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1dv(TextureUnit target, void* v) => _MultiTexCoord1dv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1dv(TextureUnit target, IntPtr v) => _MultiTexCoord1dv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1dvARB(TextureUnit target, double[] v) => _MultiTexCoord1dvARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1dvARB(TextureUnit target, void* v) => _MultiTexCoord1dvARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1dvARB(TextureUnit target, IntPtr v) => _MultiTexCoord1dvARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1f(TextureUnit target, float s) => _MultiTexCoord1f(target, s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1fARB(TextureUnit target, float s) => _MultiTexCoord1fARB(target, s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1fv(TextureUnit target, float[] v) => _MultiTexCoord1fv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1fv(TextureUnit target, void* v) => _MultiTexCoord1fv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1fv(TextureUnit target, IntPtr v) => _MultiTexCoord1fv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1fvARB(TextureUnit target, float[] v) => _MultiTexCoord1fvARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1fvARB(TextureUnit target, void* v) => _MultiTexCoord1fvARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1fvARB(TextureUnit target, IntPtr v) => _MultiTexCoord1fvARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1hNV(TextureUnit target, float s) => _MultiTexCoord1hNV(target, s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1hvNV(TextureUnit target, float[] v) => _MultiTexCoord1hvNV(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1hvNV(TextureUnit target, void* v) => _MultiTexCoord1hvNV_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1hvNV(TextureUnit target, IntPtr v) => _MultiTexCoord1hvNV_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1i(TextureUnit target, int s) => _MultiTexCoord1i(target, s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1iARB(TextureUnit target, int s) => _MultiTexCoord1iARB(target, s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1iv(TextureUnit target, int[] v) => _MultiTexCoord1iv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1iv(TextureUnit target, void* v) => _MultiTexCoord1iv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1iv(TextureUnit target, IntPtr v) => _MultiTexCoord1iv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1ivARB(TextureUnit target, int[] v) => _MultiTexCoord1ivARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1ivARB(TextureUnit target, void* v) => _MultiTexCoord1ivARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1ivARB(TextureUnit target, IntPtr v) => _MultiTexCoord1ivARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1s(TextureUnit target, short s) => _MultiTexCoord1s(target, s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1sARB(TextureUnit target, short s) => _MultiTexCoord1sARB(target, s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1sv(TextureUnit target, short[] v) => _MultiTexCoord1sv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1sv(TextureUnit target, void* v) => _MultiTexCoord1sv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1sv(TextureUnit target, IntPtr v) => _MultiTexCoord1sv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1svARB(TextureUnit target, short[] v) => _MultiTexCoord1svARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1svARB(TextureUnit target, void* v) => _MultiTexCoord1svARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1svARB(TextureUnit target, IntPtr v) => _MultiTexCoord1svARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1xOES(TextureUnit texture, float s) => _MultiTexCoord1xOES(texture, s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1xvOES(TextureUnit texture, float[] coords) => _MultiTexCoord1xvOES(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1xvOES(TextureUnit texture, void* coords) => _MultiTexCoord1xvOES_ptr(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord1xvOES(TextureUnit texture, IntPtr coords) => _MultiTexCoord1xvOES_intptr(texture, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2bOES(TextureUnit texture, sbyte s, sbyte t) => _MultiTexCoord2bOES(texture, s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2bvOES(TextureUnit texture, sbyte[] coords) => _MultiTexCoord2bvOES(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2bvOES(TextureUnit texture, void* coords) => _MultiTexCoord2bvOES_ptr(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2bvOES(TextureUnit texture, IntPtr coords) => _MultiTexCoord2bvOES_intptr(texture, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2d(TextureUnit target, double s, double t) => _MultiTexCoord2d(target, s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2dARB(TextureUnit target, double s, double t) => _MultiTexCoord2dARB(target, s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2dv(TextureUnit target, double[] v) => _MultiTexCoord2dv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2dv(TextureUnit target, void* v) => _MultiTexCoord2dv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2dv(TextureUnit target, IntPtr v) => _MultiTexCoord2dv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2dvARB(TextureUnit target, double[] v) => _MultiTexCoord2dvARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2dvARB(TextureUnit target, void* v) => _MultiTexCoord2dvARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2dvARB(TextureUnit target, IntPtr v) => _MultiTexCoord2dvARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2f(TextureUnit target, float s, float t) => _MultiTexCoord2f(target, s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2fARB(TextureUnit target, float s, float t) => _MultiTexCoord2fARB(target, s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2fv(TextureUnit target, float[] v) => _MultiTexCoord2fv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2fv(TextureUnit target, void* v) => _MultiTexCoord2fv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2fv(TextureUnit target, IntPtr v) => _MultiTexCoord2fv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2fvARB(TextureUnit target, float[] v) => _MultiTexCoord2fvARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2fvARB(TextureUnit target, void* v) => _MultiTexCoord2fvARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2fvARB(TextureUnit target, IntPtr v) => _MultiTexCoord2fvARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2hNV(TextureUnit target, float s, float t) => _MultiTexCoord2hNV(target, s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2hvNV(TextureUnit target, float[] v) => _MultiTexCoord2hvNV(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2hvNV(TextureUnit target, void* v) => _MultiTexCoord2hvNV_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2hvNV(TextureUnit target, IntPtr v) => _MultiTexCoord2hvNV_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2i(TextureUnit target, int s, int t) => _MultiTexCoord2i(target, s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2iARB(TextureUnit target, int s, int t) => _MultiTexCoord2iARB(target, s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2iv(TextureUnit target, int[] v) => _MultiTexCoord2iv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2iv(TextureUnit target, void* v) => _MultiTexCoord2iv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2iv(TextureUnit target, IntPtr v) => _MultiTexCoord2iv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2ivARB(TextureUnit target, int[] v) => _MultiTexCoord2ivARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2ivARB(TextureUnit target, void* v) => _MultiTexCoord2ivARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2ivARB(TextureUnit target, IntPtr v) => _MultiTexCoord2ivARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2s(TextureUnit target, short s, short t) => _MultiTexCoord2s(target, s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2sARB(TextureUnit target, short s, short t) => _MultiTexCoord2sARB(target, s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2sv(TextureUnit target, short[] v) => _MultiTexCoord2sv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2sv(TextureUnit target, void* v) => _MultiTexCoord2sv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2sv(TextureUnit target, IntPtr v) => _MultiTexCoord2sv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2svARB(TextureUnit target, short[] v) => _MultiTexCoord2svARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2svARB(TextureUnit target, void* v) => _MultiTexCoord2svARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2svARB(TextureUnit target, IntPtr v) => _MultiTexCoord2svARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2xOES(TextureUnit texture, float s, float t) => _MultiTexCoord2xOES(texture, s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2xvOES(TextureUnit texture, float[] coords) => _MultiTexCoord2xvOES(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2xvOES(TextureUnit texture, void* coords) => _MultiTexCoord2xvOES_ptr(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord2xvOES(TextureUnit texture, IntPtr coords) => _MultiTexCoord2xvOES_intptr(texture, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3bOES(TextureUnit texture, sbyte s, sbyte t, sbyte r) => _MultiTexCoord3bOES(texture, s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3bvOES(TextureUnit texture, sbyte[] coords) => _MultiTexCoord3bvOES(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3bvOES(TextureUnit texture, void* coords) => _MultiTexCoord3bvOES_ptr(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3bvOES(TextureUnit texture, IntPtr coords) => _MultiTexCoord3bvOES_intptr(texture, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3d(TextureUnit target, double s, double t, double r) => _MultiTexCoord3d(target, s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3dARB(TextureUnit target, double s, double t, double r) => _MultiTexCoord3dARB(target, s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3dv(TextureUnit target, double[] v) => _MultiTexCoord3dv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3dv(TextureUnit target, void* v) => _MultiTexCoord3dv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3dv(TextureUnit target, IntPtr v) => _MultiTexCoord3dv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3dvARB(TextureUnit target, double[] v) => _MultiTexCoord3dvARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3dvARB(TextureUnit target, void* v) => _MultiTexCoord3dvARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3dvARB(TextureUnit target, IntPtr v) => _MultiTexCoord3dvARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3f(TextureUnit target, float s, float t, float r) => _MultiTexCoord3f(target, s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3fARB(TextureUnit target, float s, float t, float r) => _MultiTexCoord3fARB(target, s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3fv(TextureUnit target, float[] v) => _MultiTexCoord3fv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3fv(TextureUnit target, void* v) => _MultiTexCoord3fv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3fv(TextureUnit target, IntPtr v) => _MultiTexCoord3fv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3fvARB(TextureUnit target, float[] v) => _MultiTexCoord3fvARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3fvARB(TextureUnit target, void* v) => _MultiTexCoord3fvARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3fvARB(TextureUnit target, IntPtr v) => _MultiTexCoord3fvARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3hNV(TextureUnit target, float s, float t, float r) => _MultiTexCoord3hNV(target, s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3hvNV(TextureUnit target, float[] v) => _MultiTexCoord3hvNV(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3hvNV(TextureUnit target, void* v) => _MultiTexCoord3hvNV_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3hvNV(TextureUnit target, IntPtr v) => _MultiTexCoord3hvNV_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3i(TextureUnit target, int s, int t, int r) => _MultiTexCoord3i(target, s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3iARB(TextureUnit target, int s, int t, int r) => _MultiTexCoord3iARB(target, s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3iv(TextureUnit target, int[] v) => _MultiTexCoord3iv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3iv(TextureUnit target, void* v) => _MultiTexCoord3iv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3iv(TextureUnit target, IntPtr v) => _MultiTexCoord3iv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3ivARB(TextureUnit target, int[] v) => _MultiTexCoord3ivARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3ivARB(TextureUnit target, void* v) => _MultiTexCoord3ivARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3ivARB(TextureUnit target, IntPtr v) => _MultiTexCoord3ivARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3s(TextureUnit target, short s, short t, short r) => _MultiTexCoord3s(target, s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3sARB(TextureUnit target, short s, short t, short r) => _MultiTexCoord3sARB(target, s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3sv(TextureUnit target, short[] v) => _MultiTexCoord3sv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3sv(TextureUnit target, void* v) => _MultiTexCoord3sv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3sv(TextureUnit target, IntPtr v) => _MultiTexCoord3sv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3svARB(TextureUnit target, short[] v) => _MultiTexCoord3svARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3svARB(TextureUnit target, void* v) => _MultiTexCoord3svARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3svARB(TextureUnit target, IntPtr v) => _MultiTexCoord3svARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3xOES(TextureUnit texture, float s, float t, float r) => _MultiTexCoord3xOES(texture, s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3xvOES(TextureUnit texture, float[] coords) => _MultiTexCoord3xvOES(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3xvOES(TextureUnit texture, void* coords) => _MultiTexCoord3xvOES_ptr(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord3xvOES(TextureUnit texture, IntPtr coords) => _MultiTexCoord3xvOES_intptr(texture, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4bOES(TextureUnit texture, sbyte s, sbyte t, sbyte r, sbyte q) => _MultiTexCoord4bOES(texture, s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4bvOES(TextureUnit texture, sbyte[] coords) => _MultiTexCoord4bvOES(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4bvOES(TextureUnit texture, void* coords) => _MultiTexCoord4bvOES_ptr(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4bvOES(TextureUnit texture, IntPtr coords) => _MultiTexCoord4bvOES_intptr(texture, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4d(TextureUnit target, double s, double t, double r, double q) => _MultiTexCoord4d(target, s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4dARB(TextureUnit target, double s, double t, double r, double q) => _MultiTexCoord4dARB(target, s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4dv(TextureUnit target, double[] v) => _MultiTexCoord4dv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4dv(TextureUnit target, void* v) => _MultiTexCoord4dv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4dv(TextureUnit target, IntPtr v) => _MultiTexCoord4dv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4dvARB(TextureUnit target, double[] v) => _MultiTexCoord4dvARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4dvARB(TextureUnit target, void* v) => _MultiTexCoord4dvARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4dvARB(TextureUnit target, IntPtr v) => _MultiTexCoord4dvARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4f(TextureUnit target, float s, float t, float r, float q) => _MultiTexCoord4f(target, s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4fARB(TextureUnit target, float s, float t, float r, float q) => _MultiTexCoord4fARB(target, s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4fv(TextureUnit target, float[] v) => _MultiTexCoord4fv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4fv(TextureUnit target, void* v) => _MultiTexCoord4fv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4fv(TextureUnit target, IntPtr v) => _MultiTexCoord4fv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4fvARB(TextureUnit target, float[] v) => _MultiTexCoord4fvARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4fvARB(TextureUnit target, void* v) => _MultiTexCoord4fvARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4fvARB(TextureUnit target, IntPtr v) => _MultiTexCoord4fvARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4hNV(TextureUnit target, float s, float t, float r, float q) => _MultiTexCoord4hNV(target, s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4hvNV(TextureUnit target, float[] v) => _MultiTexCoord4hvNV(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4hvNV(TextureUnit target, void* v) => _MultiTexCoord4hvNV_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4hvNV(TextureUnit target, IntPtr v) => _MultiTexCoord4hvNV_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4i(TextureUnit target, int s, int t, int r, int q) => _MultiTexCoord4i(target, s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4iARB(TextureUnit target, int s, int t, int r, int q) => _MultiTexCoord4iARB(target, s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4iv(TextureUnit target, int[] v) => _MultiTexCoord4iv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4iv(TextureUnit target, void* v) => _MultiTexCoord4iv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4iv(TextureUnit target, IntPtr v) => _MultiTexCoord4iv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4ivARB(TextureUnit target, int[] v) => _MultiTexCoord4ivARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4ivARB(TextureUnit target, void* v) => _MultiTexCoord4ivARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4ivARB(TextureUnit target, IntPtr v) => _MultiTexCoord4ivARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4s(TextureUnit target, short s, short t, short r, short q) => _MultiTexCoord4s(target, s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4sARB(TextureUnit target, short s, short t, short r, short q) => _MultiTexCoord4sARB(target, s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4sv(TextureUnit target, short[] v) => _MultiTexCoord4sv(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4sv(TextureUnit target, void* v) => _MultiTexCoord4sv_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4sv(TextureUnit target, IntPtr v) => _MultiTexCoord4sv_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4svARB(TextureUnit target, short[] v) => _MultiTexCoord4svARB(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4svARB(TextureUnit target, void* v) => _MultiTexCoord4svARB_ptr(target, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4svARB(TextureUnit target, IntPtr v) => _MultiTexCoord4svARB_intptr(target, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4x(TextureUnit texture, float s, float t, float r, float q) => _MultiTexCoord4x(texture, s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4xOES(TextureUnit texture, float s, float t, float r, float q) => _MultiTexCoord4xOES(texture, s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4xvOES(TextureUnit texture, float[] coords) => _MultiTexCoord4xvOES(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4xvOES(TextureUnit texture, void* coords) => _MultiTexCoord4xvOES_ptr(texture, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoord4xvOES(TextureUnit texture, IntPtr coords) => _MultiTexCoord4xvOES_intptr(texture, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP1ui(TextureUnit texture, TexCoordPointerType type, uint coords) => _MultiTexCoordP1ui(texture, type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP1uiv(TextureUnit texture, TexCoordPointerType type, uint[] coords) => _MultiTexCoordP1uiv(texture, type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP1uiv(TextureUnit texture, TexCoordPointerType type, void* coords) => _MultiTexCoordP1uiv_ptr(texture, type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP1uiv(TextureUnit texture, TexCoordPointerType type, IntPtr coords) => _MultiTexCoordP1uiv_intptr(texture, type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP2ui(TextureUnit texture, TexCoordPointerType type, uint coords) => _MultiTexCoordP2ui(texture, type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP2uiv(TextureUnit texture, TexCoordPointerType type, uint[] coords) => _MultiTexCoordP2uiv(texture, type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP2uiv(TextureUnit texture, TexCoordPointerType type, void* coords) => _MultiTexCoordP2uiv_ptr(texture, type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP2uiv(TextureUnit texture, TexCoordPointerType type, IntPtr coords) => _MultiTexCoordP2uiv_intptr(texture, type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP3ui(TextureUnit texture, TexCoordPointerType type, uint coords) => _MultiTexCoordP3ui(texture, type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP3uiv(TextureUnit texture, TexCoordPointerType type, uint[] coords) => _MultiTexCoordP3uiv(texture, type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP3uiv(TextureUnit texture, TexCoordPointerType type, void* coords) => _MultiTexCoordP3uiv_ptr(texture, type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP3uiv(TextureUnit texture, TexCoordPointerType type, IntPtr coords) => _MultiTexCoordP3uiv_intptr(texture, type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP4ui(TextureUnit texture, TexCoordPointerType type, uint coords) => _MultiTexCoordP4ui(texture, type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP4uiv(TextureUnit texture, TexCoordPointerType type, uint[] coords) => _MultiTexCoordP4uiv(texture, type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP4uiv(TextureUnit texture, TexCoordPointerType type, void* coords) => _MultiTexCoordP4uiv_ptr(texture, type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordP4uiv(TextureUnit texture, TexCoordPointerType type, IntPtr coords) => _MultiTexCoordP4uiv_intptr(texture, type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexCoordPointerEXT(TextureUnit texunit, int size, TexCoordPointerType type, int stride, IntPtr pointer) => _MultiTexCoordPointerEXT(texunit, size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexEnvfEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, float param) => _MultiTexEnvfEXT(texunit, target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexEnvfvEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, float[] @params) => _MultiTexEnvfvEXT(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexEnvfvEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, void* @params) => _MultiTexEnvfvEXT_ptr(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexEnvfvEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params) => _MultiTexEnvfvEXT_intptr(texunit, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexEnviEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, int param) => _MultiTexEnviEXT(texunit, target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexEnvivEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, int[] @params) => _MultiTexEnvivEXT(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexEnvivEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, void* @params) => _MultiTexEnvivEXT_ptr(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexEnvivEXT(TextureUnit texunit, TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params) => _MultiTexEnvivEXT_intptr(texunit, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexGendEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, double param) => _MultiTexGendEXT(texunit, coord, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexGendvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, double[] @params) => _MultiTexGendvEXT(texunit, coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexGendvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, void* @params) => _MultiTexGendvEXT_ptr(texunit, coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexGendvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _MultiTexGendvEXT_intptr(texunit, coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexGenfEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, float param) => _MultiTexGenfEXT(texunit, coord, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexGenfvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, float[] @params) => _MultiTexGenfvEXT(texunit, coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexGenfvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, void* @params) => _MultiTexGenfvEXT_ptr(texunit, coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexGenfvEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _MultiTexGenfvEXT_intptr(texunit, coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexGeniEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, int param) => _MultiTexGeniEXT(texunit, coord, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexGenivEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, int[] @params) => _MultiTexGenivEXT(texunit, coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexGenivEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, void* @params) => _MultiTexGenivEXT_ptr(texunit, coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexGenivEXT(TextureUnit texunit, TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _MultiTexGenivEXT_intptr(texunit, coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexImage1DEXT(TextureUnit texunit, TextureTarget target, int level, int internalformat, int width, int border, PixelFormat format, PixelType type, IntPtr pixels) => _MultiTexImage1DEXT(texunit, target, level, internalformat, width, border, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexImage2DEXT(TextureUnit texunit, TextureTarget target, int level, int internalformat, int width, int height, int border, PixelFormat format, PixelType type, IntPtr pixels) => _MultiTexImage2DEXT(texunit, target, level, internalformat, width, height, border, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexImage3DEXT(TextureUnit texunit, TextureTarget target, int level, int internalformat, int width, int height, int depth, int border, PixelFormat format, PixelType type, IntPtr pixels) => _MultiTexImage3DEXT(texunit, target, level, internalformat, width, height, depth, border, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterIivEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, int[] @params) => _MultiTexParameterIivEXT(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterIivEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, void* @params) => _MultiTexParameterIivEXT_ptr(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterIivEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, IntPtr @params) => _MultiTexParameterIivEXT_intptr(texunit, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterIuivEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, uint[] @params) => _MultiTexParameterIuivEXT(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterIuivEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, void* @params) => _MultiTexParameterIuivEXT_ptr(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterIuivEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, IntPtr @params) => _MultiTexParameterIuivEXT_intptr(texunit, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterfEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, float param) => _MultiTexParameterfEXT(texunit, target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterfvEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, float[] @params) => _MultiTexParameterfvEXT(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterfvEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, void* @params) => _MultiTexParameterfvEXT_ptr(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterfvEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, IntPtr @params) => _MultiTexParameterfvEXT_intptr(texunit, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameteriEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, int param) => _MultiTexParameteriEXT(texunit, target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterivEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, int[] @params) => _MultiTexParameterivEXT(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterivEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, void* @params) => _MultiTexParameterivEXT_ptr(texunit, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexParameterivEXT(TextureUnit texunit, TextureTarget target, TextureParameterName pname, IntPtr @params) => _MultiTexParameterivEXT_intptr(texunit, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexRenderbufferEXT(TextureUnit texunit, TextureTarget target, uint renderbuffer) => _MultiTexRenderbufferEXT(texunit, target, renderbuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexSubImage1DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int width, PixelFormat format, PixelType type, IntPtr pixels) => _MultiTexSubImage1DEXT(texunit, target, level, xoffset, width, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexSubImage2DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, PixelType type, IntPtr pixels) => _MultiTexSubImage2DEXT(texunit, target, level, xoffset, yoffset, width, height, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MultiTexSubImage3DEXT(TextureUnit texunit, TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr pixels) => _MultiTexSubImage3DEXT(texunit, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastBarrierNV() => _MulticastBarrierNV(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastBlitFramebufferNV(uint srcGpu, uint dstGpu, int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter) => _MulticastBlitFramebufferNV(srcGpu, dstGpu, srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastBufferSubDataNV(int gpuMask, uint buffer, IntPtr offset, IntPtr size, IntPtr data) => _MulticastBufferSubDataNV(gpuMask, buffer, offset, size, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastCopyBufferSubDataNV(uint readGpu, int writeGpuMask, uint readBuffer, uint writeBuffer, IntPtr readOffset, IntPtr writeOffset, IntPtr size) => _MulticastCopyBufferSubDataNV(readGpu, writeGpuMask, readBuffer, writeBuffer, readOffset, writeOffset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastCopyImageSubDataNV(uint srcGpu, int dstGpuMask, uint srcName, int srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, int dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth) => _MulticastCopyImageSubDataNV(srcGpu, dstGpuMask, srcName, srcTarget, srcLevel, srcX, srcY, srcZ, dstName, dstTarget, dstLevel, dstX, dstY, dstZ, srcWidth, srcHeight, srcDepth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastFramebufferSampleLocationsfvNV(uint gpu, uint framebuffer, uint start, int count, float[] v) => _MulticastFramebufferSampleLocationsfvNV(gpu, framebuffer, start, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastFramebufferSampleLocationsfvNV(uint gpu, uint framebuffer, uint start, int count, void* v) => _MulticastFramebufferSampleLocationsfvNV_ptr(gpu, framebuffer, start, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastFramebufferSampleLocationsfvNV(uint gpu, uint framebuffer, uint start, int count, IntPtr v) => _MulticastFramebufferSampleLocationsfvNV_intptr(gpu, framebuffer, start, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastGetQueryObjecti64vNV(uint gpu, uint id, int pname, Int64[] @params) => _MulticastGetQueryObjecti64vNV(gpu, id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastGetQueryObjecti64vNV(uint gpu, uint id, int pname, void* @params) => _MulticastGetQueryObjecti64vNV_ptr(gpu, id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastGetQueryObjecti64vNV(uint gpu, uint id, int pname, IntPtr @params) => _MulticastGetQueryObjecti64vNV_intptr(gpu, id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastGetQueryObjectivNV(uint gpu, uint id, int pname, int[] @params) => _MulticastGetQueryObjectivNV(gpu, id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastGetQueryObjectivNV(uint gpu, uint id, int pname, void* @params) => _MulticastGetQueryObjectivNV_ptr(gpu, id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastGetQueryObjectivNV(uint gpu, uint id, int pname, IntPtr @params) => _MulticastGetQueryObjectivNV_intptr(gpu, id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastGetQueryObjectui64vNV(uint gpu, uint id, int pname, UInt64[] @params) => _MulticastGetQueryObjectui64vNV(gpu, id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastGetQueryObjectui64vNV(uint gpu, uint id, int pname, void* @params) => _MulticastGetQueryObjectui64vNV_ptr(gpu, id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastGetQueryObjectui64vNV(uint gpu, uint id, int pname, IntPtr @params) => _MulticastGetQueryObjectui64vNV_intptr(gpu, id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastGetQueryObjectuivNV(uint gpu, uint id, int pname, uint[] @params) => _MulticastGetQueryObjectuivNV(gpu, id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastGetQueryObjectuivNV(uint gpu, uint id, int pname, void* @params) => _MulticastGetQueryObjectuivNV_ptr(gpu, id, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastGetQueryObjectuivNV(uint gpu, uint id, int pname, IntPtr @params) => _MulticastGetQueryObjectuivNV_intptr(gpu, id, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastScissorArrayvNVX(uint gpu, uint first, int count, int[] v) => _MulticastScissorArrayvNVX(gpu, first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastScissorArrayvNVX(uint gpu, uint first, int count, void* v) => _MulticastScissorArrayvNVX_ptr(gpu, first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastScissorArrayvNVX(uint gpu, uint first, int count, IntPtr v) => _MulticastScissorArrayvNVX_intptr(gpu, first, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastViewportArrayvNVX(uint gpu, uint first, int count, float[] v) => _MulticastViewportArrayvNVX(gpu, first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastViewportArrayvNVX(uint gpu, uint first, int count, void* v) => _MulticastViewportArrayvNVX_ptr(gpu, first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastViewportArrayvNVX(uint gpu, uint first, int count, IntPtr v) => _MulticastViewportArrayvNVX_intptr(gpu, first, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastViewportPositionWScaleNVX(uint gpu, uint index, float xcoeff, float ycoeff) => _MulticastViewportPositionWScaleNVX(gpu, index, xcoeff, ycoeff); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void MulticastWaitSyncNV(uint signalGpu, int waitGpuMask) => _MulticastWaitSyncNV(signalGpu, waitGpuMask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedBufferAttachMemoryNV(uint buffer, uint memory, UInt64 offset) => _NamedBufferAttachMemoryNV(buffer, memory, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedBufferData(uint buffer, IntPtr size, IntPtr data, VertexBufferObjectUsage usage) => _NamedBufferData(buffer, size, data, usage); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedBufferDataEXT(uint buffer, IntPtr size, IntPtr data, VertexBufferObjectUsage usage) => _NamedBufferDataEXT(buffer, size, data, usage); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedBufferPageCommitmentARB(uint buffer, IntPtr offset, IntPtr size, bool commit) => _NamedBufferPageCommitmentARB(buffer, offset, size, commit); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedBufferPageCommitmentEXT(uint buffer, IntPtr offset, IntPtr size, bool commit) => _NamedBufferPageCommitmentEXT(buffer, offset, size, commit); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedBufferStorage(uint buffer, IntPtr size, IntPtr data, int flags) => _NamedBufferStorage(buffer, size, data, flags); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedBufferStorageExternalEXT(uint buffer, IntPtr offset, IntPtr size, IntPtr clientBuffer, int flags) => _NamedBufferStorageExternalEXT(buffer, offset, size, clientBuffer, flags); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedBufferStorageEXT(uint buffer, IntPtr size, IntPtr data, int flags) => _NamedBufferStorageEXT(buffer, size, data, flags); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedBufferStorageMemEXT(uint buffer, IntPtr size, uint memory, UInt64 offset) => _NamedBufferStorageMemEXT(buffer, size, memory, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedBufferSubData(uint buffer, IntPtr offset, IntPtr size, IntPtr data) => _NamedBufferSubData(buffer, offset, size, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedBufferSubDataEXT(uint buffer, IntPtr offset, IntPtr size, IntPtr data) => _NamedBufferSubDataEXT(buffer, offset, size, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedCopyBufferSubDataEXT(uint readBuffer, uint writeBuffer, IntPtr readOffset, IntPtr writeOffset, IntPtr size) => _NamedCopyBufferSubDataEXT(readBuffer, writeBuffer, readOffset, writeOffset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferDrawBuffer(uint framebuffer, ColorBuffer buf) => _NamedFramebufferDrawBuffer(framebuffer, buf); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferDrawBuffers(uint framebuffer, int n, ColorBuffer[] bufs) => _NamedFramebufferDrawBuffers(framebuffer, n, bufs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferDrawBuffers(uint framebuffer, int n, void* bufs) => _NamedFramebufferDrawBuffers_ptr(framebuffer, n, bufs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferDrawBuffers(uint framebuffer, int n, IntPtr bufs) => _NamedFramebufferDrawBuffers_intptr(framebuffer, n, bufs); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferParameteri(uint framebuffer, FramebufferParameterName pname, int param) => _NamedFramebufferParameteri(framebuffer, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferParameteriEXT(uint framebuffer, FramebufferParameterName pname, int param) => _NamedFramebufferParameteriEXT(framebuffer, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferReadBuffer(uint framebuffer, ColorBuffer src) => _NamedFramebufferReadBuffer(framebuffer, src); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferRenderbuffer(uint framebuffer, FramebufferAttachment attachment, RenderbufferTarget renderbuffertarget, uint renderbuffer) => _NamedFramebufferRenderbuffer(framebuffer, attachment, renderbuffertarget, renderbuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferRenderbufferEXT(uint framebuffer, FramebufferAttachment attachment, RenderbufferTarget renderbuffertarget, uint renderbuffer) => _NamedFramebufferRenderbufferEXT(framebuffer, attachment, renderbuffertarget, renderbuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferSampleLocationsfvARB(uint framebuffer, uint start, int count, float[] v) => _NamedFramebufferSampleLocationsfvARB(framebuffer, start, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferSampleLocationsfvARB(uint framebuffer, uint start, int count, void* v) => _NamedFramebufferSampleLocationsfvARB_ptr(framebuffer, start, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferSampleLocationsfvARB(uint framebuffer, uint start, int count, IntPtr v) => _NamedFramebufferSampleLocationsfvARB_intptr(framebuffer, start, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferSampleLocationsfvNV(uint framebuffer, uint start, int count, float[] v) => _NamedFramebufferSampleLocationsfvNV(framebuffer, start, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferSampleLocationsfvNV(uint framebuffer, uint start, int count, void* v) => _NamedFramebufferSampleLocationsfvNV_ptr(framebuffer, start, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferSampleLocationsfvNV(uint framebuffer, uint start, int count, IntPtr v) => _NamedFramebufferSampleLocationsfvNV_intptr(framebuffer, start, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferTexture(uint framebuffer, FramebufferAttachment attachment, uint texture, int level) => _NamedFramebufferTexture(framebuffer, attachment, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferSamplePositionsfvAMD(uint framebuffer, uint numsamples, uint pixelindex, float[] values) => _NamedFramebufferSamplePositionsfvAMD(framebuffer, numsamples, pixelindex, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferSamplePositionsfvAMD(uint framebuffer, uint numsamples, uint pixelindex, void* values) => _NamedFramebufferSamplePositionsfvAMD_ptr(framebuffer, numsamples, pixelindex, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferSamplePositionsfvAMD(uint framebuffer, uint numsamples, uint pixelindex, IntPtr values) => _NamedFramebufferSamplePositionsfvAMD_intptr(framebuffer, numsamples, pixelindex, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferTexture1DEXT(uint framebuffer, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level) => _NamedFramebufferTexture1DEXT(framebuffer, attachment, textarget, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferTexture2DEXT(uint framebuffer, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level) => _NamedFramebufferTexture2DEXT(framebuffer, attachment, textarget, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferTexture3DEXT(uint framebuffer, FramebufferAttachment attachment, TextureTarget textarget, uint texture, int level, int zoffset) => _NamedFramebufferTexture3DEXT(framebuffer, attachment, textarget, texture, level, zoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferTextureEXT(uint framebuffer, FramebufferAttachment attachment, uint texture, int level) => _NamedFramebufferTextureEXT(framebuffer, attachment, texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferTextureFaceEXT(uint framebuffer, FramebufferAttachment attachment, uint texture, int level, TextureTarget face) => _NamedFramebufferTextureFaceEXT(framebuffer, attachment, texture, level, face); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferTextureLayer(uint framebuffer, FramebufferAttachment attachment, uint texture, int level, int layer) => _NamedFramebufferTextureLayer(framebuffer, attachment, texture, level, layer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedFramebufferTextureLayerEXT(uint framebuffer, FramebufferAttachment attachment, uint texture, int level, int layer) => _NamedFramebufferTextureLayerEXT(framebuffer, attachment, texture, level, layer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameter4dEXT(uint program, ProgramTarget target, uint index, double x, double y, double z, double w) => _NamedProgramLocalParameter4dEXT(program, target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameter4dvEXT(uint program, ProgramTarget target, uint index, double[] @params) => _NamedProgramLocalParameter4dvEXT(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameter4dvEXT(uint program, ProgramTarget target, uint index, void* @params) => _NamedProgramLocalParameter4dvEXT_ptr(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameter4dvEXT(uint program, ProgramTarget target, uint index, IntPtr @params) => _NamedProgramLocalParameter4dvEXT_intptr(program, target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameter4fEXT(uint program, ProgramTarget target, uint index, float x, float y, float z, float w) => _NamedProgramLocalParameter4fEXT(program, target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameter4fvEXT(uint program, ProgramTarget target, uint index, float[] @params) => _NamedProgramLocalParameter4fvEXT(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameter4fvEXT(uint program, ProgramTarget target, uint index, void* @params) => _NamedProgramLocalParameter4fvEXT_ptr(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameter4fvEXT(uint program, ProgramTarget target, uint index, IntPtr @params) => _NamedProgramLocalParameter4fvEXT_intptr(program, target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameterI4iEXT(uint program, ProgramTarget target, uint index, int x, int y, int z, int w) => _NamedProgramLocalParameterI4iEXT(program, target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameterI4ivEXT(uint program, ProgramTarget target, uint index, int[] @params) => _NamedProgramLocalParameterI4ivEXT(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameterI4ivEXT(uint program, ProgramTarget target, uint index, void* @params) => _NamedProgramLocalParameterI4ivEXT_ptr(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameterI4ivEXT(uint program, ProgramTarget target, uint index, IntPtr @params) => _NamedProgramLocalParameterI4ivEXT_intptr(program, target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameterI4uiEXT(uint program, ProgramTarget target, uint index, uint x, uint y, uint z, uint w) => _NamedProgramLocalParameterI4uiEXT(program, target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameterI4uivEXT(uint program, ProgramTarget target, uint index, uint[] @params) => _NamedProgramLocalParameterI4uivEXT(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameterI4uivEXT(uint program, ProgramTarget target, uint index, void* @params) => _NamedProgramLocalParameterI4uivEXT_ptr(program, target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameterI4uivEXT(uint program, ProgramTarget target, uint index, IntPtr @params) => _NamedProgramLocalParameterI4uivEXT_intptr(program, target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameters4fvEXT(uint program, ProgramTarget target, uint index, int count, float[] @params) => _NamedProgramLocalParameters4fvEXT(program, target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameters4fvEXT(uint program, ProgramTarget target, uint index, int count, void* @params) => _NamedProgramLocalParameters4fvEXT_ptr(program, target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParameters4fvEXT(uint program, ProgramTarget target, uint index, int count, IntPtr @params) => _NamedProgramLocalParameters4fvEXT_intptr(program, target, index, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParametersI4ivEXT(uint program, ProgramTarget target, uint index, int count, int[] @params) => _NamedProgramLocalParametersI4ivEXT(program, target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParametersI4ivEXT(uint program, ProgramTarget target, uint index, int count, void* @params) => _NamedProgramLocalParametersI4ivEXT_ptr(program, target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParametersI4ivEXT(uint program, ProgramTarget target, uint index, int count, IntPtr @params) => _NamedProgramLocalParametersI4ivEXT_intptr(program, target, index, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParametersI4uivEXT(uint program, ProgramTarget target, uint index, int count, uint[] @params) => _NamedProgramLocalParametersI4uivEXT(program, target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParametersI4uivEXT(uint program, ProgramTarget target, uint index, int count, void* @params) => _NamedProgramLocalParametersI4uivEXT_ptr(program, target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramLocalParametersI4uivEXT(uint program, ProgramTarget target, uint index, int count, IntPtr @params) => _NamedProgramLocalParametersI4uivEXT_intptr(program, target, index, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedProgramStringEXT(uint program, ProgramTarget target, ProgramFormat format, int len, IntPtr @string) => _NamedProgramStringEXT(program, target, format, len, @string); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedRenderbufferStorage(uint renderbuffer, InternalFormat internalformat, int width, int height) => _NamedRenderbufferStorage(renderbuffer, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedRenderbufferStorageEXT(uint renderbuffer, InternalFormat internalformat, int width, int height) => _NamedRenderbufferStorageEXT(renderbuffer, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedRenderbufferStorageMultisample(uint renderbuffer, int samples, InternalFormat internalformat, int width, int height) => _NamedRenderbufferStorageMultisample(renderbuffer, samples, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedRenderbufferStorageMultisampleAdvancedAMD(uint renderbuffer, int samples, int storageSamples, InternalFormat internalformat, int width, int height) => _NamedRenderbufferStorageMultisampleAdvancedAMD(renderbuffer, samples, storageSamples, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedRenderbufferStorageMultisampleCoverageEXT(uint renderbuffer, int coverageSamples, int colorSamples, InternalFormat internalformat, int width, int height) => _NamedRenderbufferStorageMultisampleCoverageEXT(renderbuffer, coverageSamples, colorSamples, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedRenderbufferStorageMultisampleEXT(uint renderbuffer, int samples, InternalFormat internalformat, int width, int height) => _NamedRenderbufferStorageMultisampleEXT(renderbuffer, samples, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedStringARB(int type, int namelen, string name, int stringlen, string @string) => _NamedStringARB(type, namelen, name, stringlen, @string); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedStringARB(int type, int namelen, void* name, int stringlen, void* @string) => _NamedStringARB_ptr(type, namelen, name, stringlen, @string); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NamedStringARB(int type, int namelen, IntPtr name, int stringlen, IntPtr @string) => _NamedStringARB_intptr(type, namelen, name, stringlen, @string); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NewList(uint list, ListMode mode) => _NewList(list, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public uint NewObjectBufferATI(int size, IntPtr pointer, ArrayObjectUsageATI usage) => _NewObjectBufferATI(size, pointer, usage); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3b(sbyte nx, sbyte ny, sbyte nz) => _Normal3b(nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3bv(sbyte[] v) => _Normal3bv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3bv(void* v) => _Normal3bv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3bv(IntPtr v) => _Normal3bv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3d(double nx, double ny, double nz) => _Normal3d(nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3dv(double[] v) => _Normal3dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3dv(void* v) => _Normal3dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3dv(IntPtr v) => _Normal3dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3f(float nx, float ny, float nz) => _Normal3f(nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3fVertex3fSUN(float nx, float ny, float nz, float x, float y, float z) => _Normal3fVertex3fSUN(nx, ny, nz, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3fVertex3fvSUN(float[] n, float[] v) => _Normal3fVertex3fvSUN(n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3fVertex3fvSUN(void* n, void* v) => _Normal3fVertex3fvSUN_ptr(n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3fVertex3fvSUN(IntPtr n, IntPtr v) => _Normal3fVertex3fvSUN_intptr(n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3fv(float[] v) => _Normal3fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3fv(void* v) => _Normal3fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3fv(IntPtr v) => _Normal3fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3hNV(float nx, float ny, float nz) => _Normal3hNV(nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3hvNV(float[] v) => _Normal3hvNV(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3hvNV(void* v) => _Normal3hvNV_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3hvNV(IntPtr v) => _Normal3hvNV_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3i(int nx, int ny, int nz) => _Normal3i(nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3iv(int[] v) => _Normal3iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3iv(void* v) => _Normal3iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3iv(IntPtr v) => _Normal3iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3s(short nx, short ny, short nz) => _Normal3s(nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3sv(short[] v) => _Normal3sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3sv(void* v) => _Normal3sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3sv(IntPtr v) => _Normal3sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3x(float nx, float ny, float nz) => _Normal3x(nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3xOES(float nx, float ny, float nz) => _Normal3xOES(nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3xvOES(float[] coords) => _Normal3xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3xvOES(void* coords) => _Normal3xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Normal3xvOES(IntPtr coords) => _Normal3xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalFormatNV(int type, int stride) => _NormalFormatNV(type, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalP3ui(NormalPointerType type, uint coords) => _NormalP3ui(type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalP3uiv(NormalPointerType type, uint[] coords) => _NormalP3uiv(type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalP3uiv(NormalPointerType type, void* coords) => _NormalP3uiv_ptr(type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalP3uiv(NormalPointerType type, IntPtr coords) => _NormalP3uiv_intptr(type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalPointer(NormalPointerType type, int stride, IntPtr pointer) => _NormalPointer(type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalPointerEXT(NormalPointerType type, int stride, int count, IntPtr pointer) => _NormalPointerEXT(type, stride, count, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalPointerListIBM(NormalPointerType type, int stride, IntPtr* pointer, int ptrstride) => _NormalPointerListIBM(type, stride, pointer, ptrstride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalPointervINTEL(NormalPointerType type, IntPtr* pointer) => _NormalPointervINTEL(type, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3bATI(VertexStreamATI stream, sbyte nx, sbyte ny, sbyte nz) => _NormalStream3bATI(stream, nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3bvATI(VertexStreamATI stream, sbyte[] coords) => _NormalStream3bvATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3bvATI(VertexStreamATI stream, void* coords) => _NormalStream3bvATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3bvATI(VertexStreamATI stream, IntPtr coords) => _NormalStream3bvATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3dATI(VertexStreamATI stream, double nx, double ny, double nz) => _NormalStream3dATI(stream, nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3dvATI(VertexStreamATI stream, double[] coords) => _NormalStream3dvATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3dvATI(VertexStreamATI stream, void* coords) => _NormalStream3dvATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3dvATI(VertexStreamATI stream, IntPtr coords) => _NormalStream3dvATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3fATI(VertexStreamATI stream, float nx, float ny, float nz) => _NormalStream3fATI(stream, nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3fvATI(VertexStreamATI stream, float[] coords) => _NormalStream3fvATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3fvATI(VertexStreamATI stream, void* coords) => _NormalStream3fvATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3fvATI(VertexStreamATI stream, IntPtr coords) => _NormalStream3fvATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3iATI(VertexStreamATI stream, int nx, int ny, int nz) => _NormalStream3iATI(stream, nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3ivATI(VertexStreamATI stream, int[] coords) => _NormalStream3ivATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3ivATI(VertexStreamATI stream, void* coords) => _NormalStream3ivATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3ivATI(VertexStreamATI stream, IntPtr coords) => _NormalStream3ivATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3sATI(VertexStreamATI stream, short nx, short ny, short nz) => _NormalStream3sATI(stream, nx, ny, nz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3svATI(VertexStreamATI stream, short[] coords) => _NormalStream3svATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3svATI(VertexStreamATI stream, void* coords) => _NormalStream3svATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void NormalStream3svATI(VertexStreamATI stream, IntPtr coords) => _NormalStream3svATI_intptr(stream, coords); + + // --- + + /// + /// glObjectLabel labels the object identified by name within the namespace given by identifier. identifier must be one of GL_BUFFER, GL_SHADER, GL_PROGRAM, GL_VERTEX_ARRAY, GL_QUERY, GL_PROGRAM_PIPELINE, GL_TRANSFORM_FEEDBACK, GL_SAMPLER, GL_TEXTURE, GL_RENDERBUFFER, GL_FRAMEBUFFER, to indicate the namespace containing the names of buffers, shaders, programs, vertex array objects, query objects, program pipelines, transform feedback objects, samplers, textures, renderbuffers and frame buffers, respectively. + /// label is the address of a string that will be used to label an object. length contains the number of characters in label. If length is negative, it is implied that label contains a null-terminated string. If label is NULL, any debug label is effectively removed from the object. + /// + /// The namespace from which the name of the object is allocated. + /// The name of the object to label. + /// The length of the label to be used for the object. + /// The address of a string containing the label to assign to the object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ObjectLabel(ObjectIdentifier identifier, uint name, int length, string label) => _ObjectLabel(identifier, name, length, label); + + /// + /// glObjectLabel labels the object identified by name within the namespace given by identifier. identifier must be one of GL_BUFFER, GL_SHADER, GL_PROGRAM, GL_VERTEX_ARRAY, GL_QUERY, GL_PROGRAM_PIPELINE, GL_TRANSFORM_FEEDBACK, GL_SAMPLER, GL_TEXTURE, GL_RENDERBUFFER, GL_FRAMEBUFFER, to indicate the namespace containing the names of buffers, shaders, programs, vertex array objects, query objects, program pipelines, transform feedback objects, samplers, textures, renderbuffers and frame buffers, respectively. + /// label is the address of a string that will be used to label an object. length contains the number of characters in label. If length is negative, it is implied that label contains a null-terminated string. If label is NULL, any debug label is effectively removed from the object. + /// + /// The namespace from which the name of the object is allocated. + /// The name of the object to label. + /// The length of the label to be used for the object. + /// The address of a string containing the label to assign to the object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ObjectLabel(ObjectIdentifier identifier, uint name, int length, void* label) => _ObjectLabel_ptr(identifier, name, length, label); + + /// + /// glObjectLabel labels the object identified by name within the namespace given by identifier. identifier must be one of GL_BUFFER, GL_SHADER, GL_PROGRAM, GL_VERTEX_ARRAY, GL_QUERY, GL_PROGRAM_PIPELINE, GL_TRANSFORM_FEEDBACK, GL_SAMPLER, GL_TEXTURE, GL_RENDERBUFFER, GL_FRAMEBUFFER, to indicate the namespace containing the names of buffers, shaders, programs, vertex array objects, query objects, program pipelines, transform feedback objects, samplers, textures, renderbuffers and frame buffers, respectively. + /// label is the address of a string that will be used to label an object. length contains the number of characters in label. If length is negative, it is implied that label contains a null-terminated string. If label is NULL, any debug label is effectively removed from the object. + /// + /// The namespace from which the name of the object is allocated. + /// The name of the object to label. + /// The length of the label to be used for the object. + /// The address of a string containing the label to assign to the object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ObjectLabel(ObjectIdentifier identifier, uint name, int length, IntPtr label) => _ObjectLabel_intptr(identifier, name, length, label); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ObjectLabelKHR(ObjectIdentifier identifier, uint name, int length, string label) => _ObjectLabelKHR(identifier, name, length, label); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ObjectLabelKHR(ObjectIdentifier identifier, uint name, int length, void* label) => _ObjectLabelKHR_ptr(identifier, name, length, label); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ObjectLabelKHR(ObjectIdentifier identifier, uint name, int length, IntPtr label) => _ObjectLabelKHR_intptr(identifier, name, length, label); + + // --- + + /// + /// glObjectPtrLabel labels the sync object identified by ptr. + /// label is the address of a string that will be used to label the object. length contains the number of characters in label. If length is negative, it is implied that label contains a null-terminated string. If label is NULL, any debug label is effectively removed from the object. + /// + /// A pointer identifying a sync object. + /// The length of the label to be used for the object. + /// The address of a string containing the label to assign to the object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ObjectPtrLabel(IntPtr ptr, int length, string label) => _ObjectPtrLabel(ptr, length, label); + + /// + /// glObjectPtrLabel labels the sync object identified by ptr. + /// label is the address of a string that will be used to label the object. length contains the number of characters in label. If length is negative, it is implied that label contains a null-terminated string. If label is NULL, any debug label is effectively removed from the object. + /// + /// A pointer identifying a sync object. + /// The length of the label to be used for the object. + /// The address of a string containing the label to assign to the object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ObjectPtrLabel(IntPtr ptr, int length, void* label) => _ObjectPtrLabel_ptr(ptr, length, label); + + /// + /// glObjectPtrLabel labels the sync object identified by ptr. + /// label is the address of a string that will be used to label the object. length contains the number of characters in label. If length is negative, it is implied that label contains a null-terminated string. If label is NULL, any debug label is effectively removed from the object. + /// + /// A pointer identifying a sync object. + /// The length of the label to be used for the object. + /// The address of a string containing the label to assign to the object. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ObjectPtrLabel(IntPtr ptr, int length, IntPtr label) => _ObjectPtrLabel_intptr(ptr, length, label); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ObjectPtrLabelKHR(IntPtr ptr, int length, string label) => _ObjectPtrLabelKHR(ptr, length, label); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ObjectPtrLabelKHR(IntPtr ptr, int length, void* label) => _ObjectPtrLabelKHR_ptr(ptr, length, label); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ObjectPtrLabelKHR(IntPtr ptr, int length, IntPtr label) => _ObjectPtrLabelKHR_intptr(ptr, length, label); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int ObjectPurgeableAPPLE(int objectType, uint name, int option) => _ObjectPurgeableAPPLE(objectType, name, option); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int ObjectUnpurgeableAPPLE(int objectType, uint name, int option) => _ObjectUnpurgeableAPPLE(objectType, name, option); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Ortho(double left, double right, double bottom, double top, double zNear, double zFar) => _Ortho(left, right, bottom, top, zNear, zFar); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Orthof(float l, float r, float b, float t, float n, float f) => _Orthof(l, r, b, t, n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void OrthofOES(float l, float r, float b, float t, float n, float f) => _OrthofOES(l, r, b, t, n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Orthox(float l, float r, float b, float t, float n, float f) => _Orthox(l, r, b, t, n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void OrthoxOES(float l, float r, float b, float t, float n, float f) => _OrthoxOES(l, r, b, t, n, f); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PNTrianglesfATI(PNTrianglesPNameATI pname, float param) => _PNTrianglesfATI(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PNTrianglesiATI(PNTrianglesPNameATI pname, int param) => _PNTrianglesiATI(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PassTexCoordATI(uint dst, uint coord, SwizzleOpATI swizzle) => _PassTexCoordATI(dst, coord, swizzle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PassThrough(float token) => _PassThrough(token); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PassThroughxOES(float token) => _PassThroughxOES(token); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PatchParameterfv(PatchParameterName pname, float[] values) => _PatchParameterfv(pname, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PatchParameterfv(PatchParameterName pname, void* values) => _PatchParameterfv_ptr(pname, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PatchParameterfv(PatchParameterName pname, IntPtr values) => _PatchParameterfv_intptr(pname, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PatchParameteri(PatchParameterName pname, int value) => _PatchParameteri(pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PatchParameteriEXT(PatchParameterName pname, int value) => _PatchParameteriEXT(pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PatchParameteriOES(PatchParameterName pname, int value) => _PatchParameteriOES(pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathColorGenNV(PathColor color, PathGenMode genMode, PathColorFormat colorFormat, float[] coeffs) => _PathColorGenNV(color, genMode, colorFormat, coeffs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathColorGenNV(PathColor color, PathGenMode genMode, PathColorFormat colorFormat, void* coeffs) => _PathColorGenNV_ptr(color, genMode, colorFormat, coeffs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathColorGenNV(PathColor color, PathGenMode genMode, PathColorFormat colorFormat, IntPtr coeffs) => _PathColorGenNV_intptr(color, genMode, colorFormat, coeffs); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathCommandsNV(uint path, int numCommands, byte[] commands, int numCoords, PathCoordType coordType, IntPtr coords) => _PathCommandsNV(path, numCommands, commands, numCoords, coordType, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathCommandsNV(uint path, int numCommands, void* commands, int numCoords, PathCoordType coordType, IntPtr coords) => _PathCommandsNV_ptr(path, numCommands, commands, numCoords, coordType, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathCommandsNV(uint path, int numCommands, IntPtr commands, int numCoords, PathCoordType coordType, IntPtr coords) => _PathCommandsNV_intptr(path, numCommands, commands, numCoords, coordType, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathCoordsNV(uint path, int numCoords, PathCoordType coordType, IntPtr coords) => _PathCoordsNV(path, numCoords, coordType, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathCoverDepthFuncNV(DepthFunction func) => _PathCoverDepthFuncNV(func); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathDashArrayNV(uint path, int dashCount, float[] dashArray) => _PathDashArrayNV(path, dashCount, dashArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathDashArrayNV(uint path, int dashCount, void* dashArray) => _PathDashArrayNV_ptr(path, dashCount, dashArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathDashArrayNV(uint path, int dashCount, IntPtr dashArray) => _PathDashArrayNV_intptr(path, dashCount, dashArray); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathFogGenNV(PathGenMode genMode) => _PathFogGenNV(genMode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int PathGlyphIndexArrayNV(uint firstPathName, int fontTarget, IntPtr fontName, int fontStyle, uint firstGlyphIndex, int numGlyphs, uint pathParameterTemplate, float emScale) => _PathGlyphIndexArrayNV(firstPathName, fontTarget, fontName, fontStyle, firstGlyphIndex, numGlyphs, pathParameterTemplate, emScale); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int PathGlyphIndexRangeNV(int fontTarget, IntPtr fontName, int fontStyle, uint pathParameterTemplate, float emScale, uint baseAndCount) => _PathGlyphIndexRangeNV(fontTarget, fontName, fontStyle, pathParameterTemplate, emScale, baseAndCount); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathGlyphRangeNV(uint firstPathName, PathFontTarget fontTarget, IntPtr fontName, int fontStyle, uint firstGlyph, int numGlyphs, PathHandleMissingGlyphs handleMissingGlyphs, uint pathParameterTemplate, float emScale) => _PathGlyphRangeNV(firstPathName, fontTarget, fontName, fontStyle, firstGlyph, numGlyphs, handleMissingGlyphs, pathParameterTemplate, emScale); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathGlyphsNV(uint firstPathName, PathFontTarget fontTarget, IntPtr fontName, int fontStyle, int numGlyphs, PathElementType type, IntPtr charcodes, PathHandleMissingGlyphs handleMissingGlyphs, uint pathParameterTemplate, float emScale) => _PathGlyphsNV(firstPathName, fontTarget, fontName, fontStyle, numGlyphs, type, charcodes, handleMissingGlyphs, pathParameterTemplate, emScale); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int PathMemoryGlyphIndexArrayNV(uint firstPathName, int fontTarget, IntPtr fontSize, IntPtr fontData, int faceIndex, uint firstGlyphIndex, int numGlyphs, uint pathParameterTemplate, float emScale) => _PathMemoryGlyphIndexArrayNV(firstPathName, fontTarget, fontSize, fontData, faceIndex, firstGlyphIndex, numGlyphs, pathParameterTemplate, emScale); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathParameterfNV(uint path, PathParameter pname, float value) => _PathParameterfNV(path, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathParameterfvNV(uint path, PathParameter pname, float[] value) => _PathParameterfvNV(path, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathParameterfvNV(uint path, PathParameter pname, void* value) => _PathParameterfvNV_ptr(path, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathParameterfvNV(uint path, PathParameter pname, IntPtr value) => _PathParameterfvNV_intptr(path, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathParameteriNV(uint path, PathParameter pname, int value) => _PathParameteriNV(path, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathParameterivNV(uint path, PathParameter pname, int[] value) => _PathParameterivNV(path, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathParameterivNV(uint path, PathParameter pname, void* value) => _PathParameterivNV_ptr(path, pname, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathParameterivNV(uint path, PathParameter pname, IntPtr value) => _PathParameterivNV_intptr(path, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathStencilDepthOffsetNV(float factor, float units) => _PathStencilDepthOffsetNV(factor, units); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathStencilFuncNV(StencilFunction func, int @ref, uint mask) => _PathStencilFuncNV(func, @ref, mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathStringNV(uint path, PathStringFormat format, int length, IntPtr pathString) => _PathStringNV(path, format, length, pathString); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathSubCommandsNV(uint path, int commandStart, int commandsToDelete, int numCommands, byte[] commands, int numCoords, PathCoordType coordType, IntPtr coords) => _PathSubCommandsNV(path, commandStart, commandsToDelete, numCommands, commands, numCoords, coordType, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathSubCommandsNV(uint path, int commandStart, int commandsToDelete, int numCommands, void* commands, int numCoords, PathCoordType coordType, IntPtr coords) => _PathSubCommandsNV_ptr(path, commandStart, commandsToDelete, numCommands, commands, numCoords, coordType, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathSubCommandsNV(uint path, int commandStart, int commandsToDelete, int numCommands, IntPtr commands, int numCoords, PathCoordType coordType, IntPtr coords) => _PathSubCommandsNV_intptr(path, commandStart, commandsToDelete, numCommands, commands, numCoords, coordType, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathSubCoordsNV(uint path, int coordStart, int numCoords, PathCoordType coordType, IntPtr coords) => _PathSubCoordsNV(path, coordStart, numCoords, coordType, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathTexGenNV(PathColor texCoordSet, PathGenMode genMode, int components, float[] coeffs) => _PathTexGenNV(texCoordSet, genMode, components, coeffs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathTexGenNV(PathColor texCoordSet, PathGenMode genMode, int components, void* coeffs) => _PathTexGenNV_ptr(texCoordSet, genMode, components, coeffs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PathTexGenNV(PathColor texCoordSet, PathGenMode genMode, int components, IntPtr coeffs) => _PathTexGenNV_intptr(texCoordSet, genMode, components, coeffs); + + // --- + + /// + /// glPauseTransformFeedback pauses transform feedback operations on the currently active transform feedback object. When transform feedback operations are paused, transform feedback is still considered active and changing most transform feedback state related to the object results in an error. However, a new transform feedback object may be bound while transform feedback is paused. + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PauseTransformFeedback() => _PauseTransformFeedback(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PauseTransformFeedbackNV() => _PauseTransformFeedbackNV(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelDataRangeNV(PixelDataRangeTargetNV target, int length, IntPtr pointer) => _PixelDataRangeNV(target, length, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelMapfv(PixelMap map, int mapsize, float[] values) => _PixelMapfv(map, mapsize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelMapfv(PixelMap map, int mapsize, void* values) => _PixelMapfv_ptr(map, mapsize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelMapfv(PixelMap map, int mapsize, IntPtr values) => _PixelMapfv_intptr(map, mapsize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelMapuiv(PixelMap map, int mapsize, uint[] values) => _PixelMapuiv(map, mapsize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelMapuiv(PixelMap map, int mapsize, void* values) => _PixelMapuiv_ptr(map, mapsize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelMapuiv(PixelMap map, int mapsize, IntPtr values) => _PixelMapuiv_intptr(map, mapsize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelMapusv(PixelMap map, int mapsize, ushort[] values) => _PixelMapusv(map, mapsize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelMapusv(PixelMap map, int mapsize, void* values) => _PixelMapusv_ptr(map, mapsize, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelMapusv(PixelMap map, int mapsize, IntPtr values) => _PixelMapusv_intptr(map, mapsize, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelMapx(PixelMap map, int size, float[] values) => _PixelMapx(map, size, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelMapx(PixelMap map, int size, void* values) => _PixelMapx_ptr(map, size, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelMapx(PixelMap map, int size, IntPtr values) => _PixelMapx_intptr(map, size, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelStoref(PixelStoreParameter pname, float param) => _PixelStoref(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelStorei(PixelStoreParameter pname, int param) => _PixelStorei(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelStorex(PixelStoreParameter pname, float param) => _PixelStorex(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTexGenParameterfSGIS(PixelTexGenParameterNameSGIS pname, float param) => _PixelTexGenParameterfSGIS(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTexGenParameterfvSGIS(PixelTexGenParameterNameSGIS pname, float[] @params) => _PixelTexGenParameterfvSGIS(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTexGenParameterfvSGIS(PixelTexGenParameterNameSGIS pname, void* @params) => _PixelTexGenParameterfvSGIS_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTexGenParameterfvSGIS(PixelTexGenParameterNameSGIS pname, IntPtr @params) => _PixelTexGenParameterfvSGIS_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTexGenParameteriSGIS(PixelTexGenParameterNameSGIS pname, int param) => _PixelTexGenParameteriSGIS(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTexGenParameterivSGIS(PixelTexGenParameterNameSGIS pname, int[] @params) => _PixelTexGenParameterivSGIS(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTexGenParameterivSGIS(PixelTexGenParameterNameSGIS pname, void* @params) => _PixelTexGenParameterivSGIS_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTexGenParameterivSGIS(PixelTexGenParameterNameSGIS pname, IntPtr @params) => _PixelTexGenParameterivSGIS_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTexGenSGIX(PixelTexGenModeSGIX mode) => _PixelTexGenSGIX(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTransferf(PixelTransferParameter pname, float param) => _PixelTransferf(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTransferi(PixelTransferParameter pname, int param) => _PixelTransferi(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTransferxOES(PixelTransferParameter pname, float param) => _PixelTransferxOES(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTransformParameterfEXT(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, float param) => _PixelTransformParameterfEXT(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTransformParameterfvEXT(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, float[] @params) => _PixelTransformParameterfvEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTransformParameterfvEXT(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, void* @params) => _PixelTransformParameterfvEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTransformParameterfvEXT(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, IntPtr @params) => _PixelTransformParameterfvEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTransformParameteriEXT(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, int param) => _PixelTransformParameteriEXT(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTransformParameterivEXT(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, int[] @params) => _PixelTransformParameterivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTransformParameterivEXT(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, void* @params) => _PixelTransformParameterivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelTransformParameterivEXT(PixelTransformTargetEXT target, PixelTransformPNameEXT pname, IntPtr @params) => _PixelTransformParameterivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelZoom(float xfactor, float yfactor) => _PixelZoom(xfactor, yfactor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PixelZoomxOES(float xfactor, float yfactor) => _PixelZoomxOES(xfactor, yfactor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool PointAlongPathNV(uint path, int startSegment, int numSegments, float distance, out float x, out float y, out float tangentX, out float tangentY) => _PointAlongPathNV(path, startSegment, numSegments, distance, out x, out y, out tangentX, out tangentY); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterf(PointParameterNameARB pname, float param) => _PointParameterf(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfARB(PointParameterNameARB pname, float param) => _PointParameterfARB(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfEXT(PointParameterNameARB pname, float param) => _PointParameterfEXT(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfSGIS(PointParameterNameARB pname, float param) => _PointParameterfSGIS(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfv(PointParameterNameARB pname, float[] @params) => _PointParameterfv(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfv(PointParameterNameARB pname, void* @params) => _PointParameterfv_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfv(PointParameterNameARB pname, IntPtr @params) => _PointParameterfv_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfvARB(PointParameterNameARB pname, float[] @params) => _PointParameterfvARB(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfvARB(PointParameterNameARB pname, void* @params) => _PointParameterfvARB_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfvARB(PointParameterNameARB pname, IntPtr @params) => _PointParameterfvARB_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfvEXT(PointParameterNameARB pname, float[] @params) => _PointParameterfvEXT(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfvEXT(PointParameterNameARB pname, void* @params) => _PointParameterfvEXT_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfvEXT(PointParameterNameARB pname, IntPtr @params) => _PointParameterfvEXT_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfvSGIS(PointParameterNameARB pname, float[] @params) => _PointParameterfvSGIS(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfvSGIS(PointParameterNameARB pname, void* @params) => _PointParameterfvSGIS_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterfvSGIS(PointParameterNameARB pname, IntPtr @params) => _PointParameterfvSGIS_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameteri(PointParameterNameARB pname, int param) => _PointParameteri(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameteriNV(PointParameterNameARB pname, int param) => _PointParameteriNV(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameteriv(PointParameterNameARB pname, int[] @params) => _PointParameteriv(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameteriv(PointParameterNameARB pname, void* @params) => _PointParameteriv_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameteriv(PointParameterNameARB pname, IntPtr @params) => _PointParameteriv_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterivNV(PointParameterNameARB pname, int[] @params) => _PointParameterivNV(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterivNV(PointParameterNameARB pname, void* @params) => _PointParameterivNV_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterivNV(PointParameterNameARB pname, IntPtr @params) => _PointParameterivNV_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterx(PointParameterNameARB pname, float param) => _PointParameterx(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterxOES(PointParameterNameARB pname, float param) => _PointParameterxOES(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterxv(PointParameterNameARB pname, float[] @params) => _PointParameterxv(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterxv(PointParameterNameARB pname, void* @params) => _PointParameterxv_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterxv(PointParameterNameARB pname, IntPtr @params) => _PointParameterxv_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterxvOES(PointParameterNameARB pname, float[] @params) => _PointParameterxvOES(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterxvOES(PointParameterNameARB pname, void* @params) => _PointParameterxvOES_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointParameterxvOES(PointParameterNameARB pname, IntPtr @params) => _PointParameterxvOES_intptr(pname, @params); + + // --- + + /// + /// glPointSize specifies the rasterized diameter of points. If point size mode is disabled (see glEnable with parameter GL_PROGRAM_POINT_SIZE), this value will be used to rasterize points. Otherwise, the value written to the shading language built-in variable gl_PointSize will be used. + /// + /// Specifies the diameter of rasterized points. The initial value is 1. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointSize(float size) => _PointSize(size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointSizePointerOES(int type, int stride, IntPtr pointer) => _PointSizePointerOES(type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointSizex(float size) => _PointSizex(size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PointSizexOES(float size) => _PointSizexOES(size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int PollAsyncSGIX(out uint markerp) => _PollAsyncSGIX(out markerp); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int PollInstrumentsSGIX(out int marker_p) => _PollInstrumentsSGIX(out marker_p); + + // --- + + /// + /// glPolygonMode controls the interpretation of polygons for rasterization. face describes which polygons mode applies to: both front and back-facing polygons (GL_FRONT_AND_BACK). The polygon mode affects only the final rasterization of polygons. In particular, a polygon's vertices are lit and the polygon is clipped and possibly culled before these modes are applied. + /// Three modes are defined and can be specified in mode: + /// GL_POINT Polygon vertices that are marked as the start of a boundary edge are drawn as points. Point attributes such as GL_POINT_SIZE and GL_POINT_SMOOTH control the rasterization of the points. Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. GL_LINE Boundary edges of the polygon are drawn as line segments. Line attributes such as GL_LINE_WIDTH and GL_LINE_SMOOTH control the rasterization of the lines. Polygon rasterization attributes other than GL_POLYGON_MODE have no effect. GL_FILL The interior of the polygon is filled. Polygon attributes such as GL_POLYGON_SMOOTH control the rasterization of the polygon. + /// + /// Specifies the polygons that mode applies to. Must be GL_FRONT_AND_BACK for front- and back-facing polygons. + /// Specifies how polygons will be rasterized. Accepted values are GL_POINT, GL_LINE, and GL_FILL. The initial value is GL_FILL for both front- and back-facing polygons. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PolygonMode(MaterialFace face, PolygonMode mode) => _PolygonMode(face, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PolygonModeNV(MaterialFace face, PolygonMode mode) => _PolygonModeNV(face, mode); + + // --- + + /// + /// When GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, or GL_POLYGON_OFFSET_POINT is enabled, each fragment's depth value will be offset after it is interpolated from the depth values of the appropriate vertices. The value of the offset is is the smallest value that is guaranteed to produce a resolvable offset for a given implementation. The offset is added before the depth test is performed and before the value is written into the depth buffer. + /// glPolygonOffset is useful for rendering hidden-line images, for applying decals to surfaces, and for rendering solids with highlighted edges. + /// + /// Specifies a scale factor that is used to create a variable depth offset for each polygon. The initial value is 0. + /// Is multiplied by an implementation-specific value to create a constant depth offset. The initial value is 0. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PolygonOffset(float factor, float units) => _PolygonOffset(factor, units); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PolygonOffsetClamp(float factor, float units, float clamp) => _PolygonOffsetClamp(factor, units, clamp); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PolygonOffsetClampEXT(float factor, float units, float clamp) => _PolygonOffsetClampEXT(factor, units, clamp); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PolygonOffsetEXT(float factor, float bias) => _PolygonOffsetEXT(factor, bias); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PolygonOffsetx(float factor, float units) => _PolygonOffsetx(factor, units); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PolygonOffsetxOES(float factor, float units) => _PolygonOffsetxOES(factor, units); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PolygonStipple(byte[] mask) => _PolygonStipple(mask); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PolygonStipple(void* mask) => _PolygonStipple_ptr(mask); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PolygonStipple(IntPtr mask) => _PolygonStipple_intptr(mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PopAttrib() => _PopAttrib(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PopClientAttrib() => _PopClientAttrib(); + + // --- + + /// + /// glPopDebugGroup pops the active debug group. After popping a debug group, the GL will also generate a debug output message describing its cause based on the message string, the source source, and an ID id submitted to the corresponding glPushDebugGroup command. GL_DEBUG_TYPE_PUSH_GROUP and GL_DEBUG_TYPE_POP_GROUP share a single namespace for message id. severity has the value GL_DEBUG_SEVERITY_NOTIFICATION. The type has the value GL_DEBUG_TYPE_POP_GROUP. Popping a debug group restores the debug output volume control of the parent debug group. + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PopDebugGroup() => _PopDebugGroup(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PopDebugGroupKHR() => _PopDebugGroupKHR(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PopGroupMarkerEXT() => _PopGroupMarkerEXT(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PopMatrix() => _PopMatrix(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PopName() => _PopName(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PresentFrameDualFillNV(uint video_slot, UInt64 minPresentTime, uint beginPresentTimeId, uint presentDurationId, int type, int target0, uint fill0, int target1, uint fill1, int target2, uint fill2, int target3, uint fill3) => _PresentFrameDualFillNV(video_slot, minPresentTime, beginPresentTimeId, presentDurationId, type, target0, fill0, target1, fill1, target2, fill2, target3, fill3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PresentFrameKeyedNV(uint video_slot, UInt64 minPresentTime, uint beginPresentTimeId, uint presentDurationId, int type, int target0, uint fill0, uint key0, int target1, uint fill1, uint key1) => _PresentFrameKeyedNV(video_slot, minPresentTime, beginPresentTimeId, presentDurationId, type, target0, fill0, key0, target1, fill1, key1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrimitiveBoundingBox(float minX, float minY, float minZ, float minW, float maxX, float maxY, float maxZ, float maxW) => _PrimitiveBoundingBox(minX, minY, minZ, minW, maxX, maxY, maxZ, maxW); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrimitiveBoundingBoxARB(float minX, float minY, float minZ, float minW, float maxX, float maxY, float maxZ, float maxW) => _PrimitiveBoundingBoxARB(minX, minY, minZ, minW, maxX, maxY, maxZ, maxW); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrimitiveBoundingBoxEXT(float minX, float minY, float minZ, float minW, float maxX, float maxY, float maxZ, float maxW) => _PrimitiveBoundingBoxEXT(minX, minY, minZ, minW, maxX, maxY, maxZ, maxW); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrimitiveBoundingBoxOES(float minX, float minY, float minZ, float minW, float maxX, float maxY, float maxZ, float maxW) => _PrimitiveBoundingBoxOES(minX, minY, minZ, minW, maxX, maxY, maxZ, maxW); + + // --- + + /// + /// glPrimitiveRestartIndex specifies a vertex array element that is treated specially when primitive restarting is enabled. This is known as the primitive restart index. + /// When one of the Draw* commands transfers a set of generic attribute array elements to the GL, if the index within the vertex arrays corresponding to that set is equal to the primitive restart index, then the GL does not process those elements as a vertex. Instead, it is as if the drawing command ended with the immediately preceding transfer, and another drawing command is immediately started with the same parameters, but only transferring the immediately following element through the end of the originally specified elements. + /// When either glDrawElementsBaseVertex, glDrawElementsInstancedBaseVertex or glMultiDrawElementsBaseVertex is used, the primitive restart comparison occurs before the basevertex offset is added to the array index. + /// + /// Specifies the value to be interpreted as the primitive restart index. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrimitiveRestartIndex(uint index) => _PrimitiveRestartIndex(index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrimitiveRestartIndexNV(uint index) => _PrimitiveRestartIndexNV(index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrimitiveRestartNV() => _PrimitiveRestartNV(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrioritizeTextures(int n, uint[] textures, float[] priorities) => _PrioritizeTextures(n, textures, priorities); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrioritizeTextures(int n, void* textures, void* priorities) => _PrioritizeTextures_ptr(n, textures, priorities); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrioritizeTextures(int n, IntPtr textures, IntPtr priorities) => _PrioritizeTextures_intptr(n, textures, priorities); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrioritizeTexturesEXT(int n, uint[] textures, float[] priorities) => _PrioritizeTexturesEXT(n, textures, priorities); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrioritizeTexturesEXT(int n, void* textures, void* priorities) => _PrioritizeTexturesEXT_ptr(n, textures, priorities); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrioritizeTexturesEXT(int n, IntPtr textures, IntPtr priorities) => _PrioritizeTexturesEXT_intptr(n, textures, priorities); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrioritizeTexturesxOES(int n, uint[] textures, float[] priorities) => _PrioritizeTexturesxOES(n, textures, priorities); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrioritizeTexturesxOES(int n, void* textures, void* priorities) => _PrioritizeTexturesxOES_ptr(n, textures, priorities); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PrioritizeTexturesxOES(int n, IntPtr textures, IntPtr priorities) => _PrioritizeTexturesxOES_intptr(n, textures, priorities); + + // --- + + /// + /// glProgramBinary loads a program object with a program binary previously returned from glGetProgramBinary. binaryFormat and binary must be those returned by a previous call to glGetProgramBinary, and length must be the length returned by glGetProgramBinary, or by glGetProgram when called with pname set to GL_PROGRAM_BINARY_LENGTH. If these conditions are not met, loading the program binary will fail and program's GL_LINK_STATUS will be set to GL_FALSE. + /// A program object's program binary is replaced by calls to glLinkProgram or glProgramBinary. When linking success or failure is concerned, glProgramBinary can be considered to perform an implicit linking operation. glLinkProgram and glProgramBinary both set the program object's GL_LINK_STATUS to GL_TRUE or GL_FALSE. + /// A successful call to glProgramBinary will reset all uniform variables to their initial values. The initial value is either the value of the variable's initializer as specified in the original shader source, or zero if no initializer was present. Additionally, all vertex shader input and fragment shader output assignments that were in effect when the program was linked before saving are restored with glProgramBinary is called. + /// + /// Specifies the name of a program object into which to load a program binary. + /// Specifies the format of the binary data in binary. + /// Specifies the address an array containing the binary to be loaded into program. + /// Specifies the number of bytes contained in binary. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramBinary(uint program, int binaryFormat, IntPtr binary, int length) => _ProgramBinary(program, binaryFormat, binary, length); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramBinaryOES(uint program, int binaryFormat, IntPtr binary, int length) => _ProgramBinaryOES(program, binaryFormat, binary, length); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramBufferParametersIivNV(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, int[] @params) => _ProgramBufferParametersIivNV(target, bindingIndex, wordIndex, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramBufferParametersIivNV(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, void* @params) => _ProgramBufferParametersIivNV_ptr(target, bindingIndex, wordIndex, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramBufferParametersIivNV(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, IntPtr @params) => _ProgramBufferParametersIivNV_intptr(target, bindingIndex, wordIndex, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramBufferParametersIuivNV(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, uint[] @params) => _ProgramBufferParametersIuivNV(target, bindingIndex, wordIndex, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramBufferParametersIuivNV(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, void* @params) => _ProgramBufferParametersIuivNV_ptr(target, bindingIndex, wordIndex, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramBufferParametersIuivNV(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, IntPtr @params) => _ProgramBufferParametersIuivNV_intptr(target, bindingIndex, wordIndex, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramBufferParametersfvNV(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, float[] @params) => _ProgramBufferParametersfvNV(target, bindingIndex, wordIndex, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramBufferParametersfvNV(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, void* @params) => _ProgramBufferParametersfvNV_ptr(target, bindingIndex, wordIndex, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramBufferParametersfvNV(ProgramTarget target, uint bindingIndex, uint wordIndex, int count, IntPtr @params) => _ProgramBufferParametersfvNV_intptr(target, bindingIndex, wordIndex, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameter4dARB(ProgramTarget target, uint index, double x, double y, double z, double w) => _ProgramEnvParameter4dARB(target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameter4dvARB(ProgramTarget target, uint index, double[] @params) => _ProgramEnvParameter4dvARB(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameter4dvARB(ProgramTarget target, uint index, void* @params) => _ProgramEnvParameter4dvARB_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameter4dvARB(ProgramTarget target, uint index, IntPtr @params) => _ProgramEnvParameter4dvARB_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameter4fARB(ProgramTarget target, uint index, float x, float y, float z, float w) => _ProgramEnvParameter4fARB(target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameter4fvARB(ProgramTarget target, uint index, float[] @params) => _ProgramEnvParameter4fvARB(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameter4fvARB(ProgramTarget target, uint index, void* @params) => _ProgramEnvParameter4fvARB_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameter4fvARB(ProgramTarget target, uint index, IntPtr @params) => _ProgramEnvParameter4fvARB_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameterI4iNV(ProgramTarget target, uint index, int x, int y, int z, int w) => _ProgramEnvParameterI4iNV(target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameterI4ivNV(ProgramTarget target, uint index, int[] @params) => _ProgramEnvParameterI4ivNV(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameterI4ivNV(ProgramTarget target, uint index, void* @params) => _ProgramEnvParameterI4ivNV_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameterI4ivNV(ProgramTarget target, uint index, IntPtr @params) => _ProgramEnvParameterI4ivNV_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameterI4uiNV(ProgramTarget target, uint index, uint x, uint y, uint z, uint w) => _ProgramEnvParameterI4uiNV(target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameterI4uivNV(ProgramTarget target, uint index, uint[] @params) => _ProgramEnvParameterI4uivNV(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameterI4uivNV(ProgramTarget target, uint index, void* @params) => _ProgramEnvParameterI4uivNV_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameterI4uivNV(ProgramTarget target, uint index, IntPtr @params) => _ProgramEnvParameterI4uivNV_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameters4fvEXT(ProgramTarget target, uint index, int count, float[] @params) => _ProgramEnvParameters4fvEXT(target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameters4fvEXT(ProgramTarget target, uint index, int count, void* @params) => _ProgramEnvParameters4fvEXT_ptr(target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParameters4fvEXT(ProgramTarget target, uint index, int count, IntPtr @params) => _ProgramEnvParameters4fvEXT_intptr(target, index, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParametersI4ivNV(ProgramTarget target, uint index, int count, int[] @params) => _ProgramEnvParametersI4ivNV(target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParametersI4ivNV(ProgramTarget target, uint index, int count, void* @params) => _ProgramEnvParametersI4ivNV_ptr(target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParametersI4ivNV(ProgramTarget target, uint index, int count, IntPtr @params) => _ProgramEnvParametersI4ivNV_intptr(target, index, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParametersI4uivNV(ProgramTarget target, uint index, int count, uint[] @params) => _ProgramEnvParametersI4uivNV(target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParametersI4uivNV(ProgramTarget target, uint index, int count, void* @params) => _ProgramEnvParametersI4uivNV_ptr(target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramEnvParametersI4uivNV(ProgramTarget target, uint index, int count, IntPtr @params) => _ProgramEnvParametersI4uivNV_intptr(target, index, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameter4dARB(ProgramTarget target, uint index, double x, double y, double z, double w) => _ProgramLocalParameter4dARB(target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameter4dvARB(ProgramTarget target, uint index, double[] @params) => _ProgramLocalParameter4dvARB(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameter4dvARB(ProgramTarget target, uint index, void* @params) => _ProgramLocalParameter4dvARB_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameter4dvARB(ProgramTarget target, uint index, IntPtr @params) => _ProgramLocalParameter4dvARB_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameter4fARB(ProgramTarget target, uint index, float x, float y, float z, float w) => _ProgramLocalParameter4fARB(target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameter4fvARB(ProgramTarget target, uint index, float[] @params) => _ProgramLocalParameter4fvARB(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameter4fvARB(ProgramTarget target, uint index, void* @params) => _ProgramLocalParameter4fvARB_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameter4fvARB(ProgramTarget target, uint index, IntPtr @params) => _ProgramLocalParameter4fvARB_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameterI4iNV(ProgramTarget target, uint index, int x, int y, int z, int w) => _ProgramLocalParameterI4iNV(target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameterI4ivNV(ProgramTarget target, uint index, int[] @params) => _ProgramLocalParameterI4ivNV(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameterI4ivNV(ProgramTarget target, uint index, void* @params) => _ProgramLocalParameterI4ivNV_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameterI4ivNV(ProgramTarget target, uint index, IntPtr @params) => _ProgramLocalParameterI4ivNV_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameterI4uiNV(ProgramTarget target, uint index, uint x, uint y, uint z, uint w) => _ProgramLocalParameterI4uiNV(target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameterI4uivNV(ProgramTarget target, uint index, uint[] @params) => _ProgramLocalParameterI4uivNV(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameterI4uivNV(ProgramTarget target, uint index, void* @params) => _ProgramLocalParameterI4uivNV_ptr(target, index, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameterI4uivNV(ProgramTarget target, uint index, IntPtr @params) => _ProgramLocalParameterI4uivNV_intptr(target, index, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameters4fvEXT(ProgramTarget target, uint index, int count, float[] @params) => _ProgramLocalParameters4fvEXT(target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameters4fvEXT(ProgramTarget target, uint index, int count, void* @params) => _ProgramLocalParameters4fvEXT_ptr(target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParameters4fvEXT(ProgramTarget target, uint index, int count, IntPtr @params) => _ProgramLocalParameters4fvEXT_intptr(target, index, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParametersI4ivNV(ProgramTarget target, uint index, int count, int[] @params) => _ProgramLocalParametersI4ivNV(target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParametersI4ivNV(ProgramTarget target, uint index, int count, void* @params) => _ProgramLocalParametersI4ivNV_ptr(target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParametersI4ivNV(ProgramTarget target, uint index, int count, IntPtr @params) => _ProgramLocalParametersI4ivNV_intptr(target, index, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParametersI4uivNV(ProgramTarget target, uint index, int count, uint[] @params) => _ProgramLocalParametersI4uivNV(target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParametersI4uivNV(ProgramTarget target, uint index, int count, void* @params) => _ProgramLocalParametersI4uivNV_ptr(target, index, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramLocalParametersI4uivNV(ProgramTarget target, uint index, int count, IntPtr @params) => _ProgramLocalParametersI4uivNV_intptr(target, index, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramNamedParameter4dNV(uint id, int len, byte[] name, double x, double y, double z, double w) => _ProgramNamedParameter4dNV(id, len, name, x, y, z, w); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramNamedParameter4dNV(uint id, int len, void* name, double x, double y, double z, double w) => _ProgramNamedParameter4dNV_ptr(id, len, name, x, y, z, w); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramNamedParameter4dNV(uint id, int len, IntPtr name, double x, double y, double z, double w) => _ProgramNamedParameter4dNV_intptr(id, len, name, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramNamedParameter4dvNV(uint id, int len, byte[] name, double[] v) => _ProgramNamedParameter4dvNV(id, len, name, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramNamedParameter4dvNV(uint id, int len, void* name, void* v) => _ProgramNamedParameter4dvNV_ptr(id, len, name, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramNamedParameter4dvNV(uint id, int len, IntPtr name, IntPtr v) => _ProgramNamedParameter4dvNV_intptr(id, len, name, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramNamedParameter4fNV(uint id, int len, byte[] name, float x, float y, float z, float w) => _ProgramNamedParameter4fNV(id, len, name, x, y, z, w); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramNamedParameter4fNV(uint id, int len, void* name, float x, float y, float z, float w) => _ProgramNamedParameter4fNV_ptr(id, len, name, x, y, z, w); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramNamedParameter4fNV(uint id, int len, IntPtr name, float x, float y, float z, float w) => _ProgramNamedParameter4fNV_intptr(id, len, name, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramNamedParameter4fvNV(uint id, int len, byte[] name, float[] v) => _ProgramNamedParameter4fvNV(id, len, name, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramNamedParameter4fvNV(uint id, int len, void* name, void* v) => _ProgramNamedParameter4fvNV_ptr(id, len, name, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramNamedParameter4fvNV(uint id, int len, IntPtr name, IntPtr v) => _ProgramNamedParameter4fvNV_intptr(id, len, name, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameter4dNV(VertexAttribEnumNV target, uint index, double x, double y, double z, double w) => _ProgramParameter4dNV(target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameter4dvNV(VertexAttribEnumNV target, uint index, double[] v) => _ProgramParameter4dvNV(target, index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameter4dvNV(VertexAttribEnumNV target, uint index, void* v) => _ProgramParameter4dvNV_ptr(target, index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameter4dvNV(VertexAttribEnumNV target, uint index, IntPtr v) => _ProgramParameter4dvNV_intptr(target, index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameter4fNV(VertexAttribEnumNV target, uint index, float x, float y, float z, float w) => _ProgramParameter4fNV(target, index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameter4fvNV(VertexAttribEnumNV target, uint index, float[] v) => _ProgramParameter4fvNV(target, index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameter4fvNV(VertexAttribEnumNV target, uint index, void* v) => _ProgramParameter4fvNV_ptr(target, index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameter4fvNV(VertexAttribEnumNV target, uint index, IntPtr v) => _ProgramParameter4fvNV_intptr(target, index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameteri(uint program, ProgramParameterPName pname, int value) => _ProgramParameteri(program, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameteriARB(uint program, ProgramParameterPName pname, int value) => _ProgramParameteriARB(program, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameteriEXT(uint program, ProgramParameterPName pname, int value) => _ProgramParameteriEXT(program, pname, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameters4dvNV(VertexAttribEnumNV target, uint index, int count, double[] v) => _ProgramParameters4dvNV(target, index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameters4dvNV(VertexAttribEnumNV target, uint index, int count, void* v) => _ProgramParameters4dvNV_ptr(target, index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameters4dvNV(VertexAttribEnumNV target, uint index, int count, IntPtr v) => _ProgramParameters4dvNV_intptr(target, index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameters4fvNV(VertexAttribEnumNV target, uint index, int count, float[] v) => _ProgramParameters4fvNV(target, index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameters4fvNV(VertexAttribEnumNV target, uint index, int count, void* v) => _ProgramParameters4fvNV_ptr(target, index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramParameters4fvNV(VertexAttribEnumNV target, uint index, int count, IntPtr v) => _ProgramParameters4fvNV_intptr(target, index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramPathFragmentInputGenNV(uint program, int location, int genMode, int components, float[] coeffs) => _ProgramPathFragmentInputGenNV(program, location, genMode, components, coeffs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramPathFragmentInputGenNV(uint program, int location, int genMode, int components, void* coeffs) => _ProgramPathFragmentInputGenNV_ptr(program, location, genMode, components, coeffs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramPathFragmentInputGenNV(uint program, int location, int genMode, int components, IntPtr coeffs) => _ProgramPathFragmentInputGenNV_intptr(program, location, genMode, components, coeffs); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramStringARB(ProgramTarget target, ProgramFormat format, int len, IntPtr @string) => _ProgramStringARB(target, format, len, @string); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramSubroutineParametersuivNV(int target, int count, uint[] @params) => _ProgramSubroutineParametersuivNV(target, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramSubroutineParametersuivNV(int target, int count, void* @params) => _ProgramSubroutineParametersuivNV_ptr(target, count, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramSubroutineParametersuivNV(int target, int count, IntPtr @params) => _ProgramSubroutineParametersuivNV_intptr(target, count, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1d(uint program, int location, double v0) => _ProgramUniform1d(program, location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1dEXT(uint program, int location, double x) => _ProgramUniform1dEXT(program, location, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1dv(uint program, int location, int count, double[] value) => _ProgramUniform1dv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1dv(uint program, int location, int count, void* value) => _ProgramUniform1dv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1dv(uint program, int location, int count, IntPtr value) => _ProgramUniform1dv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1dvEXT(uint program, int location, int count, double[] value) => _ProgramUniform1dvEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1dvEXT(uint program, int location, int count, void* value) => _ProgramUniform1dvEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1dvEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform1dvEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1f(uint program, int location, float v0) => _ProgramUniform1f(program, location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1fEXT(uint program, int location, float v0) => _ProgramUniform1fEXT(program, location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1fv(uint program, int location, int count, float[] value) => _ProgramUniform1fv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1fv(uint program, int location, int count, void* value) => _ProgramUniform1fv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1fv(uint program, int location, int count, IntPtr value) => _ProgramUniform1fv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1fvEXT(uint program, int location, int count, float[] value) => _ProgramUniform1fvEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1fvEXT(uint program, int location, int count, void* value) => _ProgramUniform1fvEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1fvEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform1fvEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1i(uint program, int location, int v0) => _ProgramUniform1i(program, location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1i64ARB(uint program, int location, Int64 x) => _ProgramUniform1i64ARB(program, location, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1i64NV(uint program, int location, Int64 x) => _ProgramUniform1i64NV(program, location, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1i64vARB(uint program, int location, int count, Int64[] value) => _ProgramUniform1i64vARB(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1i64vARB(uint program, int location, int count, void* value) => _ProgramUniform1i64vARB_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1i64vARB(uint program, int location, int count, IntPtr value) => _ProgramUniform1i64vARB_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1i64vNV(uint program, int location, int count, Int64[] value) => _ProgramUniform1i64vNV(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1i64vNV(uint program, int location, int count, void* value) => _ProgramUniform1i64vNV_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1i64vNV(uint program, int location, int count, IntPtr value) => _ProgramUniform1i64vNV_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1iEXT(uint program, int location, int v0) => _ProgramUniform1iEXT(program, location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1iv(uint program, int location, int count, int[] value) => _ProgramUniform1iv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1iv(uint program, int location, int count, void* value) => _ProgramUniform1iv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1iv(uint program, int location, int count, IntPtr value) => _ProgramUniform1iv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1ivEXT(uint program, int location, int count, int[] value) => _ProgramUniform1ivEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1ivEXT(uint program, int location, int count, void* value) => _ProgramUniform1ivEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1ivEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform1ivEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1ui(uint program, int location, uint v0) => _ProgramUniform1ui(program, location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1ui64ARB(uint program, int location, UInt64 x) => _ProgramUniform1ui64ARB(program, location, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1ui64NV(uint program, int location, UInt64 x) => _ProgramUniform1ui64NV(program, location, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1ui64vARB(uint program, int location, int count, UInt64[] value) => _ProgramUniform1ui64vARB(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1ui64vARB(uint program, int location, int count, void* value) => _ProgramUniform1ui64vARB_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1ui64vARB(uint program, int location, int count, IntPtr value) => _ProgramUniform1ui64vARB_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1ui64vNV(uint program, int location, int count, UInt64[] value) => _ProgramUniform1ui64vNV(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1ui64vNV(uint program, int location, int count, void* value) => _ProgramUniform1ui64vNV_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1ui64vNV(uint program, int location, int count, IntPtr value) => _ProgramUniform1ui64vNV_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1uiEXT(uint program, int location, uint v0) => _ProgramUniform1uiEXT(program, location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1uiv(uint program, int location, int count, uint[] value) => _ProgramUniform1uiv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1uiv(uint program, int location, int count, void* value) => _ProgramUniform1uiv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1uiv(uint program, int location, int count, IntPtr value) => _ProgramUniform1uiv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1uivEXT(uint program, int location, int count, uint[] value) => _ProgramUniform1uivEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1uivEXT(uint program, int location, int count, void* value) => _ProgramUniform1uivEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform1uivEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform1uivEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2d(uint program, int location, double v0, double v1) => _ProgramUniform2d(program, location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2dEXT(uint program, int location, double x, double y) => _ProgramUniform2dEXT(program, location, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2dv(uint program, int location, int count, double[] value) => _ProgramUniform2dv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2dv(uint program, int location, int count, void* value) => _ProgramUniform2dv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2dv(uint program, int location, int count, IntPtr value) => _ProgramUniform2dv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2dvEXT(uint program, int location, int count, double[] value) => _ProgramUniform2dvEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2dvEXT(uint program, int location, int count, void* value) => _ProgramUniform2dvEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2dvEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform2dvEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2f(uint program, int location, float v0, float v1) => _ProgramUniform2f(program, location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2fEXT(uint program, int location, float v0, float v1) => _ProgramUniform2fEXT(program, location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2fv(uint program, int location, int count, float[] value) => _ProgramUniform2fv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2fv(uint program, int location, int count, void* value) => _ProgramUniform2fv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2fv(uint program, int location, int count, IntPtr value) => _ProgramUniform2fv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2fvEXT(uint program, int location, int count, float[] value) => _ProgramUniform2fvEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2fvEXT(uint program, int location, int count, void* value) => _ProgramUniform2fvEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2fvEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform2fvEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2i(uint program, int location, int v0, int v1) => _ProgramUniform2i(program, location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2i64ARB(uint program, int location, Int64 x, Int64 y) => _ProgramUniform2i64ARB(program, location, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2i64NV(uint program, int location, Int64 x, Int64 y) => _ProgramUniform2i64NV(program, location, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2i64vARB(uint program, int location, int count, Int64[] value) => _ProgramUniform2i64vARB(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2i64vARB(uint program, int location, int count, void* value) => _ProgramUniform2i64vARB_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2i64vARB(uint program, int location, int count, IntPtr value) => _ProgramUniform2i64vARB_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2i64vNV(uint program, int location, int count, Int64[] value) => _ProgramUniform2i64vNV(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2i64vNV(uint program, int location, int count, void* value) => _ProgramUniform2i64vNV_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2i64vNV(uint program, int location, int count, IntPtr value) => _ProgramUniform2i64vNV_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2iEXT(uint program, int location, int v0, int v1) => _ProgramUniform2iEXT(program, location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2iv(uint program, int location, int count, int[] value) => _ProgramUniform2iv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2iv(uint program, int location, int count, void* value) => _ProgramUniform2iv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2iv(uint program, int location, int count, IntPtr value) => _ProgramUniform2iv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2ivEXT(uint program, int location, int count, int[] value) => _ProgramUniform2ivEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2ivEXT(uint program, int location, int count, void* value) => _ProgramUniform2ivEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2ivEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform2ivEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2ui(uint program, int location, uint v0, uint v1) => _ProgramUniform2ui(program, location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2ui64ARB(uint program, int location, UInt64 x, UInt64 y) => _ProgramUniform2ui64ARB(program, location, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2ui64NV(uint program, int location, UInt64 x, UInt64 y) => _ProgramUniform2ui64NV(program, location, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2ui64vARB(uint program, int location, int count, UInt64[] value) => _ProgramUniform2ui64vARB(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2ui64vARB(uint program, int location, int count, void* value) => _ProgramUniform2ui64vARB_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2ui64vARB(uint program, int location, int count, IntPtr value) => _ProgramUniform2ui64vARB_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2ui64vNV(uint program, int location, int count, UInt64[] value) => _ProgramUniform2ui64vNV(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2ui64vNV(uint program, int location, int count, void* value) => _ProgramUniform2ui64vNV_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2ui64vNV(uint program, int location, int count, IntPtr value) => _ProgramUniform2ui64vNV_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2uiEXT(uint program, int location, uint v0, uint v1) => _ProgramUniform2uiEXT(program, location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2uiv(uint program, int location, int count, uint[] value) => _ProgramUniform2uiv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2uiv(uint program, int location, int count, void* value) => _ProgramUniform2uiv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2uiv(uint program, int location, int count, IntPtr value) => _ProgramUniform2uiv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2uivEXT(uint program, int location, int count, uint[] value) => _ProgramUniform2uivEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2uivEXT(uint program, int location, int count, void* value) => _ProgramUniform2uivEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform2uivEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform2uivEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3d(uint program, int location, double v0, double v1, double v2) => _ProgramUniform3d(program, location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3dEXT(uint program, int location, double x, double y, double z) => _ProgramUniform3dEXT(program, location, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3dv(uint program, int location, int count, double[] value) => _ProgramUniform3dv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3dv(uint program, int location, int count, void* value) => _ProgramUniform3dv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3dv(uint program, int location, int count, IntPtr value) => _ProgramUniform3dv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3dvEXT(uint program, int location, int count, double[] value) => _ProgramUniform3dvEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3dvEXT(uint program, int location, int count, void* value) => _ProgramUniform3dvEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3dvEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform3dvEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3f(uint program, int location, float v0, float v1, float v2) => _ProgramUniform3f(program, location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3fEXT(uint program, int location, float v0, float v1, float v2) => _ProgramUniform3fEXT(program, location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3fv(uint program, int location, int count, float[] value) => _ProgramUniform3fv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3fv(uint program, int location, int count, void* value) => _ProgramUniform3fv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3fv(uint program, int location, int count, IntPtr value) => _ProgramUniform3fv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3fvEXT(uint program, int location, int count, float[] value) => _ProgramUniform3fvEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3fvEXT(uint program, int location, int count, void* value) => _ProgramUniform3fvEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3fvEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform3fvEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3i(uint program, int location, int v0, int v1, int v2) => _ProgramUniform3i(program, location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3i64ARB(uint program, int location, Int64 x, Int64 y, Int64 z) => _ProgramUniform3i64ARB(program, location, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3i64NV(uint program, int location, Int64 x, Int64 y, Int64 z) => _ProgramUniform3i64NV(program, location, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3i64vARB(uint program, int location, int count, Int64[] value) => _ProgramUniform3i64vARB(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3i64vARB(uint program, int location, int count, void* value) => _ProgramUniform3i64vARB_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3i64vARB(uint program, int location, int count, IntPtr value) => _ProgramUniform3i64vARB_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3i64vNV(uint program, int location, int count, Int64[] value) => _ProgramUniform3i64vNV(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3i64vNV(uint program, int location, int count, void* value) => _ProgramUniform3i64vNV_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3i64vNV(uint program, int location, int count, IntPtr value) => _ProgramUniform3i64vNV_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3iEXT(uint program, int location, int v0, int v1, int v2) => _ProgramUniform3iEXT(program, location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3iv(uint program, int location, int count, int[] value) => _ProgramUniform3iv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3iv(uint program, int location, int count, void* value) => _ProgramUniform3iv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3iv(uint program, int location, int count, IntPtr value) => _ProgramUniform3iv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3ivEXT(uint program, int location, int count, int[] value) => _ProgramUniform3ivEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3ivEXT(uint program, int location, int count, void* value) => _ProgramUniform3ivEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3ivEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform3ivEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3ui(uint program, int location, uint v0, uint v1, uint v2) => _ProgramUniform3ui(program, location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3ui64ARB(uint program, int location, UInt64 x, UInt64 y, UInt64 z) => _ProgramUniform3ui64ARB(program, location, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3ui64NV(uint program, int location, UInt64 x, UInt64 y, UInt64 z) => _ProgramUniform3ui64NV(program, location, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3ui64vARB(uint program, int location, int count, UInt64[] value) => _ProgramUniform3ui64vARB(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3ui64vARB(uint program, int location, int count, void* value) => _ProgramUniform3ui64vARB_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3ui64vARB(uint program, int location, int count, IntPtr value) => _ProgramUniform3ui64vARB_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3ui64vNV(uint program, int location, int count, UInt64[] value) => _ProgramUniform3ui64vNV(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3ui64vNV(uint program, int location, int count, void* value) => _ProgramUniform3ui64vNV_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3ui64vNV(uint program, int location, int count, IntPtr value) => _ProgramUniform3ui64vNV_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3uiEXT(uint program, int location, uint v0, uint v1, uint v2) => _ProgramUniform3uiEXT(program, location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3uiv(uint program, int location, int count, uint[] value) => _ProgramUniform3uiv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3uiv(uint program, int location, int count, void* value) => _ProgramUniform3uiv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3uiv(uint program, int location, int count, IntPtr value) => _ProgramUniform3uiv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3uivEXT(uint program, int location, int count, uint[] value) => _ProgramUniform3uivEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3uivEXT(uint program, int location, int count, void* value) => _ProgramUniform3uivEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform3uivEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform3uivEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4d(uint program, int location, double v0, double v1, double v2, double v3) => _ProgramUniform4d(program, location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4dEXT(uint program, int location, double x, double y, double z, double w) => _ProgramUniform4dEXT(program, location, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4dv(uint program, int location, int count, double[] value) => _ProgramUniform4dv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4dv(uint program, int location, int count, void* value) => _ProgramUniform4dv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4dv(uint program, int location, int count, IntPtr value) => _ProgramUniform4dv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4dvEXT(uint program, int location, int count, double[] value) => _ProgramUniform4dvEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4dvEXT(uint program, int location, int count, void* value) => _ProgramUniform4dvEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4dvEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform4dvEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4f(uint program, int location, float v0, float v1, float v2, float v3) => _ProgramUniform4f(program, location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4fEXT(uint program, int location, float v0, float v1, float v2, float v3) => _ProgramUniform4fEXT(program, location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4fv(uint program, int location, int count, float[] value) => _ProgramUniform4fv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4fv(uint program, int location, int count, void* value) => _ProgramUniform4fv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4fv(uint program, int location, int count, IntPtr value) => _ProgramUniform4fv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4fvEXT(uint program, int location, int count, float[] value) => _ProgramUniform4fvEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4fvEXT(uint program, int location, int count, void* value) => _ProgramUniform4fvEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4fvEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform4fvEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4i(uint program, int location, int v0, int v1, int v2, int v3) => _ProgramUniform4i(program, location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4i64ARB(uint program, int location, Int64 x, Int64 y, Int64 z, Int64 w) => _ProgramUniform4i64ARB(program, location, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4i64NV(uint program, int location, Int64 x, Int64 y, Int64 z, Int64 w) => _ProgramUniform4i64NV(program, location, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4i64vARB(uint program, int location, int count, Int64[] value) => _ProgramUniform4i64vARB(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4i64vARB(uint program, int location, int count, void* value) => _ProgramUniform4i64vARB_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4i64vARB(uint program, int location, int count, IntPtr value) => _ProgramUniform4i64vARB_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4i64vNV(uint program, int location, int count, Int64[] value) => _ProgramUniform4i64vNV(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4i64vNV(uint program, int location, int count, void* value) => _ProgramUniform4i64vNV_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4i64vNV(uint program, int location, int count, IntPtr value) => _ProgramUniform4i64vNV_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4iEXT(uint program, int location, int v0, int v1, int v2, int v3) => _ProgramUniform4iEXT(program, location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4iv(uint program, int location, int count, int[] value) => _ProgramUniform4iv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4iv(uint program, int location, int count, void* value) => _ProgramUniform4iv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4iv(uint program, int location, int count, IntPtr value) => _ProgramUniform4iv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4ivEXT(uint program, int location, int count, int[] value) => _ProgramUniform4ivEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4ivEXT(uint program, int location, int count, void* value) => _ProgramUniform4ivEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4ivEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform4ivEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4ui(uint program, int location, uint v0, uint v1, uint v2, uint v3) => _ProgramUniform4ui(program, location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4ui64ARB(uint program, int location, UInt64 x, UInt64 y, UInt64 z, UInt64 w) => _ProgramUniform4ui64ARB(program, location, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4ui64NV(uint program, int location, UInt64 x, UInt64 y, UInt64 z, UInt64 w) => _ProgramUniform4ui64NV(program, location, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4ui64vARB(uint program, int location, int count, UInt64[] value) => _ProgramUniform4ui64vARB(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4ui64vARB(uint program, int location, int count, void* value) => _ProgramUniform4ui64vARB_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4ui64vARB(uint program, int location, int count, IntPtr value) => _ProgramUniform4ui64vARB_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4ui64vNV(uint program, int location, int count, UInt64[] value) => _ProgramUniform4ui64vNV(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4ui64vNV(uint program, int location, int count, void* value) => _ProgramUniform4ui64vNV_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4ui64vNV(uint program, int location, int count, IntPtr value) => _ProgramUniform4ui64vNV_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4uiEXT(uint program, int location, uint v0, uint v1, uint v2, uint v3) => _ProgramUniform4uiEXT(program, location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4uiv(uint program, int location, int count, uint[] value) => _ProgramUniform4uiv(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4uiv(uint program, int location, int count, void* value) => _ProgramUniform4uiv_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4uiv(uint program, int location, int count, IntPtr value) => _ProgramUniform4uiv_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4uivEXT(uint program, int location, int count, uint[] value) => _ProgramUniform4uivEXT(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4uivEXT(uint program, int location, int count, void* value) => _ProgramUniform4uivEXT_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniform4uivEXT(uint program, int location, int count, IntPtr value) => _ProgramUniform4uivEXT_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformHandleui64ARB(uint program, int location, UInt64 value) => _ProgramUniformHandleui64ARB(program, location, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformHandleui64IMG(uint program, int location, UInt64 value) => _ProgramUniformHandleui64IMG(program, location, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformHandleui64NV(uint program, int location, UInt64 value) => _ProgramUniformHandleui64NV(program, location, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformHandleui64vARB(uint program, int location, int count, UInt64[] values) => _ProgramUniformHandleui64vARB(program, location, count, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformHandleui64vARB(uint program, int location, int count, void* values) => _ProgramUniformHandleui64vARB_ptr(program, location, count, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformHandleui64vARB(uint program, int location, int count, IntPtr values) => _ProgramUniformHandleui64vARB_intptr(program, location, count, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformHandleui64vIMG(uint program, int location, int count, UInt64[] values) => _ProgramUniformHandleui64vIMG(program, location, count, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformHandleui64vIMG(uint program, int location, int count, void* values) => _ProgramUniformHandleui64vIMG_ptr(program, location, count, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformHandleui64vIMG(uint program, int location, int count, IntPtr values) => _ProgramUniformHandleui64vIMG_intptr(program, location, count, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformHandleui64vNV(uint program, int location, int count, UInt64[] values) => _ProgramUniformHandleui64vNV(program, location, count, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformHandleui64vNV(uint program, int location, int count, void* values) => _ProgramUniformHandleui64vNV_ptr(program, location, count, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformHandleui64vNV(uint program, int location, int count, IntPtr values) => _ProgramUniformHandleui64vNV_intptr(program, location, count, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2dv(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix2dv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2dv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix2dv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2dv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix2dv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2dvEXT(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix2dvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2dvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix2dvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2dvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix2dvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2fv(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix2fv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2fv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix2fv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2fv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix2fv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2fvEXT(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix2fvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2fvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix2fvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2fvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix2fvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x3dv(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix2x3dv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x3dv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix2x3dv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x3dv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix2x3dv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x3dvEXT(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix2x3dvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x3dvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix2x3dvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x3dvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix2x3dvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x3fv(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix2x3fv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x3fv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix2x3fv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x3fv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix2x3fv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x3fvEXT(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix2x3fvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x3fvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix2x3fvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x3fvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix2x3fvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x4dv(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix2x4dv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x4dv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix2x4dv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x4dv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix2x4dv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x4dvEXT(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix2x4dvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x4dvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix2x4dvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x4dvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix2x4dvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x4fv(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix2x4fv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x4fv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix2x4fv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x4fv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix2x4fv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x4fvEXT(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix2x4fvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x4fvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix2x4fvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix2x4fvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix2x4fvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3dv(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix3dv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3dv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix3dv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3dv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix3dv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3dvEXT(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix3dvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3dvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix3dvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3dvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix3dvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3fv(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix3fv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3fv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix3fv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3fv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix3fv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3fvEXT(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix3fvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3fvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix3fvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3fvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix3fvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x2dv(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix3x2dv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x2dv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix3x2dv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x2dv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix3x2dv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x2dvEXT(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix3x2dvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x2dvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix3x2dvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x2dvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix3x2dvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x2fv(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix3x2fv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x2fv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix3x2fv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x2fv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix3x2fv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x2fvEXT(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix3x2fvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x2fvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix3x2fvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x2fvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix3x2fvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x4dv(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix3x4dv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x4dv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix3x4dv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x4dv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix3x4dv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x4dvEXT(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix3x4dvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x4dvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix3x4dvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x4dvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix3x4dvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x4fv(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix3x4fv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x4fv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix3x4fv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x4fv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix3x4fv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x4fvEXT(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix3x4fvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x4fvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix3x4fvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix3x4fvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix3x4fvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4dv(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix4dv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4dv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix4dv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4dv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix4dv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4dvEXT(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix4dvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4dvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix4dvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4dvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix4dvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4fv(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix4fv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4fv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix4fv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4fv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix4fv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4fvEXT(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix4fvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4fvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix4fvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4fvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix4fvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x2dv(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix4x2dv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x2dv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix4x2dv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x2dv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix4x2dv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x2dvEXT(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix4x2dvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x2dvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix4x2dvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x2dvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix4x2dvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x2fv(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix4x2fv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x2fv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix4x2fv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x2fv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix4x2fv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x2fvEXT(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix4x2fvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x2fvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix4x2fvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x2fvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix4x2fvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x3dv(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix4x3dv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x3dv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix4x3dv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x3dv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix4x3dv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x3dvEXT(uint program, int location, int count, bool transpose, double[] value) => _ProgramUniformMatrix4x3dvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x3dvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix4x3dvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x3dvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix4x3dvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x3fv(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix4x3fv(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x3fv(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix4x3fv_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x3fv(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix4x3fv_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x3fvEXT(uint program, int location, int count, bool transpose, float[] value) => _ProgramUniformMatrix4x3fvEXT(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x3fvEXT(uint program, int location, int count, bool transpose, void* value) => _ProgramUniformMatrix4x3fvEXT_ptr(program, location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformMatrix4x3fvEXT(uint program, int location, int count, bool transpose, IntPtr value) => _ProgramUniformMatrix4x3fvEXT_intptr(program, location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformui64NV(uint program, int location, UInt64 value) => _ProgramUniformui64NV(program, location, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformui64vNV(uint program, int location, int count, UInt64[] value) => _ProgramUniformui64vNV(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformui64vNV(uint program, int location, int count, void* value) => _ProgramUniformui64vNV_ptr(program, location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramUniformui64vNV(uint program, int location, int count, IntPtr value) => _ProgramUniformui64vNV_intptr(program, location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProgramVertexLimitNV(ProgramTarget target, int limit) => _ProgramVertexLimitNV(target, limit); + + // --- + + /// + /// Flatshading a vertex shader varying output means to assign all vetices of the primitive the same value for that output. The vertex from which these values is derived is known as the provoking vertex and glProvokingVertex specifies which vertex is to be used as the source of data for flat shaded varyings. + /// provokeMode must be either GL_FIRST_VERTEX_CONVENTION or GL_LAST_VERTEX_CONVENTION, and controls the selection of the vertex whose values are assigned to flatshaded varying outputs. The interpretation of these values for the supported primitive types is: Primitive Type of Polygon i First Vertex Convention Last Vertex Convention point ii independent line 2i - 1 2i line loop ii + 1, if i < n 1, if i = n line strip ii + 1 independent triangle 3i - 2 3i triangle strip ii + 2 triangle fan i + 1 i + 2 line adjacency 4i - 2 4i - 1 line strip adjacency i + 1 i + 2 triangle adjacency 6i - 5 6i - 1 triangle strip adjacency 2i - 1 2i + 3 + /// If a vertex or geometry shader is active, user-defined varying outputs may be flatshaded by using the flat qualifier when declaring the output. + /// + /// Specifies the vertex to be used as the source of data for flat shaded varyings. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProvokingVertex(VertexProvokingMode mode) => _ProvokingVertex(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ProvokingVertexEXT(VertexProvokingMode mode) => _ProvokingVertexEXT(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushAttrib(int mask) => _PushAttrib(mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushClientAttrib(int mask) => _PushClientAttrib(mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushClientAttribDefaultEXT(int mask) => _PushClientAttribDefaultEXT(mask); + + // --- + + /// + /// glPushDebugGroup pushes a debug group described by the string message into the command stream. The value of id specifies the ID of messages generated. The parameter length contains the number of characters in message. If length is negative, it is implied that message contains a null terminated string. The message has the specified source and id, the typeGL_DEBUG_TYPE_PUSH_GROUP, and severityGL_DEBUG_SEVERITY_NOTIFICATION. The GL will put a new debug group on top of the debug group stack which inherits the control of the volume of debug output of the debug group previously residing on the top of the debug group stack. Because debug groups are strictly hierarchical, any additional control of the debug output volume will only apply within the active debug group and the debug groups pushed on top of the active debug group. + /// + /// The source of the debug message. + /// The identifier of the message. + /// The length of the message to be sent to the debug output stream. + /// The a string containing the message to be sent to the debug output stream. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushDebugGroup(DebugSource source, uint id, int length, string message) => _PushDebugGroup(source, id, length, message); + + /// + /// glPushDebugGroup pushes a debug group described by the string message into the command stream. The value of id specifies the ID of messages generated. The parameter length contains the number of characters in message. If length is negative, it is implied that message contains a null terminated string. The message has the specified source and id, the typeGL_DEBUG_TYPE_PUSH_GROUP, and severityGL_DEBUG_SEVERITY_NOTIFICATION. The GL will put a new debug group on top of the debug group stack which inherits the control of the volume of debug output of the debug group previously residing on the top of the debug group stack. Because debug groups are strictly hierarchical, any additional control of the debug output volume will only apply within the active debug group and the debug groups pushed on top of the active debug group. + /// + /// The source of the debug message. + /// The identifier of the message. + /// The length of the message to be sent to the debug output stream. + /// The a string containing the message to be sent to the debug output stream. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushDebugGroup(DebugSource source, uint id, int length, void* message) => _PushDebugGroup_ptr(source, id, length, message); + + /// + /// glPushDebugGroup pushes a debug group described by the string message into the command stream. The value of id specifies the ID of messages generated. The parameter length contains the number of characters in message. If length is negative, it is implied that message contains a null terminated string. The message has the specified source and id, the typeGL_DEBUG_TYPE_PUSH_GROUP, and severityGL_DEBUG_SEVERITY_NOTIFICATION. The GL will put a new debug group on top of the debug group stack which inherits the control of the volume of debug output of the debug group previously residing on the top of the debug group stack. Because debug groups are strictly hierarchical, any additional control of the debug output volume will only apply within the active debug group and the debug groups pushed on top of the active debug group. + /// + /// The source of the debug message. + /// The identifier of the message. + /// The length of the message to be sent to the debug output stream. + /// The a string containing the message to be sent to the debug output stream. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushDebugGroup(DebugSource source, uint id, int length, IntPtr message) => _PushDebugGroup_intptr(source, id, length, message); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushDebugGroupKHR(DebugSource source, uint id, int length, string message) => _PushDebugGroupKHR(source, id, length, message); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushDebugGroupKHR(DebugSource source, uint id, int length, void* message) => _PushDebugGroupKHR_ptr(source, id, length, message); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushDebugGroupKHR(DebugSource source, uint id, int length, IntPtr message) => _PushDebugGroupKHR_intptr(source, id, length, message); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushGroupMarkerEXT(int length, string marker) => _PushGroupMarkerEXT(length, marker); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushGroupMarkerEXT(int length, void* marker) => _PushGroupMarkerEXT_ptr(length, marker); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushGroupMarkerEXT(int length, IntPtr marker) => _PushGroupMarkerEXT_intptr(length, marker); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushMatrix() => _PushMatrix(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void PushName(uint name) => _PushName(name); + + // --- + + /// + /// glQueryCounter causes the GL to record the current time into the query object named id. target must be GL_TIMESTAMP. The time is recorded after all previous commands on the GL client and server state and the framebuffer have been fully realized. When the time is recorded, the query result for that object is marked available. glQueryCounter timer queries can be used within a glBeginQuery / glEndQuery block where the target is GL_TIME_ELAPSED and it does not affect the result of that query object. + /// + /// Specify the name of a query object into which to record the GL time. + /// Specify the counter to query. target must be GL_TIMESTAMP. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void QueryCounter(uint id, QueryCounterTarget target) => _QueryCounter(id, target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void QueryCounterEXT(uint id, QueryCounterTarget target) => _QueryCounterEXT(id, target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int QueryMatrixxOES(float[] mantissa, int[] exponent) => _QueryMatrixxOES(mantissa, exponent); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int QueryMatrixxOES(void* mantissa, void* exponent) => _QueryMatrixxOES_ptr(mantissa, exponent); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int QueryMatrixxOES(IntPtr mantissa, IntPtr exponent) => _QueryMatrixxOES_intptr(mantissa, exponent); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void QueryObjectParameteruiAMD(QueryTarget target, uint id, int pname, uint param) => _QueryObjectParameteruiAMD(target, id, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int QueryResourceNV(int queryType, int tagId, uint count, int[] buffer) => _QueryResourceNV(queryType, tagId, count, buffer); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int QueryResourceNV(int queryType, int tagId, uint count, void* buffer) => _QueryResourceNV_ptr(queryType, tagId, count, buffer); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int QueryResourceNV(int queryType, int tagId, uint count, IntPtr buffer) => _QueryResourceNV_intptr(queryType, tagId, count, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void QueryResourceTagNV(int tagId, string tagString) => _QueryResourceTagNV(tagId, tagString); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void QueryResourceTagNV(int tagId, void* tagString) => _QueryResourceTagNV_ptr(tagId, tagString); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void QueryResourceTagNV(int tagId, IntPtr tagString) => _QueryResourceTagNV_intptr(tagId, tagString); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2d(double x, double y) => _RasterPos2d(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2dv(double[] v) => _RasterPos2dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2dv(void* v) => _RasterPos2dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2dv(IntPtr v) => _RasterPos2dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2f(float x, float y) => _RasterPos2f(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2fv(float[] v) => _RasterPos2fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2fv(void* v) => _RasterPos2fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2fv(IntPtr v) => _RasterPos2fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2i(int x, int y) => _RasterPos2i(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2iv(int[] v) => _RasterPos2iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2iv(void* v) => _RasterPos2iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2iv(IntPtr v) => _RasterPos2iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2s(short x, short y) => _RasterPos2s(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2sv(short[] v) => _RasterPos2sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2sv(void* v) => _RasterPos2sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2sv(IntPtr v) => _RasterPos2sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2xOES(float x, float y) => _RasterPos2xOES(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2xvOES(float[] coords) => _RasterPos2xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2xvOES(void* coords) => _RasterPos2xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos2xvOES(IntPtr coords) => _RasterPos2xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3d(double x, double y, double z) => _RasterPos3d(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3dv(double[] v) => _RasterPos3dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3dv(void* v) => _RasterPos3dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3dv(IntPtr v) => _RasterPos3dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3f(float x, float y, float z) => _RasterPos3f(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3fv(float[] v) => _RasterPos3fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3fv(void* v) => _RasterPos3fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3fv(IntPtr v) => _RasterPos3fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3i(int x, int y, int z) => _RasterPos3i(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3iv(int[] v) => _RasterPos3iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3iv(void* v) => _RasterPos3iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3iv(IntPtr v) => _RasterPos3iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3s(short x, short y, short z) => _RasterPos3s(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3sv(short[] v) => _RasterPos3sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3sv(void* v) => _RasterPos3sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3sv(IntPtr v) => _RasterPos3sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3xOES(float x, float y, float z) => _RasterPos3xOES(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3xvOES(float[] coords) => _RasterPos3xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3xvOES(void* coords) => _RasterPos3xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos3xvOES(IntPtr coords) => _RasterPos3xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4d(double x, double y, double z, double w) => _RasterPos4d(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4dv(double[] v) => _RasterPos4dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4dv(void* v) => _RasterPos4dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4dv(IntPtr v) => _RasterPos4dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4f(float x, float y, float z, float w) => _RasterPos4f(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4fv(float[] v) => _RasterPos4fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4fv(void* v) => _RasterPos4fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4fv(IntPtr v) => _RasterPos4fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4i(int x, int y, int z, int w) => _RasterPos4i(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4iv(int[] v) => _RasterPos4iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4iv(void* v) => _RasterPos4iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4iv(IntPtr v) => _RasterPos4iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4s(short x, short y, short z, short w) => _RasterPos4s(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4sv(short[] v) => _RasterPos4sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4sv(void* v) => _RasterPos4sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4sv(IntPtr v) => _RasterPos4sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4xOES(float x, float y, float z, float w) => _RasterPos4xOES(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4xvOES(float[] coords) => _RasterPos4xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4xvOES(void* coords) => _RasterPos4xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterPos4xvOES(IntPtr coords) => _RasterPos4xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RasterSamplesEXT(uint samples, bool fixedsamplelocations) => _RasterSamplesEXT(samples, fixedsamplelocations); + + // --- + + /// + /// glReadBuffer specifies a color buffer as the source for subsequent glReadPixels, glCopyTexImage1D, glCopyTexImage2D, glCopyTexSubImage1D, glCopyTexSubImage2D, and glCopyTexSubImage3D commands. mode accepts one of twelve or more predefined values. In a fully configured system, GL_FRONT, GL_LEFT, and GL_FRONT_LEFT all name the front left buffer, GL_FRONT_RIGHT and GL_RIGHT name the front right buffer, and GL_BACK_LEFT and GL_BACK name the back left buffer. Further more, the constants GL_COLOR_ATTACHMENTi may be used to indicate the ith color attachment where i ranges from zero to the value of GL_MAX_COLOR_ATTACHMENTS minus one. + /// Nonstereo double-buffered configurations have only a front left and a back left buffer. Single-buffered configurations have a front left and a front right buffer if stereo, and only a front left buffer if nonstereo. It is an error to specify a nonexistent buffer to glReadBuffer. + /// mode is initially GL_FRONT in single-buffered configurations and GL_BACK in double-buffered configurations. + /// For glReadBuffer, the target framebuffer object is that bound to GL_READ_FRAMEBUFFER. For glNamedFramebufferReadBuffer, framebuffer must either be zero or the name of the target framebuffer object. If framebuffer is zero, then the default read framebuffer is affected. + /// + /// Specifies the name of the framebuffer object for glNamedFramebufferReadBuffer function. + /// Specifies a color buffer. Accepted values are GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT, GL_BACK_RIGHT, GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT, and the constants GL_COLOR_ATTACHMENTi. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReadBuffer(ReadBufferMode src) => _ReadBuffer(src); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReadBufferIndexedEXT(ReadBufferMode src, int index) => _ReadBufferIndexedEXT(src, index); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReadBufferNV(int mode) => _ReadBufferNV(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReadInstrumentsSGIX(int marker) => _ReadInstrumentsSGIX(marker); + + // --- + + /// + /// glReadPixels and glReadnPixels return pixel data from the frame buffer, starting with the pixel whose lower left corner is at location (x, y), into client memory starting at location data. Several parameters control the processing of the pixel data before it is placed into client memory. These parameters are set with glPixelStore. This reference page describes the effects on glReadPixels and glReadnPixels of most, but not all of the parameters specified by these three commands. + /// If a non-zero named buffer object is bound to the GL_PIXEL_PACK_BUFFER target (see glBindBuffer) while a block of pixels is requested, data is treated as a byte offset into the buffer object's data store rather than a pointer to client memory. + /// glReadPixels and glReadnPixels return values from each pixel with lower left corner at . GL_RGB and GL_BGR return three values, GL_RGBA and GL_BGRA return four values for each pixel, with all values corresponding to a single pixel occupying contiguous space in data. Storage parameters set by glPixelStore, such as GL_PACK_LSB_FIRST and GL_PACK_SWAP_BYTES, affect the way that data is written into memory. See glPixelStore for a description. + /// glReadnPixels function will only handle the call if bufSize is at least of the size required to store the requested data. Otherwise, it will generate a GL_INVALID_OPERATION error. + /// + /// Specify the window coordinates of the first pixel that is read from the frame buffer. This location is the lower left corner of a rectangular block of pixels. + /// Specify the dimensions of the pixel rectangle. width and height of one correspond to a single pixel. + /// Specifies the format of the pixel data. The following symbolic values are accepted: GL_STENCIL_INDEX, GL_DEPTH_COMPONENT, GL_DEPTH_STENCIL, GL_RED, GL_GREEN, GL_BLUE, GL_RGB, GL_BGR, GL_RGBA, and GL_BGRA. + /// Specifies the data type of the pixel data. Must be one of GL_UNSIGNED_BYTE, GL_BYTE, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT, GL_HALF_FLOAT, GL_FLOAT, GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_5_6_5_REV, GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, GL_UNSIGNED_INT_2_10_10_10_REV, GL_UNSIGNED_INT_24_8, GL_UNSIGNED_INT_10F_11F_11F_REV, GL_UNSIGNED_INT_5_9_9_9_REV, or GL_FLOAT_32_UNSIGNED_INT_24_8_REV. + /// Specifies the size of the buffer data for glReadnPixels function. + /// Returns the pixel data. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReadPixels(int x, int y, int width, int height, PixelFormat format, PixelType type, IntPtr pixels) => _ReadPixels(x, y, width, height, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReadnPixels(int x, int y, int width, int height, PixelFormat format, PixelType type, int bufSize, IntPtr data) => _ReadnPixels(x, y, width, height, format, type, bufSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReadnPixelsARB(int x, int y, int width, int height, PixelFormat format, PixelType type, int bufSize, IntPtr data) => _ReadnPixelsARB(x, y, width, height, format, type, bufSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReadnPixelsEXT(int x, int y, int width, int height, PixelFormat format, PixelType type, int bufSize, IntPtr data) => _ReadnPixelsEXT(x, y, width, height, format, type, bufSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReadnPixelsKHR(int x, int y, int width, int height, PixelFormat format, PixelType type, int bufSize, IntPtr data) => _ReadnPixelsKHR(x, y, width, height, format, type, bufSize, data); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool ReleaseKeyedMutexWin32EXT(uint memory, UInt64 key) => _ReleaseKeyedMutexWin32EXT(memory, key); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectd(double x1, double y1, double x2, double y2) => _Rectd(x1, y1, x2, y2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectdv(double[] v1, double[] v2) => _Rectdv(v1, v2); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectdv(void* v1, void* v2) => _Rectdv_ptr(v1, v2); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectdv(IntPtr v1, IntPtr v2) => _Rectdv_intptr(v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectf(float x1, float y1, float x2, float y2) => _Rectf(x1, y1, x2, y2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectfv(float[] v1, float[] v2) => _Rectfv(v1, v2); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectfv(void* v1, void* v2) => _Rectfv_ptr(v1, v2); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectfv(IntPtr v1, IntPtr v2) => _Rectfv_intptr(v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Recti(int x1, int y1, int x2, int y2) => _Recti(x1, y1, x2, y2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectiv(int[] v1, int[] v2) => _Rectiv(v1, v2); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectiv(void* v1, void* v2) => _Rectiv_ptr(v1, v2); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectiv(IntPtr v1, IntPtr v2) => _Rectiv_intptr(v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rects(short x1, short y1, short x2, short y2) => _Rects(x1, y1, x2, y2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectsv(short[] v1, short[] v2) => _Rectsv(v1, v2); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectsv(void* v1, void* v2) => _Rectsv_ptr(v1, v2); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rectsv(IntPtr v1, IntPtr v2) => _Rectsv_intptr(v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RectxOES(float x1, float y1, float x2, float y2) => _RectxOES(x1, y1, x2, y2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RectxvOES(float[] v1, float[] v2) => _RectxvOES(v1, v2); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RectxvOES(void* v1, void* v2) => _RectxvOES_ptr(v1, v2); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RectxvOES(IntPtr v1, IntPtr v2) => _RectxvOES_intptr(v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReferencePlaneSGIX(double[] equation) => _ReferencePlaneSGIX(equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReferencePlaneSGIX(void* equation) => _ReferencePlaneSGIX_ptr(equation); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReferencePlaneSGIX(IntPtr equation) => _ReferencePlaneSGIX_intptr(equation); + + // --- + + /// + /// glReleaseShaderCompiler provides a hint to the implementation that it may free internal resources associated with its shader compiler. glCompileShader may subsequently be called and the implementation may at that time reallocate resources previously freed by the call to glReleaseShaderCompiler. + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReleaseShaderCompiler() => _ReleaseShaderCompiler(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RenderGpuMaskNV(int mask) => _RenderGpuMaskNV(mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int RenderMode(RenderingMode mode) => _RenderMode(mode); + + // --- + + /// + /// glRenderbufferStorage is equivalent to calling glRenderbufferStorageMultisample with the samples set to zero, and glNamedRenderbufferStorage is equivalent to calling glNamedRenderbufferStorageMultisample with the samples set to zero. + /// For glRenderbufferStorage, the target of the operation, specified by target must be GL_RENDERBUFFER. For glNamedRenderbufferStorage, renderbuffer must be a name of an existing renderbuffer object. internalformat specifies the internal format to be used for the renderbuffer object's storage and must be a color-renderable, depth-renderable, or stencil-renderable format. width and height are the dimensions, in pixels, of the renderbuffer. Both width and height must be less than or equal to the value of GL_MAX_RENDERBUFFER_SIZE. + /// Upon success, glRenderbufferStorage and glNamedRenderbufferStorage delete any existing data store for the renderbuffer image and the contents of the data store after calling glRenderbufferStorage are undefined. + /// + /// Specifies a binding target of the allocation for glRenderbufferStorage function. Must be GL_RENDERBUFFER. + /// Specifies the name of the renderbuffer object for glNamedRenderbufferStorage function. + /// Specifies the internal format to use for the renderbuffer object's image. + /// Specifies the width of the renderbuffer, in pixels. + /// Specifies the height of the renderbuffer, in pixels. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RenderbufferStorage(RenderbufferTarget target, InternalFormat internalformat, int width, int height) => _RenderbufferStorage(target, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RenderbufferStorageEXT(RenderbufferTarget target, InternalFormat internalformat, int width, int height) => _RenderbufferStorageEXT(target, internalformat, width, height); + + // --- + + /// + /// glRenderbufferStorageMultisample and glNamedRenderbufferStorageMultisample establish the data storage, format, dimensions and number of samples of a renderbuffer object's image. + /// For glRenderbufferStorageMultisample, the target of the operation, specified by target must be GL_RENDERBUFFER. For glNamedRenderbufferStorageMultisample, renderbuffer must be an ID of an existing renderbuffer object. internalformat specifies the internal format to be used for the renderbuffer object's storage and must be a color-renderable, depth-renderable, or stencil-renderable format. width and height are the dimensions, in pixels, of the renderbuffer. Both width and height must be less than or equal to the value of GL_MAX_RENDERBUFFER_SIZE. samples specifies the number of samples to be used for the renderbuffer object's image, and must be less than or equal to the value of GL_MAX_SAMPLES. If internalformat is a signed or unsigned integer format then samples must be less than or equal to the value of GL_MAX_INTEGER_SAMPLES. + /// Upon success, glRenderbufferStorageMultisample and glNamedRenderbufferStorageMultisample delete any existing data store for the renderbuffer image and the contents of the data store after calling either of the functions are undefined. + /// + /// Specifies a binding target of the allocation for glRenderbufferStorageMultisample function. Must be GL_RENDERBUFFER. + /// Specifies the name of the renderbuffer object for glNamedRenderbufferStorageMultisample function. + /// Specifies the number of samples to be used for the renderbuffer object's storage. + /// Specifies the internal format to use for the renderbuffer object's image. + /// Specifies the width of the renderbuffer, in pixels. + /// Specifies the height of the renderbuffer, in pixels. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RenderbufferStorageMultisample(RenderbufferTarget target, int samples, InternalFormat internalformat, int width, int height) => _RenderbufferStorageMultisample(target, samples, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RenderbufferStorageMultisampleANGLE(RenderbufferTarget target, int samples, InternalFormat internalformat, int width, int height) => _RenderbufferStorageMultisampleANGLE(target, samples, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RenderbufferStorageMultisampleAPPLE(RenderbufferTarget target, int samples, InternalFormat internalformat, int width, int height) => _RenderbufferStorageMultisampleAPPLE(target, samples, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RenderbufferStorageMultisampleAdvancedAMD(RenderbufferTarget target, int samples, int storageSamples, InternalFormat internalformat, int width, int height) => _RenderbufferStorageMultisampleAdvancedAMD(target, samples, storageSamples, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RenderbufferStorageMultisampleCoverageNV(RenderbufferTarget target, int coverageSamples, int colorSamples, InternalFormat internalformat, int width, int height) => _RenderbufferStorageMultisampleCoverageNV(target, coverageSamples, colorSamples, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RenderbufferStorageMultisampleEXT(RenderbufferTarget target, int samples, InternalFormat internalformat, int width, int height) => _RenderbufferStorageMultisampleEXT(target, samples, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RenderbufferStorageMultisampleIMG(RenderbufferTarget target, int samples, InternalFormat internalformat, int width, int height) => _RenderbufferStorageMultisampleIMG(target, samples, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RenderbufferStorageMultisampleNV(RenderbufferTarget target, int samples, InternalFormat internalformat, int width, int height) => _RenderbufferStorageMultisampleNV(target, samples, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RenderbufferStorageOES(RenderbufferTarget target, InternalFormat internalformat, int width, int height) => _RenderbufferStorageOES(target, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodePointerSUN(ReplacementCodeTypeSUN type, int stride, IntPtr* pointer) => _ReplacementCodePointerSUN(type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeubSUN(byte code) => _ReplacementCodeubSUN(code); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeubvSUN(byte[] code) => _ReplacementCodeubvSUN(code); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeubvSUN(void* code) => _ReplacementCodeubvSUN_ptr(code); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeubvSUN(IntPtr code) => _ReplacementCodeubvSUN_intptr(code); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiColor3fVertex3fSUN(uint rc, float r, float g, float b, float x, float y, float z) => _ReplacementCodeuiColor3fVertex3fSUN(rc, r, g, b, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiColor3fVertex3fvSUN(uint[] rc, float[] c, float[] v) => _ReplacementCodeuiColor3fVertex3fvSUN(rc, c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiColor3fVertex3fvSUN(void* rc, void* c, void* v) => _ReplacementCodeuiColor3fVertex3fvSUN_ptr(rc, c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiColor3fVertex3fvSUN(IntPtr rc, IntPtr c, IntPtr v) => _ReplacementCodeuiColor3fVertex3fvSUN_intptr(rc, c, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiColor4fNormal3fVertex3fSUN(uint rc, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z) => _ReplacementCodeuiColor4fNormal3fVertex3fSUN(rc, r, g, b, a, nx, ny, nz, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiColor4fNormal3fVertex3fvSUN(uint[] rc, float[] c, float[] n, float[] v) => _ReplacementCodeuiColor4fNormal3fVertex3fvSUN(rc, c, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiColor4fNormal3fVertex3fvSUN(void* rc, void* c, void* n, void* v) => _ReplacementCodeuiColor4fNormal3fVertex3fvSUN_ptr(rc, c, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiColor4fNormal3fVertex3fvSUN(IntPtr rc, IntPtr c, IntPtr n, IntPtr v) => _ReplacementCodeuiColor4fNormal3fVertex3fvSUN_intptr(rc, c, n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiColor4ubVertex3fSUN(uint rc, byte r, byte g, byte b, byte a, float x, float y, float z) => _ReplacementCodeuiColor4ubVertex3fSUN(rc, r, g, b, a, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiColor4ubVertex3fvSUN(uint[] rc, byte[] c, float[] v) => _ReplacementCodeuiColor4ubVertex3fvSUN(rc, c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiColor4ubVertex3fvSUN(void* rc, void* c, void* v) => _ReplacementCodeuiColor4ubVertex3fvSUN_ptr(rc, c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiColor4ubVertex3fvSUN(IntPtr rc, IntPtr c, IntPtr v) => _ReplacementCodeuiColor4ubVertex3fvSUN_intptr(rc, c, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiNormal3fVertex3fSUN(uint rc, float nx, float ny, float nz, float x, float y, float z) => _ReplacementCodeuiNormal3fVertex3fSUN(rc, nx, ny, nz, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiNormal3fVertex3fvSUN(uint[] rc, float[] n, float[] v) => _ReplacementCodeuiNormal3fVertex3fvSUN(rc, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiNormal3fVertex3fvSUN(void* rc, void* n, void* v) => _ReplacementCodeuiNormal3fVertex3fvSUN_ptr(rc, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiNormal3fVertex3fvSUN(IntPtr rc, IntPtr n, IntPtr v) => _ReplacementCodeuiNormal3fVertex3fvSUN_intptr(rc, n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiSUN(uint code) => _ReplacementCodeuiSUN(code); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN(uint rc, float s, float t, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z) => _ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fSUN(rc, s, t, r, g, b, a, nx, ny, nz, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(uint[] rc, float[] tc, float[] c, float[] n, float[] v) => _ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(rc, tc, c, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(void* rc, void* tc, void* c, void* n, void* v) => _ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_ptr(rc, tc, c, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN(IntPtr rc, IntPtr tc, IntPtr c, IntPtr n, IntPtr v) => _ReplacementCodeuiTexCoord2fColor4fNormal3fVertex3fvSUN_intptr(rc, tc, c, n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN(uint rc, float s, float t, float nx, float ny, float nz, float x, float y, float z) => _ReplacementCodeuiTexCoord2fNormal3fVertex3fSUN(rc, s, t, nx, ny, nz, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(uint[] rc, float[] tc, float[] n, float[] v) => _ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(rc, tc, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(void* rc, void* tc, void* n, void* v) => _ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_ptr(rc, tc, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN(IntPtr rc, IntPtr tc, IntPtr n, IntPtr v) => _ReplacementCodeuiTexCoord2fNormal3fVertex3fvSUN_intptr(rc, tc, n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiTexCoord2fVertex3fSUN(uint rc, float s, float t, float x, float y, float z) => _ReplacementCodeuiTexCoord2fVertex3fSUN(rc, s, t, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiTexCoord2fVertex3fvSUN(uint[] rc, float[] tc, float[] v) => _ReplacementCodeuiTexCoord2fVertex3fvSUN(rc, tc, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiTexCoord2fVertex3fvSUN(void* rc, void* tc, void* v) => _ReplacementCodeuiTexCoord2fVertex3fvSUN_ptr(rc, tc, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiTexCoord2fVertex3fvSUN(IntPtr rc, IntPtr tc, IntPtr v) => _ReplacementCodeuiTexCoord2fVertex3fvSUN_intptr(rc, tc, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiVertex3fSUN(uint rc, float x, float y, float z) => _ReplacementCodeuiVertex3fSUN(rc, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiVertex3fvSUN(uint[] rc, float[] v) => _ReplacementCodeuiVertex3fvSUN(rc, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiVertex3fvSUN(void* rc, void* v) => _ReplacementCodeuiVertex3fvSUN_ptr(rc, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuiVertex3fvSUN(IntPtr rc, IntPtr v) => _ReplacementCodeuiVertex3fvSUN_intptr(rc, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuivSUN(uint[] code) => _ReplacementCodeuivSUN(code); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuivSUN(void* code) => _ReplacementCodeuivSUN_ptr(code); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeuivSUN(IntPtr code) => _ReplacementCodeuivSUN_intptr(code); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeusSUN(ushort code) => _ReplacementCodeusSUN(code); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeusvSUN(ushort[] code) => _ReplacementCodeusvSUN(code); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeusvSUN(void* code) => _ReplacementCodeusvSUN_ptr(code); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ReplacementCodeusvSUN(IntPtr code) => _ReplacementCodeusvSUN_intptr(code); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RequestResidentProgramsNV(int n, uint[] programs) => _RequestResidentProgramsNV(n, programs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RequestResidentProgramsNV(int n, void* programs) => _RequestResidentProgramsNV_ptr(n, programs); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RequestResidentProgramsNV(int n, IntPtr programs) => _RequestResidentProgramsNV_intptr(n, programs); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ResetHistogram(HistogramTargetEXT target) => _ResetHistogram(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ResetHistogramEXT(HistogramTargetEXT target) => _ResetHistogramEXT(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ResetMemoryObjectParameterNV(uint memory, int pname) => _ResetMemoryObjectParameterNV(memory, pname); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ResetMinmax(MinmaxTargetEXT target) => _ResetMinmax(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ResetMinmaxEXT(MinmaxTargetEXT target) => _ResetMinmaxEXT(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ResizeBuffersMESA() => _ResizeBuffersMESA(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ResolveDepthValuesNV() => _ResolveDepthValuesNV(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ResolveMultisampleFramebufferAPPLE() => _ResolveMultisampleFramebufferAPPLE(); + + // --- + + /// + /// glResumeTransformFeedback resumes transform feedback operations on the currently active transform feedback object. When transform feedback operations are paused, transform feedback is still considered active and changing most transform feedback state related to the object results in an error. However, a new transform feedback object may be bound while transform feedback is paused. + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ResumeTransformFeedback() => _ResumeTransformFeedback(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ResumeTransformFeedbackNV() => _ResumeTransformFeedbackNV(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rotated(double angle, double x, double y, double z) => _Rotated(angle, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rotatef(float angle, float x, float y, float z) => _Rotatef(angle, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Rotatex(float angle, float x, float y, float z) => _Rotatex(angle, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void RotatexOES(float angle, float x, float y, float z) => _RotatexOES(angle, x, y, z); + + // --- + + /// + /// Multisampling samples a pixel multiple times at various implementation-dependent subpixel locations to generate antialiasing effects. Multisampling transparently antialiases points, lines, polygons, and images if it is enabled. + /// value is used in constructing a temporary mask used in determining which samples will be used in resolving the final fragment color. This mask is bitwise-anded with the coverage mask generated from the multisampling computation. If the invert flag is set, the temporary mask is inverted (all bits flipped) and then the bitwise-and is computed. + /// If an implementation does not have any multisample buffers available, or multisampling is disabled, rasterization occurs with only a single sample computing a pixel's final RGB color. + /// Provided an implementation supports multisample buffers, and multisampling is enabled, then a pixel's final color is generated by combining several samples per pixel. Each sample contains color, depth, and stencil information, allowing those operations to be performed on each sample. + /// + /// Specify a single floating-point sample coverage value. The value is clamped to the range . The initial value is 1.0. + /// Specify a single boolean value representing if the coverage masks should be inverted. GL_TRUE and GL_FALSE are accepted. The initial value is GL_FALSE. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SampleCoverage(float value, bool invert) => _SampleCoverage(value, invert); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SampleCoverageARB(float value, bool invert) => _SampleCoverageARB(value, invert); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SampleCoveragex(int value, bool invert) => _SampleCoveragex(value, invert); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SampleCoveragexOES(int value, bool invert) => _SampleCoveragexOES(value, invert); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SampleMapATI(uint dst, uint interp, SwizzleOpATI swizzle) => _SampleMapATI(dst, interp, swizzle); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SampleMaskEXT(float value, bool invert) => _SampleMaskEXT(value, invert); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SampleMaskIndexedNV(uint index, int mask) => _SampleMaskIndexedNV(index, mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SampleMaskSGIS(float value, bool invert) => _SampleMaskSGIS(value, invert); + + // --- + + /// + /// glSampleMaski sets one 32-bit sub-word of the multi-word sample mask, GL_SAMPLE_MASK_VALUE. + /// maskIndex specifies which 32-bit sub-word of the sample mask to update, and mask specifies the new value to use for that sub-word. maskIndex must be less than the value of GL_MAX_SAMPLE_MASK_WORDS. Bit B of mask word M corresponds to sample 32 x M + B. + /// + /// Specifies which 32-bit sub-word of the sample mask to update. + /// Specifies the new value of the mask sub-word. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SampleMaski(uint maskNumber, int mask) => _SampleMaski(maskNumber, mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplePatternEXT(SamplePatternEXT pattern) => _SamplePatternEXT(pattern); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplePatternSGIS(SamplePatternSGIS pattern) => _SamplePatternSGIS(pattern); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIiv(uint sampler, SamplerParameterI pname, int[] param) => _SamplerParameterIiv(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIiv(uint sampler, SamplerParameterI pname, void* param) => _SamplerParameterIiv_ptr(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIiv(uint sampler, SamplerParameterI pname, IntPtr param) => _SamplerParameterIiv_intptr(sampler, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIivEXT(uint sampler, SamplerParameterI pname, int[] param) => _SamplerParameterIivEXT(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIivEXT(uint sampler, SamplerParameterI pname, void* param) => _SamplerParameterIivEXT_ptr(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIivEXT(uint sampler, SamplerParameterI pname, IntPtr param) => _SamplerParameterIivEXT_intptr(sampler, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIivOES(uint sampler, SamplerParameterI pname, int[] param) => _SamplerParameterIivOES(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIivOES(uint sampler, SamplerParameterI pname, void* param) => _SamplerParameterIivOES_ptr(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIivOES(uint sampler, SamplerParameterI pname, IntPtr param) => _SamplerParameterIivOES_intptr(sampler, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIuiv(uint sampler, SamplerParameterI pname, uint[] param) => _SamplerParameterIuiv(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIuiv(uint sampler, SamplerParameterI pname, void* param) => _SamplerParameterIuiv_ptr(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIuiv(uint sampler, SamplerParameterI pname, IntPtr param) => _SamplerParameterIuiv_intptr(sampler, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIuivEXT(uint sampler, SamplerParameterI pname, uint[] param) => _SamplerParameterIuivEXT(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIuivEXT(uint sampler, SamplerParameterI pname, void* param) => _SamplerParameterIuivEXT_ptr(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIuivEXT(uint sampler, SamplerParameterI pname, IntPtr param) => _SamplerParameterIuivEXT_intptr(sampler, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIuivOES(uint sampler, SamplerParameterI pname, uint[] param) => _SamplerParameterIuivOES(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIuivOES(uint sampler, SamplerParameterI pname, void* param) => _SamplerParameterIuivOES_ptr(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterIuivOES(uint sampler, SamplerParameterI pname, IntPtr param) => _SamplerParameterIuivOES_intptr(sampler, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterf(uint sampler, SamplerParameterF pname, float param) => _SamplerParameterf(sampler, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterfv(uint sampler, SamplerParameterF pname, float[] param) => _SamplerParameterfv(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterfv(uint sampler, SamplerParameterF pname, void* param) => _SamplerParameterfv_ptr(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameterfv(uint sampler, SamplerParameterF pname, IntPtr param) => _SamplerParameterfv_intptr(sampler, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameteri(uint sampler, SamplerParameterI pname, int param) => _SamplerParameteri(sampler, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameteriv(uint sampler, SamplerParameterI pname, int[] param) => _SamplerParameteriv(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameteriv(uint sampler, SamplerParameterI pname, void* param) => _SamplerParameteriv_ptr(sampler, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SamplerParameteriv(uint sampler, SamplerParameterI pname, IntPtr param) => _SamplerParameteriv_intptr(sampler, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Scaled(double x, double y, double z) => _Scaled(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Scalef(float x, float y, float z) => _Scalef(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Scalex(float x, float y, float z) => _Scalex(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScalexOES(float x, float y, float z) => _ScalexOES(x, y, z); + + // --- + + /// + /// glScissor defines a rectangle, called the scissor box, in window coordinates. The first two arguments, x and y, specify the lower left corner of the box. width and height specify the width and height of the box. + /// To enable and disable the scissor test, call glEnable and glDisable with argument GL_SCISSOR_TEST. The test is initially disabled. While the test is enabled, only pixels that lie within the scissor box can be modified by drawing commands. Window coordinates have integer values at the shared corners of frame buffer pixels. glScissor(0,0,1,1) allows modification of only the lower left pixel in the window, and glScissor(0,0,0,0) doesn't allow modification of any pixels in the window. + /// When the scissor test is disabled, it is as though the scissor box includes the entire window. + /// + /// Specify the lower left corner of the scissor box. Initially (0, 0). + /// Specify the width and height of the scissor box. When a GL context is first attached to a window, width and height are set to the dimensions of that window. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Scissor(int x, int y, int width, int height) => _Scissor(x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorArrayv(uint first, int count, int[] v) => _ScissorArrayv(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorArrayv(uint first, int count, void* v) => _ScissorArrayv_ptr(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorArrayv(uint first, int count, IntPtr v) => _ScissorArrayv_intptr(first, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorArrayvNV(uint first, int count, int[] v) => _ScissorArrayvNV(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorArrayvNV(uint first, int count, void* v) => _ScissorArrayvNV_ptr(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorArrayvNV(uint first, int count, IntPtr v) => _ScissorArrayvNV_intptr(first, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorArrayvOES(uint first, int count, int[] v) => _ScissorArrayvOES(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorArrayvOES(uint first, int count, void* v) => _ScissorArrayvOES_ptr(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorArrayvOES(uint first, int count, IntPtr v) => _ScissorArrayvOES_intptr(first, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorExclusiveArrayvNV(uint first, int count, int[] v) => _ScissorExclusiveArrayvNV(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorExclusiveArrayvNV(uint first, int count, void* v) => _ScissorExclusiveArrayvNV_ptr(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorExclusiveArrayvNV(uint first, int count, IntPtr v) => _ScissorExclusiveArrayvNV_intptr(first, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorExclusiveNV(int x, int y, int width, int height) => _ScissorExclusiveNV(x, y, width, height); + + // --- + + /// + /// glScissorIndexed defines the scissor box for a specified viewport. index specifies the index of scissor box to modify. index must be less than the value of GL_MAX_VIEWPORTS. For glScissorIndexed, left, bottom, width and height specify the left, bottom, width and height of the scissor box, in pixels, respectively. For glScissorIndexedv, v specifies the address of an array containing integers specifying the lower left corner of the scissor box, and the width and height of the scissor box, in that order. + /// To enable and disable the scissor test, call glEnable and glDisable with argument GL_SCISSOR_TEST. The test is initially disabled for all viewports. While the test is enabled, only pixels that lie within the scissor box can be modified by drawing commands. Window coordinates have integer values at the shared corners of frame buffer pixels. glScissor(0,0,1,1) allows modification of only the lower left pixel in the window, and glScissor(0,0,0,0) doesn't allow modification of any pixels in the window. + /// When the scissor test is disabled, it is as though the scissor box includes the entire window. + /// + /// Specifies the index of the viewport whose scissor box to modify. + /// Specify the coordinate of the bottom left corner of the scissor box, in pixels. + /// Specify ths dimensions of the scissor box, in pixels. + /// For glScissorIndexedv, specifies the address of an array containing the left, bottom, width and height of each scissor box, in that order. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorIndexed(uint index, int left, int bottom, int width, int height) => _ScissorIndexed(index, left, bottom, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorIndexedNV(uint index, int left, int bottom, int width, int height) => _ScissorIndexedNV(index, left, bottom, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorIndexedOES(uint index, int left, int bottom, int width, int height) => _ScissorIndexedOES(index, left, bottom, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorIndexedv(uint index, int[] v) => _ScissorIndexedv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorIndexedv(uint index, void* v) => _ScissorIndexedv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorIndexedv(uint index, IntPtr v) => _ScissorIndexedv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorIndexedvNV(uint index, int[] v) => _ScissorIndexedvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorIndexedvNV(uint index, void* v) => _ScissorIndexedvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorIndexedvNV(uint index, IntPtr v) => _ScissorIndexedvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorIndexedvOES(uint index, int[] v) => _ScissorIndexedvOES(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorIndexedvOES(uint index, void* v) => _ScissorIndexedvOES_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ScissorIndexedvOES(uint index, IntPtr v) => _ScissorIndexedvOES_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3b(sbyte red, sbyte green, sbyte blue) => _SecondaryColor3b(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3bEXT(sbyte red, sbyte green, sbyte blue) => _SecondaryColor3bEXT(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3bv(sbyte[] v) => _SecondaryColor3bv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3bv(void* v) => _SecondaryColor3bv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3bv(IntPtr v) => _SecondaryColor3bv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3bvEXT(sbyte[] v) => _SecondaryColor3bvEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3bvEXT(void* v) => _SecondaryColor3bvEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3bvEXT(IntPtr v) => _SecondaryColor3bvEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3d(double red, double green, double blue) => _SecondaryColor3d(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3dEXT(double red, double green, double blue) => _SecondaryColor3dEXT(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3dv(double[] v) => _SecondaryColor3dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3dv(void* v) => _SecondaryColor3dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3dv(IntPtr v) => _SecondaryColor3dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3dvEXT(double[] v) => _SecondaryColor3dvEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3dvEXT(void* v) => _SecondaryColor3dvEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3dvEXT(IntPtr v) => _SecondaryColor3dvEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3f(float red, float green, float blue) => _SecondaryColor3f(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3fEXT(float red, float green, float blue) => _SecondaryColor3fEXT(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3fv(float[] v) => _SecondaryColor3fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3fv(void* v) => _SecondaryColor3fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3fv(IntPtr v) => _SecondaryColor3fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3fvEXT(float[] v) => _SecondaryColor3fvEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3fvEXT(void* v) => _SecondaryColor3fvEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3fvEXT(IntPtr v) => _SecondaryColor3fvEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3hNV(float red, float green, float blue) => _SecondaryColor3hNV(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3hvNV(float[] v) => _SecondaryColor3hvNV(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3hvNV(void* v) => _SecondaryColor3hvNV_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3hvNV(IntPtr v) => _SecondaryColor3hvNV_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3i(int red, int green, int blue) => _SecondaryColor3i(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3iEXT(int red, int green, int blue) => _SecondaryColor3iEXT(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3iv(int[] v) => _SecondaryColor3iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3iv(void* v) => _SecondaryColor3iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3iv(IntPtr v) => _SecondaryColor3iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3ivEXT(int[] v) => _SecondaryColor3ivEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3ivEXT(void* v) => _SecondaryColor3ivEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3ivEXT(IntPtr v) => _SecondaryColor3ivEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3s(short red, short green, short blue) => _SecondaryColor3s(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3sEXT(short red, short green, short blue) => _SecondaryColor3sEXT(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3sv(short[] v) => _SecondaryColor3sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3sv(void* v) => _SecondaryColor3sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3sv(IntPtr v) => _SecondaryColor3sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3svEXT(short[] v) => _SecondaryColor3svEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3svEXT(void* v) => _SecondaryColor3svEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3svEXT(IntPtr v) => _SecondaryColor3svEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3ub(byte red, byte green, byte blue) => _SecondaryColor3ub(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3ubEXT(byte red, byte green, byte blue) => _SecondaryColor3ubEXT(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3ubv(byte[] v) => _SecondaryColor3ubv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3ubv(void* v) => _SecondaryColor3ubv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3ubv(IntPtr v) => _SecondaryColor3ubv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3ubvEXT(byte[] v) => _SecondaryColor3ubvEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3ubvEXT(void* v) => _SecondaryColor3ubvEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3ubvEXT(IntPtr v) => _SecondaryColor3ubvEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3ui(uint red, uint green, uint blue) => _SecondaryColor3ui(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3uiEXT(uint red, uint green, uint blue) => _SecondaryColor3uiEXT(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3uiv(uint[] v) => _SecondaryColor3uiv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3uiv(void* v) => _SecondaryColor3uiv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3uiv(IntPtr v) => _SecondaryColor3uiv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3uivEXT(uint[] v) => _SecondaryColor3uivEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3uivEXT(void* v) => _SecondaryColor3uivEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3uivEXT(IntPtr v) => _SecondaryColor3uivEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3us(ushort red, ushort green, ushort blue) => _SecondaryColor3us(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3usEXT(ushort red, ushort green, ushort blue) => _SecondaryColor3usEXT(red, green, blue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3usv(ushort[] v) => _SecondaryColor3usv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3usv(void* v) => _SecondaryColor3usv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3usv(IntPtr v) => _SecondaryColor3usv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3usvEXT(ushort[] v) => _SecondaryColor3usvEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3usvEXT(void* v) => _SecondaryColor3usvEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColor3usvEXT(IntPtr v) => _SecondaryColor3usvEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColorFormatNV(int size, ColorPointerType type, int stride) => _SecondaryColorFormatNV(size, type, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColorP3ui(ColorPointerType type, uint color) => _SecondaryColorP3ui(type, color); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColorP3uiv(ColorPointerType type, uint[] color) => _SecondaryColorP3uiv(type, color); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColorP3uiv(ColorPointerType type, void* color) => _SecondaryColorP3uiv_ptr(type, color); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColorP3uiv(ColorPointerType type, IntPtr color) => _SecondaryColorP3uiv_intptr(type, color); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColorPointer(int size, ColorPointerType type, int stride, IntPtr pointer) => _SecondaryColorPointer(size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColorPointerEXT(int size, ColorPointerType type, int stride, IntPtr pointer) => _SecondaryColorPointerEXT(size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SecondaryColorPointerListIBM(int size, SecondaryColorPointerTypeIBM type, int stride, IntPtr* pointer, int ptrstride) => _SecondaryColorPointerListIBM(size, type, stride, pointer, ptrstride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SelectBuffer(int size, uint[] buffer) => _SelectBuffer(size, buffer); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SelectBuffer(int size, void* buffer) => _SelectBuffer_ptr(size, buffer); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SelectBuffer(int size, IntPtr buffer) => _SelectBuffer_intptr(size, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SelectPerfMonitorCountersAMD(uint monitor, bool enable, uint group, int numCounters, uint[] counterList) => _SelectPerfMonitorCountersAMD(monitor, enable, group, numCounters, counterList); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SelectPerfMonitorCountersAMD(uint monitor, bool enable, uint group, int numCounters, void* counterList) => _SelectPerfMonitorCountersAMD_ptr(monitor, enable, group, numCounters, counterList); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SelectPerfMonitorCountersAMD(uint monitor, bool enable, uint group, int numCounters, IntPtr counterList) => _SelectPerfMonitorCountersAMD_intptr(monitor, enable, group, numCounters, counterList); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SemaphoreParameterui64vEXT(uint semaphore, SemaphoreParameterName pname, UInt64[] @params) => _SemaphoreParameterui64vEXT(semaphore, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SemaphoreParameterui64vEXT(uint semaphore, SemaphoreParameterName pname, void* @params) => _SemaphoreParameterui64vEXT_ptr(semaphore, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SemaphoreParameterui64vEXT(uint semaphore, SemaphoreParameterName pname, IntPtr @params) => _SemaphoreParameterui64vEXT_intptr(semaphore, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SeparableFilter2D(SeparableTargetEXT target, InternalFormat internalformat, int width, int height, PixelFormat format, PixelType type, IntPtr row, IntPtr column) => _SeparableFilter2D(target, internalformat, width, height, format, type, row, column); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SeparableFilter2DEXT(SeparableTargetEXT target, InternalFormat internalformat, int width, int height, PixelFormat format, PixelType type, IntPtr row, IntPtr column) => _SeparableFilter2DEXT(target, internalformat, width, height, format, type, row, column); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetFenceAPPLE(uint fence) => _SetFenceAPPLE(fence); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetFenceNV(uint fence, FenceConditionNV condition) => _SetFenceNV(fence, condition); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetFragmentShaderConstantATI(uint dst, float[] value) => _SetFragmentShaderConstantATI(dst, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetFragmentShaderConstantATI(uint dst, void* value) => _SetFragmentShaderConstantATI_ptr(dst, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetFragmentShaderConstantATI(uint dst, IntPtr value) => _SetFragmentShaderConstantATI_intptr(dst, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetInvariantEXT(uint id, ScalarType type, IntPtr addr) => _SetInvariantEXT(id, type, addr); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetLocalConstantEXT(uint id, ScalarType type, IntPtr addr) => _SetLocalConstantEXT(id, type, addr); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetMultisamplefvAMD(int pname, uint index, float[] val) => _SetMultisamplefvAMD(pname, index, val); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetMultisamplefvAMD(int pname, uint index, void* val) => _SetMultisamplefvAMD_ptr(pname, index, val); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SetMultisamplefvAMD(int pname, uint index, IntPtr val) => _SetMultisamplefvAMD_intptr(pname, index, val); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShadeModel(ShadingModel mode) => _ShadeModel(mode); + + // --- + + /// + /// glShaderBinary loads pre-compiled shader binary code into the count shader objects whose handles are given in shaders. binary points to length bytes of binary shader code stored in client memory. binaryFormat specifies the format of the pre-compiled code. + /// The binary image contained in binary will be decoded according to the extension specification defining the specified binaryFormat token. OpenGL does not define any specific binary formats, but it does provide a mechanism to obtain token vaues for such formats provided by such extensions. + /// Depending on the types of the shader objects in shaders, glShaderBinary will individually load binary vertex or fragment shaders, or load an executable binary that contains an optimized pair of vertex and fragment shaders stored in the same binary. + /// + /// Specifies the number of shader object handles contained in shaders. + /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries. + /// Specifies the format of the shader binaries contained in binary. + /// Specifies the address of an array of bytes containing pre-compiled binary shader code. + /// Specifies the length of the array whose address is given in binary. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderBinary(int count, uint[] shaders, int binaryformat, IntPtr binary, int length) => _ShaderBinary(count, shaders, binaryformat, binary, length); + + /// + /// glShaderBinary loads pre-compiled shader binary code into the count shader objects whose handles are given in shaders. binary points to length bytes of binary shader code stored in client memory. binaryFormat specifies the format of the pre-compiled code. + /// The binary image contained in binary will be decoded according to the extension specification defining the specified binaryFormat token. OpenGL does not define any specific binary formats, but it does provide a mechanism to obtain token vaues for such formats provided by such extensions. + /// Depending on the types of the shader objects in shaders, glShaderBinary will individually load binary vertex or fragment shaders, or load an executable binary that contains an optimized pair of vertex and fragment shaders stored in the same binary. + /// + /// Specifies the number of shader object handles contained in shaders. + /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries. + /// Specifies the format of the shader binaries contained in binary. + /// Specifies the address of an array of bytes containing pre-compiled binary shader code. + /// Specifies the length of the array whose address is given in binary. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderBinary(int count, void* shaders, int binaryformat, IntPtr binary, int length) => _ShaderBinary_ptr(count, shaders, binaryformat, binary, length); + + /// + /// glShaderBinary loads pre-compiled shader binary code into the count shader objects whose handles are given in shaders. binary points to length bytes of binary shader code stored in client memory. binaryFormat specifies the format of the pre-compiled code. + /// The binary image contained in binary will be decoded according to the extension specification defining the specified binaryFormat token. OpenGL does not define any specific binary formats, but it does provide a mechanism to obtain token vaues for such formats provided by such extensions. + /// Depending on the types of the shader objects in shaders, glShaderBinary will individually load binary vertex or fragment shaders, or load an executable binary that contains an optimized pair of vertex and fragment shaders stored in the same binary. + /// + /// Specifies the number of shader object handles contained in shaders. + /// Specifies the address of an array of shader handles into which to load pre-compiled shader binaries. + /// Specifies the format of the shader binaries contained in binary. + /// Specifies the address of an array of bytes containing pre-compiled binary shader code. + /// Specifies the length of the array whose address is given in binary. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderBinary(int count, IntPtr shaders, int binaryformat, IntPtr binary, int length) => _ShaderBinary_intptr(count, shaders, binaryformat, binary, length); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderOp1EXT(VertexShaderOpEXT op, uint res, uint arg1) => _ShaderOp1EXT(op, res, arg1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderOp2EXT(VertexShaderOpEXT op, uint res, uint arg1, uint arg2) => _ShaderOp2EXT(op, res, arg1, arg2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderOp3EXT(VertexShaderOpEXT op, uint res, uint arg1, uint arg2, uint arg3) => _ShaderOp3EXT(op, res, arg1, arg2, arg3); + + // --- + + /// + /// glShaderSource sets the source code in shader to the source code in the array of strings specified by string. Any source code previously stored in the shader object is completely replaced. The number of strings in the array is specified by count. If length is NULL, each string is assumed to be null terminated. If length is a value other than NULL, it points to an array containing a string length for each of the corresponding elements of string. Each element in the length array may contain the length of the corresponding string (the null character is not counted as part of the string length) or a value less than 0 to indicate that the string is null terminated. The source code strings are not scanned or parsed at this time; they are simply copied into the specified shader object. + /// + /// Specifies the handle of the shader object whose source code is to be replaced. + /// Specifies the number of elements in the string and length arrays. + /// Specifies an array of pointers to strings containing the source code to be loaded into the shader. + /// Specifies an array of string lengths. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderSource(uint shader, int count, string[] @string, int[] length) => _ShaderSource(shader, count, @string, length); + + /// + /// glShaderSource sets the source code in shader to the source code in the array of strings specified by string. Any source code previously stored in the shader object is completely replaced. The number of strings in the array is specified by count. If length is NULL, each string is assumed to be null terminated. If length is a value other than NULL, it points to an array containing a string length for each of the corresponding elements of string. Each element in the length array may contain the length of the corresponding string (the null character is not counted as part of the string length) or a value less than 0 to indicate that the string is null terminated. The source code strings are not scanned or parsed at this time; they are simply copied into the specified shader object. + /// + /// Specifies the handle of the shader object whose source code is to be replaced. + /// Specifies the number of elements in the string and length arrays. + /// Specifies an array of pointers to strings containing the source code to be loaded into the shader. + /// Specifies an array of string lengths. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderSource(uint shader, int count, void* @string, void* length) => _ShaderSource_ptr(shader, count, @string, length); + + /// + /// glShaderSource sets the source code in shader to the source code in the array of strings specified by string. Any source code previously stored in the shader object is completely replaced. The number of strings in the array is specified by count. If length is NULL, each string is assumed to be null terminated. If length is a value other than NULL, it points to an array containing a string length for each of the corresponding elements of string. Each element in the length array may contain the length of the corresponding string (the null character is not counted as part of the string length) or a value less than 0 to indicate that the string is null terminated. The source code strings are not scanned or parsed at this time; they are simply copied into the specified shader object. + /// + /// Specifies the handle of the shader object whose source code is to be replaced. + /// Specifies the number of elements in the string and length arrays. + /// Specifies an array of pointers to strings containing the source code to be loaded into the shader. + /// Specifies an array of string lengths. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderSource(uint shader, int count, IntPtr @string, IntPtr length) => _ShaderSource_intptr(shader, count, @string, length); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderSourceARB(int shaderObj, int count, IntPtr* @string, int[] length) => _ShaderSourceARB(shaderObj, count, @string, length); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderSourceARB(int shaderObj, int count, IntPtr* @string, void* length) => _ShaderSourceARB_ptr(shaderObj, count, @string, length); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderSourceARB(int shaderObj, int count, IntPtr* @string, IntPtr length) => _ShaderSourceARB_intptr(shaderObj, count, @string, length); + + // --- + + /// + /// glShaderStorageBlockBinding, changes the active shader storage block with an assigned index of storageBlockIndex in program object program. storageBlockIndex must be an active shader storage block index in program. storageBlockBinding must be less than the value of GL_MAX_SHADER_STORAGE_BUFFER_BINDINGS. If successful, glShaderStorageBlockBinding specifies that program will use the data store of the buffer object bound to the binding point storageBlockBinding to read and write the values of the buffer variables in the shader storage block identified by storageBlockIndex. + /// + /// The name of the program containing the block whose binding to change. + /// The index storage block within the program. + /// The index storage block binding to associate with the specified storage block. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShaderStorageBlockBinding(uint program, uint storageBlockIndex, uint storageBlockBinding) => _ShaderStorageBlockBinding(program, storageBlockIndex, storageBlockBinding); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShadingRateImageBarrierNV(bool synchronize) => _ShadingRateImageBarrierNV(synchronize); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShadingRateQCOM(ShadingRateQCOM rate) => _ShadingRateQCOM(rate); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShadingRateImagePaletteNV(uint viewport, uint first, int count, int[] rates) => _ShadingRateImagePaletteNV(viewport, first, count, rates); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShadingRateImagePaletteNV(uint viewport, uint first, int count, void* rates) => _ShadingRateImagePaletteNV_ptr(viewport, first, count, rates); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShadingRateImagePaletteNV(uint viewport, uint first, int count, IntPtr rates) => _ShadingRateImagePaletteNV_intptr(viewport, first, count, rates); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShadingRateSampleOrderNV(int order) => _ShadingRateSampleOrderNV(order); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShadingRateSampleOrderCustomNV(int rate, uint samples, int[] locations) => _ShadingRateSampleOrderCustomNV(rate, samples, locations); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShadingRateSampleOrderCustomNV(int rate, uint samples, void* locations) => _ShadingRateSampleOrderCustomNV_ptr(rate, samples, locations); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ShadingRateSampleOrderCustomNV(int rate, uint samples, IntPtr locations) => _ShadingRateSampleOrderCustomNV_intptr(rate, samples, locations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SharpenTexFuncSGIS(TextureTarget target, int n, float[] points) => _SharpenTexFuncSGIS(target, n, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SharpenTexFuncSGIS(TextureTarget target, int n, void* points) => _SharpenTexFuncSGIS_ptr(target, n, points); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SharpenTexFuncSGIS(TextureTarget target, int n, IntPtr points) => _SharpenTexFuncSGIS_intptr(target, n, points); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SignalSemaphoreEXT(uint semaphore, uint numBufferBarriers, uint[] buffers, uint numTextureBarriers, uint[] textures, TextureLayout[] dstLayouts) => _SignalSemaphoreEXT(semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, dstLayouts); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SignalSemaphoreEXT(uint semaphore, uint numBufferBarriers, void* buffers, uint numTextureBarriers, void* textures, void* dstLayouts) => _SignalSemaphoreEXT_ptr(semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, dstLayouts); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SignalSemaphoreEXT(uint semaphore, uint numBufferBarriers, IntPtr buffers, uint numTextureBarriers, IntPtr textures, IntPtr dstLayouts) => _SignalSemaphoreEXT_intptr(semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, dstLayouts); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SignalSemaphoreui64NVX(uint signalGpu, int fenceObjectCount, uint[] semaphoreArray, UInt64[] fenceValueArray) => _SignalSemaphoreui64NVX(signalGpu, fenceObjectCount, semaphoreArray, fenceValueArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SignalSemaphoreui64NVX(uint signalGpu, int fenceObjectCount, void* semaphoreArray, void* fenceValueArray) => _SignalSemaphoreui64NVX_ptr(signalGpu, fenceObjectCount, semaphoreArray, fenceValueArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SignalSemaphoreui64NVX(uint signalGpu, int fenceObjectCount, IntPtr semaphoreArray, IntPtr fenceValueArray) => _SignalSemaphoreui64NVX_intptr(signalGpu, fenceObjectCount, semaphoreArray, fenceValueArray); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpecializeShader(uint shader, string pEntryPoint, uint numSpecializationConstants, uint[] pConstantIndex, uint[] pConstantValue) => _SpecializeShader(shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpecializeShader(uint shader, void* pEntryPoint, uint numSpecializationConstants, void* pConstantIndex, void* pConstantValue) => _SpecializeShader_ptr(shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpecializeShader(uint shader, IntPtr pEntryPoint, uint numSpecializationConstants, IntPtr pConstantIndex, IntPtr pConstantValue) => _SpecializeShader_intptr(shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpecializeShaderARB(uint shader, string pEntryPoint, uint numSpecializationConstants, uint[] pConstantIndex, uint[] pConstantValue) => _SpecializeShaderARB(shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpecializeShaderARB(uint shader, void* pEntryPoint, uint numSpecializationConstants, void* pConstantIndex, void* pConstantValue) => _SpecializeShaderARB_ptr(shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpecializeShaderARB(uint shader, IntPtr pEntryPoint, uint numSpecializationConstants, IntPtr pConstantIndex, IntPtr pConstantValue) => _SpecializeShaderARB_intptr(shader, pEntryPoint, numSpecializationConstants, pConstantIndex, pConstantValue); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpriteParameterfSGIX(SpriteParameterNameSGIX pname, float param) => _SpriteParameterfSGIX(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpriteParameterfvSGIX(SpriteParameterNameSGIX pname, float[] @params) => _SpriteParameterfvSGIX(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpriteParameterfvSGIX(SpriteParameterNameSGIX pname, void* @params) => _SpriteParameterfvSGIX_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpriteParameterfvSGIX(SpriteParameterNameSGIX pname, IntPtr @params) => _SpriteParameterfvSGIX_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpriteParameteriSGIX(SpriteParameterNameSGIX pname, int param) => _SpriteParameteriSGIX(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpriteParameterivSGIX(SpriteParameterNameSGIX pname, int[] @params) => _SpriteParameterivSGIX(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpriteParameterivSGIX(SpriteParameterNameSGIX pname, void* @params) => _SpriteParameterivSGIX_ptr(pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SpriteParameterivSGIX(SpriteParameterNameSGIX pname, IntPtr @params) => _SpriteParameterivSGIX_intptr(pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StartInstrumentsSGIX() => _StartInstrumentsSGIX(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StartTilingQCOM(uint x, uint y, uint width, uint height, int preserveMask) => _StartTilingQCOM(x, y, width, height, preserveMask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StateCaptureNV(uint state, int mode) => _StateCaptureNV(state, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilClearTagEXT(int stencilTagBits, uint stencilClearTag) => _StencilClearTagEXT(stencilTagBits, stencilClearTag); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilFillPathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathFillMode fillMode, uint mask, PathTransformType transformType, float[] transformValues) => _StencilFillPathInstancedNV(numPaths, pathNameType, paths, pathBase, fillMode, mask, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilFillPathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathFillMode fillMode, uint mask, PathTransformType transformType, void* transformValues) => _StencilFillPathInstancedNV_ptr(numPaths, pathNameType, paths, pathBase, fillMode, mask, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilFillPathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, PathFillMode fillMode, uint mask, PathTransformType transformType, IntPtr transformValues) => _StencilFillPathInstancedNV_intptr(numPaths, pathNameType, paths, pathBase, fillMode, mask, transformType, transformValues); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilFillPathNV(uint path, PathFillMode fillMode, uint mask) => _StencilFillPathNV(path, fillMode, mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilFunc(StencilFunction func, int @ref, uint mask) => _StencilFunc(func, @ref, mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilFuncSeparate(StencilFaceDirection face, StencilFunction func, int @ref, uint mask) => _StencilFuncSeparate(face, func, @ref, mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilFuncSeparateATI(StencilFunction frontfunc, StencilFunction backfunc, int @ref, uint mask) => _StencilFuncSeparateATI(frontfunc, backfunc, @ref, mask); + + // --- + + /// + /// glStencilMask controls the writing of individual bits in the stencil planes. The least significant is the number of bits in the stencil buffer, specify a mask. Where a 1 appears in the mask, it's possible to write to the corresponding bit in the stencil buffer. Where a 0 appears, the corresponding bit is write-protected. Initially, all bits are enabled for writing. + /// There can be two separate mask writemasks; one affects back-facing polygons, and the other affects front-facing polygons as well as other non-polygon primitives. glStencilMask sets both front and back stencil writemasks to the same values. Use glStencilMaskSeparate to set front and back stencil writemasks to different values. + /// + /// Specifies a bit mask to enable and disable writing of individual bits in the stencil planes. Initially, the mask is all 1's. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilMask(uint mask) => _StencilMask(mask); + + // --- + + /// + /// glStencilMaskSeparate controls the writing of individual bits in the stencil planes. The least significant is the number of bits in the stencil buffer, specify a mask. Where a 1 appears in the mask, it's possible to write to the corresponding bit in the stencil buffer. Where a 0 appears, the corresponding bit is write-protected. Initially, all bits are enabled for writing. + /// There can be two separate mask writemasks; one affects back-facing polygons, and the other affects front-facing polygons as well as other non-polygon primitives. glStencilMask sets both front and back stencil writemasks to the same values, as if glStencilMaskSeparate were called with face set to GL_FRONT_AND_BACK. + /// + /// Specifies whether the front and/or back stencil writemask is updated. Three symbolic constants are valid: GL_FRONT, GL_BACK, and GL_FRONT_AND_BACK. + /// Specifies a bit mask to enable and disable writing of individual bits in the stencil planes. Initially, the mask is all 1's. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilMaskSeparate(StencilFaceDirection face, uint mask) => _StencilMaskSeparate(face, mask); + + // --- + + /// + /// Stenciling, like depth-buffering, enables and disables drawing on a per-pixel basis. You draw into the stencil planes using GL drawing primitives, then render geometry and images, using the stencil planes to mask out portions of the screen. Stenciling is typically used in multipass rendering algorithms to achieve special effects, such as decals, outlining, and constructive solid geometry rendering. + /// The stencil test conditionally eliminates a pixel based on the outcome of a comparison between the value in the stencil buffer and a reference value. To enable and disable the test, call glEnable and glDisable with argument GL_STENCIL_TEST; to control it, call glStencilFunc or glStencilFuncSeparate. + /// There can be two separate sets of sfail, dpfail, and dppass parameters; one affects back-facing polygons, and the other affects front-facing polygons as well as other non-polygon primitives. glStencilOp sets both front and back stencil state to the same values. Use glStencilOpSeparate to set front and back stencil state to different values. + /// glStencilOp takes three arguments that indicate what happens to the stored stencil value while stenciling is enabled. If the stencil test fails, no change is made to the pixel's color or depth buffers, and sfail specifies what happens to the stencil buffer contents. The following eight actions are possible. + /// GL_KEEP Keeps the current value. GL_ZERO Sets the stencil buffer value to 0. GL_REPLACE Sets the stencil buffer value to ref, as specified by glStencilFunc. GL_INCR Increments the current stencil buffer value. Clamps to the maximum representable unsigned value. GL_INCR_WRAP Increments the current stencil buffer value. Wraps stencil buffer value to zero when incrementing the maximum representable unsigned value. GL_DECR Decrements the current stencil buffer value. Clamps to 0. GL_DECR_WRAP Decrements the current stencil buffer value. Wraps stencil buffer value to the maximum representable unsigned value when decrementing a stencil buffer value of zero. GL_INVERT Bitwise inverts the current stencil buffer value. + /// Stencil buffer values are treated as unsigned integers. When incremented and decremented, values are clamped to 0 and is the value returned by querying GL_STENCIL_BITS. + /// The other two arguments to glStencilOp specify stencil buffer actions that depend on whether subsequent depth buffer tests succeed (dppass) or fail (dpfail) (see glDepthFunc). The actions are specified using the same eight symbolic constants as sfail. Note that dpfail is ignored when there is no depth buffer, or when the depth buffer is not enabled. In these cases, sfail and dppass specify stencil action when the stencil test fails and passes, respectively. + /// + /// Specifies the action to take when the stencil test fails. Eight symbolic constants are accepted: GL_KEEP, GL_ZERO, GL_REPLACE, GL_INCR, GL_INCR_WRAP, GL_DECR, GL_DECR_WRAP, and GL_INVERT. The initial value is GL_KEEP. + /// Specifies the stencil action when the stencil test passes, but the depth test fails. dpfail accepts the same symbolic constants as sfail. The initial value is GL_KEEP. + /// Specifies the stencil action when both the stencil test and the depth test pass, or when the stencil test passes and either there is no depth buffer or depth testing is not enabled. dppass accepts the same symbolic constants as sfail. The initial value is GL_KEEP. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilOp(StencilOp fail, StencilOp zfail, StencilOp zpass) => _StencilOp(fail, zfail, zpass); + + // --- + + /// + /// Stenciling, like depth-buffering, enables and disables drawing on a per-pixel basis. You draw into the stencil planes using GL drawing primitives, then render geometry and images, using the stencil planes to mask out portions of the screen. Stenciling is typically used in multipass rendering algorithms to achieve special effects, such as decals, outlining, and constructive solid geometry rendering. + /// The stencil test conditionally eliminates a pixel based on the outcome of a comparison between the value in the stencil buffer and a reference value. To enable and disable the test, call glEnable and glDisable with argument GL_STENCIL_TEST; to control it, call glStencilFunc or glStencilFuncSeparate. + /// There can be two separate sets of sfail, dpfail, and dppass parameters; one affects back-facing polygons, and the other affects front-facing polygons as well as other non-polygon primitives. glStencilOp sets both front and back stencil state to the same values, as if glStencilOpSeparate were called with face set to GL_FRONT_AND_BACK. + /// glStencilOpSeparate takes three arguments that indicate what happens to the stored stencil value while stenciling is enabled. If the stencil test fails, no change is made to the pixel's color or depth buffers, and sfail specifies what happens to the stencil buffer contents. The following eight actions are possible. + /// GL_KEEP Keeps the current value. GL_ZERO Sets the stencil buffer value to 0. GL_REPLACE Sets the stencil buffer value to ref, as specified by glStencilFunc. GL_INCR Increments the current stencil buffer value. Clamps to the maximum representable unsigned value. GL_INCR_WRAP Increments the current stencil buffer value. Wraps stencil buffer value to zero when incrementing the maximum representable unsigned value. GL_DECR Decrements the current stencil buffer value. Clamps to 0. GL_DECR_WRAP Decrements the current stencil buffer value. Wraps stencil buffer value to the maximum representable unsigned value when decrementing a stencil buffer value of zero. GL_INVERT Bitwise inverts the current stencil buffer value. + /// Stencil buffer values are treated as unsigned integers. When incremented and decremented, values are clamped to 0 and is the value returned by querying GL_STENCIL_BITS. + /// The other two arguments to glStencilOpSeparate specify stencil buffer actions that depend on whether subsequent depth buffer tests succeed (dppass) or fail (dpfail) (see glDepthFunc). The actions are specified using the same eight symbolic constants as sfail. Note that dpfail is ignored when there is no depth buffer, or when the depth buffer is not enabled. In these cases, sfail and dppass specify stencil action when the stencil test fails and passes, respectively. + /// + /// Specifies whether front and/or back stencil state is updated. Three symbolic constants are valid: GL_FRONT, GL_BACK, and GL_FRONT_AND_BACK. + /// Specifies the action to take when the stencil test fails. Eight symbolic constants are accepted: GL_KEEP, GL_ZERO, GL_REPLACE, GL_INCR, GL_INCR_WRAP, GL_DECR, GL_DECR_WRAP, and GL_INVERT. The initial value is GL_KEEP. + /// Specifies the stencil action when the stencil test passes, but the depth test fails. dpfail accepts the same symbolic constants as sfail. The initial value is GL_KEEP. + /// Specifies the stencil action when both the stencil test and the depth test pass, or when the stencil test passes and either there is no depth buffer or depth testing is not enabled. dppass accepts the same symbolic constants as sfail. The initial value is GL_KEEP. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilOpSeparate(StencilFaceDirection face, StencilOp sfail, StencilOp dpfail, StencilOp dppass) => _StencilOpSeparate(face, sfail, dpfail, dppass); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilOpSeparateATI(StencilFaceDirection face, StencilOp sfail, StencilOp dpfail, StencilOp dppass) => _StencilOpSeparateATI(face, sfail, dpfail, dppass); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilOpValueAMD(StencilFaceDirection face, uint value) => _StencilOpValueAMD(face, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilStrokePathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, int reference, uint mask, PathTransformType transformType, float[] transformValues) => _StencilStrokePathInstancedNV(numPaths, pathNameType, paths, pathBase, reference, mask, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilStrokePathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, int reference, uint mask, PathTransformType transformType, void* transformValues) => _StencilStrokePathInstancedNV_ptr(numPaths, pathNameType, paths, pathBase, reference, mask, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilStrokePathInstancedNV(int numPaths, PathElementType pathNameType, IntPtr paths, uint pathBase, int reference, uint mask, PathTransformType transformType, IntPtr transformValues) => _StencilStrokePathInstancedNV_intptr(numPaths, pathNameType, paths, pathBase, reference, mask, transformType, transformValues); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilStrokePathNV(uint path, int reference, uint mask) => _StencilStrokePathNV(path, reference, mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilThenCoverFillPathInstancedNV(int numPaths, int pathNameType, IntPtr paths, uint pathBase, int fillMode, uint mask, int coverMode, int transformType, float[] transformValues) => _StencilThenCoverFillPathInstancedNV(numPaths, pathNameType, paths, pathBase, fillMode, mask, coverMode, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilThenCoverFillPathInstancedNV(int numPaths, int pathNameType, IntPtr paths, uint pathBase, int fillMode, uint mask, int coverMode, int transformType, void* transformValues) => _StencilThenCoverFillPathInstancedNV_ptr(numPaths, pathNameType, paths, pathBase, fillMode, mask, coverMode, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilThenCoverFillPathInstancedNV(int numPaths, int pathNameType, IntPtr paths, uint pathBase, int fillMode, uint mask, int coverMode, int transformType, IntPtr transformValues) => _StencilThenCoverFillPathInstancedNV_intptr(numPaths, pathNameType, paths, pathBase, fillMode, mask, coverMode, transformType, transformValues); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilThenCoverFillPathNV(uint path, int fillMode, uint mask, int coverMode) => _StencilThenCoverFillPathNV(path, fillMode, mask, coverMode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilThenCoverStrokePathInstancedNV(int numPaths, int pathNameType, IntPtr paths, uint pathBase, int reference, uint mask, int coverMode, int transformType, float[] transformValues) => _StencilThenCoverStrokePathInstancedNV(numPaths, pathNameType, paths, pathBase, reference, mask, coverMode, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilThenCoverStrokePathInstancedNV(int numPaths, int pathNameType, IntPtr paths, uint pathBase, int reference, uint mask, int coverMode, int transformType, void* transformValues) => _StencilThenCoverStrokePathInstancedNV_ptr(numPaths, pathNameType, paths, pathBase, reference, mask, coverMode, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilThenCoverStrokePathInstancedNV(int numPaths, int pathNameType, IntPtr paths, uint pathBase, int reference, uint mask, int coverMode, int transformType, IntPtr transformValues) => _StencilThenCoverStrokePathInstancedNV_intptr(numPaths, pathNameType, paths, pathBase, reference, mask, coverMode, transformType, transformValues); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StencilThenCoverStrokePathNV(uint path, int reference, uint mask, int coverMode) => _StencilThenCoverStrokePathNV(path, reference, mask, coverMode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StopInstrumentsSGIX(int marker) => _StopInstrumentsSGIX(marker); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void StringMarkerGREMEDY(int len, IntPtr @string) => _StringMarkerGREMEDY(len, @string); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SubpixelPrecisionBiasNV(uint xbits, uint ybits) => _SubpixelPrecisionBiasNV(xbits, ybits); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SwizzleEXT(uint res, uint @in, VertexShaderCoordOutEXT outX, VertexShaderCoordOutEXT outY, VertexShaderCoordOutEXT outZ, VertexShaderCoordOutEXT outW) => _SwizzleEXT(res, @in, outX, outY, outZ, outW); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SyncTextureINTEL(uint texture) => _SyncTextureINTEL(texture); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TagSampleBufferSGIX() => _TagSampleBufferSGIX(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3bEXT(sbyte tx, sbyte ty, sbyte tz) => _Tangent3bEXT(tx, ty, tz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3bvEXT(sbyte[] v) => _Tangent3bvEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3bvEXT(void* v) => _Tangent3bvEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3bvEXT(IntPtr v) => _Tangent3bvEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3dEXT(double tx, double ty, double tz) => _Tangent3dEXT(tx, ty, tz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3dvEXT(double[] v) => _Tangent3dvEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3dvEXT(void* v) => _Tangent3dvEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3dvEXT(IntPtr v) => _Tangent3dvEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3fEXT(float tx, float ty, float tz) => _Tangent3fEXT(tx, ty, tz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3fvEXT(float[] v) => _Tangent3fvEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3fvEXT(void* v) => _Tangent3fvEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3fvEXT(IntPtr v) => _Tangent3fvEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3iEXT(int tx, int ty, int tz) => _Tangent3iEXT(tx, ty, tz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3ivEXT(int[] v) => _Tangent3ivEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3ivEXT(void* v) => _Tangent3ivEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3ivEXT(IntPtr v) => _Tangent3ivEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3sEXT(short tx, short ty, short tz) => _Tangent3sEXT(tx, ty, tz); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3svEXT(short[] v) => _Tangent3svEXT(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3svEXT(void* v) => _Tangent3svEXT_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Tangent3svEXT(IntPtr v) => _Tangent3svEXT_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TangentPointerEXT(TangentPointerTypeEXT type, int stride, IntPtr pointer) => _TangentPointerEXT(type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TbufferMask3DFX(uint mask) => _TbufferMask3DFX(mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TessellationFactorAMD(float factor) => _TessellationFactorAMD(factor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TessellationModeAMD(int mode) => _TessellationModeAMD(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool TestFenceAPPLE(uint fence) => _TestFenceAPPLE(fence); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool TestFenceNV(uint fence) => _TestFenceNV(fence); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool TestObjectAPPLE(ObjectTypeAPPLE @object, uint name) => _TestObjectAPPLE(@object, name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexAttachMemoryNV(TextureTarget target, uint memory, UInt64 offset) => _TexAttachMemoryNV(target, memory, offset); + + // --- + + /// + /// glTexBuffer and glTextureBuffer attaches the data store of a specified buffer object to a specified texture object, and specify the storage format for the texture image found in the buffer object. The texture object must be a buffer texture. + /// If buffer is zero, any buffer object attached to the buffer texture is detached and no new buffer object is attached. If buffer is non-zero, it must be the name of an existing buffer object. + /// internalformat specifies the storage format, and must be one of the following sized internal formats: + /// internalformat specifies the storage format, and must be one of the following sized internal formats: + /// When a buffer object is attached to a buffer texture, the buffer object's data store is taken as the texture's texel array. The number of texels in the buffer texture's texel array is given by $$ \left\lfloor { size \over { components \times sizeof(base\_type) } } \right\rfloor $$ where $size$ is the size of the buffer object in basic machine units (the value of GL_BUFFER_SIZE for buffer), and $components$ and $base\_type$ are the element count and base data type for elements, as specified in the table above. The number of texels in the texel array is then clamped to the value of the implementation-dependent limit GL_MAX_TEXTURE_BUFFER_SIZE. When a buffer texture is accessed in a shader, the results of a texel fetch are undefined if the specified texel coordinate is negative, or greater than or equal to the clamped number of texels in the texel array. + /// + /// Specifies the target to which the texture is bound for glTexBuffer. Must be GL_TEXTURE_BUFFER. + /// Specifies the texture object name for glTextureBuffer. + /// Specifies the internal format of the data in the store belonging to buffer. + /// Specifies the name of the buffer object whose storage to attach to the active buffer texture. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBuffer(TextureTarget target, InternalFormat internalformat, uint buffer) => _TexBuffer(target, internalformat, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBufferARB(TextureTarget target, InternalFormat internalformat, uint buffer) => _TexBufferARB(target, internalformat, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBufferEXT(TextureTarget target, InternalFormat internalformat, uint buffer) => _TexBufferEXT(target, internalformat, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBufferOES(TextureTarget target, InternalFormat internalformat, uint buffer) => _TexBufferOES(target, internalformat, buffer); + + // --- + + /// + /// glTexBufferRange and glTextureBufferRange attach a range of the data store of a specified buffer object to a specified texture object, and specify the storage format for the texture image found in the buffer object. The texture object must be a buffer texture. + /// If buffer is zero, any buffer object attached to the buffer texture is detached and no new buffer object is attached. If buffer is non-zero, it must be the name of an existing buffer object. + /// The start and size of the range are specified by offset and size respectively, both measured in basic machine units. offset must be greater than or equal to zero, size must be greater than zero, and the sum of offset and size must not exceed the value of GL_BUFFER_SIZE for buffer. Furthermore, offset must be an integer multiple of the value of GL_TEXTURE_BUFFER_OFFSET_ALIGNMENT. + /// internalformat specifies the storage format, and must be one of the following sized internal formats: + /// When a range of a buffer object is attached to a buffer texture, the specified range of the buffer object's data store is taken as the texture's texel array. The number of texels in the buffer texture's texel array is given by $$ \left\lfloor { size \over { components \times sizeof(base\_type) } } \right\rfloor $$ where $components$ and $base\_type$ are the element count and base data type for elements, as specified in the table above. The number of texels in the texel array is then clamped to the value of the implementation-dependent limit GL_MAX_TEXTURE_BUFFER_SIZE. When a buffer texture is accessed in a shader, the results of a texel fetch are undefined if the specified texel coordinate is negative, or greater than or equal to the clamped number of texels in the texel array. + /// + /// Specifies the target to which the texture object is bound for glTexBufferRange. Must be GL_TEXTURE_BUFFER. + /// Specifies the texture object name for glTextureBufferRange. + /// Specifies the internal format of the data in the store belonging to buffer. + /// Specifies the name of the buffer object whose storage to attach to the active buffer texture. + /// Specifies the offset of the start of the range of the buffer's data store to attach. + /// Specifies the size of the range of the buffer's data store to attach. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBufferRange(TextureTarget target, InternalFormat internalformat, uint buffer, IntPtr offset, IntPtr size) => _TexBufferRange(target, internalformat, buffer, offset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBufferRangeEXT(TextureTarget target, InternalFormat internalformat, uint buffer, IntPtr offset, IntPtr size) => _TexBufferRangeEXT(target, internalformat, buffer, offset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBufferRangeOES(TextureTarget target, InternalFormat internalformat, uint buffer, IntPtr offset, IntPtr size) => _TexBufferRangeOES(target, internalformat, buffer, offset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBumpParameterfvATI(TexBumpParameterATI pname, float[] param) => _TexBumpParameterfvATI(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBumpParameterfvATI(TexBumpParameterATI pname, void* param) => _TexBumpParameterfvATI_ptr(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBumpParameterfvATI(TexBumpParameterATI pname, IntPtr param) => _TexBumpParameterfvATI_intptr(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBumpParameterivATI(TexBumpParameterATI pname, int[] param) => _TexBumpParameterivATI(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBumpParameterivATI(TexBumpParameterATI pname, void* param) => _TexBumpParameterivATI_ptr(pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexBumpParameterivATI(TexBumpParameterATI pname, IntPtr param) => _TexBumpParameterivATI_intptr(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1bOES(sbyte s) => _TexCoord1bOES(s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1bvOES(sbyte[] coords) => _TexCoord1bvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1bvOES(void* coords) => _TexCoord1bvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1bvOES(IntPtr coords) => _TexCoord1bvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1d(double s) => _TexCoord1d(s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1dv(double[] v) => _TexCoord1dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1dv(void* v) => _TexCoord1dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1dv(IntPtr v) => _TexCoord1dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1f(float s) => _TexCoord1f(s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1fv(float[] v) => _TexCoord1fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1fv(void* v) => _TexCoord1fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1fv(IntPtr v) => _TexCoord1fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1hNV(float s) => _TexCoord1hNV(s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1hvNV(float[] v) => _TexCoord1hvNV(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1hvNV(void* v) => _TexCoord1hvNV_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1hvNV(IntPtr v) => _TexCoord1hvNV_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1i(int s) => _TexCoord1i(s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1iv(int[] v) => _TexCoord1iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1iv(void* v) => _TexCoord1iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1iv(IntPtr v) => _TexCoord1iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1s(short s) => _TexCoord1s(s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1sv(short[] v) => _TexCoord1sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1sv(void* v) => _TexCoord1sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1sv(IntPtr v) => _TexCoord1sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1xOES(float s) => _TexCoord1xOES(s); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1xvOES(float[] coords) => _TexCoord1xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1xvOES(void* coords) => _TexCoord1xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord1xvOES(IntPtr coords) => _TexCoord1xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2bOES(sbyte s, sbyte t) => _TexCoord2bOES(s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2bvOES(sbyte[] coords) => _TexCoord2bvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2bvOES(void* coords) => _TexCoord2bvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2bvOES(IntPtr coords) => _TexCoord2bvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2d(double s, double t) => _TexCoord2d(s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2dv(double[] v) => _TexCoord2dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2dv(void* v) => _TexCoord2dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2dv(IntPtr v) => _TexCoord2dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2f(float s, float t) => _TexCoord2f(s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fColor3fVertex3fSUN(float s, float t, float r, float g, float b, float x, float y, float z) => _TexCoord2fColor3fVertex3fSUN(s, t, r, g, b, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fColor3fVertex3fvSUN(float[] tc, float[] c, float[] v) => _TexCoord2fColor3fVertex3fvSUN(tc, c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fColor3fVertex3fvSUN(void* tc, void* c, void* v) => _TexCoord2fColor3fVertex3fvSUN_ptr(tc, c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fColor3fVertex3fvSUN(IntPtr tc, IntPtr c, IntPtr v) => _TexCoord2fColor3fVertex3fvSUN_intptr(tc, c, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fColor4fNormal3fVertex3fSUN(float s, float t, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z) => _TexCoord2fColor4fNormal3fVertex3fSUN(s, t, r, g, b, a, nx, ny, nz, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fColor4fNormal3fVertex3fvSUN(float[] tc, float[] c, float[] n, float[] v) => _TexCoord2fColor4fNormal3fVertex3fvSUN(tc, c, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fColor4fNormal3fVertex3fvSUN(void* tc, void* c, void* n, void* v) => _TexCoord2fColor4fNormal3fVertex3fvSUN_ptr(tc, c, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fColor4fNormal3fVertex3fvSUN(IntPtr tc, IntPtr c, IntPtr n, IntPtr v) => _TexCoord2fColor4fNormal3fVertex3fvSUN_intptr(tc, c, n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fColor4ubVertex3fSUN(float s, float t, byte r, byte g, byte b, byte a, float x, float y, float z) => _TexCoord2fColor4ubVertex3fSUN(s, t, r, g, b, a, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fColor4ubVertex3fvSUN(float[] tc, byte[] c, float[] v) => _TexCoord2fColor4ubVertex3fvSUN(tc, c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fColor4ubVertex3fvSUN(void* tc, void* c, void* v) => _TexCoord2fColor4ubVertex3fvSUN_ptr(tc, c, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fColor4ubVertex3fvSUN(IntPtr tc, IntPtr c, IntPtr v) => _TexCoord2fColor4ubVertex3fvSUN_intptr(tc, c, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fNormal3fVertex3fSUN(float s, float t, float nx, float ny, float nz, float x, float y, float z) => _TexCoord2fNormal3fVertex3fSUN(s, t, nx, ny, nz, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fNormal3fVertex3fvSUN(float[] tc, float[] n, float[] v) => _TexCoord2fNormal3fVertex3fvSUN(tc, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fNormal3fVertex3fvSUN(void* tc, void* n, void* v) => _TexCoord2fNormal3fVertex3fvSUN_ptr(tc, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fNormal3fVertex3fvSUN(IntPtr tc, IntPtr n, IntPtr v) => _TexCoord2fNormal3fVertex3fvSUN_intptr(tc, n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fVertex3fSUN(float s, float t, float x, float y, float z) => _TexCoord2fVertex3fSUN(s, t, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fVertex3fvSUN(float[] tc, float[] v) => _TexCoord2fVertex3fvSUN(tc, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fVertex3fvSUN(void* tc, void* v) => _TexCoord2fVertex3fvSUN_ptr(tc, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fVertex3fvSUN(IntPtr tc, IntPtr v) => _TexCoord2fVertex3fvSUN_intptr(tc, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fv(float[] v) => _TexCoord2fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fv(void* v) => _TexCoord2fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2fv(IntPtr v) => _TexCoord2fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2hNV(float s, float t) => _TexCoord2hNV(s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2hvNV(float[] v) => _TexCoord2hvNV(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2hvNV(void* v) => _TexCoord2hvNV_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2hvNV(IntPtr v) => _TexCoord2hvNV_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2i(int s, int t) => _TexCoord2i(s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2iv(int[] v) => _TexCoord2iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2iv(void* v) => _TexCoord2iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2iv(IntPtr v) => _TexCoord2iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2s(short s, short t) => _TexCoord2s(s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2sv(short[] v) => _TexCoord2sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2sv(void* v) => _TexCoord2sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2sv(IntPtr v) => _TexCoord2sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2xOES(float s, float t) => _TexCoord2xOES(s, t); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2xvOES(float[] coords) => _TexCoord2xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2xvOES(void* coords) => _TexCoord2xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord2xvOES(IntPtr coords) => _TexCoord2xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3bOES(sbyte s, sbyte t, sbyte r) => _TexCoord3bOES(s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3bvOES(sbyte[] coords) => _TexCoord3bvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3bvOES(void* coords) => _TexCoord3bvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3bvOES(IntPtr coords) => _TexCoord3bvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3d(double s, double t, double r) => _TexCoord3d(s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3dv(double[] v) => _TexCoord3dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3dv(void* v) => _TexCoord3dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3dv(IntPtr v) => _TexCoord3dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3f(float s, float t, float r) => _TexCoord3f(s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3fv(float[] v) => _TexCoord3fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3fv(void* v) => _TexCoord3fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3fv(IntPtr v) => _TexCoord3fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3hNV(float s, float t, float r) => _TexCoord3hNV(s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3hvNV(float[] v) => _TexCoord3hvNV(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3hvNV(void* v) => _TexCoord3hvNV_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3hvNV(IntPtr v) => _TexCoord3hvNV_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3i(int s, int t, int r) => _TexCoord3i(s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3iv(int[] v) => _TexCoord3iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3iv(void* v) => _TexCoord3iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3iv(IntPtr v) => _TexCoord3iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3s(short s, short t, short r) => _TexCoord3s(s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3sv(short[] v) => _TexCoord3sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3sv(void* v) => _TexCoord3sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3sv(IntPtr v) => _TexCoord3sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3xOES(float s, float t, float r) => _TexCoord3xOES(s, t, r); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3xvOES(float[] coords) => _TexCoord3xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3xvOES(void* coords) => _TexCoord3xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord3xvOES(IntPtr coords) => _TexCoord3xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4bOES(sbyte s, sbyte t, sbyte r, sbyte q) => _TexCoord4bOES(s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4bvOES(sbyte[] coords) => _TexCoord4bvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4bvOES(void* coords) => _TexCoord4bvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4bvOES(IntPtr coords) => _TexCoord4bvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4d(double s, double t, double r, double q) => _TexCoord4d(s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4dv(double[] v) => _TexCoord4dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4dv(void* v) => _TexCoord4dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4dv(IntPtr v) => _TexCoord4dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4f(float s, float t, float r, float q) => _TexCoord4f(s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4fColor4fNormal3fVertex4fSUN(float s, float t, float p, float q, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z, float w) => _TexCoord4fColor4fNormal3fVertex4fSUN(s, t, p, q, r, g, b, a, nx, ny, nz, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4fColor4fNormal3fVertex4fvSUN(float[] tc, float[] c, float[] n, float[] v) => _TexCoord4fColor4fNormal3fVertex4fvSUN(tc, c, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4fColor4fNormal3fVertex4fvSUN(void* tc, void* c, void* n, void* v) => _TexCoord4fColor4fNormal3fVertex4fvSUN_ptr(tc, c, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4fColor4fNormal3fVertex4fvSUN(IntPtr tc, IntPtr c, IntPtr n, IntPtr v) => _TexCoord4fColor4fNormal3fVertex4fvSUN_intptr(tc, c, n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4fVertex4fSUN(float s, float t, float p, float q, float x, float y, float z, float w) => _TexCoord4fVertex4fSUN(s, t, p, q, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4fVertex4fvSUN(float[] tc, float[] v) => _TexCoord4fVertex4fvSUN(tc, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4fVertex4fvSUN(void* tc, void* v) => _TexCoord4fVertex4fvSUN_ptr(tc, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4fVertex4fvSUN(IntPtr tc, IntPtr v) => _TexCoord4fVertex4fvSUN_intptr(tc, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4fv(float[] v) => _TexCoord4fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4fv(void* v) => _TexCoord4fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4fv(IntPtr v) => _TexCoord4fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4hNV(float s, float t, float r, float q) => _TexCoord4hNV(s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4hvNV(float[] v) => _TexCoord4hvNV(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4hvNV(void* v) => _TexCoord4hvNV_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4hvNV(IntPtr v) => _TexCoord4hvNV_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4i(int s, int t, int r, int q) => _TexCoord4i(s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4iv(int[] v) => _TexCoord4iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4iv(void* v) => _TexCoord4iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4iv(IntPtr v) => _TexCoord4iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4s(short s, short t, short r, short q) => _TexCoord4s(s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4sv(short[] v) => _TexCoord4sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4sv(void* v) => _TexCoord4sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4sv(IntPtr v) => _TexCoord4sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4xOES(float s, float t, float r, float q) => _TexCoord4xOES(s, t, r, q); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4xvOES(float[] coords) => _TexCoord4xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4xvOES(void* coords) => _TexCoord4xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoord4xvOES(IntPtr coords) => _TexCoord4xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordFormatNV(int size, int type, int stride) => _TexCoordFormatNV(size, type, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP1ui(TexCoordPointerType type, uint coords) => _TexCoordP1ui(type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP1uiv(TexCoordPointerType type, uint[] coords) => _TexCoordP1uiv(type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP1uiv(TexCoordPointerType type, void* coords) => _TexCoordP1uiv_ptr(type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP1uiv(TexCoordPointerType type, IntPtr coords) => _TexCoordP1uiv_intptr(type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP2ui(TexCoordPointerType type, uint coords) => _TexCoordP2ui(type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP2uiv(TexCoordPointerType type, uint[] coords) => _TexCoordP2uiv(type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP2uiv(TexCoordPointerType type, void* coords) => _TexCoordP2uiv_ptr(type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP2uiv(TexCoordPointerType type, IntPtr coords) => _TexCoordP2uiv_intptr(type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP3ui(TexCoordPointerType type, uint coords) => _TexCoordP3ui(type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP3uiv(TexCoordPointerType type, uint[] coords) => _TexCoordP3uiv(type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP3uiv(TexCoordPointerType type, void* coords) => _TexCoordP3uiv_ptr(type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP3uiv(TexCoordPointerType type, IntPtr coords) => _TexCoordP3uiv_intptr(type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP4ui(TexCoordPointerType type, uint coords) => _TexCoordP4ui(type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP4uiv(TexCoordPointerType type, uint[] coords) => _TexCoordP4uiv(type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP4uiv(TexCoordPointerType type, void* coords) => _TexCoordP4uiv_ptr(type, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordP4uiv(TexCoordPointerType type, IntPtr coords) => _TexCoordP4uiv_intptr(type, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordPointer(int size, TexCoordPointerType type, int stride, IntPtr pointer) => _TexCoordPointer(size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordPointerEXT(int size, TexCoordPointerType type, int stride, int count, IntPtr pointer) => _TexCoordPointerEXT(size, type, stride, count, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordPointerListIBM(int size, TexCoordPointerType type, int stride, IntPtr* pointer, int ptrstride) => _TexCoordPointerListIBM(size, type, stride, pointer, ptrstride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexCoordPointervINTEL(int size, VertexPointerType type, IntPtr* pointer) => _TexCoordPointervINTEL(size, type, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvf(TextureEnvTarget target, TextureEnvParameter pname, float param) => _TexEnvf(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvfv(TextureEnvTarget target, TextureEnvParameter pname, float[] @params) => _TexEnvfv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvfv(TextureEnvTarget target, TextureEnvParameter pname, void* @params) => _TexEnvfv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvfv(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params) => _TexEnvfv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvi(TextureEnvTarget target, TextureEnvParameter pname, int param) => _TexEnvi(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnviv(TextureEnvTarget target, TextureEnvParameter pname, int[] @params) => _TexEnviv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnviv(TextureEnvTarget target, TextureEnvParameter pname, void* @params) => _TexEnviv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnviv(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params) => _TexEnviv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvx(TextureEnvTarget target, TextureEnvParameter pname, float param) => _TexEnvx(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvxOES(TextureEnvTarget target, TextureEnvParameter pname, float param) => _TexEnvxOES(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvxv(TextureEnvTarget target, TextureEnvParameter pname, float[] @params) => _TexEnvxv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvxv(TextureEnvTarget target, TextureEnvParameter pname, void* @params) => _TexEnvxv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvxv(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params) => _TexEnvxv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvxvOES(TextureEnvTarget target, TextureEnvParameter pname, float[] @params) => _TexEnvxvOES(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvxvOES(TextureEnvTarget target, TextureEnvParameter pname, void* @params) => _TexEnvxvOES_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEnvxvOES(TextureEnvTarget target, TextureEnvParameter pname, IntPtr @params) => _TexEnvxvOES_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEstimateMotionQCOM(uint @ref, uint target, uint output) => _TexEstimateMotionQCOM(@ref, target, output); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexEstimateMotionRegionsQCOM(uint @ref, uint target, uint output, uint mask) => _TexEstimateMotionRegionsQCOM(@ref, target, output, mask); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexFilterFuncSGIS(TextureTarget target, TextureFilterSGIS filter, int n, float[] weights) => _TexFilterFuncSGIS(target, filter, n, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexFilterFuncSGIS(TextureTarget target, TextureFilterSGIS filter, int n, void* weights) => _TexFilterFuncSGIS_ptr(target, filter, n, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexFilterFuncSGIS(TextureTarget target, TextureFilterSGIS filter, int n, IntPtr weights) => _TexFilterFuncSGIS_intptr(target, filter, n, weights); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGend(TextureCoordName coord, TextureGenParameter pname, double param) => _TexGend(coord, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGendv(TextureCoordName coord, TextureGenParameter pname, double[] @params) => _TexGendv(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGendv(TextureCoordName coord, TextureGenParameter pname, void* @params) => _TexGendv_ptr(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGendv(TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _TexGendv_intptr(coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenf(TextureCoordName coord, TextureGenParameter pname, float param) => _TexGenf(coord, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenfOES(TextureCoordName coord, TextureGenParameter pname, float param) => _TexGenfOES(coord, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenfv(TextureCoordName coord, TextureGenParameter pname, float[] @params) => _TexGenfv(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenfv(TextureCoordName coord, TextureGenParameter pname, void* @params) => _TexGenfv_ptr(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenfv(TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _TexGenfv_intptr(coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenfvOES(TextureCoordName coord, TextureGenParameter pname, float[] @params) => _TexGenfvOES(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenfvOES(TextureCoordName coord, TextureGenParameter pname, void* @params) => _TexGenfvOES_ptr(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenfvOES(TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _TexGenfvOES_intptr(coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGeni(TextureCoordName coord, TextureGenParameter pname, int param) => _TexGeni(coord, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGeniOES(TextureCoordName coord, TextureGenParameter pname, int param) => _TexGeniOES(coord, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGeniv(TextureCoordName coord, TextureGenParameter pname, int[] @params) => _TexGeniv(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGeniv(TextureCoordName coord, TextureGenParameter pname, void* @params) => _TexGeniv_ptr(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGeniv(TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _TexGeniv_intptr(coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenivOES(TextureCoordName coord, TextureGenParameter pname, int[] @params) => _TexGenivOES(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenivOES(TextureCoordName coord, TextureGenParameter pname, void* @params) => _TexGenivOES_ptr(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenivOES(TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _TexGenivOES_intptr(coord, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenxOES(TextureCoordName coord, TextureGenParameter pname, float param) => _TexGenxOES(coord, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenxvOES(TextureCoordName coord, TextureGenParameter pname, float[] @params) => _TexGenxvOES(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenxvOES(TextureCoordName coord, TextureGenParameter pname, void* @params) => _TexGenxvOES_ptr(coord, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexGenxvOES(TextureCoordName coord, TextureGenParameter pname, IntPtr @params) => _TexGenxvOES_intptr(coord, pname, @params); + + // --- + + /// + /// Texturing maps a portion of a specified texture image onto each graphical primitive for which texturing is enabled. To enable and disable one-dimensional texturing, call glEnable and glDisable with argument GL_TEXTURE_1D. + /// Texture images are defined with glTexImage1D. The arguments describe the parameters of the texture image, such as width, width of the border, level-of-detail number (see glTexParameter), and the internal resolution and format used to store the image. The last three arguments describe how the image is represented in memory. + /// If target is GL_PROXY_TEXTURE_1D, no data is read from data, but all of the texture image state is recalculated, checked for consistency, and checked against the implementation's capabilities. If the implementation cannot handle a texture of the requested texture size, it sets all of the image state to 0, but does not generate an error (see glGetError). To query for an entire mipmap array, use an image array level greater than or equal to 1. + /// If target is GL_TEXTURE_1D, data is read from data as a sequence of signed or unsigned bytes, shorts, or longs, or single-precision floating-point values, depending on type. These values are grouped into sets of one, two, three, or four values, depending on format, to form elements. Each data byte is treated as eight 1-bit elements, with bit ordering determined by GL_UNPACK_LSB_FIRST (see glPixelStore). + /// If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target (see glBindBuffer) while a texture image is specified, data is treated as a byte offset into the buffer object's data store. + /// The first element corresponds to the left end of the texture array. Subsequent elements progress left-to-right through the remaining texels in the texture array. The final element corresponds to the right end of the texture array. + /// format determines the composition of each element in data. It can assume one of these symbolic values: + /// GL_RED Each element is a single red component. The GL converts it to floating point and assembles it into an RGBA element by attaching 0 for green and blue, and 1 for alpha. Each component is clamped to the range [0,1]. GL_RG Each element is a single red/green double The GL converts it to floating point and assembles it into an RGBA element by attaching 0 for blue, and 1 for alpha. Each component is clamped to the range [0,1]. GL_RGBGL_BGR Each element is an RGB triple. The GL converts it to floating point and assembles it into an RGBA element by attaching 1 for alpha. Each component is clamped to the range [0,1]. GL_RGBAGL_BGRA Each element contains all four components. Each component clamped to the range [0,1]. GL_DEPTH_COMPONENT Each element is a single depth value. The GL converts it to floating point and clamps to the range [0,1]. + /// If an application wants to store the texture at a certain resolution or in a certain format, it can request the resolution and format with internalformat. The GL will choose an internal representation that closely approximates that requested by internalformat, but it may not match exactly. (The representations specified by GL_RED, GL_RG, GL_RGB and GL_RGBA must match exactly.) + /// internalformat may be one of the base internal formats shown in Table 1, below + /// internalformat may also be one of the sized internal formats shown in Table 2, below + /// Finally, internalformat may also be one of the generic or compressed texture formats shown in Table 3 below + /// If the internalformat parameter is one of the generic compressed formats, GL_COMPRESSED_RED, GL_COMPRESSED_RG, GL_COMPRESSED_RGB, or GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. + /// If the internalformat parameter is GL_SRGB, GL_SRGB8, GL_SRGB_ALPHAor GL_SRGB8_ALPHA8, the texture is treated as if the red, green, or blue components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component , where max is the returned value of GL_MAX_TEXTURE_SIZE. + /// GL_INVALID_VALUE is generated if internalformat is not one of the accepted resolution and format symbolic constants. + /// GL_INVALID_VALUE is generated if width is less than 0 or greater than GL_MAX_TEXTURE_SIZE. + /// GL_INVALID_VALUE is generated if border is not 0. + /// GL_INVALID_OPERATION is generated if type is one of GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, or GL_UNSIGNED_SHORT_5_6_5_REV and format is not GL_RGB. + /// GL_INVALID_OPERATION is generated if type is one of GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, or GL_UNSIGNED_INT_2_10_10_10_REV and format is neither GL_RGBA nor GL_BGRA. + /// GL_INVALID_OPERATION is generated if format is GL_DEPTH_COMPONENT and internalformat is not GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32. + /// GL_INVALID_OPERATION is generated if internalformat is GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32, and format is not GL_DEPTH_COMPONENT. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer object such that the memory reads required would exceed the data store size. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible into the number of bytes needed to store in memory a datum indicated by type. + /// + /// Specifies the target texture. Must be GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below. + /// Specifies the width of the texture image. All implementations support texture images that are at least 1024 texels wide. The height of the 1D texture image is 1. + /// This value must be 0. + /// Specifies the format of the pixel data. The following symbolic values are accepted: GL_RED, GL_RG, GL_RGB, GL_BGR, GL_RGBA, GL_BGRA, GL_RED_INTEGER, GL_RG_INTEGER, GL_RGB_INTEGER, GL_BGR_INTEGER, GL_RGBA_INTEGER, GL_BGRA_INTEGER, GL_STENCIL_INDEX, GL_DEPTH_COMPONENT, GL_DEPTH_STENCIL. + /// Specifies the data type of the pixel data. The following symbolic values are accepted: GL_UNSIGNED_BYTE, GL_BYTE, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT, GL_HALF_FLOAT, GL_FLOAT, GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_5_6_5_REV, GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, and GL_UNSIGNED_INT_2_10_10_10_REV. + /// Specifies a pointer to the image data in memory. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexImage1D(TextureTarget target, int level, int internalformat, int width, int border, PixelFormat format, PixelType type, IntPtr pixels) => _TexImage1D(target, level, internalformat, width, border, format, type, pixels); + + // --- + + /// + /// Texturing allows elements of an image array to be read by shaders. + /// To define texture images, call glTexImage2D. The arguments describe the parameters of the texture image, such as height, width, width of the border, level-of-detail number (see glTexParameter), and number of color components provided. The last three arguments describe how the image is represented in memory. + /// If target is GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_CUBE_MAP, or GL_PROXY_TEXTURE_RECTANGLE, no data is read from data, but all of the texture image state is recalculated, checked for consistency, and checked against the implementation's capabilities. If the implementation cannot handle a texture of the requested texture size, it sets all of the image state to 0, but does not generate an error (see glGetError). To query for an entire mipmap array, use an image array level greater than or equal to 1. + /// If target is GL_TEXTURE_2D, GL_TEXTURE_RECTANGLE or one of the GL_TEXTURE_CUBE_MAP targets, data is read from data as a sequence of signed or unsigned bytes, shorts, or longs, or single-precision floating-point values, depending on type. These values are grouped into sets of one, two, three, or four values, depending on format, to form elements. Each data byte is treated as eight 1-bit elements, with bit ordering determined by GL_UNPACK_LSB_FIRST (see glPixelStore). + /// If target is GL_TEXTURE_1D_ARRAY, data is interpreted as an array of one-dimensional images. + /// If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER target (see glBindBuffer) while a texture image is specified, data is treated as a byte offset into the buffer object's data store. + /// The first element corresponds to the lower left corner of the texture image. Subsequent elements progress left-to-right through the remaining texels in the lowest row of the texture image, and then in successively higher rows of the texture image. The final element corresponds to the upper right corner of the texture image. + /// format determines the composition of each element in data. It can assume one of these symbolic values: + /// GL_RED Each element is a single red component. The GL converts it to floating point and assembles it into an RGBA element by attaching 0 for green and blue, and 1 for alpha. Each component is clamped to the range [0,1]. GL_RG Each element is a red/green double. The GL converts it to floating point and assembles it into an RGBA element by attaching 0 for blue, and 1 for alpha. Each component is clamped to the range [0,1]. GL_RGBGL_BGR Each element is an RGB triple. The GL converts it to floating point and assembles it into an RGBA element by attaching 1 for alpha. Each component is clamped to the range [0,1]. GL_RGBAGL_BGRA Each element contains all four components. Each component is clamped to the range [0,1]. GL_DEPTH_COMPONENT Each element is a single depth value. The GL converts it to floating point and clamps to the range [0,1]. GL_DEPTH_STENCIL Each element is a pair of depth and stencil values. The depth component of the pair is interpreted as in GL_DEPTH_COMPONENT. The stencil component is interpreted based on specified the depth + stencil internal format. + /// If an application wants to store the texture at a certain resolution or in a certain format, it can request the resolution and format with internalformat. The GL will choose an internal representation that closely approximates that requested by internalformat, but it may not match exactly. (The representations specified by GL_RED, GL_RG, GL_RGB, and GL_RGBA must match exactly.) + /// internalformat may be one of the base internal formats shown in Table 1, below + /// internalformat may also be one of the sized internal formats shown in Table 2, below + /// Finally, internalformat may also be one of the generic or compressed texture formats shown in Table 3 below + /// If the internalformat parameter is one of the generic compressed formats, GL_COMPRESSED_RED, GL_COMPRESSED_RG, GL_COMPRESSED_RGB, or GL_COMPRESSED_RGBA, the GL will replace the internal format with the symbolic constant for a specific internal format and compress the texture before storage. If no corresponding internal format is available, or the GL can not compress that image for any reason, the internal format is instead replaced with a corresponding base internal format. + /// If the internalformat parameter is GL_SRGB, GL_SRGB8, GL_SRGB_ALPHA, or GL_SRGB8_ALPHA8, the texture is treated as if the red, green, or blue components are encoded in the sRGB color space. Any alpha component is left unchanged. The conversion from the sRGB encoded component , where max is the returned value of GL_MAX_TEXTURE_SIZE. + /// GL_INVALID_VALUE is generated if internalformat is not one of the accepted resolution and format symbolic constants. + /// GL_INVALID_VALUE is generated if width or height is less than 0 or greater than GL_MAX_TEXTURE_SIZE. + /// GL_INVALID_VALUE is generated if border is not 0. + /// GL_INVALID_OPERATION is generated if type is one of GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_5_6_5_REV, or GL_UNSIGNED_INT_10F_11F_11F_REV, and format is not GL_RGB. + /// GL_INVALID_OPERATION is generated if type is one of GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, GL_UNSIGNED_INT_2_10_10_10_REV, or GL_UNSIGNED_INT_5_9_9_9_REV, and format is neither GL_RGBA nor GL_BGRA. + /// GL_INVALID_OPERATION is generated if target is not GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, GL_TEXTURE_RECTANGLE, or GL_PROXY_TEXTURE_RECTANGLE, and internalformat is GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F. + /// GL_INVALID_OPERATION is generated if format is GL_DEPTH_COMPONENT and internalformat is not GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F. + /// GL_INVALID_OPERATION is generated if internalformat is GL_DEPTH_COMPONENT, GL_DEPTH_COMPONENT16, GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT32F, and format is not GL_DEPTH_COMPONENT. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer object such that the memory reads required would exceed the data store size. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and data is not evenly divisible into the number of bytes needed to store in memory a datum indicated by type. + /// GL_INVALID_VALUE is generated if target is GL_TEXTURE_RECTANGLE or GL_PROXY_TEXTURE_RECTANGLE and level is not 0. + /// + /// Specifies the target texture. Must be GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, GL_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_1D_ARRAY, GL_TEXTURE_RECTANGLE, GL_PROXY_TEXTURE_RECTANGLE, GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or GL_PROXY_TEXTURE_CUBE_MAP. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. If target is GL_TEXTURE_RECTANGLE or GL_PROXY_TEXTURE_RECTANGLE, level must be 0. + /// Specifies the number of color components in the texture. Must be one of base internal formats given in Table 1, one of the sized internal formats given in Table 2, or one of the compressed internal formats given in Table 3, below. + /// Specifies the width of the texture image. All implementations support texture images that are at least 1024 texels wide. + /// Specifies the height of the texture image, or the number of layers in a texture array, in the case of the GL_TEXTURE_1D_ARRAY and GL_PROXY_TEXTURE_1D_ARRAY targets. All implementations support 2D texture images that are at least 1024 texels high, and texture arrays that are at least 256 layers deep. + /// This value must be 0. + /// Specifies the format of the pixel data. The following symbolic values are accepted: GL_RED, GL_RG, GL_RGB, GL_BGR, GL_RGBA, GL_BGRA, GL_RED_INTEGER, GL_RG_INTEGER, GL_RGB_INTEGER, GL_BGR_INTEGER, GL_RGBA_INTEGER, GL_BGRA_INTEGER, GL_STENCIL_INDEX, GL_DEPTH_COMPONENT, GL_DEPTH_STENCIL. + /// Specifies the data type of the pixel data. The following symbolic values are accepted: GL_UNSIGNED_BYTE, GL_BYTE, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT, GL_HALF_FLOAT, GL_FLOAT, GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_5_6_5_REV, GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, and GL_UNSIGNED_INT_2_10_10_10_REV. + /// Specifies a pointer to the image data in memory. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexImage2D(TextureTarget target, int level, int internalformat, int width, int height, int border, PixelFormat format, PixelType type, IntPtr pixels) => _TexImage2D(target, level, internalformat, width, height, border, format, type, pixels); + + // --- + + /// + /// glTexImage2DMultisample establishes the data storage, format, dimensions and number of samples of a multisample texture's image. + /// target must be GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. width and height are the dimensions in texels of the texture, and must be in the range zero to the value of GL_MAX_TEXTURE_SIZE minus one. samples specifies the number of samples in the image and must be in the range zero to the value of GL_MAX_SAMPLES minus one. + /// internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. + /// If fixedsamplelocations is GL_TRUE, the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. + /// When a multisample texture is accessed in a shader, the access takes one vector of integers describing which texel to fetch and an integer corresponding to the sample numbers describing which sample within the texel to fetch. No standard sampling instructions are allowed on the multisample texture targets. + /// + /// Specifies the target of the operation. target must be GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. + /// The number of samples in the multisample texture's image. + /// The internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format. + /// The width of the multisample texture's image, in texels. + /// The height of the multisample texture's image, in texels. + /// Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexImage2DMultisample(TextureTarget target, int samples, InternalFormat internalformat, int width, int height, bool fixedsamplelocations) => _TexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexImage2DMultisampleCoverageNV(TextureTarget target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, bool fixedSampleLocations) => _TexImage2DMultisampleCoverageNV(target, coverageSamples, colorSamples, internalFormat, width, height, fixedSampleLocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexImage3D(TextureTarget target, int level, int internalformat, int width, int height, int depth, int border, PixelFormat format, PixelType type, IntPtr pixels) => _TexImage3D(target, level, internalformat, width, height, depth, border, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexImage3DEXT(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, PixelFormat format, PixelType type, IntPtr pixels) => _TexImage3DEXT(target, level, internalformat, width, height, depth, border, format, type, pixels); + + // --- + + /// + /// glTexImage3DMultisample establishes the data storage, format, dimensions and number of samples of a multisample texture's image. + /// target must be GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY. width and heightare the dimensions in texels of the texture, and must be in the range zero to the value of GL_MAX_TEXTURE_SIZE minus one. depth is the number of array slices in the array texture's image. samples specifies the number of samples in the image and must be in the range zero to the value of GL_MAX_SAMPLES minus one. + /// internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. + /// If fixedsamplelocations is GL_TRUE, the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. + /// When a multisample texture is accessed in a shader, the access takes one vector of integers describing which texel to fetch and an integer corresponding to the sample numbers describing which sample within the texel to fetch. No standard sampling instructions are allowed on the multisample texture targets. + /// + /// Specifies the target of the operation. target must be GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY. + /// The number of samples in the multisample texture's image. + /// The internal format to be used to store the multisample texture's image. internalformat must specify a color-renderable, depth-renderable, or stencil-renderable format. + /// The width of the multisample texture's image, in texels. + /// The height of the multisample texture's image, in texels. + /// Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexImage3DMultisample(TextureTarget target, int samples, InternalFormat internalformat, int width, int height, int depth, bool fixedsamplelocations) => _TexImage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexImage3DMultisampleCoverageNV(TextureTarget target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations) => _TexImage3DMultisampleCoverageNV(target, coverageSamples, colorSamples, internalFormat, width, height, depth, fixedSampleLocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexImage3DOES(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int border, PixelFormat format, PixelType type, IntPtr pixels) => _TexImage3DOES(target, level, internalformat, width, height, depth, border, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexImage4DSGIS(TextureTarget target, int level, InternalFormat internalformat, int width, int height, int depth, int size4d, int border, PixelFormat format, PixelType type, IntPtr pixels) => _TexImage4DSGIS(target, level, internalformat, width, height, depth, size4d, border, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexPageCommitmentARB(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, bool commit) => _TexPageCommitmentARB(target, level, xoffset, yoffset, zoffset, width, height, depth, commit); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexPageCommitmentEXT(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, bool commit) => _TexPageCommitmentEXT(target, level, xoffset, yoffset, zoffset, width, height, depth, commit); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIiv(TextureTarget target, TextureParameterName pname, int[] @params) => _TexParameterIiv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIiv(TextureTarget target, TextureParameterName pname, void* @params) => _TexParameterIiv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIiv(TextureTarget target, TextureParameterName pname, IntPtr @params) => _TexParameterIiv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIivEXT(TextureTarget target, TextureParameterName pname, int[] @params) => _TexParameterIivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIivEXT(TextureTarget target, TextureParameterName pname, void* @params) => _TexParameterIivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIivEXT(TextureTarget target, TextureParameterName pname, IntPtr @params) => _TexParameterIivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIivOES(TextureTarget target, TextureParameterName pname, int[] @params) => _TexParameterIivOES(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIivOES(TextureTarget target, TextureParameterName pname, void* @params) => _TexParameterIivOES_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIivOES(TextureTarget target, TextureParameterName pname, IntPtr @params) => _TexParameterIivOES_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIuiv(TextureTarget target, TextureParameterName pname, uint[] @params) => _TexParameterIuiv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIuiv(TextureTarget target, TextureParameterName pname, void* @params) => _TexParameterIuiv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIuiv(TextureTarget target, TextureParameterName pname, IntPtr @params) => _TexParameterIuiv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIuivEXT(TextureTarget target, TextureParameterName pname, uint[] @params) => _TexParameterIuivEXT(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIuivEXT(TextureTarget target, TextureParameterName pname, void* @params) => _TexParameterIuivEXT_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIuivEXT(TextureTarget target, TextureParameterName pname, IntPtr @params) => _TexParameterIuivEXT_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIuivOES(TextureTarget target, TextureParameterName pname, uint[] @params) => _TexParameterIuivOES(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIuivOES(TextureTarget target, TextureParameterName pname, void* @params) => _TexParameterIuivOES_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterIuivOES(TextureTarget target, TextureParameterName pname, IntPtr @params) => _TexParameterIuivOES_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterf(TextureTarget target, TextureParameterName pname, float param) => _TexParameterf(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterfv(TextureTarget target, TextureParameterName pname, float[] @params) => _TexParameterfv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterfv(TextureTarget target, TextureParameterName pname, void* @params) => _TexParameterfv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterfv(TextureTarget target, TextureParameterName pname, IntPtr @params) => _TexParameterfv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameteri(TextureTarget target, TextureParameterName pname, int param) => _TexParameteri(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameteriv(TextureTarget target, TextureParameterName pname, int[] @params) => _TexParameteriv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameteriv(TextureTarget target, TextureParameterName pname, void* @params) => _TexParameteriv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameteriv(TextureTarget target, TextureParameterName pname, IntPtr @params) => _TexParameteriv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterx(TextureTarget target, GetTextureParameter pname, float param) => _TexParameterx(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterxOES(TextureTarget target, GetTextureParameter pname, float param) => _TexParameterxOES(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterxv(TextureTarget target, GetTextureParameter pname, float[] @params) => _TexParameterxv(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterxv(TextureTarget target, GetTextureParameter pname, void* @params) => _TexParameterxv_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterxv(TextureTarget target, GetTextureParameter pname, IntPtr @params) => _TexParameterxv_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterxvOES(TextureTarget target, GetTextureParameter pname, float[] @params) => _TexParameterxvOES(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterxvOES(TextureTarget target, GetTextureParameter pname, void* @params) => _TexParameterxvOES_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexParameterxvOES(TextureTarget target, GetTextureParameter pname, IntPtr @params) => _TexParameterxvOES_intptr(target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexRenderbufferNV(TextureTarget target, uint renderbuffer) => _TexRenderbufferNV(target, renderbuffer); + + // --- + + /// + /// glTexStorage1D and glTextureStorage1D specify the storage requirements for all levels of a one-dimensional texture simultaneously. Once a texture is specified with this command, the format and dimensions of all levels become immutable unless it is a proxy texture. The contents of the image may still be modified, however, its storage requirements may not change. Such a texture is referred to as an immutable-format texture. + /// Calling glTexStorage1D is equivalent, assuming no errors are generated, to executing the following pseudo-code: + /// for (i = 0; i < levels; i++) { glTexImage1D(target, i, internalformat, width, 0, format, type, NULL); width = max(1, (width / 2)); } + /// Calling glTextureStorage1D is equivalent to the above pseudo-code, where target is the effective target of texture and it is as if texture were bound to target for the purposes of glTexImage1D. + /// Since no texture data is actually provided, the values used in the pseudo-code for format and type are irrelevant and may be considered to be any values that are legal for the chosen internalformat enumerant. internalformat must be one of the sized internal formats given in Table 1 below, one of the sized depth-component formats GL_DEPTH_COMPONENT32F, GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT16, one of the combined depth-stencil formats, GL_DEPTH32F_STENCIL8, or GL_DEPTH24_STENCIL8, or the stencil-only format, GL_STENCIL_INDEX8. Upon success, the value of GL_TEXTURE_IMMUTABLE_FORMAT becomes GL_TRUE. The value of GL_TEXTURE_IMMUTABLE_FORMAT may be discovered by calling glGetTexParameter with pname set to GL_TEXTURE_IMMUTABLE_FORMAT. No further changes to the dimensions or format of the texture object may be made. Using any command that might alter the dimensions or format of the texture object (such as glTexImage1D or another call to glTexStorage1D) will result in the generation of a GL_INVALID_OPERATION error, even if it would not, in fact, alter the dimensions or format of the object. + /// + /// Specifies the target to which the texture object is bound for glTexStorage1D. Must be one of GL_TEXTURE_1D or GL_PROXY_TEXTURE_1D. + /// Specifies the texture object name for glTextureStorage1D. The effective target of texture must be one of the valid non-proxy target values above. + /// Specify the number of texture levels. + /// Specifies the sized internal format to be used to store texture image data. + /// Specifies the width of the texture, in texels. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorage1D(TextureTarget target, int levels, InternalFormat internalformat, int width) => _TexStorage1D(target, levels, internalformat, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorage1DEXT(TextureTarget target, int levels, InternalFormat internalformat, int width) => _TexStorage1DEXT(target, levels, internalformat, width); + + // --- + + /// + /// glTexStorage2D and glTextureStorage2D specify the storage requirements for all levels of a two-dimensional texture or one-dimensional texture array simultaneously. Once a texture is specified with this command, the format and dimensions of all levels become immutable unless it is a proxy texture. The contents of the image may still be modified, however, its storage requirements may not change. Such a texture is referred to as an immutable-format texture. + /// The behavior of glTexStorage2D depends on the target parameter. When target is GL_TEXTURE_2D, GL_PROXY_TEXTURE_2D, GL_TEXTURE_RECTANGLE, GL_PROXY_TEXTURE_RECTANGLE or GL_PROXY_TEXTURE_CUBE_MAP, calling glTexStorage2D is equivalent, assuming no errors are generated, to executing the following pseudo-code: + /// for (i = 0; i < levels; i++) { glTexImage2D(target, i, internalformat, width, height, 0, format, type, NULL); width = max(1, (width / 2)); height = max(1, (height / 2)); } + /// When target is GL_TEXTURE_CUBE_MAP, glTexStorage2D is equivalent to: + /// for (i = 0; i < levels; i++) { for (face in (+X, -X, +Y, -Y, +Z, -Z)) { glTexImage2D(face, i, internalformat, width, height, 0, format, type, NULL); } width = max(1, (width / 2)); height = max(1, (height / 2)); } + /// When target is GL_TEXTURE_1D_ARRAY or GL_PROXY_TEXTURE_1D_ARRAY, glTexStorage2D is equivalent to: + /// for (i = 0; i < levels; i++) { glTexImage2D(target, i, internalformat, width, height, 0, format, type, NULL); width = max(1, (width / 2)); } + /// Calling glTextureStorage2D is equivalent to the above pseudo-code, where target is the effective target of texture and it is as if texture were bound to target for the purposes of glTexImage2D. + /// Since no texture data is actually provided, the values used in the pseudo-code for format and type are irrelevant and may be considered to be any values that are legal for the chosen internalformat enumerant. internalformat must be one of the sized internal formats given in Table 1 below, one of the sized depth-component formats GL_DEPTH_COMPONENT32F, GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT16, one of the combined depth-stencil formats, GL_DEPTH32F_STENCIL8, or GL_DEPTH24_STENCIL8, or the stencil-only format, GL_STENCIL_INDEX8. Upon success, the value of GL_TEXTURE_IMMUTABLE_FORMAT becomes GL_TRUE. The value of GL_TEXTURE_IMMUTABLE_FORMAT may be discovered by calling glGetTexParameter with pname set to GL_TEXTURE_IMMUTABLE_FORMAT. No further changes to the dimensions or format of the texture object may be made. Using any command that might alter the dimensions or format of the texture object (such as glTexImage2D or another call to glTexStorage2D) will result in the generation of a GL_INVALID_OPERATION error, even if it would not, in fact, alter the dimensions or format of the object. + /// + /// Specifies the target to which the texture object is bound for glTexStorage2D. Must be one of GL_TEXTURE_2D, GL_TEXTURE_1D_ARRAY, GL_TEXTURE_RECTANGLE, GL_TEXTURE_CUBE_MAP, GL_PROXY_TEXTURE_2D, GL_PROXY_TEXTURE_1D_ARRAY, GL_PROXY_TEXTURE_RECTANGLE, or GL_PROXY_TEXTURE_CUBE_MAP. + /// Specifies the texture object name for glTextureStorage2D. The effective target of texture must be one of the valid non-proxy target values above. + /// Specify the number of texture levels. + /// Specifies the sized internal format to be used to store texture image data. + /// Specifies the width of the texture, in texels. + /// Specifies the height of the texture, in texels. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorage2D(TextureTarget target, int levels, InternalFormat internalformat, int width, int height) => _TexStorage2D(target, levels, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorage2DEXT(TextureTarget target, int levels, InternalFormat internalformat, int width, int height) => _TexStorage2DEXT(target, levels, internalformat, width, height); + + // --- + + /// + /// glTexStorage2DMultisample and glTextureStorage2DMultisample specify the storage requirements for a two-dimensional multisample texture. Once a texture is specified with this command, its format and dimensions become immutable unless it is a proxy texture. The contents of the image may still be modified, however, its storage requirements may not change. Such a texture is referred to as an immutable-format texture. + /// samples specifies the number of samples to be used for the texture and must be greater than zero and less than or equal to the value of GL_MAX_SAMPLES. internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. width and height specify the width and height, respectively, of the texture. If fixedsamplelocations is GL_TRUE, the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. + /// + /// Specifies the target to which the texture object is bound for glTexStorage2DMultisample. Must be one of GL_TEXTURE_2D_MULTISAMPLE or GL_PROXY_TEXTURE_2D_MULTISAMPLE. + /// Specifies the texture object name for glTextureStorage2DMultisample. The effective target of texture must be one of the valid non-proxy target values above. + /// Specify the number of samples in the texture. + /// Specifies the sized internal format to be used to store texture image data. + /// Specifies the width of the texture, in texels. + /// Specifies the height of the texture, in texels. + /// Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorage2DMultisample(TextureTarget target, int samples, InternalFormat internalformat, int width, int height, bool fixedsamplelocations) => _TexStorage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations); + + // --- + + /// + /// glTexStorage3D and glTextureStorage3D specify the storage requirements for all levels of a three-dimensional, two-dimensional array or cube-map array texture simultaneously. Once a texture is specified with this command, the format and dimensions of all levels become immutable unless it is a proxy texture. The contents of the image may still be modified, however, its storage requirements may not change. Such a texture is referred to as an immutable-format texture. + /// The behavior of glTexStorage3D depends on the target parameter. When target is GL_TEXTURE_3D, or GL_PROXY_TEXTURE_3D, calling glTexStorage3D is equivalent, assuming no errors are generated, to executing the following pseudo-code: + /// for (i = 0; i < levels; i++) { glTexImage3D(target, i, internalformat, width, height, depth, 0, format, type, NULL); width = max(1, (width / 2)); height = max(1, (height / 2)); depth = max(1, (depth / 2)); } + /// When target is GL_TEXTURE_2D_ARRAY, GL_PROXY_TEXTURE_2D_ARRAY, GL_TEXTURE_CUBE_MAP_ARRAY, or GL_PROXY_TEXTURE_CUBE_MAP_ARRAY, glTexStorage3D is equivalent to: + /// for (i = 0; i < levels; i++) { glTexImage3D(target, i, internalformat, width, height, depth, 0, format, type, NULL); width = max(1, (width / 2)); height = max(1, (height / 2)); } + /// Calling glTextureStorage3D is equivalent to the above pseudo-code, where target is the effective target of texture and it is as if texture were bound to target for the purposes of glTexImage3D. + /// Since no texture data is actually provided, the values used in the pseudo-code for format and type are irrelevant and may be considered to be any values that are legal for the chosen internalformat enumerant. internalformat must be one of the sized internal formats given in Table 1 below, one of the sized depth-component formats GL_DEPTH_COMPONENT32F, GL_DEPTH_COMPONENT24, or GL_DEPTH_COMPONENT16, one of the combined depth-stencil formats, GL_DEPTH32F_STENCIL8, or GL_DEPTH24_STENCIL8, or the stencil-only format, GL_STENCIL_INDEX8. Upon success, the value of GL_TEXTURE_IMMUTABLE_FORMAT becomes GL_TRUE. The value of GL_TEXTURE_IMMUTABLE_FORMAT may be discovered by calling glGetTexParameter with pname set to GL_TEXTURE_IMMUTABLE_FORMAT. No further changes to the dimensions or format of the texture object may be made. Using any command that might alter the dimensions or format of the texture object (such as glTexImage3D or another call to glTexStorage3D) will result in the generation of a GL_INVALID_OPERATION error, even if it would not, in fact, alter the dimensions or format of the object. + /// + /// Specifies the target to which the texture object is bound for glTexStorage3D. Must be one of GL_TEXTURE_3D, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_CUBE_MAP_ARRAY, GL_PROXY_TEXTURE_3D, GL_PROXY_TEXTURE_2D_ARRAY or GL_PROXY_TEXTURE_CUBE_MAP_ARRAY. + /// Specifies the texture object name for glTextureStorage3D. The effective target of texture must be one of the valid non-proxy target values above. + /// Specify the number of texture levels. + /// Specifies the sized internal format to be used to store texture image data. + /// Specifies the width of the texture, in texels. + /// Specifies the height of the texture, in texels. + /// Specifies the depth of the texture, in texels. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorage3D(TextureTarget target, int levels, InternalFormat internalformat, int width, int height, int depth) => _TexStorage3D(target, levels, internalformat, width, height, depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorage3DEXT(TextureTarget target, int levels, InternalFormat internalformat, int width, int height, int depth) => _TexStorage3DEXT(target, levels, internalformat, width, height, depth); + + // --- + + /// + /// glTexStorage3DMultisample and glTextureStorage3DMultisample specify the storage requirements for a two-dimensional multisample array texture. Once a texture is specified with this command, its format and dimensions become immutable unless it is a proxy texture. The contents of the image may still be modified, however, its storage requirements may not change. Such a texture is referred to as an immutable-format texture. + /// samples specifies the number of samples to be used for the texture and must be greater than zero and less than or equal to the value of GL_MAX_SAMPLES. internalformat must be a color-renderable, depth-renderable, or stencil-renderable format. width and height specify the width and height, respectively, of the texture and depth specifies the depth (or the number of layers) of the texture. If fixedsamplelocations is GL_TRUE, the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. + /// + /// Specifies the target to which the texture object is bound for glTexStorage3DMultisample. Must be one of GL_TEXTURE_2D_MULTISAMPLE_ARRAY or GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY. + /// Specifies the texture object name for glTextureStorage3DMultisample. The effective target of texture must be one of the valid non-proxy target values above. + /// Specify the number of samples in the texture. + /// Specifies the sized internal format to be used to store texture image data. + /// Specifies the width of the texture, in texels. + /// Specifies the height of the texture, in texels. + /// Specifies the depth of the texture, in layers. + /// Specifies whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not depend on the internal format or size of the image. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorage3DMultisample(TextureTarget target, int samples, InternalFormat internalformat, int width, int height, int depth, bool fixedsamplelocations) => _TexStorage3DMultisample(target, samples, internalformat, width, height, depth, fixedsamplelocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorage3DMultisampleOES(TextureTarget target, int samples, InternalFormat internalformat, int width, int height, int depth, bool fixedsamplelocations) => _TexStorage3DMultisampleOES(target, samples, internalformat, width, height, depth, fixedsamplelocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorageMem1DEXT(TextureTarget target, int levels, int internalFormat, int width, uint memory, UInt64 offset) => _TexStorageMem1DEXT(target, levels, internalFormat, width, memory, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorageMem2DEXT(TextureTarget target, int levels, int internalFormat, int width, int height, uint memory, UInt64 offset) => _TexStorageMem2DEXT(target, levels, internalFormat, width, height, memory, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorageMem2DMultisampleEXT(TextureTarget target, int samples, int internalFormat, int width, int height, bool fixedSampleLocations, uint memory, UInt64 offset) => _TexStorageMem2DMultisampleEXT(target, samples, internalFormat, width, height, fixedSampleLocations, memory, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorageMem3DEXT(TextureTarget target, int levels, int internalFormat, int width, int height, int depth, uint memory, UInt64 offset) => _TexStorageMem3DEXT(target, levels, internalFormat, width, height, depth, memory, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorageMem3DMultisampleEXT(TextureTarget target, int samples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations, uint memory, UInt64 offset) => _TexStorageMem3DMultisampleEXT(target, samples, internalFormat, width, height, depth, fixedSampleLocations, memory, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexStorageSparseAMD(TextureTarget target, InternalFormat internalFormat, int width, int height, int depth, int layers, int flags) => _TexStorageSparseAMD(target, internalFormat, width, height, depth, layers, flags); + + // --- + + /// + /// Texturing maps a portion of a specified texture image onto each graphical primitive for which texturing is enabled. To enable or disable one-dimensional texturing, call glEnable and glDisable with argument GL_TEXTURE_1D. + /// glTexSubImage1D and glTextureSubImage1D redefine a contiguous subregion of an existing one-dimensional texture image. The texels referenced by pixels replace the portion of the existing texture array with x indices xoffset and includes twice the border width. + /// GL_INVALID_VALUE is generated if width is less than 0. + /// GL_INVALID_OPERATION is generated if the texture array has not been defined by a previous glTexImage1D operation. + /// GL_INVALID_OPERATION is generated if type is one of GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, or GL_UNSIGNED_SHORT_5_6_5_REV and format is not GL_RGB. + /// GL_INVALID_OPERATION is generated if type is one of GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, or GL_UNSIGNED_INT_2_10_10_10_REV and format is neither GL_RGBA nor GL_BGRA. + /// GL_INVALID_OPERATION is generated if format is GL_STENCIL_INDEX and the base internal format is not GL_STENCIL_INDEX. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer object such that the memory reads required would exceed the data store size. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and pixels is not evenly divisible into the number of bytes needed to store in memory a datum indicated by type. + /// + /// Specifies the target to which the texture is bound for glTexSubImage1D. Must be GL_TEXTURE_1D. + /// Specifies the texture object name for glTextureSubImage1D. The effective target of texture must be one of the valid target values above. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies a texel offset in the x direction within the texture array. + /// Specifies the width of the texture subimage. + /// Specifies the format of the pixel data. The following symbolic values are accepted: GL_RED, GL_RG, GL_RGB, GL_BGR, GL_RGBA, GL_DEPTH_COMPONENT, and GL_STENCIL_INDEX. + /// Specifies the data type of the pixel data. The following symbolic values are accepted: GL_UNSIGNED_BYTE, GL_BYTE, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT, GL_FLOAT, GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_5_6_5_REV, GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, and GL_UNSIGNED_INT_2_10_10_10_REV. + /// Specifies a pointer to the image data in memory. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexSubImage1D(TextureTarget target, int level, int xoffset, int width, PixelFormat format, PixelType type, IntPtr pixels) => _TexSubImage1D(target, level, xoffset, width, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexSubImage1DEXT(TextureTarget target, int level, int xoffset, int width, PixelFormat format, PixelType type, IntPtr pixels) => _TexSubImage1DEXT(target, level, xoffset, width, format, type, pixels); + + // --- + + /// + /// Texturing maps a portion of a specified texture image onto each graphical primitive for which texturing is enabled. + /// glTexSubImage2D and glTextureSubImage2D redefine a contiguous subregion of an existing two-dimensional or one-dimensional array texture image. The texels referenced by pixels replace the portion of the existing texture array with x indices xoffset and include twice the border width. + /// GL_INVALID_VALUE is generated if width or height is less than 0. + /// GL_INVALID_OPERATION is generated if the texture array has not been defined by a previous glTexImage2D operation. + /// GL_INVALID_OPERATION is generated if type is one of GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, or GL_UNSIGNED_SHORT_5_6_5_REV and format is not GL_RGB. + /// GL_INVALID_OPERATION is generated if type is one of GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, or GL_UNSIGNED_INT_2_10_10_10_REV and format is neither GL_RGBA nor GL_BGRA. + /// GL_INVALID_OPERATION is generated if format is GL_STENCIL_INDEX and the base internal format is not GL_STENCIL_INDEX. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer object such that the memory reads required would exceed the data store size. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and pixels is not evenly divisible into the number of bytes needed to store in memory a datum indicated by type. + /// + /// Specifies the target to which the texture is bound for glTexSubImage2D. Must be GL_TEXTURE_2D, GL_TEXTURE_CUBE_MAP_POSITIVE_X, GL_TEXTURE_CUBE_MAP_NEGATIVE_X, GL_TEXTURE_CUBE_MAP_POSITIVE_Y, GL_TEXTURE_CUBE_MAP_NEGATIVE_Y, GL_TEXTURE_CUBE_MAP_POSITIVE_Z, GL_TEXTURE_CUBE_MAP_NEGATIVE_Z, or GL_TEXTURE_1D_ARRAY. + /// Specifies the texture object name for glTextureSubImage2D. The effective target of texture must be one of the valid target values above. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies a texel offset in the x direction within the texture array. + /// Specifies a texel offset in the y direction within the texture array. + /// Specifies the width of the texture subimage. + /// Specifies the height of the texture subimage. + /// Specifies the format of the pixel data. The following symbolic values are accepted: GL_RED, GL_RG, GL_RGB, GL_BGR, GL_RGBA, GL_BGRA, GL_DEPTH_COMPONENT, and GL_STENCIL_INDEX. + /// Specifies the data type of the pixel data. The following symbolic values are accepted: GL_UNSIGNED_BYTE, GL_BYTE, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT, GL_FLOAT, GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_5_6_5_REV, GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, and GL_UNSIGNED_INT_2_10_10_10_REV. + /// Specifies a pointer to the image data in memory. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexSubImage2D(TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, PixelType type, IntPtr pixels) => _TexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexSubImage2DEXT(TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, PixelType type, IntPtr pixels) => _TexSubImage2DEXT(target, level, xoffset, yoffset, width, height, format, type, pixels); + + // --- + + /// + /// Texturing maps a portion of a specified texture image onto each graphical primitive for which texturing is enabled. + /// glTexSubImage3D and glTextureSubImage3D redefine a contiguous subregion of an existing three-dimensional or two-dimensioanl array texture image. The texels referenced by pixels replace the portion of the existing texture array with x indices xoffset and include twice the border width. + /// GL_INVALID_VALUE is generated if width, height, or depth is less than 0. + /// GL_INVALID_OPERATION is generated if the texture array has not been defined by a previous glTexImage3D or glTexStorage3D operation. + /// GL_INVALID_OPERATION is generated if type is one of GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, or GL_UNSIGNED_SHORT_5_6_5_REV and format is not GL_RGB. + /// GL_INVALID_OPERATION is generated if type is one of GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, or GL_UNSIGNED_INT_2_10_10_10_REV and format is neither GL_RGBA nor GL_BGRA. + /// GL_INVALID_OPERATION is generated if format is GL_STENCIL_INDEX and the base internal format is not GL_STENCIL_INDEX. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and the buffer object's data store is currently mapped. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and the data would be unpacked from the buffer object such that the memory reads required would exceed the data store size. + /// GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to the GL_PIXEL_UNPACK_BUFFER target and pixels is not evenly divisible into the number of bytes needed to store in memory a datum indicated by type. + /// + /// Specifies the target to which the texture is bound for glTexSubImage3D. Must be GL_TEXTURE_3D or GL_TEXTURE_2D_ARRAY. + /// Specifies the texture object name for glTextureSubImage3D. The effective target of texture must be one of the valid target values above. + /// Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + /// Specifies a texel offset in the x direction within the texture array. + /// Specifies a texel offset in the y direction within the texture array. + /// Specifies a texel offset in the z direction within the texture array. + /// Specifies the width of the texture subimage. + /// Specifies the height of the texture subimage. + /// Specifies the depth of the texture subimage. + /// Specifies the format of the pixel data. The following symbolic values are accepted: GL_RED, GL_RG, GL_RGB, GL_BGR, GL_RGBA, GL_DEPTH_COMPONENT, and GL_STENCIL_INDEX. + /// Specifies the data type of the pixel data. The following symbolic values are accepted: GL_UNSIGNED_BYTE, GL_BYTE, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT, GL_FLOAT, GL_UNSIGNED_BYTE_3_3_2, GL_UNSIGNED_BYTE_2_3_3_REV, GL_UNSIGNED_SHORT_5_6_5, GL_UNSIGNED_SHORT_5_6_5_REV, GL_UNSIGNED_SHORT_4_4_4_4, GL_UNSIGNED_SHORT_4_4_4_4_REV, GL_UNSIGNED_SHORT_5_5_5_1, GL_UNSIGNED_SHORT_1_5_5_5_REV, GL_UNSIGNED_INT_8_8_8_8, GL_UNSIGNED_INT_8_8_8_8_REV, GL_UNSIGNED_INT_10_10_10_2, and GL_UNSIGNED_INT_2_10_10_10_REV. + /// Specifies a pointer to the image data in memory. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexSubImage3D(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr pixels) => _TexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexSubImage3DEXT(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr pixels) => _TexSubImage3DEXT(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexSubImage3DOES(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr pixels) => _TexSubImage3DOES(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexSubImage4DSGIS(TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int woffset, int width, int height, int depth, int size4d, PixelFormat format, PixelType type, IntPtr pixels) => _TexSubImage4DSGIS(target, level, xoffset, yoffset, zoffset, woffset, width, height, depth, size4d, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureAttachMemoryNV(uint texture, uint memory, UInt64 offset) => _TextureAttachMemoryNV(texture, memory, offset); + + // --- + + /// + /// The values of rendered fragments are undefined when a shader stage fetches texels and the same texels are written via fragment shader outputs, even if the reads and writes are not in the same drawing command. To safely read the result of a written texel via a texel fetch in a subsequent drawing command, call glTextureBarrier between the two drawing commands to guarantee that writes have completed and caches have been invalidated before subsequent drawing commands are executed. + /// + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureBarrier() => _TextureBarrier(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureBarrierNV() => _TextureBarrierNV(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureBuffer(uint texture, InternalFormat internalformat, uint buffer) => _TextureBuffer(texture, internalformat, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureBufferEXT(uint texture, TextureTarget target, InternalFormat internalformat, uint buffer) => _TextureBufferEXT(texture, target, internalformat, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureBufferRange(uint texture, InternalFormat internalformat, uint buffer, IntPtr offset, IntPtr size) => _TextureBufferRange(texture, internalformat, buffer, offset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureBufferRangeEXT(uint texture, TextureTarget target, InternalFormat internalformat, uint buffer, IntPtr offset, IntPtr size) => _TextureBufferRangeEXT(texture, target, internalformat, buffer, offset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureColorMaskSGIS(bool red, bool green, bool blue, bool alpha) => _TextureColorMaskSGIS(red, green, blue, alpha); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureFoveationParametersQCOM(uint texture, uint layer, uint focalPoint, float focalX, float focalY, float gainX, float gainY, float foveaArea) => _TextureFoveationParametersQCOM(texture, layer, focalPoint, focalX, focalY, gainX, gainY, foveaArea); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureImage1DEXT(uint texture, TextureTarget target, int level, int internalformat, int width, int border, PixelFormat format, PixelType type, IntPtr pixels) => _TextureImage1DEXT(texture, target, level, internalformat, width, border, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureImage2DEXT(uint texture, TextureTarget target, int level, int internalformat, int width, int height, int border, PixelFormat format, PixelType type, IntPtr pixels) => _TextureImage2DEXT(texture, target, level, internalformat, width, height, border, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureImage2DMultisampleCoverageNV(uint texture, TextureTarget target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, bool fixedSampleLocations) => _TextureImage2DMultisampleCoverageNV(texture, target, coverageSamples, colorSamples, internalFormat, width, height, fixedSampleLocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureImage2DMultisampleNV(uint texture, TextureTarget target, int samples, int internalFormat, int width, int height, bool fixedSampleLocations) => _TextureImage2DMultisampleNV(texture, target, samples, internalFormat, width, height, fixedSampleLocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureImage3DEXT(uint texture, TextureTarget target, int level, int internalformat, int width, int height, int depth, int border, PixelFormat format, PixelType type, IntPtr pixels) => _TextureImage3DEXT(texture, target, level, internalformat, width, height, depth, border, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureImage3DMultisampleCoverageNV(uint texture, TextureTarget target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations) => _TextureImage3DMultisampleCoverageNV(texture, target, coverageSamples, colorSamples, internalFormat, width, height, depth, fixedSampleLocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureImage3DMultisampleNV(uint texture, TextureTarget target, int samples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations) => _TextureImage3DMultisampleNV(texture, target, samples, internalFormat, width, height, depth, fixedSampleLocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureLightEXT(LightTexturePNameEXT pname) => _TextureLightEXT(pname); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureMaterialEXT(MaterialFace face, MaterialParameter mode) => _TextureMaterialEXT(face, mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureNormalEXT(TextureNormalModeEXT mode) => _TextureNormalEXT(mode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TexturePageCommitmentEXT(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, bool commit) => _TexturePageCommitmentEXT(texture, level, xoffset, yoffset, zoffset, width, height, depth, commit); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterIiv(uint texture, TextureParameterName pname, int[] @params) => _TextureParameterIiv(texture, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterIiv(uint texture, TextureParameterName pname, void* @params) => _TextureParameterIiv_ptr(texture, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterIiv(uint texture, TextureParameterName pname, IntPtr @params) => _TextureParameterIiv_intptr(texture, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterIivEXT(uint texture, TextureTarget target, TextureParameterName pname, int[] @params) => _TextureParameterIivEXT(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterIivEXT(uint texture, TextureTarget target, TextureParameterName pname, void* @params) => _TextureParameterIivEXT_ptr(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterIivEXT(uint texture, TextureTarget target, TextureParameterName pname, IntPtr @params) => _TextureParameterIivEXT_intptr(texture, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterIuiv(uint texture, TextureParameterName pname, uint[] @params) => _TextureParameterIuiv(texture, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterIuiv(uint texture, TextureParameterName pname, void* @params) => _TextureParameterIuiv_ptr(texture, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterIuiv(uint texture, TextureParameterName pname, IntPtr @params) => _TextureParameterIuiv_intptr(texture, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterIuivEXT(uint texture, TextureTarget target, TextureParameterName pname, uint[] @params) => _TextureParameterIuivEXT(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterIuivEXT(uint texture, TextureTarget target, TextureParameterName pname, void* @params) => _TextureParameterIuivEXT_ptr(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterIuivEXT(uint texture, TextureTarget target, TextureParameterName pname, IntPtr @params) => _TextureParameterIuivEXT_intptr(texture, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterf(uint texture, TextureParameterName pname, float param) => _TextureParameterf(texture, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterfEXT(uint texture, TextureTarget target, TextureParameterName pname, float param) => _TextureParameterfEXT(texture, target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterfv(uint texture, TextureParameterName pname, float[] param) => _TextureParameterfv(texture, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterfv(uint texture, TextureParameterName pname, void* param) => _TextureParameterfv_ptr(texture, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterfv(uint texture, TextureParameterName pname, IntPtr param) => _TextureParameterfv_intptr(texture, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterfvEXT(uint texture, TextureTarget target, TextureParameterName pname, float[] @params) => _TextureParameterfvEXT(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterfvEXT(uint texture, TextureTarget target, TextureParameterName pname, void* @params) => _TextureParameterfvEXT_ptr(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterfvEXT(uint texture, TextureTarget target, TextureParameterName pname, IntPtr @params) => _TextureParameterfvEXT_intptr(texture, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameteri(uint texture, TextureParameterName pname, int param) => _TextureParameteri(texture, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameteriEXT(uint texture, TextureTarget target, TextureParameterName pname, int param) => _TextureParameteriEXT(texture, target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameteriv(uint texture, TextureParameterName pname, int[] param) => _TextureParameteriv(texture, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameteriv(uint texture, TextureParameterName pname, void* param) => _TextureParameteriv_ptr(texture, pname, param); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameteriv(uint texture, TextureParameterName pname, IntPtr param) => _TextureParameteriv_intptr(texture, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterivEXT(uint texture, TextureTarget target, TextureParameterName pname, int[] @params) => _TextureParameterivEXT(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterivEXT(uint texture, TextureTarget target, TextureParameterName pname, void* @params) => _TextureParameterivEXT_ptr(texture, target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureParameterivEXT(uint texture, TextureTarget target, TextureParameterName pname, IntPtr @params) => _TextureParameterivEXT_intptr(texture, target, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureRangeAPPLE(int target, int length, IntPtr pointer) => _TextureRangeAPPLE(target, length, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureRenderbufferEXT(uint texture, TextureTarget target, uint renderbuffer) => _TextureRenderbufferEXT(texture, target, renderbuffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorage1D(uint texture, int levels, InternalFormat internalformat, int width) => _TextureStorage1D(texture, levels, internalformat, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorage1DEXT(uint texture, int target, int levels, InternalFormat internalformat, int width) => _TextureStorage1DEXT(texture, target, levels, internalformat, width); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorage2D(uint texture, int levels, InternalFormat internalformat, int width, int height) => _TextureStorage2D(texture, levels, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorage2DEXT(uint texture, int target, int levels, InternalFormat internalformat, int width, int height) => _TextureStorage2DEXT(texture, target, levels, internalformat, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorage2DMultisample(uint texture, int samples, InternalFormat internalformat, int width, int height, bool fixedsamplelocations) => _TextureStorage2DMultisample(texture, samples, internalformat, width, height, fixedsamplelocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorage2DMultisampleEXT(uint texture, TextureTarget target, int samples, InternalFormat internalformat, int width, int height, bool fixedsamplelocations) => _TextureStorage2DMultisampleEXT(texture, target, samples, internalformat, width, height, fixedsamplelocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorage3D(uint texture, int levels, InternalFormat internalformat, int width, int height, int depth) => _TextureStorage3D(texture, levels, internalformat, width, height, depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorage3DEXT(uint texture, int target, int levels, InternalFormat internalformat, int width, int height, int depth) => _TextureStorage3DEXT(texture, target, levels, internalformat, width, height, depth); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorage3DMultisample(uint texture, int samples, InternalFormat internalformat, int width, int height, int depth, bool fixedsamplelocations) => _TextureStorage3DMultisample(texture, samples, internalformat, width, height, depth, fixedsamplelocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorage3DMultisampleEXT(uint texture, int target, int samples, InternalFormat internalformat, int width, int height, int depth, bool fixedsamplelocations) => _TextureStorage3DMultisampleEXT(texture, target, samples, internalformat, width, height, depth, fixedsamplelocations); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorageMem1DEXT(uint texture, int levels, int internalFormat, int width, uint memory, UInt64 offset) => _TextureStorageMem1DEXT(texture, levels, internalFormat, width, memory, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorageMem2DEXT(uint texture, int levels, int internalFormat, int width, int height, uint memory, UInt64 offset) => _TextureStorageMem2DEXT(texture, levels, internalFormat, width, height, memory, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorageMem2DMultisampleEXT(uint texture, int samples, int internalFormat, int width, int height, bool fixedSampleLocations, uint memory, UInt64 offset) => _TextureStorageMem2DMultisampleEXT(texture, samples, internalFormat, width, height, fixedSampleLocations, memory, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorageMem3DEXT(uint texture, int levels, int internalFormat, int width, int height, int depth, uint memory, UInt64 offset) => _TextureStorageMem3DEXT(texture, levels, internalFormat, width, height, depth, memory, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorageMem3DMultisampleEXT(uint texture, int samples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations, uint memory, UInt64 offset) => _TextureStorageMem3DMultisampleEXT(texture, samples, internalFormat, width, height, depth, fixedSampleLocations, memory, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureStorageSparseAMD(uint texture, int target, InternalFormat internalFormat, int width, int height, int depth, int layers, int flags) => _TextureStorageSparseAMD(texture, target, internalFormat, width, height, depth, layers, flags); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureSubImage1D(uint texture, int level, int xoffset, int width, PixelFormat format, PixelType type, IntPtr pixels) => _TextureSubImage1D(texture, level, xoffset, width, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureSubImage1DEXT(uint texture, TextureTarget target, int level, int xoffset, int width, PixelFormat format, PixelType type, IntPtr pixels) => _TextureSubImage1DEXT(texture, target, level, xoffset, width, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureSubImage2D(uint texture, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, PixelType type, IntPtr pixels) => _TextureSubImage2D(texture, level, xoffset, yoffset, width, height, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureSubImage2DEXT(uint texture, TextureTarget target, int level, int xoffset, int yoffset, int width, int height, PixelFormat format, PixelType type, IntPtr pixels) => _TextureSubImage2DEXT(texture, target, level, xoffset, yoffset, width, height, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureSubImage3D(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr pixels) => _TextureSubImage3D(texture, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureSubImage3DEXT(uint texture, TextureTarget target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, PixelFormat format, PixelType type, IntPtr pixels) => _TextureSubImage3DEXT(texture, target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, pixels); + + // --- + + /// + /// glTextureView initializes a texture object as an alias, or view of another texture object, sharing some or all of the parent texture's data store with the initialized texture. texture specifies a name previously reserved by a successful call to glGenTextures but that has not yet been bound or given a target. target specifies the target for the newly initialized texture and must be compatible with the target of the parent texture, given in origtexture as specified in the following table: + /// Original TargetCompatible New TargetsGL_TEXTURE_1DGL_TEXTURE_1D, GL_TEXTURE_1D_ARRAYGL_TEXTURE_2DGL_TEXTURE_2D, GL_TEXTURE_2D_ARRAYGL_TEXTURE_3DGL_TEXTURE_3DGL_TEXTURE_CUBE_MAPGL_TEXTURE_CUBE_MAP, GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_CUBE_MAP_ARRAYGL_TEXTURE_RECTANGLEGL_TEXTURE_RECTANGLEGL_TEXTURE_BUFFERnoneGL_TEXTURE_1D_ARRAYGL_TEXTURE_1D, GL_TEXTURE_1D_ARRAYGL_TEXTURE_2D_ARRAYGL_TEXTURE_2D, GL_TEXTURE_2D_ARRAYGL_TEXTURE_CUBE_MAP_ARRAYGL_TEXTURE_CUBE_MAP, GL_TEXTURE_2D, GL_TEXTURE_2D_ARRAY, GL_TEXTURE_CUBE_MAP_ARRAYGL_TEXTURE_2D_MULTISAMPLEGL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_MULTISAMPLE_ARRAYGL_TEXTURE_2D_MULTISAMPLE_ARRAYGL_TEXTURE_2D_MULTISAMPLE, GL_TEXTURE_MULTISAMPLE_ARRAY + /// The value of GL_TEXTURE_IMMUTABLE_FORMAT for origtexture must be GL_TRUE. After initialization, texture inherits the data store of the parent texture, origtexture and is usable as a normal texture object with target target. Data in the shared store is reinterpreted with the new internal format specified by internalformat. internalformat must be compatible with the internal format of the parent texture as specified in the following table: + /// ClassInternal Formats128-bitGL_RGBA32F, GL_RGBA32UI, GL_RGBA32I96-bitGL_RGB32F, GL_RGB32UI, GL_RGB32I64-bitGL_RGBA16F, GL_RG32F, GL_RGBA16UI, GL_RG32UI, GL_RGBA16I, GL_RG32I, GL_RGBA16, GL_RGBA16_SNORM48-bitGL_RGB16, GL_RGB16_SNORM, GL_RGB16F, GL_RGB16UI, GL_RGB16I32-bitGL_RG16F, GL_R11F_G11F_B10F, GL_R32F, GL_RGB10_A2UI, GL_RGBA8UI, GL_RG16UI, GL_R32UI, GL_RGBA8I, GL_RG16I, GL_R32I, GL_RGB10_A2, GL_RGBA8, GL_RG16, GL_RGBA8_SNORM, GL_RG16_SNORM, GL_SRGB8_ALPHA8, GL_RGB9_E524-bitGL_RGB8, GL_RGB8_SNORM, GL_SRGB8, GL_RGB8UI, GL_RGB8I16-bitGL_R16F, GL_RG8UI, GL_R16UI, GL_RG8I, GL_R16I, GL_RG8, GL_R16, GL_RG8_SNORM, GL_R16_SNORM8-bitGL_R8UI, GL_R8I, GL_R8, GL_R8_SNORMGL_RGTC1_REDGL_COMPRESSED_RED_RGTC1, GL_COMPRESSED_SIGNED_RED_RGTC1GL_RGTC2_RGGL_COMPRESSED_RG_RGTC2, GL_COMPRESSED_SIGNED_RG_RGTC2GL_BPTC_UNORMGL_COMPRESSED_RGBA_BPTC_UNORM, GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORMGL_BPTC_FLOATGL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT, GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT + /// If the original texture is an array or has multiple mipmap levels, the parameters minlayer, numlayers, minlevel, and numlevels control which of those slices and levels are considered part of the texture. The minlevel and minlayer parameters are relative to the view of the original texture. If numlayers or numlevels extend beyond the original texture, they are clamped to the max extent of the original texture. + /// If the new texture's target is GL_TEXTURE_CUBE_MAP, the clamped numlayers must be equal to 6. If the new texture's target is GL_TEXTURE_CUBE_MAP_ARRAY, then numlayers counts layer-faces rather than layers, and the clamped numlayers must be a multiple of 6. If the new texture's target is GL_TEXTURE_CUBE_MAP or GL_TEXTURE_CUBE_MAP_ARRAY, the width and height of the original texture's levels must be equal. + /// When the original texture's target is GL_TEXTURE_CUBE_MAP, the layer parameters are interpreted in the same order as if it were a GL_TEXTURE_CUBE_MAP_ARRAY with 6 layer-faces. + /// If target is GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D, GL_TEXTURE_RECTANGLE, or GL_TEXTURE_2D_MULTISAMPLE, numlayers must equal 1. + /// The dimensions of the original texture must be less than or equal to the maximum supported dimensions of the new target. For example, if the original texture has a GL_TEXTURE_2D_ARRAY target and its width is greater than GL_MAX_CUBE_MAP_TEXTURE_SIZE, an error will be generated if glTextureView is called to create a GL_TEXTURE_CUBE_MAP view. + /// Texture commands that take a level or layer parameter, such as glTexSubImage2D, interpret that parameter to be relative to the view of the texture. i.e. the mipmap level of the data store that would be updated via glTexSubImage2D would be the sum of level and the value of GL_TEXTURE_VIEW_MIN_LEVEL. + /// + /// Specifies the texture object to be initialized as a view. + /// Specifies the target to be used for the newly initialized texture. + /// Specifies the name of a texture object of which to make a view. + /// Specifies the internal format for the newly created view. + /// Specifies lowest level of detail of the view. + /// Specifies the number of levels of detail to include in the view. + /// Specifies the index of the first layer to include in the view. + /// Specifies the number of layers to include in the view. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureView(uint texture, TextureTarget target, uint origtexture, InternalFormat internalformat, uint minlevel, uint numlevels, uint minlayer, uint numlayers) => _TextureView(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureViewEXT(uint texture, TextureTarget target, uint origtexture, InternalFormat internalformat, uint minlevel, uint numlevels, uint minlayer, uint numlayers) => _TextureViewEXT(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TextureViewOES(uint texture, TextureTarget target, uint origtexture, InternalFormat internalformat, uint minlevel, uint numlevels, uint minlayer, uint numlayers) => _TextureViewOES(texture, target, origtexture, internalformat, minlevel, numlevels, minlayer, numlayers); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TrackMatrixNV(VertexAttribEnumNV target, uint address, VertexAttribEnumNV matrix, VertexAttribEnumNV transform) => _TrackMatrixNV(target, address, matrix, transform); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackAttribsNV(int count, int[] attribs, int bufferMode) => _TransformFeedbackAttribsNV(count, attribs, bufferMode); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackAttribsNV(int count, void* attribs, int bufferMode) => _TransformFeedbackAttribsNV_ptr(count, attribs, bufferMode); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackAttribsNV(int count, IntPtr attribs, int bufferMode) => _TransformFeedbackAttribsNV_intptr(count, attribs, bufferMode); + + // --- + + /// + /// glTransformFeedbackBufferBase binds the buffer object buffer to the binding point at index index of the transform feedback object xfb. + /// + /// Name of the transform feedback buffer object. + /// Index of the binding point within xfb. + /// Name of the buffer object to bind to the specified binding point. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackBufferBase(uint xfb, uint index, uint buffer) => _TransformFeedbackBufferBase(xfb, index, buffer); + + // --- + + /// + /// glTransformFeedbackBufferRange binds a range of the buffer object buffer represented by offset and size to the binding point at index index of the transform feedback object xfb. + /// offset specifies the offset in basic machine units into the buffer object buffer and size specifies the amount of data that can be read from the buffer object while used as an indexed target. + /// + /// Name of the transform feedback buffer object. + /// Index of the binding point within xfb. + /// Name of the buffer object to bind to the specified binding point. + /// The starting offset in basic machine units into the buffer object. + /// The amount of data in basic machine units that can be read from or written to the buffer object while used as an indexed target. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackBufferRange(uint xfb, uint index, uint buffer, IntPtr offset, IntPtr size) => _TransformFeedbackBufferRange(xfb, index, buffer, offset, size); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackStreamAttribsNV(int count, int[] attribs, int nbuffers, int[] bufstreams, int bufferMode) => _TransformFeedbackStreamAttribsNV(count, attribs, nbuffers, bufstreams, bufferMode); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackStreamAttribsNV(int count, void* attribs, int nbuffers, void* bufstreams, int bufferMode) => _TransformFeedbackStreamAttribsNV_ptr(count, attribs, nbuffers, bufstreams, bufferMode); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackStreamAttribsNV(int count, IntPtr attribs, int nbuffers, IntPtr bufstreams, int bufferMode) => _TransformFeedbackStreamAttribsNV_intptr(count, attribs, nbuffers, bufstreams, bufferMode); + + // --- + + /// + /// The names of the vertex or geometry shader outputs to be recorded in transform feedback mode are specified using glTransformFeedbackVaryings. When a geometry shader is active, transform feedback records the values of selected geometry shader output variables from the emitted vertices. Otherwise, the values of the selected vertex shader outputs are recorded. + /// The state set by glTranformFeedbackVaryings is stored and takes effect next time glLinkProgram is called on program. When glLinkProgram is called, program is linked so that the values of the specified varying variables for the vertices of each primitive generated by the GL are written to a single buffer object if bufferMode is GL_INTERLEAVED_ATTRIBS or multiple buffer objects if bufferMode is GL_SEPARATE_ATTRIBS. + /// glTransformFeedbackVaryings can also special identifiers if bufferMode is GL_INTERLEAVED_ATTRIBS: + /// gl_NextBufferSubsequent variables in varyings will be assigned to the next buffer binding point.gl_SkipComponents#Where # may be 1, 2, 3, or 4. The variable is treated as having this number of components, but the contents of the memory are preserved under feedback operations. + /// In addition to the errors generated by glTransformFeedbackVaryings, the program program will fail to link if: The count specified by glTransformFeedbackVaryings is non-zero, but the program object has no vertex or geometry shader. Any variable name specified in the varyings array is not declared as an output in the vertex shader (or the geometry shader, if active), or is not one of the special identifiers listed above. Special identifiers appear in a varyings array where bufferMode is not GL_INTERLEAVED_ATTRIBS. Any two entries in the varyings array, which are not one of the special varyings above, specify the same varying variable. Discounting any special identifiers, the total number of components to capture in any varying variable in varyings is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS and the buffer mode is GL_SEPARATE_ATTRIBS. The total number of components to capture is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS and the buffer mode is GL_INTERLEAVED_ATTRIBS. + /// + /// The name of the target program object. + /// The number of varying variables used for transform feedback. + /// An array of count zero-terminated strings specifying the names of the varying variables to use for transform feedback. + /// Identifies the mode used to capture the varying variables when transform feedback is active. bufferMode must be GL_INTERLEAVED_ATTRIBS or GL_SEPARATE_ATTRIBS. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackVaryings(uint program, int count, string[] varyings, TransformFeedbackBufferMode bufferMode) => _TransformFeedbackVaryings(program, count, varyings, bufferMode); + + /// + /// The names of the vertex or geometry shader outputs to be recorded in transform feedback mode are specified using glTransformFeedbackVaryings. When a geometry shader is active, transform feedback records the values of selected geometry shader output variables from the emitted vertices. Otherwise, the values of the selected vertex shader outputs are recorded. + /// The state set by glTranformFeedbackVaryings is stored and takes effect next time glLinkProgram is called on program. When glLinkProgram is called, program is linked so that the values of the specified varying variables for the vertices of each primitive generated by the GL are written to a single buffer object if bufferMode is GL_INTERLEAVED_ATTRIBS or multiple buffer objects if bufferMode is GL_SEPARATE_ATTRIBS. + /// glTransformFeedbackVaryings can also special identifiers if bufferMode is GL_INTERLEAVED_ATTRIBS: + /// gl_NextBufferSubsequent variables in varyings will be assigned to the next buffer binding point.gl_SkipComponents#Where # may be 1, 2, 3, or 4. The variable is treated as having this number of components, but the contents of the memory are preserved under feedback operations. + /// In addition to the errors generated by glTransformFeedbackVaryings, the program program will fail to link if: The count specified by glTransformFeedbackVaryings is non-zero, but the program object has no vertex or geometry shader. Any variable name specified in the varyings array is not declared as an output in the vertex shader (or the geometry shader, if active), or is not one of the special identifiers listed above. Special identifiers appear in a varyings array where bufferMode is not GL_INTERLEAVED_ATTRIBS. Any two entries in the varyings array, which are not one of the special varyings above, specify the same varying variable. Discounting any special identifiers, the total number of components to capture in any varying variable in varyings is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS and the buffer mode is GL_SEPARATE_ATTRIBS. The total number of components to capture is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS and the buffer mode is GL_INTERLEAVED_ATTRIBS. + /// + /// The name of the target program object. + /// The number of varying variables used for transform feedback. + /// An array of count zero-terminated strings specifying the names of the varying variables to use for transform feedback. + /// Identifies the mode used to capture the varying variables when transform feedback is active. bufferMode must be GL_INTERLEAVED_ATTRIBS or GL_SEPARATE_ATTRIBS. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackVaryings(uint program, int count, void* varyings, TransformFeedbackBufferMode bufferMode) => _TransformFeedbackVaryings_ptr(program, count, varyings, bufferMode); + + /// + /// The names of the vertex or geometry shader outputs to be recorded in transform feedback mode are specified using glTransformFeedbackVaryings. When a geometry shader is active, transform feedback records the values of selected geometry shader output variables from the emitted vertices. Otherwise, the values of the selected vertex shader outputs are recorded. + /// The state set by glTranformFeedbackVaryings is stored and takes effect next time glLinkProgram is called on program. When glLinkProgram is called, program is linked so that the values of the specified varying variables for the vertices of each primitive generated by the GL are written to a single buffer object if bufferMode is GL_INTERLEAVED_ATTRIBS or multiple buffer objects if bufferMode is GL_SEPARATE_ATTRIBS. + /// glTransformFeedbackVaryings can also special identifiers if bufferMode is GL_INTERLEAVED_ATTRIBS: + /// gl_NextBufferSubsequent variables in varyings will be assigned to the next buffer binding point.gl_SkipComponents#Where # may be 1, 2, 3, or 4. The variable is treated as having this number of components, but the contents of the memory are preserved under feedback operations. + /// In addition to the errors generated by glTransformFeedbackVaryings, the program program will fail to link if: The count specified by glTransformFeedbackVaryings is non-zero, but the program object has no vertex or geometry shader. Any variable name specified in the varyings array is not declared as an output in the vertex shader (or the geometry shader, if active), or is not one of the special identifiers listed above. Special identifiers appear in a varyings array where bufferMode is not GL_INTERLEAVED_ATTRIBS. Any two entries in the varyings array, which are not one of the special varyings above, specify the same varying variable. Discounting any special identifiers, the total number of components to capture in any varying variable in varyings is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS and the buffer mode is GL_SEPARATE_ATTRIBS. The total number of components to capture is greater than the constant GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS and the buffer mode is GL_INTERLEAVED_ATTRIBS. + /// + /// The name of the target program object. + /// The number of varying variables used for transform feedback. + /// An array of count zero-terminated strings specifying the names of the varying variables to use for transform feedback. + /// Identifies the mode used to capture the varying variables when transform feedback is active. bufferMode must be GL_INTERLEAVED_ATTRIBS or GL_SEPARATE_ATTRIBS. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackVaryings(uint program, int count, IntPtr varyings, TransformFeedbackBufferMode bufferMode) => _TransformFeedbackVaryings_intptr(program, count, varyings, bufferMode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackVaryingsEXT(uint program, int count, string[] varyings, int bufferMode) => _TransformFeedbackVaryingsEXT(program, count, varyings, bufferMode); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackVaryingsEXT(uint program, int count, void* varyings, int bufferMode) => _TransformFeedbackVaryingsEXT_ptr(program, count, varyings, bufferMode); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackVaryingsEXT(uint program, int count, IntPtr varyings, int bufferMode) => _TransformFeedbackVaryingsEXT_intptr(program, count, varyings, bufferMode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackVaryingsNV(uint program, int count, int[] locations, int bufferMode) => _TransformFeedbackVaryingsNV(program, count, locations, bufferMode); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackVaryingsNV(uint program, int count, void* locations, int bufferMode) => _TransformFeedbackVaryingsNV_ptr(program, count, locations, bufferMode); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformFeedbackVaryingsNV(uint program, int count, IntPtr locations, int bufferMode) => _TransformFeedbackVaryingsNV_intptr(program, count, locations, bufferMode); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformPathNV(uint resultPath, uint srcPath, PathTransformType transformType, float[] transformValues) => _TransformPathNV(resultPath, srcPath, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformPathNV(uint resultPath, uint srcPath, PathTransformType transformType, void* transformValues) => _TransformPathNV_ptr(resultPath, srcPath, transformType, transformValues); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TransformPathNV(uint resultPath, uint srcPath, PathTransformType transformType, IntPtr transformValues) => _TransformPathNV_intptr(resultPath, srcPath, transformType, transformValues); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Translated(double x, double y, double z) => _Translated(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Translatef(float x, float y, float z) => _Translatef(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Translatex(float x, float y, float z) => _Translatex(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void TranslatexOES(float x, float y, float z) => _TranslatexOES(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1d(int location, double x) => _Uniform1d(location, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1dv(int location, int count, double[] value) => _Uniform1dv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1dv(int location, int count, void* value) => _Uniform1dv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1dv(int location, int count, IntPtr value) => _Uniform1dv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1f(int location, float v0) => _Uniform1f(location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1fARB(int location, float v0) => _Uniform1fARB(location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1fv(int location, int count, float[] value) => _Uniform1fv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1fv(int location, int count, void* value) => _Uniform1fv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1fv(int location, int count, IntPtr value) => _Uniform1fv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1fvARB(int location, int count, float[] value) => _Uniform1fvARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1fvARB(int location, int count, void* value) => _Uniform1fvARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1fvARB(int location, int count, IntPtr value) => _Uniform1fvARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1i(int location, int v0) => _Uniform1i(location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1i64ARB(int location, Int64 x) => _Uniform1i64ARB(location, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1i64NV(int location, Int64 x) => _Uniform1i64NV(location, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1i64vARB(int location, int count, Int64[] value) => _Uniform1i64vARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1i64vARB(int location, int count, void* value) => _Uniform1i64vARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1i64vARB(int location, int count, IntPtr value) => _Uniform1i64vARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1i64vNV(int location, int count, Int64[] value) => _Uniform1i64vNV(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1i64vNV(int location, int count, void* value) => _Uniform1i64vNV_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1i64vNV(int location, int count, IntPtr value) => _Uniform1i64vNV_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1iARB(int location, int v0) => _Uniform1iARB(location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1iv(int location, int count, int[] value) => _Uniform1iv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1iv(int location, int count, void* value) => _Uniform1iv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1iv(int location, int count, IntPtr value) => _Uniform1iv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1ivARB(int location, int count, int[] value) => _Uniform1ivARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1ivARB(int location, int count, void* value) => _Uniform1ivARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1ivARB(int location, int count, IntPtr value) => _Uniform1ivARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1ui(int location, uint v0) => _Uniform1ui(location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1ui64ARB(int location, UInt64 x) => _Uniform1ui64ARB(location, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1ui64NV(int location, UInt64 x) => _Uniform1ui64NV(location, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1ui64vARB(int location, int count, UInt64[] value) => _Uniform1ui64vARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1ui64vARB(int location, int count, void* value) => _Uniform1ui64vARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1ui64vARB(int location, int count, IntPtr value) => _Uniform1ui64vARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1ui64vNV(int location, int count, UInt64[] value) => _Uniform1ui64vNV(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1ui64vNV(int location, int count, void* value) => _Uniform1ui64vNV_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1ui64vNV(int location, int count, IntPtr value) => _Uniform1ui64vNV_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1uiEXT(int location, uint v0) => _Uniform1uiEXT(location, v0); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1uiv(int location, int count, uint[] value) => _Uniform1uiv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1uiv(int location, int count, void* value) => _Uniform1uiv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1uiv(int location, int count, IntPtr value) => _Uniform1uiv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1uivEXT(int location, int count, uint[] value) => _Uniform1uivEXT(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1uivEXT(int location, int count, void* value) => _Uniform1uivEXT_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform1uivEXT(int location, int count, IntPtr value) => _Uniform1uivEXT_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2d(int location, double x, double y) => _Uniform2d(location, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2dv(int location, int count, double[] value) => _Uniform2dv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2dv(int location, int count, void* value) => _Uniform2dv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2dv(int location, int count, IntPtr value) => _Uniform2dv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2f(int location, float v0, float v1) => _Uniform2f(location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2fARB(int location, float v0, float v1) => _Uniform2fARB(location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2fv(int location, int count, float[] value) => _Uniform2fv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2fv(int location, int count, void* value) => _Uniform2fv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2fv(int location, int count, IntPtr value) => _Uniform2fv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2fvARB(int location, int count, float[] value) => _Uniform2fvARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2fvARB(int location, int count, void* value) => _Uniform2fvARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2fvARB(int location, int count, IntPtr value) => _Uniform2fvARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2i(int location, int v0, int v1) => _Uniform2i(location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2i64ARB(int location, Int64 x, Int64 y) => _Uniform2i64ARB(location, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2i64NV(int location, Int64 x, Int64 y) => _Uniform2i64NV(location, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2i64vARB(int location, int count, Int64[] value) => _Uniform2i64vARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2i64vARB(int location, int count, void* value) => _Uniform2i64vARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2i64vARB(int location, int count, IntPtr value) => _Uniform2i64vARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2i64vNV(int location, int count, Int64[] value) => _Uniform2i64vNV(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2i64vNV(int location, int count, void* value) => _Uniform2i64vNV_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2i64vNV(int location, int count, IntPtr value) => _Uniform2i64vNV_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2iARB(int location, int v0, int v1) => _Uniform2iARB(location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2iv(int location, int count, int[] value) => _Uniform2iv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2iv(int location, int count, void* value) => _Uniform2iv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2iv(int location, int count, IntPtr value) => _Uniform2iv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2ivARB(int location, int count, int[] value) => _Uniform2ivARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2ivARB(int location, int count, void* value) => _Uniform2ivARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2ivARB(int location, int count, IntPtr value) => _Uniform2ivARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2ui(int location, uint v0, uint v1) => _Uniform2ui(location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2ui64ARB(int location, UInt64 x, UInt64 y) => _Uniform2ui64ARB(location, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2ui64NV(int location, UInt64 x, UInt64 y) => _Uniform2ui64NV(location, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2ui64vARB(int location, int count, UInt64[] value) => _Uniform2ui64vARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2ui64vARB(int location, int count, void* value) => _Uniform2ui64vARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2ui64vARB(int location, int count, IntPtr value) => _Uniform2ui64vARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2ui64vNV(int location, int count, UInt64[] value) => _Uniform2ui64vNV(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2ui64vNV(int location, int count, void* value) => _Uniform2ui64vNV_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2ui64vNV(int location, int count, IntPtr value) => _Uniform2ui64vNV_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2uiEXT(int location, uint v0, uint v1) => _Uniform2uiEXT(location, v0, v1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2uiv(int location, int count, uint[] value) => _Uniform2uiv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2uiv(int location, int count, void* value) => _Uniform2uiv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2uiv(int location, int count, IntPtr value) => _Uniform2uiv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2uivEXT(int location, int count, uint[] value) => _Uniform2uivEXT(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2uivEXT(int location, int count, void* value) => _Uniform2uivEXT_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform2uivEXT(int location, int count, IntPtr value) => _Uniform2uivEXT_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3d(int location, double x, double y, double z) => _Uniform3d(location, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3dv(int location, int count, double[] value) => _Uniform3dv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3dv(int location, int count, void* value) => _Uniform3dv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3dv(int location, int count, IntPtr value) => _Uniform3dv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3f(int location, float v0, float v1, float v2) => _Uniform3f(location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3fARB(int location, float v0, float v1, float v2) => _Uniform3fARB(location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3fv(int location, int count, float[] value) => _Uniform3fv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3fv(int location, int count, void* value) => _Uniform3fv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3fv(int location, int count, IntPtr value) => _Uniform3fv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3fvARB(int location, int count, float[] value) => _Uniform3fvARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3fvARB(int location, int count, void* value) => _Uniform3fvARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3fvARB(int location, int count, IntPtr value) => _Uniform3fvARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3i(int location, int v0, int v1, int v2) => _Uniform3i(location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3i64ARB(int location, Int64 x, Int64 y, Int64 z) => _Uniform3i64ARB(location, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3i64NV(int location, Int64 x, Int64 y, Int64 z) => _Uniform3i64NV(location, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3i64vARB(int location, int count, Int64[] value) => _Uniform3i64vARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3i64vARB(int location, int count, void* value) => _Uniform3i64vARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3i64vARB(int location, int count, IntPtr value) => _Uniform3i64vARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3i64vNV(int location, int count, Int64[] value) => _Uniform3i64vNV(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3i64vNV(int location, int count, void* value) => _Uniform3i64vNV_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3i64vNV(int location, int count, IntPtr value) => _Uniform3i64vNV_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3iARB(int location, int v0, int v1, int v2) => _Uniform3iARB(location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3iv(int location, int count, int[] value) => _Uniform3iv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3iv(int location, int count, void* value) => _Uniform3iv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3iv(int location, int count, IntPtr value) => _Uniform3iv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3ivARB(int location, int count, int[] value) => _Uniform3ivARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3ivARB(int location, int count, void* value) => _Uniform3ivARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3ivARB(int location, int count, IntPtr value) => _Uniform3ivARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3ui(int location, uint v0, uint v1, uint v2) => _Uniform3ui(location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3ui64ARB(int location, UInt64 x, UInt64 y, UInt64 z) => _Uniform3ui64ARB(location, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3ui64NV(int location, UInt64 x, UInt64 y, UInt64 z) => _Uniform3ui64NV(location, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3ui64vARB(int location, int count, UInt64[] value) => _Uniform3ui64vARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3ui64vARB(int location, int count, void* value) => _Uniform3ui64vARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3ui64vARB(int location, int count, IntPtr value) => _Uniform3ui64vARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3ui64vNV(int location, int count, UInt64[] value) => _Uniform3ui64vNV(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3ui64vNV(int location, int count, void* value) => _Uniform3ui64vNV_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3ui64vNV(int location, int count, IntPtr value) => _Uniform3ui64vNV_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3uiEXT(int location, uint v0, uint v1, uint v2) => _Uniform3uiEXT(location, v0, v1, v2); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3uiv(int location, int count, uint[] value) => _Uniform3uiv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3uiv(int location, int count, void* value) => _Uniform3uiv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3uiv(int location, int count, IntPtr value) => _Uniform3uiv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3uivEXT(int location, int count, uint[] value) => _Uniform3uivEXT(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3uivEXT(int location, int count, void* value) => _Uniform3uivEXT_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform3uivEXT(int location, int count, IntPtr value) => _Uniform3uivEXT_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4d(int location, double x, double y, double z, double w) => _Uniform4d(location, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4dv(int location, int count, double[] value) => _Uniform4dv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4dv(int location, int count, void* value) => _Uniform4dv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4dv(int location, int count, IntPtr value) => _Uniform4dv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4f(int location, float v0, float v1, float v2, float v3) => _Uniform4f(location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4fARB(int location, float v0, float v1, float v2, float v3) => _Uniform4fARB(location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4fv(int location, int count, float[] value) => _Uniform4fv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4fv(int location, int count, void* value) => _Uniform4fv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4fv(int location, int count, IntPtr value) => _Uniform4fv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4fvARB(int location, int count, float[] value) => _Uniform4fvARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4fvARB(int location, int count, void* value) => _Uniform4fvARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4fvARB(int location, int count, IntPtr value) => _Uniform4fvARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4i(int location, int v0, int v1, int v2, int v3) => _Uniform4i(location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4i64ARB(int location, Int64 x, Int64 y, Int64 z, Int64 w) => _Uniform4i64ARB(location, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4i64NV(int location, Int64 x, Int64 y, Int64 z, Int64 w) => _Uniform4i64NV(location, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4i64vARB(int location, int count, Int64[] value) => _Uniform4i64vARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4i64vARB(int location, int count, void* value) => _Uniform4i64vARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4i64vARB(int location, int count, IntPtr value) => _Uniform4i64vARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4i64vNV(int location, int count, Int64[] value) => _Uniform4i64vNV(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4i64vNV(int location, int count, void* value) => _Uniform4i64vNV_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4i64vNV(int location, int count, IntPtr value) => _Uniform4i64vNV_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4iARB(int location, int v0, int v1, int v2, int v3) => _Uniform4iARB(location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4iv(int location, int count, int[] value) => _Uniform4iv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4iv(int location, int count, void* value) => _Uniform4iv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4iv(int location, int count, IntPtr value) => _Uniform4iv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4ivARB(int location, int count, int[] value) => _Uniform4ivARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4ivARB(int location, int count, void* value) => _Uniform4ivARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4ivARB(int location, int count, IntPtr value) => _Uniform4ivARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4ui(int location, uint v0, uint v1, uint v2, uint v3) => _Uniform4ui(location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4ui64ARB(int location, UInt64 x, UInt64 y, UInt64 z, UInt64 w) => _Uniform4ui64ARB(location, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4ui64NV(int location, UInt64 x, UInt64 y, UInt64 z, UInt64 w) => _Uniform4ui64NV(location, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4ui64vARB(int location, int count, UInt64[] value) => _Uniform4ui64vARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4ui64vARB(int location, int count, void* value) => _Uniform4ui64vARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4ui64vARB(int location, int count, IntPtr value) => _Uniform4ui64vARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4ui64vNV(int location, int count, UInt64[] value) => _Uniform4ui64vNV(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4ui64vNV(int location, int count, void* value) => _Uniform4ui64vNV_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4ui64vNV(int location, int count, IntPtr value) => _Uniform4ui64vNV_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4uiEXT(int location, uint v0, uint v1, uint v2, uint v3) => _Uniform4uiEXT(location, v0, v1, v2, v3); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4uiv(int location, int count, uint[] value) => _Uniform4uiv(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4uiv(int location, int count, void* value) => _Uniform4uiv_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4uiv(int location, int count, IntPtr value) => _Uniform4uiv_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4uivEXT(int location, int count, uint[] value) => _Uniform4uivEXT(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4uivEXT(int location, int count, void* value) => _Uniform4uivEXT_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniform4uivEXT(int location, int count, IntPtr value) => _Uniform4uivEXT_intptr(location, count, value); + + // --- + + /// + /// Binding points for active uniform blocks are assigned using glUniformBlockBinding. Each of a program's active uniform blocks has a corresponding uniform buffer binding point. program is the name of a program object for which the command glLinkProgram has been issued in the past. + /// If successful, glUniformBlockBinding specifies that program will use the data store of the buffer object bound to the binding point uniformBlockBinding to extract the values of the uniforms in the uniform block identified by uniformBlockIndex. + /// When a program object is linked or re-linked, the uniform buffer object binding point assigned to each of its active uniform blocks is reset to zero. + /// + /// The name of a program object containing the active uniform block whose binding to assign. + /// The index of the active uniform block within program whose binding to assign. + /// Specifies the binding point to which to bind the uniform block with index uniformBlockIndex within program. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformBlockBinding(uint program, uint uniformBlockIndex, uint uniformBlockBinding) => _UniformBlockBinding(program, uniformBlockIndex, uniformBlockBinding); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformBufferEXT(uint program, int location, uint buffer) => _UniformBufferEXT(program, location, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformHandleui64ARB(int location, UInt64 value) => _UniformHandleui64ARB(location, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformHandleui64IMG(int location, UInt64 value) => _UniformHandleui64IMG(location, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformHandleui64NV(int location, UInt64 value) => _UniformHandleui64NV(location, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformHandleui64vARB(int location, int count, UInt64[] value) => _UniformHandleui64vARB(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformHandleui64vARB(int location, int count, void* value) => _UniformHandleui64vARB_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformHandleui64vARB(int location, int count, IntPtr value) => _UniformHandleui64vARB_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformHandleui64vIMG(int location, int count, UInt64[] value) => _UniformHandleui64vIMG(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformHandleui64vIMG(int location, int count, void* value) => _UniformHandleui64vIMG_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformHandleui64vIMG(int location, int count, IntPtr value) => _UniformHandleui64vIMG_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformHandleui64vNV(int location, int count, UInt64[] value) => _UniformHandleui64vNV(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformHandleui64vNV(int location, int count, void* value) => _UniformHandleui64vNV_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformHandleui64vNV(int location, int count, IntPtr value) => _UniformHandleui64vNV_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2dv(int location, int count, bool transpose, double[] value) => _UniformMatrix2dv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2dv(int location, int count, bool transpose, void* value) => _UniformMatrix2dv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2dv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix2dv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2fv(int location, int count, bool transpose, float[] value) => _UniformMatrix2fv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2fv(int location, int count, bool transpose, void* value) => _UniformMatrix2fv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2fv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix2fv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2fvARB(int location, int count, bool transpose, float[] value) => _UniformMatrix2fvARB(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2fvARB(int location, int count, bool transpose, void* value) => _UniformMatrix2fvARB_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2fvARB(int location, int count, bool transpose, IntPtr value) => _UniformMatrix2fvARB_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x3dv(int location, int count, bool transpose, double[] value) => _UniformMatrix2x3dv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x3dv(int location, int count, bool transpose, void* value) => _UniformMatrix2x3dv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x3dv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix2x3dv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x3fv(int location, int count, bool transpose, float[] value) => _UniformMatrix2x3fv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x3fv(int location, int count, bool transpose, void* value) => _UniformMatrix2x3fv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x3fv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix2x3fv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x3fvNV(int location, int count, bool transpose, float[] value) => _UniformMatrix2x3fvNV(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x3fvNV(int location, int count, bool transpose, void* value) => _UniformMatrix2x3fvNV_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x3fvNV(int location, int count, bool transpose, IntPtr value) => _UniformMatrix2x3fvNV_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x4dv(int location, int count, bool transpose, double[] value) => _UniformMatrix2x4dv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x4dv(int location, int count, bool transpose, void* value) => _UniformMatrix2x4dv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x4dv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix2x4dv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x4fv(int location, int count, bool transpose, float[] value) => _UniformMatrix2x4fv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x4fv(int location, int count, bool transpose, void* value) => _UniformMatrix2x4fv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x4fv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix2x4fv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x4fvNV(int location, int count, bool transpose, float[] value) => _UniformMatrix2x4fvNV(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x4fvNV(int location, int count, bool transpose, void* value) => _UniformMatrix2x4fvNV_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix2x4fvNV(int location, int count, bool transpose, IntPtr value) => _UniformMatrix2x4fvNV_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3dv(int location, int count, bool transpose, double[] value) => _UniformMatrix3dv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3dv(int location, int count, bool transpose, void* value) => _UniformMatrix3dv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3dv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix3dv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3fv(int location, int count, bool transpose, float[] value) => _UniformMatrix3fv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3fv(int location, int count, bool transpose, void* value) => _UniformMatrix3fv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3fv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix3fv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3fvARB(int location, int count, bool transpose, float[] value) => _UniformMatrix3fvARB(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3fvARB(int location, int count, bool transpose, void* value) => _UniformMatrix3fvARB_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3fvARB(int location, int count, bool transpose, IntPtr value) => _UniformMatrix3fvARB_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x2dv(int location, int count, bool transpose, double[] value) => _UniformMatrix3x2dv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x2dv(int location, int count, bool transpose, void* value) => _UniformMatrix3x2dv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x2dv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix3x2dv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x2fv(int location, int count, bool transpose, float[] value) => _UniformMatrix3x2fv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x2fv(int location, int count, bool transpose, void* value) => _UniformMatrix3x2fv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x2fv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix3x2fv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x2fvNV(int location, int count, bool transpose, float[] value) => _UniformMatrix3x2fvNV(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x2fvNV(int location, int count, bool transpose, void* value) => _UniformMatrix3x2fvNV_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x2fvNV(int location, int count, bool transpose, IntPtr value) => _UniformMatrix3x2fvNV_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x4dv(int location, int count, bool transpose, double[] value) => _UniformMatrix3x4dv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x4dv(int location, int count, bool transpose, void* value) => _UniformMatrix3x4dv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x4dv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix3x4dv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x4fv(int location, int count, bool transpose, float[] value) => _UniformMatrix3x4fv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x4fv(int location, int count, bool transpose, void* value) => _UniformMatrix3x4fv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x4fv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix3x4fv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x4fvNV(int location, int count, bool transpose, float[] value) => _UniformMatrix3x4fvNV(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x4fvNV(int location, int count, bool transpose, void* value) => _UniformMatrix3x4fvNV_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix3x4fvNV(int location, int count, bool transpose, IntPtr value) => _UniformMatrix3x4fvNV_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4dv(int location, int count, bool transpose, double[] value) => _UniformMatrix4dv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4dv(int location, int count, bool transpose, void* value) => _UniformMatrix4dv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4dv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix4dv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4fv(int location, int count, bool transpose, float[] value) => _UniformMatrix4fv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4fv(int location, int count, bool transpose, void* value) => _UniformMatrix4fv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4fv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix4fv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4fvARB(int location, int count, bool transpose, float[] value) => _UniformMatrix4fvARB(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4fvARB(int location, int count, bool transpose, void* value) => _UniformMatrix4fvARB_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4fvARB(int location, int count, bool transpose, IntPtr value) => _UniformMatrix4fvARB_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x2dv(int location, int count, bool transpose, double[] value) => _UniformMatrix4x2dv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x2dv(int location, int count, bool transpose, void* value) => _UniformMatrix4x2dv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x2dv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix4x2dv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x2fv(int location, int count, bool transpose, float[] value) => _UniformMatrix4x2fv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x2fv(int location, int count, bool transpose, void* value) => _UniformMatrix4x2fv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x2fv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix4x2fv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x2fvNV(int location, int count, bool transpose, float[] value) => _UniformMatrix4x2fvNV(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x2fvNV(int location, int count, bool transpose, void* value) => _UniformMatrix4x2fvNV_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x2fvNV(int location, int count, bool transpose, IntPtr value) => _UniformMatrix4x2fvNV_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x3dv(int location, int count, bool transpose, double[] value) => _UniformMatrix4x3dv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x3dv(int location, int count, bool transpose, void* value) => _UniformMatrix4x3dv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x3dv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix4x3dv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x3fv(int location, int count, bool transpose, float[] value) => _UniformMatrix4x3fv(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x3fv(int location, int count, bool transpose, void* value) => _UniformMatrix4x3fv_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x3fv(int location, int count, bool transpose, IntPtr value) => _UniformMatrix4x3fv_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x3fvNV(int location, int count, bool transpose, float[] value) => _UniformMatrix4x3fvNV(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x3fvNV(int location, int count, bool transpose, void* value) => _UniformMatrix4x3fvNV_ptr(location, count, transpose, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformMatrix4x3fvNV(int location, int count, bool transpose, IntPtr value) => _UniformMatrix4x3fvNV_intptr(location, count, transpose, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformSubroutinesuiv(ShaderType shadertype, int count, uint[] indices) => _UniformSubroutinesuiv(shadertype, count, indices); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformSubroutinesuiv(ShaderType shadertype, int count, void* indices) => _UniformSubroutinesuiv_ptr(shadertype, count, indices); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UniformSubroutinesuiv(ShaderType shadertype, int count, IntPtr indices) => _UniformSubroutinesuiv_intptr(shadertype, count, indices); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniformui64NV(int location, UInt64 value) => _Uniformui64NV(location, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniformui64vNV(int location, int count, UInt64[] value) => _Uniformui64vNV(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniformui64vNV(int location, int count, void* value) => _Uniformui64vNV_ptr(location, count, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Uniformui64vNV(int location, int count, IntPtr value) => _Uniformui64vNV_intptr(location, count, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UnlockArraysEXT() => _UnlockArraysEXT(); + + // --- + + /// + /// glUnmapBuffer and glUnmapNamedBuffer unmap (release) any mapping of a specified buffer object into the client's address space (see glMapBufferRange and glMapBuffer). + /// If a mapping is not unmapped before the corresponding buffer object's data store is used by the GL, an error will be generated by any GL command that attempts to dereference the buffer object's data store, unless the buffer was successfully mapped with GL_MAP_PERSISTENT_BIT (see glMapBufferRange). When a data store is unmapped, the mapped pointer becomes invalid. + /// glUnmapBuffer returns GL_TRUE unless the data store contents have become corrupt during the time the data store was mapped. This can occur for system-specific reasons that affect the availability of graphics memory, such as screen mode changes. In such situations, GL_FALSE is returned and the data store contents are undefined. An application must detect this rare condition and reinitialize the data store. + /// A buffer object's mapped data store is automatically unmapped when the buffer object is deleted or its data store is recreated with glBufferData). + /// + /// Specifies the target to which the buffer object is bound for glUnmapBuffer, which must be one of the buffer binding targets in the following table: + /// Specifies the name of the buffer object for glUnmapNamedBuffer. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool UnmapBuffer(BufferTargetARB target) => _UnmapBuffer(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool UnmapBufferARB(BufferTargetARB target) => _UnmapBufferARB(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool UnmapBufferOES(int target) => _UnmapBufferOES(target); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool UnmapNamedBuffer(uint buffer) => _UnmapNamedBuffer(buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool UnmapNamedBufferEXT(uint buffer) => _UnmapNamedBufferEXT(buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UnmapObjectBufferATI(uint buffer) => _UnmapObjectBufferATI(buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UnmapTexture2DINTEL(uint texture, int level) => _UnmapTexture2DINTEL(texture, level); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UpdateObjectBufferATI(uint buffer, uint offset, int size, IntPtr pointer, PreserveModeATI preserve) => _UpdateObjectBufferATI(buffer, offset, size, pointer, preserve); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UploadGpuMaskNVX(int mask) => _UploadGpuMaskNVX(mask); + + // --- + + /// + /// glUseProgram installs the program object specified by program as part of current rendering state. One or more executables are created in a program object by successfully attaching shader objects to it with glAttachShader, successfully compiling the shader objects with glCompileShader, and successfully linking the program object with glLinkProgram. + /// A program object will contain an executable that will run on the vertex processor if it contains one or more shader objects of type GL_VERTEX_SHADER that have been successfully compiled and linked. A program object will contain an executable that will run on the geometry processor if it contains one or more shader objects of type GL_GEOMETRY_SHADER that have been successfully compiled and linked. Similarly, a program object will contain an executable that will run on the fragment processor if it contains one or more shader objects of type GL_FRAGMENT_SHADER that have been successfully compiled and linked. + /// While a program object is in use, applications are free to modify attached shader objects, compile attached shader objects, attach additional shader objects, and detach or delete shader objects. None of these operations will affect the executables that are part of the current state. However, relinking the program object that is currently in use will install the program object as part of the current rendering state if the link operation was successful (see glLinkProgram ). If the program object currently in use is relinked unsuccessfully, its link status will be set to GL_FALSE, but the executables and associated state will remain part of the current state until a subsequent call to glUseProgram removes it from use. After it is removed from use, it cannot be made part of current state until it has been successfully relinked. + /// If program is zero, then the current rendering state refers to an invalid program object and the results of shader execution are undefined. However, this is not an error. + /// If program does not contain shader objects of type GL_FRAGMENT_SHADER, an executable will be installed on the vertex, and possibly geometry processors, but the results of fragment shader execution will be undefined. + /// + /// Specifies the handle of the program object whose executables are to be used as part of current rendering state. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UseProgram(uint program) => _UseProgram(program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UseProgramObjectARB(int programObj) => _UseProgramObjectARB(programObj); + + // --- + + /// + /// glUseProgramStages binds executables from a program object associated with a specified set of shader stages to the program pipeline object given by pipeline. pipeline specifies the program pipeline object to which to bind the executables. stages contains a logical combination of bits indicating the shader stages to use within program with the program pipeline object pipeline. stages must be a logical combination of GL_VERTEX_SHADER_BIT, GL_TESS_CONTROL_SHADER_BIT, GL_TESS_EVALUATION_SHADER_BIT, GL_GEOMETRY_SHADER_BIT, GL_FRAGMENT_SHADER_BIT and GL_COMPUTE_SHADER_BIT. Additionally, the special value GL_ALL_SHADER_BITS may be specified to indicate that all executables contained in program should be installed in pipeline. + /// If program refers to a program object with a valid shader attached for an indicated shader stage, glUseProgramStages installs the executable code for that stage in the indicated program pipeline object pipeline. If program is zero, or refers to a program object with no valid shader executable for a given stage, it is as if the pipeline object has no programmable stage configured for the indicated shader stages. If stages contains bits other than those listed above, and is not equal to GL_ALL_SHADER_BITS, an error is generated. + /// + /// Specifies the program pipeline object to which to bind stages from program. + /// Specifies a set of program stages to bind to the program pipeline object. + /// Specifies the program object containing the shader executables to use in pipeline. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UseProgramStages(uint pipeline, int stages, uint program) => _UseProgramStages(pipeline, stages, program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UseProgramStagesEXT(uint pipeline, int stages, uint program) => _UseProgramStagesEXT(pipeline, stages, program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void UseShaderProgramEXT(int type, uint program) => _UseShaderProgramEXT(type, program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUFiniNV() => _VDPAUFiniNV(); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUGetSurfaceivNV(IntPtr surface, int pname, int count, int[] length, int[] values) => _VDPAUGetSurfaceivNV(surface, pname, count, length, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUGetSurfaceivNV(IntPtr surface, int pname, int count, void* length, void* values) => _VDPAUGetSurfaceivNV_ptr(surface, pname, count, length, values); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUGetSurfaceivNV(IntPtr surface, int pname, int count, IntPtr length, IntPtr values) => _VDPAUGetSurfaceivNV_intptr(surface, pname, count, length, values); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUInitNV(IntPtr vdpDevice, IntPtr getProcAddress) => _VDPAUInitNV(vdpDevice, getProcAddress); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public bool VDPAUIsSurfaceNV(IntPtr surface) => _VDPAUIsSurfaceNV(surface); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUMapSurfacesNV(int numSurfaces, IntPtr[] surfaces) => _VDPAUMapSurfacesNV(numSurfaces, surfaces); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUMapSurfacesNV(int numSurfaces, void* surfaces) => _VDPAUMapSurfacesNV_ptr(numSurfaces, surfaces); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUMapSurfacesNV(int numSurfaces, IntPtr surfaces) => _VDPAUMapSurfacesNV_intptr(numSurfaces, surfaces); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public IntPtr VDPAURegisterOutputSurfaceNV(IntPtr vdpSurface, int target, int numTextureNames, uint[] textureNames) => _VDPAURegisterOutputSurfaceNV(vdpSurface, target, numTextureNames, textureNames); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public IntPtr VDPAURegisterOutputSurfaceNV(IntPtr vdpSurface, int target, int numTextureNames, void* textureNames) => _VDPAURegisterOutputSurfaceNV_ptr(vdpSurface, target, numTextureNames, textureNames); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public IntPtr VDPAURegisterOutputSurfaceNV(IntPtr vdpSurface, int target, int numTextureNames, IntPtr textureNames) => _VDPAURegisterOutputSurfaceNV_intptr(vdpSurface, target, numTextureNames, textureNames); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public IntPtr VDPAURegisterVideoSurfaceNV(IntPtr vdpSurface, int target, int numTextureNames, uint[] textureNames) => _VDPAURegisterVideoSurfaceNV(vdpSurface, target, numTextureNames, textureNames); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public IntPtr VDPAURegisterVideoSurfaceNV(IntPtr vdpSurface, int target, int numTextureNames, void* textureNames) => _VDPAURegisterVideoSurfaceNV_ptr(vdpSurface, target, numTextureNames, textureNames); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public IntPtr VDPAURegisterVideoSurfaceNV(IntPtr vdpSurface, int target, int numTextureNames, IntPtr textureNames) => _VDPAURegisterVideoSurfaceNV_intptr(vdpSurface, target, numTextureNames, textureNames); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public IntPtr VDPAURegisterVideoSurfaceWithPictureStructureNV(IntPtr vdpSurface, int target, int numTextureNames, uint[] textureNames, bool isFrameStructure) => _VDPAURegisterVideoSurfaceWithPictureStructureNV(vdpSurface, target, numTextureNames, textureNames, isFrameStructure); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public IntPtr VDPAURegisterVideoSurfaceWithPictureStructureNV(IntPtr vdpSurface, int target, int numTextureNames, void* textureNames, bool isFrameStructure) => _VDPAURegisterVideoSurfaceWithPictureStructureNV_ptr(vdpSurface, target, numTextureNames, textureNames, isFrameStructure); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public IntPtr VDPAURegisterVideoSurfaceWithPictureStructureNV(IntPtr vdpSurface, int target, int numTextureNames, IntPtr textureNames, bool isFrameStructure) => _VDPAURegisterVideoSurfaceWithPictureStructureNV_intptr(vdpSurface, target, numTextureNames, textureNames, isFrameStructure); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUSurfaceAccessNV(IntPtr surface, int access) => _VDPAUSurfaceAccessNV(surface, access); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUUnmapSurfacesNV(int numSurface, IntPtr[] surfaces) => _VDPAUUnmapSurfacesNV(numSurface, surfaces); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUUnmapSurfacesNV(int numSurface, void* surfaces) => _VDPAUUnmapSurfacesNV_ptr(numSurface, surfaces); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUUnmapSurfacesNV(int numSurface, IntPtr surfaces) => _VDPAUUnmapSurfacesNV_intptr(numSurface, surfaces); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VDPAUUnregisterSurfaceNV(IntPtr surface) => _VDPAUUnregisterSurfaceNV(surface); + + // --- + + /// + /// glValidateProgram checks to see whether the executables contained in program can execute given the current OpenGL state. The information generated by the validation process will be stored in program's information log. The validation information may consist of an empty string, or it may be a string containing information about how the current program object interacts with the rest of current OpenGL state. This provides a way for OpenGL implementers to convey more information about why the current program is inefficient, suboptimal, failing to execute, and so on. + /// The status of the validation operation will be stored as part of the program object's state. This value will be set to GL_TRUE if the validation succeeded, and GL_FALSE otherwise. It can be queried by calling glGetProgram with arguments program and GL_VALIDATE_STATUS. If validation is successful, program is guaranteed to execute given the current state. Otherwise, program is guaranteed to not execute. + /// This function is typically useful only during application development. The informational string stored in the information log is completely implementation dependent; therefore, an application should not expect different OpenGL implementations to produce identical information strings. + /// + /// Specifies the handle of the program object to be validated. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ValidateProgram(uint program) => _ValidateProgram(program); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ValidateProgramARB(int programObj) => _ValidateProgramARB(programObj); + + // --- + + /// + /// glValidateProgramPipeline instructs the implementation to validate the shader executables contained in pipeline against the current GL state. The implementation may use this as an opportunity to perform any internal shader modifications that may be required to ensure correct operation of the installed shaders given the current GL state. + /// After a program pipeline has been validated, its validation status is set to GL_TRUE. The validation status of a program pipeline object may be queried by calling glGetProgramPipeline with parameter GL_VALIDATE_STATUS. + /// If pipeline is a name previously returned from a call to glGenProgramPipelines but that has not yet been bound by a call to glBindProgramPipeline, a new program pipeline object is created with name pipeline and the default state vector. + /// + /// Specifies the name of a program pipeline object to validate. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ValidateProgramPipeline(uint pipeline) => _ValidateProgramPipeline(pipeline); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ValidateProgramPipelineEXT(uint pipeline) => _ValidateProgramPipelineEXT(pipeline); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantArrayObjectATI(uint id, ScalarType type, int stride, uint buffer, uint offset) => _VariantArrayObjectATI(id, type, stride, buffer, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantPointerEXT(uint id, ScalarType type, uint stride, IntPtr addr) => _VariantPointerEXT(id, type, stride, addr); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantbvEXT(uint id, sbyte[] addr) => _VariantbvEXT(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantbvEXT(uint id, void* addr) => _VariantbvEXT_ptr(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantbvEXT(uint id, IntPtr addr) => _VariantbvEXT_intptr(id, addr); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantdvEXT(uint id, double[] addr) => _VariantdvEXT(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantdvEXT(uint id, void* addr) => _VariantdvEXT_ptr(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantdvEXT(uint id, IntPtr addr) => _VariantdvEXT_intptr(id, addr); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantfvEXT(uint id, float[] addr) => _VariantfvEXT(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantfvEXT(uint id, void* addr) => _VariantfvEXT_ptr(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantfvEXT(uint id, IntPtr addr) => _VariantfvEXT_intptr(id, addr); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantivEXT(uint id, int[] addr) => _VariantivEXT(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantivEXT(uint id, void* addr) => _VariantivEXT_ptr(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantivEXT(uint id, IntPtr addr) => _VariantivEXT_intptr(id, addr); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantsvEXT(uint id, short[] addr) => _VariantsvEXT(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantsvEXT(uint id, void* addr) => _VariantsvEXT_ptr(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantsvEXT(uint id, IntPtr addr) => _VariantsvEXT_intptr(id, addr); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantubvEXT(uint id, byte[] addr) => _VariantubvEXT(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantubvEXT(uint id, void* addr) => _VariantubvEXT_ptr(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantubvEXT(uint id, IntPtr addr) => _VariantubvEXT_intptr(id, addr); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantuivEXT(uint id, uint[] addr) => _VariantuivEXT(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantuivEXT(uint id, void* addr) => _VariantuivEXT_ptr(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantuivEXT(uint id, IntPtr addr) => _VariantuivEXT_intptr(id, addr); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantusvEXT(uint id, ushort[] addr) => _VariantusvEXT(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantusvEXT(uint id, void* addr) => _VariantusvEXT_ptr(id, addr); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VariantusvEXT(uint id, IntPtr addr) => _VariantusvEXT_intptr(id, addr); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2bOES(sbyte x, sbyte y) => _Vertex2bOES(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2bvOES(sbyte[] coords) => _Vertex2bvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2bvOES(void* coords) => _Vertex2bvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2bvOES(IntPtr coords) => _Vertex2bvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2d(double x, double y) => _Vertex2d(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2dv(double[] v) => _Vertex2dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2dv(void* v) => _Vertex2dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2dv(IntPtr v) => _Vertex2dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2f(float x, float y) => _Vertex2f(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2fv(float[] v) => _Vertex2fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2fv(void* v) => _Vertex2fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2fv(IntPtr v) => _Vertex2fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2hNV(float x, float y) => _Vertex2hNV(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2hvNV(float[] v) => _Vertex2hvNV(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2hvNV(void* v) => _Vertex2hvNV_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2hvNV(IntPtr v) => _Vertex2hvNV_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2i(int x, int y) => _Vertex2i(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2iv(int[] v) => _Vertex2iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2iv(void* v) => _Vertex2iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2iv(IntPtr v) => _Vertex2iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2s(short x, short y) => _Vertex2s(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2sv(short[] v) => _Vertex2sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2sv(void* v) => _Vertex2sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2sv(IntPtr v) => _Vertex2sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2xOES(float x) => _Vertex2xOES(x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2xvOES(float[] coords) => _Vertex2xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2xvOES(void* coords) => _Vertex2xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex2xvOES(IntPtr coords) => _Vertex2xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3bOES(sbyte x, sbyte y, sbyte z) => _Vertex3bOES(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3bvOES(sbyte[] coords) => _Vertex3bvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3bvOES(void* coords) => _Vertex3bvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3bvOES(IntPtr coords) => _Vertex3bvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3d(double x, double y, double z) => _Vertex3d(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3dv(double[] v) => _Vertex3dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3dv(void* v) => _Vertex3dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3dv(IntPtr v) => _Vertex3dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3f(float x, float y, float z) => _Vertex3f(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3fv(float[] v) => _Vertex3fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3fv(void* v) => _Vertex3fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3fv(IntPtr v) => _Vertex3fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3hNV(float x, float y, float z) => _Vertex3hNV(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3hvNV(float[] v) => _Vertex3hvNV(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3hvNV(void* v) => _Vertex3hvNV_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3hvNV(IntPtr v) => _Vertex3hvNV_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3i(int x, int y, int z) => _Vertex3i(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3iv(int[] v) => _Vertex3iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3iv(void* v) => _Vertex3iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3iv(IntPtr v) => _Vertex3iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3s(short x, short y, short z) => _Vertex3s(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3sv(short[] v) => _Vertex3sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3sv(void* v) => _Vertex3sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3sv(IntPtr v) => _Vertex3sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3xOES(float x, float y) => _Vertex3xOES(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3xvOES(float[] coords) => _Vertex3xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3xvOES(void* coords) => _Vertex3xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex3xvOES(IntPtr coords) => _Vertex3xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4bOES(sbyte x, sbyte y, sbyte z, sbyte w) => _Vertex4bOES(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4bvOES(sbyte[] coords) => _Vertex4bvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4bvOES(void* coords) => _Vertex4bvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4bvOES(IntPtr coords) => _Vertex4bvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4d(double x, double y, double z, double w) => _Vertex4d(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4dv(double[] v) => _Vertex4dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4dv(void* v) => _Vertex4dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4dv(IntPtr v) => _Vertex4dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4f(float x, float y, float z, float w) => _Vertex4f(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4fv(float[] v) => _Vertex4fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4fv(void* v) => _Vertex4fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4fv(IntPtr v) => _Vertex4fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4hNV(float x, float y, float z, float w) => _Vertex4hNV(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4hvNV(float[] v) => _Vertex4hvNV(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4hvNV(void* v) => _Vertex4hvNV_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4hvNV(IntPtr v) => _Vertex4hvNV_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4i(int x, int y, int z, int w) => _Vertex4i(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4iv(int[] v) => _Vertex4iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4iv(void* v) => _Vertex4iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4iv(IntPtr v) => _Vertex4iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4s(short x, short y, short z, short w) => _Vertex4s(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4sv(short[] v) => _Vertex4sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4sv(void* v) => _Vertex4sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4sv(IntPtr v) => _Vertex4sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4xOES(float x, float y, float z) => _Vertex4xOES(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4xvOES(float[] coords) => _Vertex4xvOES(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4xvOES(void* coords) => _Vertex4xvOES_ptr(coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Vertex4xvOES(IntPtr coords) => _Vertex4xvOES_intptr(coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayAttribBinding(uint vaobj, uint attribindex, uint bindingindex) => _VertexArrayAttribBinding(vaobj, attribindex, bindingindex); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayAttribFormat(uint vaobj, uint attribindex, int size, VertexAttribType type, bool normalized, uint relativeoffset) => _VertexArrayAttribFormat(vaobj, attribindex, size, type, normalized, relativeoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayAttribIFormat(uint vaobj, uint attribindex, int size, VertexAttribIType type, uint relativeoffset) => _VertexArrayAttribIFormat(vaobj, attribindex, size, type, relativeoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayAttribLFormat(uint vaobj, uint attribindex, int size, VertexAttribLType type, uint relativeoffset) => _VertexArrayAttribLFormat(vaobj, attribindex, size, type, relativeoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayBindVertexBufferEXT(uint vaobj, uint bindingindex, uint buffer, IntPtr offset, int stride) => _VertexArrayBindVertexBufferEXT(vaobj, bindingindex, buffer, offset, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayBindingDivisor(uint vaobj, uint bindingindex, uint divisor) => _VertexArrayBindingDivisor(vaobj, bindingindex, divisor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayColorOffsetEXT(uint vaobj, uint buffer, int size, ColorPointerType type, int stride, IntPtr offset) => _VertexArrayColorOffsetEXT(vaobj, buffer, size, type, stride, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayEdgeFlagOffsetEXT(uint vaobj, uint buffer, int stride, IntPtr offset) => _VertexArrayEdgeFlagOffsetEXT(vaobj, buffer, stride, offset); + + // --- + + /// + /// glVertexArrayElementBuffer binds a buffer object with id buffer to the element array buffer bind point of a vertex array object with id vaobj. If buffer is zero, any existing element array buffer binding to vaobj is removed. + /// + /// Specifies the name of the vertex array object. + /// Specifies the name of the buffer object to use for the element array buffer binding. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayElementBuffer(uint vaobj, uint buffer) => _VertexArrayElementBuffer(vaobj, buffer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayFogCoordOffsetEXT(uint vaobj, uint buffer, FogCoordinatePointerType type, int stride, IntPtr offset) => _VertexArrayFogCoordOffsetEXT(vaobj, buffer, type, stride, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayIndexOffsetEXT(uint vaobj, uint buffer, IndexPointerType type, int stride, IntPtr offset) => _VertexArrayIndexOffsetEXT(vaobj, buffer, type, stride, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayMultiTexCoordOffsetEXT(uint vaobj, uint buffer, int texunit, int size, TexCoordPointerType type, int stride, IntPtr offset) => _VertexArrayMultiTexCoordOffsetEXT(vaobj, buffer, texunit, size, type, stride, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayNormalOffsetEXT(uint vaobj, uint buffer, NormalPointerType type, int stride, IntPtr offset) => _VertexArrayNormalOffsetEXT(vaobj, buffer, type, stride, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayParameteriAPPLE(VertexArrayPNameAPPLE pname, int param) => _VertexArrayParameteriAPPLE(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayRangeAPPLE(int length, IntPtr pointer) => _VertexArrayRangeAPPLE(length, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayRangeNV(int length, IntPtr pointer) => _VertexArrayRangeNV(length, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArraySecondaryColorOffsetEXT(uint vaobj, uint buffer, int size, ColorPointerType type, int stride, IntPtr offset) => _VertexArraySecondaryColorOffsetEXT(vaobj, buffer, size, type, stride, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayTexCoordOffsetEXT(uint vaobj, uint buffer, int size, TexCoordPointerType type, int stride, IntPtr offset) => _VertexArrayTexCoordOffsetEXT(vaobj, buffer, size, type, stride, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexAttribBindingEXT(uint vaobj, uint attribindex, uint bindingindex) => _VertexArrayVertexAttribBindingEXT(vaobj, attribindex, bindingindex); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexAttribDivisorEXT(uint vaobj, uint index, uint divisor) => _VertexArrayVertexAttribDivisorEXT(vaobj, index, divisor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexAttribFormatEXT(uint vaobj, uint attribindex, int size, VertexAttribType type, bool normalized, uint relativeoffset) => _VertexArrayVertexAttribFormatEXT(vaobj, attribindex, size, type, normalized, relativeoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexAttribIFormatEXT(uint vaobj, uint attribindex, int size, VertexAttribIType type, uint relativeoffset) => _VertexArrayVertexAttribIFormatEXT(vaobj, attribindex, size, type, relativeoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexAttribIOffsetEXT(uint vaobj, uint buffer, uint index, int size, VertexAttribType type, int stride, IntPtr offset) => _VertexArrayVertexAttribIOffsetEXT(vaobj, buffer, index, size, type, stride, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexAttribLFormatEXT(uint vaobj, uint attribindex, int size, VertexAttribLType type, uint relativeoffset) => _VertexArrayVertexAttribLFormatEXT(vaobj, attribindex, size, type, relativeoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexAttribLOffsetEXT(uint vaobj, uint buffer, uint index, int size, VertexAttribLType type, int stride, IntPtr offset) => _VertexArrayVertexAttribLOffsetEXT(vaobj, buffer, index, size, type, stride, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexAttribOffsetEXT(uint vaobj, uint buffer, uint index, int size, VertexAttribPointerType type, bool normalized, int stride, IntPtr offset) => _VertexArrayVertexAttribOffsetEXT(vaobj, buffer, index, size, type, normalized, stride, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexBindingDivisorEXT(uint vaobj, uint bindingindex, uint divisor) => _VertexArrayVertexBindingDivisorEXT(vaobj, bindingindex, divisor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexBuffer(uint vaobj, uint bindingindex, uint buffer, IntPtr offset, int stride) => _VertexArrayVertexBuffer(vaobj, bindingindex, buffer, offset, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexBuffers(uint vaobj, uint first, int count, uint[] buffers, IntPtr[] offsets, int[] strides) => _VertexArrayVertexBuffers(vaobj, first, count, buffers, offsets, strides); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexBuffers(uint vaobj, uint first, int count, void* buffers, void* offsets, void* strides) => _VertexArrayVertexBuffers_ptr(vaobj, first, count, buffers, offsets, strides); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexBuffers(uint vaobj, uint first, int count, IntPtr buffers, IntPtr offsets, IntPtr strides) => _VertexArrayVertexBuffers_intptr(vaobj, first, count, buffers, offsets, strides); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexArrayVertexOffsetEXT(uint vaobj, uint buffer, int size, VertexPointerType type, int stride, IntPtr offset) => _VertexArrayVertexOffsetEXT(vaobj, buffer, size, type, stride, offset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1d(uint index, double x) => _VertexAttrib1d(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1dARB(uint index, double x) => _VertexAttrib1dARB(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1dNV(uint index, double x) => _VertexAttrib1dNV(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1dv(uint index, double[] v) => _VertexAttrib1dv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1dv(uint index, void* v) => _VertexAttrib1dv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1dv(uint index, IntPtr v) => _VertexAttrib1dv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1dvARB(uint index, double[] v) => _VertexAttrib1dvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1dvARB(uint index, void* v) => _VertexAttrib1dvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1dvARB(uint index, IntPtr v) => _VertexAttrib1dvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1dvNV(uint index, double[] v) => _VertexAttrib1dvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1dvNV(uint index, void* v) => _VertexAttrib1dvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1dvNV(uint index, IntPtr v) => _VertexAttrib1dvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1f(uint index, float x) => _VertexAttrib1f(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1fARB(uint index, float x) => _VertexAttrib1fARB(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1fNV(uint index, float x) => _VertexAttrib1fNV(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1fv(uint index, float[] v) => _VertexAttrib1fv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1fv(uint index, void* v) => _VertexAttrib1fv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1fv(uint index, IntPtr v) => _VertexAttrib1fv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1fvARB(uint index, float[] v) => _VertexAttrib1fvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1fvARB(uint index, void* v) => _VertexAttrib1fvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1fvARB(uint index, IntPtr v) => _VertexAttrib1fvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1fvNV(uint index, float[] v) => _VertexAttrib1fvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1fvNV(uint index, void* v) => _VertexAttrib1fvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1fvNV(uint index, IntPtr v) => _VertexAttrib1fvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1hNV(uint index, float x) => _VertexAttrib1hNV(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1hvNV(uint index, float[] v) => _VertexAttrib1hvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1hvNV(uint index, void* v) => _VertexAttrib1hvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1hvNV(uint index, IntPtr v) => _VertexAttrib1hvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1s(uint index, short x) => _VertexAttrib1s(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1sARB(uint index, short x) => _VertexAttrib1sARB(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1sNV(uint index, short x) => _VertexAttrib1sNV(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1sv(uint index, short[] v) => _VertexAttrib1sv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1sv(uint index, void* v) => _VertexAttrib1sv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1sv(uint index, IntPtr v) => _VertexAttrib1sv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1svARB(uint index, short[] v) => _VertexAttrib1svARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1svARB(uint index, void* v) => _VertexAttrib1svARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1svARB(uint index, IntPtr v) => _VertexAttrib1svARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1svNV(uint index, short[] v) => _VertexAttrib1svNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1svNV(uint index, void* v) => _VertexAttrib1svNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib1svNV(uint index, IntPtr v) => _VertexAttrib1svNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2d(uint index, double x, double y) => _VertexAttrib2d(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2dARB(uint index, double x, double y) => _VertexAttrib2dARB(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2dNV(uint index, double x, double y) => _VertexAttrib2dNV(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2dv(uint index, double[] v) => _VertexAttrib2dv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2dv(uint index, void* v) => _VertexAttrib2dv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2dv(uint index, IntPtr v) => _VertexAttrib2dv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2dvARB(uint index, double[] v) => _VertexAttrib2dvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2dvARB(uint index, void* v) => _VertexAttrib2dvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2dvARB(uint index, IntPtr v) => _VertexAttrib2dvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2dvNV(uint index, double[] v) => _VertexAttrib2dvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2dvNV(uint index, void* v) => _VertexAttrib2dvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2dvNV(uint index, IntPtr v) => _VertexAttrib2dvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2f(uint index, float x, float y) => _VertexAttrib2f(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2fARB(uint index, float x, float y) => _VertexAttrib2fARB(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2fNV(uint index, float x, float y) => _VertexAttrib2fNV(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2fv(uint index, float[] v) => _VertexAttrib2fv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2fv(uint index, void* v) => _VertexAttrib2fv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2fv(uint index, IntPtr v) => _VertexAttrib2fv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2fvARB(uint index, float[] v) => _VertexAttrib2fvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2fvARB(uint index, void* v) => _VertexAttrib2fvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2fvARB(uint index, IntPtr v) => _VertexAttrib2fvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2fvNV(uint index, float[] v) => _VertexAttrib2fvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2fvNV(uint index, void* v) => _VertexAttrib2fvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2fvNV(uint index, IntPtr v) => _VertexAttrib2fvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2hNV(uint index, float x, float y) => _VertexAttrib2hNV(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2hvNV(uint index, float[] v) => _VertexAttrib2hvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2hvNV(uint index, void* v) => _VertexAttrib2hvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2hvNV(uint index, IntPtr v) => _VertexAttrib2hvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2s(uint index, short x, short y) => _VertexAttrib2s(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2sARB(uint index, short x, short y) => _VertexAttrib2sARB(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2sNV(uint index, short x, short y) => _VertexAttrib2sNV(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2sv(uint index, short[] v) => _VertexAttrib2sv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2sv(uint index, void* v) => _VertexAttrib2sv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2sv(uint index, IntPtr v) => _VertexAttrib2sv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2svARB(uint index, short[] v) => _VertexAttrib2svARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2svARB(uint index, void* v) => _VertexAttrib2svARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2svARB(uint index, IntPtr v) => _VertexAttrib2svARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2svNV(uint index, short[] v) => _VertexAttrib2svNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2svNV(uint index, void* v) => _VertexAttrib2svNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib2svNV(uint index, IntPtr v) => _VertexAttrib2svNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3d(uint index, double x, double y, double z) => _VertexAttrib3d(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3dARB(uint index, double x, double y, double z) => _VertexAttrib3dARB(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3dNV(uint index, double x, double y, double z) => _VertexAttrib3dNV(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3dv(uint index, double[] v) => _VertexAttrib3dv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3dv(uint index, void* v) => _VertexAttrib3dv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3dv(uint index, IntPtr v) => _VertexAttrib3dv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3dvARB(uint index, double[] v) => _VertexAttrib3dvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3dvARB(uint index, void* v) => _VertexAttrib3dvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3dvARB(uint index, IntPtr v) => _VertexAttrib3dvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3dvNV(uint index, double[] v) => _VertexAttrib3dvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3dvNV(uint index, void* v) => _VertexAttrib3dvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3dvNV(uint index, IntPtr v) => _VertexAttrib3dvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3f(uint index, float x, float y, float z) => _VertexAttrib3f(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3fARB(uint index, float x, float y, float z) => _VertexAttrib3fARB(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3fNV(uint index, float x, float y, float z) => _VertexAttrib3fNV(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3fv(uint index, float[] v) => _VertexAttrib3fv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3fv(uint index, void* v) => _VertexAttrib3fv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3fv(uint index, IntPtr v) => _VertexAttrib3fv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3fvARB(uint index, float[] v) => _VertexAttrib3fvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3fvARB(uint index, void* v) => _VertexAttrib3fvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3fvARB(uint index, IntPtr v) => _VertexAttrib3fvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3fvNV(uint index, float[] v) => _VertexAttrib3fvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3fvNV(uint index, void* v) => _VertexAttrib3fvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3fvNV(uint index, IntPtr v) => _VertexAttrib3fvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3hNV(uint index, float x, float y, float z) => _VertexAttrib3hNV(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3hvNV(uint index, float[] v) => _VertexAttrib3hvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3hvNV(uint index, void* v) => _VertexAttrib3hvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3hvNV(uint index, IntPtr v) => _VertexAttrib3hvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3s(uint index, short x, short y, short z) => _VertexAttrib3s(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3sARB(uint index, short x, short y, short z) => _VertexAttrib3sARB(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3sNV(uint index, short x, short y, short z) => _VertexAttrib3sNV(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3sv(uint index, short[] v) => _VertexAttrib3sv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3sv(uint index, void* v) => _VertexAttrib3sv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3sv(uint index, IntPtr v) => _VertexAttrib3sv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3svARB(uint index, short[] v) => _VertexAttrib3svARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3svARB(uint index, void* v) => _VertexAttrib3svARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3svARB(uint index, IntPtr v) => _VertexAttrib3svARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3svNV(uint index, short[] v) => _VertexAttrib3svNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3svNV(uint index, void* v) => _VertexAttrib3svNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib3svNV(uint index, IntPtr v) => _VertexAttrib3svNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nbv(uint index, sbyte[] v) => _VertexAttrib4Nbv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nbv(uint index, void* v) => _VertexAttrib4Nbv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nbv(uint index, IntPtr v) => _VertexAttrib4Nbv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NbvARB(uint index, sbyte[] v) => _VertexAttrib4NbvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NbvARB(uint index, void* v) => _VertexAttrib4NbvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NbvARB(uint index, IntPtr v) => _VertexAttrib4NbvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Niv(uint index, int[] v) => _VertexAttrib4Niv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Niv(uint index, void* v) => _VertexAttrib4Niv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Niv(uint index, IntPtr v) => _VertexAttrib4Niv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NivARB(uint index, int[] v) => _VertexAttrib4NivARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NivARB(uint index, void* v) => _VertexAttrib4NivARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NivARB(uint index, IntPtr v) => _VertexAttrib4NivARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nsv(uint index, short[] v) => _VertexAttrib4Nsv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nsv(uint index, void* v) => _VertexAttrib4Nsv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nsv(uint index, IntPtr v) => _VertexAttrib4Nsv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NsvARB(uint index, short[] v) => _VertexAttrib4NsvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NsvARB(uint index, void* v) => _VertexAttrib4NsvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NsvARB(uint index, IntPtr v) => _VertexAttrib4NsvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nub(uint index, byte x, byte y, byte z, byte w) => _VertexAttrib4Nub(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NubARB(uint index, byte x, byte y, byte z, byte w) => _VertexAttrib4NubARB(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nubv(uint index, byte[] v) => _VertexAttrib4Nubv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nubv(uint index, void* v) => _VertexAttrib4Nubv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nubv(uint index, IntPtr v) => _VertexAttrib4Nubv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NubvARB(uint index, byte[] v) => _VertexAttrib4NubvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NubvARB(uint index, void* v) => _VertexAttrib4NubvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NubvARB(uint index, IntPtr v) => _VertexAttrib4NubvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nuiv(uint index, uint[] v) => _VertexAttrib4Nuiv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nuiv(uint index, void* v) => _VertexAttrib4Nuiv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nuiv(uint index, IntPtr v) => _VertexAttrib4Nuiv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NuivARB(uint index, uint[] v) => _VertexAttrib4NuivARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NuivARB(uint index, void* v) => _VertexAttrib4NuivARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NuivARB(uint index, IntPtr v) => _VertexAttrib4NuivARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nusv(uint index, ushort[] v) => _VertexAttrib4Nusv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nusv(uint index, void* v) => _VertexAttrib4Nusv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4Nusv(uint index, IntPtr v) => _VertexAttrib4Nusv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NusvARB(uint index, ushort[] v) => _VertexAttrib4NusvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NusvARB(uint index, void* v) => _VertexAttrib4NusvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4NusvARB(uint index, IntPtr v) => _VertexAttrib4NusvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4bv(uint index, sbyte[] v) => _VertexAttrib4bv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4bv(uint index, void* v) => _VertexAttrib4bv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4bv(uint index, IntPtr v) => _VertexAttrib4bv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4bvARB(uint index, sbyte[] v) => _VertexAttrib4bvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4bvARB(uint index, void* v) => _VertexAttrib4bvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4bvARB(uint index, IntPtr v) => _VertexAttrib4bvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4d(uint index, double x, double y, double z, double w) => _VertexAttrib4d(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4dARB(uint index, double x, double y, double z, double w) => _VertexAttrib4dARB(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4dNV(uint index, double x, double y, double z, double w) => _VertexAttrib4dNV(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4dv(uint index, double[] v) => _VertexAttrib4dv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4dv(uint index, void* v) => _VertexAttrib4dv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4dv(uint index, IntPtr v) => _VertexAttrib4dv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4dvARB(uint index, double[] v) => _VertexAttrib4dvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4dvARB(uint index, void* v) => _VertexAttrib4dvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4dvARB(uint index, IntPtr v) => _VertexAttrib4dvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4dvNV(uint index, double[] v) => _VertexAttrib4dvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4dvNV(uint index, void* v) => _VertexAttrib4dvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4dvNV(uint index, IntPtr v) => _VertexAttrib4dvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4f(uint index, float x, float y, float z, float w) => _VertexAttrib4f(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4fARB(uint index, float x, float y, float z, float w) => _VertexAttrib4fARB(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4fNV(uint index, float x, float y, float z, float w) => _VertexAttrib4fNV(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4fv(uint index, float[] v) => _VertexAttrib4fv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4fv(uint index, void* v) => _VertexAttrib4fv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4fv(uint index, IntPtr v) => _VertexAttrib4fv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4fvARB(uint index, float[] v) => _VertexAttrib4fvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4fvARB(uint index, void* v) => _VertexAttrib4fvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4fvARB(uint index, IntPtr v) => _VertexAttrib4fvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4fvNV(uint index, float[] v) => _VertexAttrib4fvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4fvNV(uint index, void* v) => _VertexAttrib4fvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4fvNV(uint index, IntPtr v) => _VertexAttrib4fvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4hNV(uint index, float x, float y, float z, float w) => _VertexAttrib4hNV(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4hvNV(uint index, float[] v) => _VertexAttrib4hvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4hvNV(uint index, void* v) => _VertexAttrib4hvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4hvNV(uint index, IntPtr v) => _VertexAttrib4hvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4iv(uint index, int[] v) => _VertexAttrib4iv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4iv(uint index, void* v) => _VertexAttrib4iv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4iv(uint index, IntPtr v) => _VertexAttrib4iv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ivARB(uint index, int[] v) => _VertexAttrib4ivARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ivARB(uint index, void* v) => _VertexAttrib4ivARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ivARB(uint index, IntPtr v) => _VertexAttrib4ivARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4s(uint index, short x, short y, short z, short w) => _VertexAttrib4s(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4sARB(uint index, short x, short y, short z, short w) => _VertexAttrib4sARB(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4sNV(uint index, short x, short y, short z, short w) => _VertexAttrib4sNV(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4sv(uint index, short[] v) => _VertexAttrib4sv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4sv(uint index, void* v) => _VertexAttrib4sv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4sv(uint index, IntPtr v) => _VertexAttrib4sv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4svARB(uint index, short[] v) => _VertexAttrib4svARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4svARB(uint index, void* v) => _VertexAttrib4svARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4svARB(uint index, IntPtr v) => _VertexAttrib4svARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4svNV(uint index, short[] v) => _VertexAttrib4svNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4svNV(uint index, void* v) => _VertexAttrib4svNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4svNV(uint index, IntPtr v) => _VertexAttrib4svNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ubNV(uint index, byte x, byte y, byte z, byte w) => _VertexAttrib4ubNV(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ubv(uint index, byte[] v) => _VertexAttrib4ubv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ubv(uint index, void* v) => _VertexAttrib4ubv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ubv(uint index, IntPtr v) => _VertexAttrib4ubv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ubvARB(uint index, byte[] v) => _VertexAttrib4ubvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ubvARB(uint index, void* v) => _VertexAttrib4ubvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ubvARB(uint index, IntPtr v) => _VertexAttrib4ubvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ubvNV(uint index, byte[] v) => _VertexAttrib4ubvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ubvNV(uint index, void* v) => _VertexAttrib4ubvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4ubvNV(uint index, IntPtr v) => _VertexAttrib4ubvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4uiv(uint index, uint[] v) => _VertexAttrib4uiv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4uiv(uint index, void* v) => _VertexAttrib4uiv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4uiv(uint index, IntPtr v) => _VertexAttrib4uiv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4uivARB(uint index, uint[] v) => _VertexAttrib4uivARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4uivARB(uint index, void* v) => _VertexAttrib4uivARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4uivARB(uint index, IntPtr v) => _VertexAttrib4uivARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4usv(uint index, ushort[] v) => _VertexAttrib4usv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4usv(uint index, void* v) => _VertexAttrib4usv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4usv(uint index, IntPtr v) => _VertexAttrib4usv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4usvARB(uint index, ushort[] v) => _VertexAttrib4usvARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4usvARB(uint index, void* v) => _VertexAttrib4usvARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttrib4usvARB(uint index, IntPtr v) => _VertexAttrib4usvARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribArrayObjectATI(uint index, int size, VertexAttribPointerType type, bool normalized, int stride, uint buffer, uint offset) => _VertexAttribArrayObjectATI(index, size, type, normalized, stride, buffer, offset); + + // --- + + /// + /// glVertexAttribBinding and glVertexArrayAttribBinding establishes an association between the generic vertex attribute of a vertex array object whose index is given by attribindex, and a vertex buffer binding whose index is given by bindingindex. For glVertexAttribBinding, the vertex array object affected is that currently bound. For glVertexArrayAttribBinding, vaobj is the name of the vertex array object. + /// attribindex must be less than the value of GL_MAX_VERTEX_ATTRIBS and bindingindex must be less than the value of GL_MAX_VERTEX_ATTRIB_BINDINGS. + /// + /// Specifies the name of the vertex array object for glVertexArrayAttribBinding. + /// The index of the attribute to associate with a vertex buffer binding. + /// The index of the vertex buffer binding with which to associate the generic vertex attribute. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribBinding(uint attribindex, uint bindingindex) => _VertexAttribBinding(attribindex, bindingindex); + + // --- + + /// + /// glVertexAttribDivisor modifies the rate at which generic vertex attributes advance when rendering multiple instances of primitives in a single draw call. If divisor is zero, the attribute at slot index advances once per vertex. If divisor is non-zero, the attribute advances once per divisor instances of the set(s) of vertices being rendered. An attribute is referred to as instanced if its GL_VERTEX_ATTRIB_ARRAY_DIVISOR value is non-zero. + /// index must be less than the value of GL_MAX_VERTEX_ATTRIBS. + /// + /// Specify the index of the generic vertex attribute. + /// Specify the number of instances that will pass between updates of the generic attribute at slot index. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribDivisor(uint index, uint divisor) => _VertexAttribDivisor(index, divisor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribDivisorANGLE(uint index, uint divisor) => _VertexAttribDivisorANGLE(index, divisor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribDivisorARB(uint index, uint divisor) => _VertexAttribDivisorARB(index, divisor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribDivisorEXT(uint index, uint divisor) => _VertexAttribDivisorEXT(index, divisor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribDivisorNV(uint index, uint divisor) => _VertexAttribDivisorNV(index, divisor); + + // --- + + /// + /// glVertexAttribFormat, glVertexAttribIFormat and glVertexAttribLFormat, as well as glVertexArrayAttribFormat, glVertexArrayAttribIFormat and glVertexArrayAttribLFormat specify the organization of data in vertex arrays. The first three calls operate on the bound vertex array object, whereas the last three ones modify the state of a vertex array object with ID vaobj. attribindex specifies the index of the generic vertex attribute array whose data layout is being described, and must be less than the value of GL_MAX_VERTEX_ATTRIBS. + /// size determines the number of components per vertex are allocated to the specified attribute and must be 1, 2, 3 or 4. type indicates the type of the data. If type is one of GL_BYTE, GL_SHORT, GL_INT, GL_FIXED, GL_FLOAT, GL_HALF_FLOAT, and GL_DOUBLE indicate types GLbyte, GLshort, GLint, GLfixed, GLfloat, GLhalf, and GLdouble, respectively; the values GL_UNSIGNED_BYTE, GL_UNSIGNED_SHORT, and GL_UNSIGNED_INT indicate types GLubyte, GLushort, and GLuint, respectively; the values GL_INT_2_10_10_10_REV and GL_UNSIGNED_INT_2_10_10_10_REV indicating respectively four signed or unsigned elements packed into a single GLuint; and the value GL_UNSIGNED_INT_10F_11F_11F_REV indicating three floating point values packed into a single GLuint. + /// glVertexAttribLFormat and glVertexArrayAttribLFormat is used to specify layout for data associated with a generic attribute variable declared as 64-bit double precision components. For glVertexAttribLFormat and glVertexArrayAttribLFormat, type must be GL_DOUBLE. In contrast to glVertexAttribFormat or glVertexArrayAttribFormat, which will cause data declared as GL_DOUBLE to be converted to 32-bit representation, glVertexAttribLFormat and glVertexArrayAttribLFormat cause such data to be left in its natural, 64-bit representation. + /// For glVertexAttribFormat and glVertexArrayAttribFormat, if normalized is GL_TRUE, then integer data is normalized to the range [-1, 1] or [0, 1] if it is signed or unsigned, respectively. If normalized is GL_FALSE then integer data is directly converted to floating point. + /// relativeoffset is the offset, measured in basic machine units of the first element relative to the start of the vertex buffer binding this attribute fetches from. + /// glVertexAttribFormat and glVertexArrayAttribFormat should be used to describe vertex attribute layout for floating-point vertex attributes, glVertexAttribIFormat and glVertexArrayAttribIFormat should be used to describe vertex attribute layout for integer vertex attribute, and glVertexAttribLFormat and glVertexArrayAttribLFormat should be used to describe the layout for 64-bit vertex attributes. Data for an array specified by glVertexAttribIFormat and glVertexArrayAttribIFormat will always be left as integer values; such data are referred to as pure integers. + /// + /// Specifies the name of the vertex array object for glVertexArrayAttrib{I, L}Format functions. + /// The generic vertex attribute array being described. + /// The number of values per vertex that are stored in the array. + /// The type of the data stored in the array. + /// Specifies whether fixed-point data values should be normalized (GL_TRUE) or converted directly as fixed-point values (GL_FALSE) when they are accessed. This parameter is ignored if type is GL_FIXED. + /// The distance between elements within the buffer. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribFormat(uint attribindex, int size, VertexAttribType type, bool normalized, uint relativeoffset) => _VertexAttribFormat(attribindex, size, type, normalized, relativeoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribFormatNV(uint index, int size, VertexAttribType type, bool normalized, int stride) => _VertexAttribFormatNV(index, size, type, normalized, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1i(uint index, int x) => _VertexAttribI1i(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1iEXT(uint index, int x) => _VertexAttribI1iEXT(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1iv(uint index, int[] v) => _VertexAttribI1iv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1iv(uint index, void* v) => _VertexAttribI1iv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1iv(uint index, IntPtr v) => _VertexAttribI1iv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1ivEXT(uint index, int[] v) => _VertexAttribI1ivEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1ivEXT(uint index, void* v) => _VertexAttribI1ivEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1ivEXT(uint index, IntPtr v) => _VertexAttribI1ivEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1ui(uint index, uint x) => _VertexAttribI1ui(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1uiEXT(uint index, uint x) => _VertexAttribI1uiEXT(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1uiv(uint index, uint[] v) => _VertexAttribI1uiv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1uiv(uint index, void* v) => _VertexAttribI1uiv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1uiv(uint index, IntPtr v) => _VertexAttribI1uiv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1uivEXT(uint index, uint[] v) => _VertexAttribI1uivEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1uivEXT(uint index, void* v) => _VertexAttribI1uivEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI1uivEXT(uint index, IntPtr v) => _VertexAttribI1uivEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2i(uint index, int x, int y) => _VertexAttribI2i(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2iEXT(uint index, int x, int y) => _VertexAttribI2iEXT(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2iv(uint index, int[] v) => _VertexAttribI2iv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2iv(uint index, void* v) => _VertexAttribI2iv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2iv(uint index, IntPtr v) => _VertexAttribI2iv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2ivEXT(uint index, int[] v) => _VertexAttribI2ivEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2ivEXT(uint index, void* v) => _VertexAttribI2ivEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2ivEXT(uint index, IntPtr v) => _VertexAttribI2ivEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2ui(uint index, uint x, uint y) => _VertexAttribI2ui(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2uiEXT(uint index, uint x, uint y) => _VertexAttribI2uiEXT(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2uiv(uint index, uint[] v) => _VertexAttribI2uiv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2uiv(uint index, void* v) => _VertexAttribI2uiv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2uiv(uint index, IntPtr v) => _VertexAttribI2uiv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2uivEXT(uint index, uint[] v) => _VertexAttribI2uivEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2uivEXT(uint index, void* v) => _VertexAttribI2uivEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI2uivEXT(uint index, IntPtr v) => _VertexAttribI2uivEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3i(uint index, int x, int y, int z) => _VertexAttribI3i(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3iEXT(uint index, int x, int y, int z) => _VertexAttribI3iEXT(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3iv(uint index, int[] v) => _VertexAttribI3iv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3iv(uint index, void* v) => _VertexAttribI3iv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3iv(uint index, IntPtr v) => _VertexAttribI3iv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3ivEXT(uint index, int[] v) => _VertexAttribI3ivEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3ivEXT(uint index, void* v) => _VertexAttribI3ivEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3ivEXT(uint index, IntPtr v) => _VertexAttribI3ivEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3ui(uint index, uint x, uint y, uint z) => _VertexAttribI3ui(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3uiEXT(uint index, uint x, uint y, uint z) => _VertexAttribI3uiEXT(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3uiv(uint index, uint[] v) => _VertexAttribI3uiv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3uiv(uint index, void* v) => _VertexAttribI3uiv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3uiv(uint index, IntPtr v) => _VertexAttribI3uiv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3uivEXT(uint index, uint[] v) => _VertexAttribI3uivEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3uivEXT(uint index, void* v) => _VertexAttribI3uivEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI3uivEXT(uint index, IntPtr v) => _VertexAttribI3uivEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4bv(uint index, sbyte[] v) => _VertexAttribI4bv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4bv(uint index, void* v) => _VertexAttribI4bv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4bv(uint index, IntPtr v) => _VertexAttribI4bv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4bvEXT(uint index, sbyte[] v) => _VertexAttribI4bvEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4bvEXT(uint index, void* v) => _VertexAttribI4bvEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4bvEXT(uint index, IntPtr v) => _VertexAttribI4bvEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4i(uint index, int x, int y, int z, int w) => _VertexAttribI4i(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4iEXT(uint index, int x, int y, int z, int w) => _VertexAttribI4iEXT(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4iv(uint index, int[] v) => _VertexAttribI4iv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4iv(uint index, void* v) => _VertexAttribI4iv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4iv(uint index, IntPtr v) => _VertexAttribI4iv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4ivEXT(uint index, int[] v) => _VertexAttribI4ivEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4ivEXT(uint index, void* v) => _VertexAttribI4ivEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4ivEXT(uint index, IntPtr v) => _VertexAttribI4ivEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4sv(uint index, short[] v) => _VertexAttribI4sv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4sv(uint index, void* v) => _VertexAttribI4sv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4sv(uint index, IntPtr v) => _VertexAttribI4sv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4svEXT(uint index, short[] v) => _VertexAttribI4svEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4svEXT(uint index, void* v) => _VertexAttribI4svEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4svEXT(uint index, IntPtr v) => _VertexAttribI4svEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4ubv(uint index, byte[] v) => _VertexAttribI4ubv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4ubv(uint index, void* v) => _VertexAttribI4ubv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4ubv(uint index, IntPtr v) => _VertexAttribI4ubv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4ubvEXT(uint index, byte[] v) => _VertexAttribI4ubvEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4ubvEXT(uint index, void* v) => _VertexAttribI4ubvEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4ubvEXT(uint index, IntPtr v) => _VertexAttribI4ubvEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4ui(uint index, uint x, uint y, uint z, uint w) => _VertexAttribI4ui(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4uiEXT(uint index, uint x, uint y, uint z, uint w) => _VertexAttribI4uiEXT(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4uiv(uint index, uint[] v) => _VertexAttribI4uiv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4uiv(uint index, void* v) => _VertexAttribI4uiv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4uiv(uint index, IntPtr v) => _VertexAttribI4uiv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4uivEXT(uint index, uint[] v) => _VertexAttribI4uivEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4uivEXT(uint index, void* v) => _VertexAttribI4uivEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4uivEXT(uint index, IntPtr v) => _VertexAttribI4uivEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4usv(uint index, ushort[] v) => _VertexAttribI4usv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4usv(uint index, void* v) => _VertexAttribI4usv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4usv(uint index, IntPtr v) => _VertexAttribI4usv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4usvEXT(uint index, ushort[] v) => _VertexAttribI4usvEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4usvEXT(uint index, void* v) => _VertexAttribI4usvEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribI4usvEXT(uint index, IntPtr v) => _VertexAttribI4usvEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribIFormat(uint attribindex, int size, VertexAttribIType type, uint relativeoffset) => _VertexAttribIFormat(attribindex, size, type, relativeoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribIFormatNV(uint index, int size, VertexAttribIType type, int stride) => _VertexAttribIFormatNV(index, size, type, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribIPointer(uint index, int size, VertexAttribIType type, int stride, IntPtr pointer) => _VertexAttribIPointer(index, size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribIPointerEXT(uint index, int size, VertexAttribIType type, int stride, IntPtr pointer) => _VertexAttribIPointerEXT(index, size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1d(uint index, double x) => _VertexAttribL1d(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1dEXT(uint index, double x) => _VertexAttribL1dEXT(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1dv(uint index, double[] v) => _VertexAttribL1dv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1dv(uint index, void* v) => _VertexAttribL1dv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1dv(uint index, IntPtr v) => _VertexAttribL1dv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1dvEXT(uint index, double[] v) => _VertexAttribL1dvEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1dvEXT(uint index, void* v) => _VertexAttribL1dvEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1dvEXT(uint index, IntPtr v) => _VertexAttribL1dvEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1i64NV(uint index, Int64 x) => _VertexAttribL1i64NV(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1i64vNV(uint index, Int64[] v) => _VertexAttribL1i64vNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1i64vNV(uint index, void* v) => _VertexAttribL1i64vNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1i64vNV(uint index, IntPtr v) => _VertexAttribL1i64vNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1ui64ARB(uint index, UInt64 x) => _VertexAttribL1ui64ARB(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1ui64NV(uint index, UInt64 x) => _VertexAttribL1ui64NV(index, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1ui64vARB(uint index, UInt64[] v) => _VertexAttribL1ui64vARB(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1ui64vARB(uint index, void* v) => _VertexAttribL1ui64vARB_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1ui64vARB(uint index, IntPtr v) => _VertexAttribL1ui64vARB_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1ui64vNV(uint index, UInt64[] v) => _VertexAttribL1ui64vNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1ui64vNV(uint index, void* v) => _VertexAttribL1ui64vNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL1ui64vNV(uint index, IntPtr v) => _VertexAttribL1ui64vNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2d(uint index, double x, double y) => _VertexAttribL2d(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2dEXT(uint index, double x, double y) => _VertexAttribL2dEXT(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2dv(uint index, double[] v) => _VertexAttribL2dv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2dv(uint index, void* v) => _VertexAttribL2dv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2dv(uint index, IntPtr v) => _VertexAttribL2dv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2dvEXT(uint index, double[] v) => _VertexAttribL2dvEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2dvEXT(uint index, void* v) => _VertexAttribL2dvEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2dvEXT(uint index, IntPtr v) => _VertexAttribL2dvEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2i64NV(uint index, Int64 x, Int64 y) => _VertexAttribL2i64NV(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2i64vNV(uint index, Int64[] v) => _VertexAttribL2i64vNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2i64vNV(uint index, void* v) => _VertexAttribL2i64vNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2i64vNV(uint index, IntPtr v) => _VertexAttribL2i64vNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2ui64NV(uint index, UInt64 x, UInt64 y) => _VertexAttribL2ui64NV(index, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2ui64vNV(uint index, UInt64[] v) => _VertexAttribL2ui64vNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2ui64vNV(uint index, void* v) => _VertexAttribL2ui64vNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL2ui64vNV(uint index, IntPtr v) => _VertexAttribL2ui64vNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3d(uint index, double x, double y, double z) => _VertexAttribL3d(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3dEXT(uint index, double x, double y, double z) => _VertexAttribL3dEXT(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3dv(uint index, double[] v) => _VertexAttribL3dv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3dv(uint index, void* v) => _VertexAttribL3dv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3dv(uint index, IntPtr v) => _VertexAttribL3dv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3dvEXT(uint index, double[] v) => _VertexAttribL3dvEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3dvEXT(uint index, void* v) => _VertexAttribL3dvEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3dvEXT(uint index, IntPtr v) => _VertexAttribL3dvEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3i64NV(uint index, Int64 x, Int64 y, Int64 z) => _VertexAttribL3i64NV(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3i64vNV(uint index, Int64[] v) => _VertexAttribL3i64vNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3i64vNV(uint index, void* v) => _VertexAttribL3i64vNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3i64vNV(uint index, IntPtr v) => _VertexAttribL3i64vNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3ui64NV(uint index, UInt64 x, UInt64 y, UInt64 z) => _VertexAttribL3ui64NV(index, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3ui64vNV(uint index, UInt64[] v) => _VertexAttribL3ui64vNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3ui64vNV(uint index, void* v) => _VertexAttribL3ui64vNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL3ui64vNV(uint index, IntPtr v) => _VertexAttribL3ui64vNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4d(uint index, double x, double y, double z, double w) => _VertexAttribL4d(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4dEXT(uint index, double x, double y, double z, double w) => _VertexAttribL4dEXT(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4dv(uint index, double[] v) => _VertexAttribL4dv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4dv(uint index, void* v) => _VertexAttribL4dv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4dv(uint index, IntPtr v) => _VertexAttribL4dv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4dvEXT(uint index, double[] v) => _VertexAttribL4dvEXT(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4dvEXT(uint index, void* v) => _VertexAttribL4dvEXT_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4dvEXT(uint index, IntPtr v) => _VertexAttribL4dvEXT_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4i64NV(uint index, Int64 x, Int64 y, Int64 z, Int64 w) => _VertexAttribL4i64NV(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4i64vNV(uint index, Int64[] v) => _VertexAttribL4i64vNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4i64vNV(uint index, void* v) => _VertexAttribL4i64vNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4i64vNV(uint index, IntPtr v) => _VertexAttribL4i64vNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4ui64NV(uint index, UInt64 x, UInt64 y, UInt64 z, UInt64 w) => _VertexAttribL4ui64NV(index, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4ui64vNV(uint index, UInt64[] v) => _VertexAttribL4ui64vNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4ui64vNV(uint index, void* v) => _VertexAttribL4ui64vNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribL4ui64vNV(uint index, IntPtr v) => _VertexAttribL4ui64vNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribLFormat(uint attribindex, int size, VertexAttribLType type, uint relativeoffset) => _VertexAttribLFormat(attribindex, size, type, relativeoffset); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribLFormatNV(uint index, int size, VertexAttribLType type, int stride) => _VertexAttribLFormatNV(index, size, type, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribLPointer(uint index, int size, VertexAttribLType type, int stride, IntPtr pointer) => _VertexAttribLPointer(index, size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribLPointerEXT(uint index, int size, VertexAttribLType type, int stride, IntPtr pointer) => _VertexAttribLPointerEXT(index, size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP1ui(uint index, VertexAttribPointerType type, bool normalized, uint value) => _VertexAttribP1ui(index, type, normalized, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP1uiv(uint index, VertexAttribPointerType type, bool normalized, uint[] value) => _VertexAttribP1uiv(index, type, normalized, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP1uiv(uint index, VertexAttribPointerType type, bool normalized, void* value) => _VertexAttribP1uiv_ptr(index, type, normalized, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP1uiv(uint index, VertexAttribPointerType type, bool normalized, IntPtr value) => _VertexAttribP1uiv_intptr(index, type, normalized, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP2ui(uint index, VertexAttribPointerType type, bool normalized, uint value) => _VertexAttribP2ui(index, type, normalized, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP2uiv(uint index, VertexAttribPointerType type, bool normalized, uint[] value) => _VertexAttribP2uiv(index, type, normalized, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP2uiv(uint index, VertexAttribPointerType type, bool normalized, void* value) => _VertexAttribP2uiv_ptr(index, type, normalized, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP2uiv(uint index, VertexAttribPointerType type, bool normalized, IntPtr value) => _VertexAttribP2uiv_intptr(index, type, normalized, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP3ui(uint index, VertexAttribPointerType type, bool normalized, uint value) => _VertexAttribP3ui(index, type, normalized, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP3uiv(uint index, VertexAttribPointerType type, bool normalized, uint[] value) => _VertexAttribP3uiv(index, type, normalized, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP3uiv(uint index, VertexAttribPointerType type, bool normalized, void* value) => _VertexAttribP3uiv_ptr(index, type, normalized, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP3uiv(uint index, VertexAttribPointerType type, bool normalized, IntPtr value) => _VertexAttribP3uiv_intptr(index, type, normalized, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP4ui(uint index, VertexAttribPointerType type, bool normalized, uint value) => _VertexAttribP4ui(index, type, normalized, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP4uiv(uint index, VertexAttribPointerType type, bool normalized, uint[] value) => _VertexAttribP4uiv(index, type, normalized, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP4uiv(uint index, VertexAttribPointerType type, bool normalized, void* value) => _VertexAttribP4uiv_ptr(index, type, normalized, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribP4uiv(uint index, VertexAttribPointerType type, bool normalized, IntPtr value) => _VertexAttribP4uiv_intptr(index, type, normalized, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribParameteriAMD(uint index, int pname, int param) => _VertexAttribParameteriAMD(index, pname, param); + + // --- + + /// + /// glVertexAttribPointer, glVertexAttribIPointer and glVertexAttribLPointer specify the location and data format of the array of generic vertex attributes at index index to use when rendering. size specifies the number of components per attribute and must be 1, 2, 3, 4, or GL_BGRA. type specifies the data type of each component, and stride specifies the byte stride from one attribute to the next, allowing vertices and attributes to be packed into a single array or stored in separate arrays. + /// For glVertexAttribPointer, if normalized is set to GL_TRUE, it indicates that values stored in an integer format are to be mapped to the range [-1,1] (for signed values) or [0,1] (for unsigned values) when they are accessed and converted to floating point. Otherwise, values will be converted to floats directly without normalization. + /// For glVertexAttribIPointer, only the integer types GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT are accepted. Values are always left as integer values. + /// glVertexAttribLPointer specifies state for a generic vertex attribute array associated with a shader attribute variable declared with 64-bit double precision components. type must be GL_DOUBLE. index, size, and stride behave as described for glVertexAttribPointer and glVertexAttribIPointer. + /// If pointer is not NULL, a non-zero named buffer object must be bound to the GL_ARRAY_BUFFER target (see glBindBuffer), otherwise an error is generated. pointer is treated as a byte offset into the buffer object's data store. The buffer object binding (GL_ARRAY_BUFFER_BINDING) is saved as generic vertex attribute array state (GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING) for index index. + /// When a generic vertex attribute array is specified, size, type, normalized, stride, and pointer are saved as vertex array state, in addition to the current vertex array buffer object binding. + /// To enable and disable a generic vertex attribute array, call glEnableVertexAttribArray and glDisableVertexAttribArray with index. If enabled, the generic vertex attribute array is used when glDrawArrays, glMultiDrawArrays, glDrawElements, glMultiDrawElements, or glDrawRangeElements is called. + /// + /// Specifies the index of the generic vertex attribute to be modified. + /// Specifies the number of components per generic vertex attribute. Must be 1, 2, 3, 4. Additionally, the symbolic constant GL_BGRA is accepted by glVertexAttribPointer. The initial value is 4. + /// Specifies the data type of each component in the array. The symbolic constants GL_BYTE, GL_UNSIGNED_BYTE, GL_SHORT, GL_UNSIGNED_SHORT, GL_INT, and GL_UNSIGNED_INT are accepted by glVertexAttribPointer and glVertexAttribIPointer. Additionally GL_HALF_FLOAT, GL_FLOAT, GL_DOUBLE, GL_FIXED, GL_INT_2_10_10_10_REV, GL_UNSIGNED_INT_2_10_10_10_REV and GL_UNSIGNED_INT_10F_11F_11F_REV are accepted by glVertexAttribPointer. GL_DOUBLE is also accepted by glVertexAttribLPointer and is the only token accepted by the type parameter for that function. The initial value is GL_FLOAT. + /// For glVertexAttribPointer, specifies whether fixed-point data values should be normalized (GL_TRUE) or converted directly as fixed-point values (GL_FALSE) when they are accessed. + /// Specifies the byte offset between consecutive generic vertex attributes. If stride is 0, the generic vertex attributes are understood to be tightly packed in the array. The initial value is 0. + /// Specifies a offset of the first component of the first generic vertex attribute in the array in the data store of the buffer currently bound to the GL_ARRAY_BUFFER target. The initial value is 0. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribPointer(uint index, int size, VertexAttribPointerType type, bool normalized, int stride, IntPtr pointer) => _VertexAttribPointer(index, size, type, normalized, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribPointerARB(uint index, int size, VertexAttribPointerType type, bool normalized, int stride, IntPtr pointer) => _VertexAttribPointerARB(index, size, type, normalized, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribPointerNV(uint index, int fsize, VertexAttribEnumNV type, int stride, IntPtr pointer) => _VertexAttribPointerNV(index, fsize, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs1dvNV(uint index, int count, double[] v) => _VertexAttribs1dvNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs1dvNV(uint index, int count, void* v) => _VertexAttribs1dvNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs1dvNV(uint index, int count, IntPtr v) => _VertexAttribs1dvNV_intptr(index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs1fvNV(uint index, int count, float[] v) => _VertexAttribs1fvNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs1fvNV(uint index, int count, void* v) => _VertexAttribs1fvNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs1fvNV(uint index, int count, IntPtr v) => _VertexAttribs1fvNV_intptr(index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs1hvNV(uint index, int n, float[] v) => _VertexAttribs1hvNV(index, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs1hvNV(uint index, int n, void* v) => _VertexAttribs1hvNV_ptr(index, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs1hvNV(uint index, int n, IntPtr v) => _VertexAttribs1hvNV_intptr(index, n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs1svNV(uint index, int count, short[] v) => _VertexAttribs1svNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs1svNV(uint index, int count, void* v) => _VertexAttribs1svNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs1svNV(uint index, int count, IntPtr v) => _VertexAttribs1svNV_intptr(index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs2dvNV(uint index, int count, double[] v) => _VertexAttribs2dvNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs2dvNV(uint index, int count, void* v) => _VertexAttribs2dvNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs2dvNV(uint index, int count, IntPtr v) => _VertexAttribs2dvNV_intptr(index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs2fvNV(uint index, int count, float[] v) => _VertexAttribs2fvNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs2fvNV(uint index, int count, void* v) => _VertexAttribs2fvNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs2fvNV(uint index, int count, IntPtr v) => _VertexAttribs2fvNV_intptr(index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs2hvNV(uint index, int n, float[] v) => _VertexAttribs2hvNV(index, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs2hvNV(uint index, int n, void* v) => _VertexAttribs2hvNV_ptr(index, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs2hvNV(uint index, int n, IntPtr v) => _VertexAttribs2hvNV_intptr(index, n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs2svNV(uint index, int count, short[] v) => _VertexAttribs2svNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs2svNV(uint index, int count, void* v) => _VertexAttribs2svNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs2svNV(uint index, int count, IntPtr v) => _VertexAttribs2svNV_intptr(index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs3dvNV(uint index, int count, double[] v) => _VertexAttribs3dvNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs3dvNV(uint index, int count, void* v) => _VertexAttribs3dvNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs3dvNV(uint index, int count, IntPtr v) => _VertexAttribs3dvNV_intptr(index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs3fvNV(uint index, int count, float[] v) => _VertexAttribs3fvNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs3fvNV(uint index, int count, void* v) => _VertexAttribs3fvNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs3fvNV(uint index, int count, IntPtr v) => _VertexAttribs3fvNV_intptr(index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs3hvNV(uint index, int n, float[] v) => _VertexAttribs3hvNV(index, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs3hvNV(uint index, int n, void* v) => _VertexAttribs3hvNV_ptr(index, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs3hvNV(uint index, int n, IntPtr v) => _VertexAttribs3hvNV_intptr(index, n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs3svNV(uint index, int count, short[] v) => _VertexAttribs3svNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs3svNV(uint index, int count, void* v) => _VertexAttribs3svNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs3svNV(uint index, int count, IntPtr v) => _VertexAttribs3svNV_intptr(index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4dvNV(uint index, int count, double[] v) => _VertexAttribs4dvNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4dvNV(uint index, int count, void* v) => _VertexAttribs4dvNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4dvNV(uint index, int count, IntPtr v) => _VertexAttribs4dvNV_intptr(index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4fvNV(uint index, int count, float[] v) => _VertexAttribs4fvNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4fvNV(uint index, int count, void* v) => _VertexAttribs4fvNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4fvNV(uint index, int count, IntPtr v) => _VertexAttribs4fvNV_intptr(index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4hvNV(uint index, int n, float[] v) => _VertexAttribs4hvNV(index, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4hvNV(uint index, int n, void* v) => _VertexAttribs4hvNV_ptr(index, n, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4hvNV(uint index, int n, IntPtr v) => _VertexAttribs4hvNV_intptr(index, n, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4svNV(uint index, int count, short[] v) => _VertexAttribs4svNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4svNV(uint index, int count, void* v) => _VertexAttribs4svNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4svNV(uint index, int count, IntPtr v) => _VertexAttribs4svNV_intptr(index, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4ubvNV(uint index, int count, byte[] v) => _VertexAttribs4ubvNV(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4ubvNV(uint index, int count, void* v) => _VertexAttribs4ubvNV_ptr(index, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexAttribs4ubvNV(uint index, int count, IntPtr v) => _VertexAttribs4ubvNV_intptr(index, count, v); + + // --- + + /// + /// glVertexBindingDivisor and glVertexArrayBindingDivisor modify the rate at which generic vertex attributes advance when rendering multiple instances of primitives in a single draw command. If divisor is zero, the attributes using the buffer bound to bindingindex advance once per vertex. If divisor is non-zero, the attributes advance once per divisor instances of the set(s) of vertices being rendered. An attribute is referred to as instanced if the corresponding divisor value is non-zero. + /// glVertexBindingDivisor uses currently bound vertex array object , whereas glVertexArrayBindingDivisor updates state of the vertex array object with ID vaobj. + /// + /// Specifies the name of the vertex array object for glVertexArrayBindingDivisor function. + /// The index of the binding whose divisor to modify. + /// The new value for the instance step rate to apply. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexBindingDivisor(uint bindingindex, uint divisor) => _VertexBindingDivisor(bindingindex, divisor); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexBlendARB(int count) => _VertexBlendARB(count); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexBlendEnvfATI(VertexStreamATI pname, float param) => _VertexBlendEnvfATI(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexBlendEnviATI(VertexStreamATI pname, int param) => _VertexBlendEnviATI(pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexFormatNV(int size, VertexPointerType type, int stride) => _VertexFormatNV(size, type, stride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexP2ui(VertexPointerType type, uint value) => _VertexP2ui(type, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexP2uiv(VertexPointerType type, uint[] value) => _VertexP2uiv(type, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexP2uiv(VertexPointerType type, void* value) => _VertexP2uiv_ptr(type, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexP2uiv(VertexPointerType type, IntPtr value) => _VertexP2uiv_intptr(type, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexP3ui(VertexPointerType type, uint value) => _VertexP3ui(type, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexP3uiv(VertexPointerType type, uint[] value) => _VertexP3uiv(type, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexP3uiv(VertexPointerType type, void* value) => _VertexP3uiv_ptr(type, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexP3uiv(VertexPointerType type, IntPtr value) => _VertexP3uiv_intptr(type, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexP4ui(VertexPointerType type, uint value) => _VertexP4ui(type, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexP4uiv(VertexPointerType type, uint[] value) => _VertexP4uiv(type, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexP4uiv(VertexPointerType type, void* value) => _VertexP4uiv_ptr(type, value); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexP4uiv(VertexPointerType type, IntPtr value) => _VertexP4uiv_intptr(type, value); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexPointer(int size, VertexPointerType type, int stride, IntPtr pointer) => _VertexPointer(size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexPointerEXT(int size, VertexPointerType type, int stride, int count, IntPtr pointer) => _VertexPointerEXT(size, type, stride, count, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexPointerListIBM(int size, VertexPointerType type, int stride, IntPtr* pointer, int ptrstride) => _VertexPointerListIBM(size, type, stride, pointer, ptrstride); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexPointervINTEL(int size, VertexPointerType type, IntPtr* pointer) => _VertexPointervINTEL(size, type, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1dATI(VertexStreamATI stream, double x) => _VertexStream1dATI(stream, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1dvATI(VertexStreamATI stream, double[] coords) => _VertexStream1dvATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1dvATI(VertexStreamATI stream, void* coords) => _VertexStream1dvATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1dvATI(VertexStreamATI stream, IntPtr coords) => _VertexStream1dvATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1fATI(VertexStreamATI stream, float x) => _VertexStream1fATI(stream, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1fvATI(VertexStreamATI stream, float[] coords) => _VertexStream1fvATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1fvATI(VertexStreamATI stream, void* coords) => _VertexStream1fvATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1fvATI(VertexStreamATI stream, IntPtr coords) => _VertexStream1fvATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1iATI(VertexStreamATI stream, int x) => _VertexStream1iATI(stream, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1ivATI(VertexStreamATI stream, int[] coords) => _VertexStream1ivATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1ivATI(VertexStreamATI stream, void* coords) => _VertexStream1ivATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1ivATI(VertexStreamATI stream, IntPtr coords) => _VertexStream1ivATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1sATI(VertexStreamATI stream, short x) => _VertexStream1sATI(stream, x); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1svATI(VertexStreamATI stream, short[] coords) => _VertexStream1svATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1svATI(VertexStreamATI stream, void* coords) => _VertexStream1svATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream1svATI(VertexStreamATI stream, IntPtr coords) => _VertexStream1svATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2dATI(VertexStreamATI stream, double x, double y) => _VertexStream2dATI(stream, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2dvATI(VertexStreamATI stream, double[] coords) => _VertexStream2dvATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2dvATI(VertexStreamATI stream, void* coords) => _VertexStream2dvATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2dvATI(VertexStreamATI stream, IntPtr coords) => _VertexStream2dvATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2fATI(VertexStreamATI stream, float x, float y) => _VertexStream2fATI(stream, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2fvATI(VertexStreamATI stream, float[] coords) => _VertexStream2fvATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2fvATI(VertexStreamATI stream, void* coords) => _VertexStream2fvATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2fvATI(VertexStreamATI stream, IntPtr coords) => _VertexStream2fvATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2iATI(VertexStreamATI stream, int x, int y) => _VertexStream2iATI(stream, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2ivATI(VertexStreamATI stream, int[] coords) => _VertexStream2ivATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2ivATI(VertexStreamATI stream, void* coords) => _VertexStream2ivATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2ivATI(VertexStreamATI stream, IntPtr coords) => _VertexStream2ivATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2sATI(VertexStreamATI stream, short x, short y) => _VertexStream2sATI(stream, x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2svATI(VertexStreamATI stream, short[] coords) => _VertexStream2svATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2svATI(VertexStreamATI stream, void* coords) => _VertexStream2svATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream2svATI(VertexStreamATI stream, IntPtr coords) => _VertexStream2svATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3dATI(VertexStreamATI stream, double x, double y, double z) => _VertexStream3dATI(stream, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3dvATI(VertexStreamATI stream, double[] coords) => _VertexStream3dvATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3dvATI(VertexStreamATI stream, void* coords) => _VertexStream3dvATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3dvATI(VertexStreamATI stream, IntPtr coords) => _VertexStream3dvATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3fATI(VertexStreamATI stream, float x, float y, float z) => _VertexStream3fATI(stream, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3fvATI(VertexStreamATI stream, float[] coords) => _VertexStream3fvATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3fvATI(VertexStreamATI stream, void* coords) => _VertexStream3fvATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3fvATI(VertexStreamATI stream, IntPtr coords) => _VertexStream3fvATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3iATI(VertexStreamATI stream, int x, int y, int z) => _VertexStream3iATI(stream, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3ivATI(VertexStreamATI stream, int[] coords) => _VertexStream3ivATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3ivATI(VertexStreamATI stream, void* coords) => _VertexStream3ivATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3ivATI(VertexStreamATI stream, IntPtr coords) => _VertexStream3ivATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3sATI(VertexStreamATI stream, short x, short y, short z) => _VertexStream3sATI(stream, x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3svATI(VertexStreamATI stream, short[] coords) => _VertexStream3svATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3svATI(VertexStreamATI stream, void* coords) => _VertexStream3svATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream3svATI(VertexStreamATI stream, IntPtr coords) => _VertexStream3svATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4dATI(VertexStreamATI stream, double x, double y, double z, double w) => _VertexStream4dATI(stream, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4dvATI(VertexStreamATI stream, double[] coords) => _VertexStream4dvATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4dvATI(VertexStreamATI stream, void* coords) => _VertexStream4dvATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4dvATI(VertexStreamATI stream, IntPtr coords) => _VertexStream4dvATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4fATI(VertexStreamATI stream, float x, float y, float z, float w) => _VertexStream4fATI(stream, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4fvATI(VertexStreamATI stream, float[] coords) => _VertexStream4fvATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4fvATI(VertexStreamATI stream, void* coords) => _VertexStream4fvATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4fvATI(VertexStreamATI stream, IntPtr coords) => _VertexStream4fvATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4iATI(VertexStreamATI stream, int x, int y, int z, int w) => _VertexStream4iATI(stream, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4ivATI(VertexStreamATI stream, int[] coords) => _VertexStream4ivATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4ivATI(VertexStreamATI stream, void* coords) => _VertexStream4ivATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4ivATI(VertexStreamATI stream, IntPtr coords) => _VertexStream4ivATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4sATI(VertexStreamATI stream, short x, short y, short z, short w) => _VertexStream4sATI(stream, x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4svATI(VertexStreamATI stream, short[] coords) => _VertexStream4svATI(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4svATI(VertexStreamATI stream, void* coords) => _VertexStream4svATI_ptr(stream, coords); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexStream4svATI(VertexStreamATI stream, IntPtr coords) => _VertexStream4svATI_intptr(stream, coords); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexWeightPointerEXT(int size, VertexWeightPointerTypeEXT type, int stride, IntPtr pointer) => _VertexWeightPointerEXT(size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexWeightfEXT(float weight) => _VertexWeightfEXT(weight); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexWeightfvEXT(float[] weight) => _VertexWeightfvEXT(weight); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexWeightfvEXT(void* weight) => _VertexWeightfvEXT_ptr(weight); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexWeightfvEXT(IntPtr weight) => _VertexWeightfvEXT_intptr(weight); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexWeighthNV(float weight) => _VertexWeighthNV(weight); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexWeighthvNV(float[] weight) => _VertexWeighthvNV(weight); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexWeighthvNV(void* weight) => _VertexWeighthvNV_ptr(weight); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VertexWeighthvNV(IntPtr weight) => _VertexWeighthvNV_intptr(weight); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int VideoCaptureNV(uint video_capture_slot, uint[] sequence_num, UInt64[] capture_time) => _VideoCaptureNV(video_capture_slot, sequence_num, capture_time); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int VideoCaptureNV(uint video_capture_slot, void* sequence_num, void* capture_time) => _VideoCaptureNV_ptr(video_capture_slot, sequence_num, capture_time); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public int VideoCaptureNV(uint video_capture_slot, IntPtr sequence_num, IntPtr capture_time) => _VideoCaptureNV_intptr(video_capture_slot, sequence_num, capture_time); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VideoCaptureStreamParameterdvNV(uint video_capture_slot, uint stream, int pname, double[] @params) => _VideoCaptureStreamParameterdvNV(video_capture_slot, stream, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VideoCaptureStreamParameterdvNV(uint video_capture_slot, uint stream, int pname, void* @params) => _VideoCaptureStreamParameterdvNV_ptr(video_capture_slot, stream, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VideoCaptureStreamParameterdvNV(uint video_capture_slot, uint stream, int pname, IntPtr @params) => _VideoCaptureStreamParameterdvNV_intptr(video_capture_slot, stream, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VideoCaptureStreamParameterfvNV(uint video_capture_slot, uint stream, int pname, float[] @params) => _VideoCaptureStreamParameterfvNV(video_capture_slot, stream, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VideoCaptureStreamParameterfvNV(uint video_capture_slot, uint stream, int pname, void* @params) => _VideoCaptureStreamParameterfvNV_ptr(video_capture_slot, stream, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VideoCaptureStreamParameterfvNV(uint video_capture_slot, uint stream, int pname, IntPtr @params) => _VideoCaptureStreamParameterfvNV_intptr(video_capture_slot, stream, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VideoCaptureStreamParameterivNV(uint video_capture_slot, uint stream, int pname, int[] @params) => _VideoCaptureStreamParameterivNV(video_capture_slot, stream, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VideoCaptureStreamParameterivNV(uint video_capture_slot, uint stream, int pname, void* @params) => _VideoCaptureStreamParameterivNV_ptr(video_capture_slot, stream, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void VideoCaptureStreamParameterivNV(uint video_capture_slot, uint stream, int pname, IntPtr @params) => _VideoCaptureStreamParameterivNV_intptr(video_capture_slot, stream, pname, @params); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void Viewport(int x, int y, int width, int height) => _Viewport(x, y, width, height); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportArrayv(uint first, int count, float[] v) => _ViewportArrayv(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportArrayv(uint first, int count, void* v) => _ViewportArrayv_ptr(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportArrayv(uint first, int count, IntPtr v) => _ViewportArrayv_intptr(first, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportArrayvNV(uint first, int count, float[] v) => _ViewportArrayvNV(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportArrayvNV(uint first, int count, void* v) => _ViewportArrayvNV_ptr(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportArrayvNV(uint first, int count, IntPtr v) => _ViewportArrayvNV_intptr(first, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportArrayvOES(uint first, int count, float[] v) => _ViewportArrayvOES(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportArrayvOES(uint first, int count, void* v) => _ViewportArrayvOES_ptr(first, count, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportArrayvOES(uint first, int count, IntPtr v) => _ViewportArrayvOES_intptr(first, count, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportIndexedf(uint index, float x, float y, float w, float h) => _ViewportIndexedf(index, x, y, w, h); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportIndexedfOES(uint index, float x, float y, float w, float h) => _ViewportIndexedfOES(index, x, y, w, h); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportIndexedfNV(uint index, float x, float y, float w, float h) => _ViewportIndexedfNV(index, x, y, w, h); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportIndexedfv(uint index, float[] v) => _ViewportIndexedfv(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportIndexedfv(uint index, void* v) => _ViewportIndexedfv_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportIndexedfv(uint index, IntPtr v) => _ViewportIndexedfv_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportIndexedfvOES(uint index, float[] v) => _ViewportIndexedfvOES(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportIndexedfvOES(uint index, void* v) => _ViewportIndexedfvOES_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportIndexedfvOES(uint index, IntPtr v) => _ViewportIndexedfvOES_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportIndexedfvNV(uint index, float[] v) => _ViewportIndexedfvNV(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportIndexedfvNV(uint index, void* v) => _ViewportIndexedfvNV_ptr(index, v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportIndexedfvNV(uint index, IntPtr v) => _ViewportIndexedfvNV_intptr(index, v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportPositionWScaleNV(uint index, float xcoeff, float ycoeff) => _ViewportPositionWScaleNV(index, xcoeff, ycoeff); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void ViewportSwizzleNV(uint index, int swizzlex, int swizzley, int swizzlez, int swizzlew) => _ViewportSwizzleNV(index, swizzlex, swizzley, swizzlez, swizzlew); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WaitSemaphoreEXT(uint semaphore, uint numBufferBarriers, uint[] buffers, uint numTextureBarriers, uint[] textures, TextureLayout[] srcLayouts) => _WaitSemaphoreEXT(semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, srcLayouts); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WaitSemaphoreEXT(uint semaphore, uint numBufferBarriers, void* buffers, uint numTextureBarriers, void* textures, void* srcLayouts) => _WaitSemaphoreEXT_ptr(semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, srcLayouts); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WaitSemaphoreEXT(uint semaphore, uint numBufferBarriers, IntPtr buffers, uint numTextureBarriers, IntPtr textures, IntPtr srcLayouts) => _WaitSemaphoreEXT_intptr(semaphore, numBufferBarriers, buffers, numTextureBarriers, textures, srcLayouts); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WaitSemaphoreui64NVX(uint waitGpu, int fenceObjectCount, uint[] semaphoreArray, UInt64[] fenceValueArray) => _WaitSemaphoreui64NVX(waitGpu, fenceObjectCount, semaphoreArray, fenceValueArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WaitSemaphoreui64NVX(uint waitGpu, int fenceObjectCount, void* semaphoreArray, void* fenceValueArray) => _WaitSemaphoreui64NVX_ptr(waitGpu, fenceObjectCount, semaphoreArray, fenceValueArray); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WaitSemaphoreui64NVX(uint waitGpu, int fenceObjectCount, IntPtr semaphoreArray, IntPtr fenceValueArray) => _WaitSemaphoreui64NVX_intptr(waitGpu, fenceObjectCount, semaphoreArray, fenceValueArray); + + // --- + + /// + /// glWaitSync causes the GL server to block and wait until sync becomes signaled. sync is the name of an existing sync object upon which to wait. flags and timeout are currently not used and must be set to zero and the special value GL_TIMEOUT_IGNORED, respectivelyflags and timeout are placeholders for anticipated future extensions of sync object capabilities. They must have these reserved values in order that existing code calling glWaitSync operate properly in the presence of such extensions.. glWaitSync will always wait no longer than an implementation-dependent timeout. The duration of this timeout in nanoseconds may be queried by calling glGet with the parameter GL_MAX_SERVER_WAIT_TIMEOUT. There is currently no way to determine whether glWaitSync unblocked because the timeout expired or because the sync object being waited on was signaled. + /// If an error occurs, glWaitSync does not cause the GL server to block. + /// + /// Specifies the sync object whose status to wait on. + /// A bitfield controlling the command flushing behavior. flags may be zero. + /// Specifies the timeout that the server should wait before continuing. timeout must be GL_TIMEOUT_IGNORED. + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WaitSync(int sync, int flags, UInt64 timeout) => _WaitSync(sync, flags, timeout); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WaitSyncAPPLE(int sync, int flags, UInt64 timeout) => _WaitSyncAPPLE(sync, flags, timeout); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightPathsNV(uint resultPath, int numPaths, uint[] paths, float[] weights) => _WeightPathsNV(resultPath, numPaths, paths, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightPathsNV(uint resultPath, int numPaths, void* paths, void* weights) => _WeightPathsNV_ptr(resultPath, numPaths, paths, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightPathsNV(uint resultPath, int numPaths, IntPtr paths, IntPtr weights) => _WeightPathsNV_intptr(resultPath, numPaths, paths, weights); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightPointerARB(int size, WeightPointerTypeARB type, int stride, IntPtr pointer) => _WeightPointerARB(size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightPointerOES(int size, int type, int stride, IntPtr pointer) => _WeightPointerOES(size, type, stride, pointer); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightbvARB(int size, sbyte[] weights) => _WeightbvARB(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightbvARB(int size, void* weights) => _WeightbvARB_ptr(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightbvARB(int size, IntPtr weights) => _WeightbvARB_intptr(size, weights); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightdvARB(int size, double[] weights) => _WeightdvARB(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightdvARB(int size, void* weights) => _WeightdvARB_ptr(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightdvARB(int size, IntPtr weights) => _WeightdvARB_intptr(size, weights); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightfvARB(int size, float[] weights) => _WeightfvARB(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightfvARB(int size, void* weights) => _WeightfvARB_ptr(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightfvARB(int size, IntPtr weights) => _WeightfvARB_intptr(size, weights); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightivARB(int size, int[] weights) => _WeightivARB(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightivARB(int size, void* weights) => _WeightivARB_ptr(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightivARB(int size, IntPtr weights) => _WeightivARB_intptr(size, weights); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightsvARB(int size, short[] weights) => _WeightsvARB(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightsvARB(int size, void* weights) => _WeightsvARB_ptr(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightsvARB(int size, IntPtr weights) => _WeightsvARB_intptr(size, weights); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightubvARB(int size, byte[] weights) => _WeightubvARB(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightubvARB(int size, void* weights) => _WeightubvARB_ptr(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightubvARB(int size, IntPtr weights) => _WeightubvARB_intptr(size, weights); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightuivARB(int size, uint[] weights) => _WeightuivARB(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightuivARB(int size, void* weights) => _WeightuivARB_ptr(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightuivARB(int size, IntPtr weights) => _WeightuivARB_intptr(size, weights); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightusvARB(int size, ushort[] weights) => _WeightusvARB(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightusvARB(int size, void* weights) => _WeightusvARB_ptr(size, weights); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WeightusvARB(int size, IntPtr weights) => _WeightusvARB_intptr(size, weights); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2d(double x, double y) => _WindowPos2d(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2dARB(double x, double y) => _WindowPos2dARB(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2dMESA(double x, double y) => _WindowPos2dMESA(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2dv(double[] v) => _WindowPos2dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2dv(void* v) => _WindowPos2dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2dv(IntPtr v) => _WindowPos2dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2dvARB(double[] v) => _WindowPos2dvARB(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2dvARB(void* v) => _WindowPos2dvARB_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2dvARB(IntPtr v) => _WindowPos2dvARB_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2dvMESA(double[] v) => _WindowPos2dvMESA(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2dvMESA(void* v) => _WindowPos2dvMESA_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2dvMESA(IntPtr v) => _WindowPos2dvMESA_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2f(float x, float y) => _WindowPos2f(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2fARB(float x, float y) => _WindowPos2fARB(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2fMESA(float x, float y) => _WindowPos2fMESA(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2fv(float[] v) => _WindowPos2fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2fv(void* v) => _WindowPos2fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2fv(IntPtr v) => _WindowPos2fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2fvARB(float[] v) => _WindowPos2fvARB(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2fvARB(void* v) => _WindowPos2fvARB_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2fvARB(IntPtr v) => _WindowPos2fvARB_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2fvMESA(float[] v) => _WindowPos2fvMESA(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2fvMESA(void* v) => _WindowPos2fvMESA_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2fvMESA(IntPtr v) => _WindowPos2fvMESA_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2i(int x, int y) => _WindowPos2i(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2iARB(int x, int y) => _WindowPos2iARB(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2iMESA(int x, int y) => _WindowPos2iMESA(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2iv(int[] v) => _WindowPos2iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2iv(void* v) => _WindowPos2iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2iv(IntPtr v) => _WindowPos2iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2ivARB(int[] v) => _WindowPos2ivARB(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2ivARB(void* v) => _WindowPos2ivARB_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2ivARB(IntPtr v) => _WindowPos2ivARB_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2ivMESA(int[] v) => _WindowPos2ivMESA(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2ivMESA(void* v) => _WindowPos2ivMESA_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2ivMESA(IntPtr v) => _WindowPos2ivMESA_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2s(short x, short y) => _WindowPos2s(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2sARB(short x, short y) => _WindowPos2sARB(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2sMESA(short x, short y) => _WindowPos2sMESA(x, y); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2sv(short[] v) => _WindowPos2sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2sv(void* v) => _WindowPos2sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2sv(IntPtr v) => _WindowPos2sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2svARB(short[] v) => _WindowPos2svARB(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2svARB(void* v) => _WindowPos2svARB_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2svARB(IntPtr v) => _WindowPos2svARB_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2svMESA(short[] v) => _WindowPos2svMESA(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2svMESA(void* v) => _WindowPos2svMESA_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos2svMESA(IntPtr v) => _WindowPos2svMESA_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3d(double x, double y, double z) => _WindowPos3d(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3dARB(double x, double y, double z) => _WindowPos3dARB(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3dMESA(double x, double y, double z) => _WindowPos3dMESA(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3dv(double[] v) => _WindowPos3dv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3dv(void* v) => _WindowPos3dv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3dv(IntPtr v) => _WindowPos3dv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3dvARB(double[] v) => _WindowPos3dvARB(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3dvARB(void* v) => _WindowPos3dvARB_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3dvARB(IntPtr v) => _WindowPos3dvARB_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3dvMESA(double[] v) => _WindowPos3dvMESA(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3dvMESA(void* v) => _WindowPos3dvMESA_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3dvMESA(IntPtr v) => _WindowPos3dvMESA_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3f(float x, float y, float z) => _WindowPos3f(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3fARB(float x, float y, float z) => _WindowPos3fARB(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3fMESA(float x, float y, float z) => _WindowPos3fMESA(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3fv(float[] v) => _WindowPos3fv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3fv(void* v) => _WindowPos3fv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3fv(IntPtr v) => _WindowPos3fv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3fvARB(float[] v) => _WindowPos3fvARB(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3fvARB(void* v) => _WindowPos3fvARB_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3fvARB(IntPtr v) => _WindowPos3fvARB_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3fvMESA(float[] v) => _WindowPos3fvMESA(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3fvMESA(void* v) => _WindowPos3fvMESA_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3fvMESA(IntPtr v) => _WindowPos3fvMESA_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3i(int x, int y, int z) => _WindowPos3i(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3iARB(int x, int y, int z) => _WindowPos3iARB(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3iMESA(int x, int y, int z) => _WindowPos3iMESA(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3iv(int[] v) => _WindowPos3iv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3iv(void* v) => _WindowPos3iv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3iv(IntPtr v) => _WindowPos3iv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3ivARB(int[] v) => _WindowPos3ivARB(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3ivARB(void* v) => _WindowPos3ivARB_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3ivARB(IntPtr v) => _WindowPos3ivARB_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3ivMESA(int[] v) => _WindowPos3ivMESA(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3ivMESA(void* v) => _WindowPos3ivMESA_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3ivMESA(IntPtr v) => _WindowPos3ivMESA_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3s(short x, short y, short z) => _WindowPos3s(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3sARB(short x, short y, short z) => _WindowPos3sARB(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3sMESA(short x, short y, short z) => _WindowPos3sMESA(x, y, z); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3sv(short[] v) => _WindowPos3sv(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3sv(void* v) => _WindowPos3sv_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3sv(IntPtr v) => _WindowPos3sv_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3svARB(short[] v) => _WindowPos3svARB(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3svARB(void* v) => _WindowPos3svARB_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3svARB(IntPtr v) => _WindowPos3svARB_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3svMESA(short[] v) => _WindowPos3svMESA(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3svMESA(void* v) => _WindowPos3svMESA_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos3svMESA(IntPtr v) => _WindowPos3svMESA_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4dMESA(double x, double y, double z, double w) => _WindowPos4dMESA(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4dvMESA(double[] v) => _WindowPos4dvMESA(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4dvMESA(void* v) => _WindowPos4dvMESA_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4dvMESA(IntPtr v) => _WindowPos4dvMESA_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4fMESA(float x, float y, float z, float w) => _WindowPos4fMESA(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4fvMESA(float[] v) => _WindowPos4fvMESA(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4fvMESA(void* v) => _WindowPos4fvMESA_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4fvMESA(IntPtr v) => _WindowPos4fvMESA_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4iMESA(int x, int y, int z, int w) => _WindowPos4iMESA(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4ivMESA(int[] v) => _WindowPos4ivMESA(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4ivMESA(void* v) => _WindowPos4ivMESA_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4ivMESA(IntPtr v) => _WindowPos4ivMESA_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4sMESA(short x, short y, short z, short w) => _WindowPos4sMESA(x, y, z, w); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4svMESA(short[] v) => _WindowPos4svMESA(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4svMESA(void* v) => _WindowPos4svMESA_ptr(v); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowPos4svMESA(IntPtr v) => _WindowPos4svMESA_intptr(v); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowRectanglesEXT(int mode, int count, int[] box) => _WindowRectanglesEXT(mode, count, box); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowRectanglesEXT(int mode, int count, void* box) => _WindowRectanglesEXT_ptr(mode, count, box); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WindowRectanglesEXT(int mode, int count, IntPtr box) => _WindowRectanglesEXT_intptr(mode, count, box); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WriteMaskEXT(uint res, uint @in, VertexShaderWriteMaskEXT outX, VertexShaderWriteMaskEXT outY, VertexShaderWriteMaskEXT outZ, VertexShaderWriteMaskEXT outW) => _WriteMaskEXT(res, @in, outX, outY, outZ, outW); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void DrawVkImageNV(UInt64 vkImage, uint sampler, float x0, float y0, float x1, float y1, float z, float s0, float t0, float s1, float t1) => _DrawVkImageNV(vkImage, sampler, x0, y0, x1, y1, z, s0, t0, s1, t1); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public VulkanProc GetVkProcAddrNV(string name) => _GetVkProcAddrNV(name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public VulkanProc GetVkProcAddrNV(void* name) => _GetVkProcAddrNV_ptr(name); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public VulkanProc GetVkProcAddrNV(IntPtr name) => _GetVkProcAddrNV_intptr(name); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void WaitVkSemaphoreNV(UInt64 vkSemaphore) => _WaitVkSemaphoreNV(vkSemaphore); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SignalVkSemaphoreNV(UInt64 vkSemaphore) => _SignalVkSemaphoreNV(vkSemaphore); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void SignalVkFenceNV(UInt64 vkFence) => _SignalVkFenceNV(vkFence); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void FramebufferParameteriMESA(FramebufferTarget target, FramebufferParameterName pname, int param) => _FramebufferParameteriMESA(target, pname, param); + + // --- + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferParameterivMESA(FramebufferTarget target, FramebufferAttachmentParameterName pname, int[] @params) => _GetFramebufferParameterivMESA(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferParameterivMESA(FramebufferTarget target, FramebufferAttachmentParameterName pname, void* @params) => _GetFramebufferParameterivMESA_ptr(target, pname, @params); + + [MethodImpl(MethodImplOptions.AggressiveInlining)] + public void GetFramebufferParameterivMESA(FramebufferTarget target, FramebufferAttachmentParameterName pname, IntPtr @params) => _GetFramebufferParameterivMESA_intptr(target, pname, @params); + + } + +} diff --git a/src/Avalonia.OpenGL/GlInterfaceBase.cs b/src/Avalonia.OpenGL/GlInterfaceBase.cs index e7dd440e36f..76312d969a2 100644 --- a/src/Avalonia.OpenGL/GlInterfaceBase.cs +++ b/src/Avalonia.OpenGL/GlInterfaceBase.cs @@ -23,7 +23,7 @@ public class GlInterfaceBase public GlInterfaceBase(Func getProcAddress, TContext context) { _getProcAddress = getProcAddress; - foreach (var prop in this.GetType().GetProperties()) + foreach (var prop in this.GetType().GetProperties(BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance | BindingFlags.Static)) { var attrs = prop.GetCustomAttributes() .Where(a => diff --git a/src/Avalonia.OpenGL/GlVersion.cs b/src/Avalonia.OpenGL/GlVersion.cs index 042ff4c2f08..598bf7b475f 100644 --- a/src/Avalonia.OpenGL/GlVersion.cs +++ b/src/Avalonia.OpenGL/GlVersion.cs @@ -9,10 +9,10 @@ public enum GlProfileType public struct GlVersion { public GlProfileType Type { get; } - public int Major { get; } - public int Minor { get; } + public uint Major { get; } + public uint Minor { get; } - public GlVersion(GlProfileType type, int major, int minor) + public GlVersion(GlProfileType type, uint major, uint minor) { Type = type; Major = major; diff --git a/src/Avalonia.OpenGL/OpenGlControlBase.cs b/src/Avalonia.OpenGL/OpenGlControlBase.cs index 8567dcae209..6a8bde2fd02 100644 --- a/src/Avalonia.OpenGL/OpenGlControlBase.cs +++ b/src/Avalonia.OpenGL/OpenGlControlBase.cs @@ -12,22 +12,22 @@ namespace Avalonia.OpenGL public abstract class OpenGlControlBase : Control { private IGlContext _context; - private int _fb, _texture, _renderBuffer; + private uint _fb, _texture, _renderBuffer; private OpenGlTextureBitmap _bitmap; private PixelSize _oldSize; private bool _glFailed; protected GlVersion GlVersion { get; private set; } public sealed override void Render(DrawingContext context) { - if(!EnsureInitialized()) + if (!EnsureInitialized()) return; - + using (_context.MakeCurrent()) { using (_bitmap.Lock()) { var gl = _context.GlInterface; - gl.BindFramebuffer(GL_FRAMEBUFFER, _fb); + gl.BindFramebuffer(FramebufferTarget.GL_FRAMEBUFFER, _fb); if (_oldSize != GetPixelSize()) ResizeTexture(gl); @@ -47,15 +47,15 @@ void DoCleanup(bool callUserDeinit) using (_context.MakeCurrent()) { var gl = _context.GlInterface; - gl.BindTexture(GL_TEXTURE_2D, 0); - gl.BindFramebuffer(GL_FRAMEBUFFER, 0); + gl.BindTexture(TextureTarget.GL_TEXTURE_2D, 0); + gl.BindFramebuffer(FramebufferTarget.GL_FRAMEBUFFER, 0); gl.DeleteFramebuffers(1, new[] { _fb }); - using (_bitmap.Lock()) + using (_bitmap.Lock()) _bitmap.SetTexture(0, 0, new PixelSize(1, 1), 1); gl.DeleteTextures(1, new[] { _texture }); gl.DeleteRenderbuffers(1, new[] { _renderBuffer }); _bitmap.Dispose(); - + try { if (callUserDeinit) @@ -80,10 +80,10 @@ bool EnsureInitialized() { if (_context != null) return true; - + if (_glFailed) return false; - + var feature = AvaloniaLocator.Current.GetService(); if (feature == null) return false; @@ -121,19 +121,19 @@ bool EnsureInitialized() { _oldSize = GetPixelSize(); var gl = _context.GlInterface; - var oneArr = new int[1]; + var oneArr = new uint[1]; gl.GenFramebuffers(1, oneArr); - _fb = oneArr[0]; - gl.BindFramebuffer(GL_FRAMEBUFFER, _fb); + _fb = oneArr[0]; + gl.BindFramebuffer(FramebufferTarget.GL_FRAMEBUFFER, _fb); gl.GenTextures(1, oneArr); _texture = oneArr[0]; - + ResizeTexture(gl); - gl.FramebufferTexture2D(GL_FRAMEBUFFER, GL_COLOR_ATTACHMENT0, GL_TEXTURE_2D, _texture, 0); + gl.FramebufferTexture2D(FramebufferTarget.GL_FRAMEBUFFER, FramebufferAttachment.GL_COLOR_ATTACHMENT0, TextureTarget.GL_TEXTURE_2D, _texture, 0); - var status = gl.CheckFramebufferStatus(GL_FRAMEBUFFER); + var status = gl.CheckFramebufferStatus(FramebufferTarget.GL_FRAMEBUFFER); if (status != GL_FRAMEBUFFER_COMPLETE) { int code; @@ -145,7 +145,7 @@ bool EnsureInitialized() return false; } } - catch(Exception e) + catch (Exception e) { Logger.TryGet(LogEventLevel.Error, "OpenGL")?.Log("OpenGlControlBase", "Unable to initialize OpenGL FBO: {exception}", e); @@ -168,30 +168,28 @@ void ResizeTexture(GlInterface gl) { var size = GetPixelSize(); - gl.GetIntegerv( GL_TEXTURE_BINDING_2D, out var oldTexture); - gl.BindTexture(GL_TEXTURE_2D, _texture); - gl.TexImage2D(GL_TEXTURE_2D, 0, + var oldTexture = (uint)gl.GetIntegerv_one(GetPName.GL_TEXTURE_BINDING_2D); + gl.BindTexture(TextureTarget.GL_TEXTURE_2D, _texture); + gl.TexImage2D(TextureTarget.GL_TEXTURE_2D, 0, GlVersion.Type == GlProfileType.OpenGLES ? GL_RGBA : GL_RGBA8, - size.Width, size.Height, 0, GL_RGBA, GL_UNSIGNED_BYTE, IntPtr.Zero); - gl.TexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST); - gl.TexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST); - gl.BindTexture(GL_TEXTURE_2D, oldTexture); - - gl.GetIntegerv(GL_RENDERBUFFER_BINDING, out var oldRenderBuffer); - gl.DeleteRenderbuffers(1, new[] { _renderBuffer }); - var oneArr = new int[1]; - gl.GenRenderbuffers(1, oneArr); - _renderBuffer = oneArr[0]; - gl.BindRenderbuffer(GL_RENDERBUFFER, _renderBuffer); - gl.RenderbufferStorage(GL_RENDERBUFFER, - GlVersion.Type == GlProfileType.OpenGLES ? GL_DEPTH_COMPONENT16 : GL_DEPTH_COMPONENT, + size.Width, size.Height, 0, PixelFormat.GL_RGBA, PixelType.GL_UNSIGNED_BYTE, IntPtr.Zero); + gl.TexParameteri(TextureTarget.GL_TEXTURE_2D, TextureParameterName.GL_TEXTURE_MAG_FILTER, GL_NEAREST); + gl.TexParameteri(TextureTarget.GL_TEXTURE_2D, TextureParameterName.GL_TEXTURE_MIN_FILTER, GL_NEAREST); + gl.BindTexture(TextureTarget.GL_TEXTURE_2D, oldTexture); + + var oldRenderBuffer = (uint)gl.GetIntegerv_one(GetPName.GL_RENDERBUFFER_BINDING); + gl.DeleteRenderbuffers(1, new[] { _renderBuffer }); + _renderBuffer = gl.GenRenderbuffers_one(1); + gl.BindRenderbuffer(RenderbufferTarget.GL_RENDERBUFFER, _renderBuffer); + gl.RenderbufferStorage(RenderbufferTarget.GL_RENDERBUFFER, + GlVersion.Type == GlProfileType.OpenGLES ? InternalFormat.GL_DEPTH_COMPONENT16 : InternalFormat.GL_DEPTH_COMPONENT, size.Width, size.Height); - gl.FramebufferRenderbuffer(GL_FRAMEBUFFER, GL_DEPTH_ATTACHMENT, GL_RENDERBUFFER, _renderBuffer); - gl.BindRenderbuffer(GL_RENDERBUFFER, oldRenderBuffer); + gl.FramebufferRenderbuffer(FramebufferTarget.GL_FRAMEBUFFER, FramebufferAttachment.GL_DEPTH_ATTACHMENT, RenderbufferTarget.GL_RENDERBUFFER, _renderBuffer); + gl.BindRenderbuffer(RenderbufferTarget.GL_RENDERBUFFER, oldRenderBuffer); using (_bitmap.Lock()) - _bitmap.SetTexture(_texture, GL_RGBA8, size, 1); + _bitmap.SetTexture((int)_texture, GL_RGBA8, size, 1); } - + PixelSize GetPixelSize() { var scaling = VisualRoot.RenderScaling; @@ -200,16 +198,16 @@ PixelSize GetPixelSize() } - protected virtual void OnOpenGlInit(GlInterface gl, int fb) + protected virtual void OnOpenGlInit(GlInterface gl, uint fb) { - + } - protected virtual void OnOpenGlDeinit(GlInterface gl, int fb) + protected virtual void OnOpenGlDeinit(GlInterface gl, uint fb) { - + } - - protected abstract void OnOpenGlRender(GlInterface gl, int fb); + + protected abstract void OnOpenGlRender(GlInterface gl, uint fb); } } diff --git a/src/Avalonia.X11/Glx/GlxDisplay.cs b/src/Avalonia.X11/Glx/GlxDisplay.cs index 903d6b570b7..c5789e31f95 100644 --- a/src/Avalonia.X11/Glx/GlxDisplay.cs +++ b/src/Avalonia.X11/Glx/GlxDisplay.cs @@ -132,8 +132,8 @@ GlxContext Create(GlVersion profile) var attrs = new int[] { - GLX_CONTEXT_MAJOR_VERSION_ARB, profile.Major, - GLX_CONTEXT_MINOR_VERSION_ARB, profile.Minor, + GLX_CONTEXT_MAJOR_VERSION_ARB, (int)profile.Major, + GLX_CONTEXT_MINOR_VERSION_ARB, (int)profile.Minor, GLX_CONTEXT_PROFILE_MASK_ARB, profileMask, 0 }; diff --git a/src/Skia/Avalonia.Skia/Gpu/OpenGl/GlRenderTarget.cs b/src/Skia/Avalonia.Skia/Gpu/OpenGl/GlRenderTarget.cs index e0b7019672f..035e3556d73 100644 --- a/src/Skia/Avalonia.Skia/Gpu/OpenGl/GlRenderTarget.cs +++ b/src/Skia/Avalonia.Skia/Gpu/OpenGl/GlRenderTarget.cs @@ -14,7 +14,7 @@ internal class GlRenderTarget : ISkiaGpuRenderTarget private IGlPlatformSurfaceRenderTarget _surface; public GlRenderTarget(GRContext grContext, IGlPlatformSurface glSurface) - { + { _grContext = grContext; _surface = glSurface.CreateGlRenderTarget(); } @@ -31,7 +31,7 @@ class GlGpuSession : ISkiaGpuRenderSession public GlGpuSession(GRContext grContext, GRBackendRenderTarget backendRenderTarget, - SKSurface surface, + SKSurface surface, IGlPlatformSurfaceRenderingSession glSession) { GrContext = grContext; @@ -61,7 +61,10 @@ public ISkiaGpuRenderSession BeginRenderingSession() { var disp = glSession.Context; var gl = disp.GlInterface; - gl.GetIntegerv(GL_FRAMEBUFFER_BINDING, out var fb); + // GL_FRAMEBUFFER_BINDING => GL_DRAW_FRAMEBUFFER_BINDING: https://stackoverflow.com/a/27462296/5521766 + var oneArr = new int[1]; + gl.GetIntegerv(Avalonia.OpenGL.GetPName.GL_DRAW_FRAMEBUFFER_BINDING, oneArr); + var fb = oneArr[0]; var size = glSession.Size; var scaling = glSession.Scaling; @@ -93,7 +96,7 @@ public ISkiaGpuRenderSession BeginRenderingSession() } finally { - if(!success) + if (!success) glSession.Dispose(); } } diff --git a/src/Skia/Avalonia.Skia/PlatformRenderInterface.cs b/src/Skia/Avalonia.Skia/PlatformRenderInterface.cs index 66b7fdea138..283f2fbf12b 100644 --- a/src/Skia/Avalonia.Skia/PlatformRenderInterface.cs +++ b/src/Skia/Avalonia.Skia/PlatformRenderInterface.cs @@ -13,6 +13,8 @@ using Avalonia.Visuals.Media.Imaging; using SkiaSharp; +using PixelFormat = Avalonia.Platform.PixelFormat; + namespace Avalonia.Skia { ///