gl_core_3_0.cpp 150KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773
  1. #include <algorithm>
  2. #include <vector>
  3. #include <string.h>
  4. #include <stddef.h>
  5. #include "gl_core_3_0.hpp"
  6. #if defined(__APPLE__)
  7. #include <dlfcn.h>
  8. static void* AppleGLGetProcAddress (const char *name)
  9. {
  10. static void* image = NULL;
  11. if (NULL == image)
  12. image = dlopen("/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL", RTLD_LAZY);
  13. return (image ? dlsym(image, name) : NULL);
  14. }
  15. #endif /* __APPLE__ */
  16. #if defined(__sgi) || defined (__sun)
  17. #include <dlfcn.h>
  18. #include <stdio.h>
  19. static void* SunGetProcAddress (const GLubyte* name)
  20. {
  21. static void* h = NULL;
  22. static void* gpa;
  23. if (h == NULL)
  24. {
  25. if ((h = dlopen(NULL, RTLD_LAZY | RTLD_LOCAL)) == NULL) return NULL;
  26. gpa = dlsym(h, "glXGetProcAddress");
  27. }
  28. if (gpa != NULL)
  29. return ((void*(*)(const GLubyte*))gpa)(name);
  30. else
  31. return dlsym(h, (const char*)name);
  32. }
  33. #endif /* __sgi || __sun */
  34. #if defined(_WIN32)
  35. #ifdef _MSC_VER
  36. #pragma warning(disable: 4055)
  37. #pragma warning(disable: 4054)
  38. #pragma warning(disable: 4996)
  39. #endif
  40. static int TestPointer(const PROC pTest)
  41. {
  42. ptrdiff_t iTest;
  43. if(!pTest) return 0;
  44. iTest = (ptrdiff_t)pTest;
  45. if(iTest == 1 || iTest == 2 || iTest == 3 || iTest == -1) return 0;
  46. return 1;
  47. }
  48. static PROC WinGetProcAddress(const char *name)
  49. {
  50. HMODULE glMod = NULL;
  51. PROC pFunc = wglGetProcAddress((LPCSTR)name);
  52. if(TestPointer(pFunc))
  53. {
  54. return pFunc;
  55. }
  56. glMod = GetModuleHandleA("OpenGL32.dll");
  57. return (PROC)GetProcAddress(glMod, (LPCSTR)name);
  58. }
  59. #define IntGetProcAddress(name) WinGetProcAddress(name)
  60. #else
  61. #if defined(__APPLE__)
  62. #define IntGetProcAddress(name) AppleGLGetProcAddress(name)
  63. #else
  64. #if defined(__sgi) || defined(__sun)
  65. #define IntGetProcAddress(name) SunGetProcAddress(name)
  66. #else /* GLX */
  67. #include <GL/glx.h>
  68. #define IntGetProcAddress(name) (*glXGetProcAddressARB)((const GLubyte*)name)
  69. #endif
  70. #endif
  71. #endif
  72. namespace gl
  73. {
  74. namespace exts
  75. {
  76. } //namespace exts
  77. typedef void (CODEGEN_FUNCPTR *PFNACCUM)(GLenum, GLfloat);
  78. PFNACCUM Accum = 0;
  79. typedef void (CODEGEN_FUNCPTR *PFNALPHAFUNC)(GLenum, GLfloat);
  80. PFNALPHAFUNC AlphaFunc = 0;
  81. typedef void (CODEGEN_FUNCPTR *PFNBEGIN)(GLenum);
  82. PFNBEGIN Begin = 0;
  83. typedef void (CODEGEN_FUNCPTR *PFNBITMAP)(GLsizei, GLsizei, GLfloat, GLfloat, GLfloat, GLfloat, const GLubyte *);
  84. PFNBITMAP Bitmap = 0;
  85. typedef void (CODEGEN_FUNCPTR *PFNBLENDFUNC)(GLenum, GLenum);
  86. PFNBLENDFUNC BlendFunc = 0;
  87. typedef void (CODEGEN_FUNCPTR *PFNCALLLIST)(GLuint);
  88. PFNCALLLIST CallList = 0;
  89. typedef void (CODEGEN_FUNCPTR *PFNCALLLISTS)(GLsizei, GLenum, const void *);
  90. PFNCALLLISTS CallLists = 0;
  91. typedef void (CODEGEN_FUNCPTR *PFNCLEAR)(GLbitfield);
  92. PFNCLEAR Clear = 0;
  93. typedef void (CODEGEN_FUNCPTR *PFNCLEARACCUM)(GLfloat, GLfloat, GLfloat, GLfloat);
  94. PFNCLEARACCUM ClearAccum = 0;
  95. typedef void (CODEGEN_FUNCPTR *PFNCLEARCOLOR)(GLfloat, GLfloat, GLfloat, GLfloat);
  96. PFNCLEARCOLOR ClearColor = 0;
  97. typedef void (CODEGEN_FUNCPTR *PFNCLEARDEPTH)(GLdouble);
  98. PFNCLEARDEPTH ClearDepth = 0;
  99. typedef void (CODEGEN_FUNCPTR *PFNCLEARINDEX)(GLfloat);
  100. PFNCLEARINDEX ClearIndex = 0;
  101. typedef void (CODEGEN_FUNCPTR *PFNCLEARSTENCIL)(GLint);
  102. PFNCLEARSTENCIL ClearStencil = 0;
  103. typedef void (CODEGEN_FUNCPTR *PFNCLIPPLANE)(GLenum, const GLdouble *);
  104. PFNCLIPPLANE ClipPlane = 0;
  105. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3B)(GLbyte, GLbyte, GLbyte);
  106. PFNCOLOR3B Color3b = 0;
  107. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3BV)(const GLbyte *);
  108. PFNCOLOR3BV Color3bv = 0;
  109. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3D)(GLdouble, GLdouble, GLdouble);
  110. PFNCOLOR3D Color3d = 0;
  111. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3DV)(const GLdouble *);
  112. PFNCOLOR3DV Color3dv = 0;
  113. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3F)(GLfloat, GLfloat, GLfloat);
  114. PFNCOLOR3F Color3f = 0;
  115. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3FV)(const GLfloat *);
  116. PFNCOLOR3FV Color3fv = 0;
  117. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3I)(GLint, GLint, GLint);
  118. PFNCOLOR3I Color3i = 0;
  119. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3IV)(const GLint *);
  120. PFNCOLOR3IV Color3iv = 0;
  121. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3S)(GLshort, GLshort, GLshort);
  122. PFNCOLOR3S Color3s = 0;
  123. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3SV)(const GLshort *);
  124. PFNCOLOR3SV Color3sv = 0;
  125. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3UB)(GLubyte, GLubyte, GLubyte);
  126. PFNCOLOR3UB Color3ub = 0;
  127. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3UBV)(const GLubyte *);
  128. PFNCOLOR3UBV Color3ubv = 0;
  129. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3UI)(GLuint, GLuint, GLuint);
  130. PFNCOLOR3UI Color3ui = 0;
  131. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3UIV)(const GLuint *);
  132. PFNCOLOR3UIV Color3uiv = 0;
  133. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3US)(GLushort, GLushort, GLushort);
  134. PFNCOLOR3US Color3us = 0;
  135. typedef void (CODEGEN_FUNCPTR *PFNCOLOR3USV)(const GLushort *);
  136. PFNCOLOR3USV Color3usv = 0;
  137. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4B)(GLbyte, GLbyte, GLbyte, GLbyte);
  138. PFNCOLOR4B Color4b = 0;
  139. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4BV)(const GLbyte *);
  140. PFNCOLOR4BV Color4bv = 0;
  141. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4D)(GLdouble, GLdouble, GLdouble, GLdouble);
  142. PFNCOLOR4D Color4d = 0;
  143. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4DV)(const GLdouble *);
  144. PFNCOLOR4DV Color4dv = 0;
  145. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4F)(GLfloat, GLfloat, GLfloat, GLfloat);
  146. PFNCOLOR4F Color4f = 0;
  147. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4FV)(const GLfloat *);
  148. PFNCOLOR4FV Color4fv = 0;
  149. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4I)(GLint, GLint, GLint, GLint);
  150. PFNCOLOR4I Color4i = 0;
  151. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4IV)(const GLint *);
  152. PFNCOLOR4IV Color4iv = 0;
  153. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4S)(GLshort, GLshort, GLshort, GLshort);
  154. PFNCOLOR4S Color4s = 0;
  155. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4SV)(const GLshort *);
  156. PFNCOLOR4SV Color4sv = 0;
  157. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4UB)(GLubyte, GLubyte, GLubyte, GLubyte);
  158. PFNCOLOR4UB Color4ub = 0;
  159. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4UBV)(const GLubyte *);
  160. PFNCOLOR4UBV Color4ubv = 0;
  161. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4UI)(GLuint, GLuint, GLuint, GLuint);
  162. PFNCOLOR4UI Color4ui = 0;
  163. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4UIV)(const GLuint *);
  164. PFNCOLOR4UIV Color4uiv = 0;
  165. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4US)(GLushort, GLushort, GLushort, GLushort);
  166. PFNCOLOR4US Color4us = 0;
  167. typedef void (CODEGEN_FUNCPTR *PFNCOLOR4USV)(const GLushort *);
  168. PFNCOLOR4USV Color4usv = 0;
  169. typedef void (CODEGEN_FUNCPTR *PFNCOLORMASK)(GLboolean, GLboolean, GLboolean, GLboolean);
  170. PFNCOLORMASK ColorMask = 0;
  171. typedef void (CODEGEN_FUNCPTR *PFNCOLORMATERIAL)(GLenum, GLenum);
  172. PFNCOLORMATERIAL ColorMaterial = 0;
  173. typedef void (CODEGEN_FUNCPTR *PFNCOPYPIXELS)(GLint, GLint, GLsizei, GLsizei, GLenum);
  174. PFNCOPYPIXELS CopyPixels = 0;
  175. typedef void (CODEGEN_FUNCPTR *PFNCULLFACE)(GLenum);
  176. PFNCULLFACE CullFace = 0;
  177. typedef void (CODEGEN_FUNCPTR *PFNDELETELISTS)(GLuint, GLsizei);
  178. PFNDELETELISTS DeleteLists = 0;
  179. typedef void (CODEGEN_FUNCPTR *PFNDEPTHFUNC)(GLenum);
  180. PFNDEPTHFUNC DepthFunc = 0;
  181. typedef void (CODEGEN_FUNCPTR *PFNDEPTHMASK)(GLboolean);
  182. PFNDEPTHMASK DepthMask = 0;
  183. typedef void (CODEGEN_FUNCPTR *PFNDEPTHRANGE)(GLdouble, GLdouble);
  184. PFNDEPTHRANGE DepthRange = 0;
  185. typedef void (CODEGEN_FUNCPTR *PFNDISABLE)(GLenum);
  186. PFNDISABLE Disable = 0;
  187. typedef void (CODEGEN_FUNCPTR *PFNDRAWBUFFER)(GLenum);
  188. PFNDRAWBUFFER DrawBuffer = 0;
  189. typedef void (CODEGEN_FUNCPTR *PFNDRAWPIXELS)(GLsizei, GLsizei, GLenum, GLenum, const void *);
  190. PFNDRAWPIXELS DrawPixels = 0;
  191. typedef void (CODEGEN_FUNCPTR *PFNEDGEFLAG)(GLboolean);
  192. PFNEDGEFLAG EdgeFlag = 0;
  193. typedef void (CODEGEN_FUNCPTR *PFNEDGEFLAGV)(const GLboolean *);
  194. PFNEDGEFLAGV EdgeFlagv = 0;
  195. typedef void (CODEGEN_FUNCPTR *PFNENABLE)(GLenum);
  196. PFNENABLE Enable = 0;
  197. typedef void (CODEGEN_FUNCPTR *PFNEND)(void);
  198. PFNEND End = 0;
  199. typedef void (CODEGEN_FUNCPTR *PFNENDLIST)(void);
  200. PFNENDLIST EndList = 0;
  201. typedef void (CODEGEN_FUNCPTR *PFNEVALCOORD1D)(GLdouble);
  202. PFNEVALCOORD1D EvalCoord1d = 0;
  203. typedef void (CODEGEN_FUNCPTR *PFNEVALCOORD1DV)(const GLdouble *);
  204. PFNEVALCOORD1DV EvalCoord1dv = 0;
  205. typedef void (CODEGEN_FUNCPTR *PFNEVALCOORD1F)(GLfloat);
  206. PFNEVALCOORD1F EvalCoord1f = 0;
  207. typedef void (CODEGEN_FUNCPTR *PFNEVALCOORD1FV)(const GLfloat *);
  208. PFNEVALCOORD1FV EvalCoord1fv = 0;
  209. typedef void (CODEGEN_FUNCPTR *PFNEVALCOORD2D)(GLdouble, GLdouble);
  210. PFNEVALCOORD2D EvalCoord2d = 0;
  211. typedef void (CODEGEN_FUNCPTR *PFNEVALCOORD2DV)(const GLdouble *);
  212. PFNEVALCOORD2DV EvalCoord2dv = 0;
  213. typedef void (CODEGEN_FUNCPTR *PFNEVALCOORD2F)(GLfloat, GLfloat);
  214. PFNEVALCOORD2F EvalCoord2f = 0;
  215. typedef void (CODEGEN_FUNCPTR *PFNEVALCOORD2FV)(const GLfloat *);
  216. PFNEVALCOORD2FV EvalCoord2fv = 0;
  217. typedef void (CODEGEN_FUNCPTR *PFNEVALMESH1)(GLenum, GLint, GLint);
  218. PFNEVALMESH1 EvalMesh1 = 0;
  219. typedef void (CODEGEN_FUNCPTR *PFNEVALMESH2)(GLenum, GLint, GLint, GLint, GLint);
  220. PFNEVALMESH2 EvalMesh2 = 0;
  221. typedef void (CODEGEN_FUNCPTR *PFNEVALPOINT1)(GLint);
  222. PFNEVALPOINT1 EvalPoint1 = 0;
  223. typedef void (CODEGEN_FUNCPTR *PFNEVALPOINT2)(GLint, GLint);
  224. PFNEVALPOINT2 EvalPoint2 = 0;
  225. typedef void (CODEGEN_FUNCPTR *PFNFEEDBACKBUFFER)(GLsizei, GLenum, GLfloat *);
  226. PFNFEEDBACKBUFFER FeedbackBuffer = 0;
  227. typedef void (CODEGEN_FUNCPTR *PFNFINISH)(void);
  228. PFNFINISH Finish = 0;
  229. typedef void (CODEGEN_FUNCPTR *PFNFLUSH)(void);
  230. PFNFLUSH Flush = 0;
  231. typedef void (CODEGEN_FUNCPTR *PFNFOGF)(GLenum, GLfloat);
  232. PFNFOGF Fogf = 0;
  233. typedef void (CODEGEN_FUNCPTR *PFNFOGFV)(GLenum, const GLfloat *);
  234. PFNFOGFV Fogfv = 0;
  235. typedef void (CODEGEN_FUNCPTR *PFNFOGI)(GLenum, GLint);
  236. PFNFOGI Fogi = 0;
  237. typedef void (CODEGEN_FUNCPTR *PFNFOGIV)(GLenum, const GLint *);
  238. PFNFOGIV Fogiv = 0;
  239. typedef void (CODEGEN_FUNCPTR *PFNFRONTFACE)(GLenum);
  240. PFNFRONTFACE FrontFace = 0;
  241. typedef void (CODEGEN_FUNCPTR *PFNFRUSTUM)(GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble);
  242. PFNFRUSTUM Frustum = 0;
  243. typedef GLuint (CODEGEN_FUNCPTR *PFNGENLISTS)(GLsizei);
  244. PFNGENLISTS GenLists = 0;
  245. typedef void (CODEGEN_FUNCPTR *PFNGETBOOLEANV)(GLenum, GLboolean *);
  246. PFNGETBOOLEANV GetBooleanv = 0;
  247. typedef void (CODEGEN_FUNCPTR *PFNGETCLIPPLANE)(GLenum, GLdouble *);
  248. PFNGETCLIPPLANE GetClipPlane = 0;
  249. typedef void (CODEGEN_FUNCPTR *PFNGETDOUBLEV)(GLenum, GLdouble *);
  250. PFNGETDOUBLEV GetDoublev = 0;
  251. typedef GLenum (CODEGEN_FUNCPTR *PFNGETERROR)(void);
  252. PFNGETERROR GetError = 0;
  253. typedef void (CODEGEN_FUNCPTR *PFNGETFLOATV)(GLenum, GLfloat *);
  254. PFNGETFLOATV GetFloatv = 0;
  255. typedef void (CODEGEN_FUNCPTR *PFNGETINTEGERV)(GLenum, GLint *);
  256. PFNGETINTEGERV GetIntegerv = 0;
  257. typedef void (CODEGEN_FUNCPTR *PFNGETLIGHTFV)(GLenum, GLenum, GLfloat *);
  258. PFNGETLIGHTFV GetLightfv = 0;
  259. typedef void (CODEGEN_FUNCPTR *PFNGETLIGHTIV)(GLenum, GLenum, GLint *);
  260. PFNGETLIGHTIV GetLightiv = 0;
  261. typedef void (CODEGEN_FUNCPTR *PFNGETMAPDV)(GLenum, GLenum, GLdouble *);
  262. PFNGETMAPDV GetMapdv = 0;
  263. typedef void (CODEGEN_FUNCPTR *PFNGETMAPFV)(GLenum, GLenum, GLfloat *);
  264. PFNGETMAPFV GetMapfv = 0;
  265. typedef void (CODEGEN_FUNCPTR *PFNGETMAPIV)(GLenum, GLenum, GLint *);
  266. PFNGETMAPIV GetMapiv = 0;
  267. typedef void (CODEGEN_FUNCPTR *PFNGETMATERIALFV)(GLenum, GLenum, GLfloat *);
  268. PFNGETMATERIALFV GetMaterialfv = 0;
  269. typedef void (CODEGEN_FUNCPTR *PFNGETMATERIALIV)(GLenum, GLenum, GLint *);
  270. PFNGETMATERIALIV GetMaterialiv = 0;
  271. typedef void (CODEGEN_FUNCPTR *PFNGETPIXELMAPFV)(GLenum, GLfloat *);
  272. PFNGETPIXELMAPFV GetPixelMapfv = 0;
  273. typedef void (CODEGEN_FUNCPTR *PFNGETPIXELMAPUIV)(GLenum, GLuint *);
  274. PFNGETPIXELMAPUIV GetPixelMapuiv = 0;
  275. typedef void (CODEGEN_FUNCPTR *PFNGETPIXELMAPUSV)(GLenum, GLushort *);
  276. PFNGETPIXELMAPUSV GetPixelMapusv = 0;
  277. typedef void (CODEGEN_FUNCPTR *PFNGETPOLYGONSTIPPLE)(GLubyte *);
  278. PFNGETPOLYGONSTIPPLE GetPolygonStipple = 0;
  279. typedef const GLubyte * (CODEGEN_FUNCPTR *PFNGETSTRING)(GLenum);
  280. PFNGETSTRING GetString = 0;
  281. typedef void (CODEGEN_FUNCPTR *PFNGETTEXENVFV)(GLenum, GLenum, GLfloat *);
  282. PFNGETTEXENVFV GetTexEnvfv = 0;
  283. typedef void (CODEGEN_FUNCPTR *PFNGETTEXENVIV)(GLenum, GLenum, GLint *);
  284. PFNGETTEXENVIV GetTexEnviv = 0;
  285. typedef void (CODEGEN_FUNCPTR *PFNGETTEXGENDV)(GLenum, GLenum, GLdouble *);
  286. PFNGETTEXGENDV GetTexGendv = 0;
  287. typedef void (CODEGEN_FUNCPTR *PFNGETTEXGENFV)(GLenum, GLenum, GLfloat *);
  288. PFNGETTEXGENFV GetTexGenfv = 0;
  289. typedef void (CODEGEN_FUNCPTR *PFNGETTEXGENIV)(GLenum, GLenum, GLint *);
  290. PFNGETTEXGENIV GetTexGeniv = 0;
  291. typedef void (CODEGEN_FUNCPTR *PFNGETTEXIMAGE)(GLenum, GLint, GLenum, GLenum, void *);
  292. PFNGETTEXIMAGE GetTexImage = 0;
  293. typedef void (CODEGEN_FUNCPTR *PFNGETTEXLEVELPARAMETERFV)(GLenum, GLint, GLenum, GLfloat *);
  294. PFNGETTEXLEVELPARAMETERFV GetTexLevelParameterfv = 0;
  295. typedef void (CODEGEN_FUNCPTR *PFNGETTEXLEVELPARAMETERIV)(GLenum, GLint, GLenum, GLint *);
  296. PFNGETTEXLEVELPARAMETERIV GetTexLevelParameteriv = 0;
  297. typedef void (CODEGEN_FUNCPTR *PFNGETTEXPARAMETERFV)(GLenum, GLenum, GLfloat *);
  298. PFNGETTEXPARAMETERFV GetTexParameterfv = 0;
  299. typedef void (CODEGEN_FUNCPTR *PFNGETTEXPARAMETERIV)(GLenum, GLenum, GLint *);
  300. PFNGETTEXPARAMETERIV GetTexParameteriv = 0;
  301. typedef void (CODEGEN_FUNCPTR *PFNHINT)(GLenum, GLenum);
  302. PFNHINT Hint = 0;
  303. typedef void (CODEGEN_FUNCPTR *PFNINDEXMASK)(GLuint);
  304. PFNINDEXMASK IndexMask = 0;
  305. typedef void (CODEGEN_FUNCPTR *PFNINDEXD)(GLdouble);
  306. PFNINDEXD Indexd = 0;
  307. typedef void (CODEGEN_FUNCPTR *PFNINDEXDV)(const GLdouble *);
  308. PFNINDEXDV Indexdv = 0;
  309. typedef void (CODEGEN_FUNCPTR *PFNINDEXF)(GLfloat);
  310. PFNINDEXF Indexf = 0;
  311. typedef void (CODEGEN_FUNCPTR *PFNINDEXFV)(const GLfloat *);
  312. PFNINDEXFV Indexfv = 0;
  313. typedef void (CODEGEN_FUNCPTR *PFNINDEXI)(GLint);
  314. PFNINDEXI Indexi = 0;
  315. typedef void (CODEGEN_FUNCPTR *PFNINDEXIV)(const GLint *);
  316. PFNINDEXIV Indexiv = 0;
  317. typedef void (CODEGEN_FUNCPTR *PFNINDEXS)(GLshort);
  318. PFNINDEXS Indexs = 0;
  319. typedef void (CODEGEN_FUNCPTR *PFNINDEXSV)(const GLshort *);
  320. PFNINDEXSV Indexsv = 0;
  321. typedef void (CODEGEN_FUNCPTR *PFNINITNAMES)(void);
  322. PFNINITNAMES InitNames = 0;
  323. typedef GLboolean (CODEGEN_FUNCPTR *PFNISENABLED)(GLenum);
  324. PFNISENABLED IsEnabled = 0;
  325. typedef GLboolean (CODEGEN_FUNCPTR *PFNISLIST)(GLuint);
  326. PFNISLIST IsList = 0;
  327. typedef void (CODEGEN_FUNCPTR *PFNLIGHTMODELF)(GLenum, GLfloat);
  328. PFNLIGHTMODELF LightModelf = 0;
  329. typedef void (CODEGEN_FUNCPTR *PFNLIGHTMODELFV)(GLenum, const GLfloat *);
  330. PFNLIGHTMODELFV LightModelfv = 0;
  331. typedef void (CODEGEN_FUNCPTR *PFNLIGHTMODELI)(GLenum, GLint);
  332. PFNLIGHTMODELI LightModeli = 0;
  333. typedef void (CODEGEN_FUNCPTR *PFNLIGHTMODELIV)(GLenum, const GLint *);
  334. PFNLIGHTMODELIV LightModeliv = 0;
  335. typedef void (CODEGEN_FUNCPTR *PFNLIGHTF)(GLenum, GLenum, GLfloat);
  336. PFNLIGHTF Lightf = 0;
  337. typedef void (CODEGEN_FUNCPTR *PFNLIGHTFV)(GLenum, GLenum, const GLfloat *);
  338. PFNLIGHTFV Lightfv = 0;
  339. typedef void (CODEGEN_FUNCPTR *PFNLIGHTI)(GLenum, GLenum, GLint);
  340. PFNLIGHTI Lighti = 0;
  341. typedef void (CODEGEN_FUNCPTR *PFNLIGHTIV)(GLenum, GLenum, const GLint *);
  342. PFNLIGHTIV Lightiv = 0;
  343. typedef void (CODEGEN_FUNCPTR *PFNLINESTIPPLE)(GLint, GLushort);
  344. PFNLINESTIPPLE LineStipple = 0;
  345. typedef void (CODEGEN_FUNCPTR *PFNLINEWIDTH)(GLfloat);
  346. PFNLINEWIDTH LineWidth = 0;
  347. typedef void (CODEGEN_FUNCPTR *PFNLISTBASE)(GLuint);
  348. PFNLISTBASE ListBase = 0;
  349. typedef void (CODEGEN_FUNCPTR *PFNLOADIDENTITY)(void);
  350. PFNLOADIDENTITY LoadIdentity = 0;
  351. typedef void (CODEGEN_FUNCPTR *PFNLOADMATRIXD)(const GLdouble *);
  352. PFNLOADMATRIXD LoadMatrixd = 0;
  353. typedef void (CODEGEN_FUNCPTR *PFNLOADMATRIXF)(const GLfloat *);
  354. PFNLOADMATRIXF LoadMatrixf = 0;
  355. typedef void (CODEGEN_FUNCPTR *PFNLOADNAME)(GLuint);
  356. PFNLOADNAME LoadName = 0;
  357. typedef void (CODEGEN_FUNCPTR *PFNLOGICOP)(GLenum);
  358. PFNLOGICOP LogicOp = 0;
  359. typedef void (CODEGEN_FUNCPTR *PFNMAP1D)(GLenum, GLdouble, GLdouble, GLint, GLint, const GLdouble *);
  360. PFNMAP1D Map1d = 0;
  361. typedef void (CODEGEN_FUNCPTR *PFNMAP1F)(GLenum, GLfloat, GLfloat, GLint, GLint, const GLfloat *);
  362. PFNMAP1F Map1f = 0;
  363. typedef void (CODEGEN_FUNCPTR *PFNMAP2D)(GLenum, GLdouble, GLdouble, GLint, GLint, GLdouble, GLdouble, GLint, GLint, const GLdouble *);
  364. PFNMAP2D Map2d = 0;
  365. typedef void (CODEGEN_FUNCPTR *PFNMAP2F)(GLenum, GLfloat, GLfloat, GLint, GLint, GLfloat, GLfloat, GLint, GLint, const GLfloat *);
  366. PFNMAP2F Map2f = 0;
  367. typedef void (CODEGEN_FUNCPTR *PFNMAPGRID1D)(GLint, GLdouble, GLdouble);
  368. PFNMAPGRID1D MapGrid1d = 0;
  369. typedef void (CODEGEN_FUNCPTR *PFNMAPGRID1F)(GLint, GLfloat, GLfloat);
  370. PFNMAPGRID1F MapGrid1f = 0;
  371. typedef void (CODEGEN_FUNCPTR *PFNMAPGRID2D)(GLint, GLdouble, GLdouble, GLint, GLdouble, GLdouble);
  372. PFNMAPGRID2D MapGrid2d = 0;
  373. typedef void (CODEGEN_FUNCPTR *PFNMAPGRID2F)(GLint, GLfloat, GLfloat, GLint, GLfloat, GLfloat);
  374. PFNMAPGRID2F MapGrid2f = 0;
  375. typedef void (CODEGEN_FUNCPTR *PFNMATERIALF)(GLenum, GLenum, GLfloat);
  376. PFNMATERIALF Materialf = 0;
  377. typedef void (CODEGEN_FUNCPTR *PFNMATERIALFV)(GLenum, GLenum, const GLfloat *);
  378. PFNMATERIALFV Materialfv = 0;
  379. typedef void (CODEGEN_FUNCPTR *PFNMATERIALI)(GLenum, GLenum, GLint);
  380. PFNMATERIALI Materiali = 0;
  381. typedef void (CODEGEN_FUNCPTR *PFNMATERIALIV)(GLenum, GLenum, const GLint *);
  382. PFNMATERIALIV Materialiv = 0;
  383. typedef void (CODEGEN_FUNCPTR *PFNMATRIXMODE)(GLenum);
  384. PFNMATRIXMODE MatrixMode = 0;
  385. typedef void (CODEGEN_FUNCPTR *PFNMULTMATRIXD)(const GLdouble *);
  386. PFNMULTMATRIXD MultMatrixd = 0;
  387. typedef void (CODEGEN_FUNCPTR *PFNMULTMATRIXF)(const GLfloat *);
  388. PFNMULTMATRIXF MultMatrixf = 0;
  389. typedef void (CODEGEN_FUNCPTR *PFNNEWLIST)(GLuint, GLenum);
  390. PFNNEWLIST NewList = 0;
  391. typedef void (CODEGEN_FUNCPTR *PFNNORMAL3B)(GLbyte, GLbyte, GLbyte);
  392. PFNNORMAL3B Normal3b = 0;
  393. typedef void (CODEGEN_FUNCPTR *PFNNORMAL3BV)(const GLbyte *);
  394. PFNNORMAL3BV Normal3bv = 0;
  395. typedef void (CODEGEN_FUNCPTR *PFNNORMAL3D)(GLdouble, GLdouble, GLdouble);
  396. PFNNORMAL3D Normal3d = 0;
  397. typedef void (CODEGEN_FUNCPTR *PFNNORMAL3DV)(const GLdouble *);
  398. PFNNORMAL3DV Normal3dv = 0;
  399. typedef void (CODEGEN_FUNCPTR *PFNNORMAL3F)(GLfloat, GLfloat, GLfloat);
  400. PFNNORMAL3F Normal3f = 0;
  401. typedef void (CODEGEN_FUNCPTR *PFNNORMAL3FV)(const GLfloat *);
  402. PFNNORMAL3FV Normal3fv = 0;
  403. typedef void (CODEGEN_FUNCPTR *PFNNORMAL3I)(GLint, GLint, GLint);
  404. PFNNORMAL3I Normal3i = 0;
  405. typedef void (CODEGEN_FUNCPTR *PFNNORMAL3IV)(const GLint *);
  406. PFNNORMAL3IV Normal3iv = 0;
  407. typedef void (CODEGEN_FUNCPTR *PFNNORMAL3S)(GLshort, GLshort, GLshort);
  408. PFNNORMAL3S Normal3s = 0;
  409. typedef void (CODEGEN_FUNCPTR *PFNNORMAL3SV)(const GLshort *);
  410. PFNNORMAL3SV Normal3sv = 0;
  411. typedef void (CODEGEN_FUNCPTR *PFNORTHO)(GLdouble, GLdouble, GLdouble, GLdouble, GLdouble, GLdouble);
  412. PFNORTHO Ortho = 0;
  413. typedef void (CODEGEN_FUNCPTR *PFNPASSTHROUGH)(GLfloat);
  414. PFNPASSTHROUGH PassThrough = 0;
  415. typedef void (CODEGEN_FUNCPTR *PFNPIXELMAPFV)(GLenum, GLsizei, const GLfloat *);
  416. PFNPIXELMAPFV PixelMapfv = 0;
  417. typedef void (CODEGEN_FUNCPTR *PFNPIXELMAPUIV)(GLenum, GLsizei, const GLuint *);
  418. PFNPIXELMAPUIV PixelMapuiv = 0;
  419. typedef void (CODEGEN_FUNCPTR *PFNPIXELMAPUSV)(GLenum, GLsizei, const GLushort *);
  420. PFNPIXELMAPUSV PixelMapusv = 0;
  421. typedef void (CODEGEN_FUNCPTR *PFNPIXELSTOREF)(GLenum, GLfloat);
  422. PFNPIXELSTOREF PixelStoref = 0;
  423. typedef void (CODEGEN_FUNCPTR *PFNPIXELSTOREI)(GLenum, GLint);
  424. PFNPIXELSTOREI PixelStorei = 0;
  425. typedef void (CODEGEN_FUNCPTR *PFNPIXELTRANSFERF)(GLenum, GLfloat);
  426. PFNPIXELTRANSFERF PixelTransferf = 0;
  427. typedef void (CODEGEN_FUNCPTR *PFNPIXELTRANSFERI)(GLenum, GLint);
  428. PFNPIXELTRANSFERI PixelTransferi = 0;
  429. typedef void (CODEGEN_FUNCPTR *PFNPIXELZOOM)(GLfloat, GLfloat);
  430. PFNPIXELZOOM PixelZoom = 0;
  431. typedef void (CODEGEN_FUNCPTR *PFNPOINTSIZE)(GLfloat);
  432. PFNPOINTSIZE PointSize = 0;
  433. typedef void (CODEGEN_FUNCPTR *PFNPOLYGONMODE)(GLenum, GLenum);
  434. PFNPOLYGONMODE PolygonMode = 0;
  435. typedef void (CODEGEN_FUNCPTR *PFNPOLYGONSTIPPLE)(const GLubyte *);
  436. PFNPOLYGONSTIPPLE PolygonStipple = 0;
  437. typedef void (CODEGEN_FUNCPTR *PFNPOPATTRIB)(void);
  438. PFNPOPATTRIB PopAttrib = 0;
  439. typedef void (CODEGEN_FUNCPTR *PFNPOPMATRIX)(void);
  440. PFNPOPMATRIX PopMatrix = 0;
  441. typedef void (CODEGEN_FUNCPTR *PFNPOPNAME)(void);
  442. PFNPOPNAME PopName = 0;
  443. typedef void (CODEGEN_FUNCPTR *PFNPUSHATTRIB)(GLbitfield);
  444. PFNPUSHATTRIB PushAttrib = 0;
  445. typedef void (CODEGEN_FUNCPTR *PFNPUSHMATRIX)(void);
  446. PFNPUSHMATRIX PushMatrix = 0;
  447. typedef void (CODEGEN_FUNCPTR *PFNPUSHNAME)(GLuint);
  448. PFNPUSHNAME PushName = 0;
  449. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS2D)(GLdouble, GLdouble);
  450. PFNRASTERPOS2D RasterPos2d = 0;
  451. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS2DV)(const GLdouble *);
  452. PFNRASTERPOS2DV RasterPos2dv = 0;
  453. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS2F)(GLfloat, GLfloat);
  454. PFNRASTERPOS2F RasterPos2f = 0;
  455. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS2FV)(const GLfloat *);
  456. PFNRASTERPOS2FV RasterPos2fv = 0;
  457. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS2I)(GLint, GLint);
  458. PFNRASTERPOS2I RasterPos2i = 0;
  459. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS2IV)(const GLint *);
  460. PFNRASTERPOS2IV RasterPos2iv = 0;
  461. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS2S)(GLshort, GLshort);
  462. PFNRASTERPOS2S RasterPos2s = 0;
  463. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS2SV)(const GLshort *);
  464. PFNRASTERPOS2SV RasterPos2sv = 0;
  465. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS3D)(GLdouble, GLdouble, GLdouble);
  466. PFNRASTERPOS3D RasterPos3d = 0;
  467. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS3DV)(const GLdouble *);
  468. PFNRASTERPOS3DV RasterPos3dv = 0;
  469. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS3F)(GLfloat, GLfloat, GLfloat);
  470. PFNRASTERPOS3F RasterPos3f = 0;
  471. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS3FV)(const GLfloat *);
  472. PFNRASTERPOS3FV RasterPos3fv = 0;
  473. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS3I)(GLint, GLint, GLint);
  474. PFNRASTERPOS3I RasterPos3i = 0;
  475. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS3IV)(const GLint *);
  476. PFNRASTERPOS3IV RasterPos3iv = 0;
  477. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS3S)(GLshort, GLshort, GLshort);
  478. PFNRASTERPOS3S RasterPos3s = 0;
  479. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS3SV)(const GLshort *);
  480. PFNRASTERPOS3SV RasterPos3sv = 0;
  481. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS4D)(GLdouble, GLdouble, GLdouble, GLdouble);
  482. PFNRASTERPOS4D RasterPos4d = 0;
  483. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS4DV)(const GLdouble *);
  484. PFNRASTERPOS4DV RasterPos4dv = 0;
  485. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS4F)(GLfloat, GLfloat, GLfloat, GLfloat);
  486. PFNRASTERPOS4F RasterPos4f = 0;
  487. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS4FV)(const GLfloat *);
  488. PFNRASTERPOS4FV RasterPos4fv = 0;
  489. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS4I)(GLint, GLint, GLint, GLint);
  490. PFNRASTERPOS4I RasterPos4i = 0;
  491. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS4IV)(const GLint *);
  492. PFNRASTERPOS4IV RasterPos4iv = 0;
  493. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS4S)(GLshort, GLshort, GLshort, GLshort);
  494. PFNRASTERPOS4S RasterPos4s = 0;
  495. typedef void (CODEGEN_FUNCPTR *PFNRASTERPOS4SV)(const GLshort *);
  496. PFNRASTERPOS4SV RasterPos4sv = 0;
  497. typedef void (CODEGEN_FUNCPTR *PFNREADBUFFER)(GLenum);
  498. PFNREADBUFFER ReadBuffer = 0;
  499. typedef void (CODEGEN_FUNCPTR *PFNREADPIXELS)(GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, void *);
  500. PFNREADPIXELS ReadPixels = 0;
  501. typedef void (CODEGEN_FUNCPTR *PFNRECTD)(GLdouble, GLdouble, GLdouble, GLdouble);
  502. PFNRECTD Rectd = 0;
  503. typedef void (CODEGEN_FUNCPTR *PFNRECTDV)(const GLdouble *, const GLdouble *);
  504. PFNRECTDV Rectdv = 0;
  505. typedef void (CODEGEN_FUNCPTR *PFNRECTF)(GLfloat, GLfloat, GLfloat, GLfloat);
  506. PFNRECTF Rectf = 0;
  507. typedef void (CODEGEN_FUNCPTR *PFNRECTFV)(const GLfloat *, const GLfloat *);
  508. PFNRECTFV Rectfv = 0;
  509. typedef void (CODEGEN_FUNCPTR *PFNRECTI)(GLint, GLint, GLint, GLint);
  510. PFNRECTI Recti = 0;
  511. typedef void (CODEGEN_FUNCPTR *PFNRECTIV)(const GLint *, const GLint *);
  512. PFNRECTIV Rectiv = 0;
  513. typedef void (CODEGEN_FUNCPTR *PFNRECTS)(GLshort, GLshort, GLshort, GLshort);
  514. PFNRECTS Rects = 0;
  515. typedef void (CODEGEN_FUNCPTR *PFNRECTSV)(const GLshort *, const GLshort *);
  516. PFNRECTSV Rectsv = 0;
  517. typedef GLint (CODEGEN_FUNCPTR *PFNRENDERMODE)(GLenum);
  518. PFNRENDERMODE RenderMode = 0;
  519. typedef void (CODEGEN_FUNCPTR *PFNROTATED)(GLdouble, GLdouble, GLdouble, GLdouble);
  520. PFNROTATED Rotated = 0;
  521. typedef void (CODEGEN_FUNCPTR *PFNROTATEF)(GLfloat, GLfloat, GLfloat, GLfloat);
  522. PFNROTATEF Rotatef = 0;
  523. typedef void (CODEGEN_FUNCPTR *PFNSCALED)(GLdouble, GLdouble, GLdouble);
  524. PFNSCALED Scaled = 0;
  525. typedef void (CODEGEN_FUNCPTR *PFNSCALEF)(GLfloat, GLfloat, GLfloat);
  526. PFNSCALEF Scalef = 0;
  527. typedef void (CODEGEN_FUNCPTR *PFNSCISSOR)(GLint, GLint, GLsizei, GLsizei);
  528. PFNSCISSOR Scissor = 0;
  529. typedef void (CODEGEN_FUNCPTR *PFNSELECTBUFFER)(GLsizei, GLuint *);
  530. PFNSELECTBUFFER SelectBuffer = 0;
  531. typedef void (CODEGEN_FUNCPTR *PFNSHADEMODEL)(GLenum);
  532. PFNSHADEMODEL ShadeModel = 0;
  533. typedef void (CODEGEN_FUNCPTR *PFNSTENCILFUNC)(GLenum, GLint, GLuint);
  534. PFNSTENCILFUNC StencilFunc = 0;
  535. typedef void (CODEGEN_FUNCPTR *PFNSTENCILMASK)(GLuint);
  536. PFNSTENCILMASK StencilMask = 0;
  537. typedef void (CODEGEN_FUNCPTR *PFNSTENCILOP)(GLenum, GLenum, GLenum);
  538. PFNSTENCILOP StencilOp = 0;
  539. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD1D)(GLdouble);
  540. PFNTEXCOORD1D TexCoord1d = 0;
  541. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD1DV)(const GLdouble *);
  542. PFNTEXCOORD1DV TexCoord1dv = 0;
  543. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD1F)(GLfloat);
  544. PFNTEXCOORD1F TexCoord1f = 0;
  545. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD1FV)(const GLfloat *);
  546. PFNTEXCOORD1FV TexCoord1fv = 0;
  547. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD1I)(GLint);
  548. PFNTEXCOORD1I TexCoord1i = 0;
  549. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD1IV)(const GLint *);
  550. PFNTEXCOORD1IV TexCoord1iv = 0;
  551. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD1S)(GLshort);
  552. PFNTEXCOORD1S TexCoord1s = 0;
  553. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD1SV)(const GLshort *);
  554. PFNTEXCOORD1SV TexCoord1sv = 0;
  555. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD2D)(GLdouble, GLdouble);
  556. PFNTEXCOORD2D TexCoord2d = 0;
  557. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD2DV)(const GLdouble *);
  558. PFNTEXCOORD2DV TexCoord2dv = 0;
  559. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD2F)(GLfloat, GLfloat);
  560. PFNTEXCOORD2F TexCoord2f = 0;
  561. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD2FV)(const GLfloat *);
  562. PFNTEXCOORD2FV TexCoord2fv = 0;
  563. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD2I)(GLint, GLint);
  564. PFNTEXCOORD2I TexCoord2i = 0;
  565. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD2IV)(const GLint *);
  566. PFNTEXCOORD2IV TexCoord2iv = 0;
  567. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD2S)(GLshort, GLshort);
  568. PFNTEXCOORD2S TexCoord2s = 0;
  569. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD2SV)(const GLshort *);
  570. PFNTEXCOORD2SV TexCoord2sv = 0;
  571. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD3D)(GLdouble, GLdouble, GLdouble);
  572. PFNTEXCOORD3D TexCoord3d = 0;
  573. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD3DV)(const GLdouble *);
  574. PFNTEXCOORD3DV TexCoord3dv = 0;
  575. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD3F)(GLfloat, GLfloat, GLfloat);
  576. PFNTEXCOORD3F TexCoord3f = 0;
  577. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD3FV)(const GLfloat *);
  578. PFNTEXCOORD3FV TexCoord3fv = 0;
  579. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD3I)(GLint, GLint, GLint);
  580. PFNTEXCOORD3I TexCoord3i = 0;
  581. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD3IV)(const GLint *);
  582. PFNTEXCOORD3IV TexCoord3iv = 0;
  583. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD3S)(GLshort, GLshort, GLshort);
  584. PFNTEXCOORD3S TexCoord3s = 0;
  585. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD3SV)(const GLshort *);
  586. PFNTEXCOORD3SV TexCoord3sv = 0;
  587. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD4D)(GLdouble, GLdouble, GLdouble, GLdouble);
  588. PFNTEXCOORD4D TexCoord4d = 0;
  589. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD4DV)(const GLdouble *);
  590. PFNTEXCOORD4DV TexCoord4dv = 0;
  591. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD4F)(GLfloat, GLfloat, GLfloat, GLfloat);
  592. PFNTEXCOORD4F TexCoord4f = 0;
  593. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD4FV)(const GLfloat *);
  594. PFNTEXCOORD4FV TexCoord4fv = 0;
  595. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD4I)(GLint, GLint, GLint, GLint);
  596. PFNTEXCOORD4I TexCoord4i = 0;
  597. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD4IV)(const GLint *);
  598. PFNTEXCOORD4IV TexCoord4iv = 0;
  599. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD4S)(GLshort, GLshort, GLshort, GLshort);
  600. PFNTEXCOORD4S TexCoord4s = 0;
  601. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORD4SV)(const GLshort *);
  602. PFNTEXCOORD4SV TexCoord4sv = 0;
  603. typedef void (CODEGEN_FUNCPTR *PFNTEXENVF)(GLenum, GLenum, GLfloat);
  604. PFNTEXENVF TexEnvf = 0;
  605. typedef void (CODEGEN_FUNCPTR *PFNTEXENVFV)(GLenum, GLenum, const GLfloat *);
  606. PFNTEXENVFV TexEnvfv = 0;
  607. typedef void (CODEGEN_FUNCPTR *PFNTEXENVI)(GLenum, GLenum, GLint);
  608. PFNTEXENVI TexEnvi = 0;
  609. typedef void (CODEGEN_FUNCPTR *PFNTEXENVIV)(GLenum, GLenum, const GLint *);
  610. PFNTEXENVIV TexEnviv = 0;
  611. typedef void (CODEGEN_FUNCPTR *PFNTEXGEND)(GLenum, GLenum, GLdouble);
  612. PFNTEXGEND TexGend = 0;
  613. typedef void (CODEGEN_FUNCPTR *PFNTEXGENDV)(GLenum, GLenum, const GLdouble *);
  614. PFNTEXGENDV TexGendv = 0;
  615. typedef void (CODEGEN_FUNCPTR *PFNTEXGENF)(GLenum, GLenum, GLfloat);
  616. PFNTEXGENF TexGenf = 0;
  617. typedef void (CODEGEN_FUNCPTR *PFNTEXGENFV)(GLenum, GLenum, const GLfloat *);
  618. PFNTEXGENFV TexGenfv = 0;
  619. typedef void (CODEGEN_FUNCPTR *PFNTEXGENI)(GLenum, GLenum, GLint);
  620. PFNTEXGENI TexGeni = 0;
  621. typedef void (CODEGEN_FUNCPTR *PFNTEXGENIV)(GLenum, GLenum, const GLint *);
  622. PFNTEXGENIV TexGeniv = 0;
  623. typedef void (CODEGEN_FUNCPTR *PFNTEXIMAGE1D)(GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, const void *);
  624. PFNTEXIMAGE1D TexImage1D = 0;
  625. typedef void (CODEGEN_FUNCPTR *PFNTEXIMAGE2D)(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *);
  626. PFNTEXIMAGE2D TexImage2D = 0;
  627. typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERF)(GLenum, GLenum, GLfloat);
  628. PFNTEXPARAMETERF TexParameterf = 0;
  629. typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERFV)(GLenum, GLenum, const GLfloat *);
  630. PFNTEXPARAMETERFV TexParameterfv = 0;
  631. typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERI)(GLenum, GLenum, GLint);
  632. PFNTEXPARAMETERI TexParameteri = 0;
  633. typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERIV)(GLenum, GLenum, const GLint *);
  634. PFNTEXPARAMETERIV TexParameteriv = 0;
  635. typedef void (CODEGEN_FUNCPTR *PFNTRANSLATED)(GLdouble, GLdouble, GLdouble);
  636. PFNTRANSLATED Translated = 0;
  637. typedef void (CODEGEN_FUNCPTR *PFNTRANSLATEF)(GLfloat, GLfloat, GLfloat);
  638. PFNTRANSLATEF Translatef = 0;
  639. typedef void (CODEGEN_FUNCPTR *PFNVERTEX2D)(GLdouble, GLdouble);
  640. PFNVERTEX2D Vertex2d = 0;
  641. typedef void (CODEGEN_FUNCPTR *PFNVERTEX2DV)(const GLdouble *);
  642. PFNVERTEX2DV Vertex2dv = 0;
  643. typedef void (CODEGEN_FUNCPTR *PFNVERTEX2F)(GLfloat, GLfloat);
  644. PFNVERTEX2F Vertex2f = 0;
  645. typedef void (CODEGEN_FUNCPTR *PFNVERTEX2FV)(const GLfloat *);
  646. PFNVERTEX2FV Vertex2fv = 0;
  647. typedef void (CODEGEN_FUNCPTR *PFNVERTEX2I)(GLint, GLint);
  648. PFNVERTEX2I Vertex2i = 0;
  649. typedef void (CODEGEN_FUNCPTR *PFNVERTEX2IV)(const GLint *);
  650. PFNVERTEX2IV Vertex2iv = 0;
  651. typedef void (CODEGEN_FUNCPTR *PFNVERTEX2S)(GLshort, GLshort);
  652. PFNVERTEX2S Vertex2s = 0;
  653. typedef void (CODEGEN_FUNCPTR *PFNVERTEX2SV)(const GLshort *);
  654. PFNVERTEX2SV Vertex2sv = 0;
  655. typedef void (CODEGEN_FUNCPTR *PFNVERTEX3D)(GLdouble, GLdouble, GLdouble);
  656. PFNVERTEX3D Vertex3d = 0;
  657. typedef void (CODEGEN_FUNCPTR *PFNVERTEX3DV)(const GLdouble *);
  658. PFNVERTEX3DV Vertex3dv = 0;
  659. typedef void (CODEGEN_FUNCPTR *PFNVERTEX3F)(GLfloat, GLfloat, GLfloat);
  660. PFNVERTEX3F Vertex3f = 0;
  661. typedef void (CODEGEN_FUNCPTR *PFNVERTEX3FV)(const GLfloat *);
  662. PFNVERTEX3FV Vertex3fv = 0;
  663. typedef void (CODEGEN_FUNCPTR *PFNVERTEX3I)(GLint, GLint, GLint);
  664. PFNVERTEX3I Vertex3i = 0;
  665. typedef void (CODEGEN_FUNCPTR *PFNVERTEX3IV)(const GLint *);
  666. PFNVERTEX3IV Vertex3iv = 0;
  667. typedef void (CODEGEN_FUNCPTR *PFNVERTEX3S)(GLshort, GLshort, GLshort);
  668. PFNVERTEX3S Vertex3s = 0;
  669. typedef void (CODEGEN_FUNCPTR *PFNVERTEX3SV)(const GLshort *);
  670. PFNVERTEX3SV Vertex3sv = 0;
  671. typedef void (CODEGEN_FUNCPTR *PFNVERTEX4D)(GLdouble, GLdouble, GLdouble, GLdouble);
  672. PFNVERTEX4D Vertex4d = 0;
  673. typedef void (CODEGEN_FUNCPTR *PFNVERTEX4DV)(const GLdouble *);
  674. PFNVERTEX4DV Vertex4dv = 0;
  675. typedef void (CODEGEN_FUNCPTR *PFNVERTEX4F)(GLfloat, GLfloat, GLfloat, GLfloat);
  676. PFNVERTEX4F Vertex4f = 0;
  677. typedef void (CODEGEN_FUNCPTR *PFNVERTEX4FV)(const GLfloat *);
  678. PFNVERTEX4FV Vertex4fv = 0;
  679. typedef void (CODEGEN_FUNCPTR *PFNVERTEX4I)(GLint, GLint, GLint, GLint);
  680. PFNVERTEX4I Vertex4i = 0;
  681. typedef void (CODEGEN_FUNCPTR *PFNVERTEX4IV)(const GLint *);
  682. PFNVERTEX4IV Vertex4iv = 0;
  683. typedef void (CODEGEN_FUNCPTR *PFNVERTEX4S)(GLshort, GLshort, GLshort, GLshort);
  684. PFNVERTEX4S Vertex4s = 0;
  685. typedef void (CODEGEN_FUNCPTR *PFNVERTEX4SV)(const GLshort *);
  686. PFNVERTEX4SV Vertex4sv = 0;
  687. typedef void (CODEGEN_FUNCPTR *PFNVIEWPORT)(GLint, GLint, GLsizei, GLsizei);
  688. PFNVIEWPORT Viewport = 0;
  689. typedef GLboolean (CODEGEN_FUNCPTR *PFNARETEXTURESRESIDENT)(GLsizei, const GLuint *, GLboolean *);
  690. PFNARETEXTURESRESIDENT AreTexturesResident = 0;
  691. typedef void (CODEGEN_FUNCPTR *PFNARRAYELEMENT)(GLint);
  692. PFNARRAYELEMENT ArrayElement = 0;
  693. typedef void (CODEGEN_FUNCPTR *PFNBINDTEXTURE)(GLenum, GLuint);
  694. PFNBINDTEXTURE BindTexture = 0;
  695. typedef void (CODEGEN_FUNCPTR *PFNCOLORPOINTER)(GLint, GLenum, GLsizei, const void *);
  696. PFNCOLORPOINTER ColorPointer = 0;
  697. typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXIMAGE1D)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLint);
  698. PFNCOPYTEXIMAGE1D CopyTexImage1D = 0;
  699. typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXIMAGE2D)(GLenum, GLint, GLenum, GLint, GLint, GLsizei, GLsizei, GLint);
  700. PFNCOPYTEXIMAGE2D CopyTexImage2D = 0;
  701. typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXSUBIMAGE1D)(GLenum, GLint, GLint, GLint, GLint, GLsizei);
  702. PFNCOPYTEXSUBIMAGE1D CopyTexSubImage1D = 0;
  703. typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXSUBIMAGE2D)(GLenum, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei);
  704. PFNCOPYTEXSUBIMAGE2D CopyTexSubImage2D = 0;
  705. typedef void (CODEGEN_FUNCPTR *PFNDELETETEXTURES)(GLsizei, const GLuint *);
  706. PFNDELETETEXTURES DeleteTextures = 0;
  707. typedef void (CODEGEN_FUNCPTR *PFNDISABLECLIENTSTATE)(GLenum);
  708. PFNDISABLECLIENTSTATE DisableClientState = 0;
  709. typedef void (CODEGEN_FUNCPTR *PFNDRAWARRAYS)(GLenum, GLint, GLsizei);
  710. PFNDRAWARRAYS DrawArrays = 0;
  711. typedef void (CODEGEN_FUNCPTR *PFNDRAWELEMENTS)(GLenum, GLsizei, GLenum, const void *);
  712. PFNDRAWELEMENTS DrawElements = 0;
  713. typedef void (CODEGEN_FUNCPTR *PFNEDGEFLAGPOINTER)(GLsizei, const void *);
  714. PFNEDGEFLAGPOINTER EdgeFlagPointer = 0;
  715. typedef void (CODEGEN_FUNCPTR *PFNENABLECLIENTSTATE)(GLenum);
  716. PFNENABLECLIENTSTATE EnableClientState = 0;
  717. typedef void (CODEGEN_FUNCPTR *PFNGENTEXTURES)(GLsizei, GLuint *);
  718. PFNGENTEXTURES GenTextures = 0;
  719. typedef void (CODEGEN_FUNCPTR *PFNGETPOINTERV)(GLenum, void **);
  720. PFNGETPOINTERV GetPointerv = 0;
  721. typedef void (CODEGEN_FUNCPTR *PFNINDEXPOINTER)(GLenum, GLsizei, const void *);
  722. PFNINDEXPOINTER IndexPointer = 0;
  723. typedef void (CODEGEN_FUNCPTR *PFNINDEXUB)(GLubyte);
  724. PFNINDEXUB Indexub = 0;
  725. typedef void (CODEGEN_FUNCPTR *PFNINDEXUBV)(const GLubyte *);
  726. PFNINDEXUBV Indexubv = 0;
  727. typedef void (CODEGEN_FUNCPTR *PFNINTERLEAVEDARRAYS)(GLenum, GLsizei, const void *);
  728. PFNINTERLEAVEDARRAYS InterleavedArrays = 0;
  729. typedef GLboolean (CODEGEN_FUNCPTR *PFNISTEXTURE)(GLuint);
  730. PFNISTEXTURE IsTexture = 0;
  731. typedef void (CODEGEN_FUNCPTR *PFNNORMALPOINTER)(GLenum, GLsizei, const void *);
  732. PFNNORMALPOINTER NormalPointer = 0;
  733. typedef void (CODEGEN_FUNCPTR *PFNPOLYGONOFFSET)(GLfloat, GLfloat);
  734. PFNPOLYGONOFFSET PolygonOffset = 0;
  735. typedef void (CODEGEN_FUNCPTR *PFNPOPCLIENTATTRIB)(void);
  736. PFNPOPCLIENTATTRIB PopClientAttrib = 0;
  737. typedef void (CODEGEN_FUNCPTR *PFNPRIORITIZETEXTURES)(GLsizei, const GLuint *, const GLfloat *);
  738. PFNPRIORITIZETEXTURES PrioritizeTextures = 0;
  739. typedef void (CODEGEN_FUNCPTR *PFNPUSHCLIENTATTRIB)(GLbitfield);
  740. PFNPUSHCLIENTATTRIB PushClientAttrib = 0;
  741. typedef void (CODEGEN_FUNCPTR *PFNTEXCOORDPOINTER)(GLint, GLenum, GLsizei, const void *);
  742. PFNTEXCOORDPOINTER TexCoordPointer = 0;
  743. typedef void (CODEGEN_FUNCPTR *PFNTEXSUBIMAGE1D)(GLenum, GLint, GLint, GLsizei, GLenum, GLenum, const void *);
  744. PFNTEXSUBIMAGE1D TexSubImage1D = 0;
  745. typedef void (CODEGEN_FUNCPTR *PFNTEXSUBIMAGE2D)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const void *);
  746. PFNTEXSUBIMAGE2D TexSubImage2D = 0;
  747. typedef void (CODEGEN_FUNCPTR *PFNVERTEXPOINTER)(GLint, GLenum, GLsizei, const void *);
  748. PFNVERTEXPOINTER VertexPointer = 0;
  749. typedef void (CODEGEN_FUNCPTR *PFNCOPYTEXSUBIMAGE3D)(GLenum, GLint, GLint, GLint, GLint, GLint, GLint, GLsizei, GLsizei);
  750. PFNCOPYTEXSUBIMAGE3D CopyTexSubImage3D = 0;
  751. typedef void (CODEGEN_FUNCPTR *PFNDRAWRANGEELEMENTS)(GLenum, GLuint, GLuint, GLsizei, GLenum, const void *);
  752. PFNDRAWRANGEELEMENTS DrawRangeElements = 0;
  753. typedef void (CODEGEN_FUNCPTR *PFNTEXIMAGE3D)(GLenum, GLint, GLint, GLsizei, GLsizei, GLsizei, GLint, GLenum, GLenum, const void *);
  754. PFNTEXIMAGE3D TexImage3D = 0;
  755. typedef void (CODEGEN_FUNCPTR *PFNTEXSUBIMAGE3D)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLenum, const void *);
  756. PFNTEXSUBIMAGE3D TexSubImage3D = 0;
  757. typedef void (CODEGEN_FUNCPTR *PFNACTIVETEXTURE)(GLenum);
  758. PFNACTIVETEXTURE ActiveTexture = 0;
  759. typedef void (CODEGEN_FUNCPTR *PFNCLIENTACTIVETEXTURE)(GLenum);
  760. PFNCLIENTACTIVETEXTURE ClientActiveTexture = 0;
  761. typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXIMAGE1D)(GLenum, GLint, GLenum, GLsizei, GLint, GLsizei, const void *);
  762. PFNCOMPRESSEDTEXIMAGE1D CompressedTexImage1D = 0;
  763. typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXIMAGE2D)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLint, GLsizei, const void *);
  764. PFNCOMPRESSEDTEXIMAGE2D CompressedTexImage2D = 0;
  765. typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXIMAGE3D)(GLenum, GLint, GLenum, GLsizei, GLsizei, GLsizei, GLint, GLsizei, const void *);
  766. PFNCOMPRESSEDTEXIMAGE3D CompressedTexImage3D = 0;
  767. typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXSUBIMAGE1D)(GLenum, GLint, GLint, GLsizei, GLenum, GLsizei, const void *);
  768. PFNCOMPRESSEDTEXSUBIMAGE1D CompressedTexSubImage1D = 0;
  769. typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXSUBIMAGE2D)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLsizei, const void *);
  770. PFNCOMPRESSEDTEXSUBIMAGE2D CompressedTexSubImage2D = 0;
  771. typedef void (CODEGEN_FUNCPTR *PFNCOMPRESSEDTEXSUBIMAGE3D)(GLenum, GLint, GLint, GLint, GLint, GLsizei, GLsizei, GLsizei, GLenum, GLsizei, const void *);
  772. PFNCOMPRESSEDTEXSUBIMAGE3D CompressedTexSubImage3D = 0;
  773. typedef void (CODEGEN_FUNCPTR *PFNGETCOMPRESSEDTEXIMAGE)(GLenum, GLint, void *);
  774. PFNGETCOMPRESSEDTEXIMAGE GetCompressedTexImage = 0;
  775. typedef void (CODEGEN_FUNCPTR *PFNLOADTRANSPOSEMATRIXD)(const GLdouble *);
  776. PFNLOADTRANSPOSEMATRIXD LoadTransposeMatrixd = 0;
  777. typedef void (CODEGEN_FUNCPTR *PFNLOADTRANSPOSEMATRIXF)(const GLfloat *);
  778. PFNLOADTRANSPOSEMATRIXF LoadTransposeMatrixf = 0;
  779. typedef void (CODEGEN_FUNCPTR *PFNMULTTRANSPOSEMATRIXD)(const GLdouble *);
  780. PFNMULTTRANSPOSEMATRIXD MultTransposeMatrixd = 0;
  781. typedef void (CODEGEN_FUNCPTR *PFNMULTTRANSPOSEMATRIXF)(const GLfloat *);
  782. PFNMULTTRANSPOSEMATRIXF MultTransposeMatrixf = 0;
  783. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD1D)(GLenum, GLdouble);
  784. PFNMULTITEXCOORD1D MultiTexCoord1d = 0;
  785. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD1DV)(GLenum, const GLdouble *);
  786. PFNMULTITEXCOORD1DV MultiTexCoord1dv = 0;
  787. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD1F)(GLenum, GLfloat);
  788. PFNMULTITEXCOORD1F MultiTexCoord1f = 0;
  789. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD1FV)(GLenum, const GLfloat *);
  790. PFNMULTITEXCOORD1FV MultiTexCoord1fv = 0;
  791. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD1I)(GLenum, GLint);
  792. PFNMULTITEXCOORD1I MultiTexCoord1i = 0;
  793. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD1IV)(GLenum, const GLint *);
  794. PFNMULTITEXCOORD1IV MultiTexCoord1iv = 0;
  795. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD1S)(GLenum, GLshort);
  796. PFNMULTITEXCOORD1S MultiTexCoord1s = 0;
  797. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD1SV)(GLenum, const GLshort *);
  798. PFNMULTITEXCOORD1SV MultiTexCoord1sv = 0;
  799. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD2D)(GLenum, GLdouble, GLdouble);
  800. PFNMULTITEXCOORD2D MultiTexCoord2d = 0;
  801. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD2DV)(GLenum, const GLdouble *);
  802. PFNMULTITEXCOORD2DV MultiTexCoord2dv = 0;
  803. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD2F)(GLenum, GLfloat, GLfloat);
  804. PFNMULTITEXCOORD2F MultiTexCoord2f = 0;
  805. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD2FV)(GLenum, const GLfloat *);
  806. PFNMULTITEXCOORD2FV MultiTexCoord2fv = 0;
  807. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD2I)(GLenum, GLint, GLint);
  808. PFNMULTITEXCOORD2I MultiTexCoord2i = 0;
  809. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD2IV)(GLenum, const GLint *);
  810. PFNMULTITEXCOORD2IV MultiTexCoord2iv = 0;
  811. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD2S)(GLenum, GLshort, GLshort);
  812. PFNMULTITEXCOORD2S MultiTexCoord2s = 0;
  813. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD2SV)(GLenum, const GLshort *);
  814. PFNMULTITEXCOORD2SV MultiTexCoord2sv = 0;
  815. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD3D)(GLenum, GLdouble, GLdouble, GLdouble);
  816. PFNMULTITEXCOORD3D MultiTexCoord3d = 0;
  817. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD3DV)(GLenum, const GLdouble *);
  818. PFNMULTITEXCOORD3DV MultiTexCoord3dv = 0;
  819. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD3F)(GLenum, GLfloat, GLfloat, GLfloat);
  820. PFNMULTITEXCOORD3F MultiTexCoord3f = 0;
  821. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD3FV)(GLenum, const GLfloat *);
  822. PFNMULTITEXCOORD3FV MultiTexCoord3fv = 0;
  823. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD3I)(GLenum, GLint, GLint, GLint);
  824. PFNMULTITEXCOORD3I MultiTexCoord3i = 0;
  825. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD3IV)(GLenum, const GLint *);
  826. PFNMULTITEXCOORD3IV MultiTexCoord3iv = 0;
  827. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD3S)(GLenum, GLshort, GLshort, GLshort);
  828. PFNMULTITEXCOORD3S MultiTexCoord3s = 0;
  829. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD3SV)(GLenum, const GLshort *);
  830. PFNMULTITEXCOORD3SV MultiTexCoord3sv = 0;
  831. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD4D)(GLenum, GLdouble, GLdouble, GLdouble, GLdouble);
  832. PFNMULTITEXCOORD4D MultiTexCoord4d = 0;
  833. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD4DV)(GLenum, const GLdouble *);
  834. PFNMULTITEXCOORD4DV MultiTexCoord4dv = 0;
  835. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD4F)(GLenum, GLfloat, GLfloat, GLfloat, GLfloat);
  836. PFNMULTITEXCOORD4F MultiTexCoord4f = 0;
  837. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD4FV)(GLenum, const GLfloat *);
  838. PFNMULTITEXCOORD4FV MultiTexCoord4fv = 0;
  839. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD4I)(GLenum, GLint, GLint, GLint, GLint);
  840. PFNMULTITEXCOORD4I MultiTexCoord4i = 0;
  841. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD4IV)(GLenum, const GLint *);
  842. PFNMULTITEXCOORD4IV MultiTexCoord4iv = 0;
  843. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD4S)(GLenum, GLshort, GLshort, GLshort, GLshort);
  844. PFNMULTITEXCOORD4S MultiTexCoord4s = 0;
  845. typedef void (CODEGEN_FUNCPTR *PFNMULTITEXCOORD4SV)(GLenum, const GLshort *);
  846. PFNMULTITEXCOORD4SV MultiTexCoord4sv = 0;
  847. typedef void (CODEGEN_FUNCPTR *PFNSAMPLECOVERAGE)(GLfloat, GLboolean);
  848. PFNSAMPLECOVERAGE SampleCoverage = 0;
  849. typedef void (CODEGEN_FUNCPTR *PFNBLENDCOLOR)(GLfloat, GLfloat, GLfloat, GLfloat);
  850. PFNBLENDCOLOR BlendColor = 0;
  851. typedef void (CODEGEN_FUNCPTR *PFNBLENDEQUATION)(GLenum);
  852. PFNBLENDEQUATION BlendEquation = 0;
  853. typedef void (CODEGEN_FUNCPTR *PFNBLENDFUNCSEPARATE)(GLenum, GLenum, GLenum, GLenum);
  854. PFNBLENDFUNCSEPARATE BlendFuncSeparate = 0;
  855. typedef void (CODEGEN_FUNCPTR *PFNFOGCOORDPOINTER)(GLenum, GLsizei, const void *);
  856. PFNFOGCOORDPOINTER FogCoordPointer = 0;
  857. typedef void (CODEGEN_FUNCPTR *PFNFOGCOORDD)(GLdouble);
  858. PFNFOGCOORDD FogCoordd = 0;
  859. typedef void (CODEGEN_FUNCPTR *PFNFOGCOORDDV)(const GLdouble *);
  860. PFNFOGCOORDDV FogCoorddv = 0;
  861. typedef void (CODEGEN_FUNCPTR *PFNFOGCOORDF)(GLfloat);
  862. PFNFOGCOORDF FogCoordf = 0;
  863. typedef void (CODEGEN_FUNCPTR *PFNFOGCOORDFV)(const GLfloat *);
  864. PFNFOGCOORDFV FogCoordfv = 0;
  865. typedef void (CODEGEN_FUNCPTR *PFNMULTIDRAWARRAYS)(GLenum, const GLint *, const GLsizei *, GLsizei);
  866. PFNMULTIDRAWARRAYS MultiDrawArrays = 0;
  867. typedef void (CODEGEN_FUNCPTR *PFNMULTIDRAWELEMENTS)(GLenum, const GLsizei *, GLenum, const void *const*, GLsizei);
  868. PFNMULTIDRAWELEMENTS MultiDrawElements = 0;
  869. typedef void (CODEGEN_FUNCPTR *PFNPOINTPARAMETERF)(GLenum, GLfloat);
  870. PFNPOINTPARAMETERF PointParameterf = 0;
  871. typedef void (CODEGEN_FUNCPTR *PFNPOINTPARAMETERFV)(GLenum, const GLfloat *);
  872. PFNPOINTPARAMETERFV PointParameterfv = 0;
  873. typedef void (CODEGEN_FUNCPTR *PFNPOINTPARAMETERI)(GLenum, GLint);
  874. PFNPOINTPARAMETERI PointParameteri = 0;
  875. typedef void (CODEGEN_FUNCPTR *PFNPOINTPARAMETERIV)(GLenum, const GLint *);
  876. PFNPOINTPARAMETERIV PointParameteriv = 0;
  877. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3B)(GLbyte, GLbyte, GLbyte);
  878. PFNSECONDARYCOLOR3B SecondaryColor3b = 0;
  879. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3BV)(const GLbyte *);
  880. PFNSECONDARYCOLOR3BV SecondaryColor3bv = 0;
  881. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3D)(GLdouble, GLdouble, GLdouble);
  882. PFNSECONDARYCOLOR3D SecondaryColor3d = 0;
  883. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3DV)(const GLdouble *);
  884. PFNSECONDARYCOLOR3DV SecondaryColor3dv = 0;
  885. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3F)(GLfloat, GLfloat, GLfloat);
  886. PFNSECONDARYCOLOR3F SecondaryColor3f = 0;
  887. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3FV)(const GLfloat *);
  888. PFNSECONDARYCOLOR3FV SecondaryColor3fv = 0;
  889. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3I)(GLint, GLint, GLint);
  890. PFNSECONDARYCOLOR3I SecondaryColor3i = 0;
  891. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3IV)(const GLint *);
  892. PFNSECONDARYCOLOR3IV SecondaryColor3iv = 0;
  893. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3S)(GLshort, GLshort, GLshort);
  894. PFNSECONDARYCOLOR3S SecondaryColor3s = 0;
  895. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3SV)(const GLshort *);
  896. PFNSECONDARYCOLOR3SV SecondaryColor3sv = 0;
  897. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3UB)(GLubyte, GLubyte, GLubyte);
  898. PFNSECONDARYCOLOR3UB SecondaryColor3ub = 0;
  899. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3UBV)(const GLubyte *);
  900. PFNSECONDARYCOLOR3UBV SecondaryColor3ubv = 0;
  901. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3UI)(GLuint, GLuint, GLuint);
  902. PFNSECONDARYCOLOR3UI SecondaryColor3ui = 0;
  903. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3UIV)(const GLuint *);
  904. PFNSECONDARYCOLOR3UIV SecondaryColor3uiv = 0;
  905. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3US)(GLushort, GLushort, GLushort);
  906. PFNSECONDARYCOLOR3US SecondaryColor3us = 0;
  907. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLOR3USV)(const GLushort *);
  908. PFNSECONDARYCOLOR3USV SecondaryColor3usv = 0;
  909. typedef void (CODEGEN_FUNCPTR *PFNSECONDARYCOLORPOINTER)(GLint, GLenum, GLsizei, const void *);
  910. PFNSECONDARYCOLORPOINTER SecondaryColorPointer = 0;
  911. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS2D)(GLdouble, GLdouble);
  912. PFNWINDOWPOS2D WindowPos2d = 0;
  913. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS2DV)(const GLdouble *);
  914. PFNWINDOWPOS2DV WindowPos2dv = 0;
  915. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS2F)(GLfloat, GLfloat);
  916. PFNWINDOWPOS2F WindowPos2f = 0;
  917. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS2FV)(const GLfloat *);
  918. PFNWINDOWPOS2FV WindowPos2fv = 0;
  919. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS2I)(GLint, GLint);
  920. PFNWINDOWPOS2I WindowPos2i = 0;
  921. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS2IV)(const GLint *);
  922. PFNWINDOWPOS2IV WindowPos2iv = 0;
  923. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS2S)(GLshort, GLshort);
  924. PFNWINDOWPOS2S WindowPos2s = 0;
  925. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS2SV)(const GLshort *);
  926. PFNWINDOWPOS2SV WindowPos2sv = 0;
  927. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS3D)(GLdouble, GLdouble, GLdouble);
  928. PFNWINDOWPOS3D WindowPos3d = 0;
  929. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS3DV)(const GLdouble *);
  930. PFNWINDOWPOS3DV WindowPos3dv = 0;
  931. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS3F)(GLfloat, GLfloat, GLfloat);
  932. PFNWINDOWPOS3F WindowPos3f = 0;
  933. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS3FV)(const GLfloat *);
  934. PFNWINDOWPOS3FV WindowPos3fv = 0;
  935. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS3I)(GLint, GLint, GLint);
  936. PFNWINDOWPOS3I WindowPos3i = 0;
  937. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS3IV)(const GLint *);
  938. PFNWINDOWPOS3IV WindowPos3iv = 0;
  939. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS3S)(GLshort, GLshort, GLshort);
  940. PFNWINDOWPOS3S WindowPos3s = 0;
  941. typedef void (CODEGEN_FUNCPTR *PFNWINDOWPOS3SV)(const GLshort *);
  942. PFNWINDOWPOS3SV WindowPos3sv = 0;
  943. typedef void (CODEGEN_FUNCPTR *PFNBEGINQUERY)(GLenum, GLuint);
  944. PFNBEGINQUERY BeginQuery = 0;
  945. typedef void (CODEGEN_FUNCPTR *PFNBINDBUFFER)(GLenum, GLuint);
  946. PFNBINDBUFFER BindBuffer = 0;
  947. typedef void (CODEGEN_FUNCPTR *PFNBUFFERDATA)(GLenum, GLsizeiptr, const void *, GLenum);
  948. PFNBUFFERDATA BufferData = 0;
  949. typedef void (CODEGEN_FUNCPTR *PFNBUFFERSUBDATA)(GLenum, GLintptr, GLsizeiptr, const void *);
  950. PFNBUFFERSUBDATA BufferSubData = 0;
  951. typedef void (CODEGEN_FUNCPTR *PFNDELETEBUFFERS)(GLsizei, const GLuint *);
  952. PFNDELETEBUFFERS DeleteBuffers = 0;
  953. typedef void (CODEGEN_FUNCPTR *PFNDELETEQUERIES)(GLsizei, const GLuint *);
  954. PFNDELETEQUERIES DeleteQueries = 0;
  955. typedef void (CODEGEN_FUNCPTR *PFNENDQUERY)(GLenum);
  956. PFNENDQUERY EndQuery = 0;
  957. typedef void (CODEGEN_FUNCPTR *PFNGENBUFFERS)(GLsizei, GLuint *);
  958. PFNGENBUFFERS GenBuffers = 0;
  959. typedef void (CODEGEN_FUNCPTR *PFNGENQUERIES)(GLsizei, GLuint *);
  960. PFNGENQUERIES GenQueries = 0;
  961. typedef void (CODEGEN_FUNCPTR *PFNGETBUFFERPARAMETERIV)(GLenum, GLenum, GLint *);
  962. PFNGETBUFFERPARAMETERIV GetBufferParameteriv = 0;
  963. typedef void (CODEGEN_FUNCPTR *PFNGETBUFFERPOINTERV)(GLenum, GLenum, void **);
  964. PFNGETBUFFERPOINTERV GetBufferPointerv = 0;
  965. typedef void (CODEGEN_FUNCPTR *PFNGETBUFFERSUBDATA)(GLenum, GLintptr, GLsizeiptr, void *);
  966. PFNGETBUFFERSUBDATA GetBufferSubData = 0;
  967. typedef void (CODEGEN_FUNCPTR *PFNGETQUERYOBJECTIV)(GLuint, GLenum, GLint *);
  968. PFNGETQUERYOBJECTIV GetQueryObjectiv = 0;
  969. typedef void (CODEGEN_FUNCPTR *PFNGETQUERYOBJECTUIV)(GLuint, GLenum, GLuint *);
  970. PFNGETQUERYOBJECTUIV GetQueryObjectuiv = 0;
  971. typedef void (CODEGEN_FUNCPTR *PFNGETQUERYIV)(GLenum, GLenum, GLint *);
  972. PFNGETQUERYIV GetQueryiv = 0;
  973. typedef GLboolean (CODEGEN_FUNCPTR *PFNISBUFFER)(GLuint);
  974. PFNISBUFFER IsBuffer = 0;
  975. typedef GLboolean (CODEGEN_FUNCPTR *PFNISQUERY)(GLuint);
  976. PFNISQUERY IsQuery = 0;
  977. typedef void * (CODEGEN_FUNCPTR *PFNMAPBUFFER)(GLenum, GLenum);
  978. PFNMAPBUFFER MapBuffer = 0;
  979. typedef GLboolean (CODEGEN_FUNCPTR *PFNUNMAPBUFFER)(GLenum);
  980. PFNUNMAPBUFFER UnmapBuffer = 0;
  981. typedef void (CODEGEN_FUNCPTR *PFNATTACHSHADER)(GLuint, GLuint);
  982. PFNATTACHSHADER AttachShader = 0;
  983. typedef void (CODEGEN_FUNCPTR *PFNBINDATTRIBLOCATION)(GLuint, GLuint, const GLchar *);
  984. PFNBINDATTRIBLOCATION BindAttribLocation = 0;
  985. typedef void (CODEGEN_FUNCPTR *PFNBLENDEQUATIONSEPARATE)(GLenum, GLenum);
  986. PFNBLENDEQUATIONSEPARATE BlendEquationSeparate = 0;
  987. typedef void (CODEGEN_FUNCPTR *PFNCOMPILESHADER)(GLuint);
  988. PFNCOMPILESHADER CompileShader = 0;
  989. typedef GLuint (CODEGEN_FUNCPTR *PFNCREATEPROGRAM)(void);
  990. PFNCREATEPROGRAM CreateProgram = 0;
  991. typedef GLuint (CODEGEN_FUNCPTR *PFNCREATESHADER)(GLenum);
  992. PFNCREATESHADER CreateShader = 0;
  993. typedef void (CODEGEN_FUNCPTR *PFNDELETEPROGRAM)(GLuint);
  994. PFNDELETEPROGRAM DeleteProgram = 0;
  995. typedef void (CODEGEN_FUNCPTR *PFNDELETESHADER)(GLuint);
  996. PFNDELETESHADER DeleteShader = 0;
  997. typedef void (CODEGEN_FUNCPTR *PFNDETACHSHADER)(GLuint, GLuint);
  998. PFNDETACHSHADER DetachShader = 0;
  999. typedef void (CODEGEN_FUNCPTR *PFNDISABLEVERTEXATTRIBARRAY)(GLuint);
  1000. PFNDISABLEVERTEXATTRIBARRAY DisableVertexAttribArray = 0;
  1001. typedef void (CODEGEN_FUNCPTR *PFNDRAWBUFFERS)(GLsizei, const GLenum *);
  1002. PFNDRAWBUFFERS DrawBuffers = 0;
  1003. typedef void (CODEGEN_FUNCPTR *PFNENABLEVERTEXATTRIBARRAY)(GLuint);
  1004. PFNENABLEVERTEXATTRIBARRAY EnableVertexAttribArray = 0;
  1005. typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEATTRIB)(GLuint, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLchar *);
  1006. PFNGETACTIVEATTRIB GetActiveAttrib = 0;
  1007. typedef void (CODEGEN_FUNCPTR *PFNGETACTIVEUNIFORM)(GLuint, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLchar *);
  1008. PFNGETACTIVEUNIFORM GetActiveUniform = 0;
  1009. typedef void (CODEGEN_FUNCPTR *PFNGETATTACHEDSHADERS)(GLuint, GLsizei, GLsizei *, GLuint *);
  1010. PFNGETATTACHEDSHADERS GetAttachedShaders = 0;
  1011. typedef GLint (CODEGEN_FUNCPTR *PFNGETATTRIBLOCATION)(GLuint, const GLchar *);
  1012. PFNGETATTRIBLOCATION GetAttribLocation = 0;
  1013. typedef void (CODEGEN_FUNCPTR *PFNGETPROGRAMINFOLOG)(GLuint, GLsizei, GLsizei *, GLchar *);
  1014. PFNGETPROGRAMINFOLOG GetProgramInfoLog = 0;
  1015. typedef void (CODEGEN_FUNCPTR *PFNGETPROGRAMIV)(GLuint, GLenum, GLint *);
  1016. PFNGETPROGRAMIV GetProgramiv = 0;
  1017. typedef void (CODEGEN_FUNCPTR *PFNGETSHADERINFOLOG)(GLuint, GLsizei, GLsizei *, GLchar *);
  1018. PFNGETSHADERINFOLOG GetShaderInfoLog = 0;
  1019. typedef void (CODEGEN_FUNCPTR *PFNGETSHADERSOURCE)(GLuint, GLsizei, GLsizei *, GLchar *);
  1020. PFNGETSHADERSOURCE GetShaderSource = 0;
  1021. typedef void (CODEGEN_FUNCPTR *PFNGETSHADERIV)(GLuint, GLenum, GLint *);
  1022. PFNGETSHADERIV GetShaderiv = 0;
  1023. typedef GLint (CODEGEN_FUNCPTR *PFNGETUNIFORMLOCATION)(GLuint, const GLchar *);
  1024. PFNGETUNIFORMLOCATION GetUniformLocation = 0;
  1025. typedef void (CODEGEN_FUNCPTR *PFNGETUNIFORMFV)(GLuint, GLint, GLfloat *);
  1026. PFNGETUNIFORMFV GetUniformfv = 0;
  1027. typedef void (CODEGEN_FUNCPTR *PFNGETUNIFORMIV)(GLuint, GLint, GLint *);
  1028. PFNGETUNIFORMIV GetUniformiv = 0;
  1029. typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBPOINTERV)(GLuint, GLenum, void **);
  1030. PFNGETVERTEXATTRIBPOINTERV GetVertexAttribPointerv = 0;
  1031. typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBDV)(GLuint, GLenum, GLdouble *);
  1032. PFNGETVERTEXATTRIBDV GetVertexAttribdv = 0;
  1033. typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBFV)(GLuint, GLenum, GLfloat *);
  1034. PFNGETVERTEXATTRIBFV GetVertexAttribfv = 0;
  1035. typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBIV)(GLuint, GLenum, GLint *);
  1036. PFNGETVERTEXATTRIBIV GetVertexAttribiv = 0;
  1037. typedef GLboolean (CODEGEN_FUNCPTR *PFNISPROGRAM)(GLuint);
  1038. PFNISPROGRAM IsProgram = 0;
  1039. typedef GLboolean (CODEGEN_FUNCPTR *PFNISSHADER)(GLuint);
  1040. PFNISSHADER IsShader = 0;
  1041. typedef void (CODEGEN_FUNCPTR *PFNLINKPROGRAM)(GLuint);
  1042. PFNLINKPROGRAM LinkProgram = 0;
  1043. typedef void (CODEGEN_FUNCPTR *PFNSHADERSOURCE)(GLuint, GLsizei, const GLchar *const*, const GLint *);
  1044. PFNSHADERSOURCE ShaderSource = 0;
  1045. typedef void (CODEGEN_FUNCPTR *PFNSTENCILFUNCSEPARATE)(GLenum, GLenum, GLint, GLuint);
  1046. PFNSTENCILFUNCSEPARATE StencilFuncSeparate = 0;
  1047. typedef void (CODEGEN_FUNCPTR *PFNSTENCILMASKSEPARATE)(GLenum, GLuint);
  1048. PFNSTENCILMASKSEPARATE StencilMaskSeparate = 0;
  1049. typedef void (CODEGEN_FUNCPTR *PFNSTENCILOPSEPARATE)(GLenum, GLenum, GLenum, GLenum);
  1050. PFNSTENCILOPSEPARATE StencilOpSeparate = 0;
  1051. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1F)(GLint, GLfloat);
  1052. PFNUNIFORM1F Uniform1f = 0;
  1053. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1FV)(GLint, GLsizei, const GLfloat *);
  1054. PFNUNIFORM1FV Uniform1fv = 0;
  1055. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1I)(GLint, GLint);
  1056. PFNUNIFORM1I Uniform1i = 0;
  1057. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1IV)(GLint, GLsizei, const GLint *);
  1058. PFNUNIFORM1IV Uniform1iv = 0;
  1059. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2F)(GLint, GLfloat, GLfloat);
  1060. PFNUNIFORM2F Uniform2f = 0;
  1061. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2FV)(GLint, GLsizei, const GLfloat *);
  1062. PFNUNIFORM2FV Uniform2fv = 0;
  1063. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2I)(GLint, GLint, GLint);
  1064. PFNUNIFORM2I Uniform2i = 0;
  1065. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2IV)(GLint, GLsizei, const GLint *);
  1066. PFNUNIFORM2IV Uniform2iv = 0;
  1067. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3F)(GLint, GLfloat, GLfloat, GLfloat);
  1068. PFNUNIFORM3F Uniform3f = 0;
  1069. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3FV)(GLint, GLsizei, const GLfloat *);
  1070. PFNUNIFORM3FV Uniform3fv = 0;
  1071. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3I)(GLint, GLint, GLint, GLint);
  1072. PFNUNIFORM3I Uniform3i = 0;
  1073. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3IV)(GLint, GLsizei, const GLint *);
  1074. PFNUNIFORM3IV Uniform3iv = 0;
  1075. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4F)(GLint, GLfloat, GLfloat, GLfloat, GLfloat);
  1076. PFNUNIFORM4F Uniform4f = 0;
  1077. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4FV)(GLint, GLsizei, const GLfloat *);
  1078. PFNUNIFORM4FV Uniform4fv = 0;
  1079. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4I)(GLint, GLint, GLint, GLint, GLint);
  1080. PFNUNIFORM4I Uniform4i = 0;
  1081. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4IV)(GLint, GLsizei, const GLint *);
  1082. PFNUNIFORM4IV Uniform4iv = 0;
  1083. typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX2FV)(GLint, GLsizei, GLboolean, const GLfloat *);
  1084. PFNUNIFORMMATRIX2FV UniformMatrix2fv = 0;
  1085. typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX3FV)(GLint, GLsizei, GLboolean, const GLfloat *);
  1086. PFNUNIFORMMATRIX3FV UniformMatrix3fv = 0;
  1087. typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX4FV)(GLint, GLsizei, GLboolean, const GLfloat *);
  1088. PFNUNIFORMMATRIX4FV UniformMatrix4fv = 0;
  1089. typedef void (CODEGEN_FUNCPTR *PFNUSEPROGRAM)(GLuint);
  1090. PFNUSEPROGRAM UseProgram = 0;
  1091. typedef void (CODEGEN_FUNCPTR *PFNVALIDATEPROGRAM)(GLuint);
  1092. PFNVALIDATEPROGRAM ValidateProgram = 0;
  1093. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB1D)(GLuint, GLdouble);
  1094. PFNVERTEXATTRIB1D VertexAttrib1d = 0;
  1095. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB1DV)(GLuint, const GLdouble *);
  1096. PFNVERTEXATTRIB1DV VertexAttrib1dv = 0;
  1097. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB1F)(GLuint, GLfloat);
  1098. PFNVERTEXATTRIB1F VertexAttrib1f = 0;
  1099. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB1FV)(GLuint, const GLfloat *);
  1100. PFNVERTEXATTRIB1FV VertexAttrib1fv = 0;
  1101. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB1S)(GLuint, GLshort);
  1102. PFNVERTEXATTRIB1S VertexAttrib1s = 0;
  1103. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB1SV)(GLuint, const GLshort *);
  1104. PFNVERTEXATTRIB1SV VertexAttrib1sv = 0;
  1105. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB2D)(GLuint, GLdouble, GLdouble);
  1106. PFNVERTEXATTRIB2D VertexAttrib2d = 0;
  1107. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB2DV)(GLuint, const GLdouble *);
  1108. PFNVERTEXATTRIB2DV VertexAttrib2dv = 0;
  1109. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB2F)(GLuint, GLfloat, GLfloat);
  1110. PFNVERTEXATTRIB2F VertexAttrib2f = 0;
  1111. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB2FV)(GLuint, const GLfloat *);
  1112. PFNVERTEXATTRIB2FV VertexAttrib2fv = 0;
  1113. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB2S)(GLuint, GLshort, GLshort);
  1114. PFNVERTEXATTRIB2S VertexAttrib2s = 0;
  1115. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB2SV)(GLuint, const GLshort *);
  1116. PFNVERTEXATTRIB2SV VertexAttrib2sv = 0;
  1117. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB3D)(GLuint, GLdouble, GLdouble, GLdouble);
  1118. PFNVERTEXATTRIB3D VertexAttrib3d = 0;
  1119. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB3DV)(GLuint, const GLdouble *);
  1120. PFNVERTEXATTRIB3DV VertexAttrib3dv = 0;
  1121. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB3F)(GLuint, GLfloat, GLfloat, GLfloat);
  1122. PFNVERTEXATTRIB3F VertexAttrib3f = 0;
  1123. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB3FV)(GLuint, const GLfloat *);
  1124. PFNVERTEXATTRIB3FV VertexAttrib3fv = 0;
  1125. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB3S)(GLuint, GLshort, GLshort, GLshort);
  1126. PFNVERTEXATTRIB3S VertexAttrib3s = 0;
  1127. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB3SV)(GLuint, const GLshort *);
  1128. PFNVERTEXATTRIB3SV VertexAttrib3sv = 0;
  1129. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4NBV)(GLuint, const GLbyte *);
  1130. PFNVERTEXATTRIB4NBV VertexAttrib4Nbv = 0;
  1131. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4NIV)(GLuint, const GLint *);
  1132. PFNVERTEXATTRIB4NIV VertexAttrib4Niv = 0;
  1133. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4NSV)(GLuint, const GLshort *);
  1134. PFNVERTEXATTRIB4NSV VertexAttrib4Nsv = 0;
  1135. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4NUB)(GLuint, GLubyte, GLubyte, GLubyte, GLubyte);
  1136. PFNVERTEXATTRIB4NUB VertexAttrib4Nub = 0;
  1137. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4NUBV)(GLuint, const GLubyte *);
  1138. PFNVERTEXATTRIB4NUBV VertexAttrib4Nubv = 0;
  1139. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4NUIV)(GLuint, const GLuint *);
  1140. PFNVERTEXATTRIB4NUIV VertexAttrib4Nuiv = 0;
  1141. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4NUSV)(GLuint, const GLushort *);
  1142. PFNVERTEXATTRIB4NUSV VertexAttrib4Nusv = 0;
  1143. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4BV)(GLuint, const GLbyte *);
  1144. PFNVERTEXATTRIB4BV VertexAttrib4bv = 0;
  1145. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4D)(GLuint, GLdouble, GLdouble, GLdouble, GLdouble);
  1146. PFNVERTEXATTRIB4D VertexAttrib4d = 0;
  1147. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4DV)(GLuint, const GLdouble *);
  1148. PFNVERTEXATTRIB4DV VertexAttrib4dv = 0;
  1149. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4F)(GLuint, GLfloat, GLfloat, GLfloat, GLfloat);
  1150. PFNVERTEXATTRIB4F VertexAttrib4f = 0;
  1151. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4FV)(GLuint, const GLfloat *);
  1152. PFNVERTEXATTRIB4FV VertexAttrib4fv = 0;
  1153. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4IV)(GLuint, const GLint *);
  1154. PFNVERTEXATTRIB4IV VertexAttrib4iv = 0;
  1155. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4S)(GLuint, GLshort, GLshort, GLshort, GLshort);
  1156. PFNVERTEXATTRIB4S VertexAttrib4s = 0;
  1157. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4SV)(GLuint, const GLshort *);
  1158. PFNVERTEXATTRIB4SV VertexAttrib4sv = 0;
  1159. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4UBV)(GLuint, const GLubyte *);
  1160. PFNVERTEXATTRIB4UBV VertexAttrib4ubv = 0;
  1161. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4UIV)(GLuint, const GLuint *);
  1162. PFNVERTEXATTRIB4UIV VertexAttrib4uiv = 0;
  1163. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIB4USV)(GLuint, const GLushort *);
  1164. PFNVERTEXATTRIB4USV VertexAttrib4usv = 0;
  1165. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBPOINTER)(GLuint, GLint, GLenum, GLboolean, GLsizei, const void *);
  1166. PFNVERTEXATTRIBPOINTER VertexAttribPointer = 0;
  1167. typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX2X3FV)(GLint, GLsizei, GLboolean, const GLfloat *);
  1168. PFNUNIFORMMATRIX2X3FV UniformMatrix2x3fv = 0;
  1169. typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX2X4FV)(GLint, GLsizei, GLboolean, const GLfloat *);
  1170. PFNUNIFORMMATRIX2X4FV UniformMatrix2x4fv = 0;
  1171. typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX3X2FV)(GLint, GLsizei, GLboolean, const GLfloat *);
  1172. PFNUNIFORMMATRIX3X2FV UniformMatrix3x2fv = 0;
  1173. typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX3X4FV)(GLint, GLsizei, GLboolean, const GLfloat *);
  1174. PFNUNIFORMMATRIX3X4FV UniformMatrix3x4fv = 0;
  1175. typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX4X2FV)(GLint, GLsizei, GLboolean, const GLfloat *);
  1176. PFNUNIFORMMATRIX4X2FV UniformMatrix4x2fv = 0;
  1177. typedef void (CODEGEN_FUNCPTR *PFNUNIFORMMATRIX4X3FV)(GLint, GLsizei, GLboolean, const GLfloat *);
  1178. PFNUNIFORMMATRIX4X3FV UniformMatrix4x3fv = 0;
  1179. typedef void (CODEGEN_FUNCPTR *PFNBEGINCONDITIONALRENDER)(GLuint, GLenum);
  1180. PFNBEGINCONDITIONALRENDER BeginConditionalRender = 0;
  1181. typedef void (CODEGEN_FUNCPTR *PFNBEGINTRANSFORMFEEDBACK)(GLenum);
  1182. PFNBEGINTRANSFORMFEEDBACK BeginTransformFeedback = 0;
  1183. typedef void (CODEGEN_FUNCPTR *PFNBINDBUFFERBASE)(GLenum, GLuint, GLuint);
  1184. PFNBINDBUFFERBASE BindBufferBase = 0;
  1185. typedef void (CODEGEN_FUNCPTR *PFNBINDBUFFERRANGE)(GLenum, GLuint, GLuint, GLintptr, GLsizeiptr);
  1186. PFNBINDBUFFERRANGE BindBufferRange = 0;
  1187. typedef void (CODEGEN_FUNCPTR *PFNBINDFRAGDATALOCATION)(GLuint, GLuint, const GLchar *);
  1188. PFNBINDFRAGDATALOCATION BindFragDataLocation = 0;
  1189. typedef void (CODEGEN_FUNCPTR *PFNBINDFRAMEBUFFER)(GLenum, GLuint);
  1190. PFNBINDFRAMEBUFFER BindFramebuffer = 0;
  1191. typedef void (CODEGEN_FUNCPTR *PFNBINDRENDERBUFFER)(GLenum, GLuint);
  1192. PFNBINDRENDERBUFFER BindRenderbuffer = 0;
  1193. typedef void (CODEGEN_FUNCPTR *PFNBINDVERTEXARRAY)(GLuint);
  1194. PFNBINDVERTEXARRAY BindVertexArray = 0;
  1195. typedef void (CODEGEN_FUNCPTR *PFNBLITFRAMEBUFFER)(GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLint, GLbitfield, GLenum);
  1196. PFNBLITFRAMEBUFFER BlitFramebuffer = 0;
  1197. typedef GLenum (CODEGEN_FUNCPTR *PFNCHECKFRAMEBUFFERSTATUS)(GLenum);
  1198. PFNCHECKFRAMEBUFFERSTATUS CheckFramebufferStatus = 0;
  1199. typedef void (CODEGEN_FUNCPTR *PFNCLAMPCOLOR)(GLenum, GLenum);
  1200. PFNCLAMPCOLOR ClampColor = 0;
  1201. typedef void (CODEGEN_FUNCPTR *PFNCLEARBUFFERFI)(GLenum, GLint, GLfloat, GLint);
  1202. PFNCLEARBUFFERFI ClearBufferfi = 0;
  1203. typedef void (CODEGEN_FUNCPTR *PFNCLEARBUFFERFV)(GLenum, GLint, const GLfloat *);
  1204. PFNCLEARBUFFERFV ClearBufferfv = 0;
  1205. typedef void (CODEGEN_FUNCPTR *PFNCLEARBUFFERIV)(GLenum, GLint, const GLint *);
  1206. PFNCLEARBUFFERIV ClearBufferiv = 0;
  1207. typedef void (CODEGEN_FUNCPTR *PFNCLEARBUFFERUIV)(GLenum, GLint, const GLuint *);
  1208. PFNCLEARBUFFERUIV ClearBufferuiv = 0;
  1209. typedef void (CODEGEN_FUNCPTR *PFNCOLORMASKI)(GLuint, GLboolean, GLboolean, GLboolean, GLboolean);
  1210. PFNCOLORMASKI ColorMaski = 0;
  1211. typedef void (CODEGEN_FUNCPTR *PFNDELETEFRAMEBUFFERS)(GLsizei, const GLuint *);
  1212. PFNDELETEFRAMEBUFFERS DeleteFramebuffers = 0;
  1213. typedef void (CODEGEN_FUNCPTR *PFNDELETERENDERBUFFERS)(GLsizei, const GLuint *);
  1214. PFNDELETERENDERBUFFERS DeleteRenderbuffers = 0;
  1215. typedef void (CODEGEN_FUNCPTR *PFNDELETEVERTEXARRAYS)(GLsizei, const GLuint *);
  1216. PFNDELETEVERTEXARRAYS DeleteVertexArrays = 0;
  1217. typedef void (CODEGEN_FUNCPTR *PFNDISABLEI)(GLenum, GLuint);
  1218. PFNDISABLEI Disablei = 0;
  1219. typedef void (CODEGEN_FUNCPTR *PFNENABLEI)(GLenum, GLuint);
  1220. PFNENABLEI Enablei = 0;
  1221. typedef void (CODEGEN_FUNCPTR *PFNENDCONDITIONALRENDER)(void);
  1222. PFNENDCONDITIONALRENDER EndConditionalRender = 0;
  1223. typedef void (CODEGEN_FUNCPTR *PFNENDTRANSFORMFEEDBACK)(void);
  1224. PFNENDTRANSFORMFEEDBACK EndTransformFeedback = 0;
  1225. typedef void (CODEGEN_FUNCPTR *PFNFLUSHMAPPEDBUFFERRANGE)(GLenum, GLintptr, GLsizeiptr);
  1226. PFNFLUSHMAPPEDBUFFERRANGE FlushMappedBufferRange = 0;
  1227. typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERRENDERBUFFER)(GLenum, GLenum, GLenum, GLuint);
  1228. PFNFRAMEBUFFERRENDERBUFFER FramebufferRenderbuffer = 0;
  1229. typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERTEXTURE1D)(GLenum, GLenum, GLenum, GLuint, GLint);
  1230. PFNFRAMEBUFFERTEXTURE1D FramebufferTexture1D = 0;
  1231. typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERTEXTURE2D)(GLenum, GLenum, GLenum, GLuint, GLint);
  1232. PFNFRAMEBUFFERTEXTURE2D FramebufferTexture2D = 0;
  1233. typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERTEXTURE3D)(GLenum, GLenum, GLenum, GLuint, GLint, GLint);
  1234. PFNFRAMEBUFFERTEXTURE3D FramebufferTexture3D = 0;
  1235. typedef void (CODEGEN_FUNCPTR *PFNFRAMEBUFFERTEXTURELAYER)(GLenum, GLenum, GLuint, GLint, GLint);
  1236. PFNFRAMEBUFFERTEXTURELAYER FramebufferTextureLayer = 0;
  1237. typedef void (CODEGEN_FUNCPTR *PFNGENFRAMEBUFFERS)(GLsizei, GLuint *);
  1238. PFNGENFRAMEBUFFERS GenFramebuffers = 0;
  1239. typedef void (CODEGEN_FUNCPTR *PFNGENRENDERBUFFERS)(GLsizei, GLuint *);
  1240. PFNGENRENDERBUFFERS GenRenderbuffers = 0;
  1241. typedef void (CODEGEN_FUNCPTR *PFNGENVERTEXARRAYS)(GLsizei, GLuint *);
  1242. PFNGENVERTEXARRAYS GenVertexArrays = 0;
  1243. typedef void (CODEGEN_FUNCPTR *PFNGENERATEMIPMAP)(GLenum);
  1244. PFNGENERATEMIPMAP GenerateMipmap = 0;
  1245. typedef void (CODEGEN_FUNCPTR *PFNGETBOOLEANI_V)(GLenum, GLuint, GLboolean *);
  1246. PFNGETBOOLEANI_V GetBooleani_v = 0;
  1247. typedef GLint (CODEGEN_FUNCPTR *PFNGETFRAGDATALOCATION)(GLuint, const GLchar *);
  1248. PFNGETFRAGDATALOCATION GetFragDataLocation = 0;
  1249. typedef void (CODEGEN_FUNCPTR *PFNGETFRAMEBUFFERATTACHMENTPARAMETERIV)(GLenum, GLenum, GLenum, GLint *);
  1250. PFNGETFRAMEBUFFERATTACHMENTPARAMETERIV GetFramebufferAttachmentParameteriv = 0;
  1251. typedef void (CODEGEN_FUNCPTR *PFNGETINTEGERI_V)(GLenum, GLuint, GLint *);
  1252. PFNGETINTEGERI_V GetIntegeri_v = 0;
  1253. typedef void (CODEGEN_FUNCPTR *PFNGETRENDERBUFFERPARAMETERIV)(GLenum, GLenum, GLint *);
  1254. PFNGETRENDERBUFFERPARAMETERIV GetRenderbufferParameteriv = 0;
  1255. typedef const GLubyte * (CODEGEN_FUNCPTR *PFNGETSTRINGI)(GLenum, GLuint);
  1256. PFNGETSTRINGI GetStringi = 0;
  1257. typedef void (CODEGEN_FUNCPTR *PFNGETTEXPARAMETERIIV)(GLenum, GLenum, GLint *);
  1258. PFNGETTEXPARAMETERIIV GetTexParameterIiv = 0;
  1259. typedef void (CODEGEN_FUNCPTR *PFNGETTEXPARAMETERIUIV)(GLenum, GLenum, GLuint *);
  1260. PFNGETTEXPARAMETERIUIV GetTexParameterIuiv = 0;
  1261. typedef void (CODEGEN_FUNCPTR *PFNGETTRANSFORMFEEDBACKVARYING)(GLuint, GLuint, GLsizei, GLsizei *, GLsizei *, GLenum *, GLchar *);
  1262. PFNGETTRANSFORMFEEDBACKVARYING GetTransformFeedbackVarying = 0;
  1263. typedef void (CODEGEN_FUNCPTR *PFNGETUNIFORMUIV)(GLuint, GLint, GLuint *);
  1264. PFNGETUNIFORMUIV GetUniformuiv = 0;
  1265. typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBIIV)(GLuint, GLenum, GLint *);
  1266. PFNGETVERTEXATTRIBIIV GetVertexAttribIiv = 0;
  1267. typedef void (CODEGEN_FUNCPTR *PFNGETVERTEXATTRIBIUIV)(GLuint, GLenum, GLuint *);
  1268. PFNGETVERTEXATTRIBIUIV GetVertexAttribIuiv = 0;
  1269. typedef GLboolean (CODEGEN_FUNCPTR *PFNISENABLEDI)(GLenum, GLuint);
  1270. PFNISENABLEDI IsEnabledi = 0;
  1271. typedef GLboolean (CODEGEN_FUNCPTR *PFNISFRAMEBUFFER)(GLuint);
  1272. PFNISFRAMEBUFFER IsFramebuffer = 0;
  1273. typedef GLboolean (CODEGEN_FUNCPTR *PFNISRENDERBUFFER)(GLuint);
  1274. PFNISRENDERBUFFER IsRenderbuffer = 0;
  1275. typedef GLboolean (CODEGEN_FUNCPTR *PFNISVERTEXARRAY)(GLuint);
  1276. PFNISVERTEXARRAY IsVertexArray = 0;
  1277. typedef void * (CODEGEN_FUNCPTR *PFNMAPBUFFERRANGE)(GLenum, GLintptr, GLsizeiptr, GLbitfield);
  1278. PFNMAPBUFFERRANGE MapBufferRange = 0;
  1279. typedef void (CODEGEN_FUNCPTR *PFNRENDERBUFFERSTORAGE)(GLenum, GLenum, GLsizei, GLsizei);
  1280. PFNRENDERBUFFERSTORAGE RenderbufferStorage = 0;
  1281. typedef void (CODEGEN_FUNCPTR *PFNRENDERBUFFERSTORAGEMULTISAMPLE)(GLenum, GLsizei, GLenum, GLsizei, GLsizei);
  1282. PFNRENDERBUFFERSTORAGEMULTISAMPLE RenderbufferStorageMultisample = 0;
  1283. typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERIIV)(GLenum, GLenum, const GLint *);
  1284. PFNTEXPARAMETERIIV TexParameterIiv = 0;
  1285. typedef void (CODEGEN_FUNCPTR *PFNTEXPARAMETERIUIV)(GLenum, GLenum, const GLuint *);
  1286. PFNTEXPARAMETERIUIV TexParameterIuiv = 0;
  1287. typedef void (CODEGEN_FUNCPTR *PFNTRANSFORMFEEDBACKVARYINGS)(GLuint, GLsizei, const GLchar *const*, GLenum);
  1288. PFNTRANSFORMFEEDBACKVARYINGS TransformFeedbackVaryings = 0;
  1289. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1UI)(GLint, GLuint);
  1290. PFNUNIFORM1UI Uniform1ui = 0;
  1291. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM1UIV)(GLint, GLsizei, const GLuint *);
  1292. PFNUNIFORM1UIV Uniform1uiv = 0;
  1293. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2UI)(GLint, GLuint, GLuint);
  1294. PFNUNIFORM2UI Uniform2ui = 0;
  1295. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM2UIV)(GLint, GLsizei, const GLuint *);
  1296. PFNUNIFORM2UIV Uniform2uiv = 0;
  1297. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3UI)(GLint, GLuint, GLuint, GLuint);
  1298. PFNUNIFORM3UI Uniform3ui = 0;
  1299. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM3UIV)(GLint, GLsizei, const GLuint *);
  1300. PFNUNIFORM3UIV Uniform3uiv = 0;
  1301. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4UI)(GLint, GLuint, GLuint, GLuint, GLuint);
  1302. PFNUNIFORM4UI Uniform4ui = 0;
  1303. typedef void (CODEGEN_FUNCPTR *PFNUNIFORM4UIV)(GLint, GLsizei, const GLuint *);
  1304. PFNUNIFORM4UIV Uniform4uiv = 0;
  1305. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI1I)(GLuint, GLint);
  1306. PFNVERTEXATTRIBI1I VertexAttribI1i = 0;
  1307. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI1IV)(GLuint, const GLint *);
  1308. PFNVERTEXATTRIBI1IV VertexAttribI1iv = 0;
  1309. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI1UI)(GLuint, GLuint);
  1310. PFNVERTEXATTRIBI1UI VertexAttribI1ui = 0;
  1311. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI1UIV)(GLuint, const GLuint *);
  1312. PFNVERTEXATTRIBI1UIV VertexAttribI1uiv = 0;
  1313. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI2I)(GLuint, GLint, GLint);
  1314. PFNVERTEXATTRIBI2I VertexAttribI2i = 0;
  1315. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI2IV)(GLuint, const GLint *);
  1316. PFNVERTEXATTRIBI2IV VertexAttribI2iv = 0;
  1317. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI2UI)(GLuint, GLuint, GLuint);
  1318. PFNVERTEXATTRIBI2UI VertexAttribI2ui = 0;
  1319. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI2UIV)(GLuint, const GLuint *);
  1320. PFNVERTEXATTRIBI2UIV VertexAttribI2uiv = 0;
  1321. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI3I)(GLuint, GLint, GLint, GLint);
  1322. PFNVERTEXATTRIBI3I VertexAttribI3i = 0;
  1323. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI3IV)(GLuint, const GLint *);
  1324. PFNVERTEXATTRIBI3IV VertexAttribI3iv = 0;
  1325. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI3UI)(GLuint, GLuint, GLuint, GLuint);
  1326. PFNVERTEXATTRIBI3UI VertexAttribI3ui = 0;
  1327. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI3UIV)(GLuint, const GLuint *);
  1328. PFNVERTEXATTRIBI3UIV VertexAttribI3uiv = 0;
  1329. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4BV)(GLuint, const GLbyte *);
  1330. PFNVERTEXATTRIBI4BV VertexAttribI4bv = 0;
  1331. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4I)(GLuint, GLint, GLint, GLint, GLint);
  1332. PFNVERTEXATTRIBI4I VertexAttribI4i = 0;
  1333. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4IV)(GLuint, const GLint *);
  1334. PFNVERTEXATTRIBI4IV VertexAttribI4iv = 0;
  1335. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4SV)(GLuint, const GLshort *);
  1336. PFNVERTEXATTRIBI4SV VertexAttribI4sv = 0;
  1337. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4UBV)(GLuint, const GLubyte *);
  1338. PFNVERTEXATTRIBI4UBV VertexAttribI4ubv = 0;
  1339. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4UI)(GLuint, GLuint, GLuint, GLuint, GLuint);
  1340. PFNVERTEXATTRIBI4UI VertexAttribI4ui = 0;
  1341. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4UIV)(GLuint, const GLuint *);
  1342. PFNVERTEXATTRIBI4UIV VertexAttribI4uiv = 0;
  1343. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBI4USV)(GLuint, const GLushort *);
  1344. PFNVERTEXATTRIBI4USV VertexAttribI4usv = 0;
  1345. typedef void (CODEGEN_FUNCPTR *PFNVERTEXATTRIBIPOINTER)(GLuint, GLint, GLenum, GLsizei, const void *);
  1346. PFNVERTEXATTRIBIPOINTER VertexAttribIPointer = 0;
  1347. static int LoadCoreFunctions()
  1348. {
  1349. int numFailed = 0;
  1350. Accum = reinterpret_cast<PFNACCUM>(IntGetProcAddress("glAccum"));
  1351. if(!Accum) ++numFailed;
  1352. AlphaFunc = reinterpret_cast<PFNALPHAFUNC>(IntGetProcAddress("glAlphaFunc"));
  1353. if(!AlphaFunc) ++numFailed;
  1354. Begin = reinterpret_cast<PFNBEGIN>(IntGetProcAddress("glBegin"));
  1355. if(!Begin) ++numFailed;
  1356. Bitmap = reinterpret_cast<PFNBITMAP>(IntGetProcAddress("glBitmap"));
  1357. if(!Bitmap) ++numFailed;
  1358. BlendFunc = reinterpret_cast<PFNBLENDFUNC>(IntGetProcAddress("glBlendFunc"));
  1359. if(!BlendFunc) ++numFailed;
  1360. CallList = reinterpret_cast<PFNCALLLIST>(IntGetProcAddress("glCallList"));
  1361. if(!CallList) ++numFailed;
  1362. CallLists = reinterpret_cast<PFNCALLLISTS>(IntGetProcAddress("glCallLists"));
  1363. if(!CallLists) ++numFailed;
  1364. Clear = reinterpret_cast<PFNCLEAR>(IntGetProcAddress("glClear"));
  1365. if(!Clear) ++numFailed;
  1366. ClearAccum = reinterpret_cast<PFNCLEARACCUM>(IntGetProcAddress("glClearAccum"));
  1367. if(!ClearAccum) ++numFailed;
  1368. ClearColor = reinterpret_cast<PFNCLEARCOLOR>(IntGetProcAddress("glClearColor"));
  1369. if(!ClearColor) ++numFailed;
  1370. ClearDepth = reinterpret_cast<PFNCLEARDEPTH>(IntGetProcAddress("glClearDepth"));
  1371. if(!ClearDepth) ++numFailed;
  1372. ClearIndex = reinterpret_cast<PFNCLEARINDEX>(IntGetProcAddress("glClearIndex"));
  1373. if(!ClearIndex) ++numFailed;
  1374. ClearStencil = reinterpret_cast<PFNCLEARSTENCIL>(IntGetProcAddress("glClearStencil"));
  1375. if(!ClearStencil) ++numFailed;
  1376. ClipPlane = reinterpret_cast<PFNCLIPPLANE>(IntGetProcAddress("glClipPlane"));
  1377. if(!ClipPlane) ++numFailed;
  1378. Color3b = reinterpret_cast<PFNCOLOR3B>(IntGetProcAddress("glColor3b"));
  1379. if(!Color3b) ++numFailed;
  1380. Color3bv = reinterpret_cast<PFNCOLOR3BV>(IntGetProcAddress("glColor3bv"));
  1381. if(!Color3bv) ++numFailed;
  1382. Color3d = reinterpret_cast<PFNCOLOR3D>(IntGetProcAddress("glColor3d"));
  1383. if(!Color3d) ++numFailed;
  1384. Color3dv = reinterpret_cast<PFNCOLOR3DV>(IntGetProcAddress("glColor3dv"));
  1385. if(!Color3dv) ++numFailed;
  1386. Color3f = reinterpret_cast<PFNCOLOR3F>(IntGetProcAddress("glColor3f"));
  1387. if(!Color3f) ++numFailed;
  1388. Color3fv = reinterpret_cast<PFNCOLOR3FV>(IntGetProcAddress("glColor3fv"));
  1389. if(!Color3fv) ++numFailed;
  1390. Color3i = reinterpret_cast<PFNCOLOR3I>(IntGetProcAddress("glColor3i"));
  1391. if(!Color3i) ++numFailed;
  1392. Color3iv = reinterpret_cast<PFNCOLOR3IV>(IntGetProcAddress("glColor3iv"));
  1393. if(!Color3iv) ++numFailed;
  1394. Color3s = reinterpret_cast<PFNCOLOR3S>(IntGetProcAddress("glColor3s"));
  1395. if(!Color3s) ++numFailed;
  1396. Color3sv = reinterpret_cast<PFNCOLOR3SV>(IntGetProcAddress("glColor3sv"));
  1397. if(!Color3sv) ++numFailed;
  1398. Color3ub = reinterpret_cast<PFNCOLOR3UB>(IntGetProcAddress("glColor3ub"));
  1399. if(!Color3ub) ++numFailed;
  1400. Color3ubv = reinterpret_cast<PFNCOLOR3UBV>(IntGetProcAddress("glColor3ubv"));
  1401. if(!Color3ubv) ++numFailed;
  1402. Color3ui = reinterpret_cast<PFNCOLOR3UI>(IntGetProcAddress("glColor3ui"));
  1403. if(!Color3ui) ++numFailed;
  1404. Color3uiv = reinterpret_cast<PFNCOLOR3UIV>(IntGetProcAddress("glColor3uiv"));
  1405. if(!Color3uiv) ++numFailed;
  1406. Color3us = reinterpret_cast<PFNCOLOR3US>(IntGetProcAddress("glColor3us"));
  1407. if(!Color3us) ++numFailed;
  1408. Color3usv = reinterpret_cast<PFNCOLOR3USV>(IntGetProcAddress("glColor3usv"));
  1409. if(!Color3usv) ++numFailed;
  1410. Color4b = reinterpret_cast<PFNCOLOR4B>(IntGetProcAddress("glColor4b"));
  1411. if(!Color4b) ++numFailed;
  1412. Color4bv = reinterpret_cast<PFNCOLOR4BV>(IntGetProcAddress("glColor4bv"));
  1413. if(!Color4bv) ++numFailed;
  1414. Color4d = reinterpret_cast<PFNCOLOR4D>(IntGetProcAddress("glColor4d"));
  1415. if(!Color4d) ++numFailed;
  1416. Color4dv = reinterpret_cast<PFNCOLOR4DV>(IntGetProcAddress("glColor4dv"));
  1417. if(!Color4dv) ++numFailed;
  1418. Color4f = reinterpret_cast<PFNCOLOR4F>(IntGetProcAddress("glColor4f"));
  1419. if(!Color4f) ++numFailed;
  1420. Color4fv = reinterpret_cast<PFNCOLOR4FV>(IntGetProcAddress("glColor4fv"));
  1421. if(!Color4fv) ++numFailed;
  1422. Color4i = reinterpret_cast<PFNCOLOR4I>(IntGetProcAddress("glColor4i"));
  1423. if(!Color4i) ++numFailed;
  1424. Color4iv = reinterpret_cast<PFNCOLOR4IV>(IntGetProcAddress("glColor4iv"));
  1425. if(!Color4iv) ++numFailed;
  1426. Color4s = reinterpret_cast<PFNCOLOR4S>(IntGetProcAddress("glColor4s"));
  1427. if(!Color4s) ++numFailed;
  1428. Color4sv = reinterpret_cast<PFNCOLOR4SV>(IntGetProcAddress("glColor4sv"));
  1429. if(!Color4sv) ++numFailed;
  1430. Color4ub = reinterpret_cast<PFNCOLOR4UB>(IntGetProcAddress("glColor4ub"));
  1431. if(!Color4ub) ++numFailed;
  1432. Color4ubv = reinterpret_cast<PFNCOLOR4UBV>(IntGetProcAddress("glColor4ubv"));
  1433. if(!Color4ubv) ++numFailed;
  1434. Color4ui = reinterpret_cast<PFNCOLOR4UI>(IntGetProcAddress("glColor4ui"));
  1435. if(!Color4ui) ++numFailed;
  1436. Color4uiv = reinterpret_cast<PFNCOLOR4UIV>(IntGetProcAddress("glColor4uiv"));
  1437. if(!Color4uiv) ++numFailed;
  1438. Color4us = reinterpret_cast<PFNCOLOR4US>(IntGetProcAddress("glColor4us"));
  1439. if(!Color4us) ++numFailed;
  1440. Color4usv = reinterpret_cast<PFNCOLOR4USV>(IntGetProcAddress("glColor4usv"));
  1441. if(!Color4usv) ++numFailed;
  1442. ColorMask = reinterpret_cast<PFNCOLORMASK>(IntGetProcAddress("glColorMask"));
  1443. if(!ColorMask) ++numFailed;
  1444. ColorMaterial = reinterpret_cast<PFNCOLORMATERIAL>(IntGetProcAddress("glColorMaterial"));
  1445. if(!ColorMaterial) ++numFailed;
  1446. CopyPixels = reinterpret_cast<PFNCOPYPIXELS>(IntGetProcAddress("glCopyPixels"));
  1447. if(!CopyPixels) ++numFailed;
  1448. CullFace = reinterpret_cast<PFNCULLFACE>(IntGetProcAddress("glCullFace"));
  1449. if(!CullFace) ++numFailed;
  1450. DeleteLists = reinterpret_cast<PFNDELETELISTS>(IntGetProcAddress("glDeleteLists"));
  1451. if(!DeleteLists) ++numFailed;
  1452. DepthFunc = reinterpret_cast<PFNDEPTHFUNC>(IntGetProcAddress("glDepthFunc"));
  1453. if(!DepthFunc) ++numFailed;
  1454. DepthMask = reinterpret_cast<PFNDEPTHMASK>(IntGetProcAddress("glDepthMask"));
  1455. if(!DepthMask) ++numFailed;
  1456. DepthRange = reinterpret_cast<PFNDEPTHRANGE>(IntGetProcAddress("glDepthRange"));
  1457. if(!DepthRange) ++numFailed;
  1458. Disable = reinterpret_cast<PFNDISABLE>(IntGetProcAddress("glDisable"));
  1459. if(!Disable) ++numFailed;
  1460. DrawBuffer = reinterpret_cast<PFNDRAWBUFFER>(IntGetProcAddress("glDrawBuffer"));
  1461. if(!DrawBuffer) ++numFailed;
  1462. DrawPixels = reinterpret_cast<PFNDRAWPIXELS>(IntGetProcAddress("glDrawPixels"));
  1463. if(!DrawPixels) ++numFailed;
  1464. EdgeFlag = reinterpret_cast<PFNEDGEFLAG>(IntGetProcAddress("glEdgeFlag"));
  1465. if(!EdgeFlag) ++numFailed;
  1466. EdgeFlagv = reinterpret_cast<PFNEDGEFLAGV>(IntGetProcAddress("glEdgeFlagv"));
  1467. if(!EdgeFlagv) ++numFailed;
  1468. Enable = reinterpret_cast<PFNENABLE>(IntGetProcAddress("glEnable"));
  1469. if(!Enable) ++numFailed;
  1470. End = reinterpret_cast<PFNEND>(IntGetProcAddress("glEnd"));
  1471. if(!End) ++numFailed;
  1472. EndList = reinterpret_cast<PFNENDLIST>(IntGetProcAddress("glEndList"));
  1473. if(!EndList) ++numFailed;
  1474. EvalCoord1d = reinterpret_cast<PFNEVALCOORD1D>(IntGetProcAddress("glEvalCoord1d"));
  1475. if(!EvalCoord1d) ++numFailed;
  1476. EvalCoord1dv = reinterpret_cast<PFNEVALCOORD1DV>(IntGetProcAddress("glEvalCoord1dv"));
  1477. if(!EvalCoord1dv) ++numFailed;
  1478. EvalCoord1f = reinterpret_cast<PFNEVALCOORD1F>(IntGetProcAddress("glEvalCoord1f"));
  1479. if(!EvalCoord1f) ++numFailed;
  1480. EvalCoord1fv = reinterpret_cast<PFNEVALCOORD1FV>(IntGetProcAddress("glEvalCoord1fv"));
  1481. if(!EvalCoord1fv) ++numFailed;
  1482. EvalCoord2d = reinterpret_cast<PFNEVALCOORD2D>(IntGetProcAddress("glEvalCoord2d"));
  1483. if(!EvalCoord2d) ++numFailed;
  1484. EvalCoord2dv = reinterpret_cast<PFNEVALCOORD2DV>(IntGetProcAddress("glEvalCoord2dv"));
  1485. if(!EvalCoord2dv) ++numFailed;
  1486. EvalCoord2f = reinterpret_cast<PFNEVALCOORD2F>(IntGetProcAddress("glEvalCoord2f"));
  1487. if(!EvalCoord2f) ++numFailed;
  1488. EvalCoord2fv = reinterpret_cast<PFNEVALCOORD2FV>(IntGetProcAddress("glEvalCoord2fv"));
  1489. if(!EvalCoord2fv) ++numFailed;
  1490. EvalMesh1 = reinterpret_cast<PFNEVALMESH1>(IntGetProcAddress("glEvalMesh1"));
  1491. if(!EvalMesh1) ++numFailed;
  1492. EvalMesh2 = reinterpret_cast<PFNEVALMESH2>(IntGetProcAddress("glEvalMesh2"));
  1493. if(!EvalMesh2) ++numFailed;
  1494. EvalPoint1 = reinterpret_cast<PFNEVALPOINT1>(IntGetProcAddress("glEvalPoint1"));
  1495. if(!EvalPoint1) ++numFailed;
  1496. EvalPoint2 = reinterpret_cast<PFNEVALPOINT2>(IntGetProcAddress("glEvalPoint2"));
  1497. if(!EvalPoint2) ++numFailed;
  1498. FeedbackBuffer = reinterpret_cast<PFNFEEDBACKBUFFER>(IntGetProcAddress("glFeedbackBuffer"));
  1499. if(!FeedbackBuffer) ++numFailed;
  1500. Finish = reinterpret_cast<PFNFINISH>(IntGetProcAddress("glFinish"));
  1501. if(!Finish) ++numFailed;
  1502. Flush = reinterpret_cast<PFNFLUSH>(IntGetProcAddress("glFlush"));
  1503. if(!Flush) ++numFailed;
  1504. Fogf = reinterpret_cast<PFNFOGF>(IntGetProcAddress("glFogf"));
  1505. if(!Fogf) ++numFailed;
  1506. Fogfv = reinterpret_cast<PFNFOGFV>(IntGetProcAddress("glFogfv"));
  1507. if(!Fogfv) ++numFailed;
  1508. Fogi = reinterpret_cast<PFNFOGI>(IntGetProcAddress("glFogi"));
  1509. if(!Fogi) ++numFailed;
  1510. Fogiv = reinterpret_cast<PFNFOGIV>(IntGetProcAddress("glFogiv"));
  1511. if(!Fogiv) ++numFailed;
  1512. FrontFace = reinterpret_cast<PFNFRONTFACE>(IntGetProcAddress("glFrontFace"));
  1513. if(!FrontFace) ++numFailed;
  1514. Frustum = reinterpret_cast<PFNFRUSTUM>(IntGetProcAddress("glFrustum"));
  1515. if(!Frustum) ++numFailed;
  1516. GenLists = reinterpret_cast<PFNGENLISTS>(IntGetProcAddress("glGenLists"));
  1517. if(!GenLists) ++numFailed;
  1518. GetBooleanv = reinterpret_cast<PFNGETBOOLEANV>(IntGetProcAddress("glGetBooleanv"));
  1519. if(!GetBooleanv) ++numFailed;
  1520. GetClipPlane = reinterpret_cast<PFNGETCLIPPLANE>(IntGetProcAddress("glGetClipPlane"));
  1521. if(!GetClipPlane) ++numFailed;
  1522. GetDoublev = reinterpret_cast<PFNGETDOUBLEV>(IntGetProcAddress("glGetDoublev"));
  1523. if(!GetDoublev) ++numFailed;
  1524. GetError = reinterpret_cast<PFNGETERROR>(IntGetProcAddress("glGetError"));
  1525. if(!GetError) ++numFailed;
  1526. GetFloatv = reinterpret_cast<PFNGETFLOATV>(IntGetProcAddress("glGetFloatv"));
  1527. if(!GetFloatv) ++numFailed;
  1528. GetIntegerv = reinterpret_cast<PFNGETINTEGERV>(IntGetProcAddress("glGetIntegerv"));
  1529. if(!GetIntegerv) ++numFailed;
  1530. GetLightfv = reinterpret_cast<PFNGETLIGHTFV>(IntGetProcAddress("glGetLightfv"));
  1531. if(!GetLightfv) ++numFailed;
  1532. GetLightiv = reinterpret_cast<PFNGETLIGHTIV>(IntGetProcAddress("glGetLightiv"));
  1533. if(!GetLightiv) ++numFailed;
  1534. GetMapdv = reinterpret_cast<PFNGETMAPDV>(IntGetProcAddress("glGetMapdv"));
  1535. if(!GetMapdv) ++numFailed;
  1536. GetMapfv = reinterpret_cast<PFNGETMAPFV>(IntGetProcAddress("glGetMapfv"));
  1537. if(!GetMapfv) ++numFailed;
  1538. GetMapiv = reinterpret_cast<PFNGETMAPIV>(IntGetProcAddress("glGetMapiv"));
  1539. if(!GetMapiv) ++numFailed;
  1540. GetMaterialfv = reinterpret_cast<PFNGETMATERIALFV>(IntGetProcAddress("glGetMaterialfv"));
  1541. if(!GetMaterialfv) ++numFailed;
  1542. GetMaterialiv = reinterpret_cast<PFNGETMATERIALIV>(IntGetProcAddress("glGetMaterialiv"));
  1543. if(!GetMaterialiv) ++numFailed;
  1544. GetPixelMapfv = reinterpret_cast<PFNGETPIXELMAPFV>(IntGetProcAddress("glGetPixelMapfv"));
  1545. if(!GetPixelMapfv) ++numFailed;
  1546. GetPixelMapuiv = reinterpret_cast<PFNGETPIXELMAPUIV>(IntGetProcAddress("glGetPixelMapuiv"));
  1547. if(!GetPixelMapuiv) ++numFailed;
  1548. GetPixelMapusv = reinterpret_cast<PFNGETPIXELMAPUSV>(IntGetProcAddress("glGetPixelMapusv"));
  1549. if(!GetPixelMapusv) ++numFailed;
  1550. GetPolygonStipple = reinterpret_cast<PFNGETPOLYGONSTIPPLE>(IntGetProcAddress("glGetPolygonStipple"));
  1551. if(!GetPolygonStipple) ++numFailed;
  1552. GetString = reinterpret_cast<PFNGETSTRING>(IntGetProcAddress("glGetString"));
  1553. if(!GetString) ++numFailed;
  1554. GetTexEnvfv = reinterpret_cast<PFNGETTEXENVFV>(IntGetProcAddress("glGetTexEnvfv"));
  1555. if(!GetTexEnvfv) ++numFailed;
  1556. GetTexEnviv = reinterpret_cast<PFNGETTEXENVIV>(IntGetProcAddress("glGetTexEnviv"));
  1557. if(!GetTexEnviv) ++numFailed;
  1558. GetTexGendv = reinterpret_cast<PFNGETTEXGENDV>(IntGetProcAddress("glGetTexGendv"));
  1559. if(!GetTexGendv) ++numFailed;
  1560. GetTexGenfv = reinterpret_cast<PFNGETTEXGENFV>(IntGetProcAddress("glGetTexGenfv"));
  1561. if(!GetTexGenfv) ++numFailed;
  1562. GetTexGeniv = reinterpret_cast<PFNGETTEXGENIV>(IntGetProcAddress("glGetTexGeniv"));
  1563. if(!GetTexGeniv) ++numFailed;
  1564. GetTexImage = reinterpret_cast<PFNGETTEXIMAGE>(IntGetProcAddress("glGetTexImage"));
  1565. if(!GetTexImage) ++numFailed;
  1566. GetTexLevelParameterfv = reinterpret_cast<PFNGETTEXLEVELPARAMETERFV>(IntGetProcAddress("glGetTexLevelParameterfv"));
  1567. if(!GetTexLevelParameterfv) ++numFailed;
  1568. GetTexLevelParameteriv = reinterpret_cast<PFNGETTEXLEVELPARAMETERIV>(IntGetProcAddress("glGetTexLevelParameteriv"));
  1569. if(!GetTexLevelParameteriv) ++numFailed;
  1570. GetTexParameterfv = reinterpret_cast<PFNGETTEXPARAMETERFV>(IntGetProcAddress("glGetTexParameterfv"));
  1571. if(!GetTexParameterfv) ++numFailed;
  1572. GetTexParameteriv = reinterpret_cast<PFNGETTEXPARAMETERIV>(IntGetProcAddress("glGetTexParameteriv"));
  1573. if(!GetTexParameteriv) ++numFailed;
  1574. Hint = reinterpret_cast<PFNHINT>(IntGetProcAddress("glHint"));
  1575. if(!Hint) ++numFailed;
  1576. IndexMask = reinterpret_cast<PFNINDEXMASK>(IntGetProcAddress("glIndexMask"));
  1577. if(!IndexMask) ++numFailed;
  1578. Indexd = reinterpret_cast<PFNINDEXD>(IntGetProcAddress("glIndexd"));
  1579. if(!Indexd) ++numFailed;
  1580. Indexdv = reinterpret_cast<PFNINDEXDV>(IntGetProcAddress("glIndexdv"));
  1581. if(!Indexdv) ++numFailed;
  1582. Indexf = reinterpret_cast<PFNINDEXF>(IntGetProcAddress("glIndexf"));
  1583. if(!Indexf) ++numFailed;
  1584. Indexfv = reinterpret_cast<PFNINDEXFV>(IntGetProcAddress("glIndexfv"));
  1585. if(!Indexfv) ++numFailed;
  1586. Indexi = reinterpret_cast<PFNINDEXI>(IntGetProcAddress("glIndexi"));
  1587. if(!Indexi) ++numFailed;
  1588. Indexiv = reinterpret_cast<PFNINDEXIV>(IntGetProcAddress("glIndexiv"));
  1589. if(!Indexiv) ++numFailed;
  1590. Indexs = reinterpret_cast<PFNINDEXS>(IntGetProcAddress("glIndexs"));
  1591. if(!Indexs) ++numFailed;
  1592. Indexsv = reinterpret_cast<PFNINDEXSV>(IntGetProcAddress("glIndexsv"));
  1593. if(!Indexsv) ++numFailed;
  1594. InitNames = reinterpret_cast<PFNINITNAMES>(IntGetProcAddress("glInitNames"));
  1595. if(!InitNames) ++numFailed;
  1596. IsEnabled = reinterpret_cast<PFNISENABLED>(IntGetProcAddress("glIsEnabled"));
  1597. if(!IsEnabled) ++numFailed;
  1598. IsList = reinterpret_cast<PFNISLIST>(IntGetProcAddress("glIsList"));
  1599. if(!IsList) ++numFailed;
  1600. LightModelf = reinterpret_cast<PFNLIGHTMODELF>(IntGetProcAddress("glLightModelf"));
  1601. if(!LightModelf) ++numFailed;
  1602. LightModelfv = reinterpret_cast<PFNLIGHTMODELFV>(IntGetProcAddress("glLightModelfv"));
  1603. if(!LightModelfv) ++numFailed;
  1604. LightModeli = reinterpret_cast<PFNLIGHTMODELI>(IntGetProcAddress("glLightModeli"));
  1605. if(!LightModeli) ++numFailed;
  1606. LightModeliv = reinterpret_cast<PFNLIGHTMODELIV>(IntGetProcAddress("glLightModeliv"));
  1607. if(!LightModeliv) ++numFailed;
  1608. Lightf = reinterpret_cast<PFNLIGHTF>(IntGetProcAddress("glLightf"));
  1609. if(!Lightf) ++numFailed;
  1610. Lightfv = reinterpret_cast<PFNLIGHTFV>(IntGetProcAddress("glLightfv"));
  1611. if(!Lightfv) ++numFailed;
  1612. Lighti = reinterpret_cast<PFNLIGHTI>(IntGetProcAddress("glLighti"));
  1613. if(!Lighti) ++numFailed;
  1614. Lightiv = reinterpret_cast<PFNLIGHTIV>(IntGetProcAddress("glLightiv"));
  1615. if(!Lightiv) ++numFailed;
  1616. LineStipple = reinterpret_cast<PFNLINESTIPPLE>(IntGetProcAddress("glLineStipple"));
  1617. if(!LineStipple) ++numFailed;
  1618. LineWidth = reinterpret_cast<PFNLINEWIDTH>(IntGetProcAddress("glLineWidth"));
  1619. if(!LineWidth) ++numFailed;
  1620. ListBase = reinterpret_cast<PFNLISTBASE>(IntGetProcAddress("glListBase"));
  1621. if(!ListBase) ++numFailed;
  1622. LoadIdentity = reinterpret_cast<PFNLOADIDENTITY>(IntGetProcAddress("glLoadIdentity"));
  1623. if(!LoadIdentity) ++numFailed;
  1624. LoadMatrixd = reinterpret_cast<PFNLOADMATRIXD>(IntGetProcAddress("glLoadMatrixd"));
  1625. if(!LoadMatrixd) ++numFailed;
  1626. LoadMatrixf = reinterpret_cast<PFNLOADMATRIXF>(IntGetProcAddress("glLoadMatrixf"));
  1627. if(!LoadMatrixf) ++numFailed;
  1628. LoadName = reinterpret_cast<PFNLOADNAME>(IntGetProcAddress("glLoadName"));
  1629. if(!LoadName) ++numFailed;
  1630. LogicOp = reinterpret_cast<PFNLOGICOP>(IntGetProcAddress("glLogicOp"));
  1631. if(!LogicOp) ++numFailed;
  1632. Map1d = reinterpret_cast<PFNMAP1D>(IntGetProcAddress("glMap1d"));
  1633. if(!Map1d) ++numFailed;
  1634. Map1f = reinterpret_cast<PFNMAP1F>(IntGetProcAddress("glMap1f"));
  1635. if(!Map1f) ++numFailed;
  1636. Map2d = reinterpret_cast<PFNMAP2D>(IntGetProcAddress("glMap2d"));
  1637. if(!Map2d) ++numFailed;
  1638. Map2f = reinterpret_cast<PFNMAP2F>(IntGetProcAddress("glMap2f"));
  1639. if(!Map2f) ++numFailed;
  1640. MapGrid1d = reinterpret_cast<PFNMAPGRID1D>(IntGetProcAddress("glMapGrid1d"));
  1641. if(!MapGrid1d) ++numFailed;
  1642. MapGrid1f = reinterpret_cast<PFNMAPGRID1F>(IntGetProcAddress("glMapGrid1f"));
  1643. if(!MapGrid1f) ++numFailed;
  1644. MapGrid2d = reinterpret_cast<PFNMAPGRID2D>(IntGetProcAddress("glMapGrid2d"));
  1645. if(!MapGrid2d) ++numFailed;
  1646. MapGrid2f = reinterpret_cast<PFNMAPGRID2F>(IntGetProcAddress("glMapGrid2f"));
  1647. if(!MapGrid2f) ++numFailed;
  1648. Materialf = reinterpret_cast<PFNMATERIALF>(IntGetProcAddress("glMaterialf"));
  1649. if(!Materialf) ++numFailed;
  1650. Materialfv = reinterpret_cast<PFNMATERIALFV>(IntGetProcAddress("glMaterialfv"));
  1651. if(!Materialfv) ++numFailed;
  1652. Materiali = reinterpret_cast<PFNMATERIALI>(IntGetProcAddress("glMateriali"));
  1653. if(!Materiali) ++numFailed;
  1654. Materialiv = reinterpret_cast<PFNMATERIALIV>(IntGetProcAddress("glMaterialiv"));
  1655. if(!Materialiv) ++numFailed;
  1656. MatrixMode = reinterpret_cast<PFNMATRIXMODE>(IntGetProcAddress("glMatrixMode"));
  1657. if(!MatrixMode) ++numFailed;
  1658. MultMatrixd = reinterpret_cast<PFNMULTMATRIXD>(IntGetProcAddress("glMultMatrixd"));
  1659. if(!MultMatrixd) ++numFailed;
  1660. MultMatrixf = reinterpret_cast<PFNMULTMATRIXF>(IntGetProcAddress("glMultMatrixf"));
  1661. if(!MultMatrixf) ++numFailed;
  1662. NewList = reinterpret_cast<PFNNEWLIST>(IntGetProcAddress("glNewList"));
  1663. if(!NewList) ++numFailed;
  1664. Normal3b = reinterpret_cast<PFNNORMAL3B>(IntGetProcAddress("glNormal3b"));
  1665. if(!Normal3b) ++numFailed;
  1666. Normal3bv = reinterpret_cast<PFNNORMAL3BV>(IntGetProcAddress("glNormal3bv"));
  1667. if(!Normal3bv) ++numFailed;
  1668. Normal3d = reinterpret_cast<PFNNORMAL3D>(IntGetProcAddress("glNormal3d"));
  1669. if(!Normal3d) ++numFailed;
  1670. Normal3dv = reinterpret_cast<PFNNORMAL3DV>(IntGetProcAddress("glNormal3dv"));
  1671. if(!Normal3dv) ++numFailed;
  1672. Normal3f = reinterpret_cast<PFNNORMAL3F>(IntGetProcAddress("glNormal3f"));
  1673. if(!Normal3f) ++numFailed;
  1674. Normal3fv = reinterpret_cast<PFNNORMAL3FV>(IntGetProcAddress("glNormal3fv"));
  1675. if(!Normal3fv) ++numFailed;
  1676. Normal3i = reinterpret_cast<PFNNORMAL3I>(IntGetProcAddress("glNormal3i"));
  1677. if(!Normal3i) ++numFailed;
  1678. Normal3iv = reinterpret_cast<PFNNORMAL3IV>(IntGetProcAddress("glNormal3iv"));
  1679. if(!Normal3iv) ++numFailed;
  1680. Normal3s = reinterpret_cast<PFNNORMAL3S>(IntGetProcAddress("glNormal3s"));
  1681. if(!Normal3s) ++numFailed;
  1682. Normal3sv = reinterpret_cast<PFNNORMAL3SV>(IntGetProcAddress("glNormal3sv"));
  1683. if(!Normal3sv) ++numFailed;
  1684. Ortho = reinterpret_cast<PFNORTHO>(IntGetProcAddress("glOrtho"));
  1685. if(!Ortho) ++numFailed;
  1686. PassThrough = reinterpret_cast<PFNPASSTHROUGH>(IntGetProcAddress("glPassThrough"));
  1687. if(!PassThrough) ++numFailed;
  1688. PixelMapfv = reinterpret_cast<PFNPIXELMAPFV>(IntGetProcAddress("glPixelMapfv"));
  1689. if(!PixelMapfv) ++numFailed;
  1690. PixelMapuiv = reinterpret_cast<PFNPIXELMAPUIV>(IntGetProcAddress("glPixelMapuiv"));
  1691. if(!PixelMapuiv) ++numFailed;
  1692. PixelMapusv = reinterpret_cast<PFNPIXELMAPUSV>(IntGetProcAddress("glPixelMapusv"));
  1693. if(!PixelMapusv) ++numFailed;
  1694. PixelStoref = reinterpret_cast<PFNPIXELSTOREF>(IntGetProcAddress("glPixelStoref"));
  1695. if(!PixelStoref) ++numFailed;
  1696. PixelStorei = reinterpret_cast<PFNPIXELSTOREI>(IntGetProcAddress("glPixelStorei"));
  1697. if(!PixelStorei) ++numFailed;
  1698. PixelTransferf = reinterpret_cast<PFNPIXELTRANSFERF>(IntGetProcAddress("glPixelTransferf"));
  1699. if(!PixelTransferf) ++numFailed;
  1700. PixelTransferi = reinterpret_cast<PFNPIXELTRANSFERI>(IntGetProcAddress("glPixelTransferi"));
  1701. if(!PixelTransferi) ++numFailed;
  1702. PixelZoom = reinterpret_cast<PFNPIXELZOOM>(IntGetProcAddress("glPixelZoom"));
  1703. if(!PixelZoom) ++numFailed;
  1704. PointSize = reinterpret_cast<PFNPOINTSIZE>(IntGetProcAddress("glPointSize"));
  1705. if(!PointSize) ++numFailed;
  1706. PolygonMode = reinterpret_cast<PFNPOLYGONMODE>(IntGetProcAddress("glPolygonMode"));
  1707. if(!PolygonMode) ++numFailed;
  1708. PolygonStipple = reinterpret_cast<PFNPOLYGONSTIPPLE>(IntGetProcAddress("glPolygonStipple"));
  1709. if(!PolygonStipple) ++numFailed;
  1710. PopAttrib = reinterpret_cast<PFNPOPATTRIB>(IntGetProcAddress("glPopAttrib"));
  1711. if(!PopAttrib) ++numFailed;
  1712. PopMatrix = reinterpret_cast<PFNPOPMATRIX>(IntGetProcAddress("glPopMatrix"));
  1713. if(!PopMatrix) ++numFailed;
  1714. PopName = reinterpret_cast<PFNPOPNAME>(IntGetProcAddress("glPopName"));
  1715. if(!PopName) ++numFailed;
  1716. PushAttrib = reinterpret_cast<PFNPUSHATTRIB>(IntGetProcAddress("glPushAttrib"));
  1717. if(!PushAttrib) ++numFailed;
  1718. PushMatrix = reinterpret_cast<PFNPUSHMATRIX>(IntGetProcAddress("glPushMatrix"));
  1719. if(!PushMatrix) ++numFailed;
  1720. PushName = reinterpret_cast<PFNPUSHNAME>(IntGetProcAddress("glPushName"));
  1721. if(!PushName) ++numFailed;
  1722. RasterPos2d = reinterpret_cast<PFNRASTERPOS2D>(IntGetProcAddress("glRasterPos2d"));
  1723. if(!RasterPos2d) ++numFailed;
  1724. RasterPos2dv = reinterpret_cast<PFNRASTERPOS2DV>(IntGetProcAddress("glRasterPos2dv"));
  1725. if(!RasterPos2dv) ++numFailed;
  1726. RasterPos2f = reinterpret_cast<PFNRASTERPOS2F>(IntGetProcAddress("glRasterPos2f"));
  1727. if(!RasterPos2f) ++numFailed;
  1728. RasterPos2fv = reinterpret_cast<PFNRASTERPOS2FV>(IntGetProcAddress("glRasterPos2fv"));
  1729. if(!RasterPos2fv) ++numFailed;
  1730. RasterPos2i = reinterpret_cast<PFNRASTERPOS2I>(IntGetProcAddress("glRasterPos2i"));
  1731. if(!RasterPos2i) ++numFailed;
  1732. RasterPos2iv = reinterpret_cast<PFNRASTERPOS2IV>(IntGetProcAddress("glRasterPos2iv"));
  1733. if(!RasterPos2iv) ++numFailed;
  1734. RasterPos2s = reinterpret_cast<PFNRASTERPOS2S>(IntGetProcAddress("glRasterPos2s"));
  1735. if(!RasterPos2s) ++numFailed;
  1736. RasterPos2sv = reinterpret_cast<PFNRASTERPOS2SV>(IntGetProcAddress("glRasterPos2sv"));
  1737. if(!RasterPos2sv) ++numFailed;
  1738. RasterPos3d = reinterpret_cast<PFNRASTERPOS3D>(IntGetProcAddress("glRasterPos3d"));
  1739. if(!RasterPos3d) ++numFailed;
  1740. RasterPos3dv = reinterpret_cast<PFNRASTERPOS3DV>(IntGetProcAddress("glRasterPos3dv"));
  1741. if(!RasterPos3dv) ++numFailed;
  1742. RasterPos3f = reinterpret_cast<PFNRASTERPOS3F>(IntGetProcAddress("glRasterPos3f"));
  1743. if(!RasterPos3f) ++numFailed;
  1744. RasterPos3fv = reinterpret_cast<PFNRASTERPOS3FV>(IntGetProcAddress("glRasterPos3fv"));
  1745. if(!RasterPos3fv) ++numFailed;
  1746. RasterPos3i = reinterpret_cast<PFNRASTERPOS3I>(IntGetProcAddress("glRasterPos3i"));
  1747. if(!RasterPos3i) ++numFailed;
  1748. RasterPos3iv = reinterpret_cast<PFNRASTERPOS3IV>(IntGetProcAddress("glRasterPos3iv"));
  1749. if(!RasterPos3iv) ++numFailed;
  1750. RasterPos3s = reinterpret_cast<PFNRASTERPOS3S>(IntGetProcAddress("glRasterPos3s"));
  1751. if(!RasterPos3s) ++numFailed;
  1752. RasterPos3sv = reinterpret_cast<PFNRASTERPOS3SV>(IntGetProcAddress("glRasterPos3sv"));
  1753. if(!RasterPos3sv) ++numFailed;
  1754. RasterPos4d = reinterpret_cast<PFNRASTERPOS4D>(IntGetProcAddress("glRasterPos4d"));
  1755. if(!RasterPos4d) ++numFailed;
  1756. RasterPos4dv = reinterpret_cast<PFNRASTERPOS4DV>(IntGetProcAddress("glRasterPos4dv"));
  1757. if(!RasterPos4dv) ++numFailed;
  1758. RasterPos4f = reinterpret_cast<PFNRASTERPOS4F>(IntGetProcAddress("glRasterPos4f"));
  1759. if(!RasterPos4f) ++numFailed;
  1760. RasterPos4fv = reinterpret_cast<PFNRASTERPOS4FV>(IntGetProcAddress("glRasterPos4fv"));
  1761. if(!RasterPos4fv) ++numFailed;
  1762. RasterPos4i = reinterpret_cast<PFNRASTERPOS4I>(IntGetProcAddress("glRasterPos4i"));
  1763. if(!RasterPos4i) ++numFailed;
  1764. RasterPos4iv = reinterpret_cast<PFNRASTERPOS4IV>(IntGetProcAddress("glRasterPos4iv"));
  1765. if(!RasterPos4iv) ++numFailed;
  1766. RasterPos4s = reinterpret_cast<PFNRASTERPOS4S>(IntGetProcAddress("glRasterPos4s"));
  1767. if(!RasterPos4s) ++numFailed;
  1768. RasterPos4sv = reinterpret_cast<PFNRASTERPOS4SV>(IntGetProcAddress("glRasterPos4sv"));
  1769. if(!RasterPos4sv) ++numFailed;
  1770. ReadBuffer = reinterpret_cast<PFNREADBUFFER>(IntGetProcAddress("glReadBuffer"));
  1771. if(!ReadBuffer) ++numFailed;
  1772. ReadPixels = reinterpret_cast<PFNREADPIXELS>(IntGetProcAddress("glReadPixels"));
  1773. if(!ReadPixels) ++numFailed;
  1774. Rectd = reinterpret_cast<PFNRECTD>(IntGetProcAddress("glRectd"));
  1775. if(!Rectd) ++numFailed;
  1776. Rectdv = reinterpret_cast<PFNRECTDV>(IntGetProcAddress("glRectdv"));
  1777. if(!Rectdv) ++numFailed;
  1778. Rectf = reinterpret_cast<PFNRECTF>(IntGetProcAddress("glRectf"));
  1779. if(!Rectf) ++numFailed;
  1780. Rectfv = reinterpret_cast<PFNRECTFV>(IntGetProcAddress("glRectfv"));
  1781. if(!Rectfv) ++numFailed;
  1782. Recti = reinterpret_cast<PFNRECTI>(IntGetProcAddress("glRecti"));
  1783. if(!Recti) ++numFailed;
  1784. Rectiv = reinterpret_cast<PFNRECTIV>(IntGetProcAddress("glRectiv"));
  1785. if(!Rectiv) ++numFailed;
  1786. Rects = reinterpret_cast<PFNRECTS>(IntGetProcAddress("glRects"));
  1787. if(!Rects) ++numFailed;
  1788. Rectsv = reinterpret_cast<PFNRECTSV>(IntGetProcAddress("glRectsv"));
  1789. if(!Rectsv) ++numFailed;
  1790. RenderMode = reinterpret_cast<PFNRENDERMODE>(IntGetProcAddress("glRenderMode"));
  1791. if(!RenderMode) ++numFailed;
  1792. Rotated = reinterpret_cast<PFNROTATED>(IntGetProcAddress("glRotated"));
  1793. if(!Rotated) ++numFailed;
  1794. Rotatef = reinterpret_cast<PFNROTATEF>(IntGetProcAddress("glRotatef"));
  1795. if(!Rotatef) ++numFailed;
  1796. Scaled = reinterpret_cast<PFNSCALED>(IntGetProcAddress("glScaled"));
  1797. if(!Scaled) ++numFailed;
  1798. Scalef = reinterpret_cast<PFNSCALEF>(IntGetProcAddress("glScalef"));
  1799. if(!Scalef) ++numFailed;
  1800. Scissor = reinterpret_cast<PFNSCISSOR>(IntGetProcAddress("glScissor"));
  1801. if(!Scissor) ++numFailed;
  1802. SelectBuffer = reinterpret_cast<PFNSELECTBUFFER>(IntGetProcAddress("glSelectBuffer"));
  1803. if(!SelectBuffer) ++numFailed;
  1804. ShadeModel = reinterpret_cast<PFNSHADEMODEL>(IntGetProcAddress("glShadeModel"));
  1805. if(!ShadeModel) ++numFailed;
  1806. StencilFunc = reinterpret_cast<PFNSTENCILFUNC>(IntGetProcAddress("glStencilFunc"));
  1807. if(!StencilFunc) ++numFailed;
  1808. StencilMask = reinterpret_cast<PFNSTENCILMASK>(IntGetProcAddress("glStencilMask"));
  1809. if(!StencilMask) ++numFailed;
  1810. StencilOp = reinterpret_cast<PFNSTENCILOP>(IntGetProcAddress("glStencilOp"));
  1811. if(!StencilOp) ++numFailed;
  1812. TexCoord1d = reinterpret_cast<PFNTEXCOORD1D>(IntGetProcAddress("glTexCoord1d"));
  1813. if(!TexCoord1d) ++numFailed;
  1814. TexCoord1dv = reinterpret_cast<PFNTEXCOORD1DV>(IntGetProcAddress("glTexCoord1dv"));
  1815. if(!TexCoord1dv) ++numFailed;
  1816. TexCoord1f = reinterpret_cast<PFNTEXCOORD1F>(IntGetProcAddress("glTexCoord1f"));
  1817. if(!TexCoord1f) ++numFailed;
  1818. TexCoord1fv = reinterpret_cast<PFNTEXCOORD1FV>(IntGetProcAddress("glTexCoord1fv"));
  1819. if(!TexCoord1fv) ++numFailed;
  1820. TexCoord1i = reinterpret_cast<PFNTEXCOORD1I>(IntGetProcAddress("glTexCoord1i"));
  1821. if(!TexCoord1i) ++numFailed;
  1822. TexCoord1iv = reinterpret_cast<PFNTEXCOORD1IV>(IntGetProcAddress("glTexCoord1iv"));
  1823. if(!TexCoord1iv) ++numFailed;
  1824. TexCoord1s = reinterpret_cast<PFNTEXCOORD1S>(IntGetProcAddress("glTexCoord1s"));
  1825. if(!TexCoord1s) ++numFailed;
  1826. TexCoord1sv = reinterpret_cast<PFNTEXCOORD1SV>(IntGetProcAddress("glTexCoord1sv"));
  1827. if(!TexCoord1sv) ++numFailed;
  1828. TexCoord2d = reinterpret_cast<PFNTEXCOORD2D>(IntGetProcAddress("glTexCoord2d"));
  1829. if(!TexCoord2d) ++numFailed;
  1830. TexCoord2dv = reinterpret_cast<PFNTEXCOORD2DV>(IntGetProcAddress("glTexCoord2dv"));
  1831. if(!TexCoord2dv) ++numFailed;
  1832. TexCoord2f = reinterpret_cast<PFNTEXCOORD2F>(IntGetProcAddress("glTexCoord2f"));
  1833. if(!TexCoord2f) ++numFailed;
  1834. TexCoord2fv = reinterpret_cast<PFNTEXCOORD2FV>(IntGetProcAddress("glTexCoord2fv"));
  1835. if(!TexCoord2fv) ++numFailed;
  1836. TexCoord2i = reinterpret_cast<PFNTEXCOORD2I>(IntGetProcAddress("glTexCoord2i"));
  1837. if(!TexCoord2i) ++numFailed;
  1838. TexCoord2iv = reinterpret_cast<PFNTEXCOORD2IV>(IntGetProcAddress("glTexCoord2iv"));
  1839. if(!TexCoord2iv) ++numFailed;
  1840. TexCoord2s = reinterpret_cast<PFNTEXCOORD2S>(IntGetProcAddress("glTexCoord2s"));
  1841. if(!TexCoord2s) ++numFailed;
  1842. TexCoord2sv = reinterpret_cast<PFNTEXCOORD2SV>(IntGetProcAddress("glTexCoord2sv"));
  1843. if(!TexCoord2sv) ++numFailed;
  1844. TexCoord3d = reinterpret_cast<PFNTEXCOORD3D>(IntGetProcAddress("glTexCoord3d"));
  1845. if(!TexCoord3d) ++numFailed;
  1846. TexCoord3dv = reinterpret_cast<PFNTEXCOORD3DV>(IntGetProcAddress("glTexCoord3dv"));
  1847. if(!TexCoord3dv) ++numFailed;
  1848. TexCoord3f = reinterpret_cast<PFNTEXCOORD3F>(IntGetProcAddress("glTexCoord3f"));
  1849. if(!TexCoord3f) ++numFailed;
  1850. TexCoord3fv = reinterpret_cast<PFNTEXCOORD3FV>(IntGetProcAddress("glTexCoord3fv"));
  1851. if(!TexCoord3fv) ++numFailed;
  1852. TexCoord3i = reinterpret_cast<PFNTEXCOORD3I>(IntGetProcAddress("glTexCoord3i"));
  1853. if(!TexCoord3i) ++numFailed;
  1854. TexCoord3iv = reinterpret_cast<PFNTEXCOORD3IV>(IntGetProcAddress("glTexCoord3iv"));
  1855. if(!TexCoord3iv) ++numFailed;
  1856. TexCoord3s = reinterpret_cast<PFNTEXCOORD3S>(IntGetProcAddress("glTexCoord3s"));
  1857. if(!TexCoord3s) ++numFailed;
  1858. TexCoord3sv = reinterpret_cast<PFNTEXCOORD3SV>(IntGetProcAddress("glTexCoord3sv"));
  1859. if(!TexCoord3sv) ++numFailed;
  1860. TexCoord4d = reinterpret_cast<PFNTEXCOORD4D>(IntGetProcAddress("glTexCoord4d"));
  1861. if(!TexCoord4d) ++numFailed;
  1862. TexCoord4dv = reinterpret_cast<PFNTEXCOORD4DV>(IntGetProcAddress("glTexCoord4dv"));
  1863. if(!TexCoord4dv) ++numFailed;
  1864. TexCoord4f = reinterpret_cast<PFNTEXCOORD4F>(IntGetProcAddress("glTexCoord4f"));
  1865. if(!TexCoord4f) ++numFailed;
  1866. TexCoord4fv = reinterpret_cast<PFNTEXCOORD4FV>(IntGetProcAddress("glTexCoord4fv"));
  1867. if(!TexCoord4fv) ++numFailed;
  1868. TexCoord4i = reinterpret_cast<PFNTEXCOORD4I>(IntGetProcAddress("glTexCoord4i"));
  1869. if(!TexCoord4i) ++numFailed;
  1870. TexCoord4iv = reinterpret_cast<PFNTEXCOORD4IV>(IntGetProcAddress("glTexCoord4iv"));
  1871. if(!TexCoord4iv) ++numFailed;
  1872. TexCoord4s = reinterpret_cast<PFNTEXCOORD4S>(IntGetProcAddress("glTexCoord4s"));
  1873. if(!TexCoord4s) ++numFailed;
  1874. TexCoord4sv = reinterpret_cast<PFNTEXCOORD4SV>(IntGetProcAddress("glTexCoord4sv"));
  1875. if(!TexCoord4sv) ++numFailed;
  1876. TexEnvf = reinterpret_cast<PFNTEXENVF>(IntGetProcAddress("glTexEnvf"));
  1877. if(!TexEnvf) ++numFailed;
  1878. TexEnvfv = reinterpret_cast<PFNTEXENVFV>(IntGetProcAddress("glTexEnvfv"));
  1879. if(!TexEnvfv) ++numFailed;
  1880. TexEnvi = reinterpret_cast<PFNTEXENVI>(IntGetProcAddress("glTexEnvi"));
  1881. if(!TexEnvi) ++numFailed;
  1882. TexEnviv = reinterpret_cast<PFNTEXENVIV>(IntGetProcAddress("glTexEnviv"));
  1883. if(!TexEnviv) ++numFailed;
  1884. TexGend = reinterpret_cast<PFNTEXGEND>(IntGetProcAddress("glTexGend"));
  1885. if(!TexGend) ++numFailed;
  1886. TexGendv = reinterpret_cast<PFNTEXGENDV>(IntGetProcAddress("glTexGendv"));
  1887. if(!TexGendv) ++numFailed;
  1888. TexGenf = reinterpret_cast<PFNTEXGENF>(IntGetProcAddress("glTexGenf"));
  1889. if(!TexGenf) ++numFailed;
  1890. TexGenfv = reinterpret_cast<PFNTEXGENFV>(IntGetProcAddress("glTexGenfv"));
  1891. if(!TexGenfv) ++numFailed;
  1892. TexGeni = reinterpret_cast<PFNTEXGENI>(IntGetProcAddress("glTexGeni"));
  1893. if(!TexGeni) ++numFailed;
  1894. TexGeniv = reinterpret_cast<PFNTEXGENIV>(IntGetProcAddress("glTexGeniv"));
  1895. if(!TexGeniv) ++numFailed;
  1896. TexImage1D = reinterpret_cast<PFNTEXIMAGE1D>(IntGetProcAddress("glTexImage1D"));
  1897. if(!TexImage1D) ++numFailed;
  1898. TexImage2D = reinterpret_cast<PFNTEXIMAGE2D>(IntGetProcAddress("glTexImage2D"));
  1899. if(!TexImage2D) ++numFailed;
  1900. TexParameterf = reinterpret_cast<PFNTEXPARAMETERF>(IntGetProcAddress("glTexParameterf"));
  1901. if(!TexParameterf) ++numFailed;
  1902. TexParameterfv = reinterpret_cast<PFNTEXPARAMETERFV>(IntGetProcAddress("glTexParameterfv"));
  1903. if(!TexParameterfv) ++numFailed;
  1904. TexParameteri = reinterpret_cast<PFNTEXPARAMETERI>(IntGetProcAddress("glTexParameteri"));
  1905. if(!TexParameteri) ++numFailed;
  1906. TexParameteriv = reinterpret_cast<PFNTEXPARAMETERIV>(IntGetProcAddress("glTexParameteriv"));
  1907. if(!TexParameteriv) ++numFailed;
  1908. Translated = reinterpret_cast<PFNTRANSLATED>(IntGetProcAddress("glTranslated"));
  1909. if(!Translated) ++numFailed;
  1910. Translatef = reinterpret_cast<PFNTRANSLATEF>(IntGetProcAddress("glTranslatef"));
  1911. if(!Translatef) ++numFailed;
  1912. Vertex2d = reinterpret_cast<PFNVERTEX2D>(IntGetProcAddress("glVertex2d"));
  1913. if(!Vertex2d) ++numFailed;
  1914. Vertex2dv = reinterpret_cast<PFNVERTEX2DV>(IntGetProcAddress("glVertex2dv"));
  1915. if(!Vertex2dv) ++numFailed;
  1916. Vertex2f = reinterpret_cast<PFNVERTEX2F>(IntGetProcAddress("glVertex2f"));
  1917. if(!Vertex2f) ++numFailed;
  1918. Vertex2fv = reinterpret_cast<PFNVERTEX2FV>(IntGetProcAddress("glVertex2fv"));
  1919. if(!Vertex2fv) ++numFailed;
  1920. Vertex2i = reinterpret_cast<PFNVERTEX2I>(IntGetProcAddress("glVertex2i"));
  1921. if(!Vertex2i) ++numFailed;
  1922. Vertex2iv = reinterpret_cast<PFNVERTEX2IV>(IntGetProcAddress("glVertex2iv"));
  1923. if(!Vertex2iv) ++numFailed;
  1924. Vertex2s = reinterpret_cast<PFNVERTEX2S>(IntGetProcAddress("glVertex2s"));
  1925. if(!Vertex2s) ++numFailed;
  1926. Vertex2sv = reinterpret_cast<PFNVERTEX2SV>(IntGetProcAddress("glVertex2sv"));
  1927. if(!Vertex2sv) ++numFailed;
  1928. Vertex3d = reinterpret_cast<PFNVERTEX3D>(IntGetProcAddress("glVertex3d"));
  1929. if(!Vertex3d) ++numFailed;
  1930. Vertex3dv = reinterpret_cast<PFNVERTEX3DV>(IntGetProcAddress("glVertex3dv"));
  1931. if(!Vertex3dv) ++numFailed;
  1932. Vertex3f = reinterpret_cast<PFNVERTEX3F>(IntGetProcAddress("glVertex3f"));
  1933. if(!Vertex3f) ++numFailed;
  1934. Vertex3fv = reinterpret_cast<PFNVERTEX3FV>(IntGetProcAddress("glVertex3fv"));
  1935. if(!Vertex3fv) ++numFailed;
  1936. Vertex3i = reinterpret_cast<PFNVERTEX3I>(IntGetProcAddress("glVertex3i"));
  1937. if(!Vertex3i) ++numFailed;
  1938. Vertex3iv = reinterpret_cast<PFNVERTEX3IV>(IntGetProcAddress("glVertex3iv"));
  1939. if(!Vertex3iv) ++numFailed;
  1940. Vertex3s = reinterpret_cast<PFNVERTEX3S>(IntGetProcAddress("glVertex3s"));
  1941. if(!Vertex3s) ++numFailed;
  1942. Vertex3sv = reinterpret_cast<PFNVERTEX3SV>(IntGetProcAddress("glVertex3sv"));
  1943. if(!Vertex3sv) ++numFailed;
  1944. Vertex4d = reinterpret_cast<PFNVERTEX4D>(IntGetProcAddress("glVertex4d"));
  1945. if(!Vertex4d) ++numFailed;
  1946. Vertex4dv = reinterpret_cast<PFNVERTEX4DV>(IntGetProcAddress("glVertex4dv"));
  1947. if(!Vertex4dv) ++numFailed;
  1948. Vertex4f = reinterpret_cast<PFNVERTEX4F>(IntGetProcAddress("glVertex4f"));
  1949. if(!Vertex4f) ++numFailed;
  1950. Vertex4fv = reinterpret_cast<PFNVERTEX4FV>(IntGetProcAddress("glVertex4fv"));
  1951. if(!Vertex4fv) ++numFailed;
  1952. Vertex4i = reinterpret_cast<PFNVERTEX4I>(IntGetProcAddress("glVertex4i"));
  1953. if(!Vertex4i) ++numFailed;
  1954. Vertex4iv = reinterpret_cast<PFNVERTEX4IV>(IntGetProcAddress("glVertex4iv"));
  1955. if(!Vertex4iv) ++numFailed;
  1956. Vertex4s = reinterpret_cast<PFNVERTEX4S>(IntGetProcAddress("glVertex4s"));
  1957. if(!Vertex4s) ++numFailed;
  1958. Vertex4sv = reinterpret_cast<PFNVERTEX4SV>(IntGetProcAddress("glVertex4sv"));
  1959. if(!Vertex4sv) ++numFailed;
  1960. Viewport = reinterpret_cast<PFNVIEWPORT>(IntGetProcAddress("glViewport"));
  1961. if(!Viewport) ++numFailed;
  1962. AreTexturesResident = reinterpret_cast<PFNARETEXTURESRESIDENT>(IntGetProcAddress("glAreTexturesResident"));
  1963. if(!AreTexturesResident) ++numFailed;
  1964. ArrayElement = reinterpret_cast<PFNARRAYELEMENT>(IntGetProcAddress("glArrayElement"));
  1965. if(!ArrayElement) ++numFailed;
  1966. BindTexture = reinterpret_cast<PFNBINDTEXTURE>(IntGetProcAddress("glBindTexture"));
  1967. if(!BindTexture) ++numFailed;
  1968. ColorPointer = reinterpret_cast<PFNCOLORPOINTER>(IntGetProcAddress("glColorPointer"));
  1969. if(!ColorPointer) ++numFailed;
  1970. CopyTexImage1D = reinterpret_cast<PFNCOPYTEXIMAGE1D>(IntGetProcAddress("glCopyTexImage1D"));
  1971. if(!CopyTexImage1D) ++numFailed;
  1972. CopyTexImage2D = reinterpret_cast<PFNCOPYTEXIMAGE2D>(IntGetProcAddress("glCopyTexImage2D"));
  1973. if(!CopyTexImage2D) ++numFailed;
  1974. CopyTexSubImage1D = reinterpret_cast<PFNCOPYTEXSUBIMAGE1D>(IntGetProcAddress("glCopyTexSubImage1D"));
  1975. if(!CopyTexSubImage1D) ++numFailed;
  1976. CopyTexSubImage2D = reinterpret_cast<PFNCOPYTEXSUBIMAGE2D>(IntGetProcAddress("glCopyTexSubImage2D"));
  1977. if(!CopyTexSubImage2D) ++numFailed;
  1978. DeleteTextures = reinterpret_cast<PFNDELETETEXTURES>(IntGetProcAddress("glDeleteTextures"));
  1979. if(!DeleteTextures) ++numFailed;
  1980. DisableClientState = reinterpret_cast<PFNDISABLECLIENTSTATE>(IntGetProcAddress("glDisableClientState"));
  1981. if(!DisableClientState) ++numFailed;
  1982. DrawArrays = reinterpret_cast<PFNDRAWARRAYS>(IntGetProcAddress("glDrawArrays"));
  1983. if(!DrawArrays) ++numFailed;
  1984. DrawElements = reinterpret_cast<PFNDRAWELEMENTS>(IntGetProcAddress("glDrawElements"));
  1985. if(!DrawElements) ++numFailed;
  1986. EdgeFlagPointer = reinterpret_cast<PFNEDGEFLAGPOINTER>(IntGetProcAddress("glEdgeFlagPointer"));
  1987. if(!EdgeFlagPointer) ++numFailed;
  1988. EnableClientState = reinterpret_cast<PFNENABLECLIENTSTATE>(IntGetProcAddress("glEnableClientState"));
  1989. if(!EnableClientState) ++numFailed;
  1990. GenTextures = reinterpret_cast<PFNGENTEXTURES>(IntGetProcAddress("glGenTextures"));
  1991. if(!GenTextures) ++numFailed;
  1992. GetPointerv = reinterpret_cast<PFNGETPOINTERV>(IntGetProcAddress("glGetPointerv"));
  1993. if(!GetPointerv) ++numFailed;
  1994. IndexPointer = reinterpret_cast<PFNINDEXPOINTER>(IntGetProcAddress("glIndexPointer"));
  1995. if(!IndexPointer) ++numFailed;
  1996. Indexub = reinterpret_cast<PFNINDEXUB>(IntGetProcAddress("glIndexub"));
  1997. if(!Indexub) ++numFailed;
  1998. Indexubv = reinterpret_cast<PFNINDEXUBV>(IntGetProcAddress("glIndexubv"));
  1999. if(!Indexubv) ++numFailed;
  2000. InterleavedArrays = reinterpret_cast<PFNINTERLEAVEDARRAYS>(IntGetProcAddress("glInterleavedArrays"));
  2001. if(!InterleavedArrays) ++numFailed;
  2002. IsTexture = reinterpret_cast<PFNISTEXTURE>(IntGetProcAddress("glIsTexture"));
  2003. if(!IsTexture) ++numFailed;
  2004. NormalPointer = reinterpret_cast<PFNNORMALPOINTER>(IntGetProcAddress("glNormalPointer"));
  2005. if(!NormalPointer) ++numFailed;
  2006. PolygonOffset = reinterpret_cast<PFNPOLYGONOFFSET>(IntGetProcAddress("glPolygonOffset"));
  2007. if(!PolygonOffset) ++numFailed;
  2008. PopClientAttrib = reinterpret_cast<PFNPOPCLIENTATTRIB>(IntGetProcAddress("glPopClientAttrib"));
  2009. if(!PopClientAttrib) ++numFailed;
  2010. PrioritizeTextures = reinterpret_cast<PFNPRIORITIZETEXTURES>(IntGetProcAddress("glPrioritizeTextures"));
  2011. if(!PrioritizeTextures) ++numFailed;
  2012. PushClientAttrib = reinterpret_cast<PFNPUSHCLIENTATTRIB>(IntGetProcAddress("glPushClientAttrib"));
  2013. if(!PushClientAttrib) ++numFailed;
  2014. TexCoordPointer = reinterpret_cast<PFNTEXCOORDPOINTER>(IntGetProcAddress("glTexCoordPointer"));
  2015. if(!TexCoordPointer) ++numFailed;
  2016. TexSubImage1D = reinterpret_cast<PFNTEXSUBIMAGE1D>(IntGetProcAddress("glTexSubImage1D"));
  2017. if(!TexSubImage1D) ++numFailed;
  2018. TexSubImage2D = reinterpret_cast<PFNTEXSUBIMAGE2D>(IntGetProcAddress("glTexSubImage2D"));
  2019. if(!TexSubImage2D) ++numFailed;
  2020. VertexPointer = reinterpret_cast<PFNVERTEXPOINTER>(IntGetProcAddress("glVertexPointer"));
  2021. if(!VertexPointer) ++numFailed;
  2022. CopyTexSubImage3D = reinterpret_cast<PFNCOPYTEXSUBIMAGE3D>(IntGetProcAddress("glCopyTexSubImage3D"));
  2023. if(!CopyTexSubImage3D) ++numFailed;
  2024. DrawRangeElements = reinterpret_cast<PFNDRAWRANGEELEMENTS>(IntGetProcAddress("glDrawRangeElements"));
  2025. if(!DrawRangeElements) ++numFailed;
  2026. TexImage3D = reinterpret_cast<PFNTEXIMAGE3D>(IntGetProcAddress("glTexImage3D"));
  2027. if(!TexImage3D) ++numFailed;
  2028. TexSubImage3D = reinterpret_cast<PFNTEXSUBIMAGE3D>(IntGetProcAddress("glTexSubImage3D"));
  2029. if(!TexSubImage3D) ++numFailed;
  2030. ActiveTexture = reinterpret_cast<PFNACTIVETEXTURE>(IntGetProcAddress("glActiveTexture"));
  2031. if(!ActiveTexture) ++numFailed;
  2032. ClientActiveTexture = reinterpret_cast<PFNCLIENTACTIVETEXTURE>(IntGetProcAddress("glClientActiveTexture"));
  2033. if(!ClientActiveTexture) ++numFailed;
  2034. CompressedTexImage1D = reinterpret_cast<PFNCOMPRESSEDTEXIMAGE1D>(IntGetProcAddress("glCompressedTexImage1D"));
  2035. if(!CompressedTexImage1D) ++numFailed;
  2036. CompressedTexImage2D = reinterpret_cast<PFNCOMPRESSEDTEXIMAGE2D>(IntGetProcAddress("glCompressedTexImage2D"));
  2037. if(!CompressedTexImage2D) ++numFailed;
  2038. CompressedTexImage3D = reinterpret_cast<PFNCOMPRESSEDTEXIMAGE3D>(IntGetProcAddress("glCompressedTexImage3D"));
  2039. if(!CompressedTexImage3D) ++numFailed;
  2040. CompressedTexSubImage1D = reinterpret_cast<PFNCOMPRESSEDTEXSUBIMAGE1D>(IntGetProcAddress("glCompressedTexSubImage1D"));
  2041. if(!CompressedTexSubImage1D) ++numFailed;
  2042. CompressedTexSubImage2D = reinterpret_cast<PFNCOMPRESSEDTEXSUBIMAGE2D>(IntGetProcAddress("glCompressedTexSubImage2D"));
  2043. if(!CompressedTexSubImage2D) ++numFailed;
  2044. CompressedTexSubImage3D = reinterpret_cast<PFNCOMPRESSEDTEXSUBIMAGE3D>(IntGetProcAddress("glCompressedTexSubImage3D"));
  2045. if(!CompressedTexSubImage3D) ++numFailed;
  2046. GetCompressedTexImage = reinterpret_cast<PFNGETCOMPRESSEDTEXIMAGE>(IntGetProcAddress("glGetCompressedTexImage"));
  2047. if(!GetCompressedTexImage) ++numFailed;
  2048. LoadTransposeMatrixd = reinterpret_cast<PFNLOADTRANSPOSEMATRIXD>(IntGetProcAddress("glLoadTransposeMatrixd"));
  2049. if(!LoadTransposeMatrixd) ++numFailed;
  2050. LoadTransposeMatrixf = reinterpret_cast<PFNLOADTRANSPOSEMATRIXF>(IntGetProcAddress("glLoadTransposeMatrixf"));
  2051. if(!LoadTransposeMatrixf) ++numFailed;
  2052. MultTransposeMatrixd = reinterpret_cast<PFNMULTTRANSPOSEMATRIXD>(IntGetProcAddress("glMultTransposeMatrixd"));
  2053. if(!MultTransposeMatrixd) ++numFailed;
  2054. MultTransposeMatrixf = reinterpret_cast<PFNMULTTRANSPOSEMATRIXF>(IntGetProcAddress("glMultTransposeMatrixf"));
  2055. if(!MultTransposeMatrixf) ++numFailed;
  2056. MultiTexCoord1d = reinterpret_cast<PFNMULTITEXCOORD1D>(IntGetProcAddress("glMultiTexCoord1d"));
  2057. if(!MultiTexCoord1d) ++numFailed;
  2058. MultiTexCoord1dv = reinterpret_cast<PFNMULTITEXCOORD1DV>(IntGetProcAddress("glMultiTexCoord1dv"));
  2059. if(!MultiTexCoord1dv) ++numFailed;
  2060. MultiTexCoord1f = reinterpret_cast<PFNMULTITEXCOORD1F>(IntGetProcAddress("glMultiTexCoord1f"));
  2061. if(!MultiTexCoord1f) ++numFailed;
  2062. MultiTexCoord1fv = reinterpret_cast<PFNMULTITEXCOORD1FV>(IntGetProcAddress("glMultiTexCoord1fv"));
  2063. if(!MultiTexCoord1fv) ++numFailed;
  2064. MultiTexCoord1i = reinterpret_cast<PFNMULTITEXCOORD1I>(IntGetProcAddress("glMultiTexCoord1i"));
  2065. if(!MultiTexCoord1i) ++numFailed;
  2066. MultiTexCoord1iv = reinterpret_cast<PFNMULTITEXCOORD1IV>(IntGetProcAddress("glMultiTexCoord1iv"));
  2067. if(!MultiTexCoord1iv) ++numFailed;
  2068. MultiTexCoord1s = reinterpret_cast<PFNMULTITEXCOORD1S>(IntGetProcAddress("glMultiTexCoord1s"));
  2069. if(!MultiTexCoord1s) ++numFailed;
  2070. MultiTexCoord1sv = reinterpret_cast<PFNMULTITEXCOORD1SV>(IntGetProcAddress("glMultiTexCoord1sv"));
  2071. if(!MultiTexCoord1sv) ++numFailed;
  2072. MultiTexCoord2d = reinterpret_cast<PFNMULTITEXCOORD2D>(IntGetProcAddress("glMultiTexCoord2d"));
  2073. if(!MultiTexCoord2d) ++numFailed;
  2074. MultiTexCoord2dv = reinterpret_cast<PFNMULTITEXCOORD2DV>(IntGetProcAddress("glMultiTexCoord2dv"));
  2075. if(!MultiTexCoord2dv) ++numFailed;
  2076. MultiTexCoord2f = reinterpret_cast<PFNMULTITEXCOORD2F>(IntGetProcAddress("glMultiTexCoord2f"));
  2077. if(!MultiTexCoord2f) ++numFailed;
  2078. MultiTexCoord2fv = reinterpret_cast<PFNMULTITEXCOORD2FV>(IntGetProcAddress("glMultiTexCoord2fv"));
  2079. if(!MultiTexCoord2fv) ++numFailed;
  2080. MultiTexCoord2i = reinterpret_cast<PFNMULTITEXCOORD2I>(IntGetProcAddress("glMultiTexCoord2i"));
  2081. if(!MultiTexCoord2i) ++numFailed;
  2082. MultiTexCoord2iv = reinterpret_cast<PFNMULTITEXCOORD2IV>(IntGetProcAddress("glMultiTexCoord2iv"));
  2083. if(!MultiTexCoord2iv) ++numFailed;
  2084. MultiTexCoord2s = reinterpret_cast<PFNMULTITEXCOORD2S>(IntGetProcAddress("glMultiTexCoord2s"));
  2085. if(!MultiTexCoord2s) ++numFailed;
  2086. MultiTexCoord2sv = reinterpret_cast<PFNMULTITEXCOORD2SV>(IntGetProcAddress("glMultiTexCoord2sv"));
  2087. if(!MultiTexCoord2sv) ++numFailed;
  2088. MultiTexCoord3d = reinterpret_cast<PFNMULTITEXCOORD3D>(IntGetProcAddress("glMultiTexCoord3d"));
  2089. if(!MultiTexCoord3d) ++numFailed;
  2090. MultiTexCoord3dv = reinterpret_cast<PFNMULTITEXCOORD3DV>(IntGetProcAddress("glMultiTexCoord3dv"));
  2091. if(!MultiTexCoord3dv) ++numFailed;
  2092. MultiTexCoord3f = reinterpret_cast<PFNMULTITEXCOORD3F>(IntGetProcAddress("glMultiTexCoord3f"));
  2093. if(!MultiTexCoord3f) ++numFailed;
  2094. MultiTexCoord3fv = reinterpret_cast<PFNMULTITEXCOORD3FV>(IntGetProcAddress("glMultiTexCoord3fv"));
  2095. if(!MultiTexCoord3fv) ++numFailed;
  2096. MultiTexCoord3i = reinterpret_cast<PFNMULTITEXCOORD3I>(IntGetProcAddress("glMultiTexCoord3i"));
  2097. if(!MultiTexCoord3i) ++numFailed;
  2098. MultiTexCoord3iv = reinterpret_cast<PFNMULTITEXCOORD3IV>(IntGetProcAddress("glMultiTexCoord3iv"));
  2099. if(!MultiTexCoord3iv) ++numFailed;
  2100. MultiTexCoord3s = reinterpret_cast<PFNMULTITEXCOORD3S>(IntGetProcAddress("glMultiTexCoord3s"));
  2101. if(!MultiTexCoord3s) ++numFailed;
  2102. MultiTexCoord3sv = reinterpret_cast<PFNMULTITEXCOORD3SV>(IntGetProcAddress("glMultiTexCoord3sv"));
  2103. if(!MultiTexCoord3sv) ++numFailed;
  2104. MultiTexCoord4d = reinterpret_cast<PFNMULTITEXCOORD4D>(IntGetProcAddress("glMultiTexCoord4d"));
  2105. if(!MultiTexCoord4d) ++numFailed;
  2106. MultiTexCoord4dv = reinterpret_cast<PFNMULTITEXCOORD4DV>(IntGetProcAddress("glMultiTexCoord4dv"));
  2107. if(!MultiTexCoord4dv) ++numFailed;
  2108. MultiTexCoord4f = reinterpret_cast<PFNMULTITEXCOORD4F>(IntGetProcAddress("glMultiTexCoord4f"));
  2109. if(!MultiTexCoord4f) ++numFailed;
  2110. MultiTexCoord4fv = reinterpret_cast<PFNMULTITEXCOORD4FV>(IntGetProcAddress("glMultiTexCoord4fv"));
  2111. if(!MultiTexCoord4fv) ++numFailed;
  2112. MultiTexCoord4i = reinterpret_cast<PFNMULTITEXCOORD4I>(IntGetProcAddress("glMultiTexCoord4i"));
  2113. if(!MultiTexCoord4i) ++numFailed;
  2114. MultiTexCoord4iv = reinterpret_cast<PFNMULTITEXCOORD4IV>(IntGetProcAddress("glMultiTexCoord4iv"));
  2115. if(!MultiTexCoord4iv) ++numFailed;
  2116. MultiTexCoord4s = reinterpret_cast<PFNMULTITEXCOORD4S>(IntGetProcAddress("glMultiTexCoord4s"));
  2117. if(!MultiTexCoord4s) ++numFailed;
  2118. MultiTexCoord4sv = reinterpret_cast<PFNMULTITEXCOORD4SV>(IntGetProcAddress("glMultiTexCoord4sv"));
  2119. if(!MultiTexCoord4sv) ++numFailed;
  2120. SampleCoverage = reinterpret_cast<PFNSAMPLECOVERAGE>(IntGetProcAddress("glSampleCoverage"));
  2121. if(!SampleCoverage) ++numFailed;
  2122. BlendColor = reinterpret_cast<PFNBLENDCOLOR>(IntGetProcAddress("glBlendColor"));
  2123. if(!BlendColor) ++numFailed;
  2124. BlendEquation = reinterpret_cast<PFNBLENDEQUATION>(IntGetProcAddress("glBlendEquation"));
  2125. if(!BlendEquation) ++numFailed;
  2126. BlendFuncSeparate = reinterpret_cast<PFNBLENDFUNCSEPARATE>(IntGetProcAddress("glBlendFuncSeparate"));
  2127. if(!BlendFuncSeparate) ++numFailed;
  2128. FogCoordPointer = reinterpret_cast<PFNFOGCOORDPOINTER>(IntGetProcAddress("glFogCoordPointer"));
  2129. if(!FogCoordPointer) ++numFailed;
  2130. FogCoordd = reinterpret_cast<PFNFOGCOORDD>(IntGetProcAddress("glFogCoordd"));
  2131. if(!FogCoordd) ++numFailed;
  2132. FogCoorddv = reinterpret_cast<PFNFOGCOORDDV>(IntGetProcAddress("glFogCoorddv"));
  2133. if(!FogCoorddv) ++numFailed;
  2134. FogCoordf = reinterpret_cast<PFNFOGCOORDF>(IntGetProcAddress("glFogCoordf"));
  2135. if(!FogCoordf) ++numFailed;
  2136. FogCoordfv = reinterpret_cast<PFNFOGCOORDFV>(IntGetProcAddress("glFogCoordfv"));
  2137. if(!FogCoordfv) ++numFailed;
  2138. MultiDrawArrays = reinterpret_cast<PFNMULTIDRAWARRAYS>(IntGetProcAddress("glMultiDrawArrays"));
  2139. if(!MultiDrawArrays) ++numFailed;
  2140. MultiDrawElements = reinterpret_cast<PFNMULTIDRAWELEMENTS>(IntGetProcAddress("glMultiDrawElements"));
  2141. if(!MultiDrawElements) ++numFailed;
  2142. PointParameterf = reinterpret_cast<PFNPOINTPARAMETERF>(IntGetProcAddress("glPointParameterf"));
  2143. if(!PointParameterf) ++numFailed;
  2144. PointParameterfv = reinterpret_cast<PFNPOINTPARAMETERFV>(IntGetProcAddress("glPointParameterfv"));
  2145. if(!PointParameterfv) ++numFailed;
  2146. PointParameteri = reinterpret_cast<PFNPOINTPARAMETERI>(IntGetProcAddress("glPointParameteri"));
  2147. if(!PointParameteri) ++numFailed;
  2148. PointParameteriv = reinterpret_cast<PFNPOINTPARAMETERIV>(IntGetProcAddress("glPointParameteriv"));
  2149. if(!PointParameteriv) ++numFailed;
  2150. SecondaryColor3b = reinterpret_cast<PFNSECONDARYCOLOR3B>(IntGetProcAddress("glSecondaryColor3b"));
  2151. if(!SecondaryColor3b) ++numFailed;
  2152. SecondaryColor3bv = reinterpret_cast<PFNSECONDARYCOLOR3BV>(IntGetProcAddress("glSecondaryColor3bv"));
  2153. if(!SecondaryColor3bv) ++numFailed;
  2154. SecondaryColor3d = reinterpret_cast<PFNSECONDARYCOLOR3D>(IntGetProcAddress("glSecondaryColor3d"));
  2155. if(!SecondaryColor3d) ++numFailed;
  2156. SecondaryColor3dv = reinterpret_cast<PFNSECONDARYCOLOR3DV>(IntGetProcAddress("glSecondaryColor3dv"));
  2157. if(!SecondaryColor3dv) ++numFailed;
  2158. SecondaryColor3f = reinterpret_cast<PFNSECONDARYCOLOR3F>(IntGetProcAddress("glSecondaryColor3f"));
  2159. if(!SecondaryColor3f) ++numFailed;
  2160. SecondaryColor3fv = reinterpret_cast<PFNSECONDARYCOLOR3FV>(IntGetProcAddress("glSecondaryColor3fv"));
  2161. if(!SecondaryColor3fv) ++numFailed;
  2162. SecondaryColor3i = reinterpret_cast<PFNSECONDARYCOLOR3I>(IntGetProcAddress("glSecondaryColor3i"));
  2163. if(!SecondaryColor3i) ++numFailed;
  2164. SecondaryColor3iv = reinterpret_cast<PFNSECONDARYCOLOR3IV>(IntGetProcAddress("glSecondaryColor3iv"));
  2165. if(!SecondaryColor3iv) ++numFailed;
  2166. SecondaryColor3s = reinterpret_cast<PFNSECONDARYCOLOR3S>(IntGetProcAddress("glSecondaryColor3s"));
  2167. if(!SecondaryColor3s) ++numFailed;
  2168. SecondaryColor3sv = reinterpret_cast<PFNSECONDARYCOLOR3SV>(IntGetProcAddress("glSecondaryColor3sv"));
  2169. if(!SecondaryColor3sv) ++numFailed;
  2170. SecondaryColor3ub = reinterpret_cast<PFNSECONDARYCOLOR3UB>(IntGetProcAddress("glSecondaryColor3ub"));
  2171. if(!SecondaryColor3ub) ++numFailed;
  2172. SecondaryColor3ubv = reinterpret_cast<PFNSECONDARYCOLOR3UBV>(IntGetProcAddress("glSecondaryColor3ubv"));
  2173. if(!SecondaryColor3ubv) ++numFailed;
  2174. SecondaryColor3ui = reinterpret_cast<PFNSECONDARYCOLOR3UI>(IntGetProcAddress("glSecondaryColor3ui"));
  2175. if(!SecondaryColor3ui) ++numFailed;
  2176. SecondaryColor3uiv = reinterpret_cast<PFNSECONDARYCOLOR3UIV>(IntGetProcAddress("glSecondaryColor3uiv"));
  2177. if(!SecondaryColor3uiv) ++numFailed;
  2178. SecondaryColor3us = reinterpret_cast<PFNSECONDARYCOLOR3US>(IntGetProcAddress("glSecondaryColor3us"));
  2179. if(!SecondaryColor3us) ++numFailed;
  2180. SecondaryColor3usv = reinterpret_cast<PFNSECONDARYCOLOR3USV>(IntGetProcAddress("glSecondaryColor3usv"));
  2181. if(!SecondaryColor3usv) ++numFailed;
  2182. SecondaryColorPointer = reinterpret_cast<PFNSECONDARYCOLORPOINTER>(IntGetProcAddress("glSecondaryColorPointer"));
  2183. if(!SecondaryColorPointer) ++numFailed;
  2184. WindowPos2d = reinterpret_cast<PFNWINDOWPOS2D>(IntGetProcAddress("glWindowPos2d"));
  2185. if(!WindowPos2d) ++numFailed;
  2186. WindowPos2dv = reinterpret_cast<PFNWINDOWPOS2DV>(IntGetProcAddress("glWindowPos2dv"));
  2187. if(!WindowPos2dv) ++numFailed;
  2188. WindowPos2f = reinterpret_cast<PFNWINDOWPOS2F>(IntGetProcAddress("glWindowPos2f"));
  2189. if(!WindowPos2f) ++numFailed;
  2190. WindowPos2fv = reinterpret_cast<PFNWINDOWPOS2FV>(IntGetProcAddress("glWindowPos2fv"));
  2191. if(!WindowPos2fv) ++numFailed;
  2192. WindowPos2i = reinterpret_cast<PFNWINDOWPOS2I>(IntGetProcAddress("glWindowPos2i"));
  2193. if(!WindowPos2i) ++numFailed;
  2194. WindowPos2iv = reinterpret_cast<PFNWINDOWPOS2IV>(IntGetProcAddress("glWindowPos2iv"));
  2195. if(!WindowPos2iv) ++numFailed;
  2196. WindowPos2s = reinterpret_cast<PFNWINDOWPOS2S>(IntGetProcAddress("glWindowPos2s"));
  2197. if(!WindowPos2s) ++numFailed;
  2198. WindowPos2sv = reinterpret_cast<PFNWINDOWPOS2SV>(IntGetProcAddress("glWindowPos2sv"));
  2199. if(!WindowPos2sv) ++numFailed;
  2200. WindowPos3d = reinterpret_cast<PFNWINDOWPOS3D>(IntGetProcAddress("glWindowPos3d"));
  2201. if(!WindowPos3d) ++numFailed;
  2202. WindowPos3dv = reinterpret_cast<PFNWINDOWPOS3DV>(IntGetProcAddress("glWindowPos3dv"));
  2203. if(!WindowPos3dv) ++numFailed;
  2204. WindowPos3f = reinterpret_cast<PFNWINDOWPOS3F>(IntGetProcAddress("glWindowPos3f"));
  2205. if(!WindowPos3f) ++numFailed;
  2206. WindowPos3fv = reinterpret_cast<PFNWINDOWPOS3FV>(IntGetProcAddress("glWindowPos3fv"));
  2207. if(!WindowPos3fv) ++numFailed;
  2208. WindowPos3i = reinterpret_cast<PFNWINDOWPOS3I>(IntGetProcAddress("glWindowPos3i"));
  2209. if(!WindowPos3i) ++numFailed;
  2210. WindowPos3iv = reinterpret_cast<PFNWINDOWPOS3IV>(IntGetProcAddress("glWindowPos3iv"));
  2211. if(!WindowPos3iv) ++numFailed;
  2212. WindowPos3s = reinterpret_cast<PFNWINDOWPOS3S>(IntGetProcAddress("glWindowPos3s"));
  2213. if(!WindowPos3s) ++numFailed;
  2214. WindowPos3sv = reinterpret_cast<PFNWINDOWPOS3SV>(IntGetProcAddress("glWindowPos3sv"));
  2215. if(!WindowPos3sv) ++numFailed;
  2216. BeginQuery = reinterpret_cast<PFNBEGINQUERY>(IntGetProcAddress("glBeginQuery"));
  2217. if(!BeginQuery) ++numFailed;
  2218. BindBuffer = reinterpret_cast<PFNBINDBUFFER>(IntGetProcAddress("glBindBuffer"));
  2219. if(!BindBuffer) ++numFailed;
  2220. BufferData = reinterpret_cast<PFNBUFFERDATA>(IntGetProcAddress("glBufferData"));
  2221. if(!BufferData) ++numFailed;
  2222. BufferSubData = reinterpret_cast<PFNBUFFERSUBDATA>(IntGetProcAddress("glBufferSubData"));
  2223. if(!BufferSubData) ++numFailed;
  2224. DeleteBuffers = reinterpret_cast<PFNDELETEBUFFERS>(IntGetProcAddress("glDeleteBuffers"));
  2225. if(!DeleteBuffers) ++numFailed;
  2226. DeleteQueries = reinterpret_cast<PFNDELETEQUERIES>(IntGetProcAddress("glDeleteQueries"));
  2227. if(!DeleteQueries) ++numFailed;
  2228. EndQuery = reinterpret_cast<PFNENDQUERY>(IntGetProcAddress("glEndQuery"));
  2229. if(!EndQuery) ++numFailed;
  2230. GenBuffers = reinterpret_cast<PFNGENBUFFERS>(IntGetProcAddress("glGenBuffers"));
  2231. if(!GenBuffers) ++numFailed;
  2232. GenQueries = reinterpret_cast<PFNGENQUERIES>(IntGetProcAddress("glGenQueries"));
  2233. if(!GenQueries) ++numFailed;
  2234. GetBufferParameteriv = reinterpret_cast<PFNGETBUFFERPARAMETERIV>(IntGetProcAddress("glGetBufferParameteriv"));
  2235. if(!GetBufferParameteriv) ++numFailed;
  2236. GetBufferPointerv = reinterpret_cast<PFNGETBUFFERPOINTERV>(IntGetProcAddress("glGetBufferPointerv"));
  2237. if(!GetBufferPointerv) ++numFailed;
  2238. GetBufferSubData = reinterpret_cast<PFNGETBUFFERSUBDATA>(IntGetProcAddress("glGetBufferSubData"));
  2239. if(!GetBufferSubData) ++numFailed;
  2240. GetQueryObjectiv = reinterpret_cast<PFNGETQUERYOBJECTIV>(IntGetProcAddress("glGetQueryObjectiv"));
  2241. if(!GetQueryObjectiv) ++numFailed;
  2242. GetQueryObjectuiv = reinterpret_cast<PFNGETQUERYOBJECTUIV>(IntGetProcAddress("glGetQueryObjectuiv"));
  2243. if(!GetQueryObjectuiv) ++numFailed;
  2244. GetQueryiv = reinterpret_cast<PFNGETQUERYIV>(IntGetProcAddress("glGetQueryiv"));
  2245. if(!GetQueryiv) ++numFailed;
  2246. IsBuffer = reinterpret_cast<PFNISBUFFER>(IntGetProcAddress("glIsBuffer"));
  2247. if(!IsBuffer) ++numFailed;
  2248. IsQuery = reinterpret_cast<PFNISQUERY>(IntGetProcAddress("glIsQuery"));
  2249. if(!IsQuery) ++numFailed;
  2250. MapBuffer = reinterpret_cast<PFNMAPBUFFER>(IntGetProcAddress("glMapBuffer"));
  2251. if(!MapBuffer) ++numFailed;
  2252. UnmapBuffer = reinterpret_cast<PFNUNMAPBUFFER>(IntGetProcAddress("glUnmapBuffer"));
  2253. if(!UnmapBuffer) ++numFailed;
  2254. AttachShader = reinterpret_cast<PFNATTACHSHADER>(IntGetProcAddress("glAttachShader"));
  2255. if(!AttachShader) ++numFailed;
  2256. BindAttribLocation = reinterpret_cast<PFNBINDATTRIBLOCATION>(IntGetProcAddress("glBindAttribLocation"));
  2257. if(!BindAttribLocation) ++numFailed;
  2258. BlendEquationSeparate = reinterpret_cast<PFNBLENDEQUATIONSEPARATE>(IntGetProcAddress("glBlendEquationSeparate"));
  2259. if(!BlendEquationSeparate) ++numFailed;
  2260. CompileShader = reinterpret_cast<PFNCOMPILESHADER>(IntGetProcAddress("glCompileShader"));
  2261. if(!CompileShader) ++numFailed;
  2262. CreateProgram = reinterpret_cast<PFNCREATEPROGRAM>(IntGetProcAddress("glCreateProgram"));
  2263. if(!CreateProgram) ++numFailed;
  2264. CreateShader = reinterpret_cast<PFNCREATESHADER>(IntGetProcAddress("glCreateShader"));
  2265. if(!CreateShader) ++numFailed;
  2266. DeleteProgram = reinterpret_cast<PFNDELETEPROGRAM>(IntGetProcAddress("glDeleteProgram"));
  2267. if(!DeleteProgram) ++numFailed;
  2268. DeleteShader = reinterpret_cast<PFNDELETESHADER>(IntGetProcAddress("glDeleteShader"));
  2269. if(!DeleteShader) ++numFailed;
  2270. DetachShader = reinterpret_cast<PFNDETACHSHADER>(IntGetProcAddress("glDetachShader"));
  2271. if(!DetachShader) ++numFailed;
  2272. DisableVertexAttribArray = reinterpret_cast<PFNDISABLEVERTEXATTRIBARRAY>(IntGetProcAddress("glDisableVertexAttribArray"));
  2273. if(!DisableVertexAttribArray) ++numFailed;
  2274. DrawBuffers = reinterpret_cast<PFNDRAWBUFFERS>(IntGetProcAddress("glDrawBuffers"));
  2275. if(!DrawBuffers) ++numFailed;
  2276. EnableVertexAttribArray = reinterpret_cast<PFNENABLEVERTEXATTRIBARRAY>(IntGetProcAddress("glEnableVertexAttribArray"));
  2277. if(!EnableVertexAttribArray) ++numFailed;
  2278. GetActiveAttrib = reinterpret_cast<PFNGETACTIVEATTRIB>(IntGetProcAddress("glGetActiveAttrib"));
  2279. if(!GetActiveAttrib) ++numFailed;
  2280. GetActiveUniform = reinterpret_cast<PFNGETACTIVEUNIFORM>(IntGetProcAddress("glGetActiveUniform"));
  2281. if(!GetActiveUniform) ++numFailed;
  2282. GetAttachedShaders = reinterpret_cast<PFNGETATTACHEDSHADERS>(IntGetProcAddress("glGetAttachedShaders"));
  2283. if(!GetAttachedShaders) ++numFailed;
  2284. GetAttribLocation = reinterpret_cast<PFNGETATTRIBLOCATION>(IntGetProcAddress("glGetAttribLocation"));
  2285. if(!GetAttribLocation) ++numFailed;
  2286. GetProgramInfoLog = reinterpret_cast<PFNGETPROGRAMINFOLOG>(IntGetProcAddress("glGetProgramInfoLog"));
  2287. if(!GetProgramInfoLog) ++numFailed;
  2288. GetProgramiv = reinterpret_cast<PFNGETPROGRAMIV>(IntGetProcAddress("glGetProgramiv"));
  2289. if(!GetProgramiv) ++numFailed;
  2290. GetShaderInfoLog = reinterpret_cast<PFNGETSHADERINFOLOG>(IntGetProcAddress("glGetShaderInfoLog"));
  2291. if(!GetShaderInfoLog) ++numFailed;
  2292. GetShaderSource = reinterpret_cast<PFNGETSHADERSOURCE>(IntGetProcAddress("glGetShaderSource"));
  2293. if(!GetShaderSource) ++numFailed;
  2294. GetShaderiv = reinterpret_cast<PFNGETSHADERIV>(IntGetProcAddress("glGetShaderiv"));
  2295. if(!GetShaderiv) ++numFailed;
  2296. GetUniformLocation = reinterpret_cast<PFNGETUNIFORMLOCATION>(IntGetProcAddress("glGetUniformLocation"));
  2297. if(!GetUniformLocation) ++numFailed;
  2298. GetUniformfv = reinterpret_cast<PFNGETUNIFORMFV>(IntGetProcAddress("glGetUniformfv"));
  2299. if(!GetUniformfv) ++numFailed;
  2300. GetUniformiv = reinterpret_cast<PFNGETUNIFORMIV>(IntGetProcAddress("glGetUniformiv"));
  2301. if(!GetUniformiv) ++numFailed;
  2302. GetVertexAttribPointerv = reinterpret_cast<PFNGETVERTEXATTRIBPOINTERV>(IntGetProcAddress("glGetVertexAttribPointerv"));
  2303. if(!GetVertexAttribPointerv) ++numFailed;
  2304. GetVertexAttribdv = reinterpret_cast<PFNGETVERTEXATTRIBDV>(IntGetProcAddress("glGetVertexAttribdv"));
  2305. if(!GetVertexAttribdv) ++numFailed;
  2306. GetVertexAttribfv = reinterpret_cast<PFNGETVERTEXATTRIBFV>(IntGetProcAddress("glGetVertexAttribfv"));
  2307. if(!GetVertexAttribfv) ++numFailed;
  2308. GetVertexAttribiv = reinterpret_cast<PFNGETVERTEXATTRIBIV>(IntGetProcAddress("glGetVertexAttribiv"));
  2309. if(!GetVertexAttribiv) ++numFailed;
  2310. IsProgram = reinterpret_cast<PFNISPROGRAM>(IntGetProcAddress("glIsProgram"));
  2311. if(!IsProgram) ++numFailed;
  2312. IsShader = reinterpret_cast<PFNISSHADER>(IntGetProcAddress("glIsShader"));
  2313. if(!IsShader) ++numFailed;
  2314. LinkProgram = reinterpret_cast<PFNLINKPROGRAM>(IntGetProcAddress("glLinkProgram"));
  2315. if(!LinkProgram) ++numFailed;
  2316. ShaderSource = reinterpret_cast<PFNSHADERSOURCE>(IntGetProcAddress("glShaderSource"));
  2317. if(!ShaderSource) ++numFailed;
  2318. StencilFuncSeparate = reinterpret_cast<PFNSTENCILFUNCSEPARATE>(IntGetProcAddress("glStencilFuncSeparate"));
  2319. if(!StencilFuncSeparate) ++numFailed;
  2320. StencilMaskSeparate = reinterpret_cast<PFNSTENCILMASKSEPARATE>(IntGetProcAddress("glStencilMaskSeparate"));
  2321. if(!StencilMaskSeparate) ++numFailed;
  2322. StencilOpSeparate = reinterpret_cast<PFNSTENCILOPSEPARATE>(IntGetProcAddress("glStencilOpSeparate"));
  2323. if(!StencilOpSeparate) ++numFailed;
  2324. Uniform1f = reinterpret_cast<PFNUNIFORM1F>(IntGetProcAddress("glUniform1f"));
  2325. if(!Uniform1f) ++numFailed;
  2326. Uniform1fv = reinterpret_cast<PFNUNIFORM1FV>(IntGetProcAddress("glUniform1fv"));
  2327. if(!Uniform1fv) ++numFailed;
  2328. Uniform1i = reinterpret_cast<PFNUNIFORM1I>(IntGetProcAddress("glUniform1i"));
  2329. if(!Uniform1i) ++numFailed;
  2330. Uniform1iv = reinterpret_cast<PFNUNIFORM1IV>(IntGetProcAddress("glUniform1iv"));
  2331. if(!Uniform1iv) ++numFailed;
  2332. Uniform2f = reinterpret_cast<PFNUNIFORM2F>(IntGetProcAddress("glUniform2f"));
  2333. if(!Uniform2f) ++numFailed;
  2334. Uniform2fv = reinterpret_cast<PFNUNIFORM2FV>(IntGetProcAddress("glUniform2fv"));
  2335. if(!Uniform2fv) ++numFailed;
  2336. Uniform2i = reinterpret_cast<PFNUNIFORM2I>(IntGetProcAddress("glUniform2i"));
  2337. if(!Uniform2i) ++numFailed;
  2338. Uniform2iv = reinterpret_cast<PFNUNIFORM2IV>(IntGetProcAddress("glUniform2iv"));
  2339. if(!Uniform2iv) ++numFailed;
  2340. Uniform3f = reinterpret_cast<PFNUNIFORM3F>(IntGetProcAddress("glUniform3f"));
  2341. if(!Uniform3f) ++numFailed;
  2342. Uniform3fv = reinterpret_cast<PFNUNIFORM3FV>(IntGetProcAddress("glUniform3fv"));
  2343. if(!Uniform3fv) ++numFailed;
  2344. Uniform3i = reinterpret_cast<PFNUNIFORM3I>(IntGetProcAddress("glUniform3i"));
  2345. if(!Uniform3i) ++numFailed;
  2346. Uniform3iv = reinterpret_cast<PFNUNIFORM3IV>(IntGetProcAddress("glUniform3iv"));
  2347. if(!Uniform3iv) ++numFailed;
  2348. Uniform4f = reinterpret_cast<PFNUNIFORM4F>(IntGetProcAddress("glUniform4f"));
  2349. if(!Uniform4f) ++numFailed;
  2350. Uniform4fv = reinterpret_cast<PFNUNIFORM4FV>(IntGetProcAddress("glUniform4fv"));
  2351. if(!Uniform4fv) ++numFailed;
  2352. Uniform4i = reinterpret_cast<PFNUNIFORM4I>(IntGetProcAddress("glUniform4i"));
  2353. if(!Uniform4i) ++numFailed;
  2354. Uniform4iv = reinterpret_cast<PFNUNIFORM4IV>(IntGetProcAddress("glUniform4iv"));
  2355. if(!Uniform4iv) ++numFailed;
  2356. UniformMatrix2fv = reinterpret_cast<PFNUNIFORMMATRIX2FV>(IntGetProcAddress("glUniformMatrix2fv"));
  2357. if(!UniformMatrix2fv) ++numFailed;
  2358. UniformMatrix3fv = reinterpret_cast<PFNUNIFORMMATRIX3FV>(IntGetProcAddress("glUniformMatrix3fv"));
  2359. if(!UniformMatrix3fv) ++numFailed;
  2360. UniformMatrix4fv = reinterpret_cast<PFNUNIFORMMATRIX4FV>(IntGetProcAddress("glUniformMatrix4fv"));
  2361. if(!UniformMatrix4fv) ++numFailed;
  2362. UseProgram = reinterpret_cast<PFNUSEPROGRAM>(IntGetProcAddress("glUseProgram"));
  2363. if(!UseProgram) ++numFailed;
  2364. ValidateProgram = reinterpret_cast<PFNVALIDATEPROGRAM>(IntGetProcAddress("glValidateProgram"));
  2365. if(!ValidateProgram) ++numFailed;
  2366. VertexAttrib1d = reinterpret_cast<PFNVERTEXATTRIB1D>(IntGetProcAddress("glVertexAttrib1d"));
  2367. if(!VertexAttrib1d) ++numFailed;
  2368. VertexAttrib1dv = reinterpret_cast<PFNVERTEXATTRIB1DV>(IntGetProcAddress("glVertexAttrib1dv"));
  2369. if(!VertexAttrib1dv) ++numFailed;
  2370. VertexAttrib1f = reinterpret_cast<PFNVERTEXATTRIB1F>(IntGetProcAddress("glVertexAttrib1f"));
  2371. if(!VertexAttrib1f) ++numFailed;
  2372. VertexAttrib1fv = reinterpret_cast<PFNVERTEXATTRIB1FV>(IntGetProcAddress("glVertexAttrib1fv"));
  2373. if(!VertexAttrib1fv) ++numFailed;
  2374. VertexAttrib1s = reinterpret_cast<PFNVERTEXATTRIB1S>(IntGetProcAddress("glVertexAttrib1s"));
  2375. if(!VertexAttrib1s) ++numFailed;
  2376. VertexAttrib1sv = reinterpret_cast<PFNVERTEXATTRIB1SV>(IntGetProcAddress("glVertexAttrib1sv"));
  2377. if(!VertexAttrib1sv) ++numFailed;
  2378. VertexAttrib2d = reinterpret_cast<PFNVERTEXATTRIB2D>(IntGetProcAddress("glVertexAttrib2d"));
  2379. if(!VertexAttrib2d) ++numFailed;
  2380. VertexAttrib2dv = reinterpret_cast<PFNVERTEXATTRIB2DV>(IntGetProcAddress("glVertexAttrib2dv"));
  2381. if(!VertexAttrib2dv) ++numFailed;
  2382. VertexAttrib2f = reinterpret_cast<PFNVERTEXATTRIB2F>(IntGetProcAddress("glVertexAttrib2f"));
  2383. if(!VertexAttrib2f) ++numFailed;
  2384. VertexAttrib2fv = reinterpret_cast<PFNVERTEXATTRIB2FV>(IntGetProcAddress("glVertexAttrib2fv"));
  2385. if(!VertexAttrib2fv) ++numFailed;
  2386. VertexAttrib2s = reinterpret_cast<PFNVERTEXATTRIB2S>(IntGetProcAddress("glVertexAttrib2s"));
  2387. if(!VertexAttrib2s) ++numFailed;
  2388. VertexAttrib2sv = reinterpret_cast<PFNVERTEXATTRIB2SV>(IntGetProcAddress("glVertexAttrib2sv"));
  2389. if(!VertexAttrib2sv) ++numFailed;
  2390. VertexAttrib3d = reinterpret_cast<PFNVERTEXATTRIB3D>(IntGetProcAddress("glVertexAttrib3d"));
  2391. if(!VertexAttrib3d) ++numFailed;
  2392. VertexAttrib3dv = reinterpret_cast<PFNVERTEXATTRIB3DV>(IntGetProcAddress("glVertexAttrib3dv"));
  2393. if(!VertexAttrib3dv) ++numFailed;
  2394. VertexAttrib3f = reinterpret_cast<PFNVERTEXATTRIB3F>(IntGetProcAddress("glVertexAttrib3f"));
  2395. if(!VertexAttrib3f) ++numFailed;
  2396. VertexAttrib3fv = reinterpret_cast<PFNVERTEXATTRIB3FV>(IntGetProcAddress("glVertexAttrib3fv"));
  2397. if(!VertexAttrib3fv) ++numFailed;
  2398. VertexAttrib3s = reinterpret_cast<PFNVERTEXATTRIB3S>(IntGetProcAddress("glVertexAttrib3s"));
  2399. if(!VertexAttrib3s) ++numFailed;
  2400. VertexAttrib3sv = reinterpret_cast<PFNVERTEXATTRIB3SV>(IntGetProcAddress("glVertexAttrib3sv"));
  2401. if(!VertexAttrib3sv) ++numFailed;
  2402. VertexAttrib4Nbv = reinterpret_cast<PFNVERTEXATTRIB4NBV>(IntGetProcAddress("glVertexAttrib4Nbv"));
  2403. if(!VertexAttrib4Nbv) ++numFailed;
  2404. VertexAttrib4Niv = reinterpret_cast<PFNVERTEXATTRIB4NIV>(IntGetProcAddress("glVertexAttrib4Niv"));
  2405. if(!VertexAttrib4Niv) ++numFailed;
  2406. VertexAttrib4Nsv = reinterpret_cast<PFNVERTEXATTRIB4NSV>(IntGetProcAddress("glVertexAttrib4Nsv"));
  2407. if(!VertexAttrib4Nsv) ++numFailed;
  2408. VertexAttrib4Nub = reinterpret_cast<PFNVERTEXATTRIB4NUB>(IntGetProcAddress("glVertexAttrib4Nub"));
  2409. if(!VertexAttrib4Nub) ++numFailed;
  2410. VertexAttrib4Nubv = reinterpret_cast<PFNVERTEXATTRIB4NUBV>(IntGetProcAddress("glVertexAttrib4Nubv"));
  2411. if(!VertexAttrib4Nubv) ++numFailed;
  2412. VertexAttrib4Nuiv = reinterpret_cast<PFNVERTEXATTRIB4NUIV>(IntGetProcAddress("glVertexAttrib4Nuiv"));
  2413. if(!VertexAttrib4Nuiv) ++numFailed;
  2414. VertexAttrib4Nusv = reinterpret_cast<PFNVERTEXATTRIB4NUSV>(IntGetProcAddress("glVertexAttrib4Nusv"));
  2415. if(!VertexAttrib4Nusv) ++numFailed;
  2416. VertexAttrib4bv = reinterpret_cast<PFNVERTEXATTRIB4BV>(IntGetProcAddress("glVertexAttrib4bv"));
  2417. if(!VertexAttrib4bv) ++numFailed;
  2418. VertexAttrib4d = reinterpret_cast<PFNVERTEXATTRIB4D>(IntGetProcAddress("glVertexAttrib4d"));
  2419. if(!VertexAttrib4d) ++numFailed;
  2420. VertexAttrib4dv = reinterpret_cast<PFNVERTEXATTRIB4DV>(IntGetProcAddress("glVertexAttrib4dv"));
  2421. if(!VertexAttrib4dv) ++numFailed;
  2422. VertexAttrib4f = reinterpret_cast<PFNVERTEXATTRIB4F>(IntGetProcAddress("glVertexAttrib4f"));
  2423. if(!VertexAttrib4f) ++numFailed;
  2424. VertexAttrib4fv = reinterpret_cast<PFNVERTEXATTRIB4FV>(IntGetProcAddress("glVertexAttrib4fv"));
  2425. if(!VertexAttrib4fv) ++numFailed;
  2426. VertexAttrib4iv = reinterpret_cast<PFNVERTEXATTRIB4IV>(IntGetProcAddress("glVertexAttrib4iv"));
  2427. if(!VertexAttrib4iv) ++numFailed;
  2428. VertexAttrib4s = reinterpret_cast<PFNVERTEXATTRIB4S>(IntGetProcAddress("glVertexAttrib4s"));
  2429. if(!VertexAttrib4s) ++numFailed;
  2430. VertexAttrib4sv = reinterpret_cast<PFNVERTEXATTRIB4SV>(IntGetProcAddress("glVertexAttrib4sv"));
  2431. if(!VertexAttrib4sv) ++numFailed;
  2432. VertexAttrib4ubv = reinterpret_cast<PFNVERTEXATTRIB4UBV>(IntGetProcAddress("glVertexAttrib4ubv"));
  2433. if(!VertexAttrib4ubv) ++numFailed;
  2434. VertexAttrib4uiv = reinterpret_cast<PFNVERTEXATTRIB4UIV>(IntGetProcAddress("glVertexAttrib4uiv"));
  2435. if(!VertexAttrib4uiv) ++numFailed;
  2436. VertexAttrib4usv = reinterpret_cast<PFNVERTEXATTRIB4USV>(IntGetProcAddress("glVertexAttrib4usv"));
  2437. if(!VertexAttrib4usv) ++numFailed;
  2438. VertexAttribPointer = reinterpret_cast<PFNVERTEXATTRIBPOINTER>(IntGetProcAddress("glVertexAttribPointer"));
  2439. if(!VertexAttribPointer) ++numFailed;
  2440. UniformMatrix2x3fv = reinterpret_cast<PFNUNIFORMMATRIX2X3FV>(IntGetProcAddress("glUniformMatrix2x3fv"));
  2441. if(!UniformMatrix2x3fv) ++numFailed;
  2442. UniformMatrix2x4fv = reinterpret_cast<PFNUNIFORMMATRIX2X4FV>(IntGetProcAddress("glUniformMatrix2x4fv"));
  2443. if(!UniformMatrix2x4fv) ++numFailed;
  2444. UniformMatrix3x2fv = reinterpret_cast<PFNUNIFORMMATRIX3X2FV>(IntGetProcAddress("glUniformMatrix3x2fv"));
  2445. if(!UniformMatrix3x2fv) ++numFailed;
  2446. UniformMatrix3x4fv = reinterpret_cast<PFNUNIFORMMATRIX3X4FV>(IntGetProcAddress("glUniformMatrix3x4fv"));
  2447. if(!UniformMatrix3x4fv) ++numFailed;
  2448. UniformMatrix4x2fv = reinterpret_cast<PFNUNIFORMMATRIX4X2FV>(IntGetProcAddress("glUniformMatrix4x2fv"));
  2449. if(!UniformMatrix4x2fv) ++numFailed;
  2450. UniformMatrix4x3fv = reinterpret_cast<PFNUNIFORMMATRIX4X3FV>(IntGetProcAddress("glUniformMatrix4x3fv"));
  2451. if(!UniformMatrix4x3fv) ++numFailed;
  2452. BeginConditionalRender = reinterpret_cast<PFNBEGINCONDITIONALRENDER>(IntGetProcAddress("glBeginConditionalRender"));
  2453. if(!BeginConditionalRender) ++numFailed;
  2454. BeginTransformFeedback = reinterpret_cast<PFNBEGINTRANSFORMFEEDBACK>(IntGetProcAddress("glBeginTransformFeedback"));
  2455. if(!BeginTransformFeedback) ++numFailed;
  2456. BindBufferBase = reinterpret_cast<PFNBINDBUFFERBASE>(IntGetProcAddress("glBindBufferBase"));
  2457. if(!BindBufferBase) ++numFailed;
  2458. BindBufferRange = reinterpret_cast<PFNBINDBUFFERRANGE>(IntGetProcAddress("glBindBufferRange"));
  2459. if(!BindBufferRange) ++numFailed;
  2460. BindFragDataLocation = reinterpret_cast<PFNBINDFRAGDATALOCATION>(IntGetProcAddress("glBindFragDataLocation"));
  2461. if(!BindFragDataLocation) ++numFailed;
  2462. BindFramebuffer = reinterpret_cast<PFNBINDFRAMEBUFFER>(IntGetProcAddress("glBindFramebuffer"));
  2463. if(!BindFramebuffer) ++numFailed;
  2464. BindRenderbuffer = reinterpret_cast<PFNBINDRENDERBUFFER>(IntGetProcAddress("glBindRenderbuffer"));
  2465. if(!BindRenderbuffer) ++numFailed;
  2466. BindVertexArray = reinterpret_cast<PFNBINDVERTEXARRAY>(IntGetProcAddress("glBindVertexArray"));
  2467. if(!BindVertexArray) ++numFailed;
  2468. BlitFramebuffer = reinterpret_cast<PFNBLITFRAMEBUFFER>(IntGetProcAddress("glBlitFramebuffer"));
  2469. if(!BlitFramebuffer) ++numFailed;
  2470. CheckFramebufferStatus = reinterpret_cast<PFNCHECKFRAMEBUFFERSTATUS>(IntGetProcAddress("glCheckFramebufferStatus"));
  2471. if(!CheckFramebufferStatus) ++numFailed;
  2472. ClampColor = reinterpret_cast<PFNCLAMPCOLOR>(IntGetProcAddress("glClampColor"));
  2473. if(!ClampColor) ++numFailed;
  2474. ClearBufferfi = reinterpret_cast<PFNCLEARBUFFERFI>(IntGetProcAddress("glClearBufferfi"));
  2475. if(!ClearBufferfi) ++numFailed;
  2476. ClearBufferfv = reinterpret_cast<PFNCLEARBUFFERFV>(IntGetProcAddress("glClearBufferfv"));
  2477. if(!ClearBufferfv) ++numFailed;
  2478. ClearBufferiv = reinterpret_cast<PFNCLEARBUFFERIV>(IntGetProcAddress("glClearBufferiv"));
  2479. if(!ClearBufferiv) ++numFailed;
  2480. ClearBufferuiv = reinterpret_cast<PFNCLEARBUFFERUIV>(IntGetProcAddress("glClearBufferuiv"));
  2481. if(!ClearBufferuiv) ++numFailed;
  2482. ColorMaski = reinterpret_cast<PFNCOLORMASKI>(IntGetProcAddress("glColorMaski"));
  2483. if(!ColorMaski) ++numFailed;
  2484. DeleteFramebuffers = reinterpret_cast<PFNDELETEFRAMEBUFFERS>(IntGetProcAddress("glDeleteFramebuffers"));
  2485. if(!DeleteFramebuffers) ++numFailed;
  2486. DeleteRenderbuffers = reinterpret_cast<PFNDELETERENDERBUFFERS>(IntGetProcAddress("glDeleteRenderbuffers"));
  2487. if(!DeleteRenderbuffers) ++numFailed;
  2488. DeleteVertexArrays = reinterpret_cast<PFNDELETEVERTEXARRAYS>(IntGetProcAddress("glDeleteVertexArrays"));
  2489. if(!DeleteVertexArrays) ++numFailed;
  2490. Disablei = reinterpret_cast<PFNDISABLEI>(IntGetProcAddress("glDisablei"));
  2491. if(!Disablei) ++numFailed;
  2492. Enablei = reinterpret_cast<PFNENABLEI>(IntGetProcAddress("glEnablei"));
  2493. if(!Enablei) ++numFailed;
  2494. EndConditionalRender = reinterpret_cast<PFNENDCONDITIONALRENDER>(IntGetProcAddress("glEndConditionalRender"));
  2495. if(!EndConditionalRender) ++numFailed;
  2496. EndTransformFeedback = reinterpret_cast<PFNENDTRANSFORMFEEDBACK>(IntGetProcAddress("glEndTransformFeedback"));
  2497. if(!EndTransformFeedback) ++numFailed;
  2498. FlushMappedBufferRange = reinterpret_cast<PFNFLUSHMAPPEDBUFFERRANGE>(IntGetProcAddress("glFlushMappedBufferRange"));
  2499. if(!FlushMappedBufferRange) ++numFailed;
  2500. FramebufferRenderbuffer = reinterpret_cast<PFNFRAMEBUFFERRENDERBUFFER>(IntGetProcAddress("glFramebufferRenderbuffer"));
  2501. if(!FramebufferRenderbuffer) ++numFailed;
  2502. FramebufferTexture1D = reinterpret_cast<PFNFRAMEBUFFERTEXTURE1D>(IntGetProcAddress("glFramebufferTexture1D"));
  2503. if(!FramebufferTexture1D) ++numFailed;
  2504. FramebufferTexture2D = reinterpret_cast<PFNFRAMEBUFFERTEXTURE2D>(IntGetProcAddress("glFramebufferTexture2D"));
  2505. if(!FramebufferTexture2D) ++numFailed;
  2506. FramebufferTexture3D = reinterpret_cast<PFNFRAMEBUFFERTEXTURE3D>(IntGetProcAddress("glFramebufferTexture3D"));
  2507. if(!FramebufferTexture3D) ++numFailed;
  2508. FramebufferTextureLayer = reinterpret_cast<PFNFRAMEBUFFERTEXTURELAYER>(IntGetProcAddress("glFramebufferTextureLayer"));
  2509. if(!FramebufferTextureLayer) ++numFailed;
  2510. GenFramebuffers = reinterpret_cast<PFNGENFRAMEBUFFERS>(IntGetProcAddress("glGenFramebuffers"));
  2511. if(!GenFramebuffers) ++numFailed;
  2512. GenRenderbuffers = reinterpret_cast<PFNGENRENDERBUFFERS>(IntGetProcAddress("glGenRenderbuffers"));
  2513. if(!GenRenderbuffers) ++numFailed;
  2514. GenVertexArrays = reinterpret_cast<PFNGENVERTEXARRAYS>(IntGetProcAddress("glGenVertexArrays"));
  2515. if(!GenVertexArrays) ++numFailed;
  2516. GenerateMipmap = reinterpret_cast<PFNGENERATEMIPMAP>(IntGetProcAddress("glGenerateMipmap"));
  2517. if(!GenerateMipmap) ++numFailed;
  2518. GetBooleani_v = reinterpret_cast<PFNGETBOOLEANI_V>(IntGetProcAddress("glGetBooleani_v"));
  2519. if(!GetBooleani_v) ++numFailed;
  2520. GetFragDataLocation = reinterpret_cast<PFNGETFRAGDATALOCATION>(IntGetProcAddress("glGetFragDataLocation"));
  2521. if(!GetFragDataLocation) ++numFailed;
  2522. GetFramebufferAttachmentParameteriv = reinterpret_cast<PFNGETFRAMEBUFFERATTACHMENTPARAMETERIV>(IntGetProcAddress("glGetFramebufferAttachmentParameteriv"));
  2523. if(!GetFramebufferAttachmentParameteriv) ++numFailed;
  2524. GetIntegeri_v = reinterpret_cast<PFNGETINTEGERI_V>(IntGetProcAddress("glGetIntegeri_v"));
  2525. if(!GetIntegeri_v) ++numFailed;
  2526. GetRenderbufferParameteriv = reinterpret_cast<PFNGETRENDERBUFFERPARAMETERIV>(IntGetProcAddress("glGetRenderbufferParameteriv"));
  2527. if(!GetRenderbufferParameteriv) ++numFailed;
  2528. GetStringi = reinterpret_cast<PFNGETSTRINGI>(IntGetProcAddress("glGetStringi"));
  2529. if(!GetStringi) ++numFailed;
  2530. GetTexParameterIiv = reinterpret_cast<PFNGETTEXPARAMETERIIV>(IntGetProcAddress("glGetTexParameterIiv"));
  2531. if(!GetTexParameterIiv) ++numFailed;
  2532. GetTexParameterIuiv = reinterpret_cast<PFNGETTEXPARAMETERIUIV>(IntGetProcAddress("glGetTexParameterIuiv"));
  2533. if(!GetTexParameterIuiv) ++numFailed;
  2534. GetTransformFeedbackVarying = reinterpret_cast<PFNGETTRANSFORMFEEDBACKVARYING>(IntGetProcAddress("glGetTransformFeedbackVarying"));
  2535. if(!GetTransformFeedbackVarying) ++numFailed;
  2536. GetUniformuiv = reinterpret_cast<PFNGETUNIFORMUIV>(IntGetProcAddress("glGetUniformuiv"));
  2537. if(!GetUniformuiv) ++numFailed;
  2538. GetVertexAttribIiv = reinterpret_cast<PFNGETVERTEXATTRIBIIV>(IntGetProcAddress("glGetVertexAttribIiv"));
  2539. if(!GetVertexAttribIiv) ++numFailed;
  2540. GetVertexAttribIuiv = reinterpret_cast<PFNGETVERTEXATTRIBIUIV>(IntGetProcAddress("glGetVertexAttribIuiv"));
  2541. if(!GetVertexAttribIuiv) ++numFailed;
  2542. IsEnabledi = reinterpret_cast<PFNISENABLEDI>(IntGetProcAddress("glIsEnabledi"));
  2543. if(!IsEnabledi) ++numFailed;
  2544. IsFramebuffer = reinterpret_cast<PFNISFRAMEBUFFER>(IntGetProcAddress("glIsFramebuffer"));
  2545. if(!IsFramebuffer) ++numFailed;
  2546. IsRenderbuffer = reinterpret_cast<PFNISRENDERBUFFER>(IntGetProcAddress("glIsRenderbuffer"));
  2547. if(!IsRenderbuffer) ++numFailed;
  2548. IsVertexArray = reinterpret_cast<PFNISVERTEXARRAY>(IntGetProcAddress("glIsVertexArray"));
  2549. if(!IsVertexArray) ++numFailed;
  2550. MapBufferRange = reinterpret_cast<PFNMAPBUFFERRANGE>(IntGetProcAddress("glMapBufferRange"));
  2551. if(!MapBufferRange) ++numFailed;
  2552. RenderbufferStorage = reinterpret_cast<PFNRENDERBUFFERSTORAGE>(IntGetProcAddress("glRenderbufferStorage"));
  2553. if(!RenderbufferStorage) ++numFailed;
  2554. RenderbufferStorageMultisample = reinterpret_cast<PFNRENDERBUFFERSTORAGEMULTISAMPLE>(IntGetProcAddress("glRenderbufferStorageMultisample"));
  2555. if(!RenderbufferStorageMultisample) ++numFailed;
  2556. TexParameterIiv = reinterpret_cast<PFNTEXPARAMETERIIV>(IntGetProcAddress("glTexParameterIiv"));
  2557. if(!TexParameterIiv) ++numFailed;
  2558. TexParameterIuiv = reinterpret_cast<PFNTEXPARAMETERIUIV>(IntGetProcAddress("glTexParameterIuiv"));
  2559. if(!TexParameterIuiv) ++numFailed;
  2560. TransformFeedbackVaryings = reinterpret_cast<PFNTRANSFORMFEEDBACKVARYINGS>(IntGetProcAddress("glTransformFeedbackVaryings"));
  2561. if(!TransformFeedbackVaryings) ++numFailed;
  2562. Uniform1ui = reinterpret_cast<PFNUNIFORM1UI>(IntGetProcAddress("glUniform1ui"));
  2563. if(!Uniform1ui) ++numFailed;
  2564. Uniform1uiv = reinterpret_cast<PFNUNIFORM1UIV>(IntGetProcAddress("glUniform1uiv"));
  2565. if(!Uniform1uiv) ++numFailed;
  2566. Uniform2ui = reinterpret_cast<PFNUNIFORM2UI>(IntGetProcAddress("glUniform2ui"));
  2567. if(!Uniform2ui) ++numFailed;
  2568. Uniform2uiv = reinterpret_cast<PFNUNIFORM2UIV>(IntGetProcAddress("glUniform2uiv"));
  2569. if(!Uniform2uiv) ++numFailed;
  2570. Uniform3ui = reinterpret_cast<PFNUNIFORM3UI>(IntGetProcAddress("glUniform3ui"));
  2571. if(!Uniform3ui) ++numFailed;
  2572. Uniform3uiv = reinterpret_cast<PFNUNIFORM3UIV>(IntGetProcAddress("glUniform3uiv"));
  2573. if(!Uniform3uiv) ++numFailed;
  2574. Uniform4ui = reinterpret_cast<PFNUNIFORM4UI>(IntGetProcAddress("glUniform4ui"));
  2575. if(!Uniform4ui) ++numFailed;
  2576. Uniform4uiv = reinterpret_cast<PFNUNIFORM4UIV>(IntGetProcAddress("glUniform4uiv"));
  2577. if(!Uniform4uiv) ++numFailed;
  2578. VertexAttribI1i = reinterpret_cast<PFNVERTEXATTRIBI1I>(IntGetProcAddress("glVertexAttribI1i"));
  2579. if(!VertexAttribI1i) ++numFailed;
  2580. VertexAttribI1iv = reinterpret_cast<PFNVERTEXATTRIBI1IV>(IntGetProcAddress("glVertexAttribI1iv"));
  2581. if(!VertexAttribI1iv) ++numFailed;
  2582. VertexAttribI1ui = reinterpret_cast<PFNVERTEXATTRIBI1UI>(IntGetProcAddress("glVertexAttribI1ui"));
  2583. if(!VertexAttribI1ui) ++numFailed;
  2584. VertexAttribI1uiv = reinterpret_cast<PFNVERTEXATTRIBI1UIV>(IntGetProcAddress("glVertexAttribI1uiv"));
  2585. if(!VertexAttribI1uiv) ++numFailed;
  2586. VertexAttribI2i = reinterpret_cast<PFNVERTEXATTRIBI2I>(IntGetProcAddress("glVertexAttribI2i"));
  2587. if(!VertexAttribI2i) ++numFailed;
  2588. VertexAttribI2iv = reinterpret_cast<PFNVERTEXATTRIBI2IV>(IntGetProcAddress("glVertexAttribI2iv"));
  2589. if(!VertexAttribI2iv) ++numFailed;
  2590. VertexAttribI2ui = reinterpret_cast<PFNVERTEXATTRIBI2UI>(IntGetProcAddress("glVertexAttribI2ui"));
  2591. if(!VertexAttribI2ui) ++numFailed;
  2592. VertexAttribI2uiv = reinterpret_cast<PFNVERTEXATTRIBI2UIV>(IntGetProcAddress("glVertexAttribI2uiv"));
  2593. if(!VertexAttribI2uiv) ++numFailed;
  2594. VertexAttribI3i = reinterpret_cast<PFNVERTEXATTRIBI3I>(IntGetProcAddress("glVertexAttribI3i"));
  2595. if(!VertexAttribI3i) ++numFailed;
  2596. VertexAttribI3iv = reinterpret_cast<PFNVERTEXATTRIBI3IV>(IntGetProcAddress("glVertexAttribI3iv"));
  2597. if(!VertexAttribI3iv) ++numFailed;
  2598. VertexAttribI3ui = reinterpret_cast<PFNVERTEXATTRIBI3UI>(IntGetProcAddress("glVertexAttribI3ui"));
  2599. if(!VertexAttribI3ui) ++numFailed;
  2600. VertexAttribI3uiv = reinterpret_cast<PFNVERTEXATTRIBI3UIV>(IntGetProcAddress("glVertexAttribI3uiv"));
  2601. if(!VertexAttribI3uiv) ++numFailed;
  2602. VertexAttribI4bv = reinterpret_cast<PFNVERTEXATTRIBI4BV>(IntGetProcAddress("glVertexAttribI4bv"));
  2603. if(!VertexAttribI4bv) ++numFailed;
  2604. VertexAttribI4i = reinterpret_cast<PFNVERTEXATTRIBI4I>(IntGetProcAddress("glVertexAttribI4i"));
  2605. if(!VertexAttribI4i) ++numFailed;
  2606. VertexAttribI4iv = reinterpret_cast<PFNVERTEXATTRIBI4IV>(IntGetProcAddress("glVertexAttribI4iv"));
  2607. if(!VertexAttribI4iv) ++numFailed;
  2608. VertexAttribI4sv = reinterpret_cast<PFNVERTEXATTRIBI4SV>(IntGetProcAddress("glVertexAttribI4sv"));
  2609. if(!VertexAttribI4sv) ++numFailed;
  2610. VertexAttribI4ubv = reinterpret_cast<PFNVERTEXATTRIBI4UBV>(IntGetProcAddress("glVertexAttribI4ubv"));
  2611. if(!VertexAttribI4ubv) ++numFailed;
  2612. VertexAttribI4ui = reinterpret_cast<PFNVERTEXATTRIBI4UI>(IntGetProcAddress("glVertexAttribI4ui"));
  2613. if(!VertexAttribI4ui) ++numFailed;
  2614. VertexAttribI4uiv = reinterpret_cast<PFNVERTEXATTRIBI4UIV>(IntGetProcAddress("glVertexAttribI4uiv"));
  2615. if(!VertexAttribI4uiv) ++numFailed;
  2616. VertexAttribI4usv = reinterpret_cast<PFNVERTEXATTRIBI4USV>(IntGetProcAddress("glVertexAttribI4usv"));
  2617. if(!VertexAttribI4usv) ++numFailed;
  2618. VertexAttribIPointer = reinterpret_cast<PFNVERTEXATTRIBIPOINTER>(IntGetProcAddress("glVertexAttribIPointer"));
  2619. if(!VertexAttribIPointer) ++numFailed;
  2620. return numFailed;
  2621. }
  2622. namespace sys
  2623. {
  2624. namespace
  2625. {
  2626. typedef int (*PFN_LOADEXTENSION)();
  2627. struct MapEntry
  2628. {
  2629. MapEntry(const char *_extName, exts::LoadTest *_extVariable)
  2630. : extName(_extName)
  2631. , extVariable(_extVariable)
  2632. , loaderFunc(0)
  2633. {}
  2634. MapEntry(const char *_extName, exts::LoadTest *_extVariable, PFN_LOADEXTENSION _loaderFunc)
  2635. : extName(_extName)
  2636. , extVariable(_extVariable)
  2637. , loaderFunc(_loaderFunc)
  2638. {}
  2639. const char *extName;
  2640. exts::LoadTest *extVariable;
  2641. PFN_LOADEXTENSION loaderFunc;
  2642. };
  2643. struct MapCompare
  2644. {
  2645. MapCompare(const char *test_) : test(test_) {}
  2646. bool operator()(const MapEntry &other) { return strcmp(test, other.extName) == 0; }
  2647. const char *test;
  2648. };
  2649. void InitializeMappingTable(std::vector<MapEntry> &table)
  2650. {
  2651. table.reserve(0);
  2652. }
  2653. void ClearExtensionVars()
  2654. {
  2655. }
  2656. void LoadExtByName(std::vector<MapEntry> &table, const char *extensionName)
  2657. {
  2658. std::vector<MapEntry>::iterator entry = std::find_if(table.begin(), table.end(), MapCompare(extensionName));
  2659. if(entry != table.end())
  2660. {
  2661. if(entry->loaderFunc)
  2662. (*entry->extVariable) = exts::LoadTest(true, entry->loaderFunc());
  2663. else
  2664. (*entry->extVariable) = exts::LoadTest(true, 0);
  2665. }
  2666. }
  2667. } //namespace
  2668. namespace
  2669. {
  2670. static void ProcExtsFromExtList(std::vector<MapEntry> &table)
  2671. {
  2672. GLint iLoop;
  2673. GLint iNumExtensions = 0;
  2674. gl::GetIntegerv(gl::NUM_EXTENSIONS, &iNumExtensions);
  2675. for(iLoop = 0; iLoop < iNumExtensions; iLoop++)
  2676. {
  2677. const char *strExtensionName = (const char *)gl::GetStringi(gl::EXTENSIONS, iLoop);
  2678. LoadExtByName(table, strExtensionName);
  2679. }
  2680. }
  2681. } //namespace
  2682. exts::LoadTest LoadFunctions()
  2683. {
  2684. ClearExtensionVars();
  2685. std::vector<MapEntry> table;
  2686. InitializeMappingTable(table);
  2687. GetIntegerv = reinterpret_cast<PFNGETINTEGERV>(IntGetProcAddress("glGetIntegerv"));
  2688. if(!GetIntegerv) return exts::LoadTest();
  2689. GetStringi = reinterpret_cast<PFNGETSTRINGI>(IntGetProcAddress("glGetStringi"));
  2690. if(!GetStringi) return exts::LoadTest();
  2691. ProcExtsFromExtList(table);
  2692. int numFailed = LoadCoreFunctions();
  2693. return exts::LoadTest(true, numFailed);
  2694. }
  2695. static int g_major_version = 0;
  2696. static int g_minor_version = 0;
  2697. static void GetGLVersion()
  2698. {
  2699. GetIntegerv(MAJOR_VERSION, &g_major_version);
  2700. GetIntegerv(MINOR_VERSION, &g_minor_version);
  2701. }
  2702. int GetMajorVersion()
  2703. {
  2704. if(g_major_version == 0)
  2705. GetGLVersion();
  2706. return g_major_version;
  2707. }
  2708. int GetMinorVersion()
  2709. {
  2710. if(g_major_version == 0) //Yes, check the major version to get the minor one.
  2711. GetGLVersion();
  2712. return g_minor_version;
  2713. }
  2714. bool IsVersionGEQ(int majorVersion, int minorVersion)
  2715. {
  2716. if(g_major_version == 0)
  2717. GetGLVersion();
  2718. if(majorVersion < g_major_version) return true;
  2719. if(majorVersion > g_major_version) return false;
  2720. if(minorVersion <= g_minor_version) return true;
  2721. return false;
  2722. }
  2723. } //namespace sys
  2724. } //namespace gl