Files
stgsharp/源代码/StgSharp/Graphics/Define/glApiDefine.cs
T

2704 lines
422 KiB
C#

/*
* This file is created to link functions in OpenGL to version in C#
* The name of delegates and organization to init all these delegates
* are refferd from GLAD1 in agreement of MIT license generated from
* https://glad.dav1d.de/
*/
using System;
using System.Runtime.InteropServices;
namespace StgSharp.Graphics
{
#region GLapi
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLACCUMXOESPROC(uint op, int value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLACQUIREKEYEDMUTEXWIN32EXTPROC(uint memory, uint key, uint timeout);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLACTIVEPROGRAMEXTPROC(uint program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLACTIVESHADERPROGRAMPROC(uint pipeline, uint program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLACTIVESTENCILFACEEXTPROC(uint face);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLACTIVETEXTUREPROC(uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLACTIVETEXTUREARBPROC(uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLACTIVEVARYINGNVPROC(uint program, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLALPHAFRAGMENTOP1ATIPROC(uint op, uint dst, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLALPHAFRAGMENTOP2ATIPROC(uint op, uint dst, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod, uint arg2, uint arg2Rep, uint arg2Mod);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLALPHAFRAGMENTOP3ATIPROC(uint op, uint dst, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod, uint arg2, uint arg2Rep, uint arg2Mod, uint arg3, uint arg3Rep, uint arg3Mod);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLALPHAFUNCXOESPROC(uint func, int valueRef);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLALPHATOCOVERAGEDITHERCONTROLNVPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLAPPLYFRAMEBUFFERATTACHMENTCMAAINTELPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLAPPLYTEXTUREEXTPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLAREPROGRAMSRESIDENTNVPROC(int n, uint* programs, bool* residences);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLARETEXTURESRESIDENTEXTPROC(int n, uint* textures, bool* residences);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLARRAYELEMENTEXTPROC(int i);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLARRAYOBJECTATIPROC(uint array, int size, uint type, int stride, uint buffer, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLASYNCCOPYBUFFERSUBDATANVXPROC(int waitSemaphoreCount, uint* waitSemaphoreArray, uint* fenceValueArray, uint readGpu, uint writeGpuMask, uint readBuffer, uint writeBuffer, long readOffset, long writeOffset, long size, int signalSemaphoreCount, uint* signalSemaphoreArray, uint* signalValueArray);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLASYNCCOPYIMAGESUBDATANVXPROC(int waitSemaphoreCount, uint* waitSemaphoreArray, uint* waitValueArray, uint srcGpu, uint dstGpuMask, uint srcName, uint srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, uint dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth, int signalSemaphoreCount, uint* signalSemaphoreArray, uint* signalValueArray);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLASYNCMARKERSGIXPROC(uint marker);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLATTACHOBJECTARBPROC(GLhandleARB containerObj, GLhandleARB obj);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLATTACHSHADERPROC(uint program, uint shader);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINCONDITIONALRENDERPROC(uint id, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINCONDITIONALRENDERNVPROC(uint id, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINCONDITIONALRENDERNVXPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINFRAGMENTSHADERATIPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINOCCLUSIONQUERYNVPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINPERFMONITORAMDPROC(uint monitor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINPERFQUERYINTELPROC(uint queryHandle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINQUERYPROC(uint target, uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINQUERYARBPROC(uint target, uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINQUERYINDEXEDPROC(uint target, uint index, uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINTRANSFORMFEEDBACKPROC(uint primitiveMode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINTRANSFORMFEEDBACKEXTPROC(uint primitiveMode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINTRANSFORMFEEDBACKNVPROC(uint primitiveMode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINVERTEXSHADEREXTPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBEGINVIDEOCAPTURENVPROC(uint video_capture_slot);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDATTRIBLOCATIONPROC(uint program, uint index, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDATTRIBLOCATIONARBPROC(GLhandleARB programObj, uint index, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDBUFFERPROC(uint target, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDBUFFERARBPROC(uint target, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDBUFFERBASEPROC(uint target, uint index, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDBUFFERBASEEXTPROC(uint target, uint index, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDBUFFERBASENVPROC(uint target, uint index, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDBUFFEROFFSETEXTPROC(uint target, uint index, uint buffer, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDBUFFEROFFSETNVPROC(uint target, uint index, uint buffer, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDBUFFERRANGEPROC(uint target, uint index, uint buffer, long offset, long size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDBUFFERRANGEEXTPROC(uint target, uint index, uint buffer, long offset, long size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDBUFFERRANGENVPROC(uint target, uint index, uint buffer, long offset, long size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDBUFFERSBASEPROC(uint target, uint first, int count, uint* buffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDBUFFERSRANGEPROC(uint target, uint first, int count, uint* buffers, long* offsets, long* sizes);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDFRAGDATALOCATIONPROC(uint program, uint color, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDFRAGDATALOCATIONEXTPROC(uint program, uint color, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDFRAGDATALOCATIONINDEXEDPROC(uint program, uint colorNumber, uint index, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDFRAGMENTSHADERATIPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDFRAMEBUFFERPROC(uint target, uint framebuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDFRAMEBUFFEREXTPROC(uint target, uint framebuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDIMAGETEXTUREPROC(uint unit, uint texture, int level, bool layered, int layer, uint access, uint format);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDIMAGETEXTUREEXTPROC(uint index, uint texture, int level, bool layered, int layer, uint access, int format);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDIMAGETEXTURESPROC(uint first, int count, uint* textures);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLBINDLIGHTPARAMETEREXTPROC(uint light, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLBINDMATERIALPARAMETEREXTPROC(uint face, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDMULTITEXTUREEXTPROC(uint texunit, uint target, uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLBINDPARAMETEREXTPROC(uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDPROGRAMARBPROC(uint target, uint program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDPROGRAMNVPROC(uint target, uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDPROGRAMPIPELINEPROC(uint pipeline);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDRENDERBUFFERPROC(uint target, uint renderbuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDRENDERBUFFEREXTPROC(uint target, uint renderbuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDSAMPLERPROC(uint unit, uint sampler);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDSAMPLERSPROC(uint first, int count, uint* samplers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDSHADINGRATEIMAGENVPROC(uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLBINDTEXGENPARAMETEREXTPROC(uint unit, uint coord, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDTEXTUREPROC(uint target, uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDTEXTUREEXTPROC(uint target, uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDTEXTUREUNITPROC(uint unit, uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLBINDTEXTUREUNITPARAMETEREXTPROC(uint unit, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDTEXTURESPROC(uint first, int count, uint* textures);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDTRANSFORMFEEDBACKPROC(uint target, uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDTRANSFORMFEEDBACKNVPROC(uint target, uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDVERTEXARRAYPROC(uint array);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDVERTEXARRAYAPPLEPROC(uint array);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDVERTEXBUFFERPROC(uint bindingindex, uint buffer, long offset, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDVERTEXBUFFERSPROC(uint first, int count, uint* buffers, long* offsets, int* strides);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDVERTEXSHADEREXTPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDVIDEOCAPTURESTREAMBUFFERNVPROC(uint video_capture_slot, uint stream, uint frame_region, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINDVIDEOCAPTURESTREAMTEXTURENVPROC(uint video_capture_slot, uint stream, uint frame_region, uint target, uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINORMAL3BEXTPROC(sbyte bx, sbyte by, sbyte bz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINORMAL3BVEXTPROC(sbyte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINORMAL3DEXTPROC(double bx, double by, double bz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINORMAL3DVEXTPROC(double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINORMAL3FEXTPROC(float bx, float by, float bz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINORMAL3FVEXTPROC(float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINORMAL3IEXTPROC(int bx, int by, int bz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINORMAL3IVEXTPROC(int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINORMAL3SEXTPROC(short bx, short by, short bz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINORMAL3SVEXTPROC(short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBINORMALPOINTEREXTPROC(uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBITMAPXOESPROC(int width, int height, int xorig, int yorig, int xmove, int ymove, byte* bitmap);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDBARRIERKHRPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDBARRIERNVPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDCOLORPROC(float red, float green, float blue, float alpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDCOLOREXTPROC(float red, float green, float blue, float alpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDCOLORXOESPROC(int red, int green, int blue, int alpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDEQUATIONPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDEQUATIONEXTPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDEQUATIONINDEXEDAMDPROC(uint buf, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDEQUATIONSEPARATEPROC(uint modeRGB, uint modeAlpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDEQUATIONSEPARATEEXTPROC(uint modeRGB, uint modeAlpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDEQUATIONSEPARATEINDEXEDAMDPROC(uint buf, uint modeRGB, uint modeAlpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDEQUATIONSEPARATEIPROC(uint buf, uint modeRGB, uint modeAlpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDEQUATIONSEPARATEIARBPROC(uint buf, uint modeRGB, uint modeAlpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDEQUATIONIPROC(uint buf, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDEQUATIONIARBPROC(uint buf, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDFUNCPROC(uint sfactor, uint dfactor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDFUNCINDEXEDAMDPROC(uint buf, uint src, uint dst);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDFUNCSEPARATEPROC(uint sfactorRGB, uint dfactorRGB, uint sfactorAlpha, uint dfactorAlpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDFUNCSEPARATEEXTPROC(uint sfactorRGB, uint dfactorRGB, uint sfactorAlpha, uint dfactorAlpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDFUNCSEPARATEINGRPROC(uint sfactorRGB, uint dfactorRGB, uint sfactorAlpha, uint dfactorAlpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDFUNCSEPARATEINDEXEDAMDPROC(uint buf, uint srcRGB, uint dstRGB, uint srcAlpha, uint dstAlpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDFUNCSEPARATEIPROC(uint buf, uint srcRGB, uint dstRGB, uint srcAlpha, uint dstAlpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDFUNCSEPARATEIARBPROC(uint buf, uint srcRGB, uint dstRGB, uint srcAlpha, uint dstAlpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDFUNCIPROC(uint buf, uint src, uint dst);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDFUNCIARBPROC(uint buf, uint src, uint dst);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLENDPARAMETERINVPROC(uint pname, int value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLITFRAMEBUFFERPROC(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, uint mask, uint filter);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLITFRAMEBUFFEREXTPROC(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, uint mask, uint filter);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLITFRAMEBUFFERLAYEREXTPROC(int srcX0, int srcY0, int srcX1, int srcY1, int srcLayer, int dstX0, int dstY0, int dstX1, int dstY1, int dstLayer, uint mask, uint filter);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLITFRAMEBUFFERLAYERSEXTPROC(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, uint mask, uint filter);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBLITNAMEDFRAMEBUFFERPROC(uint readFramebuffer, uint drawFramebuffer, int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, uint mask, uint filter);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBUFFERADDRESSRANGENVPROC(uint pname, uint index, ulong address, long length);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBUFFERATTACHMEMORYNVPROC(uint target, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBUFFERDATAPROC(uint target, long size, void* data, uint usage);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBUFFERDATAARBPROC(uint target, long size, void* data, uint usage);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBUFFERPAGECOMMITMENTARBPROC(uint target, long offset, long size, bool commit);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBUFFERPAGECOMMITMENTMEMNVPROC(uint target, long offset, long size, uint memory, uint memOffset, bool commit);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBUFFERPARAMETERIAPPLEPROC(uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBUFFERSTORAGEPROC(uint target, long size, void* data, uint flags);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBUFFERSTORAGEEXTERNALEXTPROC(uint target, long offset, long size, void* clientBuffer, uint flags);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBUFFERSTORAGEMEMEXTPROC(uint target, long size, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBUFFERSUBDATAPROC(uint target, long offset, long size, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLBUFFERSUBDATAARBPROC(uint target, long offset, long size, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCALLCOMMANDLISTNVPROC(uint list);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLCHECKFRAMEBUFFERSTATUSPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC(uint framebuffer, uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLCHECKNAMEDFRAMEBUFFERSTATUSEXTPROC(uint framebuffer, uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLAMPCOLORPROC(uint target, uint clamp);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLAMPCOLORARBPROC(uint target, uint clamp);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARPROC(uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARACCUMXOESPROC(int red, int green, int blue, int alpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARBUFFERDATAPROC(uint target, uint internalformat, uint format, uint type, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARBUFFERSUBDATAPROC(uint target, uint internalformat, long offset, long size, uint format, uint type, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARBUFFERFIPROC(uint buffer, int drawbuffer, float depth, int stencil);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARBUFFERFVPROC(uint buffer, int drawbuffer, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARBUFFERIVPROC(uint buffer, int drawbuffer, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARBUFFERUIVPROC(uint buffer, int drawbuffer, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARCOLORPROC(float red, float green, float blue, float alpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARCOLORIIEXTPROC(int red, int green, int blue, int alpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARCOLORIUIEXTPROC(uint red, uint green, uint blue, uint alpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARCOLORXOESPROC(int red, int green, int blue, int alpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARDEPTHPROC(double depth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARDEPTHDNVPROC(double depth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARDEPTHFPROC(float d);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARDEPTHFOESPROC(float depth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARDEPTHXOESPROC(int depth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARNAMEDBUFFERDATAPROC(uint buffer, uint internalformat, uint format, uint type, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARNAMEDBUFFERDATAEXTPROC(uint buffer, uint internalformat, uint format, uint type, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARNAMEDBUFFERSUBDATAPROC(uint buffer, uint internalformat, long offset, long size, uint format, uint type, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARNAMEDBUFFERSUBDATAEXTPROC(uint buffer, uint internalformat, long offset, long size, uint format, uint type, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARNAMEDFRAMEBUFFERFIPROC(uint framebuffer, uint buffer, int drawbuffer, float depth, int stencil);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARNAMEDFRAMEBUFFERFVPROC(uint framebuffer, uint buffer, int drawbuffer, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARNAMEDFRAMEBUFFERIVPROC(uint framebuffer, uint buffer, int drawbuffer, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC(uint framebuffer, uint buffer, int drawbuffer, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARSTENCILPROC(int s);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARTEXIMAGEPROC(uint texture, int level, uint format, uint type, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLEARTEXSUBIMAGEPROC(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint format, uint type, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLIENTACTIVETEXTUREARBPROC(uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLIENTACTIVEVERTEXSTREAMATIPROC(uint stream);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLIENTATTRIBDEFAULTEXTPROC(uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLIENTWAITSEMAPHOREUI64NVXPROC(int fenceObjectCount, uint* semaphoreArray, uint* fenceValueArray);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLCLIENTWAITSYNCPROC(GLsync sync, uint flags, uint timeout);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLIPCONTROLPROC(uint origin, uint depth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLIPPLANEFOESPROC(uint plane, float* equation);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCLIPPLANEXOESPROC(uint plane, int* equation);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR3FVERTEX3FSUNPROC(float r, float g, float b, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR3FVERTEX3FVSUNPROC(float* c, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR3HNVPROC(ushort red, ushort green, ushort blue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR3HVNVPROC(ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR3XOESPROC(int red, int green, int blue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR3XVOESPROC(int* components);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR4FNORMAL3FVERTEX3FSUNPROC(float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR4FNORMAL3FVERTEX3FVSUNPROC(float* c, float* n, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR4HNVPROC(ushort red, ushort green, ushort blue, ushort alpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR4HVNVPROC(ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR4UBVERTEX2FSUNPROC(byte r, byte g, byte b, byte a, float x, float y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR4UBVERTEX2FVSUNPROC(byte* c, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR4UBVERTEX3FSUNPROC(byte r, byte g, byte b, byte a, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR4UBVERTEX3FVSUNPROC(byte* c, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR4XOESPROC(int red, int green, int blue, int alpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLOR4XVOESPROC(int* components);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORFORMATNVPROC(int size, uint type, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORFRAGMENTOP1ATIPROC(uint op, uint dst, uint dstMask, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORFRAGMENTOP2ATIPROC(uint op, uint dst, uint dstMask, uint dstMod, uint arg1, uint arg1Rep, uint arg1Mod, uint arg2, uint arg2Rep, uint arg2Mod);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORFRAGMENTOP3ATIPROC(uint 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);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORMASKPROC(bool red, bool green, bool blue, bool alpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORMASKINDEXEDEXTPROC(uint index, bool r, bool g, bool b, bool a);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORMASKIPROC(uint index, bool r, bool g, bool b, bool a);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORPOINTEREXTPROC(int size, uint type, int stride, int count, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORPOINTERLISTIBMPROC(int size, uint type, int stride, void** pointer, int ptrstride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORPOINTERVINTELPROC(int size, uint type, void** pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORSUBTABLEEXTPROC(uint target, int start, int count, uint format, uint type, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORTABLEEXTPROC(uint target, uint internalFormat, int width, uint format, uint type, void* table);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORTABLEPARAMETERFVSGIPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORTABLEPARAMETERIVSGIPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOLORTABLESGIPROC(uint target, uint internalformat, int width, uint format, uint type, void* table);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMBINERINPUTNVPROC(uint stage, uint portion, uint variable, uint input, uint mapping, uint componentUsage);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMBINEROUTPUTNVPROC(uint stage, uint portion, uint abOutput, uint cdOutput, uint sumOutput, uint scale, uint bias, bool abDotProduct, bool cdDotProduct, bool muxSum);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMBINERPARAMETERFNVPROC(uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMBINERPARAMETERFVNVPROC(uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMBINERPARAMETERINVPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMBINERPARAMETERIVNVPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMBINERSTAGEPARAMETERFVNVPROC(uint stage, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMMANDLISTSEGMENTSNVPROC(uint list, uint segments);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPILECOMMANDLISTNVPROC(uint list);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPILESHADERPROC(uint shader);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPILESHADERARBPROC(GLhandleARB shaderObj);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPILESHADERINCLUDEARBPROC(uint shader, int count, byte** path, int* length);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDMULTITEXIMAGE1DEXTPROC(uint texunit, uint target, int level, uint internalformat, int width, int border, int imageSize, void* bits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDMULTITEXIMAGE2DEXTPROC(uint texunit, uint target, int level, uint internalformat, int width, int height, int border, int imageSize, void* bits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDMULTITEXIMAGE3DEXTPROC(uint texunit, uint target, int level, uint internalformat, int width, int height, int depth, int border, int imageSize, void* bits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDMULTITEXSUBIMAGE1DEXTPROC(uint texunit, uint target, int level, int xoffset, int width, uint format, int imageSize, void* bits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDMULTITEXSUBIMAGE2DEXTPROC(uint texunit, uint target, int level, int xoffset, int yoffset, int width, int height, uint format, int imageSize, void* bits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDMULTITEXSUBIMAGE3DEXTPROC(uint texunit, uint target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint format, int imageSize, void* bits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXIMAGE1DPROC(uint target, int level, uint internalformat, int width, int border, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXIMAGE1DARBPROC(uint target, int level, uint internalformat, int width, int border, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXIMAGE2DPROC(uint target, int level, uint internalformat, int width, int height, int border, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXIMAGE2DARBPROC(uint target, int level, uint internalformat, int width, int height, int border, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXIMAGE3DPROC(uint target, int level, uint internalformat, int width, int height, int depth, int border, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXIMAGE3DARBPROC(uint target, int level, uint internalformat, int width, int height, int depth, int border, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC(uint target, int level, int xoffset, int width, uint format, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC(uint target, int level, int xoffset, int width, uint format, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC(uint target, int level, int xoffset, int yoffset, int width, int height, uint format, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC(uint target, int level, int xoffset, int yoffset, int width, int height, uint format, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC(uint target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint format, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC(uint target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint format, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXTUREIMAGE1DEXTPROC(uint texture, uint target, int level, uint internalformat, int width, int border, int imageSize, void* bits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXTUREIMAGE2DEXTPROC(uint texture, uint target, int level, uint internalformat, int width, int height, int border, int imageSize, void* bits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXTUREIMAGE3DEXTPROC(uint texture, uint target, int level, uint internalformat, int width, int height, int depth, int border, int imageSize, void* bits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC(uint texture, int level, int xoffset, int width, uint format, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXTURESUBIMAGE1DEXTPROC(uint texture, uint target, int level, int xoffset, int width, uint format, int imageSize, void* bits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC(uint texture, int level, int xoffset, int yoffset, int width, int height, uint format, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXTURESUBIMAGE2DEXTPROC(uint texture, uint target, int level, int xoffset, int yoffset, int width, int height, uint format, int imageSize, void* bits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint format, int imageSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOMPRESSEDTEXTURESUBIMAGE3DEXTPROC(uint texture, uint target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint format, int imageSize, void* bits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCONSERVATIVERASTERPARAMETERFNVPROC(uint pname, float value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCONSERVATIVERASTERPARAMETERINVPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCONVOLUTIONFILTER1DEXTPROC(uint target, uint internalformat, int width, uint format, uint type, void* image);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCONVOLUTIONFILTER2DEXTPROC(uint target, uint internalformat, int width, int height, uint format, uint type, void* image);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCONVOLUTIONPARAMETERFEXTPROC(uint target, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCONVOLUTIONPARAMETERFVEXTPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCONVOLUTIONPARAMETERIEXTPROC(uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCONVOLUTIONPARAMETERIVEXTPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCONVOLUTIONPARAMETERXOESPROC(uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCONVOLUTIONPARAMETERXVOESPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYBUFFERSUBDATAPROC(uint readTarget, uint writeTarget, long readOffset, long writeOffset, long size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYCOLORSUBTABLEEXTPROC(uint target, int start, int x, int y, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYCOLORTABLESGIPROC(uint target, uint internalformat, int x, int y, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYCONVOLUTIONFILTER1DEXTPROC(uint target, uint internalformat, int x, int y, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYCONVOLUTIONFILTER2DEXTPROC(uint target, uint internalformat, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYIMAGESUBDATAPROC(uint srcName, uint srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, uint dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYIMAGESUBDATANVPROC(uint srcName, uint srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, uint dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int width, int height, int depth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYMULTITEXIMAGE1DEXTPROC(uint texunit, uint target, int level, uint internalformat, int x, int y, int width, int border);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYMULTITEXIMAGE2DEXTPROC(uint texunit, uint target, int level, uint internalformat, int x, int y, int width, int height, int border);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYMULTITEXSUBIMAGE1DEXTPROC(uint texunit, uint target, int level, int xoffset, int x, int y, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYMULTITEXSUBIMAGE2DEXTPROC(uint texunit, uint target, int level, int xoffset, int yoffset, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYMULTITEXSUBIMAGE3DEXTPROC(uint texunit, uint target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYNAMEDBUFFERSUBDATAPROC(uint readBuffer, uint writeBuffer, long readOffset, long writeOffset, long size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYPATHNVPROC(uint resultPath, uint srcPath);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXIMAGE1DPROC(uint target, int level, uint internalformat, int x, int y, int width, int border);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXIMAGE1DEXTPROC(uint target, int level, uint internalformat, int x, int y, int width, int border);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXIMAGE2DPROC(uint target, int level, uint internalformat, int x, int y, int width, int height, int border);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXIMAGE2DEXTPROC(uint target, int level, uint internalformat, int x, int y, int width, int height, int border);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXSUBIMAGE1DPROC(uint target, int level, int xoffset, int x, int y, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXSUBIMAGE1DEXTPROC(uint target, int level, int xoffset, int x, int y, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXSUBIMAGE2DPROC(uint target, int level, int xoffset, int yoffset, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXSUBIMAGE2DEXTPROC(uint target, int level, int xoffset, int yoffset, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXSUBIMAGE3DPROC(uint target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXSUBIMAGE3DEXTPROC(uint target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXTUREIMAGE1DEXTPROC(uint texture, uint target, int level, uint internalformat, int x, int y, int width, int border);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXTUREIMAGE2DEXTPROC(uint texture, uint target, int level, uint internalformat, int x, int y, int width, int height, int border);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXTURESUBIMAGE1DPROC(uint texture, int level, int xoffset, int x, int y, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXTURESUBIMAGE1DEXTPROC(uint texture, uint target, int level, int xoffset, int x, int y, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXTURESUBIMAGE2DPROC(uint texture, int level, int xoffset, int yoffset, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXTURESUBIMAGE2DEXTPROC(uint texture, uint target, int level, int xoffset, int yoffset, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXTURESUBIMAGE3DPROC(uint texture, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOPYTEXTURESUBIMAGE3DEXTPROC(uint texture, uint target, int level, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOVERFILLPATHINSTANCEDNVPROC(int numPaths, uint pathNameType, void* paths, uint pathBase, uint coverMode, uint transformType, float* transformValues);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOVERFILLPATHNVPROC(uint path, uint coverMode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOVERSTROKEPATHINSTANCEDNVPROC(int numPaths, uint pathNameType, void* paths, uint pathBase, uint coverMode, uint transformType, float* transformValues);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOVERSTROKEPATHNVPROC(uint path, uint coverMode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOVERAGEMODULATIONNVPROC(uint components);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCOVERAGEMODULATIONTABLENVPROC(int n, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATEBUFFERSPROC(int n, uint* buffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATECOMMANDLISTSNVPROC(int n, uint* lists);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATEFRAMEBUFFERSPROC(int n, uint* framebuffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATEMEMORYOBJECTSEXTPROC(int n, uint* memoryObjects);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATEPERFQUERYINTELPROC(uint queryId, uint* queryHandle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLCREATEPROGRAMPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate GLhandleARB PFNGLCREATEPROGRAMOBJECTARBPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATEPROGRAMPIPELINESPROC(int n, uint* pipelines);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLCREATEPROGRESSFENCENVXPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATEQUERIESPROC(uint target, int n, uint* ids);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATERENDERBUFFERSPROC(int n, uint* renderbuffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATESAMPLERSPROC(int n, uint* samplers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATESEMAPHORESNVPROC(int n, uint* semaphores);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLCREATESHADERPROC(uint type);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate GLhandleARB PFNGLCREATESHADEROBJECTARBPROC(uint shaderType);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLCREATESHADERPROGRAMEXTPROC(uint type, byte* str);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLCREATESHADERPROGRAMVPROC(uint type, int count, byte** strings);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATESTATESNVPROC(int n, uint* states);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate GLsync PFNGLCREATESYNCFROMCLEVENTARBPROC(IntPtr context, IntPtr operation, uint flags);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATETEXTURESPROC(uint target, int n, uint* textures);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATETRANSFORMFEEDBACKSPROC(int n, uint* ids);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCREATEVERTEXARRAYSPROC(int n, uint* arrays);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCULLFACEPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCULLPARAMETERDVEXTPROC(uint pname, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCULLPARAMETERFVEXTPROC(uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLCURRENTPALETTEMATRIXARBPROC(int index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEBUGMESSAGECALLBACKPROC(GLDEBUGPROC callback, void* userParam);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEBUGMESSAGECALLBACKAMDPROC(GLDEBUGPROCAMD callback, void* userParam);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEBUGMESSAGECALLBACKARBPROC(GLDEBUGPROCARB callback, void* userParam);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEBUGMESSAGECONTROLPROC(uint source, uint type, uint severity, int count, uint* ids, bool enabled);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEBUGMESSAGECONTROLARBPROC(uint source, uint type, uint severity, int count, uint* ids, bool enabled);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEBUGMESSAGEENABLEAMDPROC(uint category, uint severity, int count, uint* ids, bool enabled);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEBUGMESSAGEINSERTPROC(uint source, uint type, uint id, uint severity, int length, byte* buf);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEBUGMESSAGEINSERTAMDPROC(uint category, uint severity, uint id, int length, byte* buf);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEBUGMESSAGEINSERTARBPROC(uint source, uint type, uint id, uint severity, int length, byte* buf);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEFORMSGIXPROC(uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEFORMATIONMAP3DSGIXPROC(uint 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);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEFORMATIONMAP3FSGIXPROC(uint 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);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEASYNCMARKERSSGIXPROC(uint marker, int range);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEBUFFERSPROC(int n, uint* buffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEBUFFERSARBPROC(int n, uint* buffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETECOMMANDLISTSNVPROC(int n, uint* lists);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEFENCESAPPLEPROC(int n, uint* fences);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEFENCESNVPROC(int n, uint* fences);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEFRAGMENTSHADERATIPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEFRAMEBUFFERSPROC(int n, uint* framebuffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEFRAMEBUFFERSEXTPROC(int n, uint* framebuffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEMEMORYOBJECTSEXTPROC(int n, uint* memoryObjects);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETENAMEDSTRINGARBPROC(int namelen, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETENAMESAMDPROC(uint identifier, uint num, uint* names);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEOBJECTARBPROC(GLhandleARB obj);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEOCCLUSIONQUERIESNVPROC(int n, uint* ids);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEPATHSNVPROC(uint path, int range);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEPERFMONITORSAMDPROC(int n, uint* monitors);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEPERFQUERYINTELPROC(uint queryHandle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEPROGRAMPROC(uint program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEPROGRAMPIPELINESPROC(int n, uint* pipelines);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEPROGRAMSARBPROC(int n, uint* programs);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEPROGRAMSNVPROC(int n, uint* programs);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEQUERIESPROC(int n, uint* ids);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEQUERIESARBPROC(int n, uint* ids);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEQUERYRESOURCETAGNVPROC(int n, int* tagIds);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETERENDERBUFFERSPROC(int n, uint* renderbuffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETERENDERBUFFERSEXTPROC(int n, uint* renderbuffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETESAMPLERSPROC(int count, uint* samplers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETESEMAPHORESEXTPROC(int n, uint* semaphores);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETESHADERPROC(uint shader);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETESTATESNVPROC(int n, uint* states);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETESYNCPROC(GLsync sync);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETETEXTURESPROC(int n, uint* textures);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETETEXTURESEXTPROC(int n, uint* textures);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETETRANSFORMFEEDBACKSPROC(int n, uint* ids);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETETRANSFORMFEEDBACKSNVPROC(int n, uint* ids);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEVERTEXARRAYSPROC(int n, uint* arrays);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEVERTEXARRAYSAPPLEPROC(int n, uint* arrays);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDELETEVERTEXSHADEREXTPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHBOUNDSEXTPROC(double zmin, double zmax);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHBOUNDSDNVPROC(double zmin, double zmax);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHFUNCPROC(uint func);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHMASKPROC(bool flag);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHRANGEPROC(double n, double f);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHRANGEARRAYDVNVPROC(uint first, int count, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHRANGEARRAYVPROC(uint first, int count, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHRANGEINDEXEDPROC(uint index, double n, double f);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHRANGEINDEXEDDNVPROC(uint index, double n, double f);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHRANGEDNVPROC(double zNear, double zFar);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHRANGEFPROC(float n, float f);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHRANGEFOESPROC(float n, float f);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDEPTHRANGEXOESPROC(int n, int f);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDETACHOBJECTARBPROC(GLhandleARB containerObj, GLhandleARB attachedObj);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDETACHSHADERPROC(uint program, uint shader);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDETAILTEXFUNCSGISPROC(uint target, int n, float* points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISABLEPROC(uint cap);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISABLECLIENTSTATEINDEXEDEXTPROC(uint array, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISABLECLIENTSTATEIEXTPROC(uint array, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISABLEINDEXEDEXTPROC(uint target, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISABLEVARIANTCLIENTSTATEEXTPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISABLEVERTEXARRAYATTRIBPROC(uint vaobj, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISABLEVERTEXARRAYATTRIBEXTPROC(uint vaobj, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISABLEVERTEXARRAYEXTPROC(uint vaobj, uint array);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISABLEVERTEXATTRIBAPPLEPROC(uint index, uint pname);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISABLEVERTEXATTRIBARRAYPROC(uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISABLEVERTEXATTRIBARRAYARBPROC(uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISABLEIPROC(uint target, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISPATCHCOMPUTEPROC(uint num_groups_x, uint num_groups_y, uint num_groups_z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISPATCHCOMPUTEGROUPSIZEARBPROC(uint num_groups_x, uint num_groups_y, uint num_groups_z, uint group_size_x, uint group_size_y, uint group_size_z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDISPATCHCOMPUTEINDIRECTPROC(long indirect);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWARRAYSPROC(uint mode, int first, int count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWARRAYSEXTPROC(uint mode, int first, int count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWARRAYSINDIRECTPROC(uint mode, void* indirect);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWARRAYSINSTANCEDPROC(uint mode, int first, int count, int instancecount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWARRAYSINSTANCEDARBPROC(uint mode, int first, int count, int primcount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC(uint mode, int first, int count, int instancecount, uint baseinstance);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWARRAYSINSTANCEDEXTPROC(uint mode, int start, int count, int primcount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWBUFFERPROC(uint buf);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWBUFFERSPROC(int n, uint* bufs);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWBUFFERSARBPROC(int n, uint* bufs);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWBUFFERSATIPROC(int n, uint* bufs);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWCOMMANDSADDRESSNVPROC(uint primitiveMode, uint* indirects, int* sizes, uint count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWCOMMANDSNVPROC(uint primitiveMode, uint buffer, long* indirects, int* sizes, uint count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWCOMMANDSSTATESADDRESSNVPROC(uint* indirects, int* sizes, uint* states, uint* fbos, uint count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWCOMMANDSSTATESNVPROC(uint buffer, long* indirects, int* sizes, uint* states, uint* fbos, uint count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWELEMENTARRAYAPPLEPROC(uint mode, int first, int count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWELEMENTARRAYATIPROC(uint mode, int count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWELEMENTSPROC(uint mode, int count, uint type, void* indices);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWELEMENTSBASEVERTEXPROC(uint mode, int count, uint type, void* indices, int basevertex);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWELEMENTSINDIRECTPROC(uint mode, uint type, void* indirect);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWELEMENTSINSTANCEDPROC(uint mode, int count, uint type, void* indices, int instancecount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWELEMENTSINSTANCEDARBPROC(uint mode, int count, uint type, void* indices, int primcount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC(uint mode, int count, uint type, void* indices, int instancecount, uint baseinstance);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC(uint mode, int count, uint type, void* indices, int instancecount, int basevertex);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC(uint mode, int count, uint type, void* indices, int instancecount, int basevertex, uint baseinstance);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWELEMENTSINSTANCEDEXTPROC(uint mode, int count, uint type, void* indices, int primcount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWMESHARRAYSSUNPROC(uint mode, int first, int count, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWMESHTASKSINDIRECTNVPROC(long indirect);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWMESHTASKSNVPROC(uint first, uint count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWRANGEELEMENTARRAYAPPLEPROC(uint mode, uint start, uint end, int first, int count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWRANGEELEMENTARRAYATIPROC(uint mode, uint start, uint end, int count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWRANGEELEMENTSPROC(uint mode, uint start, uint end, int count, uint type, void* indices);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC(uint mode, uint start, uint end, int count, uint type, void* indices, int basevertex);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWRANGEELEMENTSEXTPROC(uint mode, uint start, uint end, int count, uint type, void* indices);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWTEXTURENVPROC(uint texture, uint sampler, float x0, float y0, float x1, float y1, float z, float s0, float t0, float s1, float t1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWTRANSFORMFEEDBACKPROC(uint mode, uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC(uint mode, uint id, int instancecount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWTRANSFORMFEEDBACKNVPROC(uint mode, uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC(uint mode, uint id, uint stream);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC(uint mode, uint id, uint stream, int instancecount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLDRAWVKIMAGENVPROC(uint vkImage, uint sampler, float x0, float y0, float x1, float y1, float z, float s0, float t0, float s1, float t1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEGLIMAGETARGETTEXSTORAGEEXTPROC(uint target, void* image, int* attrib_list);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEGLIMAGETARGETTEXTURESTORAGEEXTPROC(uint texture, void* image, int* attrib_list);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEDGEFLAGFORMATNVPROC(int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEDGEFLAGPOINTEREXTPROC(int stride, int count, bool* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEDGEFLAGPOINTERLISTIBMPROC(int stride, bool** pointer, int ptrstride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLELEMENTPOINTERAPPLEPROC(uint type, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLELEMENTPOINTERATIPROC(uint type, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENABLEPROC(uint cap);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENABLECLIENTSTATEINDEXEDEXTPROC(uint array, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENABLECLIENTSTATEIEXTPROC(uint array, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENABLEINDEXEDEXTPROC(uint target, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENABLEVARIANTCLIENTSTATEEXTPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENABLEVERTEXARRAYATTRIBPROC(uint vaobj, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENABLEVERTEXARRAYATTRIBEXTPROC(uint vaobj, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENABLEVERTEXARRAYEXTPROC(uint vaobj, uint array);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENABLEVERTEXATTRIBAPPLEPROC(uint index, uint pname);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENABLEVERTEXATTRIBARRAYPROC(uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENABLEVERTEXATTRIBARRAYARBPROC(uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENABLEIPROC(uint target, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDCONDITIONALRENDERPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDCONDITIONALRENDERNVPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDCONDITIONALRENDERNVXPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDFRAGMENTSHADERATIPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDOCCLUSIONQUERYNVPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDPERFMONITORAMDPROC(uint monitor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDPERFQUERYINTELPROC(uint queryHandle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDQUERYPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDQUERYARBPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDQUERYINDEXEDPROC(uint target, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDTRANSFORMFEEDBACKPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDTRANSFORMFEEDBACKEXTPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDTRANSFORMFEEDBACKNVPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDVERTEXSHADEREXTPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLENDVIDEOCAPTURENVPROC(uint video_capture_slot);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEVALCOORD1XOESPROC(int u);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEVALCOORD1XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEVALCOORD2XOESPROC(int u, int v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEVALCOORD2XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEVALMAPSNVPROC(uint target, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEVALUATEDEPTHVALUESARBPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEXECUTEPROGRAMNVPROC(uint target, uint id, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLEXTRACTCOMPONENTEXTPROC(uint res, uint src, uint num);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFEEDBACKBUFFERXOESPROC(int n, uint type, int* buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate GLsync PFNGLFENCESYNCPROC(uint condition, uint flags);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFINALCOMBINERINPUTNVPROC(uint variable, uint input, uint mapping, uint componentUsage);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFINISHPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLFINISHASYNCSGIXPROC(uint* markerp);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFINISHFENCEAPPLEPROC(uint fence);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFINISHFENCENVPROC(uint fence);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFINISHOBJECTAPPLEPROC(uint obj, int name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFINISHTEXTURESUNXPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFLUSHPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFLUSHMAPPEDBUFFERRANGEPROC(uint target, long offset, long length);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFLUSHMAPPEDBUFFERRANGEAPPLEPROC(uint target, long offset, long size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC(uint buffer, long offset, long length);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEEXTPROC(uint buffer, long offset, long length);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFLUSHPIXELDATARANGENVPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFLUSHRASTERSGIXPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFLUSHSTATICDATAIBMPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFLUSHVERTEXARRAYRANGEAPPLEPROC(int length, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFLUSHVERTEXARRAYRANGENVPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFOGCOORDFORMATNVPROC(uint type, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFOGCOORDPOINTEREXTPROC(uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFOGCOORDPOINTERLISTIBMPROC(uint type, int stride, void** pointer, int ptrstride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFOGCOORDDEXTPROC(double coord);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFOGCOORDDVEXTPROC(double* coord);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFOGCOORDFEXTPROC(float coord);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFOGCOORDFVEXTPROC(float* coord);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFOGCOORDHNVPROC(ushort fog);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFOGCOORDHVNVPROC(ushort* fog);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFOGFUNCSGISPROC(int n, float* points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFOGXOESPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFOGXVOESPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTCOLORMATERIALSGIXPROC(uint face, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTCOVERAGECOLORNVPROC(uint color);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTLIGHTMODELFSGIXPROC(uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTLIGHTMODELFVSGIXPROC(uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTLIGHTMODELISGIXPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTLIGHTMODELIVSGIXPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTLIGHTFSGIXPROC(uint light, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTLIGHTFVSGIXPROC(uint light, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTLIGHTISGIXPROC(uint light, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTLIGHTIVSGIXPROC(uint light, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTMATERIALFSGIXPROC(uint face, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTMATERIALFVSGIXPROC(uint face, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTMATERIALISGIXPROC(uint face, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAGMENTMATERIALIVSGIXPROC(uint face, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMETERMINATORGREMEDYPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEZOOMSGIXPROC(int factor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERDRAWBUFFEREXTPROC(uint framebuffer, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERDRAWBUFFERSEXTPROC(uint framebuffer, int n, uint* bufs);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERFETCHBARRIEREXTPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERPARAMETERIPROC(uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERPARAMETERIMESAPROC(uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERREADBUFFEREXTPROC(uint framebuffer, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERRENDERBUFFERPROC(uint target, uint attachment, uint renderbuffertarget, uint renderbuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC(uint target, uint attachment, uint renderbuffertarget, uint renderbuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERSAMPLELOCATIONSFVARBPROC(uint target, uint start, int count, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERSAMPLELOCATIONSFVNVPROC(uint target, uint start, int count, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC(uint target, uint numsamples, uint pixelindex, float* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTUREPROC(uint target, uint attachment, uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTURE1DPROC(uint target, uint attachment, uint textarget, uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTURE1DEXTPROC(uint target, uint attachment, uint textarget, uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTURE2DPROC(uint target, uint attachment, uint textarget, uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTURE2DEXTPROC(uint target, uint attachment, uint textarget, uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTURE3DPROC(uint target, uint attachment, uint textarget, uint texture, int level, int zoffset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTURE3DEXTPROC(uint target, uint attachment, uint textarget, uint texture, int level, int zoffset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTUREARBPROC(uint target, uint attachment, uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTUREEXTPROC(uint target, uint attachment, uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTUREFACEARBPROC(uint target, uint attachment, uint texture, int level, uint face);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTUREFACEEXTPROC(uint target, uint attachment, uint texture, int level, uint face);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTURELAYERPROC(uint target, uint attachment, uint texture, int level, int layer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTURELAYERARBPROC(uint target, uint attachment, uint texture, int level, int layer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTURELAYEREXTPROC(uint target, uint attachment, uint texture, int level, int layer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRAMEBUFFERTEXTUREMULTIVIEWOVRPROC(uint target, uint attachment, uint texture, int level, int baseViewIndex, int numViews);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFREEOBJECTBUFFERATIPROC(uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRONTFACEPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRUSTUMFOESPROC(float l, float r, float b, float t, float n, float f);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLFRUSTUMXOESPROC(int l, int r, int b, int t, int n, int f);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGENASYNCMARKERSSGIXPROC(int range);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENBUFFERSPROC(int n, uint* buffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENBUFFERSARBPROC(int n, uint* buffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENFENCESAPPLEPROC(int n, uint* fences);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENFENCESNVPROC(int n, uint* fences);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGENFRAGMENTSHADERSATIPROC(uint range);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENFRAMEBUFFERSPROC(int n, uint* framebuffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENFRAMEBUFFERSEXTPROC(int n, uint* framebuffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENNAMESAMDPROC(uint identifier, uint num, uint* names);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENOCCLUSIONQUERIESNVPROC(int n, uint* ids);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGENPATHSNVPROC(int range);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENPERFMONITORSAMDPROC(int n, uint* monitors);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENPROGRAMPIPELINESPROC(int n, uint* pipelines);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENPROGRAMSARBPROC(int n, uint* programs);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENPROGRAMSNVPROC(int n, uint* programs);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENQUERIESPROC(int n, uint* ids);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENQUERIESARBPROC(int n, uint* ids);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENQUERYRESOURCETAGNVPROC(int n, int* tagIds);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENRENDERBUFFERSPROC(int n, uint* renderbuffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENRENDERBUFFERSEXTPROC(int n, uint* renderbuffers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENSAMPLERSPROC(int count, uint* samplers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENSEMAPHORESEXTPROC(int n, uint* semaphores);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGENSYMBOLSEXTPROC(uint datatype, uint storagetype, uint range, uint components);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENTEXTURESPROC(int n, uint* textures);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENTEXTURESEXTPROC(int n, uint* textures);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENTRANSFORMFEEDBACKSPROC(int n, uint* ids);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENTRANSFORMFEEDBACKSNVPROC(int n, uint* ids);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENVERTEXARRAYSPROC(int n, uint* arrays);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENVERTEXARRAYSAPPLEPROC(int n, uint* arrays);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGENVERTEXSHADERSEXTPROC(uint range);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENERATEMIPMAPPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENERATEMIPMAPEXTPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENERATEMULTITEXMIPMAPEXTPROC(uint texunit, uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENERATETEXTUREMIPMAPPROC(uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGENERATETEXTUREMIPMAPEXTPROC(uint texture, uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC(uint program, uint bufferIndex, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVEATTRIBPROC(uint program, uint index, int bufSize, int* length, int* size, uint* type, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVEATTRIBARBPROC(GLhandleARB programObj, uint index, int maxLength, int* length, int* size, uint* type, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVESUBROUTINENAMEPROC(uint program, uint shadertype, uint index, int bufSize, int* length, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC(uint program, uint shadertype, uint index, int bufSize, int* length, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC(uint program, uint shadertype, uint index, uint pname, int* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVEUNIFORMPROC(uint program, uint index, int bufSize, int* length, int* size, uint* type, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVEUNIFORMARBPROC(GLhandleARB programObj, uint index, int maxLength, int* length, int* size, uint* type, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC(uint program, uint uniformBlockIndex, int bufSize, int* length, byte* uniformBlockName);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVEUNIFORMBLOCKIVPROC(uint program, uint uniformBlockIndex, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVEUNIFORMNAMEPROC(uint program, uint uniformIndex, int bufSize, int* length, byte* uniformName);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVEUNIFORMSIVPROC(uint program, int uniformCount, uint* uniformIndices, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETACTIVEVARYINGNVPROC(uint program, uint index, int bufSize, int* length, int* size, uint* type, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETARRAYOBJECTFVATIPROC(uint array, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETARRAYOBJECTIVATIPROC(uint array, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETATTACHEDOBJECTSARBPROC(GLhandleARB containerObj, int maxCount, int* count, GLhandleARB* obj);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETATTACHEDSHADERSPROC(uint program, int maxCount, int* count, uint* shaders);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETATTRIBLOCATIONPROC(uint program, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETATTRIBLOCATIONARBPROC(GLhandleARB programObj, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETBOOLEANINDEXEDVEXTPROC(uint target, uint index, bool* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETBOOLEANI_VPROC(uint target, uint index, bool* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETBOOLEANVPROC(uint pname, bool* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETBUFFERPARAMETERI64VPROC(uint target, uint pname, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETBUFFERPARAMETERIVPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETBUFFERPARAMETERIVARBPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETBUFFERPARAMETERUI64VNVPROC(uint target, uint pname, ulong* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETBUFFERPOINTERVPROC(uint target, uint pname, void** param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETBUFFERPOINTERVARBPROC(uint target, uint pname, void** param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETBUFFERSUBDATAPROC(uint target, long offset, long size, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETBUFFERSUBDATAARBPROC(uint target, long offset, long size, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCLIPPLANEFOESPROC(uint plane, float* equation);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCLIPPLANEXOESPROC(uint plane, int* equation);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOLORTABLEEXTPROC(uint target, uint format, uint type, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOLORTABLEPARAMETERFVEXTPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOLORTABLEPARAMETERFVSGIPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOLORTABLEPARAMETERIVEXTPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOLORTABLEPARAMETERIVSGIPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOLORTABLESGIPROC(uint target, uint format, uint type, void* table);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOMBINERINPUTPARAMETERFVNVPROC(uint stage, uint portion, uint variable, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOMBINERINPUTPARAMETERIVNVPROC(uint stage, uint portion, uint variable, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOMBINEROUTPUTPARAMETERFVNVPROC(uint stage, uint portion, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOMBINEROUTPUTPARAMETERIVNVPROC(uint stage, uint portion, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOMBINERSTAGEPARAMETERFVNVPROC(uint stage, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETCOMMANDHEADERNVPROC(uint tokenID, uint size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOMPRESSEDMULTITEXIMAGEEXTPROC(uint texunit, uint target, int lod, void* img);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOMPRESSEDTEXIMAGEPROC(uint target, int level, void* img);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOMPRESSEDTEXIMAGEARBPROC(uint target, int level, void* img);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC(uint texture, int level, int bufSize, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOMPRESSEDTEXTUREIMAGEEXTPROC(uint texture, uint target, int lod, void* img);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int bufSize, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCONVOLUTIONFILTEREXTPROC(uint target, uint format, uint type, void* image);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCONVOLUTIONPARAMETERFVEXTPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCONVOLUTIONPARAMETERIVEXTPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCONVOLUTIONPARAMETERXVOESPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETCOVERAGEMODULATIONTABLENVPROC(int bufSize, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETDEBUGMESSAGELOGPROC(uint count, int bufSize, uint* sources, uint* types, uint* ids, uint* severities, int* lengths, byte* messageLog);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETDEBUGMESSAGELOGAMDPROC(uint count, int bufSize, uint* categories, uint* severities, uint* ids, int* lengths, byte* message);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETDEBUGMESSAGELOGARBPROC(uint count, int bufSize, uint* sources, uint* types, uint* ids, uint* severities, int* lengths, byte* messageLog);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETDETAILTEXFUNCSGISPROC(uint target, float* points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETDOUBLEINDEXEDVEXTPROC(uint target, uint index, double* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETDOUBLEI_VPROC(uint target, uint index, double* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETDOUBLEI_VEXTPROC(uint pname, uint index, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETDOUBLEVPROC(uint pname, double* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETERRORPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFENCEIVNVPROC(uint fence, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFINALCOMBINERINPUTPARAMETERFVNVPROC(uint variable, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFINALCOMBINERINPUTPARAMETERIVNVPROC(uint variable, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFIRSTPERFQUERYIDINTELPROC(uint* queryId);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFIXEDVOESPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFLOATINDEXEDVEXTPROC(uint target, uint index, float* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFLOATI_VPROC(uint target, uint index, float* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFLOATI_VEXTPROC(uint pname, uint index, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFLOATVPROC(uint pname, float* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFOGFUNCSGISPROC(float* points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETFRAGDATAINDEXPROC(uint program, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETFRAGDATALOCATIONPROC(uint program, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETFRAGDATALOCATIONEXTPROC(uint program, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFRAGMENTLIGHTFVSGIXPROC(uint light, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFRAGMENTLIGHTIVSGIXPROC(uint light, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFRAGMENTMATERIALFVSGIXPROC(uint face, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFRAGMENTMATERIALIVSGIXPROC(uint face, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC(uint target, uint attachment, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC(uint target, uint attachment, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFRAMEBUFFERPARAMETERFVAMDPROC(uint target, uint pname, uint numsamples, uint pixelindex, int size, float* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFRAMEBUFFERPARAMETERIVPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFRAMEBUFFERPARAMETERIVEXTPROC(uint framebuffer, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETFRAMEBUFFERPARAMETERIVMESAPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETGRAPHICSRESETSTATUSPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETGRAPHICSRESETSTATUSARBPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate GLhandleARB PFNGLGETHANDLEARBPROC(uint pname);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETHISTOGRAMEXTPROC(uint target, bool reset, uint format, uint type, void* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETHISTOGRAMPARAMETERFVEXTPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETHISTOGRAMPARAMETERIVEXTPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETHISTOGRAMPARAMETERXVOESPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETIMAGEHANDLEARBPROC(uint texture, int level, bool layered, int layer, uint format);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETIMAGEHANDLENVPROC(uint texture, int level, bool layered, int layer, uint format);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETIMAGETRANSFORMPARAMETERFVHPPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETIMAGETRANSFORMPARAMETERIVHPPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINFOLOGARBPROC(GLhandleARB obj, int maxLength, int* length, byte* infoLog);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETINSTRUMENTSSGIXPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINTEGER64I_VPROC(uint target, uint index, long* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINTEGER64VPROC(uint pname, long* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINTEGERINDEXEDVEXTPROC(uint target, uint index, int* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINTEGERI_VPROC(uint target, uint index, int* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINTEGERUI64I_VNVPROC(uint value, uint index, ulong* result);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINTEGERUI64VNVPROC(uint value, ulong* result);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINTEGERVPROC(uint pname, int* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINTERNALFORMATSAMPLEIVNVPROC(uint target, uint internalformat, int samples, uint pname, int count, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINTERNALFORMATI64VPROC(uint target, uint internalformat, uint pname, int count, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINTERNALFORMATIVPROC(uint target, uint internalformat, uint pname, int count, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINVARIANTBOOLEANVEXTPROC(uint id, uint value, bool* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINVARIANTFLOATVEXTPROC(uint id, uint value, float* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETINVARIANTINTEGERVEXTPROC(uint id, uint value, int* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETLIGHTXOESPROC(uint light, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETLISTPARAMETERFVSGIXPROC(uint list, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETLISTPARAMETERIVSGIXPROC(uint list, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETLOCALCONSTANTBOOLEANVEXTPROC(uint id, uint value, bool* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETLOCALCONSTANTFLOATVEXTPROC(uint id, uint value, float* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETLOCALCONSTANTINTEGERVEXTPROC(uint id, uint value, int* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMAPATTRIBPARAMETERFVNVPROC(uint target, uint index, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMAPATTRIBPARAMETERIVNVPROC(uint target, uint index, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMAPCONTROLPOINTSNVPROC(uint target, uint index, uint type, int ustride, int vstride, bool packed, void* points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMAPPARAMETERFVNVPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMAPPARAMETERIVNVPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMAPXVOESPROC(uint target, uint query, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMATERIALXOESPROC(uint face, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMEMORYOBJECTDETACHEDRESOURCESUIVNVPROC(uint memory, uint pname, int first, int count, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMEMORYOBJECTPARAMETERIVEXTPROC(uint memoryObject, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMINMAXEXTPROC(uint target, bool reset, uint format, uint type, void* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMINMAXPARAMETERFVEXTPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMINMAXPARAMETERIVEXTPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTITEXENVFVEXTPROC(uint texunit, uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTITEXENVIVEXTPROC(uint texunit, uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTITEXGENDVEXTPROC(uint texunit, uint coord, uint pname, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTITEXGENFVEXTPROC(uint texunit, uint coord, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTITEXGENIVEXTPROC(uint texunit, uint coord, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTITEXIMAGEEXTPROC(uint texunit, uint target, int level, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTITEXLEVELPARAMETERFVEXTPROC(uint texunit, uint target, int level, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTITEXLEVELPARAMETERIVEXTPROC(uint texunit, uint target, int level, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTITEXPARAMETERIIVEXTPROC(uint texunit, uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTITEXPARAMETERIUIVEXTPROC(uint texunit, uint target, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTITEXPARAMETERFVEXTPROC(uint texunit, uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTITEXPARAMETERIVEXTPROC(uint texunit, uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTISAMPLEFVPROC(uint pname, uint index, float* val);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETMULTISAMPLEFVNVPROC(uint pname, uint index, float* val);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDBUFFERPARAMETERI64VPROC(uint buffer, uint pname, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDBUFFERPARAMETERIVPROC(uint buffer, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDBUFFERPARAMETERIVEXTPROC(uint buffer, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDBUFFERPARAMETERUI64VNVPROC(uint buffer, uint pname, ulong* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDBUFFERPOINTERVPROC(uint buffer, uint pname, void** param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDBUFFERPOINTERVEXTPROC(uint buffer, uint pname, void** param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDBUFFERSUBDATAPROC(uint buffer, long offset, long size, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDBUFFERSUBDATAEXTPROC(uint buffer, long offset, long size, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC(uint framebuffer, uint attachment, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC(uint framebuffer, uint attachment, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDFRAMEBUFFERPARAMETERFVAMDPROC(uint framebuffer, uint pname, uint numsamples, uint pixelindex, int size, float* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC(uint framebuffer, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVEXTPROC(uint framebuffer, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDPROGRAMLOCALPARAMETERIIVEXTPROC(uint program, uint target, uint index, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDPROGRAMLOCALPARAMETERIUIVEXTPROC(uint program, uint target, uint index, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDPROGRAMLOCALPARAMETERDVEXTPROC(uint program, uint target, uint index, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDPROGRAMLOCALPARAMETERFVEXTPROC(uint program, uint target, uint index, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDPROGRAMSTRINGEXTPROC(uint program, uint target, uint pname, void* str);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDPROGRAMIVEXTPROC(uint program, uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC(uint renderbuffer, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDRENDERBUFFERPARAMETERIVEXTPROC(uint renderbuffer, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDSTRINGARBPROC(int namelen, byte* name, int bufSize, int* stringlen, void* str);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNAMEDSTRINGIVARBPROC(int namelen, byte* name, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNEXTPERFQUERYIDINTELPROC(uint queryId, uint* nextQueryId);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETOBJECTBUFFERFVATIPROC(uint buffer, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETOBJECTBUFFERIVATIPROC(uint buffer, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETOBJECTLABELPROC(uint identifier, uint name, int bufSize, int* length, byte* label);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETOBJECTLABELEXTPROC(uint type, uint obje, int bufSize, int* length, byte* label);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETOBJECTPARAMETERFVARBPROC(GLhandleARB obj, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETOBJECTPARAMETERIVAPPLEPROC(uint objectType, uint name, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETOBJECTPARAMETERIVARBPROC(GLhandleARB obj, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETOBJECTPTRLABELPROC(void* ptr, int bufSize, int* length, byte* label);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETOCCLUSIONQUERYIVNVPROC(uint id, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETOCCLUSIONQUERYUIVNVPROC(uint id, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPATHCOMMANDSNVPROC(uint path, byte* commands);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPATHCOORDSNVPROC(uint path, float* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPATHDASHARRAYNVPROC(uint path, float* dashArray);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate float PFNGLGETPATHLENGTHNVPROC(uint path, int startSegment, int numSegments);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPATHMETRICRANGENVPROC(uint metricQueryMask, uint firstPathName, int numPaths, int stride, float* metrics);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPATHMETRICSNVPROC(uint metricQueryMask, int numPaths, uint pathNameType, void* paths, uint pathBase, int stride, float* metrics);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPATHPARAMETERFVNVPROC(uint path, uint pname, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPATHPARAMETERIVNVPROC(uint path, uint pname, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPATHSPACINGNVPROC(uint pathListMode, int numPaths, uint pathNameType, void* paths, uint pathBase, float advanceScale, float kerningScale, uint transformType, float* returnedSpacing);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPERFCOUNTERINFOINTELPROC(uint queryId, uint counterId, uint counterNameLength, byte* counterName, uint counterDescLength, byte* counterDesc, uint* counterOffset, uint* counterDataSize, uint* counterTypeEnum, uint* counterDataTypeEnum, uint* rawCounterMaxValue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPERFMONITORCOUNTERDATAAMDPROC(uint monitor, uint pname, int dataSize, uint* data, int* bytesWritten);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPERFMONITORCOUNTERINFOAMDPROC(uint group, uint counter, uint pname, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPERFMONITORCOUNTERSTRINGAMDPROC(uint group, uint counter, int bufSize, int* length, byte* counterString);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPERFMONITORCOUNTERSAMDPROC(uint group, int* numCounters, int* maxActiveCounters, int counterSize, uint* counters);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPERFMONITORGROUPSTRINGAMDPROC(uint group, int bufSize, int* length, byte* groupString);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPERFMONITORGROUPSAMDPROC(int* numGroups, int groupsSize, uint* groups);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPERFQUERYDATAINTELPROC(uint queryHandle, uint flags, int dataSize, void* data, uint* bytesWritten);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPERFQUERYIDBYNAMEINTELPROC(byte* queryName, uint* queryId);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPERFQUERYINFOINTELPROC(uint queryId, uint queryNameLength, byte* queryName, uint* dataSize, uint* noCounters, uint* noInstances, uint* capsMask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPIXELMAPXVPROC(uint map, int size, int* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPIXELTEXGENPARAMETERFVSGISPROC(uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPIXELTEXGENPARAMETERIVSGISPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPIXELTRANSFORMPARAMETERFVEXTPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPIXELTRANSFORMPARAMETERIVEXTPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPOINTERINDEXEDVEXTPROC(uint target, uint index, void** data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPOINTERI_VEXTPROC(uint pname, uint index, void** param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPOINTERVPROC(uint pname, void** param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPOINTERVEXTPROC(uint pname, void** param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMBINARYPROC(uint program, int bufSize, int* length, uint* binaryFormat, void* binary);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMENVPARAMETERIIVNVPROC(uint target, uint index, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMENVPARAMETERIUIVNVPROC(uint target, uint index, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMENVPARAMETERDVARBPROC(uint target, uint index, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMENVPARAMETERFVARBPROC(uint target, uint index, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMINFOLOGPROC(uint program, int bufSize, int* length, byte* infoLog);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMINTERFACEIVPROC(uint program, uint programInterface, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMLOCALPARAMETERIIVNVPROC(uint target, uint index, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMLOCALPARAMETERIUIVNVPROC(uint target, uint index, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC(uint target, uint index, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC(uint target, uint index, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMNAMEDPARAMETERDVNVPROC(uint id, int len, byte* name, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMNAMEDPARAMETERFVNVPROC(uint id, int len, byte* name, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMPARAMETERDVNVPROC(uint target, uint index, uint pname, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMPARAMETERFVNVPROC(uint target, uint index, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMPIPELINEINFOLOGPROC(uint pipeline, int bufSize, int* length, byte* infoLog);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMPIPELINEIVPROC(uint pipeline, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETPROGRAMRESOURCEINDEXPROC(uint program, uint programInterface, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETPROGRAMRESOURCELOCATIONPROC(uint program, uint programInterface, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC(uint program, uint programInterface, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMRESOURCENAMEPROC(uint program, uint programInterface, uint index, int bufSize, int* length, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMRESOURCEFVNVPROC(uint program, uint programInterface, uint index, int propCount, uint* props, int count, int* length, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMRESOURCEIVPROC(uint program, uint programInterface, uint index, int propCount, uint* props, int count, int* length, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMSTAGEIVPROC(uint program, uint shadertype, uint pname, int* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMSTRINGARBPROC(uint target, uint pname, void* str);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMSTRINGNVPROC(uint id, uint pname, byte* program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMSUBROUTINEPARAMETERUIVNVPROC(uint target, uint index, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMIVPROC(uint program, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMIVARBPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETPROGRAMIVNVPROC(uint id, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYBUFFEROBJECTI64VPROC(uint id, uint buffer, uint pname, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYBUFFEROBJECTIVPROC(uint id, uint buffer, uint pname, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYBUFFEROBJECTUI64VPROC(uint id, uint buffer, uint pname, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYBUFFEROBJECTUIVPROC(uint id, uint buffer, uint pname, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYINDEXEDIVPROC(uint target, uint index, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYOBJECTI64VPROC(uint id, uint pname, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYOBJECTI64VEXTPROC(uint id, uint pname, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYOBJECTIVPROC(uint id, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYOBJECTIVARBPROC(uint id, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYOBJECTUI64VPROC(uint id, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYOBJECTUI64VEXTPROC(uint id, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYOBJECTUIVPROC(uint id, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYOBJECTUIVARBPROC(uint id, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYIVPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETQUERYIVARBPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETRENDERBUFFERPARAMETERIVPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSAMPLERPARAMETERIIVPROC(uint sampler, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSAMPLERPARAMETERIUIVPROC(uint sampler, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSAMPLERPARAMETERFVPROC(uint sampler, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSAMPLERPARAMETERIVPROC(uint sampler, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSEMAPHOREPARAMETERIVNVPROC(uint semaphore, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSEMAPHOREPARAMETERUI64VEXTPROC(uint semaphore, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSEPARABLEFILTEREXTPROC(uint target, uint format, uint type, void* row, void* column, void* span);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSHADERINFOLOGPROC(uint shader, int bufSize, int* length, byte* infoLog);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSHADERPRECISIONFORMATPROC(uint shadertype, uint precisiontype, int* range, int* precision);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSHADERSOURCEPROC(uint shader, int bufSize, int* length, byte* source);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSHADERSOURCEARBPROC(GLhandleARB obj, int maxLength, int* length, byte* source);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSHADERIVPROC(uint shader, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSHADINGRATEIMAGEPALETTENVPROC(uint viewport, uint entry, uint* rate);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSHADINGRATESAMPLELOCATIONIVNVPROC(uint rate, uint samples, uint index, int* location);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSHARPENTEXFUNCSGISPROC(uint target, float* points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate ushort PFNGLGETSTAGEINDEXNVPROC(uint shadertype);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate byte* PFNGLGETSTRINGPROC(uint name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate byte* PFNGLGETSTRINGIPROC(uint name, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETSUBROUTINEINDEXPROC(uint program, uint shadertype, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC(uint program, uint shadertype, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETSYNCIVPROC(GLsync sync, uint pname, int count, int* length, int* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXBUMPPARAMETERFVATIPROC(uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXBUMPPARAMETERIVATIPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXENVXVOESPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXFILTERFUNCSGISPROC(uint target, uint filter, float* weights);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXGENXVOESPROC(uint coord, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXIMAGEPROC(uint target, int level, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXLEVELPARAMETERFVPROC(uint target, int level, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXLEVELPARAMETERIVPROC(uint target, int level, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXLEVELPARAMETERXVOESPROC(uint target, int level, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXPARAMETERIIVPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXPARAMETERIIVEXTPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXPARAMETERIUIVPROC(uint target, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXPARAMETERIUIVEXTPROC(uint target, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXPARAMETERPOINTERVAPPLEPROC(uint target, uint pname, void** param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXPARAMETERFVPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXPARAMETERIVPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXPARAMETERXVOESPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETTEXTUREHANDLEARBPROC(uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETTEXTUREHANDLENVPROC(uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTUREIMAGEPROC(uint texture, int level, uint format, uint type, int bufSize, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTUREIMAGEEXTPROC(uint texture, uint target, int level, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTURELEVELPARAMETERFVPROC(uint texture, int level, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTURELEVELPARAMETERFVEXTPROC(uint texture, uint target, int level, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTURELEVELPARAMETERIVPROC(uint texture, int level, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTURELEVELPARAMETERIVEXTPROC(uint texture, uint target, int level, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTUREPARAMETERIIVPROC(uint texture, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTUREPARAMETERIIVEXTPROC(uint texture, uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTUREPARAMETERIUIVPROC(uint texture, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTUREPARAMETERIUIVEXTPROC(uint texture, uint target, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTUREPARAMETERFVPROC(uint texture, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTUREPARAMETERFVEXTPROC(uint texture, uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTUREPARAMETERIVPROC(uint texture, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTUREPARAMETERIVEXTPROC(uint texture, uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETTEXTURESAMPLERHANDLEARBPROC(uint texture, uint sampler);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETTEXTURESAMPLERHANDLENVPROC(uint texture, uint sampler);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTEXTURESUBIMAGEPROC(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint format, uint type, int bufSize, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTRACKMATRIXIVNVPROC(uint target, uint address, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTRANSFORMFEEDBACKVARYINGPROC(uint program, uint index, int bufSize, int* length, int* size, uint* type, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTRANSFORMFEEDBACKVARYINGEXTPROC(uint program, uint index, int bufSize, int* length, int* size, uint* type, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTRANSFORMFEEDBACKVARYINGNVPROC(uint program, uint index, int* location);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTRANSFORMFEEDBACKI64_VPROC(uint xfb, uint pname, uint index, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTRANSFORMFEEDBACKI_VPROC(uint xfb, uint pname, uint index, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETTRANSFORMFEEDBACKIVPROC(uint xfb, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLGETUNIFORMBLOCKINDEXPROC(uint program, byte* uniformBlockName);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETUNIFORMBUFFERSIZEEXTPROC(uint program, int location);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMINDICESPROC(uint program, int uniformCount, byte** uniformNames, uint* uniformIndices);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETUNIFORMLOCATIONPROC(uint program, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETUNIFORMLOCATIONARBPROC(GLhandleARB programObj, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate long PFNGLGETUNIFORMOFFSETEXTPROC(uint program, int location);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMSUBROUTINEUIVPROC(uint shadertype, int location, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMDVPROC(uint program, int location, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMFVPROC(uint program, int location, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMFVARBPROC(GLhandleARB programObj, int location, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMI64VARBPROC(uint program, int location, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMI64VNVPROC(uint program, int location, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMIVPROC(uint program, int location, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMIVARBPROC(GLhandleARB programObj, int location, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMUI64VARBPROC(uint program, int location, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMUI64VNVPROC(uint program, int location, ulong* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMUIVPROC(uint program, int location, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNIFORMUIVEXTPROC(uint program, int location, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNSIGNEDBYTEI_VEXTPROC(uint target, uint index, byte* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETUNSIGNEDBYTEVEXTPROC(uint pname, byte* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVARIANTARRAYOBJECTFVATIPROC(uint id, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVARIANTARRAYOBJECTIVATIPROC(uint id, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVARIANTBOOLEANVEXTPROC(uint id, uint value, bool* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVARIANTFLOATVEXTPROC(uint id, uint value, float* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVARIANTINTEGERVEXTPROC(uint id, uint value, int* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVARIANTPOINTERVEXTPROC(uint id, uint value, void** data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLGETVARYINGLOCATIONNVPROC(uint program, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXARRAYINDEXED64IVPROC(uint vaobj, uint index, uint pname, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXARRAYINDEXEDIVPROC(uint vaobj, uint index, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXARRAYINTEGERI_VEXTPROC(uint vaobj, uint index, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXARRAYINTEGERVEXTPROC(uint vaobj, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXARRAYPOINTERI_VEXTPROC(uint vaobj, uint index, uint pname, void** param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXARRAYPOINTERVEXTPROC(uint vaobj, uint pname, void** param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXARRAYIVPROC(uint vaobj, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBARRAYOBJECTFVATIPROC(uint index, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBARRAYOBJECTIVATIPROC(uint index, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBIIVPROC(uint index, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBIIVEXTPROC(uint index, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBIUIVPROC(uint index, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBIUIVEXTPROC(uint index, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBLDVPROC(uint index, uint pname, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBLDVEXTPROC(uint index, uint pname, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBLI64VNVPROC(uint index, uint pname, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBLUI64VARBPROC(uint index, uint pname, ulong* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBLUI64VNVPROC(uint index, uint pname, ulong* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBPOINTERVPROC(uint index, uint pname, void** pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBPOINTERVARBPROC(uint index, uint pname, void** pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBPOINTERVNVPROC(uint index, uint pname, void** pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBDVPROC(uint index, uint pname, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBDVARBPROC(uint index, uint pname, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBDVNVPROC(uint index, uint pname, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBFVPROC(uint index, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBFVARBPROC(uint index, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBFVNVPROC(uint index, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBIVPROC(uint index, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBIVARBPROC(uint index, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVERTEXATTRIBIVNVPROC(uint index, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVIDEOCAPTURESTREAMDVNVPROC(uint video_capture_slot, uint stream, uint pname, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVIDEOCAPTURESTREAMFVNVPROC(uint video_capture_slot, uint stream, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVIDEOCAPTURESTREAMIVNVPROC(uint video_capture_slot, uint stream, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVIDEOCAPTUREIVNVPROC(uint video_capture_slot, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVIDEOI64VNVPROC(uint video_slot, uint pname, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVIDEOIVNVPROC(uint video_slot, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVIDEOUI64VNVPROC(uint video_slot, uint pname, ulong* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETVIDEOUIVNVPROC(uint video_slot, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate GLVULKANPROCNV PFNGLGETVKPROCADDRNVPROC(byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNCOMPRESSEDTEXIMAGEPROC(uint target, int lod, int bufSize, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNCOMPRESSEDTEXIMAGEARBPROC(uint target, int lod, int bufSize, void* img);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNTEXIMAGEPROC(uint target, int level, uint format, uint type, int bufSize, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNTEXIMAGEARBPROC(uint target, int level, uint format, uint type, int bufSize, void* img);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNUNIFORMDVPROC(uint program, int location, int bufSize, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNUNIFORMDVARBPROC(uint program, int location, int bufSize, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNUNIFORMFVPROC(uint program, int location, int bufSize, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNUNIFORMFVARBPROC(uint program, int location, int bufSize, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNUNIFORMI64VARBPROC(uint program, int location, int bufSize, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNUNIFORMIVPROC(uint program, int location, int bufSize, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNUNIFORMIVARBPROC(uint program, int location, int bufSize, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNUNIFORMUI64VARBPROC(uint program, int location, int bufSize, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNUNIFORMUIVPROC(uint program, int location, int bufSize, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGETNUNIFORMUIVARBPROC(uint program, int location, int bufSize, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGLOBALALPHAFACTORBSUNPROC(sbyte factor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGLOBALALPHAFACTORDSUNPROC(double factor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGLOBALALPHAFACTORFSUNPROC(float factor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGLOBALALPHAFACTORISUNPROC(int factor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGLOBALALPHAFACTORSSUNPROC(short factor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGLOBALALPHAFACTORUBSUNPROC(byte factor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGLOBALALPHAFACTORUISUNPROC(uint factor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLGLOBALALPHAFACTORUSSUNPROC(ushort factor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLHINTPROC(uint target, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLHINTPGIPROC(uint target, int mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLHISTOGRAMEXTPROC(uint target, int width, uint internalformat, bool sink);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLIGLOOINTERFACESGIXPROC(uint pname, void* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLIMAGETRANSFORMPARAMETERFHPPROC(uint target, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLIMAGETRANSFORMPARAMETERFVHPPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLIMAGETRANSFORMPARAMETERIHPPROC(uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLIMAGETRANSFORMPARAMETERIVHPPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLIMPORTMEMORYFDEXTPROC(uint memory, uint size, uint handleType, int fd);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLIMPORTMEMORYWIN32HANDLEEXTPROC(uint memory, uint size, uint handleType, void* handle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLIMPORTMEMORYWIN32NAMEEXTPROC(uint memory, uint size, uint handleType, void* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLIMPORTSEMAPHOREFDEXTPROC(uint semaphore, uint handleType, int fd);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLIMPORTSEMAPHOREWIN32HANDLEEXTPROC(uint semaphore, uint handleType, void* handle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLIMPORTSEMAPHOREWIN32NAMEEXTPROC(uint semaphore, uint handleType, void* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate GLsync PFNGLIMPORTSYNCEXTPROC(uint external_sync_type, long external_sync, uint flags);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINDEXFORMATNVPROC(uint type, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINDEXFUNCEXTPROC(uint func, float valueRef);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINDEXMATERIALEXTPROC(uint face, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINDEXPOINTEREXTPROC(uint type, int stride, int count, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINDEXPOINTERLISTIBMPROC(uint type, int stride, void** pointer, int ptrstride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINDEXXOESPROC(int component);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINDEXXVOESPROC(int* component);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINSERTCOMPONENTEXTPROC(uint res, uint src, uint num);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINSERTEVENTMARKEREXTPROC(int length, byte* marker);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINSTRUMENTSBUFFERSGIXPROC(int size, int* buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINTERPOLATEPATHSNVPROC(uint resultPath, uint pathA, uint pathB, float weight);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINVALIDATEBUFFERDATAPROC(uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINVALIDATEBUFFERSUBDATAPROC(uint buffer, long offset, long length);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINVALIDATEFRAMEBUFFERPROC(uint target, int numAttachments, uint* attachments);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC(uint framebuffer, int numAttachments, uint* attachments);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC(uint framebuffer, int numAttachments, uint* attachments, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINVALIDATESUBFRAMEBUFFERPROC(uint target, int numAttachments, uint* attachments, int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINVALIDATETEXIMAGEPROC(uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLINVALIDATETEXSUBIMAGEPROC(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISASYNCMARKERSGIXPROC(uint marker);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISBUFFERPROC(uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISBUFFERARBPROC(uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISBUFFERRESIDENTNVPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISCOMMANDLISTNVPROC(uint list);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISENABLEDPROC(uint cap);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISENABLEDINDEXEDEXTPROC(uint target, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISENABLEDIPROC(uint target, uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISFENCEAPPLEPROC(uint fence);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISFENCENVPROC(uint fence);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISFRAMEBUFFERPROC(uint framebuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISFRAMEBUFFEREXTPROC(uint framebuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISIMAGEHANDLERESIDENTARBPROC(uint handle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISIMAGEHANDLERESIDENTNVPROC(uint handle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISMEMORYOBJECTEXTPROC(uint memoryObject);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISNAMEAMDPROC(uint identifier, uint name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISNAMEDBUFFERRESIDENTNVPROC(uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISNAMEDSTRINGARBPROC(int namelen, byte* name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISOBJECTBUFFERATIPROC(uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISOCCLUSIONQUERYNVPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISPATHNVPROC(uint path);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISPOINTINFILLPATHNVPROC(uint path, uint mask, float x, float y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISPOINTINSTROKEPATHNVPROC(uint path, float x, float y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISPROGRAMPROC(uint program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISPROGRAMARBPROC(uint program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISPROGRAMNVPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISPROGRAMPIPELINEPROC(uint pipeline);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISQUERYPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISQUERYARBPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISRENDERBUFFERPROC(uint renderbuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISRENDERBUFFEREXTPROC(uint renderbuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISSAMPLERPROC(uint sampler);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISSEMAPHOREEXTPROC(uint semaphore);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISSHADERPROC(uint shader);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISSTATENVPROC(uint state);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISSYNCPROC(GLsync sync);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISTEXTUREPROC(uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISTEXTUREEXTPROC(uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISTEXTUREHANDLERESIDENTARBPROC(uint handle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISTEXTUREHANDLERESIDENTNVPROC(uint handle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISTRANSFORMFEEDBACKPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISTRANSFORMFEEDBACKNVPROC(uint id);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISVARIANTENABLEDEXTPROC(uint id, uint cap);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISVERTEXARRAYPROC(uint array);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISVERTEXARRAYAPPLEPROC(uint array);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLISVERTEXATTRIBENABLEDAPPLEPROC(uint index, uint pname);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLGPUCOPYIMAGESUBDATANVXPROC(uint sourceGpu, uint destinationGpuMask, uint srcName, uint srcTarget, int srcLevel, int srcX, int srxY, int srcZ, uint dstName, uint dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int width, int height, int depth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLGPUINTERLOCKNVXPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLGPUNAMEDBUFFERSUBDATANVXPROC(uint gpuMask, uint buffer, long offset, long size, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLABELOBJECTEXTPROC(uint type, uint obj, int length, byte* label);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLIGHTENVISGIXPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLIGHTMODELXOESPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLIGHTMODELXVOESPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLIGHTXOESPROC(uint light, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLIGHTXVOESPROC(uint light, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLINEWIDTHPROC(float width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLINEWIDTHXOESPROC(int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLINKPROGRAMPROC(uint program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLINKPROGRAMARBPROC(GLhandleARB programObj);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLISTDRAWCOMMANDSSTATESCLIENTNVPROC(uint list, uint segment, void** indirects, int* sizes, uint* states, uint* fbos, uint count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLISTPARAMETERFSGIXPROC(uint list, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLISTPARAMETERFVSGIXPROC(uint list, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLISTPARAMETERISGIXPROC(uint list, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLISTPARAMETERIVSGIXPROC(uint list, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLOADIDENTITYDEFORMATIONMAPSGIXPROC(uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLOADMATRIXXOESPROC(int* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLOADPROGRAMNVPROC(uint target, uint id, int len, byte* program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLOADTRANSPOSEMATRIXDARBPROC(double* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLOADTRANSPOSEMATRIXFARBPROC(float* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLOADTRANSPOSEMATRIXXOESPROC(int* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLOCKARRAYSEXTPROC(int first, int count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLLOGICOPPROC(uint opcode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAKEBUFFERNONRESIDENTNVPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAKEBUFFERRESIDENTNVPROC(uint target, uint access);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAKEIMAGEHANDLENONRESIDENTARBPROC(uint handle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAKEIMAGEHANDLENONRESIDENTNVPROC(uint handle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAKEIMAGEHANDLERESIDENTARBPROC(uint handle, uint access);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAKEIMAGEHANDLERESIDENTNVPROC(uint handle, uint access);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAKENAMEDBUFFERNONRESIDENTNVPROC(uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAKENAMEDBUFFERRESIDENTNVPROC(uint buffer, uint access);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAKETEXTUREHANDLENONRESIDENTARBPROC(uint handle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAKETEXTUREHANDLENONRESIDENTNVPROC(uint handle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAKETEXTUREHANDLERESIDENTARBPROC(uint handle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAKETEXTUREHANDLERESIDENTNVPROC(uint handle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAP1XOESPROC(uint target, int u1, int u2, int stride, int order, int points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAP2XOESPROC(uint target, int u1, int u2, int ustride, int uorder, int v1, int v2, int vstride, int vorder, int points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void* PFNGLMAPBUFFERPROC(uint target, uint access);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void* PFNGLMAPBUFFERARBPROC(uint target, uint access);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void* PFNGLMAPBUFFERRANGEPROC(uint target, long offset, long length, uint access);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAPCONTROLPOINTSNVPROC(uint target, uint index, uint type, int ustride, int vstride, int uorder, int vorder, bool packed, void* points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAPGRID1XOESPROC(int n, int u1, int u2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAPGRID2XOESPROC(int n, int u1, int u2, int v1, int v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void* PFNGLMAPNAMEDBUFFERPROC(uint buffer, uint access);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void* PFNGLMAPNAMEDBUFFEREXTPROC(uint buffer, uint access);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void* PFNGLMAPNAMEDBUFFERRANGEPROC(uint buffer, long offset, long length, uint access);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void* PFNGLMAPNAMEDBUFFERRANGEEXTPROC(uint buffer, long offset, long length, uint access);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void* PFNGLMAPOBJECTBUFFERATIPROC(uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAPPARAMETERFVNVPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAPPARAMETERIVNVPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void* PFNGLMAPTEXTURE2DINTELPROC(uint texture, int level, uint access, int* stride, uint* layout);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAPVERTEXATTRIB1DAPPLEPROC(uint index, uint size, double u1, double u2, int stride, int order, double* points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAPVERTEXATTRIB1FAPPLEPROC(uint index, uint size, float u1, float u2, int stride, int order, float* points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAPVERTEXATTRIB2DAPPLEPROC(uint index, uint size, double u1, double u2, int ustride, int uorder, double v1, double v2, int vstride, int vorder, double* points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAPVERTEXATTRIB2FAPPLEPROC(uint index, uint size, float u1, float u2, int ustride, int uorder, float v1, float v2, int vstride, int vorder, float* points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATERIALXOESPROC(uint face, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATERIALXVOESPROC(uint face, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXFRUSTUMEXTPROC(uint mode, double left, double right, double bottom, double top, double zNear, double zFar);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXINDEXPOINTERARBPROC(int size, uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXINDEXUBVARBPROC(int size, byte* indices);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXINDEXUIVARBPROC(int size, uint* indices);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXINDEXUSVARBPROC(int size, ushort* indices);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXLOAD3X2FNVPROC(uint matrixMode, float* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXLOAD3X3FNVPROC(uint matrixMode, float* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXLOADIDENTITYEXTPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXLOADTRANSPOSE3X3FNVPROC(uint matrixMode, float* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXLOADTRANSPOSEDEXTPROC(uint mode, double* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXLOADTRANSPOSEFEXTPROC(uint mode, float* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXLOADDEXTPROC(uint mode, double* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXLOADFEXTPROC(uint mode, float* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXMULT3X2FNVPROC(uint matrixMode, float* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXMULT3X3FNVPROC(uint matrixMode, float* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXMULTTRANSPOSE3X3FNVPROC(uint matrixMode, float* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXMULTTRANSPOSEDEXTPROC(uint mode, double* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXMULTTRANSPOSEFEXTPROC(uint mode, float* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXMULTDEXTPROC(uint mode, double* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXMULTFEXTPROC(uint mode, float* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXORTHOEXTPROC(uint mode, double left, double right, double bottom, double top, double zNear, double zFar);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXPOPEXTPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXPUSHEXTPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXROTATEDEXTPROC(uint mode, double angle, double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXROTATEFEXTPROC(uint mode, float angle, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXSCALEDEXTPROC(uint mode, double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXSCALEFEXTPROC(uint mode, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXTRANSLATEDEXTPROC(uint mode, double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMATRIXTRANSLATEFEXTPROC(uint mode, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAXSHADERCOMPILERTHREADSARBPROC(uint count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMAXSHADERCOMPILERTHREADSKHRPROC(uint count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMEMORYBARRIERPROC(uint barriers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMEMORYBARRIERBYREGIONPROC(uint barriers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMEMORYBARRIEREXTPROC(uint barriers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMEMORYOBJECTPARAMETERIVEXTPROC(uint memoryObject, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMINSAMPLESHADINGPROC(float value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMINSAMPLESHADINGARBPROC(float value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMINMAXEXTPROC(uint target, uint internalformat, bool sink);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTMATRIXXOESPROC(int* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTTRANSPOSEMATRIXDARBPROC(double* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTTRANSPOSEMATRIXFARBPROC(float* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTTRANSPOSEMATRIXXOESPROC(int* m);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWARRAYSPROC(uint mode, int* first, int* count, int drawcount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWARRAYSEXTPROC(uint mode, int* first, int* count, int primcount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWARRAYSINDIRECTPROC(uint mode, void* indirect, int drawcount, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWARRAYSINDIRECTAMDPROC(uint mode, void* indirect, int primcount, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSCOUNTNVPROC(uint mode, void* indirect, int drawCount, int maxDrawCount, int stride, int vertexBufferCount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWARRAYSINDIRECTBINDLESSNVPROC(uint mode, void* indirect, int drawCount, int stride, int vertexBufferCount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC(uint mode, void* indirect, long drawcount, int maxdrawcount, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWARRAYSINDIRECTCOUNTARBPROC(uint mode, void* indirect, long drawcount, int maxdrawcount, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWELEMENTARRAYAPPLEPROC(uint mode, int* first, int* count, int primcount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWELEMENTSPROC(uint mode, int* count, uint type, void** indices, int drawcount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC(uint mode, int* count, uint type, void** indices, int drawcount, int* basevertex);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWELEMENTSEXTPROC(uint mode, int* count, uint type, void** indices, int primcount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWELEMENTSINDIRECTPROC(uint mode, uint type, void* indirect, int drawcount, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWELEMENTSINDIRECTAMDPROC(uint mode, uint type, void* indirect, int primcount, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWELEMENTSINDIRECTBINDLESSCOUNTNVPROC(uint mode, uint type, void* indirect, int drawCount, int maxDrawCount, int stride, int vertexBufferCount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWELEMENTSINDIRECTBINDLESSNVPROC(uint mode, uint type, void* indirect, int drawCount, int stride, int vertexBufferCount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC(uint mode, uint type, void* indirect, long drawcount, int maxdrawcount, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTARBPROC(uint mode, uint type, void* indirect, long drawcount, int maxdrawcount, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWMESHTASKSINDIRECTCOUNTNVPROC(long indirect, long drawcount, int maxdrawcount, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWMESHTASKSINDIRECTNVPROC(long indirect, int drawcount, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIDRAWRANGEELEMENTARRAYAPPLEPROC(uint mode, uint start, uint end, int* first, int* count, int primcount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIMODEDRAWARRAYSIBMPROC(uint* mode, int* first, int* count, int primcount, int modestride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTIMODEDRAWELEMENTSIBMPROC(uint* mode, int* count, uint type, void** indices, int primcount, int modestride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXBUFFEREXTPROC(uint texunit, uint target, uint internalformat, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1BOESPROC(uint texture, sbyte s);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1BVOESPROC(uint texture, sbyte* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1DARBPROC(uint target, double s);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1DVARBPROC(uint target, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1FARBPROC(uint target, float s);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1FVARBPROC(uint target, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1HNVPROC(uint target, ushort s);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1HVNVPROC(uint target, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1IARBPROC(uint target, int s);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1IVARBPROC(uint target, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1SARBPROC(uint target, short s);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1SVARBPROC(uint target, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1XOESPROC(uint texture, int s);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD1XVOESPROC(uint texture, int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2BOESPROC(uint texture, sbyte s, sbyte t);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2BVOESPROC(uint texture, sbyte* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2DARBPROC(uint target, double s, double t);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2DVARBPROC(uint target, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2FARBPROC(uint target, float s, float t);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2FVARBPROC(uint target, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2HNVPROC(uint target, ushort s, ushort t);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2HVNVPROC(uint target, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2IARBPROC(uint target, int s, int t);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2IVARBPROC(uint target, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2SARBPROC(uint target, short s, short t);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2SVARBPROC(uint target, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2XOESPROC(uint texture, int s, int t);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD2XVOESPROC(uint texture, int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3BOESPROC(uint texture, sbyte s, sbyte t, sbyte r);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3BVOESPROC(uint texture, sbyte* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3DARBPROC(uint target, double s, double t, double r);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3DVARBPROC(uint target, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3FARBPROC(uint target, float s, float t, float r);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3FVARBPROC(uint target, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3HNVPROC(uint target, ushort s, ushort t, ushort r);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3HVNVPROC(uint target, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3IARBPROC(uint target, int s, int t, int r);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3IVARBPROC(uint target, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3SARBPROC(uint target, short s, short t, short r);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3SVARBPROC(uint target, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3XOESPROC(uint texture, int s, int t, int r);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD3XVOESPROC(uint texture, int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4BOESPROC(uint texture, sbyte s, sbyte t, sbyte r, sbyte q);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4BVOESPROC(uint texture, sbyte* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4DARBPROC(uint target, double s, double t, double r, double q);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4DVARBPROC(uint target, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4FARBPROC(uint target, float s, float t, float r, float q);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4FVARBPROC(uint target, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4HNVPROC(uint target, ushort s, ushort t, ushort r, ushort q);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4HVNVPROC(uint target, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4IARBPROC(uint target, int s, int t, int r, int q);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4IVARBPROC(uint target, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4SARBPROC(uint target, short s, short t, short r, short q);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4SVARBPROC(uint target, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4XOESPROC(uint texture, int s, int t, int r, int q);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORD4XVOESPROC(uint texture, int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXCOORDPOINTEREXTPROC(uint texunit, int size, uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXENVFEXTPROC(uint texunit, uint target, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXENVFVEXTPROC(uint texunit, uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXENVIEXTPROC(uint texunit, uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXENVIVEXTPROC(uint texunit, uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXGENDEXTPROC(uint texunit, uint coord, uint pname, double param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXGENDVEXTPROC(uint texunit, uint coord, uint pname, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXGENFEXTPROC(uint texunit, uint coord, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXGENFVEXTPROC(uint texunit, uint coord, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXGENIEXTPROC(uint texunit, uint coord, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXGENIVEXTPROC(uint texunit, uint coord, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXIMAGE1DEXTPROC(uint texunit, uint target, int level, int internalformat, int width, int border, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXIMAGE2DEXTPROC(uint texunit, uint target, int level, int internalformat, int width, int height, int border, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXIMAGE3DEXTPROC(uint texunit, uint target, int level, int internalformat, int width, int height, int depth, int border, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXPARAMETERIIVEXTPROC(uint texunit, uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXPARAMETERIUIVEXTPROC(uint texunit, uint target, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXPARAMETERFEXTPROC(uint texunit, uint target, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXPARAMETERFVEXTPROC(uint texunit, uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXPARAMETERIEXTPROC(uint texunit, uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXPARAMETERIVEXTPROC(uint texunit, uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXRENDERBUFFEREXTPROC(uint texunit, uint target, uint renderbuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXSUBIMAGE1DEXTPROC(uint texunit, uint target, int level, int xoffset, int width, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXSUBIMAGE2DEXTPROC(uint texunit, uint target, int level, int xoffset, int yoffset, int width, int height, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTITEXSUBIMAGE3DEXTPROC(uint texunit, uint target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTBARRIERNVPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTBLITFRAMEBUFFERNVPROC(uint srcGpu, uint dstGpu, int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, uint mask, uint filter);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTBUFFERSUBDATANVPROC(uint gpuMask, uint buffer, long offset, long size, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTCOPYBUFFERSUBDATANVPROC(uint readGpu, uint writeGpuMask, uint readBuffer, uint writeBuffer, long readOffset, long writeOffset, long size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTCOPYIMAGESUBDATANVPROC(uint srcGpu, uint dstGpuMask, uint srcName, uint srcTarget, int srcLevel, int srcX, int srcY, int srcZ, uint dstName, uint dstTarget, int dstLevel, int dstX, int dstY, int dstZ, int srcWidth, int srcHeight, int srcDepth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTFRAMEBUFFERSAMPLELOCATIONSFVNVPROC(uint gpu, uint framebuffer, uint start, int count, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTGETQUERYOBJECTI64VNVPROC(uint gpu, uint id, uint pname, long* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTGETQUERYOBJECTIVNVPROC(uint gpu, uint id, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTGETQUERYOBJECTUI64VNVPROC(uint gpu, uint id, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTGETQUERYOBJECTUIVNVPROC(uint gpu, uint id, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTSCISSORARRAYVNVXPROC(uint gpu, uint first, int count, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTVIEWPORTARRAYVNVXPROC(uint gpu, uint first, int count, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTVIEWPORTPOSITIONWSCALENVXPROC(uint gpu, uint index, float xcoeff, float ycoeff);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLMULTICASTWAITSYNCNVPROC(uint signalGpu, uint waitGpuMask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDBUFFERATTACHMEMORYNVPROC(uint buffer, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDBUFFERDATAPROC(uint buffer, long size, void* data, uint usage);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDBUFFERDATAEXTPROC(uint buffer, long size, void* data, uint usage);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDBUFFERPAGECOMMITMENTARBPROC(uint buffer, long offset, long size, bool commit);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDBUFFERPAGECOMMITMENTEXTPROC(uint buffer, long offset, long size, bool commit);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDBUFFERPAGECOMMITMENTMEMNVPROC(uint buffer, long offset, long size, uint memory, uint memOffset, bool commit);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDBUFFERSTORAGEPROC(uint buffer, long size, void* data, uint flags);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDBUFFERSTORAGEEXTPROC(uint buffer, long size, void* data, uint flags);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDBUFFERSTORAGEEXTERNALEXTPROC(uint buffer, long offset, long size, void* clientBuffer, uint flags);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDBUFFERSTORAGEMEMEXTPROC(uint buffer, long size, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDBUFFERSUBDATAPROC(uint buffer, long offset, long size, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDBUFFERSUBDATAEXTPROC(uint buffer, long offset, long size, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDCOPYBUFFERSUBDATAEXTPROC(uint readBuffer, uint writeBuffer, long readOffset, long writeOffset, long size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC(uint framebuffer, uint buf);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC(uint framebuffer, int n, uint* bufs);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC(uint framebuffer, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERPARAMETERIEXTPROC(uint framebuffer, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC(uint framebuffer, uint src);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC(uint framebuffer, uint attachment, uint renderbuffertarget, uint renderbuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERRENDERBUFFEREXTPROC(uint framebuffer, uint attachment, uint renderbuffertarget, uint renderbuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVARBPROC(uint framebuffer, uint start, int count, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERSAMPLELOCATIONSFVNVPROC(uint framebuffer, uint start, int count, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERSAMPLEPOSITIONSFVAMDPROC(uint framebuffer, uint numsamples, uint pixelindex, float* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERTEXTUREPROC(uint framebuffer, uint attachment, uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERTEXTURE1DEXTPROC(uint framebuffer, uint attachment, uint textarget, uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERTEXTURE2DEXTPROC(uint framebuffer, uint attachment, uint textarget, uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERTEXTURE3DEXTPROC(uint framebuffer, uint attachment, uint textarget, uint texture, int level, int zoffset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERTEXTUREEXTPROC(uint framebuffer, uint attachment, uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERTEXTUREFACEEXTPROC(uint framebuffer, uint attachment, uint texture, int level, uint face);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC(uint framebuffer, uint attachment, uint texture, int level, int layer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDFRAMEBUFFERTEXTURELAYEREXTPROC(uint framebuffer, uint attachment, uint texture, int level, int layer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDPROGRAMLOCALPARAMETER4DEXTPROC(uint program, uint target, uint index, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDPROGRAMLOCALPARAMETER4DVEXTPROC(uint program, uint target, uint index, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDPROGRAMLOCALPARAMETER4FEXTPROC(uint program, uint target, uint index, float x, float y, float z, float w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDPROGRAMLOCALPARAMETER4FVEXTPROC(uint program, uint target, uint index, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDPROGRAMLOCALPARAMETERI4IEXTPROC(uint program, uint target, uint index, int x, int y, int z, int w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDPROGRAMLOCALPARAMETERI4IVEXTPROC(uint program, uint target, uint index, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIEXTPROC(uint program, uint target, uint index, uint x, uint y, uint z, uint w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDPROGRAMLOCALPARAMETERI4UIVEXTPROC(uint program, uint target, uint index, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDPROGRAMLOCALPARAMETERS4FVEXTPROC(uint program, uint target, uint index, int count, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDPROGRAMLOCALPARAMETERSI4IVEXTPROC(uint program, uint target, uint index, int count, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDPROGRAMLOCALPARAMETERSI4UIVEXTPROC(uint program, uint target, uint index, int count, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDPROGRAMSTRINGEXTPROC(uint program, uint target, uint format, int len, void* str);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDRENDERBUFFERSTORAGEPROC(uint renderbuffer, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDRENDERBUFFERSTORAGEEXTPROC(uint renderbuffer, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC(uint renderbuffer, int samples, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEADVANCEDAMDPROC(uint renderbuffer, int samples, int storageSamples, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLECOVERAGEEXTPROC(uint renderbuffer, int coverageSamples, int colorSamples, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC(uint renderbuffer, int samples, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNAMEDSTRINGARBPROC(uint type, int namelen, byte* name, int stringlen, byte* str);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLNEWOBJECTBUFFERATIPROC(int size, void* pointer, uint usage);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMAL3FVERTEX3FSUNPROC(float nx, float ny, float nz, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMAL3FVERTEX3FVSUNPROC(float* n, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMAL3HNVPROC(ushort nx, ushort ny, ushort nz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMAL3HVNVPROC(ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMAL3XOESPROC(int nx, int ny, int nz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMAL3XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALFORMATNVPROC(uint type, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALPOINTEREXTPROC(uint type, int stride, int count, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALPOINTERLISTIBMPROC(uint type, int stride, void** pointer, int ptrstride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALPOINTERVINTELPROC(uint type, void** pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALSTREAM3BATIPROC(uint stream, sbyte nx, sbyte ny, sbyte nz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALSTREAM3BVATIPROC(uint stream, sbyte* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALSTREAM3DATIPROC(uint stream, double nx, double ny, double nz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALSTREAM3DVATIPROC(uint stream, double* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALSTREAM3FATIPROC(uint stream, float nx, float ny, float nz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALSTREAM3FVATIPROC(uint stream, float* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALSTREAM3IATIPROC(uint stream, int nx, int ny, int nz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALSTREAM3IVATIPROC(uint stream, int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALSTREAM3SATIPROC(uint stream, short nx, short ny, short nz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLNORMALSTREAM3SVATIPROC(uint stream, short* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLOBJECTLABELPROC(uint identifier, uint name, int length, byte* label);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLOBJECTPTRLABELPROC(void* ptr, int length, byte* label);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLOBJECTPURGEABLEAPPLEPROC(uint objectType, uint name, uint option);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLOBJECTUNPURGEABLEAPPLEPROC(uint objectType, uint name, uint option);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLORTHOFOESPROC(float l, float r, float b, float t, float n, float f);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLORTHOXOESPROC(int l, int r, int b, int t, int n, int f);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPNTRIANGLESFATIPROC(uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPNTRIANGLESIATIPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPASSTEXCOORDATIPROC(uint dst, uint coord, uint swizzle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPASSTHROUGHXOESPROC(int token);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATCHPARAMETERFVPROC(uint pname, float* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATCHPARAMETERIPROC(uint pname, int value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHCOMMANDSNVPROC(uint path, int numCommands, byte* commands, int numCoords, uint coordType, void* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHCOORDSNVPROC(uint path, int numCoords, uint coordType, void* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHCOVERDEPTHFUNCNVPROC(uint func);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHDASHARRAYNVPROC(uint path, int dashCount, float* dashArray);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLPATHGLYPHINDEXARRAYNVPROC(uint firstPathName, uint fontTarget, void* fontName, uint fontStyle, uint firstGlyphIndex, int numGlyphs, uint pathParameterTemplate, float emScale);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLPATHGLYPHINDEXRANGENVPROC(uint fontTarget, void* fontName, uint fontStyle, uint pathParameterTemplate, float emScale, uint* baseAndCount);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHGLYPHRANGENVPROC(uint firstPathName, uint fontTarget, void* fontName, uint fontStyle, uint firstGlyph, int numGlyphs, uint handleMissingGlyphs, uint pathParameterTemplate, float emScale);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHGLYPHSNVPROC(uint firstPathName, uint fontTarget, void* fontName, uint fontStyle, int numGlyphs, uint type, void* charcodes, uint handleMissingGlyphs, uint pathParameterTemplate, float emScale);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLPATHMEMORYGLYPHINDEXARRAYNVPROC(uint firstPathName, uint fontTarget, long fontSize, void* fontData, int faceIndex, uint firstGlyphIndex, int numGlyphs, uint pathParameterTemplate, float emScale);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHPARAMETERFNVPROC(uint path, uint pname, float value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHPARAMETERFVNVPROC(uint path, uint pname, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHPARAMETERINVPROC(uint path, uint pname, int value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHPARAMETERIVNVPROC(uint path, uint pname, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHSTENCILDEPTHOFFSETNVPROC(float factor, float units);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHSTENCILFUNCNVPROC(uint func, int valueRef, uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHSTRINGNVPROC(uint path, uint format, int length, void* pathString);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHSUBCOMMANDSNVPROC(uint path, int commandStart, int commandsToDelete, int numCommands, byte* commands, int numCoords, uint coordType, void* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPATHSUBCOORDSNVPROC(uint path, int coordStart, int numCoords, uint coordType, void* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPAUSETRANSFORMFEEDBACKPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPAUSETRANSFORMFEEDBACKNVPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELDATARANGENVPROC(uint target, int length, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELMAPXPROC(uint map, int size, int* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELSTOREFPROC(uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELSTOREIPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELSTOREXPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELTEXGENPARAMETERFSGISPROC(uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELTEXGENPARAMETERFVSGISPROC(uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELTEXGENPARAMETERISGISPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELTEXGENPARAMETERIVSGISPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELTEXGENSGIXPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELTRANSFERXOESPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELTRANSFORMPARAMETERFEXTPROC(uint target, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELTRANSFORMPARAMETERFVEXTPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELTRANSFORMPARAMETERIEXTPROC(uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELTRANSFORMPARAMETERIVEXTPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPIXELZOOMXOESPROC(int xfactor, int yfactor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLPOINTALONGPATHNVPROC(uint path, int startSegment, int numSegments, float distance, float* x, float* y, float* tangentX, float* tangentY);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERFPROC(uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERFARBPROC(uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERFEXTPROC(uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERFSGISPROC(uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERFVPROC(uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERFVARBPROC(uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERFVEXTPROC(uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERFVSGISPROC(uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERIPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERINVPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERIVPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERIVNVPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTPARAMETERXVOESPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTSIZEPROC(float size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOINTSIZEXOESPROC(int size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLPOLLASYNCSGIXPROC(uint* markerp);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLPOLLINSTRUMENTSSGIXPROC(int* marker_p);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOLYGONMODEPROC(uint face, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOLYGONOFFSETPROC(float factor, float units);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOLYGONOFFSETCLAMPPROC(float factor, float units, float clamp);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOLYGONOFFSETCLAMPEXTPROC(float factor, float units, float clamp);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOLYGONOFFSETEXTPROC(float factor, float bias);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOLYGONOFFSETXOESPROC(int factor, int units);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOPDEBUGGROUPPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPOPGROUPMARKEREXTPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPRESENTFRAMEDUALFILLNVPROC(uint video_slot, ulong minPresentTime, uint beginPresentTimeId, uint presentDurationId, uint type, uint target0, uint fill0, uint target1, uint fill1, uint target2, uint fill2, uint target3, uint fill3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPRESENTFRAMEKEYEDNVPROC(uint video_slot, ulong minPresentTime, uint beginPresentTimeId, uint presentDurationId, uint type, uint target0, uint fill0, uint key0, uint target1, uint fill1, uint key1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPRIMITIVEBOUNDINGBOXARBPROC(float minX, float minY, float minZ, float minW, float maxX, float maxY, float maxZ, float maxW);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPRIMITIVERESTARTINDEXPROC(uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPRIMITIVERESTARTINDEXNVPROC(uint index);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPRIMITIVERESTARTNVPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPRIORITIZETEXTURESEXTPROC(int n, uint* textures, float* priorities);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPRIORITIZETEXTURESXOESPROC(int n, uint* textures, int* priorities);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMBINARYPROC(uint program, uint binaryFormat, void* binary, int length);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMBUFFERPARAMETERSIIVNVPROC(uint target, uint bindingIndex, uint wordIndex, int count, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMBUFFERPARAMETERSIUIVNVPROC(uint target, uint bindingIndex, uint wordIndex, int count, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMBUFFERPARAMETERSFVNVPROC(uint target, uint bindingIndex, uint wordIndex, int count, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMENVPARAMETER4DARBPROC(uint target, uint index, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMENVPARAMETER4DVARBPROC(uint target, uint index, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMENVPARAMETER4FARBPROC(uint target, uint index, float x, float y, float z, float w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMENVPARAMETER4FVARBPROC(uint target, uint index, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMENVPARAMETERI4INVPROC(uint target, uint index, int x, int y, int z, int w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMENVPARAMETERI4IVNVPROC(uint target, uint index, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMENVPARAMETERI4UINVPROC(uint target, uint index, uint x, uint y, uint z, uint w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMENVPARAMETERI4UIVNVPROC(uint target, uint index, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMENVPARAMETERS4FVEXTPROC(uint target, uint index, int count, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMENVPARAMETERSI4IVNVPROC(uint target, uint index, int count, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMENVPARAMETERSI4UIVNVPROC(uint target, uint index, int count, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMLOCALPARAMETER4DARBPROC(uint target, uint index, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMLOCALPARAMETER4DVARBPROC(uint target, uint index, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMLOCALPARAMETER4FARBPROC(uint target, uint index, float x, float y, float z, float w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMLOCALPARAMETER4FVARBPROC(uint target, uint index, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMLOCALPARAMETERI4INVPROC(uint target, uint index, int x, int y, int z, int w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMLOCALPARAMETERI4IVNVPROC(uint target, uint index, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMLOCALPARAMETERI4UINVPROC(uint target, uint index, uint x, uint y, uint z, uint w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMLOCALPARAMETERI4UIVNVPROC(uint target, uint index, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC(uint target, uint index, int count, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMLOCALPARAMETERSI4IVNVPROC(uint target, uint index, int count, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMLOCALPARAMETERSI4UIVNVPROC(uint target, uint index, int count, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMNAMEDPARAMETER4DNVPROC(uint id, int len, byte* name, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMNAMEDPARAMETER4DVNVPROC(uint id, int len, byte* name, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMNAMEDPARAMETER4FNVPROC(uint id, int len, byte* name, float x, float y, float z, float w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMNAMEDPARAMETER4FVNVPROC(uint id, int len, byte* name, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMPARAMETER4DNVPROC(uint target, uint index, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMPARAMETER4DVNVPROC(uint target, uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMPARAMETER4FNVPROC(uint target, uint index, float x, float y, float z, float w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMPARAMETER4FVNVPROC(uint target, uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMPARAMETERIPROC(uint program, uint pname, int value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMPARAMETERIARBPROC(uint program, uint pname, int value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMPARAMETERIEXTPROC(uint program, uint pname, int value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMPARAMETERS4DVNVPROC(uint target, uint index, int count, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMPARAMETERS4FVNVPROC(uint target, uint index, int count, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMPATHFRAGMENTINPUTGENNVPROC(uint program, int location, uint genMode, int components, float* coeffs);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMSTRINGARBPROC(uint target, uint format, int len, void* str);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMSUBROUTINEPARAMETERSUIVNVPROC(uint target, int count, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1DPROC(uint program, int location, double v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1DEXTPROC(uint program, int location, double x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1DVPROC(uint program, int location, int count, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1DVEXTPROC(uint program, int location, int count, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1FPROC(uint program, int location, float v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1FEXTPROC(uint program, int location, float v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1FVPROC(uint program, int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1FVEXTPROC(uint program, int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1IPROC(uint program, int location, int v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1I64ARBPROC(uint program, int location, long x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1I64NVPROC(uint program, int location, long x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1I64VARBPROC(uint program, int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1I64VNVPROC(uint program, int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1IEXTPROC(uint program, int location, int v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1IVPROC(uint program, int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1IVEXTPROC(uint program, int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1UIPROC(uint program, int location, uint v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1UI64ARBPROC(uint program, int location, uint x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1UI64NVPROC(uint program, int location, ulong x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1UI64VARBPROC(uint program, int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1UI64VNVPROC(uint program, int location, int count, ulong* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1UIEXTPROC(uint program, int location, uint v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1UIVPROC(uint program, int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM1UIVEXTPROC(uint program, int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2DPROC(uint program, int location, double v0, double v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2DEXTPROC(uint program, int location, double x, double y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2DVPROC(uint program, int location, int count, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2DVEXTPROC(uint program, int location, int count, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2FPROC(uint program, int location, float v0, float v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2FEXTPROC(uint program, int location, float v0, float v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2FVPROC(uint program, int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2FVEXTPROC(uint program, int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2IPROC(uint program, int location, int v0, int v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2I64ARBPROC(uint program, int location, long x, long y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2I64NVPROC(uint program, int location, long x, long y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2I64VARBPROC(uint program, int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2I64VNVPROC(uint program, int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2IEXTPROC(uint program, int location, int v0, int v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2IVPROC(uint program, int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2IVEXTPROC(uint program, int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2UIPROC(uint program, int location, uint v0, uint v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2UI64ARBPROC(uint program, int location, uint x, uint y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2UI64NVPROC(uint program, int location, ulong x, ulong y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2UI64VARBPROC(uint program, int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2UI64VNVPROC(uint program, int location, int count, ulong* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2UIEXTPROC(uint program, int location, uint v0, uint v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2UIVPROC(uint program, int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM2UIVEXTPROC(uint program, int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3DPROC(uint program, int location, double v0, double v1, double v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3DEXTPROC(uint program, int location, double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3DVPROC(uint program, int location, int count, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3DVEXTPROC(uint program, int location, int count, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3FPROC(uint program, int location, float v0, float v1, float v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3FEXTPROC(uint program, int location, float v0, float v1, float v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3FVPROC(uint program, int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3FVEXTPROC(uint program, int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3IPROC(uint program, int location, int v0, int v1, int v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3I64ARBPROC(uint program, int location, long x, long y, long z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3I64NVPROC(uint program, int location, long x, long y, long z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3I64VARBPROC(uint program, int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3I64VNVPROC(uint program, int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3IEXTPROC(uint program, int location, int v0, int v1, int v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3IVPROC(uint program, int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3IVEXTPROC(uint program, int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3UIPROC(uint program, int location, uint v0, uint v1, uint v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3UI64ARBPROC(uint program, int location, uint x, uint y, uint z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3UI64NVPROC(uint program, int location, ulong x, ulong y, ulong z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3UI64VARBPROC(uint program, int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3UI64VNVPROC(uint program, int location, int count, ulong* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3UIEXTPROC(uint program, int location, uint v0, uint v1, uint v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3UIVPROC(uint program, int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM3UIVEXTPROC(uint program, int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4DPROC(uint program, int location, double v0, double v1, double v2, double v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4DEXTPROC(uint program, int location, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4DVPROC(uint program, int location, int count, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4DVEXTPROC(uint program, int location, int count, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4FPROC(uint program, int location, float v0, float v1, float v2, float v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4FEXTPROC(uint program, int location, float v0, float v1, float v2, float v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4FVPROC(uint program, int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4FVEXTPROC(uint program, int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4IPROC(uint program, int location, int v0, int v1, int v2, int v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4I64ARBPROC(uint program, int location, long x, long y, long z, long w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4I64NVPROC(uint program, int location, long x, long y, long z, long w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4I64VARBPROC(uint program, int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4I64VNVPROC(uint program, int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4IEXTPROC(uint program, int location, int v0, int v1, int v2, int v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4IVPROC(uint program, int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4IVEXTPROC(uint program, int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4UIPROC(uint program, int location, uint v0, uint v1, uint v2, uint v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4UI64ARBPROC(uint program, int location, uint x, uint y, uint z, uint w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4UI64NVPROC(uint program, int location, ulong x, ulong y, ulong z, ulong w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4UI64VARBPROC(uint program, int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4UI64VNVPROC(uint program, int location, int count, ulong* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4UIEXTPROC(uint program, int location, uint v0, uint v1, uint v2, uint v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4UIVPROC(uint program, int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORM4UIVEXTPROC(uint program, int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMHANDLEUI64ARBPROC(uint program, int location, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMHANDLEUI64NVPROC(uint program, int location, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMHANDLEUI64VARBPROC(uint program, int location, int count, uint* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMHANDLEUI64VNVPROC(uint program, int location, int count, uint* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX2DVPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX2DVEXTPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX2FVPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX2FVEXTPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX2X3DVEXTPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX2X3FVEXTPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX2X4DVEXTPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX2X4FVEXTPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX3DVPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX3DVEXTPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX3FVPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX3FVEXTPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX3X2DVEXTPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX3X2FVEXTPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX3X4DVEXTPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX3X4FVEXTPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX4DVPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX4DVEXTPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX4FVPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX4FVEXTPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX4X2DVEXTPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX4X2FVEXTPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX4X3DVEXTPROC(uint program, int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMMATRIX4X3FVEXTPROC(uint program, int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMUI64NVPROC(uint program, int location, ulong value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMUNIFORMUI64VNVPROC(uint program, int location, int count, ulong* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROGRAMVERTEXLIMITNVPROC(uint target, int limit);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROVOKINGVERTEXPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPROVOKINGVERTEXEXTPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPUSHCLIENTATTRIBDEFAULTEXTPROC(uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPUSHDEBUGGROUPPROC(uint source, uint id, int length, byte* message);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLPUSHGROUPMARKEREXTPROC(int length, byte* marker);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLQUERYCOUNTERPROC(uint id, uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLQUERYMATRIXXOESPROC(int* mantissa, int* exponent);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLQUERYOBJECTPARAMETERUIAMDPROC(uint target, uint id, uint pname, uint param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate int PFNGLQUERYRESOURCENVPROC(uint queryType, int tagId, uint count, int* buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLQUERYRESOURCETAGNVPROC(int tagId, byte* tagString);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRASTERPOS2XOESPROC(int x, int y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRASTERPOS2XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRASTERPOS3XOESPROC(int x, int y, int z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRASTERPOS3XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRASTERPOS4XOESPROC(int x, int y, int z, int w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRASTERPOS4XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRASTERSAMPLESEXTPROC(uint samples, bool fixedsamplelocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREADBUFFERPROC(uint src);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREADINSTRUMENTSSGIXPROC(int marker);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREADPIXELSPROC(int x, int y, int width, int height, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREADNPIXELSPROC(int x, int y, int width, int height, uint format, uint type, int bufSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREADNPIXELSARBPROC(int x, int y, int width, int height, uint format, uint type, int bufSize, void* data);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRECTXOESPROC(int x1, int y1, int x2, int y2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRECTXVOESPROC(int* v1, int* v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREFERENCEPLANESGIXPROC(double* equation);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLRELEASEKEYEDMUTEXWIN32EXTPROC(uint memory, uint key);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRELEASESHADERCOMPILERPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRENDERGPUMASKNVPROC(uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRENDERBUFFERSTORAGEPROC(uint target, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRENDERBUFFERSTORAGEEXTPROC(uint target, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC(uint target, int samples, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRENDERBUFFERSTORAGEMULTISAMPLEADVANCEDAMDPROC(uint target, int samples, int storageSamples, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRENDERBUFFERSTORAGEMULTISAMPLECOVERAGENVPROC(uint target, int coverageSamples, int colorSamples, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC(uint target, int samples, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEPOINTERSUNPROC(uint type, int stride, void** pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUBSUNPROC(byte code);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUBVSUNPROC(byte* code);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FSUNPROC(uint rc, float r, float g, float b, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUICOLOR3FVERTEX3FVSUNPROC(uint* rc, float* c, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FSUNPROC(uint rc, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUICOLOR4FNORMAL3FVERTEX3FVSUNPROC(uint* rc, float* c, float* n, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FSUNPROC(uint rc, byte r, byte g, byte b, byte a, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUICOLOR4UBVERTEX3FVSUNPROC(uint* rc, byte* c, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FSUNPROC(uint rc, float nx, float ny, float nz, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUINORMAL3FVERTEX3FVSUNPROC(uint* rc, float* n, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUISUNPROC(uint code);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC(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);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUITEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC(uint* rc, float* tc, float* c, float* n, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FSUNPROC(uint rc, float s, float t, float nx, float ny, float nz, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUITEXCOORD2FNORMAL3FVERTEX3FVSUNPROC(uint* rc, float* tc, float* n, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FSUNPROC(uint rc, float s, float t, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUITEXCOORD2FVERTEX3FVSUNPROC(uint* rc, float* tc, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUIVERTEX3FSUNPROC(uint rc, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUIVERTEX3FVSUNPROC(uint* rc, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUIVSUNPROC(uint* code);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUSSUNPROC(ushort code);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREPLACEMENTCODEUSVSUNPROC(ushort* code);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLREQUESTRESIDENTPROGRAMSNVPROC(int n, uint* programs);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRESETHISTOGRAMEXTPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRESETMEMORYOBJECTPARAMETERNVPROC(uint memory, uint pname);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRESETMINMAXEXTPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRESIZEBUFFERSMESAPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRESOLVEDEPTHVALUESNVPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRESUMETRANSFORMFEEDBACKPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLRESUMETRANSFORMFEEDBACKNVPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLROTATEXOESPROC(int angle, int x, int y, int z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLECOVERAGEPROC(float value, bool invert);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLECOVERAGEARBPROC(float value, bool invert);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLEMAPATIPROC(uint dst, uint interp, uint swizzle);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLEMASKEXTPROC(float value, bool invert);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLEMASKINDEXEDNVPROC(uint index, uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLEMASKSGISPROC(float value, bool invert);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLEMASKIPROC(uint maskNumber, uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLEPATTERNEXTPROC(uint pattern);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLEPATTERNSGISPROC(uint pattern);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLERPARAMETERIIVPROC(uint sampler, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLERPARAMETERIUIVPROC(uint sampler, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLERPARAMETERFPROC(uint sampler, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLERPARAMETERFVPROC(uint sampler, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLERPARAMETERIPROC(uint sampler, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSAMPLERPARAMETERIVPROC(uint sampler, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSCALEXOESPROC(int x, int y, int z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSCISSORPROC(int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSCISSORARRAYVPROC(uint first, int count, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSCISSOREXCLUSIVEARRAYVNVPROC(uint first, int count, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSCISSOREXCLUSIVENVPROC(int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSCISSORINDEXEDPROC(uint index, int left, int bottom, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSCISSORINDEXEDVPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3BEXTPROC(sbyte red, sbyte green, sbyte blue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3BVEXTPROC(sbyte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3DEXTPROC(double red, double green, double blue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3DVEXTPROC(double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3FEXTPROC(float red, float green, float blue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3FVEXTPROC(float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3HNVPROC(ushort red, ushort green, ushort blue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3HVNVPROC(ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3IEXTPROC(int red, int green, int blue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3IVEXTPROC(int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3SEXTPROC(short red, short green, short blue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3SVEXTPROC(short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3UBEXTPROC(byte red, byte green, byte blue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3UBVEXTPROC(byte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3UIEXTPROC(uint red, uint green, uint blue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3UIVEXTPROC(uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3USEXTPROC(ushort red, ushort green, ushort blue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLOR3USVEXTPROC(ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLORFORMATNVPROC(int size, uint type, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLORPOINTEREXTPROC(int size, uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSECONDARYCOLORPOINTERLISTIBMPROC(int size, uint type, int stride, void** pointer, int ptrstride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSELECTPERFMONITORCOUNTERSAMDPROC(uint monitor, bool enable, uint group, int numCounters, uint* counterList);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSEMAPHOREPARAMETERIVNVPROC(uint semaphore, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSEMAPHOREPARAMETERUI64VEXTPROC(uint semaphore, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSEPARABLEFILTER2DEXTPROC(uint target, uint internalformat, int width, int height, uint format, uint type, void* row, void* column);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSETFENCEAPPLEPROC(uint fence);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSETFENCENVPROC(uint fence, uint condition);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSETFRAGMENTSHADERCONSTANTATIPROC(uint dst, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSETINVARIANTEXTPROC(uint id, uint type, void* addr);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSETLOCALCONSTANTEXTPROC(uint id, uint type, void* addr);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSETMULTISAMPLEFVAMDPROC(uint pname, uint index, float* val);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSHADERBINARYPROC(int count, uint* shaders, uint binaryFormat, void* binary, int length);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSHADEROP1EXTPROC(uint op, uint res, uint arg1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSHADEROP2EXTPROC(uint op, uint res, uint arg1, uint arg2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSHADEROP3EXTPROC(uint op, uint res, uint arg1, uint arg2, uint arg3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSHADERSOURCEPROC(uint shader, int count, byte** str, int* length);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSHADERSOURCEARBPROC(GLhandleARB shaderObj, int count, byte** str, int* length);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSHADERSTORAGEBLOCKBINDINGPROC(uint program, uint storageBlockIndex, uint storageBlockBinding);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSHADINGRATEIMAGEBARRIERNVPROC(bool synchronize);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSHADINGRATEIMAGEPALETTENVPROC(uint viewport, uint first, int count, uint* rates);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSHADINGRATESAMPLEORDERCUSTOMNVPROC(uint rate, uint samples, int* locations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSHADINGRATESAMPLEORDERNVPROC(uint order);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSHARPENTEXFUNCSGISPROC(uint target, int n, float* points);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSIGNALSEMAPHOREEXTPROC(uint semaphore, uint numBufferBarriers, uint* buffers, uint numTextureBarriers, uint* textures, uint* dstLayouts);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSIGNALSEMAPHOREUI64NVXPROC(uint signalGpu, int fenceObjectCount, uint* semaphoreArray, uint* fenceValueArray);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSIGNALVKFENCENVPROC(uint vkFence);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSIGNALVKSEMAPHORENVPROC(uint vkSemaphore);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSPECIALIZESHADERPROC(uint shader, byte* pEntryPoint, uint numSpecializationConstants, uint* pConstantIndex, uint* pConstantValue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSPECIALIZESHADERARBPROC(uint shader, byte* pEntryPoint, uint numSpecializationConstants, uint* pConstantIndex, uint* pConstantValue);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSPRITEPARAMETERFSGIXPROC(uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSPRITEPARAMETERFVSGIXPROC(uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSPRITEPARAMETERISGIXPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSPRITEPARAMETERIVSGIXPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTARTINSTRUMENTSSGIXPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTATECAPTURENVPROC(uint state, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILCLEARTAGEXTPROC(int stencilTagBits, uint stencilClearTag);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILFILLPATHINSTANCEDNVPROC(int numPaths, uint pathNameType, void* paths, uint pathBase, uint fillMode, uint mask, uint transformType, float* transformValues);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILFILLPATHNVPROC(uint path, uint fillMode, uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILFUNCPROC(uint func, int valueRef, uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILFUNCSEPARATEPROC(uint face, uint func, int valueRef, uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILFUNCSEPARATEATIPROC(uint frontfunc, uint backfunc, int valueRef, uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILMASKPROC(uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILMASKSEPARATEPROC(uint face, uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILOPPROC(uint fail, uint zfail, uint zpass);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILOPSEPARATEPROC(uint face, uint sfail, uint dpfail, uint dppass);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILOPSEPARATEATIPROC(uint face, uint sfail, uint dpfail, uint dppass);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILOPVALUEAMDPROC(uint face, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILSTROKEPATHINSTANCEDNVPROC(int numPaths, uint pathNameType, void* paths, uint pathBase, int reference, uint mask, uint transformType, float* transformValues);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILSTROKEPATHNVPROC(uint path, int reference, uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILTHENCOVERFILLPATHINSTANCEDNVPROC(int numPaths, uint pathNameType, void* paths, uint pathBase, uint fillMode, uint mask, uint coverMode, uint transformType, float* transformValues);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILTHENCOVERFILLPATHNVPROC(uint path, uint fillMode, uint mask, uint coverMode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILTHENCOVERSTROKEPATHINSTANCEDNVPROC(int numPaths, uint pathNameType, void* paths, uint pathBase, int reference, uint mask, uint coverMode, uint transformType, float* transformValues);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTENCILTHENCOVERSTROKEPATHNVPROC(uint path, int reference, uint mask, uint coverMode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTOPINSTRUMENTSSGIXPROC(int marker);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSTRINGMARKERGREMEDYPROC(int len, void* str);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSUBPIXELPRECISIONBIASNVPROC(uint xbits, uint ybits);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSWIZZLEEXTPROC(uint res, uint input, uint outX, uint outY, uint outZ, uint outW);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLSYNCTEXTUREINTELPROC(uint texture);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTAGSAMPLEBUFFERSGIXPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTANGENT3BEXTPROC(sbyte tx, sbyte ty, sbyte tz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTANGENT3BVEXTPROC(sbyte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTANGENT3DEXTPROC(double tx, double ty, double tz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTANGENT3DVEXTPROC(double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTANGENT3FEXTPROC(float tx, float ty, float tz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTANGENT3FVEXTPROC(float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTANGENT3IEXTPROC(int tx, int ty, int tz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTANGENT3IVEXTPROC(int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTANGENT3SEXTPROC(short tx, short ty, short tz);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTANGENT3SVEXTPROC(short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTANGENTPOINTEREXTPROC(uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTBUFFERMASK3DFXPROC(uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTESSELLATIONFACTORAMDPROC(float factor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTESSELLATIONMODEAMDPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLTESTFENCEAPPLEPROC(uint fence);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLTESTFENCENVPROC(uint fence);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLTESTOBJECTAPPLEPROC(uint testedObject, uint name);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXATTACHMEMORYNVPROC(uint target, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXBUFFERPROC(uint target, uint internalformat, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXBUFFERARBPROC(uint target, uint internalformat, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXBUFFEREXTPROC(uint target, uint internalformat, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXBUFFERRANGEPROC(uint target, uint internalformat, uint buffer, long offset, long size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXBUMPPARAMETERFVATIPROC(uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXBUMPPARAMETERIVATIPROC(uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD1BOESPROC(sbyte s);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD1BVOESPROC(sbyte* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD1HNVPROC(ushort s);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD1HVNVPROC(ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD1XOESPROC(int s);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD1XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2BOESPROC(sbyte s, sbyte t);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2BVOESPROC(sbyte* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2FCOLOR3FVERTEX3FSUNPROC(float s, float t, float r, float g, float b, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2FCOLOR3FVERTEX3FVSUNPROC(float* tc, float* c, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FSUNPROC(float s, float t, float r, float g, float b, float a, float nx, float ny, float nz, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2FCOLOR4FNORMAL3FVERTEX3FVSUNPROC(float* tc, float* c, float* n, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2FCOLOR4UBVERTEX3FSUNPROC(float s, float t, byte r, byte g, byte b, byte a, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2FCOLOR4UBVERTEX3FVSUNPROC(float* tc, byte* c, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2FNORMAL3FVERTEX3FSUNPROC(float s, float t, float nx, float ny, float nz, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2FNORMAL3FVERTEX3FVSUNPROC(float* tc, float* n, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2FVERTEX3FSUNPROC(float s, float t, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2FVERTEX3FVSUNPROC(float* tc, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2HNVPROC(ushort s, ushort t);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2HVNVPROC(ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2XOESPROC(int s, int t);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD2XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD3BOESPROC(sbyte s, sbyte t, sbyte r);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD3BVOESPROC(sbyte* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD3HNVPROC(ushort s, ushort t, ushort r);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD3HVNVPROC(ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD3XOESPROC(int s, int t, int r);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD3XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD4BOESPROC(sbyte s, sbyte t, sbyte r, sbyte q);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD4BVOESPROC(sbyte* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FSUNPROC(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);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD4FCOLOR4FNORMAL3FVERTEX4FVSUNPROC(float* tc, float* c, float* n, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD4FVERTEX4FSUNPROC(float s, float t, float p, float q, float x, float y, float z, float w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD4FVERTEX4FVSUNPROC(float* tc, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD4HNVPROC(ushort s, ushort t, ushort r, ushort q);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD4HVNVPROC(ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD4XOESPROC(int s, int t, int r, int q);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORD4XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORDFORMATNVPROC(int size, uint type, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORDPOINTEREXTPROC(int size, uint type, int stride, int count, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORDPOINTERLISTIBMPROC(int size, uint type, int stride, void** pointer, int ptrstride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXCOORDPOINTERVINTELPROC(int size, uint type, void** pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXENVXOESPROC(uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXENVXVOESPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXFILTERFUNCSGISPROC(uint target, uint filter, int n, float* weights);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXGENXOESPROC(uint coord, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXGENXVOESPROC(uint coord, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXIMAGE1DPROC(uint target, int level, int internalformat, int width, int border, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXIMAGE2DPROC(uint target, int level, int internalformat, int width, int height, int border, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXIMAGE2DMULTISAMPLEPROC(uint target, int samples, uint internalformat, int width, int height, bool fixedsamplelocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXIMAGE2DMULTISAMPLECOVERAGENVPROC(uint target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, bool fixedSampleLocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXIMAGE3DPROC(uint target, int level, int internalformat, int width, int height, int depth, int border, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXIMAGE3DEXTPROC(uint target, int level, uint internalformat, int width, int height, int depth, int border, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXIMAGE3DMULTISAMPLEPROC(uint target, int samples, uint internalformat, int width, int height, int depth, bool fixedsamplelocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXIMAGE3DMULTISAMPLECOVERAGENVPROC(uint target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXIMAGE4DSGISPROC(uint target, int level, uint internalformat, int width, int height, int depth, int size4d, int border, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXPAGECOMMITMENTARBPROC(uint target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, bool commit);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXPAGECOMMITMENTMEMNVPROC(uint target, int layer, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint memory, uint offset, bool commit);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXPARAMETERIIVPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXPARAMETERIIVEXTPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXPARAMETERIUIVPROC(uint target, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXPARAMETERIUIVEXTPROC(uint target, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXPARAMETERFPROC(uint target, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXPARAMETERFVPROC(uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXPARAMETERIPROC(uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXPARAMETERIVPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXPARAMETERXOESPROC(uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXPARAMETERXVOESPROC(uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXRENDERBUFFERNVPROC(uint target, uint renderbuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGE1DPROC(uint target, int levels, uint internalformat, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGE1DEXTPROC(uint target, int levels, uint internalformat, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGE2DPROC(uint target, int levels, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGE2DEXTPROC(uint target, int levels, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGE2DMULTISAMPLEPROC(uint target, int samples, uint internalformat, int width, int height, bool fixedsamplelocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGE3DPROC(uint target, int levels, uint internalformat, int width, int height, int depth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGE3DEXTPROC(uint target, int levels, uint internalformat, int width, int height, int depth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGE3DMULTISAMPLEPROC(uint target, int samples, uint internalformat, int width, int height, int depth, bool fixedsamplelocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGEMEM1DEXTPROC(uint target, int levels, uint internalFormat, int width, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGEMEM2DEXTPROC(uint target, int levels, uint internalFormat, int width, int height, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGEMEM2DMULTISAMPLEEXTPROC(uint target, int samples, uint internalFormat, int width, int height, bool fixedSampleLocations, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGEMEM3DEXTPROC(uint target, int levels, uint internalFormat, int width, int height, int depth, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGEMEM3DMULTISAMPLEEXTPROC(uint target, int samples, uint internalFormat, int width, int height, int depth, bool fixedSampleLocations, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSTORAGESPARSEAMDPROC(uint target, uint internalFormat, int width, int height, int depth, int layers, uint flags);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSUBIMAGE1DPROC(uint target, int level, int xoffset, int width, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSUBIMAGE1DEXTPROC(uint target, int level, int xoffset, int width, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSUBIMAGE2DPROC(uint target, int level, int xoffset, int yoffset, int width, int height, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSUBIMAGE2DEXTPROC(uint target, int level, int xoffset, int yoffset, int width, int height, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSUBIMAGE3DPROC(uint target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSUBIMAGE3DEXTPROC(uint target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXSUBIMAGE4DSGISPROC(uint target, int level, int xoffset, int yoffset, int zoffset, int woffset, int width, int height, int depth, int size4d, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREATTACHMEMORYNVPROC(uint texture, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREBARRIERPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREBARRIERNVPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREBUFFERPROC(uint texture, uint internalformat, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREBUFFEREXTPROC(uint texture, uint target, uint internalformat, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREBUFFERRANGEPROC(uint texture, uint internalformat, uint buffer, long offset, long size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREBUFFERRANGEEXTPROC(uint texture, uint target, uint internalformat, uint buffer, long offset, long size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURECOLORMASKSGISPROC(bool red, bool green, bool blue, bool alpha);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREIMAGE1DEXTPROC(uint texture, uint target, int level, int internalformat, int width, int border, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREIMAGE2DEXTPROC(uint texture, uint target, int level, int internalformat, int width, int height, int border, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREIMAGE2DMULTISAMPLECOVERAGENVPROC(uint texture, uint target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, bool fixedSampleLocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREIMAGE2DMULTISAMPLENVPROC(uint texture, uint target, int samples, int internalFormat, int width, int height, bool fixedSampleLocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREIMAGE3DEXTPROC(uint texture, uint target, int level, int internalformat, int width, int height, int depth, int border, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREIMAGE3DMULTISAMPLECOVERAGENVPROC(uint texture, uint target, int coverageSamples, int colorSamples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREIMAGE3DMULTISAMPLENVPROC(uint texture, uint target, int samples, int internalFormat, int width, int height, int depth, bool fixedSampleLocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURELIGHTEXTPROC(uint pname);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREMATERIALEXTPROC(uint face, uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURENORMALEXTPROC(uint mode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPAGECOMMITMENTEXTPROC(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, bool commit);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPAGECOMMITMENTMEMNVPROC(uint texture, int layer, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint memory, uint offset, bool commit);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPARAMETERIIVPROC(uint texture, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPARAMETERIIVEXTPROC(uint texture, uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPARAMETERIUIVPROC(uint texture, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPARAMETERIUIVEXTPROC(uint texture, uint target, uint pname, uint* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPARAMETERFPROC(uint texture, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPARAMETERFEXTPROC(uint texture, uint target, uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPARAMETERFVPROC(uint texture, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPARAMETERFVEXTPROC(uint texture, uint target, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPARAMETERIPROC(uint texture, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPARAMETERIEXTPROC(uint texture, uint target, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPARAMETERIVPROC(uint texture, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREPARAMETERIVEXTPROC(uint texture, uint target, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURERANGEAPPLEPROC(uint target, int length, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURERENDERBUFFEREXTPROC(uint texture, uint target, uint renderbuffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGE1DPROC(uint texture, int levels, uint internalformat, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGE1DEXTPROC(uint texture, uint target, int levels, uint internalformat, int width);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGE2DPROC(uint texture, int levels, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGE2DEXTPROC(uint texture, uint target, int levels, uint internalformat, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC(uint texture, int samples, uint internalformat, int width, int height, bool fixedsamplelocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGE2DMULTISAMPLEEXTPROC(uint texture, uint target, int samples, uint internalformat, int width, int height, bool fixedsamplelocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGE3DPROC(uint texture, int levels, uint internalformat, int width, int height, int depth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGE3DEXTPROC(uint texture, uint target, int levels, uint internalformat, int width, int height, int depth);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC(uint texture, int samples, uint internalformat, int width, int height, int depth, bool fixedsamplelocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGE3DMULTISAMPLEEXTPROC(uint texture, uint target, int samples, uint internalformat, int width, int height, int depth, bool fixedsamplelocations);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGEMEM1DEXTPROC(uint texture, int levels, uint internalFormat, int width, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGEMEM2DEXTPROC(uint texture, int levels, uint internalFormat, int width, int height, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGEMEM2DMULTISAMPLEEXTPROC(uint texture, int samples, uint internalFormat, int width, int height, bool fixedSampleLocations, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGEMEM3DEXTPROC(uint texture, int levels, uint internalFormat, int width, int height, int depth, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGEMEM3DMULTISAMPLEEXTPROC(uint texture, int samples, uint internalFormat, int width, int height, int depth, bool fixedSampleLocations, uint memory, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESTORAGESPARSEAMDPROC(uint texture, uint target, uint internalFormat, int width, int height, int depth, int layers, uint flags);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESUBIMAGE1DPROC(uint texture, int level, int xoffset, int width, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESUBIMAGE1DEXTPROC(uint texture, uint target, int level, int xoffset, int width, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESUBIMAGE2DPROC(uint texture, int level, int xoffset, int yoffset, int width, int height, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESUBIMAGE2DEXTPROC(uint texture, uint target, int level, int xoffset, int yoffset, int width, int height, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESUBIMAGE3DPROC(uint texture, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTURESUBIMAGE3DEXTPROC(uint texture, uint target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, uint format, uint type, void* pixels);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTEXTUREVIEWPROC(uint texture, uint target, uint origtexture, uint internalformat, uint minlevel, uint numlevels, uint minlayer, uint numlayers);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTRACKMATRIXNVPROC(uint target, uint address, uint matrix, uint transform);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTRANSFORMFEEDBACKATTRIBSNVPROC(int count, int* attribs, uint bufferMode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC(uint xfb, uint index, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC(uint xfb, uint index, uint buffer, long offset, long size);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTRANSFORMFEEDBACKSTREAMATTRIBSNVPROC(int count, int* attribs, int nbuffers, int* bufstreams, uint bufferMode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTRANSFORMFEEDBACKVARYINGSPROC(uint program, int count, byte** varyings, uint bufferMode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTRANSFORMFEEDBACKVARYINGSEXTPROC(uint program, int count, byte** varyings, uint bufferMode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTRANSFORMFEEDBACKVARYINGSNVPROC(uint program, int count, int* locations, uint bufferMode);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTRANSFORMPATHNVPROC(uint resultPath, uint srcPath, uint transformType, float* transformValues);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLTRANSLATEXOESPROC(int x, int y, int z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1DPROC(int location, double x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1DVPROC(int location, int count, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1FPROC(int location, float v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1FARBPROC(int location, float v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1FVPROC(int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1FVARBPROC(int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1IPROC(int location, int v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1I64ARBPROC(int location, long x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1I64NVPROC(int location, long x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1I64VARBPROC(int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1I64VNVPROC(int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1IARBPROC(int location, int v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1IVPROC(int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1IVARBPROC(int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1UIPROC(int location, uint v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1UI64ARBPROC(int location, uint x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1UI64NVPROC(int location, ulong x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1UI64VARBPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1UI64VNVPROC(int location, int count, ulong* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1UIEXTPROC(int location, uint v0);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1UIVPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM1UIVEXTPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2DPROC(int location, double x, double y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2DVPROC(int location, int count, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2FPROC(int location, float v0, float v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2FARBPROC(int location, float v0, float v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2FVPROC(int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2FVARBPROC(int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2IPROC(int location, int v0, int v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2I64ARBPROC(int location, long x, long y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2I64NVPROC(int location, long x, long y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2I64VARBPROC(int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2I64VNVPROC(int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2IARBPROC(int location, int v0, int v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2IVPROC(int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2IVARBPROC(int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2UIPROC(int location, uint v0, uint v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2UI64ARBPROC(int location, uint x, uint y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2UI64NVPROC(int location, ulong x, ulong y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2UI64VARBPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2UI64VNVPROC(int location, int count, ulong* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2UIEXTPROC(int location, uint v0, uint v1);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2UIVPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM2UIVEXTPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3DPROC(int location, double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3DVPROC(int location, int count, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3FPROC(int location, float v0, float v1, float v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3FARBPROC(int location, float v0, float v1, float v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3FVPROC(int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3FVARBPROC(int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3IPROC(int location, int v0, int v1, int v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3I64ARBPROC(int location, long x, long y, long z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3I64NVPROC(int location, long x, long y, long z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3I64VARBPROC(int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3I64VNVPROC(int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3IARBPROC(int location, int v0, int v1, int v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3IVPROC(int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3IVARBPROC(int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3UIPROC(int location, uint v0, uint v1, uint v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3UI64ARBPROC(int location, uint x, uint y, uint z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3UI64NVPROC(int location, ulong x, ulong y, ulong z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3UI64VARBPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3UI64VNVPROC(int location, int count, ulong* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3UIEXTPROC(int location, uint v0, uint v1, uint v2);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3UIVPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM3UIVEXTPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4DPROC(int location, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4DVPROC(int location, int count, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4FPROC(int location, float v0, float v1, float v2, float v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4FARBPROC(int location, float v0, float v1, float v2, float v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4FVPROC(int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4FVARBPROC(int location, int count, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4IPROC(int location, int v0, int v1, int v2, int v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4I64ARBPROC(int location, long x, long y, long z, long w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4I64NVPROC(int location, long x, long y, long z, long w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4I64VARBPROC(int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4I64VNVPROC(int location, int count, long* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4IARBPROC(int location, int v0, int v1, int v2, int v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4IVPROC(int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4IVARBPROC(int location, int count, int* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4UIPROC(int location, uint v0, uint v1, uint v2, uint v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4UI64ARBPROC(int location, uint x, uint y, uint z, uint w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4UI64NVPROC(int location, ulong x, ulong y, ulong z, ulong w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4UI64VARBPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4UI64VNVPROC(int location, int count, ulong* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4UIEXTPROC(int location, uint v0, uint v1, uint v2, uint v3);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4UIVPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORM4UIVEXTPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMBLOCKBINDINGPROC(uint program, uint uniformBlockIndex, uint uniformBlockBinding);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMBUFFEREXTPROC(uint program, int location, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMHANDLEUI64ARBPROC(int location, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMHANDLEUI64NVPROC(int location, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMHANDLEUI64VARBPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMHANDLEUI64VNVPROC(int location, int count, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX2DVPROC(int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX2FVPROC(int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX2FVARBPROC(int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX2X3DVPROC(int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX2X3FVPROC(int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX2X4DVPROC(int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX2X4FVPROC(int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX3DVPROC(int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX3FVPROC(int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX3FVARBPROC(int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX3X2DVPROC(int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX3X2FVPROC(int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX3X4DVPROC(int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX3X4FVPROC(int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX4DVPROC(int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX4FVPROC(int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX4FVARBPROC(int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX4X2DVPROC(int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX4X2FVPROC(int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX4X3DVPROC(int location, int count, bool transpose, double* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMMATRIX4X3FVPROC(int location, int count, bool transpose, float* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMSUBROUTINESUIVPROC(uint shadertype, int count, uint* indices);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMUI64NVPROC(int location, ulong value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNIFORMUI64VNVPROC(int location, int count, ulong* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNLOCKARRAYSEXTPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLUNMAPBUFFERPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLUNMAPBUFFERARBPROC(uint target);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLUNMAPNAMEDBUFFERPROC(uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLUNMAPNAMEDBUFFEREXTPROC(uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNMAPOBJECTBUFFERATIPROC(uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUNMAPTEXTURE2DINTELPROC(uint texture, int level);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUPDATEOBJECTBUFFERATIPROC(uint buffer, uint offset, int size, void* pointer, uint preserve);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUPLOADGPUMASKNVXPROC(uint mask);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUSEPROGRAMPROC(uint program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUSEPROGRAMOBJECTARBPROC(GLhandleARB programObj);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUSEPROGRAMSTAGESPROC(uint pipeline, uint stages, uint program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLUSESHADERPROGRAMEXTPROC(uint type, uint program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVDPAUFININVPROC();
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVDPAUGETSURFACEIVNVPROC(long surface, uint pname, int count, int* length, int* values);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVDPAUINITNVPROC(void* vdpDevice, void* getProcAddress);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate bool PFNGLVDPAUISSURFACENVPROC(long surface);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVDPAUMAPSURFACESNVPROC(int numSurfaces, long* surfaces);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate long PFNGLVDPAUREGISTEROUTPUTSURFACENVPROC(void* vdpSurface, uint target, int numTextureNames, uint* textureNames);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate long PFNGLVDPAUREGISTERVIDEOSURFACENVPROC(void* vdpSurface, uint target, int numTextureNames, uint* textureNames);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate long PFNGLVDPAUREGISTERVIDEOSURFACEWITHPICTURESTRUCTURENVPROC(void* vdpSurface, uint target, int numTextureNames, uint* textureNames, bool isFrameStructure);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVDPAUSURFACEACCESSNVPROC(long surface, uint access);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVDPAUUNMAPSURFACESNVPROC(int numSurface, long* surfaces);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVDPAUUNREGISTERSURFACENVPROC(long surface);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVALIDATEPROGRAMPROC(uint program);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVALIDATEPROGRAMARBPROC(GLhandleARB programObj);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVALIDATEPROGRAMPIPELINEPROC(uint pipeline);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVARIANTARRAYOBJECTATIPROC(uint id, uint type, int stride, uint buffer, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVARIANTPOINTEREXTPROC(uint id, uint type, uint stride, void* addr);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVARIANTBVEXTPROC(uint id, sbyte* addr);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVARIANTDVEXTPROC(uint id, double* addr);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVARIANTFVEXTPROC(uint id, float* addr);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVARIANTIVEXTPROC(uint id, int* addr);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVARIANTSVEXTPROC(uint id, short* addr);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVARIANTUBVEXTPROC(uint id, byte* addr);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVARIANTUIVEXTPROC(uint id, uint* addr);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVARIANTUSVEXTPROC(uint id, ushort* addr);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX2BOESPROC(sbyte x, sbyte y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX2BVOESPROC(sbyte* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX2HNVPROC(ushort x, ushort y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX2HVNVPROC(ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX2XOESPROC(int x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX2XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX3BOESPROC(sbyte x, sbyte y, sbyte z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX3BVOESPROC(sbyte* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX3HNVPROC(ushort x, ushort y, ushort z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX3HVNVPROC(ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX3XOESPROC(int x, int y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX3XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX4BOESPROC(sbyte x, sbyte y, sbyte z, sbyte w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX4BVOESPROC(sbyte* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX4HNVPROC(ushort x, ushort y, ushort z, ushort w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX4HVNVPROC(ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX4XOESPROC(int x, int y, int z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEX4XVOESPROC(int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYATTRIBBINDINGPROC(uint vaobj, uint attribindex, uint bindingindex);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYATTRIBFORMATPROC(uint vaobj, uint attribindex, int size, uint type, bool normalized, uint relativeoffset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYATTRIBIFORMATPROC(uint vaobj, uint attribindex, int size, uint type, uint relativeoffset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYATTRIBLFORMATPROC(uint vaobj, uint attribindex, int size, uint type, uint relativeoffset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYBINDVERTEXBUFFEREXTPROC(uint vaobj, uint bindingindex, uint buffer, long offset, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYBINDINGDIVISORPROC(uint vaobj, uint bindingindex, uint divisor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYCOLOROFFSETEXTPROC(uint vaobj, uint buffer, int size, uint type, int stride, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYEDGEFLAGOFFSETEXTPROC(uint vaobj, uint buffer, int stride, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYELEMENTBUFFERPROC(uint vaobj, uint buffer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYFOGCOORDOFFSETEXTPROC(uint vaobj, uint buffer, uint type, int stride, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYINDEXOFFSETEXTPROC(uint vaobj, uint buffer, uint type, int stride, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYMULTITEXCOORDOFFSETEXTPROC(uint vaobj, uint buffer, uint texunit, int size, uint type, int stride, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYNORMALOFFSETEXTPROC(uint vaobj, uint buffer, uint type, int stride, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYPARAMETERIAPPLEPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYRANGEAPPLEPROC(int length, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYRANGENVPROC(int length, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYSECONDARYCOLOROFFSETEXTPROC(uint vaobj, uint buffer, int size, uint type, int stride, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYTEXCOORDOFFSETEXTPROC(uint vaobj, uint buffer, int size, uint type, int stride, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYVERTEXATTRIBBINDINGEXTPROC(uint vaobj, uint attribindex, uint bindingindex);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYVERTEXATTRIBDIVISOREXTPROC(uint vaobj, uint index, uint divisor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYVERTEXATTRIBFORMATEXTPROC(uint vaobj, uint attribindex, int size, uint type, bool normalized, uint relativeoffset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYVERTEXATTRIBIFORMATEXTPROC(uint vaobj, uint attribindex, int size, uint type, uint relativeoffset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYVERTEXATTRIBIOFFSETEXTPROC(uint vaobj, uint buffer, uint index, int size, uint type, int stride, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYVERTEXATTRIBLFORMATEXTPROC(uint vaobj, uint attribindex, int size, uint type, uint relativeoffset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYVERTEXATTRIBLOFFSETEXTPROC(uint vaobj, uint buffer, uint index, int size, uint type, int stride, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYVERTEXATTRIBOFFSETEXTPROC(uint vaobj, uint buffer, uint index, int size, uint type, bool normalized, int stride, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYVERTEXBINDINGDIVISOREXTPROC(uint vaobj, uint bindingindex, uint divisor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYVERTEXBUFFERPROC(uint vaobj, uint bindingindex, uint buffer, long offset, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYVERTEXBUFFERSPROC(uint vaobj, uint first, int count, uint* buffers, long* offsets, int* strides);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXARRAYVERTEXOFFSETEXTPROC(uint vaobj, uint buffer, int size, uint type, int stride, long offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1DPROC(uint index, double x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1DARBPROC(uint index, double x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1DNVPROC(uint index, double x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1DVPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1DVARBPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1DVNVPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1FPROC(uint index, float x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1FARBPROC(uint index, float x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1FNVPROC(uint index, float x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1FVPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1FVARBPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1FVNVPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1HNVPROC(uint index, ushort x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1HVNVPROC(uint index, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1SPROC(uint index, short x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1SARBPROC(uint index, short x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1SNVPROC(uint index, short x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1SVPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1SVARBPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB1SVNVPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2DPROC(uint index, double x, double y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2DARBPROC(uint index, double x, double y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2DNVPROC(uint index, double x, double y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2DVPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2DVARBPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2DVNVPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2FPROC(uint index, float x, float y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2FARBPROC(uint index, float x, float y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2FNVPROC(uint index, float x, float y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2FVPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2FVARBPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2FVNVPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2HNVPROC(uint index, ushort x, ushort y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2HVNVPROC(uint index, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2SPROC(uint index, short x, short y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2SARBPROC(uint index, short x, short y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2SNVPROC(uint index, short x, short y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2SVPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2SVARBPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB2SVNVPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3DPROC(uint index, double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3DARBPROC(uint index, double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3DNVPROC(uint index, double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3DVPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3DVARBPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3DVNVPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3FPROC(uint index, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3FARBPROC(uint index, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3FNVPROC(uint index, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3FVPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3FVARBPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3FVNVPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3HNVPROC(uint index, ushort x, ushort y, ushort z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3HVNVPROC(uint index, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3SPROC(uint index, short x, short y, short z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3SARBPROC(uint index, short x, short y, short z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3SNVPROC(uint index, short x, short y, short z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3SVPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3SVARBPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB3SVNVPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NBVPROC(uint index, sbyte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NBVARBPROC(uint index, sbyte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NIVPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NIVARBPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NSVPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NSVARBPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NUBPROC(uint index, byte x, byte y, byte z, byte w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NUBARBPROC(uint index, byte x, byte y, byte z, byte w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NUBVPROC(uint index, byte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NUBVARBPROC(uint index, byte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NUIVPROC(uint index, uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NUIVARBPROC(uint index, uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NUSVPROC(uint index, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4NUSVARBPROC(uint index, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4BVPROC(uint index, sbyte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4BVARBPROC(uint index, sbyte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4DPROC(uint index, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4DARBPROC(uint index, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4DNVPROC(uint index, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4DVPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4DVARBPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4DVNVPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4FPROC(uint index, float x, float y, float z, float w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4FARBPROC(uint index, float x, float y, float z, float w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4FNVPROC(uint index, float x, float y, float z, float w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4FVPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4FVARBPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4FVNVPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4HNVPROC(uint index, ushort x, ushort y, ushort z, ushort w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4HVNVPROC(uint index, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4IVPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4IVARBPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4SPROC(uint index, short x, short y, short z, short w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4SARBPROC(uint index, short x, short y, short z, short w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4SNVPROC(uint index, short x, short y, short z, short w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4SVPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4SVARBPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4SVNVPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4UBNVPROC(uint index, byte x, byte y, byte z, byte w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4UBVPROC(uint index, byte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4UBVARBPROC(uint index, byte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4UBVNVPROC(uint index, byte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4UIVPROC(uint index, uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4UIVARBPROC(uint index, uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4USVPROC(uint index, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIB4USVARBPROC(uint index, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBARRAYOBJECTATIPROC(uint index, int size, uint type, bool normalized, int stride, uint buffer, uint offset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBBINDINGPROC(uint attribindex, uint bindingindex);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBDIVISORPROC(uint index, uint divisor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBDIVISORARBPROC(uint index, uint divisor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBFORMATPROC(uint attribindex, int size, uint type, bool normalized, uint relativeoffset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBFORMATNVPROC(uint index, int size, uint type, bool normalized, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI1IPROC(uint index, int x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI1IEXTPROC(uint index, int x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI1IVPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI1IVEXTPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI1UIPROC(uint index, uint x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI1UIEXTPROC(uint index, uint x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI1UIVPROC(uint index, uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI1UIVEXTPROC(uint index, uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI2IPROC(uint index, int x, int y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI2IEXTPROC(uint index, int x, int y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI2IVPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI2IVEXTPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI2UIPROC(uint index, uint x, uint y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI2UIEXTPROC(uint index, uint x, uint y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI2UIVPROC(uint index, uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI2UIVEXTPROC(uint index, uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI3IPROC(uint index, int x, int y, int z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI3IEXTPROC(uint index, int x, int y, int z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI3IVPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI3IVEXTPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI3UIPROC(uint index, uint x, uint y, uint z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI3UIEXTPROC(uint index, uint x, uint y, uint z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI3UIVPROC(uint index, uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI3UIVEXTPROC(uint index, uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4BVPROC(uint index, sbyte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4BVEXTPROC(uint index, sbyte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4IPROC(uint index, int x, int y, int z, int w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4IEXTPROC(uint index, int x, int y, int z, int w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4IVPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4IVEXTPROC(uint index, int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4SVPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4SVEXTPROC(uint index, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4UBVPROC(uint index, byte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4UBVEXTPROC(uint index, byte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4UIPROC(uint index, uint x, uint y, uint z, uint w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4UIEXTPROC(uint index, uint x, uint y, uint z, uint w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4UIVPROC(uint index, uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4UIVEXTPROC(uint index, uint* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4USVPROC(uint index, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBI4USVEXTPROC(uint index, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBIFORMATPROC(uint attribindex, int size, uint type, uint relativeoffset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBIFORMATNVPROC(uint index, int size, uint type, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBIPOINTERPROC(uint index, int size, uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBIPOINTEREXTPROC(uint index, int size, uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL1DPROC(uint index, double x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL1DEXTPROC(uint index, double x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL1DVPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL1DVEXTPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL1I64NVPROC(uint index, long x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL1I64VNVPROC(uint index, long* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL1UI64ARBPROC(uint index, ulong x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL1UI64NVPROC(uint index, ulong x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL1UI64VARBPROC(uint index, ulong* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL1UI64VNVPROC(uint index, ulong* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL2DPROC(uint index, double x, double y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL2DEXTPROC(uint index, double x, double y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL2DVPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL2DVEXTPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL2I64NVPROC(uint index, long x, long y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL2I64VNVPROC(uint index, long* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL2UI64NVPROC(uint index, ulong x, ulong y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL2UI64VNVPROC(uint index, ulong* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL3DPROC(uint index, double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL3DEXTPROC(uint index, double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL3DVPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL3DVEXTPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL3I64NVPROC(uint index, long x, long y, long z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL3I64VNVPROC(uint index, long* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL3UI64NVPROC(uint index, ulong x, ulong y, ulong z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL3UI64VNVPROC(uint index, ulong* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL4DPROC(uint index, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL4DEXTPROC(uint index, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL4DVPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL4DVEXTPROC(uint index, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL4I64NVPROC(uint index, long x, long y, long z, long w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL4I64VNVPROC(uint index, long* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL4UI64NVPROC(uint index, ulong x, ulong y, ulong z, ulong w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBL4UI64VNVPROC(uint index, ulong* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBLFORMATPROC(uint attribindex, int size, uint type, uint relativeoffset);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBLFORMATNVPROC(uint index, int size, uint type, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBLPOINTERPROC(uint index, int size, uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBLPOINTEREXTPROC(uint index, int size, uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBP1UIPROC(uint index, uint type, bool normalized, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBP1UIVPROC(uint index, uint type, bool normalized, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBP2UIPROC(uint index, uint type, bool normalized, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBP2UIVPROC(uint index, uint type, bool normalized, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBP3UIPROC(uint index, uint type, bool normalized, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBP3UIVPROC(uint index, uint type, bool normalized, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBP4UIPROC(uint index, uint type, bool normalized, uint value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBP4UIVPROC(uint index, uint type, bool normalized, uint* value);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBPARAMETERIAMDPROC(uint index, uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBPOINTERPROC(uint index, int size, uint type, bool normalized, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBPOINTERARBPROC(uint index, int size, uint type, bool normalized, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBPOINTERNVPROC(uint index, int fsize, uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS1DVNVPROC(uint index, int count, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS1FVNVPROC(uint index, int count, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS1HVNVPROC(uint index, int n, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS1SVNVPROC(uint index, int count, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS2DVNVPROC(uint index, int count, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS2FVNVPROC(uint index, int count, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS2HVNVPROC(uint index, int n, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS2SVNVPROC(uint index, int count, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS3DVNVPROC(uint index, int count, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS3FVNVPROC(uint index, int count, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS3HVNVPROC(uint index, int n, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS3SVNVPROC(uint index, int count, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS4DVNVPROC(uint index, int count, double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS4FVNVPROC(uint index, int count, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS4HVNVPROC(uint index, int n, ushort* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS4SVNVPROC(uint index, int count, short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXATTRIBS4UBVNVPROC(uint index, int count, byte* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXBINDINGDIVISORPROC(uint bindingindex, uint divisor);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXBLENDARBPROC(int count);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXBLENDENVFATIPROC(uint pname, float param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXBLENDENVIATIPROC(uint pname, int param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXFORMATNVPROC(int size, uint type, int stride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXPOINTEREXTPROC(int size, uint type, int stride, int count, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXPOINTERLISTIBMPROC(int size, uint type, int stride, void** pointer, int ptrstride);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXPOINTERVINTELPROC(int size, uint type, void** pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM1DATIPROC(uint stream, double x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM1DVATIPROC(uint stream, double* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM1FATIPROC(uint stream, float x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM1FVATIPROC(uint stream, float* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM1IATIPROC(uint stream, int x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM1IVATIPROC(uint stream, int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM1SATIPROC(uint stream, short x);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM1SVATIPROC(uint stream, short* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM2DATIPROC(uint stream, double x, double y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM2DVATIPROC(uint stream, double* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM2FATIPROC(uint stream, float x, float y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM2FVATIPROC(uint stream, float* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM2IATIPROC(uint stream, int x, int y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM2IVATIPROC(uint stream, int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM2SATIPROC(uint stream, short x, short y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM2SVATIPROC(uint stream, short* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM3DATIPROC(uint stream, double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM3DVATIPROC(uint stream, double* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM3FATIPROC(uint stream, float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM3FVATIPROC(uint stream, float* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM3IATIPROC(uint stream, int x, int y, int z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM3IVATIPROC(uint stream, int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM3SATIPROC(uint stream, short x, short y, short z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM3SVATIPROC(uint stream, short* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM4DATIPROC(uint stream, double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM4DVATIPROC(uint stream, double* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM4FATIPROC(uint stream, float x, float y, float z, float w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM4FVATIPROC(uint stream, float* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM4IATIPROC(uint stream, int x, int y, int z, int w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM4IVATIPROC(uint stream, int* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM4SATIPROC(uint stream, short x, short y, short z, short w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXSTREAM4SVATIPROC(uint stream, short* coords);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXWEIGHTPOINTEREXTPROC(int size, uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXWEIGHTFEXTPROC(float weight);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXWEIGHTFVEXTPROC(float* weight);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXWEIGHTHNVPROC(ushort weight);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVERTEXWEIGHTHVNVPROC(ushort* weight);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate uint PFNGLVIDEOCAPTURENVPROC(uint video_capture_slot, uint* sequence_num, ulong* capture_time);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVIDEOCAPTURESTREAMPARAMETERDVNVPROC(uint video_capture_slot, uint stream, uint pname, double* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVIDEOCAPTURESTREAMPARAMETERFVNVPROC(uint video_capture_slot, uint stream, uint pname, float* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVIDEOCAPTURESTREAMPARAMETERIVNVPROC(uint video_capture_slot, uint stream, uint pname, int* param);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVIEWPORTPROC(int x, int y, int width, int height);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVIEWPORTARRAYVPROC(uint first, int count, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVIEWPORTINDEXEDFPROC(uint index, float x, float y, float w, float h);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVIEWPORTINDEXEDFVPROC(uint index, float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVIEWPORTPOSITIONWSCALENVPROC(uint index, float xcoeff, float ycoeff);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLVIEWPORTSWIZZLENVPROC(uint index, uint swizzlex, uint swizzley, uint swizzlez, uint swizzlew);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWAITSEMAPHOREEXTPROC(uint semaphore, uint numBufferBarriers, uint* buffers, uint numTextureBarriers, uint* textures, uint* srcLayouts);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWAITSEMAPHOREUI64NVXPROC(uint waitGpu, int fenceObjectCount, uint* semaphoreArray, uint* fenceValueArray);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWAITSYNCPROC(GLsync sync, uint flags, uint timeout);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWAITVKSEMAPHORENVPROC(uint vkSemaphore);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWEIGHTPATHSNVPROC(uint resultPath, int numPaths, uint* paths, float* weights);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWEIGHTPOINTERARBPROC(int size, uint type, int stride, void* pointer);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWEIGHTBVARBPROC(int size, sbyte* weights);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWEIGHTDVARBPROC(int size, double* weights);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWEIGHTFVARBPROC(int size, float* weights);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWEIGHTIVARBPROC(int size, int* weights);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWEIGHTSVARBPROC(int size, short* weights);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWEIGHTUBVARBPROC(int size, byte* weights);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWEIGHTUIVARBPROC(int size, uint* weights);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWEIGHTUSVARBPROC(int size, ushort* weights);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2DARBPROC(double x, double y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2DMESAPROC(double x, double y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2DVARBPROC(double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2DVMESAPROC(double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2FARBPROC(float x, float y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2FMESAPROC(float x, float y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2FVARBPROC(float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2FVMESAPROC(float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2IARBPROC(int x, int y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2IMESAPROC(int x, int y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2IVARBPROC(int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2IVMESAPROC(int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2SARBPROC(short x, short y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2SMESAPROC(short x, short y);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2SVARBPROC(short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS2SVMESAPROC(short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3DARBPROC(double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3DMESAPROC(double x, double y, double z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3DVARBPROC(double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3DVMESAPROC(double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3FARBPROC(float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3FMESAPROC(float x, float y, float z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3FVARBPROC(float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3FVMESAPROC(float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3IARBPROC(int x, int y, int z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3IMESAPROC(int x, int y, int z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3IVARBPROC(int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3IVMESAPROC(int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3SARBPROC(short x, short y, short z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3SMESAPROC(short x, short y, short z);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3SVARBPROC(short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS3SVMESAPROC(short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS4DMESAPROC(double x, double y, double z, double w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS4DVMESAPROC(double* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS4FMESAPROC(float x, float y, float z, float w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS4FVMESAPROC(float* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS4IMESAPROC(int x, int y, int z, int w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS4IVMESAPROC(int* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS4SMESAPROC(short x, short y, short z, short w);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWPOS4SVMESAPROC(short* v);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWINDOWRECTANGLESEXTPROC(uint mode, int count, int* box);
[UnmanagedFunctionPointer(CallingConvention.StdCall)] internal unsafe delegate void PFNGLWRITEMASKEXTPROC(uint res, uint input, uint outX, uint outY, uint outZ, uint outW);
#endregion
/// <summary>
/// Function handler to load an opengl function by serching its name.
/// </summary>
/// <param name="funcname">the name of the Opengl function</param>
/// <returns>An intptr value representing the pointer to the function</returns>
public delegate IntPtr glLoader(string name);
public delegate void FrameBufferSizeCallback(
IntPtr window, int width, int height);
#region glfwAPI
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWcursor* glfwCreateCursor(GLFWimage* image, int xhot, int yhot);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWcursor* glfwCreateStandardCursor(int shape);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate IntPtr glfwCreateWindow(int width, int height, byte[] title, IntPtr monitor, IntPtr share);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwDefaultWindowHints();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwDestroyCursor(GLFWcursor* cursor);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwDestroyWindow(IntPtr* window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwExtensionSupported(char* extension);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwFocusWindow(IntPtr* window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate char* glfwGetClipboardString(IntPtr window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate IntPtr glfwGetCurrentContext();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwGetCursorPos(IntPtr window, double* xpos, double* ypos);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwGetError(char** description);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwGetFramebufferSize(IntPtr* window, int* width, int* height);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate char* glfwGetGamepadName(int jid);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwGetGamepadState(int jid, GLFWgamepadstate* state);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWgammaramp* glfwGetGammaRamp(IntPtr monitor);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwGetInputMode(IntPtr* window, int mode);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate float* glfwGetJoystickAxes(int jid, int* count);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate byte[] glfwGetJoystickButtons(int jid, int* count);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate char* glfwGetJoystickGUID(int jid);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate byte[] glfwGetJoystickHats(int jid, int* count);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate char* glfwGetJoystickName(int jid);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void* glfwGetJoystickUserPointer(int jid);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate KeyStatus glfwGetKey(IntPtr window, int key);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate char* glfwGetKeyName(int key, int scancode);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwGetKeyScancode(int key);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwGetMonitorContentScale(IntPtr monitor, float* xscale, float* yscale);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate char* glfwGetMonitorName(IntPtr monitor);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwGetMonitorPhysicalSize(IntPtr monitor, int* widthMM, int* heightMM);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwGetMonitorPos(IntPtr monitor, int* xpos, int* ypos);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate IntPtr* glfwGetMonitors(int* count);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void* glfwGetMonitorUserPointer(IntPtr monitor);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwGetMonitorWorkarea(IntPtr monitor, int* xpos, int* ypos, int* width, int* height);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwGetMouseButton(IntPtr window, int button);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate IntPtr glfwGetPrimaryMonitor();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate IntPtr glfwGetProcAddress(string procname);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate char** glfwGetRequiredInstanceExtensions(uint* count);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate double glfwGetTime();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate ulong* glfwGetTimerFrequency();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate ulong* glfwGetTimerValue();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwGetVersion(int* major, int* minor, int* rev);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate char* glfwGetVersionString();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWvidmode* glfwGetVideoMode(IntPtr monitor);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWvidmode* glfwGetVideoModes(IntPtr monitor, int* count);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwGetWindowAttrib(IntPtr* window, int attrib);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwGetWindowContentScale(IntPtr* window, float* xscale, float* yscale);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwGetWindowFrameSize(IntPtr* window, int* left, int* top, int* right, int* bottom);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate IntPtr glfwGetWindowMonitor(IntPtr* window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate float glfwGetWindowOpacity(IntPtr* window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwGetWindowPos(IntPtr* window, int* xpos, int* ypos);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwGetWindowSize(IntPtr* window, int* width, int* height);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void* glfwGetWindowUserPointer(IntPtr* window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwHideWindow(IntPtr* window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwIconifyWindow(IntPtr* window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwInit();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwInitHint(int hint, int value);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwJoystickIsGamepad(int jid);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwJoystickPresent(int jid);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwMakeContextCurrent(IntPtr window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwMaximizeWindow(IntPtr* window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwPollEvents();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwPostEmptyEvent();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwRawMouseMotionSupported();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwRequestWindowAttention(IntPtr* window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwRestoreWindow(IntPtr* window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWcharfun glfwSetCharCallback(IntPtr window, GLFWcharfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWcharmodsfun glfwSetCharModsCallback(IntPtr window, GLFWcharmodsfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetClipboardString(IntPtr window, byte[] str);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetCursor(IntPtr window, GLFWcursor* cursor);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWcursorenterfun glfwSetCursorEnterCallback(IntPtr window, GLFWcursorenterfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetCursorPos(IntPtr window, double xpos, double ypos);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWcursorposfun glfwSetCursorPosCallback(IntPtr window, GLFWcursorposfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWdropfun glfwSetDropCallback(IntPtr window, GLFWdropfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWerrorfun glfwSetErrorCallback(GLFWerrorfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWframebuffersizefun glfwSetFramebufferSizeCallback(IntPtr window, FrameBufferSizeHadler callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetGamma(IntPtr monitor, float gamma);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetGammaRamp(IntPtr monitor, GLFWgammaramp* ramp);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetInputMode(IntPtr* window, int mode, int value);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWjoystickfun glfwSetJoystickCallback(GLFWjoystickfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetJoystickUserPointer(int jid, void* pointer);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWkeyfun glfwSetKeyCallback(IntPtr window, GLFWkeyfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWmonitorfun glfwSetMonitorCallback(GLFWmonitorfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetMonitorUserPointer(IntPtr monitor, void* pointer);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWmousebuttonfun glfwSetMouseButtonCallback(IntPtr window, GLFWmousebuttonfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWscrollfun glfwSetScrollCallback(IntPtr window, GLFWscrollfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetTime(double time);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetWindowAspectRatio(IntPtr* window, int numer, int denom);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetWindowAttrib(IntPtr* window, int attrib, int value);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWwindowclosefun glfwSetWindowCloseCallback(IntPtr* window, GLFWwindowclosefun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWwindowcontentscalefun glfwSetWindowContentScaleCallback(IntPtr* window, GLFWwindowcontentscalefun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWwindowfocusfun glfwSetWindowFocusCallback(IntPtr* window, GLFWwindowfocusfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetWindowIcon(IntPtr* window, int count, GLFWimage* images);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWwindowiconifyfun glfwSetWindowIconifyCallback(IntPtr* window, GLFWwindowiconifyfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWwindowmaximizefun glfwSetWindowMaximizeCallback(IntPtr* window, GLFWwindowmaximizefun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetWindowMonitor(IntPtr* window, IntPtr monitor, int xpos, int ypos, int width, int height, int refreshRate);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetWindowOpacity(IntPtr* window, float opacity);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetWindowPos(IntPtr* window, int xpos, int ypos);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWwindowposfun glfwSetWindowPosCallback(IntPtr* window, GLFWwindowposfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWwindowrefreshfun glfwSetWindowRefreshCallback(IntPtr* window, GLFWwindowrefreshfun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetWindowShouldClose(IntPtr window, int value);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetWindowSize(IntPtr window, int width, int height);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWwindowsizefun glfwSetWindowSizeCallback(IntPtr* window, GLFWwindowsizefun callback);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetWindowSizeLimits(IntPtr window, int minwidth, int minheight, int maxwidth, int maxheight);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetWindowTitle(IntPtr* window, char* title);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSetWindowUserPointer(IntPtr* window, void* pointer);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwShowWindow(IntPtr* window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSwapBuffers(IntPtr window);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwSwapInterval(int interval);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwTerminate();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwUpdateGamepadMappings(byte[] str);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwVulkanSupported();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwWaitEvents();
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwWaitEventsTimeout(double timeout);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwWindowHint(int hint, int value);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate void glfwWindowHintString(int hint, char* value);
[UnmanagedFunctionPointer(callingConvention: CallingConvention.StdCall, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwWindowShouldClose(IntPtr window);
//[UnmanagedFunctionPointer(callingConvention: CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal unsafe delegate GLFWvkproc glfwGetInstanceProcAddress(VkInstance instance, char* procname);
//[UnmanagedFunctionPointer(callingConvention: CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal unsafe delegate int glfwGetPhysicalDevicePresentationSupport(VkInstance instance, VkPhysicalDevice device, uint* queuefamily);
//[UnmanagedFunctionPointer(callingConvention: CallingConvention.Cdecl, CharSet = CharSet.Ansi)] internal unsafe delegate VkResult glfwCreateWindowSurface(VkInstance instance, GLFWwindow* window, VkAllocationCallbacks* allocator, VkSurfaceKHR* surface);
#endregion
#region StgSharpDele
public unsafe delegate void FrameBufferSizeHadler(IntPtr window, int width, int height);
#endregion
#region glDEBUG
internal unsafe delegate void GLDEBUGPROC(int source, int type, uint id, int severity, int length, sbyte* message, void* userParam);
internal unsafe delegate void GLDEBUGPROCARB(int source, int type, uint id, int severity, int length, sbyte* message, void* userParam);
internal unsafe delegate void GLDEBUGPROCKHR(int source, int type, uint id, int severity, int length, sbyte* message, void* userParam);
internal unsafe delegate void GLDEBUGPROCAMD(uint id, int category, int severity, int length, sbyte* message, void* userParam);
#endregion
}