glplatform-glcore.c 246 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271
  1. #ifndef _WIN32
  2. extern void (*glXGetProcAddress(const unsigned char *))(void);
  3. static inline void *LoadProcAddress(const char *name) { return glXGetProcAddress((const unsigned char *)name); }
  4. #include <stdio.h>
  5. #else
  6. #include <windows.h>
  7. #include <wingdi.h>
  8. #include <stdio.h>
  9. static PROC LoadProcAddress(const char *name) {
  10. PROC addr = wglGetProcAddress((LPCSTR)name);
  11. if (addr) return addr;
  12. else return (PROC)GetProcAddress(GetModuleHandleA("OpenGL32.dll"), (LPCSTR)name);
  13. }
  14. #endif
  15. #define GLPLATFORM_GL_VERSION 45
  16. #define GLPLATFORM_ENABLE_GL_ARB_ES2_compatibility
  17. #define GLPLATFORM_ENABLE_GL_ARB_ES3_1_compatibility
  18. #define GLPLATFORM_ENABLE_GL_ARB_ES3_compatibility
  19. #define GLPLATFORM_ENABLE_GL_ARB_arrays_of_arrays
  20. #define GLPLATFORM_ENABLE_GL_ARB_base_instance
  21. #define GLPLATFORM_ENABLE_GL_ARB_bindless_texture
  22. #define GLPLATFORM_ENABLE_GL_ARB_blend_func_extended
  23. #define GLPLATFORM_ENABLE_GL_ARB_buffer_storage
  24. #define GLPLATFORM_ENABLE_GL_ARB_cl_event
  25. #define GLPLATFORM_ENABLE_GL_ARB_clear_buffer_object
  26. #define GLPLATFORM_ENABLE_GL_ARB_clear_texture
  27. #define GLPLATFORM_ENABLE_GL_ARB_clip_control
  28. #define GLPLATFORM_ENABLE_GL_ARB_compressed_texture_pixel_storage
  29. #define GLPLATFORM_ENABLE_GL_ARB_compute_shader
  30. #define GLPLATFORM_ENABLE_GL_ARB_compute_variable_group_size
  31. #define GLPLATFORM_ENABLE_GL_ARB_conditional_render_inverted
  32. #define GLPLATFORM_ENABLE_GL_ARB_conservative_depth
  33. #define GLPLATFORM_ENABLE_GL_ARB_copy_buffer
  34. #define GLPLATFORM_ENABLE_GL_ARB_copy_image
  35. #define GLPLATFORM_ENABLE_GL_ARB_cull_distance
  36. #define GLPLATFORM_ENABLE_GL_ARB_debug_output
  37. #define GLPLATFORM_ENABLE_GL_ARB_depth_buffer_float
  38. #define GLPLATFORM_ENABLE_GL_ARB_depth_clamp
  39. #define GLPLATFORM_ENABLE_GL_ARB_derivative_control
  40. #define GLPLATFORM_ENABLE_GL_ARB_direct_state_access
  41. #define GLPLATFORM_ENABLE_GL_ARB_draw_buffers_blend
  42. #define GLPLATFORM_ENABLE_GL_ARB_draw_elements_base_vertex
  43. #define GLPLATFORM_ENABLE_GL_ARB_draw_indirect
  44. #define GLPLATFORM_ENABLE_GL_ARB_enhanced_layouts
  45. #define GLPLATFORM_ENABLE_GL_ARB_explicit_attrib_location
  46. #define GLPLATFORM_ENABLE_GL_ARB_explicit_uniform_location
  47. #define GLPLATFORM_ENABLE_GL_ARB_fragment_coord_conventions
  48. #define GLPLATFORM_ENABLE_GL_ARB_fragment_layer_viewport
  49. #define GLPLATFORM_ENABLE_GL_ARB_framebuffer_no_attachments
  50. #define GLPLATFORM_ENABLE_GL_ARB_framebuffer_object
  51. #define GLPLATFORM_ENABLE_GL_ARB_framebuffer_sRGB
  52. #define GLPLATFORM_ENABLE_GL_ARB_get_program_binary
  53. #define GLPLATFORM_ENABLE_GL_ARB_get_texture_sub_image
  54. #define GLPLATFORM_ENABLE_GL_ARB_gpu_shader5
  55. #define GLPLATFORM_ENABLE_GL_ARB_gpu_shader_fp64
  56. #define GLPLATFORM_ENABLE_GL_ARB_half_float_vertex
  57. #define GLPLATFORM_ENABLE_GL_ARB_imaging
  58. #define GLPLATFORM_ENABLE_GL_ARB_indirect_parameters
  59. #define GLPLATFORM_ENABLE_GL_ARB_internalformat_query
  60. #define GLPLATFORM_ENABLE_GL_ARB_internalformat_query2
  61. #define GLPLATFORM_ENABLE_GL_ARB_invalidate_subdata
  62. #define GLPLATFORM_ENABLE_GL_ARB_map_buffer_alignment
  63. #define GLPLATFORM_ENABLE_GL_ARB_map_buffer_range
  64. #define GLPLATFORM_ENABLE_GL_ARB_multi_bind
  65. #define GLPLATFORM_ENABLE_GL_ARB_multi_draw_indirect
  66. #define GLPLATFORM_ENABLE_GL_ARB_occlusion_query2
  67. #define GLPLATFORM_ENABLE_GL_ARB_pipeline_statistics_query
  68. #define GLPLATFORM_ENABLE_GL_ARB_program_interface_query
  69. #define GLPLATFORM_ENABLE_GL_ARB_provoking_vertex
  70. #define GLPLATFORM_ENABLE_GL_ARB_query_buffer_object
  71. #define GLPLATFORM_ENABLE_GL_ARB_robust_buffer_access_behavior
  72. #define GLPLATFORM_ENABLE_GL_ARB_robustness
  73. #define GLPLATFORM_ENABLE_GL_ARB_robustness_isolation
  74. #define GLPLATFORM_ENABLE_GL_ARB_sample_shading
  75. #define GLPLATFORM_ENABLE_GL_ARB_sampler_objects
  76. #define GLPLATFORM_ENABLE_GL_ARB_seamless_cube_map
  77. #define GLPLATFORM_ENABLE_GL_ARB_seamless_cubemap_per_texture
  78. #define GLPLATFORM_ENABLE_GL_ARB_separate_shader_objects
  79. #define GLPLATFORM_ENABLE_GL_ARB_shader_atomic_counters
  80. #define GLPLATFORM_ENABLE_GL_ARB_shader_bit_encoding
  81. #define GLPLATFORM_ENABLE_GL_ARB_shader_draw_parameters
  82. #define GLPLATFORM_ENABLE_GL_ARB_shader_group_vote
  83. #define GLPLATFORM_ENABLE_GL_ARB_shader_image_load_store
  84. #define GLPLATFORM_ENABLE_GL_ARB_shader_image_size
  85. #define GLPLATFORM_ENABLE_GL_ARB_shader_precision
  86. #define GLPLATFORM_ENABLE_GL_ARB_shader_stencil_export
  87. #define GLPLATFORM_ENABLE_GL_ARB_shader_storage_buffer_object
  88. #define GLPLATFORM_ENABLE_GL_ARB_shader_subroutine
  89. #define GLPLATFORM_ENABLE_GL_ARB_shader_texture_image_samples
  90. #define GLPLATFORM_ENABLE_GL_ARB_shading_language_420pack
  91. #define GLPLATFORM_ENABLE_GL_ARB_shading_language_include
  92. #define GLPLATFORM_ENABLE_GL_ARB_shading_language_packing
  93. #define GLPLATFORM_ENABLE_GL_ARB_sparse_buffer
  94. #define GLPLATFORM_ENABLE_GL_ARB_sparse_texture
  95. #define GLPLATFORM_ENABLE_GL_ARB_stencil_texturing
  96. #define GLPLATFORM_ENABLE_GL_ARB_sync
  97. #define GLPLATFORM_ENABLE_GL_ARB_tessellation_shader
  98. #define GLPLATFORM_ENABLE_GL_ARB_texture_barrier
  99. #define GLPLATFORM_ENABLE_GL_ARB_texture_buffer_object_rgb32
  100. #define GLPLATFORM_ENABLE_GL_ARB_texture_buffer_range
  101. #define GLPLATFORM_ENABLE_GL_ARB_texture_compression_bptc
  102. #define GLPLATFORM_ENABLE_GL_ARB_texture_compression_rgtc
  103. #define GLPLATFORM_ENABLE_GL_ARB_texture_cube_map_array
  104. #define GLPLATFORM_ENABLE_GL_ARB_texture_gather
  105. #define GLPLATFORM_ENABLE_GL_ARB_texture_mirror_clamp_to_edge
  106. #define GLPLATFORM_ENABLE_GL_ARB_texture_multisample
  107. #define GLPLATFORM_ENABLE_GL_ARB_texture_query_levels
  108. #define GLPLATFORM_ENABLE_GL_ARB_texture_query_lod
  109. #define GLPLATFORM_ENABLE_GL_ARB_texture_rg
  110. #define GLPLATFORM_ENABLE_GL_ARB_texture_rgb10_a2ui
  111. #define GLPLATFORM_ENABLE_GL_ARB_texture_stencil8
  112. #define GLPLATFORM_ENABLE_GL_ARB_texture_storage
  113. #define GLPLATFORM_ENABLE_GL_ARB_texture_storage_multisample
  114. #define GLPLATFORM_ENABLE_GL_ARB_texture_swizzle
  115. #define GLPLATFORM_ENABLE_GL_ARB_texture_view
  116. #define GLPLATFORM_ENABLE_GL_ARB_timer_query
  117. #define GLPLATFORM_ENABLE_GL_ARB_transform_feedback2
  118. #define GLPLATFORM_ENABLE_GL_ARB_transform_feedback3
  119. #define GLPLATFORM_ENABLE_GL_ARB_transform_feedback_instanced
  120. #define GLPLATFORM_ENABLE_GL_ARB_transform_feedback_overflow_query
  121. #define GLPLATFORM_ENABLE_GL_ARB_uniform_buffer_object
  122. #define GLPLATFORM_ENABLE_GL_ARB_vertex_array_bgra
  123. #define GLPLATFORM_ENABLE_GL_ARB_vertex_array_object
  124. #define GLPLATFORM_ENABLE_GL_ARB_vertex_attrib_64bit
  125. #define GLPLATFORM_ENABLE_GL_ARB_vertex_attrib_binding
  126. #define GLPLATFORM_ENABLE_GL_ARB_vertex_type_10f_11f_11f_rev
  127. #define GLPLATFORM_ENABLE_GL_ARB_vertex_type_2_10_10_10_rev
  128. #define GLPLATFORM_ENABLE_GL_ARB_viewport_array
  129. #define GLPLATFORM_ENABLE_GL_EXT_direct_state_access
  130. #define GLPLATFORM_ENABLE_GL_KHR_context_flush_control
  131. #define GLPLATFORM_ENABLE_GL_KHR_debug
  132. #define GLPLATFORM_ENABLE_GL_KHR_robust_buffer_access_behavior
  133. #define GLPLATFORM_ENABLE_GL_KHR_robustness
  134. #define GLPLATFORM_ENABLE_GL_KHR_texture_compression_astc_hdr
  135. #define GLPLATFORM_ENABLE_GL_KHR_texture_compression_astc_ldr
  136. #include "glplatform-glcore.h"
  137. void (*glActiveShaderProgram)(GLuint, GLuint) = NULL;
  138. void (*glActiveTexture)(GLenum) = NULL;
  139. void (*glAttachShader)(GLuint, GLuint) = NULL;
  140. void (*glBeginConditionalRender)(GLuint, GLenum) = NULL;
  141. void (*glBeginQuery)(GLenum, GLuint) = NULL;
  142. void (*glBeginQueryIndexed)(GLenum, GLuint, GLuint) = NULL;
  143. void (*glBeginTransformFeedback)(GLenum) = NULL;
  144. void (*glBindAttribLocation)(GLuint, GLuint, const GLchar *) = NULL;
  145. void (*glBindBuffer)(GLenum, GLuint) = NULL;
  146. void (*glBindBufferBase)(GLenum, GLuint, GLuint) = NULL;
  147. void (*glBindBufferRange)(GLenum, GLuint, GLuint, GLintptr, GLsizeiptr) = NULL;
  148. void (*glBindBuffersBase)(GLenum, GLuint, GLsizei, const GLuint *) = NULL;
  149. void (*glBindBuffersRange)(GLenum, GLuint, GLsizei, const GLuint *, const GLintptr *, const GLsizeiptr *) = NULL;
  150. void (*glBindFragDataLocation)(GLuint, GLuint, const GLchar *) = NULL;
  151. void (*glBindFragDataLocationIndexed)(GLuint, GLuint, GLuint, const GLchar *) = NULL;
  152. void (*glBindFramebuffer)(GLenum, GLuint) = NULL;
  153. void (*glBindImageTexture)(GLuint, GLuint, GLint, GLboolean, GLint, GLenum, GLenum) = NULL;
  154. void (*glBindImageTextures)(GLuint, GLsizei, const GLuint *) = NULL;
  155. void (*glBindMultiTextureEXT)(GLenum, GLenum, GLuint) = NULL;
  156. void (*glBindProgramPipeline)(GLuint) = NULL;
  157. void (*glBindRenderbuffer)(GLenum, GLuint) = NULL;
  158. void (*glBindSampler)(GLuint, GLuint) = NULL;
  159. void (*glBindSamplers)(GLuint, GLsizei, const GLuint *) = NULL;
  160. void (*glBindTexture)(GLenum, GLuint) = NULL;
  161. void (*glBindTextureUnit)(GLuint, GLuint) = NULL;
  162. void (*glBindTextures)(GLuint, GLsizei, const GLuint *) = NULL;
  163. void (*glBindTransformFeedback)(GLenum, GLuint) = NULL;
  164. void (*glBindVertexArray)(GLuint) = NULL;
  165. void (*glBindVertexBuffer)(GLuint, GLuint, GLintptr, GLsizei) = NULL;
  166. void (*glBindVertexBuffers)(GLuint, GLsizei, const GLuint *, const GLintptr *, const GLsizei *) = NULL;
  167. void (*glBlendColor)(GLfloat, GLfloat, GLfloat, GLfloat) = NULL;
  168. void (*glBlendEquation)(GLenum) = NULL;
  169. void (*glBlendEquationSeparate)(GLenum, GLenum) = NULL;
  170. void (*glBlendEquationSeparatei)(GLuint, GLenum, GLenum) = NULL;
  171. void (*glBlendEquationSeparateiARB)(GLuint, GLenum, GLenum) = NULL;
  172. void (*glBlendEquationi)(GLuint, GLenum) = NULL;
  173. void (*glBlendEquationiARB)(GLuint, GLenum) = NULL;
  174. void (*glBlendFunc)(GLenum, GLenum) = NULL;
  175. void (*glBlendFuncSeparate)(GLenum, GLenum, GLenum, GLenum) = NULL;
  176. void (*glBlendFuncSeparatei)(GLuint, GLenum, GLenum, GLenum, GLenum) = NULL;
  177. void (*glBlendFuncSeparateiARB)(GLuint, GLenum, GLenum, GLenum, GLenum) = NULL;
  178. void (*glBlendFunci)(GLuint, GLenum, GLenum) = NULL;
  179. void (*glBlendFunciARB)(GLuint, GLenum, GLenum) = NULL;
  180. void (*glBlitFramebuffer)(GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum) = NULL;
  181. void (*glBlitNamedFramebuffer)(GLuint, GLuint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum) = NULL;
  182. void (*glBufferData)(GLenum, GLsizeiptr, const void *, GLenum) = NULL;
  183. void (*glBufferPageCommitmentARB)(GLenum, GLintptr, GLsizeiptr, GLboolean) = NULL;
  184. void (*glBufferStorage)(GLenum, GLsizeiptr, const void *, GLbitfield) = NULL;
  185. void (*glBufferSubData)(GLenum, GLintptr, GLsizeiptr, const void *) = NULL;
  186. GLenum (*glCheckFramebufferStatus)(GLenum) = NULL;
  187. GLenum (*glCheckNamedFramebufferStatus)(GLuint, GLenum) = NULL;
  188. GLenum (*glCheckNamedFramebufferStatusEXT)(GLuint, GLenum) = NULL;
  189. void (*glClampColor)(GLenum, GLenum) = NULL;
  190. void (*glClear)(GLbitfield) = NULL;
  191. void (*glClearBufferData)(GLenum, GLenum, GLenum, GLenum, const void *) = NULL;
  192. void (*glClearBufferSubData)(GLenum, GLenum, GLintptr, GLsizeiptr, GLenum, GLenum, const void *) = NULL;
  193. void (*glClearBufferfi)(GLenum, GLint, GLfloat, GLint) = NULL;
  194. void (*glClearBufferfv)(GLenum, GLint, const GLfloat *) = NULL;
  195. void (*glClearBufferiv)(GLenum, GLint, const GLint *) = NULL;
  196. void (*glClearBufferuiv)(GLenum, GLint, const GLuint *) = NULL;
  197. void (*glClearColor)(GLfloat, GLfloat, GLfloat, GLfloat) = NULL;
  198. void (*glClearDepth)(GLdouble) = NULL;
  199. void (*glClearDepthf)(GLfloat) = NULL;
  200. void (*glClearNamedBufferData)(GLuint, GLenum, GLenum, GLenum, const void *) = NULL;
  201. void (*glClearNamedBufferDataEXT)(GLuint, GLenum, GLenum, GLenum, const void *) = NULL;
  202. void (*glClearNamedBufferSubData)(GLuint, GLenum, GLintptr, GLsizei, GLenum, GLenum, const void *) = NULL;
  203. void (*glClearNamedBufferSubDataEXT)(GLuint, GLenum, GLsizeiptr, GLsizeiptr, GLenum, GLenum, const void *) = NULL;
  204. void (*glClearNamedFramebufferfi)(GLuint, GLenum, const GLfloat, GLint) = NULL;
  205. void (*glClearNamedFramebufferfv)(GLuint, GLenum, GLint, const GLfloat *) = NULL;
  206. void (*glClearNamedFramebufferiv)(GLuint, GLenum, GLint, const GLint *) = NULL;
  207. void (*glClearNamedFramebufferuiv)(GLuint, GLenum, GLint, const GLuint *) = NULL;
  208. void (*glClearStencil)(GLint) = NULL;
  209. void (*glClearTexImage)(GLuint, GLint, GLenum, GLenum, const void *) = NULL;
  210. void (*glClearTexSubImage)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const void *) = NULL;
  211. void (*glClientAttribDefaultEXT)(GLbitfield) = NULL;
  212. GLenum (*glClientWaitSync)(GLsync, GLbitfield, GLuint64) = NULL;
  213. void (*glClipControl)(GLenum, GLenum) = NULL;
  214. void (*glColorMask)(GLboolean, GLboolean, GLboolean, GLboolean) = NULL;
  215. void (*glColorMaski)(GLuint, GLboolean, GLboolean, GLboolean, GLboolean) = NULL;
  216. void (*glCompileShader)(GLuint) = NULL;
  217. void (*glCompileShaderIncludeARB)(GLuint, GLsizei, const GLchar *const*, const GLint *) = NULL;
  218. void (*glCompressedMultiTexImage1DEXT)(GLenum, GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const void *) = NULL;
  219. void (*glCompressedMultiTexImage2DEXT)(GLenum, GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const void *) = NULL;
  220. void (*glCompressedMultiTexImage3DEXT)(GLenum, GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const void *) = NULL;
  221. void (*glCompressedMultiTexSubImage1DEXT)(GLenum, GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const void *) = NULL;
  222. void (*glCompressedMultiTexSubImage2DEXT)(GLenum, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const void *) = NULL;
  223. void (*glCompressedMultiTexSubImage3DEXT)(GLenum, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const void *) = NULL;
  224. void (*glCompressedTexImage1D)(GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const void *) = NULL;
  225. void (*glCompressedTexImage2D)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const void *) = NULL;
  226. void (*glCompressedTexImage3D)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const void *) = NULL;
  227. void (*glCompressedTexSubImage1D)(GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const void *) = NULL;
  228. void (*glCompressedTexSubImage2D)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const void *) = NULL;
  229. void (*glCompressedTexSubImage3D)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const void *) = NULL;
  230. void (*glCompressedTextureImage1DEXT)(GLuint, GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const void *) = NULL;
  231. void (*glCompressedTextureImage2DEXT)(GLuint, GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const void *) = NULL;
  232. void (*glCompressedTextureImage3DEXT)(GLuint, GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const void *) = NULL;
  233. void (*glCompressedTextureSubImage1D)(GLuint, GLint, GLint, GLsizei, GLenum, GLsizei, const void *) = NULL;
  234. void (*glCompressedTextureSubImage1DEXT)(GLuint, GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const void *) = NULL;
  235. void (*glCompressedTextureSubImage2D)(GLuint, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const void *) = NULL;
  236. void (*glCompressedTextureSubImage2DEXT)(GLuint, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const void *) = NULL;
  237. void (*glCompressedTextureSubImage3D)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const void *) = NULL;
  238. void (*glCompressedTextureSubImage3DEXT)(GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const void *) = NULL;
  239. void (*glCopyBufferSubData)(GLenum, GLenum, GLintptr, GLintptr, GLsizeiptr) = NULL;
  240. void (*glCopyImageSubData)(GLuint, GLenum, GLint, GLint, GLint, GLint, GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei) = NULL;
  241. void (*glCopyMultiTexImage1DEXT)(GLenum, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint) = NULL;
  242. void (*glCopyMultiTexImage2DEXT)(GLenum, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint) = NULL;
  243. void (*glCopyMultiTexSubImage1DEXT)(GLenum, GLenum, GLint, GLint, GLint, GLint, GLsizei) = NULL;
  244. void (*glCopyMultiTexSubImage2DEXT)(GLenum, GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) = NULL;
  245. void (*glCopyMultiTexSubImage3DEXT)(GLenum, GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) = NULL;
  246. void (*glCopyNamedBufferSubData)(GLuint, GLuint, GLintptr, GLintptr, GLsizei) = NULL;
  247. void (*glCopyTexImage1D)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint) = NULL;
  248. void (*glCopyTexImage2D)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint) = NULL;
  249. void (*glCopyTexSubImage1D)(GLenum, GLint, GLint, GLint, GLint, GLsizei) = NULL;
  250. void (*glCopyTexSubImage2D)(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) = NULL;
  251. void (*glCopyTexSubImage3D)(GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) = NULL;
  252. void (*glCopyTextureImage1DEXT)(GLuint, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint) = NULL;
  253. void (*glCopyTextureImage2DEXT)(GLuint, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint) = NULL;
  254. void (*glCopyTextureSubImage1D)(GLuint, GLint, GLint, GLint, GLint, GLsizei) = NULL;
  255. void (*glCopyTextureSubImage1DEXT)(GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei) = NULL;
  256. void (*glCopyTextureSubImage2D)(GLuint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) = NULL;
  257. void (*glCopyTextureSubImage2DEXT)(GLuint, GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) = NULL;
  258. void (*glCopyTextureSubImage3D)(GLuint, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) = NULL;
  259. void (*glCopyTextureSubImage3DEXT)(GLuint, GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) = NULL;
  260. void (*glCreateBuffers)(GLsizei, GLuint *) = NULL;
  261. void (*glCreateFramebuffers)(GLsizei, GLuint *) = NULL;
  262. GLuint (*glCreateProgram)() = NULL;
  263. void (*glCreateProgramPipelines)(GLsizei, GLuint *) = NULL;
  264. void (*glCreateQueries)(GLenum, GLsizei, GLuint *) = NULL;
  265. void (*glCreateRenderbuffers)(GLsizei, GLuint *) = NULL;
  266. void (*glCreateSamplers)(GLsizei, GLuint *) = NULL;
  267. GLuint (*glCreateShader)(GLenum) = NULL;
  268. GLuint (*glCreateShaderProgramv)(GLenum, GLsizei, const GLchar *const*) = NULL;
  269. GLsync (*glCreateSyncFromCLeventARB)(struct _cl_context *, struct _cl_event *, GLbitfield) = NULL;
  270. void (*glCreateTextures)(GLenum, GLsizei, GLuint *) = NULL;
  271. void (*glCreateTransformFeedbacks)(GLsizei, GLuint *) = NULL;
  272. void (*glCreateVertexArrays)(GLsizei, GLuint *) = NULL;
  273. void (*glCullFace)(GLenum) = NULL;
  274. void (*glDebugMessageCallback)(GLDEBUGPROC, const void *) = NULL;
  275. void (*glDebugMessageCallbackARB)(GLDEBUGPROCARB, const void *) = NULL;
  276. void (*glDebugMessageCallbackKHR)(GLDEBUGPROCKHR, const void *) = NULL;
  277. void (*glDebugMessageControl)(GLenum, GLenum, GLenum, GLsizei, const GLuint *, GLboolean) = NULL;
  278. void (*glDebugMessageControlARB)(GLenum, GLenum, GLenum, GLsizei, const GLuint *, GLboolean) = NULL;
  279. void (*glDebugMessageControlKHR)(GLenum, GLenum, GLenum, GLsizei, const GLuint *, GLboolean) = NULL;
  280. void (*glDebugMessageInsert)(GLenum, GLenum, GLuint, GLenum, GLsizei, const GLchar *) = NULL;
  281. void (*glDebugMessageInsertARB)(GLenum, GLenum, GLuint, GLenum, GLsizei, const GLchar *) = NULL;
  282. void (*glDebugMessageInsertKHR)(GLenum, GLenum, GLuint, GLenum, GLsizei, const GLchar *) = NULL;
  283. void (*glDeleteBuffers)(GLsizei, const GLuint *) = NULL;
  284. void (*glDeleteFramebuffers)(GLsizei, const GLuint *) = NULL;
  285. void (*glDeleteNamedStringARB)(GLint, const GLchar *) = NULL;
  286. void (*glDeleteProgram)(GLuint) = NULL;
  287. void (*glDeleteProgramPipelines)(GLsizei, const GLuint *) = NULL;
  288. void (*glDeleteQueries)(GLsizei, const GLuint *) = NULL;
  289. void (*glDeleteRenderbuffers)(GLsizei, const GLuint *) = NULL;
  290. void (*glDeleteSamplers)(GLsizei, const GLuint *) = NULL;
  291. void (*glDeleteShader)(GLuint) = NULL;
  292. void (*glDeleteSync)(GLsync) = NULL;
  293. void (*glDeleteTextures)(GLsizei, const GLuint *) = NULL;
  294. void (*glDeleteTransformFeedbacks)(GLsizei, const GLuint *) = NULL;
  295. void (*glDeleteVertexArrays)(GLsizei, const GLuint *) = NULL;
  296. void (*glDepthFunc)(GLenum) = NULL;
  297. void (*glDepthMask)(GLboolean) = NULL;
  298. void (*glDepthRange)(GLdouble, GLdouble) = NULL;
  299. void (*glDepthRangeArrayv)(GLuint, GLsizei, const GLdouble *) = NULL;
  300. void (*glDepthRangeIndexed)(GLuint, GLdouble, GLdouble) = NULL;
  301. void (*glDepthRangef)(GLfloat, GLfloat) = NULL;
  302. void (*glDetachShader)(GLuint, GLuint) = NULL;
  303. void (*glDisable)(GLenum) = NULL;
  304. void (*glDisableClientStateIndexedEXT)(GLenum, GLuint) = NULL;
  305. void (*glDisableClientStateiEXT)(GLenum, GLuint) = NULL;
  306. void (*glDisableIndexedEXT)(GLenum, GLuint) = NULL;
  307. void (*glDisableVertexArrayAttrib)(GLuint, GLuint) = NULL;
  308. void (*glDisableVertexArrayAttribEXT)(GLuint, GLuint) = NULL;
  309. void (*glDisableVertexArrayEXT)(GLuint, GLenum) = NULL;
  310. void (*glDisableVertexAttribArray)(GLuint) = NULL;
  311. void (*glDisablei)(GLenum, GLuint) = NULL;
  312. void (*glDispatchCompute)(GLuint, GLuint, GLuint) = NULL;
  313. void (*glDispatchComputeGroupSizeARB)(GLuint, GLuint, GLuint, GLuint, GLuint, GLuint) = NULL;
  314. void (*glDispatchComputeIndirect)(GLintptr) = NULL;
  315. void (*glDrawArrays)(GLenum, GLint, GLsizei) = NULL;
  316. void (*glDrawArraysIndirect)(GLenum, const void *) = NULL;
  317. void (*glDrawArraysInstanced)(GLenum, GLint, GLsizei, GLsizei) = NULL;
  318. void (*glDrawArraysInstancedBaseInstance)(GLenum, GLint, GLsizei, GLsizei, GLuint) = NULL;
  319. void (*glDrawBuffer)(GLenum) = NULL;
  320. void (*glDrawBuffers)(GLsizei, const GLenum *) = NULL;
  321. void (*glDrawElements)(GLenum, GLsizei, GLenum, const void *) = NULL;
  322. void (*glDrawElementsBaseVertex)(GLenum, GLsizei, GLenum, const void *, GLint) = NULL;
  323. void (*glDrawElementsIndirect)(GLenum, GLenum, const void *) = NULL;
  324. void (*glDrawElementsInstanced)(GLenum, GLsizei, GLenum, const void *, GLsizei) = NULL;
  325. void (*glDrawElementsInstancedBaseInstance)(GLenum, GLsizei, GLenum, const void *, GLsizei, GLuint) = NULL;
  326. void (*glDrawElementsInstancedBaseVertex)(GLenum, GLsizei, GLenum, const void *, GLsizei, GLint) = NULL;
  327. void (*glDrawElementsInstancedBaseVertexBaseInstance)(GLenum, GLsizei, GLenum, const void *, GLsizei, GLint, GLuint) = NULL;
  328. void (*glDrawRangeElements)(GLenum, GLuint, GLuint, GLsizei, GLenum, const void *) = NULL;
  329. void (*glDrawRangeElementsBaseVertex)(GLenum, GLuint, GLuint, GLsizei, GLenum, const void *, GLint) = NULL;
  330. void (*glDrawTransformFeedback)(GLenum, GLuint) = NULL;
  331. void (*glDrawTransformFeedbackInstanced)(GLenum, GLuint, GLsizei) = NULL;
  332. void (*glDrawTransformFeedbackStream)(GLenum, GLuint, GLuint) = NULL;
  333. void (*glDrawTransformFeedbackStreamInstanced)(GLenum, GLuint, GLuint, GLsizei) = NULL;
  334. void (*glEnable)(GLenum) = NULL;
  335. void (*glEnableClientStateIndexedEXT)(GLenum, GLuint) = NULL;
  336. void (*glEnableClientStateiEXT)(GLenum, GLuint) = NULL;
  337. void (*glEnableIndexedEXT)(GLenum, GLuint) = NULL;
  338. void (*glEnableVertexArrayAttrib)(GLuint, GLuint) = NULL;
  339. void (*glEnableVertexArrayAttribEXT)(GLuint, GLuint) = NULL;
  340. void (*glEnableVertexArrayEXT)(GLuint, GLenum) = NULL;
  341. void (*glEnableVertexAttribArray)(GLuint) = NULL;
  342. void (*glEnablei)(GLenum, GLuint) = NULL;
  343. void (*glEndConditionalRender)() = NULL;
  344. void (*glEndQuery)(GLenum) = NULL;
  345. void (*glEndQueryIndexed)(GLenum, GLuint) = NULL;
  346. void (*glEndTransformFeedback)() = NULL;
  347. GLsync (*glFenceSync)(GLenum, GLbitfield) = NULL;
  348. void (*glFinish)() = NULL;
  349. void (*glFlush)() = NULL;
  350. void (*glFlushMappedBufferRange)(GLenum, GLintptr, GLsizeiptr) = NULL;
  351. void (*glFlushMappedNamedBufferRange)(GLuint, GLintptr, GLsizei) = NULL;
  352. void (*glFlushMappedNamedBufferRangeEXT)(GLuint, GLintptr, GLsizeiptr) = NULL;
  353. void (*glFramebufferDrawBufferEXT)(GLuint, GLenum) = NULL;
  354. void (*glFramebufferDrawBuffersEXT)(GLuint, GLsizei, const GLenum *) = NULL;
  355. void (*glFramebufferParameteri)(GLenum, GLenum, GLint) = NULL;
  356. void (*glFramebufferReadBufferEXT)(GLuint, GLenum) = NULL;
  357. void (*glFramebufferRenderbuffer)(GLenum, GLenum, GLenum, GLuint) = NULL;
  358. void (*glFramebufferTexture)(GLenum, GLenum, GLuint, GLint) = NULL;
  359. void (*glFramebufferTexture1D)(GLenum, GLenum, GLenum, GLuint, GLint) = NULL;
  360. void (*glFramebufferTexture2D)(GLenum, GLenum, GLenum, GLuint, GLint) = NULL;
  361. void (*glFramebufferTexture3D)(GLenum, GLenum, GLenum, GLuint, GLint, GLint) = NULL;
  362. void (*glFramebufferTextureLayer)(GLenum, GLenum, GLuint, GLint, GLint) = NULL;
  363. void (*glFrontFace)(GLenum) = NULL;
  364. void (*glGenBuffers)(GLsizei, GLuint *) = NULL;
  365. void (*glGenFramebuffers)(GLsizei, GLuint *) = NULL;
  366. void (*glGenProgramPipelines)(GLsizei, GLuint *) = NULL;
  367. void (*glGenQueries)(GLsizei, GLuint *) = NULL;
  368. void (*glGenRenderbuffers)(GLsizei, GLuint *) = NULL;
  369. void (*glGenSamplers)(GLsizei, GLuint *) = NULL;
  370. void (*glGenTextures)(GLsizei, GLuint *) = NULL;
  371. void (*glGenTransformFeedbacks)(GLsizei, GLuint *) = NULL;
  372. void (*glGenVertexArrays)(GLsizei, GLuint *) = NULL;
  373. void (*glGenerateMipmap)(GLenum) = NULL;
  374. void (*glGenerateMultiTexMipmapEXT)(GLenum, GLenum) = NULL;
  375. void (*glGenerateTextureMipmap)(GLuint) = NULL;
  376. void (*glGenerateTextureMipmapEXT)(GLuint, GLenum) = NULL;
  377. void (*glGetActiveAtomicCounterBufferiv)(GLuint, GLuint, GLenum, GLint *) = NULL;
  378. void (*glGetActiveAttrib)(GLuint, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLchar *) = NULL;
  379. void (*glGetActiveSubroutineName)(GLuint, GLenum, GLuint, GLsizei, GLsizei *, GLchar *) = NULL;
  380. void (*glGetActiveSubroutineUniformName)(GLuint, GLenum, GLuint, GLsizei, GLsizei *, GLchar *) = NULL;
  381. void (*glGetActiveSubroutineUniformiv)(GLuint, GLenum, GLuint, GLenum, GLint *) = NULL;
  382. void (*glGetActiveUniform)(GLuint, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLchar *) = NULL;
  383. void (*glGetActiveUniformBlockName)(GLuint, GLuint, GLsizei, GLsizei *, GLchar *) = NULL;
  384. void (*glGetActiveUniformBlockiv)(GLuint, GLuint, GLenum, GLint *) = NULL;
  385. void (*glGetActiveUniformName)(GLuint, GLuint, GLsizei, GLsizei *, GLchar *) = NULL;
  386. void (*glGetActiveUniformsiv)(GLuint, GLsizei, const GLuint *, GLenum, GLint *) = NULL;
  387. void (*glGetAttachedShaders)(GLuint, GLsizei, GLsizei *, GLuint *) = NULL;
  388. GLint (*glGetAttribLocation)(GLuint, const GLchar *) = NULL;
  389. void (*glGetBooleanIndexedvEXT)(GLenum, GLuint, GLboolean *) = NULL;
  390. void (*glGetBooleani_v)(GLenum, GLuint, GLboolean *) = NULL;
  391. void (*glGetBooleanv)(GLenum, GLboolean *) = NULL;
  392. void (*glGetBufferParameteri64v)(GLenum, GLenum, GLint64 *) = NULL;
  393. void (*glGetBufferParameteriv)(GLenum, GLenum, GLint *) = NULL;
  394. void (*glGetBufferPointerv)(GLenum, GLenum, void **) = NULL;
  395. void (*glGetBufferSubData)(GLenum, GLintptr, GLsizeiptr, void *) = NULL;
  396. void (*glGetCompressedMultiTexImageEXT)(GLenum, GLenum, GLint, void *) = NULL;
  397. void (*glGetCompressedTexImage)(GLenum, GLint, void *) = NULL;
  398. void (*glGetCompressedTextureImage)(GLuint, GLint, GLsizei, void *) = NULL;
  399. void (*glGetCompressedTextureImageEXT)(GLuint, GLenum, GLint, void *) = NULL;
  400. void (*glGetCompressedTextureSubImage)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLsizei, void *) = NULL;
  401. GLuint (*glGetDebugMessageLog)(GLuint, GLsizei, GLenum *, GLenum *, GLuint *, GLenum *, GLsizei *, GLchar *) = NULL;
  402. GLuint (*glGetDebugMessageLogARB)(GLuint, GLsizei, GLenum *, GLenum *, GLuint *, GLenum *, GLsizei *, GLchar *) = NULL;
  403. GLuint (*glGetDebugMessageLogKHR)(GLuint, GLsizei, GLenum *, GLenum *, GLuint *, GLenum *, GLsizei *, GLchar *) = NULL;
  404. void (*glGetDoubleIndexedvEXT)(GLenum, GLuint, GLdouble *) = NULL;
  405. void (*glGetDoublei_v)(GLenum, GLuint, GLdouble *) = NULL;
  406. void (*glGetDoublei_vEXT)(GLenum, GLuint, GLdouble *) = NULL;
  407. void (*glGetDoublev)(GLenum, GLdouble *) = NULL;
  408. GLenum (*glGetError)() = NULL;
  409. void (*glGetFloatIndexedvEXT)(GLenum, GLuint, GLfloat *) = NULL;
  410. void (*glGetFloati_v)(GLenum, GLuint, GLfloat *) = NULL;
  411. void (*glGetFloati_vEXT)(GLenum, GLuint, GLfloat *) = NULL;
  412. void (*glGetFloatv)(GLenum, GLfloat *) = NULL;
  413. GLint (*glGetFragDataIndex)(GLuint, const GLchar *) = NULL;
  414. GLint (*glGetFragDataLocation)(GLuint, const GLchar *) = NULL;
  415. void (*glGetFramebufferAttachmentParameteriv)(GLenum, GLenum, GLenum, GLint *) = NULL;
  416. void (*glGetFramebufferParameteriv)(GLenum, GLenum, GLint *) = NULL;
  417. void (*glGetFramebufferParameterivEXT)(GLuint, GLenum, GLint *) = NULL;
  418. GLenum (*glGetGraphicsResetStatus)() = NULL;
  419. GLenum (*glGetGraphicsResetStatusARB)() = NULL;
  420. GLenum (*glGetGraphicsResetStatusKHR)() = NULL;
  421. GLuint64 (*glGetImageHandleARB)(GLuint, GLint, GLboolean, GLint, GLenum) = NULL;
  422. void (*glGetInteger64i_v)(GLenum, GLuint, GLint64 *) = NULL;
  423. void (*glGetInteger64v)(GLenum, GLint64 *) = NULL;
  424. void (*glGetIntegerIndexedvEXT)(GLenum, GLuint, GLint *) = NULL;
  425. void (*glGetIntegeri_v)(GLenum, GLuint, GLint *) = NULL;
  426. void (*glGetIntegerv)(GLenum, GLint *) = NULL;
  427. void (*glGetInternalformati64v)(GLenum, GLenum, GLenum, GLsizei, GLint64 *) = NULL;
  428. void (*glGetInternalformativ)(GLenum, GLenum, GLenum, GLsizei, GLint *) = NULL;
  429. void (*glGetMultiTexEnvfvEXT)(GLenum, GLenum, GLenum, GLfloat *) = NULL;
  430. void (*glGetMultiTexEnvivEXT)(GLenum, GLenum, GLenum, GLint *) = NULL;
  431. void (*glGetMultiTexGendvEXT)(GLenum, GLenum, GLenum, GLdouble *) = NULL;
  432. void (*glGetMultiTexGenfvEXT)(GLenum, GLenum, GLenum, GLfloat *) = NULL;
  433. void (*glGetMultiTexGenivEXT)(GLenum, GLenum, GLenum, GLint *) = NULL;
  434. void (*glGetMultiTexImageEXT)(GLenum, GLenum, GLint, GLenum, GLenum, void *) = NULL;
  435. void (*glGetMultiTexLevelParameterfvEXT)(GLenum, GLenum, GLint, GLenum, GLfloat *) = NULL;
  436. void (*glGetMultiTexLevelParameterivEXT)(GLenum, GLenum, GLint, GLenum, GLint *) = NULL;
  437. void (*glGetMultiTexParameterIivEXT)(GLenum, GLenum, GLenum, GLint *) = NULL;
  438. void (*glGetMultiTexParameterIuivEXT)(GLenum, GLenum, GLenum, GLuint *) = NULL;
  439. void (*glGetMultiTexParameterfvEXT)(GLenum, GLenum, GLenum, GLfloat *) = NULL;
  440. void (*glGetMultiTexParameterivEXT)(GLenum, GLenum, GLenum, GLint *) = NULL;
  441. void (*glGetMultisamplefv)(GLenum, GLuint, GLfloat *) = NULL;
  442. void (*glGetNamedBufferParameteri64v)(GLuint, GLenum, GLint64 *) = NULL;
  443. void (*glGetNamedBufferParameteriv)(GLuint, GLenum, GLint *) = NULL;
  444. void (*glGetNamedBufferParameterivEXT)(GLuint, GLenum, GLint *) = NULL;
  445. void (*glGetNamedBufferPointerv)(GLuint, GLenum, void **) = NULL;
  446. void (*glGetNamedBufferPointervEXT)(GLuint, GLenum, void **) = NULL;
  447. void (*glGetNamedBufferSubData)(GLuint, GLintptr, GLsizei, void *) = NULL;
  448. void (*glGetNamedBufferSubDataEXT)(GLuint, GLintptr, GLsizeiptr, void *) = NULL;
  449. void (*glGetNamedFramebufferAttachmentParameteriv)(GLuint, GLenum, GLenum, GLint *) = NULL;
  450. void (*glGetNamedFramebufferAttachmentParameterivEXT)(GLuint, GLenum, GLenum, GLint *) = NULL;
  451. void (*glGetNamedFramebufferParameteriv)(GLuint, GLenum, GLint *) = NULL;
  452. void (*glGetNamedFramebufferParameterivEXT)(GLuint, GLenum, GLint *) = NULL;
  453. void (*glGetNamedProgramLocalParameterIivEXT)(GLuint, GLenum, GLuint, GLint *) = NULL;
  454. void (*glGetNamedProgramLocalParameterIuivEXT)(GLuint, GLenum, GLuint, GLuint *) = NULL;
  455. void (*glGetNamedProgramLocalParameterdvEXT)(GLuint, GLenum, GLuint, GLdouble *) = NULL;
  456. void (*glGetNamedProgramLocalParameterfvEXT)(GLuint, GLenum, GLuint, GLfloat *) = NULL;
  457. void (*glGetNamedProgramStringEXT)(GLuint, GLenum, GLenum, void *) = NULL;
  458. void (*glGetNamedProgramivEXT)(GLuint, GLenum, GLenum, GLint *) = NULL;
  459. void (*glGetNamedRenderbufferParameteriv)(GLuint, GLenum, GLint *) = NULL;
  460. void (*glGetNamedRenderbufferParameterivEXT)(GLuint, GLenum, GLint *) = NULL;
  461. void (*glGetNamedStringARB)(GLint, const GLchar *, GLsizei, GLint *, GLchar *) = NULL;
  462. void (*glGetNamedStringivARB)(GLint, const GLchar *, GLenum, GLint *) = NULL;
  463. void (*glGetObjectLabel)(GLenum, GLuint, GLsizei, GLsizei *, GLchar *) = NULL;
  464. void (*glGetObjectLabelKHR)(GLenum, GLuint, GLsizei, GLsizei *, GLchar *) = NULL;
  465. void (*glGetObjectPtrLabel)(const void *, GLsizei, GLsizei *, GLchar *) = NULL;
  466. void (*glGetObjectPtrLabelKHR)(const void *, GLsizei, GLsizei *, GLchar *) = NULL;
  467. void (*glGetPointerIndexedvEXT)(GLenum, GLuint, void **) = NULL;
  468. void (*glGetPointeri_vEXT)(GLenum, GLuint, void **) = NULL;
  469. void (*glGetPointerv)(GLenum, void **) = NULL;
  470. void (*glGetPointervKHR)(GLenum, void **) = NULL;
  471. void (*glGetProgramBinary)(GLuint, GLsizei, GLsizei *, GLenum *, void *) = NULL;
  472. void (*glGetProgramInfoLog)(GLuint, GLsizei, GLsizei *, GLchar *) = NULL;
  473. void (*glGetProgramInterfaceiv)(GLuint, GLenum, GLenum, GLint *) = NULL;
  474. void (*glGetProgramPipelineInfoLog)(GLuint, GLsizei, GLsizei *, GLchar *) = NULL;
  475. void (*glGetProgramPipelineiv)(GLuint, GLenum, GLint *) = NULL;
  476. GLuint (*glGetProgramResourceIndex)(GLuint, GLenum, const GLchar *) = NULL;
  477. GLint (*glGetProgramResourceLocation)(GLuint, GLenum, const GLchar *) = NULL;
  478. GLint (*glGetProgramResourceLocationIndex)(GLuint, GLenum, const GLchar *) = NULL;
  479. void (*glGetProgramResourceName)(GLuint, GLenum, GLuint, GLsizei, GLsizei *, GLchar *) = NULL;
  480. void (*glGetProgramResourceiv)(GLuint, GLenum, GLuint, GLsizei, const GLenum *, GLsizei, GLsizei *, GLint *) = NULL;
  481. void (*glGetProgramStageiv)(GLuint, GLenum, GLenum, GLint *) = NULL;
  482. void (*glGetProgramiv)(GLuint, GLenum, GLint *) = NULL;
  483. void (*glGetQueryBufferObjecti64v)(GLuint, GLuint, GLenum, GLintptr) = NULL;
  484. void (*glGetQueryBufferObjectiv)(GLuint, GLuint, GLenum, GLintptr) = NULL;
  485. void (*glGetQueryBufferObjectui64v)(GLuint, GLuint, GLenum, GLintptr) = NULL;
  486. void (*glGetQueryBufferObjectuiv)(GLuint, GLuint, GLenum, GLintptr) = NULL;
  487. void (*glGetQueryIndexediv)(GLenum, GLuint, GLenum, GLint *) = NULL;
  488. void (*glGetQueryObjecti64v)(GLuint, GLenum, GLint64 *) = NULL;
  489. void (*glGetQueryObjectiv)(GLuint, GLenum, GLint *) = NULL;
  490. void (*glGetQueryObjectui64v)(GLuint, GLenum, GLuint64 *) = NULL;
  491. void (*glGetQueryObjectuiv)(GLuint, GLenum, GLuint *) = NULL;
  492. void (*glGetQueryiv)(GLenum, GLenum, GLint *) = NULL;
  493. void (*glGetRenderbufferParameteriv)(GLenum, GLenum, GLint *) = NULL;
  494. void (*glGetSamplerParameterIiv)(GLuint, GLenum, GLint *) = NULL;
  495. void (*glGetSamplerParameterIuiv)(GLuint, GLenum, GLuint *) = NULL;
  496. void (*glGetSamplerParameterfv)(GLuint, GLenum, GLfloat *) = NULL;
  497. void (*glGetSamplerParameteriv)(GLuint, GLenum, GLint *) = NULL;
  498. void (*glGetShaderInfoLog)(GLuint, GLsizei, GLsizei *, GLchar *) = NULL;
  499. void (*glGetShaderPrecisionFormat)(GLenum, GLenum, GLint *, GLint *) = NULL;
  500. void (*glGetShaderSource)(GLuint, GLsizei, GLsizei *, GLchar *) = NULL;
  501. void (*glGetShaderiv)(GLuint, GLenum, GLint *) = NULL;
  502. const GLubyte * (*glGetString)(GLenum) = NULL;
  503. const GLubyte * (*glGetStringi)(GLenum, GLuint) = NULL;
  504. GLuint (*glGetSubroutineIndex)(GLuint, GLenum, const GLchar *) = NULL;
  505. GLint (*glGetSubroutineUniformLocation)(GLuint, GLenum, const GLchar *) = NULL;
  506. void (*glGetSynciv)(GLsync, GLenum, GLsizei, GLsizei *, GLint *) = NULL;
  507. void (*glGetTexImage)(GLenum, GLint, GLenum, GLenum, void *) = NULL;
  508. void (*glGetTexLevelParameterfv)(GLenum, GLint, GLenum, GLfloat *) = NULL;
  509. void (*glGetTexLevelParameteriv)(GLenum, GLint, GLenum, GLint *) = NULL;
  510. void (*glGetTexParameterIiv)(GLenum, GLenum, GLint *) = NULL;
  511. void (*glGetTexParameterIuiv)(GLenum, GLenum, GLuint *) = NULL;
  512. void (*glGetTexParameterfv)(GLenum, GLenum, GLfloat *) = NULL;
  513. void (*glGetTexParameteriv)(GLenum, GLenum, GLint *) = NULL;
  514. GLuint64 (*glGetTextureHandleARB)(GLuint) = NULL;
  515. void (*glGetTextureImage)(GLuint, GLint, GLenum, GLenum, GLsizei, void *) = NULL;
  516. void (*glGetTextureImageEXT)(GLuint, GLenum, GLint, GLenum, GLenum, void *) = NULL;
  517. void (*glGetTextureLevelParameterfv)(GLuint, GLint, GLenum, GLfloat *) = NULL;
  518. void (*glGetTextureLevelParameterfvEXT)(GLuint, GLenum, GLint, GLenum, GLfloat *) = NULL;
  519. void (*glGetTextureLevelParameteriv)(GLuint, GLint, GLenum, GLint *) = NULL;
  520. void (*glGetTextureLevelParameterivEXT)(GLuint, GLenum, GLint, GLenum, GLint *) = NULL;
  521. void (*glGetTextureParameterIiv)(GLuint, GLenum, GLint *) = NULL;
  522. void (*glGetTextureParameterIivEXT)(GLuint, GLenum, GLenum, GLint *) = NULL;
  523. void (*glGetTextureParameterIuiv)(GLuint, GLenum, GLuint *) = NULL;
  524. void (*glGetTextureParameterIuivEXT)(GLuint, GLenum, GLenum, GLuint *) = NULL;
  525. void (*glGetTextureParameterfv)(GLuint, GLenum, GLfloat *) = NULL;
  526. void (*glGetTextureParameterfvEXT)(GLuint, GLenum, GLenum, GLfloat *) = NULL;
  527. void (*glGetTextureParameteriv)(GLuint, GLenum, GLint *) = NULL;
  528. void (*glGetTextureParameterivEXT)(GLuint, GLenum, GLenum, GLint *) = NULL;
  529. GLuint64 (*glGetTextureSamplerHandleARB)(GLuint, GLuint) = NULL;
  530. void (*glGetTextureSubImage)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, GLsizei, void *) = NULL;
  531. void (*glGetTransformFeedbackVarying)(GLuint, GLuint, GLsizei, GLsizei *, GLsizei *, GLenum *, GLchar *) = NULL;
  532. void (*glGetTransformFeedbacki64_v)(GLuint, GLenum, GLuint, GLint64 *) = NULL;
  533. void (*glGetTransformFeedbacki_v)(GLuint, GLenum, GLuint, GLint *) = NULL;
  534. void (*glGetTransformFeedbackiv)(GLuint, GLenum, GLint *) = NULL;
  535. GLuint (*glGetUniformBlockIndex)(GLuint, const GLchar *) = NULL;
  536. void (*glGetUniformIndices)(GLuint, GLsizei, const GLchar *const*, GLuint *) = NULL;
  537. GLint (*glGetUniformLocation)(GLuint, const GLchar *) = NULL;
  538. void (*glGetUniformSubroutineuiv)(GLenum, GLint, GLuint *) = NULL;
  539. void (*glGetUniformdv)(GLuint, GLint, GLdouble *) = NULL;
  540. void (*glGetUniformfv)(GLuint, GLint, GLfloat *) = NULL;
  541. void (*glGetUniformiv)(GLuint, GLint, GLint *) = NULL;
  542. void (*glGetUniformuiv)(GLuint, GLint, GLuint *) = NULL;
  543. void (*glGetVertexArrayIndexed64iv)(GLuint, GLuint, GLenum, GLint64 *) = NULL;
  544. void (*glGetVertexArrayIndexediv)(GLuint, GLuint, GLenum, GLint *) = NULL;
  545. void (*glGetVertexArrayIntegeri_vEXT)(GLuint, GLuint, GLenum, GLint *) = NULL;
  546. void (*glGetVertexArrayIntegervEXT)(GLuint, GLenum, GLint *) = NULL;
  547. void (*glGetVertexArrayPointeri_vEXT)(GLuint, GLuint, GLenum, void **) = NULL;
  548. void (*glGetVertexArrayPointervEXT)(GLuint, GLenum, void **) = NULL;
  549. void (*glGetVertexArrayiv)(GLuint, GLenum, GLint *) = NULL;
  550. void (*glGetVertexAttribIiv)(GLuint, GLenum, GLint *) = NULL;
  551. void (*glGetVertexAttribIuiv)(GLuint, GLenum, GLuint *) = NULL;
  552. void (*glGetVertexAttribLdv)(GLuint, GLenum, GLdouble *) = NULL;
  553. void (*glGetVertexAttribLui64vARB)(GLuint, GLenum, GLuint64EXT *) = NULL;
  554. void (*glGetVertexAttribPointerv)(GLuint, GLenum, void **) = NULL;
  555. void (*glGetVertexAttribdv)(GLuint, GLenum, GLdouble *) = NULL;
  556. void (*glGetVertexAttribfv)(GLuint, GLenum, GLfloat *) = NULL;
  557. void (*glGetVertexAttribiv)(GLuint, GLenum, GLint *) = NULL;
  558. void (*glGetnCompressedTexImage)(GLenum, GLint, GLsizei, void *) = NULL;
  559. void (*glGetnCompressedTexImageARB)(GLenum, GLint, GLsizei, void *) = NULL;
  560. void (*glGetnTexImage)(GLenum, GLint, GLenum, GLenum, GLsizei, void *) = NULL;
  561. void (*glGetnTexImageARB)(GLenum, GLint, GLenum, GLenum, GLsizei, void *) = NULL;
  562. void (*glGetnUniformdv)(GLuint, GLint, GLsizei, GLdouble *) = NULL;
  563. void (*glGetnUniformdvARB)(GLuint, GLint, GLsizei, GLdouble *) = NULL;
  564. void (*glGetnUniformfv)(GLuint, GLint, GLsizei, GLfloat *) = NULL;
  565. void (*glGetnUniformfvARB)(GLuint, GLint, GLsizei, GLfloat *) = NULL;
  566. void (*glGetnUniformfvKHR)(GLuint, GLint, GLsizei, GLfloat *) = NULL;
  567. void (*glGetnUniformiv)(GLuint, GLint, GLsizei, GLint *) = NULL;
  568. void (*glGetnUniformivARB)(GLuint, GLint, GLsizei, GLint *) = NULL;
  569. void (*glGetnUniformivKHR)(GLuint, GLint, GLsizei, GLint *) = NULL;
  570. void (*glGetnUniformuiv)(GLuint, GLint, GLsizei, GLuint *) = NULL;
  571. void (*glGetnUniformuivARB)(GLuint, GLint, GLsizei, GLuint *) = NULL;
  572. void (*glGetnUniformuivKHR)(GLuint, GLint, GLsizei, GLuint *) = NULL;
  573. void (*glHint)(GLenum, GLenum) = NULL;
  574. void (*glInvalidateBufferData)(GLuint) = NULL;
  575. void (*glInvalidateBufferSubData)(GLuint, GLintptr, GLsizeiptr) = NULL;
  576. void (*glInvalidateFramebuffer)(GLenum, GLsizei, const GLenum *) = NULL;
  577. void (*glInvalidateNamedFramebufferData)(GLuint, GLsizei, const GLenum *) = NULL;
  578. void (*glInvalidateNamedFramebufferSubData)(GLuint, GLsizei, const GLenum *, GLint, GLint, GLsizei, GLsizei) = NULL;
  579. void (*glInvalidateSubFramebuffer)(GLenum, GLsizei, const GLenum *, GLint, GLint, GLsizei, GLsizei) = NULL;
  580. void (*glInvalidateTexImage)(GLuint, GLint) = NULL;
  581. void (*glInvalidateTexSubImage)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei) = NULL;
  582. GLboolean (*glIsBuffer)(GLuint) = NULL;
  583. GLboolean (*glIsEnabled)(GLenum) = NULL;
  584. GLboolean (*glIsEnabledIndexedEXT)(GLenum, GLuint) = NULL;
  585. GLboolean (*glIsEnabledi)(GLenum, GLuint) = NULL;
  586. GLboolean (*glIsFramebuffer)(GLuint) = NULL;
  587. GLboolean (*glIsImageHandleResidentARB)(GLuint64) = NULL;
  588. GLboolean (*glIsNamedStringARB)(GLint, const GLchar *) = NULL;
  589. GLboolean (*glIsProgram)(GLuint) = NULL;
  590. GLboolean (*glIsProgramPipeline)(GLuint) = NULL;
  591. GLboolean (*glIsQuery)(GLuint) = NULL;
  592. GLboolean (*glIsRenderbuffer)(GLuint) = NULL;
  593. GLboolean (*glIsSampler)(GLuint) = NULL;
  594. GLboolean (*glIsShader)(GLuint) = NULL;
  595. GLboolean (*glIsSync)(GLsync) = NULL;
  596. GLboolean (*glIsTexture)(GLuint) = NULL;
  597. GLboolean (*glIsTextureHandleResidentARB)(GLuint64) = NULL;
  598. GLboolean (*glIsTransformFeedback)(GLuint) = NULL;
  599. GLboolean (*glIsVertexArray)(GLuint) = NULL;
  600. void (*glLineWidth)(GLfloat) = NULL;
  601. void (*glLinkProgram)(GLuint) = NULL;
  602. void (*glLogicOp)(GLenum) = NULL;
  603. void (*glMakeImageHandleNonResidentARB)(GLuint64) = NULL;
  604. void (*glMakeImageHandleResidentARB)(GLuint64, GLenum) = NULL;
  605. void (*glMakeTextureHandleNonResidentARB)(GLuint64) = NULL;
  606. void (*glMakeTextureHandleResidentARB)(GLuint64) = NULL;
  607. void * (*glMapBuffer)(GLenum, GLenum) = NULL;
  608. void * (*glMapBufferRange)(GLenum, GLintptr, GLsizeiptr, GLbitfield) = NULL;
  609. void * (*glMapNamedBuffer)(GLuint, GLenum) = NULL;
  610. void * (*glMapNamedBufferEXT)(GLuint, GLenum) = NULL;
  611. void * (*glMapNamedBufferRange)(GLuint, GLintptr, GLsizei, GLbitfield) = NULL;
  612. void * (*glMapNamedBufferRangeEXT)(GLuint, GLintptr, GLsizeiptr, GLbitfield) = NULL;
  613. void (*glMatrixFrustumEXT)(GLenum, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble) = NULL;
  614. void (*glMatrixLoadIdentityEXT)(GLenum) = NULL;
  615. void (*glMatrixLoadTransposedEXT)(GLenum, const GLdouble *) = NULL;
  616. void (*glMatrixLoadTransposefEXT)(GLenum, const GLfloat *) = NULL;
  617. void (*glMatrixLoaddEXT)(GLenum, const GLdouble *) = NULL;
  618. void (*glMatrixLoadfEXT)(GLenum, const GLfloat *) = NULL;
  619. void (*glMatrixMultTransposedEXT)(GLenum, const GLdouble *) = NULL;
  620. void (*glMatrixMultTransposefEXT)(GLenum, const GLfloat *) = NULL;
  621. void (*glMatrixMultdEXT)(GLenum, const GLdouble *) = NULL;
  622. void (*glMatrixMultfEXT)(GLenum, const GLfloat *) = NULL;
  623. void (*glMatrixOrthoEXT)(GLenum, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble) = NULL;
  624. void (*glMatrixPopEXT)(GLenum) = NULL;
  625. void (*glMatrixPushEXT)(GLenum) = NULL;
  626. void (*glMatrixRotatedEXT)(GLenum, GLdouble, GLdouble, GLdouble, GLdouble) = NULL;
  627. void (*glMatrixRotatefEXT)(GLenum, GLfloat, GLfloat, GLfloat, GLfloat) = NULL;
  628. void (*glMatrixScaledEXT)(GLenum, GLdouble, GLdouble, GLdouble) = NULL;
  629. void (*glMatrixScalefEXT)(GLenum, GLfloat, GLfloat, GLfloat) = NULL;
  630. void (*glMatrixTranslatedEXT)(GLenum, GLdouble, GLdouble, GLdouble) = NULL;
  631. void (*glMatrixTranslatefEXT)(GLenum, GLfloat, GLfloat, GLfloat) = NULL;
  632. void (*glMemoryBarrier)(GLbitfield) = NULL;
  633. void (*glMemoryBarrierByRegion)(GLbitfield) = NULL;
  634. void (*glMinSampleShading)(GLfloat) = NULL;
  635. void (*glMinSampleShadingARB)(GLfloat) = NULL;
  636. void (*glMultiDrawArrays)(GLenum, const GLint *, const GLsizei *, GLsizei) = NULL;
  637. void (*glMultiDrawArraysIndirect)(GLenum, const void *, GLsizei, GLsizei) = NULL;
  638. void (*glMultiDrawArraysIndirectCountARB)(GLenum, GLintptr, GLintptr, GLsizei, GLsizei) = NULL;
  639. void (*glMultiDrawElements)(GLenum, const GLsizei *, GLenum, const void *const*, GLsizei) = NULL;
  640. void (*glMultiDrawElementsBaseVertex)(GLenum, const GLsizei *, GLenum, const void *const*, GLsizei, const GLint *) = NULL;
  641. void (*glMultiDrawElementsIndirect)(GLenum, GLenum, const void *, GLsizei, GLsizei) = NULL;
  642. void (*glMultiDrawElementsIndirectCountARB)(GLenum, GLenum, GLintptr, GLintptr, GLsizei, GLsizei) = NULL;
  643. void (*glMultiTexBufferEXT)(GLenum, GLenum, GLenum, GLuint) = NULL;
  644. void (*glMultiTexCoordPointerEXT)(GLenum, GLint, GLenum, GLsizei, const void *) = NULL;
  645. void (*glMultiTexEnvfEXT)(GLenum, GLenum, GLenum, GLfloat) = NULL;
  646. void (*glMultiTexEnvfvEXT)(GLenum, GLenum, GLenum, const GLfloat *) = NULL;
  647. void (*glMultiTexEnviEXT)(GLenum, GLenum, GLenum, GLint) = NULL;
  648. void (*glMultiTexEnvivEXT)(GLenum, GLenum, GLenum, const GLint *) = NULL;
  649. void (*glMultiTexGendEXT)(GLenum, GLenum, GLenum, GLdouble) = NULL;
  650. void (*glMultiTexGendvEXT)(GLenum, GLenum, GLenum, const GLdouble *) = NULL;
  651. void (*glMultiTexGenfEXT)(GLenum, GLenum, GLenum, GLfloat) = NULL;
  652. void (*glMultiTexGenfvEXT)(GLenum, GLenum, GLenum, const GLfloat *) = NULL;
  653. void (*glMultiTexGeniEXT)(GLenum, GLenum, GLenum, GLint) = NULL;
  654. void (*glMultiTexGenivEXT)(GLenum, GLenum, GLenum, const GLint *) = NULL;
  655. void (*glMultiTexImage1DEXT)(GLenum, GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, const void *) = NULL;
  656. void (*glMultiTexImage2DEXT)(GLenum, GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *) = NULL;
  657. void (*glMultiTexImage3DEXT)(GLenum, GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *) = NULL;
  658. void (*glMultiTexParameterIivEXT)(GLenum, GLenum, GLenum, const GLint *) = NULL;
  659. void (*glMultiTexParameterIuivEXT)(GLenum, GLenum, GLenum, const GLuint *) = NULL;
  660. void (*glMultiTexParameterfEXT)(GLenum, GLenum, GLenum, GLfloat) = NULL;
  661. void (*glMultiTexParameterfvEXT)(GLenum, GLenum, GLenum, const GLfloat *) = NULL;
  662. void (*glMultiTexParameteriEXT)(GLenum, GLenum, GLenum, GLint) = NULL;
  663. void (*glMultiTexParameterivEXT)(GLenum, GLenum, GLenum, const GLint *) = NULL;
  664. void (*glMultiTexRenderbufferEXT)(GLenum, GLenum, GLuint) = NULL;
  665. void (*glMultiTexSubImage1DEXT)(GLenum, GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const void *) = NULL;
  666. void (*glMultiTexSubImage2DEXT)(GLenum, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const void *) = NULL;
  667. void (*glMultiTexSubImage3DEXT)(GLenum, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const void *) = NULL;
  668. void (*glNamedBufferData)(GLuint, GLsizei, const void *, GLenum) = NULL;
  669. void (*glNamedBufferDataEXT)(GLuint, GLsizeiptr, const void *, GLenum) = NULL;
  670. void (*glNamedBufferPageCommitmentARB)(GLuint, GLintptr, GLsizeiptr, GLboolean) = NULL;
  671. void (*glNamedBufferPageCommitmentEXT)(GLuint, GLintptr, GLsizeiptr, GLboolean) = NULL;
  672. void (*glNamedBufferStorage)(GLuint, GLsizei, const void *, GLbitfield) = NULL;
  673. void (*glNamedBufferStorageEXT)(GLuint, GLsizeiptr, const void *, GLbitfield) = NULL;
  674. void (*glNamedBufferSubData)(GLuint, GLintptr, GLsizei, const void *) = NULL;
  675. void (*glNamedBufferSubDataEXT)(GLuint, GLintptr, GLsizeiptr, const void *) = NULL;
  676. void (*glNamedCopyBufferSubDataEXT)(GLuint, GLuint, GLintptr, GLintptr, GLsizeiptr) = NULL;
  677. void (*glNamedFramebufferDrawBuffer)(GLuint, GLenum) = NULL;
  678. void (*glNamedFramebufferDrawBuffers)(GLuint, GLsizei, const GLenum *) = NULL;
  679. void (*glNamedFramebufferParameteri)(GLuint, GLenum, GLint) = NULL;
  680. void (*glNamedFramebufferParameteriEXT)(GLuint, GLenum, GLint) = NULL;
  681. void (*glNamedFramebufferReadBuffer)(GLuint, GLenum) = NULL;
  682. void (*glNamedFramebufferRenderbuffer)(GLuint, GLenum, GLenum, GLuint) = NULL;
  683. void (*glNamedFramebufferRenderbufferEXT)(GLuint, GLenum, GLenum, GLuint) = NULL;
  684. void (*glNamedFramebufferTexture)(GLuint, GLenum, GLuint, GLint) = NULL;
  685. void (*glNamedFramebufferTexture1DEXT)(GLuint, GLenum, GLenum, GLuint, GLint) = NULL;
  686. void (*glNamedFramebufferTexture2DEXT)(GLuint, GLenum, GLenum, GLuint, GLint) = NULL;
  687. void (*glNamedFramebufferTexture3DEXT)(GLuint, GLenum, GLenum, GLuint, GLint, GLint) = NULL;
  688. void (*glNamedFramebufferTextureEXT)(GLuint, GLenum, GLuint, GLint) = NULL;
  689. void (*glNamedFramebufferTextureFaceEXT)(GLuint, GLenum, GLuint, GLint, GLenum) = NULL;
  690. void (*glNamedFramebufferTextureLayer)(GLuint, GLenum, GLuint, GLint, GLint) = NULL;
  691. void (*glNamedFramebufferTextureLayerEXT)(GLuint, GLenum, GLuint, GLint, GLint) = NULL;
  692. void (*glNamedProgramLocalParameter4dEXT)(GLuint, GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble) = NULL;
  693. void (*glNamedProgramLocalParameter4dvEXT)(GLuint, GLenum, GLuint, const GLdouble *) = NULL;
  694. void (*glNamedProgramLocalParameter4fEXT)(GLuint, GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat) = NULL;
  695. void (*glNamedProgramLocalParameter4fvEXT)(GLuint, GLenum, GLuint, const GLfloat *) = NULL;
  696. void (*glNamedProgramLocalParameterI4iEXT)(GLuint, GLenum, GLuint, GLint, GLint, GLint, GLint) = NULL;
  697. void (*glNamedProgramLocalParameterI4ivEXT)(GLuint, GLenum, GLuint, const GLint *) = NULL;
  698. void (*glNamedProgramLocalParameterI4uiEXT)(GLuint, GLenum, GLuint, GLuint, GLuint, GLuint, GLuint) = NULL;
  699. void (*glNamedProgramLocalParameterI4uivEXT)(GLuint, GLenum, GLuint, const GLuint *) = NULL;
  700. void (*glNamedProgramLocalParameters4fvEXT)(GLuint, GLenum, GLuint, GLsizei, const GLfloat *) = NULL;
  701. void (*glNamedProgramLocalParametersI4ivEXT)(GLuint, GLenum, GLuint, GLsizei, const GLint *) = NULL;
  702. void (*glNamedProgramLocalParametersI4uivEXT)(GLuint, GLenum, GLuint, GLsizei, const GLuint *) = NULL;
  703. void (*glNamedProgramStringEXT)(GLuint, GLenum, GLenum, GLsizei, const void *) = NULL;
  704. void (*glNamedRenderbufferStorage)(GLuint, GLenum, GLsizei, GLsizei) = NULL;
  705. void (*glNamedRenderbufferStorageEXT)(GLuint, GLenum, GLsizei, GLsizei) = NULL;
  706. void (*glNamedRenderbufferStorageMultisample)(GLuint, GLsizei, GLenum, GLsizei, GLsizei) = NULL;
  707. void (*glNamedRenderbufferStorageMultisampleCoverageEXT)(GLuint, GLsizei, GLsizei, GLenum, GLsizei, GLsizei) = NULL;
  708. void (*glNamedRenderbufferStorageMultisampleEXT)(GLuint, GLsizei, GLenum, GLsizei, GLsizei) = NULL;
  709. void (*glNamedStringARB)(GLenum, GLint, const GLchar *, GLint, const GLchar *) = NULL;
  710. void (*glObjectLabel)(GLenum, GLuint, GLsizei, const GLchar *) = NULL;
  711. void (*glObjectLabelKHR)(GLenum, GLuint, GLsizei, const GLchar *) = NULL;
  712. void (*glObjectPtrLabel)(const void *, GLsizei, const GLchar *) = NULL;
  713. void (*glObjectPtrLabelKHR)(const void *, GLsizei, const GLchar *) = NULL;
  714. void (*glPatchParameterfv)(GLenum, const GLfloat *) = NULL;
  715. void (*glPatchParameteri)(GLenum, GLint) = NULL;
  716. void (*glPauseTransformFeedback)() = NULL;
  717. void (*glPixelStoref)(GLenum, GLfloat) = NULL;
  718. void (*glPixelStorei)(GLenum, GLint) = NULL;
  719. void (*glPointParameterf)(GLenum, GLfloat) = NULL;
  720. void (*glPointParameterfv)(GLenum, const GLfloat *) = NULL;
  721. void (*glPointParameteri)(GLenum, GLint) = NULL;
  722. void (*glPointParameteriv)(GLenum, const GLint *) = NULL;
  723. void (*glPointSize)(GLfloat) = NULL;
  724. void (*glPolygonMode)(GLenum, GLenum) = NULL;
  725. void (*glPolygonOffset)(GLfloat, GLfloat) = NULL;
  726. void (*glPopDebugGroup)() = NULL;
  727. void (*glPopDebugGroupKHR)() = NULL;
  728. void (*glPrimitiveRestartIndex)(GLuint) = NULL;
  729. void (*glProgramBinary)(GLuint, GLenum, const void *, GLsizei) = NULL;
  730. void (*glProgramParameteri)(GLuint, GLenum, GLint) = NULL;
  731. void (*glProgramUniform1d)(GLuint, GLint, GLdouble) = NULL;
  732. void (*glProgramUniform1dEXT)(GLuint, GLint, GLdouble) = NULL;
  733. void (*glProgramUniform1dv)(GLuint, GLint, GLsizei, const GLdouble *) = NULL;
  734. void (*glProgramUniform1dvEXT)(GLuint, GLint, GLsizei, const GLdouble *) = NULL;
  735. void (*glProgramUniform1f)(GLuint, GLint, GLfloat) = NULL;
  736. void (*glProgramUniform1fEXT)(GLuint, GLint, GLfloat) = NULL;
  737. void (*glProgramUniform1fv)(GLuint, GLint, GLsizei, const GLfloat *) = NULL;
  738. void (*glProgramUniform1fvEXT)(GLuint, GLint, GLsizei, const GLfloat *) = NULL;
  739. void (*glProgramUniform1i)(GLuint, GLint, GLint) = NULL;
  740. void (*glProgramUniform1iEXT)(GLuint, GLint, GLint) = NULL;
  741. void (*glProgramUniform1iv)(GLuint, GLint, GLsizei, const GLint *) = NULL;
  742. void (*glProgramUniform1ivEXT)(GLuint, GLint, GLsizei, const GLint *) = NULL;
  743. void (*glProgramUniform1ui)(GLuint, GLint, GLuint) = NULL;
  744. void (*glProgramUniform1uiEXT)(GLuint, GLint, GLuint) = NULL;
  745. void (*glProgramUniform1uiv)(GLuint, GLint, GLsizei, const GLuint *) = NULL;
  746. void (*glProgramUniform1uivEXT)(GLuint, GLint, GLsizei, const GLuint *) = NULL;
  747. void (*glProgramUniform2d)(GLuint, GLint, GLdouble, GLdouble) = NULL;
  748. void (*glProgramUniform2dEXT)(GLuint, GLint, GLdouble, GLdouble) = NULL;
  749. void (*glProgramUniform2dv)(GLuint, GLint, GLsizei, const GLdouble *) = NULL;
  750. void (*glProgramUniform2dvEXT)(GLuint, GLint, GLsizei, const GLdouble *) = NULL;
  751. void (*glProgramUniform2f)(GLuint, GLint, GLfloat, GLfloat) = NULL;
  752. void (*glProgramUniform2fEXT)(GLuint, GLint, GLfloat, GLfloat) = NULL;
  753. void (*glProgramUniform2fv)(GLuint, GLint, GLsizei, const GLfloat *) = NULL;
  754. void (*glProgramUniform2fvEXT)(GLuint, GLint, GLsizei, const GLfloat *) = NULL;
  755. void (*glProgramUniform2i)(GLuint, GLint, GLint, GLint) = NULL;
  756. void (*glProgramUniform2iEXT)(GLuint, GLint, GLint, GLint) = NULL;
  757. void (*glProgramUniform2iv)(GLuint, GLint, GLsizei, const GLint *) = NULL;
  758. void (*glProgramUniform2ivEXT)(GLuint, GLint, GLsizei, const GLint *) = NULL;
  759. void (*glProgramUniform2ui)(GLuint, GLint, GLuint, GLuint) = NULL;
  760. void (*glProgramUniform2uiEXT)(GLuint, GLint, GLuint, GLuint) = NULL;
  761. void (*glProgramUniform2uiv)(GLuint, GLint, GLsizei, const GLuint *) = NULL;
  762. void (*glProgramUniform2uivEXT)(GLuint, GLint, GLsizei, const GLuint *) = NULL;
  763. void (*glProgramUniform3d)(GLuint, GLint, GLdouble, GLdouble, GLdouble) = NULL;
  764. void (*glProgramUniform3dEXT)(GLuint, GLint, GLdouble, GLdouble, GLdouble) = NULL;
  765. void (*glProgramUniform3dv)(GLuint, GLint, GLsizei, const GLdouble *) = NULL;
  766. void (*glProgramUniform3dvEXT)(GLuint, GLint, GLsizei, const GLdouble *) = NULL;
  767. void (*glProgramUniform3f)(GLuint, GLint, GLfloat, GLfloat, GLfloat) = NULL;
  768. void (*glProgramUniform3fEXT)(GLuint, GLint, GLfloat, GLfloat, GLfloat) = NULL;
  769. void (*glProgramUniform3fv)(GLuint, GLint, GLsizei, const GLfloat *) = NULL;
  770. void (*glProgramUniform3fvEXT)(GLuint, GLint, GLsizei, const GLfloat *) = NULL;
  771. void (*glProgramUniform3i)(GLuint, GLint, GLint, GLint, GLint) = NULL;
  772. void (*glProgramUniform3iEXT)(GLuint, GLint, GLint, GLint, GLint) = NULL;
  773. void (*glProgramUniform3iv)(GLuint, GLint, GLsizei, const GLint *) = NULL;
  774. void (*glProgramUniform3ivEXT)(GLuint, GLint, GLsizei, const GLint *) = NULL;
  775. void (*glProgramUniform3ui)(GLuint, GLint, GLuint, GLuint, GLuint) = NULL;
  776. void (*glProgramUniform3uiEXT)(GLuint, GLint, GLuint, GLuint, GLuint) = NULL;
  777. void (*glProgramUniform3uiv)(GLuint, GLint, GLsizei, const GLuint *) = NULL;
  778. void (*glProgramUniform3uivEXT)(GLuint, GLint, GLsizei, const GLuint *) = NULL;
  779. void (*glProgramUniform4d)(GLuint, GLint, GLdouble, GLdouble, GLdouble, GLdouble) = NULL;
  780. void (*glProgramUniform4dEXT)(GLuint, GLint, GLdouble, GLdouble, GLdouble, GLdouble) = NULL;
  781. void (*glProgramUniform4dv)(GLuint, GLint, GLsizei, const GLdouble *) = NULL;
  782. void (*glProgramUniform4dvEXT)(GLuint, GLint, GLsizei, const GLdouble *) = NULL;
  783. void (*glProgramUniform4f)(GLuint, GLint, GLfloat, GLfloat, GLfloat, GLfloat) = NULL;
  784. void (*glProgramUniform4fEXT)(GLuint, GLint, GLfloat, GLfloat, GLfloat, GLfloat) = NULL;
  785. void (*glProgramUniform4fv)(GLuint, GLint, GLsizei, const GLfloat *) = NULL;
  786. void (*glProgramUniform4fvEXT)(GLuint, GLint, GLsizei, const GLfloat *) = NULL;
  787. void (*glProgramUniform4i)(GLuint, GLint, GLint, GLint, GLint, GLint) = NULL;
  788. void (*glProgramUniform4iEXT)(GLuint, GLint, GLint, GLint, GLint, GLint) = NULL;
  789. void (*glProgramUniform4iv)(GLuint, GLint, GLsizei, const GLint *) = NULL;
  790. void (*glProgramUniform4ivEXT)(GLuint, GLint, GLsizei, const GLint *) = NULL;
  791. void (*glProgramUniform4ui)(GLuint, GLint, GLuint, GLuint, GLuint, GLuint) = NULL;
  792. void (*glProgramUniform4uiEXT)(GLuint, GLint, GLuint, GLuint, GLuint, GLuint) = NULL;
  793. void (*glProgramUniform4uiv)(GLuint, GLint, GLsizei, const GLuint *) = NULL;
  794. void (*glProgramUniform4uivEXT)(GLuint, GLint, GLsizei, const GLuint *) = NULL;
  795. void (*glProgramUniformHandleui64ARB)(GLuint, GLint, GLuint64) = NULL;
  796. void (*glProgramUniformHandleui64vARB)(GLuint, GLint, GLsizei, const GLuint64 *) = NULL;
  797. void (*glProgramUniformMatrix2dv)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  798. void (*glProgramUniformMatrix2dvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  799. void (*glProgramUniformMatrix2fv)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  800. void (*glProgramUniformMatrix2fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  801. void (*glProgramUniformMatrix2x3dv)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  802. void (*glProgramUniformMatrix2x3dvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  803. void (*glProgramUniformMatrix2x3fv)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  804. void (*glProgramUniformMatrix2x3fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  805. void (*glProgramUniformMatrix2x4dv)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  806. void (*glProgramUniformMatrix2x4dvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  807. void (*glProgramUniformMatrix2x4fv)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  808. void (*glProgramUniformMatrix2x4fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  809. void (*glProgramUniformMatrix3dv)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  810. void (*glProgramUniformMatrix3dvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  811. void (*glProgramUniformMatrix3fv)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  812. void (*glProgramUniformMatrix3fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  813. void (*glProgramUniformMatrix3x2dv)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  814. void (*glProgramUniformMatrix3x2dvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  815. void (*glProgramUniformMatrix3x2fv)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  816. void (*glProgramUniformMatrix3x2fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  817. void (*glProgramUniformMatrix3x4dv)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  818. void (*glProgramUniformMatrix3x4dvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  819. void (*glProgramUniformMatrix3x4fv)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  820. void (*glProgramUniformMatrix3x4fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  821. void (*glProgramUniformMatrix4dv)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  822. void (*glProgramUniformMatrix4dvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  823. void (*glProgramUniformMatrix4fv)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  824. void (*glProgramUniformMatrix4fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  825. void (*glProgramUniformMatrix4x2dv)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  826. void (*glProgramUniformMatrix4x2dvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  827. void (*glProgramUniformMatrix4x2fv)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  828. void (*glProgramUniformMatrix4x2fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  829. void (*glProgramUniformMatrix4x3dv)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  830. void (*glProgramUniformMatrix4x3dvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  831. void (*glProgramUniformMatrix4x3fv)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  832. void (*glProgramUniformMatrix4x3fvEXT)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  833. void (*glProvokingVertex)(GLenum) = NULL;
  834. void (*glPushClientAttribDefaultEXT)(GLbitfield) = NULL;
  835. void (*glPushDebugGroup)(GLenum, GLuint, GLsizei, const GLchar *) = NULL;
  836. void (*glPushDebugGroupKHR)(GLenum, GLuint, GLsizei, const GLchar *) = NULL;
  837. void (*glQueryCounter)(GLuint, GLenum) = NULL;
  838. void (*glReadBuffer)(GLenum) = NULL;
  839. void (*glReadPixels)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, void *) = NULL;
  840. void (*glReadnPixels)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLsizei, void *) = NULL;
  841. void (*glReadnPixelsARB)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLsizei, void *) = NULL;
  842. void (*glReadnPixelsKHR)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLsizei, void *) = NULL;
  843. void (*glReleaseShaderCompiler)() = NULL;
  844. void (*glRenderbufferStorage)(GLenum, GLenum, GLsizei, GLsizei) = NULL;
  845. void (*glRenderbufferStorageMultisample)(GLenum, GLsizei, GLenum, GLsizei, GLsizei) = NULL;
  846. void (*glResumeTransformFeedback)() = NULL;
  847. void (*glSampleCoverage)(GLfloat, GLboolean) = NULL;
  848. void (*glSampleMaski)(GLuint, GLbitfield) = NULL;
  849. void (*glSamplerParameterIiv)(GLuint, GLenum, const GLint *) = NULL;
  850. void (*glSamplerParameterIuiv)(GLuint, GLenum, const GLuint *) = NULL;
  851. void (*glSamplerParameterf)(GLuint, GLenum, GLfloat) = NULL;
  852. void (*glSamplerParameterfv)(GLuint, GLenum, const GLfloat *) = NULL;
  853. void (*glSamplerParameteri)(GLuint, GLenum, GLint) = NULL;
  854. void (*glSamplerParameteriv)(GLuint, GLenum, const GLint *) = NULL;
  855. void (*glScissor)(GLint, GLint, GLsizei, GLsizei) = NULL;
  856. void (*glScissorArrayv)(GLuint, GLsizei, const GLint *) = NULL;
  857. void (*glScissorIndexed)(GLuint, GLint, GLint, GLsizei, GLsizei) = NULL;
  858. void (*glScissorIndexedv)(GLuint, const GLint *) = NULL;
  859. void (*glShaderBinary)(GLsizei, const GLuint *, GLenum, const void *, GLsizei) = NULL;
  860. void (*glShaderSource)(GLuint, GLsizei, const GLchar *const*, const GLint *) = NULL;
  861. void (*glShaderStorageBlockBinding)(GLuint, GLuint, GLuint) = NULL;
  862. void (*glStencilFunc)(GLenum, GLint, GLuint) = NULL;
  863. void (*glStencilFuncSeparate)(GLenum, GLenum, GLint, GLuint) = NULL;
  864. void (*glStencilMask)(GLuint) = NULL;
  865. void (*glStencilMaskSeparate)(GLenum, GLuint) = NULL;
  866. void (*glStencilOp)(GLenum, GLenum, GLenum) = NULL;
  867. void (*glStencilOpSeparate)(GLenum, GLenum, GLenum, GLenum) = NULL;
  868. void (*glTexBuffer)(GLenum, GLenum, GLuint) = NULL;
  869. void (*glTexBufferRange)(GLenum, GLenum, GLuint, GLintptr, GLsizeiptr) = NULL;
  870. void (*glTexImage1D)(GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, const void *) = NULL;
  871. void (*glTexImage2D)(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *) = NULL;
  872. void (*glTexImage2DMultisample)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLboolean) = NULL;
  873. void (*glTexImage3D)(GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *) = NULL;
  874. void (*glTexImage3DMultisample)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei, GLboolean) = NULL;
  875. void (*glTexPageCommitmentARB)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLboolean) = NULL;
  876. void (*glTexParameterIiv)(GLenum, GLenum, const GLint *) = NULL;
  877. void (*glTexParameterIuiv)(GLenum, GLenum, const GLuint *) = NULL;
  878. void (*glTexParameterf)(GLenum, GLenum, GLfloat) = NULL;
  879. void (*glTexParameterfv)(GLenum, GLenum, const GLfloat *) = NULL;
  880. void (*glTexParameteri)(GLenum, GLenum, GLint) = NULL;
  881. void (*glTexParameteriv)(GLenum, GLenum, const GLint *) = NULL;
  882. void (*glTexStorage1D)(GLenum, GLsizei, GLenum, GLsizei) = NULL;
  883. void (*glTexStorage2D)(GLenum, GLsizei, GLenum, GLsizei, GLsizei) = NULL;
  884. void (*glTexStorage2DMultisample)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLboolean) = NULL;
  885. void (*glTexStorage3D)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei) = NULL;
  886. void (*glTexStorage3DMultisample)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei, GLboolean) = NULL;
  887. void (*glTexSubImage1D)(GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const void *) = NULL;
  888. void (*glTexSubImage2D)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const void *) = NULL;
  889. void (*glTexSubImage3D)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const void *) = NULL;
  890. void (*glTextureBarrier)() = NULL;
  891. void (*glTextureBuffer)(GLuint, GLenum, GLuint) = NULL;
  892. void (*glTextureBufferEXT)(GLuint, GLenum, GLenum, GLuint) = NULL;
  893. void (*glTextureBufferRange)(GLuint, GLenum, GLuint, GLintptr, GLsizei) = NULL;
  894. void (*glTextureBufferRangeEXT)(GLuint, GLenum, GLenum, GLuint, GLintptr, GLsizeiptr) = NULL;
  895. void (*glTextureImage1DEXT)(GLuint, GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, const void *) = NULL;
  896. void (*glTextureImage2DEXT)(GLuint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *) = NULL;
  897. void (*glTextureImage3DEXT)(GLuint, GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *) = NULL;
  898. void (*glTexturePageCommitmentEXT)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLboolean) = NULL;
  899. void (*glTextureParameterIiv)(GLuint, GLenum, const GLint *) = NULL;
  900. void (*glTextureParameterIivEXT)(GLuint, GLenum, GLenum, const GLint *) = NULL;
  901. void (*glTextureParameterIuiv)(GLuint, GLenum, const GLuint *) = NULL;
  902. void (*glTextureParameterIuivEXT)(GLuint, GLenum, GLenum, const GLuint *) = NULL;
  903. void (*glTextureParameterf)(GLuint, GLenum, GLfloat) = NULL;
  904. void (*glTextureParameterfEXT)(GLuint, GLenum, GLenum, GLfloat) = NULL;
  905. void (*glTextureParameterfv)(GLuint, GLenum, const GLfloat *) = NULL;
  906. void (*glTextureParameterfvEXT)(GLuint, GLenum, GLenum, const GLfloat *) = NULL;
  907. void (*glTextureParameteri)(GLuint, GLenum, GLint) = NULL;
  908. void (*glTextureParameteriEXT)(GLuint, GLenum, GLenum, GLint) = NULL;
  909. void (*glTextureParameteriv)(GLuint, GLenum, const GLint *) = NULL;
  910. void (*glTextureParameterivEXT)(GLuint, GLenum, GLenum, const GLint *) = NULL;
  911. void (*glTextureRenderbufferEXT)(GLuint, GLenum, GLuint) = NULL;
  912. void (*glTextureStorage1D)(GLuint, GLsizei, GLenum, GLsizei) = NULL;
  913. void (*glTextureStorage1DEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei) = NULL;
  914. void (*glTextureStorage2D)(GLuint, GLsizei, GLenum, GLsizei, GLsizei) = NULL;
  915. void (*glTextureStorage2DEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei) = NULL;
  916. void (*glTextureStorage2DMultisample)(GLuint, GLsizei, GLenum, GLsizei, GLsizei, GLboolean) = NULL;
  917. void (*glTextureStorage2DMultisampleEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLboolean) = NULL;
  918. void (*glTextureStorage3D)(GLuint, GLsizei, GLenum, GLsizei, GLsizei, GLsizei) = NULL;
  919. void (*glTextureStorage3DEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei) = NULL;
  920. void (*glTextureStorage3DMultisample)(GLuint, GLsizei, GLenum, GLsizei, GLsizei, GLsizei, GLboolean) = NULL;
  921. void (*glTextureStorage3DMultisampleEXT)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei, GLboolean) = NULL;
  922. void (*glTextureSubImage1D)(GLuint, GLint, GLint, GLsizei, GLenum, GLenum, const void *) = NULL;
  923. void (*glTextureSubImage1DEXT)(GLuint, GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const void *) = NULL;
  924. void (*glTextureSubImage2D)(GLuint, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const void *) = NULL;
  925. void (*glTextureSubImage2DEXT)(GLuint, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const void *) = NULL;
  926. void (*glTextureSubImage3D)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const void *) = NULL;
  927. void (*glTextureSubImage3DEXT)(GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const void *) = NULL;
  928. void (*glTextureView)(GLuint, GLenum, GLuint, GLenum, GLuint, GLuint, GLuint, GLuint) = NULL;
  929. void (*glTransformFeedbackBufferBase)(GLuint, GLuint, GLuint) = NULL;
  930. void (*glTransformFeedbackBufferRange)(GLuint, GLuint, GLuint, GLintptr, GLsizei) = NULL;
  931. void (*glTransformFeedbackVaryings)(GLuint, GLsizei, const GLchar *const*, GLenum) = NULL;
  932. void (*glUniform1d)(GLint, GLdouble) = NULL;
  933. void (*glUniform1dv)(GLint, GLsizei, const GLdouble *) = NULL;
  934. void (*glUniform1f)(GLint, GLfloat) = NULL;
  935. void (*glUniform1fv)(GLint, GLsizei, const GLfloat *) = NULL;
  936. void (*glUniform1i)(GLint, GLint) = NULL;
  937. void (*glUniform1iv)(GLint, GLsizei, const GLint *) = NULL;
  938. void (*glUniform1ui)(GLint, GLuint) = NULL;
  939. void (*glUniform1uiv)(GLint, GLsizei, const GLuint *) = NULL;
  940. void (*glUniform2d)(GLint, GLdouble, GLdouble) = NULL;
  941. void (*glUniform2dv)(GLint, GLsizei, const GLdouble *) = NULL;
  942. void (*glUniform2f)(GLint, GLfloat, GLfloat) = NULL;
  943. void (*glUniform2fv)(GLint, GLsizei, const GLfloat *) = NULL;
  944. void (*glUniform2i)(GLint, GLint, GLint) = NULL;
  945. void (*glUniform2iv)(GLint, GLsizei, const GLint *) = NULL;
  946. void (*glUniform2ui)(GLint, GLuint, GLuint) = NULL;
  947. void (*glUniform2uiv)(GLint, GLsizei, const GLuint *) = NULL;
  948. void (*glUniform3d)(GLint, GLdouble, GLdouble, GLdouble) = NULL;
  949. void (*glUniform3dv)(GLint, GLsizei, const GLdouble *) = NULL;
  950. void (*glUniform3f)(GLint, GLfloat, GLfloat, GLfloat) = NULL;
  951. void (*glUniform3fv)(GLint, GLsizei, const GLfloat *) = NULL;
  952. void (*glUniform3i)(GLint, GLint, GLint, GLint) = NULL;
  953. void (*glUniform3iv)(GLint, GLsizei, const GLint *) = NULL;
  954. void (*glUniform3ui)(GLint, GLuint, GLuint, GLuint) = NULL;
  955. void (*glUniform3uiv)(GLint, GLsizei, const GLuint *) = NULL;
  956. void (*glUniform4d)(GLint, GLdouble, GLdouble, GLdouble, GLdouble) = NULL;
  957. void (*glUniform4dv)(GLint, GLsizei, const GLdouble *) = NULL;
  958. void (*glUniform4f)(GLint, GLfloat, GLfloat, GLfloat, GLfloat) = NULL;
  959. void (*glUniform4fv)(GLint, GLsizei, const GLfloat *) = NULL;
  960. void (*glUniform4i)(GLint, GLint, GLint, GLint, GLint) = NULL;
  961. void (*glUniform4iv)(GLint, GLsizei, const GLint *) = NULL;
  962. void (*glUniform4ui)(GLint, GLuint, GLuint, GLuint, GLuint) = NULL;
  963. void (*glUniform4uiv)(GLint, GLsizei, const GLuint *) = NULL;
  964. void (*glUniformBlockBinding)(GLuint, GLuint, GLuint) = NULL;
  965. void (*glUniformHandleui64ARB)(GLint, GLuint64) = NULL;
  966. void (*glUniformHandleui64vARB)(GLint, GLsizei, const GLuint64 *) = NULL;
  967. void (*glUniformMatrix2dv)(GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  968. void (*glUniformMatrix2fv)(GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  969. void (*glUniformMatrix2x3dv)(GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  970. void (*glUniformMatrix2x3fv)(GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  971. void (*glUniformMatrix2x4dv)(GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  972. void (*glUniformMatrix2x4fv)(GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  973. void (*glUniformMatrix3dv)(GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  974. void (*glUniformMatrix3fv)(GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  975. void (*glUniformMatrix3x2dv)(GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  976. void (*glUniformMatrix3x2fv)(GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  977. void (*glUniformMatrix3x4dv)(GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  978. void (*glUniformMatrix3x4fv)(GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  979. void (*glUniformMatrix4dv)(GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  980. void (*glUniformMatrix4fv)(GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  981. void (*glUniformMatrix4x2dv)(GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  982. void (*glUniformMatrix4x2fv)(GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  983. void (*glUniformMatrix4x3dv)(GLint, GLsizei, GLboolean, const GLdouble *) = NULL;
  984. void (*glUniformMatrix4x3fv)(GLint, GLsizei, GLboolean, const GLfloat *) = NULL;
  985. void (*glUniformSubroutinesuiv)(GLenum, GLsizei, const GLuint *) = NULL;
  986. GLboolean (*glUnmapBuffer)(GLenum) = NULL;
  987. GLboolean (*glUnmapNamedBuffer)(GLuint) = NULL;
  988. GLboolean (*glUnmapNamedBufferEXT)(GLuint) = NULL;
  989. void (*glUseProgram)(GLuint) = NULL;
  990. void (*glUseProgramStages)(GLuint, GLbitfield, GLuint) = NULL;
  991. void (*glValidateProgram)(GLuint) = NULL;
  992. void (*glValidateProgramPipeline)(GLuint) = NULL;
  993. void (*glVertexArrayAttribBinding)(GLuint, GLuint, GLuint) = NULL;
  994. void (*glVertexArrayAttribFormat)(GLuint, GLuint, GLint, GLenum, GLboolean, GLuint) = NULL;
  995. void (*glVertexArrayAttribIFormat)(GLuint, GLuint, GLint, GLenum, GLuint) = NULL;
  996. void (*glVertexArrayAttribLFormat)(GLuint, GLuint, GLint, GLenum, GLuint) = NULL;
  997. void (*glVertexArrayBindVertexBufferEXT)(GLuint, GLuint, GLuint, GLintptr, GLsizei) = NULL;
  998. void (*glVertexArrayBindingDivisor)(GLuint, GLuint, GLuint) = NULL;
  999. void (*glVertexArrayColorOffsetEXT)(GLuint, GLuint, GLint, GLenum, GLsizei, GLintptr) = NULL;
  1000. void (*glVertexArrayEdgeFlagOffsetEXT)(GLuint, GLuint, GLsizei, GLintptr) = NULL;
  1001. void (*glVertexArrayElementBuffer)(GLuint, GLuint) = NULL;
  1002. void (*glVertexArrayFogCoordOffsetEXT)(GLuint, GLuint, GLenum, GLsizei, GLintptr) = NULL;
  1003. void (*glVertexArrayIndexOffsetEXT)(GLuint, GLuint, GLenum, GLsizei, GLintptr) = NULL;
  1004. void (*glVertexArrayMultiTexCoordOffsetEXT)(GLuint, GLuint, GLenum, GLint, GLenum, GLsizei, GLintptr) = NULL;
  1005. void (*glVertexArrayNormalOffsetEXT)(GLuint, GLuint, GLenum, GLsizei, GLintptr) = NULL;
  1006. void (*glVertexArraySecondaryColorOffsetEXT)(GLuint, GLuint, GLint, GLenum, GLsizei, GLintptr) = NULL;
  1007. void (*glVertexArrayTexCoordOffsetEXT)(GLuint, GLuint, GLint, GLenum, GLsizei, GLintptr) = NULL;
  1008. void (*glVertexArrayVertexAttribBindingEXT)(GLuint, GLuint, GLuint) = NULL;
  1009. void (*glVertexArrayVertexAttribDivisorEXT)(GLuint, GLuint, GLuint) = NULL;
  1010. void (*glVertexArrayVertexAttribFormatEXT)(GLuint, GLuint, GLint, GLenum, GLboolean, GLuint) = NULL;
  1011. void (*glVertexArrayVertexAttribIFormatEXT)(GLuint, GLuint, GLint, GLenum, GLuint) = NULL;
  1012. void (*glVertexArrayVertexAttribIOffsetEXT)(GLuint, GLuint, GLuint, GLint, GLenum, GLsizei, GLintptr) = NULL;
  1013. void (*glVertexArrayVertexAttribLFormatEXT)(GLuint, GLuint, GLint, GLenum, GLuint) = NULL;
  1014. void (*glVertexArrayVertexAttribLOffsetEXT)(GLuint, GLuint, GLuint, GLint, GLenum, GLsizei, GLintptr) = NULL;
  1015. void (*glVertexArrayVertexAttribOffsetEXT)(GLuint, GLuint, GLuint, GLint, GLenum, GLboolean, GLsizei, GLintptr) = NULL;
  1016. void (*glVertexArrayVertexBindingDivisorEXT)(GLuint, GLuint, GLuint) = NULL;
  1017. void (*glVertexArrayVertexBuffer)(GLuint, GLuint, GLuint, GLintptr, GLsizei) = NULL;
  1018. void (*glVertexArrayVertexBuffers)(GLuint, GLuint, GLsizei, const GLuint *, const GLintptr *, const GLsizei *) = NULL;
  1019. void (*glVertexArrayVertexOffsetEXT)(GLuint, GLuint, GLint, GLenum, GLsizei, GLintptr) = NULL;
  1020. void (*glVertexAttrib1d)(GLuint, GLdouble) = NULL;
  1021. void (*glVertexAttrib1dv)(GLuint, const GLdouble *) = NULL;
  1022. void (*glVertexAttrib1f)(GLuint, GLfloat) = NULL;
  1023. void (*glVertexAttrib1fv)(GLuint, const GLfloat *) = NULL;
  1024. void (*glVertexAttrib1s)(GLuint, GLshort) = NULL;
  1025. void (*glVertexAttrib1sv)(GLuint, const GLshort *) = NULL;
  1026. void (*glVertexAttrib2d)(GLuint, GLdouble, GLdouble) = NULL;
  1027. void (*glVertexAttrib2dv)(GLuint, const GLdouble *) = NULL;
  1028. void (*glVertexAttrib2f)(GLuint, GLfloat, GLfloat) = NULL;
  1029. void (*glVertexAttrib2fv)(GLuint, const GLfloat *) = NULL;
  1030. void (*glVertexAttrib2s)(GLuint, GLshort, GLshort) = NULL;
  1031. void (*glVertexAttrib2sv)(GLuint, const GLshort *) = NULL;
  1032. void (*glVertexAttrib3d)(GLuint, GLdouble, GLdouble, GLdouble) = NULL;
  1033. void (*glVertexAttrib3dv)(GLuint, const GLdouble *) = NULL;
  1034. void (*glVertexAttrib3f)(GLuint, GLfloat, GLfloat, GLfloat) = NULL;
  1035. void (*glVertexAttrib3fv)(GLuint, const GLfloat *) = NULL;
  1036. void (*glVertexAttrib3s)(GLuint, GLshort, GLshort, GLshort) = NULL;
  1037. void (*glVertexAttrib3sv)(GLuint, const GLshort *) = NULL;
  1038. void (*glVertexAttrib4Nbv)(GLuint, const GLbyte *) = NULL;
  1039. void (*glVertexAttrib4Niv)(GLuint, const GLint *) = NULL;
  1040. void (*glVertexAttrib4Nsv)(GLuint, const GLshort *) = NULL;
  1041. void (*glVertexAttrib4Nub)(GLuint, GLubyte, GLubyte, GLubyte, GLubyte) = NULL;
  1042. void (*glVertexAttrib4Nubv)(GLuint, const GLubyte *) = NULL;
  1043. void (*glVertexAttrib4Nuiv)(GLuint, const GLuint *) = NULL;
  1044. void (*glVertexAttrib4Nusv)(GLuint, const GLushort *) = NULL;
  1045. void (*glVertexAttrib4bv)(GLuint, const GLbyte *) = NULL;
  1046. void (*glVertexAttrib4d)(GLuint, GLdouble, GLdouble, GLdouble, GLdouble) = NULL;
  1047. void (*glVertexAttrib4dv)(GLuint, const GLdouble *) = NULL;
  1048. void (*glVertexAttrib4f)(GLuint, GLfloat, GLfloat, GLfloat, GLfloat) = NULL;
  1049. void (*glVertexAttrib4fv)(GLuint, const GLfloat *) = NULL;
  1050. void (*glVertexAttrib4iv)(GLuint, const GLint *) = NULL;
  1051. void (*glVertexAttrib4s)(GLuint, GLshort, GLshort, GLshort, GLshort) = NULL;
  1052. void (*glVertexAttrib4sv)(GLuint, const GLshort *) = NULL;
  1053. void (*glVertexAttrib4ubv)(GLuint, const GLubyte *) = NULL;
  1054. void (*glVertexAttrib4uiv)(GLuint, const GLuint *) = NULL;
  1055. void (*glVertexAttrib4usv)(GLuint, const GLushort *) = NULL;
  1056. void (*glVertexAttribBinding)(GLuint, GLuint) = NULL;
  1057. void (*glVertexAttribDivisor)(GLuint, GLuint) = NULL;
  1058. void (*glVertexAttribFormat)(GLuint, GLint, GLenum, GLboolean, GLuint) = NULL;
  1059. void (*glVertexAttribI1i)(GLuint, GLint) = NULL;
  1060. void (*glVertexAttribI1iv)(GLuint, const GLint *) = NULL;
  1061. void (*glVertexAttribI1ui)(GLuint, GLuint) = NULL;
  1062. void (*glVertexAttribI1uiv)(GLuint, const GLuint *) = NULL;
  1063. void (*glVertexAttribI2i)(GLuint, GLint, GLint) = NULL;
  1064. void (*glVertexAttribI2iv)(GLuint, const GLint *) = NULL;
  1065. void (*glVertexAttribI2ui)(GLuint, GLuint, GLuint) = NULL;
  1066. void (*glVertexAttribI2uiv)(GLuint, const GLuint *) = NULL;
  1067. void (*glVertexAttribI3i)(GLuint, GLint, GLint, GLint) = NULL;
  1068. void (*glVertexAttribI3iv)(GLuint, const GLint *) = NULL;
  1069. void (*glVertexAttribI3ui)(GLuint, GLuint, GLuint, GLuint) = NULL;
  1070. void (*glVertexAttribI3uiv)(GLuint, const GLuint *) = NULL;
  1071. void (*glVertexAttribI4bv)(GLuint, const GLbyte *) = NULL;
  1072. void (*glVertexAttribI4i)(GLuint, GLint, GLint, GLint, GLint) = NULL;
  1073. void (*glVertexAttribI4iv)(GLuint, const GLint *) = NULL;
  1074. void (*glVertexAttribI4sv)(GLuint, const GLshort *) = NULL;
  1075. void (*glVertexAttribI4ubv)(GLuint, const GLubyte *) = NULL;
  1076. void (*glVertexAttribI4ui)(GLuint, GLuint, GLuint, GLuint, GLuint) = NULL;
  1077. void (*glVertexAttribI4uiv)(GLuint, const GLuint *) = NULL;
  1078. void (*glVertexAttribI4usv)(GLuint, const GLushort *) = NULL;
  1079. void (*glVertexAttribIFormat)(GLuint, GLint, GLenum, GLuint) = NULL;
  1080. void (*glVertexAttribIPointer)(GLuint, GLint, GLenum, GLsizei, const void *) = NULL;
  1081. void (*glVertexAttribL1d)(GLuint, GLdouble) = NULL;
  1082. void (*glVertexAttribL1dv)(GLuint, const GLdouble *) = NULL;
  1083. void (*glVertexAttribL1ui64ARB)(GLuint, GLuint64EXT) = NULL;
  1084. void (*glVertexAttribL1ui64vARB)(GLuint, const GLuint64EXT *) = NULL;
  1085. void (*glVertexAttribL2d)(GLuint, GLdouble, GLdouble) = NULL;
  1086. void (*glVertexAttribL2dv)(GLuint, const GLdouble *) = NULL;
  1087. void (*glVertexAttribL3d)(GLuint, GLdouble, GLdouble, GLdouble) = NULL;
  1088. void (*glVertexAttribL3dv)(GLuint, const GLdouble *) = NULL;
  1089. void (*glVertexAttribL4d)(GLuint, GLdouble, GLdouble, GLdouble, GLdouble) = NULL;
  1090. void (*glVertexAttribL4dv)(GLuint, const GLdouble *) = NULL;
  1091. void (*glVertexAttribLFormat)(GLuint, GLint, GLenum, GLuint) = NULL;
  1092. void (*glVertexAttribLPointer)(GLuint, GLint, GLenum, GLsizei, const void *) = NULL;
  1093. void (*glVertexAttribP1ui)(GLuint, GLenum, GLboolean, GLuint) = NULL;
  1094. void (*glVertexAttribP1uiv)(GLuint, GLenum, GLboolean, const GLuint *) = NULL;
  1095. void (*glVertexAttribP2ui)(GLuint, GLenum, GLboolean, GLuint) = NULL;
  1096. void (*glVertexAttribP2uiv)(GLuint, GLenum, GLboolean, const GLuint *) = NULL;
  1097. void (*glVertexAttribP3ui)(GLuint, GLenum, GLboolean, GLuint) = NULL;
  1098. void (*glVertexAttribP3uiv)(GLuint, GLenum, GLboolean, const GLuint *) = NULL;
  1099. void (*glVertexAttribP4ui)(GLuint, GLenum, GLboolean, GLuint) = NULL;
  1100. void (*glVertexAttribP4uiv)(GLuint, GLenum, GLboolean, const GLuint *) = NULL;
  1101. void (*glVertexAttribPointer)(GLuint, GLint, GLenum, GLboolean, GLsizei, const void *) = NULL;
  1102. void (*glVertexBindingDivisor)(GLuint, GLuint) = NULL;
  1103. void (*glViewport)(GLint, GLint, GLsizei, GLsizei) = NULL;
  1104. void (*glViewportArrayv)(GLuint, GLsizei, const GLfloat *) = NULL;
  1105. void (*glViewportIndexedf)(GLuint, GLfloat, GLfloat, GLfloat, GLfloat) = NULL;
  1106. void (*glViewportIndexedfv)(GLuint, const GLfloat *) = NULL;
  1107. void (*glWaitSync)(GLsync, GLbitfield, GLuint64) = NULL;
  1108. bool GLPLATFORM_GL_ARB_ES2_compatibility = false;
  1109. bool GLPLATFORM_GL_ARB_ES3_1_compatibility = false;
  1110. bool GLPLATFORM_GL_ARB_ES3_compatibility = false;
  1111. bool GLPLATFORM_GL_ARB_arrays_of_arrays = false;
  1112. bool GLPLATFORM_GL_ARB_base_instance = false;
  1113. bool GLPLATFORM_GL_ARB_bindless_texture = false;
  1114. bool GLPLATFORM_GL_ARB_blend_func_extended = false;
  1115. bool GLPLATFORM_GL_ARB_buffer_storage = false;
  1116. bool GLPLATFORM_GL_ARB_cl_event = false;
  1117. bool GLPLATFORM_GL_ARB_clear_buffer_object = false;
  1118. bool GLPLATFORM_GL_ARB_clear_texture = false;
  1119. bool GLPLATFORM_GL_ARB_clip_control = false;
  1120. bool GLPLATFORM_GL_ARB_compressed_texture_pixel_storage = false;
  1121. bool GLPLATFORM_GL_ARB_compute_shader = false;
  1122. bool GLPLATFORM_GL_ARB_compute_variable_group_size = false;
  1123. bool GLPLATFORM_GL_ARB_conditional_render_inverted = false;
  1124. bool GLPLATFORM_GL_ARB_conservative_depth = false;
  1125. bool GLPLATFORM_GL_ARB_copy_buffer = false;
  1126. bool GLPLATFORM_GL_ARB_copy_image = false;
  1127. bool GLPLATFORM_GL_ARB_cull_distance = false;
  1128. bool GLPLATFORM_GL_ARB_debug_output = false;
  1129. bool GLPLATFORM_GL_ARB_depth_buffer_float = false;
  1130. bool GLPLATFORM_GL_ARB_depth_clamp = false;
  1131. bool GLPLATFORM_GL_ARB_derivative_control = false;
  1132. bool GLPLATFORM_GL_ARB_direct_state_access = false;
  1133. bool GLPLATFORM_GL_ARB_draw_buffers_blend = false;
  1134. bool GLPLATFORM_GL_ARB_draw_elements_base_vertex = false;
  1135. bool GLPLATFORM_GL_ARB_draw_indirect = false;
  1136. bool GLPLATFORM_GL_ARB_enhanced_layouts = false;
  1137. bool GLPLATFORM_GL_ARB_explicit_attrib_location = false;
  1138. bool GLPLATFORM_GL_ARB_explicit_uniform_location = false;
  1139. bool GLPLATFORM_GL_ARB_fragment_coord_conventions = false;
  1140. bool GLPLATFORM_GL_ARB_fragment_layer_viewport = false;
  1141. bool GLPLATFORM_GL_ARB_framebuffer_no_attachments = false;
  1142. bool GLPLATFORM_GL_ARB_framebuffer_object = false;
  1143. bool GLPLATFORM_GL_ARB_framebuffer_sRGB = false;
  1144. bool GLPLATFORM_GL_ARB_get_program_binary = false;
  1145. bool GLPLATFORM_GL_ARB_get_texture_sub_image = false;
  1146. bool GLPLATFORM_GL_ARB_gpu_shader5 = false;
  1147. bool GLPLATFORM_GL_ARB_gpu_shader_fp64 = false;
  1148. bool GLPLATFORM_GL_ARB_half_float_vertex = false;
  1149. bool GLPLATFORM_GL_ARB_imaging = false;
  1150. bool GLPLATFORM_GL_ARB_indirect_parameters = false;
  1151. bool GLPLATFORM_GL_ARB_internalformat_query = false;
  1152. bool GLPLATFORM_GL_ARB_internalformat_query2 = false;
  1153. bool GLPLATFORM_GL_ARB_invalidate_subdata = false;
  1154. bool GLPLATFORM_GL_ARB_map_buffer_alignment = false;
  1155. bool GLPLATFORM_GL_ARB_map_buffer_range = false;
  1156. bool GLPLATFORM_GL_ARB_multi_bind = false;
  1157. bool GLPLATFORM_GL_ARB_multi_draw_indirect = false;
  1158. bool GLPLATFORM_GL_ARB_occlusion_query2 = false;
  1159. bool GLPLATFORM_GL_ARB_pipeline_statistics_query = false;
  1160. bool GLPLATFORM_GL_ARB_program_interface_query = false;
  1161. bool GLPLATFORM_GL_ARB_provoking_vertex = false;
  1162. bool GLPLATFORM_GL_ARB_query_buffer_object = false;
  1163. bool GLPLATFORM_GL_ARB_robust_buffer_access_behavior = false;
  1164. bool GLPLATFORM_GL_ARB_robustness = false;
  1165. bool GLPLATFORM_GL_ARB_robustness_isolation = false;
  1166. bool GLPLATFORM_GL_ARB_sample_shading = false;
  1167. bool GLPLATFORM_GL_ARB_sampler_objects = false;
  1168. bool GLPLATFORM_GL_ARB_seamless_cube_map = false;
  1169. bool GLPLATFORM_GL_ARB_seamless_cubemap_per_texture = false;
  1170. bool GLPLATFORM_GL_ARB_separate_shader_objects = false;
  1171. bool GLPLATFORM_GL_ARB_shader_atomic_counters = false;
  1172. bool GLPLATFORM_GL_ARB_shader_bit_encoding = false;
  1173. bool GLPLATFORM_GL_ARB_shader_draw_parameters = false;
  1174. bool GLPLATFORM_GL_ARB_shader_group_vote = false;
  1175. bool GLPLATFORM_GL_ARB_shader_image_load_store = false;
  1176. bool GLPLATFORM_GL_ARB_shader_image_size = false;
  1177. bool GLPLATFORM_GL_ARB_shader_precision = false;
  1178. bool GLPLATFORM_GL_ARB_shader_stencil_export = false;
  1179. bool GLPLATFORM_GL_ARB_shader_storage_buffer_object = false;
  1180. bool GLPLATFORM_GL_ARB_shader_subroutine = false;
  1181. bool GLPLATFORM_GL_ARB_shader_texture_image_samples = false;
  1182. bool GLPLATFORM_GL_ARB_shading_language_420pack = false;
  1183. bool GLPLATFORM_GL_ARB_shading_language_include = false;
  1184. bool GLPLATFORM_GL_ARB_shading_language_packing = false;
  1185. bool GLPLATFORM_GL_ARB_sparse_buffer = false;
  1186. bool GLPLATFORM_GL_ARB_sparse_texture = false;
  1187. bool GLPLATFORM_GL_ARB_stencil_texturing = false;
  1188. bool GLPLATFORM_GL_ARB_sync = false;
  1189. bool GLPLATFORM_GL_ARB_tessellation_shader = false;
  1190. bool GLPLATFORM_GL_ARB_texture_barrier = false;
  1191. bool GLPLATFORM_GL_ARB_texture_buffer_object_rgb32 = false;
  1192. bool GLPLATFORM_GL_ARB_texture_buffer_range = false;
  1193. bool GLPLATFORM_GL_ARB_texture_compression_bptc = false;
  1194. bool GLPLATFORM_GL_ARB_texture_compression_rgtc = false;
  1195. bool GLPLATFORM_GL_ARB_texture_cube_map_array = false;
  1196. bool GLPLATFORM_GL_ARB_texture_gather = false;
  1197. bool GLPLATFORM_GL_ARB_texture_mirror_clamp_to_edge = false;
  1198. bool GLPLATFORM_GL_ARB_texture_multisample = false;
  1199. bool GLPLATFORM_GL_ARB_texture_query_levels = false;
  1200. bool GLPLATFORM_GL_ARB_texture_query_lod = false;
  1201. bool GLPLATFORM_GL_ARB_texture_rg = false;
  1202. bool GLPLATFORM_GL_ARB_texture_rgb10_a2ui = false;
  1203. bool GLPLATFORM_GL_ARB_texture_stencil8 = false;
  1204. bool GLPLATFORM_GL_ARB_texture_storage = false;
  1205. bool GLPLATFORM_GL_ARB_texture_storage_multisample = false;
  1206. bool GLPLATFORM_GL_ARB_texture_swizzle = false;
  1207. bool GLPLATFORM_GL_ARB_texture_view = false;
  1208. bool GLPLATFORM_GL_ARB_timer_query = false;
  1209. bool GLPLATFORM_GL_ARB_transform_feedback2 = false;
  1210. bool GLPLATFORM_GL_ARB_transform_feedback3 = false;
  1211. bool GLPLATFORM_GL_ARB_transform_feedback_instanced = false;
  1212. bool GLPLATFORM_GL_ARB_transform_feedback_overflow_query = false;
  1213. bool GLPLATFORM_GL_ARB_uniform_buffer_object = false;
  1214. bool GLPLATFORM_GL_ARB_vertex_array_bgra = false;
  1215. bool GLPLATFORM_GL_ARB_vertex_array_object = false;
  1216. bool GLPLATFORM_GL_ARB_vertex_attrib_64bit = false;
  1217. bool GLPLATFORM_GL_ARB_vertex_attrib_binding = false;
  1218. bool GLPLATFORM_GL_ARB_vertex_type_10f_11f_11f_rev = false;
  1219. bool GLPLATFORM_GL_ARB_vertex_type_2_10_10_10_rev = false;
  1220. bool GLPLATFORM_GL_ARB_viewport_array = false;
  1221. bool GLPLATFORM_GL_EXT_direct_state_access = false;
  1222. bool GLPLATFORM_GL_KHR_context_flush_control = false;
  1223. bool GLPLATFORM_GL_KHR_debug = false;
  1224. bool GLPLATFORM_GL_KHR_robust_buffer_access_behavior = false;
  1225. bool GLPLATFORM_GL_KHR_robustness = false;
  1226. bool GLPLATFORM_GL_KHR_texture_compression_astc_hdr = false;
  1227. bool GLPLATFORM_GL_KHR_texture_compression_astc_ldr = false;
  1228. bool glplatform_glcore_init(int maj, int min)
  1229. {
  1230. int req_version = maj * 10 + min;
  1231. int actual_maj, actual_min, actual_version, i;
  1232. int num_extensions;
  1233. if (req_version < 32) return false;
  1234. if (req_version > 45) return false;
  1235. glActiveShaderProgram = (void (*)(GLuint, GLuint) ) LoadProcAddress("glActiveShaderProgram");
  1236. glActiveTexture = (void (*)(GLenum) ) LoadProcAddress("glActiveTexture");
  1237. glAttachShader = (void (*)(GLuint, GLuint) ) LoadProcAddress("glAttachShader");
  1238. glBeginConditionalRender = (void (*)(GLuint, GLenum) ) LoadProcAddress("glBeginConditionalRender");
  1239. glBeginQuery = (void (*)(GLenum, GLuint) ) LoadProcAddress("glBeginQuery");
  1240. glBeginQueryIndexed = (void (*)(GLenum, GLuint, GLuint) ) LoadProcAddress("glBeginQueryIndexed");
  1241. glBeginTransformFeedback = (void (*)(GLenum) ) LoadProcAddress("glBeginTransformFeedback");
  1242. glBindAttribLocation = (void (*)(GLuint, GLuint, const GLchar *) ) LoadProcAddress("glBindAttribLocation");
  1243. glBindBuffer = (void (*)(GLenum, GLuint) ) LoadProcAddress("glBindBuffer");
  1244. glBindBufferBase = (void (*)(GLenum, GLuint, GLuint) ) LoadProcAddress("glBindBufferBase");
  1245. glBindBufferRange = (void (*)(GLenum, GLuint, GLuint, GLintptr, GLsizeiptr) ) LoadProcAddress("glBindBufferRange");
  1246. glBindBuffersBase = (void (*)(GLenum, GLuint, GLsizei, const GLuint *) ) LoadProcAddress("glBindBuffersBase");
  1247. glBindBuffersRange = (void (*)(GLenum, GLuint, GLsizei, const GLuint *, const GLintptr *, const GLsizeiptr *) ) LoadProcAddress("glBindBuffersRange");
  1248. glBindFragDataLocation = (void (*)(GLuint, GLuint, const GLchar *) ) LoadProcAddress("glBindFragDataLocation");
  1249. glBindFragDataLocationIndexed = (void (*)(GLuint, GLuint, GLuint, const GLchar *) ) LoadProcAddress("glBindFragDataLocationIndexed");
  1250. glBindFramebuffer = (void (*)(GLenum, GLuint) ) LoadProcAddress("glBindFramebuffer");
  1251. glBindImageTexture = (void (*)(GLuint, GLuint, GLint, GLboolean, GLint, GLenum, GLenum) ) LoadProcAddress("glBindImageTexture");
  1252. glBindImageTextures = (void (*)(GLuint, GLsizei, const GLuint *) ) LoadProcAddress("glBindImageTextures");
  1253. glBindMultiTextureEXT = (void (*)(GLenum, GLenum, GLuint) ) LoadProcAddress("glBindMultiTextureEXT");
  1254. glBindProgramPipeline = (void (*)(GLuint) ) LoadProcAddress("glBindProgramPipeline");
  1255. glBindRenderbuffer = (void (*)(GLenum, GLuint) ) LoadProcAddress("glBindRenderbuffer");
  1256. glBindSampler = (void (*)(GLuint, GLuint) ) LoadProcAddress("glBindSampler");
  1257. glBindSamplers = (void (*)(GLuint, GLsizei, const GLuint *) ) LoadProcAddress("glBindSamplers");
  1258. glBindTexture = (void (*)(GLenum, GLuint) ) LoadProcAddress("glBindTexture");
  1259. glBindTextureUnit = (void (*)(GLuint, GLuint) ) LoadProcAddress("glBindTextureUnit");
  1260. glBindTextures = (void (*)(GLuint, GLsizei, const GLuint *) ) LoadProcAddress("glBindTextures");
  1261. glBindTransformFeedback = (void (*)(GLenum, GLuint) ) LoadProcAddress("glBindTransformFeedback");
  1262. glBindVertexArray = (void (*)(GLuint) ) LoadProcAddress("glBindVertexArray");
  1263. glBindVertexBuffer = (void (*)(GLuint, GLuint, GLintptr, GLsizei) ) LoadProcAddress("glBindVertexBuffer");
  1264. glBindVertexBuffers = (void (*)(GLuint, GLsizei, const GLuint *, const GLintptr *, const GLsizei *) ) LoadProcAddress("glBindVertexBuffers");
  1265. glBlendColor = (void (*)(GLfloat, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glBlendColor");
  1266. glBlendEquation = (void (*)(GLenum) ) LoadProcAddress("glBlendEquation");
  1267. glBlendEquationSeparate = (void (*)(GLenum, GLenum) ) LoadProcAddress("glBlendEquationSeparate");
  1268. glBlendEquationSeparatei = (void (*)(GLuint, GLenum, GLenum) ) LoadProcAddress("glBlendEquationSeparatei");
  1269. glBlendEquationSeparateiARB = (void (*)(GLuint, GLenum, GLenum) ) LoadProcAddress("glBlendEquationSeparateiARB");
  1270. glBlendEquationi = (void (*)(GLuint, GLenum) ) LoadProcAddress("glBlendEquationi");
  1271. glBlendEquationiARB = (void (*)(GLuint, GLenum) ) LoadProcAddress("glBlendEquationiARB");
  1272. glBlendFunc = (void (*)(GLenum, GLenum) ) LoadProcAddress("glBlendFunc");
  1273. glBlendFuncSeparate = (void (*)(GLenum, GLenum, GLenum, GLenum) ) LoadProcAddress("glBlendFuncSeparate");
  1274. glBlendFuncSeparatei = (void (*)(GLuint, GLenum, GLenum, GLenum, GLenum) ) LoadProcAddress("glBlendFuncSeparatei");
  1275. glBlendFuncSeparateiARB = (void (*)(GLuint, GLenum, GLenum, GLenum, GLenum) ) LoadProcAddress("glBlendFuncSeparateiARB");
  1276. glBlendFunci = (void (*)(GLuint, GLenum, GLenum) ) LoadProcAddress("glBlendFunci");
  1277. glBlendFunciARB = (void (*)(GLuint, GLenum, GLenum) ) LoadProcAddress("glBlendFunciARB");
  1278. glBlitFramebuffer = (void (*)(GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum) ) LoadProcAddress("glBlitFramebuffer");
  1279. glBlitNamedFramebuffer = (void (*)(GLuint, GLuint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum) ) LoadProcAddress("glBlitNamedFramebuffer");
  1280. glBufferData = (void (*)(GLenum, GLsizeiptr, const void *, GLenum) ) LoadProcAddress("glBufferData");
  1281. glBufferPageCommitmentARB = (void (*)(GLenum, GLintptr, GLsizeiptr, GLboolean) ) LoadProcAddress("glBufferPageCommitmentARB");
  1282. glBufferStorage = (void (*)(GLenum, GLsizeiptr, const void *, GLbitfield) ) LoadProcAddress("glBufferStorage");
  1283. glBufferSubData = (void (*)(GLenum, GLintptr, GLsizeiptr, const void *) ) LoadProcAddress("glBufferSubData");
  1284. glCheckFramebufferStatus = (GLenum (*)(GLenum) ) LoadProcAddress("glCheckFramebufferStatus");
  1285. glCheckNamedFramebufferStatus = (GLenum (*)(GLuint, GLenum) ) LoadProcAddress("glCheckNamedFramebufferStatus");
  1286. glCheckNamedFramebufferStatusEXT = (GLenum (*)(GLuint, GLenum) ) LoadProcAddress("glCheckNamedFramebufferStatusEXT");
  1287. glClampColor = (void (*)(GLenum, GLenum) ) LoadProcAddress("glClampColor");
  1288. glClear = (void (*)(GLbitfield) ) LoadProcAddress("glClear");
  1289. glClearBufferData = (void (*)(GLenum, GLenum, GLenum, GLenum, const void *) ) LoadProcAddress("glClearBufferData");
  1290. glClearBufferSubData = (void (*)(GLenum, GLenum, GLintptr, GLsizeiptr, GLenum, GLenum, const void *) ) LoadProcAddress("glClearBufferSubData");
  1291. glClearBufferfi = (void (*)(GLenum, GLint, GLfloat, GLint) ) LoadProcAddress("glClearBufferfi");
  1292. glClearBufferfv = (void (*)(GLenum, GLint, const GLfloat *) ) LoadProcAddress("glClearBufferfv");
  1293. glClearBufferiv = (void (*)(GLenum, GLint, const GLint *) ) LoadProcAddress("glClearBufferiv");
  1294. glClearBufferuiv = (void (*)(GLenum, GLint, const GLuint *) ) LoadProcAddress("glClearBufferuiv");
  1295. glClearColor = (void (*)(GLfloat, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glClearColor");
  1296. glClearDepth = (void (*)(GLdouble) ) LoadProcAddress("glClearDepth");
  1297. glClearDepthf = (void (*)(GLfloat) ) LoadProcAddress("glClearDepthf");
  1298. glClearNamedBufferData = (void (*)(GLuint, GLenum, GLenum, GLenum, const void *) ) LoadProcAddress("glClearNamedBufferData");
  1299. glClearNamedBufferDataEXT = (void (*)(GLuint, GLenum, GLenum, GLenum, const void *) ) LoadProcAddress("glClearNamedBufferDataEXT");
  1300. glClearNamedBufferSubData = (void (*)(GLuint, GLenum, GLintptr, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glClearNamedBufferSubData");
  1301. glClearNamedBufferSubDataEXT = (void (*)(GLuint, GLenum, GLsizeiptr, GLsizeiptr, GLenum, GLenum, const void *) ) LoadProcAddress("glClearNamedBufferSubDataEXT");
  1302. glClearNamedFramebufferfi = (void (*)(GLuint, GLenum, const GLfloat, GLint) ) LoadProcAddress("glClearNamedFramebufferfi");
  1303. glClearNamedFramebufferfv = (void (*)(GLuint, GLenum, GLint, const GLfloat *) ) LoadProcAddress("glClearNamedFramebufferfv");
  1304. glClearNamedFramebufferiv = (void (*)(GLuint, GLenum, GLint, const GLint *) ) LoadProcAddress("glClearNamedFramebufferiv");
  1305. glClearNamedFramebufferuiv = (void (*)(GLuint, GLenum, GLint, const GLuint *) ) LoadProcAddress("glClearNamedFramebufferuiv");
  1306. glClearStencil = (void (*)(GLint) ) LoadProcAddress("glClearStencil");
  1307. glClearTexImage = (void (*)(GLuint, GLint, GLenum, GLenum, const void *) ) LoadProcAddress("glClearTexImage");
  1308. glClearTexSubImage = (void (*)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glClearTexSubImage");
  1309. glClientAttribDefaultEXT = (void (*)(GLbitfield) ) LoadProcAddress("glClientAttribDefaultEXT");
  1310. glClientWaitSync = (GLenum (*)(GLsync, GLbitfield, GLuint64) ) LoadProcAddress("glClientWaitSync");
  1311. glClipControl = (void (*)(GLenum, GLenum) ) LoadProcAddress("glClipControl");
  1312. glColorMask = (void (*)(GLboolean, GLboolean, GLboolean, GLboolean) ) LoadProcAddress("glColorMask");
  1313. glColorMaski = (void (*)(GLuint, GLboolean, GLboolean, GLboolean, GLboolean) ) LoadProcAddress("glColorMaski");
  1314. glCompileShader = (void (*)(GLuint) ) LoadProcAddress("glCompileShader");
  1315. glCompileShaderIncludeARB = (void (*)(GLuint, GLsizei, const GLchar *const*, const GLint *) ) LoadProcAddress("glCompileShaderIncludeARB");
  1316. glCompressedMultiTexImage1DEXT = (void (*)(GLenum, GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const void *) ) LoadProcAddress("glCompressedMultiTexImage1DEXT");
  1317. glCompressedMultiTexImage2DEXT = (void (*)(GLenum, GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const void *) ) LoadProcAddress("glCompressedMultiTexImage2DEXT");
  1318. glCompressedMultiTexImage3DEXT = (void (*)(GLenum, GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const void *) ) LoadProcAddress("glCompressedMultiTexImage3DEXT");
  1319. glCompressedMultiTexSubImage1DEXT = (void (*)(GLenum, GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const void *) ) LoadProcAddress("glCompressedMultiTexSubImage1DEXT");
  1320. glCompressedMultiTexSubImage2DEXT = (void (*)(GLenum, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const void *) ) LoadProcAddress("glCompressedMultiTexSubImage2DEXT");
  1321. glCompressedMultiTexSubImage3DEXT = (void (*)(GLenum, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const void *) ) LoadProcAddress("glCompressedMultiTexSubImage3DEXT");
  1322. glCompressedTexImage1D = (void (*)(GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const void *) ) LoadProcAddress("glCompressedTexImage1D");
  1323. glCompressedTexImage2D = (void (*)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const void *) ) LoadProcAddress("glCompressedTexImage2D");
  1324. glCompressedTexImage3D = (void (*)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const void *) ) LoadProcAddress("glCompressedTexImage3D");
  1325. glCompressedTexSubImage1D = (void (*)(GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const void *) ) LoadProcAddress("glCompressedTexSubImage1D");
  1326. glCompressedTexSubImage2D = (void (*)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const void *) ) LoadProcAddress("glCompressedTexSubImage2D");
  1327. glCompressedTexSubImage3D = (void (*)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const void *) ) LoadProcAddress("glCompressedTexSubImage3D");
  1328. glCompressedTextureImage1DEXT = (void (*)(GLuint, GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const void *) ) LoadProcAddress("glCompressedTextureImage1DEXT");
  1329. glCompressedTextureImage2DEXT = (void (*)(GLuint, GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const void *) ) LoadProcAddress("glCompressedTextureImage2DEXT");
  1330. glCompressedTextureImage3DEXT = (void (*)(GLuint, GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const void *) ) LoadProcAddress("glCompressedTextureImage3DEXT");
  1331. glCompressedTextureSubImage1D = (void (*)(GLuint, GLint, GLint, GLsizei, GLenum, GLsizei, const void *) ) LoadProcAddress("glCompressedTextureSubImage1D");
  1332. glCompressedTextureSubImage1DEXT = (void (*)(GLuint, GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const void *) ) LoadProcAddress("glCompressedTextureSubImage1DEXT");
  1333. glCompressedTextureSubImage2D = (void (*)(GLuint, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const void *) ) LoadProcAddress("glCompressedTextureSubImage2D");
  1334. glCompressedTextureSubImage2DEXT = (void (*)(GLuint, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const void *) ) LoadProcAddress("glCompressedTextureSubImage2DEXT");
  1335. glCompressedTextureSubImage3D = (void (*)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const void *) ) LoadProcAddress("glCompressedTextureSubImage3D");
  1336. glCompressedTextureSubImage3DEXT = (void (*)(GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const void *) ) LoadProcAddress("glCompressedTextureSubImage3DEXT");
  1337. glCopyBufferSubData = (void (*)(GLenum, GLenum, GLintptr, GLintptr, GLsizeiptr) ) LoadProcAddress("glCopyBufferSubData");
  1338. glCopyImageSubData = (void (*)(GLuint, GLenum, GLint, GLint, GLint, GLint, GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei) ) LoadProcAddress("glCopyImageSubData");
  1339. glCopyMultiTexImage1DEXT = (void (*)(GLenum, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint) ) LoadProcAddress("glCopyMultiTexImage1DEXT");
  1340. glCopyMultiTexImage2DEXT = (void (*)(GLenum, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint) ) LoadProcAddress("glCopyMultiTexImage2DEXT");
  1341. glCopyMultiTexSubImage1DEXT = (void (*)(GLenum, GLenum, GLint, GLint, GLint, GLint, GLsizei) ) LoadProcAddress("glCopyMultiTexSubImage1DEXT");
  1342. glCopyMultiTexSubImage2DEXT = (void (*)(GLenum, GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glCopyMultiTexSubImage2DEXT");
  1343. glCopyMultiTexSubImage3DEXT = (void (*)(GLenum, GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glCopyMultiTexSubImage3DEXT");
  1344. glCopyNamedBufferSubData = (void (*)(GLuint, GLuint, GLintptr, GLintptr, GLsizei) ) LoadProcAddress("glCopyNamedBufferSubData");
  1345. glCopyTexImage1D = (void (*)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint) ) LoadProcAddress("glCopyTexImage1D");
  1346. glCopyTexImage2D = (void (*)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint) ) LoadProcAddress("glCopyTexImage2D");
  1347. glCopyTexSubImage1D = (void (*)(GLenum, GLint, GLint, GLint, GLint, GLsizei) ) LoadProcAddress("glCopyTexSubImage1D");
  1348. glCopyTexSubImage2D = (void (*)(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glCopyTexSubImage2D");
  1349. glCopyTexSubImage3D = (void (*)(GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glCopyTexSubImage3D");
  1350. glCopyTextureImage1DEXT = (void (*)(GLuint, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint) ) LoadProcAddress("glCopyTextureImage1DEXT");
  1351. glCopyTextureImage2DEXT = (void (*)(GLuint, GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint) ) LoadProcAddress("glCopyTextureImage2DEXT");
  1352. glCopyTextureSubImage1D = (void (*)(GLuint, GLint, GLint, GLint, GLint, GLsizei) ) LoadProcAddress("glCopyTextureSubImage1D");
  1353. glCopyTextureSubImage1DEXT = (void (*)(GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei) ) LoadProcAddress("glCopyTextureSubImage1DEXT");
  1354. glCopyTextureSubImage2D = (void (*)(GLuint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glCopyTextureSubImage2D");
  1355. glCopyTextureSubImage2DEXT = (void (*)(GLuint, GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glCopyTextureSubImage2DEXT");
  1356. glCopyTextureSubImage3D = (void (*)(GLuint, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glCopyTextureSubImage3D");
  1357. glCopyTextureSubImage3DEXT = (void (*)(GLuint, GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glCopyTextureSubImage3DEXT");
  1358. glCreateBuffers = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glCreateBuffers");
  1359. glCreateFramebuffers = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glCreateFramebuffers");
  1360. glCreateProgram = (GLuint (*)() ) LoadProcAddress("glCreateProgram");
  1361. glCreateProgramPipelines = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glCreateProgramPipelines");
  1362. glCreateQueries = (void (*)(GLenum, GLsizei, GLuint *) ) LoadProcAddress("glCreateQueries");
  1363. glCreateRenderbuffers = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glCreateRenderbuffers");
  1364. glCreateSamplers = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glCreateSamplers");
  1365. glCreateShader = (GLuint (*)(GLenum) ) LoadProcAddress("glCreateShader");
  1366. glCreateShaderProgramv = (GLuint (*)(GLenum, GLsizei, const GLchar *const*) ) LoadProcAddress("glCreateShaderProgramv");
  1367. glCreateSyncFromCLeventARB = (GLsync (*)(struct _cl_context *, struct _cl_event *, GLbitfield) ) LoadProcAddress("glCreateSyncFromCLeventARB");
  1368. glCreateTextures = (void (*)(GLenum, GLsizei, GLuint *) ) LoadProcAddress("glCreateTextures");
  1369. glCreateTransformFeedbacks = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glCreateTransformFeedbacks");
  1370. glCreateVertexArrays = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glCreateVertexArrays");
  1371. glCullFace = (void (*)(GLenum) ) LoadProcAddress("glCullFace");
  1372. glDebugMessageCallback = (void (*)(GLDEBUGPROC, const void *) ) LoadProcAddress("glDebugMessageCallback");
  1373. glDebugMessageCallbackARB = (void (*)(GLDEBUGPROCARB, const void *) ) LoadProcAddress("glDebugMessageCallbackARB");
  1374. glDebugMessageCallbackKHR = (void (*)(GLDEBUGPROCKHR, const void *) ) LoadProcAddress("glDebugMessageCallbackKHR");
  1375. glDebugMessageControl = (void (*)(GLenum, GLenum, GLenum, GLsizei, const GLuint *, GLboolean) ) LoadProcAddress("glDebugMessageControl");
  1376. glDebugMessageControlARB = (void (*)(GLenum, GLenum, GLenum, GLsizei, const GLuint *, GLboolean) ) LoadProcAddress("glDebugMessageControlARB");
  1377. glDebugMessageControlKHR = (void (*)(GLenum, GLenum, GLenum, GLsizei, const GLuint *, GLboolean) ) LoadProcAddress("glDebugMessageControlKHR");
  1378. glDebugMessageInsert = (void (*)(GLenum, GLenum, GLuint, GLenum, GLsizei, const GLchar *) ) LoadProcAddress("glDebugMessageInsert");
  1379. glDebugMessageInsertARB = (void (*)(GLenum, GLenum, GLuint, GLenum, GLsizei, const GLchar *) ) LoadProcAddress("glDebugMessageInsertARB");
  1380. glDebugMessageInsertKHR = (void (*)(GLenum, GLenum, GLuint, GLenum, GLsizei, const GLchar *) ) LoadProcAddress("glDebugMessageInsertKHR");
  1381. glDeleteBuffers = (void (*)(GLsizei, const GLuint *) ) LoadProcAddress("glDeleteBuffers");
  1382. glDeleteFramebuffers = (void (*)(GLsizei, const GLuint *) ) LoadProcAddress("glDeleteFramebuffers");
  1383. glDeleteNamedStringARB = (void (*)(GLint, const GLchar *) ) LoadProcAddress("glDeleteNamedStringARB");
  1384. glDeleteProgram = (void (*)(GLuint) ) LoadProcAddress("glDeleteProgram");
  1385. glDeleteProgramPipelines = (void (*)(GLsizei, const GLuint *) ) LoadProcAddress("glDeleteProgramPipelines");
  1386. glDeleteQueries = (void (*)(GLsizei, const GLuint *) ) LoadProcAddress("glDeleteQueries");
  1387. glDeleteRenderbuffers = (void (*)(GLsizei, const GLuint *) ) LoadProcAddress("glDeleteRenderbuffers");
  1388. glDeleteSamplers = (void (*)(GLsizei, const GLuint *) ) LoadProcAddress("glDeleteSamplers");
  1389. glDeleteShader = (void (*)(GLuint) ) LoadProcAddress("glDeleteShader");
  1390. glDeleteSync = (void (*)(GLsync) ) LoadProcAddress("glDeleteSync");
  1391. glDeleteTextures = (void (*)(GLsizei, const GLuint *) ) LoadProcAddress("glDeleteTextures");
  1392. glDeleteTransformFeedbacks = (void (*)(GLsizei, const GLuint *) ) LoadProcAddress("glDeleteTransformFeedbacks");
  1393. glDeleteVertexArrays = (void (*)(GLsizei, const GLuint *) ) LoadProcAddress("glDeleteVertexArrays");
  1394. glDepthFunc = (void (*)(GLenum) ) LoadProcAddress("glDepthFunc");
  1395. glDepthMask = (void (*)(GLboolean) ) LoadProcAddress("glDepthMask");
  1396. glDepthRange = (void (*)(GLdouble, GLdouble) ) LoadProcAddress("glDepthRange");
  1397. glDepthRangeArrayv = (void (*)(GLuint, GLsizei, const GLdouble *) ) LoadProcAddress("glDepthRangeArrayv");
  1398. glDepthRangeIndexed = (void (*)(GLuint, GLdouble, GLdouble) ) LoadProcAddress("glDepthRangeIndexed");
  1399. glDepthRangef = (void (*)(GLfloat, GLfloat) ) LoadProcAddress("glDepthRangef");
  1400. glDetachShader = (void (*)(GLuint, GLuint) ) LoadProcAddress("glDetachShader");
  1401. glDisable = (void (*)(GLenum) ) LoadProcAddress("glDisable");
  1402. glDisableClientStateIndexedEXT = (void (*)(GLenum, GLuint) ) LoadProcAddress("glDisableClientStateIndexedEXT");
  1403. glDisableClientStateiEXT = (void (*)(GLenum, GLuint) ) LoadProcAddress("glDisableClientStateiEXT");
  1404. glDisableIndexedEXT = (void (*)(GLenum, GLuint) ) LoadProcAddress("glDisableIndexedEXT");
  1405. glDisableVertexArrayAttrib = (void (*)(GLuint, GLuint) ) LoadProcAddress("glDisableVertexArrayAttrib");
  1406. glDisableVertexArrayAttribEXT = (void (*)(GLuint, GLuint) ) LoadProcAddress("glDisableVertexArrayAttribEXT");
  1407. glDisableVertexArrayEXT = (void (*)(GLuint, GLenum) ) LoadProcAddress("glDisableVertexArrayEXT");
  1408. glDisableVertexAttribArray = (void (*)(GLuint) ) LoadProcAddress("glDisableVertexAttribArray");
  1409. glDisablei = (void (*)(GLenum, GLuint) ) LoadProcAddress("glDisablei");
  1410. glDispatchCompute = (void (*)(GLuint, GLuint, GLuint) ) LoadProcAddress("glDispatchCompute");
  1411. glDispatchComputeGroupSizeARB = (void (*)(GLuint, GLuint, GLuint, GLuint, GLuint, GLuint) ) LoadProcAddress("glDispatchComputeGroupSizeARB");
  1412. glDispatchComputeIndirect = (void (*)(GLintptr) ) LoadProcAddress("glDispatchComputeIndirect");
  1413. glDrawArrays = (void (*)(GLenum, GLint, GLsizei) ) LoadProcAddress("glDrawArrays");
  1414. glDrawArraysIndirect = (void (*)(GLenum, const void *) ) LoadProcAddress("glDrawArraysIndirect");
  1415. glDrawArraysInstanced = (void (*)(GLenum, GLint, GLsizei, GLsizei) ) LoadProcAddress("glDrawArraysInstanced");
  1416. glDrawArraysInstancedBaseInstance = (void (*)(GLenum, GLint, GLsizei, GLsizei, GLuint) ) LoadProcAddress("glDrawArraysInstancedBaseInstance");
  1417. glDrawBuffer = (void (*)(GLenum) ) LoadProcAddress("glDrawBuffer");
  1418. glDrawBuffers = (void (*)(GLsizei, const GLenum *) ) LoadProcAddress("glDrawBuffers");
  1419. glDrawElements = (void (*)(GLenum, GLsizei, GLenum, const void *) ) LoadProcAddress("glDrawElements");
  1420. glDrawElementsBaseVertex = (void (*)(GLenum, GLsizei, GLenum, const void *, GLint) ) LoadProcAddress("glDrawElementsBaseVertex");
  1421. glDrawElementsIndirect = (void (*)(GLenum, GLenum, const void *) ) LoadProcAddress("glDrawElementsIndirect");
  1422. glDrawElementsInstanced = (void (*)(GLenum, GLsizei, GLenum, const void *, GLsizei) ) LoadProcAddress("glDrawElementsInstanced");
  1423. glDrawElementsInstancedBaseInstance = (void (*)(GLenum, GLsizei, GLenum, const void *, GLsizei, GLuint) ) LoadProcAddress("glDrawElementsInstancedBaseInstance");
  1424. glDrawElementsInstancedBaseVertex = (void (*)(GLenum, GLsizei, GLenum, const void *, GLsizei, GLint) ) LoadProcAddress("glDrawElementsInstancedBaseVertex");
  1425. glDrawElementsInstancedBaseVertexBaseInstance = (void (*)(GLenum, GLsizei, GLenum, const void *, GLsizei, GLint, GLuint) ) LoadProcAddress("glDrawElementsInstancedBaseVertexBaseInstance");
  1426. glDrawRangeElements = (void (*)(GLenum, GLuint, GLuint, GLsizei, GLenum, const void *) ) LoadProcAddress("glDrawRangeElements");
  1427. glDrawRangeElementsBaseVertex = (void (*)(GLenum, GLuint, GLuint, GLsizei, GLenum, const void *, GLint) ) LoadProcAddress("glDrawRangeElementsBaseVertex");
  1428. glDrawTransformFeedback = (void (*)(GLenum, GLuint) ) LoadProcAddress("glDrawTransformFeedback");
  1429. glDrawTransformFeedbackInstanced = (void (*)(GLenum, GLuint, GLsizei) ) LoadProcAddress("glDrawTransformFeedbackInstanced");
  1430. glDrawTransformFeedbackStream = (void (*)(GLenum, GLuint, GLuint) ) LoadProcAddress("glDrawTransformFeedbackStream");
  1431. glDrawTransformFeedbackStreamInstanced = (void (*)(GLenum, GLuint, GLuint, GLsizei) ) LoadProcAddress("glDrawTransformFeedbackStreamInstanced");
  1432. glEnable = (void (*)(GLenum) ) LoadProcAddress("glEnable");
  1433. glEnableClientStateIndexedEXT = (void (*)(GLenum, GLuint) ) LoadProcAddress("glEnableClientStateIndexedEXT");
  1434. glEnableClientStateiEXT = (void (*)(GLenum, GLuint) ) LoadProcAddress("glEnableClientStateiEXT");
  1435. glEnableIndexedEXT = (void (*)(GLenum, GLuint) ) LoadProcAddress("glEnableIndexedEXT");
  1436. glEnableVertexArrayAttrib = (void (*)(GLuint, GLuint) ) LoadProcAddress("glEnableVertexArrayAttrib");
  1437. glEnableVertexArrayAttribEXT = (void (*)(GLuint, GLuint) ) LoadProcAddress("glEnableVertexArrayAttribEXT");
  1438. glEnableVertexArrayEXT = (void (*)(GLuint, GLenum) ) LoadProcAddress("glEnableVertexArrayEXT");
  1439. glEnableVertexAttribArray = (void (*)(GLuint) ) LoadProcAddress("glEnableVertexAttribArray");
  1440. glEnablei = (void (*)(GLenum, GLuint) ) LoadProcAddress("glEnablei");
  1441. glEndConditionalRender = (void (*)() ) LoadProcAddress("glEndConditionalRender");
  1442. glEndQuery = (void (*)(GLenum) ) LoadProcAddress("glEndQuery");
  1443. glEndQueryIndexed = (void (*)(GLenum, GLuint) ) LoadProcAddress("glEndQueryIndexed");
  1444. glEndTransformFeedback = (void (*)() ) LoadProcAddress("glEndTransformFeedback");
  1445. glFenceSync = (GLsync (*)(GLenum, GLbitfield) ) LoadProcAddress("glFenceSync");
  1446. glFinish = (void (*)() ) LoadProcAddress("glFinish");
  1447. glFlush = (void (*)() ) LoadProcAddress("glFlush");
  1448. glFlushMappedBufferRange = (void (*)(GLenum, GLintptr, GLsizeiptr) ) LoadProcAddress("glFlushMappedBufferRange");
  1449. glFlushMappedNamedBufferRange = (void (*)(GLuint, GLintptr, GLsizei) ) LoadProcAddress("glFlushMappedNamedBufferRange");
  1450. glFlushMappedNamedBufferRangeEXT = (void (*)(GLuint, GLintptr, GLsizeiptr) ) LoadProcAddress("glFlushMappedNamedBufferRangeEXT");
  1451. glFramebufferDrawBufferEXT = (void (*)(GLuint, GLenum) ) LoadProcAddress("glFramebufferDrawBufferEXT");
  1452. glFramebufferDrawBuffersEXT = (void (*)(GLuint, GLsizei, const GLenum *) ) LoadProcAddress("glFramebufferDrawBuffersEXT");
  1453. glFramebufferParameteri = (void (*)(GLenum, GLenum, GLint) ) LoadProcAddress("glFramebufferParameteri");
  1454. glFramebufferReadBufferEXT = (void (*)(GLuint, GLenum) ) LoadProcAddress("glFramebufferReadBufferEXT");
  1455. glFramebufferRenderbuffer = (void (*)(GLenum, GLenum, GLenum, GLuint) ) LoadProcAddress("glFramebufferRenderbuffer");
  1456. glFramebufferTexture = (void (*)(GLenum, GLenum, GLuint, GLint) ) LoadProcAddress("glFramebufferTexture");
  1457. glFramebufferTexture1D = (void (*)(GLenum, GLenum, GLenum, GLuint, GLint) ) LoadProcAddress("glFramebufferTexture1D");
  1458. glFramebufferTexture2D = (void (*)(GLenum, GLenum, GLenum, GLuint, GLint) ) LoadProcAddress("glFramebufferTexture2D");
  1459. glFramebufferTexture3D = (void (*)(GLenum, GLenum, GLenum, GLuint, GLint, GLint) ) LoadProcAddress("glFramebufferTexture3D");
  1460. glFramebufferTextureLayer = (void (*)(GLenum, GLenum, GLuint, GLint, GLint) ) LoadProcAddress("glFramebufferTextureLayer");
  1461. glFrontFace = (void (*)(GLenum) ) LoadProcAddress("glFrontFace");
  1462. glGenBuffers = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glGenBuffers");
  1463. glGenFramebuffers = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glGenFramebuffers");
  1464. glGenProgramPipelines = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glGenProgramPipelines");
  1465. glGenQueries = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glGenQueries");
  1466. glGenRenderbuffers = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glGenRenderbuffers");
  1467. glGenSamplers = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glGenSamplers");
  1468. glGenTextures = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glGenTextures");
  1469. glGenTransformFeedbacks = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glGenTransformFeedbacks");
  1470. glGenVertexArrays = (void (*)(GLsizei, GLuint *) ) LoadProcAddress("glGenVertexArrays");
  1471. glGenerateMipmap = (void (*)(GLenum) ) LoadProcAddress("glGenerateMipmap");
  1472. glGenerateMultiTexMipmapEXT = (void (*)(GLenum, GLenum) ) LoadProcAddress("glGenerateMultiTexMipmapEXT");
  1473. glGenerateTextureMipmap = (void (*)(GLuint) ) LoadProcAddress("glGenerateTextureMipmap");
  1474. glGenerateTextureMipmapEXT = (void (*)(GLuint, GLenum) ) LoadProcAddress("glGenerateTextureMipmapEXT");
  1475. glGetActiveAtomicCounterBufferiv = (void (*)(GLuint, GLuint, GLenum, GLint *) ) LoadProcAddress("glGetActiveAtomicCounterBufferiv");
  1476. glGetActiveAttrib = (void (*)(GLuint, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLchar *) ) LoadProcAddress("glGetActiveAttrib");
  1477. glGetActiveSubroutineName = (void (*)(GLuint, GLenum, GLuint, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetActiveSubroutineName");
  1478. glGetActiveSubroutineUniformName = (void (*)(GLuint, GLenum, GLuint, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetActiveSubroutineUniformName");
  1479. glGetActiveSubroutineUniformiv = (void (*)(GLuint, GLenum, GLuint, GLenum, GLint *) ) LoadProcAddress("glGetActiveSubroutineUniformiv");
  1480. glGetActiveUniform = (void (*)(GLuint, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLchar *) ) LoadProcAddress("glGetActiveUniform");
  1481. glGetActiveUniformBlockName = (void (*)(GLuint, GLuint, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetActiveUniformBlockName");
  1482. glGetActiveUniformBlockiv = (void (*)(GLuint, GLuint, GLenum, GLint *) ) LoadProcAddress("glGetActiveUniformBlockiv");
  1483. glGetActiveUniformName = (void (*)(GLuint, GLuint, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetActiveUniformName");
  1484. glGetActiveUniformsiv = (void (*)(GLuint, GLsizei, const GLuint *, GLenum, GLint *) ) LoadProcAddress("glGetActiveUniformsiv");
  1485. glGetAttachedShaders = (void (*)(GLuint, GLsizei, GLsizei *, GLuint *) ) LoadProcAddress("glGetAttachedShaders");
  1486. glGetAttribLocation = (GLint (*)(GLuint, const GLchar *) ) LoadProcAddress("glGetAttribLocation");
  1487. glGetBooleanIndexedvEXT = (void (*)(GLenum, GLuint, GLboolean *) ) LoadProcAddress("glGetBooleanIndexedvEXT");
  1488. glGetBooleani_v = (void (*)(GLenum, GLuint, GLboolean *) ) LoadProcAddress("glGetBooleani_v");
  1489. glGetBooleanv = (void (*)(GLenum, GLboolean *) ) LoadProcAddress("glGetBooleanv");
  1490. glGetBufferParameteri64v = (void (*)(GLenum, GLenum, GLint64 *) ) LoadProcAddress("glGetBufferParameteri64v");
  1491. glGetBufferParameteriv = (void (*)(GLenum, GLenum, GLint *) ) LoadProcAddress("glGetBufferParameteriv");
  1492. glGetBufferPointerv = (void (*)(GLenum, GLenum, void **) ) LoadProcAddress("glGetBufferPointerv");
  1493. glGetBufferSubData = (void (*)(GLenum, GLintptr, GLsizeiptr, void *) ) LoadProcAddress("glGetBufferSubData");
  1494. glGetCompressedMultiTexImageEXT = (void (*)(GLenum, GLenum, GLint, void *) ) LoadProcAddress("glGetCompressedMultiTexImageEXT");
  1495. glGetCompressedTexImage = (void (*)(GLenum, GLint, void *) ) LoadProcAddress("glGetCompressedTexImage");
  1496. glGetCompressedTextureImage = (void (*)(GLuint, GLint, GLsizei, void *) ) LoadProcAddress("glGetCompressedTextureImage");
  1497. glGetCompressedTextureImageEXT = (void (*)(GLuint, GLenum, GLint, void *) ) LoadProcAddress("glGetCompressedTextureImageEXT");
  1498. glGetCompressedTextureSubImage = (void (*)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLsizei, void *) ) LoadProcAddress("glGetCompressedTextureSubImage");
  1499. glGetDebugMessageLog = (GLuint (*)(GLuint, GLsizei, GLenum *, GLenum *, GLuint *, GLenum *, GLsizei *, GLchar *) ) LoadProcAddress("glGetDebugMessageLog");
  1500. glGetDebugMessageLogARB = (GLuint (*)(GLuint, GLsizei, GLenum *, GLenum *, GLuint *, GLenum *, GLsizei *, GLchar *) ) LoadProcAddress("glGetDebugMessageLogARB");
  1501. glGetDebugMessageLogKHR = (GLuint (*)(GLuint, GLsizei, GLenum *, GLenum *, GLuint *, GLenum *, GLsizei *, GLchar *) ) LoadProcAddress("glGetDebugMessageLogKHR");
  1502. glGetDoubleIndexedvEXT = (void (*)(GLenum, GLuint, GLdouble *) ) LoadProcAddress("glGetDoubleIndexedvEXT");
  1503. glGetDoublei_v = (void (*)(GLenum, GLuint, GLdouble *) ) LoadProcAddress("glGetDoublei_v");
  1504. glGetDoublei_vEXT = (void (*)(GLenum, GLuint, GLdouble *) ) LoadProcAddress("glGetDoublei_vEXT");
  1505. glGetDoublev = (void (*)(GLenum, GLdouble *) ) LoadProcAddress("glGetDoublev");
  1506. glGetError = (GLenum (*)() ) LoadProcAddress("glGetError");
  1507. glGetFloatIndexedvEXT = (void (*)(GLenum, GLuint, GLfloat *) ) LoadProcAddress("glGetFloatIndexedvEXT");
  1508. glGetFloati_v = (void (*)(GLenum, GLuint, GLfloat *) ) LoadProcAddress("glGetFloati_v");
  1509. glGetFloati_vEXT = (void (*)(GLenum, GLuint, GLfloat *) ) LoadProcAddress("glGetFloati_vEXT");
  1510. glGetFloatv = (void (*)(GLenum, GLfloat *) ) LoadProcAddress("glGetFloatv");
  1511. glGetFragDataIndex = (GLint (*)(GLuint, const GLchar *) ) LoadProcAddress("glGetFragDataIndex");
  1512. glGetFragDataLocation = (GLint (*)(GLuint, const GLchar *) ) LoadProcAddress("glGetFragDataLocation");
  1513. glGetFramebufferAttachmentParameteriv = (void (*)(GLenum, GLenum, GLenum, GLint *) ) LoadProcAddress("glGetFramebufferAttachmentParameteriv");
  1514. glGetFramebufferParameteriv = (void (*)(GLenum, GLenum, GLint *) ) LoadProcAddress("glGetFramebufferParameteriv");
  1515. glGetFramebufferParameterivEXT = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetFramebufferParameterivEXT");
  1516. glGetGraphicsResetStatus = (GLenum (*)() ) LoadProcAddress("glGetGraphicsResetStatus");
  1517. glGetGraphicsResetStatusARB = (GLenum (*)() ) LoadProcAddress("glGetGraphicsResetStatusARB");
  1518. glGetGraphicsResetStatusKHR = (GLenum (*)() ) LoadProcAddress("glGetGraphicsResetStatusKHR");
  1519. glGetImageHandleARB = (GLuint64 (*)(GLuint, GLint, GLboolean, GLint, GLenum) ) LoadProcAddress("glGetImageHandleARB");
  1520. glGetInteger64i_v = (void (*)(GLenum, GLuint, GLint64 *) ) LoadProcAddress("glGetInteger64i_v");
  1521. glGetInteger64v = (void (*)(GLenum, GLint64 *) ) LoadProcAddress("glGetInteger64v");
  1522. glGetIntegerIndexedvEXT = (void (*)(GLenum, GLuint, GLint *) ) LoadProcAddress("glGetIntegerIndexedvEXT");
  1523. glGetIntegeri_v = (void (*)(GLenum, GLuint, GLint *) ) LoadProcAddress("glGetIntegeri_v");
  1524. glGetIntegerv = (void (*)(GLenum, GLint *) ) LoadProcAddress("glGetIntegerv");
  1525. glGetInternalformati64v = (void (*)(GLenum, GLenum, GLenum, GLsizei, GLint64 *) ) LoadProcAddress("glGetInternalformati64v");
  1526. glGetInternalformativ = (void (*)(GLenum, GLenum, GLenum, GLsizei, GLint *) ) LoadProcAddress("glGetInternalformativ");
  1527. glGetMultiTexEnvfvEXT = (void (*)(GLenum, GLenum, GLenum, GLfloat *) ) LoadProcAddress("glGetMultiTexEnvfvEXT");
  1528. glGetMultiTexEnvivEXT = (void (*)(GLenum, GLenum, GLenum, GLint *) ) LoadProcAddress("glGetMultiTexEnvivEXT");
  1529. glGetMultiTexGendvEXT = (void (*)(GLenum, GLenum, GLenum, GLdouble *) ) LoadProcAddress("glGetMultiTexGendvEXT");
  1530. glGetMultiTexGenfvEXT = (void (*)(GLenum, GLenum, GLenum, GLfloat *) ) LoadProcAddress("glGetMultiTexGenfvEXT");
  1531. glGetMultiTexGenivEXT = (void (*)(GLenum, GLenum, GLenum, GLint *) ) LoadProcAddress("glGetMultiTexGenivEXT");
  1532. glGetMultiTexImageEXT = (void (*)(GLenum, GLenum, GLint, GLenum, GLenum, void *) ) LoadProcAddress("glGetMultiTexImageEXT");
  1533. glGetMultiTexLevelParameterfvEXT = (void (*)(GLenum, GLenum, GLint, GLenum, GLfloat *) ) LoadProcAddress("glGetMultiTexLevelParameterfvEXT");
  1534. glGetMultiTexLevelParameterivEXT = (void (*)(GLenum, GLenum, GLint, GLenum, GLint *) ) LoadProcAddress("glGetMultiTexLevelParameterivEXT");
  1535. glGetMultiTexParameterIivEXT = (void (*)(GLenum, GLenum, GLenum, GLint *) ) LoadProcAddress("glGetMultiTexParameterIivEXT");
  1536. glGetMultiTexParameterIuivEXT = (void (*)(GLenum, GLenum, GLenum, GLuint *) ) LoadProcAddress("glGetMultiTexParameterIuivEXT");
  1537. glGetMultiTexParameterfvEXT = (void (*)(GLenum, GLenum, GLenum, GLfloat *) ) LoadProcAddress("glGetMultiTexParameterfvEXT");
  1538. glGetMultiTexParameterivEXT = (void (*)(GLenum, GLenum, GLenum, GLint *) ) LoadProcAddress("glGetMultiTexParameterivEXT");
  1539. glGetMultisamplefv = (void (*)(GLenum, GLuint, GLfloat *) ) LoadProcAddress("glGetMultisamplefv");
  1540. glGetNamedBufferParameteri64v = (void (*)(GLuint, GLenum, GLint64 *) ) LoadProcAddress("glGetNamedBufferParameteri64v");
  1541. glGetNamedBufferParameteriv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetNamedBufferParameteriv");
  1542. glGetNamedBufferParameterivEXT = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetNamedBufferParameterivEXT");
  1543. glGetNamedBufferPointerv = (void (*)(GLuint, GLenum, void **) ) LoadProcAddress("glGetNamedBufferPointerv");
  1544. glGetNamedBufferPointervEXT = (void (*)(GLuint, GLenum, void **) ) LoadProcAddress("glGetNamedBufferPointervEXT");
  1545. glGetNamedBufferSubData = (void (*)(GLuint, GLintptr, GLsizei, void *) ) LoadProcAddress("glGetNamedBufferSubData");
  1546. glGetNamedBufferSubDataEXT = (void (*)(GLuint, GLintptr, GLsizeiptr, void *) ) LoadProcAddress("glGetNamedBufferSubDataEXT");
  1547. glGetNamedFramebufferAttachmentParameteriv = (void (*)(GLuint, GLenum, GLenum, GLint *) ) LoadProcAddress("glGetNamedFramebufferAttachmentParameteriv");
  1548. glGetNamedFramebufferAttachmentParameterivEXT = (void (*)(GLuint, GLenum, GLenum, GLint *) ) LoadProcAddress("glGetNamedFramebufferAttachmentParameterivEXT");
  1549. glGetNamedFramebufferParameteriv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetNamedFramebufferParameteriv");
  1550. glGetNamedFramebufferParameterivEXT = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetNamedFramebufferParameterivEXT");
  1551. glGetNamedProgramLocalParameterIivEXT = (void (*)(GLuint, GLenum, GLuint, GLint *) ) LoadProcAddress("glGetNamedProgramLocalParameterIivEXT");
  1552. glGetNamedProgramLocalParameterIuivEXT = (void (*)(GLuint, GLenum, GLuint, GLuint *) ) LoadProcAddress("glGetNamedProgramLocalParameterIuivEXT");
  1553. glGetNamedProgramLocalParameterdvEXT = (void (*)(GLuint, GLenum, GLuint, GLdouble *) ) LoadProcAddress("glGetNamedProgramLocalParameterdvEXT");
  1554. glGetNamedProgramLocalParameterfvEXT = (void (*)(GLuint, GLenum, GLuint, GLfloat *) ) LoadProcAddress("glGetNamedProgramLocalParameterfvEXT");
  1555. glGetNamedProgramStringEXT = (void (*)(GLuint, GLenum, GLenum, void *) ) LoadProcAddress("glGetNamedProgramStringEXT");
  1556. glGetNamedProgramivEXT = (void (*)(GLuint, GLenum, GLenum, GLint *) ) LoadProcAddress("glGetNamedProgramivEXT");
  1557. glGetNamedRenderbufferParameteriv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetNamedRenderbufferParameteriv");
  1558. glGetNamedRenderbufferParameterivEXT = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetNamedRenderbufferParameterivEXT");
  1559. glGetNamedStringARB = (void (*)(GLint, const GLchar *, GLsizei, GLint *, GLchar *) ) LoadProcAddress("glGetNamedStringARB");
  1560. glGetNamedStringivARB = (void (*)(GLint, const GLchar *, GLenum, GLint *) ) LoadProcAddress("glGetNamedStringivARB");
  1561. glGetObjectLabel = (void (*)(GLenum, GLuint, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetObjectLabel");
  1562. glGetObjectLabelKHR = (void (*)(GLenum, GLuint, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetObjectLabelKHR");
  1563. glGetObjectPtrLabel = (void (*)(const void *, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetObjectPtrLabel");
  1564. glGetObjectPtrLabelKHR = (void (*)(const void *, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetObjectPtrLabelKHR");
  1565. glGetPointerIndexedvEXT = (void (*)(GLenum, GLuint, void **) ) LoadProcAddress("glGetPointerIndexedvEXT");
  1566. glGetPointeri_vEXT = (void (*)(GLenum, GLuint, void **) ) LoadProcAddress("glGetPointeri_vEXT");
  1567. glGetPointerv = (void (*)(GLenum, void **) ) LoadProcAddress("glGetPointerv");
  1568. glGetPointervKHR = (void (*)(GLenum, void **) ) LoadProcAddress("glGetPointervKHR");
  1569. glGetProgramBinary = (void (*)(GLuint, GLsizei, GLsizei *, GLenum *, void *) ) LoadProcAddress("glGetProgramBinary");
  1570. glGetProgramInfoLog = (void (*)(GLuint, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetProgramInfoLog");
  1571. glGetProgramInterfaceiv = (void (*)(GLuint, GLenum, GLenum, GLint *) ) LoadProcAddress("glGetProgramInterfaceiv");
  1572. glGetProgramPipelineInfoLog = (void (*)(GLuint, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetProgramPipelineInfoLog");
  1573. glGetProgramPipelineiv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetProgramPipelineiv");
  1574. glGetProgramResourceIndex = (GLuint (*)(GLuint, GLenum, const GLchar *) ) LoadProcAddress("glGetProgramResourceIndex");
  1575. glGetProgramResourceLocation = (GLint (*)(GLuint, GLenum, const GLchar *) ) LoadProcAddress("glGetProgramResourceLocation");
  1576. glGetProgramResourceLocationIndex = (GLint (*)(GLuint, GLenum, const GLchar *) ) LoadProcAddress("glGetProgramResourceLocationIndex");
  1577. glGetProgramResourceName = (void (*)(GLuint, GLenum, GLuint, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetProgramResourceName");
  1578. glGetProgramResourceiv = (void (*)(GLuint, GLenum, GLuint, GLsizei, const GLenum *, GLsizei, GLsizei *, GLint *) ) LoadProcAddress("glGetProgramResourceiv");
  1579. glGetProgramStageiv = (void (*)(GLuint, GLenum, GLenum, GLint *) ) LoadProcAddress("glGetProgramStageiv");
  1580. glGetProgramiv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetProgramiv");
  1581. glGetQueryBufferObjecti64v = (void (*)(GLuint, GLuint, GLenum, GLintptr) ) LoadProcAddress("glGetQueryBufferObjecti64v");
  1582. glGetQueryBufferObjectiv = (void (*)(GLuint, GLuint, GLenum, GLintptr) ) LoadProcAddress("glGetQueryBufferObjectiv");
  1583. glGetQueryBufferObjectui64v = (void (*)(GLuint, GLuint, GLenum, GLintptr) ) LoadProcAddress("glGetQueryBufferObjectui64v");
  1584. glGetQueryBufferObjectuiv = (void (*)(GLuint, GLuint, GLenum, GLintptr) ) LoadProcAddress("glGetQueryBufferObjectuiv");
  1585. glGetQueryIndexediv = (void (*)(GLenum, GLuint, GLenum, GLint *) ) LoadProcAddress("glGetQueryIndexediv");
  1586. glGetQueryObjecti64v = (void (*)(GLuint, GLenum, GLint64 *) ) LoadProcAddress("glGetQueryObjecti64v");
  1587. glGetQueryObjectiv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetQueryObjectiv");
  1588. glGetQueryObjectui64v = (void (*)(GLuint, GLenum, GLuint64 *) ) LoadProcAddress("glGetQueryObjectui64v");
  1589. glGetQueryObjectuiv = (void (*)(GLuint, GLenum, GLuint *) ) LoadProcAddress("glGetQueryObjectuiv");
  1590. glGetQueryiv = (void (*)(GLenum, GLenum, GLint *) ) LoadProcAddress("glGetQueryiv");
  1591. glGetRenderbufferParameteriv = (void (*)(GLenum, GLenum, GLint *) ) LoadProcAddress("glGetRenderbufferParameteriv");
  1592. glGetSamplerParameterIiv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetSamplerParameterIiv");
  1593. glGetSamplerParameterIuiv = (void (*)(GLuint, GLenum, GLuint *) ) LoadProcAddress("glGetSamplerParameterIuiv");
  1594. glGetSamplerParameterfv = (void (*)(GLuint, GLenum, GLfloat *) ) LoadProcAddress("glGetSamplerParameterfv");
  1595. glGetSamplerParameteriv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetSamplerParameteriv");
  1596. glGetShaderInfoLog = (void (*)(GLuint, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetShaderInfoLog");
  1597. glGetShaderPrecisionFormat = (void (*)(GLenum, GLenum, GLint *, GLint *) ) LoadProcAddress("glGetShaderPrecisionFormat");
  1598. glGetShaderSource = (void (*)(GLuint, GLsizei, GLsizei *, GLchar *) ) LoadProcAddress("glGetShaderSource");
  1599. glGetShaderiv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetShaderiv");
  1600. glGetString = (const GLubyte * (*)(GLenum) ) LoadProcAddress("glGetString");
  1601. glGetStringi = (const GLubyte * (*)(GLenum, GLuint) ) LoadProcAddress("glGetStringi");
  1602. glGetSubroutineIndex = (GLuint (*)(GLuint, GLenum, const GLchar *) ) LoadProcAddress("glGetSubroutineIndex");
  1603. glGetSubroutineUniformLocation = (GLint (*)(GLuint, GLenum, const GLchar *) ) LoadProcAddress("glGetSubroutineUniformLocation");
  1604. glGetSynciv = (void (*)(GLsync, GLenum, GLsizei, GLsizei *, GLint *) ) LoadProcAddress("glGetSynciv");
  1605. glGetTexImage = (void (*)(GLenum, GLint, GLenum, GLenum, void *) ) LoadProcAddress("glGetTexImage");
  1606. glGetTexLevelParameterfv = (void (*)(GLenum, GLint, GLenum, GLfloat *) ) LoadProcAddress("glGetTexLevelParameterfv");
  1607. glGetTexLevelParameteriv = (void (*)(GLenum, GLint, GLenum, GLint *) ) LoadProcAddress("glGetTexLevelParameteriv");
  1608. glGetTexParameterIiv = (void (*)(GLenum, GLenum, GLint *) ) LoadProcAddress("glGetTexParameterIiv");
  1609. glGetTexParameterIuiv = (void (*)(GLenum, GLenum, GLuint *) ) LoadProcAddress("glGetTexParameterIuiv");
  1610. glGetTexParameterfv = (void (*)(GLenum, GLenum, GLfloat *) ) LoadProcAddress("glGetTexParameterfv");
  1611. glGetTexParameteriv = (void (*)(GLenum, GLenum, GLint *) ) LoadProcAddress("glGetTexParameteriv");
  1612. glGetTextureHandleARB = (GLuint64 (*)(GLuint) ) LoadProcAddress("glGetTextureHandleARB");
  1613. glGetTextureImage = (void (*)(GLuint, GLint, GLenum, GLenum, GLsizei, void *) ) LoadProcAddress("glGetTextureImage");
  1614. glGetTextureImageEXT = (void (*)(GLuint, GLenum, GLint, GLenum, GLenum, void *) ) LoadProcAddress("glGetTextureImageEXT");
  1615. glGetTextureLevelParameterfv = (void (*)(GLuint, GLint, GLenum, GLfloat *) ) LoadProcAddress("glGetTextureLevelParameterfv");
  1616. glGetTextureLevelParameterfvEXT = (void (*)(GLuint, GLenum, GLint, GLenum, GLfloat *) ) LoadProcAddress("glGetTextureLevelParameterfvEXT");
  1617. glGetTextureLevelParameteriv = (void (*)(GLuint, GLint, GLenum, GLint *) ) LoadProcAddress("glGetTextureLevelParameteriv");
  1618. glGetTextureLevelParameterivEXT = (void (*)(GLuint, GLenum, GLint, GLenum, GLint *) ) LoadProcAddress("glGetTextureLevelParameterivEXT");
  1619. glGetTextureParameterIiv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetTextureParameterIiv");
  1620. glGetTextureParameterIivEXT = (void (*)(GLuint, GLenum, GLenum, GLint *) ) LoadProcAddress("glGetTextureParameterIivEXT");
  1621. glGetTextureParameterIuiv = (void (*)(GLuint, GLenum, GLuint *) ) LoadProcAddress("glGetTextureParameterIuiv");
  1622. glGetTextureParameterIuivEXT = (void (*)(GLuint, GLenum, GLenum, GLuint *) ) LoadProcAddress("glGetTextureParameterIuivEXT");
  1623. glGetTextureParameterfv = (void (*)(GLuint, GLenum, GLfloat *) ) LoadProcAddress("glGetTextureParameterfv");
  1624. glGetTextureParameterfvEXT = (void (*)(GLuint, GLenum, GLenum, GLfloat *) ) LoadProcAddress("glGetTextureParameterfvEXT");
  1625. glGetTextureParameteriv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetTextureParameteriv");
  1626. glGetTextureParameterivEXT = (void (*)(GLuint, GLenum, GLenum, GLint *) ) LoadProcAddress("glGetTextureParameterivEXT");
  1627. glGetTextureSamplerHandleARB = (GLuint64 (*)(GLuint, GLuint) ) LoadProcAddress("glGetTextureSamplerHandleARB");
  1628. glGetTextureSubImage = (void (*)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, GLsizei, void *) ) LoadProcAddress("glGetTextureSubImage");
  1629. glGetTransformFeedbackVarying = (void (*)(GLuint, GLuint, GLsizei, GLsizei *, GLsizei *, GLenum *, GLchar *) ) LoadProcAddress("glGetTransformFeedbackVarying");
  1630. glGetTransformFeedbacki64_v = (void (*)(GLuint, GLenum, GLuint, GLint64 *) ) LoadProcAddress("glGetTransformFeedbacki64_v");
  1631. glGetTransformFeedbacki_v = (void (*)(GLuint, GLenum, GLuint, GLint *) ) LoadProcAddress("glGetTransformFeedbacki_v");
  1632. glGetTransformFeedbackiv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetTransformFeedbackiv");
  1633. glGetUniformBlockIndex = (GLuint (*)(GLuint, const GLchar *) ) LoadProcAddress("glGetUniformBlockIndex");
  1634. glGetUniformIndices = (void (*)(GLuint, GLsizei, const GLchar *const*, GLuint *) ) LoadProcAddress("glGetUniformIndices");
  1635. glGetUniformLocation = (GLint (*)(GLuint, const GLchar *) ) LoadProcAddress("glGetUniformLocation");
  1636. glGetUniformSubroutineuiv = (void (*)(GLenum, GLint, GLuint *) ) LoadProcAddress("glGetUniformSubroutineuiv");
  1637. glGetUniformdv = (void (*)(GLuint, GLint, GLdouble *) ) LoadProcAddress("glGetUniformdv");
  1638. glGetUniformfv = (void (*)(GLuint, GLint, GLfloat *) ) LoadProcAddress("glGetUniformfv");
  1639. glGetUniformiv = (void (*)(GLuint, GLint, GLint *) ) LoadProcAddress("glGetUniformiv");
  1640. glGetUniformuiv = (void (*)(GLuint, GLint, GLuint *) ) LoadProcAddress("glGetUniformuiv");
  1641. glGetVertexArrayIndexed64iv = (void (*)(GLuint, GLuint, GLenum, GLint64 *) ) LoadProcAddress("glGetVertexArrayIndexed64iv");
  1642. glGetVertexArrayIndexediv = (void (*)(GLuint, GLuint, GLenum, GLint *) ) LoadProcAddress("glGetVertexArrayIndexediv");
  1643. glGetVertexArrayIntegeri_vEXT = (void (*)(GLuint, GLuint, GLenum, GLint *) ) LoadProcAddress("glGetVertexArrayIntegeri_vEXT");
  1644. glGetVertexArrayIntegervEXT = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetVertexArrayIntegervEXT");
  1645. glGetVertexArrayPointeri_vEXT = (void (*)(GLuint, GLuint, GLenum, void **) ) LoadProcAddress("glGetVertexArrayPointeri_vEXT");
  1646. glGetVertexArrayPointervEXT = (void (*)(GLuint, GLenum, void **) ) LoadProcAddress("glGetVertexArrayPointervEXT");
  1647. glGetVertexArrayiv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetVertexArrayiv");
  1648. glGetVertexAttribIiv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetVertexAttribIiv");
  1649. glGetVertexAttribIuiv = (void (*)(GLuint, GLenum, GLuint *) ) LoadProcAddress("glGetVertexAttribIuiv");
  1650. glGetVertexAttribLdv = (void (*)(GLuint, GLenum, GLdouble *) ) LoadProcAddress("glGetVertexAttribLdv");
  1651. glGetVertexAttribLui64vARB = (void (*)(GLuint, GLenum, GLuint64EXT *) ) LoadProcAddress("glGetVertexAttribLui64vARB");
  1652. glGetVertexAttribPointerv = (void (*)(GLuint, GLenum, void **) ) LoadProcAddress("glGetVertexAttribPointerv");
  1653. glGetVertexAttribdv = (void (*)(GLuint, GLenum, GLdouble *) ) LoadProcAddress("glGetVertexAttribdv");
  1654. glGetVertexAttribfv = (void (*)(GLuint, GLenum, GLfloat *) ) LoadProcAddress("glGetVertexAttribfv");
  1655. glGetVertexAttribiv = (void (*)(GLuint, GLenum, GLint *) ) LoadProcAddress("glGetVertexAttribiv");
  1656. glGetnCompressedTexImage = (void (*)(GLenum, GLint, GLsizei, void *) ) LoadProcAddress("glGetnCompressedTexImage");
  1657. glGetnCompressedTexImageARB = (void (*)(GLenum, GLint, GLsizei, void *) ) LoadProcAddress("glGetnCompressedTexImageARB");
  1658. glGetnTexImage = (void (*)(GLenum, GLint, GLenum, GLenum, GLsizei, void *) ) LoadProcAddress("glGetnTexImage");
  1659. glGetnTexImageARB = (void (*)(GLenum, GLint, GLenum, GLenum, GLsizei, void *) ) LoadProcAddress("glGetnTexImageARB");
  1660. glGetnUniformdv = (void (*)(GLuint, GLint, GLsizei, GLdouble *) ) LoadProcAddress("glGetnUniformdv");
  1661. glGetnUniformdvARB = (void (*)(GLuint, GLint, GLsizei, GLdouble *) ) LoadProcAddress("glGetnUniformdvARB");
  1662. glGetnUniformfv = (void (*)(GLuint, GLint, GLsizei, GLfloat *) ) LoadProcAddress("glGetnUniformfv");
  1663. glGetnUniformfvARB = (void (*)(GLuint, GLint, GLsizei, GLfloat *) ) LoadProcAddress("glGetnUniformfvARB");
  1664. glGetnUniformfvKHR = (void (*)(GLuint, GLint, GLsizei, GLfloat *) ) LoadProcAddress("glGetnUniformfvKHR");
  1665. glGetnUniformiv = (void (*)(GLuint, GLint, GLsizei, GLint *) ) LoadProcAddress("glGetnUniformiv");
  1666. glGetnUniformivARB = (void (*)(GLuint, GLint, GLsizei, GLint *) ) LoadProcAddress("glGetnUniformivARB");
  1667. glGetnUniformivKHR = (void (*)(GLuint, GLint, GLsizei, GLint *) ) LoadProcAddress("glGetnUniformivKHR");
  1668. glGetnUniformuiv = (void (*)(GLuint, GLint, GLsizei, GLuint *) ) LoadProcAddress("glGetnUniformuiv");
  1669. glGetnUniformuivARB = (void (*)(GLuint, GLint, GLsizei, GLuint *) ) LoadProcAddress("glGetnUniformuivARB");
  1670. glGetnUniformuivKHR = (void (*)(GLuint, GLint, GLsizei, GLuint *) ) LoadProcAddress("glGetnUniformuivKHR");
  1671. glHint = (void (*)(GLenum, GLenum) ) LoadProcAddress("glHint");
  1672. glInvalidateBufferData = (void (*)(GLuint) ) LoadProcAddress("glInvalidateBufferData");
  1673. glInvalidateBufferSubData = (void (*)(GLuint, GLintptr, GLsizeiptr) ) LoadProcAddress("glInvalidateBufferSubData");
  1674. glInvalidateFramebuffer = (void (*)(GLenum, GLsizei, const GLenum *) ) LoadProcAddress("glInvalidateFramebuffer");
  1675. glInvalidateNamedFramebufferData = (void (*)(GLuint, GLsizei, const GLenum *) ) LoadProcAddress("glInvalidateNamedFramebufferData");
  1676. glInvalidateNamedFramebufferSubData = (void (*)(GLuint, GLsizei, const GLenum *, GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glInvalidateNamedFramebufferSubData");
  1677. glInvalidateSubFramebuffer = (void (*)(GLenum, GLsizei, const GLenum *, GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glInvalidateSubFramebuffer");
  1678. glInvalidateTexImage = (void (*)(GLuint, GLint) ) LoadProcAddress("glInvalidateTexImage");
  1679. glInvalidateTexSubImage = (void (*)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei) ) LoadProcAddress("glInvalidateTexSubImage");
  1680. glIsBuffer = (GLboolean (*)(GLuint) ) LoadProcAddress("glIsBuffer");
  1681. glIsEnabled = (GLboolean (*)(GLenum) ) LoadProcAddress("glIsEnabled");
  1682. glIsEnabledIndexedEXT = (GLboolean (*)(GLenum, GLuint) ) LoadProcAddress("glIsEnabledIndexedEXT");
  1683. glIsEnabledi = (GLboolean (*)(GLenum, GLuint) ) LoadProcAddress("glIsEnabledi");
  1684. glIsFramebuffer = (GLboolean (*)(GLuint) ) LoadProcAddress("glIsFramebuffer");
  1685. glIsImageHandleResidentARB = (GLboolean (*)(GLuint64) ) LoadProcAddress("glIsImageHandleResidentARB");
  1686. glIsNamedStringARB = (GLboolean (*)(GLint, const GLchar *) ) LoadProcAddress("glIsNamedStringARB");
  1687. glIsProgram = (GLboolean (*)(GLuint) ) LoadProcAddress("glIsProgram");
  1688. glIsProgramPipeline = (GLboolean (*)(GLuint) ) LoadProcAddress("glIsProgramPipeline");
  1689. glIsQuery = (GLboolean (*)(GLuint) ) LoadProcAddress("glIsQuery");
  1690. glIsRenderbuffer = (GLboolean (*)(GLuint) ) LoadProcAddress("glIsRenderbuffer");
  1691. glIsSampler = (GLboolean (*)(GLuint) ) LoadProcAddress("glIsSampler");
  1692. glIsShader = (GLboolean (*)(GLuint) ) LoadProcAddress("glIsShader");
  1693. glIsSync = (GLboolean (*)(GLsync) ) LoadProcAddress("glIsSync");
  1694. glIsTexture = (GLboolean (*)(GLuint) ) LoadProcAddress("glIsTexture");
  1695. glIsTextureHandleResidentARB = (GLboolean (*)(GLuint64) ) LoadProcAddress("glIsTextureHandleResidentARB");
  1696. glIsTransformFeedback = (GLboolean (*)(GLuint) ) LoadProcAddress("glIsTransformFeedback");
  1697. glIsVertexArray = (GLboolean (*)(GLuint) ) LoadProcAddress("glIsVertexArray");
  1698. glLineWidth = (void (*)(GLfloat) ) LoadProcAddress("glLineWidth");
  1699. glLinkProgram = (void (*)(GLuint) ) LoadProcAddress("glLinkProgram");
  1700. glLogicOp = (void (*)(GLenum) ) LoadProcAddress("glLogicOp");
  1701. glMakeImageHandleNonResidentARB = (void (*)(GLuint64) ) LoadProcAddress("glMakeImageHandleNonResidentARB");
  1702. glMakeImageHandleResidentARB = (void (*)(GLuint64, GLenum) ) LoadProcAddress("glMakeImageHandleResidentARB");
  1703. glMakeTextureHandleNonResidentARB = (void (*)(GLuint64) ) LoadProcAddress("glMakeTextureHandleNonResidentARB");
  1704. glMakeTextureHandleResidentARB = (void (*)(GLuint64) ) LoadProcAddress("glMakeTextureHandleResidentARB");
  1705. glMapBuffer = (void * (*)(GLenum, GLenum) ) LoadProcAddress("glMapBuffer");
  1706. glMapBufferRange = (void * (*)(GLenum, GLintptr, GLsizeiptr, GLbitfield) ) LoadProcAddress("glMapBufferRange");
  1707. glMapNamedBuffer = (void * (*)(GLuint, GLenum) ) LoadProcAddress("glMapNamedBuffer");
  1708. glMapNamedBufferEXT = (void * (*)(GLuint, GLenum) ) LoadProcAddress("glMapNamedBufferEXT");
  1709. glMapNamedBufferRange = (void * (*)(GLuint, GLintptr, GLsizei, GLbitfield) ) LoadProcAddress("glMapNamedBufferRange");
  1710. glMapNamedBufferRangeEXT = (void * (*)(GLuint, GLintptr, GLsizeiptr, GLbitfield) ) LoadProcAddress("glMapNamedBufferRangeEXT");
  1711. glMatrixFrustumEXT = (void (*)(GLenum, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glMatrixFrustumEXT");
  1712. glMatrixLoadIdentityEXT = (void (*)(GLenum) ) LoadProcAddress("glMatrixLoadIdentityEXT");
  1713. glMatrixLoadTransposedEXT = (void (*)(GLenum, const GLdouble *) ) LoadProcAddress("glMatrixLoadTransposedEXT");
  1714. glMatrixLoadTransposefEXT = (void (*)(GLenum, const GLfloat *) ) LoadProcAddress("glMatrixLoadTransposefEXT");
  1715. glMatrixLoaddEXT = (void (*)(GLenum, const GLdouble *) ) LoadProcAddress("glMatrixLoaddEXT");
  1716. glMatrixLoadfEXT = (void (*)(GLenum, const GLfloat *) ) LoadProcAddress("glMatrixLoadfEXT");
  1717. glMatrixMultTransposedEXT = (void (*)(GLenum, const GLdouble *) ) LoadProcAddress("glMatrixMultTransposedEXT");
  1718. glMatrixMultTransposefEXT = (void (*)(GLenum, const GLfloat *) ) LoadProcAddress("glMatrixMultTransposefEXT");
  1719. glMatrixMultdEXT = (void (*)(GLenum, const GLdouble *) ) LoadProcAddress("glMatrixMultdEXT");
  1720. glMatrixMultfEXT = (void (*)(GLenum, const GLfloat *) ) LoadProcAddress("glMatrixMultfEXT");
  1721. glMatrixOrthoEXT = (void (*)(GLenum, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glMatrixOrthoEXT");
  1722. glMatrixPopEXT = (void (*)(GLenum) ) LoadProcAddress("glMatrixPopEXT");
  1723. glMatrixPushEXT = (void (*)(GLenum) ) LoadProcAddress("glMatrixPushEXT");
  1724. glMatrixRotatedEXT = (void (*)(GLenum, GLdouble, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glMatrixRotatedEXT");
  1725. glMatrixRotatefEXT = (void (*)(GLenum, GLfloat, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glMatrixRotatefEXT");
  1726. glMatrixScaledEXT = (void (*)(GLenum, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glMatrixScaledEXT");
  1727. glMatrixScalefEXT = (void (*)(GLenum, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glMatrixScalefEXT");
  1728. glMatrixTranslatedEXT = (void (*)(GLenum, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glMatrixTranslatedEXT");
  1729. glMatrixTranslatefEXT = (void (*)(GLenum, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glMatrixTranslatefEXT");
  1730. glMemoryBarrier = (void (*)(GLbitfield) ) LoadProcAddress("glMemoryBarrier");
  1731. glMemoryBarrierByRegion = (void (*)(GLbitfield) ) LoadProcAddress("glMemoryBarrierByRegion");
  1732. glMinSampleShading = (void (*)(GLfloat) ) LoadProcAddress("glMinSampleShading");
  1733. glMinSampleShadingARB = (void (*)(GLfloat) ) LoadProcAddress("glMinSampleShadingARB");
  1734. glMultiDrawArrays = (void (*)(GLenum, const GLint *, const GLsizei *, GLsizei) ) LoadProcAddress("glMultiDrawArrays");
  1735. glMultiDrawArraysIndirect = (void (*)(GLenum, const void *, GLsizei, GLsizei) ) LoadProcAddress("glMultiDrawArraysIndirect");
  1736. glMultiDrawArraysIndirectCountARB = (void (*)(GLenum, GLintptr, GLintptr, GLsizei, GLsizei) ) LoadProcAddress("glMultiDrawArraysIndirectCountARB");
  1737. glMultiDrawElements = (void (*)(GLenum, const GLsizei *, GLenum, const void *const*, GLsizei) ) LoadProcAddress("glMultiDrawElements");
  1738. glMultiDrawElementsBaseVertex = (void (*)(GLenum, const GLsizei *, GLenum, const void *const*, GLsizei, const GLint *) ) LoadProcAddress("glMultiDrawElementsBaseVertex");
  1739. glMultiDrawElementsIndirect = (void (*)(GLenum, GLenum, const void *, GLsizei, GLsizei) ) LoadProcAddress("glMultiDrawElementsIndirect");
  1740. glMultiDrawElementsIndirectCountARB = (void (*)(GLenum, GLenum, GLintptr, GLintptr, GLsizei, GLsizei) ) LoadProcAddress("glMultiDrawElementsIndirectCountARB");
  1741. glMultiTexBufferEXT = (void (*)(GLenum, GLenum, GLenum, GLuint) ) LoadProcAddress("glMultiTexBufferEXT");
  1742. glMultiTexCoordPointerEXT = (void (*)(GLenum, GLint, GLenum, GLsizei, const void *) ) LoadProcAddress("glMultiTexCoordPointerEXT");
  1743. glMultiTexEnvfEXT = (void (*)(GLenum, GLenum, GLenum, GLfloat) ) LoadProcAddress("glMultiTexEnvfEXT");
  1744. glMultiTexEnvfvEXT = (void (*)(GLenum, GLenum, GLenum, const GLfloat *) ) LoadProcAddress("glMultiTexEnvfvEXT");
  1745. glMultiTexEnviEXT = (void (*)(GLenum, GLenum, GLenum, GLint) ) LoadProcAddress("glMultiTexEnviEXT");
  1746. glMultiTexEnvivEXT = (void (*)(GLenum, GLenum, GLenum, const GLint *) ) LoadProcAddress("glMultiTexEnvivEXT");
  1747. glMultiTexGendEXT = (void (*)(GLenum, GLenum, GLenum, GLdouble) ) LoadProcAddress("glMultiTexGendEXT");
  1748. glMultiTexGendvEXT = (void (*)(GLenum, GLenum, GLenum, const GLdouble *) ) LoadProcAddress("glMultiTexGendvEXT");
  1749. glMultiTexGenfEXT = (void (*)(GLenum, GLenum, GLenum, GLfloat) ) LoadProcAddress("glMultiTexGenfEXT");
  1750. glMultiTexGenfvEXT = (void (*)(GLenum, GLenum, GLenum, const GLfloat *) ) LoadProcAddress("glMultiTexGenfvEXT");
  1751. glMultiTexGeniEXT = (void (*)(GLenum, GLenum, GLenum, GLint) ) LoadProcAddress("glMultiTexGeniEXT");
  1752. glMultiTexGenivEXT = (void (*)(GLenum, GLenum, GLenum, const GLint *) ) LoadProcAddress("glMultiTexGenivEXT");
  1753. glMultiTexImage1DEXT = (void (*)(GLenum, GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, const void *) ) LoadProcAddress("glMultiTexImage1DEXT");
  1754. glMultiTexImage2DEXT = (void (*)(GLenum, GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *) ) LoadProcAddress("glMultiTexImage2DEXT");
  1755. glMultiTexImage3DEXT = (void (*)(GLenum, GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *) ) LoadProcAddress("glMultiTexImage3DEXT");
  1756. glMultiTexParameterIivEXT = (void (*)(GLenum, GLenum, GLenum, const GLint *) ) LoadProcAddress("glMultiTexParameterIivEXT");
  1757. glMultiTexParameterIuivEXT = (void (*)(GLenum, GLenum, GLenum, const GLuint *) ) LoadProcAddress("glMultiTexParameterIuivEXT");
  1758. glMultiTexParameterfEXT = (void (*)(GLenum, GLenum, GLenum, GLfloat) ) LoadProcAddress("glMultiTexParameterfEXT");
  1759. glMultiTexParameterfvEXT = (void (*)(GLenum, GLenum, GLenum, const GLfloat *) ) LoadProcAddress("glMultiTexParameterfvEXT");
  1760. glMultiTexParameteriEXT = (void (*)(GLenum, GLenum, GLenum, GLint) ) LoadProcAddress("glMultiTexParameteriEXT");
  1761. glMultiTexParameterivEXT = (void (*)(GLenum, GLenum, GLenum, const GLint *) ) LoadProcAddress("glMultiTexParameterivEXT");
  1762. glMultiTexRenderbufferEXT = (void (*)(GLenum, GLenum, GLuint) ) LoadProcAddress("glMultiTexRenderbufferEXT");
  1763. glMultiTexSubImage1DEXT = (void (*)(GLenum, GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glMultiTexSubImage1DEXT");
  1764. glMultiTexSubImage2DEXT = (void (*)(GLenum, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glMultiTexSubImage2DEXT");
  1765. glMultiTexSubImage3DEXT = (void (*)(GLenum, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glMultiTexSubImage3DEXT");
  1766. glNamedBufferData = (void (*)(GLuint, GLsizei, const void *, GLenum) ) LoadProcAddress("glNamedBufferData");
  1767. glNamedBufferDataEXT = (void (*)(GLuint, GLsizeiptr, const void *, GLenum) ) LoadProcAddress("glNamedBufferDataEXT");
  1768. glNamedBufferPageCommitmentARB = (void (*)(GLuint, GLintptr, GLsizeiptr, GLboolean) ) LoadProcAddress("glNamedBufferPageCommitmentARB");
  1769. glNamedBufferPageCommitmentEXT = (void (*)(GLuint, GLintptr, GLsizeiptr, GLboolean) ) LoadProcAddress("glNamedBufferPageCommitmentEXT");
  1770. glNamedBufferStorage = (void (*)(GLuint, GLsizei, const void *, GLbitfield) ) LoadProcAddress("glNamedBufferStorage");
  1771. glNamedBufferStorageEXT = (void (*)(GLuint, GLsizeiptr, const void *, GLbitfield) ) LoadProcAddress("glNamedBufferStorageEXT");
  1772. glNamedBufferSubData = (void (*)(GLuint, GLintptr, GLsizei, const void *) ) LoadProcAddress("glNamedBufferSubData");
  1773. glNamedBufferSubDataEXT = (void (*)(GLuint, GLintptr, GLsizeiptr, const void *) ) LoadProcAddress("glNamedBufferSubDataEXT");
  1774. glNamedCopyBufferSubDataEXT = (void (*)(GLuint, GLuint, GLintptr, GLintptr, GLsizeiptr) ) LoadProcAddress("glNamedCopyBufferSubDataEXT");
  1775. glNamedFramebufferDrawBuffer = (void (*)(GLuint, GLenum) ) LoadProcAddress("glNamedFramebufferDrawBuffer");
  1776. glNamedFramebufferDrawBuffers = (void (*)(GLuint, GLsizei, const GLenum *) ) LoadProcAddress("glNamedFramebufferDrawBuffers");
  1777. glNamedFramebufferParameteri = (void (*)(GLuint, GLenum, GLint) ) LoadProcAddress("glNamedFramebufferParameteri");
  1778. glNamedFramebufferParameteriEXT = (void (*)(GLuint, GLenum, GLint) ) LoadProcAddress("glNamedFramebufferParameteriEXT");
  1779. glNamedFramebufferReadBuffer = (void (*)(GLuint, GLenum) ) LoadProcAddress("glNamedFramebufferReadBuffer");
  1780. glNamedFramebufferRenderbuffer = (void (*)(GLuint, GLenum, GLenum, GLuint) ) LoadProcAddress("glNamedFramebufferRenderbuffer");
  1781. glNamedFramebufferRenderbufferEXT = (void (*)(GLuint, GLenum, GLenum, GLuint) ) LoadProcAddress("glNamedFramebufferRenderbufferEXT");
  1782. glNamedFramebufferTexture = (void (*)(GLuint, GLenum, GLuint, GLint) ) LoadProcAddress("glNamedFramebufferTexture");
  1783. glNamedFramebufferTexture1DEXT = (void (*)(GLuint, GLenum, GLenum, GLuint, GLint) ) LoadProcAddress("glNamedFramebufferTexture1DEXT");
  1784. glNamedFramebufferTexture2DEXT = (void (*)(GLuint, GLenum, GLenum, GLuint, GLint) ) LoadProcAddress("glNamedFramebufferTexture2DEXT");
  1785. glNamedFramebufferTexture3DEXT = (void (*)(GLuint, GLenum, GLenum, GLuint, GLint, GLint) ) LoadProcAddress("glNamedFramebufferTexture3DEXT");
  1786. glNamedFramebufferTextureEXT = (void (*)(GLuint, GLenum, GLuint, GLint) ) LoadProcAddress("glNamedFramebufferTextureEXT");
  1787. glNamedFramebufferTextureFaceEXT = (void (*)(GLuint, GLenum, GLuint, GLint, GLenum) ) LoadProcAddress("glNamedFramebufferTextureFaceEXT");
  1788. glNamedFramebufferTextureLayer = (void (*)(GLuint, GLenum, GLuint, GLint, GLint) ) LoadProcAddress("glNamedFramebufferTextureLayer");
  1789. glNamedFramebufferTextureLayerEXT = (void (*)(GLuint, GLenum, GLuint, GLint, GLint) ) LoadProcAddress("glNamedFramebufferTextureLayerEXT");
  1790. glNamedProgramLocalParameter4dEXT = (void (*)(GLuint, GLenum, GLuint, GLdouble, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glNamedProgramLocalParameter4dEXT");
  1791. glNamedProgramLocalParameter4dvEXT = (void (*)(GLuint, GLenum, GLuint, const GLdouble *) ) LoadProcAddress("glNamedProgramLocalParameter4dvEXT");
  1792. glNamedProgramLocalParameter4fEXT = (void (*)(GLuint, GLenum, GLuint, GLfloat, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glNamedProgramLocalParameter4fEXT");
  1793. glNamedProgramLocalParameter4fvEXT = (void (*)(GLuint, GLenum, GLuint, const GLfloat *) ) LoadProcAddress("glNamedProgramLocalParameter4fvEXT");
  1794. glNamedProgramLocalParameterI4iEXT = (void (*)(GLuint, GLenum, GLuint, GLint, GLint, GLint, GLint) ) LoadProcAddress("glNamedProgramLocalParameterI4iEXT");
  1795. glNamedProgramLocalParameterI4ivEXT = (void (*)(GLuint, GLenum, GLuint, const GLint *) ) LoadProcAddress("glNamedProgramLocalParameterI4ivEXT");
  1796. glNamedProgramLocalParameterI4uiEXT = (void (*)(GLuint, GLenum, GLuint, GLuint, GLuint, GLuint, GLuint) ) LoadProcAddress("glNamedProgramLocalParameterI4uiEXT");
  1797. glNamedProgramLocalParameterI4uivEXT = (void (*)(GLuint, GLenum, GLuint, const GLuint *) ) LoadProcAddress("glNamedProgramLocalParameterI4uivEXT");
  1798. glNamedProgramLocalParameters4fvEXT = (void (*)(GLuint, GLenum, GLuint, GLsizei, const GLfloat *) ) LoadProcAddress("glNamedProgramLocalParameters4fvEXT");
  1799. glNamedProgramLocalParametersI4ivEXT = (void (*)(GLuint, GLenum, GLuint, GLsizei, const GLint *) ) LoadProcAddress("glNamedProgramLocalParametersI4ivEXT");
  1800. glNamedProgramLocalParametersI4uivEXT = (void (*)(GLuint, GLenum, GLuint, GLsizei, const GLuint *) ) LoadProcAddress("glNamedProgramLocalParametersI4uivEXT");
  1801. glNamedProgramStringEXT = (void (*)(GLuint, GLenum, GLenum, GLsizei, const void *) ) LoadProcAddress("glNamedProgramStringEXT");
  1802. glNamedRenderbufferStorage = (void (*)(GLuint, GLenum, GLsizei, GLsizei) ) LoadProcAddress("glNamedRenderbufferStorage");
  1803. glNamedRenderbufferStorageEXT = (void (*)(GLuint, GLenum, GLsizei, GLsizei) ) LoadProcAddress("glNamedRenderbufferStorageEXT");
  1804. glNamedRenderbufferStorageMultisample = (void (*)(GLuint, GLsizei, GLenum, GLsizei, GLsizei) ) LoadProcAddress("glNamedRenderbufferStorageMultisample");
  1805. glNamedRenderbufferStorageMultisampleCoverageEXT = (void (*)(GLuint, GLsizei, GLsizei, GLenum, GLsizei, GLsizei) ) LoadProcAddress("glNamedRenderbufferStorageMultisampleCoverageEXT");
  1806. glNamedRenderbufferStorageMultisampleEXT = (void (*)(GLuint, GLsizei, GLenum, GLsizei, GLsizei) ) LoadProcAddress("glNamedRenderbufferStorageMultisampleEXT");
  1807. glNamedStringARB = (void (*)(GLenum, GLint, const GLchar *, GLint, const GLchar *) ) LoadProcAddress("glNamedStringARB");
  1808. glObjectLabel = (void (*)(GLenum, GLuint, GLsizei, const GLchar *) ) LoadProcAddress("glObjectLabel");
  1809. glObjectLabelKHR = (void (*)(GLenum, GLuint, GLsizei, const GLchar *) ) LoadProcAddress("glObjectLabelKHR");
  1810. glObjectPtrLabel = (void (*)(const void *, GLsizei, const GLchar *) ) LoadProcAddress("glObjectPtrLabel");
  1811. glObjectPtrLabelKHR = (void (*)(const void *, GLsizei, const GLchar *) ) LoadProcAddress("glObjectPtrLabelKHR");
  1812. glPatchParameterfv = (void (*)(GLenum, const GLfloat *) ) LoadProcAddress("glPatchParameterfv");
  1813. glPatchParameteri = (void (*)(GLenum, GLint) ) LoadProcAddress("glPatchParameteri");
  1814. glPauseTransformFeedback = (void (*)() ) LoadProcAddress("glPauseTransformFeedback");
  1815. glPixelStoref = (void (*)(GLenum, GLfloat) ) LoadProcAddress("glPixelStoref");
  1816. glPixelStorei = (void (*)(GLenum, GLint) ) LoadProcAddress("glPixelStorei");
  1817. glPointParameterf = (void (*)(GLenum, GLfloat) ) LoadProcAddress("glPointParameterf");
  1818. glPointParameterfv = (void (*)(GLenum, const GLfloat *) ) LoadProcAddress("glPointParameterfv");
  1819. glPointParameteri = (void (*)(GLenum, GLint) ) LoadProcAddress("glPointParameteri");
  1820. glPointParameteriv = (void (*)(GLenum, const GLint *) ) LoadProcAddress("glPointParameteriv");
  1821. glPointSize = (void (*)(GLfloat) ) LoadProcAddress("glPointSize");
  1822. glPolygonMode = (void (*)(GLenum, GLenum) ) LoadProcAddress("glPolygonMode");
  1823. glPolygonOffset = (void (*)(GLfloat, GLfloat) ) LoadProcAddress("glPolygonOffset");
  1824. glPopDebugGroup = (void (*)() ) LoadProcAddress("glPopDebugGroup");
  1825. glPopDebugGroupKHR = (void (*)() ) LoadProcAddress("glPopDebugGroupKHR");
  1826. glPrimitiveRestartIndex = (void (*)(GLuint) ) LoadProcAddress("glPrimitiveRestartIndex");
  1827. glProgramBinary = (void (*)(GLuint, GLenum, const void *, GLsizei) ) LoadProcAddress("glProgramBinary");
  1828. glProgramParameteri = (void (*)(GLuint, GLenum, GLint) ) LoadProcAddress("glProgramParameteri");
  1829. glProgramUniform1d = (void (*)(GLuint, GLint, GLdouble) ) LoadProcAddress("glProgramUniform1d");
  1830. glProgramUniform1dEXT = (void (*)(GLuint, GLint, GLdouble) ) LoadProcAddress("glProgramUniform1dEXT");
  1831. glProgramUniform1dv = (void (*)(GLuint, GLint, GLsizei, const GLdouble *) ) LoadProcAddress("glProgramUniform1dv");
  1832. glProgramUniform1dvEXT = (void (*)(GLuint, GLint, GLsizei, const GLdouble *) ) LoadProcAddress("glProgramUniform1dvEXT");
  1833. glProgramUniform1f = (void (*)(GLuint, GLint, GLfloat) ) LoadProcAddress("glProgramUniform1f");
  1834. glProgramUniform1fEXT = (void (*)(GLuint, GLint, GLfloat) ) LoadProcAddress("glProgramUniform1fEXT");
  1835. glProgramUniform1fv = (void (*)(GLuint, GLint, GLsizei, const GLfloat *) ) LoadProcAddress("glProgramUniform1fv");
  1836. glProgramUniform1fvEXT = (void (*)(GLuint, GLint, GLsizei, const GLfloat *) ) LoadProcAddress("glProgramUniform1fvEXT");
  1837. glProgramUniform1i = (void (*)(GLuint, GLint, GLint) ) LoadProcAddress("glProgramUniform1i");
  1838. glProgramUniform1iEXT = (void (*)(GLuint, GLint, GLint) ) LoadProcAddress("glProgramUniform1iEXT");
  1839. glProgramUniform1iv = (void (*)(GLuint, GLint, GLsizei, const GLint *) ) LoadProcAddress("glProgramUniform1iv");
  1840. glProgramUniform1ivEXT = (void (*)(GLuint, GLint, GLsizei, const GLint *) ) LoadProcAddress("glProgramUniform1ivEXT");
  1841. glProgramUniform1ui = (void (*)(GLuint, GLint, GLuint) ) LoadProcAddress("glProgramUniform1ui");
  1842. glProgramUniform1uiEXT = (void (*)(GLuint, GLint, GLuint) ) LoadProcAddress("glProgramUniform1uiEXT");
  1843. glProgramUniform1uiv = (void (*)(GLuint, GLint, GLsizei, const GLuint *) ) LoadProcAddress("glProgramUniform1uiv");
  1844. glProgramUniform1uivEXT = (void (*)(GLuint, GLint, GLsizei, const GLuint *) ) LoadProcAddress("glProgramUniform1uivEXT");
  1845. glProgramUniform2d = (void (*)(GLuint, GLint, GLdouble, GLdouble) ) LoadProcAddress("glProgramUniform2d");
  1846. glProgramUniform2dEXT = (void (*)(GLuint, GLint, GLdouble, GLdouble) ) LoadProcAddress("glProgramUniform2dEXT");
  1847. glProgramUniform2dv = (void (*)(GLuint, GLint, GLsizei, const GLdouble *) ) LoadProcAddress("glProgramUniform2dv");
  1848. glProgramUniform2dvEXT = (void (*)(GLuint, GLint, GLsizei, const GLdouble *) ) LoadProcAddress("glProgramUniform2dvEXT");
  1849. glProgramUniform2f = (void (*)(GLuint, GLint, GLfloat, GLfloat) ) LoadProcAddress("glProgramUniform2f");
  1850. glProgramUniform2fEXT = (void (*)(GLuint, GLint, GLfloat, GLfloat) ) LoadProcAddress("glProgramUniform2fEXT");
  1851. glProgramUniform2fv = (void (*)(GLuint, GLint, GLsizei, const GLfloat *) ) LoadProcAddress("glProgramUniform2fv");
  1852. glProgramUniform2fvEXT = (void (*)(GLuint, GLint, GLsizei, const GLfloat *) ) LoadProcAddress("glProgramUniform2fvEXT");
  1853. glProgramUniform2i = (void (*)(GLuint, GLint, GLint, GLint) ) LoadProcAddress("glProgramUniform2i");
  1854. glProgramUniform2iEXT = (void (*)(GLuint, GLint, GLint, GLint) ) LoadProcAddress("glProgramUniform2iEXT");
  1855. glProgramUniform2iv = (void (*)(GLuint, GLint, GLsizei, const GLint *) ) LoadProcAddress("glProgramUniform2iv");
  1856. glProgramUniform2ivEXT = (void (*)(GLuint, GLint, GLsizei, const GLint *) ) LoadProcAddress("glProgramUniform2ivEXT");
  1857. glProgramUniform2ui = (void (*)(GLuint, GLint, GLuint, GLuint) ) LoadProcAddress("glProgramUniform2ui");
  1858. glProgramUniform2uiEXT = (void (*)(GLuint, GLint, GLuint, GLuint) ) LoadProcAddress("glProgramUniform2uiEXT");
  1859. glProgramUniform2uiv = (void (*)(GLuint, GLint, GLsizei, const GLuint *) ) LoadProcAddress("glProgramUniform2uiv");
  1860. glProgramUniform2uivEXT = (void (*)(GLuint, GLint, GLsizei, const GLuint *) ) LoadProcAddress("glProgramUniform2uivEXT");
  1861. glProgramUniform3d = (void (*)(GLuint, GLint, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glProgramUniform3d");
  1862. glProgramUniform3dEXT = (void (*)(GLuint, GLint, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glProgramUniform3dEXT");
  1863. glProgramUniform3dv = (void (*)(GLuint, GLint, GLsizei, const GLdouble *) ) LoadProcAddress("glProgramUniform3dv");
  1864. glProgramUniform3dvEXT = (void (*)(GLuint, GLint, GLsizei, const GLdouble *) ) LoadProcAddress("glProgramUniform3dvEXT");
  1865. glProgramUniform3f = (void (*)(GLuint, GLint, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glProgramUniform3f");
  1866. glProgramUniform3fEXT = (void (*)(GLuint, GLint, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glProgramUniform3fEXT");
  1867. glProgramUniform3fv = (void (*)(GLuint, GLint, GLsizei, const GLfloat *) ) LoadProcAddress("glProgramUniform3fv");
  1868. glProgramUniform3fvEXT = (void (*)(GLuint, GLint, GLsizei, const GLfloat *) ) LoadProcAddress("glProgramUniform3fvEXT");
  1869. glProgramUniform3i = (void (*)(GLuint, GLint, GLint, GLint, GLint) ) LoadProcAddress("glProgramUniform3i");
  1870. glProgramUniform3iEXT = (void (*)(GLuint, GLint, GLint, GLint, GLint) ) LoadProcAddress("glProgramUniform3iEXT");
  1871. glProgramUniform3iv = (void (*)(GLuint, GLint, GLsizei, const GLint *) ) LoadProcAddress("glProgramUniform3iv");
  1872. glProgramUniform3ivEXT = (void (*)(GLuint, GLint, GLsizei, const GLint *) ) LoadProcAddress("glProgramUniform3ivEXT");
  1873. glProgramUniform3ui = (void (*)(GLuint, GLint, GLuint, GLuint, GLuint) ) LoadProcAddress("glProgramUniform3ui");
  1874. glProgramUniform3uiEXT = (void (*)(GLuint, GLint, GLuint, GLuint, GLuint) ) LoadProcAddress("glProgramUniform3uiEXT");
  1875. glProgramUniform3uiv = (void (*)(GLuint, GLint, GLsizei, const GLuint *) ) LoadProcAddress("glProgramUniform3uiv");
  1876. glProgramUniform3uivEXT = (void (*)(GLuint, GLint, GLsizei, const GLuint *) ) LoadProcAddress("glProgramUniform3uivEXT");
  1877. glProgramUniform4d = (void (*)(GLuint, GLint, GLdouble, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glProgramUniform4d");
  1878. glProgramUniform4dEXT = (void (*)(GLuint, GLint, GLdouble, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glProgramUniform4dEXT");
  1879. glProgramUniform4dv = (void (*)(GLuint, GLint, GLsizei, const GLdouble *) ) LoadProcAddress("glProgramUniform4dv");
  1880. glProgramUniform4dvEXT = (void (*)(GLuint, GLint, GLsizei, const GLdouble *) ) LoadProcAddress("glProgramUniform4dvEXT");
  1881. glProgramUniform4f = (void (*)(GLuint, GLint, GLfloat, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glProgramUniform4f");
  1882. glProgramUniform4fEXT = (void (*)(GLuint, GLint, GLfloat, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glProgramUniform4fEXT");
  1883. glProgramUniform4fv = (void (*)(GLuint, GLint, GLsizei, const GLfloat *) ) LoadProcAddress("glProgramUniform4fv");
  1884. glProgramUniform4fvEXT = (void (*)(GLuint, GLint, GLsizei, const GLfloat *) ) LoadProcAddress("glProgramUniform4fvEXT");
  1885. glProgramUniform4i = (void (*)(GLuint, GLint, GLint, GLint, GLint, GLint) ) LoadProcAddress("glProgramUniform4i");
  1886. glProgramUniform4iEXT = (void (*)(GLuint, GLint, GLint, GLint, GLint, GLint) ) LoadProcAddress("glProgramUniform4iEXT");
  1887. glProgramUniform4iv = (void (*)(GLuint, GLint, GLsizei, const GLint *) ) LoadProcAddress("glProgramUniform4iv");
  1888. glProgramUniform4ivEXT = (void (*)(GLuint, GLint, GLsizei, const GLint *) ) LoadProcAddress("glProgramUniform4ivEXT");
  1889. glProgramUniform4ui = (void (*)(GLuint, GLint, GLuint, GLuint, GLuint, GLuint) ) LoadProcAddress("glProgramUniform4ui");
  1890. glProgramUniform4uiEXT = (void (*)(GLuint, GLint, GLuint, GLuint, GLuint, GLuint) ) LoadProcAddress("glProgramUniform4uiEXT");
  1891. glProgramUniform4uiv = (void (*)(GLuint, GLint, GLsizei, const GLuint *) ) LoadProcAddress("glProgramUniform4uiv");
  1892. glProgramUniform4uivEXT = (void (*)(GLuint, GLint, GLsizei, const GLuint *) ) LoadProcAddress("glProgramUniform4uivEXT");
  1893. glProgramUniformHandleui64ARB = (void (*)(GLuint, GLint, GLuint64) ) LoadProcAddress("glProgramUniformHandleui64ARB");
  1894. glProgramUniformHandleui64vARB = (void (*)(GLuint, GLint, GLsizei, const GLuint64 *) ) LoadProcAddress("glProgramUniformHandleui64vARB");
  1895. glProgramUniformMatrix2dv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix2dv");
  1896. glProgramUniformMatrix2dvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix2dvEXT");
  1897. glProgramUniformMatrix2fv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix2fv");
  1898. glProgramUniformMatrix2fvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix2fvEXT");
  1899. glProgramUniformMatrix2x3dv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix2x3dv");
  1900. glProgramUniformMatrix2x3dvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix2x3dvEXT");
  1901. glProgramUniformMatrix2x3fv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix2x3fv");
  1902. glProgramUniformMatrix2x3fvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix2x3fvEXT");
  1903. glProgramUniformMatrix2x4dv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix2x4dv");
  1904. glProgramUniformMatrix2x4dvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix2x4dvEXT");
  1905. glProgramUniformMatrix2x4fv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix2x4fv");
  1906. glProgramUniformMatrix2x4fvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix2x4fvEXT");
  1907. glProgramUniformMatrix3dv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix3dv");
  1908. glProgramUniformMatrix3dvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix3dvEXT");
  1909. glProgramUniformMatrix3fv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix3fv");
  1910. glProgramUniformMatrix3fvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix3fvEXT");
  1911. glProgramUniformMatrix3x2dv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix3x2dv");
  1912. glProgramUniformMatrix3x2dvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix3x2dvEXT");
  1913. glProgramUniformMatrix3x2fv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix3x2fv");
  1914. glProgramUniformMatrix3x2fvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix3x2fvEXT");
  1915. glProgramUniformMatrix3x4dv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix3x4dv");
  1916. glProgramUniformMatrix3x4dvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix3x4dvEXT");
  1917. glProgramUniformMatrix3x4fv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix3x4fv");
  1918. glProgramUniformMatrix3x4fvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix3x4fvEXT");
  1919. glProgramUniformMatrix4dv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix4dv");
  1920. glProgramUniformMatrix4dvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix4dvEXT");
  1921. glProgramUniformMatrix4fv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix4fv");
  1922. glProgramUniformMatrix4fvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix4fvEXT");
  1923. glProgramUniformMatrix4x2dv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix4x2dv");
  1924. glProgramUniformMatrix4x2dvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix4x2dvEXT");
  1925. glProgramUniformMatrix4x2fv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix4x2fv");
  1926. glProgramUniformMatrix4x2fvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix4x2fvEXT");
  1927. glProgramUniformMatrix4x3dv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix4x3dv");
  1928. glProgramUniformMatrix4x3dvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glProgramUniformMatrix4x3dvEXT");
  1929. glProgramUniformMatrix4x3fv = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix4x3fv");
  1930. glProgramUniformMatrix4x3fvEXT = (void (*)(GLuint, GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glProgramUniformMatrix4x3fvEXT");
  1931. glProvokingVertex = (void (*)(GLenum) ) LoadProcAddress("glProvokingVertex");
  1932. glPushClientAttribDefaultEXT = (void (*)(GLbitfield) ) LoadProcAddress("glPushClientAttribDefaultEXT");
  1933. glPushDebugGroup = (void (*)(GLenum, GLuint, GLsizei, const GLchar *) ) LoadProcAddress("glPushDebugGroup");
  1934. glPushDebugGroupKHR = (void (*)(GLenum, GLuint, GLsizei, const GLchar *) ) LoadProcAddress("glPushDebugGroupKHR");
  1935. glQueryCounter = (void (*)(GLuint, GLenum) ) LoadProcAddress("glQueryCounter");
  1936. glReadBuffer = (void (*)(GLenum) ) LoadProcAddress("glReadBuffer");
  1937. glReadPixels = (void (*)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, void *) ) LoadProcAddress("glReadPixels");
  1938. glReadnPixels = (void (*)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLsizei, void *) ) LoadProcAddress("glReadnPixels");
  1939. glReadnPixelsARB = (void (*)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLsizei, void *) ) LoadProcAddress("glReadnPixelsARB");
  1940. glReadnPixelsKHR = (void (*)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, GLsizei, void *) ) LoadProcAddress("glReadnPixelsKHR");
  1941. glReleaseShaderCompiler = (void (*)() ) LoadProcAddress("glReleaseShaderCompiler");
  1942. glRenderbufferStorage = (void (*)(GLenum, GLenum, GLsizei, GLsizei) ) LoadProcAddress("glRenderbufferStorage");
  1943. glRenderbufferStorageMultisample = (void (*)(GLenum, GLsizei, GLenum, GLsizei, GLsizei) ) LoadProcAddress("glRenderbufferStorageMultisample");
  1944. glResumeTransformFeedback = (void (*)() ) LoadProcAddress("glResumeTransformFeedback");
  1945. glSampleCoverage = (void (*)(GLfloat, GLboolean) ) LoadProcAddress("glSampleCoverage");
  1946. glSampleMaski = (void (*)(GLuint, GLbitfield) ) LoadProcAddress("glSampleMaski");
  1947. glSamplerParameterIiv = (void (*)(GLuint, GLenum, const GLint *) ) LoadProcAddress("glSamplerParameterIiv");
  1948. glSamplerParameterIuiv = (void (*)(GLuint, GLenum, const GLuint *) ) LoadProcAddress("glSamplerParameterIuiv");
  1949. glSamplerParameterf = (void (*)(GLuint, GLenum, GLfloat) ) LoadProcAddress("glSamplerParameterf");
  1950. glSamplerParameterfv = (void (*)(GLuint, GLenum, const GLfloat *) ) LoadProcAddress("glSamplerParameterfv");
  1951. glSamplerParameteri = (void (*)(GLuint, GLenum, GLint) ) LoadProcAddress("glSamplerParameteri");
  1952. glSamplerParameteriv = (void (*)(GLuint, GLenum, const GLint *) ) LoadProcAddress("glSamplerParameteriv");
  1953. glScissor = (void (*)(GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glScissor");
  1954. glScissorArrayv = (void (*)(GLuint, GLsizei, const GLint *) ) LoadProcAddress("glScissorArrayv");
  1955. glScissorIndexed = (void (*)(GLuint, GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glScissorIndexed");
  1956. glScissorIndexedv = (void (*)(GLuint, const GLint *) ) LoadProcAddress("glScissorIndexedv");
  1957. glShaderBinary = (void (*)(GLsizei, const GLuint *, GLenum, const void *, GLsizei) ) LoadProcAddress("glShaderBinary");
  1958. glShaderSource = (void (*)(GLuint, GLsizei, const GLchar *const*, const GLint *) ) LoadProcAddress("glShaderSource");
  1959. glShaderStorageBlockBinding = (void (*)(GLuint, GLuint, GLuint) ) LoadProcAddress("glShaderStorageBlockBinding");
  1960. glStencilFunc = (void (*)(GLenum, GLint, GLuint) ) LoadProcAddress("glStencilFunc");
  1961. glStencilFuncSeparate = (void (*)(GLenum, GLenum, GLint, GLuint) ) LoadProcAddress("glStencilFuncSeparate");
  1962. glStencilMask = (void (*)(GLuint) ) LoadProcAddress("glStencilMask");
  1963. glStencilMaskSeparate = (void (*)(GLenum, GLuint) ) LoadProcAddress("glStencilMaskSeparate");
  1964. glStencilOp = (void (*)(GLenum, GLenum, GLenum) ) LoadProcAddress("glStencilOp");
  1965. glStencilOpSeparate = (void (*)(GLenum, GLenum, GLenum, GLenum) ) LoadProcAddress("glStencilOpSeparate");
  1966. glTexBuffer = (void (*)(GLenum, GLenum, GLuint) ) LoadProcAddress("glTexBuffer");
  1967. glTexBufferRange = (void (*)(GLenum, GLenum, GLuint, GLintptr, GLsizeiptr) ) LoadProcAddress("glTexBufferRange");
  1968. glTexImage1D = (void (*)(GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, const void *) ) LoadProcAddress("glTexImage1D");
  1969. glTexImage2D = (void (*)(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *) ) LoadProcAddress("glTexImage2D");
  1970. glTexImage2DMultisample = (void (*)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLboolean) ) LoadProcAddress("glTexImage2DMultisample");
  1971. glTexImage3D = (void (*)(GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *) ) LoadProcAddress("glTexImage3D");
  1972. glTexImage3DMultisample = (void (*)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei, GLboolean) ) LoadProcAddress("glTexImage3DMultisample");
  1973. glTexPageCommitmentARB = (void (*)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLboolean) ) LoadProcAddress("glTexPageCommitmentARB");
  1974. glTexParameterIiv = (void (*)(GLenum, GLenum, const GLint *) ) LoadProcAddress("glTexParameterIiv");
  1975. glTexParameterIuiv = (void (*)(GLenum, GLenum, const GLuint *) ) LoadProcAddress("glTexParameterIuiv");
  1976. glTexParameterf = (void (*)(GLenum, GLenum, GLfloat) ) LoadProcAddress("glTexParameterf");
  1977. glTexParameterfv = (void (*)(GLenum, GLenum, const GLfloat *) ) LoadProcAddress("glTexParameterfv");
  1978. glTexParameteri = (void (*)(GLenum, GLenum, GLint) ) LoadProcAddress("glTexParameteri");
  1979. glTexParameteriv = (void (*)(GLenum, GLenum, const GLint *) ) LoadProcAddress("glTexParameteriv");
  1980. glTexStorage1D = (void (*)(GLenum, GLsizei, GLenum, GLsizei) ) LoadProcAddress("glTexStorage1D");
  1981. glTexStorage2D = (void (*)(GLenum, GLsizei, GLenum, GLsizei, GLsizei) ) LoadProcAddress("glTexStorage2D");
  1982. glTexStorage2DMultisample = (void (*)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLboolean) ) LoadProcAddress("glTexStorage2DMultisample");
  1983. glTexStorage3D = (void (*)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei) ) LoadProcAddress("glTexStorage3D");
  1984. glTexStorage3DMultisample = (void (*)(GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei, GLboolean) ) LoadProcAddress("glTexStorage3DMultisample");
  1985. glTexSubImage1D = (void (*)(GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glTexSubImage1D");
  1986. glTexSubImage2D = (void (*)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glTexSubImage2D");
  1987. glTexSubImage3D = (void (*)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glTexSubImage3D");
  1988. glTextureBarrier = (void (*)() ) LoadProcAddress("glTextureBarrier");
  1989. glTextureBuffer = (void (*)(GLuint, GLenum, GLuint) ) LoadProcAddress("glTextureBuffer");
  1990. glTextureBufferEXT = (void (*)(GLuint, GLenum, GLenum, GLuint) ) LoadProcAddress("glTextureBufferEXT");
  1991. glTextureBufferRange = (void (*)(GLuint, GLenum, GLuint, GLintptr, GLsizei) ) LoadProcAddress("glTextureBufferRange");
  1992. glTextureBufferRangeEXT = (void (*)(GLuint, GLenum, GLenum, GLuint, GLintptr, GLsizeiptr) ) LoadProcAddress("glTextureBufferRangeEXT");
  1993. glTextureImage1DEXT = (void (*)(GLuint, GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, const void *) ) LoadProcAddress("glTextureImage1DEXT");
  1994. glTextureImage2DEXT = (void (*)(GLuint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *) ) LoadProcAddress("glTextureImage2DEXT");
  1995. glTextureImage3DEXT = (void (*)(GLuint, GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *) ) LoadProcAddress("glTextureImage3DEXT");
  1996. glTexturePageCommitmentEXT = (void (*)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLboolean) ) LoadProcAddress("glTexturePageCommitmentEXT");
  1997. glTextureParameterIiv = (void (*)(GLuint, GLenum, const GLint *) ) LoadProcAddress("glTextureParameterIiv");
  1998. glTextureParameterIivEXT = (void (*)(GLuint, GLenum, GLenum, const GLint *) ) LoadProcAddress("glTextureParameterIivEXT");
  1999. glTextureParameterIuiv = (void (*)(GLuint, GLenum, const GLuint *) ) LoadProcAddress("glTextureParameterIuiv");
  2000. glTextureParameterIuivEXT = (void (*)(GLuint, GLenum, GLenum, const GLuint *) ) LoadProcAddress("glTextureParameterIuivEXT");
  2001. glTextureParameterf = (void (*)(GLuint, GLenum, GLfloat) ) LoadProcAddress("glTextureParameterf");
  2002. glTextureParameterfEXT = (void (*)(GLuint, GLenum, GLenum, GLfloat) ) LoadProcAddress("glTextureParameterfEXT");
  2003. glTextureParameterfv = (void (*)(GLuint, GLenum, const GLfloat *) ) LoadProcAddress("glTextureParameterfv");
  2004. glTextureParameterfvEXT = (void (*)(GLuint, GLenum, GLenum, const GLfloat *) ) LoadProcAddress("glTextureParameterfvEXT");
  2005. glTextureParameteri = (void (*)(GLuint, GLenum, GLint) ) LoadProcAddress("glTextureParameteri");
  2006. glTextureParameteriEXT = (void (*)(GLuint, GLenum, GLenum, GLint) ) LoadProcAddress("glTextureParameteriEXT");
  2007. glTextureParameteriv = (void (*)(GLuint, GLenum, const GLint *) ) LoadProcAddress("glTextureParameteriv");
  2008. glTextureParameterivEXT = (void (*)(GLuint, GLenum, GLenum, const GLint *) ) LoadProcAddress("glTextureParameterivEXT");
  2009. glTextureRenderbufferEXT = (void (*)(GLuint, GLenum, GLuint) ) LoadProcAddress("glTextureRenderbufferEXT");
  2010. glTextureStorage1D = (void (*)(GLuint, GLsizei, GLenum, GLsizei) ) LoadProcAddress("glTextureStorage1D");
  2011. glTextureStorage1DEXT = (void (*)(GLuint, GLenum, GLsizei, GLenum, GLsizei) ) LoadProcAddress("glTextureStorage1DEXT");
  2012. glTextureStorage2D = (void (*)(GLuint, GLsizei, GLenum, GLsizei, GLsizei) ) LoadProcAddress("glTextureStorage2D");
  2013. glTextureStorage2DEXT = (void (*)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei) ) LoadProcAddress("glTextureStorage2DEXT");
  2014. glTextureStorage2DMultisample = (void (*)(GLuint, GLsizei, GLenum, GLsizei, GLsizei, GLboolean) ) LoadProcAddress("glTextureStorage2DMultisample");
  2015. glTextureStorage2DMultisampleEXT = (void (*)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLboolean) ) LoadProcAddress("glTextureStorage2DMultisampleEXT");
  2016. glTextureStorage3D = (void (*)(GLuint, GLsizei, GLenum, GLsizei, GLsizei, GLsizei) ) LoadProcAddress("glTextureStorage3D");
  2017. glTextureStorage3DEXT = (void (*)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei) ) LoadProcAddress("glTextureStorage3DEXT");
  2018. glTextureStorage3DMultisample = (void (*)(GLuint, GLsizei, GLenum, GLsizei, GLsizei, GLsizei, GLboolean) ) LoadProcAddress("glTextureStorage3DMultisample");
  2019. glTextureStorage3DMultisampleEXT = (void (*)(GLuint, GLenum, GLsizei, GLenum, GLsizei, GLsizei, GLsizei, GLboolean) ) LoadProcAddress("glTextureStorage3DMultisampleEXT");
  2020. glTextureSubImage1D = (void (*)(GLuint, GLint, GLint, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glTextureSubImage1D");
  2021. glTextureSubImage1DEXT = (void (*)(GLuint, GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glTextureSubImage1DEXT");
  2022. glTextureSubImage2D = (void (*)(GLuint, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glTextureSubImage2D");
  2023. glTextureSubImage2DEXT = (void (*)(GLuint, GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glTextureSubImage2DEXT");
  2024. glTextureSubImage3D = (void (*)(GLuint, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glTextureSubImage3D");
  2025. glTextureSubImage3DEXT = (void (*)(GLuint, GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const void *) ) LoadProcAddress("glTextureSubImage3DEXT");
  2026. glTextureView = (void (*)(GLuint, GLenum, GLuint, GLenum, GLuint, GLuint, GLuint, GLuint) ) LoadProcAddress("glTextureView");
  2027. glTransformFeedbackBufferBase = (void (*)(GLuint, GLuint, GLuint) ) LoadProcAddress("glTransformFeedbackBufferBase");
  2028. glTransformFeedbackBufferRange = (void (*)(GLuint, GLuint, GLuint, GLintptr, GLsizei) ) LoadProcAddress("glTransformFeedbackBufferRange");
  2029. glTransformFeedbackVaryings = (void (*)(GLuint, GLsizei, const GLchar *const*, GLenum) ) LoadProcAddress("glTransformFeedbackVaryings");
  2030. glUniform1d = (void (*)(GLint, GLdouble) ) LoadProcAddress("glUniform1d");
  2031. glUniform1dv = (void (*)(GLint, GLsizei, const GLdouble *) ) LoadProcAddress("glUniform1dv");
  2032. glUniform1f = (void (*)(GLint, GLfloat) ) LoadProcAddress("glUniform1f");
  2033. glUniform1fv = (void (*)(GLint, GLsizei, const GLfloat *) ) LoadProcAddress("glUniform1fv");
  2034. glUniform1i = (void (*)(GLint, GLint) ) LoadProcAddress("glUniform1i");
  2035. glUniform1iv = (void (*)(GLint, GLsizei, const GLint *) ) LoadProcAddress("glUniform1iv");
  2036. glUniform1ui = (void (*)(GLint, GLuint) ) LoadProcAddress("glUniform1ui");
  2037. glUniform1uiv = (void (*)(GLint, GLsizei, const GLuint *) ) LoadProcAddress("glUniform1uiv");
  2038. glUniform2d = (void (*)(GLint, GLdouble, GLdouble) ) LoadProcAddress("glUniform2d");
  2039. glUniform2dv = (void (*)(GLint, GLsizei, const GLdouble *) ) LoadProcAddress("glUniform2dv");
  2040. glUniform2f = (void (*)(GLint, GLfloat, GLfloat) ) LoadProcAddress("glUniform2f");
  2041. glUniform2fv = (void (*)(GLint, GLsizei, const GLfloat *) ) LoadProcAddress("glUniform2fv");
  2042. glUniform2i = (void (*)(GLint, GLint, GLint) ) LoadProcAddress("glUniform2i");
  2043. glUniform2iv = (void (*)(GLint, GLsizei, const GLint *) ) LoadProcAddress("glUniform2iv");
  2044. glUniform2ui = (void (*)(GLint, GLuint, GLuint) ) LoadProcAddress("glUniform2ui");
  2045. glUniform2uiv = (void (*)(GLint, GLsizei, const GLuint *) ) LoadProcAddress("glUniform2uiv");
  2046. glUniform3d = (void (*)(GLint, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glUniform3d");
  2047. glUniform3dv = (void (*)(GLint, GLsizei, const GLdouble *) ) LoadProcAddress("glUniform3dv");
  2048. glUniform3f = (void (*)(GLint, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glUniform3f");
  2049. glUniform3fv = (void (*)(GLint, GLsizei, const GLfloat *) ) LoadProcAddress("glUniform3fv");
  2050. glUniform3i = (void (*)(GLint, GLint, GLint, GLint) ) LoadProcAddress("glUniform3i");
  2051. glUniform3iv = (void (*)(GLint, GLsizei, const GLint *) ) LoadProcAddress("glUniform3iv");
  2052. glUniform3ui = (void (*)(GLint, GLuint, GLuint, GLuint) ) LoadProcAddress("glUniform3ui");
  2053. glUniform3uiv = (void (*)(GLint, GLsizei, const GLuint *) ) LoadProcAddress("glUniform3uiv");
  2054. glUniform4d = (void (*)(GLint, GLdouble, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glUniform4d");
  2055. glUniform4dv = (void (*)(GLint, GLsizei, const GLdouble *) ) LoadProcAddress("glUniform4dv");
  2056. glUniform4f = (void (*)(GLint, GLfloat, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glUniform4f");
  2057. glUniform4fv = (void (*)(GLint, GLsizei, const GLfloat *) ) LoadProcAddress("glUniform4fv");
  2058. glUniform4i = (void (*)(GLint, GLint, GLint, GLint, GLint) ) LoadProcAddress("glUniform4i");
  2059. glUniform4iv = (void (*)(GLint, GLsizei, const GLint *) ) LoadProcAddress("glUniform4iv");
  2060. glUniform4ui = (void (*)(GLint, GLuint, GLuint, GLuint, GLuint) ) LoadProcAddress("glUniform4ui");
  2061. glUniform4uiv = (void (*)(GLint, GLsizei, const GLuint *) ) LoadProcAddress("glUniform4uiv");
  2062. glUniformBlockBinding = (void (*)(GLuint, GLuint, GLuint) ) LoadProcAddress("glUniformBlockBinding");
  2063. glUniformHandleui64ARB = (void (*)(GLint, GLuint64) ) LoadProcAddress("glUniformHandleui64ARB");
  2064. glUniformHandleui64vARB = (void (*)(GLint, GLsizei, const GLuint64 *) ) LoadProcAddress("glUniformHandleui64vARB");
  2065. glUniformMatrix2dv = (void (*)(GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glUniformMatrix2dv");
  2066. glUniformMatrix2fv = (void (*)(GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glUniformMatrix2fv");
  2067. glUniformMatrix2x3dv = (void (*)(GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glUniformMatrix2x3dv");
  2068. glUniformMatrix2x3fv = (void (*)(GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glUniformMatrix2x3fv");
  2069. glUniformMatrix2x4dv = (void (*)(GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glUniformMatrix2x4dv");
  2070. glUniformMatrix2x4fv = (void (*)(GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glUniformMatrix2x4fv");
  2071. glUniformMatrix3dv = (void (*)(GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glUniformMatrix3dv");
  2072. glUniformMatrix3fv = (void (*)(GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glUniformMatrix3fv");
  2073. glUniformMatrix3x2dv = (void (*)(GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glUniformMatrix3x2dv");
  2074. glUniformMatrix3x2fv = (void (*)(GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glUniformMatrix3x2fv");
  2075. glUniformMatrix3x4dv = (void (*)(GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glUniformMatrix3x4dv");
  2076. glUniformMatrix3x4fv = (void (*)(GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glUniformMatrix3x4fv");
  2077. glUniformMatrix4dv = (void (*)(GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glUniformMatrix4dv");
  2078. glUniformMatrix4fv = (void (*)(GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glUniformMatrix4fv");
  2079. glUniformMatrix4x2dv = (void (*)(GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glUniformMatrix4x2dv");
  2080. glUniformMatrix4x2fv = (void (*)(GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glUniformMatrix4x2fv");
  2081. glUniformMatrix4x3dv = (void (*)(GLint, GLsizei, GLboolean, const GLdouble *) ) LoadProcAddress("glUniformMatrix4x3dv");
  2082. glUniformMatrix4x3fv = (void (*)(GLint, GLsizei, GLboolean, const GLfloat *) ) LoadProcAddress("glUniformMatrix4x3fv");
  2083. glUniformSubroutinesuiv = (void (*)(GLenum, GLsizei, const GLuint *) ) LoadProcAddress("glUniformSubroutinesuiv");
  2084. glUnmapBuffer = (GLboolean (*)(GLenum) ) LoadProcAddress("glUnmapBuffer");
  2085. glUnmapNamedBuffer = (GLboolean (*)(GLuint) ) LoadProcAddress("glUnmapNamedBuffer");
  2086. glUnmapNamedBufferEXT = (GLboolean (*)(GLuint) ) LoadProcAddress("glUnmapNamedBufferEXT");
  2087. glUseProgram = (void (*)(GLuint) ) LoadProcAddress("glUseProgram");
  2088. glUseProgramStages = (void (*)(GLuint, GLbitfield, GLuint) ) LoadProcAddress("glUseProgramStages");
  2089. glValidateProgram = (void (*)(GLuint) ) LoadProcAddress("glValidateProgram");
  2090. glValidateProgramPipeline = (void (*)(GLuint) ) LoadProcAddress("glValidateProgramPipeline");
  2091. glVertexArrayAttribBinding = (void (*)(GLuint, GLuint, GLuint) ) LoadProcAddress("glVertexArrayAttribBinding");
  2092. glVertexArrayAttribFormat = (void (*)(GLuint, GLuint, GLint, GLenum, GLboolean, GLuint) ) LoadProcAddress("glVertexArrayAttribFormat");
  2093. glVertexArrayAttribIFormat = (void (*)(GLuint, GLuint, GLint, GLenum, GLuint) ) LoadProcAddress("glVertexArrayAttribIFormat");
  2094. glVertexArrayAttribLFormat = (void (*)(GLuint, GLuint, GLint, GLenum, GLuint) ) LoadProcAddress("glVertexArrayAttribLFormat");
  2095. glVertexArrayBindVertexBufferEXT = (void (*)(GLuint, GLuint, GLuint, GLintptr, GLsizei) ) LoadProcAddress("glVertexArrayBindVertexBufferEXT");
  2096. glVertexArrayBindingDivisor = (void (*)(GLuint, GLuint, GLuint) ) LoadProcAddress("glVertexArrayBindingDivisor");
  2097. glVertexArrayColorOffsetEXT = (void (*)(GLuint, GLuint, GLint, GLenum, GLsizei, GLintptr) ) LoadProcAddress("glVertexArrayColorOffsetEXT");
  2098. glVertexArrayEdgeFlagOffsetEXT = (void (*)(GLuint, GLuint, GLsizei, GLintptr) ) LoadProcAddress("glVertexArrayEdgeFlagOffsetEXT");
  2099. glVertexArrayElementBuffer = (void (*)(GLuint, GLuint) ) LoadProcAddress("glVertexArrayElementBuffer");
  2100. glVertexArrayFogCoordOffsetEXT = (void (*)(GLuint, GLuint, GLenum, GLsizei, GLintptr) ) LoadProcAddress("glVertexArrayFogCoordOffsetEXT");
  2101. glVertexArrayIndexOffsetEXT = (void (*)(GLuint, GLuint, GLenum, GLsizei, GLintptr) ) LoadProcAddress("glVertexArrayIndexOffsetEXT");
  2102. glVertexArrayMultiTexCoordOffsetEXT = (void (*)(GLuint, GLuint, GLenum, GLint, GLenum, GLsizei, GLintptr) ) LoadProcAddress("glVertexArrayMultiTexCoordOffsetEXT");
  2103. glVertexArrayNormalOffsetEXT = (void (*)(GLuint, GLuint, GLenum, GLsizei, GLintptr) ) LoadProcAddress("glVertexArrayNormalOffsetEXT");
  2104. glVertexArraySecondaryColorOffsetEXT = (void (*)(GLuint, GLuint, GLint, GLenum, GLsizei, GLintptr) ) LoadProcAddress("glVertexArraySecondaryColorOffsetEXT");
  2105. glVertexArrayTexCoordOffsetEXT = (void (*)(GLuint, GLuint, GLint, GLenum, GLsizei, GLintptr) ) LoadProcAddress("glVertexArrayTexCoordOffsetEXT");
  2106. glVertexArrayVertexAttribBindingEXT = (void (*)(GLuint, GLuint, GLuint) ) LoadProcAddress("glVertexArrayVertexAttribBindingEXT");
  2107. glVertexArrayVertexAttribDivisorEXT = (void (*)(GLuint, GLuint, GLuint) ) LoadProcAddress("glVertexArrayVertexAttribDivisorEXT");
  2108. glVertexArrayVertexAttribFormatEXT = (void (*)(GLuint, GLuint, GLint, GLenum, GLboolean, GLuint) ) LoadProcAddress("glVertexArrayVertexAttribFormatEXT");
  2109. glVertexArrayVertexAttribIFormatEXT = (void (*)(GLuint, GLuint, GLint, GLenum, GLuint) ) LoadProcAddress("glVertexArrayVertexAttribIFormatEXT");
  2110. glVertexArrayVertexAttribIOffsetEXT = (void (*)(GLuint, GLuint, GLuint, GLint, GLenum, GLsizei, GLintptr) ) LoadProcAddress("glVertexArrayVertexAttribIOffsetEXT");
  2111. glVertexArrayVertexAttribLFormatEXT = (void (*)(GLuint, GLuint, GLint, GLenum, GLuint) ) LoadProcAddress("glVertexArrayVertexAttribLFormatEXT");
  2112. glVertexArrayVertexAttribLOffsetEXT = (void (*)(GLuint, GLuint, GLuint, GLint, GLenum, GLsizei, GLintptr) ) LoadProcAddress("glVertexArrayVertexAttribLOffsetEXT");
  2113. glVertexArrayVertexAttribOffsetEXT = (void (*)(GLuint, GLuint, GLuint, GLint, GLenum, GLboolean, GLsizei, GLintptr) ) LoadProcAddress("glVertexArrayVertexAttribOffsetEXT");
  2114. glVertexArrayVertexBindingDivisorEXT = (void (*)(GLuint, GLuint, GLuint) ) LoadProcAddress("glVertexArrayVertexBindingDivisorEXT");
  2115. glVertexArrayVertexBuffer = (void (*)(GLuint, GLuint, GLuint, GLintptr, GLsizei) ) LoadProcAddress("glVertexArrayVertexBuffer");
  2116. glVertexArrayVertexBuffers = (void (*)(GLuint, GLuint, GLsizei, const GLuint *, const GLintptr *, const GLsizei *) ) LoadProcAddress("glVertexArrayVertexBuffers");
  2117. glVertexArrayVertexOffsetEXT = (void (*)(GLuint, GLuint, GLint, GLenum, GLsizei, GLintptr) ) LoadProcAddress("glVertexArrayVertexOffsetEXT");
  2118. glVertexAttrib1d = (void (*)(GLuint, GLdouble) ) LoadProcAddress("glVertexAttrib1d");
  2119. glVertexAttrib1dv = (void (*)(GLuint, const GLdouble *) ) LoadProcAddress("glVertexAttrib1dv");
  2120. glVertexAttrib1f = (void (*)(GLuint, GLfloat) ) LoadProcAddress("glVertexAttrib1f");
  2121. glVertexAttrib1fv = (void (*)(GLuint, const GLfloat *) ) LoadProcAddress("glVertexAttrib1fv");
  2122. glVertexAttrib1s = (void (*)(GLuint, GLshort) ) LoadProcAddress("glVertexAttrib1s");
  2123. glVertexAttrib1sv = (void (*)(GLuint, const GLshort *) ) LoadProcAddress("glVertexAttrib1sv");
  2124. glVertexAttrib2d = (void (*)(GLuint, GLdouble, GLdouble) ) LoadProcAddress("glVertexAttrib2d");
  2125. glVertexAttrib2dv = (void (*)(GLuint, const GLdouble *) ) LoadProcAddress("glVertexAttrib2dv");
  2126. glVertexAttrib2f = (void (*)(GLuint, GLfloat, GLfloat) ) LoadProcAddress("glVertexAttrib2f");
  2127. glVertexAttrib2fv = (void (*)(GLuint, const GLfloat *) ) LoadProcAddress("glVertexAttrib2fv");
  2128. glVertexAttrib2s = (void (*)(GLuint, GLshort, GLshort) ) LoadProcAddress("glVertexAttrib2s");
  2129. glVertexAttrib2sv = (void (*)(GLuint, const GLshort *) ) LoadProcAddress("glVertexAttrib2sv");
  2130. glVertexAttrib3d = (void (*)(GLuint, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glVertexAttrib3d");
  2131. glVertexAttrib3dv = (void (*)(GLuint, const GLdouble *) ) LoadProcAddress("glVertexAttrib3dv");
  2132. glVertexAttrib3f = (void (*)(GLuint, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glVertexAttrib3f");
  2133. glVertexAttrib3fv = (void (*)(GLuint, const GLfloat *) ) LoadProcAddress("glVertexAttrib3fv");
  2134. glVertexAttrib3s = (void (*)(GLuint, GLshort, GLshort, GLshort) ) LoadProcAddress("glVertexAttrib3s");
  2135. glVertexAttrib3sv = (void (*)(GLuint, const GLshort *) ) LoadProcAddress("glVertexAttrib3sv");
  2136. glVertexAttrib4Nbv = (void (*)(GLuint, const GLbyte *) ) LoadProcAddress("glVertexAttrib4Nbv");
  2137. glVertexAttrib4Niv = (void (*)(GLuint, const GLint *) ) LoadProcAddress("glVertexAttrib4Niv");
  2138. glVertexAttrib4Nsv = (void (*)(GLuint, const GLshort *) ) LoadProcAddress("glVertexAttrib4Nsv");
  2139. glVertexAttrib4Nub = (void (*)(GLuint, GLubyte, GLubyte, GLubyte, GLubyte) ) LoadProcAddress("glVertexAttrib4Nub");
  2140. glVertexAttrib4Nubv = (void (*)(GLuint, const GLubyte *) ) LoadProcAddress("glVertexAttrib4Nubv");
  2141. glVertexAttrib4Nuiv = (void (*)(GLuint, const GLuint *) ) LoadProcAddress("glVertexAttrib4Nuiv");
  2142. glVertexAttrib4Nusv = (void (*)(GLuint, const GLushort *) ) LoadProcAddress("glVertexAttrib4Nusv");
  2143. glVertexAttrib4bv = (void (*)(GLuint, const GLbyte *) ) LoadProcAddress("glVertexAttrib4bv");
  2144. glVertexAttrib4d = (void (*)(GLuint, GLdouble, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glVertexAttrib4d");
  2145. glVertexAttrib4dv = (void (*)(GLuint, const GLdouble *) ) LoadProcAddress("glVertexAttrib4dv");
  2146. glVertexAttrib4f = (void (*)(GLuint, GLfloat, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glVertexAttrib4f");
  2147. glVertexAttrib4fv = (void (*)(GLuint, const GLfloat *) ) LoadProcAddress("glVertexAttrib4fv");
  2148. glVertexAttrib4iv = (void (*)(GLuint, const GLint *) ) LoadProcAddress("glVertexAttrib4iv");
  2149. glVertexAttrib4s = (void (*)(GLuint, GLshort, GLshort, GLshort, GLshort) ) LoadProcAddress("glVertexAttrib4s");
  2150. glVertexAttrib4sv = (void (*)(GLuint, const GLshort *) ) LoadProcAddress("glVertexAttrib4sv");
  2151. glVertexAttrib4ubv = (void (*)(GLuint, const GLubyte *) ) LoadProcAddress("glVertexAttrib4ubv");
  2152. glVertexAttrib4uiv = (void (*)(GLuint, const GLuint *) ) LoadProcAddress("glVertexAttrib4uiv");
  2153. glVertexAttrib4usv = (void (*)(GLuint, const GLushort *) ) LoadProcAddress("glVertexAttrib4usv");
  2154. glVertexAttribBinding = (void (*)(GLuint, GLuint) ) LoadProcAddress("glVertexAttribBinding");
  2155. glVertexAttribDivisor = (void (*)(GLuint, GLuint) ) LoadProcAddress("glVertexAttribDivisor");
  2156. glVertexAttribFormat = (void (*)(GLuint, GLint, GLenum, GLboolean, GLuint) ) LoadProcAddress("glVertexAttribFormat");
  2157. glVertexAttribI1i = (void (*)(GLuint, GLint) ) LoadProcAddress("glVertexAttribI1i");
  2158. glVertexAttribI1iv = (void (*)(GLuint, const GLint *) ) LoadProcAddress("glVertexAttribI1iv");
  2159. glVertexAttribI1ui = (void (*)(GLuint, GLuint) ) LoadProcAddress("glVertexAttribI1ui");
  2160. glVertexAttribI1uiv = (void (*)(GLuint, const GLuint *) ) LoadProcAddress("glVertexAttribI1uiv");
  2161. glVertexAttribI2i = (void (*)(GLuint, GLint, GLint) ) LoadProcAddress("glVertexAttribI2i");
  2162. glVertexAttribI2iv = (void (*)(GLuint, const GLint *) ) LoadProcAddress("glVertexAttribI2iv");
  2163. glVertexAttribI2ui = (void (*)(GLuint, GLuint, GLuint) ) LoadProcAddress("glVertexAttribI2ui");
  2164. glVertexAttribI2uiv = (void (*)(GLuint, const GLuint *) ) LoadProcAddress("glVertexAttribI2uiv");
  2165. glVertexAttribI3i = (void (*)(GLuint, GLint, GLint, GLint) ) LoadProcAddress("glVertexAttribI3i");
  2166. glVertexAttribI3iv = (void (*)(GLuint, const GLint *) ) LoadProcAddress("glVertexAttribI3iv");
  2167. glVertexAttribI3ui = (void (*)(GLuint, GLuint, GLuint, GLuint) ) LoadProcAddress("glVertexAttribI3ui");
  2168. glVertexAttribI3uiv = (void (*)(GLuint, const GLuint *) ) LoadProcAddress("glVertexAttribI3uiv");
  2169. glVertexAttribI4bv = (void (*)(GLuint, const GLbyte *) ) LoadProcAddress("glVertexAttribI4bv");
  2170. glVertexAttribI4i = (void (*)(GLuint, GLint, GLint, GLint, GLint) ) LoadProcAddress("glVertexAttribI4i");
  2171. glVertexAttribI4iv = (void (*)(GLuint, const GLint *) ) LoadProcAddress("glVertexAttribI4iv");
  2172. glVertexAttribI4sv = (void (*)(GLuint, const GLshort *) ) LoadProcAddress("glVertexAttribI4sv");
  2173. glVertexAttribI4ubv = (void (*)(GLuint, const GLubyte *) ) LoadProcAddress("glVertexAttribI4ubv");
  2174. glVertexAttribI4ui = (void (*)(GLuint, GLuint, GLuint, GLuint, GLuint) ) LoadProcAddress("glVertexAttribI4ui");
  2175. glVertexAttribI4uiv = (void (*)(GLuint, const GLuint *) ) LoadProcAddress("glVertexAttribI4uiv");
  2176. glVertexAttribI4usv = (void (*)(GLuint, const GLushort *) ) LoadProcAddress("glVertexAttribI4usv");
  2177. glVertexAttribIFormat = (void (*)(GLuint, GLint, GLenum, GLuint) ) LoadProcAddress("glVertexAttribIFormat");
  2178. glVertexAttribIPointer = (void (*)(GLuint, GLint, GLenum, GLsizei, const void *) ) LoadProcAddress("glVertexAttribIPointer");
  2179. glVertexAttribL1d = (void (*)(GLuint, GLdouble) ) LoadProcAddress("glVertexAttribL1d");
  2180. glVertexAttribL1dv = (void (*)(GLuint, const GLdouble *) ) LoadProcAddress("glVertexAttribL1dv");
  2181. glVertexAttribL1ui64ARB = (void (*)(GLuint, GLuint64EXT) ) LoadProcAddress("glVertexAttribL1ui64ARB");
  2182. glVertexAttribL1ui64vARB = (void (*)(GLuint, const GLuint64EXT *) ) LoadProcAddress("glVertexAttribL1ui64vARB");
  2183. glVertexAttribL2d = (void (*)(GLuint, GLdouble, GLdouble) ) LoadProcAddress("glVertexAttribL2d");
  2184. glVertexAttribL2dv = (void (*)(GLuint, const GLdouble *) ) LoadProcAddress("glVertexAttribL2dv");
  2185. glVertexAttribL3d = (void (*)(GLuint, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glVertexAttribL3d");
  2186. glVertexAttribL3dv = (void (*)(GLuint, const GLdouble *) ) LoadProcAddress("glVertexAttribL3dv");
  2187. glVertexAttribL4d = (void (*)(GLuint, GLdouble, GLdouble, GLdouble, GLdouble) ) LoadProcAddress("glVertexAttribL4d");
  2188. glVertexAttribL4dv = (void (*)(GLuint, const GLdouble *) ) LoadProcAddress("glVertexAttribL4dv");
  2189. glVertexAttribLFormat = (void (*)(GLuint, GLint, GLenum, GLuint) ) LoadProcAddress("glVertexAttribLFormat");
  2190. glVertexAttribLPointer = (void (*)(GLuint, GLint, GLenum, GLsizei, const void *) ) LoadProcAddress("glVertexAttribLPointer");
  2191. glVertexAttribP1ui = (void (*)(GLuint, GLenum, GLboolean, GLuint) ) LoadProcAddress("glVertexAttribP1ui");
  2192. glVertexAttribP1uiv = (void (*)(GLuint, GLenum, GLboolean, const GLuint *) ) LoadProcAddress("glVertexAttribP1uiv");
  2193. glVertexAttribP2ui = (void (*)(GLuint, GLenum, GLboolean, GLuint) ) LoadProcAddress("glVertexAttribP2ui");
  2194. glVertexAttribP2uiv = (void (*)(GLuint, GLenum, GLboolean, const GLuint *) ) LoadProcAddress("glVertexAttribP2uiv");
  2195. glVertexAttribP3ui = (void (*)(GLuint, GLenum, GLboolean, GLuint) ) LoadProcAddress("glVertexAttribP3ui");
  2196. glVertexAttribP3uiv = (void (*)(GLuint, GLenum, GLboolean, const GLuint *) ) LoadProcAddress("glVertexAttribP3uiv");
  2197. glVertexAttribP4ui = (void (*)(GLuint, GLenum, GLboolean, GLuint) ) LoadProcAddress("glVertexAttribP4ui");
  2198. glVertexAttribP4uiv = (void (*)(GLuint, GLenum, GLboolean, const GLuint *) ) LoadProcAddress("glVertexAttribP4uiv");
  2199. glVertexAttribPointer = (void (*)(GLuint, GLint, GLenum, GLboolean, GLsizei, const void *) ) LoadProcAddress("glVertexAttribPointer");
  2200. glVertexBindingDivisor = (void (*)(GLuint, GLuint) ) LoadProcAddress("glVertexBindingDivisor");
  2201. glViewport = (void (*)(GLint, GLint, GLsizei, GLsizei) ) LoadProcAddress("glViewport");
  2202. glViewportArrayv = (void (*)(GLuint, GLsizei, const GLfloat *) ) LoadProcAddress("glViewportArrayv");
  2203. glViewportIndexedf = (void (*)(GLuint, GLfloat, GLfloat, GLfloat, GLfloat) ) LoadProcAddress("glViewportIndexedf");
  2204. glViewportIndexedfv = (void (*)(GLuint, const GLfloat *) ) LoadProcAddress("glViewportIndexedfv");
  2205. glWaitSync = (void (*)(GLsync, GLbitfield, GLuint64) ) LoadProcAddress("glWaitSync");
  2206. if (!glGetIntegerv || !glGetStringi) return false;
  2207. glGetIntegerv(GL_NUM_EXTENSIONS, &num_extensions);
  2208. glGetIntegerv(GL_MAJOR_VERSION, &actual_maj);
  2209. glGetIntegerv(GL_MINOR_VERSION, &actual_min);
  2210. actual_version = actual_maj * 10 + actual_min;
  2211. if (actual_version < req_version) return false;
  2212. for (i = 0; i < num_extensions; i++) {
  2213. const char *extname = (const char *)glGetStringi(GL_EXTENSIONS, i);
  2214. if (!strcmp(extname, "GL_ARB_ES2_compatibility")) {
  2215. GLPLATFORM_GL_ARB_ES2_compatibility = true;
  2216. continue;
  2217. }
  2218. if (!strcmp(extname, "GL_ARB_ES3_1_compatibility")) {
  2219. GLPLATFORM_GL_ARB_ES3_1_compatibility = true;
  2220. continue;
  2221. }
  2222. if (!strcmp(extname, "GL_ARB_ES3_compatibility")) {
  2223. GLPLATFORM_GL_ARB_ES3_compatibility = true;
  2224. continue;
  2225. }
  2226. if (!strcmp(extname, "GL_ARB_arrays_of_arrays")) {
  2227. GLPLATFORM_GL_ARB_arrays_of_arrays = true;
  2228. continue;
  2229. }
  2230. if (!strcmp(extname, "GL_ARB_base_instance")) {
  2231. GLPLATFORM_GL_ARB_base_instance = true;
  2232. continue;
  2233. }
  2234. if (!strcmp(extname, "GL_ARB_bindless_texture")) {
  2235. GLPLATFORM_GL_ARB_bindless_texture = true;
  2236. continue;
  2237. }
  2238. if (!strcmp(extname, "GL_ARB_blend_func_extended")) {
  2239. GLPLATFORM_GL_ARB_blend_func_extended = true;
  2240. continue;
  2241. }
  2242. if (!strcmp(extname, "GL_ARB_buffer_storage")) {
  2243. GLPLATFORM_GL_ARB_buffer_storage = true;
  2244. continue;
  2245. }
  2246. if (!strcmp(extname, "GL_ARB_cl_event")) {
  2247. GLPLATFORM_GL_ARB_cl_event = true;
  2248. continue;
  2249. }
  2250. if (!strcmp(extname, "GL_ARB_clear_buffer_object")) {
  2251. GLPLATFORM_GL_ARB_clear_buffer_object = true;
  2252. continue;
  2253. }
  2254. if (!strcmp(extname, "GL_ARB_clear_texture")) {
  2255. GLPLATFORM_GL_ARB_clear_texture = true;
  2256. continue;
  2257. }
  2258. if (!strcmp(extname, "GL_ARB_clip_control")) {
  2259. GLPLATFORM_GL_ARB_clip_control = true;
  2260. continue;
  2261. }
  2262. if (!strcmp(extname, "GL_ARB_compressed_texture_pixel_storage")) {
  2263. GLPLATFORM_GL_ARB_compressed_texture_pixel_storage = true;
  2264. continue;
  2265. }
  2266. if (!strcmp(extname, "GL_ARB_compute_shader")) {
  2267. GLPLATFORM_GL_ARB_compute_shader = true;
  2268. continue;
  2269. }
  2270. if (!strcmp(extname, "GL_ARB_compute_variable_group_size")) {
  2271. GLPLATFORM_GL_ARB_compute_variable_group_size = true;
  2272. continue;
  2273. }
  2274. if (!strcmp(extname, "GL_ARB_conditional_render_inverted")) {
  2275. GLPLATFORM_GL_ARB_conditional_render_inverted = true;
  2276. continue;
  2277. }
  2278. if (!strcmp(extname, "GL_ARB_conservative_depth")) {
  2279. GLPLATFORM_GL_ARB_conservative_depth = true;
  2280. continue;
  2281. }
  2282. if (!strcmp(extname, "GL_ARB_copy_buffer")) {
  2283. GLPLATFORM_GL_ARB_copy_buffer = true;
  2284. continue;
  2285. }
  2286. if (!strcmp(extname, "GL_ARB_copy_image")) {
  2287. GLPLATFORM_GL_ARB_copy_image = true;
  2288. continue;
  2289. }
  2290. if (!strcmp(extname, "GL_ARB_cull_distance")) {
  2291. GLPLATFORM_GL_ARB_cull_distance = true;
  2292. continue;
  2293. }
  2294. if (!strcmp(extname, "GL_ARB_debug_output")) {
  2295. GLPLATFORM_GL_ARB_debug_output = true;
  2296. continue;
  2297. }
  2298. if (!strcmp(extname, "GL_ARB_depth_buffer_float")) {
  2299. GLPLATFORM_GL_ARB_depth_buffer_float = true;
  2300. continue;
  2301. }
  2302. if (!strcmp(extname, "GL_ARB_depth_clamp")) {
  2303. GLPLATFORM_GL_ARB_depth_clamp = true;
  2304. continue;
  2305. }
  2306. if (!strcmp(extname, "GL_ARB_derivative_control")) {
  2307. GLPLATFORM_GL_ARB_derivative_control = true;
  2308. continue;
  2309. }
  2310. if (!strcmp(extname, "GL_ARB_direct_state_access")) {
  2311. GLPLATFORM_GL_ARB_direct_state_access = true;
  2312. continue;
  2313. }
  2314. if (!strcmp(extname, "GL_ARB_draw_buffers_blend")) {
  2315. GLPLATFORM_GL_ARB_draw_buffers_blend = true;
  2316. continue;
  2317. }
  2318. if (!strcmp(extname, "GL_ARB_draw_elements_base_vertex")) {
  2319. GLPLATFORM_GL_ARB_draw_elements_base_vertex = true;
  2320. continue;
  2321. }
  2322. if (!strcmp(extname, "GL_ARB_draw_indirect")) {
  2323. GLPLATFORM_GL_ARB_draw_indirect = true;
  2324. continue;
  2325. }
  2326. if (!strcmp(extname, "GL_ARB_enhanced_layouts")) {
  2327. GLPLATFORM_GL_ARB_enhanced_layouts = true;
  2328. continue;
  2329. }
  2330. if (!strcmp(extname, "GL_ARB_explicit_attrib_location")) {
  2331. GLPLATFORM_GL_ARB_explicit_attrib_location = true;
  2332. continue;
  2333. }
  2334. if (!strcmp(extname, "GL_ARB_explicit_uniform_location")) {
  2335. GLPLATFORM_GL_ARB_explicit_uniform_location = true;
  2336. continue;
  2337. }
  2338. if (!strcmp(extname, "GL_ARB_fragment_coord_conventions")) {
  2339. GLPLATFORM_GL_ARB_fragment_coord_conventions = true;
  2340. continue;
  2341. }
  2342. if (!strcmp(extname, "GL_ARB_fragment_layer_viewport")) {
  2343. GLPLATFORM_GL_ARB_fragment_layer_viewport = true;
  2344. continue;
  2345. }
  2346. if (!strcmp(extname, "GL_ARB_framebuffer_no_attachments")) {
  2347. GLPLATFORM_GL_ARB_framebuffer_no_attachments = true;
  2348. continue;
  2349. }
  2350. if (!strcmp(extname, "GL_ARB_framebuffer_object")) {
  2351. GLPLATFORM_GL_ARB_framebuffer_object = true;
  2352. continue;
  2353. }
  2354. if (!strcmp(extname, "GL_ARB_framebuffer_sRGB")) {
  2355. GLPLATFORM_GL_ARB_framebuffer_sRGB = true;
  2356. continue;
  2357. }
  2358. if (!strcmp(extname, "GL_ARB_get_program_binary")) {
  2359. GLPLATFORM_GL_ARB_get_program_binary = true;
  2360. continue;
  2361. }
  2362. if (!strcmp(extname, "GL_ARB_get_texture_sub_image")) {
  2363. GLPLATFORM_GL_ARB_get_texture_sub_image = true;
  2364. continue;
  2365. }
  2366. if (!strcmp(extname, "GL_ARB_gpu_shader5")) {
  2367. GLPLATFORM_GL_ARB_gpu_shader5 = true;
  2368. continue;
  2369. }
  2370. if (!strcmp(extname, "GL_ARB_gpu_shader_fp64")) {
  2371. GLPLATFORM_GL_ARB_gpu_shader_fp64 = true;
  2372. continue;
  2373. }
  2374. if (!strcmp(extname, "GL_ARB_half_float_vertex")) {
  2375. GLPLATFORM_GL_ARB_half_float_vertex = true;
  2376. continue;
  2377. }
  2378. if (!strcmp(extname, "GL_ARB_imaging")) {
  2379. GLPLATFORM_GL_ARB_imaging = true;
  2380. continue;
  2381. }
  2382. if (!strcmp(extname, "GL_ARB_indirect_parameters")) {
  2383. GLPLATFORM_GL_ARB_indirect_parameters = true;
  2384. continue;
  2385. }
  2386. if (!strcmp(extname, "GL_ARB_internalformat_query")) {
  2387. GLPLATFORM_GL_ARB_internalformat_query = true;
  2388. continue;
  2389. }
  2390. if (!strcmp(extname, "GL_ARB_internalformat_query2")) {
  2391. GLPLATFORM_GL_ARB_internalformat_query2 = true;
  2392. continue;
  2393. }
  2394. if (!strcmp(extname, "GL_ARB_invalidate_subdata")) {
  2395. GLPLATFORM_GL_ARB_invalidate_subdata = true;
  2396. continue;
  2397. }
  2398. if (!strcmp(extname, "GL_ARB_map_buffer_alignment")) {
  2399. GLPLATFORM_GL_ARB_map_buffer_alignment = true;
  2400. continue;
  2401. }
  2402. if (!strcmp(extname, "GL_ARB_map_buffer_range")) {
  2403. GLPLATFORM_GL_ARB_map_buffer_range = true;
  2404. continue;
  2405. }
  2406. if (!strcmp(extname, "GL_ARB_multi_bind")) {
  2407. GLPLATFORM_GL_ARB_multi_bind = true;
  2408. continue;
  2409. }
  2410. if (!strcmp(extname, "GL_ARB_multi_draw_indirect")) {
  2411. GLPLATFORM_GL_ARB_multi_draw_indirect = true;
  2412. continue;
  2413. }
  2414. if (!strcmp(extname, "GL_ARB_occlusion_query2")) {
  2415. GLPLATFORM_GL_ARB_occlusion_query2 = true;
  2416. continue;
  2417. }
  2418. if (!strcmp(extname, "GL_ARB_pipeline_statistics_query")) {
  2419. GLPLATFORM_GL_ARB_pipeline_statistics_query = true;
  2420. continue;
  2421. }
  2422. if (!strcmp(extname, "GL_ARB_program_interface_query")) {
  2423. GLPLATFORM_GL_ARB_program_interface_query = true;
  2424. continue;
  2425. }
  2426. if (!strcmp(extname, "GL_ARB_provoking_vertex")) {
  2427. GLPLATFORM_GL_ARB_provoking_vertex = true;
  2428. continue;
  2429. }
  2430. if (!strcmp(extname, "GL_ARB_query_buffer_object")) {
  2431. GLPLATFORM_GL_ARB_query_buffer_object = true;
  2432. continue;
  2433. }
  2434. if (!strcmp(extname, "GL_ARB_robust_buffer_access_behavior")) {
  2435. GLPLATFORM_GL_ARB_robust_buffer_access_behavior = true;
  2436. continue;
  2437. }
  2438. if (!strcmp(extname, "GL_ARB_robustness")) {
  2439. GLPLATFORM_GL_ARB_robustness = true;
  2440. continue;
  2441. }
  2442. if (!strcmp(extname, "GL_ARB_robustness_isolation")) {
  2443. GLPLATFORM_GL_ARB_robustness_isolation = true;
  2444. continue;
  2445. }
  2446. if (!strcmp(extname, "GL_ARB_sample_shading")) {
  2447. GLPLATFORM_GL_ARB_sample_shading = true;
  2448. continue;
  2449. }
  2450. if (!strcmp(extname, "GL_ARB_sampler_objects")) {
  2451. GLPLATFORM_GL_ARB_sampler_objects = true;
  2452. continue;
  2453. }
  2454. if (!strcmp(extname, "GL_ARB_seamless_cube_map")) {
  2455. GLPLATFORM_GL_ARB_seamless_cube_map = true;
  2456. continue;
  2457. }
  2458. if (!strcmp(extname, "GL_ARB_seamless_cubemap_per_texture")) {
  2459. GLPLATFORM_GL_ARB_seamless_cubemap_per_texture = true;
  2460. continue;
  2461. }
  2462. if (!strcmp(extname, "GL_ARB_separate_shader_objects")) {
  2463. GLPLATFORM_GL_ARB_separate_shader_objects = true;
  2464. continue;
  2465. }
  2466. if (!strcmp(extname, "GL_ARB_shader_atomic_counters")) {
  2467. GLPLATFORM_GL_ARB_shader_atomic_counters = true;
  2468. continue;
  2469. }
  2470. if (!strcmp(extname, "GL_ARB_shader_bit_encoding")) {
  2471. GLPLATFORM_GL_ARB_shader_bit_encoding = true;
  2472. continue;
  2473. }
  2474. if (!strcmp(extname, "GL_ARB_shader_draw_parameters")) {
  2475. GLPLATFORM_GL_ARB_shader_draw_parameters = true;
  2476. continue;
  2477. }
  2478. if (!strcmp(extname, "GL_ARB_shader_group_vote")) {
  2479. GLPLATFORM_GL_ARB_shader_group_vote = true;
  2480. continue;
  2481. }
  2482. if (!strcmp(extname, "GL_ARB_shader_image_load_store")) {
  2483. GLPLATFORM_GL_ARB_shader_image_load_store = true;
  2484. continue;
  2485. }
  2486. if (!strcmp(extname, "GL_ARB_shader_image_size")) {
  2487. GLPLATFORM_GL_ARB_shader_image_size = true;
  2488. continue;
  2489. }
  2490. if (!strcmp(extname, "GL_ARB_shader_precision")) {
  2491. GLPLATFORM_GL_ARB_shader_precision = true;
  2492. continue;
  2493. }
  2494. if (!strcmp(extname, "GL_ARB_shader_stencil_export")) {
  2495. GLPLATFORM_GL_ARB_shader_stencil_export = true;
  2496. continue;
  2497. }
  2498. if (!strcmp(extname, "GL_ARB_shader_storage_buffer_object")) {
  2499. GLPLATFORM_GL_ARB_shader_storage_buffer_object = true;
  2500. continue;
  2501. }
  2502. if (!strcmp(extname, "GL_ARB_shader_subroutine")) {
  2503. GLPLATFORM_GL_ARB_shader_subroutine = true;
  2504. continue;
  2505. }
  2506. if (!strcmp(extname, "GL_ARB_shader_texture_image_samples")) {
  2507. GLPLATFORM_GL_ARB_shader_texture_image_samples = true;
  2508. continue;
  2509. }
  2510. if (!strcmp(extname, "GL_ARB_shading_language_420pack")) {
  2511. GLPLATFORM_GL_ARB_shading_language_420pack = true;
  2512. continue;
  2513. }
  2514. if (!strcmp(extname, "GL_ARB_shading_language_include")) {
  2515. GLPLATFORM_GL_ARB_shading_language_include = true;
  2516. continue;
  2517. }
  2518. if (!strcmp(extname, "GL_ARB_shading_language_packing")) {
  2519. GLPLATFORM_GL_ARB_shading_language_packing = true;
  2520. continue;
  2521. }
  2522. if (!strcmp(extname, "GL_ARB_sparse_buffer")) {
  2523. GLPLATFORM_GL_ARB_sparse_buffer = true;
  2524. continue;
  2525. }
  2526. if (!strcmp(extname, "GL_ARB_sparse_texture")) {
  2527. GLPLATFORM_GL_ARB_sparse_texture = true;
  2528. continue;
  2529. }
  2530. if (!strcmp(extname, "GL_ARB_stencil_texturing")) {
  2531. GLPLATFORM_GL_ARB_stencil_texturing = true;
  2532. continue;
  2533. }
  2534. if (!strcmp(extname, "GL_ARB_sync")) {
  2535. GLPLATFORM_GL_ARB_sync = true;
  2536. continue;
  2537. }
  2538. if (!strcmp(extname, "GL_ARB_tessellation_shader")) {
  2539. GLPLATFORM_GL_ARB_tessellation_shader = true;
  2540. continue;
  2541. }
  2542. if (!strcmp(extname, "GL_ARB_texture_barrier")) {
  2543. GLPLATFORM_GL_ARB_texture_barrier = true;
  2544. continue;
  2545. }
  2546. if (!strcmp(extname, "GL_ARB_texture_buffer_object_rgb32")) {
  2547. GLPLATFORM_GL_ARB_texture_buffer_object_rgb32 = true;
  2548. continue;
  2549. }
  2550. if (!strcmp(extname, "GL_ARB_texture_buffer_range")) {
  2551. GLPLATFORM_GL_ARB_texture_buffer_range = true;
  2552. continue;
  2553. }
  2554. if (!strcmp(extname, "GL_ARB_texture_compression_bptc")) {
  2555. GLPLATFORM_GL_ARB_texture_compression_bptc = true;
  2556. continue;
  2557. }
  2558. if (!strcmp(extname, "GL_ARB_texture_compression_rgtc")) {
  2559. GLPLATFORM_GL_ARB_texture_compression_rgtc = true;
  2560. continue;
  2561. }
  2562. if (!strcmp(extname, "GL_ARB_texture_cube_map_array")) {
  2563. GLPLATFORM_GL_ARB_texture_cube_map_array = true;
  2564. continue;
  2565. }
  2566. if (!strcmp(extname, "GL_ARB_texture_gather")) {
  2567. GLPLATFORM_GL_ARB_texture_gather = true;
  2568. continue;
  2569. }
  2570. if (!strcmp(extname, "GL_ARB_texture_mirror_clamp_to_edge")) {
  2571. GLPLATFORM_GL_ARB_texture_mirror_clamp_to_edge = true;
  2572. continue;
  2573. }
  2574. if (!strcmp(extname, "GL_ARB_texture_multisample")) {
  2575. GLPLATFORM_GL_ARB_texture_multisample = true;
  2576. continue;
  2577. }
  2578. if (!strcmp(extname, "GL_ARB_texture_query_levels")) {
  2579. GLPLATFORM_GL_ARB_texture_query_levels = true;
  2580. continue;
  2581. }
  2582. if (!strcmp(extname, "GL_ARB_texture_query_lod")) {
  2583. GLPLATFORM_GL_ARB_texture_query_lod = true;
  2584. continue;
  2585. }
  2586. if (!strcmp(extname, "GL_ARB_texture_rg")) {
  2587. GLPLATFORM_GL_ARB_texture_rg = true;
  2588. continue;
  2589. }
  2590. if (!strcmp(extname, "GL_ARB_texture_rgb10_a2ui")) {
  2591. GLPLATFORM_GL_ARB_texture_rgb10_a2ui = true;
  2592. continue;
  2593. }
  2594. if (!strcmp(extname, "GL_ARB_texture_stencil8")) {
  2595. GLPLATFORM_GL_ARB_texture_stencil8 = true;
  2596. continue;
  2597. }
  2598. if (!strcmp(extname, "GL_ARB_texture_storage")) {
  2599. GLPLATFORM_GL_ARB_texture_storage = true;
  2600. continue;
  2601. }
  2602. if (!strcmp(extname, "GL_ARB_texture_storage_multisample")) {
  2603. GLPLATFORM_GL_ARB_texture_storage_multisample = true;
  2604. continue;
  2605. }
  2606. if (!strcmp(extname, "GL_ARB_texture_swizzle")) {
  2607. GLPLATFORM_GL_ARB_texture_swizzle = true;
  2608. continue;
  2609. }
  2610. if (!strcmp(extname, "GL_ARB_texture_view")) {
  2611. GLPLATFORM_GL_ARB_texture_view = true;
  2612. continue;
  2613. }
  2614. if (!strcmp(extname, "GL_ARB_timer_query")) {
  2615. GLPLATFORM_GL_ARB_timer_query = true;
  2616. continue;
  2617. }
  2618. if (!strcmp(extname, "GL_ARB_transform_feedback2")) {
  2619. GLPLATFORM_GL_ARB_transform_feedback2 = true;
  2620. continue;
  2621. }
  2622. if (!strcmp(extname, "GL_ARB_transform_feedback3")) {
  2623. GLPLATFORM_GL_ARB_transform_feedback3 = true;
  2624. continue;
  2625. }
  2626. if (!strcmp(extname, "GL_ARB_transform_feedback_instanced")) {
  2627. GLPLATFORM_GL_ARB_transform_feedback_instanced = true;
  2628. continue;
  2629. }
  2630. if (!strcmp(extname, "GL_ARB_transform_feedback_overflow_query")) {
  2631. GLPLATFORM_GL_ARB_transform_feedback_overflow_query = true;
  2632. continue;
  2633. }
  2634. if (!strcmp(extname, "GL_ARB_uniform_buffer_object")) {
  2635. GLPLATFORM_GL_ARB_uniform_buffer_object = true;
  2636. continue;
  2637. }
  2638. if (!strcmp(extname, "GL_ARB_vertex_array_bgra")) {
  2639. GLPLATFORM_GL_ARB_vertex_array_bgra = true;
  2640. continue;
  2641. }
  2642. if (!strcmp(extname, "GL_ARB_vertex_array_object")) {
  2643. GLPLATFORM_GL_ARB_vertex_array_object = true;
  2644. continue;
  2645. }
  2646. if (!strcmp(extname, "GL_ARB_vertex_attrib_64bit")) {
  2647. GLPLATFORM_GL_ARB_vertex_attrib_64bit = true;
  2648. continue;
  2649. }
  2650. if (!strcmp(extname, "GL_ARB_vertex_attrib_binding")) {
  2651. GLPLATFORM_GL_ARB_vertex_attrib_binding = true;
  2652. continue;
  2653. }
  2654. if (!strcmp(extname, "GL_ARB_vertex_type_10f_11f_11f_rev")) {
  2655. GLPLATFORM_GL_ARB_vertex_type_10f_11f_11f_rev = true;
  2656. continue;
  2657. }
  2658. if (!strcmp(extname, "GL_ARB_vertex_type_2_10_10_10_rev")) {
  2659. GLPLATFORM_GL_ARB_vertex_type_2_10_10_10_rev = true;
  2660. continue;
  2661. }
  2662. if (!strcmp(extname, "GL_ARB_viewport_array")) {
  2663. GLPLATFORM_GL_ARB_viewport_array = true;
  2664. continue;
  2665. }
  2666. if (!strcmp(extname, "GL_EXT_direct_state_access")) {
  2667. GLPLATFORM_GL_EXT_direct_state_access = true;
  2668. continue;
  2669. }
  2670. if (!strcmp(extname, "GL_KHR_context_flush_control")) {
  2671. GLPLATFORM_GL_KHR_context_flush_control = true;
  2672. continue;
  2673. }
  2674. if (!strcmp(extname, "GL_KHR_debug")) {
  2675. GLPLATFORM_GL_KHR_debug = true;
  2676. continue;
  2677. }
  2678. if (!strcmp(extname, "GL_KHR_robust_buffer_access_behavior")) {
  2679. GLPLATFORM_GL_KHR_robust_buffer_access_behavior = true;
  2680. continue;
  2681. }
  2682. if (!strcmp(extname, "GL_KHR_robustness")) {
  2683. GLPLATFORM_GL_KHR_robustness = true;
  2684. continue;
  2685. }
  2686. if (!strcmp(extname, "GL_KHR_texture_compression_astc_hdr")) {
  2687. GLPLATFORM_GL_KHR_texture_compression_astc_hdr = true;
  2688. continue;
  2689. }
  2690. if (!strcmp(extname, "GL_KHR_texture_compression_astc_ldr")) {
  2691. GLPLATFORM_GL_KHR_texture_compression_astc_ldr = true;
  2692. continue;
  2693. }
  2694. }
  2695. GLPLATFORM_GL_ARB_ES2_compatibility = GLPLATFORM_GL_ARB_ES2_compatibility && glClearDepthf && glDepthRangef
  2696. && glGetShaderPrecisionFormat && glReleaseShaderCompiler && glShaderBinary;
  2697. GLPLATFORM_GL_ARB_ES3_1_compatibility = GLPLATFORM_GL_ARB_ES3_1_compatibility && glMemoryBarrierByRegion;
  2698. GLPLATFORM_GL_ARB_base_instance = GLPLATFORM_GL_ARB_base_instance && glDrawArraysInstancedBaseInstance && glDrawElementsInstancedBaseInstance
  2699. && glDrawElementsInstancedBaseVertexBaseInstance;
  2700. GLPLATFORM_GL_ARB_bindless_texture = GLPLATFORM_GL_ARB_bindless_texture && glGetImageHandleARB && glGetTextureHandleARB
  2701. && glGetTextureSamplerHandleARB && glGetVertexAttribLui64vARB && glIsImageHandleResidentARB
  2702. && glIsTextureHandleResidentARB && glMakeImageHandleNonResidentARB && glMakeImageHandleResidentARB
  2703. && glMakeTextureHandleNonResidentARB && glMakeTextureHandleResidentARB && glProgramUniformHandleui64ARB
  2704. && glProgramUniformHandleui64vARB && glUniformHandleui64ARB && glUniformHandleui64vARB
  2705. && glVertexAttribL1ui64ARB && glVertexAttribL1ui64vARB;
  2706. GLPLATFORM_GL_ARB_blend_func_extended = GLPLATFORM_GL_ARB_blend_func_extended && glBindFragDataLocationIndexed && glGetFragDataIndex;
  2707. GLPLATFORM_GL_ARB_buffer_storage = GLPLATFORM_GL_ARB_buffer_storage && glBufferStorage;
  2708. GLPLATFORM_GL_ARB_cl_event = GLPLATFORM_GL_ARB_cl_event && glCreateSyncFromCLeventARB;
  2709. GLPLATFORM_GL_ARB_clear_buffer_object = GLPLATFORM_GL_ARB_clear_buffer_object && glClearBufferData && glClearBufferSubData;
  2710. GLPLATFORM_GL_ARB_clear_texture = GLPLATFORM_GL_ARB_clear_texture && glClearTexImage && glClearTexSubImage;
  2711. GLPLATFORM_GL_ARB_clip_control = GLPLATFORM_GL_ARB_clip_control && glClipControl;
  2712. GLPLATFORM_GL_ARB_compute_shader = GLPLATFORM_GL_ARB_compute_shader && glDispatchCompute && glDispatchComputeIndirect;
  2713. GLPLATFORM_GL_ARB_compute_variable_group_size = GLPLATFORM_GL_ARB_compute_variable_group_size && glDispatchComputeGroupSizeARB;
  2714. GLPLATFORM_GL_ARB_copy_buffer = GLPLATFORM_GL_ARB_copy_buffer && glCopyBufferSubData;
  2715. GLPLATFORM_GL_ARB_copy_image = GLPLATFORM_GL_ARB_copy_image && glCopyImageSubData;
  2716. GLPLATFORM_GL_ARB_debug_output = GLPLATFORM_GL_ARB_debug_output && glDebugMessageCallbackARB && glDebugMessageControlARB
  2717. && glDebugMessageInsertARB && glGetDebugMessageLogARB;
  2718. GLPLATFORM_GL_ARB_direct_state_access = GLPLATFORM_GL_ARB_direct_state_access && glBindTextureUnit && glBlitNamedFramebuffer
  2719. && glCheckNamedFramebufferStatus && glClearNamedBufferData && glClearNamedBufferSubData
  2720. && glClearNamedFramebufferfi && glClearNamedFramebufferfv && glClearNamedFramebufferiv
  2721. && glClearNamedFramebufferuiv && glCompressedTextureSubImage1D && glCompressedTextureSubImage2D
  2722. && glCompressedTextureSubImage3D && glCopyNamedBufferSubData && glCopyTextureSubImage1D
  2723. && glCopyTextureSubImage2D && glCopyTextureSubImage3D && glCreateBuffers
  2724. && glCreateFramebuffers && glCreateProgramPipelines && glCreateQueries
  2725. && glCreateRenderbuffers && glCreateSamplers && glCreateTextures
  2726. && glCreateTransformFeedbacks && glCreateVertexArrays && glDisableVertexArrayAttrib
  2727. && glEnableVertexArrayAttrib && glFlushMappedNamedBufferRange && glGenerateTextureMipmap
  2728. && glGetCompressedTextureImage && glGetNamedBufferParameteri64v && glGetNamedBufferParameteriv
  2729. && glGetNamedBufferPointerv && glGetNamedBufferSubData && glGetNamedFramebufferAttachmentParameteriv
  2730. && glGetNamedFramebufferParameteriv && glGetNamedRenderbufferParameteriv && glGetQueryBufferObjecti64v
  2731. && glGetQueryBufferObjectiv && glGetQueryBufferObjectui64v && glGetQueryBufferObjectuiv
  2732. && glGetTextureImage && glGetTextureLevelParameterfv && glGetTextureLevelParameteriv
  2733. && glGetTextureParameterIiv && glGetTextureParameterIuiv && glGetTextureParameterfv
  2734. && glGetTextureParameteriv && glGetTransformFeedbacki64_v && glGetTransformFeedbacki_v
  2735. && glGetTransformFeedbackiv && glGetVertexArrayIndexed64iv && glGetVertexArrayIndexediv
  2736. && glGetVertexArrayiv && glInvalidateNamedFramebufferData && glInvalidateNamedFramebufferSubData
  2737. && glMapNamedBuffer && glMapNamedBufferRange && glNamedBufferData
  2738. && glNamedBufferStorage && glNamedBufferSubData && glNamedFramebufferDrawBuffer
  2739. && glNamedFramebufferDrawBuffers && glNamedFramebufferParameteri && glNamedFramebufferReadBuffer
  2740. && glNamedFramebufferRenderbuffer && glNamedFramebufferTexture && glNamedFramebufferTextureLayer
  2741. && glNamedRenderbufferStorage && glNamedRenderbufferStorageMultisample && glTextureBuffer
  2742. && glTextureBufferRange && glTextureParameterIiv && glTextureParameterIuiv
  2743. && glTextureParameterf && glTextureParameterfv && glTextureParameteri
  2744. && glTextureParameteriv && glTextureStorage1D && glTextureStorage2D
  2745. && glTextureStorage2DMultisample && glTextureStorage3D && glTextureStorage3DMultisample
  2746. && glTextureSubImage1D && glTextureSubImage2D && glTextureSubImage3D
  2747. && glTransformFeedbackBufferBase && glTransformFeedbackBufferRange && glUnmapNamedBuffer
  2748. && glVertexArrayAttribBinding && glVertexArrayAttribFormat && glVertexArrayAttribIFormat
  2749. && glVertexArrayAttribLFormat && glVertexArrayBindingDivisor && glVertexArrayElementBuffer
  2750. && glVertexArrayVertexBuffer && glVertexArrayVertexBuffers;
  2751. GLPLATFORM_GL_ARB_draw_buffers_blend = GLPLATFORM_GL_ARB_draw_buffers_blend && glBlendEquationSeparateiARB && glBlendEquationiARB
  2752. && glBlendFuncSeparateiARB && glBlendFunciARB;
  2753. GLPLATFORM_GL_ARB_draw_elements_base_vertex = GLPLATFORM_GL_ARB_draw_elements_base_vertex && glDrawElementsBaseVertex && glDrawElementsInstancedBaseVertex
  2754. && glDrawRangeElementsBaseVertex && glMultiDrawElementsBaseVertex;
  2755. GLPLATFORM_GL_ARB_draw_indirect = GLPLATFORM_GL_ARB_draw_indirect && glDrawArraysIndirect && glDrawElementsIndirect;
  2756. GLPLATFORM_GL_ARB_framebuffer_no_attachments = GLPLATFORM_GL_ARB_framebuffer_no_attachments && glFramebufferParameteri && glGetFramebufferParameteriv;
  2757. GLPLATFORM_GL_ARB_framebuffer_object = GLPLATFORM_GL_ARB_framebuffer_object && glBindFramebuffer && glBindRenderbuffer
  2758. && glBlitFramebuffer && glCheckFramebufferStatus && glDeleteFramebuffers
  2759. && glDeleteRenderbuffers && glFramebufferRenderbuffer && glFramebufferTexture1D
  2760. && glFramebufferTexture2D && glFramebufferTexture3D && glFramebufferTextureLayer
  2761. && glGenFramebuffers && glGenRenderbuffers && glGenerateMipmap
  2762. && glGetFramebufferAttachmentParameteriv && glGetRenderbufferParameteriv && glIsFramebuffer
  2763. && glIsRenderbuffer && glRenderbufferStorage && glRenderbufferStorageMultisample;
  2764. GLPLATFORM_GL_ARB_get_program_binary = GLPLATFORM_GL_ARB_get_program_binary && glGetProgramBinary && glProgramBinary
  2765. && glProgramParameteri;
  2766. GLPLATFORM_GL_ARB_get_texture_sub_image = GLPLATFORM_GL_ARB_get_texture_sub_image && glGetCompressedTextureSubImage && glGetTextureSubImage;
  2767. GLPLATFORM_GL_ARB_gpu_shader_fp64 = GLPLATFORM_GL_ARB_gpu_shader_fp64 && glGetUniformdv && glUniform1d
  2768. && glUniform1dv && glUniform2d && glUniform2dv
  2769. && glUniform3d && glUniform3dv && glUniform4d
  2770. && glUniform4dv && glUniformMatrix2dv && glUniformMatrix2x3dv
  2771. && glUniformMatrix2x4dv && glUniformMatrix3dv && glUniformMatrix3x2dv
  2772. && glUniformMatrix3x4dv && glUniformMatrix4dv && glUniformMatrix4x2dv
  2773. && glUniformMatrix4x3dv;
  2774. GLPLATFORM_GL_ARB_imaging = GLPLATFORM_GL_ARB_imaging && glBlendColor && glBlendEquation;
  2775. GLPLATFORM_GL_ARB_indirect_parameters = GLPLATFORM_GL_ARB_indirect_parameters && glMultiDrawArraysIndirectCountARB && glMultiDrawElementsIndirectCountARB;
  2776. GLPLATFORM_GL_ARB_internalformat_query = GLPLATFORM_GL_ARB_internalformat_query && glGetInternalformativ;
  2777. GLPLATFORM_GL_ARB_internalformat_query2 = GLPLATFORM_GL_ARB_internalformat_query2 && glGetInternalformati64v;
  2778. GLPLATFORM_GL_ARB_invalidate_subdata = GLPLATFORM_GL_ARB_invalidate_subdata && glInvalidateBufferData && glInvalidateBufferSubData
  2779. && glInvalidateFramebuffer && glInvalidateSubFramebuffer && glInvalidateTexImage
  2780. && glInvalidateTexSubImage;
  2781. GLPLATFORM_GL_ARB_map_buffer_range = GLPLATFORM_GL_ARB_map_buffer_range && glFlushMappedBufferRange && glMapBufferRange;
  2782. GLPLATFORM_GL_ARB_multi_bind = GLPLATFORM_GL_ARB_multi_bind && glBindBuffersBase && glBindBuffersRange
  2783. && glBindImageTextures && glBindSamplers && glBindTextures
  2784. && glBindVertexBuffers;
  2785. GLPLATFORM_GL_ARB_multi_draw_indirect = GLPLATFORM_GL_ARB_multi_draw_indirect && glMultiDrawArraysIndirect && glMultiDrawElementsIndirect;
  2786. GLPLATFORM_GL_ARB_program_interface_query = GLPLATFORM_GL_ARB_program_interface_query && glGetProgramInterfaceiv && glGetProgramResourceIndex
  2787. && glGetProgramResourceLocation && glGetProgramResourceLocationIndex && glGetProgramResourceName
  2788. && glGetProgramResourceiv;
  2789. GLPLATFORM_GL_ARB_provoking_vertex = GLPLATFORM_GL_ARB_provoking_vertex && glProvokingVertex;
  2790. GLPLATFORM_GL_ARB_robustness = GLPLATFORM_GL_ARB_robustness && glGetGraphicsResetStatusARB && glGetnCompressedTexImageARB
  2791. && glGetnTexImageARB && glGetnUniformdvARB && glGetnUniformfvARB
  2792. && glGetnUniformivARB && glGetnUniformuivARB && glReadnPixelsARB;
  2793. GLPLATFORM_GL_ARB_sample_shading = GLPLATFORM_GL_ARB_sample_shading && glMinSampleShadingARB;
  2794. GLPLATFORM_GL_ARB_sampler_objects = GLPLATFORM_GL_ARB_sampler_objects && glBindSampler && glDeleteSamplers
  2795. && glGenSamplers && glGetSamplerParameterIiv && glGetSamplerParameterIuiv
  2796. && glGetSamplerParameterfv && glGetSamplerParameteriv && glIsSampler
  2797. && glSamplerParameterIiv && glSamplerParameterIuiv && glSamplerParameterf
  2798. && glSamplerParameterfv && glSamplerParameteri && glSamplerParameteriv;
  2799. GLPLATFORM_GL_ARB_separate_shader_objects = GLPLATFORM_GL_ARB_separate_shader_objects && glActiveShaderProgram && glBindProgramPipeline
  2800. && glCreateShaderProgramv && glDeleteProgramPipelines && glGenProgramPipelines
  2801. && glGetProgramPipelineInfoLog && glGetProgramPipelineiv && glIsProgramPipeline
  2802. && glProgramUniform1d && glProgramUniform1dv && glProgramUniform1f
  2803. && glProgramUniform1fv && glProgramUniform1i && glProgramUniform1iv
  2804. && glProgramUniform1ui && glProgramUniform1uiv && glProgramUniform2d
  2805. && glProgramUniform2dv && glProgramUniform2f && glProgramUniform2fv
  2806. && glProgramUniform2i && glProgramUniform2iv && glProgramUniform2ui
  2807. && glProgramUniform2uiv && glProgramUniform3d && glProgramUniform3dv
  2808. && glProgramUniform3f && glProgramUniform3fv && glProgramUniform3i
  2809. && glProgramUniform3iv && glProgramUniform3ui && glProgramUniform3uiv
  2810. && glProgramUniform4d && glProgramUniform4dv && glProgramUniform4f
  2811. && glProgramUniform4fv && glProgramUniform4i && glProgramUniform4iv
  2812. && glProgramUniform4ui && glProgramUniform4uiv && glProgramUniformMatrix2dv
  2813. && glProgramUniformMatrix2fv && glProgramUniformMatrix2x3dv && glProgramUniformMatrix2x3fv
  2814. && glProgramUniformMatrix2x4dv && glProgramUniformMatrix2x4fv && glProgramUniformMatrix3dv
  2815. && glProgramUniformMatrix3fv && glProgramUniformMatrix3x2dv && glProgramUniformMatrix3x2fv
  2816. && glProgramUniformMatrix3x4dv && glProgramUniformMatrix3x4fv && glProgramUniformMatrix4dv
  2817. && glProgramUniformMatrix4fv && glProgramUniformMatrix4x2dv && glProgramUniformMatrix4x2fv
  2818. && glProgramUniformMatrix4x3dv && glProgramUniformMatrix4x3fv && glUseProgramStages
  2819. && glValidateProgramPipeline;
  2820. GLPLATFORM_GL_ARB_shader_atomic_counters = GLPLATFORM_GL_ARB_shader_atomic_counters && glGetActiveAtomicCounterBufferiv;
  2821. GLPLATFORM_GL_ARB_shader_image_load_store = GLPLATFORM_GL_ARB_shader_image_load_store && glBindImageTexture && glMemoryBarrier;
  2822. GLPLATFORM_GL_ARB_shader_storage_buffer_object = GLPLATFORM_GL_ARB_shader_storage_buffer_object && glShaderStorageBlockBinding;
  2823. GLPLATFORM_GL_ARB_shader_subroutine = GLPLATFORM_GL_ARB_shader_subroutine && glGetActiveSubroutineName && glGetActiveSubroutineUniformName
  2824. && glGetActiveSubroutineUniformiv && glGetProgramStageiv && glGetSubroutineIndex
  2825. && glGetSubroutineUniformLocation && glGetUniformSubroutineuiv && glUniformSubroutinesuiv;
  2826. GLPLATFORM_GL_ARB_shading_language_include = GLPLATFORM_GL_ARB_shading_language_include && glCompileShaderIncludeARB && glDeleteNamedStringARB
  2827. && glGetNamedStringARB && glGetNamedStringivARB && glIsNamedStringARB
  2828. && glNamedStringARB;
  2829. GLPLATFORM_GL_ARB_sparse_buffer = GLPLATFORM_GL_ARB_sparse_buffer && glBufferPageCommitmentARB && glNamedBufferPageCommitmentARB
  2830. && glNamedBufferPageCommitmentEXT;
  2831. GLPLATFORM_GL_ARB_sparse_texture = GLPLATFORM_GL_ARB_sparse_texture && glTexPageCommitmentARB;
  2832. GLPLATFORM_GL_ARB_sync = GLPLATFORM_GL_ARB_sync && glClientWaitSync && glDeleteSync
  2833. && glFenceSync && glGetInteger64v && glGetSynciv
  2834. && glIsSync && glWaitSync;
  2835. GLPLATFORM_GL_ARB_tessellation_shader = GLPLATFORM_GL_ARB_tessellation_shader && glPatchParameterfv && glPatchParameteri;
  2836. GLPLATFORM_GL_ARB_texture_barrier = GLPLATFORM_GL_ARB_texture_barrier && glTextureBarrier;
  2837. GLPLATFORM_GL_ARB_texture_buffer_range = GLPLATFORM_GL_ARB_texture_buffer_range && glTexBufferRange;
  2838. GLPLATFORM_GL_ARB_texture_multisample = GLPLATFORM_GL_ARB_texture_multisample && glGetMultisamplefv && glSampleMaski
  2839. && glTexImage2DMultisample && glTexImage3DMultisample;
  2840. GLPLATFORM_GL_ARB_texture_storage = GLPLATFORM_GL_ARB_texture_storage && glTexStorage1D && glTexStorage2D
  2841. && glTexStorage3D;
  2842. GLPLATFORM_GL_ARB_texture_storage_multisample = GLPLATFORM_GL_ARB_texture_storage_multisample && glTexStorage2DMultisample && glTexStorage3DMultisample;
  2843. GLPLATFORM_GL_ARB_texture_view = GLPLATFORM_GL_ARB_texture_view && glTextureView;
  2844. GLPLATFORM_GL_ARB_timer_query = GLPLATFORM_GL_ARB_timer_query && glGetQueryObjecti64v && glGetQueryObjectui64v
  2845. && glQueryCounter;
  2846. GLPLATFORM_GL_ARB_transform_feedback2 = GLPLATFORM_GL_ARB_transform_feedback2 && glBindTransformFeedback && glDeleteTransformFeedbacks
  2847. && glDrawTransformFeedback && glGenTransformFeedbacks && glIsTransformFeedback
  2848. && glPauseTransformFeedback && glResumeTransformFeedback;
  2849. GLPLATFORM_GL_ARB_transform_feedback3 = GLPLATFORM_GL_ARB_transform_feedback3 && glBeginQueryIndexed && glDrawTransformFeedbackStream
  2850. && glEndQueryIndexed && glGetQueryIndexediv;
  2851. GLPLATFORM_GL_ARB_transform_feedback_instanced = GLPLATFORM_GL_ARB_transform_feedback_instanced && glDrawTransformFeedbackInstanced && glDrawTransformFeedbackStreamInstanced;
  2852. GLPLATFORM_GL_ARB_uniform_buffer_object = GLPLATFORM_GL_ARB_uniform_buffer_object && glGetActiveUniformBlockName && glGetActiveUniformBlockiv
  2853. && glGetActiveUniformName && glGetActiveUniformsiv && glGetUniformBlockIndex
  2854. && glGetUniformIndices && glUniformBlockBinding;
  2855. GLPLATFORM_GL_ARB_vertex_array_object = GLPLATFORM_GL_ARB_vertex_array_object && glBindVertexArray && glDeleteVertexArrays
  2856. && glGenVertexArrays && glIsVertexArray;
  2857. GLPLATFORM_GL_ARB_vertex_attrib_64bit = GLPLATFORM_GL_ARB_vertex_attrib_64bit && glGetVertexAttribLdv && glVertexAttribL1d
  2858. && glVertexAttribL1dv && glVertexAttribL2d && glVertexAttribL2dv
  2859. && glVertexAttribL3d && glVertexAttribL3dv && glVertexAttribL4d
  2860. && glVertexAttribL4dv && glVertexAttribLPointer;
  2861. GLPLATFORM_GL_ARB_vertex_attrib_binding = GLPLATFORM_GL_ARB_vertex_attrib_binding && glBindVertexBuffer && glVertexAttribBinding
  2862. && glVertexAttribFormat && glVertexAttribIFormat && glVertexAttribLFormat
  2863. && glVertexBindingDivisor;
  2864. GLPLATFORM_GL_ARB_vertex_type_2_10_10_10_rev = GLPLATFORM_GL_ARB_vertex_type_2_10_10_10_rev && glVertexAttribP1ui && glVertexAttribP1uiv
  2865. && glVertexAttribP2ui && glVertexAttribP2uiv && glVertexAttribP3ui
  2866. && glVertexAttribP3uiv && glVertexAttribP4ui && glVertexAttribP4uiv;
  2867. GLPLATFORM_GL_ARB_viewport_array = GLPLATFORM_GL_ARB_viewport_array && glDepthRangeArrayv && glDepthRangeIndexed
  2868. && glGetDoublei_v && glGetFloati_v && glScissorArrayv
  2869. && glScissorIndexed && glScissorIndexedv && glViewportArrayv
  2870. && glViewportIndexedf && glViewportIndexedfv;
  2871. GLPLATFORM_GL_EXT_direct_state_access = GLPLATFORM_GL_EXT_direct_state_access && glBindMultiTextureEXT && glCheckNamedFramebufferStatusEXT
  2872. && glClearNamedBufferDataEXT && glClearNamedBufferSubDataEXT && glClientAttribDefaultEXT
  2873. && glCompressedMultiTexImage1DEXT && glCompressedMultiTexImage2DEXT && glCompressedMultiTexImage3DEXT
  2874. && glCompressedMultiTexSubImage1DEXT && glCompressedMultiTexSubImage2DEXT && glCompressedMultiTexSubImage3DEXT
  2875. && glCompressedTextureImage1DEXT && glCompressedTextureImage2DEXT && glCompressedTextureImage3DEXT
  2876. && glCompressedTextureSubImage1DEXT && glCompressedTextureSubImage2DEXT && glCompressedTextureSubImage3DEXT
  2877. && glCopyMultiTexImage1DEXT && glCopyMultiTexImage2DEXT && glCopyMultiTexSubImage1DEXT
  2878. && glCopyMultiTexSubImage2DEXT && glCopyMultiTexSubImage3DEXT && glCopyTextureImage1DEXT
  2879. && glCopyTextureImage2DEXT && glCopyTextureSubImage1DEXT && glCopyTextureSubImage2DEXT
  2880. && glCopyTextureSubImage3DEXT && glDisableClientStateIndexedEXT && glDisableClientStateiEXT
  2881. && glDisableIndexedEXT && glDisableVertexArrayAttribEXT && glDisableVertexArrayEXT
  2882. && glEnableClientStateIndexedEXT && glEnableClientStateiEXT && glEnableIndexedEXT
  2883. && glEnableVertexArrayAttribEXT && glEnableVertexArrayEXT && glFlushMappedNamedBufferRangeEXT
  2884. && glFramebufferDrawBufferEXT && glFramebufferDrawBuffersEXT && glFramebufferReadBufferEXT
  2885. && glGenerateMultiTexMipmapEXT && glGenerateTextureMipmapEXT && glGetBooleanIndexedvEXT
  2886. && glGetCompressedMultiTexImageEXT && glGetCompressedTextureImageEXT && glGetDoubleIndexedvEXT
  2887. && glGetDoublei_vEXT && glGetFloatIndexedvEXT && glGetFloati_vEXT
  2888. && glGetFramebufferParameterivEXT && glGetIntegerIndexedvEXT && glGetMultiTexEnvfvEXT
  2889. && glGetMultiTexEnvivEXT && glGetMultiTexGendvEXT && glGetMultiTexGenfvEXT
  2890. && glGetMultiTexGenivEXT && glGetMultiTexImageEXT && glGetMultiTexLevelParameterfvEXT
  2891. && glGetMultiTexLevelParameterivEXT && glGetMultiTexParameterIivEXT && glGetMultiTexParameterIuivEXT
  2892. && glGetMultiTexParameterfvEXT && glGetMultiTexParameterivEXT && glGetNamedBufferParameterivEXT
  2893. && glGetNamedBufferPointervEXT && glGetNamedBufferSubDataEXT && glGetNamedFramebufferAttachmentParameterivEXT
  2894. && glGetNamedFramebufferParameterivEXT && glGetNamedProgramLocalParameterIivEXT && glGetNamedProgramLocalParameterIuivEXT
  2895. && glGetNamedProgramLocalParameterdvEXT && glGetNamedProgramLocalParameterfvEXT && glGetNamedProgramStringEXT
  2896. && glGetNamedProgramivEXT && glGetNamedRenderbufferParameterivEXT && glGetPointerIndexedvEXT
  2897. && glGetPointeri_vEXT && glGetTextureImageEXT && glGetTextureLevelParameterfvEXT
  2898. && glGetTextureLevelParameterivEXT && glGetTextureParameterIivEXT && glGetTextureParameterIuivEXT
  2899. && glGetTextureParameterfvEXT && glGetTextureParameterivEXT && glGetVertexArrayIntegeri_vEXT
  2900. && glGetVertexArrayIntegervEXT && glGetVertexArrayPointeri_vEXT && glGetVertexArrayPointervEXT
  2901. && glIsEnabledIndexedEXT && glMapNamedBufferEXT && glMapNamedBufferRangeEXT
  2902. && glMatrixFrustumEXT && glMatrixLoadIdentityEXT && glMatrixLoadTransposedEXT
  2903. && glMatrixLoadTransposefEXT && glMatrixLoaddEXT && glMatrixLoadfEXT
  2904. && glMatrixMultTransposedEXT && glMatrixMultTransposefEXT && glMatrixMultdEXT
  2905. && glMatrixMultfEXT && glMatrixOrthoEXT && glMatrixPopEXT
  2906. && glMatrixPushEXT && glMatrixRotatedEXT && glMatrixRotatefEXT
  2907. && glMatrixScaledEXT && glMatrixScalefEXT && glMatrixTranslatedEXT
  2908. && glMatrixTranslatefEXT && glMultiTexBufferEXT && glMultiTexCoordPointerEXT
  2909. && glMultiTexEnvfEXT && glMultiTexEnvfvEXT && glMultiTexEnviEXT
  2910. && glMultiTexEnvivEXT && glMultiTexGendEXT && glMultiTexGendvEXT
  2911. && glMultiTexGenfEXT && glMultiTexGenfvEXT && glMultiTexGeniEXT
  2912. && glMultiTexGenivEXT && glMultiTexImage1DEXT && glMultiTexImage2DEXT
  2913. && glMultiTexImage3DEXT && glMultiTexParameterIivEXT && glMultiTexParameterIuivEXT
  2914. && glMultiTexParameterfEXT && glMultiTexParameterfvEXT && glMultiTexParameteriEXT
  2915. && glMultiTexParameterivEXT && glMultiTexRenderbufferEXT && glMultiTexSubImage1DEXT
  2916. && glMultiTexSubImage2DEXT && glMultiTexSubImage3DEXT && glNamedBufferDataEXT
  2917. && glNamedBufferStorageEXT && glNamedBufferSubDataEXT && glNamedCopyBufferSubDataEXT
  2918. && glNamedFramebufferParameteriEXT && glNamedFramebufferRenderbufferEXT && glNamedFramebufferTexture1DEXT
  2919. && glNamedFramebufferTexture2DEXT && glNamedFramebufferTexture3DEXT && glNamedFramebufferTextureEXT
  2920. && glNamedFramebufferTextureFaceEXT && glNamedFramebufferTextureLayerEXT && glNamedProgramLocalParameter4dEXT
  2921. && glNamedProgramLocalParameter4dvEXT && glNamedProgramLocalParameter4fEXT && glNamedProgramLocalParameter4fvEXT
  2922. && glNamedProgramLocalParameterI4iEXT && glNamedProgramLocalParameterI4ivEXT && glNamedProgramLocalParameterI4uiEXT
  2923. && glNamedProgramLocalParameterI4uivEXT && glNamedProgramLocalParameters4fvEXT && glNamedProgramLocalParametersI4ivEXT
  2924. && glNamedProgramLocalParametersI4uivEXT && glNamedProgramStringEXT && glNamedRenderbufferStorageEXT
  2925. && glNamedRenderbufferStorageMultisampleCoverageEXT && glNamedRenderbufferStorageMultisampleEXT && glProgramUniform1dEXT
  2926. && glProgramUniform1dvEXT && glProgramUniform1fEXT && glProgramUniform1fvEXT
  2927. && glProgramUniform1iEXT && glProgramUniform1ivEXT && glProgramUniform1uiEXT
  2928. && glProgramUniform1uivEXT && glProgramUniform2dEXT && glProgramUniform2dvEXT
  2929. && glProgramUniform2fEXT && glProgramUniform2fvEXT && glProgramUniform2iEXT
  2930. && glProgramUniform2ivEXT && glProgramUniform2uiEXT && glProgramUniform2uivEXT
  2931. && glProgramUniform3dEXT && glProgramUniform3dvEXT && glProgramUniform3fEXT
  2932. && glProgramUniform3fvEXT && glProgramUniform3iEXT && glProgramUniform3ivEXT
  2933. && glProgramUniform3uiEXT && glProgramUniform3uivEXT && glProgramUniform4dEXT
  2934. && glProgramUniform4dvEXT && glProgramUniform4fEXT && glProgramUniform4fvEXT
  2935. && glProgramUniform4iEXT && glProgramUniform4ivEXT && glProgramUniform4uiEXT
  2936. && glProgramUniform4uivEXT && glProgramUniformMatrix2dvEXT && glProgramUniformMatrix2fvEXT
  2937. && glProgramUniformMatrix2x3dvEXT && glProgramUniformMatrix2x3fvEXT && glProgramUniformMatrix2x4dvEXT
  2938. && glProgramUniformMatrix2x4fvEXT && glProgramUniformMatrix3dvEXT && glProgramUniformMatrix3fvEXT
  2939. && glProgramUniformMatrix3x2dvEXT && glProgramUniformMatrix3x2fvEXT && glProgramUniformMatrix3x4dvEXT
  2940. && glProgramUniformMatrix3x4fvEXT && glProgramUniformMatrix4dvEXT && glProgramUniformMatrix4fvEXT
  2941. && glProgramUniformMatrix4x2dvEXT && glProgramUniformMatrix4x2fvEXT && glProgramUniformMatrix4x3dvEXT
  2942. && glProgramUniformMatrix4x3fvEXT && glPushClientAttribDefaultEXT && glTextureBufferEXT
  2943. && glTextureBufferRangeEXT && glTextureImage1DEXT && glTextureImage2DEXT
  2944. && glTextureImage3DEXT && glTexturePageCommitmentEXT && glTextureParameterIivEXT
  2945. && glTextureParameterIuivEXT && glTextureParameterfEXT && glTextureParameterfvEXT
  2946. && glTextureParameteriEXT && glTextureParameterivEXT && glTextureRenderbufferEXT
  2947. && glTextureStorage1DEXT && glTextureStorage2DEXT && glTextureStorage2DMultisampleEXT
  2948. && glTextureStorage3DEXT && glTextureStorage3DMultisampleEXT && glTextureSubImage1DEXT
  2949. && glTextureSubImage2DEXT && glTextureSubImage3DEXT && glUnmapNamedBufferEXT
  2950. && glVertexArrayBindVertexBufferEXT && glVertexArrayColorOffsetEXT && glVertexArrayEdgeFlagOffsetEXT
  2951. && glVertexArrayFogCoordOffsetEXT && glVertexArrayIndexOffsetEXT && glVertexArrayMultiTexCoordOffsetEXT
  2952. && glVertexArrayNormalOffsetEXT && glVertexArraySecondaryColorOffsetEXT && glVertexArrayTexCoordOffsetEXT
  2953. && glVertexArrayVertexAttribBindingEXT && glVertexArrayVertexAttribDivisorEXT && glVertexArrayVertexAttribFormatEXT
  2954. && glVertexArrayVertexAttribIFormatEXT && glVertexArrayVertexAttribIOffsetEXT && glVertexArrayVertexAttribLFormatEXT
  2955. && glVertexArrayVertexAttribLOffsetEXT && glVertexArrayVertexAttribOffsetEXT && glVertexArrayVertexBindingDivisorEXT
  2956. && glVertexArrayVertexOffsetEXT;
  2957. GLPLATFORM_GL_KHR_debug = GLPLATFORM_GL_KHR_debug && glDebugMessageCallback && glDebugMessageCallbackKHR
  2958. && glDebugMessageControl && glDebugMessageControlKHR && glDebugMessageInsert
  2959. && glDebugMessageInsertKHR && glGetDebugMessageLog && glGetDebugMessageLogKHR
  2960. && glGetObjectLabel && glGetObjectLabelKHR && glGetObjectPtrLabel
  2961. && glGetObjectPtrLabelKHR && glGetPointerv && glGetPointervKHR
  2962. && glObjectLabel && glObjectLabelKHR && glObjectPtrLabel
  2963. && glObjectPtrLabelKHR && glPopDebugGroup && glPopDebugGroupKHR
  2964. && glPushDebugGroup && glPushDebugGroupKHR;
  2965. GLPLATFORM_GL_KHR_robustness = GLPLATFORM_GL_KHR_robustness && glGetGraphicsResetStatus && glGetGraphicsResetStatusKHR
  2966. && glGetnUniformfv && glGetnUniformfvKHR && glGetnUniformiv
  2967. && glGetnUniformivKHR && glGetnUniformuiv && glGetnUniformuivKHR
  2968. && glReadnPixels && glReadnPixelsKHR;
  2969. return glActiveTexture && glAttachShader
  2970. && glBeginConditionalRender && glBeginQuery && glBeginTransformFeedback
  2971. && glBindAttribLocation && glBindBuffer && glBindBufferBase
  2972. && glBindBufferRange && glBindFragDataLocation && glBindFramebuffer
  2973. && glBindRenderbuffer && glBindTexture && glBindVertexArray
  2974. && glBlendColor && glBlendEquation && glBlendEquationSeparate
  2975. && glBlendFunc && glBlendFuncSeparate && glBlitFramebuffer
  2976. && glBufferData && glBufferSubData && glCheckFramebufferStatus
  2977. && glClampColor && glClear && glClearBufferfi
  2978. && glClearBufferfv && glClearBufferiv && glClearBufferuiv
  2979. && glClearColor && glClearDepth && glClearStencil
  2980. && glClientWaitSync && glColorMask && glColorMaski
  2981. && glCompileShader && glCompressedTexImage1D && glCompressedTexImage2D
  2982. && glCompressedTexImage3D && glCompressedTexSubImage1D && glCompressedTexSubImage2D
  2983. && glCompressedTexSubImage3D && glCopyBufferSubData && glCopyTexImage1D
  2984. && glCopyTexImage2D && glCopyTexSubImage1D && glCopyTexSubImage2D
  2985. && glCopyTexSubImage3D && glCreateProgram && glCreateShader
  2986. && glCullFace && glDeleteBuffers && glDeleteFramebuffers
  2987. && glDeleteProgram && glDeleteQueries && glDeleteRenderbuffers
  2988. && glDeleteShader && glDeleteSync && glDeleteTextures
  2989. && glDeleteVertexArrays && glDepthFunc && glDepthMask
  2990. && glDepthRange && glDetachShader && glDisable
  2991. && glDisableVertexAttribArray && glDisablei && glDrawArrays
  2992. && glDrawArraysInstanced && glDrawBuffer && glDrawBuffers
  2993. && glDrawElements && glDrawElementsBaseVertex && glDrawElementsInstanced
  2994. && glDrawElementsInstancedBaseVertex && glDrawRangeElements && glDrawRangeElementsBaseVertex
  2995. && glEnable && glEnableVertexAttribArray && glEnablei
  2996. && glEndConditionalRender && glEndQuery && glEndTransformFeedback
  2997. && glFenceSync && glFinish && glFlush
  2998. && glFlushMappedBufferRange && glFramebufferRenderbuffer && glFramebufferTexture
  2999. && glFramebufferTexture1D && glFramebufferTexture2D && glFramebufferTexture3D
  3000. && glFramebufferTextureLayer && glFrontFace && glGenBuffers
  3001. && glGenFramebuffers && glGenQueries && glGenRenderbuffers
  3002. && glGenTextures && glGenVertexArrays && glGenerateMipmap
  3003. && glGetActiveAttrib && glGetActiveUniform && glGetActiveUniformBlockName
  3004. && glGetActiveUniformBlockiv && glGetActiveUniformName && glGetActiveUniformsiv
  3005. && glGetAttachedShaders && glGetAttribLocation && glGetBooleani_v
  3006. && glGetBooleanv && glGetBufferParameteri64v && glGetBufferParameteriv
  3007. && glGetBufferPointerv && glGetBufferSubData && glGetCompressedTexImage
  3008. && glGetDoublev && glGetError && glGetFloatv
  3009. && glGetFragDataLocation && glGetFramebufferAttachmentParameteriv && glGetInteger64i_v
  3010. && glGetInteger64v && glGetIntegeri_v && glGetIntegerv
  3011. && glGetMultisamplefv && glGetProgramInfoLog && glGetProgramiv
  3012. && glGetQueryObjectiv && glGetQueryObjectuiv && glGetQueryiv
  3013. && glGetRenderbufferParameteriv && glGetShaderInfoLog && glGetShaderSource
  3014. && glGetShaderiv && glGetString && glGetStringi
  3015. && glGetSynciv && glGetTexImage && glGetTexLevelParameterfv
  3016. && glGetTexLevelParameteriv && glGetTexParameterIiv && glGetTexParameterIuiv
  3017. && glGetTexParameterfv && glGetTexParameteriv && glGetTransformFeedbackVarying
  3018. && glGetUniformBlockIndex && glGetUniformIndices && glGetUniformLocation
  3019. && glGetUniformfv && glGetUniformiv && glGetUniformuiv
  3020. && glGetVertexAttribIiv && glGetVertexAttribIuiv && glGetVertexAttribPointerv
  3021. && glGetVertexAttribdv && glGetVertexAttribfv && glGetVertexAttribiv
  3022. && glHint && glIsBuffer && glIsEnabled
  3023. && glIsEnabledi && glIsFramebuffer && glIsProgram
  3024. && glIsQuery && glIsRenderbuffer && glIsShader
  3025. && glIsSync && glIsTexture && glIsVertexArray
  3026. && glLineWidth && glLinkProgram && glLogicOp
  3027. && glMapBuffer && glMapBufferRange && glMultiDrawArrays
  3028. && glMultiDrawElements && glMultiDrawElementsBaseVertex && glPixelStoref
  3029. && glPixelStorei && glPointParameterf && glPointParameterfv
  3030. && glPointParameteri && glPointParameteriv && glPointSize
  3031. && glPolygonMode && glPolygonOffset && glPrimitiveRestartIndex
  3032. && glProvokingVertex && glReadBuffer && glReadPixels
  3033. && glRenderbufferStorage && glRenderbufferStorageMultisample && glSampleCoverage
  3034. && glSampleMaski && glScissor && glShaderSource
  3035. && glStencilFunc && glStencilFuncSeparate && glStencilMask
  3036. && glStencilMaskSeparate && glStencilOp && glStencilOpSeparate
  3037. && glTexBuffer && glTexImage1D && glTexImage2D
  3038. && glTexImage2DMultisample && glTexImage3D && glTexImage3DMultisample
  3039. && glTexParameterIiv && glTexParameterIuiv && glTexParameterf
  3040. && glTexParameterfv && glTexParameteri && glTexParameteriv
  3041. && glTexSubImage1D && glTexSubImage2D && glTexSubImage3D
  3042. && glTransformFeedbackVaryings && glUniform1f && glUniform1fv
  3043. && glUniform1i && glUniform1iv && glUniform1ui
  3044. && glUniform1uiv && glUniform2f && glUniform2fv
  3045. && glUniform2i && glUniform2iv && glUniform2ui
  3046. && glUniform2uiv && glUniform3f && glUniform3fv
  3047. && glUniform3i && glUniform3iv && glUniform3ui
  3048. && glUniform3uiv && glUniform4f && glUniform4fv
  3049. && glUniform4i && glUniform4iv && glUniform4ui
  3050. && glUniform4uiv && glUniformBlockBinding && glUniformMatrix2fv
  3051. && glUniformMatrix2x3fv && glUniformMatrix2x4fv && glUniformMatrix3fv
  3052. && glUniformMatrix3x2fv && glUniformMatrix3x4fv && glUniformMatrix4fv
  3053. && glUniformMatrix4x2fv && glUniformMatrix4x3fv && glUnmapBuffer
  3054. && glUseProgram && glValidateProgram && glVertexAttrib1d
  3055. && glVertexAttrib1dv && glVertexAttrib1f && glVertexAttrib1fv
  3056. && glVertexAttrib1s && glVertexAttrib1sv && glVertexAttrib2d
  3057. && glVertexAttrib2dv && glVertexAttrib2f && glVertexAttrib2fv
  3058. && glVertexAttrib2s && glVertexAttrib2sv && glVertexAttrib3d
  3059. && glVertexAttrib3dv && glVertexAttrib3f && glVertexAttrib3fv
  3060. && glVertexAttrib3s && glVertexAttrib3sv && glVertexAttrib4Nbv
  3061. && glVertexAttrib4Niv && glVertexAttrib4Nsv && glVertexAttrib4Nub
  3062. && glVertexAttrib4Nubv && glVertexAttrib4Nuiv && glVertexAttrib4Nusv
  3063. && glVertexAttrib4bv && glVertexAttrib4d && glVertexAttrib4dv
  3064. && glVertexAttrib4f && glVertexAttrib4fv && glVertexAttrib4iv
  3065. && glVertexAttrib4s && glVertexAttrib4sv && glVertexAttrib4ubv
  3066. && glVertexAttrib4uiv && glVertexAttrib4usv && glVertexAttribI1i
  3067. && glVertexAttribI1iv && glVertexAttribI1ui && glVertexAttribI1uiv
  3068. && glVertexAttribI2i && glVertexAttribI2iv && glVertexAttribI2ui
  3069. && glVertexAttribI2uiv && glVertexAttribI3i && glVertexAttribI3iv
  3070. && glVertexAttribI3ui && glVertexAttribI3uiv && glVertexAttribI4bv
  3071. && glVertexAttribI4i && glVertexAttribI4iv && glVertexAttribI4sv
  3072. && glVertexAttribI4ubv && glVertexAttribI4ui && glVertexAttribI4uiv
  3073. && glVertexAttribI4usv && glVertexAttribIPointer && glVertexAttribPointer
  3074. && glViewport && glWaitSync
  3075. && ((req_version < 33) ||
  3076. (glBindFragDataLocationIndexed && glBindSampler
  3077. && glDeleteSamplers && glGenSamplers && glGetFragDataIndex
  3078. && glGetQueryObjecti64v && glGetQueryObjectui64v && glGetSamplerParameterIiv
  3079. && glGetSamplerParameterIuiv && glGetSamplerParameterfv && glGetSamplerParameteriv
  3080. && glIsSampler && glQueryCounter && glSamplerParameterIiv
  3081. && glSamplerParameterIuiv && glSamplerParameterf && glSamplerParameterfv
  3082. && glSamplerParameteri && glSamplerParameteriv && glVertexAttribDivisor
  3083. && glVertexAttribP1ui && glVertexAttribP1uiv && glVertexAttribP2ui
  3084. && glVertexAttribP2uiv && glVertexAttribP3ui && glVertexAttribP3uiv
  3085. && glVertexAttribP4ui && glVertexAttribP4uiv))
  3086. && ((req_version < 40) ||
  3087. (glBeginQueryIndexed && glBindTransformFeedback
  3088. && glBlendEquationSeparatei && glBlendEquationi && glBlendFuncSeparatei
  3089. && glBlendFunci && glDeleteTransformFeedbacks && glDrawArraysIndirect
  3090. && glDrawElementsIndirect && glDrawTransformFeedback && glDrawTransformFeedbackStream
  3091. && glEndQueryIndexed && glGenTransformFeedbacks && glGetActiveSubroutineName
  3092. && glGetActiveSubroutineUniformName && glGetActiveSubroutineUniformiv && glGetProgramStageiv
  3093. && glGetQueryIndexediv && glGetSubroutineIndex && glGetSubroutineUniformLocation
  3094. && glGetUniformSubroutineuiv && glGetUniformdv && glIsTransformFeedback
  3095. && glMinSampleShading && glPatchParameterfv && glPatchParameteri
  3096. && glPauseTransformFeedback && glResumeTransformFeedback && glUniform1d
  3097. && glUniform1dv && glUniform2d && glUniform2dv
  3098. && glUniform3d && glUniform3dv && glUniform4d
  3099. && glUniform4dv && glUniformMatrix2dv && glUniformMatrix2x3dv
  3100. && glUniformMatrix2x4dv && glUniformMatrix3dv && glUniformMatrix3x2dv
  3101. && glUniformMatrix3x4dv && glUniformMatrix4dv && glUniformMatrix4x2dv
  3102. && glUniformMatrix4x3dv && glUniformSubroutinesuiv))
  3103. && ((req_version < 41) ||
  3104. (glActiveShaderProgram && glBindProgramPipeline
  3105. && glClearDepthf && glCreateShaderProgramv && glDeleteProgramPipelines
  3106. && glDepthRangeArrayv && glDepthRangeIndexed && glDepthRangef
  3107. && glGenProgramPipelines && glGetDoublei_v && glGetFloati_v
  3108. && glGetProgramBinary && glGetProgramPipelineInfoLog && glGetProgramPipelineiv
  3109. && glGetShaderPrecisionFormat && glGetVertexAttribLdv && glIsProgramPipeline
  3110. && glProgramBinary && glProgramParameteri && glProgramUniform1d
  3111. && glProgramUniform1dv && glProgramUniform1f && glProgramUniform1fv
  3112. && glProgramUniform1i && glProgramUniform1iv && glProgramUniform1ui
  3113. && glProgramUniform1uiv && glProgramUniform2d && glProgramUniform2dv
  3114. && glProgramUniform2f && glProgramUniform2fv && glProgramUniform2i
  3115. && glProgramUniform2iv && glProgramUniform2ui && glProgramUniform2uiv
  3116. && glProgramUniform3d && glProgramUniform3dv && glProgramUniform3f
  3117. && glProgramUniform3fv && glProgramUniform3i && glProgramUniform3iv
  3118. && glProgramUniform3ui && glProgramUniform3uiv && glProgramUniform4d
  3119. && glProgramUniform4dv && glProgramUniform4f && glProgramUniform4fv
  3120. && glProgramUniform4i && glProgramUniform4iv && glProgramUniform4ui
  3121. && glProgramUniform4uiv && glProgramUniformMatrix2dv && glProgramUniformMatrix2fv
  3122. && glProgramUniformMatrix2x3dv && glProgramUniformMatrix2x3fv && glProgramUniformMatrix2x4dv
  3123. && glProgramUniformMatrix2x4fv && glProgramUniformMatrix3dv && glProgramUniformMatrix3fv
  3124. && glProgramUniformMatrix3x2dv && glProgramUniformMatrix3x2fv && glProgramUniformMatrix3x4dv
  3125. && glProgramUniformMatrix3x4fv && glProgramUniformMatrix4dv && glProgramUniformMatrix4fv
  3126. && glProgramUniformMatrix4x2dv && glProgramUniformMatrix4x2fv && glProgramUniformMatrix4x3dv
  3127. && glProgramUniformMatrix4x3fv && glReleaseShaderCompiler && glScissorArrayv
  3128. && glScissorIndexed && glScissorIndexedv && glShaderBinary
  3129. && glUseProgramStages && glValidateProgramPipeline && glVertexAttribL1d
  3130. && glVertexAttribL1dv && glVertexAttribL2d && glVertexAttribL2dv
  3131. && glVertexAttribL3d && glVertexAttribL3dv && glVertexAttribL4d
  3132. && glVertexAttribL4dv && glVertexAttribLPointer && glViewportArrayv
  3133. && glViewportIndexedf && glViewportIndexedfv))
  3134. && ((req_version < 42) ||
  3135. (glBindImageTexture && glDrawArraysInstancedBaseInstance
  3136. && glDrawElementsInstancedBaseInstance && glDrawElementsInstancedBaseVertexBaseInstance && glDrawTransformFeedbackInstanced
  3137. && glDrawTransformFeedbackStreamInstanced && glGetActiveAtomicCounterBufferiv && glGetInternalformativ
  3138. && glMemoryBarrier && glTexStorage1D && glTexStorage2D
  3139. && glTexStorage3D))
  3140. && ((req_version < 43) ||
  3141. (glBindVertexBuffer && glClearBufferData
  3142. && glClearBufferSubData && glCopyImageSubData && glDebugMessageCallback
  3143. && glDebugMessageControl && glDebugMessageInsert && glDispatchCompute
  3144. && glDispatchComputeIndirect && glFramebufferParameteri && glGetDebugMessageLog
  3145. && glGetFramebufferParameteriv && glGetInternalformati64v && glGetObjectLabel
  3146. && glGetObjectPtrLabel && glGetPointerv && glGetProgramInterfaceiv
  3147. && glGetProgramResourceIndex && glGetProgramResourceLocation && glGetProgramResourceLocationIndex
  3148. && glGetProgramResourceName && glGetProgramResourceiv && glInvalidateBufferData
  3149. && glInvalidateBufferSubData && glInvalidateFramebuffer && glInvalidateSubFramebuffer
  3150. && glInvalidateTexImage && glInvalidateTexSubImage && glMultiDrawArraysIndirect
  3151. && glMultiDrawElementsIndirect && glObjectLabel && glObjectPtrLabel
  3152. && glPopDebugGroup && glPushDebugGroup && glShaderStorageBlockBinding
  3153. && glTexBufferRange && glTexStorage2DMultisample && glTexStorage3DMultisample
  3154. && glTextureView && glVertexAttribBinding && glVertexAttribFormat
  3155. && glVertexAttribIFormat && glVertexAttribLFormat && glVertexBindingDivisor))
  3156. && ((req_version < 44) ||
  3157. (glBindBuffersBase && glBindBuffersRange
  3158. && glBindImageTextures && glBindSamplers && glBindTextures
  3159. && glBindVertexBuffers && glBufferStorage && glClearTexImage
  3160. && glClearTexSubImage))
  3161. && ((req_version < 45) ||
  3162. (glBindTextureUnit && glBlitNamedFramebuffer
  3163. && glCheckNamedFramebufferStatus && glClearNamedBufferData && glClearNamedBufferSubData
  3164. && glClearNamedFramebufferfi && glClearNamedFramebufferfv && glClearNamedFramebufferiv
  3165. && glClearNamedFramebufferuiv && glClipControl && glCompressedTextureSubImage1D
  3166. && glCompressedTextureSubImage2D && glCompressedTextureSubImage3D && glCopyNamedBufferSubData
  3167. && glCopyTextureSubImage1D && glCopyTextureSubImage2D && glCopyTextureSubImage3D
  3168. && glCreateBuffers && glCreateFramebuffers && glCreateProgramPipelines
  3169. && glCreateQueries && glCreateRenderbuffers && glCreateSamplers
  3170. && glCreateTextures && glCreateTransformFeedbacks && glCreateVertexArrays
  3171. && glDisableVertexArrayAttrib && glEnableVertexArrayAttrib && glFlushMappedNamedBufferRange
  3172. && glGenerateTextureMipmap && glGetCompressedTextureImage && glGetCompressedTextureSubImage
  3173. && glGetGraphicsResetStatus && glGetNamedBufferParameteri64v && glGetNamedBufferParameteriv
  3174. && glGetNamedBufferPointerv && glGetNamedBufferSubData && glGetNamedFramebufferAttachmentParameteriv
  3175. && glGetNamedFramebufferParameteriv && glGetNamedRenderbufferParameteriv && glGetQueryBufferObjecti64v
  3176. && glGetQueryBufferObjectiv && glGetQueryBufferObjectui64v && glGetQueryBufferObjectuiv
  3177. && glGetTextureImage && glGetTextureLevelParameterfv && glGetTextureLevelParameteriv
  3178. && glGetTextureParameterIiv && glGetTextureParameterIuiv && glGetTextureParameterfv
  3179. && glGetTextureParameteriv && glGetTextureSubImage && glGetTransformFeedbacki64_v
  3180. && glGetTransformFeedbacki_v && glGetTransformFeedbackiv && glGetVertexArrayIndexed64iv
  3181. && glGetVertexArrayIndexediv && glGetVertexArrayiv && glGetnCompressedTexImage
  3182. && glGetnTexImage && glGetnUniformdv && glGetnUniformfv
  3183. && glGetnUniformiv && glGetnUniformuiv && glInvalidateNamedFramebufferData
  3184. && glInvalidateNamedFramebufferSubData && glMapNamedBuffer && glMapNamedBufferRange
  3185. && glMemoryBarrierByRegion && glNamedBufferData && glNamedBufferStorage
  3186. && glNamedBufferSubData && glNamedFramebufferDrawBuffer && glNamedFramebufferDrawBuffers
  3187. && glNamedFramebufferParameteri && glNamedFramebufferReadBuffer && glNamedFramebufferRenderbuffer
  3188. && glNamedFramebufferTexture && glNamedFramebufferTextureLayer && glNamedRenderbufferStorage
  3189. && glNamedRenderbufferStorageMultisample && glReadnPixels && glTextureBarrier
  3190. && glTextureBuffer && glTextureBufferRange && glTextureParameterIiv
  3191. && glTextureParameterIuiv && glTextureParameterf && glTextureParameterfv
  3192. && glTextureParameteri && glTextureParameteriv && glTextureStorage1D
  3193. && glTextureStorage2D && glTextureStorage2DMultisample && glTextureStorage3D
  3194. && glTextureStorage3DMultisample && glTextureSubImage1D && glTextureSubImage2D
  3195. && glTextureSubImage3D && glTransformFeedbackBufferBase && glTransformFeedbackBufferRange
  3196. && glUnmapNamedBuffer && glVertexArrayAttribBinding && glVertexArrayAttribFormat
  3197. && glVertexArrayAttribIFormat && glVertexArrayAttribLFormat && glVertexArrayBindingDivisor
  3198. && glVertexArrayElementBuffer && glVertexArrayVertexBuffer && glVertexArrayVertexBuffers));
  3199. }