├── .gitignore ├── CMakeLists.txt ├── MentalGL_Example_1.png ├── README.md ├── mental_gl.h ├── test1.c └── thirdparty └── glad ├── include ├── KHR │ └── khrplatform.h └── glad │ └── glad.h └── src └── glad.c /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- 1 | 2 | # === CMake lists for MentalGL - (26/03/2018) === 3 | 4 | cmake_minimum_required(VERSION 3.5) 5 | project(MentalGL) 6 | 7 | 8 | # === Build path === 9 | 10 | set(OUTPUT_DIR ${CMAKE_CURRENT_BINARY_DIR}/build) 11 | set(EXECUTABLE_OUTPUT_PATH ${OUTPUT_DIR} CACHE PATH "Build directory" FORCE) 12 | set(LIBRARY_OUTPUT_PATH ${OUTPUT_DIR} CACHE PATH "Build directory" FORCE) 13 | 14 | 15 | # === Test Projects === 16 | 17 | find_package(OpenGL) 18 | find_package(GLUT) 19 | 20 | add_library(MentalGL STATIC "${PROJECT_SOURCE_DIR}/mental_gl.h") 21 | set_target_properties(MentalGL PROPERTIES LINKER_LANGUAGE C DEBUG_POSTFIX "D") 22 | 23 | if(OpenGL_FOUND AND GLUT_FOUND) 24 | include_directories( 25 | "${GLUT_INCLUDE_DIR}" 26 | "${PROJECT_SOURCE_DIR}/thirdparty/glad/include" 27 | ) 28 | 29 | # Test 1 30 | add_executable( 31 | test1 32 | "${PROJECT_SOURCE_DIR}/test1.c" 33 | "${PROJECT_SOURCE_DIR}/thirdparty/glad/src/glad.c" 34 | "${PROJECT_SOURCE_DIR}/thirdparty/glad/include/glad/glad.h" 35 | ) 36 | set_target_properties(test1 PROPERTIES LINKER_LANGUAGE C DEBUG_POSTFIX "D") 37 | target_link_libraries(test1 ${OPENGL_LIBRARIES} ${GLUT_glut_LIBRARY}) 38 | else() 39 | message("missing OpenGL and/or GLUT to generate tests") 40 | endif() 41 | 42 | 43 | -------------------------------------------------------------------------------- /MentalGL_Example_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/LukasBanana/MentalGL/e57f76465aeb4042ccf2e504b332b2449c75073e/MentalGL_Example_1.png -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | MentalGL - OpenGL debugging utility to review entire render state 2 | ================================================================= 3 | 4 | **Public domain** (CC0) header-only library written in C99. 5 | 6 | Code Example 7 | ------------ 8 | 9 | Here is a brief example how to use this utility library: 10 | ```c 11 | // Include and implement MentalGL in a single source file 12 | #define MENTAL_GL_IMPLEMENTATION 13 | #include "mental_gl.h" 14 | 15 | // Do OpenGL stuff ... 16 | 17 | // Query current OpenGL state 18 | MGLRenderState rs; 19 | mglQueryRenderState(&rs); 20 | 21 | // Print queries OpenGL state (ignore optional formatting descriptor, otherwise see 'MGLQueryFormatting' structure) 22 | MGLString s = mglPrintRenderState(&rs, NULL); 23 | 24 | // Print result 25 | puts(mglGetUTF8String(s)); 26 | 27 | // Free opaque string object 28 | mglFreeString(s); 29 | ``` 30 | 31 | Output Example 32 | -------------- 33 | 34 | ![ExamplePicture1](MentalGL_Example_1.png) 35 | 36 | -------------------------------------------------------------------------------- /test1.c: -------------------------------------------------------------------------------- 1 | // Simple test for MentalGL 2 | // Created on 26/03/2018 by Lukas Hermanns 3 | 4 | #include 5 | #include 6 | 7 | #ifdef __APPLE__ 8 | # include 9 | #else 10 | # include 11 | #endif 12 | 13 | #define MENTAL_GL_GETINTEGERI_V 14 | #define MENTAL_GL_GETINTEGER64I_V 15 | 16 | #ifndef MENTAL_GL_IMPLEMENTATION 17 | #define MENTAL_GL_IMPLEMENTATION 18 | #endif 19 | 20 | #include "mental_gl.h" 21 | 22 | void drawScene(void) 23 | { 24 | float s = 0.5f; 25 | 26 | glBegin(GL_TRIANGLES); 27 | { 28 | glColor3f(1.0f, 0.0f, 0.0f); 29 | glVertex2f(0.0f, s); 30 | 31 | glColor3f(0.0f, 1.0f, 0.0f); 32 | glVertex2f(s, -s); 33 | 34 | glColor3f(0.0f, 0.0f, 1.0f); 35 | glVertex2f(-s, -s); 36 | } 37 | glEnd(); 38 | 39 | static int renderStateShowen; 40 | if (!renderStateShowen) 41 | { 42 | renderStateShowen = 1; 43 | 44 | MGLFormattingOptions fmt = { ' ', 3, 200, MGLFormattingOrderDefault, 1, NULL }; 45 | 46 | // Query and print render state 47 | MGLRenderState rs; 48 | mglQueryRenderState(&rs); 49 | 50 | MGLString rsStr = mglPrintRenderState(&rs, &fmt); 51 | 52 | puts(mglGetUTF8String(rsStr)); 53 | mglFreeString(rsStr); 54 | 55 | // Query and print binding points 56 | MGLBindingPoints bp; 57 | mglQueryBindingPoints(&bp); 58 | 59 | MGLString bpStr = mglPrintBindingPoints(&bp, &fmt); 60 | 61 | puts(mglGetUTF8String(bpStr)); 62 | mglFreeString(bpStr); 63 | } 64 | } 65 | 66 | void displayCallback(void) 67 | { 68 | glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); 69 | drawScene(); 70 | glutSwapBuffers(); 71 | } 72 | 73 | void initGL(void) 74 | { 75 | glMatrixMode(GL_PROJECTION); 76 | glLoadIdentity(); 77 | 78 | glMatrixMode(GL_MODELVIEW); 79 | glLoadIdentity(); 80 | } 81 | 82 | int main(int argc, char **argv) 83 | { 84 | glutInit(&argc, argv); 85 | #ifdef __APPLE__ 86 | glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH | GLUT_3_2_CORE_PROFILE); 87 | #else 88 | glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH); 89 | #endif 90 | 91 | glutCreateWindow("MentalGL Test 1"); 92 | 93 | gladLoadGL(); 94 | 95 | glutDisplayFunc(displayCallback); 96 | 97 | initGL(); 98 | glutMainLoop(); 99 | 100 | return 0; 101 | } 102 | 103 | 104 | -------------------------------------------------------------------------------- /thirdparty/glad/include/KHR/khrplatform.h: -------------------------------------------------------------------------------- 1 | #ifndef __khrplatform_h_ 2 | #define __khrplatform_h_ 3 | 4 | /* 5 | ** Copyright (c) 2008-2018 The Khronos Group Inc. 6 | ** 7 | ** Permission is hereby granted, free of charge, to any person obtaining a 8 | ** copy of this software and/or associated documentation files (the 9 | ** "Materials"), to deal in the Materials without restriction, including 10 | ** without limitation the rights to use, copy, modify, merge, publish, 11 | ** distribute, sublicense, and/or sell copies of the Materials, and to 12 | ** permit persons to whom the Materials are furnished to do so, subject to 13 | ** the following conditions: 14 | ** 15 | ** The above copyright notice and this permission notice shall be included 16 | ** in all copies or substantial portions of the Materials. 17 | ** 18 | ** THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 19 | ** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 20 | ** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 21 | ** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 22 | ** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 23 | ** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 24 | ** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. 25 | */ 26 | 27 | /* Khronos platform-specific types and definitions. 28 | * 29 | * The master copy of khrplatform.h is maintained in the Khronos EGL 30 | * Registry repository at https://github.com/KhronosGroup/EGL-Registry 31 | * The last semantic modification to khrplatform.h was at commit ID: 32 | * 67a3e0864c2d75ea5287b9f3d2eb74a745936692 33 | * 34 | * Adopters may modify this file to suit their platform. Adopters are 35 | * encouraged to submit platform specific modifications to the Khronos 36 | * group so that they can be included in future versions of this file. 37 | * Please submit changes by filing pull requests or issues on 38 | * the EGL Registry repository linked above. 39 | * 40 | * 41 | * See the Implementer's Guidelines for information about where this file 42 | * should be located on your system and for more details of its use: 43 | * http://www.khronos.org/registry/implementers_guide.pdf 44 | * 45 | * This file should be included as 46 | * #include 47 | * by Khronos client API header files that use its types and defines. 48 | * 49 | * The types in khrplatform.h should only be used to define API-specific types. 50 | * 51 | * Types defined in khrplatform.h: 52 | * khronos_int8_t signed 8 bit 53 | * khronos_uint8_t unsigned 8 bit 54 | * khronos_int16_t signed 16 bit 55 | * khronos_uint16_t unsigned 16 bit 56 | * khronos_int32_t signed 32 bit 57 | * khronos_uint32_t unsigned 32 bit 58 | * khronos_int64_t signed 64 bit 59 | * khronos_uint64_t unsigned 64 bit 60 | * khronos_intptr_t signed same number of bits as a pointer 61 | * khronos_uintptr_t unsigned same number of bits as a pointer 62 | * khronos_ssize_t signed size 63 | * khronos_usize_t unsigned size 64 | * khronos_float_t signed 32 bit floating point 65 | * khronos_time_ns_t unsigned 64 bit time in nanoseconds 66 | * khronos_utime_nanoseconds_t unsigned time interval or absolute time in 67 | * nanoseconds 68 | * khronos_stime_nanoseconds_t signed time interval in nanoseconds 69 | * khronos_boolean_enum_t enumerated boolean type. This should 70 | * only be used as a base type when a client API's boolean type is 71 | * an enum. Client APIs which use an integer or other type for 72 | * booleans cannot use this as the base type for their boolean. 73 | * 74 | * Tokens defined in khrplatform.h: 75 | * 76 | * KHRONOS_FALSE, KHRONOS_TRUE Enumerated boolean false/true values. 77 | * 78 | * KHRONOS_SUPPORT_INT64 is 1 if 64 bit integers are supported; otherwise 0. 79 | * KHRONOS_SUPPORT_FLOAT is 1 if floats are supported; otherwise 0. 80 | * 81 | * Calling convention macros defined in this file: 82 | * KHRONOS_APICALL 83 | * KHRONOS_APIENTRY 84 | * KHRONOS_APIATTRIBUTES 85 | * 86 | * These may be used in function prototypes as: 87 | * 88 | * KHRONOS_APICALL void KHRONOS_APIENTRY funcname( 89 | * int arg1, 90 | * int arg2) KHRONOS_APIATTRIBUTES; 91 | */ 92 | 93 | /*------------------------------------------------------------------------- 94 | * Definition of KHRONOS_APICALL 95 | *------------------------------------------------------------------------- 96 | * This precedes the return type of the function in the function prototype. 97 | */ 98 | #if defined(_WIN32) && !defined(__SCITECH_SNAP__) 99 | # define KHRONOS_APICALL __declspec(dllimport) 100 | #elif defined (__SYMBIAN32__) 101 | # define KHRONOS_APICALL IMPORT_C 102 | #elif defined(__ANDROID__) 103 | # define KHRONOS_APICALL __attribute__((visibility("default"))) 104 | #else 105 | # define KHRONOS_APICALL 106 | #endif 107 | 108 | /*------------------------------------------------------------------------- 109 | * Definition of KHRONOS_APIENTRY 110 | *------------------------------------------------------------------------- 111 | * This follows the return type of the function and precedes the function 112 | * name in the function prototype. 113 | */ 114 | #if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__) 115 | /* Win32 but not WinCE */ 116 | # define KHRONOS_APIENTRY __stdcall 117 | #else 118 | # define KHRONOS_APIENTRY 119 | #endif 120 | 121 | /*------------------------------------------------------------------------- 122 | * Definition of KHRONOS_APIATTRIBUTES 123 | *------------------------------------------------------------------------- 124 | * This follows the closing parenthesis of the function prototype arguments. 125 | */ 126 | #if defined (__ARMCC_2__) 127 | #define KHRONOS_APIATTRIBUTES __softfp 128 | #else 129 | #define KHRONOS_APIATTRIBUTES 130 | #endif 131 | 132 | /*------------------------------------------------------------------------- 133 | * basic type definitions 134 | *-----------------------------------------------------------------------*/ 135 | #if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__) 136 | 137 | 138 | /* 139 | * Using 140 | */ 141 | #include 142 | typedef int32_t khronos_int32_t; 143 | typedef uint32_t khronos_uint32_t; 144 | typedef int64_t khronos_int64_t; 145 | typedef uint64_t khronos_uint64_t; 146 | #define KHRONOS_SUPPORT_INT64 1 147 | #define KHRONOS_SUPPORT_FLOAT 1 148 | 149 | #elif defined(__VMS ) || defined(__sgi) 150 | 151 | /* 152 | * Using 153 | */ 154 | #include 155 | typedef int32_t khronos_int32_t; 156 | typedef uint32_t khronos_uint32_t; 157 | typedef int64_t khronos_int64_t; 158 | typedef uint64_t khronos_uint64_t; 159 | #define KHRONOS_SUPPORT_INT64 1 160 | #define KHRONOS_SUPPORT_FLOAT 1 161 | 162 | #elif defined(_WIN32) && !defined(__SCITECH_SNAP__) 163 | 164 | /* 165 | * Win32 166 | */ 167 | typedef __int32 khronos_int32_t; 168 | typedef unsigned __int32 khronos_uint32_t; 169 | typedef __int64 khronos_int64_t; 170 | typedef unsigned __int64 khronos_uint64_t; 171 | #define KHRONOS_SUPPORT_INT64 1 172 | #define KHRONOS_SUPPORT_FLOAT 1 173 | 174 | #elif defined(__sun__) || defined(__digital__) 175 | 176 | /* 177 | * Sun or Digital 178 | */ 179 | typedef int khronos_int32_t; 180 | typedef unsigned int khronos_uint32_t; 181 | #if defined(__arch64__) || defined(_LP64) 182 | typedef long int khronos_int64_t; 183 | typedef unsigned long int khronos_uint64_t; 184 | #else 185 | typedef long long int khronos_int64_t; 186 | typedef unsigned long long int khronos_uint64_t; 187 | #endif /* __arch64__ */ 188 | #define KHRONOS_SUPPORT_INT64 1 189 | #define KHRONOS_SUPPORT_FLOAT 1 190 | 191 | #elif 0 192 | 193 | /* 194 | * Hypothetical platform with no float or int64 support 195 | */ 196 | typedef int khronos_int32_t; 197 | typedef unsigned int khronos_uint32_t; 198 | #define KHRONOS_SUPPORT_INT64 0 199 | #define KHRONOS_SUPPORT_FLOAT 0 200 | 201 | #else 202 | 203 | /* 204 | * Generic fallback 205 | */ 206 | #include 207 | typedef int32_t khronos_int32_t; 208 | typedef uint32_t khronos_uint32_t; 209 | typedef int64_t khronos_int64_t; 210 | typedef uint64_t khronos_uint64_t; 211 | #define KHRONOS_SUPPORT_INT64 1 212 | #define KHRONOS_SUPPORT_FLOAT 1 213 | 214 | #endif 215 | 216 | 217 | /* 218 | * Types that are (so far) the same on all platforms 219 | */ 220 | typedef signed char khronos_int8_t; 221 | typedef unsigned char khronos_uint8_t; 222 | typedef signed short int khronos_int16_t; 223 | typedef unsigned short int khronos_uint16_t; 224 | 225 | /* 226 | * Types that differ between LLP64 and LP64 architectures - in LLP64, 227 | * pointers are 64 bits, but 'long' is still 32 bits. Win64 appears 228 | * to be the only LLP64 architecture in current use. 229 | */ 230 | #ifdef _WIN64 231 | typedef signed long long int khronos_intptr_t; 232 | typedef unsigned long long int khronos_uintptr_t; 233 | typedef signed long long int khronos_ssize_t; 234 | typedef unsigned long long int khronos_usize_t; 235 | #else 236 | typedef signed long int khronos_intptr_t; 237 | typedef unsigned long int khronos_uintptr_t; 238 | typedef signed long int khronos_ssize_t; 239 | typedef unsigned long int khronos_usize_t; 240 | #endif 241 | 242 | #if KHRONOS_SUPPORT_FLOAT 243 | /* 244 | * Float type 245 | */ 246 | typedef float khronos_float_t; 247 | #endif 248 | 249 | #if KHRONOS_SUPPORT_INT64 250 | /* Time types 251 | * 252 | * These types can be used to represent a time interval in nanoseconds or 253 | * an absolute Unadjusted System Time. Unadjusted System Time is the number 254 | * of nanoseconds since some arbitrary system event (e.g. since the last 255 | * time the system booted). The Unadjusted System Time is an unsigned 256 | * 64 bit value that wraps back to 0 every 584 years. Time intervals 257 | * may be either signed or unsigned. 258 | */ 259 | typedef khronos_uint64_t khronos_utime_nanoseconds_t; 260 | typedef khronos_int64_t khronos_stime_nanoseconds_t; 261 | #endif 262 | 263 | /* 264 | * Dummy value used to pad enum types to 32 bits. 265 | */ 266 | #ifndef KHRONOS_MAX_ENUM 267 | #define KHRONOS_MAX_ENUM 0x7FFFFFFF 268 | #endif 269 | 270 | /* 271 | * Enumerated boolean type 272 | * 273 | * Values other than zero should be considered to be true. Therefore 274 | * comparisons should not be made against KHRONOS_TRUE. 275 | */ 276 | typedef enum { 277 | KHRONOS_FALSE = 0, 278 | KHRONOS_TRUE = 1, 279 | KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM 280 | } khronos_boolean_enum_t; 281 | 282 | #endif /* __khrplatform_h_ */ 283 | -------------------------------------------------------------------------------- /thirdparty/glad/src/glad.c: -------------------------------------------------------------------------------- 1 | /* 2 | 3 | OpenGL loader generated by glad 0.1.18a0 on Mon Mar 26 18:51:25 2018. 4 | 5 | Language/Generator: C/C++ 6 | Specification: gl 7 | APIs: gl=4.6 8 | Profile: compatibility 9 | Extensions: 10 | 11 | Loader: True 12 | Local files: False 13 | Omit khrplatform: False 14 | 15 | Commandline: 16 | --profile="compatibility" --api="gl=4.6" --generator="c" --spec="gl" --extensions="" 17 | Online: 18 | http://glad.dav1d.de/#profile=compatibility&language=c&specification=gl&loader=on&api=gl%3D4.6 19 | */ 20 | 21 | #include 22 | #include 23 | #include 24 | #include 25 | 26 | static void* get_proc(const char *namez); 27 | 28 | #ifdef _WIN32 29 | #include 30 | static HMODULE libGL; 31 | 32 | typedef void* (APIENTRYP PFNWGLGETPROCADDRESSPROC_PRIVATE)(const char*); 33 | static PFNWGLGETPROCADDRESSPROC_PRIVATE gladGetProcAddressPtr; 34 | 35 | static 36 | int open_gl(void) { 37 | libGL = LoadLibraryW(L"opengl32.dll"); 38 | if(libGL != NULL) { 39 | gladGetProcAddressPtr = (PFNWGLGETPROCADDRESSPROC_PRIVATE)GetProcAddress( 40 | libGL, "wglGetProcAddress"); 41 | return gladGetProcAddressPtr != NULL; 42 | } 43 | 44 | return 0; 45 | } 46 | 47 | static 48 | void close_gl(void) { 49 | if(libGL != NULL) { 50 | FreeLibrary((HMODULE) libGL); 51 | libGL = NULL; 52 | } 53 | } 54 | #else 55 | #include 56 | static void* libGL; 57 | 58 | #ifndef __APPLE__ 59 | typedef void* (APIENTRYP PFNGLXGETPROCADDRESSPROC_PRIVATE)(const char*); 60 | static PFNGLXGETPROCADDRESSPROC_PRIVATE gladGetProcAddressPtr; 61 | #endif 62 | 63 | static 64 | int open_gl(void) { 65 | #ifdef __APPLE__ 66 | static const char *NAMES[] = { 67 | "../Frameworks/OpenGL.framework/OpenGL", 68 | "/Library/Frameworks/OpenGL.framework/OpenGL", 69 | "/System/Library/Frameworks/OpenGL.framework/OpenGL", 70 | "/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL" 71 | }; 72 | #else 73 | static const char *NAMES[] = {"libGL.so.1", "libGL.so"}; 74 | #endif 75 | 76 | unsigned int index = 0; 77 | for(index = 0; index < (sizeof(NAMES) / sizeof(NAMES[0])); index++) { 78 | libGL = dlopen(NAMES[index], RTLD_NOW | RTLD_GLOBAL); 79 | 80 | if(libGL != NULL) { 81 | #ifdef __APPLE__ 82 | return 1; 83 | #else 84 | gladGetProcAddressPtr = (PFNGLXGETPROCADDRESSPROC_PRIVATE)dlsym(libGL, 85 | "glXGetProcAddressARB"); 86 | return gladGetProcAddressPtr != NULL; 87 | #endif 88 | } 89 | } 90 | 91 | return 0; 92 | } 93 | 94 | static 95 | void close_gl(void) { 96 | if(libGL != NULL) { 97 | dlclose(libGL); 98 | libGL = NULL; 99 | } 100 | } 101 | #endif 102 | 103 | static 104 | void* get_proc(const char *namez) { 105 | void* result = NULL; 106 | if(libGL == NULL) return NULL; 107 | 108 | #ifndef __APPLE__ 109 | if(gladGetProcAddressPtr != NULL) { 110 | result = gladGetProcAddressPtr(namez); 111 | } 112 | #endif 113 | if(result == NULL) { 114 | #ifdef _WIN32 115 | result = (void*)GetProcAddress((HMODULE) libGL, namez); 116 | #else 117 | result = dlsym(libGL, namez); 118 | #endif 119 | } 120 | 121 | return result; 122 | } 123 | 124 | int gladLoadGL(void) { 125 | int status = 0; 126 | 127 | if(open_gl()) { 128 | status = gladLoadGLLoader(&get_proc); 129 | close_gl(); 130 | } 131 | 132 | return status; 133 | } 134 | 135 | struct gladGLversionStruct GLVersion; 136 | 137 | #if defined(GL_ES_VERSION_3_0) || defined(GL_VERSION_3_0) 138 | #define _GLAD_IS_SOME_NEW_VERSION 1 139 | #endif 140 | 141 | static int max_loaded_major; 142 | static int max_loaded_minor; 143 | 144 | static const char *exts = NULL; 145 | static int num_exts_i = 0; 146 | static const char **exts_i = NULL; 147 | 148 | static int get_exts(void) { 149 | #ifdef _GLAD_IS_SOME_NEW_VERSION 150 | if(max_loaded_major < 3) { 151 | #endif 152 | exts = (const char *)glGetString(GL_EXTENSIONS); 153 | #ifdef _GLAD_IS_SOME_NEW_VERSION 154 | } else { 155 | unsigned int index; 156 | 157 | num_exts_i = 0; 158 | glGetIntegerv(GL_NUM_EXTENSIONS, &num_exts_i); 159 | if (num_exts_i > 0) { 160 | exts_i = (const char **)realloc((void *)exts_i, (size_t)num_exts_i * (sizeof *exts_i)); 161 | } 162 | 163 | if (exts_i == NULL) { 164 | return 0; 165 | } 166 | 167 | for(index = 0; index < (unsigned)num_exts_i; index++) { 168 | const char *gl_str_tmp = (const char*)glGetStringi(GL_EXTENSIONS, index); 169 | size_t len = strlen(gl_str_tmp); 170 | 171 | char *local_str = (char*)malloc((len+1) * sizeof(char)); 172 | if(local_str != NULL) { 173 | #if _MSC_VER >= 1400 174 | strncpy_s(local_str, len+1, gl_str_tmp, len); 175 | #else 176 | strncpy(local_str, gl_str_tmp, len+1); 177 | #endif 178 | } 179 | exts_i[index] = local_str; 180 | } 181 | } 182 | #endif 183 | return 1; 184 | } 185 | 186 | static void free_exts(void) { 187 | if (exts_i != NULL) { 188 | int index; 189 | for(index = 0; index < num_exts_i; index++) { 190 | free((char *)exts_i[index]); 191 | } 192 | free((void *)exts_i); 193 | exts_i = NULL; 194 | } 195 | } 196 | 197 | static int has_ext(const char *ext) { 198 | #ifdef _GLAD_IS_SOME_NEW_VERSION 199 | if(max_loaded_major < 3) { 200 | #endif 201 | const char *extensions; 202 | const char *loc; 203 | const char *terminator; 204 | extensions = exts; 205 | if(extensions == NULL || ext == NULL) { 206 | return 0; 207 | } 208 | 209 | while(1) { 210 | loc = strstr(extensions, ext); 211 | if(loc == NULL) { 212 | return 0; 213 | } 214 | 215 | terminator = loc + strlen(ext); 216 | if((loc == extensions || *(loc - 1) == ' ') && 217 | (*terminator == ' ' || *terminator == '\0')) { 218 | return 1; 219 | } 220 | extensions = terminator; 221 | } 222 | #ifdef _GLAD_IS_SOME_NEW_VERSION 223 | } else { 224 | int index; 225 | if(exts_i == NULL) return 0; 226 | for(index = 0; index < num_exts_i; index++) { 227 | const char *e = exts_i[index]; 228 | 229 | if(exts_i[index] != NULL && strcmp(e, ext) == 0) { 230 | return 1; 231 | } 232 | } 233 | } 234 | #endif 235 | 236 | return 0; 237 | } 238 | int GLAD_GL_VERSION_1_0; 239 | int GLAD_GL_VERSION_1_1; 240 | int GLAD_GL_VERSION_1_2; 241 | int GLAD_GL_VERSION_1_3; 242 | int GLAD_GL_VERSION_1_4; 243 | int GLAD_GL_VERSION_1_5; 244 | int GLAD_GL_VERSION_2_0; 245 | int GLAD_GL_VERSION_2_1; 246 | int GLAD_GL_VERSION_3_0; 247 | int GLAD_GL_VERSION_3_1; 248 | int GLAD_GL_VERSION_3_2; 249 | int GLAD_GL_VERSION_3_3; 250 | int GLAD_GL_VERSION_4_0; 251 | int GLAD_GL_VERSION_4_1; 252 | int GLAD_GL_VERSION_4_2; 253 | int GLAD_GL_VERSION_4_3; 254 | int GLAD_GL_VERSION_4_4; 255 | int GLAD_GL_VERSION_4_5; 256 | int GLAD_GL_VERSION_4_6; 257 | PFNGLCOPYTEXIMAGE1DPROC glad_glCopyTexImage1D; 258 | PFNGLTEXTUREPARAMETERFPROC glad_glTextureParameterf; 259 | PFNGLVERTEXATTRIBI3UIPROC glad_glVertexAttribI3ui; 260 | PFNGLVERTEXARRAYELEMENTBUFFERPROC glad_glVertexArrayElementBuffer; 261 | PFNGLWINDOWPOS2SPROC glad_glWindowPos2s; 262 | PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC glad_glTextureStorage3DMultisample; 263 | PFNGLTEXTUREPARAMETERFVPROC glad_glTextureParameterfv; 264 | PFNGLWINDOWPOS2IPROC glad_glWindowPos2i; 265 | PFNGLWINDOWPOS2FPROC glad_glWindowPos2f; 266 | PFNGLWINDOWPOS2DPROC glad_glWindowPos2d; 267 | PFNGLVERTEX2FVPROC glad_glVertex2fv; 268 | PFNGLINDEXIPROC glad_glIndexi; 269 | PFNGLFRAMEBUFFERRENDERBUFFERPROC glad_glFramebufferRenderbuffer; 270 | PFNGLUNIFORMSUBROUTINESUIVPROC glad_glUniformSubroutinesuiv; 271 | PFNGLRECTDVPROC glad_glRectdv; 272 | PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC glad_glCompressedTexSubImage3D; 273 | PFNGLEVALCOORD2DPROC glad_glEvalCoord2d; 274 | PFNGLEVALCOORD2FPROC glad_glEvalCoord2f; 275 | PFNGLGETDOUBLEI_VPROC glad_glGetDoublei_v; 276 | PFNGLINDEXDPROC glad_glIndexd; 277 | PFNGLVERTEXATTRIB1SVPROC glad_glVertexAttrib1sv; 278 | PFNGLINDEXFPROC glad_glIndexf; 279 | PFNGLBINDSAMPLERPROC glad_glBindSampler; 280 | PFNGLLINEWIDTHPROC glad_glLineWidth; 281 | PFNGLCOLORP3UIVPROC glad_glColorP3uiv; 282 | PFNGLGETINTEGERI_VPROC glad_glGetIntegeri_v; 283 | PFNGLGETMAPFVPROC glad_glGetMapfv; 284 | PFNGLINDEXSPROC glad_glIndexs; 285 | PFNGLCOMPILESHADERPROC glad_glCompileShader; 286 | PFNGLGETTRANSFORMFEEDBACKVARYINGPROC glad_glGetTransformFeedbackVarying; 287 | PFNGLWINDOWPOS2IVPROC glad_glWindowPos2iv; 288 | PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC glad_glDrawTransformFeedbackStreamInstanced; 289 | PFNGLINDEXFVPROC glad_glIndexfv; 290 | PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC glad_glGetCompressedTextureImage; 291 | PFNGLGETNMAPFVPROC glad_glGetnMapfv; 292 | PFNGLFOGIVPROC glad_glFogiv; 293 | PFNGLSTENCILMASKSEPARATEPROC glad_glStencilMaskSeparate; 294 | PFNGLRASTERPOS2FVPROC glad_glRasterPos2fv; 295 | PFNGLLIGHTMODELIVPROC glad_glLightModeliv; 296 | PFNGLDEPTHRANGEFPROC glad_glDepthRangef; 297 | PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC glad_glMultiDrawElementsIndirectCount; 298 | PFNGLCOLOR4UIPROC glad_glColor4ui; 299 | PFNGLSECONDARYCOLOR3FVPROC glad_glSecondaryColor3fv; 300 | PFNGLMULTITEXCOORDP3UIPROC glad_glMultiTexCoordP3ui; 301 | PFNGLMEMORYBARRIERBYREGIONPROC glad_glMemoryBarrierByRegion; 302 | PFNGLGETNAMEDBUFFERPARAMETERIVPROC glad_glGetNamedBufferParameteriv; 303 | PFNGLFOGFVPROC glad_glFogfv; 304 | PFNGLVERTEXP4UIPROC glad_glVertexP4ui; 305 | PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC glad_glDrawElementsInstancedBaseInstance; 306 | PFNGLENABLEIPROC glad_glEnablei; 307 | PFNGLPROGRAMUNIFORM3DVPROC glad_glProgramUniform3dv; 308 | PFNGLVERTEX4IVPROC glad_glVertex4iv; 309 | PFNGLEVALCOORD1FVPROC glad_glEvalCoord1fv; 310 | PFNGLWINDOWPOS2SVPROC glad_glWindowPos2sv; 311 | PFNGLVERTEXATTRIBP4UIPROC glad_glVertexAttribP4ui; 312 | PFNGLCREATESHADERPROC glad_glCreateShader; 313 | PFNGLISBUFFERPROC glad_glIsBuffer; 314 | PFNGLGETMULTISAMPLEFVPROC glad_glGetMultisamplefv; 315 | PFNGLPROGRAMUNIFORMMATRIX2DVPROC glad_glProgramUniformMatrix2dv; 316 | PFNGLGENRENDERBUFFERSPROC glad_glGenRenderbuffers; 317 | PFNGLCOPYTEXSUBIMAGE2DPROC glad_glCopyTexSubImage2D; 318 | PFNGLCOMPRESSEDTEXIMAGE2DPROC glad_glCompressedTexImage2D; 319 | PFNGLVERTEXATTRIB1FPROC glad_glVertexAttrib1f; 320 | PFNGLBLENDFUNCSEPARATEPROC glad_glBlendFuncSeparate; 321 | PFNGLVERTEX4FVPROC glad_glVertex4fv; 322 | PFNGLMINSAMPLESHADINGPROC glad_glMinSampleShading; 323 | PFNGLCLEARNAMEDFRAMEBUFFERFIPROC glad_glClearNamedFramebufferfi; 324 | PFNGLGETQUERYBUFFEROBJECTUIVPROC glad_glGetQueryBufferObjectuiv; 325 | PFNGLBINDTEXTUREPROC glad_glBindTexture; 326 | PFNGLVERTEXATTRIB1SPROC glad_glVertexAttrib1s; 327 | PFNGLTEXCOORD2FVPROC glad_glTexCoord2fv; 328 | PFNGLSAMPLEMASKIPROC glad_glSampleMaski; 329 | PFNGLVERTEXP2UIPROC glad_glVertexP2ui; 330 | PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC glad_glDrawRangeElementsBaseVertex; 331 | PFNGLTEXCOORD4FVPROC glad_glTexCoord4fv; 332 | PFNGLUNIFORMMATRIX3X2FVPROC glad_glUniformMatrix3x2fv; 333 | PFNGLDEBUGMESSAGECONTROLPROC glad_glDebugMessageControl; 334 | PFNGLPOINTSIZEPROC glad_glPointSize; 335 | PFNGLBINDTEXTUREUNITPROC glad_glBindTextureUnit; 336 | PFNGLVERTEXATTRIB2DVPROC glad_glVertexAttrib2dv; 337 | PFNGLDELETEPROGRAMPROC glad_glDeleteProgram; 338 | PFNGLCOLOR4BVPROC glad_glColor4bv; 339 | PFNGLRASTERPOS2FPROC glad_glRasterPos2f; 340 | PFNGLRASTERPOS2DPROC glad_glRasterPos2d; 341 | PFNGLLOADIDENTITYPROC glad_glLoadIdentity; 342 | PFNGLRASTERPOS2IPROC glad_glRasterPos2i; 343 | PFNGLMULTIDRAWARRAYSINDIRECTPROC glad_glMultiDrawArraysIndirect; 344 | PFNGLRENDERBUFFERSTORAGEPROC glad_glRenderbufferStorage; 345 | PFNGLUNIFORMMATRIX4X3FVPROC glad_glUniformMatrix4x3fv; 346 | PFNGLCOLOR3BPROC glad_glColor3b; 347 | PFNGLCLEARBUFFERFVPROC glad_glClearBufferfv; 348 | PFNGLEDGEFLAGPROC glad_glEdgeFlag; 349 | PFNGLDELETESAMPLERSPROC glad_glDeleteSamplers; 350 | PFNGLVERTEX3DPROC glad_glVertex3d; 351 | PFNGLVERTEX3FPROC glad_glVertex3f; 352 | PFNGLGETNMAPIVPROC glad_glGetnMapiv; 353 | PFNGLVERTEX3IPROC glad_glVertex3i; 354 | PFNGLCOLOR3IPROC glad_glColor3i; 355 | PFNGLUNIFORM3DPROC glad_glUniform3d; 356 | PFNGLUNIFORM3FPROC glad_glUniform3f; 357 | PFNGLVERTEXATTRIB4UBVPROC glad_glVertexAttrib4ubv; 358 | PFNGLCOLOR3SPROC glad_glColor3s; 359 | PFNGLVERTEX3SPROC glad_glVertex3s; 360 | PFNGLTEXCOORDP2UIPROC glad_glTexCoordP2ui; 361 | PFNGLCOLORMASKIPROC glad_glColorMaski; 362 | PFNGLCLEARBUFFERFIPROC glad_glClearBufferfi; 363 | PFNGLDRAWARRAYSINDIRECTPROC glad_glDrawArraysIndirect; 364 | PFNGLTEXCOORD1IVPROC glad_glTexCoord1iv; 365 | PFNGLBLITFRAMEBUFFERPROC glad_glBlitFramebuffer; 366 | PFNGLPAUSETRANSFORMFEEDBACKPROC glad_glPauseTransformFeedback; 367 | PFNGLMULTITEXCOORDP2UIPROC glad_glMultiTexCoordP2ui; 368 | PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC glad_glProgramUniformMatrix3x2dv; 369 | PFNGLCOPYNAMEDBUFFERSUBDATAPROC glad_glCopyNamedBufferSubData; 370 | PFNGLNAMEDFRAMEBUFFERTEXTUREPROC glad_glNamedFramebufferTexture; 371 | PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC glad_glProgramUniformMatrix3x2fv; 372 | PFNGLGETSAMPLERPARAMETERIIVPROC glad_glGetSamplerParameterIiv; 373 | PFNGLGETFRAGDATAINDEXPROC glad_glGetFragDataIndex; 374 | PFNGLVERTEXATTRIBL4DPROC glad_glVertexAttribL4d; 375 | PFNGLBINDIMAGETEXTUREPROC glad_glBindImageTexture; 376 | PFNGLVERTEXATTRIB3FPROC glad_glVertexAttrib3f; 377 | PFNGLPROGRAMUNIFORMMATRIX4FVPROC glad_glProgramUniformMatrix4fv; 378 | PFNGLVERTEX2IVPROC glad_glVertex2iv; 379 | PFNGLGETQUERYBUFFEROBJECTI64VPROC glad_glGetQueryBufferObjecti64v; 380 | PFNGLCOLOR3SVPROC glad_glColor3sv; 381 | PFNGLGETVERTEXATTRIBDVPROC glad_glGetVertexAttribdv; 382 | PFNGLACTIVESHADERPROGRAMPROC glad_glActiveShaderProgram; 383 | PFNGLUNIFORMMATRIX3X4FVPROC glad_glUniformMatrix3x4fv; 384 | PFNGLUNIFORMMATRIX3DVPROC glad_glUniformMatrix3dv; 385 | PFNGLNORMALPOINTERPROC glad_glNormalPointer; 386 | PFNGLTEXCOORDP3UIVPROC glad_glTexCoordP3uiv; 387 | PFNGLVERTEX4SVPROC glad_glVertex4sv; 388 | PFNGLVERTEXARRAYATTRIBLFORMATPROC glad_glVertexArrayAttribLFormat; 389 | PFNGLINVALIDATEBUFFERSUBDATAPROC glad_glInvalidateBufferSubData; 390 | PFNGLPASSTHROUGHPROC glad_glPassThrough; 391 | PFNGLMULTITEXCOORDP4UIPROC glad_glMultiTexCoordP4ui; 392 | PFNGLFOGIPROC glad_glFogi; 393 | PFNGLBEGINPROC glad_glBegin; 394 | PFNGLEVALCOORD2DVPROC glad_glEvalCoord2dv; 395 | PFNGLCOLOR3UBVPROC glad_glColor3ubv; 396 | PFNGLVERTEXPOINTERPROC glad_glVertexPointer; 397 | PFNGLSECONDARYCOLOR3UIVPROC glad_glSecondaryColor3uiv; 398 | PFNGLDELETEFRAMEBUFFERSPROC glad_glDeleteFramebuffers; 399 | PFNGLDRAWARRAYSPROC glad_glDrawArrays; 400 | PFNGLUNIFORM1UIPROC glad_glUniform1ui; 401 | PFNGLGETTRANSFORMFEEDBACKIVPROC glad_glGetTransformFeedbackiv; 402 | PFNGLMULTITEXCOORD1DPROC glad_glMultiTexCoord1d; 403 | PFNGLMULTITEXCOORD1FPROC glad_glMultiTexCoord1f; 404 | PFNGLPROGRAMPARAMETERIPROC glad_glProgramParameteri; 405 | PFNGLLIGHTFVPROC glad_glLightfv; 406 | PFNGLTEXCOORDP3UIPROC glad_glTexCoordP3ui; 407 | PFNGLVERTEXATTRIB3DPROC glad_glVertexAttrib3d; 408 | PFNGLCLEARPROC glad_glClear; 409 | PFNGLMULTITEXCOORD1IPROC glad_glMultiTexCoord1i; 410 | PFNGLGETACTIVEUNIFORMNAMEPROC glad_glGetActiveUniformName; 411 | PFNGLMEMORYBARRIERPROC glad_glMemoryBarrier; 412 | PFNGLGETGRAPHICSRESETSTATUSPROC glad_glGetGraphicsResetStatus; 413 | PFNGLMULTITEXCOORD1SPROC glad_glMultiTexCoord1s; 414 | PFNGLISENABLEDPROC glad_glIsEnabled; 415 | PFNGLSTENCILOPPROC glad_glStencilOp; 416 | PFNGLGETQUERYOBJECTUIVPROC glad_glGetQueryObjectuiv; 417 | PFNGLFRAMEBUFFERTEXTURE2DPROC glad_glFramebufferTexture2D; 418 | PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC glad_glGetFramebufferAttachmentParameteriv; 419 | PFNGLTRANSLATEFPROC glad_glTranslatef; 420 | PFNGLVERTEXATTRIB4NUBPROC glad_glVertexAttrib4Nub; 421 | PFNGLTRANSLATEDPROC glad_glTranslated; 422 | PFNGLTEXCOORD3SVPROC glad_glTexCoord3sv; 423 | PFNGLGETFRAGDATALOCATIONPROC glad_glGetFragDataLocation; 424 | PFNGLGETTEXTUREPARAMETERIIVPROC glad_glGetTextureParameterIiv; 425 | PFNGLTEXIMAGE1DPROC glad_glTexImage1D; 426 | PFNGLCOPYTEXTURESUBIMAGE3DPROC glad_glCopyTextureSubImage3D; 427 | PFNGLVERTEXP3UIVPROC glad_glVertexP3uiv; 428 | PFNGLTEXPARAMETERIVPROC glad_glTexParameteriv; 429 | PFNGLVERTEXARRAYATTRIBIFORMATPROC glad_glVertexArrayAttribIFormat; 430 | PFNGLSECONDARYCOLOR3BVPROC glad_glSecondaryColor3bv; 431 | PFNGLGETMATERIALFVPROC glad_glGetMaterialfv; 432 | PFNGLGETTEXIMAGEPROC glad_glGetTexImage; 433 | PFNGLFOGCOORDFVPROC glad_glFogCoordfv; 434 | PFNGLPIXELMAPUIVPROC glad_glPixelMapuiv; 435 | PFNGLGETSHADERINFOLOGPROC glad_glGetShaderInfoLog; 436 | PFNGLGETQUERYOBJECTI64VPROC glad_glGetQueryObjecti64v; 437 | PFNGLGENFRAMEBUFFERSPROC glad_glGenFramebuffers; 438 | PFNGLCREATETEXTURESPROC glad_glCreateTextures; 439 | PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC glad_glTransformFeedbackBufferBase; 440 | PFNGLINDEXSVPROC glad_glIndexsv; 441 | PFNGLCLEARTEXSUBIMAGEPROC glad_glClearTexSubImage; 442 | PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC glad_glProgramUniformMatrix3x4dv; 443 | PFNGLGETATTACHEDSHADERSPROC glad_glGetAttachedShaders; 444 | PFNGLISRENDERBUFFERPROC glad_glIsRenderbuffer; 445 | PFNGLVERTEX3IVPROC glad_glVertex3iv; 446 | PFNGLBITMAPPROC glad_glBitmap; 447 | PFNGLGETDEBUGMESSAGELOGPROC glad_glGetDebugMessageLog; 448 | PFNGLPROGRAMUNIFORM1UIVPROC glad_glProgramUniform1uiv; 449 | PFNGLMATERIALIPROC glad_glMateriali; 450 | PFNGLISVERTEXARRAYPROC glad_glIsVertexArray; 451 | PFNGLDISABLEVERTEXATTRIBARRAYPROC glad_glDisableVertexAttribArray; 452 | PFNGLPROGRAMUNIFORM2IVPROC glad_glProgramUniform2iv; 453 | PFNGLGETQUERYIVPROC glad_glGetQueryiv; 454 | PFNGLTEXCOORD4FPROC glad_glTexCoord4f; 455 | PFNGLBLITNAMEDFRAMEBUFFERPROC glad_glBlitNamedFramebuffer; 456 | PFNGLTEXCOORD4DPROC glad_glTexCoord4d; 457 | PFNGLCREATEQUERIESPROC glad_glCreateQueries; 458 | PFNGLGETSAMPLERPARAMETERFVPROC glad_glGetSamplerParameterfv; 459 | PFNGLTEXCOORD4IPROC glad_glTexCoord4i; 460 | PFNGLSHADERSTORAGEBLOCKBINDINGPROC glad_glShaderStorageBlockBinding; 461 | PFNGLMATERIALFPROC glad_glMaterialf; 462 | PFNGLTEXCOORD4SPROC glad_glTexCoord4s; 463 | PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC glad_glProgramUniformMatrix4x2dv; 464 | PFNGLGETUNIFORMINDICESPROC glad_glGetUniformIndices; 465 | PFNGLISSHADERPROC glad_glIsShader; 466 | PFNGLMULTITEXCOORD2SPROC glad_glMultiTexCoord2s; 467 | PFNGLVERTEXATTRIBI4UBVPROC glad_glVertexAttribI4ubv; 468 | PFNGLVERTEX3DVPROC glad_glVertex3dv; 469 | PFNGLGETINTEGER64VPROC glad_glGetInteger64v; 470 | PFNGLPOINTPARAMETERIVPROC glad_glPointParameteriv; 471 | PFNGLGETNMINMAXPROC glad_glGetnMinmax; 472 | PFNGLENABLEPROC glad_glEnable; 473 | PFNGLGETACTIVEUNIFORMSIVPROC glad_glGetActiveUniformsiv; 474 | PFNGLCOLOR4FVPROC glad_glColor4fv; 475 | PFNGLTEXCOORD1FVPROC glad_glTexCoord1fv; 476 | PFNGLVERTEXARRAYATTRIBBINDINGPROC glad_glVertexArrayAttribBinding; 477 | PFNGLTEXTURESTORAGE1DPROC glad_glTextureStorage1D; 478 | PFNGLPOPDEBUGGROUPPROC glad_glPopDebugGroup; 479 | PFNGLBLENDEQUATIONIPROC glad_glBlendEquationi; 480 | PFNGLTEXCOORD2SVPROC glad_glTexCoord2sv; 481 | PFNGLVERTEXATTRIB4DVPROC glad_glVertexAttrib4dv; 482 | PFNGLMULTITEXCOORD1DVPROC glad_glMultiTexCoord1dv; 483 | PFNGLGETPROGRAMINTERFACEIVPROC glad_glGetProgramInterfaceiv; 484 | PFNGLMULTITEXCOORD2IPROC glad_glMultiTexCoord2i; 485 | PFNGLTEXCOORD3FVPROC glad_glTexCoord3fv; 486 | PFNGLSECONDARYCOLOR3USVPROC glad_glSecondaryColor3usv; 487 | PFNGLTEXGENFPROC glad_glTexGenf; 488 | PFNGLMAPNAMEDBUFFERPROC glad_glMapNamedBuffer; 489 | PFNGLMULTITEXCOORDP3UIVPROC glad_glMultiTexCoordP3uiv; 490 | PFNGLVERTEXATTRIBP3UIPROC glad_glVertexAttribP3ui; 491 | PFNGLVERTEXATTRIBL1DVPROC glad_glVertexAttribL1dv; 492 | PFNGLTEXTUREBUFFERRANGEPROC glad_glTextureBufferRange; 493 | PFNGLGETNUNIFORMDVPROC glad_glGetnUniformdv; 494 | PFNGLMULTITEXCOORDP1UIPROC glad_glMultiTexCoordP1ui; 495 | PFNGLPROGRAMUNIFORM3UIPROC glad_glProgramUniform3ui; 496 | PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC glad_glTransformFeedbackBufferRange; 497 | PFNGLGETPOINTERVPROC glad_glGetPointerv; 498 | PFNGLVERTEXBINDINGDIVISORPROC glad_glVertexBindingDivisor; 499 | PFNGLPOLYGONOFFSETPROC glad_glPolygonOffset; 500 | PFNGLGETUNIFORMUIVPROC glad_glGetUniformuiv; 501 | PFNGLNORMAL3FVPROC glad_glNormal3fv; 502 | PFNGLSECONDARYCOLOR3SPROC glad_glSecondaryColor3s; 503 | PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC glad_glNamedFramebufferDrawBuffers; 504 | PFNGLDEPTHRANGEPROC glad_glDepthRange; 505 | PFNGLFRUSTUMPROC glad_glFrustum; 506 | PFNGLMULTITEXCOORD4SVPROC glad_glMultiTexCoord4sv; 507 | PFNGLVERTEXARRAYBINDINGDIVISORPROC glad_glVertexArrayBindingDivisor; 508 | PFNGLDRAWBUFFERPROC glad_glDrawBuffer; 509 | PFNGLPUSHMATRIXPROC glad_glPushMatrix; 510 | PFNGLGETNPIXELMAPUSVPROC glad_glGetnPixelMapusv; 511 | PFNGLRASTERPOS3FVPROC glad_glRasterPos3fv; 512 | PFNGLORTHOPROC glad_glOrtho; 513 | PFNGLDRAWELEMENTSINSTANCEDPROC glad_glDrawElementsInstanced; 514 | PFNGLWINDOWPOS3SVPROC glad_glWindowPos3sv; 515 | PFNGLVERTEXATTRIBL4DVPROC glad_glVertexAttribL4dv; 516 | PFNGLPROGRAMUNIFORM1IPROC glad_glProgramUniform1i; 517 | PFNGLUNIFORM2DVPROC glad_glUniform2dv; 518 | PFNGLPROGRAMUNIFORM1DPROC glad_glProgramUniform1d; 519 | PFNGLPROGRAMUNIFORM1FPROC glad_glProgramUniform1f; 520 | PFNGLCLEARINDEXPROC glad_glClearIndex; 521 | PFNGLMAP1DPROC glad_glMap1d; 522 | PFNGLMAP1FPROC glad_glMap1f; 523 | PFNGLFLUSHPROC glad_glFlush; 524 | PFNGLGETRENDERBUFFERPARAMETERIVPROC glad_glGetRenderbufferParameteriv; 525 | PFNGLBEGINQUERYINDEXEDPROC glad_glBeginQueryIndexed; 526 | PFNGLPROGRAMUNIFORM3IVPROC glad_glProgramUniform3iv; 527 | PFNGLINDEXIVPROC glad_glIndexiv; 528 | PFNGLNAMEDRENDERBUFFERSTORAGEPROC glad_glNamedRenderbufferStorage; 529 | PFNGLRASTERPOS3SVPROC glad_glRasterPos3sv; 530 | PFNGLGETVERTEXATTRIBPOINTERVPROC glad_glGetVertexAttribPointerv; 531 | PFNGLPIXELZOOMPROC glad_glPixelZoom; 532 | PFNGLPOLYGONOFFSETCLAMPPROC glad_glPolygonOffsetClamp; 533 | PFNGLFENCESYNCPROC glad_glFenceSync; 534 | PFNGLDELETEVERTEXARRAYSPROC glad_glDeleteVertexArrays; 535 | PFNGLCOLORP3UIPROC glad_glColorP3ui; 536 | PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC glad_glDrawElementsInstancedBaseVertexBaseInstance; 537 | PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC glad_glTextureStorage2DMultisample; 538 | PFNGLVERTEXATTRIB3SVPROC glad_glVertexAttrib3sv; 539 | PFNGLBEGINCONDITIONALRENDERPROC glad_glBeginConditionalRender; 540 | PFNGLPUSHDEBUGGROUPPROC glad_glPushDebugGroup; 541 | PFNGLGETSHADERPRECISIONFORMATPROC glad_glGetShaderPrecisionFormat; 542 | PFNGLVALIDATEPROGRAMPIPELINEPROC glad_glValidateProgramPipeline; 543 | PFNGLDRAWELEMENTSBASEVERTEXPROC glad_glDrawElementsBaseVertex; 544 | PFNGLGETTEXLEVELPARAMETERIVPROC glad_glGetTexLevelParameteriv; 545 | PFNGLLIGHTIPROC glad_glLighti; 546 | PFNGLMULTITEXCOORDP4UIVPROC glad_glMultiTexCoordP4uiv; 547 | PFNGLVERTEXARRAYVERTEXBUFFERPROC glad_glVertexArrayVertexBuffer; 548 | PFNGLLIGHTFPROC glad_glLightf; 549 | PFNGLBINDVERTEXBUFFERSPROC glad_glBindVertexBuffers; 550 | PFNGLGETATTRIBLOCATIONPROC glad_glGetAttribLocation; 551 | PFNGLTEXSTORAGE3DMULTISAMPLEPROC glad_glTexStorage3DMultisample; 552 | PFNGLSTENCILFUNCSEPARATEPROC glad_glStencilFuncSeparate; 553 | PFNGLDISABLEVERTEXARRAYATTRIBPROC glad_glDisableVertexArrayAttrib; 554 | PFNGLGENSAMPLERSPROC glad_glGenSamplers; 555 | PFNGLCLAMPCOLORPROC glad_glClampColor; 556 | PFNGLUNIFORM4IVPROC glad_glUniform4iv; 557 | PFNGLCLEARSTENCILPROC glad_glClearStencil; 558 | PFNGLTEXCOORDP1UIVPROC glad_glTexCoordP1uiv; 559 | PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC glad_glGetNamedRenderbufferParameteriv; 560 | PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC glad_glDrawTransformFeedbackInstanced; 561 | PFNGLSPECIALIZESHADERPROC glad_glSpecializeShader; 562 | PFNGLMULTITEXCOORD3FVPROC glad_glMultiTexCoord3fv; 563 | PFNGLGETPIXELMAPUIVPROC glad_glGetPixelMapuiv; 564 | PFNGLGENTEXTURESPROC glad_glGenTextures; 565 | PFNGLTEXCOORD4IVPROC glad_glTexCoord4iv; 566 | PFNGLDRAWTRANSFORMFEEDBACKPROC glad_glDrawTransformFeedback; 567 | PFNGLUNIFORM1DVPROC glad_glUniform1dv; 568 | PFNGLGETTEXPARAMETERIUIVPROC glad_glGetTexParameterIuiv; 569 | PFNGLGETTRANSFORMFEEDBACKI_VPROC glad_glGetTransformFeedbacki_v; 570 | PFNGLINDEXPOINTERPROC glad_glIndexPointer; 571 | PFNGLGETNPOLYGONSTIPPLEPROC glad_glGetnPolygonStipple; 572 | PFNGLVERTEXATTRIB4NBVPROC glad_glVertexAttrib4Nbv; 573 | PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC glad_glClearNamedFramebufferuiv; 574 | PFNGLGETVERTEXARRAYINDEXEDIVPROC glad_glGetVertexArrayIndexediv; 575 | PFNGLISSYNCPROC glad_glIsSync; 576 | PFNGLVERTEX2FPROC glad_glVertex2f; 577 | PFNGLVERTEX2DPROC glad_glVertex2d; 578 | PFNGLDELETERENDERBUFFERSPROC glad_glDeleteRenderbuffers; 579 | PFNGLUNIFORM2IPROC glad_glUniform2i; 580 | PFNGLMAPGRID2DPROC glad_glMapGrid2d; 581 | PFNGLMAPGRID2FPROC glad_glMapGrid2f; 582 | PFNGLTEXCOORDP4UIPROC glad_glTexCoordP4ui; 583 | PFNGLVERTEX2IPROC glad_glVertex2i; 584 | PFNGLVERTEXATTRIBPOINTERPROC glad_glVertexAttribPointer; 585 | PFNGLPROGRAMUNIFORM1UIPROC glad_glProgramUniform1ui; 586 | PFNGLFRAMEBUFFERTEXTURELAYERPROC glad_glFramebufferTextureLayer; 587 | PFNGLVERTEX2SPROC glad_glVertex2s; 588 | PFNGLGETOBJECTPTRLABELPROC glad_glGetObjectPtrLabel; 589 | PFNGLTEXTUREPARAMETERIPROC glad_glTextureParameteri; 590 | PFNGLNORMAL3BVPROC glad_glNormal3bv; 591 | PFNGLVERTEXATTRIB4NUIVPROC glad_glVertexAttrib4Nuiv; 592 | PFNGLFLUSHMAPPEDBUFFERRANGEPROC glad_glFlushMappedBufferRange; 593 | PFNGLPROGRAMUNIFORM2FVPROC glad_glProgramUniform2fv; 594 | PFNGLUNIFORMMATRIX2X3DVPROC glad_glUniformMatrix2x3dv; 595 | PFNGLPROGRAMUNIFORMMATRIX4DVPROC glad_glProgramUniformMatrix4dv; 596 | PFNGLSECONDARYCOLOR3SVPROC glad_glSecondaryColor3sv; 597 | PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC glad_glProgramUniformMatrix2x4dv; 598 | PFNGLDISPATCHCOMPUTEPROC glad_glDispatchCompute; 599 | PFNGLVERTEX3SVPROC glad_glVertex3sv; 600 | PFNGLGENQUERIESPROC glad_glGenQueries; 601 | PFNGLGETPIXELMAPFVPROC glad_glGetPixelMapfv; 602 | PFNGLTEXENVFPROC glad_glTexEnvf; 603 | PFNGLVERTEXATTRIBP1UIPROC glad_glVertexAttribP1ui; 604 | PFNGLTEXSUBIMAGE3DPROC glad_glTexSubImage3D; 605 | PFNGLGETINTEGER64I_VPROC glad_glGetInteger64i_v; 606 | PFNGLFOGCOORDDPROC glad_glFogCoordd; 607 | PFNGLFOGCOORDFPROC glad_glFogCoordf; 608 | PFNGLCOPYTEXIMAGE2DPROC glad_glCopyTexImage2D; 609 | PFNGLTEXENVIPROC glad_glTexEnvi; 610 | PFNGLMULTITEXCOORD1IVPROC glad_glMultiTexCoord1iv; 611 | PFNGLISENABLEDIPROC glad_glIsEnabledi; 612 | PFNGLBINDBUFFERSRANGEPROC glad_glBindBuffersRange; 613 | PFNGLSECONDARYCOLORP3UIPROC glad_glSecondaryColorP3ui; 614 | PFNGLVERTEXATTRIBI2IPROC glad_glVertexAttribI2i; 615 | PFNGLBINDFRAGDATALOCATIONINDEXEDPROC glad_glBindFragDataLocationIndexed; 616 | PFNGLCOPYIMAGESUBDATAPROC glad_glCopyImageSubData; 617 | PFNGLMULTITEXCOORD2DVPROC glad_glMultiTexCoord2dv; 618 | PFNGLUNIFORM2IVPROC glad_glUniform2iv; 619 | PFNGLVERTEXATTRIB1FVPROC glad_glVertexAttrib1fv; 620 | PFNGLGETINTERNALFORMATIVPROC glad_glGetInternalformativ; 621 | PFNGLUNIFORM4UIVPROC glad_glUniform4uiv; 622 | PFNGLMATRIXMODEPROC glad_glMatrixMode; 623 | PFNGLGETTEXTUREIMAGEPROC glad_glGetTextureImage; 624 | PFNGLFEEDBACKBUFFERPROC glad_glFeedbackBuffer; 625 | PFNGLPROGRAMUNIFORM2DVPROC glad_glProgramUniform2dv; 626 | PFNGLENDQUERYINDEXEDPROC glad_glEndQueryIndexed; 627 | PFNGLGETMAPIVPROC glad_glGetMapiv; 628 | PFNGLTEXTURESUBIMAGE3DPROC glad_glTextureSubImage3D; 629 | PFNGLFRAMEBUFFERTEXTURE1DPROC glad_glFramebufferTexture1D; 630 | PFNGLUNIFORM4DPROC glad_glUniform4d; 631 | PFNGLGETSHADERIVPROC glad_glGetShaderiv; 632 | PFNGLMULTITEXCOORD2DPROC glad_glMultiTexCoord2d; 633 | PFNGLMULTITEXCOORD2FPROC glad_glMultiTexCoord2f; 634 | PFNGLPROGRAMUNIFORMMATRIX3FVPROC glad_glProgramUniformMatrix3fv; 635 | PFNGLOBJECTPTRLABELPROC glad_glObjectPtrLabel; 636 | PFNGLINVALIDATEFRAMEBUFFERPROC glad_glInvalidateFramebuffer; 637 | PFNGLBINDTEXTURESPROC glad_glBindTextures; 638 | PFNGLBINDFRAGDATALOCATIONPROC glad_glBindFragDataLocation; 639 | PFNGLNAMEDBUFFERSTORAGEPROC glad_glNamedBufferStorage; 640 | PFNGLSCISSORARRAYVPROC glad_glScissorArrayv; 641 | PFNGLPRIORITIZETEXTURESPROC glad_glPrioritizeTextures; 642 | PFNGLCALLLISTPROC glad_glCallList; 643 | PFNGLPATCHPARAMETERFVPROC glad_glPatchParameterfv; 644 | PFNGLSECONDARYCOLOR3UBVPROC glad_glSecondaryColor3ubv; 645 | PFNGLGETDOUBLEVPROC glad_glGetDoublev; 646 | PFNGLMULTITEXCOORD3IVPROC glad_glMultiTexCoord3iv; 647 | PFNGLVERTEXATTRIB1DPROC glad_glVertexAttrib1d; 648 | PFNGLUNIFORM4DVPROC glad_glUniform4dv; 649 | PFNGLLIGHTMODELFPROC glad_glLightModelf; 650 | PFNGLGETUNIFORMIVPROC glad_glGetUniformiv; 651 | PFNGLINVALIDATEBUFFERDATAPROC glad_glInvalidateBufferData; 652 | PFNGLVERTEX2SVPROC glad_glVertex2sv; 653 | PFNGLVERTEXARRAYVERTEXBUFFERSPROC glad_glVertexArrayVertexBuffers; 654 | PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC glad_glCompressedTextureSubImage1D; 655 | PFNGLLIGHTMODELIPROC glad_glLightModeli; 656 | PFNGLWINDOWPOS3IVPROC glad_glWindowPos3iv; 657 | PFNGLMULTITEXCOORDP1UIVPROC glad_glMultiTexCoordP1uiv; 658 | PFNGLUNIFORM3FVPROC glad_glUniform3fv; 659 | PFNGLPIXELSTOREIPROC glad_glPixelStorei; 660 | PFNGLGETPROGRAMPIPELINEINFOLOGPROC glad_glGetProgramPipelineInfoLog; 661 | PFNGLCALLLISTSPROC glad_glCallLists; 662 | PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC glad_glProgramUniformMatrix3x4fv; 663 | PFNGLINVALIDATESUBFRAMEBUFFERPROC glad_glInvalidateSubFramebuffer; 664 | PFNGLMAPBUFFERPROC glad_glMapBuffer; 665 | PFNGLSECONDARYCOLOR3DPROC glad_glSecondaryColor3d; 666 | PFNGLTEXCOORD3IPROC glad_glTexCoord3i; 667 | PFNGLMULTITEXCOORD4FVPROC glad_glMultiTexCoord4fv; 668 | PFNGLRASTERPOS3IPROC glad_glRasterPos3i; 669 | PFNGLSECONDARYCOLOR3BPROC glad_glSecondaryColor3b; 670 | PFNGLRASTERPOS3DPROC glad_glRasterPos3d; 671 | PFNGLRASTERPOS3FPROC glad_glRasterPos3f; 672 | PFNGLCOMPRESSEDTEXIMAGE3DPROC glad_glCompressedTexImage3D; 673 | PFNGLTEXCOORD3FPROC glad_glTexCoord3f; 674 | PFNGLDELETESYNCPROC glad_glDeleteSync; 675 | PFNGLTEXCOORD3DPROC glad_glTexCoord3d; 676 | PFNGLGETTRANSFORMFEEDBACKI64_VPROC glad_glGetTransformFeedbacki64_v; 677 | PFNGLUNIFORMMATRIX4DVPROC glad_glUniformMatrix4dv; 678 | PFNGLTEXIMAGE2DMULTISAMPLEPROC glad_glTexImage2DMultisample; 679 | PFNGLGETVERTEXATTRIBIVPROC glad_glGetVertexAttribiv; 680 | PFNGLUNIFORMMATRIX4X2DVPROC glad_glUniformMatrix4x2dv; 681 | PFNGLMULTIDRAWELEMENTSPROC glad_glMultiDrawElements; 682 | PFNGLVERTEXATTRIB3FVPROC glad_glVertexAttrib3fv; 683 | PFNGLTEXCOORD3SPROC glad_glTexCoord3s; 684 | PFNGLUNIFORM3IVPROC glad_glUniform3iv; 685 | PFNGLRASTERPOS3SPROC glad_glRasterPos3s; 686 | PFNGLPOLYGONMODEPROC glad_glPolygonMode; 687 | PFNGLDRAWBUFFERSPROC glad_glDrawBuffers; 688 | PFNGLGETNHISTOGRAMPROC glad_glGetnHistogram; 689 | PFNGLGETACTIVEUNIFORMBLOCKIVPROC glad_glGetActiveUniformBlockiv; 690 | PFNGLARETEXTURESRESIDENTPROC glad_glAreTexturesResident; 691 | PFNGLPROGRAMUNIFORM2DPROC glad_glProgramUniform2d; 692 | PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC glad_glProgramUniformMatrix4x3dv; 693 | PFNGLISLISTPROC glad_glIsList; 694 | PFNGLPROGRAMUNIFORM4IVPROC glad_glProgramUniform4iv; 695 | PFNGLRASTERPOS2SVPROC glad_glRasterPos2sv; 696 | PFNGLRASTERPOS4SVPROC glad_glRasterPos4sv; 697 | PFNGLCOLOR4SPROC glad_glColor4s; 698 | PFNGLGETPROGRAMBINARYPROC glad_glGetProgramBinary; 699 | PFNGLUSEPROGRAMPROC glad_glUseProgram; 700 | PFNGLLINESTIPPLEPROC glad_glLineStipple; 701 | PFNGLMULTITEXCOORD1SVPROC glad_glMultiTexCoord1sv; 702 | PFNGLGETPROGRAMINFOLOGPROC glad_glGetProgramInfoLog; 703 | PFNGLCLEARTEXIMAGEPROC glad_glClearTexImage; 704 | PFNGLGETBUFFERPARAMETERIVPROC glad_glGetBufferParameteriv; 705 | PFNGLMULTITEXCOORD2IVPROC glad_glMultiTexCoord2iv; 706 | PFNGLUNIFORMMATRIX2X4FVPROC glad_glUniformMatrix2x4fv; 707 | PFNGLBINDVERTEXARRAYPROC glad_glBindVertexArray; 708 | PFNGLCOLOR4BPROC glad_glColor4b; 709 | PFNGLSECONDARYCOLOR3FPROC glad_glSecondaryColor3f; 710 | PFNGLCOLOR4FPROC glad_glColor4f; 711 | PFNGLCOLOR4DPROC glad_glColor4d; 712 | PFNGLCOLOR4IPROC glad_glColor4i; 713 | PFNGLSAMPLERPARAMETERIIVPROC glad_glSamplerParameterIiv; 714 | PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC glad_glMultiDrawElementsBaseVertex; 715 | PFNGLVERTEXATTRIBLFORMATPROC glad_glVertexAttribLFormat; 716 | PFNGLRASTERPOS3IVPROC glad_glRasterPos3iv; 717 | PFNGLTEXTURESTORAGE2DPROC glad_glTextureStorage2D; 718 | PFNGLGENERATETEXTUREMIPMAPPROC glad_glGenerateTextureMipmap; 719 | PFNGLVERTEX2DVPROC glad_glVertex2dv; 720 | PFNGLTEXCOORD4SVPROC glad_glTexCoord4sv; 721 | PFNGLUNIFORM2UIVPROC glad_glUniform2uiv; 722 | PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC glad_glCompressedTexSubImage1D; 723 | PFNGLFINISHPROC glad_glFinish; 724 | PFNGLDEPTHRANGEINDEXEDPROC glad_glDepthRangeIndexed; 725 | PFNGLGETBOOLEANVPROC glad_glGetBooleanv; 726 | PFNGLDELETESHADERPROC glad_glDeleteShader; 727 | PFNGLDRAWELEMENTSPROC glad_glDrawElements; 728 | PFNGLGETINTERNALFORMATI64VPROC glad_glGetInternalformati64v; 729 | PFNGLRASTERPOS2SPROC glad_glRasterPos2s; 730 | PFNGLCOPYTEXTURESUBIMAGE1DPROC glad_glCopyTextureSubImage1D; 731 | PFNGLGETMAPDVPROC glad_glGetMapdv; 732 | PFNGLVERTEXATTRIB4NSVPROC glad_glVertexAttrib4Nsv; 733 | PFNGLMATERIALFVPROC glad_glMaterialfv; 734 | PFNGLTEXTUREPARAMETERIUIVPROC glad_glTextureParameterIuiv; 735 | PFNGLVIEWPORTPROC glad_glViewport; 736 | PFNGLUNIFORM1UIVPROC glad_glUniform1uiv; 737 | PFNGLTRANSFORMFEEDBACKVARYINGSPROC glad_glTransformFeedbackVaryings; 738 | PFNGLINDEXDVPROC glad_glIndexdv; 739 | PFNGLCOPYTEXSUBIMAGE3DPROC glad_glCopyTexSubImage3D; 740 | PFNGLTEXCOORD3IVPROC glad_glTexCoord3iv; 741 | PFNGLDEBUGMESSAGECALLBACKPROC glad_glDebugMessageCallback; 742 | PFNGLVERTEXATTRIBI3IPROC glad_glVertexAttribI3i; 743 | PFNGLINVALIDATETEXIMAGEPROC glad_glInvalidateTexImage; 744 | PFNGLVERTEXATTRIBFORMATPROC glad_glVertexAttribFormat; 745 | PFNGLCLEARDEPTHPROC glad_glClearDepth; 746 | PFNGLVERTEXATTRIBI4USVPROC glad_glVertexAttribI4usv; 747 | PFNGLTEXPARAMETERFPROC glad_glTexParameterf; 748 | PFNGLVERTEXATTRIBBINDINGPROC glad_glVertexAttribBinding; 749 | PFNGLTEXPARAMETERIPROC glad_glTexParameteri; 750 | PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC glad_glGetActiveSubroutineUniformiv; 751 | PFNGLGETSHADERSOURCEPROC glad_glGetShaderSource; 752 | PFNGLCREATETRANSFORMFEEDBACKSPROC glad_glCreateTransformFeedbacks; 753 | PFNGLGETNTEXIMAGEPROC glad_glGetnTexImage; 754 | PFNGLTEXBUFFERPROC glad_glTexBuffer; 755 | PFNGLPOPNAMEPROC glad_glPopName; 756 | PFNGLVALIDATEPROGRAMPROC glad_glValidateProgram; 757 | PFNGLPIXELSTOREFPROC glad_glPixelStoref; 758 | PFNGLUNIFORM3UIVPROC glad_glUniform3uiv; 759 | PFNGLVIEWPORTINDEXEDFPROC glad_glViewportIndexedf; 760 | PFNGLRASTERPOS4FVPROC glad_glRasterPos4fv; 761 | PFNGLEVALCOORD1DVPROC glad_glEvalCoord1dv; 762 | PFNGLMULTITEXCOORDP2UIVPROC glad_glMultiTexCoordP2uiv; 763 | PFNGLGENPROGRAMPIPELINESPROC glad_glGenProgramPipelines; 764 | PFNGLRECTIPROC glad_glRecti; 765 | PFNGLCOLOR4UBPROC glad_glColor4ub; 766 | PFNGLMULTTRANSPOSEMATRIXFPROC glad_glMultTransposeMatrixf; 767 | PFNGLRECTFPROC glad_glRectf; 768 | PFNGLRECTDPROC glad_glRectd; 769 | PFNGLNORMAL3SVPROC glad_glNormal3sv; 770 | PFNGLNEWLISTPROC glad_glNewList; 771 | PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC glad_glProgramUniformMatrix2x3dv; 772 | PFNGLCOLOR4USPROC glad_glColor4us; 773 | PFNGLVERTEXATTRIBP1UIVPROC glad_glVertexAttribP1uiv; 774 | PFNGLLINKPROGRAMPROC glad_glLinkProgram; 775 | PFNGLHINTPROC glad_glHint; 776 | PFNGLRECTSPROC glad_glRects; 777 | PFNGLTEXCOORD2DVPROC glad_glTexCoord2dv; 778 | PFNGLRASTERPOS4IVPROC glad_glRasterPos4iv; 779 | PFNGLGETOBJECTLABELPROC glad_glGetObjectLabel; 780 | PFNGLPROGRAMUNIFORM2FPROC glad_glProgramUniform2f; 781 | PFNGLGETSTRINGPROC glad_glGetString; 782 | PFNGLVERTEXATTRIBP2UIVPROC glad_glVertexAttribP2uiv; 783 | PFNGLEDGEFLAGVPROC glad_glEdgeFlagv; 784 | PFNGLDETACHSHADERPROC glad_glDetachShader; 785 | PFNGLPROGRAMUNIFORM3IPROC glad_glProgramUniform3i; 786 | PFNGLSCALEFPROC glad_glScalef; 787 | PFNGLENDQUERYPROC glad_glEndQuery; 788 | PFNGLSCALEDPROC glad_glScaled; 789 | PFNGLEDGEFLAGPOINTERPROC glad_glEdgeFlagPointer; 790 | PFNGLFRAMEBUFFERPARAMETERIPROC glad_glFramebufferParameteri; 791 | PFNGLGETPROGRAMRESOURCENAMEPROC glad_glGetProgramResourceName; 792 | PFNGLUNIFORMMATRIX4X3DVPROC glad_glUniformMatrix4x3dv; 793 | PFNGLDEPTHRANGEARRAYVPROC glad_glDepthRangeArrayv; 794 | PFNGLCOPYPIXELSPROC glad_glCopyPixels; 795 | PFNGLVERTEXATTRIBI2UIPROC glad_glVertexAttribI2ui; 796 | PFNGLGETPROGRAMRESOURCELOCATIONPROC glad_glGetProgramResourceLocation; 797 | PFNGLPOPATTRIBPROC glad_glPopAttrib; 798 | PFNGLDELETETEXTURESPROC glad_glDeleteTextures; 799 | PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC glad_glGetActiveAtomicCounterBufferiv; 800 | PFNGLSTENCILOPSEPARATEPROC glad_glStencilOpSeparate; 801 | PFNGLGETTEXTUREPARAMETERIVPROC glad_glGetTextureParameteriv; 802 | PFNGLDELETEQUERIESPROC glad_glDeleteQueries; 803 | PFNGLNORMALP3UIVPROC glad_glNormalP3uiv; 804 | PFNGLVERTEXATTRIB4FPROC glad_glVertexAttrib4f; 805 | PFNGLVERTEXATTRIB4DPROC glad_glVertexAttrib4d; 806 | PFNGLVIEWPORTINDEXEDFVPROC glad_glViewportIndexedfv; 807 | PFNGLINITNAMESPROC glad_glInitNames; 808 | PFNGLGETBUFFERPARAMETERI64VPROC glad_glGetBufferParameteri64v; 809 | PFNGLCOLOR3DVPROC glad_glColor3dv; 810 | PFNGLVERTEXATTRIBI1IPROC glad_glVertexAttribI1i; 811 | PFNGLGETTEXPARAMETERIVPROC glad_glGetTexParameteriv; 812 | PFNGLWAITSYNCPROC glad_glWaitSync; 813 | PFNGLCREATEVERTEXARRAYSPROC glad_glCreateVertexArrays; 814 | PFNGLPROGRAMUNIFORM1DVPROC glad_glProgramUniform1dv; 815 | PFNGLVERTEXATTRIB4SPROC glad_glVertexAttrib4s; 816 | PFNGLCOLORMATERIALPROC glad_glColorMaterial; 817 | PFNGLSAMPLECOVERAGEPROC glad_glSampleCoverage; 818 | PFNGLSAMPLERPARAMETERIPROC glad_glSamplerParameteri; 819 | PFNGLCLEARBUFFERSUBDATAPROC glad_glClearBufferSubData; 820 | PFNGLSAMPLERPARAMETERFPROC glad_glSamplerParameterf; 821 | PFNGLTEXSTORAGE1DPROC glad_glTexStorage1D; 822 | PFNGLUNIFORM1FPROC glad_glUniform1f; 823 | PFNGLGETVERTEXATTRIBFVPROC glad_glGetVertexAttribfv; 824 | PFNGLUNIFORM1DPROC glad_glUniform1d; 825 | PFNGLRENDERMODEPROC glad_glRenderMode; 826 | PFNGLGETCOMPRESSEDTEXIMAGEPROC glad_glGetCompressedTexImage; 827 | PFNGLGETNCOMPRESSEDTEXIMAGEPROC glad_glGetnCompressedTexImage; 828 | PFNGLWINDOWPOS2DVPROC glad_glWindowPos2dv; 829 | PFNGLUNIFORM1IPROC glad_glUniform1i; 830 | PFNGLGETACTIVEATTRIBPROC glad_glGetActiveAttrib; 831 | PFNGLUNIFORM3IPROC glad_glUniform3i; 832 | PFNGLPIXELTRANSFERIPROC glad_glPixelTransferi; 833 | PFNGLTEXSUBIMAGE2DPROC glad_glTexSubImage2D; 834 | PFNGLDISABLEPROC glad_glDisable; 835 | PFNGLLOGICOPPROC glad_glLogicOp; 836 | PFNGLEVALPOINT2PROC glad_glEvalPoint2; 837 | PFNGLPIXELTRANSFERFPROC glad_glPixelTransferf; 838 | PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC glad_glMultiDrawArraysIndirectCount; 839 | PFNGLSECONDARYCOLOR3IPROC glad_glSecondaryColor3i; 840 | PFNGLPROGRAMUNIFORM4UIVPROC glad_glProgramUniform4uiv; 841 | PFNGLUNIFORM4UIPROC glad_glUniform4ui; 842 | PFNGLCOLOR3FPROC glad_glColor3f; 843 | PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC glad_glNamedFramebufferReadBuffer; 844 | PFNGLBINDFRAMEBUFFERPROC glad_glBindFramebuffer; 845 | PFNGLGETTEXENVFVPROC glad_glGetTexEnvfv; 846 | PFNGLRECTFVPROC glad_glRectfv; 847 | PFNGLCULLFACEPROC glad_glCullFace; 848 | PFNGLGETLIGHTFVPROC glad_glGetLightfv; 849 | PFNGLGETNUNIFORMIVPROC glad_glGetnUniformiv; 850 | PFNGLCOLOR3DPROC glad_glColor3d; 851 | PFNGLPROGRAMUNIFORM4IPROC glad_glProgramUniform4i; 852 | PFNGLTEXGENDPROC glad_glTexGend; 853 | PFNGLPROGRAMUNIFORM4FPROC glad_glProgramUniform4f; 854 | PFNGLTEXGENIPROC glad_glTexGeni; 855 | PFNGLPROGRAMUNIFORM4DPROC glad_glProgramUniform4d; 856 | PFNGLTEXTUREPARAMETERIIVPROC glad_glTextureParameterIiv; 857 | PFNGLMULTITEXCOORD3SPROC glad_glMultiTexCoord3s; 858 | PFNGLGETSTRINGIPROC glad_glGetStringi; 859 | PFNGLGETTEXTUREPARAMETERFVPROC glad_glGetTextureParameterfv; 860 | PFNGLTEXTURESUBIMAGE2DPROC glad_glTextureSubImage2D; 861 | PFNGLMULTITEXCOORD3IPROC glad_glMultiTexCoord3i; 862 | PFNGLMULTITEXCOORD3FPROC glad_glMultiTexCoord3f; 863 | PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC glad_glDrawTransformFeedbackStream; 864 | PFNGLMULTITEXCOORD3DPROC glad_glMultiTexCoord3d; 865 | PFNGLATTACHSHADERPROC glad_glAttachShader; 866 | PFNGLFOGCOORDDVPROC glad_glFogCoorddv; 867 | PFNGLUNIFORMMATRIX2X3FVPROC glad_glUniformMatrix2x3fv; 868 | PFNGLGETTEXGENFVPROC glad_glGetTexGenfv; 869 | PFNGLQUERYCOUNTERPROC glad_glQueryCounter; 870 | PFNGLFOGCOORDPOINTERPROC glad_glFogCoordPointer; 871 | PFNGLPROGRAMUNIFORMMATRIX3DVPROC glad_glProgramUniformMatrix3dv; 872 | PFNGLPROVOKINGVERTEXPROC glad_glProvokingVertex; 873 | PFNGLSHADERBINARYPROC glad_glShaderBinary; 874 | PFNGLUNMAPNAMEDBUFFERPROC glad_glUnmapNamedBuffer; 875 | PFNGLGETNCOLORTABLEPROC glad_glGetnColorTable; 876 | PFNGLFRAMEBUFFERTEXTURE3DPROC glad_glFramebufferTexture3D; 877 | PFNGLTEXGENIVPROC glad_glTexGeniv; 878 | PFNGLRASTERPOS2DVPROC glad_glRasterPos2dv; 879 | PFNGLSECONDARYCOLOR3DVPROC glad_glSecondaryColor3dv; 880 | PFNGLCLIENTACTIVETEXTUREPROC glad_glClientActiveTexture; 881 | PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC glad_glNamedRenderbufferStorageMultisample; 882 | PFNGLVERTEXATTRIBI4SVPROC glad_glVertexAttribI4sv; 883 | PFNGLCLEARNAMEDBUFFERDATAPROC glad_glClearNamedBufferData; 884 | PFNGLSECONDARYCOLOR3USPROC glad_glSecondaryColor3us; 885 | PFNGLNORMALP3UIPROC glad_glNormalP3ui; 886 | PFNGLTEXENVFVPROC glad_glTexEnvfv; 887 | PFNGLREADBUFFERPROC glad_glReadBuffer; 888 | PFNGLVIEWPORTARRAYVPROC glad_glViewportArrayv; 889 | PFNGLTEXPARAMETERIUIVPROC glad_glTexParameterIuiv; 890 | PFNGLDRAWARRAYSINSTANCEDPROC glad_glDrawArraysInstanced; 891 | PFNGLGENERATEMIPMAPPROC glad_glGenerateMipmap; 892 | PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC glad_glCompressedTextureSubImage2D; 893 | PFNGLPROGRAMUNIFORMMATRIX2FVPROC glad_glProgramUniformMatrix2fv; 894 | PFNGLWINDOWPOS3FVPROC glad_glWindowPos3fv; 895 | PFNGLUNIFORMMATRIX3X4DVPROC glad_glUniformMatrix3x4dv; 896 | PFNGLLIGHTMODELFVPROC glad_glLightModelfv; 897 | PFNGLSAMPLERPARAMETERIVPROC glad_glSamplerParameteriv; 898 | PFNGLDELETELISTSPROC glad_glDeleteLists; 899 | PFNGLGETCLIPPLANEPROC glad_glGetClipPlane; 900 | PFNGLVERTEX4DVPROC glad_glVertex4dv; 901 | PFNGLTEXCOORD2DPROC glad_glTexCoord2d; 902 | PFNGLPOPMATRIXPROC glad_glPopMatrix; 903 | PFNGLTEXCOORD2FPROC glad_glTexCoord2f; 904 | PFNGLCOLOR4IVPROC glad_glColor4iv; 905 | PFNGLINDEXUBVPROC glad_glIndexubv; 906 | PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC glad_glCheckNamedFramebufferStatus; 907 | PFNGLUNMAPBUFFERPROC glad_glUnmapBuffer; 908 | PFNGLTEXCOORD2IPROC glad_glTexCoord2i; 909 | PFNGLRASTERPOS4DPROC glad_glRasterPos4d; 910 | PFNGLRASTERPOS4FPROC glad_glRasterPos4f; 911 | PFNGLPROGRAMUNIFORM1IVPROC glad_glProgramUniform1iv; 912 | PFNGLGETVERTEXARRAYIVPROC glad_glGetVertexArrayiv; 913 | PFNGLCOPYTEXTURESUBIMAGE2DPROC glad_glCopyTextureSubImage2D; 914 | PFNGLVERTEXATTRIB3SPROC glad_glVertexAttrib3s; 915 | PFNGLTEXCOORD2SPROC glad_glTexCoord2s; 916 | PFNGLBINDRENDERBUFFERPROC glad_glBindRenderbuffer; 917 | PFNGLVERTEX3FVPROC glad_glVertex3fv; 918 | PFNGLTEXCOORD4DVPROC glad_glTexCoord4dv; 919 | PFNGLMATERIALIVPROC glad_glMaterialiv; 920 | PFNGLVERTEXATTRIBP4UIVPROC glad_glVertexAttribP4uiv; 921 | PFNGLGETPROGRAMSTAGEIVPROC glad_glGetProgramStageiv; 922 | PFNGLISPROGRAMPROC glad_glIsProgram; 923 | PFNGLVERTEXATTRIB4BVPROC glad_glVertexAttrib4bv; 924 | PFNGLVERTEX4SPROC glad_glVertex4s; 925 | PFNGLUNIFORMMATRIX3X2DVPROC glad_glUniformMatrix3x2dv; 926 | PFNGLVERTEXATTRIB4FVPROC glad_glVertexAttrib4fv; 927 | PFNGLNORMAL3DVPROC glad_glNormal3dv; 928 | PFNGLISTRANSFORMFEEDBACKPROC glad_glIsTransformFeedback; 929 | PFNGLUNIFORM4IPROC glad_glUniform4i; 930 | PFNGLACTIVETEXTUREPROC glad_glActiveTexture; 931 | PFNGLENABLEVERTEXATTRIBARRAYPROC glad_glEnableVertexAttribArray; 932 | PFNGLROTATEDPROC glad_glRotated; 933 | PFNGLISPROGRAMPIPELINEPROC glad_glIsProgramPipeline; 934 | PFNGLROTATEFPROC glad_glRotatef; 935 | PFNGLVERTEX4IPROC glad_glVertex4i; 936 | PFNGLREADPIXELSPROC glad_glReadPixels; 937 | PFNGLVERTEXATTRIBI3IVPROC glad_glVertexAttribI3iv; 938 | PFNGLLOADNAMEPROC glad_glLoadName; 939 | PFNGLUNIFORM4FPROC glad_glUniform4f; 940 | PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC glad_glRenderbufferStorageMultisample; 941 | PFNGLCREATEPROGRAMPIPELINESPROC glad_glCreateProgramPipelines; 942 | PFNGLGENVERTEXARRAYSPROC glad_glGenVertexArrays; 943 | PFNGLSHADEMODELPROC glad_glShadeModel; 944 | PFNGLMAPGRID1DPROC glad_glMapGrid1d; 945 | PFNGLGETUNIFORMFVPROC glad_glGetUniformfv; 946 | PFNGLMAPGRID1FPROC glad_glMapGrid1f; 947 | PFNGLSAMPLERPARAMETERFVPROC glad_glSamplerParameterfv; 948 | PFNGLVERTEXATTRIBLPOINTERPROC glad_glVertexAttribLPointer; 949 | PFNGLDISABLECLIENTSTATEPROC glad_glDisableClientState; 950 | PFNGLMULTITEXCOORD3SVPROC glad_glMultiTexCoord3sv; 951 | PFNGLGETNUNIFORMFVPROC glad_glGetnUniformfv; 952 | PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC glad_glDrawElementsInstancedBaseVertex; 953 | PFNGLVERTEXATTRIBL2DVPROC glad_glVertexAttribL2dv; 954 | PFNGLMULTIDRAWELEMENTSINDIRECTPROC glad_glMultiDrawElementsIndirect; 955 | PFNGLENABLEVERTEXARRAYATTRIBPROC glad_glEnableVertexArrayAttrib; 956 | PFNGLSECONDARYCOLORPOINTERPROC glad_glSecondaryColorPointer; 957 | PFNGLALPHAFUNCPROC glad_glAlphaFunc; 958 | PFNGLUNIFORM1IVPROC glad_glUniform1iv; 959 | PFNGLCREATESHADERPROGRAMVPROC glad_glCreateShaderProgramv; 960 | PFNGLGETACTIVESUBROUTINENAMEPROC glad_glGetActiveSubroutineName; 961 | PFNGLMULTITEXCOORD4IVPROC glad_glMultiTexCoord4iv; 962 | PFNGLVERTEXATTRIBL2DPROC glad_glVertexAttribL2d; 963 | PFNGLGETQUERYOBJECTIVPROC glad_glGetQueryObjectiv; 964 | PFNGLSTENCILFUNCPROC glad_glStencilFunc; 965 | PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC glad_glInvalidateNamedFramebufferData; 966 | PFNGLMULTITEXCOORD1FVPROC glad_glMultiTexCoord1fv; 967 | PFNGLUNIFORMBLOCKBINDINGPROC glad_glUniformBlockBinding; 968 | PFNGLCOLOR4UIVPROC glad_glColor4uiv; 969 | PFNGLRECTIVPROC glad_glRectiv; 970 | PFNGLCOLORP4UIPROC glad_glColorP4ui; 971 | PFNGLUSEPROGRAMSTAGESPROC glad_glUseProgramStages; 972 | PFNGLRASTERPOS3DVPROC glad_glRasterPos3dv; 973 | PFNGLEVALMESH2PROC glad_glEvalMesh2; 974 | PFNGLEVALMESH1PROC glad_glEvalMesh1; 975 | PFNGLTEXCOORDPOINTERPROC glad_glTexCoordPointer; 976 | PFNGLPROGRAMUNIFORM3FPROC glad_glProgramUniform3f; 977 | PFNGLPROGRAMUNIFORM3DPROC glad_glProgramUniform3d; 978 | PFNGLVERTEXATTRIB4NUBVPROC glad_glVertexAttrib4Nubv; 979 | PFNGLVERTEXATTRIBI4IVPROC glad_glVertexAttribI4iv; 980 | PFNGLGETPROGRAMPIPELINEIVPROC glad_glGetProgramPipelineiv; 981 | PFNGLTEXSTORAGE3DPROC glad_glTexStorage3D; 982 | PFNGLEVALCOORD2FVPROC glad_glEvalCoord2fv; 983 | PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC glad_glNamedFramebufferDrawBuffer; 984 | PFNGLGETQUERYINDEXEDIVPROC glad_glGetQueryIndexediv; 985 | PFNGLCOLOR4UBVPROC glad_glColor4ubv; 986 | PFNGLLOADTRANSPOSEMATRIXDPROC glad_glLoadTransposeMatrixd; 987 | PFNGLLOADTRANSPOSEMATRIXFPROC glad_glLoadTransposeMatrixf; 988 | PFNGLTEXTUREPARAMETERIVPROC glad_glTextureParameteriv; 989 | PFNGLOBJECTLABELPROC glad_glObjectLabel; 990 | PFNGLVERTEXATTRIBI4IPROC glad_glVertexAttribI4i; 991 | PFNGLRASTERPOS2IVPROC glad_glRasterPos2iv; 992 | PFNGLGETBUFFERSUBDATAPROC glad_glGetBufferSubData; 993 | PFNGLGETVERTEXATTRIBLDVPROC glad_glGetVertexAttribLdv; 994 | PFNGLGETNUNIFORMUIVPROC glad_glGetnUniformuiv; 995 | PFNGLGETQUERYBUFFEROBJECTIVPROC glad_glGetQueryBufferObjectiv; 996 | PFNGLTEXENVIVPROC glad_glTexEnviv; 997 | PFNGLBLENDEQUATIONSEPARATEPROC glad_glBlendEquationSeparate; 998 | PFNGLVERTEXATTRIBI1UIPROC glad_glVertexAttribI1ui; 999 | PFNGLGENBUFFERSPROC glad_glGenBuffers; 1000 | PFNGLSELECTBUFFERPROC glad_glSelectBuffer; 1001 | PFNGLGETSUBROUTINEINDEXPROC glad_glGetSubroutineIndex; 1002 | PFNGLVERTEXATTRIB2SVPROC glad_glVertexAttrib2sv; 1003 | PFNGLSCISSORINDEXEDVPROC glad_glScissorIndexedv; 1004 | PFNGLPUSHATTRIBPROC glad_glPushAttrib; 1005 | PFNGLVERTEXATTRIBIPOINTERPROC glad_glVertexAttribIPointer; 1006 | PFNGLBLENDFUNCPROC glad_glBlendFunc; 1007 | PFNGLCREATEPROGRAMPROC glad_glCreateProgram; 1008 | PFNGLNAMEDBUFFERSUBDATAPROC glad_glNamedBufferSubData; 1009 | PFNGLTEXIMAGE3DPROC glad_glTexImage3D; 1010 | PFNGLISFRAMEBUFFERPROC glad_glIsFramebuffer; 1011 | PFNGLCLEARNAMEDFRAMEBUFFERFVPROC glad_glClearNamedFramebufferfv; 1012 | PFNGLLIGHTIVPROC glad_glLightiv; 1013 | PFNGLGETNAMEDBUFFERSUBDATAPROC glad_glGetNamedBufferSubData; 1014 | PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC glad_glCompressedTextureSubImage3D; 1015 | PFNGLPRIMITIVERESTARTINDEXPROC glad_glPrimitiveRestartIndex; 1016 | PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC glad_glFlushMappedNamedBufferRange; 1017 | PFNGLINVALIDATETEXSUBIMAGEPROC glad_glInvalidateTexSubImage; 1018 | PFNGLTEXGENFVPROC glad_glTexGenfv; 1019 | PFNGLGETTEXTUREPARAMETERIUIVPROC glad_glGetTextureParameterIuiv; 1020 | PFNGLGETNCONVOLUTIONFILTERPROC glad_glGetnConvolutionFilter; 1021 | PFNGLBINDIMAGETEXTURESPROC glad_glBindImageTextures; 1022 | PFNGLENDPROC glad_glEnd; 1023 | PFNGLDELETEBUFFERSPROC glad_glDeleteBuffers; 1024 | PFNGLBINDPROGRAMPIPELINEPROC glad_glBindProgramPipeline; 1025 | PFNGLSCISSORPROC glad_glScissor; 1026 | PFNGLTEXCOORDP4UIVPROC glad_glTexCoordP4uiv; 1027 | PFNGLCLIPPLANEPROC glad_glClipPlane; 1028 | PFNGLPUSHNAMEPROC glad_glPushName; 1029 | PFNGLTEXGENDVPROC glad_glTexGendv; 1030 | PFNGLINDEXUBPROC glad_glIndexub; 1031 | PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC glad_glGetNamedFramebufferAttachmentParameteriv; 1032 | PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC glad_glNamedFramebufferRenderbuffer; 1033 | PFNGLVERTEXP2UIVPROC glad_glVertexP2uiv; 1034 | PFNGLSECONDARYCOLOR3IVPROC glad_glSecondaryColor3iv; 1035 | PFNGLRASTERPOS4IPROC glad_glRasterPos4i; 1036 | PFNGLMULTTRANSPOSEMATRIXDPROC glad_glMultTransposeMatrixd; 1037 | PFNGLCLEARCOLORPROC glad_glClearColor; 1038 | PFNGLVERTEXATTRIB4UIVPROC glad_glVertexAttrib4uiv; 1039 | PFNGLNORMAL3SPROC glad_glNormal3s; 1040 | PFNGLVERTEXATTRIB4NIVPROC glad_glVertexAttrib4Niv; 1041 | PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC glad_glProgramUniformMatrix2x3fv; 1042 | PFNGLCLEARBUFFERIVPROC glad_glClearBufferiv; 1043 | PFNGLPOINTPARAMETERIPROC glad_glPointParameteri; 1044 | PFNGLPROGRAMUNIFORM4DVPROC glad_glProgramUniform4dv; 1045 | PFNGLCOLORP4UIVPROC glad_glColorP4uiv; 1046 | PFNGLBLENDCOLORPROC glad_glBlendColor; 1047 | PFNGLGETNPIXELMAPUIVPROC glad_glGetnPixelMapuiv; 1048 | PFNGLGETTEXTURELEVELPARAMETERIVPROC glad_glGetTextureLevelParameteriv; 1049 | PFNGLWINDOWPOS3DPROC glad_glWindowPos3d; 1050 | PFNGLPROGRAMUNIFORM3FVPROC glad_glProgramUniform3fv; 1051 | PFNGLVERTEXATTRIBI2UIVPROC glad_glVertexAttribI2uiv; 1052 | PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC glad_glGetNamedFramebufferParameteriv; 1053 | PFNGLSAMPLERPARAMETERIUIVPROC glad_glSamplerParameterIuiv; 1054 | PFNGLUNIFORM3UIPROC glad_glUniform3ui; 1055 | PFNGLPROGRAMUNIFORM3UIVPROC glad_glProgramUniform3uiv; 1056 | PFNGLCOLOR4DVPROC glad_glColor4dv; 1057 | PFNGLVERTEXATTRIBI4UIVPROC glad_glVertexAttribI4uiv; 1058 | PFNGLPOINTPARAMETERFVPROC glad_glPointParameterfv; 1059 | PFNGLRESUMETRANSFORMFEEDBACKPROC glad_glResumeTransformFeedback; 1060 | PFNGLUNIFORM2FVPROC glad_glUniform2fv; 1061 | PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC glad_glGetActiveSubroutineUniformName; 1062 | PFNGLGETPROGRAMRESOURCEINDEXPROC glad_glGetProgramResourceIndex; 1063 | PFNGLSECONDARYCOLOR3UBPROC glad_glSecondaryColor3ub; 1064 | PFNGLDRAWELEMENTSINDIRECTPROC glad_glDrawElementsIndirect; 1065 | PFNGLGETTEXTURELEVELPARAMETERFVPROC glad_glGetTextureLevelParameterfv; 1066 | PFNGLSECONDARYCOLOR3UIPROC glad_glSecondaryColor3ui; 1067 | PFNGLTEXCOORD3DVPROC glad_glTexCoord3dv; 1068 | PFNGLGETNAMEDBUFFERPOINTERVPROC glad_glGetNamedBufferPointerv; 1069 | PFNGLDISPATCHCOMPUTEINDIRECTPROC glad_glDispatchComputeIndirect; 1070 | PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC glad_glInvalidateNamedFramebufferSubData; 1071 | PFNGLGETSAMPLERPARAMETERIUIVPROC glad_glGetSamplerParameterIuiv; 1072 | PFNGLBINDBUFFERRANGEPROC glad_glBindBufferRange; 1073 | PFNGLNORMAL3IVPROC glad_glNormal3iv; 1074 | PFNGLTEXTURESUBIMAGE1DPROC glad_glTextureSubImage1D; 1075 | PFNGLVERTEXATTRIBL3DVPROC glad_glVertexAttribL3dv; 1076 | PFNGLGETUNIFORMDVPROC glad_glGetUniformdv; 1077 | PFNGLWINDOWPOS3SPROC glad_glWindowPos3s; 1078 | PFNGLPOINTPARAMETERFPROC glad_glPointParameterf; 1079 | PFNGLCLEARDEPTHFPROC glad_glClearDepthf; 1080 | PFNGLGETVERTEXATTRIBIUIVPROC glad_glGetVertexAttribIuiv; 1081 | PFNGLWINDOWPOS3IPROC glad_glWindowPos3i; 1082 | PFNGLMULTITEXCOORD4SPROC glad_glMultiTexCoord4s; 1083 | PFNGLGETTEXTURESUBIMAGEPROC glad_glGetTextureSubImage; 1084 | PFNGLWINDOWPOS3FPROC glad_glWindowPos3f; 1085 | PFNGLGENTRANSFORMFEEDBACKSPROC glad_glGenTransformFeedbacks; 1086 | PFNGLCOLOR3USPROC glad_glColor3us; 1087 | PFNGLCOLOR3UIVPROC glad_glColor3uiv; 1088 | PFNGLVERTEXATTRIB4NUSVPROC glad_glVertexAttrib4Nusv; 1089 | PFNGLGETLIGHTIVPROC glad_glGetLightiv; 1090 | PFNGLDEPTHFUNCPROC glad_glDepthFunc; 1091 | PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC glad_glCompressedTexSubImage2D; 1092 | PFNGLLISTBASEPROC glad_glListBase; 1093 | PFNGLMULTITEXCOORD4FPROC glad_glMultiTexCoord4f; 1094 | PFNGLCOLOR3UBPROC glad_glColor3ub; 1095 | PFNGLMULTITEXCOORD4DPROC glad_glMultiTexCoord4d; 1096 | PFNGLVERTEXATTRIBI4BVPROC glad_glVertexAttribI4bv; 1097 | PFNGLBLENDEQUATIONSEPARATEIPROC glad_glBlendEquationSeparatei; 1098 | PFNGLGETTEXPARAMETERFVPROC glad_glGetTexParameterfv; 1099 | PFNGLCOLOR3UIPROC glad_glColor3ui; 1100 | PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC glad_glGetProgramResourceLocationIndex; 1101 | PFNGLMULTITEXCOORD4IPROC glad_glMultiTexCoord4i; 1102 | PFNGLBUFFERSTORAGEPROC glad_glBufferStorage; 1103 | PFNGLGETPOLYGONSTIPPLEPROC glad_glGetPolygonStipple; 1104 | PFNGLCLIENTWAITSYNCPROC glad_glClientWaitSync; 1105 | PFNGLVERTEXATTRIBI4UIPROC glad_glVertexAttribI4ui; 1106 | PFNGLGETFLOATI_VPROC glad_glGetFloati_v; 1107 | PFNGLMULTITEXCOORD4DVPROC glad_glMultiTexCoord4dv; 1108 | PFNGLCOLORMASKPROC glad_glColorMask; 1109 | PFNGLTEXTUREBUFFERPROC glad_glTextureBuffer; 1110 | PFNGLTEXPARAMETERIIVPROC glad_glTexParameterIiv; 1111 | PFNGLBLENDEQUATIONPROC glad_glBlendEquation; 1112 | PFNGLGETUNIFORMLOCATIONPROC glad_glGetUniformLocation; 1113 | PFNGLGETSAMPLERPARAMETERIVPROC glad_glGetSamplerParameteriv; 1114 | PFNGLVERTEXARRAYATTRIBFORMATPROC glad_glVertexArrayAttribFormat; 1115 | PFNGLREADNPIXELSPROC glad_glReadnPixels; 1116 | PFNGLRASTERPOS4SPROC glad_glRasterPos4s; 1117 | PFNGLENDTRANSFORMFEEDBACKPROC glad_glEndTransformFeedback; 1118 | PFNGLVERTEXATTRIB4USVPROC glad_glVertexAttrib4usv; 1119 | PFNGLGETUNIFORMSUBROUTINEUIVPROC glad_glGetUniformSubroutineuiv; 1120 | PFNGLMULTITEXCOORD3DVPROC glad_glMultiTexCoord3dv; 1121 | PFNGLBINDVERTEXBUFFERPROC glad_glBindVertexBuffer; 1122 | PFNGLCOLOR4SVPROC glad_glColor4sv; 1123 | PFNGLDEBUGMESSAGEINSERTPROC glad_glDebugMessageInsert; 1124 | PFNGLCREATESAMPLERSPROC glad_glCreateSamplers; 1125 | PFNGLPOPCLIENTATTRIBPROC glad_glPopClientAttrib; 1126 | PFNGLCLEARBUFFERDATAPROC glad_glClearBufferData; 1127 | PFNGLBEGINTRANSFORMFEEDBACKPROC glad_glBeginTransformFeedback; 1128 | PFNGLFOGFPROC glad_glFogf; 1129 | PFNGLVERTEXATTRIBI1IVPROC glad_glVertexAttribI1iv; 1130 | PFNGLPROGRAMBINARYPROC glad_glProgramBinary; 1131 | PFNGLISSAMPLERPROC glad_glIsSampler; 1132 | PFNGLVERTEXP3UIPROC glad_glVertexP3ui; 1133 | PFNGLVERTEXATTRIBDIVISORPROC glad_glVertexAttribDivisor; 1134 | PFNGLBINDSAMPLERSPROC glad_glBindSamplers; 1135 | PFNGLCOLOR3IVPROC glad_glColor3iv; 1136 | PFNGLCOMPRESSEDTEXIMAGE1DPROC glad_glCompressedTexImage1D; 1137 | PFNGLDELETETRANSFORMFEEDBACKSPROC glad_glDeleteTransformFeedbacks; 1138 | PFNGLCOPYTEXSUBIMAGE1DPROC glad_glCopyTexSubImage1D; 1139 | PFNGLTEXCOORD1IPROC glad_glTexCoord1i; 1140 | PFNGLCHECKFRAMEBUFFERSTATUSPROC glad_glCheckFramebufferStatus; 1141 | PFNGLTEXCOORD1DPROC glad_glTexCoord1d; 1142 | PFNGLTEXCOORD1FPROC glad_glTexCoord1f; 1143 | PFNGLTEXTURESTORAGE3DPROC glad_glTextureStorage3D; 1144 | PFNGLENDCONDITIONALRENDERPROC glad_glEndConditionalRender; 1145 | PFNGLENABLECLIENTSTATEPROC glad_glEnableClientState; 1146 | PFNGLBINDATTRIBLOCATIONPROC glad_glBindAttribLocation; 1147 | PFNGLUNIFORMMATRIX4X2FVPROC glad_glUniformMatrix4x2fv; 1148 | PFNGLUNIFORMMATRIX2DVPROC glad_glUniformMatrix2dv; 1149 | PFNGLBLENDFUNCIPROC glad_glBlendFunci; 1150 | PFNGLMULTITEXCOORD2SVPROC glad_glMultiTexCoord2sv; 1151 | PFNGLVERTEXATTRIB1DVPROC glad_glVertexAttrib1dv; 1152 | PFNGLDRAWRANGEELEMENTSPROC glad_glDrawRangeElements; 1153 | PFNGLTEXCOORD1SPROC glad_glTexCoord1s; 1154 | PFNGLBINDBUFFERBASEPROC glad_glBindBufferBase; 1155 | PFNGLBUFFERSUBDATAPROC glad_glBufferSubData; 1156 | PFNGLVERTEXATTRIB4IVPROC glad_glVertexAttrib4iv; 1157 | PFNGLGENLISTSPROC glad_glGenLists; 1158 | PFNGLCOLOR3BVPROC glad_glColor3bv; 1159 | PFNGLMAPBUFFERRANGEPROC glad_glMapBufferRange; 1160 | PFNGLFRAMEBUFFERTEXTUREPROC glad_glFramebufferTexture; 1161 | PFNGLBLENDFUNCSEPARATEIPROC glad_glBlendFuncSeparatei; 1162 | PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC glad_glProgramUniformMatrix4x2fv; 1163 | PFNGLVERTEXATTRIBL1DPROC glad_glVertexAttribL1d; 1164 | PFNGLGETTEXGENDVPROC glad_glGetTexGendv; 1165 | PFNGLCLEARNAMEDFRAMEBUFFERIVPROC glad_glClearNamedFramebufferiv; 1166 | PFNGLMULTIDRAWARRAYSPROC glad_glMultiDrawArrays; 1167 | PFNGLENDLISTPROC glad_glEndList; 1168 | PFNGLSCISSORINDEXEDPROC glad_glScissorIndexed; 1169 | PFNGLVERTEXP4UIVPROC glad_glVertexP4uiv; 1170 | PFNGLUNIFORM2UIPROC glad_glUniform2ui; 1171 | PFNGLVERTEXATTRIBI2IVPROC glad_glVertexAttribI2iv; 1172 | PFNGLGETNMAPDVPROC glad_glGetnMapdv; 1173 | PFNGLCOLOR3USVPROC glad_glColor3usv; 1174 | PFNGLWINDOWPOS2FVPROC glad_glWindowPos2fv; 1175 | PFNGLTEXTUREVIEWPROC glad_glTextureView; 1176 | PFNGLDISABLEIPROC glad_glDisablei; 1177 | PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC glad_glProgramUniformMatrix2x4fv; 1178 | PFNGLCREATERENDERBUFFERSPROC glad_glCreateRenderbuffers; 1179 | PFNGLINDEXMASKPROC glad_glIndexMask; 1180 | PFNGLPUSHCLIENTATTRIBPROC glad_glPushClientAttrib; 1181 | PFNGLSHADERSOURCEPROC glad_glShaderSource; 1182 | PFNGLGETNSEPARABLEFILTERPROC glad_glGetnSeparableFilter; 1183 | PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC glad_glGetActiveUniformBlockName; 1184 | PFNGLVERTEXATTRIBI3UIVPROC glad_glVertexAttribI3uiv; 1185 | PFNGLRELEASESHADERCOMPILERPROC glad_glReleaseShaderCompiler; 1186 | PFNGLVERTEXATTRIBIFORMATPROC glad_glVertexAttribIFormat; 1187 | PFNGLCREATEFRAMEBUFFERSPROC glad_glCreateFramebuffers; 1188 | PFNGLCLEARACCUMPROC glad_glClearAccum; 1189 | PFNGLGETSYNCIVPROC glad_glGetSynciv; 1190 | PFNGLPROGRAMUNIFORM2UIVPROC glad_glProgramUniform2uiv; 1191 | PFNGLGETNPIXELMAPFVPROC glad_glGetnPixelMapfv; 1192 | PFNGLTEXCOORDP2UIVPROC glad_glTexCoordP2uiv; 1193 | PFNGLPATCHPARAMETERIPROC glad_glPatchParameteri; 1194 | PFNGLPROGRAMUNIFORM2IPROC glad_glProgramUniform2i; 1195 | PFNGLUNIFORM2FPROC glad_glUniform2f; 1196 | PFNGLGETNAMEDBUFFERPARAMETERI64VPROC glad_glGetNamedBufferParameteri64v; 1197 | PFNGLBEGINQUERYPROC glad_glBeginQuery; 1198 | PFNGLGETUNIFORMBLOCKINDEXPROC glad_glGetUniformBlockIndex; 1199 | PFNGLBINDBUFFERPROC glad_glBindBuffer; 1200 | PFNGLMAP2DPROC glad_glMap2d; 1201 | PFNGLMAP2FPROC glad_glMap2f; 1202 | PFNGLTEXSTORAGE2DMULTISAMPLEPROC glad_glTexStorage2DMultisample; 1203 | PFNGLUNIFORM2DPROC glad_glUniform2d; 1204 | PFNGLVERTEX4DPROC glad_glVertex4d; 1205 | PFNGLUNIFORMMATRIX2FVPROC glad_glUniformMatrix2fv; 1206 | PFNGLTEXCOORD1SVPROC glad_glTexCoord1sv; 1207 | PFNGLBUFFERDATAPROC glad_glBufferData; 1208 | PFNGLEVALPOINT1PROC glad_glEvalPoint1; 1209 | PFNGLGETTEXPARAMETERIIVPROC glad_glGetTexParameterIiv; 1210 | PFNGLGETQUERYBUFFEROBJECTUI64VPROC glad_glGetQueryBufferObjectui64v; 1211 | PFNGLTEXCOORD1DVPROC glad_glTexCoord1dv; 1212 | PFNGLTEXCOORDP1UIPROC glad_glTexCoordP1ui; 1213 | PFNGLGETERRORPROC glad_glGetError; 1214 | PFNGLGETTEXENVIVPROC glad_glGetTexEnviv; 1215 | PFNGLGETPROGRAMIVPROC glad_glGetProgramiv; 1216 | PFNGLVERTEXATTRIBP2UIPROC glad_glVertexAttribP2ui; 1217 | PFNGLGETFLOATVPROC glad_glGetFloatv; 1218 | PFNGLTEXSUBIMAGE1DPROC glad_glTexSubImage1D; 1219 | PFNGLMULTITEXCOORD2FVPROC glad_glMultiTexCoord2fv; 1220 | PFNGLUNIFORMMATRIX2X4DVPROC glad_glUniformMatrix2x4dv; 1221 | PFNGLVERTEXATTRIB2FVPROC glad_glVertexAttrib2fv; 1222 | PFNGLEVALCOORD1DPROC glad_glEvalCoord1d; 1223 | PFNGLGETTEXLEVELPARAMETERFVPROC glad_glGetTexLevelParameterfv; 1224 | PFNGLEVALCOORD1FPROC glad_glEvalCoord1f; 1225 | PFNGLPIXELMAPFVPROC glad_glPixelMapfv; 1226 | PFNGLVERTEXATTRIBP3UIVPROC glad_glVertexAttribP3uiv; 1227 | PFNGLGETPIXELMAPUSVPROC glad_glGetPixelMapusv; 1228 | PFNGLSECONDARYCOLORP3UIVPROC glad_glSecondaryColorP3uiv; 1229 | PFNGLGETINTEGERVPROC glad_glGetIntegerv; 1230 | PFNGLACCUMPROC glad_glAccum; 1231 | PFNGLGETVERTEXARRAYINDEXED64IVPROC glad_glGetVertexArrayIndexed64iv; 1232 | PFNGLGETBUFFERPOINTERVPROC glad_glGetBufferPointerv; 1233 | PFNGLGETVERTEXATTRIBIIVPROC glad_glGetVertexAttribIiv; 1234 | PFNGLRASTERPOS4DVPROC glad_glRasterPos4dv; 1235 | PFNGLPROGRAMUNIFORM4FVPROC glad_glProgramUniform4fv; 1236 | PFNGLTEXCOORD2IVPROC glad_glTexCoord2iv; 1237 | PFNGLTEXTUREBARRIERPROC glad_glTextureBarrier; 1238 | PFNGLISQUERYPROC glad_glIsQuery; 1239 | PFNGLPROGRAMUNIFORM2UIPROC glad_glProgramUniform2ui; 1240 | PFNGLPROGRAMUNIFORM4UIPROC glad_glProgramUniform4ui; 1241 | PFNGLVERTEXATTRIB4SVPROC glad_glVertexAttrib4sv; 1242 | PFNGLWINDOWPOS3DVPROC glad_glWindowPos3dv; 1243 | PFNGLTEXIMAGE2DPROC glad_glTexImage2D; 1244 | PFNGLSTENCILMASKPROC glad_glStencilMask; 1245 | PFNGLDRAWPIXELSPROC glad_glDrawPixels; 1246 | PFNGLMULTMATRIXDPROC glad_glMultMatrixd; 1247 | PFNGLMULTMATRIXFPROC glad_glMultMatrixf; 1248 | PFNGLISTEXTUREPROC glad_glIsTexture; 1249 | PFNGLGETMATERIALIVPROC glad_glGetMaterialiv; 1250 | PFNGLNAMEDBUFFERDATAPROC glad_glNamedBufferData; 1251 | PFNGLUNIFORM1FVPROC glad_glUniform1fv; 1252 | PFNGLLOADMATRIXFPROC glad_glLoadMatrixf; 1253 | PFNGLTEXSTORAGE2DPROC glad_glTexStorage2D; 1254 | PFNGLLOADMATRIXDPROC glad_glLoadMatrixd; 1255 | PFNGLCLEARNAMEDBUFFERSUBDATAPROC glad_glClearNamedBufferSubData; 1256 | PFNGLMAPNAMEDBUFFERRANGEPROC glad_glMapNamedBufferRange; 1257 | PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC glad_glNamedFramebufferTextureLayer; 1258 | PFNGLTEXPARAMETERFVPROC glad_glTexParameterfv; 1259 | PFNGLUNIFORMMATRIX3FVPROC glad_glUniformMatrix3fv; 1260 | PFNGLVERTEX4FPROC glad_glVertex4f; 1261 | PFNGLRECTSVPROC glad_glRectsv; 1262 | PFNGLCOLOR4USVPROC glad_glColor4usv; 1263 | PFNGLUNIFORM3DVPROC glad_glUniform3dv; 1264 | PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC glad_glProgramUniformMatrix4x3fv; 1265 | PFNGLPOLYGONSTIPPLEPROC glad_glPolygonStipple; 1266 | PFNGLBINDBUFFERSBASEPROC glad_glBindBuffersBase; 1267 | PFNGLINTERLEAVEDARRAYSPROC glad_glInterleavedArrays; 1268 | PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC glad_glGetSubroutineUniformLocation; 1269 | PFNGLNORMAL3IPROC glad_glNormal3i; 1270 | PFNGLNORMAL3FPROC glad_glNormal3f; 1271 | PFNGLNORMAL3DPROC glad_glNormal3d; 1272 | PFNGLNORMAL3BPROC glad_glNormal3b; 1273 | PFNGLGETFRAMEBUFFERPARAMETERIVPROC glad_glGetFramebufferParameteriv; 1274 | PFNGLPIXELMAPUSVPROC glad_glPixelMapusv; 1275 | PFNGLGETTEXGENIVPROC glad_glGetTexGeniv; 1276 | PFNGLARRAYELEMENTPROC glad_glArrayElement; 1277 | PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC glad_glGetCompressedTextureSubImage; 1278 | PFNGLCOPYBUFFERSUBDATAPROC glad_glCopyBufferSubData; 1279 | PFNGLVERTEXATTRIBI1UIVPROC glad_glVertexAttribI1uiv; 1280 | PFNGLVERTEXATTRIB2DPROC glad_glVertexAttrib2d; 1281 | PFNGLBINDTRANSFORMFEEDBACKPROC glad_glBindTransformFeedback; 1282 | PFNGLVERTEXATTRIB2FPROC glad_glVertexAttrib2f; 1283 | PFNGLVERTEXATTRIB3DVPROC glad_glVertexAttrib3dv; 1284 | PFNGLGETQUERYOBJECTUI64VPROC glad_glGetQueryObjectui64v; 1285 | PFNGLDEPTHMASKPROC glad_glDepthMask; 1286 | PFNGLVERTEXATTRIB2SPROC glad_glVertexAttrib2s; 1287 | PFNGLCOLOR3FVPROC glad_glColor3fv; 1288 | PFNGLTEXIMAGE3DMULTISAMPLEPROC glad_glTexImage3DMultisample; 1289 | PFNGLPROGRAMUNIFORM1FVPROC glad_glProgramUniform1fv; 1290 | PFNGLUNIFORMMATRIX4FVPROC glad_glUniformMatrix4fv; 1291 | PFNGLUNIFORM4FVPROC glad_glUniform4fv; 1292 | PFNGLGETACTIVEUNIFORMPROC glad_glGetActiveUniform; 1293 | PFNGLCOLORPOINTERPROC glad_glColorPointer; 1294 | PFNGLFRONTFACEPROC glad_glFrontFace; 1295 | PFNGLTEXBUFFERRANGEPROC glad_glTexBufferRange; 1296 | PFNGLCREATEBUFFERSPROC glad_glCreateBuffers; 1297 | PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC glad_glNamedFramebufferParameteri; 1298 | PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC glad_glDrawArraysInstancedBaseInstance; 1299 | PFNGLGETBOOLEANI_VPROC glad_glGetBooleani_v; 1300 | PFNGLVERTEXATTRIBL3DPROC glad_glVertexAttribL3d; 1301 | PFNGLDELETEPROGRAMPIPELINESPROC glad_glDeleteProgramPipelines; 1302 | PFNGLCLEARBUFFERUIVPROC glad_glClearBufferuiv; 1303 | PFNGLCLIPCONTROLPROC glad_glClipControl; 1304 | PFNGLGETPROGRAMRESOURCEIVPROC glad_glGetProgramResourceiv; 1305 | static void load_GL_VERSION_1_0(GLADloadproc load) { 1306 | if(!GLAD_GL_VERSION_1_0) return; 1307 | glad_glCullFace = (PFNGLCULLFACEPROC)load("glCullFace"); 1308 | glad_glFrontFace = (PFNGLFRONTFACEPROC)load("glFrontFace"); 1309 | glad_glHint = (PFNGLHINTPROC)load("glHint"); 1310 | glad_glLineWidth = (PFNGLLINEWIDTHPROC)load("glLineWidth"); 1311 | glad_glPointSize = (PFNGLPOINTSIZEPROC)load("glPointSize"); 1312 | glad_glPolygonMode = (PFNGLPOLYGONMODEPROC)load("glPolygonMode"); 1313 | glad_glScissor = (PFNGLSCISSORPROC)load("glScissor"); 1314 | glad_glTexParameterf = (PFNGLTEXPARAMETERFPROC)load("glTexParameterf"); 1315 | glad_glTexParameterfv = (PFNGLTEXPARAMETERFVPROC)load("glTexParameterfv"); 1316 | glad_glTexParameteri = (PFNGLTEXPARAMETERIPROC)load("glTexParameteri"); 1317 | glad_glTexParameteriv = (PFNGLTEXPARAMETERIVPROC)load("glTexParameteriv"); 1318 | glad_glTexImage1D = (PFNGLTEXIMAGE1DPROC)load("glTexImage1D"); 1319 | glad_glTexImage2D = (PFNGLTEXIMAGE2DPROC)load("glTexImage2D"); 1320 | glad_glDrawBuffer = (PFNGLDRAWBUFFERPROC)load("glDrawBuffer"); 1321 | glad_glClear = (PFNGLCLEARPROC)load("glClear"); 1322 | glad_glClearColor = (PFNGLCLEARCOLORPROC)load("glClearColor"); 1323 | glad_glClearStencil = (PFNGLCLEARSTENCILPROC)load("glClearStencil"); 1324 | glad_glClearDepth = (PFNGLCLEARDEPTHPROC)load("glClearDepth"); 1325 | glad_glStencilMask = (PFNGLSTENCILMASKPROC)load("glStencilMask"); 1326 | glad_glColorMask = (PFNGLCOLORMASKPROC)load("glColorMask"); 1327 | glad_glDepthMask = (PFNGLDEPTHMASKPROC)load("glDepthMask"); 1328 | glad_glDisable = (PFNGLDISABLEPROC)load("glDisable"); 1329 | glad_glEnable = (PFNGLENABLEPROC)load("glEnable"); 1330 | glad_glFinish = (PFNGLFINISHPROC)load("glFinish"); 1331 | glad_glFlush = (PFNGLFLUSHPROC)load("glFlush"); 1332 | glad_glBlendFunc = (PFNGLBLENDFUNCPROC)load("glBlendFunc"); 1333 | glad_glLogicOp = (PFNGLLOGICOPPROC)load("glLogicOp"); 1334 | glad_glStencilFunc = (PFNGLSTENCILFUNCPROC)load("glStencilFunc"); 1335 | glad_glStencilOp = (PFNGLSTENCILOPPROC)load("glStencilOp"); 1336 | glad_glDepthFunc = (PFNGLDEPTHFUNCPROC)load("glDepthFunc"); 1337 | glad_glPixelStoref = (PFNGLPIXELSTOREFPROC)load("glPixelStoref"); 1338 | glad_glPixelStorei = (PFNGLPIXELSTOREIPROC)load("glPixelStorei"); 1339 | glad_glReadBuffer = (PFNGLREADBUFFERPROC)load("glReadBuffer"); 1340 | glad_glReadPixels = (PFNGLREADPIXELSPROC)load("glReadPixels"); 1341 | glad_glGetBooleanv = (PFNGLGETBOOLEANVPROC)load("glGetBooleanv"); 1342 | glad_glGetDoublev = (PFNGLGETDOUBLEVPROC)load("glGetDoublev"); 1343 | glad_glGetError = (PFNGLGETERRORPROC)load("glGetError"); 1344 | glad_glGetFloatv = (PFNGLGETFLOATVPROC)load("glGetFloatv"); 1345 | glad_glGetIntegerv = (PFNGLGETINTEGERVPROC)load("glGetIntegerv"); 1346 | glad_glGetString = (PFNGLGETSTRINGPROC)load("glGetString"); 1347 | glad_glGetTexImage = (PFNGLGETTEXIMAGEPROC)load("glGetTexImage"); 1348 | glad_glGetTexParameterfv = (PFNGLGETTEXPARAMETERFVPROC)load("glGetTexParameterfv"); 1349 | glad_glGetTexParameteriv = (PFNGLGETTEXPARAMETERIVPROC)load("glGetTexParameteriv"); 1350 | glad_glGetTexLevelParameterfv = (PFNGLGETTEXLEVELPARAMETERFVPROC)load("glGetTexLevelParameterfv"); 1351 | glad_glGetTexLevelParameteriv = (PFNGLGETTEXLEVELPARAMETERIVPROC)load("glGetTexLevelParameteriv"); 1352 | glad_glIsEnabled = (PFNGLISENABLEDPROC)load("glIsEnabled"); 1353 | glad_glDepthRange = (PFNGLDEPTHRANGEPROC)load("glDepthRange"); 1354 | glad_glViewport = (PFNGLVIEWPORTPROC)load("glViewport"); 1355 | glad_glNewList = (PFNGLNEWLISTPROC)load("glNewList"); 1356 | glad_glEndList = (PFNGLENDLISTPROC)load("glEndList"); 1357 | glad_glCallList = (PFNGLCALLLISTPROC)load("glCallList"); 1358 | glad_glCallLists = (PFNGLCALLLISTSPROC)load("glCallLists"); 1359 | glad_glDeleteLists = (PFNGLDELETELISTSPROC)load("glDeleteLists"); 1360 | glad_glGenLists = (PFNGLGENLISTSPROC)load("glGenLists"); 1361 | glad_glListBase = (PFNGLLISTBASEPROC)load("glListBase"); 1362 | glad_glBegin = (PFNGLBEGINPROC)load("glBegin"); 1363 | glad_glBitmap = (PFNGLBITMAPPROC)load("glBitmap"); 1364 | glad_glColor3b = (PFNGLCOLOR3BPROC)load("glColor3b"); 1365 | glad_glColor3bv = (PFNGLCOLOR3BVPROC)load("glColor3bv"); 1366 | glad_glColor3d = (PFNGLCOLOR3DPROC)load("glColor3d"); 1367 | glad_glColor3dv = (PFNGLCOLOR3DVPROC)load("glColor3dv"); 1368 | glad_glColor3f = (PFNGLCOLOR3FPROC)load("glColor3f"); 1369 | glad_glColor3fv = (PFNGLCOLOR3FVPROC)load("glColor3fv"); 1370 | glad_glColor3i = (PFNGLCOLOR3IPROC)load("glColor3i"); 1371 | glad_glColor3iv = (PFNGLCOLOR3IVPROC)load("glColor3iv"); 1372 | glad_glColor3s = (PFNGLCOLOR3SPROC)load("glColor3s"); 1373 | glad_glColor3sv = (PFNGLCOLOR3SVPROC)load("glColor3sv"); 1374 | glad_glColor3ub = (PFNGLCOLOR3UBPROC)load("glColor3ub"); 1375 | glad_glColor3ubv = (PFNGLCOLOR3UBVPROC)load("glColor3ubv"); 1376 | glad_glColor3ui = (PFNGLCOLOR3UIPROC)load("glColor3ui"); 1377 | glad_glColor3uiv = (PFNGLCOLOR3UIVPROC)load("glColor3uiv"); 1378 | glad_glColor3us = (PFNGLCOLOR3USPROC)load("glColor3us"); 1379 | glad_glColor3usv = (PFNGLCOLOR3USVPROC)load("glColor3usv"); 1380 | glad_glColor4b = (PFNGLCOLOR4BPROC)load("glColor4b"); 1381 | glad_glColor4bv = (PFNGLCOLOR4BVPROC)load("glColor4bv"); 1382 | glad_glColor4d = (PFNGLCOLOR4DPROC)load("glColor4d"); 1383 | glad_glColor4dv = (PFNGLCOLOR4DVPROC)load("glColor4dv"); 1384 | glad_glColor4f = (PFNGLCOLOR4FPROC)load("glColor4f"); 1385 | glad_glColor4fv = (PFNGLCOLOR4FVPROC)load("glColor4fv"); 1386 | glad_glColor4i = (PFNGLCOLOR4IPROC)load("glColor4i"); 1387 | glad_glColor4iv = (PFNGLCOLOR4IVPROC)load("glColor4iv"); 1388 | glad_glColor4s = (PFNGLCOLOR4SPROC)load("glColor4s"); 1389 | glad_glColor4sv = (PFNGLCOLOR4SVPROC)load("glColor4sv"); 1390 | glad_glColor4ub = (PFNGLCOLOR4UBPROC)load("glColor4ub"); 1391 | glad_glColor4ubv = (PFNGLCOLOR4UBVPROC)load("glColor4ubv"); 1392 | glad_glColor4ui = (PFNGLCOLOR4UIPROC)load("glColor4ui"); 1393 | glad_glColor4uiv = (PFNGLCOLOR4UIVPROC)load("glColor4uiv"); 1394 | glad_glColor4us = (PFNGLCOLOR4USPROC)load("glColor4us"); 1395 | glad_glColor4usv = (PFNGLCOLOR4USVPROC)load("glColor4usv"); 1396 | glad_glEdgeFlag = (PFNGLEDGEFLAGPROC)load("glEdgeFlag"); 1397 | glad_glEdgeFlagv = (PFNGLEDGEFLAGVPROC)load("glEdgeFlagv"); 1398 | glad_glEnd = (PFNGLENDPROC)load("glEnd"); 1399 | glad_glIndexd = (PFNGLINDEXDPROC)load("glIndexd"); 1400 | glad_glIndexdv = (PFNGLINDEXDVPROC)load("glIndexdv"); 1401 | glad_glIndexf = (PFNGLINDEXFPROC)load("glIndexf"); 1402 | glad_glIndexfv = (PFNGLINDEXFVPROC)load("glIndexfv"); 1403 | glad_glIndexi = (PFNGLINDEXIPROC)load("glIndexi"); 1404 | glad_glIndexiv = (PFNGLINDEXIVPROC)load("glIndexiv"); 1405 | glad_glIndexs = (PFNGLINDEXSPROC)load("glIndexs"); 1406 | glad_glIndexsv = (PFNGLINDEXSVPROC)load("glIndexsv"); 1407 | glad_glNormal3b = (PFNGLNORMAL3BPROC)load("glNormal3b"); 1408 | glad_glNormal3bv = (PFNGLNORMAL3BVPROC)load("glNormal3bv"); 1409 | glad_glNormal3d = (PFNGLNORMAL3DPROC)load("glNormal3d"); 1410 | glad_glNormal3dv = (PFNGLNORMAL3DVPROC)load("glNormal3dv"); 1411 | glad_glNormal3f = (PFNGLNORMAL3FPROC)load("glNormal3f"); 1412 | glad_glNormal3fv = (PFNGLNORMAL3FVPROC)load("glNormal3fv"); 1413 | glad_glNormal3i = (PFNGLNORMAL3IPROC)load("glNormal3i"); 1414 | glad_glNormal3iv = (PFNGLNORMAL3IVPROC)load("glNormal3iv"); 1415 | glad_glNormal3s = (PFNGLNORMAL3SPROC)load("glNormal3s"); 1416 | glad_glNormal3sv = (PFNGLNORMAL3SVPROC)load("glNormal3sv"); 1417 | glad_glRasterPos2d = (PFNGLRASTERPOS2DPROC)load("glRasterPos2d"); 1418 | glad_glRasterPos2dv = (PFNGLRASTERPOS2DVPROC)load("glRasterPos2dv"); 1419 | glad_glRasterPos2f = (PFNGLRASTERPOS2FPROC)load("glRasterPos2f"); 1420 | glad_glRasterPos2fv = (PFNGLRASTERPOS2FVPROC)load("glRasterPos2fv"); 1421 | glad_glRasterPos2i = (PFNGLRASTERPOS2IPROC)load("glRasterPos2i"); 1422 | glad_glRasterPos2iv = (PFNGLRASTERPOS2IVPROC)load("glRasterPos2iv"); 1423 | glad_glRasterPos2s = (PFNGLRASTERPOS2SPROC)load("glRasterPos2s"); 1424 | glad_glRasterPos2sv = (PFNGLRASTERPOS2SVPROC)load("glRasterPos2sv"); 1425 | glad_glRasterPos3d = (PFNGLRASTERPOS3DPROC)load("glRasterPos3d"); 1426 | glad_glRasterPos3dv = (PFNGLRASTERPOS3DVPROC)load("glRasterPos3dv"); 1427 | glad_glRasterPos3f = (PFNGLRASTERPOS3FPROC)load("glRasterPos3f"); 1428 | glad_glRasterPos3fv = (PFNGLRASTERPOS3FVPROC)load("glRasterPos3fv"); 1429 | glad_glRasterPos3i = (PFNGLRASTERPOS3IPROC)load("glRasterPos3i"); 1430 | glad_glRasterPos3iv = (PFNGLRASTERPOS3IVPROC)load("glRasterPos3iv"); 1431 | glad_glRasterPos3s = (PFNGLRASTERPOS3SPROC)load("glRasterPos3s"); 1432 | glad_glRasterPos3sv = (PFNGLRASTERPOS3SVPROC)load("glRasterPos3sv"); 1433 | glad_glRasterPos4d = (PFNGLRASTERPOS4DPROC)load("glRasterPos4d"); 1434 | glad_glRasterPos4dv = (PFNGLRASTERPOS4DVPROC)load("glRasterPos4dv"); 1435 | glad_glRasterPos4f = (PFNGLRASTERPOS4FPROC)load("glRasterPos4f"); 1436 | glad_glRasterPos4fv = (PFNGLRASTERPOS4FVPROC)load("glRasterPos4fv"); 1437 | glad_glRasterPos4i = (PFNGLRASTERPOS4IPROC)load("glRasterPos4i"); 1438 | glad_glRasterPos4iv = (PFNGLRASTERPOS4IVPROC)load("glRasterPos4iv"); 1439 | glad_glRasterPos4s = (PFNGLRASTERPOS4SPROC)load("glRasterPos4s"); 1440 | glad_glRasterPos4sv = (PFNGLRASTERPOS4SVPROC)load("glRasterPos4sv"); 1441 | glad_glRectd = (PFNGLRECTDPROC)load("glRectd"); 1442 | glad_glRectdv = (PFNGLRECTDVPROC)load("glRectdv"); 1443 | glad_glRectf = (PFNGLRECTFPROC)load("glRectf"); 1444 | glad_glRectfv = (PFNGLRECTFVPROC)load("glRectfv"); 1445 | glad_glRecti = (PFNGLRECTIPROC)load("glRecti"); 1446 | glad_glRectiv = (PFNGLRECTIVPROC)load("glRectiv"); 1447 | glad_glRects = (PFNGLRECTSPROC)load("glRects"); 1448 | glad_glRectsv = (PFNGLRECTSVPROC)load("glRectsv"); 1449 | glad_glTexCoord1d = (PFNGLTEXCOORD1DPROC)load("glTexCoord1d"); 1450 | glad_glTexCoord1dv = (PFNGLTEXCOORD1DVPROC)load("glTexCoord1dv"); 1451 | glad_glTexCoord1f = (PFNGLTEXCOORD1FPROC)load("glTexCoord1f"); 1452 | glad_glTexCoord1fv = (PFNGLTEXCOORD1FVPROC)load("glTexCoord1fv"); 1453 | glad_glTexCoord1i = (PFNGLTEXCOORD1IPROC)load("glTexCoord1i"); 1454 | glad_glTexCoord1iv = (PFNGLTEXCOORD1IVPROC)load("glTexCoord1iv"); 1455 | glad_glTexCoord1s = (PFNGLTEXCOORD1SPROC)load("glTexCoord1s"); 1456 | glad_glTexCoord1sv = (PFNGLTEXCOORD1SVPROC)load("glTexCoord1sv"); 1457 | glad_glTexCoord2d = (PFNGLTEXCOORD2DPROC)load("glTexCoord2d"); 1458 | glad_glTexCoord2dv = (PFNGLTEXCOORD2DVPROC)load("glTexCoord2dv"); 1459 | glad_glTexCoord2f = (PFNGLTEXCOORD2FPROC)load("glTexCoord2f"); 1460 | glad_glTexCoord2fv = (PFNGLTEXCOORD2FVPROC)load("glTexCoord2fv"); 1461 | glad_glTexCoord2i = (PFNGLTEXCOORD2IPROC)load("glTexCoord2i"); 1462 | glad_glTexCoord2iv = (PFNGLTEXCOORD2IVPROC)load("glTexCoord2iv"); 1463 | glad_glTexCoord2s = (PFNGLTEXCOORD2SPROC)load("glTexCoord2s"); 1464 | glad_glTexCoord2sv = (PFNGLTEXCOORD2SVPROC)load("glTexCoord2sv"); 1465 | glad_glTexCoord3d = (PFNGLTEXCOORD3DPROC)load("glTexCoord3d"); 1466 | glad_glTexCoord3dv = (PFNGLTEXCOORD3DVPROC)load("glTexCoord3dv"); 1467 | glad_glTexCoord3f = (PFNGLTEXCOORD3FPROC)load("glTexCoord3f"); 1468 | glad_glTexCoord3fv = (PFNGLTEXCOORD3FVPROC)load("glTexCoord3fv"); 1469 | glad_glTexCoord3i = (PFNGLTEXCOORD3IPROC)load("glTexCoord3i"); 1470 | glad_glTexCoord3iv = (PFNGLTEXCOORD3IVPROC)load("glTexCoord3iv"); 1471 | glad_glTexCoord3s = (PFNGLTEXCOORD3SPROC)load("glTexCoord3s"); 1472 | glad_glTexCoord3sv = (PFNGLTEXCOORD3SVPROC)load("glTexCoord3sv"); 1473 | glad_glTexCoord4d = (PFNGLTEXCOORD4DPROC)load("glTexCoord4d"); 1474 | glad_glTexCoord4dv = (PFNGLTEXCOORD4DVPROC)load("glTexCoord4dv"); 1475 | glad_glTexCoord4f = (PFNGLTEXCOORD4FPROC)load("glTexCoord4f"); 1476 | glad_glTexCoord4fv = (PFNGLTEXCOORD4FVPROC)load("glTexCoord4fv"); 1477 | glad_glTexCoord4i = (PFNGLTEXCOORD4IPROC)load("glTexCoord4i"); 1478 | glad_glTexCoord4iv = (PFNGLTEXCOORD4IVPROC)load("glTexCoord4iv"); 1479 | glad_glTexCoord4s = (PFNGLTEXCOORD4SPROC)load("glTexCoord4s"); 1480 | glad_glTexCoord4sv = (PFNGLTEXCOORD4SVPROC)load("glTexCoord4sv"); 1481 | glad_glVertex2d = (PFNGLVERTEX2DPROC)load("glVertex2d"); 1482 | glad_glVertex2dv = (PFNGLVERTEX2DVPROC)load("glVertex2dv"); 1483 | glad_glVertex2f = (PFNGLVERTEX2FPROC)load("glVertex2f"); 1484 | glad_glVertex2fv = (PFNGLVERTEX2FVPROC)load("glVertex2fv"); 1485 | glad_glVertex2i = (PFNGLVERTEX2IPROC)load("glVertex2i"); 1486 | glad_glVertex2iv = (PFNGLVERTEX2IVPROC)load("glVertex2iv"); 1487 | glad_glVertex2s = (PFNGLVERTEX2SPROC)load("glVertex2s"); 1488 | glad_glVertex2sv = (PFNGLVERTEX2SVPROC)load("glVertex2sv"); 1489 | glad_glVertex3d = (PFNGLVERTEX3DPROC)load("glVertex3d"); 1490 | glad_glVertex3dv = (PFNGLVERTEX3DVPROC)load("glVertex3dv"); 1491 | glad_glVertex3f = (PFNGLVERTEX3FPROC)load("glVertex3f"); 1492 | glad_glVertex3fv = (PFNGLVERTEX3FVPROC)load("glVertex3fv"); 1493 | glad_glVertex3i = (PFNGLVERTEX3IPROC)load("glVertex3i"); 1494 | glad_glVertex3iv = (PFNGLVERTEX3IVPROC)load("glVertex3iv"); 1495 | glad_glVertex3s = (PFNGLVERTEX3SPROC)load("glVertex3s"); 1496 | glad_glVertex3sv = (PFNGLVERTEX3SVPROC)load("glVertex3sv"); 1497 | glad_glVertex4d = (PFNGLVERTEX4DPROC)load("glVertex4d"); 1498 | glad_glVertex4dv = (PFNGLVERTEX4DVPROC)load("glVertex4dv"); 1499 | glad_glVertex4f = (PFNGLVERTEX4FPROC)load("glVertex4f"); 1500 | glad_glVertex4fv = (PFNGLVERTEX4FVPROC)load("glVertex4fv"); 1501 | glad_glVertex4i = (PFNGLVERTEX4IPROC)load("glVertex4i"); 1502 | glad_glVertex4iv = (PFNGLVERTEX4IVPROC)load("glVertex4iv"); 1503 | glad_glVertex4s = (PFNGLVERTEX4SPROC)load("glVertex4s"); 1504 | glad_glVertex4sv = (PFNGLVERTEX4SVPROC)load("glVertex4sv"); 1505 | glad_glClipPlane = (PFNGLCLIPPLANEPROC)load("glClipPlane"); 1506 | glad_glColorMaterial = (PFNGLCOLORMATERIALPROC)load("glColorMaterial"); 1507 | glad_glFogf = (PFNGLFOGFPROC)load("glFogf"); 1508 | glad_glFogfv = (PFNGLFOGFVPROC)load("glFogfv"); 1509 | glad_glFogi = (PFNGLFOGIPROC)load("glFogi"); 1510 | glad_glFogiv = (PFNGLFOGIVPROC)load("glFogiv"); 1511 | glad_glLightf = (PFNGLLIGHTFPROC)load("glLightf"); 1512 | glad_glLightfv = (PFNGLLIGHTFVPROC)load("glLightfv"); 1513 | glad_glLighti = (PFNGLLIGHTIPROC)load("glLighti"); 1514 | glad_glLightiv = (PFNGLLIGHTIVPROC)load("glLightiv"); 1515 | glad_glLightModelf = (PFNGLLIGHTMODELFPROC)load("glLightModelf"); 1516 | glad_glLightModelfv = (PFNGLLIGHTMODELFVPROC)load("glLightModelfv"); 1517 | glad_glLightModeli = (PFNGLLIGHTMODELIPROC)load("glLightModeli"); 1518 | glad_glLightModeliv = (PFNGLLIGHTMODELIVPROC)load("glLightModeliv"); 1519 | glad_glLineStipple = (PFNGLLINESTIPPLEPROC)load("glLineStipple"); 1520 | glad_glMaterialf = (PFNGLMATERIALFPROC)load("glMaterialf"); 1521 | glad_glMaterialfv = (PFNGLMATERIALFVPROC)load("glMaterialfv"); 1522 | glad_glMateriali = (PFNGLMATERIALIPROC)load("glMateriali"); 1523 | glad_glMaterialiv = (PFNGLMATERIALIVPROC)load("glMaterialiv"); 1524 | glad_glPolygonStipple = (PFNGLPOLYGONSTIPPLEPROC)load("glPolygonStipple"); 1525 | glad_glShadeModel = (PFNGLSHADEMODELPROC)load("glShadeModel"); 1526 | glad_glTexEnvf = (PFNGLTEXENVFPROC)load("glTexEnvf"); 1527 | glad_glTexEnvfv = (PFNGLTEXENVFVPROC)load("glTexEnvfv"); 1528 | glad_glTexEnvi = (PFNGLTEXENVIPROC)load("glTexEnvi"); 1529 | glad_glTexEnviv = (PFNGLTEXENVIVPROC)load("glTexEnviv"); 1530 | glad_glTexGend = (PFNGLTEXGENDPROC)load("glTexGend"); 1531 | glad_glTexGendv = (PFNGLTEXGENDVPROC)load("glTexGendv"); 1532 | glad_glTexGenf = (PFNGLTEXGENFPROC)load("glTexGenf"); 1533 | glad_glTexGenfv = (PFNGLTEXGENFVPROC)load("glTexGenfv"); 1534 | glad_glTexGeni = (PFNGLTEXGENIPROC)load("glTexGeni"); 1535 | glad_glTexGeniv = (PFNGLTEXGENIVPROC)load("glTexGeniv"); 1536 | glad_glFeedbackBuffer = (PFNGLFEEDBACKBUFFERPROC)load("glFeedbackBuffer"); 1537 | glad_glSelectBuffer = (PFNGLSELECTBUFFERPROC)load("glSelectBuffer"); 1538 | glad_glRenderMode = (PFNGLRENDERMODEPROC)load("glRenderMode"); 1539 | glad_glInitNames = (PFNGLINITNAMESPROC)load("glInitNames"); 1540 | glad_glLoadName = (PFNGLLOADNAMEPROC)load("glLoadName"); 1541 | glad_glPassThrough = (PFNGLPASSTHROUGHPROC)load("glPassThrough"); 1542 | glad_glPopName = (PFNGLPOPNAMEPROC)load("glPopName"); 1543 | glad_glPushName = (PFNGLPUSHNAMEPROC)load("glPushName"); 1544 | glad_glClearAccum = (PFNGLCLEARACCUMPROC)load("glClearAccum"); 1545 | glad_glClearIndex = (PFNGLCLEARINDEXPROC)load("glClearIndex"); 1546 | glad_glIndexMask = (PFNGLINDEXMASKPROC)load("glIndexMask"); 1547 | glad_glAccum = (PFNGLACCUMPROC)load("glAccum"); 1548 | glad_glPopAttrib = (PFNGLPOPATTRIBPROC)load("glPopAttrib"); 1549 | glad_glPushAttrib = (PFNGLPUSHATTRIBPROC)load("glPushAttrib"); 1550 | glad_glMap1d = (PFNGLMAP1DPROC)load("glMap1d"); 1551 | glad_glMap1f = (PFNGLMAP1FPROC)load("glMap1f"); 1552 | glad_glMap2d = (PFNGLMAP2DPROC)load("glMap2d"); 1553 | glad_glMap2f = (PFNGLMAP2FPROC)load("glMap2f"); 1554 | glad_glMapGrid1d = (PFNGLMAPGRID1DPROC)load("glMapGrid1d"); 1555 | glad_glMapGrid1f = (PFNGLMAPGRID1FPROC)load("glMapGrid1f"); 1556 | glad_glMapGrid2d = (PFNGLMAPGRID2DPROC)load("glMapGrid2d"); 1557 | glad_glMapGrid2f = (PFNGLMAPGRID2FPROC)load("glMapGrid2f"); 1558 | glad_glEvalCoord1d = (PFNGLEVALCOORD1DPROC)load("glEvalCoord1d"); 1559 | glad_glEvalCoord1dv = (PFNGLEVALCOORD1DVPROC)load("glEvalCoord1dv"); 1560 | glad_glEvalCoord1f = (PFNGLEVALCOORD1FPROC)load("glEvalCoord1f"); 1561 | glad_glEvalCoord1fv = (PFNGLEVALCOORD1FVPROC)load("glEvalCoord1fv"); 1562 | glad_glEvalCoord2d = (PFNGLEVALCOORD2DPROC)load("glEvalCoord2d"); 1563 | glad_glEvalCoord2dv = (PFNGLEVALCOORD2DVPROC)load("glEvalCoord2dv"); 1564 | glad_glEvalCoord2f = (PFNGLEVALCOORD2FPROC)load("glEvalCoord2f"); 1565 | glad_glEvalCoord2fv = (PFNGLEVALCOORD2FVPROC)load("glEvalCoord2fv"); 1566 | glad_glEvalMesh1 = (PFNGLEVALMESH1PROC)load("glEvalMesh1"); 1567 | glad_glEvalPoint1 = (PFNGLEVALPOINT1PROC)load("glEvalPoint1"); 1568 | glad_glEvalMesh2 = (PFNGLEVALMESH2PROC)load("glEvalMesh2"); 1569 | glad_glEvalPoint2 = (PFNGLEVALPOINT2PROC)load("glEvalPoint2"); 1570 | glad_glAlphaFunc = (PFNGLALPHAFUNCPROC)load("glAlphaFunc"); 1571 | glad_glPixelZoom = (PFNGLPIXELZOOMPROC)load("glPixelZoom"); 1572 | glad_glPixelTransferf = (PFNGLPIXELTRANSFERFPROC)load("glPixelTransferf"); 1573 | glad_glPixelTransferi = (PFNGLPIXELTRANSFERIPROC)load("glPixelTransferi"); 1574 | glad_glPixelMapfv = (PFNGLPIXELMAPFVPROC)load("glPixelMapfv"); 1575 | glad_glPixelMapuiv = (PFNGLPIXELMAPUIVPROC)load("glPixelMapuiv"); 1576 | glad_glPixelMapusv = (PFNGLPIXELMAPUSVPROC)load("glPixelMapusv"); 1577 | glad_glCopyPixels = (PFNGLCOPYPIXELSPROC)load("glCopyPixels"); 1578 | glad_glDrawPixels = (PFNGLDRAWPIXELSPROC)load("glDrawPixels"); 1579 | glad_glGetClipPlane = (PFNGLGETCLIPPLANEPROC)load("glGetClipPlane"); 1580 | glad_glGetLightfv = (PFNGLGETLIGHTFVPROC)load("glGetLightfv"); 1581 | glad_glGetLightiv = (PFNGLGETLIGHTIVPROC)load("glGetLightiv"); 1582 | glad_glGetMapdv = (PFNGLGETMAPDVPROC)load("glGetMapdv"); 1583 | glad_glGetMapfv = (PFNGLGETMAPFVPROC)load("glGetMapfv"); 1584 | glad_glGetMapiv = (PFNGLGETMAPIVPROC)load("glGetMapiv"); 1585 | glad_glGetMaterialfv = (PFNGLGETMATERIALFVPROC)load("glGetMaterialfv"); 1586 | glad_glGetMaterialiv = (PFNGLGETMATERIALIVPROC)load("glGetMaterialiv"); 1587 | glad_glGetPixelMapfv = (PFNGLGETPIXELMAPFVPROC)load("glGetPixelMapfv"); 1588 | glad_glGetPixelMapuiv = (PFNGLGETPIXELMAPUIVPROC)load("glGetPixelMapuiv"); 1589 | glad_glGetPixelMapusv = (PFNGLGETPIXELMAPUSVPROC)load("glGetPixelMapusv"); 1590 | glad_glGetPolygonStipple = (PFNGLGETPOLYGONSTIPPLEPROC)load("glGetPolygonStipple"); 1591 | glad_glGetTexEnvfv = (PFNGLGETTEXENVFVPROC)load("glGetTexEnvfv"); 1592 | glad_glGetTexEnviv = (PFNGLGETTEXENVIVPROC)load("glGetTexEnviv"); 1593 | glad_glGetTexGendv = (PFNGLGETTEXGENDVPROC)load("glGetTexGendv"); 1594 | glad_glGetTexGenfv = (PFNGLGETTEXGENFVPROC)load("glGetTexGenfv"); 1595 | glad_glGetTexGeniv = (PFNGLGETTEXGENIVPROC)load("glGetTexGeniv"); 1596 | glad_glIsList = (PFNGLISLISTPROC)load("glIsList"); 1597 | glad_glFrustum = (PFNGLFRUSTUMPROC)load("glFrustum"); 1598 | glad_glLoadIdentity = (PFNGLLOADIDENTITYPROC)load("glLoadIdentity"); 1599 | glad_glLoadMatrixf = (PFNGLLOADMATRIXFPROC)load("glLoadMatrixf"); 1600 | glad_glLoadMatrixd = (PFNGLLOADMATRIXDPROC)load("glLoadMatrixd"); 1601 | glad_glMatrixMode = (PFNGLMATRIXMODEPROC)load("glMatrixMode"); 1602 | glad_glMultMatrixf = (PFNGLMULTMATRIXFPROC)load("glMultMatrixf"); 1603 | glad_glMultMatrixd = (PFNGLMULTMATRIXDPROC)load("glMultMatrixd"); 1604 | glad_glOrtho = (PFNGLORTHOPROC)load("glOrtho"); 1605 | glad_glPopMatrix = (PFNGLPOPMATRIXPROC)load("glPopMatrix"); 1606 | glad_glPushMatrix = (PFNGLPUSHMATRIXPROC)load("glPushMatrix"); 1607 | glad_glRotated = (PFNGLROTATEDPROC)load("glRotated"); 1608 | glad_glRotatef = (PFNGLROTATEFPROC)load("glRotatef"); 1609 | glad_glScaled = (PFNGLSCALEDPROC)load("glScaled"); 1610 | glad_glScalef = (PFNGLSCALEFPROC)load("glScalef"); 1611 | glad_glTranslated = (PFNGLTRANSLATEDPROC)load("glTranslated"); 1612 | glad_glTranslatef = (PFNGLTRANSLATEFPROC)load("glTranslatef"); 1613 | } 1614 | static void load_GL_VERSION_1_1(GLADloadproc load) { 1615 | if(!GLAD_GL_VERSION_1_1) return; 1616 | glad_glDrawArrays = (PFNGLDRAWARRAYSPROC)load("glDrawArrays"); 1617 | glad_glDrawElements = (PFNGLDRAWELEMENTSPROC)load("glDrawElements"); 1618 | glad_glGetPointerv = (PFNGLGETPOINTERVPROC)load("glGetPointerv"); 1619 | glad_glPolygonOffset = (PFNGLPOLYGONOFFSETPROC)load("glPolygonOffset"); 1620 | glad_glCopyTexImage1D = (PFNGLCOPYTEXIMAGE1DPROC)load("glCopyTexImage1D"); 1621 | glad_glCopyTexImage2D = (PFNGLCOPYTEXIMAGE2DPROC)load("glCopyTexImage2D"); 1622 | glad_glCopyTexSubImage1D = (PFNGLCOPYTEXSUBIMAGE1DPROC)load("glCopyTexSubImage1D"); 1623 | glad_glCopyTexSubImage2D = (PFNGLCOPYTEXSUBIMAGE2DPROC)load("glCopyTexSubImage2D"); 1624 | glad_glTexSubImage1D = (PFNGLTEXSUBIMAGE1DPROC)load("glTexSubImage1D"); 1625 | glad_glTexSubImage2D = (PFNGLTEXSUBIMAGE2DPROC)load("glTexSubImage2D"); 1626 | glad_glBindTexture = (PFNGLBINDTEXTUREPROC)load("glBindTexture"); 1627 | glad_glDeleteTextures = (PFNGLDELETETEXTURESPROC)load("glDeleteTextures"); 1628 | glad_glGenTextures = (PFNGLGENTEXTURESPROC)load("glGenTextures"); 1629 | glad_glIsTexture = (PFNGLISTEXTUREPROC)load("glIsTexture"); 1630 | glad_glArrayElement = (PFNGLARRAYELEMENTPROC)load("glArrayElement"); 1631 | glad_glColorPointer = (PFNGLCOLORPOINTERPROC)load("glColorPointer"); 1632 | glad_glDisableClientState = (PFNGLDISABLECLIENTSTATEPROC)load("glDisableClientState"); 1633 | glad_glEdgeFlagPointer = (PFNGLEDGEFLAGPOINTERPROC)load("glEdgeFlagPointer"); 1634 | glad_glEnableClientState = (PFNGLENABLECLIENTSTATEPROC)load("glEnableClientState"); 1635 | glad_glIndexPointer = (PFNGLINDEXPOINTERPROC)load("glIndexPointer"); 1636 | glad_glInterleavedArrays = (PFNGLINTERLEAVEDARRAYSPROC)load("glInterleavedArrays"); 1637 | glad_glNormalPointer = (PFNGLNORMALPOINTERPROC)load("glNormalPointer"); 1638 | glad_glTexCoordPointer = (PFNGLTEXCOORDPOINTERPROC)load("glTexCoordPointer"); 1639 | glad_glVertexPointer = (PFNGLVERTEXPOINTERPROC)load("glVertexPointer"); 1640 | glad_glAreTexturesResident = (PFNGLARETEXTURESRESIDENTPROC)load("glAreTexturesResident"); 1641 | glad_glPrioritizeTextures = (PFNGLPRIORITIZETEXTURESPROC)load("glPrioritizeTextures"); 1642 | glad_glIndexub = (PFNGLINDEXUBPROC)load("glIndexub"); 1643 | glad_glIndexubv = (PFNGLINDEXUBVPROC)load("glIndexubv"); 1644 | glad_glPopClientAttrib = (PFNGLPOPCLIENTATTRIBPROC)load("glPopClientAttrib"); 1645 | glad_glPushClientAttrib = (PFNGLPUSHCLIENTATTRIBPROC)load("glPushClientAttrib"); 1646 | } 1647 | static void load_GL_VERSION_1_2(GLADloadproc load) { 1648 | if(!GLAD_GL_VERSION_1_2) return; 1649 | glad_glDrawRangeElements = (PFNGLDRAWRANGEELEMENTSPROC)load("glDrawRangeElements"); 1650 | glad_glTexImage3D = (PFNGLTEXIMAGE3DPROC)load("glTexImage3D"); 1651 | glad_glTexSubImage3D = (PFNGLTEXSUBIMAGE3DPROC)load("glTexSubImage3D"); 1652 | glad_glCopyTexSubImage3D = (PFNGLCOPYTEXSUBIMAGE3DPROC)load("glCopyTexSubImage3D"); 1653 | } 1654 | static void load_GL_VERSION_1_3(GLADloadproc load) { 1655 | if(!GLAD_GL_VERSION_1_3) return; 1656 | glad_glActiveTexture = (PFNGLACTIVETEXTUREPROC)load("glActiveTexture"); 1657 | glad_glSampleCoverage = (PFNGLSAMPLECOVERAGEPROC)load("glSampleCoverage"); 1658 | glad_glCompressedTexImage3D = (PFNGLCOMPRESSEDTEXIMAGE3DPROC)load("glCompressedTexImage3D"); 1659 | glad_glCompressedTexImage2D = (PFNGLCOMPRESSEDTEXIMAGE2DPROC)load("glCompressedTexImage2D"); 1660 | glad_glCompressedTexImage1D = (PFNGLCOMPRESSEDTEXIMAGE1DPROC)load("glCompressedTexImage1D"); 1661 | glad_glCompressedTexSubImage3D = (PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC)load("glCompressedTexSubImage3D"); 1662 | glad_glCompressedTexSubImage2D = (PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC)load("glCompressedTexSubImage2D"); 1663 | glad_glCompressedTexSubImage1D = (PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC)load("glCompressedTexSubImage1D"); 1664 | glad_glGetCompressedTexImage = (PFNGLGETCOMPRESSEDTEXIMAGEPROC)load("glGetCompressedTexImage"); 1665 | glad_glClientActiveTexture = (PFNGLCLIENTACTIVETEXTUREPROC)load("glClientActiveTexture"); 1666 | glad_glMultiTexCoord1d = (PFNGLMULTITEXCOORD1DPROC)load("glMultiTexCoord1d"); 1667 | glad_glMultiTexCoord1dv = (PFNGLMULTITEXCOORD1DVPROC)load("glMultiTexCoord1dv"); 1668 | glad_glMultiTexCoord1f = (PFNGLMULTITEXCOORD1FPROC)load("glMultiTexCoord1f"); 1669 | glad_glMultiTexCoord1fv = (PFNGLMULTITEXCOORD1FVPROC)load("glMultiTexCoord1fv"); 1670 | glad_glMultiTexCoord1i = (PFNGLMULTITEXCOORD1IPROC)load("glMultiTexCoord1i"); 1671 | glad_glMultiTexCoord1iv = (PFNGLMULTITEXCOORD1IVPROC)load("glMultiTexCoord1iv"); 1672 | glad_glMultiTexCoord1s = (PFNGLMULTITEXCOORD1SPROC)load("glMultiTexCoord1s"); 1673 | glad_glMultiTexCoord1sv = (PFNGLMULTITEXCOORD1SVPROC)load("glMultiTexCoord1sv"); 1674 | glad_glMultiTexCoord2d = (PFNGLMULTITEXCOORD2DPROC)load("glMultiTexCoord2d"); 1675 | glad_glMultiTexCoord2dv = (PFNGLMULTITEXCOORD2DVPROC)load("glMultiTexCoord2dv"); 1676 | glad_glMultiTexCoord2f = (PFNGLMULTITEXCOORD2FPROC)load("glMultiTexCoord2f"); 1677 | glad_glMultiTexCoord2fv = (PFNGLMULTITEXCOORD2FVPROC)load("glMultiTexCoord2fv"); 1678 | glad_glMultiTexCoord2i = (PFNGLMULTITEXCOORD2IPROC)load("glMultiTexCoord2i"); 1679 | glad_glMultiTexCoord2iv = (PFNGLMULTITEXCOORD2IVPROC)load("glMultiTexCoord2iv"); 1680 | glad_glMultiTexCoord2s = (PFNGLMULTITEXCOORD2SPROC)load("glMultiTexCoord2s"); 1681 | glad_glMultiTexCoord2sv = (PFNGLMULTITEXCOORD2SVPROC)load("glMultiTexCoord2sv"); 1682 | glad_glMultiTexCoord3d = (PFNGLMULTITEXCOORD3DPROC)load("glMultiTexCoord3d"); 1683 | glad_glMultiTexCoord3dv = (PFNGLMULTITEXCOORD3DVPROC)load("glMultiTexCoord3dv"); 1684 | glad_glMultiTexCoord3f = (PFNGLMULTITEXCOORD3FPROC)load("glMultiTexCoord3f"); 1685 | glad_glMultiTexCoord3fv = (PFNGLMULTITEXCOORD3FVPROC)load("glMultiTexCoord3fv"); 1686 | glad_glMultiTexCoord3i = (PFNGLMULTITEXCOORD3IPROC)load("glMultiTexCoord3i"); 1687 | glad_glMultiTexCoord3iv = (PFNGLMULTITEXCOORD3IVPROC)load("glMultiTexCoord3iv"); 1688 | glad_glMultiTexCoord3s = (PFNGLMULTITEXCOORD3SPROC)load("glMultiTexCoord3s"); 1689 | glad_glMultiTexCoord3sv = (PFNGLMULTITEXCOORD3SVPROC)load("glMultiTexCoord3sv"); 1690 | glad_glMultiTexCoord4d = (PFNGLMULTITEXCOORD4DPROC)load("glMultiTexCoord4d"); 1691 | glad_glMultiTexCoord4dv = (PFNGLMULTITEXCOORD4DVPROC)load("glMultiTexCoord4dv"); 1692 | glad_glMultiTexCoord4f = (PFNGLMULTITEXCOORD4FPROC)load("glMultiTexCoord4f"); 1693 | glad_glMultiTexCoord4fv = (PFNGLMULTITEXCOORD4FVPROC)load("glMultiTexCoord4fv"); 1694 | glad_glMultiTexCoord4i = (PFNGLMULTITEXCOORD4IPROC)load("glMultiTexCoord4i"); 1695 | glad_glMultiTexCoord4iv = (PFNGLMULTITEXCOORD4IVPROC)load("glMultiTexCoord4iv"); 1696 | glad_glMultiTexCoord4s = (PFNGLMULTITEXCOORD4SPROC)load("glMultiTexCoord4s"); 1697 | glad_glMultiTexCoord4sv = (PFNGLMULTITEXCOORD4SVPROC)load("glMultiTexCoord4sv"); 1698 | glad_glLoadTransposeMatrixf = (PFNGLLOADTRANSPOSEMATRIXFPROC)load("glLoadTransposeMatrixf"); 1699 | glad_glLoadTransposeMatrixd = (PFNGLLOADTRANSPOSEMATRIXDPROC)load("glLoadTransposeMatrixd"); 1700 | glad_glMultTransposeMatrixf = (PFNGLMULTTRANSPOSEMATRIXFPROC)load("glMultTransposeMatrixf"); 1701 | glad_glMultTransposeMatrixd = (PFNGLMULTTRANSPOSEMATRIXDPROC)load("glMultTransposeMatrixd"); 1702 | } 1703 | static void load_GL_VERSION_1_4(GLADloadproc load) { 1704 | if(!GLAD_GL_VERSION_1_4) return; 1705 | glad_glBlendFuncSeparate = (PFNGLBLENDFUNCSEPARATEPROC)load("glBlendFuncSeparate"); 1706 | glad_glMultiDrawArrays = (PFNGLMULTIDRAWARRAYSPROC)load("glMultiDrawArrays"); 1707 | glad_glMultiDrawElements = (PFNGLMULTIDRAWELEMENTSPROC)load("glMultiDrawElements"); 1708 | glad_glPointParameterf = (PFNGLPOINTPARAMETERFPROC)load("glPointParameterf"); 1709 | glad_glPointParameterfv = (PFNGLPOINTPARAMETERFVPROC)load("glPointParameterfv"); 1710 | glad_glPointParameteri = (PFNGLPOINTPARAMETERIPROC)load("glPointParameteri"); 1711 | glad_glPointParameteriv = (PFNGLPOINTPARAMETERIVPROC)load("glPointParameteriv"); 1712 | glad_glFogCoordf = (PFNGLFOGCOORDFPROC)load("glFogCoordf"); 1713 | glad_glFogCoordfv = (PFNGLFOGCOORDFVPROC)load("glFogCoordfv"); 1714 | glad_glFogCoordd = (PFNGLFOGCOORDDPROC)load("glFogCoordd"); 1715 | glad_glFogCoorddv = (PFNGLFOGCOORDDVPROC)load("glFogCoorddv"); 1716 | glad_glFogCoordPointer = (PFNGLFOGCOORDPOINTERPROC)load("glFogCoordPointer"); 1717 | glad_glSecondaryColor3b = (PFNGLSECONDARYCOLOR3BPROC)load("glSecondaryColor3b"); 1718 | glad_glSecondaryColor3bv = (PFNGLSECONDARYCOLOR3BVPROC)load("glSecondaryColor3bv"); 1719 | glad_glSecondaryColor3d = (PFNGLSECONDARYCOLOR3DPROC)load("glSecondaryColor3d"); 1720 | glad_glSecondaryColor3dv = (PFNGLSECONDARYCOLOR3DVPROC)load("glSecondaryColor3dv"); 1721 | glad_glSecondaryColor3f = (PFNGLSECONDARYCOLOR3FPROC)load("glSecondaryColor3f"); 1722 | glad_glSecondaryColor3fv = (PFNGLSECONDARYCOLOR3FVPROC)load("glSecondaryColor3fv"); 1723 | glad_glSecondaryColor3i = (PFNGLSECONDARYCOLOR3IPROC)load("glSecondaryColor3i"); 1724 | glad_glSecondaryColor3iv = (PFNGLSECONDARYCOLOR3IVPROC)load("glSecondaryColor3iv"); 1725 | glad_glSecondaryColor3s = (PFNGLSECONDARYCOLOR3SPROC)load("glSecondaryColor3s"); 1726 | glad_glSecondaryColor3sv = (PFNGLSECONDARYCOLOR3SVPROC)load("glSecondaryColor3sv"); 1727 | glad_glSecondaryColor3ub = (PFNGLSECONDARYCOLOR3UBPROC)load("glSecondaryColor3ub"); 1728 | glad_glSecondaryColor3ubv = (PFNGLSECONDARYCOLOR3UBVPROC)load("glSecondaryColor3ubv"); 1729 | glad_glSecondaryColor3ui = (PFNGLSECONDARYCOLOR3UIPROC)load("glSecondaryColor3ui"); 1730 | glad_glSecondaryColor3uiv = (PFNGLSECONDARYCOLOR3UIVPROC)load("glSecondaryColor3uiv"); 1731 | glad_glSecondaryColor3us = (PFNGLSECONDARYCOLOR3USPROC)load("glSecondaryColor3us"); 1732 | glad_glSecondaryColor3usv = (PFNGLSECONDARYCOLOR3USVPROC)load("glSecondaryColor3usv"); 1733 | glad_glSecondaryColorPointer = (PFNGLSECONDARYCOLORPOINTERPROC)load("glSecondaryColorPointer"); 1734 | glad_glWindowPos2d = (PFNGLWINDOWPOS2DPROC)load("glWindowPos2d"); 1735 | glad_glWindowPos2dv = (PFNGLWINDOWPOS2DVPROC)load("glWindowPos2dv"); 1736 | glad_glWindowPos2f = (PFNGLWINDOWPOS2FPROC)load("glWindowPos2f"); 1737 | glad_glWindowPos2fv = (PFNGLWINDOWPOS2FVPROC)load("glWindowPos2fv"); 1738 | glad_glWindowPos2i = (PFNGLWINDOWPOS2IPROC)load("glWindowPos2i"); 1739 | glad_glWindowPos2iv = (PFNGLWINDOWPOS2IVPROC)load("glWindowPos2iv"); 1740 | glad_glWindowPos2s = (PFNGLWINDOWPOS2SPROC)load("glWindowPos2s"); 1741 | glad_glWindowPos2sv = (PFNGLWINDOWPOS2SVPROC)load("glWindowPos2sv"); 1742 | glad_glWindowPos3d = (PFNGLWINDOWPOS3DPROC)load("glWindowPos3d"); 1743 | glad_glWindowPos3dv = (PFNGLWINDOWPOS3DVPROC)load("glWindowPos3dv"); 1744 | glad_glWindowPos3f = (PFNGLWINDOWPOS3FPROC)load("glWindowPos3f"); 1745 | glad_glWindowPos3fv = (PFNGLWINDOWPOS3FVPROC)load("glWindowPos3fv"); 1746 | glad_glWindowPos3i = (PFNGLWINDOWPOS3IPROC)load("glWindowPos3i"); 1747 | glad_glWindowPos3iv = (PFNGLWINDOWPOS3IVPROC)load("glWindowPos3iv"); 1748 | glad_glWindowPos3s = (PFNGLWINDOWPOS3SPROC)load("glWindowPos3s"); 1749 | glad_glWindowPos3sv = (PFNGLWINDOWPOS3SVPROC)load("glWindowPos3sv"); 1750 | glad_glBlendColor = (PFNGLBLENDCOLORPROC)load("glBlendColor"); 1751 | glad_glBlendEquation = (PFNGLBLENDEQUATIONPROC)load("glBlendEquation"); 1752 | } 1753 | static void load_GL_VERSION_1_5(GLADloadproc load) { 1754 | if(!GLAD_GL_VERSION_1_5) return; 1755 | glad_glGenQueries = (PFNGLGENQUERIESPROC)load("glGenQueries"); 1756 | glad_glDeleteQueries = (PFNGLDELETEQUERIESPROC)load("glDeleteQueries"); 1757 | glad_glIsQuery = (PFNGLISQUERYPROC)load("glIsQuery"); 1758 | glad_glBeginQuery = (PFNGLBEGINQUERYPROC)load("glBeginQuery"); 1759 | glad_glEndQuery = (PFNGLENDQUERYPROC)load("glEndQuery"); 1760 | glad_glGetQueryiv = (PFNGLGETQUERYIVPROC)load("glGetQueryiv"); 1761 | glad_glGetQueryObjectiv = (PFNGLGETQUERYOBJECTIVPROC)load("glGetQueryObjectiv"); 1762 | glad_glGetQueryObjectuiv = (PFNGLGETQUERYOBJECTUIVPROC)load("glGetQueryObjectuiv"); 1763 | glad_glBindBuffer = (PFNGLBINDBUFFERPROC)load("glBindBuffer"); 1764 | glad_glDeleteBuffers = (PFNGLDELETEBUFFERSPROC)load("glDeleteBuffers"); 1765 | glad_glGenBuffers = (PFNGLGENBUFFERSPROC)load("glGenBuffers"); 1766 | glad_glIsBuffer = (PFNGLISBUFFERPROC)load("glIsBuffer"); 1767 | glad_glBufferData = (PFNGLBUFFERDATAPROC)load("glBufferData"); 1768 | glad_glBufferSubData = (PFNGLBUFFERSUBDATAPROC)load("glBufferSubData"); 1769 | glad_glGetBufferSubData = (PFNGLGETBUFFERSUBDATAPROC)load("glGetBufferSubData"); 1770 | glad_glMapBuffer = (PFNGLMAPBUFFERPROC)load("glMapBuffer"); 1771 | glad_glUnmapBuffer = (PFNGLUNMAPBUFFERPROC)load("glUnmapBuffer"); 1772 | glad_glGetBufferParameteriv = (PFNGLGETBUFFERPARAMETERIVPROC)load("glGetBufferParameteriv"); 1773 | glad_glGetBufferPointerv = (PFNGLGETBUFFERPOINTERVPROC)load("glGetBufferPointerv"); 1774 | } 1775 | static void load_GL_VERSION_2_0(GLADloadproc load) { 1776 | if(!GLAD_GL_VERSION_2_0) return; 1777 | glad_glBlendEquationSeparate = (PFNGLBLENDEQUATIONSEPARATEPROC)load("glBlendEquationSeparate"); 1778 | glad_glDrawBuffers = (PFNGLDRAWBUFFERSPROC)load("glDrawBuffers"); 1779 | glad_glStencilOpSeparate = (PFNGLSTENCILOPSEPARATEPROC)load("glStencilOpSeparate"); 1780 | glad_glStencilFuncSeparate = (PFNGLSTENCILFUNCSEPARATEPROC)load("glStencilFuncSeparate"); 1781 | glad_glStencilMaskSeparate = (PFNGLSTENCILMASKSEPARATEPROC)load("glStencilMaskSeparate"); 1782 | glad_glAttachShader = (PFNGLATTACHSHADERPROC)load("glAttachShader"); 1783 | glad_glBindAttribLocation = (PFNGLBINDATTRIBLOCATIONPROC)load("glBindAttribLocation"); 1784 | glad_glCompileShader = (PFNGLCOMPILESHADERPROC)load("glCompileShader"); 1785 | glad_glCreateProgram = (PFNGLCREATEPROGRAMPROC)load("glCreateProgram"); 1786 | glad_glCreateShader = (PFNGLCREATESHADERPROC)load("glCreateShader"); 1787 | glad_glDeleteProgram = (PFNGLDELETEPROGRAMPROC)load("glDeleteProgram"); 1788 | glad_glDeleteShader = (PFNGLDELETESHADERPROC)load("glDeleteShader"); 1789 | glad_glDetachShader = (PFNGLDETACHSHADERPROC)load("glDetachShader"); 1790 | glad_glDisableVertexAttribArray = (PFNGLDISABLEVERTEXATTRIBARRAYPROC)load("glDisableVertexAttribArray"); 1791 | glad_glEnableVertexAttribArray = (PFNGLENABLEVERTEXATTRIBARRAYPROC)load("glEnableVertexAttribArray"); 1792 | glad_glGetActiveAttrib = (PFNGLGETACTIVEATTRIBPROC)load("glGetActiveAttrib"); 1793 | glad_glGetActiveUniform = (PFNGLGETACTIVEUNIFORMPROC)load("glGetActiveUniform"); 1794 | glad_glGetAttachedShaders = (PFNGLGETATTACHEDSHADERSPROC)load("glGetAttachedShaders"); 1795 | glad_glGetAttribLocation = (PFNGLGETATTRIBLOCATIONPROC)load("glGetAttribLocation"); 1796 | glad_glGetProgramiv = (PFNGLGETPROGRAMIVPROC)load("glGetProgramiv"); 1797 | glad_glGetProgramInfoLog = (PFNGLGETPROGRAMINFOLOGPROC)load("glGetProgramInfoLog"); 1798 | glad_glGetShaderiv = (PFNGLGETSHADERIVPROC)load("glGetShaderiv"); 1799 | glad_glGetShaderInfoLog = (PFNGLGETSHADERINFOLOGPROC)load("glGetShaderInfoLog"); 1800 | glad_glGetShaderSource = (PFNGLGETSHADERSOURCEPROC)load("glGetShaderSource"); 1801 | glad_glGetUniformLocation = (PFNGLGETUNIFORMLOCATIONPROC)load("glGetUniformLocation"); 1802 | glad_glGetUniformfv = (PFNGLGETUNIFORMFVPROC)load("glGetUniformfv"); 1803 | glad_glGetUniformiv = (PFNGLGETUNIFORMIVPROC)load("glGetUniformiv"); 1804 | glad_glGetVertexAttribdv = (PFNGLGETVERTEXATTRIBDVPROC)load("glGetVertexAttribdv"); 1805 | glad_glGetVertexAttribfv = (PFNGLGETVERTEXATTRIBFVPROC)load("glGetVertexAttribfv"); 1806 | glad_glGetVertexAttribiv = (PFNGLGETVERTEXATTRIBIVPROC)load("glGetVertexAttribiv"); 1807 | glad_glGetVertexAttribPointerv = (PFNGLGETVERTEXATTRIBPOINTERVPROC)load("glGetVertexAttribPointerv"); 1808 | glad_glIsProgram = (PFNGLISPROGRAMPROC)load("glIsProgram"); 1809 | glad_glIsShader = (PFNGLISSHADERPROC)load("glIsShader"); 1810 | glad_glLinkProgram = (PFNGLLINKPROGRAMPROC)load("glLinkProgram"); 1811 | glad_glShaderSource = (PFNGLSHADERSOURCEPROC)load("glShaderSource"); 1812 | glad_glUseProgram = (PFNGLUSEPROGRAMPROC)load("glUseProgram"); 1813 | glad_glUniform1f = (PFNGLUNIFORM1FPROC)load("glUniform1f"); 1814 | glad_glUniform2f = (PFNGLUNIFORM2FPROC)load("glUniform2f"); 1815 | glad_glUniform3f = (PFNGLUNIFORM3FPROC)load("glUniform3f"); 1816 | glad_glUniform4f = (PFNGLUNIFORM4FPROC)load("glUniform4f"); 1817 | glad_glUniform1i = (PFNGLUNIFORM1IPROC)load("glUniform1i"); 1818 | glad_glUniform2i = (PFNGLUNIFORM2IPROC)load("glUniform2i"); 1819 | glad_glUniform3i = (PFNGLUNIFORM3IPROC)load("glUniform3i"); 1820 | glad_glUniform4i = (PFNGLUNIFORM4IPROC)load("glUniform4i"); 1821 | glad_glUniform1fv = (PFNGLUNIFORM1FVPROC)load("glUniform1fv"); 1822 | glad_glUniform2fv = (PFNGLUNIFORM2FVPROC)load("glUniform2fv"); 1823 | glad_glUniform3fv = (PFNGLUNIFORM3FVPROC)load("glUniform3fv"); 1824 | glad_glUniform4fv = (PFNGLUNIFORM4FVPROC)load("glUniform4fv"); 1825 | glad_glUniform1iv = (PFNGLUNIFORM1IVPROC)load("glUniform1iv"); 1826 | glad_glUniform2iv = (PFNGLUNIFORM2IVPROC)load("glUniform2iv"); 1827 | glad_glUniform3iv = (PFNGLUNIFORM3IVPROC)load("glUniform3iv"); 1828 | glad_glUniform4iv = (PFNGLUNIFORM4IVPROC)load("glUniform4iv"); 1829 | glad_glUniformMatrix2fv = (PFNGLUNIFORMMATRIX2FVPROC)load("glUniformMatrix2fv"); 1830 | glad_glUniformMatrix3fv = (PFNGLUNIFORMMATRIX3FVPROC)load("glUniformMatrix3fv"); 1831 | glad_glUniformMatrix4fv = (PFNGLUNIFORMMATRIX4FVPROC)load("glUniformMatrix4fv"); 1832 | glad_glValidateProgram = (PFNGLVALIDATEPROGRAMPROC)load("glValidateProgram"); 1833 | glad_glVertexAttrib1d = (PFNGLVERTEXATTRIB1DPROC)load("glVertexAttrib1d"); 1834 | glad_glVertexAttrib1dv = (PFNGLVERTEXATTRIB1DVPROC)load("glVertexAttrib1dv"); 1835 | glad_glVertexAttrib1f = (PFNGLVERTEXATTRIB1FPROC)load("glVertexAttrib1f"); 1836 | glad_glVertexAttrib1fv = (PFNGLVERTEXATTRIB1FVPROC)load("glVertexAttrib1fv"); 1837 | glad_glVertexAttrib1s = (PFNGLVERTEXATTRIB1SPROC)load("glVertexAttrib1s"); 1838 | glad_glVertexAttrib1sv = (PFNGLVERTEXATTRIB1SVPROC)load("glVertexAttrib1sv"); 1839 | glad_glVertexAttrib2d = (PFNGLVERTEXATTRIB2DPROC)load("glVertexAttrib2d"); 1840 | glad_glVertexAttrib2dv = (PFNGLVERTEXATTRIB2DVPROC)load("glVertexAttrib2dv"); 1841 | glad_glVertexAttrib2f = (PFNGLVERTEXATTRIB2FPROC)load("glVertexAttrib2f"); 1842 | glad_glVertexAttrib2fv = (PFNGLVERTEXATTRIB2FVPROC)load("glVertexAttrib2fv"); 1843 | glad_glVertexAttrib2s = (PFNGLVERTEXATTRIB2SPROC)load("glVertexAttrib2s"); 1844 | glad_glVertexAttrib2sv = (PFNGLVERTEXATTRIB2SVPROC)load("glVertexAttrib2sv"); 1845 | glad_glVertexAttrib3d = (PFNGLVERTEXATTRIB3DPROC)load("glVertexAttrib3d"); 1846 | glad_glVertexAttrib3dv = (PFNGLVERTEXATTRIB3DVPROC)load("glVertexAttrib3dv"); 1847 | glad_glVertexAttrib3f = (PFNGLVERTEXATTRIB3FPROC)load("glVertexAttrib3f"); 1848 | glad_glVertexAttrib3fv = (PFNGLVERTEXATTRIB3FVPROC)load("glVertexAttrib3fv"); 1849 | glad_glVertexAttrib3s = (PFNGLVERTEXATTRIB3SPROC)load("glVertexAttrib3s"); 1850 | glad_glVertexAttrib3sv = (PFNGLVERTEXATTRIB3SVPROC)load("glVertexAttrib3sv"); 1851 | glad_glVertexAttrib4Nbv = (PFNGLVERTEXATTRIB4NBVPROC)load("glVertexAttrib4Nbv"); 1852 | glad_glVertexAttrib4Niv = (PFNGLVERTEXATTRIB4NIVPROC)load("glVertexAttrib4Niv"); 1853 | glad_glVertexAttrib4Nsv = (PFNGLVERTEXATTRIB4NSVPROC)load("glVertexAttrib4Nsv"); 1854 | glad_glVertexAttrib4Nub = (PFNGLVERTEXATTRIB4NUBPROC)load("glVertexAttrib4Nub"); 1855 | glad_glVertexAttrib4Nubv = (PFNGLVERTEXATTRIB4NUBVPROC)load("glVertexAttrib4Nubv"); 1856 | glad_glVertexAttrib4Nuiv = (PFNGLVERTEXATTRIB4NUIVPROC)load("glVertexAttrib4Nuiv"); 1857 | glad_glVertexAttrib4Nusv = (PFNGLVERTEXATTRIB4NUSVPROC)load("glVertexAttrib4Nusv"); 1858 | glad_glVertexAttrib4bv = (PFNGLVERTEXATTRIB4BVPROC)load("glVertexAttrib4bv"); 1859 | glad_glVertexAttrib4d = (PFNGLVERTEXATTRIB4DPROC)load("glVertexAttrib4d"); 1860 | glad_glVertexAttrib4dv = (PFNGLVERTEXATTRIB4DVPROC)load("glVertexAttrib4dv"); 1861 | glad_glVertexAttrib4f = (PFNGLVERTEXATTRIB4FPROC)load("glVertexAttrib4f"); 1862 | glad_glVertexAttrib4fv = (PFNGLVERTEXATTRIB4FVPROC)load("glVertexAttrib4fv"); 1863 | glad_glVertexAttrib4iv = (PFNGLVERTEXATTRIB4IVPROC)load("glVertexAttrib4iv"); 1864 | glad_glVertexAttrib4s = (PFNGLVERTEXATTRIB4SPROC)load("glVertexAttrib4s"); 1865 | glad_glVertexAttrib4sv = (PFNGLVERTEXATTRIB4SVPROC)load("glVertexAttrib4sv"); 1866 | glad_glVertexAttrib4ubv = (PFNGLVERTEXATTRIB4UBVPROC)load("glVertexAttrib4ubv"); 1867 | glad_glVertexAttrib4uiv = (PFNGLVERTEXATTRIB4UIVPROC)load("glVertexAttrib4uiv"); 1868 | glad_glVertexAttrib4usv = (PFNGLVERTEXATTRIB4USVPROC)load("glVertexAttrib4usv"); 1869 | glad_glVertexAttribPointer = (PFNGLVERTEXATTRIBPOINTERPROC)load("glVertexAttribPointer"); 1870 | } 1871 | static void load_GL_VERSION_2_1(GLADloadproc load) { 1872 | if(!GLAD_GL_VERSION_2_1) return; 1873 | glad_glUniformMatrix2x3fv = (PFNGLUNIFORMMATRIX2X3FVPROC)load("glUniformMatrix2x3fv"); 1874 | glad_glUniformMatrix3x2fv = (PFNGLUNIFORMMATRIX3X2FVPROC)load("glUniformMatrix3x2fv"); 1875 | glad_glUniformMatrix2x4fv = (PFNGLUNIFORMMATRIX2X4FVPROC)load("glUniformMatrix2x4fv"); 1876 | glad_glUniformMatrix4x2fv = (PFNGLUNIFORMMATRIX4X2FVPROC)load("glUniformMatrix4x2fv"); 1877 | glad_glUniformMatrix3x4fv = (PFNGLUNIFORMMATRIX3X4FVPROC)load("glUniformMatrix3x4fv"); 1878 | glad_glUniformMatrix4x3fv = (PFNGLUNIFORMMATRIX4X3FVPROC)load("glUniformMatrix4x3fv"); 1879 | } 1880 | static void load_GL_VERSION_3_0(GLADloadproc load) { 1881 | if(!GLAD_GL_VERSION_3_0) return; 1882 | glad_glColorMaski = (PFNGLCOLORMASKIPROC)load("glColorMaski"); 1883 | glad_glGetBooleani_v = (PFNGLGETBOOLEANI_VPROC)load("glGetBooleani_v"); 1884 | glad_glGetIntegeri_v = (PFNGLGETINTEGERI_VPROC)load("glGetIntegeri_v"); 1885 | glad_glEnablei = (PFNGLENABLEIPROC)load("glEnablei"); 1886 | glad_glDisablei = (PFNGLDISABLEIPROC)load("glDisablei"); 1887 | glad_glIsEnabledi = (PFNGLISENABLEDIPROC)load("glIsEnabledi"); 1888 | glad_glBeginTransformFeedback = (PFNGLBEGINTRANSFORMFEEDBACKPROC)load("glBeginTransformFeedback"); 1889 | glad_glEndTransformFeedback = (PFNGLENDTRANSFORMFEEDBACKPROC)load("glEndTransformFeedback"); 1890 | glad_glBindBufferRange = (PFNGLBINDBUFFERRANGEPROC)load("glBindBufferRange"); 1891 | glad_glBindBufferBase = (PFNGLBINDBUFFERBASEPROC)load("glBindBufferBase"); 1892 | glad_glTransformFeedbackVaryings = (PFNGLTRANSFORMFEEDBACKVARYINGSPROC)load("glTransformFeedbackVaryings"); 1893 | glad_glGetTransformFeedbackVarying = (PFNGLGETTRANSFORMFEEDBACKVARYINGPROC)load("glGetTransformFeedbackVarying"); 1894 | glad_glClampColor = (PFNGLCLAMPCOLORPROC)load("glClampColor"); 1895 | glad_glBeginConditionalRender = (PFNGLBEGINCONDITIONALRENDERPROC)load("glBeginConditionalRender"); 1896 | glad_glEndConditionalRender = (PFNGLENDCONDITIONALRENDERPROC)load("glEndConditionalRender"); 1897 | glad_glVertexAttribIPointer = (PFNGLVERTEXATTRIBIPOINTERPROC)load("glVertexAttribIPointer"); 1898 | glad_glGetVertexAttribIiv = (PFNGLGETVERTEXATTRIBIIVPROC)load("glGetVertexAttribIiv"); 1899 | glad_glGetVertexAttribIuiv = (PFNGLGETVERTEXATTRIBIUIVPROC)load("glGetVertexAttribIuiv"); 1900 | glad_glVertexAttribI1i = (PFNGLVERTEXATTRIBI1IPROC)load("glVertexAttribI1i"); 1901 | glad_glVertexAttribI2i = (PFNGLVERTEXATTRIBI2IPROC)load("glVertexAttribI2i"); 1902 | glad_glVertexAttribI3i = (PFNGLVERTEXATTRIBI3IPROC)load("glVertexAttribI3i"); 1903 | glad_glVertexAttribI4i = (PFNGLVERTEXATTRIBI4IPROC)load("glVertexAttribI4i"); 1904 | glad_glVertexAttribI1ui = (PFNGLVERTEXATTRIBI1UIPROC)load("glVertexAttribI1ui"); 1905 | glad_glVertexAttribI2ui = (PFNGLVERTEXATTRIBI2UIPROC)load("glVertexAttribI2ui"); 1906 | glad_glVertexAttribI3ui = (PFNGLVERTEXATTRIBI3UIPROC)load("glVertexAttribI3ui"); 1907 | glad_glVertexAttribI4ui = (PFNGLVERTEXATTRIBI4UIPROC)load("glVertexAttribI4ui"); 1908 | glad_glVertexAttribI1iv = (PFNGLVERTEXATTRIBI1IVPROC)load("glVertexAttribI1iv"); 1909 | glad_glVertexAttribI2iv = (PFNGLVERTEXATTRIBI2IVPROC)load("glVertexAttribI2iv"); 1910 | glad_glVertexAttribI3iv = (PFNGLVERTEXATTRIBI3IVPROC)load("glVertexAttribI3iv"); 1911 | glad_glVertexAttribI4iv = (PFNGLVERTEXATTRIBI4IVPROC)load("glVertexAttribI4iv"); 1912 | glad_glVertexAttribI1uiv = (PFNGLVERTEXATTRIBI1UIVPROC)load("glVertexAttribI1uiv"); 1913 | glad_glVertexAttribI2uiv = (PFNGLVERTEXATTRIBI2UIVPROC)load("glVertexAttribI2uiv"); 1914 | glad_glVertexAttribI3uiv = (PFNGLVERTEXATTRIBI3UIVPROC)load("glVertexAttribI3uiv"); 1915 | glad_glVertexAttribI4uiv = (PFNGLVERTEXATTRIBI4UIVPROC)load("glVertexAttribI4uiv"); 1916 | glad_glVertexAttribI4bv = (PFNGLVERTEXATTRIBI4BVPROC)load("glVertexAttribI4bv"); 1917 | glad_glVertexAttribI4sv = (PFNGLVERTEXATTRIBI4SVPROC)load("glVertexAttribI4sv"); 1918 | glad_glVertexAttribI4ubv = (PFNGLVERTEXATTRIBI4UBVPROC)load("glVertexAttribI4ubv"); 1919 | glad_glVertexAttribI4usv = (PFNGLVERTEXATTRIBI4USVPROC)load("glVertexAttribI4usv"); 1920 | glad_glGetUniformuiv = (PFNGLGETUNIFORMUIVPROC)load("glGetUniformuiv"); 1921 | glad_glBindFragDataLocation = (PFNGLBINDFRAGDATALOCATIONPROC)load("glBindFragDataLocation"); 1922 | glad_glGetFragDataLocation = (PFNGLGETFRAGDATALOCATIONPROC)load("glGetFragDataLocation"); 1923 | glad_glUniform1ui = (PFNGLUNIFORM1UIPROC)load("glUniform1ui"); 1924 | glad_glUniform2ui = (PFNGLUNIFORM2UIPROC)load("glUniform2ui"); 1925 | glad_glUniform3ui = (PFNGLUNIFORM3UIPROC)load("glUniform3ui"); 1926 | glad_glUniform4ui = (PFNGLUNIFORM4UIPROC)load("glUniform4ui"); 1927 | glad_glUniform1uiv = (PFNGLUNIFORM1UIVPROC)load("glUniform1uiv"); 1928 | glad_glUniform2uiv = (PFNGLUNIFORM2UIVPROC)load("glUniform2uiv"); 1929 | glad_glUniform3uiv = (PFNGLUNIFORM3UIVPROC)load("glUniform3uiv"); 1930 | glad_glUniform4uiv = (PFNGLUNIFORM4UIVPROC)load("glUniform4uiv"); 1931 | glad_glTexParameterIiv = (PFNGLTEXPARAMETERIIVPROC)load("glTexParameterIiv"); 1932 | glad_glTexParameterIuiv = (PFNGLTEXPARAMETERIUIVPROC)load("glTexParameterIuiv"); 1933 | glad_glGetTexParameterIiv = (PFNGLGETTEXPARAMETERIIVPROC)load("glGetTexParameterIiv"); 1934 | glad_glGetTexParameterIuiv = (PFNGLGETTEXPARAMETERIUIVPROC)load("glGetTexParameterIuiv"); 1935 | glad_glClearBufferiv = (PFNGLCLEARBUFFERIVPROC)load("glClearBufferiv"); 1936 | glad_glClearBufferuiv = (PFNGLCLEARBUFFERUIVPROC)load("glClearBufferuiv"); 1937 | glad_glClearBufferfv = (PFNGLCLEARBUFFERFVPROC)load("glClearBufferfv"); 1938 | glad_glClearBufferfi = (PFNGLCLEARBUFFERFIPROC)load("glClearBufferfi"); 1939 | glad_glGetStringi = (PFNGLGETSTRINGIPROC)load("glGetStringi"); 1940 | glad_glIsRenderbuffer = (PFNGLISRENDERBUFFERPROC)load("glIsRenderbuffer"); 1941 | glad_glBindRenderbuffer = (PFNGLBINDRENDERBUFFERPROC)load("glBindRenderbuffer"); 1942 | glad_glDeleteRenderbuffers = (PFNGLDELETERENDERBUFFERSPROC)load("glDeleteRenderbuffers"); 1943 | glad_glGenRenderbuffers = (PFNGLGENRENDERBUFFERSPROC)load("glGenRenderbuffers"); 1944 | glad_glRenderbufferStorage = (PFNGLRENDERBUFFERSTORAGEPROC)load("glRenderbufferStorage"); 1945 | glad_glGetRenderbufferParameteriv = (PFNGLGETRENDERBUFFERPARAMETERIVPROC)load("glGetRenderbufferParameteriv"); 1946 | glad_glIsFramebuffer = (PFNGLISFRAMEBUFFERPROC)load("glIsFramebuffer"); 1947 | glad_glBindFramebuffer = (PFNGLBINDFRAMEBUFFERPROC)load("glBindFramebuffer"); 1948 | glad_glDeleteFramebuffers = (PFNGLDELETEFRAMEBUFFERSPROC)load("glDeleteFramebuffers"); 1949 | glad_glGenFramebuffers = (PFNGLGENFRAMEBUFFERSPROC)load("glGenFramebuffers"); 1950 | glad_glCheckFramebufferStatus = (PFNGLCHECKFRAMEBUFFERSTATUSPROC)load("glCheckFramebufferStatus"); 1951 | glad_glFramebufferTexture1D = (PFNGLFRAMEBUFFERTEXTURE1DPROC)load("glFramebufferTexture1D"); 1952 | glad_glFramebufferTexture2D = (PFNGLFRAMEBUFFERTEXTURE2DPROC)load("glFramebufferTexture2D"); 1953 | glad_glFramebufferTexture3D = (PFNGLFRAMEBUFFERTEXTURE3DPROC)load("glFramebufferTexture3D"); 1954 | glad_glFramebufferRenderbuffer = (PFNGLFRAMEBUFFERRENDERBUFFERPROC)load("glFramebufferRenderbuffer"); 1955 | glad_glGetFramebufferAttachmentParameteriv = (PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)load("glGetFramebufferAttachmentParameteriv"); 1956 | glad_glGenerateMipmap = (PFNGLGENERATEMIPMAPPROC)load("glGenerateMipmap"); 1957 | glad_glBlitFramebuffer = (PFNGLBLITFRAMEBUFFERPROC)load("glBlitFramebuffer"); 1958 | glad_glRenderbufferStorageMultisample = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC)load("glRenderbufferStorageMultisample"); 1959 | glad_glFramebufferTextureLayer = (PFNGLFRAMEBUFFERTEXTURELAYERPROC)load("glFramebufferTextureLayer"); 1960 | glad_glMapBufferRange = (PFNGLMAPBUFFERRANGEPROC)load("glMapBufferRange"); 1961 | glad_glFlushMappedBufferRange = (PFNGLFLUSHMAPPEDBUFFERRANGEPROC)load("glFlushMappedBufferRange"); 1962 | glad_glBindVertexArray = (PFNGLBINDVERTEXARRAYPROC)load("glBindVertexArray"); 1963 | glad_glDeleteVertexArrays = (PFNGLDELETEVERTEXARRAYSPROC)load("glDeleteVertexArrays"); 1964 | glad_glGenVertexArrays = (PFNGLGENVERTEXARRAYSPROC)load("glGenVertexArrays"); 1965 | glad_glIsVertexArray = (PFNGLISVERTEXARRAYPROC)load("glIsVertexArray"); 1966 | } 1967 | static void load_GL_VERSION_3_1(GLADloadproc load) { 1968 | if(!GLAD_GL_VERSION_3_1) return; 1969 | glad_glDrawArraysInstanced = (PFNGLDRAWARRAYSINSTANCEDPROC)load("glDrawArraysInstanced"); 1970 | glad_glDrawElementsInstanced = (PFNGLDRAWELEMENTSINSTANCEDPROC)load("glDrawElementsInstanced"); 1971 | glad_glTexBuffer = (PFNGLTEXBUFFERPROC)load("glTexBuffer"); 1972 | glad_glPrimitiveRestartIndex = (PFNGLPRIMITIVERESTARTINDEXPROC)load("glPrimitiveRestartIndex"); 1973 | glad_glCopyBufferSubData = (PFNGLCOPYBUFFERSUBDATAPROC)load("glCopyBufferSubData"); 1974 | glad_glGetUniformIndices = (PFNGLGETUNIFORMINDICESPROC)load("glGetUniformIndices"); 1975 | glad_glGetActiveUniformsiv = (PFNGLGETACTIVEUNIFORMSIVPROC)load("glGetActiveUniformsiv"); 1976 | glad_glGetActiveUniformName = (PFNGLGETACTIVEUNIFORMNAMEPROC)load("glGetActiveUniformName"); 1977 | glad_glGetUniformBlockIndex = (PFNGLGETUNIFORMBLOCKINDEXPROC)load("glGetUniformBlockIndex"); 1978 | glad_glGetActiveUniformBlockiv = (PFNGLGETACTIVEUNIFORMBLOCKIVPROC)load("glGetActiveUniformBlockiv"); 1979 | glad_glGetActiveUniformBlockName = (PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC)load("glGetActiveUniformBlockName"); 1980 | glad_glUniformBlockBinding = (PFNGLUNIFORMBLOCKBINDINGPROC)load("glUniformBlockBinding"); 1981 | glad_glBindBufferRange = (PFNGLBINDBUFFERRANGEPROC)load("glBindBufferRange"); 1982 | glad_glBindBufferBase = (PFNGLBINDBUFFERBASEPROC)load("glBindBufferBase"); 1983 | glad_glGetIntegeri_v = (PFNGLGETINTEGERI_VPROC)load("glGetIntegeri_v"); 1984 | } 1985 | static void load_GL_VERSION_3_2(GLADloadproc load) { 1986 | if(!GLAD_GL_VERSION_3_2) return; 1987 | glad_glDrawElementsBaseVertex = (PFNGLDRAWELEMENTSBASEVERTEXPROC)load("glDrawElementsBaseVertex"); 1988 | glad_glDrawRangeElementsBaseVertex = (PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC)load("glDrawRangeElementsBaseVertex"); 1989 | glad_glDrawElementsInstancedBaseVertex = (PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC)load("glDrawElementsInstancedBaseVertex"); 1990 | glad_glMultiDrawElementsBaseVertex = (PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC)load("glMultiDrawElementsBaseVertex"); 1991 | glad_glProvokingVertex = (PFNGLPROVOKINGVERTEXPROC)load("glProvokingVertex"); 1992 | glad_glFenceSync = (PFNGLFENCESYNCPROC)load("glFenceSync"); 1993 | glad_glIsSync = (PFNGLISSYNCPROC)load("glIsSync"); 1994 | glad_glDeleteSync = (PFNGLDELETESYNCPROC)load("glDeleteSync"); 1995 | glad_glClientWaitSync = (PFNGLCLIENTWAITSYNCPROC)load("glClientWaitSync"); 1996 | glad_glWaitSync = (PFNGLWAITSYNCPROC)load("glWaitSync"); 1997 | glad_glGetInteger64v = (PFNGLGETINTEGER64VPROC)load("glGetInteger64v"); 1998 | glad_glGetSynciv = (PFNGLGETSYNCIVPROC)load("glGetSynciv"); 1999 | glad_glGetInteger64i_v = (PFNGLGETINTEGER64I_VPROC)load("glGetInteger64i_v"); 2000 | glad_glGetBufferParameteri64v = (PFNGLGETBUFFERPARAMETERI64VPROC)load("glGetBufferParameteri64v"); 2001 | glad_glFramebufferTexture = (PFNGLFRAMEBUFFERTEXTUREPROC)load("glFramebufferTexture"); 2002 | glad_glTexImage2DMultisample = (PFNGLTEXIMAGE2DMULTISAMPLEPROC)load("glTexImage2DMultisample"); 2003 | glad_glTexImage3DMultisample = (PFNGLTEXIMAGE3DMULTISAMPLEPROC)load("glTexImage3DMultisample"); 2004 | glad_glGetMultisamplefv = (PFNGLGETMULTISAMPLEFVPROC)load("glGetMultisamplefv"); 2005 | glad_glSampleMaski = (PFNGLSAMPLEMASKIPROC)load("glSampleMaski"); 2006 | } 2007 | static void load_GL_VERSION_3_3(GLADloadproc load) { 2008 | if(!GLAD_GL_VERSION_3_3) return; 2009 | glad_glBindFragDataLocationIndexed = (PFNGLBINDFRAGDATALOCATIONINDEXEDPROC)load("glBindFragDataLocationIndexed"); 2010 | glad_glGetFragDataIndex = (PFNGLGETFRAGDATAINDEXPROC)load("glGetFragDataIndex"); 2011 | glad_glGenSamplers = (PFNGLGENSAMPLERSPROC)load("glGenSamplers"); 2012 | glad_glDeleteSamplers = (PFNGLDELETESAMPLERSPROC)load("glDeleteSamplers"); 2013 | glad_glIsSampler = (PFNGLISSAMPLERPROC)load("glIsSampler"); 2014 | glad_glBindSampler = (PFNGLBINDSAMPLERPROC)load("glBindSampler"); 2015 | glad_glSamplerParameteri = (PFNGLSAMPLERPARAMETERIPROC)load("glSamplerParameteri"); 2016 | glad_glSamplerParameteriv = (PFNGLSAMPLERPARAMETERIVPROC)load("glSamplerParameteriv"); 2017 | glad_glSamplerParameterf = (PFNGLSAMPLERPARAMETERFPROC)load("glSamplerParameterf"); 2018 | glad_glSamplerParameterfv = (PFNGLSAMPLERPARAMETERFVPROC)load("glSamplerParameterfv"); 2019 | glad_glSamplerParameterIiv = (PFNGLSAMPLERPARAMETERIIVPROC)load("glSamplerParameterIiv"); 2020 | glad_glSamplerParameterIuiv = (PFNGLSAMPLERPARAMETERIUIVPROC)load("glSamplerParameterIuiv"); 2021 | glad_glGetSamplerParameteriv = (PFNGLGETSAMPLERPARAMETERIVPROC)load("glGetSamplerParameteriv"); 2022 | glad_glGetSamplerParameterIiv = (PFNGLGETSAMPLERPARAMETERIIVPROC)load("glGetSamplerParameterIiv"); 2023 | glad_glGetSamplerParameterfv = (PFNGLGETSAMPLERPARAMETERFVPROC)load("glGetSamplerParameterfv"); 2024 | glad_glGetSamplerParameterIuiv = (PFNGLGETSAMPLERPARAMETERIUIVPROC)load("glGetSamplerParameterIuiv"); 2025 | glad_glQueryCounter = (PFNGLQUERYCOUNTERPROC)load("glQueryCounter"); 2026 | glad_glGetQueryObjecti64v = (PFNGLGETQUERYOBJECTI64VPROC)load("glGetQueryObjecti64v"); 2027 | glad_glGetQueryObjectui64v = (PFNGLGETQUERYOBJECTUI64VPROC)load("glGetQueryObjectui64v"); 2028 | glad_glVertexAttribDivisor = (PFNGLVERTEXATTRIBDIVISORPROC)load("glVertexAttribDivisor"); 2029 | glad_glVertexAttribP1ui = (PFNGLVERTEXATTRIBP1UIPROC)load("glVertexAttribP1ui"); 2030 | glad_glVertexAttribP1uiv = (PFNGLVERTEXATTRIBP1UIVPROC)load("glVertexAttribP1uiv"); 2031 | glad_glVertexAttribP2ui = (PFNGLVERTEXATTRIBP2UIPROC)load("glVertexAttribP2ui"); 2032 | glad_glVertexAttribP2uiv = (PFNGLVERTEXATTRIBP2UIVPROC)load("glVertexAttribP2uiv"); 2033 | glad_glVertexAttribP3ui = (PFNGLVERTEXATTRIBP3UIPROC)load("glVertexAttribP3ui"); 2034 | glad_glVertexAttribP3uiv = (PFNGLVERTEXATTRIBP3UIVPROC)load("glVertexAttribP3uiv"); 2035 | glad_glVertexAttribP4ui = (PFNGLVERTEXATTRIBP4UIPROC)load("glVertexAttribP4ui"); 2036 | glad_glVertexAttribP4uiv = (PFNGLVERTEXATTRIBP4UIVPROC)load("glVertexAttribP4uiv"); 2037 | glad_glVertexP2ui = (PFNGLVERTEXP2UIPROC)load("glVertexP2ui"); 2038 | glad_glVertexP2uiv = (PFNGLVERTEXP2UIVPROC)load("glVertexP2uiv"); 2039 | glad_glVertexP3ui = (PFNGLVERTEXP3UIPROC)load("glVertexP3ui"); 2040 | glad_glVertexP3uiv = (PFNGLVERTEXP3UIVPROC)load("glVertexP3uiv"); 2041 | glad_glVertexP4ui = (PFNGLVERTEXP4UIPROC)load("glVertexP4ui"); 2042 | glad_glVertexP4uiv = (PFNGLVERTEXP4UIVPROC)load("glVertexP4uiv"); 2043 | glad_glTexCoordP1ui = (PFNGLTEXCOORDP1UIPROC)load("glTexCoordP1ui"); 2044 | glad_glTexCoordP1uiv = (PFNGLTEXCOORDP1UIVPROC)load("glTexCoordP1uiv"); 2045 | glad_glTexCoordP2ui = (PFNGLTEXCOORDP2UIPROC)load("glTexCoordP2ui"); 2046 | glad_glTexCoordP2uiv = (PFNGLTEXCOORDP2UIVPROC)load("glTexCoordP2uiv"); 2047 | glad_glTexCoordP3ui = (PFNGLTEXCOORDP3UIPROC)load("glTexCoordP3ui"); 2048 | glad_glTexCoordP3uiv = (PFNGLTEXCOORDP3UIVPROC)load("glTexCoordP3uiv"); 2049 | glad_glTexCoordP4ui = (PFNGLTEXCOORDP4UIPROC)load("glTexCoordP4ui"); 2050 | glad_glTexCoordP4uiv = (PFNGLTEXCOORDP4UIVPROC)load("glTexCoordP4uiv"); 2051 | glad_glMultiTexCoordP1ui = (PFNGLMULTITEXCOORDP1UIPROC)load("glMultiTexCoordP1ui"); 2052 | glad_glMultiTexCoordP1uiv = (PFNGLMULTITEXCOORDP1UIVPROC)load("glMultiTexCoordP1uiv"); 2053 | glad_glMultiTexCoordP2ui = (PFNGLMULTITEXCOORDP2UIPROC)load("glMultiTexCoordP2ui"); 2054 | glad_glMultiTexCoordP2uiv = (PFNGLMULTITEXCOORDP2UIVPROC)load("glMultiTexCoordP2uiv"); 2055 | glad_glMultiTexCoordP3ui = (PFNGLMULTITEXCOORDP3UIPROC)load("glMultiTexCoordP3ui"); 2056 | glad_glMultiTexCoordP3uiv = (PFNGLMULTITEXCOORDP3UIVPROC)load("glMultiTexCoordP3uiv"); 2057 | glad_glMultiTexCoordP4ui = (PFNGLMULTITEXCOORDP4UIPROC)load("glMultiTexCoordP4ui"); 2058 | glad_glMultiTexCoordP4uiv = (PFNGLMULTITEXCOORDP4UIVPROC)load("glMultiTexCoordP4uiv"); 2059 | glad_glNormalP3ui = (PFNGLNORMALP3UIPROC)load("glNormalP3ui"); 2060 | glad_glNormalP3uiv = (PFNGLNORMALP3UIVPROC)load("glNormalP3uiv"); 2061 | glad_glColorP3ui = (PFNGLCOLORP3UIPROC)load("glColorP3ui"); 2062 | glad_glColorP3uiv = (PFNGLCOLORP3UIVPROC)load("glColorP3uiv"); 2063 | glad_glColorP4ui = (PFNGLCOLORP4UIPROC)load("glColorP4ui"); 2064 | glad_glColorP4uiv = (PFNGLCOLORP4UIVPROC)load("glColorP4uiv"); 2065 | glad_glSecondaryColorP3ui = (PFNGLSECONDARYCOLORP3UIPROC)load("glSecondaryColorP3ui"); 2066 | glad_glSecondaryColorP3uiv = (PFNGLSECONDARYCOLORP3UIVPROC)load("glSecondaryColorP3uiv"); 2067 | } 2068 | static void load_GL_VERSION_4_0(GLADloadproc load) { 2069 | if(!GLAD_GL_VERSION_4_0) return; 2070 | glad_glMinSampleShading = (PFNGLMINSAMPLESHADINGPROC)load("glMinSampleShading"); 2071 | glad_glBlendEquationi = (PFNGLBLENDEQUATIONIPROC)load("glBlendEquationi"); 2072 | glad_glBlendEquationSeparatei = (PFNGLBLENDEQUATIONSEPARATEIPROC)load("glBlendEquationSeparatei"); 2073 | glad_glBlendFunci = (PFNGLBLENDFUNCIPROC)load("glBlendFunci"); 2074 | glad_glBlendFuncSeparatei = (PFNGLBLENDFUNCSEPARATEIPROC)load("glBlendFuncSeparatei"); 2075 | glad_glDrawArraysIndirect = (PFNGLDRAWARRAYSINDIRECTPROC)load("glDrawArraysIndirect"); 2076 | glad_glDrawElementsIndirect = (PFNGLDRAWELEMENTSINDIRECTPROC)load("glDrawElementsIndirect"); 2077 | glad_glUniform1d = (PFNGLUNIFORM1DPROC)load("glUniform1d"); 2078 | glad_glUniform2d = (PFNGLUNIFORM2DPROC)load("glUniform2d"); 2079 | glad_glUniform3d = (PFNGLUNIFORM3DPROC)load("glUniform3d"); 2080 | glad_glUniform4d = (PFNGLUNIFORM4DPROC)load("glUniform4d"); 2081 | glad_glUniform1dv = (PFNGLUNIFORM1DVPROC)load("glUniform1dv"); 2082 | glad_glUniform2dv = (PFNGLUNIFORM2DVPROC)load("glUniform2dv"); 2083 | glad_glUniform3dv = (PFNGLUNIFORM3DVPROC)load("glUniform3dv"); 2084 | glad_glUniform4dv = (PFNGLUNIFORM4DVPROC)load("glUniform4dv"); 2085 | glad_glUniformMatrix2dv = (PFNGLUNIFORMMATRIX2DVPROC)load("glUniformMatrix2dv"); 2086 | glad_glUniformMatrix3dv = (PFNGLUNIFORMMATRIX3DVPROC)load("glUniformMatrix3dv"); 2087 | glad_glUniformMatrix4dv = (PFNGLUNIFORMMATRIX4DVPROC)load("glUniformMatrix4dv"); 2088 | glad_glUniformMatrix2x3dv = (PFNGLUNIFORMMATRIX2X3DVPROC)load("glUniformMatrix2x3dv"); 2089 | glad_glUniformMatrix2x4dv = (PFNGLUNIFORMMATRIX2X4DVPROC)load("glUniformMatrix2x4dv"); 2090 | glad_glUniformMatrix3x2dv = (PFNGLUNIFORMMATRIX3X2DVPROC)load("glUniformMatrix3x2dv"); 2091 | glad_glUniformMatrix3x4dv = (PFNGLUNIFORMMATRIX3X4DVPROC)load("glUniformMatrix3x4dv"); 2092 | glad_glUniformMatrix4x2dv = (PFNGLUNIFORMMATRIX4X2DVPROC)load("glUniformMatrix4x2dv"); 2093 | glad_glUniformMatrix4x3dv = (PFNGLUNIFORMMATRIX4X3DVPROC)load("glUniformMatrix4x3dv"); 2094 | glad_glGetUniformdv = (PFNGLGETUNIFORMDVPROC)load("glGetUniformdv"); 2095 | glad_glGetSubroutineUniformLocation = (PFNGLGETSUBROUTINEUNIFORMLOCATIONPROC)load("glGetSubroutineUniformLocation"); 2096 | glad_glGetSubroutineIndex = (PFNGLGETSUBROUTINEINDEXPROC)load("glGetSubroutineIndex"); 2097 | glad_glGetActiveSubroutineUniformiv = (PFNGLGETACTIVESUBROUTINEUNIFORMIVPROC)load("glGetActiveSubroutineUniformiv"); 2098 | glad_glGetActiveSubroutineUniformName = (PFNGLGETACTIVESUBROUTINEUNIFORMNAMEPROC)load("glGetActiveSubroutineUniformName"); 2099 | glad_glGetActiveSubroutineName = (PFNGLGETACTIVESUBROUTINENAMEPROC)load("glGetActiveSubroutineName"); 2100 | glad_glUniformSubroutinesuiv = (PFNGLUNIFORMSUBROUTINESUIVPROC)load("glUniformSubroutinesuiv"); 2101 | glad_glGetUniformSubroutineuiv = (PFNGLGETUNIFORMSUBROUTINEUIVPROC)load("glGetUniformSubroutineuiv"); 2102 | glad_glGetProgramStageiv = (PFNGLGETPROGRAMSTAGEIVPROC)load("glGetProgramStageiv"); 2103 | glad_glPatchParameteri = (PFNGLPATCHPARAMETERIPROC)load("glPatchParameteri"); 2104 | glad_glPatchParameterfv = (PFNGLPATCHPARAMETERFVPROC)load("glPatchParameterfv"); 2105 | glad_glBindTransformFeedback = (PFNGLBINDTRANSFORMFEEDBACKPROC)load("glBindTransformFeedback"); 2106 | glad_glDeleteTransformFeedbacks = (PFNGLDELETETRANSFORMFEEDBACKSPROC)load("glDeleteTransformFeedbacks"); 2107 | glad_glGenTransformFeedbacks = (PFNGLGENTRANSFORMFEEDBACKSPROC)load("glGenTransformFeedbacks"); 2108 | glad_glIsTransformFeedback = (PFNGLISTRANSFORMFEEDBACKPROC)load("glIsTransformFeedback"); 2109 | glad_glPauseTransformFeedback = (PFNGLPAUSETRANSFORMFEEDBACKPROC)load("glPauseTransformFeedback"); 2110 | glad_glResumeTransformFeedback = (PFNGLRESUMETRANSFORMFEEDBACKPROC)load("glResumeTransformFeedback"); 2111 | glad_glDrawTransformFeedback = (PFNGLDRAWTRANSFORMFEEDBACKPROC)load("glDrawTransformFeedback"); 2112 | glad_glDrawTransformFeedbackStream = (PFNGLDRAWTRANSFORMFEEDBACKSTREAMPROC)load("glDrawTransformFeedbackStream"); 2113 | glad_glBeginQueryIndexed = (PFNGLBEGINQUERYINDEXEDPROC)load("glBeginQueryIndexed"); 2114 | glad_glEndQueryIndexed = (PFNGLENDQUERYINDEXEDPROC)load("glEndQueryIndexed"); 2115 | glad_glGetQueryIndexediv = (PFNGLGETQUERYINDEXEDIVPROC)load("glGetQueryIndexediv"); 2116 | } 2117 | static void load_GL_VERSION_4_1(GLADloadproc load) { 2118 | if(!GLAD_GL_VERSION_4_1) return; 2119 | glad_glReleaseShaderCompiler = (PFNGLRELEASESHADERCOMPILERPROC)load("glReleaseShaderCompiler"); 2120 | glad_glShaderBinary = (PFNGLSHADERBINARYPROC)load("glShaderBinary"); 2121 | glad_glGetShaderPrecisionFormat = (PFNGLGETSHADERPRECISIONFORMATPROC)load("glGetShaderPrecisionFormat"); 2122 | glad_glDepthRangef = (PFNGLDEPTHRANGEFPROC)load("glDepthRangef"); 2123 | glad_glClearDepthf = (PFNGLCLEARDEPTHFPROC)load("glClearDepthf"); 2124 | glad_glGetProgramBinary = (PFNGLGETPROGRAMBINARYPROC)load("glGetProgramBinary"); 2125 | glad_glProgramBinary = (PFNGLPROGRAMBINARYPROC)load("glProgramBinary"); 2126 | glad_glProgramParameteri = (PFNGLPROGRAMPARAMETERIPROC)load("glProgramParameteri"); 2127 | glad_glUseProgramStages = (PFNGLUSEPROGRAMSTAGESPROC)load("glUseProgramStages"); 2128 | glad_glActiveShaderProgram = (PFNGLACTIVESHADERPROGRAMPROC)load("glActiveShaderProgram"); 2129 | glad_glCreateShaderProgramv = (PFNGLCREATESHADERPROGRAMVPROC)load("glCreateShaderProgramv"); 2130 | glad_glBindProgramPipeline = (PFNGLBINDPROGRAMPIPELINEPROC)load("glBindProgramPipeline"); 2131 | glad_glDeleteProgramPipelines = (PFNGLDELETEPROGRAMPIPELINESPROC)load("glDeleteProgramPipelines"); 2132 | glad_glGenProgramPipelines = (PFNGLGENPROGRAMPIPELINESPROC)load("glGenProgramPipelines"); 2133 | glad_glIsProgramPipeline = (PFNGLISPROGRAMPIPELINEPROC)load("glIsProgramPipeline"); 2134 | glad_glGetProgramPipelineiv = (PFNGLGETPROGRAMPIPELINEIVPROC)load("glGetProgramPipelineiv"); 2135 | glad_glProgramParameteri = (PFNGLPROGRAMPARAMETERIPROC)load("glProgramParameteri"); 2136 | glad_glProgramUniform1i = (PFNGLPROGRAMUNIFORM1IPROC)load("glProgramUniform1i"); 2137 | glad_glProgramUniform1iv = (PFNGLPROGRAMUNIFORM1IVPROC)load("glProgramUniform1iv"); 2138 | glad_glProgramUniform1f = (PFNGLPROGRAMUNIFORM1FPROC)load("glProgramUniform1f"); 2139 | glad_glProgramUniform1fv = (PFNGLPROGRAMUNIFORM1FVPROC)load("glProgramUniform1fv"); 2140 | glad_glProgramUniform1d = (PFNGLPROGRAMUNIFORM1DPROC)load("glProgramUniform1d"); 2141 | glad_glProgramUniform1dv = (PFNGLPROGRAMUNIFORM1DVPROC)load("glProgramUniform1dv"); 2142 | glad_glProgramUniform1ui = (PFNGLPROGRAMUNIFORM1UIPROC)load("glProgramUniform1ui"); 2143 | glad_glProgramUniform1uiv = (PFNGLPROGRAMUNIFORM1UIVPROC)load("glProgramUniform1uiv"); 2144 | glad_glProgramUniform2i = (PFNGLPROGRAMUNIFORM2IPROC)load("glProgramUniform2i"); 2145 | glad_glProgramUniform2iv = (PFNGLPROGRAMUNIFORM2IVPROC)load("glProgramUniform2iv"); 2146 | glad_glProgramUniform2f = (PFNGLPROGRAMUNIFORM2FPROC)load("glProgramUniform2f"); 2147 | glad_glProgramUniform2fv = (PFNGLPROGRAMUNIFORM2FVPROC)load("glProgramUniform2fv"); 2148 | glad_glProgramUniform2d = (PFNGLPROGRAMUNIFORM2DPROC)load("glProgramUniform2d"); 2149 | glad_glProgramUniform2dv = (PFNGLPROGRAMUNIFORM2DVPROC)load("glProgramUniform2dv"); 2150 | glad_glProgramUniform2ui = (PFNGLPROGRAMUNIFORM2UIPROC)load("glProgramUniform2ui"); 2151 | glad_glProgramUniform2uiv = (PFNGLPROGRAMUNIFORM2UIVPROC)load("glProgramUniform2uiv"); 2152 | glad_glProgramUniform3i = (PFNGLPROGRAMUNIFORM3IPROC)load("glProgramUniform3i"); 2153 | glad_glProgramUniform3iv = (PFNGLPROGRAMUNIFORM3IVPROC)load("glProgramUniform3iv"); 2154 | glad_glProgramUniform3f = (PFNGLPROGRAMUNIFORM3FPROC)load("glProgramUniform3f"); 2155 | glad_glProgramUniform3fv = (PFNGLPROGRAMUNIFORM3FVPROC)load("glProgramUniform3fv"); 2156 | glad_glProgramUniform3d = (PFNGLPROGRAMUNIFORM3DPROC)load("glProgramUniform3d"); 2157 | glad_glProgramUniform3dv = (PFNGLPROGRAMUNIFORM3DVPROC)load("glProgramUniform3dv"); 2158 | glad_glProgramUniform3ui = (PFNGLPROGRAMUNIFORM3UIPROC)load("glProgramUniform3ui"); 2159 | glad_glProgramUniform3uiv = (PFNGLPROGRAMUNIFORM3UIVPROC)load("glProgramUniform3uiv"); 2160 | glad_glProgramUniform4i = (PFNGLPROGRAMUNIFORM4IPROC)load("glProgramUniform4i"); 2161 | glad_glProgramUniform4iv = (PFNGLPROGRAMUNIFORM4IVPROC)load("glProgramUniform4iv"); 2162 | glad_glProgramUniform4f = (PFNGLPROGRAMUNIFORM4FPROC)load("glProgramUniform4f"); 2163 | glad_glProgramUniform4fv = (PFNGLPROGRAMUNIFORM4FVPROC)load("glProgramUniform4fv"); 2164 | glad_glProgramUniform4d = (PFNGLPROGRAMUNIFORM4DPROC)load("glProgramUniform4d"); 2165 | glad_glProgramUniform4dv = (PFNGLPROGRAMUNIFORM4DVPROC)load("glProgramUniform4dv"); 2166 | glad_glProgramUniform4ui = (PFNGLPROGRAMUNIFORM4UIPROC)load("glProgramUniform4ui"); 2167 | glad_glProgramUniform4uiv = (PFNGLPROGRAMUNIFORM4UIVPROC)load("glProgramUniform4uiv"); 2168 | glad_glProgramUniformMatrix2fv = (PFNGLPROGRAMUNIFORMMATRIX2FVPROC)load("glProgramUniformMatrix2fv"); 2169 | glad_glProgramUniformMatrix3fv = (PFNGLPROGRAMUNIFORMMATRIX3FVPROC)load("glProgramUniformMatrix3fv"); 2170 | glad_glProgramUniformMatrix4fv = (PFNGLPROGRAMUNIFORMMATRIX4FVPROC)load("glProgramUniformMatrix4fv"); 2171 | glad_glProgramUniformMatrix2dv = (PFNGLPROGRAMUNIFORMMATRIX2DVPROC)load("glProgramUniformMatrix2dv"); 2172 | glad_glProgramUniformMatrix3dv = (PFNGLPROGRAMUNIFORMMATRIX3DVPROC)load("glProgramUniformMatrix3dv"); 2173 | glad_glProgramUniformMatrix4dv = (PFNGLPROGRAMUNIFORMMATRIX4DVPROC)load("glProgramUniformMatrix4dv"); 2174 | glad_glProgramUniformMatrix2x3fv = (PFNGLPROGRAMUNIFORMMATRIX2X3FVPROC)load("glProgramUniformMatrix2x3fv"); 2175 | glad_glProgramUniformMatrix3x2fv = (PFNGLPROGRAMUNIFORMMATRIX3X2FVPROC)load("glProgramUniformMatrix3x2fv"); 2176 | glad_glProgramUniformMatrix2x4fv = (PFNGLPROGRAMUNIFORMMATRIX2X4FVPROC)load("glProgramUniformMatrix2x4fv"); 2177 | glad_glProgramUniformMatrix4x2fv = (PFNGLPROGRAMUNIFORMMATRIX4X2FVPROC)load("glProgramUniformMatrix4x2fv"); 2178 | glad_glProgramUniformMatrix3x4fv = (PFNGLPROGRAMUNIFORMMATRIX3X4FVPROC)load("glProgramUniformMatrix3x4fv"); 2179 | glad_glProgramUniformMatrix4x3fv = (PFNGLPROGRAMUNIFORMMATRIX4X3FVPROC)load("glProgramUniformMatrix4x3fv"); 2180 | glad_glProgramUniformMatrix2x3dv = (PFNGLPROGRAMUNIFORMMATRIX2X3DVPROC)load("glProgramUniformMatrix2x3dv"); 2181 | glad_glProgramUniformMatrix3x2dv = (PFNGLPROGRAMUNIFORMMATRIX3X2DVPROC)load("glProgramUniformMatrix3x2dv"); 2182 | glad_glProgramUniformMatrix2x4dv = (PFNGLPROGRAMUNIFORMMATRIX2X4DVPROC)load("glProgramUniformMatrix2x4dv"); 2183 | glad_glProgramUniformMatrix4x2dv = (PFNGLPROGRAMUNIFORMMATRIX4X2DVPROC)load("glProgramUniformMatrix4x2dv"); 2184 | glad_glProgramUniformMatrix3x4dv = (PFNGLPROGRAMUNIFORMMATRIX3X4DVPROC)load("glProgramUniformMatrix3x4dv"); 2185 | glad_glProgramUniformMatrix4x3dv = (PFNGLPROGRAMUNIFORMMATRIX4X3DVPROC)load("glProgramUniformMatrix4x3dv"); 2186 | glad_glValidateProgramPipeline = (PFNGLVALIDATEPROGRAMPIPELINEPROC)load("glValidateProgramPipeline"); 2187 | glad_glGetProgramPipelineInfoLog = (PFNGLGETPROGRAMPIPELINEINFOLOGPROC)load("glGetProgramPipelineInfoLog"); 2188 | glad_glVertexAttribL1d = (PFNGLVERTEXATTRIBL1DPROC)load("glVertexAttribL1d"); 2189 | glad_glVertexAttribL2d = (PFNGLVERTEXATTRIBL2DPROC)load("glVertexAttribL2d"); 2190 | glad_glVertexAttribL3d = (PFNGLVERTEXATTRIBL3DPROC)load("glVertexAttribL3d"); 2191 | glad_glVertexAttribL4d = (PFNGLVERTEXATTRIBL4DPROC)load("glVertexAttribL4d"); 2192 | glad_glVertexAttribL1dv = (PFNGLVERTEXATTRIBL1DVPROC)load("glVertexAttribL1dv"); 2193 | glad_glVertexAttribL2dv = (PFNGLVERTEXATTRIBL2DVPROC)load("glVertexAttribL2dv"); 2194 | glad_glVertexAttribL3dv = (PFNGLVERTEXATTRIBL3DVPROC)load("glVertexAttribL3dv"); 2195 | glad_glVertexAttribL4dv = (PFNGLVERTEXATTRIBL4DVPROC)load("glVertexAttribL4dv"); 2196 | glad_glVertexAttribLPointer = (PFNGLVERTEXATTRIBLPOINTERPROC)load("glVertexAttribLPointer"); 2197 | glad_glGetVertexAttribLdv = (PFNGLGETVERTEXATTRIBLDVPROC)load("glGetVertexAttribLdv"); 2198 | glad_glViewportArrayv = (PFNGLVIEWPORTARRAYVPROC)load("glViewportArrayv"); 2199 | glad_glViewportIndexedf = (PFNGLVIEWPORTINDEXEDFPROC)load("glViewportIndexedf"); 2200 | glad_glViewportIndexedfv = (PFNGLVIEWPORTINDEXEDFVPROC)load("glViewportIndexedfv"); 2201 | glad_glScissorArrayv = (PFNGLSCISSORARRAYVPROC)load("glScissorArrayv"); 2202 | glad_glScissorIndexed = (PFNGLSCISSORINDEXEDPROC)load("glScissorIndexed"); 2203 | glad_glScissorIndexedv = (PFNGLSCISSORINDEXEDVPROC)load("glScissorIndexedv"); 2204 | glad_glDepthRangeArrayv = (PFNGLDEPTHRANGEARRAYVPROC)load("glDepthRangeArrayv"); 2205 | glad_glDepthRangeIndexed = (PFNGLDEPTHRANGEINDEXEDPROC)load("glDepthRangeIndexed"); 2206 | glad_glGetFloati_v = (PFNGLGETFLOATI_VPROC)load("glGetFloati_v"); 2207 | glad_glGetDoublei_v = (PFNGLGETDOUBLEI_VPROC)load("glGetDoublei_v"); 2208 | } 2209 | static void load_GL_VERSION_4_2(GLADloadproc load) { 2210 | if(!GLAD_GL_VERSION_4_2) return; 2211 | glad_glDrawArraysInstancedBaseInstance = (PFNGLDRAWARRAYSINSTANCEDBASEINSTANCEPROC)load("glDrawArraysInstancedBaseInstance"); 2212 | glad_glDrawElementsInstancedBaseInstance = (PFNGLDRAWELEMENTSINSTANCEDBASEINSTANCEPROC)load("glDrawElementsInstancedBaseInstance"); 2213 | glad_glDrawElementsInstancedBaseVertexBaseInstance = (PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXBASEINSTANCEPROC)load("glDrawElementsInstancedBaseVertexBaseInstance"); 2214 | glad_glGetInternalformativ = (PFNGLGETINTERNALFORMATIVPROC)load("glGetInternalformativ"); 2215 | glad_glGetActiveAtomicCounterBufferiv = (PFNGLGETACTIVEATOMICCOUNTERBUFFERIVPROC)load("glGetActiveAtomicCounterBufferiv"); 2216 | glad_glBindImageTexture = (PFNGLBINDIMAGETEXTUREPROC)load("glBindImageTexture"); 2217 | glad_glMemoryBarrier = (PFNGLMEMORYBARRIERPROC)load("glMemoryBarrier"); 2218 | glad_glTexStorage1D = (PFNGLTEXSTORAGE1DPROC)load("glTexStorage1D"); 2219 | glad_glTexStorage2D = (PFNGLTEXSTORAGE2DPROC)load("glTexStorage2D"); 2220 | glad_glTexStorage3D = (PFNGLTEXSTORAGE3DPROC)load("glTexStorage3D"); 2221 | glad_glDrawTransformFeedbackInstanced = (PFNGLDRAWTRANSFORMFEEDBACKINSTANCEDPROC)load("glDrawTransformFeedbackInstanced"); 2222 | glad_glDrawTransformFeedbackStreamInstanced = (PFNGLDRAWTRANSFORMFEEDBACKSTREAMINSTANCEDPROC)load("glDrawTransformFeedbackStreamInstanced"); 2223 | } 2224 | static void load_GL_VERSION_4_3(GLADloadproc load) { 2225 | if(!GLAD_GL_VERSION_4_3) return; 2226 | glad_glClearBufferData = (PFNGLCLEARBUFFERDATAPROC)load("glClearBufferData"); 2227 | glad_glClearBufferSubData = (PFNGLCLEARBUFFERSUBDATAPROC)load("glClearBufferSubData"); 2228 | glad_glDispatchCompute = (PFNGLDISPATCHCOMPUTEPROC)load("glDispatchCompute"); 2229 | glad_glDispatchComputeIndirect = (PFNGLDISPATCHCOMPUTEINDIRECTPROC)load("glDispatchComputeIndirect"); 2230 | glad_glCopyImageSubData = (PFNGLCOPYIMAGESUBDATAPROC)load("glCopyImageSubData"); 2231 | glad_glFramebufferParameteri = (PFNGLFRAMEBUFFERPARAMETERIPROC)load("glFramebufferParameteri"); 2232 | glad_glGetFramebufferParameteriv = (PFNGLGETFRAMEBUFFERPARAMETERIVPROC)load("glGetFramebufferParameteriv"); 2233 | glad_glGetInternalformati64v = (PFNGLGETINTERNALFORMATI64VPROC)load("glGetInternalformati64v"); 2234 | glad_glInvalidateTexSubImage = (PFNGLINVALIDATETEXSUBIMAGEPROC)load("glInvalidateTexSubImage"); 2235 | glad_glInvalidateTexImage = (PFNGLINVALIDATETEXIMAGEPROC)load("glInvalidateTexImage"); 2236 | glad_glInvalidateBufferSubData = (PFNGLINVALIDATEBUFFERSUBDATAPROC)load("glInvalidateBufferSubData"); 2237 | glad_glInvalidateBufferData = (PFNGLINVALIDATEBUFFERDATAPROC)load("glInvalidateBufferData"); 2238 | glad_glInvalidateFramebuffer = (PFNGLINVALIDATEFRAMEBUFFERPROC)load("glInvalidateFramebuffer"); 2239 | glad_glInvalidateSubFramebuffer = (PFNGLINVALIDATESUBFRAMEBUFFERPROC)load("glInvalidateSubFramebuffer"); 2240 | glad_glMultiDrawArraysIndirect = (PFNGLMULTIDRAWARRAYSINDIRECTPROC)load("glMultiDrawArraysIndirect"); 2241 | glad_glMultiDrawElementsIndirect = (PFNGLMULTIDRAWELEMENTSINDIRECTPROC)load("glMultiDrawElementsIndirect"); 2242 | glad_glGetProgramInterfaceiv = (PFNGLGETPROGRAMINTERFACEIVPROC)load("glGetProgramInterfaceiv"); 2243 | glad_glGetProgramResourceIndex = (PFNGLGETPROGRAMRESOURCEINDEXPROC)load("glGetProgramResourceIndex"); 2244 | glad_glGetProgramResourceName = (PFNGLGETPROGRAMRESOURCENAMEPROC)load("glGetProgramResourceName"); 2245 | glad_glGetProgramResourceiv = (PFNGLGETPROGRAMRESOURCEIVPROC)load("glGetProgramResourceiv"); 2246 | glad_glGetProgramResourceLocation = (PFNGLGETPROGRAMRESOURCELOCATIONPROC)load("glGetProgramResourceLocation"); 2247 | glad_glGetProgramResourceLocationIndex = (PFNGLGETPROGRAMRESOURCELOCATIONINDEXPROC)load("glGetProgramResourceLocationIndex"); 2248 | glad_glShaderStorageBlockBinding = (PFNGLSHADERSTORAGEBLOCKBINDINGPROC)load("glShaderStorageBlockBinding"); 2249 | glad_glTexBufferRange = (PFNGLTEXBUFFERRANGEPROC)load("glTexBufferRange"); 2250 | glad_glTexStorage2DMultisample = (PFNGLTEXSTORAGE2DMULTISAMPLEPROC)load("glTexStorage2DMultisample"); 2251 | glad_glTexStorage3DMultisample = (PFNGLTEXSTORAGE3DMULTISAMPLEPROC)load("glTexStorage3DMultisample"); 2252 | glad_glTextureView = (PFNGLTEXTUREVIEWPROC)load("glTextureView"); 2253 | glad_glBindVertexBuffer = (PFNGLBINDVERTEXBUFFERPROC)load("glBindVertexBuffer"); 2254 | glad_glVertexAttribFormat = (PFNGLVERTEXATTRIBFORMATPROC)load("glVertexAttribFormat"); 2255 | glad_glVertexAttribIFormat = (PFNGLVERTEXATTRIBIFORMATPROC)load("glVertexAttribIFormat"); 2256 | glad_glVertexAttribLFormat = (PFNGLVERTEXATTRIBLFORMATPROC)load("glVertexAttribLFormat"); 2257 | glad_glVertexAttribBinding = (PFNGLVERTEXATTRIBBINDINGPROC)load("glVertexAttribBinding"); 2258 | glad_glVertexBindingDivisor = (PFNGLVERTEXBINDINGDIVISORPROC)load("glVertexBindingDivisor"); 2259 | glad_glDebugMessageControl = (PFNGLDEBUGMESSAGECONTROLPROC)load("glDebugMessageControl"); 2260 | glad_glDebugMessageInsert = (PFNGLDEBUGMESSAGEINSERTPROC)load("glDebugMessageInsert"); 2261 | glad_glDebugMessageCallback = (PFNGLDEBUGMESSAGECALLBACKPROC)load("glDebugMessageCallback"); 2262 | glad_glGetDebugMessageLog = (PFNGLGETDEBUGMESSAGELOGPROC)load("glGetDebugMessageLog"); 2263 | glad_glPushDebugGroup = (PFNGLPUSHDEBUGGROUPPROC)load("glPushDebugGroup"); 2264 | glad_glPopDebugGroup = (PFNGLPOPDEBUGGROUPPROC)load("glPopDebugGroup"); 2265 | glad_glObjectLabel = (PFNGLOBJECTLABELPROC)load("glObjectLabel"); 2266 | glad_glGetObjectLabel = (PFNGLGETOBJECTLABELPROC)load("glGetObjectLabel"); 2267 | glad_glObjectPtrLabel = (PFNGLOBJECTPTRLABELPROC)load("glObjectPtrLabel"); 2268 | glad_glGetObjectPtrLabel = (PFNGLGETOBJECTPTRLABELPROC)load("glGetObjectPtrLabel"); 2269 | glad_glGetPointerv = (PFNGLGETPOINTERVPROC)load("glGetPointerv"); 2270 | } 2271 | static void load_GL_VERSION_4_4(GLADloadproc load) { 2272 | if(!GLAD_GL_VERSION_4_4) return; 2273 | glad_glBufferStorage = (PFNGLBUFFERSTORAGEPROC)load("glBufferStorage"); 2274 | glad_glClearTexImage = (PFNGLCLEARTEXIMAGEPROC)load("glClearTexImage"); 2275 | glad_glClearTexSubImage = (PFNGLCLEARTEXSUBIMAGEPROC)load("glClearTexSubImage"); 2276 | glad_glBindBuffersBase = (PFNGLBINDBUFFERSBASEPROC)load("glBindBuffersBase"); 2277 | glad_glBindBuffersRange = (PFNGLBINDBUFFERSRANGEPROC)load("glBindBuffersRange"); 2278 | glad_glBindTextures = (PFNGLBINDTEXTURESPROC)load("glBindTextures"); 2279 | glad_glBindSamplers = (PFNGLBINDSAMPLERSPROC)load("glBindSamplers"); 2280 | glad_glBindImageTextures = (PFNGLBINDIMAGETEXTURESPROC)load("glBindImageTextures"); 2281 | glad_glBindVertexBuffers = (PFNGLBINDVERTEXBUFFERSPROC)load("glBindVertexBuffers"); 2282 | } 2283 | static void load_GL_VERSION_4_5(GLADloadproc load) { 2284 | if(!GLAD_GL_VERSION_4_5) return; 2285 | glad_glClipControl = (PFNGLCLIPCONTROLPROC)load("glClipControl"); 2286 | glad_glCreateTransformFeedbacks = (PFNGLCREATETRANSFORMFEEDBACKSPROC)load("glCreateTransformFeedbacks"); 2287 | glad_glTransformFeedbackBufferBase = (PFNGLTRANSFORMFEEDBACKBUFFERBASEPROC)load("glTransformFeedbackBufferBase"); 2288 | glad_glTransformFeedbackBufferRange = (PFNGLTRANSFORMFEEDBACKBUFFERRANGEPROC)load("glTransformFeedbackBufferRange"); 2289 | glad_glGetTransformFeedbackiv = (PFNGLGETTRANSFORMFEEDBACKIVPROC)load("glGetTransformFeedbackiv"); 2290 | glad_glGetTransformFeedbacki_v = (PFNGLGETTRANSFORMFEEDBACKI_VPROC)load("glGetTransformFeedbacki_v"); 2291 | glad_glGetTransformFeedbacki64_v = (PFNGLGETTRANSFORMFEEDBACKI64_VPROC)load("glGetTransformFeedbacki64_v"); 2292 | glad_glCreateBuffers = (PFNGLCREATEBUFFERSPROC)load("glCreateBuffers"); 2293 | glad_glNamedBufferStorage = (PFNGLNAMEDBUFFERSTORAGEPROC)load("glNamedBufferStorage"); 2294 | glad_glNamedBufferData = (PFNGLNAMEDBUFFERDATAPROC)load("glNamedBufferData"); 2295 | glad_glNamedBufferSubData = (PFNGLNAMEDBUFFERSUBDATAPROC)load("glNamedBufferSubData"); 2296 | glad_glCopyNamedBufferSubData = (PFNGLCOPYNAMEDBUFFERSUBDATAPROC)load("glCopyNamedBufferSubData"); 2297 | glad_glClearNamedBufferData = (PFNGLCLEARNAMEDBUFFERDATAPROC)load("glClearNamedBufferData"); 2298 | glad_glClearNamedBufferSubData = (PFNGLCLEARNAMEDBUFFERSUBDATAPROC)load("glClearNamedBufferSubData"); 2299 | glad_glMapNamedBuffer = (PFNGLMAPNAMEDBUFFERPROC)load("glMapNamedBuffer"); 2300 | glad_glMapNamedBufferRange = (PFNGLMAPNAMEDBUFFERRANGEPROC)load("glMapNamedBufferRange"); 2301 | glad_glUnmapNamedBuffer = (PFNGLUNMAPNAMEDBUFFERPROC)load("glUnmapNamedBuffer"); 2302 | glad_glFlushMappedNamedBufferRange = (PFNGLFLUSHMAPPEDNAMEDBUFFERRANGEPROC)load("glFlushMappedNamedBufferRange"); 2303 | glad_glGetNamedBufferParameteriv = (PFNGLGETNAMEDBUFFERPARAMETERIVPROC)load("glGetNamedBufferParameteriv"); 2304 | glad_glGetNamedBufferParameteri64v = (PFNGLGETNAMEDBUFFERPARAMETERI64VPROC)load("glGetNamedBufferParameteri64v"); 2305 | glad_glGetNamedBufferPointerv = (PFNGLGETNAMEDBUFFERPOINTERVPROC)load("glGetNamedBufferPointerv"); 2306 | glad_glGetNamedBufferSubData = (PFNGLGETNAMEDBUFFERSUBDATAPROC)load("glGetNamedBufferSubData"); 2307 | glad_glCreateFramebuffers = (PFNGLCREATEFRAMEBUFFERSPROC)load("glCreateFramebuffers"); 2308 | glad_glNamedFramebufferRenderbuffer = (PFNGLNAMEDFRAMEBUFFERRENDERBUFFERPROC)load("glNamedFramebufferRenderbuffer"); 2309 | glad_glNamedFramebufferParameteri = (PFNGLNAMEDFRAMEBUFFERPARAMETERIPROC)load("glNamedFramebufferParameteri"); 2310 | glad_glNamedFramebufferTexture = (PFNGLNAMEDFRAMEBUFFERTEXTUREPROC)load("glNamedFramebufferTexture"); 2311 | glad_glNamedFramebufferTextureLayer = (PFNGLNAMEDFRAMEBUFFERTEXTURELAYERPROC)load("glNamedFramebufferTextureLayer"); 2312 | glad_glNamedFramebufferDrawBuffer = (PFNGLNAMEDFRAMEBUFFERDRAWBUFFERPROC)load("glNamedFramebufferDrawBuffer"); 2313 | glad_glNamedFramebufferDrawBuffers = (PFNGLNAMEDFRAMEBUFFERDRAWBUFFERSPROC)load("glNamedFramebufferDrawBuffers"); 2314 | glad_glNamedFramebufferReadBuffer = (PFNGLNAMEDFRAMEBUFFERREADBUFFERPROC)load("glNamedFramebufferReadBuffer"); 2315 | glad_glInvalidateNamedFramebufferData = (PFNGLINVALIDATENAMEDFRAMEBUFFERDATAPROC)load("glInvalidateNamedFramebufferData"); 2316 | glad_glInvalidateNamedFramebufferSubData = (PFNGLINVALIDATENAMEDFRAMEBUFFERSUBDATAPROC)load("glInvalidateNamedFramebufferSubData"); 2317 | glad_glClearNamedFramebufferiv = (PFNGLCLEARNAMEDFRAMEBUFFERIVPROC)load("glClearNamedFramebufferiv"); 2318 | glad_glClearNamedFramebufferuiv = (PFNGLCLEARNAMEDFRAMEBUFFERUIVPROC)load("glClearNamedFramebufferuiv"); 2319 | glad_glClearNamedFramebufferfv = (PFNGLCLEARNAMEDFRAMEBUFFERFVPROC)load("glClearNamedFramebufferfv"); 2320 | glad_glClearNamedFramebufferfi = (PFNGLCLEARNAMEDFRAMEBUFFERFIPROC)load("glClearNamedFramebufferfi"); 2321 | glad_glBlitNamedFramebuffer = (PFNGLBLITNAMEDFRAMEBUFFERPROC)load("glBlitNamedFramebuffer"); 2322 | glad_glCheckNamedFramebufferStatus = (PFNGLCHECKNAMEDFRAMEBUFFERSTATUSPROC)load("glCheckNamedFramebufferStatus"); 2323 | glad_glGetNamedFramebufferParameteriv = (PFNGLGETNAMEDFRAMEBUFFERPARAMETERIVPROC)load("glGetNamedFramebufferParameteriv"); 2324 | glad_glGetNamedFramebufferAttachmentParameteriv = (PFNGLGETNAMEDFRAMEBUFFERATTACHMENTPARAMETERIVPROC)load("glGetNamedFramebufferAttachmentParameteriv"); 2325 | glad_glCreateRenderbuffers = (PFNGLCREATERENDERBUFFERSPROC)load("glCreateRenderbuffers"); 2326 | glad_glNamedRenderbufferStorage = (PFNGLNAMEDRENDERBUFFERSTORAGEPROC)load("glNamedRenderbufferStorage"); 2327 | glad_glNamedRenderbufferStorageMultisample = (PFNGLNAMEDRENDERBUFFERSTORAGEMULTISAMPLEPROC)load("glNamedRenderbufferStorageMultisample"); 2328 | glad_glGetNamedRenderbufferParameteriv = (PFNGLGETNAMEDRENDERBUFFERPARAMETERIVPROC)load("glGetNamedRenderbufferParameteriv"); 2329 | glad_glCreateTextures = (PFNGLCREATETEXTURESPROC)load("glCreateTextures"); 2330 | glad_glTextureBuffer = (PFNGLTEXTUREBUFFERPROC)load("glTextureBuffer"); 2331 | glad_glTextureBufferRange = (PFNGLTEXTUREBUFFERRANGEPROC)load("glTextureBufferRange"); 2332 | glad_glTextureStorage1D = (PFNGLTEXTURESTORAGE1DPROC)load("glTextureStorage1D"); 2333 | glad_glTextureStorage2D = (PFNGLTEXTURESTORAGE2DPROC)load("glTextureStorage2D"); 2334 | glad_glTextureStorage3D = (PFNGLTEXTURESTORAGE3DPROC)load("glTextureStorage3D"); 2335 | glad_glTextureStorage2DMultisample = (PFNGLTEXTURESTORAGE2DMULTISAMPLEPROC)load("glTextureStorage2DMultisample"); 2336 | glad_glTextureStorage3DMultisample = (PFNGLTEXTURESTORAGE3DMULTISAMPLEPROC)load("glTextureStorage3DMultisample"); 2337 | glad_glTextureSubImage1D = (PFNGLTEXTURESUBIMAGE1DPROC)load("glTextureSubImage1D"); 2338 | glad_glTextureSubImage2D = (PFNGLTEXTURESUBIMAGE2DPROC)load("glTextureSubImage2D"); 2339 | glad_glTextureSubImage3D = (PFNGLTEXTURESUBIMAGE3DPROC)load("glTextureSubImage3D"); 2340 | glad_glCompressedTextureSubImage1D = (PFNGLCOMPRESSEDTEXTURESUBIMAGE1DPROC)load("glCompressedTextureSubImage1D"); 2341 | glad_glCompressedTextureSubImage2D = (PFNGLCOMPRESSEDTEXTURESUBIMAGE2DPROC)load("glCompressedTextureSubImage2D"); 2342 | glad_glCompressedTextureSubImage3D = (PFNGLCOMPRESSEDTEXTURESUBIMAGE3DPROC)load("glCompressedTextureSubImage3D"); 2343 | glad_glCopyTextureSubImage1D = (PFNGLCOPYTEXTURESUBIMAGE1DPROC)load("glCopyTextureSubImage1D"); 2344 | glad_glCopyTextureSubImage2D = (PFNGLCOPYTEXTURESUBIMAGE2DPROC)load("glCopyTextureSubImage2D"); 2345 | glad_glCopyTextureSubImage3D = (PFNGLCOPYTEXTURESUBIMAGE3DPROC)load("glCopyTextureSubImage3D"); 2346 | glad_glTextureParameterf = (PFNGLTEXTUREPARAMETERFPROC)load("glTextureParameterf"); 2347 | glad_glTextureParameterfv = (PFNGLTEXTUREPARAMETERFVPROC)load("glTextureParameterfv"); 2348 | glad_glTextureParameteri = (PFNGLTEXTUREPARAMETERIPROC)load("glTextureParameteri"); 2349 | glad_glTextureParameterIiv = (PFNGLTEXTUREPARAMETERIIVPROC)load("glTextureParameterIiv"); 2350 | glad_glTextureParameterIuiv = (PFNGLTEXTUREPARAMETERIUIVPROC)load("glTextureParameterIuiv"); 2351 | glad_glTextureParameteriv = (PFNGLTEXTUREPARAMETERIVPROC)load("glTextureParameteriv"); 2352 | glad_glGenerateTextureMipmap = (PFNGLGENERATETEXTUREMIPMAPPROC)load("glGenerateTextureMipmap"); 2353 | glad_glBindTextureUnit = (PFNGLBINDTEXTUREUNITPROC)load("glBindTextureUnit"); 2354 | glad_glGetTextureImage = (PFNGLGETTEXTUREIMAGEPROC)load("glGetTextureImage"); 2355 | glad_glGetCompressedTextureImage = (PFNGLGETCOMPRESSEDTEXTUREIMAGEPROC)load("glGetCompressedTextureImage"); 2356 | glad_glGetTextureLevelParameterfv = (PFNGLGETTEXTURELEVELPARAMETERFVPROC)load("glGetTextureLevelParameterfv"); 2357 | glad_glGetTextureLevelParameteriv = (PFNGLGETTEXTURELEVELPARAMETERIVPROC)load("glGetTextureLevelParameteriv"); 2358 | glad_glGetTextureParameterfv = (PFNGLGETTEXTUREPARAMETERFVPROC)load("glGetTextureParameterfv"); 2359 | glad_glGetTextureParameterIiv = (PFNGLGETTEXTUREPARAMETERIIVPROC)load("glGetTextureParameterIiv"); 2360 | glad_glGetTextureParameterIuiv = (PFNGLGETTEXTUREPARAMETERIUIVPROC)load("glGetTextureParameterIuiv"); 2361 | glad_glGetTextureParameteriv = (PFNGLGETTEXTUREPARAMETERIVPROC)load("glGetTextureParameteriv"); 2362 | glad_glCreateVertexArrays = (PFNGLCREATEVERTEXARRAYSPROC)load("glCreateVertexArrays"); 2363 | glad_glDisableVertexArrayAttrib = (PFNGLDISABLEVERTEXARRAYATTRIBPROC)load("glDisableVertexArrayAttrib"); 2364 | glad_glEnableVertexArrayAttrib = (PFNGLENABLEVERTEXARRAYATTRIBPROC)load("glEnableVertexArrayAttrib"); 2365 | glad_glVertexArrayElementBuffer = (PFNGLVERTEXARRAYELEMENTBUFFERPROC)load("glVertexArrayElementBuffer"); 2366 | glad_glVertexArrayVertexBuffer = (PFNGLVERTEXARRAYVERTEXBUFFERPROC)load("glVertexArrayVertexBuffer"); 2367 | glad_glVertexArrayVertexBuffers = (PFNGLVERTEXARRAYVERTEXBUFFERSPROC)load("glVertexArrayVertexBuffers"); 2368 | glad_glVertexArrayAttribBinding = (PFNGLVERTEXARRAYATTRIBBINDINGPROC)load("glVertexArrayAttribBinding"); 2369 | glad_glVertexArrayAttribFormat = (PFNGLVERTEXARRAYATTRIBFORMATPROC)load("glVertexArrayAttribFormat"); 2370 | glad_glVertexArrayAttribIFormat = (PFNGLVERTEXARRAYATTRIBIFORMATPROC)load("glVertexArrayAttribIFormat"); 2371 | glad_glVertexArrayAttribLFormat = (PFNGLVERTEXARRAYATTRIBLFORMATPROC)load("glVertexArrayAttribLFormat"); 2372 | glad_glVertexArrayBindingDivisor = (PFNGLVERTEXARRAYBINDINGDIVISORPROC)load("glVertexArrayBindingDivisor"); 2373 | glad_glGetVertexArrayiv = (PFNGLGETVERTEXARRAYIVPROC)load("glGetVertexArrayiv"); 2374 | glad_glGetVertexArrayIndexediv = (PFNGLGETVERTEXARRAYINDEXEDIVPROC)load("glGetVertexArrayIndexediv"); 2375 | glad_glGetVertexArrayIndexed64iv = (PFNGLGETVERTEXARRAYINDEXED64IVPROC)load("glGetVertexArrayIndexed64iv"); 2376 | glad_glCreateSamplers = (PFNGLCREATESAMPLERSPROC)load("glCreateSamplers"); 2377 | glad_glCreateProgramPipelines = (PFNGLCREATEPROGRAMPIPELINESPROC)load("glCreateProgramPipelines"); 2378 | glad_glCreateQueries = (PFNGLCREATEQUERIESPROC)load("glCreateQueries"); 2379 | glad_glGetQueryBufferObjecti64v = (PFNGLGETQUERYBUFFEROBJECTI64VPROC)load("glGetQueryBufferObjecti64v"); 2380 | glad_glGetQueryBufferObjectiv = (PFNGLGETQUERYBUFFEROBJECTIVPROC)load("glGetQueryBufferObjectiv"); 2381 | glad_glGetQueryBufferObjectui64v = (PFNGLGETQUERYBUFFEROBJECTUI64VPROC)load("glGetQueryBufferObjectui64v"); 2382 | glad_glGetQueryBufferObjectuiv = (PFNGLGETQUERYBUFFEROBJECTUIVPROC)load("glGetQueryBufferObjectuiv"); 2383 | glad_glMemoryBarrierByRegion = (PFNGLMEMORYBARRIERBYREGIONPROC)load("glMemoryBarrierByRegion"); 2384 | glad_glGetTextureSubImage = (PFNGLGETTEXTURESUBIMAGEPROC)load("glGetTextureSubImage"); 2385 | glad_glGetCompressedTextureSubImage = (PFNGLGETCOMPRESSEDTEXTURESUBIMAGEPROC)load("glGetCompressedTextureSubImage"); 2386 | glad_glGetGraphicsResetStatus = (PFNGLGETGRAPHICSRESETSTATUSPROC)load("glGetGraphicsResetStatus"); 2387 | glad_glGetnCompressedTexImage = (PFNGLGETNCOMPRESSEDTEXIMAGEPROC)load("glGetnCompressedTexImage"); 2388 | glad_glGetnTexImage = (PFNGLGETNTEXIMAGEPROC)load("glGetnTexImage"); 2389 | glad_glGetnUniformdv = (PFNGLGETNUNIFORMDVPROC)load("glGetnUniformdv"); 2390 | glad_glGetnUniformfv = (PFNGLGETNUNIFORMFVPROC)load("glGetnUniformfv"); 2391 | glad_glGetnUniformiv = (PFNGLGETNUNIFORMIVPROC)load("glGetnUniformiv"); 2392 | glad_glGetnUniformuiv = (PFNGLGETNUNIFORMUIVPROC)load("glGetnUniformuiv"); 2393 | glad_glReadnPixels = (PFNGLREADNPIXELSPROC)load("glReadnPixels"); 2394 | glad_glGetnMapdv = (PFNGLGETNMAPDVPROC)load("glGetnMapdv"); 2395 | glad_glGetnMapfv = (PFNGLGETNMAPFVPROC)load("glGetnMapfv"); 2396 | glad_glGetnMapiv = (PFNGLGETNMAPIVPROC)load("glGetnMapiv"); 2397 | glad_glGetnPixelMapfv = (PFNGLGETNPIXELMAPFVPROC)load("glGetnPixelMapfv"); 2398 | glad_glGetnPixelMapuiv = (PFNGLGETNPIXELMAPUIVPROC)load("glGetnPixelMapuiv"); 2399 | glad_glGetnPixelMapusv = (PFNGLGETNPIXELMAPUSVPROC)load("glGetnPixelMapusv"); 2400 | glad_glGetnPolygonStipple = (PFNGLGETNPOLYGONSTIPPLEPROC)load("glGetnPolygonStipple"); 2401 | glad_glGetnColorTable = (PFNGLGETNCOLORTABLEPROC)load("glGetnColorTable"); 2402 | glad_glGetnConvolutionFilter = (PFNGLGETNCONVOLUTIONFILTERPROC)load("glGetnConvolutionFilter"); 2403 | glad_glGetnSeparableFilter = (PFNGLGETNSEPARABLEFILTERPROC)load("glGetnSeparableFilter"); 2404 | glad_glGetnHistogram = (PFNGLGETNHISTOGRAMPROC)load("glGetnHistogram"); 2405 | glad_glGetnMinmax = (PFNGLGETNMINMAXPROC)load("glGetnMinmax"); 2406 | glad_glTextureBarrier = (PFNGLTEXTUREBARRIERPROC)load("glTextureBarrier"); 2407 | } 2408 | static void load_GL_VERSION_4_6(GLADloadproc load) { 2409 | if(!GLAD_GL_VERSION_4_6) return; 2410 | glad_glSpecializeShader = (PFNGLSPECIALIZESHADERPROC)load("glSpecializeShader"); 2411 | glad_glMultiDrawArraysIndirectCount = (PFNGLMULTIDRAWARRAYSINDIRECTCOUNTPROC)load("glMultiDrawArraysIndirectCount"); 2412 | glad_glMultiDrawElementsIndirectCount = (PFNGLMULTIDRAWELEMENTSINDIRECTCOUNTPROC)load("glMultiDrawElementsIndirectCount"); 2413 | glad_glPolygonOffsetClamp = (PFNGLPOLYGONOFFSETCLAMPPROC)load("glPolygonOffsetClamp"); 2414 | } 2415 | static int find_extensionsGL(void) { 2416 | if (!get_exts()) return 0; 2417 | (void)&has_ext; 2418 | free_exts(); 2419 | return 1; 2420 | } 2421 | 2422 | static void find_coreGL(void) { 2423 | 2424 | /* Thank you @elmindreda 2425 | * https://github.com/elmindreda/greg/blob/master/templates/greg.c.in#L176 2426 | * https://github.com/glfw/glfw/blob/master/src/context.c#L36 2427 | */ 2428 | int i, major, minor; 2429 | 2430 | const char* version; 2431 | const char* prefixes[] = { 2432 | "OpenGL ES-CM ", 2433 | "OpenGL ES-CL ", 2434 | "OpenGL ES ", 2435 | NULL 2436 | }; 2437 | 2438 | version = (const char*) glGetString(GL_VERSION); 2439 | if (!version) return; 2440 | 2441 | for (i = 0; prefixes[i]; i++) { 2442 | const size_t length = strlen(prefixes[i]); 2443 | if (strncmp(version, prefixes[i], length) == 0) { 2444 | version += length; 2445 | break; 2446 | } 2447 | } 2448 | 2449 | /* PR #18 */ 2450 | #ifdef _MSC_VER 2451 | sscanf_s(version, "%d.%d", &major, &minor); 2452 | #else 2453 | sscanf(version, "%d.%d", &major, &minor); 2454 | #endif 2455 | 2456 | GLVersion.major = major; GLVersion.minor = minor; 2457 | max_loaded_major = major; max_loaded_minor = minor; 2458 | GLAD_GL_VERSION_1_0 = (major == 1 && minor >= 0) || major > 1; 2459 | GLAD_GL_VERSION_1_1 = (major == 1 && minor >= 1) || major > 1; 2460 | GLAD_GL_VERSION_1_2 = (major == 1 && minor >= 2) || major > 1; 2461 | GLAD_GL_VERSION_1_3 = (major == 1 && minor >= 3) || major > 1; 2462 | GLAD_GL_VERSION_1_4 = (major == 1 && minor >= 4) || major > 1; 2463 | GLAD_GL_VERSION_1_5 = (major == 1 && minor >= 5) || major > 1; 2464 | GLAD_GL_VERSION_2_0 = (major == 2 && minor >= 0) || major > 2; 2465 | GLAD_GL_VERSION_2_1 = (major == 2 && minor >= 1) || major > 2; 2466 | GLAD_GL_VERSION_3_0 = (major == 3 && minor >= 0) || major > 3; 2467 | GLAD_GL_VERSION_3_1 = (major == 3 && minor >= 1) || major > 3; 2468 | GLAD_GL_VERSION_3_2 = (major == 3 && minor >= 2) || major > 3; 2469 | GLAD_GL_VERSION_3_3 = (major == 3 && minor >= 3) || major > 3; 2470 | GLAD_GL_VERSION_4_0 = (major == 4 && minor >= 0) || major > 4; 2471 | GLAD_GL_VERSION_4_1 = (major == 4 && minor >= 1) || major > 4; 2472 | GLAD_GL_VERSION_4_2 = (major == 4 && minor >= 2) || major > 4; 2473 | GLAD_GL_VERSION_4_3 = (major == 4 && minor >= 3) || major > 4; 2474 | GLAD_GL_VERSION_4_4 = (major == 4 && minor >= 4) || major > 4; 2475 | GLAD_GL_VERSION_4_5 = (major == 4 && minor >= 5) || major > 4; 2476 | GLAD_GL_VERSION_4_6 = (major == 4 && minor >= 6) || major > 4; 2477 | if (GLVersion.major > 4 || (GLVersion.major >= 4 && GLVersion.minor >= 6)) { 2478 | max_loaded_major = 4; 2479 | max_loaded_minor = 6; 2480 | } 2481 | } 2482 | 2483 | int gladLoadGLLoader(GLADloadproc load) { 2484 | GLVersion.major = 0; GLVersion.minor = 0; 2485 | glGetString = (PFNGLGETSTRINGPROC)load("glGetString"); 2486 | if(glGetString == NULL) return 0; 2487 | if(glGetString(GL_VERSION) == NULL) return 0; 2488 | find_coreGL(); 2489 | load_GL_VERSION_1_0(load); 2490 | load_GL_VERSION_1_1(load); 2491 | load_GL_VERSION_1_2(load); 2492 | load_GL_VERSION_1_3(load); 2493 | load_GL_VERSION_1_4(load); 2494 | load_GL_VERSION_1_5(load); 2495 | load_GL_VERSION_2_0(load); 2496 | load_GL_VERSION_2_1(load); 2497 | load_GL_VERSION_3_0(load); 2498 | load_GL_VERSION_3_1(load); 2499 | load_GL_VERSION_3_2(load); 2500 | load_GL_VERSION_3_3(load); 2501 | load_GL_VERSION_4_0(load); 2502 | load_GL_VERSION_4_1(load); 2503 | load_GL_VERSION_4_2(load); 2504 | load_GL_VERSION_4_3(load); 2505 | load_GL_VERSION_4_4(load); 2506 | load_GL_VERSION_4_5(load); 2507 | load_GL_VERSION_4_6(load); 2508 | 2509 | if (!find_extensionsGL()) return 0; 2510 | return GLVersion.major != 0 || GLVersion.minor != 0; 2511 | } 2512 | 2513 | --------------------------------------------------------------------------------