/src/openGL.cpp

https://github.com/djbozkosz/Light-Propagation-Volumes · C++ · 2010 lines · 1936 code · 36 blank · 38 comment · 1199 complexity · ea49c6798f4602d1741094221104a99e MD5 · raw file

  1. //------------------------------------------------------------------------------
  2. #include "openGL.h"
  3. //------------------------------------------------------------------------------
  4. COpenGL::COpenGL(CContext *context) : CEngineBase(context),
  5. // GL_VERSION_1_2
  6. glCopyTexSubImage3D(NULL), statusCopyTexSubImage3D(NOpenGLProc::TYPE_NOT_LOADED),
  7. glDrawRangeElements(NULL), statusDrawRangeElements(NOpenGLProc::TYPE_NOT_LOADED),
  8. glTexImage3D(NULL), statusTexImage3D(NOpenGLProc::TYPE_NOT_LOADED),
  9. glTexSubImage3D(NULL), statusTexSubImage3D(NOpenGLProc::TYPE_NOT_LOADED),
  10. // GL_VERSION_1_3
  11. glActiveTexture(NULL), statusActiveTexture(NOpenGLProc::TYPE_NOT_LOADED),
  12. glCompressedTexImage1D(NULL), statusCompressedTexImage1D(NOpenGLProc::TYPE_NOT_LOADED),
  13. glCompressedTexImage2D(NULL), statusCompressedTexImage2D(NOpenGLProc::TYPE_NOT_LOADED),
  14. glCompressedTexImage3D(NULL), statusCompressedTexImage3D(NOpenGLProc::TYPE_NOT_LOADED),
  15. glCompressedTexSubImage1D(NULL), statusCompressedTexSubImage1D(NOpenGLProc::TYPE_NOT_LOADED),
  16. glCompressedTexSubImage2D(NULL), statusCompressedTexSubImage2D(NOpenGLProc::TYPE_NOT_LOADED),
  17. glCompressedTexSubImage3D(NULL), statusCompressedTexSubImage3D(NOpenGLProc::TYPE_NOT_LOADED),
  18. glGetCompressedTexImage(NULL), statusGetCompressedTexImage(NOpenGLProc::TYPE_NOT_LOADED),
  19. glSampleCoverage(NULL), statusSampleCoverage(NOpenGLProc::TYPE_NOT_LOADED),
  20. // GL_VERSION_1_4
  21. glBlendColor(NULL), statusBlendColor(NOpenGLProc::TYPE_NOT_LOADED),
  22. glBlendEquation(NULL), statusBlendEquation(NOpenGLProc::TYPE_NOT_LOADED),
  23. glBlendFuncSeparate(NULL), statusBlendFuncSeparate(NOpenGLProc::TYPE_NOT_LOADED),
  24. glMultiDrawArrays(NULL), statusMultiDrawArrays(NOpenGLProc::TYPE_NOT_LOADED),
  25. glMultiDrawElements(NULL), statusMultiDrawElements(NOpenGLProc::TYPE_NOT_LOADED),
  26. glPointParameterf(NULL), statusPointParameterf(NOpenGLProc::TYPE_NOT_LOADED),
  27. glPointParameterfv(NULL), statusPointParameterfv(NOpenGLProc::TYPE_NOT_LOADED),
  28. glPointParameteri(NULL), statusPointParameteri(NOpenGLProc::TYPE_NOT_LOADED),
  29. glPointParameteriv(NULL), statusPointParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  30. // GL_VERSION_1_5
  31. glBeginQuery(NULL), statusBeginQuery(NOpenGLProc::TYPE_NOT_LOADED),
  32. glBindBuffer(NULL), statusBindBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  33. glBufferData(NULL), statusBufferData(NOpenGLProc::TYPE_NOT_LOADED),
  34. glBufferSubData(NULL), statusBufferSubData(NOpenGLProc::TYPE_NOT_LOADED),
  35. glDeleteBuffers(NULL), statusDeleteBuffers(NOpenGLProc::TYPE_NOT_LOADED),
  36. glDeleteQueries(NULL), statusDeleteQueries(NOpenGLProc::TYPE_NOT_LOADED),
  37. glEndQuery(NULL), statusEndQuery(NOpenGLProc::TYPE_NOT_LOADED),
  38. glGenBuffers(NULL), statusGenBuffers(NOpenGLProc::TYPE_NOT_LOADED),
  39. glGenQueries(NULL), statusGenQueries(NOpenGLProc::TYPE_NOT_LOADED),
  40. glGetBufferParameteriv(NULL), statusGetBufferParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  41. glGetBufferPointerv(NULL), statusGetBufferPointerv(NOpenGLProc::TYPE_NOT_LOADED),
  42. glGetBufferSubData(NULL), statusGetBufferSubData(NOpenGLProc::TYPE_NOT_LOADED),
  43. glGetQueryObjectiv(NULL), statusGetQueryObjectiv(NOpenGLProc::TYPE_NOT_LOADED),
  44. glGetQueryObjectuiv(NULL), statusGetQueryObjectuiv(NOpenGLProc::TYPE_NOT_LOADED),
  45. glGetQueryiv(NULL), statusGetQueryiv(NOpenGLProc::TYPE_NOT_LOADED),
  46. glIsBuffer(NULL), statusIsBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  47. glIsQuery(NULL), statusIsQuery(NOpenGLProc::TYPE_NOT_LOADED),
  48. glMapBuffer(NULL), statusMapBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  49. glUnmapBuffer(NULL), statusUnmapBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  50. // GL_VERSION_2_0
  51. glAttachShader(NULL), statusAttachShader(NOpenGLProc::TYPE_NOT_LOADED),
  52. glBindAttribLocation(NULL), statusBindAttribLocation(NOpenGLProc::TYPE_NOT_LOADED),
  53. glBlendEquationSeparate(NULL), statusBlendEquationSeparate(NOpenGLProc::TYPE_NOT_LOADED),
  54. glCompileShader(NULL), statusCompileShader(NOpenGLProc::TYPE_NOT_LOADED),
  55. glCreateProgram(NULL), statusCreateProgram(NOpenGLProc::TYPE_NOT_LOADED),
  56. glCreateShader(NULL), statusCreateShader(NOpenGLProc::TYPE_NOT_LOADED),
  57. glDeleteProgram(NULL), statusDeleteProgram(NOpenGLProc::TYPE_NOT_LOADED),
  58. glDeleteShader(NULL), statusDeleteShader(NOpenGLProc::TYPE_NOT_LOADED),
  59. glDetachShader(NULL), statusDetachShader(NOpenGLProc::TYPE_NOT_LOADED),
  60. glDisableVertexAttribArray(NULL), statusDisableVertexAttribArray(NOpenGLProc::TYPE_NOT_LOADED),
  61. glDrawBuffers(NULL), statusDrawBuffers(NOpenGLProc::TYPE_NOT_LOADED),
  62. glEnableVertexAttribArray(NULL), statusEnableVertexAttribArray(NOpenGLProc::TYPE_NOT_LOADED),
  63. glGetActiveAttrib(NULL), statusGetActiveAttrib(NOpenGLProc::TYPE_NOT_LOADED),
  64. glGetActiveUniform(NULL), statusGetActiveUniform(NOpenGLProc::TYPE_NOT_LOADED),
  65. glGetAttachedShaders(NULL), statusGetAttachedShaders(NOpenGLProc::TYPE_NOT_LOADED),
  66. glGetAttribLocation(NULL), statusGetAttribLocation(NOpenGLProc::TYPE_NOT_LOADED),
  67. glGetProgramInfoLog(NULL), statusGetProgramInfoLog(NOpenGLProc::TYPE_NOT_LOADED),
  68. glGetProgramiv(NULL), statusGetProgramiv(NOpenGLProc::TYPE_NOT_LOADED),
  69. glGetShaderInfoLog(NULL), statusGetShaderInfoLog(NOpenGLProc::TYPE_NOT_LOADED),
  70. glGetShaderSource(NULL), statusGetShaderSource(NOpenGLProc::TYPE_NOT_LOADED),
  71. glGetShaderiv(NULL), statusGetShaderiv(NOpenGLProc::TYPE_NOT_LOADED),
  72. glGetUniformLocation(NULL), statusGetUniformLocation(NOpenGLProc::TYPE_NOT_LOADED),
  73. glGetUniformfv(NULL), statusGetUniformfv(NOpenGLProc::TYPE_NOT_LOADED),
  74. glGetUniformiv(NULL), statusGetUniformiv(NOpenGLProc::TYPE_NOT_LOADED),
  75. glGetVertexAttribPointerv(NULL), statusGetVertexAttribPointerv(NOpenGLProc::TYPE_NOT_LOADED),
  76. glGetVertexAttribdv(NULL), statusGetVertexAttribdv(NOpenGLProc::TYPE_NOT_LOADED),
  77. glGetVertexAttribfv(NULL), statusGetVertexAttribfv(NOpenGLProc::TYPE_NOT_LOADED),
  78. glGetVertexAttribiv(NULL), statusGetVertexAttribiv(NOpenGLProc::TYPE_NOT_LOADED),
  79. glIsProgram(NULL), statusIsProgram(NOpenGLProc::TYPE_NOT_LOADED),
  80. glIsShader(NULL), statusIsShader(NOpenGLProc::TYPE_NOT_LOADED),
  81. glLinkProgram(NULL), statusLinkProgram(NOpenGLProc::TYPE_NOT_LOADED),
  82. glShaderSource(NULL), statusShaderSource(NOpenGLProc::TYPE_NOT_LOADED),
  83. glStencilFuncSeparate(NULL), statusStencilFuncSeparate(NOpenGLProc::TYPE_NOT_LOADED),
  84. glStencilMaskSeparate(NULL), statusStencilMaskSeparate(NOpenGLProc::TYPE_NOT_LOADED),
  85. glStencilOpSeparate(NULL), statusStencilOpSeparate(NOpenGLProc::TYPE_NOT_LOADED),
  86. glUniform1f(NULL), statusUniform1f(NOpenGLProc::TYPE_NOT_LOADED),
  87. glUniform1fv(NULL), statusUniform1fv(NOpenGLProc::TYPE_NOT_LOADED),
  88. glUniform1i(NULL), statusUniform1i(NOpenGLProc::TYPE_NOT_LOADED),
  89. glUniform1iv(NULL), statusUniform1iv(NOpenGLProc::TYPE_NOT_LOADED),
  90. glUniform2f(NULL), statusUniform2f(NOpenGLProc::TYPE_NOT_LOADED),
  91. glUniform2fv(NULL), statusUniform2fv(NOpenGLProc::TYPE_NOT_LOADED),
  92. glUniform2i(NULL), statusUniform2i(NOpenGLProc::TYPE_NOT_LOADED),
  93. glUniform2iv(NULL), statusUniform2iv(NOpenGLProc::TYPE_NOT_LOADED),
  94. glUniform3f(NULL), statusUniform3f(NOpenGLProc::TYPE_NOT_LOADED),
  95. glUniform3fv(NULL), statusUniform3fv(NOpenGLProc::TYPE_NOT_LOADED),
  96. glUniform3i(NULL), statusUniform3i(NOpenGLProc::TYPE_NOT_LOADED),
  97. glUniform3iv(NULL), statusUniform3iv(NOpenGLProc::TYPE_NOT_LOADED),
  98. glUniform4f(NULL), statusUniform4f(NOpenGLProc::TYPE_NOT_LOADED),
  99. glUniform4fv(NULL), statusUniform4fv(NOpenGLProc::TYPE_NOT_LOADED),
  100. glUniform4i(NULL), statusUniform4i(NOpenGLProc::TYPE_NOT_LOADED),
  101. glUniform4iv(NULL), statusUniform4iv(NOpenGLProc::TYPE_NOT_LOADED),
  102. glUniformMatrix2fv(NULL), statusUniformMatrix2fv(NOpenGLProc::TYPE_NOT_LOADED),
  103. glUniformMatrix3fv(NULL), statusUniformMatrix3fv(NOpenGLProc::TYPE_NOT_LOADED),
  104. glUniformMatrix4fv(NULL), statusUniformMatrix4fv(NOpenGLProc::TYPE_NOT_LOADED),
  105. glUseProgram(NULL), statusUseProgram(NOpenGLProc::TYPE_NOT_LOADED),
  106. glValidateProgram(NULL), statusValidateProgram(NOpenGLProc::TYPE_NOT_LOADED),
  107. glVertexAttrib1d(NULL), statusVertexAttrib1d(NOpenGLProc::TYPE_NOT_LOADED),
  108. glVertexAttrib1dv(NULL), statusVertexAttrib1dv(NOpenGLProc::TYPE_NOT_LOADED),
  109. glVertexAttrib1f(NULL), statusVertexAttrib1f(NOpenGLProc::TYPE_NOT_LOADED),
  110. glVertexAttrib1fv(NULL), statusVertexAttrib1fv(NOpenGLProc::TYPE_NOT_LOADED),
  111. glVertexAttrib1s(NULL), statusVertexAttrib1s(NOpenGLProc::TYPE_NOT_LOADED),
  112. glVertexAttrib1sv(NULL), statusVertexAttrib1sv(NOpenGLProc::TYPE_NOT_LOADED),
  113. glVertexAttrib2d(NULL), statusVertexAttrib2d(NOpenGLProc::TYPE_NOT_LOADED),
  114. glVertexAttrib2dv(NULL), statusVertexAttrib2dv(NOpenGLProc::TYPE_NOT_LOADED),
  115. glVertexAttrib2f(NULL), statusVertexAttrib2f(NOpenGLProc::TYPE_NOT_LOADED),
  116. glVertexAttrib2fv(NULL), statusVertexAttrib2fv(NOpenGLProc::TYPE_NOT_LOADED),
  117. glVertexAttrib2s(NULL), statusVertexAttrib2s(NOpenGLProc::TYPE_NOT_LOADED),
  118. glVertexAttrib2sv(NULL), statusVertexAttrib2sv(NOpenGLProc::TYPE_NOT_LOADED),
  119. glVertexAttrib3d(NULL), statusVertexAttrib3d(NOpenGLProc::TYPE_NOT_LOADED),
  120. glVertexAttrib3dv(NULL), statusVertexAttrib3dv(NOpenGLProc::TYPE_NOT_LOADED),
  121. glVertexAttrib3f(NULL), statusVertexAttrib3f(NOpenGLProc::TYPE_NOT_LOADED),
  122. glVertexAttrib3fv(NULL), statusVertexAttrib3fv(NOpenGLProc::TYPE_NOT_LOADED),
  123. glVertexAttrib3s(NULL), statusVertexAttrib3s(NOpenGLProc::TYPE_NOT_LOADED),
  124. glVertexAttrib3sv(NULL), statusVertexAttrib3sv(NOpenGLProc::TYPE_NOT_LOADED),
  125. glVertexAttrib4Nbv(NULL), statusVertexAttrib4Nbv(NOpenGLProc::TYPE_NOT_LOADED),
  126. glVertexAttrib4Niv(NULL), statusVertexAttrib4Niv(NOpenGLProc::TYPE_NOT_LOADED),
  127. glVertexAttrib4Nsv(NULL), statusVertexAttrib4Nsv(NOpenGLProc::TYPE_NOT_LOADED),
  128. glVertexAttrib4Nub(NULL), statusVertexAttrib4Nub(NOpenGLProc::TYPE_NOT_LOADED),
  129. glVertexAttrib4Nubv(NULL), statusVertexAttrib4Nubv(NOpenGLProc::TYPE_NOT_LOADED),
  130. glVertexAttrib4Nuiv(NULL), statusVertexAttrib4Nuiv(NOpenGLProc::TYPE_NOT_LOADED),
  131. glVertexAttrib4Nusv(NULL), statusVertexAttrib4Nusv(NOpenGLProc::TYPE_NOT_LOADED),
  132. glVertexAttrib4bv(NULL), statusVertexAttrib4bv(NOpenGLProc::TYPE_NOT_LOADED),
  133. glVertexAttrib4d(NULL), statusVertexAttrib4d(NOpenGLProc::TYPE_NOT_LOADED),
  134. glVertexAttrib4dv(NULL), statusVertexAttrib4dv(NOpenGLProc::TYPE_NOT_LOADED),
  135. glVertexAttrib4f(NULL), statusVertexAttrib4f(NOpenGLProc::TYPE_NOT_LOADED),
  136. glVertexAttrib4fv(NULL), statusVertexAttrib4fv(NOpenGLProc::TYPE_NOT_LOADED),
  137. glVertexAttrib4iv(NULL), statusVertexAttrib4iv(NOpenGLProc::TYPE_NOT_LOADED),
  138. glVertexAttrib4s(NULL), statusVertexAttrib4s(NOpenGLProc::TYPE_NOT_LOADED),
  139. glVertexAttrib4sv(NULL), statusVertexAttrib4sv(NOpenGLProc::TYPE_NOT_LOADED),
  140. glVertexAttrib4ubv(NULL), statusVertexAttrib4ubv(NOpenGLProc::TYPE_NOT_LOADED),
  141. glVertexAttrib4uiv(NULL), statusVertexAttrib4uiv(NOpenGLProc::TYPE_NOT_LOADED),
  142. glVertexAttrib4usv(NULL), statusVertexAttrib4usv(NOpenGLProc::TYPE_NOT_LOADED),
  143. glVertexAttribPointer(NULL), statusVertexAttribPointer(NOpenGLProc::TYPE_NOT_LOADED),
  144. // GL_VERSION_2_1
  145. glUniformMatrix2x3fv(NULL), statusUniformMatrix2x3fv(NOpenGLProc::TYPE_NOT_LOADED),
  146. glUniformMatrix2x4fv(NULL), statusUniformMatrix2x4fv(NOpenGLProc::TYPE_NOT_LOADED),
  147. glUniformMatrix3x2fv(NULL), statusUniformMatrix3x2fv(NOpenGLProc::TYPE_NOT_LOADED),
  148. glUniformMatrix3x4fv(NULL), statusUniformMatrix3x4fv(NOpenGLProc::TYPE_NOT_LOADED),
  149. glUniformMatrix4x2fv(NULL), statusUniformMatrix4x2fv(NOpenGLProc::TYPE_NOT_LOADED),
  150. glUniformMatrix4x3fv(NULL), statusUniformMatrix4x3fv(NOpenGLProc::TYPE_NOT_LOADED),
  151. // GL_VERSION_3_0
  152. glBeginConditionalRender(NULL), statusBeginConditionalRender(NOpenGLProc::TYPE_NOT_LOADED),
  153. glBeginTransformFeedback(NULL), statusBeginTransformFeedback(NOpenGLProc::TYPE_NOT_LOADED),
  154. glBindBufferBase(NULL), statusBindBufferBase(NOpenGLProc::TYPE_NOT_LOADED),
  155. glBindBufferRange(NULL), statusBindBufferRange(NOpenGLProc::TYPE_NOT_LOADED),
  156. glBindFragDataLocation(NULL), statusBindFragDataLocation(NOpenGLProc::TYPE_NOT_LOADED),
  157. glBindFramebuffer(NULL), statusBindFramebuffer(NOpenGLProc::TYPE_NOT_LOADED),
  158. glBindRenderbuffer(NULL), statusBindRenderbuffer(NOpenGLProc::TYPE_NOT_LOADED),
  159. glBindVertexArray(NULL), statusBindVertexArray(NOpenGLProc::TYPE_NOT_LOADED),
  160. glBlitFramebuffer(NULL), statusBlitFramebuffer(NOpenGLProc::TYPE_NOT_LOADED),
  161. glCheckFramebufferStatus(NULL), statusCheckFramebufferStatus(NOpenGLProc::TYPE_NOT_LOADED),
  162. glClampColor(NULL), statusClampColor(NOpenGLProc::TYPE_NOT_LOADED),
  163. glClearBufferfi(NULL), statusClearBufferfi(NOpenGLProc::TYPE_NOT_LOADED),
  164. glClearBufferfv(NULL), statusClearBufferfv(NOpenGLProc::TYPE_NOT_LOADED),
  165. glClearBufferiv(NULL), statusClearBufferiv(NOpenGLProc::TYPE_NOT_LOADED),
  166. glClearBufferuiv(NULL), statusClearBufferuiv(NOpenGLProc::TYPE_NOT_LOADED),
  167. glColorMaski(NULL), statusColorMaski(NOpenGLProc::TYPE_NOT_LOADED),
  168. glDeleteFramebuffers(NULL), statusDeleteFramebuffers(NOpenGLProc::TYPE_NOT_LOADED),
  169. glDeleteRenderbuffers(NULL), statusDeleteRenderbuffers(NOpenGLProc::TYPE_NOT_LOADED),
  170. glDeleteVertexArrays(NULL), statusDeleteVertexArrays(NOpenGLProc::TYPE_NOT_LOADED),
  171. glDisablei(NULL), statusDisablei(NOpenGLProc::TYPE_NOT_LOADED),
  172. glEnablei(NULL), statusEnablei(NOpenGLProc::TYPE_NOT_LOADED),
  173. glEndConditionalRender(NULL), statusEndConditionalRender(NOpenGLProc::TYPE_NOT_LOADED),
  174. glEndTransformFeedback(NULL), statusEndTransformFeedback(NOpenGLProc::TYPE_NOT_LOADED),
  175. glFlushMappedBufferRange(NULL), statusFlushMappedBufferRange(NOpenGLProc::TYPE_NOT_LOADED),
  176. glFramebufferRenderbuffer(NULL), statusFramebufferRenderbuffer(NOpenGLProc::TYPE_NOT_LOADED),
  177. glFramebufferTexture1D(NULL), statusFramebufferTexture1D(NOpenGLProc::TYPE_NOT_LOADED),
  178. glFramebufferTexture2D(NULL), statusFramebufferTexture2D(NOpenGLProc::TYPE_NOT_LOADED),
  179. glFramebufferTexture3D(NULL), statusFramebufferTexture3D(NOpenGLProc::TYPE_NOT_LOADED),
  180. glFramebufferTextureLayer(NULL), statusFramebufferTextureLayer(NOpenGLProc::TYPE_NOT_LOADED),
  181. glGenFramebuffers(NULL), statusGenFramebuffers(NOpenGLProc::TYPE_NOT_LOADED),
  182. glGenRenderbuffers(NULL), statusGenRenderbuffers(NOpenGLProc::TYPE_NOT_LOADED),
  183. glGenVertexArrays(NULL), statusGenVertexArrays(NOpenGLProc::TYPE_NOT_LOADED),
  184. glGenerateMipmap(NULL), statusGenerateMipmap(NOpenGLProc::TYPE_NOT_LOADED),
  185. glGetBooleani_v(NULL), statusGetBooleani_v(NOpenGLProc::TYPE_NOT_LOADED),
  186. glGetFragDataLocation(NULL), statusGetFragDataLocation(NOpenGLProc::TYPE_NOT_LOADED),
  187. glGetFramebufferAttachmentParameteriv(NULL), statusGetFramebufferAttachmentParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  188. glGetIntegeri_v(NULL), statusGetIntegeri_v(NOpenGLProc::TYPE_NOT_LOADED),
  189. glGetRenderbufferParameteriv(NULL), statusGetRenderbufferParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  190. glGetStringi(NULL), statusGetStringi(NOpenGLProc::TYPE_NOT_LOADED),
  191. glGetTexParameterIiv(NULL), statusGetTexParameterIiv(NOpenGLProc::TYPE_NOT_LOADED),
  192. glGetTexParameterIuiv(NULL), statusGetTexParameterIuiv(NOpenGLProc::TYPE_NOT_LOADED),
  193. glGetTransformFeedbackVarying(NULL), statusGetTransformFeedbackVarying(NOpenGLProc::TYPE_NOT_LOADED),
  194. glGetUniformuiv(NULL), statusGetUniformuiv(NOpenGLProc::TYPE_NOT_LOADED),
  195. glGetVertexAttribIiv(NULL), statusGetVertexAttribIiv(NOpenGLProc::TYPE_NOT_LOADED),
  196. glGetVertexAttribIuiv(NULL), statusGetVertexAttribIuiv(NOpenGLProc::TYPE_NOT_LOADED),
  197. glIsEnabledi(NULL), statusIsEnabledi(NOpenGLProc::TYPE_NOT_LOADED),
  198. glIsFramebuffer(NULL), statusIsFramebuffer(NOpenGLProc::TYPE_NOT_LOADED),
  199. glIsRenderbuffer(NULL), statusIsRenderbuffer(NOpenGLProc::TYPE_NOT_LOADED),
  200. glIsVertexArray(NULL), statusIsVertexArray(NOpenGLProc::TYPE_NOT_LOADED),
  201. glMapBufferRange(NULL), statusMapBufferRange(NOpenGLProc::TYPE_NOT_LOADED),
  202. glRenderbufferStorage(NULL), statusRenderbufferStorage(NOpenGLProc::TYPE_NOT_LOADED),
  203. glRenderbufferStorageMultisample(NULL), statusRenderbufferStorageMultisample(NOpenGLProc::TYPE_NOT_LOADED),
  204. glTexParameterIiv(NULL), statusTexParameterIiv(NOpenGLProc::TYPE_NOT_LOADED),
  205. glTexParameterIuiv(NULL), statusTexParameterIuiv(NOpenGLProc::TYPE_NOT_LOADED),
  206. glTransformFeedbackVaryings(NULL), statusTransformFeedbackVaryings(NOpenGLProc::TYPE_NOT_LOADED),
  207. glUniform1ui(NULL), statusUniform1ui(NOpenGLProc::TYPE_NOT_LOADED),
  208. glUniform1uiv(NULL), statusUniform1uiv(NOpenGLProc::TYPE_NOT_LOADED),
  209. glUniform2ui(NULL), statusUniform2ui(NOpenGLProc::TYPE_NOT_LOADED),
  210. glUniform2uiv(NULL), statusUniform2uiv(NOpenGLProc::TYPE_NOT_LOADED),
  211. glUniform3ui(NULL), statusUniform3ui(NOpenGLProc::TYPE_NOT_LOADED),
  212. glUniform3uiv(NULL), statusUniform3uiv(NOpenGLProc::TYPE_NOT_LOADED),
  213. glUniform4ui(NULL), statusUniform4ui(NOpenGLProc::TYPE_NOT_LOADED),
  214. glUniform4uiv(NULL), statusUniform4uiv(NOpenGLProc::TYPE_NOT_LOADED),
  215. glVertexAttribI1i(NULL), statusVertexAttribI1i(NOpenGLProc::TYPE_NOT_LOADED),
  216. glVertexAttribI1iv(NULL), statusVertexAttribI1iv(NOpenGLProc::TYPE_NOT_LOADED),
  217. glVertexAttribI1ui(NULL), statusVertexAttribI1ui(NOpenGLProc::TYPE_NOT_LOADED),
  218. glVertexAttribI1uiv(NULL), statusVertexAttribI1uiv(NOpenGLProc::TYPE_NOT_LOADED),
  219. glVertexAttribI2i(NULL), statusVertexAttribI2i(NOpenGLProc::TYPE_NOT_LOADED),
  220. glVertexAttribI2iv(NULL), statusVertexAttribI2iv(NOpenGLProc::TYPE_NOT_LOADED),
  221. glVertexAttribI2ui(NULL), statusVertexAttribI2ui(NOpenGLProc::TYPE_NOT_LOADED),
  222. glVertexAttribI2uiv(NULL), statusVertexAttribI2uiv(NOpenGLProc::TYPE_NOT_LOADED),
  223. glVertexAttribI3i(NULL), statusVertexAttribI3i(NOpenGLProc::TYPE_NOT_LOADED),
  224. glVertexAttribI3iv(NULL), statusVertexAttribI3iv(NOpenGLProc::TYPE_NOT_LOADED),
  225. glVertexAttribI3ui(NULL), statusVertexAttribI3ui(NOpenGLProc::TYPE_NOT_LOADED),
  226. glVertexAttribI3uiv(NULL), statusVertexAttribI3uiv(NOpenGLProc::TYPE_NOT_LOADED),
  227. glVertexAttribI4bv(NULL), statusVertexAttribI4bv(NOpenGLProc::TYPE_NOT_LOADED),
  228. glVertexAttribI4i(NULL), statusVertexAttribI4i(NOpenGLProc::TYPE_NOT_LOADED),
  229. glVertexAttribI4iv(NULL), statusVertexAttribI4iv(NOpenGLProc::TYPE_NOT_LOADED),
  230. glVertexAttribI4sv(NULL), statusVertexAttribI4sv(NOpenGLProc::TYPE_NOT_LOADED),
  231. glVertexAttribI4ubv(NULL), statusVertexAttribI4ubv(NOpenGLProc::TYPE_NOT_LOADED),
  232. glVertexAttribI4ui(NULL), statusVertexAttribI4ui(NOpenGLProc::TYPE_NOT_LOADED),
  233. glVertexAttribI4uiv(NULL), statusVertexAttribI4uiv(NOpenGLProc::TYPE_NOT_LOADED),
  234. glVertexAttribI4usv(NULL), statusVertexAttribI4usv(NOpenGLProc::TYPE_NOT_LOADED),
  235. glVertexAttribIPointer(NULL), statusVertexAttribIPointer(NOpenGLProc::TYPE_NOT_LOADED),
  236. // GL_VERSION_3_1
  237. glCopyBufferSubData(NULL), statusCopyBufferSubData(NOpenGLProc::TYPE_NOT_LOADED),
  238. glDrawArraysInstanced(NULL), statusDrawArraysInstanced(NOpenGLProc::TYPE_NOT_LOADED),
  239. glDrawElementsInstanced(NULL), statusDrawElementsInstanced(NOpenGLProc::TYPE_NOT_LOADED),
  240. glGetActiveUniformBlockName(NULL), statusGetActiveUniformBlockName(NOpenGLProc::TYPE_NOT_LOADED),
  241. glGetActiveUniformBlockiv(NULL), statusGetActiveUniformBlockiv(NOpenGLProc::TYPE_NOT_LOADED),
  242. glGetActiveUniformName(NULL), statusGetActiveUniformName(NOpenGLProc::TYPE_NOT_LOADED),
  243. glGetActiveUniformsiv(NULL), statusGetActiveUniformsiv(NOpenGLProc::TYPE_NOT_LOADED),
  244. glGetUniformBlockIndex(NULL), statusGetUniformBlockIndex(NOpenGLProc::TYPE_NOT_LOADED),
  245. glGetUniformIndices(NULL), statusGetUniformIndices(NOpenGLProc::TYPE_NOT_LOADED),
  246. glPrimitiveRestartIndex(NULL), statusPrimitiveRestartIndex(NOpenGLProc::TYPE_NOT_LOADED),
  247. glTexBuffer(NULL), statusTexBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  248. glUniformBlockBinding(NULL), statusUniformBlockBinding(NOpenGLProc::TYPE_NOT_LOADED),
  249. // GL_VERSION_3_2
  250. glClientWaitSync(NULL), statusClientWaitSync(NOpenGLProc::TYPE_NOT_LOADED),
  251. glDeleteSync(NULL), statusDeleteSync(NOpenGLProc::TYPE_NOT_LOADED),
  252. glDrawElementsBaseVertex(NULL), statusDrawElementsBaseVertex(NOpenGLProc::TYPE_NOT_LOADED),
  253. glDrawElementsInstancedBaseVertex(NULL), statusDrawElementsInstancedBaseVertex(NOpenGLProc::TYPE_NOT_LOADED),
  254. glDrawRangeElementsBaseVertex(NULL), statusDrawRangeElementsBaseVertex(NOpenGLProc::TYPE_NOT_LOADED),
  255. glFenceSync(NULL), statusFenceSync(NOpenGLProc::TYPE_NOT_LOADED),
  256. glFramebufferTexture(NULL), statusFramebufferTexture(NOpenGLProc::TYPE_NOT_LOADED),
  257. glGetBufferParameteri64v(NULL), statusGetBufferParameteri64v(NOpenGLProc::TYPE_NOT_LOADED),
  258. glGetInteger64i_v(NULL), statusGetInteger64i_v(NOpenGLProc::TYPE_NOT_LOADED),
  259. glGetInteger64v(NULL), statusGetInteger64v(NOpenGLProc::TYPE_NOT_LOADED),
  260. glGetMultisamplefv(NULL), statusGetMultisamplefv(NOpenGLProc::TYPE_NOT_LOADED),
  261. glGetSynciv(NULL), statusGetSynciv(NOpenGLProc::TYPE_NOT_LOADED),
  262. glIsSync(NULL), statusIsSync(NOpenGLProc::TYPE_NOT_LOADED),
  263. glMultiDrawElementsBaseVertex(NULL), statusMultiDrawElementsBaseVertex(NOpenGLProc::TYPE_NOT_LOADED),
  264. glProvokingVertex(NULL), statusProvokingVertex(NOpenGLProc::TYPE_NOT_LOADED),
  265. glSampleMaski(NULL), statusSampleMaski(NOpenGLProc::TYPE_NOT_LOADED),
  266. glTexImage2DMultisample(NULL), statusTexImage2DMultisample(NOpenGLProc::TYPE_NOT_LOADED),
  267. glTexImage3DMultisample(NULL), statusTexImage3DMultisample(NOpenGLProc::TYPE_NOT_LOADED),
  268. glWaitSync(NULL), statusWaitSync(NOpenGLProc::TYPE_NOT_LOADED),
  269. // GL_VERSION_3_3
  270. glBindFragDataLocationIndexed(NULL), statusBindFragDataLocationIndexed(NOpenGLProc::TYPE_NOT_LOADED),
  271. glBindSampler(NULL), statusBindSampler(NOpenGLProc::TYPE_NOT_LOADED),
  272. glDeleteSamplers(NULL), statusDeleteSamplers(NOpenGLProc::TYPE_NOT_LOADED),
  273. glGenSamplers(NULL), statusGenSamplers(NOpenGLProc::TYPE_NOT_LOADED),
  274. glGetFragDataIndex(NULL), statusGetFragDataIndex(NOpenGLProc::TYPE_NOT_LOADED),
  275. glGetQueryObjecti64v(NULL), statusGetQueryObjecti64v(NOpenGLProc::TYPE_NOT_LOADED),
  276. glGetQueryObjectui64v(NULL), statusGetQueryObjectui64v(NOpenGLProc::TYPE_NOT_LOADED),
  277. glGetSamplerParameterIiv(NULL), statusGetSamplerParameterIiv(NOpenGLProc::TYPE_NOT_LOADED),
  278. glGetSamplerParameterIuiv(NULL), statusGetSamplerParameterIuiv(NOpenGLProc::TYPE_NOT_LOADED),
  279. glGetSamplerParameterfv(NULL), statusGetSamplerParameterfv(NOpenGLProc::TYPE_NOT_LOADED),
  280. glGetSamplerParameteriv(NULL), statusGetSamplerParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  281. glIsSampler(NULL), statusIsSampler(NOpenGLProc::TYPE_NOT_LOADED),
  282. glQueryCounter(NULL), statusQueryCounter(NOpenGLProc::TYPE_NOT_LOADED),
  283. glSamplerParameterIiv(NULL), statusSamplerParameterIiv(NOpenGLProc::TYPE_NOT_LOADED),
  284. glSamplerParameterIuiv(NULL), statusSamplerParameterIuiv(NOpenGLProc::TYPE_NOT_LOADED),
  285. glSamplerParameterf(NULL), statusSamplerParameterf(NOpenGLProc::TYPE_NOT_LOADED),
  286. glSamplerParameterfv(NULL), statusSamplerParameterfv(NOpenGLProc::TYPE_NOT_LOADED),
  287. glSamplerParameteri(NULL), statusSamplerParameteri(NOpenGLProc::TYPE_NOT_LOADED),
  288. glSamplerParameteriv(NULL), statusSamplerParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  289. glVertexAttribDivisor(NULL), statusVertexAttribDivisor(NOpenGLProc::TYPE_NOT_LOADED),
  290. glVertexAttribP1ui(NULL), statusVertexAttribP1ui(NOpenGLProc::TYPE_NOT_LOADED),
  291. glVertexAttribP1uiv(NULL), statusVertexAttribP1uiv(NOpenGLProc::TYPE_NOT_LOADED),
  292. glVertexAttribP2ui(NULL), statusVertexAttribP2ui(NOpenGLProc::TYPE_NOT_LOADED),
  293. glVertexAttribP2uiv(NULL), statusVertexAttribP2uiv(NOpenGLProc::TYPE_NOT_LOADED),
  294. glVertexAttribP3ui(NULL), statusVertexAttribP3ui(NOpenGLProc::TYPE_NOT_LOADED),
  295. glVertexAttribP3uiv(NULL), statusVertexAttribP3uiv(NOpenGLProc::TYPE_NOT_LOADED),
  296. glVertexAttribP4ui(NULL), statusVertexAttribP4ui(NOpenGLProc::TYPE_NOT_LOADED),
  297. glVertexAttribP4uiv(NULL), statusVertexAttribP4uiv(NOpenGLProc::TYPE_NOT_LOADED),
  298. // GL_VERSION_4_0
  299. glBeginQueryIndexed(NULL), statusBeginQueryIndexed(NOpenGLProc::TYPE_NOT_LOADED),
  300. glBindTransformFeedback(NULL), statusBindTransformFeedback(NOpenGLProc::TYPE_NOT_LOADED),
  301. glBlendEquationSeparatei(NULL), statusBlendEquationSeparatei(NOpenGLProc::TYPE_NOT_LOADED),
  302. glBlendEquationi(NULL), statusBlendEquationi(NOpenGLProc::TYPE_NOT_LOADED),
  303. glBlendFuncSeparatei(NULL), statusBlendFuncSeparatei(NOpenGLProc::TYPE_NOT_LOADED),
  304. glBlendFunci(NULL), statusBlendFunci(NOpenGLProc::TYPE_NOT_LOADED),
  305. glDeleteTransformFeedbacks(NULL), statusDeleteTransformFeedbacks(NOpenGLProc::TYPE_NOT_LOADED),
  306. glDrawArraysIndirect(NULL), statusDrawArraysIndirect(NOpenGLProc::TYPE_NOT_LOADED),
  307. glDrawElementsIndirect(NULL), statusDrawElementsIndirect(NOpenGLProc::TYPE_NOT_LOADED),
  308. glDrawTransformFeedback(NULL), statusDrawTransformFeedback(NOpenGLProc::TYPE_NOT_LOADED),
  309. glDrawTransformFeedbackStream(NULL), statusDrawTransformFeedbackStream(NOpenGLProc::TYPE_NOT_LOADED),
  310. glEndQueryIndexed(NULL), statusEndQueryIndexed(NOpenGLProc::TYPE_NOT_LOADED),
  311. glGenTransformFeedbacks(NULL), statusGenTransformFeedbacks(NOpenGLProc::TYPE_NOT_LOADED),
  312. glGetActiveSubroutineName(NULL), statusGetActiveSubroutineName(NOpenGLProc::TYPE_NOT_LOADED),
  313. glGetActiveSubroutineUniformName(NULL), statusGetActiveSubroutineUniformName(NOpenGLProc::TYPE_NOT_LOADED),
  314. glGetActiveSubroutineUniformiv(NULL), statusGetActiveSubroutineUniformiv(NOpenGLProc::TYPE_NOT_LOADED),
  315. glGetProgramStageiv(NULL), statusGetProgramStageiv(NOpenGLProc::TYPE_NOT_LOADED),
  316. glGetQueryIndexediv(NULL), statusGetQueryIndexediv(NOpenGLProc::TYPE_NOT_LOADED),
  317. glGetSubroutineIndex(NULL), statusGetSubroutineIndex(NOpenGLProc::TYPE_NOT_LOADED),
  318. glGetSubroutineUniformLocation(NULL), statusGetSubroutineUniformLocation(NOpenGLProc::TYPE_NOT_LOADED),
  319. glGetUniformSubroutineuiv(NULL), statusGetUniformSubroutineuiv(NOpenGLProc::TYPE_NOT_LOADED),
  320. glGetUniformdv(NULL), statusGetUniformdv(NOpenGLProc::TYPE_NOT_LOADED),
  321. glIsTransformFeedback(NULL), statusIsTransformFeedback(NOpenGLProc::TYPE_NOT_LOADED),
  322. glMinSampleShading(NULL), statusMinSampleShading(NOpenGLProc::TYPE_NOT_LOADED),
  323. glPatchParameterfv(NULL), statusPatchParameterfv(NOpenGLProc::TYPE_NOT_LOADED),
  324. glPatchParameteri(NULL), statusPatchParameteri(NOpenGLProc::TYPE_NOT_LOADED),
  325. glPauseTransformFeedback(NULL), statusPauseTransformFeedback(NOpenGLProc::TYPE_NOT_LOADED),
  326. glResumeTransformFeedback(NULL), statusResumeTransformFeedback(NOpenGLProc::TYPE_NOT_LOADED),
  327. glUniform1d(NULL), statusUniform1d(NOpenGLProc::TYPE_NOT_LOADED),
  328. glUniform1dv(NULL), statusUniform1dv(NOpenGLProc::TYPE_NOT_LOADED),
  329. glUniform2d(NULL), statusUniform2d(NOpenGLProc::TYPE_NOT_LOADED),
  330. glUniform2dv(NULL), statusUniform2dv(NOpenGLProc::TYPE_NOT_LOADED),
  331. glUniform3d(NULL), statusUniform3d(NOpenGLProc::TYPE_NOT_LOADED),
  332. glUniform3dv(NULL), statusUniform3dv(NOpenGLProc::TYPE_NOT_LOADED),
  333. glUniform4d(NULL), statusUniform4d(NOpenGLProc::TYPE_NOT_LOADED),
  334. glUniform4dv(NULL), statusUniform4dv(NOpenGLProc::TYPE_NOT_LOADED),
  335. glUniformMatrix2dv(NULL), statusUniformMatrix2dv(NOpenGLProc::TYPE_NOT_LOADED),
  336. glUniformMatrix2x3dv(NULL), statusUniformMatrix2x3dv(NOpenGLProc::TYPE_NOT_LOADED),
  337. glUniformMatrix2x4dv(NULL), statusUniformMatrix2x4dv(NOpenGLProc::TYPE_NOT_LOADED),
  338. glUniformMatrix3dv(NULL), statusUniformMatrix3dv(NOpenGLProc::TYPE_NOT_LOADED),
  339. glUniformMatrix3x2dv(NULL), statusUniformMatrix3x2dv(NOpenGLProc::TYPE_NOT_LOADED),
  340. glUniformMatrix3x4dv(NULL), statusUniformMatrix3x4dv(NOpenGLProc::TYPE_NOT_LOADED),
  341. glUniformMatrix4dv(NULL), statusUniformMatrix4dv(NOpenGLProc::TYPE_NOT_LOADED),
  342. glUniformMatrix4x2dv(NULL), statusUniformMatrix4x2dv(NOpenGLProc::TYPE_NOT_LOADED),
  343. glUniformMatrix4x3dv(NULL), statusUniformMatrix4x3dv(NOpenGLProc::TYPE_NOT_LOADED),
  344. glUniformSubroutinesuiv(NULL), statusUniformSubroutinesuiv(NOpenGLProc::TYPE_NOT_LOADED),
  345. // GL_VERSION_4_1
  346. glActiveShaderProgram(NULL), statusActiveShaderProgram(NOpenGLProc::TYPE_NOT_LOADED),
  347. glBindProgramPipeline(NULL), statusBindProgramPipeline(NOpenGLProc::TYPE_NOT_LOADED),
  348. glClearDepthf(NULL), statusClearDepthf(NOpenGLProc::TYPE_NOT_LOADED),
  349. glCreateShaderProgramv(NULL), statusCreateShaderProgramv(NOpenGLProc::TYPE_NOT_LOADED),
  350. glDeleteProgramPipelines(NULL), statusDeleteProgramPipelines(NOpenGLProc::TYPE_NOT_LOADED),
  351. glDepthRangeArrayv(NULL), statusDepthRangeArrayv(NOpenGLProc::TYPE_NOT_LOADED),
  352. glDepthRangeIndexed(NULL), statusDepthRangeIndexed(NOpenGLProc::TYPE_NOT_LOADED),
  353. glDepthRangef(NULL), statusDepthRangef(NOpenGLProc::TYPE_NOT_LOADED),
  354. glGenProgramPipelines(NULL), statusGenProgramPipelines(NOpenGLProc::TYPE_NOT_LOADED),
  355. glGetDoublei_v(NULL), statusGetDoublei_v(NOpenGLProc::TYPE_NOT_LOADED),
  356. glGetFloati_v(NULL), statusGetFloati_v(NOpenGLProc::TYPE_NOT_LOADED),
  357. glGetProgramBinary(NULL), statusGetProgramBinary(NOpenGLProc::TYPE_NOT_LOADED),
  358. glGetProgramPipelineInfoLog(NULL), statusGetProgramPipelineInfoLog(NOpenGLProc::TYPE_NOT_LOADED),
  359. glGetProgramPipelineiv(NULL), statusGetProgramPipelineiv(NOpenGLProc::TYPE_NOT_LOADED),
  360. glGetShaderPrecisionFormat(NULL), statusGetShaderPrecisionFormat(NOpenGLProc::TYPE_NOT_LOADED),
  361. glGetVertexAttribLdv(NULL), statusGetVertexAttribLdv(NOpenGLProc::TYPE_NOT_LOADED),
  362. glIsProgramPipeline(NULL), statusIsProgramPipeline(NOpenGLProc::TYPE_NOT_LOADED),
  363. glProgramBinary(NULL), statusProgramBinary(NOpenGLProc::TYPE_NOT_LOADED),
  364. glProgramParameteri(NULL), statusProgramParameteri(NOpenGLProc::TYPE_NOT_LOADED),
  365. glProgramUniform1d(NULL), statusProgramUniform1d(NOpenGLProc::TYPE_NOT_LOADED),
  366. glProgramUniform1dv(NULL), statusProgramUniform1dv(NOpenGLProc::TYPE_NOT_LOADED),
  367. glProgramUniform1f(NULL), statusProgramUniform1f(NOpenGLProc::TYPE_NOT_LOADED),
  368. glProgramUniform1fv(NULL), statusProgramUniform1fv(NOpenGLProc::TYPE_NOT_LOADED),
  369. glProgramUniform1i(NULL), statusProgramUniform1i(NOpenGLProc::TYPE_NOT_LOADED),
  370. glProgramUniform1iv(NULL), statusProgramUniform1iv(NOpenGLProc::TYPE_NOT_LOADED),
  371. glProgramUniform1ui(NULL), statusProgramUniform1ui(NOpenGLProc::TYPE_NOT_LOADED),
  372. glProgramUniform1uiv(NULL), statusProgramUniform1uiv(NOpenGLProc::TYPE_NOT_LOADED),
  373. glProgramUniform2d(NULL), statusProgramUniform2d(NOpenGLProc::TYPE_NOT_LOADED),
  374. glProgramUniform2dv(NULL), statusProgramUniform2dv(NOpenGLProc::TYPE_NOT_LOADED),
  375. glProgramUniform2f(NULL), statusProgramUniform2f(NOpenGLProc::TYPE_NOT_LOADED),
  376. glProgramUniform2fv(NULL), statusProgramUniform2fv(NOpenGLProc::TYPE_NOT_LOADED),
  377. glProgramUniform2i(NULL), statusProgramUniform2i(NOpenGLProc::TYPE_NOT_LOADED),
  378. glProgramUniform2iv(NULL), statusProgramUniform2iv(NOpenGLProc::TYPE_NOT_LOADED),
  379. glProgramUniform2ui(NULL), statusProgramUniform2ui(NOpenGLProc::TYPE_NOT_LOADED),
  380. glProgramUniform2uiv(NULL), statusProgramUniform2uiv(NOpenGLProc::TYPE_NOT_LOADED),
  381. glProgramUniform3d(NULL), statusProgramUniform3d(NOpenGLProc::TYPE_NOT_LOADED),
  382. glProgramUniform3dv(NULL), statusProgramUniform3dv(NOpenGLProc::TYPE_NOT_LOADED),
  383. glProgramUniform3f(NULL), statusProgramUniform3f(NOpenGLProc::TYPE_NOT_LOADED),
  384. glProgramUniform3fv(NULL), statusProgramUniform3fv(NOpenGLProc::TYPE_NOT_LOADED),
  385. glProgramUniform3i(NULL), statusProgramUniform3i(NOpenGLProc::TYPE_NOT_LOADED),
  386. glProgramUniform3iv(NULL), statusProgramUniform3iv(NOpenGLProc::TYPE_NOT_LOADED),
  387. glProgramUniform3ui(NULL), statusProgramUniform3ui(NOpenGLProc::TYPE_NOT_LOADED),
  388. glProgramUniform3uiv(NULL), statusProgramUniform3uiv(NOpenGLProc::TYPE_NOT_LOADED),
  389. glProgramUniform4d(NULL), statusProgramUniform4d(NOpenGLProc::TYPE_NOT_LOADED),
  390. glProgramUniform4dv(NULL), statusProgramUniform4dv(NOpenGLProc::TYPE_NOT_LOADED),
  391. glProgramUniform4f(NULL), statusProgramUniform4f(NOpenGLProc::TYPE_NOT_LOADED),
  392. glProgramUniform4fv(NULL), statusProgramUniform4fv(NOpenGLProc::TYPE_NOT_LOADED),
  393. glProgramUniform4i(NULL), statusProgramUniform4i(NOpenGLProc::TYPE_NOT_LOADED),
  394. glProgramUniform4iv(NULL), statusProgramUniform4iv(NOpenGLProc::TYPE_NOT_LOADED),
  395. glProgramUniform4ui(NULL), statusProgramUniform4ui(NOpenGLProc::TYPE_NOT_LOADED),
  396. glProgramUniform4uiv(NULL), statusProgramUniform4uiv(NOpenGLProc::TYPE_NOT_LOADED),
  397. glProgramUniformMatrix2dv(NULL), statusProgramUniformMatrix2dv(NOpenGLProc::TYPE_NOT_LOADED),
  398. glProgramUniformMatrix2fv(NULL), statusProgramUniformMatrix2fv(NOpenGLProc::TYPE_NOT_LOADED),
  399. glProgramUniformMatrix2x3dv(NULL), statusProgramUniformMatrix2x3dv(NOpenGLProc::TYPE_NOT_LOADED),
  400. glProgramUniformMatrix2x3fv(NULL), statusProgramUniformMatrix2x3fv(NOpenGLProc::TYPE_NOT_LOADED),
  401. glProgramUniformMatrix2x4dv(NULL), statusProgramUniformMatrix2x4dv(NOpenGLProc::TYPE_NOT_LOADED),
  402. glProgramUniformMatrix2x4fv(NULL), statusProgramUniformMatrix2x4fv(NOpenGLProc::TYPE_NOT_LOADED),
  403. glProgramUniformMatrix3dv(NULL), statusProgramUniformMatrix3dv(NOpenGLProc::TYPE_NOT_LOADED),
  404. glProgramUniformMatrix3fv(NULL), statusProgramUniformMatrix3fv(NOpenGLProc::TYPE_NOT_LOADED),
  405. glProgramUniformMatrix3x2dv(NULL), statusProgramUniformMatrix3x2dv(NOpenGLProc::TYPE_NOT_LOADED),
  406. glProgramUniformMatrix3x2fv(NULL), statusProgramUniformMatrix3x2fv(NOpenGLProc::TYPE_NOT_LOADED),
  407. glProgramUniformMatrix3x4dv(NULL), statusProgramUniformMatrix3x4dv(NOpenGLProc::TYPE_NOT_LOADED),
  408. glProgramUniformMatrix3x4fv(NULL), statusProgramUniformMatrix3x4fv(NOpenGLProc::TYPE_NOT_LOADED),
  409. glProgramUniformMatrix4dv(NULL), statusProgramUniformMatrix4dv(NOpenGLProc::TYPE_NOT_LOADED),
  410. glProgramUniformMatrix4fv(NULL), statusProgramUniformMatrix4fv(NOpenGLProc::TYPE_NOT_LOADED),
  411. glProgramUniformMatrix4x2dv(NULL), statusProgramUniformMatrix4x2dv(NOpenGLProc::TYPE_NOT_LOADED),
  412. glProgramUniformMatrix4x2fv(NULL), statusProgramUniformMatrix4x2fv(NOpenGLProc::TYPE_NOT_LOADED),
  413. glProgramUniformMatrix4x3dv(NULL), statusProgramUniformMatrix4x3dv(NOpenGLProc::TYPE_NOT_LOADED),
  414. glProgramUniformMatrix4x3fv(NULL), statusProgramUniformMatrix4x3fv(NOpenGLProc::TYPE_NOT_LOADED),
  415. glReleaseShaderCompiler(NULL), statusReleaseShaderCompiler(NOpenGLProc::TYPE_NOT_LOADED),
  416. glScissorArrayv(NULL), statusScissorArrayv(NOpenGLProc::TYPE_NOT_LOADED),
  417. glScissorIndexed(NULL), statusScissorIndexed(NOpenGLProc::TYPE_NOT_LOADED),
  418. glScissorIndexedv(NULL), statusScissorIndexedv(NOpenGLProc::TYPE_NOT_LOADED),
  419. glShaderBinary(NULL), statusShaderBinary(NOpenGLProc::TYPE_NOT_LOADED),
  420. glUseProgramStages(NULL), statusUseProgramStages(NOpenGLProc::TYPE_NOT_LOADED),
  421. glValidateProgramPipeline(NULL), statusValidateProgramPipeline(NOpenGLProc::TYPE_NOT_LOADED),
  422. glVertexAttribL1d(NULL), statusVertexAttribL1d(NOpenGLProc::TYPE_NOT_LOADED),
  423. glVertexAttribL1dv(NULL), statusVertexAttribL1dv(NOpenGLProc::TYPE_NOT_LOADED),
  424. glVertexAttribL2d(NULL), statusVertexAttribL2d(NOpenGLProc::TYPE_NOT_LOADED),
  425. glVertexAttribL2dv(NULL), statusVertexAttribL2dv(NOpenGLProc::TYPE_NOT_LOADED),
  426. glVertexAttribL3d(NULL), statusVertexAttribL3d(NOpenGLProc::TYPE_NOT_LOADED),
  427. glVertexAttribL3dv(NULL), statusVertexAttribL3dv(NOpenGLProc::TYPE_NOT_LOADED),
  428. glVertexAttribL4d(NULL), statusVertexAttribL4d(NOpenGLProc::TYPE_NOT_LOADED),
  429. glVertexAttribL4dv(NULL), statusVertexAttribL4dv(NOpenGLProc::TYPE_NOT_LOADED),
  430. glVertexAttribLPointer(NULL), statusVertexAttribLPointer(NOpenGLProc::TYPE_NOT_LOADED),
  431. glViewportArrayv(NULL), statusViewportArrayv(NOpenGLProc::TYPE_NOT_LOADED),
  432. glViewportIndexedf(NULL), statusViewportIndexedf(NOpenGLProc::TYPE_NOT_LOADED),
  433. glViewportIndexedfv(NULL), statusViewportIndexedfv(NOpenGLProc::TYPE_NOT_LOADED),
  434. // GL_VERSION_4_2
  435. glBindImageTexture(NULL), statusBindImageTexture(NOpenGLProc::TYPE_NOT_LOADED),
  436. glDrawArraysInstancedBaseInstance(NULL), statusDrawArraysInstancedBaseInstance(NOpenGLProc::TYPE_NOT_LOADED),
  437. glDrawElementsInstancedBaseInstance(NULL), statusDrawElementsInstancedBaseInstance(NOpenGLProc::TYPE_NOT_LOADED),
  438. glDrawElementsInstancedBaseVertexBaseInstance(NULL), statusDrawElementsInstancedBaseVertexBaseInstance(NOpenGLProc::TYPE_NOT_LOADED),
  439. glDrawTransformFeedbackInstanced(NULL), statusDrawTransformFeedbackInstanced(NOpenGLProc::TYPE_NOT_LOADED),
  440. glDrawTransformFeedbackStreamInstanced(NULL), statusDrawTransformFeedbackStreamInstanced(NOpenGLProc::TYPE_NOT_LOADED),
  441. glGetActiveAtomicCounterBufferiv(NULL), statusGetActiveAtomicCounterBufferiv(NOpenGLProc::TYPE_NOT_LOADED),
  442. glGetInternalformativ(NULL), statusGetInternalformativ(NOpenGLProc::TYPE_NOT_LOADED),
  443. glMemoryBarrier(NULL), statusMemoryBarrier(NOpenGLProc::TYPE_NOT_LOADED),
  444. glTexStorage1D(NULL), statusTexStorage1D(NOpenGLProc::TYPE_NOT_LOADED),
  445. glTexStorage2D(NULL), statusTexStorage2D(NOpenGLProc::TYPE_NOT_LOADED),
  446. glTexStorage3D(NULL), statusTexStorage3D(NOpenGLProc::TYPE_NOT_LOADED),
  447. // GL_VERSION_4_3
  448. glBindVertexBuffer(NULL), statusBindVertexBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  449. glClearBufferData(NULL), statusClearBufferData(NOpenGLProc::TYPE_NOT_LOADED),
  450. glClearBufferSubData(NULL), statusClearBufferSubData(NOpenGLProc::TYPE_NOT_LOADED),
  451. glCopyImageSubData(NULL), statusCopyImageSubData(NOpenGLProc::TYPE_NOT_LOADED),
  452. glDebugMessageCallback(NULL), statusDebugMessageCallback(NOpenGLProc::TYPE_NOT_LOADED),
  453. glDebugMessageControl(NULL), statusDebugMessageControl(NOpenGLProc::TYPE_NOT_LOADED),
  454. glDebugMessageInsert(NULL), statusDebugMessageInsert(NOpenGLProc::TYPE_NOT_LOADED),
  455. glDispatchCompute(NULL), statusDispatchCompute(NOpenGLProc::TYPE_NOT_LOADED),
  456. glDispatchComputeIndirect(NULL), statusDispatchComputeIndirect(NOpenGLProc::TYPE_NOT_LOADED),
  457. glFramebufferParameteri(NULL), statusFramebufferParameteri(NOpenGLProc::TYPE_NOT_LOADED),
  458. glGetDebugMessageLog(NULL), statusGetDebugMessageLog(NOpenGLProc::TYPE_NOT_LOADED),
  459. glGetFramebufferParameteriv(NULL), statusGetFramebufferParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  460. glGetInternalformati64v(NULL), statusGetInternalformati64v(NOpenGLProc::TYPE_NOT_LOADED),
  461. glGetObjectLabel(NULL), statusGetObjectLabel(NOpenGLProc::TYPE_NOT_LOADED),
  462. glGetObjectPtrLabel(NULL), statusGetObjectPtrLabel(NOpenGLProc::TYPE_NOT_LOADED),
  463. glGetProgramInterfaceiv(NULL), statusGetProgramInterfaceiv(NOpenGLProc::TYPE_NOT_LOADED),
  464. glGetProgramResourceIndex(NULL), statusGetProgramResourceIndex(NOpenGLProc::TYPE_NOT_LOADED),
  465. glGetProgramResourceLocation(NULL), statusGetProgramResourceLocation(NOpenGLProc::TYPE_NOT_LOADED),
  466. glGetProgramResourceLocationIndex(NULL), statusGetProgramResourceLocationIndex(NOpenGLProc::TYPE_NOT_LOADED),
  467. glGetProgramResourceName(NULL), statusGetProgramResourceName(NOpenGLProc::TYPE_NOT_LOADED),
  468. glGetProgramResourceiv(NULL), statusGetProgramResourceiv(NOpenGLProc::TYPE_NOT_LOADED),
  469. glInvalidateBufferData(NULL), statusInvalidateBufferData(NOpenGLProc::TYPE_NOT_LOADED),
  470. glInvalidateBufferSubData(NULL), statusInvalidateBufferSubData(NOpenGLProc::TYPE_NOT_LOADED),
  471. glInvalidateFramebuffer(NULL), statusInvalidateFramebuffer(NOpenGLProc::TYPE_NOT_LOADED),
  472. glInvalidateSubFramebuffer(NULL), statusInvalidateSubFramebuffer(NOpenGLProc::TYPE_NOT_LOADED),
  473. glInvalidateTexImage(NULL), statusInvalidateTexImage(NOpenGLProc::TYPE_NOT_LOADED),
  474. glInvalidateTexSubImage(NULL), statusInvalidateTexSubImage(NOpenGLProc::TYPE_NOT_LOADED),
  475. glMultiDrawArraysIndirect(NULL), statusMultiDrawArraysIndirect(NOpenGLProc::TYPE_NOT_LOADED),
  476. glMultiDrawElementsIndirect(NULL), statusMultiDrawElementsIndirect(NOpenGLProc::TYPE_NOT_LOADED),
  477. glObjectLabel(NULL), statusObjectLabel(NOpenGLProc::TYPE_NOT_LOADED),
  478. glObjectPtrLabel(NULL), statusObjectPtrLabel(NOpenGLProc::TYPE_NOT_LOADED),
  479. glPopDebugGroup(NULL), statusPopDebugGroup(NOpenGLProc::TYPE_NOT_LOADED),
  480. glPushDebugGroup(NULL), statusPushDebugGroup(NOpenGLProc::TYPE_NOT_LOADED),
  481. glShaderStorageBlockBinding(NULL), statusShaderStorageBlockBinding(NOpenGLProc::TYPE_NOT_LOADED),
  482. glTexBufferRange(NULL), statusTexBufferRange(NOpenGLProc::TYPE_NOT_LOADED),
  483. glTexStorage2DMultisample(NULL), statusTexStorage2DMultisample(NOpenGLProc::TYPE_NOT_LOADED),
  484. glTexStorage3DMultisample(NULL), statusTexStorage3DMultisample(NOpenGLProc::TYPE_NOT_LOADED),
  485. glTextureView(NULL), statusTextureView(NOpenGLProc::TYPE_NOT_LOADED),
  486. glVertexAttribBinding(NULL), statusVertexAttribBinding(NOpenGLProc::TYPE_NOT_LOADED),
  487. glVertexAttribFormat(NULL), statusVertexAttribFormat(NOpenGLProc::TYPE_NOT_LOADED),
  488. glVertexAttribIFormat(NULL), statusVertexAttribIFormat(NOpenGLProc::TYPE_NOT_LOADED),
  489. glVertexAttribLFormat(NULL), statusVertexAttribLFormat(NOpenGLProc::TYPE_NOT_LOADED),
  490. glVertexBindingDivisor(NULL), statusVertexBindingDivisor(NOpenGLProc::TYPE_NOT_LOADED),
  491. // GL_VERSION_4_4
  492. glBindBuffersBase(NULL), statusBindBuffersBase(NOpenGLProc::TYPE_NOT_LOADED),
  493. glBindBuffersRange(NULL), statusBindBuffersRange(NOpenGLProc::TYPE_NOT_LOADED),
  494. glBindImageTextures(NULL), statusBindImageTextures(NOpenGLProc::TYPE_NOT_LOADED),
  495. glBindSamplers(NULL), statusBindSamplers(NOpenGLProc::TYPE_NOT_LOADED),
  496. glBindTextures(NULL), statusBindTextures(NOpenGLProc::TYPE_NOT_LOADED),
  497. glBindVertexBuffers(NULL), statusBindVertexBuffers(NOpenGLProc::TYPE_NOT_LOADED),
  498. glBufferStorage(NULL), statusBufferStorage(NOpenGLProc::TYPE_NOT_LOADED),
  499. glClearTexImage(NULL), statusClearTexImage(NOpenGLProc::TYPE_NOT_LOADED),
  500. glClearTexSubImage(NULL), statusClearTexSubImage(NOpenGLProc::TYPE_NOT_LOADED),
  501. // GL_VERSION_4_5
  502. glBindTextureUnit(NULL), statusBindTextureUnit(NOpenGLProc::TYPE_NOT_LOADED),
  503. glBlitNamedFramebuffer(NULL), statusBlitNamedFramebuffer(NOpenGLProc::TYPE_NOT_LOADED),
  504. glCheckNamedFramebufferStatus(NULL), statusCheckNamedFramebufferStatus(NOpenGLProc::TYPE_NOT_LOADED),
  505. glClearNamedBufferData(NULL), statusClearNamedBufferData(NOpenGLProc::TYPE_NOT_LOADED),
  506. glClearNamedBufferSubData(NULL), statusClearNamedBufferSubData(NOpenGLProc::TYPE_NOT_LOADED),
  507. glClearNamedFramebufferfi(NULL), statusClearNamedFramebufferfi(NOpenGLProc::TYPE_NOT_LOADED),
  508. glClearNamedFramebufferfv(NULL), statusClearNamedFramebufferfv(NOpenGLProc::TYPE_NOT_LOADED),
  509. glClearNamedFramebufferiv(NULL), statusClearNamedFramebufferiv(NOpenGLProc::TYPE_NOT_LOADED),
  510. glClearNamedFramebufferuiv(NULL), statusClearNamedFramebufferuiv(NOpenGLProc::TYPE_NOT_LOADED),
  511. glClipControl(NULL), statusClipControl(NOpenGLProc::TYPE_NOT_LOADED),
  512. glCompressedTextureSubImage1D(NULL), statusCompressedTextureSubImage1D(NOpenGLProc::TYPE_NOT_LOADED),
  513. glCompressedTextureSubImage2D(NULL), statusCompressedTextureSubImage2D(NOpenGLProc::TYPE_NOT_LOADED),
  514. glCompressedTextureSubImage3D(NULL), statusCompressedTextureSubImage3D(NOpenGLProc::TYPE_NOT_LOADED),
  515. glCopyNamedBufferSubData(NULL), statusCopyNamedBufferSubData(NOpenGLProc::TYPE_NOT_LOADED),
  516. glCopyTextureSubImage1D(NULL), statusCopyTextureSubImage1D(NOpenGLProc::TYPE_NOT_LOADED),
  517. glCopyTextureSubImage2D(NULL), statusCopyTextureSubImage2D(NOpenGLProc::TYPE_NOT_LOADED),
  518. glCopyTextureSubImage3D(NULL), statusCopyTextureSubImage3D(NOpenGLProc::TYPE_NOT_LOADED),
  519. glCreateBuffers(NULL), statusCreateBuffers(NOpenGLProc::TYPE_NOT_LOADED),
  520. glCreateFramebuffers(NULL), statusCreateFramebuffers(NOpenGLProc::TYPE_NOT_LOADED),
  521. glCreateProgramPipelines(NULL), statusCreateProgramPipelines(NOpenGLProc::TYPE_NOT_LOADED),
  522. glCreateQueries(NULL), statusCreateQueries(NOpenGLProc::TYPE_NOT_LOADED),
  523. glCreateRenderbuffers(NULL), statusCreateRenderbuffers(NOpenGLProc::TYPE_NOT_LOADED),
  524. glCreateSamplers(NULL), statusCreateSamplers(NOpenGLProc::TYPE_NOT_LOADED),
  525. glCreateTextures(NULL), statusCreateTextures(NOpenGLProc::TYPE_NOT_LOADED),
  526. glCreateTransformFeedbacks(NULL), statusCreateTransformFeedbacks(NOpenGLProc::TYPE_NOT_LOADED),
  527. glCreateVertexArrays(NULL), statusCreateVertexArrays(NOpenGLProc::TYPE_NOT_LOADED),
  528. glDisableVertexArrayAttrib(NULL), statusDisableVertexArrayAttrib(NOpenGLProc::TYPE_NOT_LOADED),
  529. glEnableVertexArrayAttrib(NULL), statusEnableVertexArrayAttrib(NOpenGLProc::TYPE_NOT_LOADED),
  530. glFlushMappedNamedBufferRange(NULL), statusFlushMappedNamedBufferRange(NOpenGLProc::TYPE_NOT_LOADED),
  531. glGenerateTextureMipmap(NULL), statusGenerateTextureMipmap(NOpenGLProc::TYPE_NOT_LOADED),
  532. glGetCompressedTextureImage(NULL), statusGetCompressedTextureImage(NOpenGLProc::TYPE_NOT_LOADED),
  533. glGetCompressedTextureSubImage(NULL), statusGetCompressedTextureSubImage(NOpenGLProc::TYPE_NOT_LOADED),
  534. glGetGraphicsResetStatus(NULL), statusGetGraphicsResetStatus(NOpenGLProc::TYPE_NOT_LOADED),
  535. glGetNamedBufferParameteri64v(NULL), statusGetNamedBufferParameteri64v(NOpenGLProc::TYPE_NOT_LOADED),
  536. glGetNamedBufferParameteriv(NULL), statusGetNamedBufferParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  537. glGetNamedBufferPointerv(NULL), statusGetNamedBufferPointerv(NOpenGLProc::TYPE_NOT_LOADED),
  538. glGetNamedBufferSubData(NULL), statusGetNamedBufferSubData(NOpenGLProc::TYPE_NOT_LOADED),
  539. glGetNamedFramebufferAttachmentParameteriv(NULL), statusGetNamedFramebufferAttachmentParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  540. glGetNamedFramebufferParameteriv(NULL), statusGetNamedFramebufferParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  541. glGetNamedRenderbufferParameteriv(NULL), statusGetNamedRenderbufferParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  542. glGetQueryBufferObjecti64v(NULL), statusGetQueryBufferObjecti64v(NOpenGLProc::TYPE_NOT_LOADED),
  543. glGetQueryBufferObjectiv(NULL), statusGetQueryBufferObjectiv(NOpenGLProc::TYPE_NOT_LOADED),
  544. glGetQueryBufferObjectui64v(NULL), statusGetQueryBufferObjectui64v(NOpenGLProc::TYPE_NOT_LOADED),
  545. glGetQueryBufferObjectuiv(NULL), statusGetQueryBufferObjectuiv(NOpenGLProc::TYPE_NOT_LOADED),
  546. glGetTextureImage(NULL), statusGetTextureImage(NOpenGLProc::TYPE_NOT_LOADED),
  547. glGetTextureLevelParameterfv(NULL), statusGetTextureLevelParameterfv(NOpenGLProc::TYPE_NOT_LOADED),
  548. glGetTextureLevelParameteriv(NULL), statusGetTextureLevelParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  549. glGetTextureParameterIiv(NULL), statusGetTextureParameterIiv(NOpenGLProc::TYPE_NOT_LOADED),
  550. glGetTextureParameterIuiv(NULL), statusGetTextureParameterIuiv(NOpenGLProc::TYPE_NOT_LOADED),
  551. glGetTextureParameterfv(NULL), statusGetTextureParameterfv(NOpenGLProc::TYPE_NOT_LOADED),
  552. glGetTextureParameteriv(NULL), statusGetTextureParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  553. glGetTextureSubImage(NULL), statusGetTextureSubImage(NOpenGLProc::TYPE_NOT_LOADED),
  554. glGetTransformFeedbacki64_v(NULL), statusGetTransformFeedbacki64_v(NOpenGLProc::TYPE_NOT_LOADED),
  555. glGetTransformFeedbacki_v(NULL), statusGetTransformFeedbacki_v(NOpenGLProc::TYPE_NOT_LOADED),
  556. glGetTransformFeedbackiv(NULL), statusGetTransformFeedbackiv(NOpenGLProc::TYPE_NOT_LOADED),
  557. glGetVertexArrayIndexed64iv(NULL), statusGetVertexArrayIndexed64iv(NOpenGLProc::TYPE_NOT_LOADED),
  558. glGetVertexArrayIndexediv(NULL), statusGetVertexArrayIndexediv(NOpenGLProc::TYPE_NOT_LOADED),
  559. glGetVertexArrayiv(NULL), statusGetVertexArrayiv(NOpenGLProc::TYPE_NOT_LOADED),
  560. glGetnCompressedTexImage(NULL), statusGetnCompressedTexImage(NOpenGLProc::TYPE_NOT_LOADED),
  561. glGetnTexImage(NULL), statusGetnTexImage(NOpenGLProc::TYPE_NOT_LOADED),
  562. glGetnUniformdv(NULL), statusGetnUniformdv(NOpenGLProc::TYPE_NOT_LOADED),
  563. glGetnUniformfv(NULL), statusGetnUniformfv(NOpenGLProc::TYPE_NOT_LOADED),
  564. glGetnUniformiv(NULL), statusGetnUniformiv(NOpenGLProc::TYPE_NOT_LOADED),
  565. glGetnUniformuiv(NULL), statusGetnUniformuiv(NOpenGLProc::TYPE_NOT_LOADED),
  566. glInvalidateNamedFramebufferData(NULL), statusInvalidateNamedFramebufferData(NOpenGLProc::TYPE_NOT_LOADED),
  567. glInvalidateNamedFramebufferSubData(NULL), statusInvalidateNamedFramebufferSubData(NOpenGLProc::TYPE_NOT_LOADED),
  568. glMapNamedBuffer(NULL), statusMapNamedBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  569. glMapNamedBufferRange(NULL), statusMapNamedBufferRange(NOpenGLProc::TYPE_NOT_LOADED),
  570. glMemoryBarrierByRegion(NULL), statusMemoryBarrierByRegion(NOpenGLProc::TYPE_NOT_LOADED),
  571. glNamedBufferData(NULL), statusNamedBufferData(NOpenGLProc::TYPE_NOT_LOADED),
  572. glNamedBufferStorage(NULL), statusNamedBufferStorage(NOpenGLProc::TYPE_NOT_LOADED),
  573. glNamedBufferSubData(NULL), statusNamedBufferSubData(NOpenGLProc::TYPE_NOT_LOADED),
  574. glNamedFramebufferDrawBuffer(NULL), statusNamedFramebufferDrawBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  575. glNamedFramebufferDrawBuffers(NULL), statusNamedFramebufferDrawBuffers(NOpenGLProc::TYPE_NOT_LOADED),
  576. glNamedFramebufferParameteri(NULL), statusNamedFramebufferParameteri(NOpenGLProc::TYPE_NOT_LOADED),
  577. glNamedFramebufferReadBuffer(NULL), statusNamedFramebufferReadBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  578. glNamedFramebufferRenderbuffer(NULL), statusNamedFramebufferRenderbuffer(NOpenGLProc::TYPE_NOT_LOADED),
  579. glNamedFramebufferTexture(NULL), statusNamedFramebufferTexture(NOpenGLProc::TYPE_NOT_LOADED),
  580. glNamedFramebufferTextureLayer(NULL), statusNamedFramebufferTextureLayer(NOpenGLProc::TYPE_NOT_LOADED),
  581. glNamedRenderbufferStorage(NULL), statusNamedRenderbufferStorage(NOpenGLProc::TYPE_NOT_LOADED),
  582. glNamedRenderbufferStorageMultisample(NULL), statusNamedRenderbufferStorageMultisample(NOpenGLProc::TYPE_NOT_LOADED),
  583. glReadnPixels(NULL), statusReadnPixels(NOpenGLProc::TYPE_NOT_LOADED),
  584. glTextureBarrier(NULL), statusTextureBarrier(NOpenGLProc::TYPE_NOT_LOADED),
  585. glTextureBuffer(NULL), statusTextureBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  586. glTextureBufferRange(NULL), statusTextureBufferRange(NOpenGLProc::TYPE_NOT_LOADED),
  587. glTextureParameterIiv(NULL), statusTextureParameterIiv(NOpenGLProc::TYPE_NOT_LOADED),
  588. glTextureParameterIuiv(NULL), statusTextureParameterIuiv(NOpenGLProc::TYPE_NOT_LOADED),
  589. glTextureParameterf(NULL), statusTextureParameterf(NOpenGLProc::TYPE_NOT_LOADED),
  590. glTextureParameterfv(NULL), statusTextureParameterfv(NOpenGLProc::TYPE_NOT_LOADED),
  591. glTextureParameteri(NULL), statusTextureParameteri(NOpenGLProc::TYPE_NOT_LOADED),
  592. glTextureParameteriv(NULL), statusTextureParameteriv(NOpenGLProc::TYPE_NOT_LOADED),
  593. glTextureStorage1D(NULL), statusTextureStorage1D(NOpenGLProc::TYPE_NOT_LOADED),
  594. glTextureStorage2D(NULL), statusTextureStorage2D(NOpenGLProc::TYPE_NOT_LOADED),
  595. glTextureStorage2DMultisample(NULL), statusTextureStorage2DMultisample(NOpenGLProc::TYPE_NOT_LOADED),
  596. glTextureStorage3D(NULL), statusTextureStorage3D(NOpenGLProc::TYPE_NOT_LOADED),
  597. glTextureStorage3DMultisample(NULL), statusTextureStorage3DMultisample(NOpenGLProc::TYPE_NOT_LOADED),
  598. glTextureSubImage1D(NULL), statusTextureSubImage1D(NOpenGLProc::TYPE_NOT_LOADED),
  599. glTextureSubImage2D(NULL), statusTextureSubImage2D(NOpenGLProc::TYPE_NOT_LOADED),
  600. glTextureSubImage3D(NULL), statusTextureSubImage3D(NOpenGLProc::TYPE_NOT_LOADED),
  601. glTransformFeedbackBufferBase(NULL), statusTransformFeedbackBufferBase(NOpenGLProc::TYPE_NOT_LOADED),
  602. glTransformFeedbackBufferRange(NULL), statusTransformFeedbackBufferRange(NOpenGLProc::TYPE_NOT_LOADED),
  603. glUnmapNamedBuffer(NULL), statusUnmapNamedBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  604. glVertexArrayAttribBinding(NULL), statusVertexArrayAttribBinding(NOpenGLProc::TYPE_NOT_LOADED),
  605. glVertexArrayAttribFormat(NULL), statusVertexArrayAttribFormat(NOpenGLProc::TYPE_NOT_LOADED),
  606. glVertexArrayAttribIFormat(NULL), statusVertexArrayAttribIFormat(NOpenGLProc::TYPE_NOT_LOADED),
  607. glVertexArrayAttribLFormat(NULL), statusVertexArrayAttribLFormat(NOpenGLProc::TYPE_NOT_LOADED),
  608. glVertexArrayBindingDivisor(NULL), statusVertexArrayBindingDivisor(NOpenGLProc::TYPE_NOT_LOADED),
  609. glVertexArrayElementBuffer(NULL), statusVertexArrayElementBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  610. glVertexArrayVertexBuffer(NULL), statusVertexArrayVertexBuffer(NOpenGLProc::TYPE_NOT_LOADED),
  611. glVertexArrayVertexBuffers(NULL), statusVertexArrayVertexBuffers(NOpenGLProc::TYPE_NOT_LOADED)
  612. {
  613. }
  614. //------------------------------------------------------------------------------
  615. COpenGL::~COpenGL()
  616. {
  617. }
  618. //------------------------------------------------------------------------------
  619. void COpenGL::initializeGLFunctions(NEngine::EGPUPlatform explicitPlatofrm)
  620. {
  621. const NEngine::EGPUPlatform platform = (explicitPlatofrm == NEngine::GPU_PLATFORM_KEEP) ? context->engineGetEngine()->gpuPlatform : explicitPlatofrm;
  622. context->log("Loading OpenGL Functions...");
  623. // GL_VERSION_1_2
  624. if(platform >= NEngine::GPU_PLATFORM_GL0102)
  625. {
  626. LOAD_GL_EXTENSION(glCopyTexSubImage3D, statusCopyTexSubImage3D, NOpenGLProc::TCopyTexSubImage3D, "glCopyTexSubImage3D", "glCopyTexSubImage3DARB", "glCopyTexSubImage3DEXT");
  627. LOAD_GL_EXTENSION(glDrawRangeElements, statusDrawRangeElements, NOpenGLProc::TDrawRangeElements, "glDrawRangeElements", "glDrawRangeElementsARB", "glDrawRangeElementsEXT");
  628. LOAD_GL_EXTENSION(glTexImage3D, statusTexImage3D, NOpenGLProc::TTexImage3D, "glTexImage3D", "glTexImage3DARB", "glTexImage3DEXT");
  629. LOAD_GL_EXTENSION(glTexSubImage3D, statusTexSubImage3D, NOpenGLProc::TTexSubImage3D, "glTexSubImage3D", "glTexSubImage3DARB", "glTexSubImage3DEXT");
  630. }
  631. // GL_VERSION_1_3
  632. if(platform >= NEngine::GPU_PLATFORM_GL0103)
  633. {
  634. LOAD_GL_EXTENSION(glActiveTexture, statusActiveTexture, NOpenGLProc::TActiveTexture, "glActiveTexture", "glActiveTextureARB", "glActiveTextureEXT");
  635. LOAD_GL_EXTENSION(glCompressedTexImage1D, statusCompressedTexImage1D, NOpenGLProc::TCompressedTexImage1D, "glCompressedTexImage1D", "glCompressedTexImage1DARB", "glCompressedTexImage1DEXT");
  636. LOAD_GL_EXTENSION(glCompressedTexImage2D, statusCompressedTexImage2D, NOpenGLProc::TCompressedTexImage2D, "glCompressedTexImage2D", "glCompressedTexImage2DARB", "glCompressedTexImage2DEXT");
  637. LOAD_GL_EXTENSION(glCompressedTexImage3D, statusCompressedTexImage3D, NOpenGLProc::TCompressedTexImage3D, "glCompressedTexImage3D", "glCompressedTexImage3DARB", "glCompressedTexImage3DEXT");
  638. LOAD_GL_EXTENSION(glCompressedTexSubImage1D, statusCompressedTexSubImage1D, NOpenGLProc::TCompressedTexSubImage1D, "glCompressedTexSubImage1D", "glCompressedTexSubImage1DARB", "glCompressedTexSubImage1DEXT");
  639. LOAD_GL_EXTENSION(glCompressedTexSubImage2D, statusCompressedTexSubImage2D, NOpenGLProc::TCompressedTexSubImage2D, "glCompressedTexSubImage2D", "glCompressedTexSubImage2DARB", "glCompressedTexSubImage2DEXT");
  640. LOAD_GL_EXTENSION(glCompressedTexSubImage3D, statusCompressedTexSubImage3D, NOpenGLProc::TCompressedTexSubImage3D, "glCompressedTexSubImage3D", "glCompressedTexSubImage3DARB", "glCompressedTexSubImage3DEXT");
  641. LOAD_GL_EXTENSION(glGetCompressedTexImage, statusGetCompressedTexImage, NOpenGLProc::TGetCompressedTexImage, "glGetCompressedTexImage", "glGetCompressedTexImageARB", "glGetCompressedTexImageEXT");
  642. LOAD_GL_EXTENSION(glSampleCoverage, statusSampleCoverage, NOpenGLProc::TSampleCoverage, "glSampleCoverage", "glSampleCoverageARB", "glSampleCoverageEXT");
  643. }
  644. // GL_VERSION_1_4
  645. if(platform >= NEngine::GPU_PLATFORM_GL0104)
  646. {
  647. LOAD_GL_EXTENSION(glBlendColor, statusBlendColor, NOpenGLProc::TBlendColor, "glBlendColor", "glBlendColorARB", "glBlendColorEXT");
  648. LOAD_GL_EXTENSION(glBlendEquation, statusBlendEquation, NOpenGLProc::TBlendEquation, "glBlendEquation", "glBlendEquationARB", "glBlendEquationEXT");
  649. LOAD_GL_EXTENSION(glBlendFuncSeparate, statusBlendFuncSeparate, NOpenGLProc::TBlendFuncSeparate, "glBlendFuncSeparate", "glBlendFuncSeparateARB", "glBlendFuncSeparateEXT");
  650. LOAD_GL_EXTENSION(glMultiDrawArrays, statusMultiDrawArrays, NOpenGLProc::TMultiDrawArrays, "glMultiDrawArrays", "glMultiDrawArraysARB", "glMultiDrawArraysEXT");
  651. LOAD_GL_EXTENSION(glMultiDrawElements, statusMultiDrawElements, NOpenGLProc::TMultiDrawElements, "glMultiDrawElements", "glMultiDrawElementsARB", "glMultiDrawElementsEXT");
  652. LOAD_GL_EXTENSION(glPointParameterf, statusPointParameterf, NOpenGLProc::TPointParameterf, "glPointParameterf", "glPointParameterfARB", "glPointParameterfEXT");
  653. LOAD_GL_EXTENSION(glPointParameterfv, statusPointParameterfv, NOpenGLProc::TPointParameterfv, "glPointParameterfv", "glPointParameterfvARB", "glPointParameterfvEXT");
  654. LOAD_GL_EXTENSION(glPointParameteri, statusPointParameteri, NOpenGLProc::TPointParameteri, "glPointParameteri", "glPointParameteriARB", "glPointParameteriEXT");
  655. LOAD_GL_EXTENSION(glPointParameteriv, statusPointParameteriv, NOpenGLProc::TPointParameteriv, "glPointParameteriv", "glPointParameterivARB", "glPointParameterivEXT");
  656. }
  657. // GL_VERSION_1_5
  658. if(platform >= NEngine::GPU_PLATFORM_GL0105)
  659. {
  660. LOAD_GL_EXTENSION(glBeginQuery, statusBeginQuery, NOpenGLProc::TBeginQuery, "glBeginQuery", "glBeginQueryARB", "glBeginQueryEXT");
  661. LOAD_GL_EXTENSION(glBindBuffer, statusBindBuffer, NOpenGLProc::TBindBuffer, "glBindBuffer", "glBindBufferARB", "glBindBufferEXT");
  662. LOAD_GL_EXTENSION(glBufferData, statusBufferData, NOpenGLProc::TBufferData, "glBufferData", "glBufferDataARB", "glBufferDataEXT");
  663. LOAD_GL_EXTENSION(glBufferSubData, statusBufferSubData, NOpenGLProc::TBufferSubData, "glBufferSubData", "glBufferSubDataARB", "glBufferSubDataEXT");
  664. LOAD_GL_EXTENSION(glDeleteBuffers, statusDeleteBuffers, NOpenGLProc::TDeleteBuffers, "glDeleteBuffers", "glDeleteBuffersARB", "glDeleteBuffersEXT");
  665. LOAD_GL_EXTENSION(glDeleteQueries, statusDeleteQueries, NOpenGLProc::TDeleteQueries, "glDeleteQueries", "glDeleteQueriesARB", "glDeleteQueriesEXT");
  666. LOAD_GL_EXTENSION(glEndQuery, statusEndQuery, NOpenGLProc::TEndQuery, "glEndQuery", "glEndQueryARB", "glEndQueryEXT");
  667. LOAD_GL_EXTENSION(glGenBuffers, statusGenBuffers, NOpenGLProc::TGenBuffers, "glGenBuffers", "glGenBuffersARB", "glGenBuffersEXT");
  668. LOAD_GL_EXTENSION(glGenQueries, statusGenQueries, NOpenGLProc::TGenQueries, "glGenQueries", "glGenQueriesARB", "glGenQueriesEXT");
  669. LOAD_GL_EXTENSION(glGetBufferParameteriv, statusGetBufferParameteriv, NOpenGLProc::TGetBufferParameteriv, "glGetBufferParameteriv", "glGetBufferParameterivARB", "glGetBufferParameterivEXT");
  670. LOAD_GL_EXTENSION(glGetBufferPointerv, statusGetBufferPointerv, NOpenGLProc::TGetBufferPointerv, "glGetBufferPointerv", "glGetBufferPointervARB", "glGetBufferPointervEXT");
  671. LOAD_GL_EXTENSION(glGetBufferSubData, statusGetBufferSubData, NOpenGLProc::TGetBufferSubData, "glGetBufferSubData", "glGetBufferSubDataARB", "glGetBufferSubDataEXT");
  672. LOAD_GL_EXTENSION(glGetQueryObjectiv, statusGetQueryObjectiv, NOpenGLProc::TGetQueryObjectiv, "glGetQueryObjectiv", "glGetQueryObjectivARB", "glGetQueryObjectivEXT");
  673. LOAD_GL_EXTENSION(glGetQueryObjectuiv, statusGetQueryObjectuiv, NOpenGLProc::TGetQueryObjectuiv, "glGetQueryObjectuiv", "glGetQueryObjectuivARB", "glGetQueryObjectuivEXT");
  674. LOAD_GL_EXTENSION(glGetQueryiv, statusGetQueryiv, NOpenGLProc::TGetQueryiv, "glGetQueryiv", "glGetQueryivARB", "glGetQueryivEXT");
  675. LOAD_GL_EXTENSION(glIsBuffer, statusIsBuffer, NOpenGLProc::TIsBuffer, "glIsBuffer", "glIsBufferARB", "glIsBufferEXT");
  676. LOAD_GL_EXTENSION(glIsQuery, statusIsQuery, NOpenGLProc::TIsQuery, "glIsQuery", "glIsQueryARB", "glIsQueryEXT");
  677. LOAD_GL_EXTENSION(glMapBuffer, statusMapBuffer, NOpenGLProc::TMapBuffer, "glMapBuffer", "glMapBufferARB", "glMapBufferEXT");
  678. LOAD_GL_EXTENSION(glUnmapBuffer, statusUnmapBuffer, NOpenGLProc::TUnmapBuffer, "glUnmapBuffer", "glUnmapBufferARB", "glUnmapBufferEXT");
  679. }
  680. // GL_VERSION_2_0
  681. if(platform >= NEngine::GPU_PLATFORM_GL0200)
  682. {
  683. LOAD_GL_EXTENSION(glAttachShader, statusAttachShader, NOpenGLProc::TAttachShader, "glAttachShader", "glAttachShaderARB", "glAttachShaderEXT");
  684. LOAD_GL_EXTENSION(glBindAttribLocation, statusBindAttribLocation, NOpenGLProc::TBindAttribLocation, "glBindAttribLocation", "glBindAttribLocationARB", "glBindAttribLocationEXT");
  685. LOAD_GL_EXTENSION(glBlendEquationSeparate, statusBlendEquationSeparate, NOpenGLProc::TBlendEquationSeparate, "glBlendEquationSeparate", "glBlendEquationSeparateARB", "glBlendEquationSeparateEXT");
  686. LOAD_GL_EXTENSION(glCompileShader, statusCompileShader, NOpenGLProc::TCompileShader, "glCompileShader", "glCompileShaderARB", "glCompileShaderEXT");
  687. LOAD_GL_EXTENSION(glCreateProgram, statusCreateProgram, NOpenGLProc::TCreateProgram, "glCreateProgram", "glCreateProgramARB", "glCreateProgramEXT");
  688. LOAD_GL_EXTENSION(glCreateShader, statusCreateShader, NOpenGLProc::TCreateShader, "glCreateShader", "glCreateShaderARB", "glCreateShaderEXT");
  689. LOAD_GL_EXTENSION(glDeleteProgram, statusDeleteProgram, NOpenGLProc::TDeleteProgram, "glDeleteProgram", "glDeleteProgramARB", "glDeleteProgramEXT");
  690. LOAD_GL_EXTENSION(glDeleteShader, statusDeleteShader, NOpenGLProc::TDeleteShader, "glDeleteShader", "glDeleteShaderARB", "glDeleteShaderEXT");
  691. LOAD_GL_EXTENSION(glDetachShader, statusDetachShader, NOpenGLProc::TDetachShader, "glDetachShader", "glDetachShaderARB", "glDetachShaderEXT");
  692. LOAD_GL_EXTENSION(glDisableVertexAttribArray, statusDisableVertexAttribArray, NOpenGLProc::TDisableVertexAttribArray, "glDisableVertexAttribArray", "glDisableVertexAttribArrayARB", "glDisableVertexAttribArrayEXT");
  693. LOAD_GL_EXTENSION(glDrawBuffers, statusDrawBuffers, NOpenGLProc::TDrawBuffers, "glDrawBuffers", "glDrawBuffersARB", "glDrawBuffersEXT");
  694. LOAD_GL_EXTENSION(glEnableVertexAttribArray, statusEnableVertexAttribArray, NOpenGLProc::TEnableVertexAttribArray, "glEnableVertexAttribArray", "glEnableVertexAttribArrayARB", "glEnableVertexAttribArrayEXT");
  695. LOAD_GL_EXTENSION(glGetActiveAttrib, statusGetActiveAttrib, NOpenGLProc::TGetActiveAttrib, "glGetActiveAttrib", "glGetActiveAttribARB", "glGetActiveAttribEXT");
  696. LOAD_GL_EXTENSION(glGetActiveUniform, statusGetActiveUniform, NOpenGLProc::TGetActiveUniform, "glGetActiveUniform", "glGetActiveUniformARB", "glGetActiveUniformEXT");
  697. LOAD_GL_EXTENSION(glGetAttachedShaders, statusGetAttachedShaders, NOpenGLProc::TGetAttachedShaders, "glGetAttachedShaders", "glGetAttachedShadersARB", "glGetAttachedShadersEXT");
  698. LOAD_GL_EXTENSION(glGetAttribLocation, statusGetAttribLocation, NOpenGLProc::TGetAttribLocation, "glGetAttribLocation", "glGetAttribLocationARB", "glGetAttribLocationEXT");
  699. LOAD_GL_EXTENSION(glGetProgramInfoLog, statusGetProgramInfoLog, NOpenGLProc::TGetProgramInfoLog, "glGetProgramInfoLog", "glGetProgramInfoLogARB", "glGetProgramInfoLogEXT");
  700. LOAD_GL_EXTENSION(glGetProgramiv, statusGetProgramiv, NOpenGLProc::TGetProgramiv, "glGetProgramiv", "glGetProgramivARB", "glGetProgramivEXT");
  701. LOAD_GL_EXTENSION(glGetShaderInfoLog, statusGetShaderInfoLog, NOpenGLProc::TGetShaderInfoLog, "glGetShaderInfoLog", "glGetShaderInfoLogARB", "glGetShaderInfoLogEXT");
  702. LOAD_GL_EXTENSION(glGetShaderSource, statusGetShaderSource, NOpenGLProc::TGetShaderSource, "glGetShaderSource", "glGetShaderSourceARB", "glGetShaderSourceEXT");
  703. LOAD_GL_EXTENSION(glGetShaderiv, statusGetShaderiv, NOpenGLProc::TGetShaderiv, "glGetShaderiv", "glGetShaderivARB", "glGetShaderivEXT");
  704. LOAD_GL_EXTENSION(glGetUniformLocation, statusGetUniformLocation, NOpenGLProc::TGetUniformLocation, "glGetUniformLocation", "glGetUniformLocationARB", "glGetUniformLocationEXT");
  705. LOAD_GL_EXTENSION(glGetUniformfv, statusGetUniformfv, NOpenGLProc::TGetUniformfv, "glGetUniformfv", "glGetUniformfvARB", "glGetUniformfvEXT");
  706. LOAD_GL_EXTENSION(glGetUniformiv, statusGetUniformiv, NOpenGLProc::TGetUniformiv, "glGetUniformiv", "glGetUniformivARB", "glGetUniformivEXT");
  707. LOAD_GL_EXTENSION(glGetVertexAttribPointerv, statusGetVertexAttribPointerv, NOpenGLProc::TGetVertexAttribPointerv, "glGetVertexAttribPointerv", "glGetVertexAttribPointervARB", "glGetVertexAttribPointervEXT");
  708. LOAD_GL_EXTENSION(glGetVertexAttribdv, statusGetVertexAttribdv, NOpenGLProc::TGetVertexAttribdv, "glGetVertexAttribdv", "glGetVertexAttribdvARB", "glGetVertexAttribdvEXT");
  709. LOAD_GL_EXTENSION(glGetVertexAttribfv, statusGetVertexAttribfv, NOpenGLProc::TGetVertexAttribfv, "glGetVertexAttribfv", "glGetVertexAttribfvARB", "glGetVertexAttribfvEXT");
  710. LOAD_GL_EXTENSION(glGetVertexAttribiv, statusGetVertexAttribiv, NOpenGLProc::TGetVertexAttribiv, "glGetVertexAttribiv", "glGetVertexAttribivARB", "glGetVertexAttribivEXT");
  711. LOAD_GL_EXTENSION(glIsProgram, statusIsProgram, NOpenGLProc::TIsProgram, "glIsProgram", "glIsProgramARB", "glIsProgramEXT");
  712. LOAD_GL_EXTENSION(glIsShader, statusIsShader, NOpenGLProc::TIsShader, "glIsShader", "glIsShaderARB", "glIsShaderEXT");
  713. LOAD_GL_EXTENSION(glLinkProgram, statusLinkProgram, NOpenGLProc::TLinkProgram, "glLinkProgram", "glLinkProgramARB", "glLinkProgramEXT");
  714. LOAD_GL_EXTENSION(glShaderSource, statusShaderSource, NOpenGLProc::TShaderSource, "glShaderSource", "glShaderSourceARB", "glShaderSourceEXT");
  715. LOAD_GL_EXTENSION(glStencilFuncSeparate, statusStencilFuncSeparate, NOpenGLProc::TStencilFuncSeparate, "glStencilFuncSeparate", "glStencilFuncSeparateARB", "glStencilFuncSeparateEXT");
  716. LOAD_GL_EXTENSION(glStencilMaskSeparate, statusStencilMaskSeparate, NOpenGLProc::TStencilMaskSeparate, "glStencilMaskSeparate", "glStencilMaskSeparateARB", "glStencilMaskSeparateEXT");
  717. LOAD_GL_EXTENSION(glStencilOpSeparate, statusStencilOpSeparate, NOpenGLProc::TStencilOpSeparate, "glStencilOpSeparate", "glStencilOpSeparateARB", "glStencilOpSeparateEXT");
  718. LOAD_GL_EXTENSION(glUniform1f, statusUniform1f, NOpenGLProc::TUniform1f, "glUniform1f", "glUniform1fARB", "glUniform1fEXT");
  719. LOAD_GL_EXTENSION(glUniform1fv, statusUniform1fv, NOpenGLProc::TUniform1fv, "glUniform1fv", "glUniform1fvARB", "glUniform1fvEXT");
  720. LOAD_GL_EXTENSION(glUniform1i, statusUniform1i, NOpenGLProc::TUniform1i, "glUniform1i", "glUniform1iARB", "glUniform1iEXT");
  721. LOAD_GL_EXTENSION(glUniform1iv, statusUniform1iv, NOpenGLProc::TUniform1iv, "glUniform1iv", "glUniform1ivARB", "glUniform1ivEXT");
  722. LOAD_GL_EXTENSION(glUniform2f, statusUniform2f, NOpenGLProc::TUniform2f, "glUniform2f", "glUniform2fARB", "glUniform2fEXT");
  723. LOAD_GL_EXTENSION(glUniform2fv, statusUniform2fv, NOpenGLProc::TUniform2fv, "glUniform2fv", "glUniform2fvARB", "glUniform2fvEXT");
  724. LOAD_GL_EXTENSION(glUniform2i, statusUniform2i, NOpenGLProc::TUniform2i, "glUniform2i", "glUniform2iARB", "glUniform2iEXT");
  725. LOAD_GL_EXTENSION(glUniform2iv, statusUniform2iv, NOpenGLProc::TUniform2iv, "glUniform2iv", "glUniform2ivARB", "glUniform2ivEXT");
  726. LOAD_GL_EXTENSION(glUniform3f, statusUniform3f, NOpenGLProc::TUniform3f, "glUniform3f", "glUniform3fARB", "glUniform3fEXT");
  727. LOAD_GL_EXTENSION(glUniform3fv, statusUniform3fv, NOpenGLProc::TUniform3fv, "glUniform3fv", "glUniform3fvARB", "glUniform3fvEXT");
  728. LOAD_GL_EXTENSION(glUniform3i, statusUniform3i, NOpenGLProc::TUniform3i, "glUniform3i", "glUniform3iARB", "glUniform3iEXT");
  729. LOAD_GL_EXTENSION(glUniform3iv, statusUniform3iv, NOpenGLProc::TUniform3iv, "glUniform3iv", "glUniform3ivARB", "glUniform3ivEXT");
  730. LOAD_GL_EXTENSION(glUniform4f, statusUniform4f, NOpenGLProc::TUniform4f, "glUniform4f", "glUniform4fARB", "glUniform4fEXT");
  731. LOAD_GL_EXTENSION(glUniform4fv, statusUniform4fv, NOpenGLProc::TUniform4fv, "glUniform4fv", "glUniform4fvARB", "glUniform4fvEXT");
  732. LOAD_GL_EXTENSION(glUniform4i, statusUniform4i, NOpenGLProc::TUniform4i, "glUniform4i", "glUniform4iARB", "glUniform4iEXT");
  733. LOAD_GL_EXTENSION(glUniform4iv, statusUniform4iv, NOpenGLProc::TUniform4iv, "glUniform4iv", "glUniform4ivARB", "glUniform4ivEXT");
  734. LOAD_GL_EXTENSION(glUniformMatrix2fv, statusUniformMatrix2fv, NOpenGLProc::TUniformMatrix2fv, "glUniformMatrix2fv", "glUniformMatrix2fvARB", "glUniformMatrix2fvEXT");
  735. LOAD_GL_EXTENSION(glUniformMatrix3fv, statusUniformMatrix3fv, NOpenGLProc::TUniformMatrix3fv, "glUniformMatrix3fv", "glUniformMatrix3fvARB", "glUniformMatrix3fvEXT");
  736. LOAD_GL_EXTENSION(glUniformMatrix4fv, statusUniformMatrix4fv, NOpenGLProc::TUniformMatrix4fv, "glUniformMatrix4fv", "glUniformMatrix4fvARB", "glUniformMatrix4fvEXT");
  737. LOAD_GL_EXTENSION(glUseProgram, statusUseProgram, NOpenGLProc::TUseProgram, "glUseProgram", "glUseProgramARB", "glUseProgramEXT");
  738. LOAD_GL_EXTENSION(glValidateProgram, statusValidateProgram, NOpenGLProc::TValidateProgram, "glValidateProgram", "glValidateProgramARB", "glValidateProgramEXT");
  739. LOAD_GL_EXTENSION(glVertexAttrib1d, statusVertexAttrib1d, NOpenGLProc::TVertexAttrib1d, "glVertexAttrib1d", "glVertexAttrib1dARB", "glVertexAttrib1dEXT");
  740. LOAD_GL_EXTENSION(glVertexAttrib1dv, statusVertexAttrib1dv, NOpenGLProc::TVertexAttrib1dv, "glVertexAttrib1dv", "glVertexAttrib1dvARB", "glVertexAttrib1dvEXT");
  741. LOAD_GL_EXTENSION(glVertexAttrib1f, statusVertexAttrib1f, NOpenGLProc::TVertexAttrib1f, "glVertexAttrib1f", "glVertexAttrib1fARB", "glVertexAttrib1fEXT");
  742. LOAD_GL_EXTENSION(glVertexAttrib1fv, statusVertexAttrib1fv, NOpenGLProc::TVertexAttrib1fv, "glVertexAttrib1fv", "glVertexAttrib1fvARB", "glVertexAttrib1fvEXT");
  743. LOAD_GL_EXTENSION(glVertexAttrib1s, statusVertexAttrib1s, NOpenGLProc::TVertexAttrib1s, "glVertexAttrib1s", "glVertexAttrib1sARB", "glVertexAttrib1sEXT");
  744. LOAD_GL_EXTENSION(glVertexAttrib1sv, statusVertexAttrib1sv, NOpenGLProc::TVertexAttrib1sv, "glVertexAttrib1sv", "glVertexAttrib1svARB", "glVertexAttrib1svEXT");
  745. LOAD_GL_EXTENSION(glVertexAttrib2d, statusVertexAttrib2d, NOpenGLProc::TVertexAttrib2d, "glVertexAttrib2d", "glVertexAttrib2dARB", "glVertexAttrib2dEXT");
  746. LOAD_GL_EXTENSION(glVertexAttrib2dv, statusVertexAttrib2dv, NOpenGLProc::TVertexAttrib2dv, "glVertexAttrib2dv", "glVertexAttrib2dvARB", "glVertexAttrib2dvEXT");
  747. LOAD_GL_EXTENSION(glVertexAttrib2f, statusVertexAttrib2f, NOpenGLProc::TVertexAttrib2f, "glVertexAttrib2f", "glVertexAttrib2fARB", "glVertexAttrib2fEXT");
  748. LOAD_GL_EXTENSION(glVertexAttrib2fv, statusVertexAttrib2fv, NOpenGLProc::TVertexAttrib2fv, "glVertexAttrib2fv", "glVertexAttrib2fvARB", "glVertexAttrib2fvEXT");
  749. LOAD_GL_EXTENSION(glVertexAttrib2s, statusVertexAttrib2s, NOpenGLProc::TVertexAttrib2s, "glVertexAttrib2s", "glVertexAttrib2sARB", "glVertexAttrib2sEXT");
  750. LOAD_GL_EXTENSION(glVertexAttrib2sv, statusVertexAttrib2sv, NOpenGLProc::TVertexAttrib2sv, "glVertexAttrib2sv", "glVertexAttrib2svARB", "glVertexAttrib2svEXT");
  751. LOAD_GL_EXTENSION(glVertexAttrib3d, statusVertexAttrib3d, NOpenGLProc::TVertexAttrib3d, "glVertexAttrib3d", "glVertexAttrib3dARB", "glVertexAttrib3dEXT");
  752. LOAD_GL_EXTENSION(glVertexAttrib3dv, statusVertexAttrib3dv, NOpenGLProc::TVertexAttrib3dv, "glVertexAttrib3dv", "glVertexAttrib3dvARB", "glVertexAttrib3dvEXT");
  753. LOAD_GL_EXTENSION(glVertexAttrib3f, statusVertexAttrib3f, NOpenGLProc::TVertexAttrib3f, "glVertexAttrib3f", "glVertexAttrib3fARB", "glVertexAttrib3fEXT");
  754. LOAD_GL_EXTENSION(glVertexAttrib3fv, statusVertexAttrib3fv, NOpenGLProc::TVertexAttrib3fv, "glVertexAttrib3fv", "glVertexAttrib3fvARB", "glVertexAttrib3fvEXT");
  755. LOAD_GL_EXTENSION(glVertexAttrib3s, statusVertexAttrib3s, NOpenGLProc::TVertexAttrib3s, "glVertexAttrib3s", "glVertexAttrib3sARB", "glVertexAttrib3sEXT");
  756. LOAD_GL_EXTENSION(glVertexAttrib3sv, statusVertexAttrib3sv, NOpenGLProc::TVertexAttrib3sv, "glVertexAttrib3sv", "glVertexAttrib3svARB", "glVertexAttrib3svEXT");
  757. LOAD_GL_EXTENSION(glVertexAttrib4Nbv, statusVertexAttrib4Nbv, NOpenGLProc::TVertexAttrib4Nbv, "glVertexAttrib4Nbv", "glVertexAttrib4NbvARB", "glVertexAttrib4NbvEXT");
  758. LOAD_GL_EXTENSION(glVertexAttrib4Niv, statusVertexAttrib4Niv, NOpenGLProc::TVertexAttrib4Niv, "glVertexAttrib4Niv", "glVertexAttrib4NivARB", "glVertexAttrib4NivEXT");
  759. LOAD_GL_EXTENSION(glVertexAttrib4Nsv, statusVertexAttrib4Nsv, NOpenGLProc::TVertexAttrib4Nsv, "glVertexAttrib4Nsv", "glVertexAttrib4NsvARB", "glVertexAttrib4NsvEXT");
  760. LOAD_GL_EXTENSION(glVertexAttrib4Nub, statusVertexAttrib4Nub, NOpenGLProc::TVertexAttrib4Nub, "glVertexAttrib4Nub", "glVertexAttrib4NubARB", "glVertexAttrib4NubEXT");
  761. LOAD_GL_EXTENSION(glVertexAttrib4Nubv, statusVertexAttrib4Nubv, NOpenGLProc::TVertexAttrib4Nubv, "glVertexAttrib4Nubv", "glVertexAttrib4NubvARB", "glVertexAttrib4NubvEXT");
  762. LOAD_GL_EXTENSION(glVertexAttrib4Nuiv, statusVertexAttrib4Nuiv, NOpenGLProc::TVertexAttrib4Nuiv, "glVertexAttrib4Nuiv", "glVertexAttrib4NuivARB", "glVertexAttrib4NuivEXT");
  763. LOAD_GL_EXTENSION(glVertexAttrib4Nusv, statusVertexAttrib4Nusv, NOpenGLProc::TVertexAttrib4Nusv, "glVertexAttrib4Nusv", "glVertexAttrib4NusvARB", "glVertexAttrib4NusvEXT");
  764. LOAD_GL_EXTENSION(glVertexAttrib4bv, statusVertexAttrib4bv, NOpenGLProc::TVertexAttrib4bv, "glVertexAttrib4bv", "glVertexAttrib4bvARB", "glVertexAttrib4bvEXT");
  765. LOAD_GL_EXTENSION(glVertexAttrib4d, statusVertexAttrib4d, NOpenGLProc::TVertexAttrib4d, "glVertexAttrib4d", "glVertexAttrib4dARB", "glVertexAttrib4dEXT");
  766. LOAD_GL_EXTENSION(glVertexAttrib4dv, statusVertexAttrib4dv, NOpenGLProc::TVertexAttrib4dv, "glVertexAttrib4dv", "glVertexAttrib4dvARB", "glVertexAttrib4dvEXT");
  767. LOAD_GL_EXTENSION(glVertexAttrib4f, statusVertexAttrib4f, NOpenGLProc::TVertexAttrib4f, "glVertexAttrib4f", "glVertexAttrib4fARB", "glVertexAttrib4fEXT");
  768. LOAD_GL_EXTENSION(glVertexAttrib4fv, statusVertexAttrib4fv, NOpenGLProc::TVertexAttrib4fv, "glVertexAttrib4fv", "glVertexAttrib4fvARB", "glVertexAttrib4fvEXT");
  769. LOAD_GL_EXTENSION(glVertexAttrib4iv, statusVertexAttrib4iv, NOpenGLProc::TVertexAttrib4iv, "glVertexAttrib4iv", "glVertexAttrib4ivARB", "glVertexAttrib4ivEXT");
  770. LOAD_GL_EXTENSION(glVertexAttrib4s, statusVertexAttrib4s, NOpenGLProc::TVertexAttrib4s, "glVertexAttrib4s", "glVertexAttrib4sARB", "glVertexAttrib4sEXT");
  771. LOAD_GL_EXTENSION(glVertexAttrib4sv, statusVertexAttrib4sv, NOpenGLProc::TVertexAttrib4sv, "glVertexAttrib4sv", "glVertexAttrib4svARB", "glVertexAttrib4svEXT");
  772. LOAD_GL_EXTENSION(glVertexAttrib4ubv, statusVertexAttrib4ubv, NOpenGLProc::TVertexAttrib4ubv, "glVertexAttrib4ubv", "glVertexAttrib4ubvARB", "glVertexAttrib4ubvEXT");
  773. LOAD_GL_EXTENSION(glVertexAttrib4uiv, statusVertexAttrib4uiv, NOpenGLProc::TVertexAttrib4uiv, "glVertexAttrib4uiv", "glVertexAttrib4uivARB", "glVertexAttrib4uivEXT");
  774. LOAD_GL_EXTENSION(glVertexAttrib4usv, statusVertexAttrib4usv, NOpenGLProc::TVertexAttrib4usv, "glVertexAttrib4usv", "glVertexAttrib4usvARB", "glVertexAttrib4usvEXT");
  775. LOAD_GL_EXTENSION(glVertexAttribPointer, statusVertexAttribPointer, NOpenGLProc::TVertexAttribPointer, "glVertexAttribPointer", "glVertexAttribPointerARB", "glVertexAttribPointerEXT");
  776. }
  777. // GL_VERSION_2_1
  778. if(platform >= NEngine::GPU_PLATFORM_GL0201)
  779. {
  780. LOAD_GL_EXTENSION(glUniformMatrix2x3fv, statusUniformMatrix2x3fv, NOpenGLProc::TUniformMatrix2x3fv, "glUniformMatrix2x3fv", "glUniformMatrix2x3fvARB", "glUniformMatrix2x3fvEXT");
  781. LOAD_GL_EXTENSION(glUniformMatrix2x4fv, statusUniformMatrix2x4fv, NOpenGLProc::TUniformMatrix2x4fv, "glUniformMatrix2x4fv", "glUniformMatrix2x4fvARB", "glUniformMatrix2x4fvEXT");
  782. LOAD_GL_EXTENSION(glUniformMatrix3x2fv, statusUniformMatrix3x2fv, NOpenGLProc::TUniformMatrix3x2fv, "glUniformMatrix3x2fv", "glUniformMatrix3x2fvARB", "glUniformMatrix3x2fvEXT");
  783. LOAD_GL_EXTENSION(glUniformMatrix3x4fv, statusUniformMatrix3x4fv, NOpenGLProc::TUniformMatrix3x4fv, "glUniformMatrix3x4fv", "glUniformMatrix3x4fvARB", "glUniformMatrix3x4fvEXT");
  784. LOAD_GL_EXTENSION(glUniformMatrix4x2fv, statusUniformMatrix4x2fv, NOpenGLProc::TUniformMatrix4x2fv, "glUniformMatrix4x2fv", "glUniformMatrix4x2fvARB", "glUniformMatrix4x2fvEXT");
  785. LOAD_GL_EXTENSION(glUniformMatrix4x3fv, statusUniformMatrix4x3fv, NOpenGLProc::TUniformMatrix4x3fv, "glUniformMatrix4x3fv", "glUniformMatrix4x3fvARB", "glUniformMatrix4x3fvEXT");
  786. }
  787. // GL_VERSION_3_0
  788. if(platform >= NEngine::GPU_PLATFORM_GL0300)
  789. {
  790. LOAD_GL_EXTENSION(glBeginConditionalRender, statusBeginConditionalRender, NOpenGLProc::TBeginConditionalRender, "glBeginConditionalRender", "glBeginConditionalRenderARB", "glBeginConditionalRenderEXT");
  791. LOAD_GL_EXTENSION(glBeginTransformFeedback, statusBeginTransformFeedback, NOpenGLProc::TBeginTransformFeedback, "glBeginTransformFeedback", "glBeginTransformFeedbackARB", "glBeginTransformFeedbackEXT");
  792. LOAD_GL_EXTENSION(glBindBufferBase, statusBindBufferBase, NOpenGLProc::TBindBufferBase, "glBindBufferBase", "glBindBufferBaseARB", "glBindBufferBaseEXT");
  793. LOAD_GL_EXTENSION(glBindBufferRange, statusBindBufferRange, NOpenGLProc::TBindBufferRange, "glBindBufferRange", "glBindBufferRangeARB", "glBindBufferRangeEXT");
  794. LOAD_GL_EXTENSION(glBindFragDataLocation, statusBindFragDataLocation, NOpenGLProc::TBindFragDataLocation, "glBindFragDataLocation", "glBindFragDataLocationARB", "glBindFragDataLocationEXT");
  795. LOAD_GL_EXTENSION(glBindFramebuffer, statusBindFramebuffer, NOpenGLProc::TBindFramebuffer, "glBindFramebuffer", "glBindFramebufferARB", "glBindFramebufferEXT");
  796. LOAD_GL_EXTENSION(glBindRenderbuffer, statusBindRenderbuffer, NOpenGLProc::TBindRenderbuffer, "glBindRenderbuffer", "glBindRenderbufferARB", "glBindRenderbufferEXT");
  797. LOAD_GL_EXTENSION(glBindVertexArray, statusBindVertexArray, NOpenGLProc::TBindVertexArray, "glBindVertexArray", "glBindVertexArrayARB", "glBindVertexArrayEXT");
  798. LOAD_GL_EXTENSION(glBlitFramebuffer, statusBlitFramebuffer, NOpenGLProc::TBlitFramebuffer, "glBlitFramebuffer", "glBlitFramebufferARB", "glBlitFramebufferEXT");
  799. LOAD_GL_EXTENSION(glCheckFramebufferStatus, statusCheckFramebufferStatus, NOpenGLProc::TCheckFramebufferStatus, "glCheckFramebufferStatus", "glCheckFramebufferStatusARB", "glCheckFramebufferStatusEXT");
  800. LOAD_GL_EXTENSION(glClampColor, statusClampColor, NOpenGLProc::TClampColor, "glClampColor", "glClampColorARB", "glClampColorEXT");
  801. LOAD_GL_EXTENSION(glClearBufferfi, statusClearBufferfi, NOpenGLProc::TClearBufferfi, "glClearBufferfi", "glClearBufferfiARB", "glClearBufferfiEXT");
  802. LOAD_GL_EXTENSION(glClearBufferfv, statusClearBufferfv, NOpenGLProc::TClearBufferfv, "glClearBufferfv", "glClearBufferfvARB", "glClearBufferfvEXT");
  803. LOAD_GL_EXTENSION(glClearBufferiv, statusClearBufferiv, NOpenGLProc::TClearBufferiv, "glClearBufferiv", "glClearBufferivARB", "glClearBufferivEXT");
  804. LOAD_GL_EXTENSION(glClearBufferuiv, statusClearBufferuiv, NOpenGLProc::TClearBufferuiv, "glClearBufferuiv", "glClearBufferuivARB", "glClearBufferuivEXT");
  805. LOAD_GL_EXTENSION(glColorMaski, statusColorMaski, NOpenGLProc::TColorMaski, "glColorMaski", "glColorMaskiARB", "glColorMaskiEXT");
  806. LOAD_GL_EXTENSION(glDeleteFramebuffers, statusDeleteFramebuffers, NOpenGLProc::TDeleteFramebuffers, "glDeleteFramebuffers", "glDeleteFramebuffersARB", "glDeleteFramebuffersEXT");
  807. LOAD_GL_EXTENSION(glDeleteRenderbuffers, statusDeleteRenderbuffers, NOpenGLProc::TDeleteRenderbuffers, "glDeleteRenderbuffers", "glDeleteRenderbuffersARB", "glDeleteRenderbuffersEXT");
  808. LOAD_GL_EXTENSION(glDeleteVertexArrays, statusDeleteVertexArrays, NOpenGLProc::TDeleteVertexArrays, "glDeleteVertexArrays", "glDeleteVertexArraysARB", "glDeleteVertexArraysEXT");
  809. LOAD_GL_EXTENSION(glDisablei, statusDisablei, NOpenGLProc::TDisablei, "glDisablei", "glDisableiARB", "glDisableiEXT");
  810. LOAD_GL_EXTENSION(glEnablei, statusEnablei, NOpenGLProc::TEnablei, "glEnablei", "glEnableiARB", "glEnableiEXT");
  811. LOAD_GL_EXTENSION(glEndConditionalRender, statusEndConditionalRender, NOpenGLProc::TEndConditionalRender, "glEndConditionalRender", "glEndConditionalRenderARB", "glEndConditionalRenderEXT");
  812. LOAD_GL_EXTENSION(glEndTransformFeedback, statusEndTransformFeedback, NOpenGLProc::TEndTransformFeedback, "glEndTransformFeedback", "glEndTransformFeedbackARB", "glEndTransformFeedbackEXT");
  813. LOAD_GL_EXTENSION(glFlushMappedBufferRange, statusFlushMappedBufferRange, NOpenGLProc::TFlushMappedBufferRange, "glFlushMappedBufferRange", "glFlushMappedBufferRangeARB", "glFlushMappedBufferRangeEXT");
  814. LOAD_GL_EXTENSION(glFramebufferRenderbuffer, statusFramebufferRenderbuffer, NOpenGLProc::TFramebufferRenderbuffer, "glFramebufferRenderbuffer", "glFramebufferRenderbufferARB", "glFramebufferRenderbufferEXT");
  815. LOAD_GL_EXTENSION(glFramebufferTexture1D, statusFramebufferTexture1D, NOpenGLProc::TFramebufferTexture1D, "glFramebufferTexture1D", "glFramebufferTexture1DARB", "glFramebufferTexture1DEXT");
  816. LOAD_GL_EXTENSION(glFramebufferTexture2D, statusFramebufferTexture2D, NOpenGLProc::TFramebufferTexture2D, "glFramebufferTexture2D", "glFramebufferTexture2DARB", "glFramebufferTexture2DEXT");
  817. LOAD_GL_EXTENSION(glFramebufferTexture3D, statusFramebufferTexture3D, NOpenGLProc::TFramebufferTexture3D, "glFramebufferTexture3D", "glFramebufferTexture3DARB", "glFramebufferTexture3DEXT");
  818. LOAD_GL_EXTENSION(glFramebufferTextureLayer, statusFramebufferTextureLayer, NOpenGLProc::TFramebufferTextureLayer, "glFramebufferTextureLayer", "glFramebufferTextureLayerARB", "glFramebufferTextureLayerEXT");
  819. LOAD_GL_EXTENSION(glGenFramebuffers, statusGenFramebuffers, NOpenGLProc::TGenFramebuffers, "glGenFramebuffers", "glGenFramebuffersARB", "glGenFramebuffersEXT");
  820. LOAD_GL_EXTENSION(glGenRenderbuffers, statusGenRenderbuffers, NOpenGLProc::TGenRenderbuffers, "glGenRenderbuffers", "glGenRenderbuffersARB", "glGenRenderbuffersEXT");
  821. LOAD_GL_EXTENSION(glGenVertexArrays, statusGenVertexArrays, NOpenGLProc::TGenVertexArrays, "glGenVertexArrays", "glGenVertexArraysARB", "glGenVertexArraysEXT");
  822. LOAD_GL_EXTENSION(glGenerateMipmap, statusGenerateMipmap, NOpenGLProc::TGenerateMipmap, "glGenerateMipmap", "glGenerateMipmapARB", "glGenerateMipmapEXT");
  823. LOAD_GL_EXTENSION(glGetBooleani_v, statusGetBooleani_v, NOpenGLProc::TGetBooleani_v, "glGetBooleani_v", "glGetBooleani_vARB", "glGetBooleani_vEXT");
  824. LOAD_GL_EXTENSION(glGetFragDataLocation, statusGetFragDataLocation, NOpenGLProc::TGetFragDataLocation, "glGetFragDataLocation", "glGetFragDataLocationARB", "glGetFragDataLocationEXT");
  825. LOAD_GL_EXTENSION(glGetFramebufferAttachmentParameteriv, statusGetFramebufferAttachmentParameteriv, NOpenGLProc::TGetFramebufferAttachmentParameteriv, "glGetFramebufferAttachmentParameteriv", "glGetFramebufferAttachmentParameterivARB", "glGetFramebufferAttachmentParameterivEXT");
  826. LOAD_GL_EXTENSION(glGetIntegeri_v, statusGetIntegeri_v, NOpenGLProc::TGetIntegeri_v, "glGetIntegeri_v", "glGetIntegeri_vARB", "glGetIntegeri_vEXT");
  827. LOAD_GL_EXTENSION(glGetRenderbufferParameteriv, statusGetRenderbufferParameteriv, NOpenGLProc::TGetRenderbufferParameteriv, "glGetRenderbufferParameteriv", "glGetRenderbufferParameterivARB", "glGetRenderbufferParameterivEXT");
  828. LOAD_GL_EXTENSION(glGetStringi, statusGetStringi, NOpenGLProc::TGetStringi, "glGetStringi", "glGetStringiARB", "glGetStringiEXT");
  829. LOAD_GL_EXTENSION(glGetTexParameterIiv, statusGetTexParameterIiv, NOpenGLProc::TGetTexParameterIiv, "glGetTexParameterIiv", "glGetTexParameterIivARB", "glGetTexParameterIivEXT");
  830. LOAD_GL_EXTENSION(glGetTexParameterIuiv, statusGetTexParameterIuiv, NOpenGLProc::TGetTexParameterIuiv, "glGetTexParameterIuiv", "glGetTexParameterIuivARB", "glGetTexParameterIuivEXT");
  831. LOAD_GL_EXTENSION(glGetTransformFeedbackVarying, statusGetTransformFeedbackVarying, NOpenGLProc::TGetTransformFeedbackVarying, "glGetTransformFeedbackVarying", "glGetTransformFeedbackVaryingARB", "glGetTransformFeedbackVaryingEXT");
  832. LOAD_GL_EXTENSION(glGetUniformuiv, statusGetUniformuiv, NOpenGLProc::TGetUniformuiv, "glGetUniformuiv", "glGetUniformuivARB", "glGetUniformuivEXT");
  833. LOAD_GL_EXTENSION(glGetVertexAttribIiv, statusGetVertexAttribIiv, NOpenGLProc::TGetVertexAttribIiv, "glGetVertexAttribIiv", "glGetVertexAttribIivARB", "glGetVertexAttribIivEXT");
  834. LOAD_GL_EXTENSION(glGetVertexAttribIuiv, statusGetVertexAttribIuiv, NOpenGLProc::TGetVertexAttribIuiv, "glGetVertexAttribIuiv", "glGetVertexAttribIuivARB", "glGetVertexAttribIuivEXT");
  835. LOAD_GL_EXTENSION(glIsEnabledi, statusIsEnabledi, NOpenGLProc::TIsEnabledi, "glIsEnabledi", "glIsEnablediARB", "glIsEnablediEXT");
  836. LOAD_GL_EXTENSION(glIsFramebuffer, statusIsFramebuffer, NOpenGLProc::TIsFramebuffer, "glIsFramebuffer", "glIsFramebufferARB", "glIsFramebufferEXT");
  837. LOAD_GL_EXTENSION(glIsRenderbuffer, statusIsRenderbuffer, NOpenGLProc::TIsRenderbuffer, "glIsRenderbuffer", "glIsRenderbufferARB", "glIsRenderbufferEXT");
  838. LOAD_GL_EXTENSION(glIsVertexArray, statusIsVertexArray, NOpenGLProc::TIsVertexArray, "glIsVertexArray", "glIsVertexArrayARB", "glIsVertexArrayEXT");
  839. LOAD_GL_EXTENSION(glMapBufferRange, statusMapBufferRange, NOpenGLProc::TMapBufferRange, "glMapBufferRange", "glMapBufferRangeARB", "glMapBufferRangeEXT");
  840. LOAD_GL_EXTENSION(glRenderbufferStorage, statusRenderbufferStorage, NOpenGLProc::TRenderbufferStorage, "glRenderbufferStorage", "glRenderbufferStorageARB", "glRenderbufferStorageEXT");
  841. LOAD_GL_EXTENSION(glRenderbufferStorageMultisample, statusRenderbufferStorageMultisample, NOpenGLProc::TRenderbufferStorageMultisample, "glRenderbufferStorageMultisample", "glRenderbufferStorageMultisampleARB", "glRenderbufferStorageMultisampleEXT");
  842. LOAD_GL_EXTENSION(glTexParameterIiv, statusTexParameterIiv, NOpenGLProc::TTexParameterIiv, "glTexParameterIiv", "glTexParameterIivARB", "glTexParameterIivEXT");
  843. LOAD_GL_EXTENSION(glTexParameterIuiv, statusTexParameterIuiv, NOpenGLProc::TTexParameterIuiv, "glTexParameterIuiv", "glTexParameterIuivARB", "glTexParameterIuivEXT");
  844. LOAD_GL_EXTENSION(glTransformFeedbackVaryings, statusTransformFeedbackVaryings, NOpenGLProc::TTransformFeedbackVaryings, "glTransformFeedbackVaryings", "glTransformFeedbackVaryingsARB", "glTransformFeedbackVaryingsEXT");
  845. LOAD_GL_EXTENSION(glUniform1ui, statusUniform1ui, NOpenGLProc::TUniform1ui, "glUniform1ui", "glUniform1uiARB", "glUniform1uiEXT");
  846. LOAD_GL_EXTENSION(glUniform1uiv, statusUniform1uiv, NOpenGLProc::TUniform1uiv, "glUniform1uiv", "glUniform1uivARB", "glUniform1uivEXT");
  847. LOAD_GL_EXTENSION(glUniform2ui, statusUniform2ui, NOpenGLProc::TUniform2ui, "glUniform2ui", "glUniform2uiARB", "glUniform2uiEXT");
  848. LOAD_GL_EXTENSION(glUniform2uiv, statusUniform2uiv, NOpenGLProc::TUniform2uiv, "glUniform2uiv", "glUniform2uivARB", "glUniform2uivEXT");
  849. LOAD_GL_EXTENSION(glUniform3ui, statusUniform3ui, NOpenGLProc::TUniform3ui, "glUniform3ui", "glUniform3uiARB", "glUniform3uiEXT");
  850. LOAD_GL_EXTENSION(glUniform3uiv, statusUniform3uiv, NOpenGLProc::TUniform3uiv, "glUniform3uiv", "glUniform3uivARB", "glUniform3uivEXT");
  851. LOAD_GL_EXTENSION(glUniform4ui, statusUniform4ui, NOpenGLProc::TUniform4ui, "glUniform4ui", "glUniform4uiARB", "glUniform4uiEXT");
  852. LOAD_GL_EXTENSION(glUniform4uiv, statusUniform4uiv, NOpenGLProc::TUniform4uiv, "glUniform4uiv", "glUniform4uivARB", "glUniform4uivEXT");
  853. LOAD_GL_EXTENSION(glVertexAttribI1i, statusVertexAttribI1i, NOpenGLProc::TVertexAttribI1i, "glVertexAttribI1i", "glVertexAttribI1iARB", "glVertexAttribI1iEXT");
  854. LOAD_GL_EXTENSION(glVertexAttribI1iv, statusVertexAttribI1iv, NOpenGLProc::TVertexAttribI1iv, "glVertexAttribI1iv", "glVertexAttribI1ivARB", "glVertexAttribI1ivEXT");
  855. LOAD_GL_EXTENSION(glVertexAttribI1ui, statusVertexAttribI1ui, NOpenGLProc::TVertexAttribI1ui, "glVertexAttribI1ui", "glVertexAttribI1uiARB", "glVertexAttribI1uiEXT");
  856. LOAD_GL_EXTENSION(glVertexAttribI1uiv, statusVertexAttribI1uiv, NOpenGLProc::TVertexAttribI1uiv, "glVertexAttribI1uiv", "glVertexAttribI1uivARB", "glVertexAttribI1uivEXT");
  857. LOAD_GL_EXTENSION(glVertexAttribI2i, statusVertexAttribI2i, NOpenGLProc::TVertexAttribI2i, "glVertexAttribI2i", "glVertexAttribI2iARB", "glVertexAttribI2iEXT");
  858. LOAD_GL_EXTENSION(glVertexAttribI2iv, statusVertexAttribI2iv, NOpenGLProc::TVertexAttribI2iv, "glVertexAttribI2iv", "glVertexAttribI2ivARB", "glVertexAttribI2ivEXT");
  859. LOAD_GL_EXTENSION(glVertexAttribI2ui, statusVertexAttribI2ui, NOpenGLProc::TVertexAttribI2ui, "glVertexAttribI2ui", "glVertexAttribI2uiARB", "glVertexAttribI2uiEXT");
  860. LOAD_GL_EXTENSION(glVertexAttribI2uiv, statusVertexAttribI2uiv, NOpenGLProc::TVertexAttribI2uiv, "glVertexAttribI2uiv", "glVertexAttribI2uivARB", "glVertexAttribI2uivEXT");
  861. LOAD_GL_EXTENSION(glVertexAttribI3i, statusVertexAttribI3i, NOpenGLProc::TVertexAttribI3i, "glVertexAttribI3i", "glVertexAttribI3iARB", "glVertexAttribI3iEXT");
  862. LOAD_GL_EXTENSION(glVertexAttribI3iv, statusVertexAttribI3iv, NOpenGLProc::TVertexAttribI3iv, "glVertexAttribI3iv", "glVertexAttribI3ivARB", "glVertexAttribI3ivEXT");
  863. LOAD_GL_EXTENSION(glVertexAttribI3ui, statusVertexAttribI3ui, NOpenGLProc::TVertexAttribI3ui, "glVertexAttribI3ui", "glVertexAttribI3uiARB", "glVertexAttribI3uiEXT");
  864. LOAD_GL_EXTENSION(glVertexAttribI3uiv, statusVertexAttribI3uiv, NOpenGLProc::TVertexAttribI3uiv, "glVertexAttribI3uiv", "glVertexAttribI3uivARB", "glVertexAttribI3uivEXT");
  865. LOAD_GL_EXTENSION(glVertexAttribI4bv, statusVertexAttribI4bv, NOpenGLProc::TVertexAttribI4bv, "glVertexAttribI4bv", "glVertexAttribI4bvARB", "glVertexAttribI4bvEXT");
  866. LOAD_GL_EXTENSION(glVertexAttribI4i, statusVertexAttribI4i, NOpenGLProc::TVertexAttribI4i, "glVertexAttribI4i", "glVertexAttribI4iARB", "glVertexAttribI4iEXT");
  867. LOAD_GL_EXTENSION(glVertexAttribI4iv, statusVertexAttribI4iv, NOpenGLProc::TVertexAttribI4iv, "glVertexAttribI4iv", "glVertexAttribI4ivARB", "glVertexAttribI4ivEXT");
  868. LOAD_GL_EXTENSION(glVertexAttribI4sv, statusVertexAttribI4sv, NOpenGLProc::TVertexAttribI4sv, "glVertexAttribI4sv", "glVertexAttribI4svARB", "glVertexAttribI4svEXT");
  869. LOAD_GL_EXTENSION(glVertexAttribI4ubv, statusVertexAttribI4ubv, NOpenGLProc::TVertexAttribI4ubv, "glVertexAttribI4ubv", "glVertexAttribI4ubvARB", "glVertexAttribI4ubvEXT");
  870. LOAD_GL_EXTENSION(glVertexAttribI4ui, statusVertexAttribI4ui, NOpenGLProc::TVertexAttribI4ui, "glVertexAttribI4ui", "glVertexAttribI4uiARB", "glVertexAttribI4uiEXT");
  871. LOAD_GL_EXTENSION(glVertexAttribI4uiv, statusVertexAttribI4uiv, NOpenGLProc::TVertexAttribI4uiv, "glVertexAttribI4uiv", "glVertexAttribI4uivARB", "glVertexAttribI4uivEXT");
  872. LOAD_GL_EXTENSION(glVertexAttribI4usv, statusVertexAttribI4usv, NOpenGLProc::TVertexAttribI4usv, "glVertexAttribI4usv", "glVertexAttribI4usvARB", "glVertexAttribI4usvEXT");
  873. LOAD_GL_EXTENSION(glVertexAttribIPointer, statusVertexAttribIPointer, NOpenGLProc::TVertexAttribIPointer, "glVertexAttribIPointer", "glVertexAttribIPointerARB", "glVertexAttribIPointerEXT");
  874. }
  875. // GL_VERSION_3_1
  876. if(platform >= NEngine::GPU_PLATFORM_GL0301)
  877. {
  878. LOAD_GL_EXTENSION(glCopyBufferSubData, statusCopyBufferSubData, NOpenGLProc::TCopyBufferSubData, "glCopyBufferSubData", "glCopyBufferSubDataARB", "glCopyBufferSubDataEXT");
  879. LOAD_GL_EXTENSION(glDrawArraysInstanced, statusDrawArraysInstanced, NOpenGLProc::TDrawArraysInstanced, "glDrawArraysInstanced", "glDrawArraysInstancedARB", "glDrawArraysInstancedEXT");
  880. LOAD_GL_EXTENSION(glDrawElementsInstanced, statusDrawElementsInstanced, NOpenGLProc::TDrawElementsInstanced, "glDrawElementsInstanced", "glDrawElementsInstancedARB", "glDrawElementsInstancedEXT");
  881. LOAD_GL_EXTENSION(glGetActiveUniformBlockName, statusGetActiveUniformBlockName, NOpenGLProc::TGetActiveUniformBlockName, "glGetActiveUniformBlockName", "glGetActiveUniformBlockNameARB", "glGetActiveUniformBlockNameEXT");
  882. LOAD_GL_EXTENSION(glGetActiveUniformBlockiv, statusGetActiveUniformBlockiv, NOpenGLProc::TGetActiveUniformBlockiv, "glGetActiveUniformBlockiv", "glGetActiveUniformBlockivARB", "glGetActiveUniformBlockivEXT");
  883. LOAD_GL_EXTENSION(glGetActiveUniformName, statusGetActiveUniformName, NOpenGLProc::TGetActiveUniformName, "glGetActiveUniformName", "glGetActiveUniformNameARB", "glGetActiveUniformNameEXT");
  884. LOAD_GL_EXTENSION(glGetActiveUniformsiv, statusGetActiveUniformsiv, NOpenGLProc::TGetActiveUniformsiv, "glGetActiveUniformsiv", "glGetActiveUniformsivARB", "glGetActiveUniformsivEXT");
  885. LOAD_GL_EXTENSION(glGetUniformBlockIndex, statusGetUniformBlockIndex, NOpenGLProc::TGetUniformBlockIndex, "glGetUniformBlockIndex", "glGetUniformBlockIndexARB", "glGetUniformBlockIndexEXT");
  886. LOAD_GL_EXTENSION(glGetUniformIndices, statusGetUniformIndices, NOpenGLProc::TGetUniformIndices, "glGetUniformIndices", "glGetUniformIndicesARB", "glGetUniformIndicesEXT");
  887. LOAD_GL_EXTENSION(glPrimitiveRestartIndex, statusPrimitiveRestartIndex, NOpenGLProc::TPrimitiveRestartIndex, "glPrimitiveRestartIndex", "glPrimitiveRestartIndexARB", "glPrimitiveRestartIndexEXT");
  888. LOAD_GL_EXTENSION(glTexBuffer, statusTexBuffer, NOpenGLProc::TTexBuffer, "glTexBuffer", "glTexBufferARB", "glTexBufferEXT");
  889. LOAD_GL_EXTENSION(glUniformBlockBinding, statusUniformBlockBinding, NOpenGLProc::TUniformBlockBinding, "glUniformBlockBinding", "glUniformBlockBindingARB", "glUniformBlockBindingEXT");
  890. }
  891. // GL_VERSION_3_2
  892. if(platform >= NEngine::GPU_PLATFORM_GL0302)
  893. {
  894. LOAD_GL_EXTENSION(glClientWaitSync, statusClientWaitSync, NOpenGLProc::TClientWaitSync, "glClientWaitSync", "glClientWaitSyncARB", "glClientWaitSyncEXT");
  895. LOAD_GL_EXTENSION(glDeleteSync, statusDeleteSync, NOpenGLProc::TDeleteSync, "glDeleteSync", "glDeleteSyncARB", "glDeleteSyncEXT");
  896. LOAD_GL_EXTENSION(glDrawElementsBaseVertex, statusDrawElementsBaseVertex, NOpenGLProc::TDrawElementsBaseVertex, "glDrawElementsBaseVertex", "glDrawElementsBaseVertexARB", "glDrawElementsBaseVertexEXT");
  897. LOAD_GL_EXTENSION(glDrawElementsInstancedBaseVertex, statusDrawElementsInstancedBaseVertex, NOpenGLProc::TDrawElementsInstancedBaseVertex, "glDrawElementsInstancedBaseVertex", "glDrawElementsInstancedBaseVertexARB", "glDrawElementsInstancedBaseVertexEXT");
  898. LOAD_GL_EXTENSION(glDrawRangeElementsBaseVertex, statusDrawRangeElementsBaseVertex, NOpenGLProc::TDrawRangeElementsBaseVertex, "glDrawRangeElementsBaseVertex", "glDrawRangeElementsBaseVertexARB", "glDrawRangeElementsBaseVertexEXT");
  899. LOAD_GL_EXTENSION(glFenceSync, statusFenceSync, NOpenGLProc::TFenceSync, "glFenceSync", "glFenceSyncARB", "glFenceSyncEXT");
  900. LOAD_GL_EXTENSION(glFramebufferTexture, statusFramebufferTexture, NOpenGLProc::TFramebufferTexture, "glFramebufferTexture", "glFramebufferTextureARB", "glFramebufferTextureEXT");
  901. LOAD_GL_EXTENSION(glGetBufferParameteri64v, statusGetBufferParameteri64v, NOpenGLProc::TGetBufferParameteri64v, "glGetBufferParameteri64v", "glGetBufferParameteri64vARB", "glGetBufferParameteri64vEXT");
  902. LOAD_GL_EXTENSION(glGetInteger64i_v, statusGetInteger64i_v, NOpenGLProc::TGetInteger64i_v, "glGetInteger64i_v", "glGetInteger64i_vARB", "glGetInteger64i_vEXT");
  903. LOAD_GL_EXTENSION(glGetInteger64v, statusGetInteger64v, NOpenGLProc::TGetInteger64v, "glGetInteger64v", "glGetInteger64vARB", "glGetInteger64vEXT");
  904. LOAD_GL_EXTENSION(glGetMultisamplefv, statusGetMultisamplefv, NOpenGLProc::TGetMultisamplefv, "glGetMultisamplefv", "glGetMultisamplefvARB", "glGetMultisamplefvEXT");
  905. LOAD_GL_EXTENSION(glGetSynciv, statusGetSynciv, NOpenGLProc::TGetSynciv, "glGetSynciv", "glGetSyncivARB", "glGetSyncivEXT");
  906. LOAD_GL_EXTENSION(glIsSync, statusIsSync, NOpenGLProc::TIsSync, "glIsSync", "glIsSyncARB", "glIsSyncEXT");
  907. LOAD_GL_EXTENSION(glMultiDrawElementsBaseVertex, statusMultiDrawElementsBaseVertex, NOpenGLProc::TMultiDrawElementsBaseVertex, "glMultiDrawElementsBaseVertex", "glMultiDrawElementsBaseVertexARB", "glMultiDrawElementsBaseVertexEXT");
  908. LOAD_GL_EXTENSION(glProvokingVertex, statusProvokingVertex, NOpenGLProc::TProvokingVertex, "glProvokingVertex", "glProvokingVertexARB", "glProvokingVertexEXT");
  909. LOAD_GL_EXTENSION(glSampleMaski, statusSampleMaski, NOpenGLProc::TSampleMaski, "glSampleMaski", "glSampleMaskiARB", "glSampleMaskiEXT");
  910. LOAD_GL_EXTENSION(glTexImage2DMultisample, statusTexImage2DMultisample, NOpenGLProc::TTexImage2DMultisample, "glTexImage2DMultisample", "glTexImage2DMultisampleARB", "glTexImage2DMultisampleEXT");
  911. LOAD_GL_EXTENSION(glTexImage3DMultisample, statusTexImage3DMultisample, NOpenGLProc::TTexImage3DMultisample, "glTexImage3DMultisample", "glTexImage3DMultisampleARB", "glTexImage3DMultisampleEXT");
  912. LOAD_GL_EXTENSION(glWaitSync, statusWaitSync, NOpenGLProc::TWaitSync, "glWaitSync", "glWaitSyncARB", "glWaitSyncEXT");
  913. }
  914. // GL_VERSION_3_3
  915. if(platform >= NEngine::GPU_PLATFORM_GL0303)
  916. {
  917. LOAD_GL_EXTENSION(glBindFragDataLocationIndexed, statusBindFragDataLocationIndexed, NOpenGLProc::TBindFragDataLocationIndexed, "glBindFragDataLocationIndexed", "glBindFragDataLocationIndexedARB", "glBindFragDataLocationIndexedEXT");
  918. LOAD_GL_EXTENSION(glBindSampler, statusBindSampler, NOpenGLProc::TBindSampler, "glBindSampler", "glBindSamplerARB", "glBindSamplerEXT");
  919. LOAD_GL_EXTENSION(glDeleteSamplers, statusDeleteSamplers, NOpenGLProc::TDeleteSamplers, "glDeleteSamplers", "glDeleteSamplersARB", "glDeleteSamplersEXT");
  920. LOAD_GL_EXTENSION(glGenSamplers, statusGenSamplers, NOpenGLProc::TGenSamplers, "glGenSamplers", "glGenSamplersARB", "glGenSamplersEXT");
  921. LOAD_GL_EXTENSION(glGetFragDataIndex, statusGetFragDataIndex, NOpenGLProc::TGetFragDataIndex, "glGetFragDataIndex", "glGetFragDataIndexARB", "glGetFragDataIndexEXT");
  922. LOAD_GL_EXTENSION(glGetQueryObjecti64v, statusGetQueryObjecti64v, NOpenGLProc::TGetQueryObjecti64v, "glGetQueryObjecti64v", "glGetQueryObjecti64vARB", "glGetQueryObjecti64vEXT");
  923. LOAD_GL_EXTENSION(glGetQueryObjectui64v, statusGetQueryObjectui64v, NOpenGLProc::TGetQueryObjectui64v, "glGetQueryObjectui64v", "glGetQueryObjectui64vARB", "glGetQueryObjectui64vEXT");
  924. LOAD_GL_EXTENSION(glGetSamplerParameterIiv, statusGetSamplerParameterIiv, NOpenGLProc::TGetSamplerParameterIiv, "glGetSamplerParameterIiv", "glGetSamplerParameterIivARB", "glGetSamplerParameterIivEXT");
  925. LOAD_GL_EXTENSION(glGetSamplerParameterIuiv, statusGetSamplerParameterIuiv, NOpenGLProc::TGetSamplerParameterIuiv, "glGetSamplerParameterIuiv", "glGetSamplerParameterIuivARB", "glGetSamplerParameterIuivEXT");
  926. LOAD_GL_EXTENSION(glGetSamplerParameterfv, statusGetSamplerParameterfv, NOpenGLProc::TGetSamplerParameterfv, "glGetSamplerParameterfv", "glGetSamplerParameterfvARB", "glGetSamplerParameterfvEXT");
  927. LOAD_GL_EXTENSION(glGetSamplerParameteriv, statusGetSamplerParameteriv, NOpenGLProc::TGetSamplerParameteriv, "glGetSamplerParameteriv", "glGetSamplerParameterivARB", "glGetSamplerParameterivEXT");
  928. LOAD_GL_EXTENSION(glIsSampler, statusIsSampler, NOpenGLProc::TIsSampler, "glIsSampler", "glIsSamplerARB", "glIsSamplerEXT");
  929. LOAD_GL_EXTENSION(glQueryCounter, statusQueryCounter, NOpenGLProc::TQueryCounter, "glQueryCounter", "glQueryCounterARB", "glQueryCounterEXT");
  930. LOAD_GL_EXTENSION(glSamplerParameterIiv, statusSamplerParameterIiv, NOpenGLProc::TSamplerParameterIiv, "glSamplerParameterIiv", "glSamplerParameterIivARB", "glSamplerParameterIivEXT");
  931. LOAD_GL_EXTENSION(glSamplerParameterIuiv, statusSamplerParameterIuiv, NOpenGLProc::TSamplerParameterIuiv, "glSamplerParameterIuiv", "glSamplerParameterIuivARB", "glSamplerParameterIuivEXT");
  932. LOAD_GL_EXTENSION(glSamplerParameterf, statusSamplerParameterf, NOpenGLProc::TSamplerParameterf, "glSamplerParameterf", "glSamplerParameterfARB", "glSamplerParameterfEXT");
  933. LOAD_GL_EXTENSION(glSamplerParameterfv, statusSamplerParameterfv, NOpenGLProc::TSamplerParameterfv, "glSamplerParameterfv", "glSamplerParameterfvARB", "glSamplerParameterfvEXT");
  934. LOAD_GL_EXTENSION(glSamplerParameteri, statusSamplerParameteri, NOpenGLProc::TSamplerParameteri, "glSamplerParameteri", "glSamplerParameteriARB", "glSamplerParameteriEXT");
  935. LOAD_GL_EXTENSION(glSamplerParameteriv, statusSamplerParameteriv, NOpenGLProc::TSamplerParameteriv, "glSamplerParameteriv", "glSamplerParameterivARB", "glSamplerParameterivEXT");
  936. LOAD_GL_EXTENSION(glVertexAttribDivisor, statusVertexAttribDivisor, NOpenGLProc::TVertexAttribDivisor, "glVertexAttribDivisor", "glVertexAttribDivisorARB", "glVertexAttribDivisorEXT");
  937. LOAD_GL_EXTENSION(glVertexAttribP1ui, statusVertexAttribP1ui, NOpenGLProc::TVertexAttribP1ui, "glVertexAttribP1ui", "glVertexAttribP1uiARB", "glVertexAttribP1uiEXT");
  938. LOAD_GL_EXTENSION(glVertexAttribP1uiv, statusVertexAttribP1uiv, NOpenGLProc::TVertexAttribP1uiv, "glVertexAttribP1uiv", "glVertexAttribP1uivARB", "glVertexAttribP1uivEXT");
  939. LOAD_GL_EXTENSION(glVertexAttribP2ui, statusVertexAttribP2ui, NOpenGLProc::TVertexAttribP2ui, "glVertexAttribP2ui", "glVertexAttribP2uiARB", "glVertexAttribP2uiEXT");
  940. LOAD_GL_EXTENSION(glVertexAttribP2uiv, statusVertexAttribP2uiv, NOpenGLProc::TVertexAttribP2uiv, "glVertexAttribP2uiv", "glVertexAttribP2uivARB", "glVertexAttribP2uivEXT");
  941. LOAD_GL_EXTENSION(glVertexAttribP3ui, statusVertexAttribP3ui, NOpenGLProc::TVertexAttribP3ui, "glVertexAttribP3ui", "glVertexAttribP3uiARB", "glVertexAttribP3uiEXT");
  942. LOAD_GL_EXTENSION(glVertexAttribP3uiv, statusVertexAttribP3uiv, NOpenGLProc::TVertexAttribP3uiv, "glVertexAttribP3uiv", "glVertexAttribP3uivARB", "glVertexAttribP3uivEXT");
  943. LOAD_GL_EXTENSION(glVertexAttribP4ui, statusVertexAttribP4ui, NOpenGLProc::TVertexAttribP4ui, "glVertexAttribP4ui", "glVertexAttribP4uiARB", "glVertexAttribP4uiEXT");
  944. LOAD_GL_EXTENSION(glVertexAttribP4uiv, statusVertexAttribP4uiv, NOpenGLProc::TVertexAttribP4uiv, "glVertexAttribP4uiv", "glVertexAttribP4uivARB", "glVertexAttribP4uivEXT");
  945. }
  946. // GL_VERSION_4_0
  947. if(platform >= NEngine::GPU_PLATFORM_GL0400)
  948. {
  949. LOAD_GL_EXTENSION(glBeginQueryIndexed, statusBeginQueryIndexed, NOpenGLProc::TBeginQueryIndexed, "glBeginQueryIndexed", "glBeginQueryIndexedARB", "glBeginQueryIndexedEXT");
  950. LOAD_GL_EXTENSION(glBindTransformFeedback, statusBindTransformFeedback, NOpenGLProc::TBindTransformFeedback, "glBindTransformFeedback", "glBindTransformFeedbackARB", "glBindTransformFeedbackEXT");
  951. LOAD_GL_EXTENSION(glBlendEquationSeparatei, statusBlendEquationSeparatei, NOpenGLProc::TBlendEquationSeparatei, "glBlendEquationSeparatei", "glBlendEquationSeparateiARB", "glBlendEquationSeparateiEXT");
  952. LOAD_GL_EXTENSION(glBlendEquationi, statusBlendEquationi, NOpenGLProc::TBlendEquationi, "glBlendEquationi", "glBlendEquationiARB", "glBlendEquationiEXT");
  953. LOAD_GL_EXTENSION(glBlendFuncSeparatei, statusBlendFuncSeparatei, NOpenGLProc::TBlendFuncSeparatei, "glBlendFuncSeparatei", "glBlendFuncSeparateiARB", "glBlendFuncSeparateiEXT");
  954. LOAD_GL_EXTENSION(glBlendFunci, statusBlendFunci, NOpenGLProc::TBlendFunci, "glBlendFunci", "glBlendFunciARB", "glBlendFunciEXT");
  955. LOAD_GL_EXTENSION(glDeleteTransformFeedbacks, statusDeleteTransformFeedbacks, NOpenGLProc::TDeleteTransformFeedbacks, "glDeleteTransformFeedbacks", "glDeleteTransformFeedbacksARB", "glDeleteTransformFeedbacksEXT");
  956. LOAD_GL_EXTENSION(glDrawArraysIndirect, statusDrawArraysIndirect, NOpenGLProc::TDrawArraysIndirect, "glDrawArraysIndirect", "glDrawArraysIndirectARB", "glDrawArraysIndirectEXT");
  957. LOAD_GL_EXTENSION(glDrawElementsIndirect, statusDrawElementsIndirect, NOpenGLProc::TDrawElementsIndirect, "glDrawElementsIndirect", "glDrawElementsIndirectARB", "glDrawElementsIndirectEXT");
  958. LOAD_GL_EXTENSION(glDrawTransformFeedback, statusDrawTransformFeedback, NOpenGLProc::TDrawTransformFeedback, "glDrawTransformFeedback", "glDrawTransformFeedbackARB", "glDrawTransformFeedbackEXT");
  959. LOAD_GL_EXTENSION(glDrawTransformFeedbackStream, statusDrawTransformFeedbackStream, NOpenGLProc::TDrawTransformFeedbackStream, "glDrawTransformFeedbackStream", "glDrawTransformFeedbackStreamARB", "glDrawTransformFeedbackStreamEXT");
  960. LOAD_GL_EXTENSION(glEndQueryIndexed, statusEndQueryIndexed, NOpenGLProc::TEndQueryIndexed, "glEndQueryIndexed", "glEndQueryIndexedARB", "glEndQueryIndexedEXT");
  961. LOAD_GL_EXTENSION(glGenTransformFeedbacks, statusGenTransformFeedbacks, NOpenGLProc::TGenTransformFeedbacks, "glGenTransformFeedbacks", "glGenTransformFeedbacksARB", "glGenTransformFeedbacksEXT");
  962. LOAD_GL_EXTENSION(glGetActiveSubroutineName, statusGetActiveSubroutineName, NOpenGLProc::TGetActiveSubroutineName, "glGetActiveSubroutineName", "glGetActiveSubroutineNameARB", "glGetActiveSubroutineNameEXT");
  963. LOAD_GL_EXTENSION(glGetActiveSubroutineUniformName, statusGetActiveSubroutineUniformName, NOpenGLProc::TGetActiveSubroutineUniformName, "glGetActiveSubroutineUniformName", "glGetActiveSubroutineUniformNameARB", "glGetActiveSubroutineUniformNameEXT");
  964. LOAD_GL_EXTENSION(glGetActiveSubroutineUniformiv, statusGetActiveSubroutineUniformiv, NOpenGLProc::TGetActiveSubroutineUniformiv, "glGetActiveSubroutineUniformiv", "glGetActiveSubroutineUniformivARB", "glGetActiveSubroutineUniformivEXT");
  965. LOAD_GL_EXTENSION(glGetProgramStageiv, statusGetProgramStageiv, NOpenGLProc::TGetProgramStageiv, "glGetProgramStageiv", "glGetProgramStageivARB", "glGetProgramStageivEXT");
  966. LOAD_GL_EXTENSION(glGetQueryIndexediv, statusGetQueryIndexediv, NOpenGLProc::TGetQueryIndexediv, "glGetQueryIndexediv", "glGetQueryIndexedivARB", "glGetQueryIndexedivEXT");
  967. LOAD_GL_EXTENSION(glGetSubroutineIndex, statusGetSubroutineIndex, NOpenGLProc::TGetSubroutineIndex, "glGetSubroutineIndex", "glGetSubroutineIndexARB", "glGetSubroutineIndexEXT");
  968. LOAD_GL_EXTENSION(glGetSubroutineUniformLocation, statusGetSubroutineUniformLocation, NOpenGLProc::TGetSubroutineUniformLocation, "glGetSubroutineUniformLocation", "glGetSubroutineUniformLocationARB", "glGetSubroutineUniformLocationEXT");
  969. LOAD_GL_EXTENSION(glGetUniformSubroutineuiv, statusGetUniformSubroutineuiv, NOpenGLProc::TGetUniformSubroutineuiv, "glGetUniformSubroutineuiv", "glGetUniformSubroutineuivARB", "glGetUniformSubroutineuivEXT");
  970. LOAD_GL_EXTENSION(glGetUniformdv, statusGetUniformdv, NOpenGLProc::TGetUniformdv, "glGetUniformdv", "glGetUniformdvARB", "glGetUniformdvEXT");
  971. LOAD_GL_EXTENSION(glIsTransformFeedback, statusIsTransformFeedback, NOpenGLProc::TIsTransformFeedback, "glIsTransformFeedback", "glIsTransformFeedbackARB", "glIsTransformFeedbackEXT");
  972. LOAD_GL_EXTENSION(glMinSampleShading, statusMinSampleShading, NOpenGLProc::TMinSampleShading, "glMinSampleShading", "glMinSampleShadingARB", "glMinSampleShadingEXT");
  973. LOAD_GL_EXTENSION(glPatchParameterfv, statusPatchParameterfv, NOpenGLProc::TPatchParameterfv, "glPatchParameterfv", "glPatchParameterfvARB", "glPatchParameterfvEXT");
  974. LOAD_GL_EXTENSION(glPatchParameteri, statusPatchParameteri, NOpenGLProc::TPatchParameteri, "glPatchParameteri", "glPatchParameteriARB", "glPatchParameteriEXT");
  975. LOAD_GL_EXTENSION(glPauseTransformFeedback, statusPauseTransformFeedback, NOpenGLProc::TPauseTransformFeedback, "glPauseTransformFeedback", "glPauseTransformFeedbackARB", "glPauseTransformFeedbackEXT");
  976. LOAD_GL_EXTENSION(glResumeTransformFeedback, statusResumeTransformFeedback, NOpenGLProc::TResumeTransformFeedback, "glResumeTransformFeedback", "glResumeTransformFeedbackARB", "glResumeTransformFeedbackEXT");
  977. LOAD_GL_EXTENSION(glUniform1d, statusUniform1d, NOpenGLProc::TUniform1d, "glUniform1d", "glUniform1dARB", "glUniform1dEXT");
  978. LOAD_GL_EXTENSION(glUniform1dv, statusUniform1dv, NOpenGLProc::TUniform1dv, "glUniform1dv", "glUniform1dvARB", "glUniform1dvEXT");
  979. LOAD_GL_EXTENSION(glUniform2d, statusUniform2d, NOpenGLProc::TUniform2d, "glUniform2d", "glUniform2dARB", "glUniform2dEXT");
  980. LOAD_GL_EXTENSION(glUniform2dv, statusUniform2dv, NOpenGLProc::TUniform2dv, "glUniform2dv", "glUniform2dvARB", "glUniform2dvEXT");
  981. LOAD_GL_EXTENSION(glUniform3d, statusUniform3d, NOpenGLProc::TUniform3d, "glUniform3d", "glUniform3dARB", "glUniform3dEXT");
  982. LOAD_GL_EXTENSION(glUniform3dv, statusUniform3dv, NOpenGLProc::TUniform3dv, "glUniform3dv", "glUniform3dvARB", "glUniform3dvEXT");
  983. LOAD_GL_EXTENSION(glUniform4d, statusUniform4d, NOpenGLProc::TUniform4d, "glUniform4d", "glUniform4dARB", "glUniform4dEXT");
  984. LOAD_GL_EXTENSION(glUniform4dv, statusUniform4dv, NOpenGLProc::TUniform4dv, "glUniform4dv", "glUniform4dvARB", "glUniform4dvEXT");
  985. LOAD_GL_EXTENSION(glUniformMatrix2dv, statusUniformMatrix2dv, NOpenGLProc::TUniformMatrix2dv, "glUniformMatrix2dv", "glUniformMatrix2dvARB", "glUniformMatrix2dvEXT");
  986. LOAD_GL_EXTENSION(glUniformMatrix2x3dv, statusUniformMatrix2x3dv, NOpenGLProc::TUniformMatrix2x3dv, "glUniformMatrix2x3dv", "glUniformMatrix2x3dvARB", "glUniformMatrix2x3dvEXT");
  987. LOAD_GL_EXTENSION(glUniformMatrix2x4dv, statusUniformMatrix2x4dv, NOpenGLProc::TUniformMatrix2x4dv, "glUniformMatrix2x4dv", "glUniformMatrix2x4dvARB", "glUniformMatrix2x4dvEXT");
  988. LOAD_GL_EXTENSION(glUniformMatrix3dv, statusUniformMatrix3dv, NOpenGLProc::TUniformMatrix3dv, "glUniformMatrix3dv", "glUniformMatrix3dvARB", "glUniformMatrix3dvEXT");
  989. LOAD_GL_EXTENSION(glUniformMatrix3x2dv, statusUniformMatrix3x2dv, NOpenGLProc::TUniformMatrix3x2dv, "glUniformMatrix3x2dv", "glUniformMatrix3x2dvARB", "glUniformMatrix3x2dvEXT");
  990. LOAD_GL_EXTENSION(glUniformMatrix3x4dv, statusUniformMatrix3x4dv, NOpenGLProc::TUniformMatrix3x4dv, "glUniformMatrix3x4dv", "glUniformMatrix3x4dvARB", "glUniformMatrix3x4dvEXT");
  991. LOAD_GL_EXTENSION(glUniformMatrix4dv, statusUniformMatrix4dv, NOpenGLProc::TUniformMatrix4dv, "glUniformMatrix4dv", "glUniformMatrix4dvARB", "glUniformMatrix4dvEXT");
  992. LOAD_GL_EXTENSION(glUniformMatrix4x2dv, statusUniformMatrix4x2dv, NOpenGLProc::TUniformMatrix4x2dv, "glUniformMatrix4x2dv", "glUniformMatrix4x2dvARB", "glUniformMatrix4x2dvEXT");
  993. LOAD_GL_EXTENSION(glUniformMatrix4x3dv, statusUniformMatrix4x3dv, NOpenGLProc::TUniformMatrix4x3dv, "glUniformMatrix4x3dv", "glUniformMatrix4x3dvARB", "glUniformMatrix4x3dvEXT");
  994. LOAD_GL_EXTENSION(glUniformSubroutinesuiv, statusUniformSubroutinesuiv, NOpenGLProc::TUniformSubroutinesuiv, "glUniformSubroutinesuiv", "glUniformSubroutinesuivARB", "glUniformSubroutinesuivEXT");
  995. }
  996. // GL_VERSION_4_1
  997. if(platform >= NEngine::GPU_PLATFORM_GL0401)
  998. {
  999. LOAD_GL_EXTENSION(glActiveShaderProgram, statusActiveShaderProgram, NOpenGLProc::TActiveShaderProgram, "glActiveShaderProgram", "glActiveShaderProgramARB", "glActiveShaderProgramEXT");
  1000. LOAD_GL_EXTENSION(glBindProgramPipeline, statusBindProgramPipeline, NOpenGLProc::TBindProgramPipeline, "glBindProgramPipeline", "glBindProgramPipelineARB", "glBindProgramPipelineEXT");
  1001. LOAD_GL_EXTENSION(glClearDepthf, statusClearDepthf, NOpenGLProc::TClearDepthf, "glClearDepthf", "glClearDepthfARB", "glClearDepthfEXT");
  1002. LOAD_GL_EXTENSION(glCreateShaderProgramv, statusCreateShaderProgramv, NOpenGLProc::TCreateShaderProgramv, "glCreateShaderProgramv", "glCreateShaderProgramvARB", "glCreateShaderProgramvEXT");
  1003. LOAD_GL_EXTENSION(glDeleteProgramPipelines, statusDeleteProgramPipelines, NOpenGLProc::TDeleteProgramPipelines, "glDeleteProgramPipelines", "glDeleteProgramPipelinesARB", "glDeleteProgramPipelinesEXT");
  1004. LOAD_GL_EXTENSION(glDepthRangeArrayv, statusDepthRangeArrayv, NOpenGLProc::TDepthRangeArrayv, "glDepthRangeArrayv", "glDepthRangeArrayvARB", "glDepthRangeArrayvEXT");
  1005. LOAD_GL_EXTENSION(glDepthRangeIndexed, statusDepthRangeIndexed, NOpenGLProc::TDepthRangeIndexed, "glDepthRangeIndexed", "glDepthRangeIndexedARB", "glDepthRangeIndexedEXT");
  1006. LOAD_GL_EXTENSION(glDepthRangef, statusDepthRangef, NOpenGLProc::TDepthRangef, "glDepthRangef", "glDepthRangefARB", "glDepthRangefEXT");
  1007. LOAD_GL_EXTENSION(glGenProgramPipelines, statusGenProgramPipelines, NOpenGLProc::TGenProgramPipelines, "glGenProgramPipelines", "glGenProgramPipelinesARB", "glGenProgramPipelinesEXT");
  1008. LOAD_GL_EXTENSION(glGetDoublei_v, statusGetDoublei_v, NOpenGLProc::TGetDoublei_v, "glGetDoublei_v", "glGetDoublei_vARB", "glGetDoublei_vEXT");
  1009. LOAD_GL_EXTENSION(glGetFloati_v, statusGetFloati_v, NOpenGLProc::TGetFloati_v, "glGetFloati_v", "glGetFloati_vARB", "glGetFloati_vEXT");
  1010. LOAD_GL_EXTENSION(glGetProgramBinary, statusGetProgramBinary, NOpenGLProc::TGetProgramBinary, "glGetProgramBinary", "glGetProgramBinaryARB", "glGetProgramBinaryEXT");
  1011. LOAD_GL_EXTENSION(glGetProgramPipelineInfoLog, statusGetProgramPipelineInfoLog, NOpenGLProc::TGetProgramPipelineInfoLog, "glGetProgramPipelineInfoLog", "glGetProgramPipelineInfoLogARB", "glGetProgramPipelineInfoLogEXT");
  1012. LOAD_GL_EXTENSION(glGetProgramPipelineiv, statusGetProgramPipelineiv, NOpenGLProc::TGetProgramPipelineiv, "glGetProgramPipelineiv", "glGetProgramPipelineivARB", "glGetProgramPipelineivEXT");
  1013. LOAD_GL_EXTENSION(glGetShaderPrecisionFormat, statusGetShaderPrecisionFormat, NOpenGLProc::TGetShaderPrecisionFormat, "glGetShaderPrecisionFormat", "glGetShaderPrecisionFormatARB", "glGetShaderPrecisionFormatEXT");
  1014. LOAD_GL_EXTENSION(glGetVertexAttribLdv, statusGetVertexAttribLdv, NOpenGLProc::TGetVertexAttribLdv, "glGetVertexAttribLdv", "glGetVertexAttribLdvARB", "glGetVertexAttribLdvEXT");
  1015. LOAD_GL_EXTENSION(glIsProgramPipeline, statusIsProgramPipeline, NOpenGLProc::TIsProgramPipeline, "glIsProgramPipeline", "glIsProgramPipelineARB", "glIsProgramPipelineEXT");
  1016. LOAD_GL_EXTENSION(glProgramBinary, statusProgramBinary, NOpenGLProc::TProgramBinary, "glProgramBinary", "glProgramBinaryARB", "glProgramBinaryEXT");
  1017. LOAD_GL_EXTENSION(glProgramParameteri, statusProgramParameteri, NOpenGLProc::TProgramParameteri, "glProgramParameteri", "glProgramParameteriARB", "glProgramParameteriEXT");
  1018. LOAD_GL_EXTENSION(glProgramUniform1d, statusProgramUniform1d, NOpenGLProc::TProgramUniform1d, "glProgramUniform1d", "glProgramUniform1dARB", "glProgramUniform1dEXT");
  1019. LOAD_GL_EXTENSION(glProgramUniform1dv, statusProgramUniform1dv, NOpenGLProc::TProgramUniform1dv, "glProgramUniform1dv", "glProgramUniform1dvARB", "glProgramUniform1dvEXT");
  1020. LOAD_GL_EXTENSION(glProgramUniform1f, statusProgramUniform1f, NOpenGLProc::TProgramUniform1f, "glProgramUniform1f", "glProgramUniform1fARB", "glProgramUniform1fEXT");
  1021. LOAD_GL_EXTENSION(glProgramUniform1fv, statusProgramUniform1fv, NOpenGLProc::TProgramUniform1fv, "glProgramUniform1fv", "glProgramUniform1fvARB", "glProgramUniform1fvEXT");
  1022. LOAD_GL_EXTENSION(glProgramUniform1i, statusProgramUniform1i, NOpenGLProc::TProgramUniform1i, "glProgramUniform1i", "glProgramUniform1iARB", "glProgramUniform1iEXT");
  1023. LOAD_GL_EXTENSION(glProgramUniform1iv, statusProgramUniform1iv, NOpenGLProc::TProgramUniform1iv, "glProgramUniform1iv", "glProgramUniform1ivARB", "glProgramUniform1ivEXT");
  1024. LOAD_GL_EXTENSION(glProgramUniform1ui, statusProgramUniform1ui, NOpenGLProc::TProgramUniform1ui, "glProgramUniform1ui", "glProgramUniform1uiARB", "glProgramUniform1uiEXT");
  1025. LOAD_GL_EXTENSION(glProgramUniform1uiv, statusProgramUniform1uiv, NOpenGLProc::TProgramUniform1uiv, "glProgramUniform1uiv", "glProgramUniform1uivARB", "glProgramUniform1uivEXT");
  1026. LOAD_GL_EXTENSION(glProgramUniform2d, statusProgramUniform2d, NOpenGLProc::TProgramUniform2d, "glProgramUniform2d", "glProgramUniform2dARB", "glProgramUniform2dEXT");
  1027. LOAD_GL_EXTENSION(glProgramUniform2dv, statusProgramUniform2dv, NOpenGLProc::TProgramUniform2dv, "glProgramUniform2dv", "glProgramUniform2dvARB", "glProgramUniform2dvEXT");
  1028. LOAD_GL_EXTENSION(glProgramUniform2f, statusProgramUniform2f, NOpenGLProc::TProgramUniform2f, "glProgramUniform2f", "glProgramUniform2fARB", "glProgramUniform2fEXT");
  1029. LOAD_GL_EXTENSION(glProgramUniform2fv, statusProgramUniform2fv, NOpenGLProc::TProgramUniform2fv, "glProgramUniform2fv", "glProgramUniform2fvARB", "glProgramUniform2fvEXT");
  1030. LOAD_GL_EXTENSION(glProgramUniform2i, statusProgramUniform2i, NOpenGLProc::TProgramUniform2i, "glProgramUniform2i", "glProgramUniform2iARB", "glProgramUniform2iEXT");
  1031. LOAD_GL_EXTENSION(glProgramUniform2iv, statusProgramUniform2iv, NOpenGLProc::TProgramUniform2iv, "glProgramUniform2iv", "glProgramUniform2ivARB", "glProgramUniform2ivEXT");
  1032. LOAD_GL_EXTENSION(glProgramUniform2ui, statusProgramUniform2ui, NOpenGLProc::TProgramUniform2ui, "glProgramUniform2ui", "glProgramUniform2uiARB", "glProgramUniform2uiEXT");
  1033. LOAD_GL_EXTENSION(glProgramUniform2uiv, statusProgramUniform2uiv, NOpenGLProc::TProgramUniform2uiv, "glProgramUniform2uiv", "glProgramUniform2uivARB", "glProgramUniform2uivEXT");
  1034. LOAD_GL_EXTENSION(glProgramUniform3d, statusProgramUniform3d, NOpenGLProc::TProgramUniform3d, "glProgramUniform3d", "glProgramUniform3dARB", "glProgramUniform3dEXT");
  1035. LOAD_GL_EXTENSION(glProgramUniform3dv, statusProgramUniform3dv, NOpenGLProc::TProgramUniform3dv, "glProgramUniform3dv", "glProgramUniform3dvARB", "glProgramUniform3dvEXT");
  1036. LOAD_GL_EXTENSION(glProgramUniform3f, statusProgramUniform3f, NOpenGLProc::TProgramUniform3f, "glProgramUniform3f", "glProgramUniform3fARB", "glProgramUniform3fEXT");
  1037. LOAD_GL_EXTENSION(glProgramUniform3fv, statusProgramUniform3fv, NOpenGLProc::TProgramUniform3fv, "glProgramUniform3fv", "glProgramUniform3fvARB", "glProgramUniform3fvEXT");
  1038. LOAD_GL_EXTENSION(glProgramUniform3i, statusProgramUniform3i, NOpenGLProc::TProgramUniform3i, "glProgramUniform3i", "glProgramUniform3iARB", "glProgramUniform3iEXT");
  1039. LOAD_GL_EXTENSION(glProgramUniform3iv, statusProgramUniform3iv, NOpenGLProc::TProgramUniform3iv, "glProgramUniform3iv", "glProgramUniform3ivARB", "glProgramUniform3ivEXT");
  1040. LOAD_GL_EXTENSION(glProgramUniform3ui, statusProgramUniform3ui, NOpenGLProc::TProgramUniform3ui, "glProgramUniform3ui", "glProgramUniform3uiARB", "glProgramUniform3uiEXT");
  1041. LOAD_GL_EXTENSION(glProgramUniform3uiv, statusProgramUniform3uiv, NOpenGLProc::TProgramUniform3uiv, "glProgramUniform3uiv", "glProgramUniform3uivARB", "glProgramUniform3uivEXT");
  1042. LOAD_GL_EXTENSION(glProgramUniform4d, statusProgramUniform4d, NOpenGLProc::TProgramUniform4d, "glProgramUniform4d", "glProgramUniform4dARB", "glProgramUniform4dEXT");
  1043. LOAD_GL_EXTENSION(glProgramUniform4dv, statusProgramUniform4dv, NOpenGLProc::TProgramUniform4dv, "glProgramUniform4dv", "glProgramUniform4dvARB", "glProgramUniform4dvEXT");
  1044. LOAD_GL_EXTENSION(glProgramUniform4f, statusProgramUniform4f, NOpenGLProc::TProgramUniform4f, "glProgramUniform4f", "glProgramUniform4fARB", "glProgramUniform4fEXT");
  1045. LOAD_GL_EXTENSION(glProgramUniform4fv, statusProgramUniform4fv, NOpenGLProc::TProgramUniform4fv, "glProgramUniform4fv", "glProgramUniform4fvARB", "glProgramUniform4fvEXT");
  1046. LOAD_GL_EXTENSION(glProgramUniform4i, statusProgramUniform4i, NOpenGLProc::TProgramUniform4i, "glProgramUniform4i", "glProgramUniform4iARB", "glProgramUniform4iEXT");
  1047. LOAD_GL_EXTENSION(glProgramUniform4iv, statusProgramUniform4iv, NOpenGLProc::TProgramUniform4iv, "glProgramUniform4iv", "glProgramUniform4ivARB", "glProgramUniform4ivEXT");
  1048. LOAD_GL_EXTENSION(glProgramUniform4ui, statusProgramUniform4ui, NOpenGLProc::TProgramUniform4ui, "glProgramUniform4ui", "glProgramUniform4uiARB", "glProgramUniform4uiEXT");
  1049. LOAD_GL_EXTENSION(glProgramUniform4uiv, statusProgramUniform4uiv, NOpenGLProc::TProgramUniform4uiv, "glProgramUniform4uiv", "glProgramUniform4uivARB", "glProgramUniform4uivEXT");
  1050. LOAD_GL_EXTENSION(glProgramUniformMatrix2dv, statusProgramUniformMatrix2dv, NOpenGLProc::TProgramUniformMatrix2dv, "glProgramUniformMatrix2dv", "glProgramUniformMatrix2dvARB", "glProgramUniformMatrix2dvEXT");
  1051. LOAD_GL_EXTENSION(glProgramUniformMatrix2fv, statusProgramUniformMatrix2fv, NOpenGLProc::TProgramUniformMatrix2fv, "glProgramUniformMatrix2fv", "glProgramUniformMatrix2fvARB", "glProgramUniformMatrix2fvEXT");
  1052. LOAD_GL_EXTENSION(glProgramUniformMatrix2x3dv, statusProgramUniformMatrix2x3dv, NOpenGLProc::TProgramUniformMatrix2x3dv, "glProgramUniformMatrix2x3dv", "glProgramUniformMatrix2x3dvARB", "glProgramUniformMatrix2x3dvEXT");
  1053. LOAD_GL_EXTENSION(glProgramUniformMatrix2x3fv, statusProgramUniformMatrix2x3fv, NOpenGLProc::TProgramUniformMatrix2x3fv, "glProgramUniformMatrix2x3fv", "glProgramUniformMatrix2x3fvARB", "glProgramUniformMatrix2x3fvEXT");
  1054. LOAD_GL_EXTENSION(glProgramUniformMatrix2x4dv, statusProgramUniformMatrix2x4dv, NOpenGLProc::TProgramUniformMatrix2x4dv, "glProgramUniformMatrix2x4dv", "glProgramUniformMatrix2x4dvARB", "glProgramUniformMatrix2x4dvEXT");
  1055. LOAD_GL_EXTENSION(glProgramUniformMatrix2x4fv, statusProgramUniformMatrix2x4fv, NOpenGLProc::TProgramUniformMatrix2x4fv, "glProgramUniformMatrix2x4fv", "glProgramUniformMatrix2x4fvARB", "glProgramUniformMatrix2x4fvEXT");
  1056. LOAD_GL_EXTENSION(glProgramUniformMatrix3dv, statusProgramUniformMatrix3dv, NOpenGLProc::TProgramUniformMatrix3dv, "glProgramUniformMatrix3dv", "glProgramUniformMatrix3dvARB", "glProgramUniformMatrix3dvEXT");
  1057. LOAD_GL_EXTENSION(glProgramUniformMatrix3fv, statusProgramUniformMatrix3fv, NOpenGLProc::TProgramUniformMatrix3fv, "glProgramUniformMatrix3fv", "glProgramUniformMatrix3fvARB", "glProgramUniformMatrix3fvEXT");
  1058. LOAD_GL_EXTENSION(glProgramUniformMatrix3x2dv, statusProgramUniformMatrix3x2dv, NOpenGLProc::TProgramUniformMatrix3x2dv, "glProgramUniformMatrix3x2dv", "glProgramUniformMatrix3x2dvARB", "glProgramUniformMatrix3x2dvEXT");
  1059. LOAD_GL_EXTENSION(glProgramUniformMatrix3x2fv, statusProgramUniformMatrix3x2fv, NOpenGLProc::TProgramUniformMatrix3x2fv, "glProgramUniformMatrix3x2fv", "glProgramUniformMatrix3x2fvARB", "glProgramUniformMatrix3x2fvEXT");
  1060. LOAD_GL_EXTENSION(glProgramUniformMatrix3x4dv, statusProgramUniformMatrix3x4dv, NOpenGLProc::TProgramUniformMatrix3x4dv, "glProgramUniformMatrix3x4dv", "glProgramUniformMatrix3x4dvARB", "glProgramUniformMatrix3x4dvEXT");
  1061. LOAD_GL_EXTENSION(glProgramUniformMatrix3x4fv, statusProgramUniformMatrix3x4fv, NOpenGLProc::TProgramUniformMatrix3x4fv, "glProgramUniformMatrix3x4fv", "glProgramUniformMatrix3x4fvARB", "glProgramUniformMatrix3x4fvEXT");
  1062. LOAD_GL_EXTENSION(glProgramUniformMatrix4dv, statusProgramUniformMatrix4dv, NOpenGLProc::TProgramUniformMatrix4dv, "glProgramUniformMatrix4dv", "glProgramUniformMatrix4dvARB", "glProgramUniformMatrix4dvEXT");
  1063. LOAD_GL_EXTENSION(glProgramUniformMatrix4fv, statusProgramUniformMatrix4fv, NOpenGLProc::TProgramUniformMatrix4fv, "glProgramUniformMatrix4fv", "glProgramUniformMatrix4fvARB", "glProgramUniformMatrix4fvEXT");
  1064. LOAD_GL_EXTENSION(glProgramUniformMatrix4x2dv, statusProgramUniformMatrix4x2dv, NOpenGLProc::TProgramUniformMatrix4x2dv, "glProgramUniformMatrix4x2dv", "glProgramUniformMatrix4x2dvARB", "glProgramUniformMatrix4x2dvEXT");
  1065. LOAD_GL_EXTENSION(glProgramUniformMatrix4x2fv, statusProgramUniformMatrix4x2fv, NOpenGLProc::TProgramUniformMatrix4x2fv, "glProgramUniformMatrix4x2fv", "glProgramUniformMatrix4x2fvARB", "glProgramUniformMatrix4x2fvEXT");
  1066. LOAD_GL_EXTENSION(glProgramUniformMatrix4x3dv, statusProgramUniformMatrix4x3dv, NOpenGLProc::TProgramUniformMatrix4x3dv, "glProgramUniformMatrix4x3dv", "glProgramUniformMatrix4x3dvARB", "glProgramUniformMatrix4x3dvEXT");
  1067. LOAD_GL_EXTENSION(glProgramUniformMatrix4x3fv, statusProgramUniformMatrix4x3fv, NOpenGLProc::TProgramUniformMatrix4x3fv, "glProgramUniformMatrix4x3fv", "glProgramUniformMatrix4x3fvARB", "glProgramUniformMatrix4x3fvEXT");
  1068. LOAD_GL_EXTENSION(glReleaseShaderCompiler, statusReleaseShaderCompiler, NOpenGLProc::TReleaseShaderCompiler, "glReleaseShaderCompiler", "glReleaseShaderCompilerARB", "glReleaseShaderCompilerEXT");
  1069. LOAD_GL_EXTENSION(glScissorArrayv, statusScissorArrayv, NOpenGLProc::TScissorArrayv, "glScissorArrayv", "glScissorArrayvARB", "glScissorArrayvEXT");
  1070. LOAD_GL_EXTENSION(glScissorIndexed, statusScissorIndexed, NOpenGLProc::TScissorIndexed, "glScissorIndexed", "glScissorIndexedARB", "glScissorIndexedEXT");
  1071. LOAD_GL_EXTENSION(glScissorIndexedv, statusScissorIndexedv, NOpenGLProc::TScissorIndexedv, "glScissorIndexedv", "glScissorIndexedvARB", "glScissorIndexedvEXT");
  1072. LOAD_GL_EXTENSION(glShaderBinary, statusShaderBinary, NOpenGLProc::TShaderBinary, "glShaderBinary", "glShaderBinaryARB", "glShaderBinaryEXT");
  1073. LOAD_GL_EXTENSION(glUseProgramStages, statusUseProgramStages, NOpenGLProc::TUseProgramStages, "glUseProgramStages", "glUseProgramStagesARB", "glUseProgramStagesEXT");
  1074. LOAD_GL_EXTENSION(glValidateProgramPipeline, statusValidateProgramPipeline, NOpenGLProc::TValidateProgramPipeline, "glValidateProgramPipeline", "glValidateProgramPipelineARB", "glValidateProgramPipelineEXT");
  1075. LOAD_GL_EXTENSION(glVertexAttribL1d, statusVertexAttribL1d, NOpenGLProc::TVertexAttribL1d, "glVertexAttribL1d", "glVertexAttribL1dARB", "glVertexAttribL1dEXT");
  1076. LOAD_GL_EXTENSION(glVertexAttribL1dv, statusVertexAttribL1dv, NOpenGLProc::TVertexAttribL1dv, "glVertexAttribL1dv", "glVertexAttribL1dvARB", "glVertexAttribL1dvEXT");
  1077. LOAD_GL_EXTENSION(glVertexAttribL2d, statusVertexAttribL2d, NOpenGLProc::TVertexAttribL2d, "glVertexAttribL2d", "glVertexAttribL2dARB", "glVertexAttribL2dEXT");
  1078. LOAD_GL_EXTENSION(glVertexAttribL2dv, statusVertexAttribL2dv, NOpenGLProc::TVertexAttribL2dv, "glVertexAttribL2dv", "glVertexAttribL2dvARB", "glVertexAttribL2dvEXT");
  1079. LOAD_GL_EXTENSION(glVertexAttribL3d, statusVertexAttribL3d, NOpenGLProc::TVertexAttribL3d, "glVertexAttribL3d", "glVertexAttribL3dARB", "glVertexAttribL3dEXT");
  1080. LOAD_GL_EXTENSION(glVertexAttribL3dv, statusVertexAttribL3dv, NOpenGLProc::TVertexAttribL3dv, "glVertexAttribL3dv", "glVertexAttribL3dvARB", "glVertexAttribL3dvEXT");
  1081. LOAD_GL_EXTENSION(glVertexAttribL4d, statusVertexAttribL4d, NOpenGLProc::TVertexAttribL4d, "glVertexAttribL4d", "glVertexAttribL4dARB", "glVertexAttribL4dEXT");
  1082. LOAD_GL_EXTENSION(glVertexAttribL4dv, statusVertexAttribL4dv, NOpenGLProc::TVertexAttribL4dv, "glVertexAttribL4dv", "glVertexAttribL4dvARB", "glVertexAttribL4dvEXT");
  1083. LOAD_GL_EXTENSION(glVertexAttribLPointer, statusVertexAttribLPointer, NOpenGLProc::TVertexAttribLPointer, "glVertexAttribLPointer", "glVertexAttribLPointerARB", "glVertexAttribLPointerEXT");
  1084. LOAD_GL_EXTENSION(glViewportArrayv, statusViewportArrayv, NOpenGLProc::TViewportArrayv, "glViewportArrayv", "glViewportArrayvARB", "glViewportArrayvEXT");
  1085. LOAD_GL_EXTENSION(glViewportIndexedf, statusViewportIndexedf, NOpenGLProc::TViewportIndexedf, "glViewportIndexedf", "glViewportIndexedfARB", "glViewportIndexedfEXT");
  1086. LOAD_GL_EXTENSION(glViewportIndexedfv, statusViewportIndexedfv, NOpenGLProc::TViewportIndexedfv, "glViewportIndexedfv", "glViewportIndexedfvARB", "glViewportIndexedfvEXT");
  1087. }
  1088. // GL_VERSION_4_2
  1089. if(platform >= NEngine::GPU_PLATFORM_GL0402)
  1090. {
  1091. LOAD_GL_EXTENSION(glBindImageTexture, statusBindImageTexture, NOpenGLProc::TBindImageTexture, "glBindImageTexture", "glBindImageTextureARB", "glBindImageTextureEXT");
  1092. LOAD_GL_EXTENSION(glDrawArraysInstancedBaseInstance, statusDrawArraysInstancedBaseInstance, NOpenGLProc::TDrawArraysInstancedBaseInstance, "glDrawArraysInstancedBaseInstance", "glDrawArraysInstancedBaseInstanceARB", "glDrawArraysInstancedBaseInstanceEXT");
  1093. LOAD_GL_EXTENSION(glDrawElementsInstancedBaseInstance, statusDrawElementsInstancedBaseInstance, NOpenGLProc::TDrawElementsInstancedBaseInstance, "glDrawElementsInstancedBaseInstance", "glDrawElementsInstancedBaseInstanceARB", "glDrawElementsInstancedBaseInstanceEXT");
  1094. LOAD_GL_EXTENSION(glDrawElementsInstancedBaseVertexBaseInstance, statusDrawElementsInstancedBaseVertexBaseInstance, NOpenGLProc::TDrawElementsInstancedBaseVertexBaseInstance, "glDrawElementsInstancedBaseVertexBaseInstance", "glDrawElementsInstancedBaseVertexBaseInstanceARB", "glDrawElementsInstancedBaseVertexBaseInstanceEXT");
  1095. LOAD_GL_EXTENSION(glDrawTransformFeedbackInstanced, statusDrawTransformFeedbackInstanced, NOpenGLProc::TDrawTransformFeedbackInstanced, "glDrawTransformFeedbackInstanced", "glDrawTransformFeedbackInstancedARB", "glDrawTransformFeedbackInstancedEXT");
  1096. LOAD_GL_EXTENSION(glDrawTransformFeedbackStreamInstanced, statusDrawTransformFeedbackStreamInstanced, NOpenGLProc::TDrawTransformFeedbackStreamInstanced, "glDrawTransformFeedbackStreamInstanced", "glDrawTransformFeedbackStreamInstancedARB", "glDrawTransformFeedbackStreamInstancedEXT");
  1097. LOAD_GL_EXTENSION(glGetActiveAtomicCounterBufferiv, statusGetActiveAtomicCounterBufferiv, NOpenGLProc::TGetActiveAtomicCounterBufferiv, "glGetActiveAtomicCounterBufferiv", "glGetActiveAtomicCounterBufferivARB", "glGetActiveAtomicCounterBufferivEXT");
  1098. LOAD_GL_EXTENSION(glGetInternalformativ, statusGetInternalformativ, NOpenGLProc::TGetInternalformativ, "glGetInternalformativ", "glGetInternalformativARB", "glGetInternalformativEXT");
  1099. LOAD_GL_EXTENSION(glMemoryBarrier, statusMemoryBarrier, NOpenGLProc::TMemoryBarrier, "glMemoryBarrier", "glMemoryBarrierARB", "glMemoryBarrierEXT");
  1100. LOAD_GL_EXTENSION(glTexStorage1D, statusTexStorage1D, NOpenGLProc::TTexStorage1D, "glTexStorage1D", "glTexStorage1DARB", "glTexStorage1DEXT");
  1101. LOAD_GL_EXTENSION(glTexStorage2D, statusTexStorage2D, NOpenGLProc::TTexStorage2D, "glTexStorage2D", "glTexStorage2DARB", "glTexStorage2DEXT");
  1102. LOAD_GL_EXTENSION(glTexStorage3D, statusTexStorage3D, NOpenGLProc::TTexStorage3D, "glTexStorage3D", "glTexStorage3DARB", "glTexStorage3DEXT");
  1103. }
  1104. // GL_VERSION_4_3
  1105. if(platform >= NEngine::GPU_PLATFORM_GL0403)
  1106. {
  1107. LOAD_GL_EXTENSION(glBindVertexBuffer, statusBindVertexBuffer, NOpenGLProc::TBindVertexBuffer, "glBindVertexBuffer", "glBindVertexBufferARB", "glBindVertexBufferEXT");
  1108. LOAD_GL_EXTENSION(glClearBufferData, statusClearBufferData, NOpenGLProc::TClearBufferData, "glClearBufferData", "glClearBufferDataARB", "glClearBufferDataEXT");
  1109. LOAD_GL_EXTENSION(glClearBufferSubData, statusClearBufferSubData, NOpenGLProc::TClearBufferSubData, "glClearBufferSubData", "glClearBufferSubDataARB", "glClearBufferSubDataEXT");
  1110. LOAD_GL_EXTENSION(glCopyImageSubData, statusCopyImageSubData, NOpenGLProc::TCopyImageSubData, "glCopyImageSubData", "glCopyImageSubDataARB", "glCopyImageSubDataEXT");
  1111. LOAD_GL_EXTENSION(glDebugMessageCallback, statusDebugMessageCallback, NOpenGLProc::TDebugMessageCallback, "glDebugMessageCallback", "glDebugMessageCallbackARB", "glDebugMessageCallbackEXT");
  1112. LOAD_GL_EXTENSION(glDebugMessageControl, statusDebugMessageControl, NOpenGLProc::TDebugMessageControl, "glDebugMessageControl", "glDebugMessageControlARB", "glDebugMessageControlEXT");
  1113. LOAD_GL_EXTENSION(glDebugMessageInsert, statusDebugMessageInsert, NOpenGLProc::TDebugMessageInsert, "glDebugMessageInsert", "glDebugMessageInsertARB", "glDebugMessageInsertEXT");
  1114. LOAD_GL_EXTENSION(glDispatchCompute, statusDispatchCompute, NOpenGLProc::TDispatchCompute, "glDispatchCompute", "glDispatchComputeARB", "glDispatchComputeEXT");
  1115. LOAD_GL_EXTENSION(glDispatchComputeIndirect, statusDispatchComputeIndirect, NOpenGLProc::TDispatchComputeIndirect, "glDispatchComputeIndirect", "glDispatchComputeIndirectARB", "glDispatchComputeIndirectEXT");
  1116. LOAD_GL_EXTENSION(glFramebufferParameteri, statusFramebufferParameteri, NOpenGLProc::TFramebufferParameteri, "glFramebufferParameteri", "glFramebufferParameteriARB", "glFramebufferParameteriEXT");
  1117. LOAD_GL_EXTENSION(glGetDebugMessageLog, statusGetDebugMessageLog, NOpenGLProc::TGetDebugMessageLog, "glGetDebugMessageLog", "glGetDebugMessageLogARB", "glGetDebugMessageLogEXT");
  1118. LOAD_GL_EXTENSION(glGetFramebufferParameteriv, statusGetFramebufferParameteriv, NOpenGLProc::TGetFramebufferParameteriv, "glGetFramebufferParameteriv", "glGetFramebufferParameterivARB", "glGetFramebufferParameterivEXT");
  1119. LOAD_GL_EXTENSION(glGetInternalformati64v, statusGetInternalformati64v, NOpenGLProc::TGetInternalformati64v, "glGetInternalformati64v", "glGetInternalformati64vARB", "glGetInternalformati64vEXT");
  1120. LOAD_GL_EXTENSION(glGetObjectLabel, statusGetObjectLabel, NOpenGLProc::TGetObjectLabel, "glGetObjectLabel", "glGetObjectLabelARB", "glGetObjectLabelEXT");
  1121. LOAD_GL_EXTENSION(glGetObjectPtrLabel, statusGetObjectPtrLabel, NOpenGLProc::TGetObjectPtrLabel, "glGetObjectPtrLabel", "glGetObjectPtrLabelARB", "glGetObjectPtrLabelEXT");
  1122. LOAD_GL_EXTENSION(glGetProgramInterfaceiv, statusGetProgramInterfaceiv, NOpenGLProc::TGetProgramInterfaceiv, "glGetProgramInterfaceiv", "glGetProgramInterfaceivARB", "glGetProgramInterfaceivEXT");
  1123. LOAD_GL_EXTENSION(glGetProgramResourceIndex, statusGetProgramResourceIndex, NOpenGLProc::TGetProgramResourceIndex, "glGetProgramResourceIndex", "glGetProgramResourceIndexARB", "glGetProgramResourceIndexEXT");
  1124. LOAD_GL_EXTENSION(glGetProgramResourceLocation, statusGetProgramResourceLocation, NOpenGLProc::TGetProgramResourceLocation, "glGetProgramResourceLocation", "glGetProgramResourceLocationARB", "glGetProgramResourceLocationEXT");
  1125. LOAD_GL_EXTENSION(glGetProgramResourceLocationIndex, statusGetProgramResourceLocationIndex, NOpenGLProc::TGetProgramResourceLocationIndex, "glGetProgramResourceLocationIndex", "glGetProgramResourceLocationIndexARB", "glGetProgramResourceLocationIndexEXT");
  1126. LOAD_GL_EXTENSION(glGetProgramResourceName, statusGetProgramResourceName, NOpenGLProc::TGetProgramResourceName, "glGetProgramResourceName", "glGetProgramResourceNameARB", "glGetProgramResourceNameEXT");
  1127. LOAD_GL_EXTENSION(glGetProgramResourceiv, statusGetProgramResourceiv, NOpenGLProc::TGetProgramResourceiv, "glGetProgramResourceiv", "glGetProgramResourceivARB", "glGetProgramResourceivEXT");
  1128. LOAD_GL_EXTENSION(glInvalidateBufferData, statusInvalidateBufferData, NOpenGLProc::TInvalidateBufferData, "glInvalidateBufferData", "glInvalidateBufferDataARB", "glInvalidateBufferDataEXT");
  1129. LOAD_GL_EXTENSION(glInvalidateBufferSubData, statusInvalidateBufferSubData, NOpenGLProc::TInvalidateBufferSubData, "glInvalidateBufferSubData", "glInvalidateBufferSubDataARB", "glInvalidateBufferSubDataEXT");
  1130. LOAD_GL_EXTENSION(glInvalidateFramebuffer, statusInvalidateFramebuffer, NOpenGLProc::TInvalidateFramebuffer, "glInvalidateFramebuffer", "glInvalidateFramebufferARB", "glInvalidateFramebufferEXT");
  1131. LOAD_GL_EXTENSION(glInvalidateSubFramebuffer, statusInvalidateSubFramebuffer, NOpenGLProc::TInvalidateSubFramebuffer, "glInvalidateSubFramebuffer", "glInvalidateSubFramebufferARB", "glInvalidateSubFramebufferEXT");
  1132. LOAD_GL_EXTENSION(glInvalidateTexImage, statusInvalidateTexImage, NOpenGLProc::TInvalidateTexImage, "glInvalidateTexImage", "glInvalidateTexImageARB", "glInvalidateTexImageEXT");
  1133. LOAD_GL_EXTENSION(glInvalidateTexSubImage, statusInvalidateTexSubImage, NOpenGLProc::TInvalidateTexSubImage, "glInvalidateTexSubImage", "glInvalidateTexSubImageARB", "glInvalidateTexSubImageEXT");
  1134. LOAD_GL_EXTENSION(glMultiDrawArraysIndirect, statusMultiDrawArraysIndirect, NOpenGLProc::TMultiDrawArraysIndirect, "glMultiDrawArraysIndirect", "glMultiDrawArraysIndirectARB", "glMultiDrawArraysIndirectEXT");
  1135. LOAD_GL_EXTENSION(glMultiDrawElementsIndirect, statusMultiDrawElementsIndirect, NOpenGLProc::TMultiDrawElementsIndirect, "glMultiDrawElementsIndirect", "glMultiDrawElementsIndirectARB", "glMultiDrawElementsIndirectEXT");
  1136. LOAD_GL_EXTENSION(glObjectLabel, statusObjectLabel, NOpenGLProc::TObjectLabel, "glObjectLabel", "glObjectLabelARB", "glObjectLabelEXT");
  1137. LOAD_GL_EXTENSION(glObjectPtrLabel, statusObjectPtrLabel, NOpenGLProc::TObjectPtrLabel, "glObjectPtrLabel", "glObjectPtrLabelARB", "glObjectPtrLabelEXT");
  1138. LOAD_GL_EXTENSION(glPopDebugGroup, statusPopDebugGroup, NOpenGLProc::TPopDebugGroup, "glPopDebugGroup", "glPopDebugGroupARB", "glPopDebugGroupEXT");
  1139. LOAD_GL_EXTENSION(glPushDebugGroup, statusPushDebugGroup, NOpenGLProc::TPushDebugGroup, "glPushDebugGroup", "glPushDebugGroupARB", "glPushDebugGroupEXT");
  1140. LOAD_GL_EXTENSION(glShaderStorageBlockBinding, statusShaderStorageBlockBinding, NOpenGLProc::TShaderStorageBlockBinding, "glShaderStorageBlockBinding", "glShaderStorageBlockBindingARB", "glShaderStorageBlockBindingEXT");
  1141. LOAD_GL_EXTENSION(glTexBufferRange, statusTexBufferRange, NOpenGLProc::TTexBufferRange, "glTexBufferRange", "glTexBufferRangeARB", "glTexBufferRangeEXT");
  1142. LOAD_GL_EXTENSION(glTexStorage2DMultisample, statusTexStorage2DMultisample, NOpenGLProc::TTexStorage2DMultisample, "glTexStorage2DMultisample", "glTexStorage2DMultisampleARB", "glTexStorage2DMultisampleEXT");
  1143. LOAD_GL_EXTENSION(glTexStorage3DMultisample, statusTexStorage3DMultisample, NOpenGLProc::TTexStorage3DMultisample, "glTexStorage3DMultisample", "glTexStorage3DMultisampleARB", "glTexStorage3DMultisampleEXT");
  1144. LOAD_GL_EXTENSION(glTextureView, statusTextureView, NOpenGLProc::TTextureView, "glTextureView", "glTextureViewARB", "glTextureViewEXT");
  1145. LOAD_GL_EXTENSION(glVertexAttribBinding, statusVertexAttribBinding, NOpenGLProc::TVertexAttribBinding, "glVertexAttribBinding", "glVertexAttribBindingARB", "glVertexAttribBindingEXT");
  1146. LOAD_GL_EXTENSION(glVertexAttribFormat, statusVertexAttribFormat, NOpenGLProc::TVertexAttribFormat, "glVertexAttribFormat", "glVertexAttribFormatARB", "glVertexAttribFormatEXT");
  1147. LOAD_GL_EXTENSION(glVertexAttribIFormat, statusVertexAttribIFormat, NOpenGLProc::TVertexAttribIFormat, "glVertexAttribIFormat", "glVertexAttribIFormatARB", "glVertexAttribIFormatEXT");
  1148. LOAD_GL_EXTENSION(glVertexAttribLFormat, statusVertexAttribLFormat, NOpenGLProc::TVertexAttribLFormat, "glVertexAttribLFormat", "glVertexAttribLFormatARB", "glVertexAttribLFormatEXT");
  1149. LOAD_GL_EXTENSION(glVertexBindingDivisor, statusVertexBindingDivisor, NOpenGLProc::TVertexBindingDivisor, "glVertexBindingDivisor", "glVertexBindingDivisorARB", "glVertexBindingDivisorEXT");
  1150. }
  1151. // GL_VERSION_4_4
  1152. if(platform >= NEngine::GPU_PLATFORM_GL0404)
  1153. {
  1154. LOAD_GL_EXTENSION(glBindBuffersBase, statusBindBuffersBase, NOpenGLProc::TBindBuffersBase, "glBindBuffersBase", "glBindBuffersBaseARB", "glBindBuffersBaseEXT");
  1155. LOAD_GL_EXTENSION(glBindBuffersRange, statusBindBuffersRange, NOpenGLProc::TBindBuffersRange, "glBindBuffersRange", "glBindBuffersRangeARB", "glBindBuffersRangeEXT");
  1156. LOAD_GL_EXTENSION(glBindImageTextures, statusBindImageTextures, NOpenGLProc::TBindImageTextures, "glBindImageTextures", "glBindImageTexturesARB", "glBindImageTexturesEXT");
  1157. LOAD_GL_EXTENSION(glBindSamplers, statusBindSamplers, NOpenGLProc::TBindSamplers, "glBindSamplers", "glBindSamplersARB", "glBindSamplersEXT");
  1158. LOAD_GL_EXTENSION(glBindTextures, statusBindTextures, NOpenGLProc::TBindTextures, "glBindTextures", "glBindTexturesARB", "glBindTexturesEXT");
  1159. LOAD_GL_EXTENSION(glBindVertexBuffers, statusBindVertexBuffers, NOpenGLProc::TBindVertexBuffers, "glBindVertexBuffers", "glBindVertexBuffersARB", "glBindVertexBuffersEXT");
  1160. LOAD_GL_EXTENSION(glBufferStorage, statusBufferStorage, NOpenGLProc::TBufferStorage, "glBufferStorage", "glBufferStorageARB", "glBufferStorageEXT");
  1161. LOAD_GL_EXTENSION(glClearTexImage, statusClearTexImage, NOpenGLProc::TClearTexImage, "glClearTexImage", "glClearTexImageARB", "glClearTexImageEXT");
  1162. LOAD_GL_EXTENSION(glClearTexSubImage, statusClearTexSubImage, NOpenGLProc::TClearTexSubImage, "glClearTexSubImage", "glClearTexSubImageARB", "glClearTexSubImageEXT");
  1163. }
  1164. // GL_VERSION_4_5
  1165. if(platform >= NEngine::GPU_PLATFORM_GL0405)
  1166. {
  1167. LOAD_GL_EXTENSION(glBindTextureUnit, statusBindTextureUnit, NOpenGLProc::TBindTextureUnit, "glBindTextureUnit", "glBindTextureUnitARB", "glBindTextureUnitEXT");
  1168. LOAD_GL_EXTENSION(glBlitNamedFramebuffer, statusBlitNamedFramebuffer, NOpenGLProc::TBlitNamedFramebuffer, "glBlitNamedFramebuffer", "glBlitNamedFramebufferARB", "glBlitNamedFramebufferEXT");
  1169. LOAD_GL_EXTENSION(glCheckNamedFramebufferStatus, statusCheckNamedFramebufferStatus, NOpenGLProc::TCheckNamedFramebufferStatus, "glCheckNamedFramebufferStatus", "glCheckNamedFramebufferStatusARB", "glCheckNamedFramebufferStatusEXT");
  1170. LOAD_GL_EXTENSION(glClearNamedBufferData, statusClearNamedBufferData, NOpenGLProc::TClearNamedBufferData, "glClearNamedBufferData", "glClearNamedBufferDataARB", "glClearNamedBufferDataEXT");
  1171. LOAD_GL_EXTENSION(glClearNamedBufferSubData, statusClearNamedBufferSubData, NOpenGLProc::TClearNamedBufferSubData, "glClearNamedBufferSubData", "glClearNamedBufferSubDataARB", "glClearNamedBufferSubDataEXT");
  1172. LOAD_GL_EXTENSION(glClearNamedFramebufferfi, statusClearNamedFramebufferfi, NOpenGLProc::TClearNamedFramebufferfi, "glClearNamedFramebufferfi", "glClearNamedFramebufferfiARB", "glClearNamedFramebufferfiEXT");
  1173. LOAD_GL_EXTENSION(glClearNamedFramebufferfv, statusClearNamedFramebufferfv, NOpenGLProc::TClearNamedFramebufferfv, "glClearNamedFramebufferfv", "glClearNamedFramebufferfvARB", "glClearNamedFramebufferfvEXT");
  1174. LOAD_GL_EXTENSION(glClearNamedFramebufferiv, statusClearNamedFramebufferiv, NOpenGLProc::TClearNamedFramebufferiv, "glClearNamedFramebufferiv", "glClearNamedFramebufferivARB", "glClearNamedFramebufferivEXT");
  1175. LOAD_GL_EXTENSION(glClearNamedFramebufferuiv, statusClearNamedFramebufferuiv, NOpenGLProc::TClearNamedFramebufferuiv, "glClearNamedFramebufferuiv", "glClearNamedFramebufferuivARB", "glClearNamedFramebufferuivEXT");
  1176. LOAD_GL_EXTENSION(glClipControl, statusClipControl, NOpenGLProc::TClipControl, "glClipControl", "glClipControlARB", "glClipControlEXT");
  1177. LOAD_GL_EXTENSION(glCompressedTextureSubImage1D, statusCompressedTextureSubImage1D, NOpenGLProc::TCompressedTextureSubImage1D, "glCompressedTextureSubImage1D", "glCompressedTextureSubImage1DARB", "glCompressedTextureSubImage1DEXT");
  1178. LOAD_GL_EXTENSION(glCompressedTextureSubImage2D, statusCompressedTextureSubImage2D, NOpenGLProc::TCompressedTextureSubImage2D, "glCompressedTextureSubImage2D", "glCompressedTextureSubImage2DARB", "glCompressedTextureSubImage2DEXT");
  1179. LOAD_GL_EXTENSION(glCompressedTextureSubImage3D, statusCompressedTextureSubImage3D, NOpenGLProc::TCompressedTextureSubImage3D, "glCompressedTextureSubImage3D", "glCompressedTextureSubImage3DARB", "glCompressedTextureSubImage3DEXT");
  1180. LOAD_GL_EXTENSION(glCopyNamedBufferSubData, statusCopyNamedBufferSubData, NOpenGLProc::TCopyNamedBufferSubData, "glCopyNamedBufferSubData", "glCopyNamedBufferSubDataARB", "glCopyNamedBufferSubDataEXT");
  1181. LOAD_GL_EXTENSION(glCopyTextureSubImage1D, statusCopyTextureSubImage1D, NOpenGLProc::TCopyTextureSubImage1D, "glCopyTextureSubImage1D", "glCopyTextureSubImage1DARB", "glCopyTextureSubImage1DEXT");
  1182. LOAD_GL_EXTENSION(glCopyTextureSubImage2D, statusCopyTextureSubImage2D, NOpenGLProc::TCopyTextureSubImage2D, "glCopyTextureSubImage2D", "glCopyTextureSubImage2DARB", "glCopyTextureSubImage2DEXT");
  1183. LOAD_GL_EXTENSION(glCopyTextureSubImage3D, statusCopyTextureSubImage3D, NOpenGLProc::TCopyTextureSubImage3D, "glCopyTextureSubImage3D", "glCopyTextureSubImage3DARB", "glCopyTextureSubImage3DEXT");
  1184. LOAD_GL_EXTENSION(glCreateBuffers, statusCreateBuffers, NOpenGLProc::TCreateBuffers, "glCreateBuffers", "glCreateBuffersARB", "glCreateBuffersEXT");
  1185. LOAD_GL_EXTENSION(glCreateFramebuffers, statusCreateFramebuffers, NOpenGLProc::TCreateFramebuffers, "glCreateFramebuffers", "glCreateFramebuffersARB", "glCreateFramebuffersEXT");
  1186. LOAD_GL_EXTENSION(glCreateProgramPipelines, statusCreateProgramPipelines, NOpenGLProc::TCreateProgramPipelines, "glCreateProgramPipelines", "glCreateProgramPipelinesARB", "glCreateProgramPipelinesEXT");
  1187. LOAD_GL_EXTENSION(glCreateQueries, statusCreateQueries, NOpenGLProc::TCreateQueries, "glCreateQueries", "glCreateQueriesARB", "glCreateQueriesEXT");
  1188. LOAD_GL_EXTENSION(glCreateRenderbuffers, statusCreateRenderbuffers, NOpenGLProc::TCreateRenderbuffers, "glCreateRenderbuffers", "glCreateRenderbuffersARB", "glCreateRenderbuffersEXT");
  1189. LOAD_GL_EXTENSION(glCreateSamplers, statusCreateSamplers, NOpenGLProc::TCreateSamplers, "glCreateSamplers", "glCreateSamplersARB", "glCreateSamplersEXT");
  1190. LOAD_GL_EXTENSION(glCreateTextures, statusCreateTextures, NOpenGLProc::TCreateTextures, "glCreateTextures", "glCreateTexturesARB", "glCreateTexturesEXT");
  1191. LOAD_GL_EXTENSION(glCreateTransformFeedbacks, statusCreateTransformFeedbacks, NOpenGLProc::TCreateTransformFeedbacks, "glCreateTransformFeedbacks", "glCreateTransformFeedbacksARB", "glCreateTransformFeedbacksEXT");
  1192. LOAD_GL_EXTENSION(glCreateVertexArrays, statusCreateVertexArrays, NOpenGLProc::TCreateVertexArrays, "glCreateVertexArrays", "glCreateVertexArraysARB", "glCreateVertexArraysEXT");
  1193. LOAD_GL_EXTENSION(glDisableVertexArrayAttrib, statusDisableVertexArrayAttrib, NOpenGLProc::TDisableVertexArrayAttrib, "glDisableVertexArrayAttrib", "glDisableVertexArrayAttribARB", "glDisableVertexArrayAttribEXT");
  1194. LOAD_GL_EXTENSION(glEnableVertexArrayAttrib, statusEnableVertexArrayAttrib, NOpenGLProc::TEnableVertexArrayAttrib, "glEnableVertexArrayAttrib", "glEnableVertexArrayAttribARB", "glEnableVertexArrayAttribEXT");
  1195. LOAD_GL_EXTENSION(glFlushMappedNamedBufferRange, statusFlushMappedNamedBufferRange, NOpenGLProc::TFlushMappedNamedBufferRange, "glFlushMappedNamedBufferRange", "glFlushMappedNamedBufferRangeARB", "glFlushMappedNamedBufferRangeEXT");
  1196. LOAD_GL_EXTENSION(glGenerateTextureMipmap, statusGenerateTextureMipmap, NOpenGLProc::TGenerateTextureMipmap, "glGenerateTextureMipmap", "glGenerateTextureMipmapARB", "glGenerateTextureMipmapEXT");
  1197. LOAD_GL_EXTENSION(glGetCompressedTextureImage, statusGetCompressedTextureImage, NOpenGLProc::TGetCompressedTextureImage, "glGetCompressedTextureImage", "glGetCompressedTextureImageARB", "glGetCompressedTextureImageEXT");
  1198. LOAD_GL_EXTENSION(glGetCompressedTextureSubImage, statusGetCompressedTextureSubImage, NOpenGLProc::TGetCompressedTextureSubImage, "glGetCompressedTextureSubImage", "glGetCompressedTextureSubImageARB", "glGetCompressedTextureSubImageEXT");
  1199. LOAD_GL_EXTENSION(glGetGraphicsResetStatus, statusGetGraphicsResetStatus, NOpenGLProc::TGetGraphicsResetStatus, "glGetGraphicsResetStatus", "glGetGraphicsResetStatusARB", "glGetGraphicsResetStatusEXT");
  1200. LOAD_GL_EXTENSION(glGetNamedBufferParameteri64v, statusGetNamedBufferParameteri64v, NOpenGLProc::TGetNamedBufferParameteri64v, "glGetNamedBufferParameteri64v", "glGetNamedBufferParameteri64vARB", "glGetNamedBufferParameteri64vEXT");
  1201. LOAD_GL_EXTENSION(glGetNamedBufferParameteriv, statusGetNamedBufferParameteriv, NOpenGLProc::TGetNamedBufferParameteriv, "glGetNamedBufferParameteriv", "glGetNamedBufferParameterivARB", "glGetNamedBufferParameterivEXT");
  1202. LOAD_GL_EXTENSION(glGetNamedBufferPointerv, statusGetNamedBufferPointerv, NOpenGLProc::TGetNamedBufferPointerv, "glGetNamedBufferPointerv", "glGetNamedBufferPointervARB", "glGetNamedBufferPointervEXT");
  1203. LOAD_GL_EXTENSION(glGetNamedBufferSubData, statusGetNamedBufferSubData, NOpenGLProc::TGetNamedBufferSubData, "glGetNamedBufferSubData", "glGetNamedBufferSubDataARB", "glGetNamedBufferSubDataEXT");
  1204. LOAD_GL_EXTENSION(glGetNamedFramebufferAttachmentParameteriv, statusGetNamedFramebufferAttachmentParameteriv, NOpenGLProc::TGetNamedFramebufferAttachmentParameteriv, "glGetNamedFramebufferAttachmentParameteriv", "glGetNamedFramebufferAttachmentParameterivARB", "glGetNamedFramebufferAttachmentParameterivEXT");
  1205. LOAD_GL_EXTENSION(glGetNamedFramebufferParameteriv, statusGetNamedFramebufferParameteriv, NOpenGLProc::TGetNamedFramebufferParameteriv, "glGetNamedFramebufferParameteriv", "glGetNamedFramebufferParameterivARB", "glGetNamedFramebufferParameterivEXT");
  1206. LOAD_GL_EXTENSION(glGetNamedRenderbufferParameteriv, statusGetNamedRenderbufferParameteriv, NOpenGLProc::TGetNamedRenderbufferParameteriv, "glGetNamedRenderbufferParameteriv", "glGetNamedRenderbufferParameterivARB", "glGetNamedRenderbufferParameterivEXT");
  1207. LOAD_GL_EXTENSION(glGetQueryBufferObjecti64v, statusGetQueryBufferObjecti64v, NOpenGLProc::TGetQueryBufferObjecti64v, "glGetQueryBufferObjecti64v", "glGetQueryBufferObjecti64vARB", "glGetQueryBufferObjecti64vEXT");
  1208. LOAD_GL_EXTENSION(glGetQueryBufferObjectiv, statusGetQueryBufferObjectiv, NOpenGLProc::TGetQueryBufferObjectiv, "glGetQueryBufferObjectiv", "glGetQueryBufferObjectivARB", "glGetQueryBufferObjectivEXT");
  1209. LOAD_GL_EXTENSION(glGetQueryBufferObjectui64v, statusGetQueryBufferObjectui64v, NOpenGLProc::TGetQueryBufferObjectui64v, "glGetQueryBufferObjectui64v", "glGetQueryBufferObjectui64vARB", "glGetQueryBufferObjectui64vEXT");
  1210. LOAD_GL_EXTENSION(glGetQueryBufferObjectuiv, statusGetQueryBufferObjectuiv, NOpenGLProc::TGetQueryBufferObjectuiv, "glGetQueryBufferObjectuiv", "glGetQueryBufferObjectuivARB", "glGetQueryBufferObjectuivEXT");
  1211. LOAD_GL_EXTENSION(glGetTextureImage, statusGetTextureImage, NOpenGLProc::TGetTextureImage, "glGetTextureImage", "glGetTextureImageARB", "glGetTextureImageEXT");
  1212. LOAD_GL_EXTENSION(glGetTextureLevelParameterfv, statusGetTextureLevelParameterfv, NOpenGLProc::TGetTextureLevelParameterfv, "glGetTextureLevelParameterfv", "glGetTextureLevelParameterfvARB", "glGetTextureLevelParameterfvEXT");
  1213. LOAD_GL_EXTENSION(glGetTextureLevelParameteriv, statusGetTextureLevelParameteriv, NOpenGLProc::TGetTextureLevelParameteriv, "glGetTextureLevelParameteriv", "glGetTextureLevelParameterivARB", "glGetTextureLevelParameterivEXT");
  1214. LOAD_GL_EXTENSION(glGetTextureParameterIiv, statusGetTextureParameterIiv, NOpenGLProc::TGetTextureParameterIiv, "glGetTextureParameterIiv", "glGetTextureParameterIivARB", "glGetTextureParameterIivEXT");
  1215. LOAD_GL_EXTENSION(glGetTextureParameterIuiv, statusGetTextureParameterIuiv, NOpenGLProc::TGetTextureParameterIuiv, "glGetTextureParameterIuiv", "glGetTextureParameterIuivARB", "glGetTextureParameterIuivEXT");
  1216. LOAD_GL_EXTENSION(glGetTextureParameterfv, statusGetTextureParameterfv, NOpenGLProc::TGetTextureParameterfv, "glGetTextureParameterfv", "glGetTextureParameterfvARB", "glGetTextureParameterfvEXT");
  1217. LOAD_GL_EXTENSION(glGetTextureParameteriv, statusGetTextureParameteriv, NOpenGLProc::TGetTextureParameteriv, "glGetTextureParameteriv", "glGetTextureParameterivARB", "glGetTextureParameterivEXT");
  1218. LOAD_GL_EXTENSION(glGetTextureSubImage, statusGetTextureSubImage, NOpenGLProc::TGetTextureSubImage, "glGetTextureSubImage", "glGetTextureSubImageARB", "glGetTextureSubImageEXT");
  1219. LOAD_GL_EXTENSION(glGetTransformFeedbacki64_v, statusGetTransformFeedbacki64_v, NOpenGLProc::TGetTransformFeedbacki64_v, "glGetTransformFeedbacki64_v", "glGetTransformFeedbacki64_vARB", "glGetTransformFeedbacki64_vEXT");
  1220. LOAD_GL_EXTENSION(glGetTransformFeedbacki_v, statusGetTransformFeedbacki_v, NOpenGLProc::TGetTransformFeedbacki_v, "glGetTransformFeedbacki_v", "glGetTransformFeedbacki_vARB", "glGetTransformFeedbacki_vEXT");
  1221. LOAD_GL_EXTENSION(glGetTransformFeedbackiv, statusGetTransformFeedbackiv, NOpenGLProc::TGetTransformFeedbackiv, "glGetTransformFeedbackiv", "glGetTransformFeedbackivARB", "glGetTransformFeedbackivEXT");
  1222. LOAD_GL_EXTENSION(glGetVertexArrayIndexed64iv, statusGetVertexArrayIndexed64iv, NOpenGLProc::TGetVertexArrayIndexed64iv, "glGetVertexArrayIndexed64iv", "glGetVertexArrayIndexed64ivARB", "glGetVertexArrayIndexed64ivEXT");
  1223. LOAD_GL_EXTENSION(glGetVertexArrayIndexediv, statusGetVertexArrayIndexediv, NOpenGLProc::TGetVertexArrayIndexediv, "glGetVertexArrayIndexediv", "glGetVertexArrayIndexedivARB", "glGetVertexArrayIndexedivEXT");
  1224. LOAD_GL_EXTENSION(glGetVertexArrayiv, statusGetVertexArrayiv, NOpenGLProc::TGetVertexArrayiv, "glGetVertexArrayiv", "glGetVertexArrayivARB", "glGetVertexArrayivEXT");
  1225. LOAD_GL_EXTENSION(glGetnCompressedTexImage, statusGetnCompressedTexImage, NOpenGLProc::TGetnCompressedTexImage, "glGetnCompressedTexImage", "glGetnCompressedTexImageARB", "glGetnCompressedTexImageEXT");
  1226. LOAD_GL_EXTENSION(glGetnTexImage, statusGetnTexImage, NOpenGLProc::TGetnTexImage, "glGetnTexImage", "glGetnTexImageARB", "glGetnTexImageEXT");
  1227. LOAD_GL_EXTENSION(glGetnUniformdv, statusGetnUniformdv, NOpenGLProc::TGetnUniformdv, "glGetnUniformdv", "glGetnUniformdvARB", "glGetnUniformdvEXT");
  1228. LOAD_GL_EXTENSION(glGetnUniformfv, statusGetnUniformfv, NOpenGLProc::TGetnUniformfv, "glGetnUniformfv", "glGetnUniformfvARB", "glGetnUniformfvEXT");
  1229. LOAD_GL_EXTENSION(glGetnUniformiv, statusGetnUniformiv, NOpenGLProc::TGetnUniformiv, "glGetnUniformiv", "glGetnUniformivARB", "glGetnUniformivEXT");
  1230. LOAD_GL_EXTENSION(glGetnUniformuiv, statusGetnUniformuiv, NOpenGLProc::TGetnUniformuiv, "glGetnUniformuiv", "glGetnUniformuivARB", "glGetnUniformuivEXT");
  1231. LOAD_GL_EXTENSION(glInvalidateNamedFramebufferData, statusInvalidateNamedFramebufferData, NOpenGLProc::TInvalidateNamedFramebufferData, "glInvalidateNamedFramebufferData", "glInvalidateNamedFramebufferDataARB", "glInvalidateNamedFramebufferDataEXT");
  1232. LOAD_GL_EXTENSION(glInvalidateNamedFramebufferSubData, statusInvalidateNamedFramebufferSubData, NOpenGLProc::TInvalidateNamedFramebufferSubData, "glInvalidateNamedFramebufferSubData", "glInvalidateNamedFramebufferSubDataARB", "glInvalidateNamedFramebufferSubDataEXT");
  1233. LOAD_GL_EXTENSION(glMapNamedBuffer, statusMapNamedBuffer, NOpenGLProc::TMapNamedBuffer, "glMapNamedBuffer", "glMapNamedBufferARB", "glMapNamedBufferEXT");
  1234. LOAD_GL_EXTENSION(glMapNamedBufferRange, statusMapNamedBufferRange, NOpenGLProc::TMapNamedBufferRange, "glMapNamedBufferRange", "glMapNamedBufferRangeARB", "glMapNamedBufferRangeEXT");
  1235. LOAD_GL_EXTENSION(glMemoryBarrierByRegion, statusMemoryBarrierByRegion, NOpenGLProc::TMemoryBarrierByRegion, "glMemoryBarrierByRegion", "glMemoryBarrierByRegionARB", "glMemoryBarrierByRegionEXT");
  1236. LOAD_GL_EXTENSION(glNamedBufferData, statusNamedBufferData, NOpenGLProc::TNamedBufferData, "glNamedBufferData", "glNamedBufferDataARB", "glNamedBufferDataEXT");
  1237. LOAD_GL_EXTENSION(glNamedBufferStorage, statusNamedBufferStorage, NOpenGLProc::TNamedBufferStorage, "glNamedBufferStorage", "glNamedBufferStorageARB", "glNamedBufferStorageEXT");
  1238. LOAD_GL_EXTENSION(glNamedBufferSubData, statusNamedBufferSubData, NOpenGLProc::TNamedBufferSubData, "glNamedBufferSubData", "glNamedBufferSubDataARB", "glNamedBufferSubDataEXT");
  1239. LOAD_GL_EXTENSION(glNamedFramebufferDrawBuffer, statusNamedFramebufferDrawBuffer, NOpenGLProc::TNamedFramebufferDrawBuffer, "glNamedFramebufferDrawBuffer", "glNamedFramebufferDrawBufferARB", "glNamedFramebufferDrawBufferEXT");
  1240. LOAD_GL_EXTENSION(glNamedFramebufferDrawBuffers, statusNamedFramebufferDrawBuffers, NOpenGLProc::TNamedFramebufferDrawBuffers, "glNamedFramebufferDrawBuffers", "glNamedFramebufferDrawBuffersARB", "glNamedFramebufferDrawBuffersEXT");
  1241. LOAD_GL_EXTENSION(glNamedFramebufferParameteri, statusNamedFramebufferParameteri, NOpenGLProc::TNamedFramebufferParameteri, "glNamedFramebufferParameteri", "glNamedFramebufferParameteriARB", "glNamedFramebufferParameteriEXT");
  1242. LOAD_GL_EXTENSION(glNamedFramebufferReadBuffer, statusNamedFramebufferReadBuffer, NOpenGLProc::TNamedFramebufferReadBuffer, "glNamedFramebufferReadBuffer", "glNamedFramebufferReadBufferARB", "glNamedFramebufferReadBufferEXT");
  1243. LOAD_GL_EXTENSION(glNamedFramebufferRenderbuffer, statusNamedFramebufferRenderbuffer, NOpenGLProc::TNamedFramebufferRenderbuffer, "glNamedFramebufferRenderbuffer", "glNamedFramebufferRenderbufferARB", "glNamedFramebufferRenderbufferEXT");
  1244. LOAD_GL_EXTENSION(glNamedFramebufferTexture, statusNamedFramebufferTexture, NOpenGLProc::TNamedFramebufferTexture, "glNamedFramebufferTexture", "glNamedFramebufferTextureARB", "glNamedFramebufferTextureEXT");
  1245. LOAD_GL_EXTENSION(glNamedFramebufferTextureLayer, statusNamedFramebufferTextureLayer, NOpenGLProc::TNamedFramebufferTextureLayer, "glNamedFramebufferTextureLayer", "glNamedFramebufferTextureLayerARB", "glNamedFramebufferTextureLayerEXT");
  1246. LOAD_GL_EXTENSION(glNamedRenderbufferStorage, statusNamedRenderbufferStorage, NOpenGLProc::TNamedRenderbufferStorage, "glNamedRenderbufferStorage", "glNamedRenderbufferStorageARB", "glNamedRenderbufferStorageEXT");
  1247. LOAD_GL_EXTENSION(glNamedRenderbufferStorageMultisample, statusNamedRenderbufferStorageMultisample, NOpenGLProc::TNamedRenderbufferStorageMultisample, "glNamedRenderbufferStorageMultisample", "glNamedRenderbufferStorageMultisampleARB", "glNamedRenderbufferStorageMultisampleEXT");
  1248. LOAD_GL_EXTENSION(glReadnPixels, statusReadnPixels, NOpenGLProc::TReadnPixels, "glReadnPixels", "glReadnPixelsARB", "glReadnPixelsEXT");
  1249. LOAD_GL_EXTENSION(glTextureBarrier, statusTextureBarrier, NOpenGLProc::TTextureBarrier, "glTextureBarrier", "glTextureBarrierARB", "glTextureBarrierEXT");
  1250. LOAD_GL_EXTENSION(glTextureBuffer, statusTextureBuffer, NOpenGLProc::TTextureBuffer, "glTextureBuffer", "glTextureBufferARB", "glTextureBufferEXT");
  1251. LOAD_GL_EXTENSION(glTextureBufferRange, statusTextureBufferRange, NOpenGLProc::TTextureBufferRange, "glTextureBufferRange", "glTextureBufferRangeARB", "glTextureBufferRangeEXT");
  1252. LOAD_GL_EXTENSION(glTextureParameterIiv, statusTextureParameterIiv, NOpenGLProc::TTextureParameterIiv, "glTextureParameterIiv", "glTextureParameterIivARB", "glTextureParameterIivEXT");
  1253. LOAD_GL_EXTENSION(glTextureParameterIuiv, statusTextureParameterIuiv, NOpenGLProc::TTextureParameterIuiv, "glTextureParameterIuiv", "glTextureParameterIuivARB", "glTextureParameterIuivEXT");
  1254. LOAD_GL_EXTENSION(glTextureParameterf, statusTextureParameterf, NOpenGLProc::TTextureParameterf, "glTextureParameterf", "glTextureParameterfARB", "glTextureParameterfEXT");
  1255. LOAD_GL_EXTENSION(glTextureParameterfv, statusTextureParameterfv, NOpenGLProc::TTextureParameterfv, "glTextureParameterfv", "glTextureParameterfvARB", "glTextureParameterfvEXT");
  1256. LOAD_GL_EXTENSION(glTextureParameteri, statusTextureParameteri, NOpenGLProc::TTextureParameteri, "glTextureParameteri", "glTextureParameteriARB", "glTextureParameteriEXT");
  1257. LOAD_GL_EXTENSION(glTextureParameteriv, statusTextureParameteriv, NOpenGLProc::TTextureParameteriv, "glTextureParameteriv", "glTextureParameterivARB", "glTextureParameterivEXT");
  1258. LOAD_GL_EXTENSION(glTextureStorage1D, statusTextureStorage1D, NOpenGLProc::TTextureStorage1D, "glTextureStorage1D", "glTextureStorage1DARB", "glTextureStorage1DEXT");
  1259. LOAD_GL_EXTENSION(glTextureStorage2D, statusTextureStorage2D, NOpenGLProc::TTextureStorage2D, "glTextureStorage2D", "glTextureStorage2DARB", "glTextureStorage2DEXT");
  1260. LOAD_GL_EXTENSION(glTextureStorage2DMultisample, statusTextureStorage2DMultisample, NOpenGLProc::TTextureStorage2DMultisample, "glTextureStorage2DMultisample", "glTextureStorage2DMultisampleARB", "glTextureStorage2DMultisampleEXT");
  1261. LOAD_GL_EXTENSION(glTextureStorage3D, statusTextureStorage3D, NOpenGLProc::TTextureStorage3D, "glTextureStorage3D", "glTextureStorage3DARB", "glTextureStorage3DEXT");
  1262. LOAD_GL_EXTENSION(glTextureStorage3DMultisample, statusTextureStorage3DMultisample, NOpenGLProc::TTextureStorage3DMultisample, "glTextureStorage3DMultisample", "glTextureStorage3DMultisampleARB", "glTextureStorage3DMultisampleEXT");
  1263. LOAD_GL_EXTENSION(glTextureSubImage1D, statusTextureSubImage1D, NOpenGLProc::TTextureSubImage1D, "glTextureSubImage1D", "glTextureSubImage1DARB", "glTextureSubImage1DEXT");
  1264. LOAD_GL_EXTENSION(glTextureSubImage2D, statusTextureSubImage2D, NOpenGLProc::TTextureSubImage2D, "glTextureSubImage2D", "glTextureSubImage2DARB", "glTextureSubImage2DEXT");
  1265. LOAD_GL_EXTENSION(glTextureSubImage3D, statusTextureSubImage3D, NOpenGLProc::TTextureSubImage3D, "glTextureSubImage3D", "glTextureSubImage3DARB", "glTextureSubImage3DEXT");
  1266. LOAD_GL_EXTENSION(glTransformFeedbackBufferBase, statusTransformFeedbackBufferBase, NOpenGLProc::TTransformFeedbackBufferBase, "glTransformFeedbackBufferBase", "glTransformFeedbackBufferBaseARB", "glTransformFeedbackBufferBaseEXT");
  1267. LOAD_GL_EXTENSION(glTransformFeedbackBufferRange, statusTransformFeedbackBufferRange, NOpenGLProc::TTransformFeedbackBufferRange, "glTransformFeedbackBufferRange", "glTransformFeedbackBufferRangeARB", "glTransformFeedbackBufferRangeEXT");
  1268. LOAD_GL_EXTENSION(glUnmapNamedBuffer, statusUnmapNamedBuffer, NOpenGLProc::TUnmapNamedBuffer, "glUnmapNamedBuffer", "glUnmapNamedBufferARB", "glUnmapNamedBufferEXT");
  1269. LOAD_GL_EXTENSION(glVertexArrayAttribBinding, statusVertexArrayAttribBinding, NOpenGLProc::TVertexArrayAttribBinding, "glVertexArrayAttribBinding", "glVertexArrayAttribBindingARB", "glVertexArrayAttribBindingEXT");
  1270. LOAD_GL_EXTENSION(glVertexArrayAttribFormat, statusVertexArrayAttribFormat, NOpenGLProc::TVertexArrayAttribFormat, "glVertexArrayAttribFormat", "glVertexArrayAttribFormatARB", "glVertexArrayAttribFormatEXT");
  1271. LOAD_GL_EXTENSION(glVertexArrayAttribIFormat, statusVertexArrayAttribIFormat, NOpenGLProc::TVertexArrayAttribIFormat, "glVertexArrayAttribIFormat", "glVertexArrayAttribIFormatARB", "glVertexArrayAttribIFormatEXT");
  1272. LOAD_GL_EXTENSION(glVertexArrayAttribLFormat, statusVertexArrayAttribLFormat, NOpenGLProc::TVertexArrayAttribLFormat, "glVertexArrayAttribLFormat", "glVertexArrayAttribLFormatARB", "glVertexArrayAttribLFormatEXT");
  1273. LOAD_GL_EXTENSION(glVertexArrayBindingDivisor, statusVertexArrayBindingDivisor, NOpenGLProc::TVertexArrayBindingDivisor, "glVertexArrayBindingDivisor", "glVertexArrayBindingDivisorARB", "glVertexArrayBindingDivisorEXT");
  1274. LOAD_GL_EXTENSION(glVertexArrayElementBuffer, statusVertexArrayElementBuffer, NOpenGLProc::TVertexArrayElementBuffer, "glVertexArrayElementBuffer", "glVertexArrayElementBufferARB", "glVertexArrayElementBufferEXT");
  1275. LOAD_GL_EXTENSION(glVertexArrayVertexBuffer, statusVertexArrayVertexBuffer, NOpenGLProc::TVertexArrayVertexBuffer, "glVertexArrayVertexBuffer", "glVertexArrayVertexBufferARB", "glVertexArrayVertexBufferEXT");
  1276. LOAD_GL_EXTENSION(glVertexArrayVertexBuffers, statusVertexArrayVertexBuffers, NOpenGLProc::TVertexArrayVertexBuffers, "glVertexArrayVertexBuffers", "glVertexArrayVertexBuffersARB", "glVertexArrayVertexBuffersEXT");
  1277. }
  1278. context->log("Done.");
  1279. }
  1280. //------------------------------------------------------------------------------
  1281. std::string COpenGL::getStatus() const
  1282. {
  1283. std::string status;
  1284. status += "GL_VERSION_1_0\n";
  1285. status += std::string(" blendFunc ")+" "+" : true"+"\n";
  1286. status += std::string(" clear ")+" "+" : true"+"\n";
  1287. status += std::string(" clearColor ")+" "+" : true"+"\n";
  1288. status += std::string(" clearDepth ")+" "+" : true"+"\n";
  1289. status += std::string(" clearStencil ")+" "+" : true"+"\n";
  1290. status += std::string(" colorMask ")+" "+" : true"+"\n";
  1291. status += std::string(" cullFace ")+" "+" : true"+"\n";
  1292. status += std::string(" depthFunc ")+" "+" : true"+"\n";
  1293. status += std::string(" depthMask ")+" "+" : true"+"\n";
  1294. status += std::string(" depthRange ")+" "+" : true"+"\n";
  1295. status += std::string(" disable ")+" "+" : true"+"\n";
  1296. status += std::string(" drawBuffer ")+" "+" : true"+"\n";
  1297. status += std::string(" enable ")+" "+" : true"+"\n";
  1298. status += std::string(" finish ")+" "+" : true"+"\n";
  1299. status += std::string(" flush ")+" "+" : true"+"\n";
  1300. status += std::string(" frontFace ")+" "+" : true"+"\n";
  1301. status += std::string(" getBooleanv ")+" "+" : true"+"\n";
  1302. status += std::string(" getDoublev ")+" "+" : true"+"\n";
  1303. status += std::string(" getError ")+" "+" : true"+"\n";
  1304. status += std::string(" getFloatv ")+" "+" : true"+"\n";
  1305. status += std::string(" getIntegerv ")+" "+" : true"+"\n";
  1306. status += std::string(" getString ")+" "+" : true"+"\n";
  1307. status += std::string(" getTexImage ")+" "+" : true"+"\n";
  1308. status += std::string(" getTexLevelParameterfv ")+" "+" : true"+"\n";
  1309. status += std::string(" getTexLevelParameteriv ")+" "+" : true"+"\n";
  1310. status += std::string(" getTexParameterfv ")+" "+" : true"+"\n";
  1311. status += std::string(" getTexParameteriv ")+" "+" : true"+"\n";
  1312. status += std::string(" hint ")+" "+" : true"+"\n";
  1313. status += std::string(" isEnabled ")+" "+" : true"+"\n";
  1314. status += std::string(" lineWidth ")+" "+" : true"+"\n";
  1315. status += std::string(" logicOp ")+" "+" : true"+"\n";
  1316. status += std::string(" pixelStoref ")+" "+" : true"+"\n";
  1317. status += std::string(" pixelStorei ")+" "+" : true"+"\n";
  1318. status += std::string(" pointSize ")+" "+" : true"+"\n";
  1319. status += std::string(" polygonMode ")+" "+" : true"+"\n";
  1320. status += std::string(" readBuffer ")+" "+" : true"+"\n";
  1321. status += std::string(" readPixels ")+" "+" : true"+"\n";
  1322. status += std::string(" scissor ")+" "+" : true"+"\n";
  1323. status += std::string(" stencilFunc ")+" "+" : true"+"\n";
  1324. status += std::string(" stencilMask ")+" "+" : true"+"\n";
  1325. status += std::string(" stencilOp ")+" "+" : true"+"\n";
  1326. status += std::string(" texImage1D ")+" "+" : true"+"\n";
  1327. status += std::string(" texImage2D ")+" "+" : true"+"\n";
  1328. status += std::string(" texParameterf ")+" "+" : true"+"\n";
  1329. status += std::string(" texParameterfv ")+" "+" : true"+"\n";
  1330. status += std::string(" texParameteri ")+" "+" : true"+"\n";
  1331. status += std::string(" texParameteriv ")+" "+" : true"+"\n";
  1332. status += std::string(" viewport ")+" "+" : true"+"\n";
  1333. status += "\n";
  1334. status += "GL_VERSION_1_1\n";
  1335. status += std::string(" bindTexture ")+" "+" : true"+"\n";
  1336. status += std::string(" copyTexImage1D ")+" "+" : true"+"\n";
  1337. status += std::string(" copyTexImage2D ")+" "+" : true"+"\n";
  1338. status += std::string(" copyTexSubImage1D ")+" "+" : true"+"\n";
  1339. status += std::string(" copyTexSubImage2D ")+" "+" : true"+"\n";
  1340. status += std::string(" deleteTextures ")+" "+" : true"+"\n";
  1341. status += std::string(" drawArrays ")+" "+" : true"+"\n";
  1342. status += std::string(" drawElements ")+" "+" : true"+"\n";
  1343. status += std::string(" genTextures ")+" "+" : true"+"\n";
  1344. status += std::string(" getPointerv ")+" "+" : true"+"\n";
  1345. status += std::string(" isTexture ")+" "+" : true"+"\n";
  1346. status += std::string(" polygonOffset ")+" "+" : true"+"\n";
  1347. status += std::string(" texSubImage1D ")+" "+" : true"+"\n";
  1348. status += std::string(" texSubImage2D ")+" "+" : true"+"\n";
  1349. status += "\n";
  1350. status += "GL_VERSION_1_2\n";
  1351. status += std::string(" copyTexSubImage3D ")+((statusCopyTexSubImage3D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCopyTexSubImage3D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCopyTexSubImage3D) ? "true" : "false")+"\n";
  1352. status += std::string(" drawRangeElements ")+((statusDrawRangeElements == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawRangeElements == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawRangeElements) ? "true" : "false")+"\n";
  1353. status += std::string(" texImage3D ")+((statusTexImage3D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexImage3D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexImage3D) ? "true" : "false")+"\n";
  1354. status += std::string(" texSubImage3D ")+((statusTexSubImage3D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexSubImage3D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexSubImage3D) ? "true" : "false")+"\n";
  1355. status += "\n";
  1356. status += "GL_VERSION_1_3\n";
  1357. status += std::string(" activeTexture ")+((statusActiveTexture == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusActiveTexture == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glActiveTexture) ? "true" : "false")+"\n";
  1358. status += std::string(" compressedTexImage1D ")+((statusCompressedTexImage1D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCompressedTexImage1D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCompressedTexImage1D) ? "true" : "false")+"\n";
  1359. status += std::string(" compressedTexImage2D ")+((statusCompressedTexImage2D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCompressedTexImage2D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCompressedTexImage2D) ? "true" : "false")+"\n";
  1360. status += std::string(" compressedTexImage3D ")+((statusCompressedTexImage3D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCompressedTexImage3D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCompressedTexImage3D) ? "true" : "false")+"\n";
  1361. status += std::string(" compressedTexSubImage1D ")+((statusCompressedTexSubImage1D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCompressedTexSubImage1D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCompressedTexSubImage1D) ? "true" : "false")+"\n";
  1362. status += std::string(" compressedTexSubImage2D ")+((statusCompressedTexSubImage2D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCompressedTexSubImage2D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCompressedTexSubImage2D) ? "true" : "false")+"\n";
  1363. status += std::string(" compressedTexSubImage3D ")+((statusCompressedTexSubImage3D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCompressedTexSubImage3D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCompressedTexSubImage3D) ? "true" : "false")+"\n";
  1364. status += std::string(" getCompressedTexImage ")+((statusGetCompressedTexImage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetCompressedTexImage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetCompressedTexImage) ? "true" : "false")+"\n";
  1365. status += std::string(" sampleCoverage ")+((statusSampleCoverage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusSampleCoverage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glSampleCoverage) ? "true" : "false")+"\n";
  1366. status += "\n";
  1367. status += "GL_VERSION_1_4\n";
  1368. status += std::string(" blendColor ")+((statusBlendColor == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBlendColor == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBlendColor) ? "true" : "false")+"\n";
  1369. status += std::string(" blendEquation ")+((statusBlendEquation == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBlendEquation == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBlendEquation) ? "true" : "false")+"\n";
  1370. status += std::string(" blendFuncSeparate ")+((statusBlendFuncSeparate == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBlendFuncSeparate == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBlendFuncSeparate) ? "true" : "false")+"\n";
  1371. status += std::string(" multiDrawArrays ")+((statusMultiDrawArrays == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusMultiDrawArrays == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glMultiDrawArrays) ? "true" : "false")+"\n";
  1372. status += std::string(" multiDrawElements ")+((statusMultiDrawElements == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusMultiDrawElements == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glMultiDrawElements) ? "true" : "false")+"\n";
  1373. status += std::string(" pointParameterf ")+((statusPointParameterf == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusPointParameterf == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glPointParameterf) ? "true" : "false")+"\n";
  1374. status += std::string(" pointParameterfv ")+((statusPointParameterfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusPointParameterfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glPointParameterfv) ? "true" : "false")+"\n";
  1375. status += std::string(" pointParameteri ")+((statusPointParameteri == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusPointParameteri == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glPointParameteri) ? "true" : "false")+"\n";
  1376. status += std::string(" pointParameteriv ")+((statusPointParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusPointParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glPointParameteriv) ? "true" : "false")+"\n";
  1377. status += "\n";
  1378. status += "GL_VERSION_1_5\n";
  1379. status += std::string(" beginQuery ")+((statusBeginQuery == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBeginQuery == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBeginQuery) ? "true" : "false")+"\n";
  1380. status += std::string(" bindBuffer ")+((statusBindBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindBuffer) ? "true" : "false")+"\n";
  1381. status += std::string(" bufferData ")+((statusBufferData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBufferData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBufferData) ? "true" : "false")+"\n";
  1382. status += std::string(" bufferSubData ")+((statusBufferSubData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBufferSubData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBufferSubData) ? "true" : "false")+"\n";
  1383. status += std::string(" deleteBuffers ")+((statusDeleteBuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDeleteBuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDeleteBuffers) ? "true" : "false")+"\n";
  1384. status += std::string(" deleteQueries ")+((statusDeleteQueries == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDeleteQueries == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDeleteQueries) ? "true" : "false")+"\n";
  1385. status += std::string(" endQuery ")+((statusEndQuery == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusEndQuery == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glEndQuery) ? "true" : "false")+"\n";
  1386. status += std::string(" genBuffers ")+((statusGenBuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGenBuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGenBuffers) ? "true" : "false")+"\n";
  1387. status += std::string(" genQueries ")+((statusGenQueries == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGenQueries == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGenQueries) ? "true" : "false")+"\n";
  1388. status += std::string(" getBufferParameteriv ")+((statusGetBufferParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetBufferParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetBufferParameteriv) ? "true" : "false")+"\n";
  1389. status += std::string(" getBufferPointerv ")+((statusGetBufferPointerv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetBufferPointerv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetBufferPointerv) ? "true" : "false")+"\n";
  1390. status += std::string(" getBufferSubData ")+((statusGetBufferSubData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetBufferSubData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetBufferSubData) ? "true" : "false")+"\n";
  1391. status += std::string(" getQueryObjectiv ")+((statusGetQueryObjectiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetQueryObjectiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetQueryObjectiv) ? "true" : "false")+"\n";
  1392. status += std::string(" getQueryObjectuiv ")+((statusGetQueryObjectuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetQueryObjectuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetQueryObjectuiv) ? "true" : "false")+"\n";
  1393. status += std::string(" getQueryiv ")+((statusGetQueryiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetQueryiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetQueryiv) ? "true" : "false")+"\n";
  1394. status += std::string(" isBuffer ")+((statusIsBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusIsBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glIsBuffer) ? "true" : "false")+"\n";
  1395. status += std::string(" isQuery ")+((statusIsQuery == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusIsQuery == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glIsQuery) ? "true" : "false")+"\n";
  1396. status += std::string(" mapBuffer ")+((statusMapBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusMapBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glMapBuffer) ? "true" : "false")+"\n";
  1397. status += std::string(" unmapBuffer ")+((statusUnmapBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUnmapBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUnmapBuffer) ? "true" : "false")+"\n";
  1398. status += "\n";
  1399. status += "GL_VERSION_2_0\n";
  1400. status += std::string(" attachShader ")+((statusAttachShader == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusAttachShader == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glAttachShader) ? "true" : "false")+"\n";
  1401. status += std::string(" bindAttribLocation ")+((statusBindAttribLocation == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindAttribLocation == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindAttribLocation) ? "true" : "false")+"\n";
  1402. status += std::string(" blendEquationSeparate ")+((statusBlendEquationSeparate == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBlendEquationSeparate == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBlendEquationSeparate) ? "true" : "false")+"\n";
  1403. status += std::string(" compileShader ")+((statusCompileShader == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCompileShader == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCompileShader) ? "true" : "false")+"\n";
  1404. status += std::string(" createProgram ")+((statusCreateProgram == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCreateProgram == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCreateProgram) ? "true" : "false")+"\n";
  1405. status += std::string(" createShader ")+((statusCreateShader == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCreateShader == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCreateShader) ? "true" : "false")+"\n";
  1406. status += std::string(" deleteProgram ")+((statusDeleteProgram == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDeleteProgram == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDeleteProgram) ? "true" : "false")+"\n";
  1407. status += std::string(" deleteShader ")+((statusDeleteShader == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDeleteShader == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDeleteShader) ? "true" : "false")+"\n";
  1408. status += std::string(" detachShader ")+((statusDetachShader == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDetachShader == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDetachShader) ? "true" : "false")+"\n";
  1409. status += std::string(" disableVertexAttribArray ")+((statusDisableVertexAttribArray == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDisableVertexAttribArray == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDisableVertexAttribArray) ? "true" : "false")+"\n";
  1410. status += std::string(" drawBuffers ")+((statusDrawBuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawBuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawBuffers) ? "true" : "false")+"\n";
  1411. status += std::string(" enableVertexAttribArray ")+((statusEnableVertexAttribArray == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusEnableVertexAttribArray == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glEnableVertexAttribArray) ? "true" : "false")+"\n";
  1412. status += std::string(" getActiveAttrib ")+((statusGetActiveAttrib == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetActiveAttrib == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetActiveAttrib) ? "true" : "false")+"\n";
  1413. status += std::string(" getActiveUniform ")+((statusGetActiveUniform == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetActiveUniform == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetActiveUniform) ? "true" : "false")+"\n";
  1414. status += std::string(" getAttachedShaders ")+((statusGetAttachedShaders == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetAttachedShaders == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetAttachedShaders) ? "true" : "false")+"\n";
  1415. status += std::string(" getAttribLocation ")+((statusGetAttribLocation == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetAttribLocation == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetAttribLocation) ? "true" : "false")+"\n";
  1416. status += std::string(" getProgramInfoLog ")+((statusGetProgramInfoLog == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetProgramInfoLog == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetProgramInfoLog) ? "true" : "false")+"\n";
  1417. status += std::string(" getProgramiv ")+((statusGetProgramiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetProgramiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetProgramiv) ? "true" : "false")+"\n";
  1418. status += std::string(" getShaderInfoLog ")+((statusGetShaderInfoLog == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetShaderInfoLog == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetShaderInfoLog) ? "true" : "false")+"\n";
  1419. status += std::string(" getShaderSource ")+((statusGetShaderSource == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetShaderSource == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetShaderSource) ? "true" : "false")+"\n";
  1420. status += std::string(" getShaderiv ")+((statusGetShaderiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetShaderiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetShaderiv) ? "true" : "false")+"\n";
  1421. status += std::string(" getUniformLocation ")+((statusGetUniformLocation == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetUniformLocation == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetUniformLocation) ? "true" : "false")+"\n";
  1422. status += std::string(" getUniformfv ")+((statusGetUniformfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetUniformfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetUniformfv) ? "true" : "false")+"\n";
  1423. status += std::string(" getUniformiv ")+((statusGetUniformiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetUniformiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetUniformiv) ? "true" : "false")+"\n";
  1424. status += std::string(" getVertexAttribPointerv ")+((statusGetVertexAttribPointerv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetVertexAttribPointerv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetVertexAttribPointerv) ? "true" : "false")+"\n";
  1425. status += std::string(" getVertexAttribdv ")+((statusGetVertexAttribdv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetVertexAttribdv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetVertexAttribdv) ? "true" : "false")+"\n";
  1426. status += std::string(" getVertexAttribfv ")+((statusGetVertexAttribfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetVertexAttribfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetVertexAttribfv) ? "true" : "false")+"\n";
  1427. status += std::string(" getVertexAttribiv ")+((statusGetVertexAttribiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetVertexAttribiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetVertexAttribiv) ? "true" : "false")+"\n";
  1428. status += std::string(" isProgram ")+((statusIsProgram == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusIsProgram == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glIsProgram) ? "true" : "false")+"\n";
  1429. status += std::string(" isShader ")+((statusIsShader == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusIsShader == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glIsShader) ? "true" : "false")+"\n";
  1430. status += std::string(" linkProgram ")+((statusLinkProgram == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusLinkProgram == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glLinkProgram) ? "true" : "false")+"\n";
  1431. status += std::string(" shaderSource ")+((statusShaderSource == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusShaderSource == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glShaderSource) ? "true" : "false")+"\n";
  1432. status += std::string(" stencilFuncSeparate ")+((statusStencilFuncSeparate == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusStencilFuncSeparate == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glStencilFuncSeparate) ? "true" : "false")+"\n";
  1433. status += std::string(" stencilMaskSeparate ")+((statusStencilMaskSeparate == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusStencilMaskSeparate == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glStencilMaskSeparate) ? "true" : "false")+"\n";
  1434. status += std::string(" stencilOpSeparate ")+((statusStencilOpSeparate == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusStencilOpSeparate == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glStencilOpSeparate) ? "true" : "false")+"\n";
  1435. status += std::string(" uniform1f ")+((statusUniform1f == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform1f == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform1f) ? "true" : "false")+"\n";
  1436. status += std::string(" uniform1fv ")+((statusUniform1fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform1fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform1fv) ? "true" : "false")+"\n";
  1437. status += std::string(" uniform1i ")+((statusUniform1i == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform1i == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform1i) ? "true" : "false")+"\n";
  1438. status += std::string(" uniform1iv ")+((statusUniform1iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform1iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform1iv) ? "true" : "false")+"\n";
  1439. status += std::string(" uniform2f ")+((statusUniform2f == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform2f == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform2f) ? "true" : "false")+"\n";
  1440. status += std::string(" uniform2fv ")+((statusUniform2fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform2fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform2fv) ? "true" : "false")+"\n";
  1441. status += std::string(" uniform2i ")+((statusUniform2i == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform2i == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform2i) ? "true" : "false")+"\n";
  1442. status += std::string(" uniform2iv ")+((statusUniform2iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform2iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform2iv) ? "true" : "false")+"\n";
  1443. status += std::string(" uniform3f ")+((statusUniform3f == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform3f == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform3f) ? "true" : "false")+"\n";
  1444. status += std::string(" uniform3fv ")+((statusUniform3fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform3fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform3fv) ? "true" : "false")+"\n";
  1445. status += std::string(" uniform3i ")+((statusUniform3i == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform3i == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform3i) ? "true" : "false")+"\n";
  1446. status += std::string(" uniform3iv ")+((statusUniform3iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform3iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform3iv) ? "true" : "false")+"\n";
  1447. status += std::string(" uniform4f ")+((statusUniform4f == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform4f == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform4f) ? "true" : "false")+"\n";
  1448. status += std::string(" uniform4fv ")+((statusUniform4fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform4fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform4fv) ? "true" : "false")+"\n";
  1449. status += std::string(" uniform4i ")+((statusUniform4i == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform4i == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform4i) ? "true" : "false")+"\n";
  1450. status += std::string(" uniform4iv ")+((statusUniform4iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform4iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform4iv) ? "true" : "false")+"\n";
  1451. status += std::string(" uniformMatrix2fv ")+((statusUniformMatrix2fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix2fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix2fv) ? "true" : "false")+"\n";
  1452. status += std::string(" uniformMatrix3fv ")+((statusUniformMatrix3fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix3fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix3fv) ? "true" : "false")+"\n";
  1453. status += std::string(" uniformMatrix4fv ")+((statusUniformMatrix4fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix4fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix4fv) ? "true" : "false")+"\n";
  1454. status += std::string(" useProgram ")+((statusUseProgram == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUseProgram == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUseProgram) ? "true" : "false")+"\n";
  1455. status += std::string(" validateProgram ")+((statusValidateProgram == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusValidateProgram == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glValidateProgram) ? "true" : "false")+"\n";
  1456. status += std::string(" vertexAttrib1d ")+((statusVertexAttrib1d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib1d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib1d) ? "true" : "false")+"\n";
  1457. status += std::string(" vertexAttrib1dv ")+((statusVertexAttrib1dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib1dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib1dv) ? "true" : "false")+"\n";
  1458. status += std::string(" vertexAttrib1f ")+((statusVertexAttrib1f == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib1f == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib1f) ? "true" : "false")+"\n";
  1459. status += std::string(" vertexAttrib1fv ")+((statusVertexAttrib1fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib1fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib1fv) ? "true" : "false")+"\n";
  1460. status += std::string(" vertexAttrib1s ")+((statusVertexAttrib1s == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib1s == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib1s) ? "true" : "false")+"\n";
  1461. status += std::string(" vertexAttrib1sv ")+((statusVertexAttrib1sv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib1sv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib1sv) ? "true" : "false")+"\n";
  1462. status += std::string(" vertexAttrib2d ")+((statusVertexAttrib2d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib2d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib2d) ? "true" : "false")+"\n";
  1463. status += std::string(" vertexAttrib2dv ")+((statusVertexAttrib2dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib2dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib2dv) ? "true" : "false")+"\n";
  1464. status += std::string(" vertexAttrib2f ")+((statusVertexAttrib2f == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib2f == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib2f) ? "true" : "false")+"\n";
  1465. status += std::string(" vertexAttrib2fv ")+((statusVertexAttrib2fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib2fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib2fv) ? "true" : "false")+"\n";
  1466. status += std::string(" vertexAttrib2s ")+((statusVertexAttrib2s == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib2s == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib2s) ? "true" : "false")+"\n";
  1467. status += std::string(" vertexAttrib2sv ")+((statusVertexAttrib2sv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib2sv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib2sv) ? "true" : "false")+"\n";
  1468. status += std::string(" vertexAttrib3d ")+((statusVertexAttrib3d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib3d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib3d) ? "true" : "false")+"\n";
  1469. status += std::string(" vertexAttrib3dv ")+((statusVertexAttrib3dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib3dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib3dv) ? "true" : "false")+"\n";
  1470. status += std::string(" vertexAttrib3f ")+((statusVertexAttrib3f == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib3f == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib3f) ? "true" : "false")+"\n";
  1471. status += std::string(" vertexAttrib3fv ")+((statusVertexAttrib3fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib3fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib3fv) ? "true" : "false")+"\n";
  1472. status += std::string(" vertexAttrib3s ")+((statusVertexAttrib3s == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib3s == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib3s) ? "true" : "false")+"\n";
  1473. status += std::string(" vertexAttrib3sv ")+((statusVertexAttrib3sv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib3sv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib3sv) ? "true" : "false")+"\n";
  1474. status += std::string(" vertexAttrib4Nbv ")+((statusVertexAttrib4Nbv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4Nbv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4Nbv) ? "true" : "false")+"\n";
  1475. status += std::string(" vertexAttrib4Niv ")+((statusVertexAttrib4Niv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4Niv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4Niv) ? "true" : "false")+"\n";
  1476. status += std::string(" vertexAttrib4Nsv ")+((statusVertexAttrib4Nsv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4Nsv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4Nsv) ? "true" : "false")+"\n";
  1477. status += std::string(" vertexAttrib4Nub ")+((statusVertexAttrib4Nub == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4Nub == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4Nub) ? "true" : "false")+"\n";
  1478. status += std::string(" vertexAttrib4Nubv ")+((statusVertexAttrib4Nubv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4Nubv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4Nubv) ? "true" : "false")+"\n";
  1479. status += std::string(" vertexAttrib4Nuiv ")+((statusVertexAttrib4Nuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4Nuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4Nuiv) ? "true" : "false")+"\n";
  1480. status += std::string(" vertexAttrib4Nusv ")+((statusVertexAttrib4Nusv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4Nusv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4Nusv) ? "true" : "false")+"\n";
  1481. status += std::string(" vertexAttrib4bv ")+((statusVertexAttrib4bv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4bv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4bv) ? "true" : "false")+"\n";
  1482. status += std::string(" vertexAttrib4d ")+((statusVertexAttrib4d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4d) ? "true" : "false")+"\n";
  1483. status += std::string(" vertexAttrib4dv ")+((statusVertexAttrib4dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4dv) ? "true" : "false")+"\n";
  1484. status += std::string(" vertexAttrib4f ")+((statusVertexAttrib4f == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4f == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4f) ? "true" : "false")+"\n";
  1485. status += std::string(" vertexAttrib4fv ")+((statusVertexAttrib4fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4fv) ? "true" : "false")+"\n";
  1486. status += std::string(" vertexAttrib4iv ")+((statusVertexAttrib4iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4iv) ? "true" : "false")+"\n";
  1487. status += std::string(" vertexAttrib4s ")+((statusVertexAttrib4s == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4s == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4s) ? "true" : "false")+"\n";
  1488. status += std::string(" vertexAttrib4sv ")+((statusVertexAttrib4sv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4sv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4sv) ? "true" : "false")+"\n";
  1489. status += std::string(" vertexAttrib4ubv ")+((statusVertexAttrib4ubv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4ubv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4ubv) ? "true" : "false")+"\n";
  1490. status += std::string(" vertexAttrib4uiv ")+((statusVertexAttrib4uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4uiv) ? "true" : "false")+"\n";
  1491. status += std::string(" vertexAttrib4usv ")+((statusVertexAttrib4usv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttrib4usv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttrib4usv) ? "true" : "false")+"\n";
  1492. status += std::string(" vertexAttribPointer ")+((statusVertexAttribPointer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribPointer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribPointer) ? "true" : "false")+"\n";
  1493. status += "\n";
  1494. status += "GL_VERSION_2_1\n";
  1495. status += std::string(" uniformMatrix2x3fv ")+((statusUniformMatrix2x3fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix2x3fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix2x3fv) ? "true" : "false")+"\n";
  1496. status += std::string(" uniformMatrix2x4fv ")+((statusUniformMatrix2x4fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix2x4fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix2x4fv) ? "true" : "false")+"\n";
  1497. status += std::string(" uniformMatrix3x2fv ")+((statusUniformMatrix3x2fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix3x2fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix3x2fv) ? "true" : "false")+"\n";
  1498. status += std::string(" uniformMatrix3x4fv ")+((statusUniformMatrix3x4fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix3x4fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix3x4fv) ? "true" : "false")+"\n";
  1499. status += std::string(" uniformMatrix4x2fv ")+((statusUniformMatrix4x2fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix4x2fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix4x2fv) ? "true" : "false")+"\n";
  1500. status += std::string(" uniformMatrix4x3fv ")+((statusUniformMatrix4x3fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix4x3fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix4x3fv) ? "true" : "false")+"\n";
  1501. status += "\n";
  1502. status += "GL_VERSION_3_0\n";
  1503. status += std::string(" beginConditionalRender ")+((statusBeginConditionalRender == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBeginConditionalRender == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBeginConditionalRender) ? "true" : "false")+"\n";
  1504. status += std::string(" beginTransformFeedback ")+((statusBeginTransformFeedback == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBeginTransformFeedback == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBeginTransformFeedback) ? "true" : "false")+"\n";
  1505. status += std::string(" bindBufferBase ")+((statusBindBufferBase == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindBufferBase == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindBufferBase) ? "true" : "false")+"\n";
  1506. status += std::string(" bindBufferRange ")+((statusBindBufferRange == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindBufferRange == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindBufferRange) ? "true" : "false")+"\n";
  1507. status += std::string(" bindFragDataLocation ")+((statusBindFragDataLocation == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindFragDataLocation == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindFragDataLocation) ? "true" : "false")+"\n";
  1508. status += std::string(" bindFramebuffer ")+((statusBindFramebuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindFramebuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindFramebuffer) ? "true" : "false")+"\n";
  1509. status += std::string(" bindRenderbuffer ")+((statusBindRenderbuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindRenderbuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindRenderbuffer) ? "true" : "false")+"\n";
  1510. status += std::string(" bindVertexArray ")+((statusBindVertexArray == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindVertexArray == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindVertexArray) ? "true" : "false")+"\n";
  1511. status += std::string(" blitFramebuffer ")+((statusBlitFramebuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBlitFramebuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBlitFramebuffer) ? "true" : "false")+"\n";
  1512. status += std::string(" checkFramebufferStatus ")+((statusCheckFramebufferStatus == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCheckFramebufferStatus == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCheckFramebufferStatus) ? "true" : "false")+"\n";
  1513. status += std::string(" clampColor ")+((statusClampColor == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClampColor == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClampColor) ? "true" : "false")+"\n";
  1514. status += std::string(" clearBufferfi ")+((statusClearBufferfi == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearBufferfi == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearBufferfi) ? "true" : "false")+"\n";
  1515. status += std::string(" clearBufferfv ")+((statusClearBufferfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearBufferfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearBufferfv) ? "true" : "false")+"\n";
  1516. status += std::string(" clearBufferiv ")+((statusClearBufferiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearBufferiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearBufferiv) ? "true" : "false")+"\n";
  1517. status += std::string(" clearBufferuiv ")+((statusClearBufferuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearBufferuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearBufferuiv) ? "true" : "false")+"\n";
  1518. status += std::string(" colorMaski ")+((statusColorMaski == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusColorMaski == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glColorMaski) ? "true" : "false")+"\n";
  1519. status += std::string(" deleteFramebuffers ")+((statusDeleteFramebuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDeleteFramebuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDeleteFramebuffers) ? "true" : "false")+"\n";
  1520. status += std::string(" deleteRenderbuffers ")+((statusDeleteRenderbuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDeleteRenderbuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDeleteRenderbuffers) ? "true" : "false")+"\n";
  1521. status += std::string(" deleteVertexArrays ")+((statusDeleteVertexArrays == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDeleteVertexArrays == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDeleteVertexArrays) ? "true" : "false")+"\n";
  1522. status += std::string(" disablei ")+((statusDisablei == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDisablei == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDisablei) ? "true" : "false")+"\n";
  1523. status += std::string(" enablei ")+((statusEnablei == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusEnablei == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glEnablei) ? "true" : "false")+"\n";
  1524. status += std::string(" endConditionalRender ")+((statusEndConditionalRender == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusEndConditionalRender == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glEndConditionalRender) ? "true" : "false")+"\n";
  1525. status += std::string(" endTransformFeedback ")+((statusEndTransformFeedback == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusEndTransformFeedback == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glEndTransformFeedback) ? "true" : "false")+"\n";
  1526. status += std::string(" flushMappedBufferRange ")+((statusFlushMappedBufferRange == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusFlushMappedBufferRange == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glFlushMappedBufferRange) ? "true" : "false")+"\n";
  1527. status += std::string(" framebufferRenderbuffer ")+((statusFramebufferRenderbuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusFramebufferRenderbuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glFramebufferRenderbuffer) ? "true" : "false")+"\n";
  1528. status += std::string(" framebufferTexture1D ")+((statusFramebufferTexture1D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusFramebufferTexture1D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glFramebufferTexture1D) ? "true" : "false")+"\n";
  1529. status += std::string(" framebufferTexture2D ")+((statusFramebufferTexture2D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusFramebufferTexture2D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glFramebufferTexture2D) ? "true" : "false")+"\n";
  1530. status += std::string(" framebufferTexture3D ")+((statusFramebufferTexture3D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusFramebufferTexture3D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glFramebufferTexture3D) ? "true" : "false")+"\n";
  1531. status += std::string(" framebufferTextureLayer ")+((statusFramebufferTextureLayer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusFramebufferTextureLayer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glFramebufferTextureLayer) ? "true" : "false")+"\n";
  1532. status += std::string(" genFramebuffers ")+((statusGenFramebuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGenFramebuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGenFramebuffers) ? "true" : "false")+"\n";
  1533. status += std::string(" genRenderbuffers ")+((statusGenRenderbuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGenRenderbuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGenRenderbuffers) ? "true" : "false")+"\n";
  1534. status += std::string(" genVertexArrays ")+((statusGenVertexArrays == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGenVertexArrays == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGenVertexArrays) ? "true" : "false")+"\n";
  1535. status += std::string(" generateMipmap ")+((statusGenerateMipmap == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGenerateMipmap == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGenerateMipmap) ? "true" : "false")+"\n";
  1536. status += std::string(" getBooleani_v ")+((statusGetBooleani_v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetBooleani_v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetBooleani_v) ? "true" : "false")+"\n";
  1537. status += std::string(" getFragDataLocation ")+((statusGetFragDataLocation == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetFragDataLocation == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetFragDataLocation) ? "true" : "false")+"\n";
  1538. status += std::string(" getFramebufferAttachmentParameteriv ")+((statusGetFramebufferAttachmentParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetFramebufferAttachmentParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetFramebufferAttachmentParameteriv) ? "true" : "false")+"\n";
  1539. status += std::string(" getIntegeri_v ")+((statusGetIntegeri_v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetIntegeri_v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetIntegeri_v) ? "true" : "false")+"\n";
  1540. status += std::string(" getRenderbufferParameteriv ")+((statusGetRenderbufferParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetRenderbufferParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetRenderbufferParameteriv) ? "true" : "false")+"\n";
  1541. status += std::string(" getStringi ")+((statusGetStringi == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetStringi == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetStringi) ? "true" : "false")+"\n";
  1542. status += std::string(" getTexParameterIiv ")+((statusGetTexParameterIiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTexParameterIiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTexParameterIiv) ? "true" : "false")+"\n";
  1543. status += std::string(" getTexParameterIuiv ")+((statusGetTexParameterIuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTexParameterIuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTexParameterIuiv) ? "true" : "false")+"\n";
  1544. status += std::string(" getTransformFeedbackVarying ")+((statusGetTransformFeedbackVarying == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTransformFeedbackVarying == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTransformFeedbackVarying) ? "true" : "false")+"\n";
  1545. status += std::string(" getUniformuiv ")+((statusGetUniformuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetUniformuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetUniformuiv) ? "true" : "false")+"\n";
  1546. status += std::string(" getVertexAttribIiv ")+((statusGetVertexAttribIiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetVertexAttribIiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetVertexAttribIiv) ? "true" : "false")+"\n";
  1547. status += std::string(" getVertexAttribIuiv ")+((statusGetVertexAttribIuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetVertexAttribIuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetVertexAttribIuiv) ? "true" : "false")+"\n";
  1548. status += std::string(" isEnabledi ")+((statusIsEnabledi == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusIsEnabledi == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glIsEnabledi) ? "true" : "false")+"\n";
  1549. status += std::string(" isFramebuffer ")+((statusIsFramebuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusIsFramebuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glIsFramebuffer) ? "true" : "false")+"\n";
  1550. status += std::string(" isRenderbuffer ")+((statusIsRenderbuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusIsRenderbuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glIsRenderbuffer) ? "true" : "false")+"\n";
  1551. status += std::string(" isVertexArray ")+((statusIsVertexArray == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusIsVertexArray == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glIsVertexArray) ? "true" : "false")+"\n";
  1552. status += std::string(" mapBufferRange ")+((statusMapBufferRange == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusMapBufferRange == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glMapBufferRange) ? "true" : "false")+"\n";
  1553. status += std::string(" renderbufferStorage ")+((statusRenderbufferStorage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusRenderbufferStorage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glRenderbufferStorage) ? "true" : "false")+"\n";
  1554. status += std::string(" renderbufferStorageMultisample ")+((statusRenderbufferStorageMultisample == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusRenderbufferStorageMultisample == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glRenderbufferStorageMultisample) ? "true" : "false")+"\n";
  1555. status += std::string(" texParameterIiv ")+((statusTexParameterIiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexParameterIiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexParameterIiv) ? "true" : "false")+"\n";
  1556. status += std::string(" texParameterIuiv ")+((statusTexParameterIuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexParameterIuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexParameterIuiv) ? "true" : "false")+"\n";
  1557. status += std::string(" transformFeedbackVaryings ")+((statusTransformFeedbackVaryings == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTransformFeedbackVaryings == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTransformFeedbackVaryings) ? "true" : "false")+"\n";
  1558. status += std::string(" uniform1ui ")+((statusUniform1ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform1ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform1ui) ? "true" : "false")+"\n";
  1559. status += std::string(" uniform1uiv ")+((statusUniform1uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform1uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform1uiv) ? "true" : "false")+"\n";
  1560. status += std::string(" uniform2ui ")+((statusUniform2ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform2ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform2ui) ? "true" : "false")+"\n";
  1561. status += std::string(" uniform2uiv ")+((statusUniform2uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform2uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform2uiv) ? "true" : "false")+"\n";
  1562. status += std::string(" uniform3ui ")+((statusUniform3ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform3ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform3ui) ? "true" : "false")+"\n";
  1563. status += std::string(" uniform3uiv ")+((statusUniform3uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform3uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform3uiv) ? "true" : "false")+"\n";
  1564. status += std::string(" uniform4ui ")+((statusUniform4ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform4ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform4ui) ? "true" : "false")+"\n";
  1565. status += std::string(" uniform4uiv ")+((statusUniform4uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform4uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform4uiv) ? "true" : "false")+"\n";
  1566. status += std::string(" vertexAttribI1i ")+((statusVertexAttribI1i == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI1i == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI1i) ? "true" : "false")+"\n";
  1567. status += std::string(" vertexAttribI1iv ")+((statusVertexAttribI1iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI1iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI1iv) ? "true" : "false")+"\n";
  1568. status += std::string(" vertexAttribI1ui ")+((statusVertexAttribI1ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI1ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI1ui) ? "true" : "false")+"\n";
  1569. status += std::string(" vertexAttribI1uiv ")+((statusVertexAttribI1uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI1uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI1uiv) ? "true" : "false")+"\n";
  1570. status += std::string(" vertexAttribI2i ")+((statusVertexAttribI2i == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI2i == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI2i) ? "true" : "false")+"\n";
  1571. status += std::string(" vertexAttribI2iv ")+((statusVertexAttribI2iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI2iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI2iv) ? "true" : "false")+"\n";
  1572. status += std::string(" vertexAttribI2ui ")+((statusVertexAttribI2ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI2ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI2ui) ? "true" : "false")+"\n";
  1573. status += std::string(" vertexAttribI2uiv ")+((statusVertexAttribI2uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI2uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI2uiv) ? "true" : "false")+"\n";
  1574. status += std::string(" vertexAttribI3i ")+((statusVertexAttribI3i == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI3i == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI3i) ? "true" : "false")+"\n";
  1575. status += std::string(" vertexAttribI3iv ")+((statusVertexAttribI3iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI3iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI3iv) ? "true" : "false")+"\n";
  1576. status += std::string(" vertexAttribI3ui ")+((statusVertexAttribI3ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI3ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI3ui) ? "true" : "false")+"\n";
  1577. status += std::string(" vertexAttribI3uiv ")+((statusVertexAttribI3uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI3uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI3uiv) ? "true" : "false")+"\n";
  1578. status += std::string(" vertexAttribI4bv ")+((statusVertexAttribI4bv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI4bv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI4bv) ? "true" : "false")+"\n";
  1579. status += std::string(" vertexAttribI4i ")+((statusVertexAttribI4i == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI4i == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI4i) ? "true" : "false")+"\n";
  1580. status += std::string(" vertexAttribI4iv ")+((statusVertexAttribI4iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI4iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI4iv) ? "true" : "false")+"\n";
  1581. status += std::string(" vertexAttribI4sv ")+((statusVertexAttribI4sv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI4sv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI4sv) ? "true" : "false")+"\n";
  1582. status += std::string(" vertexAttribI4ubv ")+((statusVertexAttribI4ubv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI4ubv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI4ubv) ? "true" : "false")+"\n";
  1583. status += std::string(" vertexAttribI4ui ")+((statusVertexAttribI4ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI4ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI4ui) ? "true" : "false")+"\n";
  1584. status += std::string(" vertexAttribI4uiv ")+((statusVertexAttribI4uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI4uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI4uiv) ? "true" : "false")+"\n";
  1585. status += std::string(" vertexAttribI4usv ")+((statusVertexAttribI4usv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribI4usv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribI4usv) ? "true" : "false")+"\n";
  1586. status += std::string(" vertexAttribIPointer ")+((statusVertexAttribIPointer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribIPointer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribIPointer) ? "true" : "false")+"\n";
  1587. status += "\n";
  1588. status += "GL_VERSION_3_1\n";
  1589. status += std::string(" copyBufferSubData ")+((statusCopyBufferSubData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCopyBufferSubData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCopyBufferSubData) ? "true" : "false")+"\n";
  1590. status += std::string(" drawArraysInstanced ")+((statusDrawArraysInstanced == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawArraysInstanced == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawArraysInstanced) ? "true" : "false")+"\n";
  1591. status += std::string(" drawElementsInstanced ")+((statusDrawElementsInstanced == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawElementsInstanced == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawElementsInstanced) ? "true" : "false")+"\n";
  1592. status += std::string(" getActiveUniformBlockName ")+((statusGetActiveUniformBlockName == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetActiveUniformBlockName == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetActiveUniformBlockName) ? "true" : "false")+"\n";
  1593. status += std::string(" getActiveUniformBlockiv ")+((statusGetActiveUniformBlockiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetActiveUniformBlockiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetActiveUniformBlockiv) ? "true" : "false")+"\n";
  1594. status += std::string(" getActiveUniformName ")+((statusGetActiveUniformName == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetActiveUniformName == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetActiveUniformName) ? "true" : "false")+"\n";
  1595. status += std::string(" getActiveUniformsiv ")+((statusGetActiveUniformsiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetActiveUniformsiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetActiveUniformsiv) ? "true" : "false")+"\n";
  1596. status += std::string(" getUniformBlockIndex ")+((statusGetUniformBlockIndex == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetUniformBlockIndex == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetUniformBlockIndex) ? "true" : "false")+"\n";
  1597. status += std::string(" getUniformIndices ")+((statusGetUniformIndices == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetUniformIndices == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetUniformIndices) ? "true" : "false")+"\n";
  1598. status += std::string(" primitiveRestartIndex ")+((statusPrimitiveRestartIndex == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusPrimitiveRestartIndex == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glPrimitiveRestartIndex) ? "true" : "false")+"\n";
  1599. status += std::string(" texBuffer ")+((statusTexBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexBuffer) ? "true" : "false")+"\n";
  1600. status += std::string(" uniformBlockBinding ")+((statusUniformBlockBinding == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformBlockBinding == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformBlockBinding) ? "true" : "false")+"\n";
  1601. status += "\n";
  1602. status += "GL_VERSION_3_2\n";
  1603. status += std::string(" clientWaitSync ")+((statusClientWaitSync == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClientWaitSync == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClientWaitSync) ? "true" : "false")+"\n";
  1604. status += std::string(" deleteSync ")+((statusDeleteSync == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDeleteSync == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDeleteSync) ? "true" : "false")+"\n";
  1605. status += std::string(" drawElementsBaseVertex ")+((statusDrawElementsBaseVertex == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawElementsBaseVertex == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawElementsBaseVertex) ? "true" : "false")+"\n";
  1606. status += std::string(" drawElementsInstancedBaseVertex ")+((statusDrawElementsInstancedBaseVertex == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawElementsInstancedBaseVertex == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawElementsInstancedBaseVertex) ? "true" : "false")+"\n";
  1607. status += std::string(" drawRangeElementsBaseVertex ")+((statusDrawRangeElementsBaseVertex == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawRangeElementsBaseVertex == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawRangeElementsBaseVertex) ? "true" : "false")+"\n";
  1608. status += std::string(" fenceSync ")+((statusFenceSync == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusFenceSync == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glFenceSync) ? "true" : "false")+"\n";
  1609. status += std::string(" framebufferTexture ")+((statusFramebufferTexture == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusFramebufferTexture == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glFramebufferTexture) ? "true" : "false")+"\n";
  1610. status += std::string(" getBufferParameteri64v ")+((statusGetBufferParameteri64v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetBufferParameteri64v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetBufferParameteri64v) ? "true" : "false")+"\n";
  1611. status += std::string(" getInteger64i_v ")+((statusGetInteger64i_v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetInteger64i_v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetInteger64i_v) ? "true" : "false")+"\n";
  1612. status += std::string(" getInteger64v ")+((statusGetInteger64v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetInteger64v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetInteger64v) ? "true" : "false")+"\n";
  1613. status += std::string(" getMultisamplefv ")+((statusGetMultisamplefv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetMultisamplefv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetMultisamplefv) ? "true" : "false")+"\n";
  1614. status += std::string(" getSynciv ")+((statusGetSynciv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetSynciv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetSynciv) ? "true" : "false")+"\n";
  1615. status += std::string(" isSync ")+((statusIsSync == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusIsSync == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glIsSync) ? "true" : "false")+"\n";
  1616. status += std::string(" multiDrawElementsBaseVertex ")+((statusMultiDrawElementsBaseVertex == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusMultiDrawElementsBaseVertex == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glMultiDrawElementsBaseVertex) ? "true" : "false")+"\n";
  1617. status += std::string(" provokingVertex ")+((statusProvokingVertex == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProvokingVertex == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProvokingVertex) ? "true" : "false")+"\n";
  1618. status += std::string(" sampleMaski ")+((statusSampleMaski == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusSampleMaski == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glSampleMaski) ? "true" : "false")+"\n";
  1619. status += std::string(" texImage2DMultisample ")+((statusTexImage2DMultisample == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexImage2DMultisample == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexImage2DMultisample) ? "true" : "false")+"\n";
  1620. status += std::string(" texImage3DMultisample ")+((statusTexImage3DMultisample == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexImage3DMultisample == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexImage3DMultisample) ? "true" : "false")+"\n";
  1621. status += std::string(" waitSync ")+((statusWaitSync == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusWaitSync == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glWaitSync) ? "true" : "false")+"\n";
  1622. status += "\n";
  1623. status += "GL_VERSION_3_3\n";
  1624. status += std::string(" bindFragDataLocationIndexed ")+((statusBindFragDataLocationIndexed == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindFragDataLocationIndexed == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindFragDataLocationIndexed) ? "true" : "false")+"\n";
  1625. status += std::string(" bindSampler ")+((statusBindSampler == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindSampler == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindSampler) ? "true" : "false")+"\n";
  1626. status += std::string(" deleteSamplers ")+((statusDeleteSamplers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDeleteSamplers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDeleteSamplers) ? "true" : "false")+"\n";
  1627. status += std::string(" genSamplers ")+((statusGenSamplers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGenSamplers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGenSamplers) ? "true" : "false")+"\n";
  1628. status += std::string(" getFragDataIndex ")+((statusGetFragDataIndex == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetFragDataIndex == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetFragDataIndex) ? "true" : "false")+"\n";
  1629. status += std::string(" getQueryObjecti64v ")+((statusGetQueryObjecti64v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetQueryObjecti64v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetQueryObjecti64v) ? "true" : "false")+"\n";
  1630. status += std::string(" getQueryObjectui64v ")+((statusGetQueryObjectui64v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetQueryObjectui64v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetQueryObjectui64v) ? "true" : "false")+"\n";
  1631. status += std::string(" getSamplerParameterIiv ")+((statusGetSamplerParameterIiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetSamplerParameterIiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetSamplerParameterIiv) ? "true" : "false")+"\n";
  1632. status += std::string(" getSamplerParameterIuiv ")+((statusGetSamplerParameterIuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetSamplerParameterIuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetSamplerParameterIuiv) ? "true" : "false")+"\n";
  1633. status += std::string(" getSamplerParameterfv ")+((statusGetSamplerParameterfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetSamplerParameterfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetSamplerParameterfv) ? "true" : "false")+"\n";
  1634. status += std::string(" getSamplerParameteriv ")+((statusGetSamplerParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetSamplerParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetSamplerParameteriv) ? "true" : "false")+"\n";
  1635. status += std::string(" isSampler ")+((statusIsSampler == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusIsSampler == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glIsSampler) ? "true" : "false")+"\n";
  1636. status += std::string(" queryCounter ")+((statusQueryCounter == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusQueryCounter == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glQueryCounter) ? "true" : "false")+"\n";
  1637. status += std::string(" samplerParameterIiv ")+((statusSamplerParameterIiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusSamplerParameterIiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glSamplerParameterIiv) ? "true" : "false")+"\n";
  1638. status += std::string(" samplerParameterIuiv ")+((statusSamplerParameterIuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusSamplerParameterIuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glSamplerParameterIuiv) ? "true" : "false")+"\n";
  1639. status += std::string(" samplerParameterf ")+((statusSamplerParameterf == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusSamplerParameterf == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glSamplerParameterf) ? "true" : "false")+"\n";
  1640. status += std::string(" samplerParameterfv ")+((statusSamplerParameterfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusSamplerParameterfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glSamplerParameterfv) ? "true" : "false")+"\n";
  1641. status += std::string(" samplerParameteri ")+((statusSamplerParameteri == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusSamplerParameteri == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glSamplerParameteri) ? "true" : "false")+"\n";
  1642. status += std::string(" samplerParameteriv ")+((statusSamplerParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusSamplerParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glSamplerParameteriv) ? "true" : "false")+"\n";
  1643. status += std::string(" vertexAttribDivisor ")+((statusVertexAttribDivisor == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribDivisor == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribDivisor) ? "true" : "false")+"\n";
  1644. status += std::string(" vertexAttribP1ui ")+((statusVertexAttribP1ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribP1ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribP1ui) ? "true" : "false")+"\n";
  1645. status += std::string(" vertexAttribP1uiv ")+((statusVertexAttribP1uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribP1uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribP1uiv) ? "true" : "false")+"\n";
  1646. status += std::string(" vertexAttribP2ui ")+((statusVertexAttribP2ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribP2ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribP2ui) ? "true" : "false")+"\n";
  1647. status += std::string(" vertexAttribP2uiv ")+((statusVertexAttribP2uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribP2uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribP2uiv) ? "true" : "false")+"\n";
  1648. status += std::string(" vertexAttribP3ui ")+((statusVertexAttribP3ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribP3ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribP3ui) ? "true" : "false")+"\n";
  1649. status += std::string(" vertexAttribP3uiv ")+((statusVertexAttribP3uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribP3uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribP3uiv) ? "true" : "false")+"\n";
  1650. status += std::string(" vertexAttribP4ui ")+((statusVertexAttribP4ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribP4ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribP4ui) ? "true" : "false")+"\n";
  1651. status += std::string(" vertexAttribP4uiv ")+((statusVertexAttribP4uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribP4uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribP4uiv) ? "true" : "false")+"\n";
  1652. status += "\n";
  1653. status += "GL_VERSION_4_0\n";
  1654. status += std::string(" beginQueryIndexed ")+((statusBeginQueryIndexed == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBeginQueryIndexed == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBeginQueryIndexed) ? "true" : "false")+"\n";
  1655. status += std::string(" bindTransformFeedback ")+((statusBindTransformFeedback == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindTransformFeedback == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindTransformFeedback) ? "true" : "false")+"\n";
  1656. status += std::string(" blendEquationSeparatei ")+((statusBlendEquationSeparatei == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBlendEquationSeparatei == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBlendEquationSeparatei) ? "true" : "false")+"\n";
  1657. status += std::string(" blendEquationi ")+((statusBlendEquationi == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBlendEquationi == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBlendEquationi) ? "true" : "false")+"\n";
  1658. status += std::string(" blendFuncSeparatei ")+((statusBlendFuncSeparatei == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBlendFuncSeparatei == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBlendFuncSeparatei) ? "true" : "false")+"\n";
  1659. status += std::string(" blendFunci ")+((statusBlendFunci == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBlendFunci == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBlendFunci) ? "true" : "false")+"\n";
  1660. status += std::string(" deleteTransformFeedbacks ")+((statusDeleteTransformFeedbacks == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDeleteTransformFeedbacks == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDeleteTransformFeedbacks) ? "true" : "false")+"\n";
  1661. status += std::string(" drawArraysIndirect ")+((statusDrawArraysIndirect == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawArraysIndirect == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawArraysIndirect) ? "true" : "false")+"\n";
  1662. status += std::string(" drawElementsIndirect ")+((statusDrawElementsIndirect == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawElementsIndirect == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawElementsIndirect) ? "true" : "false")+"\n";
  1663. status += std::string(" drawTransformFeedback ")+((statusDrawTransformFeedback == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawTransformFeedback == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawTransformFeedback) ? "true" : "false")+"\n";
  1664. status += std::string(" drawTransformFeedbackStream ")+((statusDrawTransformFeedbackStream == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawTransformFeedbackStream == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawTransformFeedbackStream) ? "true" : "false")+"\n";
  1665. status += std::string(" endQueryIndexed ")+((statusEndQueryIndexed == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusEndQueryIndexed == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glEndQueryIndexed) ? "true" : "false")+"\n";
  1666. status += std::string(" genTransformFeedbacks ")+((statusGenTransformFeedbacks == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGenTransformFeedbacks == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGenTransformFeedbacks) ? "true" : "false")+"\n";
  1667. status += std::string(" getActiveSubroutineName ")+((statusGetActiveSubroutineName == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetActiveSubroutineName == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetActiveSubroutineName) ? "true" : "false")+"\n";
  1668. status += std::string(" getActiveSubroutineUniformName ")+((statusGetActiveSubroutineUniformName == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetActiveSubroutineUniformName == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetActiveSubroutineUniformName) ? "true" : "false")+"\n";
  1669. status += std::string(" getActiveSubroutineUniformiv ")+((statusGetActiveSubroutineUniformiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetActiveSubroutineUniformiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetActiveSubroutineUniformiv) ? "true" : "false")+"\n";
  1670. status += std::string(" getProgramStageiv ")+((statusGetProgramStageiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetProgramStageiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetProgramStageiv) ? "true" : "false")+"\n";
  1671. status += std::string(" getQueryIndexediv ")+((statusGetQueryIndexediv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetQueryIndexediv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetQueryIndexediv) ? "true" : "false")+"\n";
  1672. status += std::string(" getSubroutineIndex ")+((statusGetSubroutineIndex == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetSubroutineIndex == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetSubroutineIndex) ? "true" : "false")+"\n";
  1673. status += std::string(" getSubroutineUniformLocation ")+((statusGetSubroutineUniformLocation == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetSubroutineUniformLocation == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetSubroutineUniformLocation) ? "true" : "false")+"\n";
  1674. status += std::string(" getUniformSubroutineuiv ")+((statusGetUniformSubroutineuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetUniformSubroutineuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetUniformSubroutineuiv) ? "true" : "false")+"\n";
  1675. status += std::string(" getUniformdv ")+((statusGetUniformdv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetUniformdv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetUniformdv) ? "true" : "false")+"\n";
  1676. status += std::string(" isTransformFeedback ")+((statusIsTransformFeedback == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusIsTransformFeedback == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glIsTransformFeedback) ? "true" : "false")+"\n";
  1677. status += std::string(" minSampleShading ")+((statusMinSampleShading == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusMinSampleShading == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glMinSampleShading) ? "true" : "false")+"\n";
  1678. status += std::string(" patchParameterfv ")+((statusPatchParameterfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusPatchParameterfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glPatchParameterfv) ? "true" : "false")+"\n";
  1679. status += std::string(" patchParameteri ")+((statusPatchParameteri == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusPatchParameteri == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glPatchParameteri) ? "true" : "false")+"\n";
  1680. status += std::string(" pauseTransformFeedback ")+((statusPauseTransformFeedback == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusPauseTransformFeedback == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glPauseTransformFeedback) ? "true" : "false")+"\n";
  1681. status += std::string(" resumeTransformFeedback ")+((statusResumeTransformFeedback == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusResumeTransformFeedback == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glResumeTransformFeedback) ? "true" : "false")+"\n";
  1682. status += std::string(" uniform1d ")+((statusUniform1d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform1d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform1d) ? "true" : "false")+"\n";
  1683. status += std::string(" uniform1dv ")+((statusUniform1dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform1dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform1dv) ? "true" : "false")+"\n";
  1684. status += std::string(" uniform2d ")+((statusUniform2d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform2d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform2d) ? "true" : "false")+"\n";
  1685. status += std::string(" uniform2dv ")+((statusUniform2dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform2dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform2dv) ? "true" : "false")+"\n";
  1686. status += std::string(" uniform3d ")+((statusUniform3d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform3d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform3d) ? "true" : "false")+"\n";
  1687. status += std::string(" uniform3dv ")+((statusUniform3dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform3dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform3dv) ? "true" : "false")+"\n";
  1688. status += std::string(" uniform4d ")+((statusUniform4d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform4d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform4d) ? "true" : "false")+"\n";
  1689. status += std::string(" uniform4dv ")+((statusUniform4dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniform4dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniform4dv) ? "true" : "false")+"\n";
  1690. status += std::string(" uniformMatrix2dv ")+((statusUniformMatrix2dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix2dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix2dv) ? "true" : "false")+"\n";
  1691. status += std::string(" uniformMatrix2x3dv ")+((statusUniformMatrix2x3dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix2x3dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix2x3dv) ? "true" : "false")+"\n";
  1692. status += std::string(" uniformMatrix2x4dv ")+((statusUniformMatrix2x4dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix2x4dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix2x4dv) ? "true" : "false")+"\n";
  1693. status += std::string(" uniformMatrix3dv ")+((statusUniformMatrix3dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix3dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix3dv) ? "true" : "false")+"\n";
  1694. status += std::string(" uniformMatrix3x2dv ")+((statusUniformMatrix3x2dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix3x2dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix3x2dv) ? "true" : "false")+"\n";
  1695. status += std::string(" uniformMatrix3x4dv ")+((statusUniformMatrix3x4dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix3x4dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix3x4dv) ? "true" : "false")+"\n";
  1696. status += std::string(" uniformMatrix4dv ")+((statusUniformMatrix4dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix4dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix4dv) ? "true" : "false")+"\n";
  1697. status += std::string(" uniformMatrix4x2dv ")+((statusUniformMatrix4x2dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix4x2dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix4x2dv) ? "true" : "false")+"\n";
  1698. status += std::string(" uniformMatrix4x3dv ")+((statusUniformMatrix4x3dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformMatrix4x3dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformMatrix4x3dv) ? "true" : "false")+"\n";
  1699. status += std::string(" uniformSubroutinesuiv ")+((statusUniformSubroutinesuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUniformSubroutinesuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUniformSubroutinesuiv) ? "true" : "false")+"\n";
  1700. status += "\n";
  1701. status += "GL_VERSION_4_1\n";
  1702. status += std::string(" activeShaderProgram ")+((statusActiveShaderProgram == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusActiveShaderProgram == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glActiveShaderProgram) ? "true" : "false")+"\n";
  1703. status += std::string(" bindProgramPipeline ")+((statusBindProgramPipeline == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindProgramPipeline == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindProgramPipeline) ? "true" : "false")+"\n";
  1704. status += std::string(" clearDepthf ")+((statusClearDepthf == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearDepthf == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearDepthf) ? "true" : "false")+"\n";
  1705. status += std::string(" createShaderProgramv ")+((statusCreateShaderProgramv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCreateShaderProgramv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCreateShaderProgramv) ? "true" : "false")+"\n";
  1706. status += std::string(" deleteProgramPipelines ")+((statusDeleteProgramPipelines == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDeleteProgramPipelines == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDeleteProgramPipelines) ? "true" : "false")+"\n";
  1707. status += std::string(" depthRangeArrayv ")+((statusDepthRangeArrayv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDepthRangeArrayv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDepthRangeArrayv) ? "true" : "false")+"\n";
  1708. status += std::string(" depthRangeIndexed ")+((statusDepthRangeIndexed == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDepthRangeIndexed == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDepthRangeIndexed) ? "true" : "false")+"\n";
  1709. status += std::string(" depthRangef ")+((statusDepthRangef == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDepthRangef == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDepthRangef) ? "true" : "false")+"\n";
  1710. status += std::string(" genProgramPipelines ")+((statusGenProgramPipelines == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGenProgramPipelines == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGenProgramPipelines) ? "true" : "false")+"\n";
  1711. status += std::string(" getDoublei_v ")+((statusGetDoublei_v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetDoublei_v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetDoublei_v) ? "true" : "false")+"\n";
  1712. status += std::string(" getFloati_v ")+((statusGetFloati_v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetFloati_v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetFloati_v) ? "true" : "false")+"\n";
  1713. status += std::string(" getProgramBinary ")+((statusGetProgramBinary == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetProgramBinary == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetProgramBinary) ? "true" : "false")+"\n";
  1714. status += std::string(" getProgramPipelineInfoLog ")+((statusGetProgramPipelineInfoLog == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetProgramPipelineInfoLog == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetProgramPipelineInfoLog) ? "true" : "false")+"\n";
  1715. status += std::string(" getProgramPipelineiv ")+((statusGetProgramPipelineiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetProgramPipelineiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetProgramPipelineiv) ? "true" : "false")+"\n";
  1716. status += std::string(" getShaderPrecisionFormat ")+((statusGetShaderPrecisionFormat == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetShaderPrecisionFormat == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetShaderPrecisionFormat) ? "true" : "false")+"\n";
  1717. status += std::string(" getVertexAttribLdv ")+((statusGetVertexAttribLdv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetVertexAttribLdv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetVertexAttribLdv) ? "true" : "false")+"\n";
  1718. status += std::string(" isProgramPipeline ")+((statusIsProgramPipeline == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusIsProgramPipeline == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glIsProgramPipeline) ? "true" : "false")+"\n";
  1719. status += std::string(" programBinary ")+((statusProgramBinary == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramBinary == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramBinary) ? "true" : "false")+"\n";
  1720. status += std::string(" programParameteri ")+((statusProgramParameteri == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramParameteri == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramParameteri) ? "true" : "false")+"\n";
  1721. status += std::string(" programUniform1d ")+((statusProgramUniform1d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform1d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform1d) ? "true" : "false")+"\n";
  1722. status += std::string(" programUniform1dv ")+((statusProgramUniform1dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform1dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform1dv) ? "true" : "false")+"\n";
  1723. status += std::string(" programUniform1f ")+((statusProgramUniform1f == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform1f == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform1f) ? "true" : "false")+"\n";
  1724. status += std::string(" programUniform1fv ")+((statusProgramUniform1fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform1fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform1fv) ? "true" : "false")+"\n";
  1725. status += std::string(" programUniform1i ")+((statusProgramUniform1i == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform1i == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform1i) ? "true" : "false")+"\n";
  1726. status += std::string(" programUniform1iv ")+((statusProgramUniform1iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform1iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform1iv) ? "true" : "false")+"\n";
  1727. status += std::string(" programUniform1ui ")+((statusProgramUniform1ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform1ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform1ui) ? "true" : "false")+"\n";
  1728. status += std::string(" programUniform1uiv ")+((statusProgramUniform1uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform1uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform1uiv) ? "true" : "false")+"\n";
  1729. status += std::string(" programUniform2d ")+((statusProgramUniform2d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform2d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform2d) ? "true" : "false")+"\n";
  1730. status += std::string(" programUniform2dv ")+((statusProgramUniform2dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform2dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform2dv) ? "true" : "false")+"\n";
  1731. status += std::string(" programUniform2f ")+((statusProgramUniform2f == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform2f == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform2f) ? "true" : "false")+"\n";
  1732. status += std::string(" programUniform2fv ")+((statusProgramUniform2fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform2fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform2fv) ? "true" : "false")+"\n";
  1733. status += std::string(" programUniform2i ")+((statusProgramUniform2i == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform2i == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform2i) ? "true" : "false")+"\n";
  1734. status += std::string(" programUniform2iv ")+((statusProgramUniform2iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform2iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform2iv) ? "true" : "false")+"\n";
  1735. status += std::string(" programUniform2ui ")+((statusProgramUniform2ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform2ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform2ui) ? "true" : "false")+"\n";
  1736. status += std::string(" programUniform2uiv ")+((statusProgramUniform2uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform2uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform2uiv) ? "true" : "false")+"\n";
  1737. status += std::string(" programUniform3d ")+((statusProgramUniform3d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform3d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform3d) ? "true" : "false")+"\n";
  1738. status += std::string(" programUniform3dv ")+((statusProgramUniform3dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform3dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform3dv) ? "true" : "false")+"\n";
  1739. status += std::string(" programUniform3f ")+((statusProgramUniform3f == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform3f == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform3f) ? "true" : "false")+"\n";
  1740. status += std::string(" programUniform3fv ")+((statusProgramUniform3fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform3fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform3fv) ? "true" : "false")+"\n";
  1741. status += std::string(" programUniform3i ")+((statusProgramUniform3i == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform3i == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform3i) ? "true" : "false")+"\n";
  1742. status += std::string(" programUniform3iv ")+((statusProgramUniform3iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform3iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform3iv) ? "true" : "false")+"\n";
  1743. status += std::string(" programUniform3ui ")+((statusProgramUniform3ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform3ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform3ui) ? "true" : "false")+"\n";
  1744. status += std::string(" programUniform3uiv ")+((statusProgramUniform3uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform3uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform3uiv) ? "true" : "false")+"\n";
  1745. status += std::string(" programUniform4d ")+((statusProgramUniform4d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform4d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform4d) ? "true" : "false")+"\n";
  1746. status += std::string(" programUniform4dv ")+((statusProgramUniform4dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform4dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform4dv) ? "true" : "false")+"\n";
  1747. status += std::string(" programUniform4f ")+((statusProgramUniform4f == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform4f == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform4f) ? "true" : "false")+"\n";
  1748. status += std::string(" programUniform4fv ")+((statusProgramUniform4fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform4fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform4fv) ? "true" : "false")+"\n";
  1749. status += std::string(" programUniform4i ")+((statusProgramUniform4i == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform4i == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform4i) ? "true" : "false")+"\n";
  1750. status += std::string(" programUniform4iv ")+((statusProgramUniform4iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform4iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform4iv) ? "true" : "false")+"\n";
  1751. status += std::string(" programUniform4ui ")+((statusProgramUniform4ui == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform4ui == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform4ui) ? "true" : "false")+"\n";
  1752. status += std::string(" programUniform4uiv ")+((statusProgramUniform4uiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniform4uiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniform4uiv) ? "true" : "false")+"\n";
  1753. status += std::string(" programUniformMatrix2dv ")+((statusProgramUniformMatrix2dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix2dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix2dv) ? "true" : "false")+"\n";
  1754. status += std::string(" programUniformMatrix2fv ")+((statusProgramUniformMatrix2fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix2fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix2fv) ? "true" : "false")+"\n";
  1755. status += std::string(" programUniformMatrix2x3dv ")+((statusProgramUniformMatrix2x3dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix2x3dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix2x3dv) ? "true" : "false")+"\n";
  1756. status += std::string(" programUniformMatrix2x3fv ")+((statusProgramUniformMatrix2x3fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix2x3fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix2x3fv) ? "true" : "false")+"\n";
  1757. status += std::string(" programUniformMatrix2x4dv ")+((statusProgramUniformMatrix2x4dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix2x4dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix2x4dv) ? "true" : "false")+"\n";
  1758. status += std::string(" programUniformMatrix2x4fv ")+((statusProgramUniformMatrix2x4fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix2x4fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix2x4fv) ? "true" : "false")+"\n";
  1759. status += std::string(" programUniformMatrix3dv ")+((statusProgramUniformMatrix3dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix3dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix3dv) ? "true" : "false")+"\n";
  1760. status += std::string(" programUniformMatrix3fv ")+((statusProgramUniformMatrix3fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix3fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix3fv) ? "true" : "false")+"\n";
  1761. status += std::string(" programUniformMatrix3x2dv ")+((statusProgramUniformMatrix3x2dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix3x2dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix3x2dv) ? "true" : "false")+"\n";
  1762. status += std::string(" programUniformMatrix3x2fv ")+((statusProgramUniformMatrix3x2fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix3x2fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix3x2fv) ? "true" : "false")+"\n";
  1763. status += std::string(" programUniformMatrix3x4dv ")+((statusProgramUniformMatrix3x4dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix3x4dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix3x4dv) ? "true" : "false")+"\n";
  1764. status += std::string(" programUniformMatrix3x4fv ")+((statusProgramUniformMatrix3x4fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix3x4fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix3x4fv) ? "true" : "false")+"\n";
  1765. status += std::string(" programUniformMatrix4dv ")+((statusProgramUniformMatrix4dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix4dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix4dv) ? "true" : "false")+"\n";
  1766. status += std::string(" programUniformMatrix4fv ")+((statusProgramUniformMatrix4fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix4fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix4fv) ? "true" : "false")+"\n";
  1767. status += std::string(" programUniformMatrix4x2dv ")+((statusProgramUniformMatrix4x2dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix4x2dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix4x2dv) ? "true" : "false")+"\n";
  1768. status += std::string(" programUniformMatrix4x2fv ")+((statusProgramUniformMatrix4x2fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix4x2fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix4x2fv) ? "true" : "false")+"\n";
  1769. status += std::string(" programUniformMatrix4x3dv ")+((statusProgramUniformMatrix4x3dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix4x3dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix4x3dv) ? "true" : "false")+"\n";
  1770. status += std::string(" programUniformMatrix4x3fv ")+((statusProgramUniformMatrix4x3fv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusProgramUniformMatrix4x3fv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glProgramUniformMatrix4x3fv) ? "true" : "false")+"\n";
  1771. status += std::string(" releaseShaderCompiler ")+((statusReleaseShaderCompiler == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusReleaseShaderCompiler == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glReleaseShaderCompiler) ? "true" : "false")+"\n";
  1772. status += std::string(" scissorArrayv ")+((statusScissorArrayv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusScissorArrayv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glScissorArrayv) ? "true" : "false")+"\n";
  1773. status += std::string(" scissorIndexed ")+((statusScissorIndexed == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusScissorIndexed == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glScissorIndexed) ? "true" : "false")+"\n";
  1774. status += std::string(" scissorIndexedv ")+((statusScissorIndexedv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusScissorIndexedv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glScissorIndexedv) ? "true" : "false")+"\n";
  1775. status += std::string(" shaderBinary ")+((statusShaderBinary == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusShaderBinary == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glShaderBinary) ? "true" : "false")+"\n";
  1776. status += std::string(" useProgramStages ")+((statusUseProgramStages == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUseProgramStages == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUseProgramStages) ? "true" : "false")+"\n";
  1777. status += std::string(" validateProgramPipeline ")+((statusValidateProgramPipeline == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusValidateProgramPipeline == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glValidateProgramPipeline) ? "true" : "false")+"\n";
  1778. status += std::string(" vertexAttribL1d ")+((statusVertexAttribL1d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribL1d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribL1d) ? "true" : "false")+"\n";
  1779. status += std::string(" vertexAttribL1dv ")+((statusVertexAttribL1dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribL1dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribL1dv) ? "true" : "false")+"\n";
  1780. status += std::string(" vertexAttribL2d ")+((statusVertexAttribL2d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribL2d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribL2d) ? "true" : "false")+"\n";
  1781. status += std::string(" vertexAttribL2dv ")+((statusVertexAttribL2dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribL2dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribL2dv) ? "true" : "false")+"\n";
  1782. status += std::string(" vertexAttribL3d ")+((statusVertexAttribL3d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribL3d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribL3d) ? "true" : "false")+"\n";
  1783. status += std::string(" vertexAttribL3dv ")+((statusVertexAttribL3dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribL3dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribL3dv) ? "true" : "false")+"\n";
  1784. status += std::string(" vertexAttribL4d ")+((statusVertexAttribL4d == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribL4d == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribL4d) ? "true" : "false")+"\n";
  1785. status += std::string(" vertexAttribL4dv ")+((statusVertexAttribL4dv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribL4dv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribL4dv) ? "true" : "false")+"\n";
  1786. status += std::string(" vertexAttribLPointer ")+((statusVertexAttribLPointer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribLPointer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribLPointer) ? "true" : "false")+"\n";
  1787. status += std::string(" viewportArrayv ")+((statusViewportArrayv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusViewportArrayv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glViewportArrayv) ? "true" : "false")+"\n";
  1788. status += std::string(" viewportIndexedf ")+((statusViewportIndexedf == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusViewportIndexedf == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glViewportIndexedf) ? "true" : "false")+"\n";
  1789. status += std::string(" viewportIndexedfv ")+((statusViewportIndexedfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusViewportIndexedfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glViewportIndexedfv) ? "true" : "false")+"\n";
  1790. status += "\n";
  1791. status += "GL_VERSION_4_2\n";
  1792. status += std::string(" bindImageTexture ")+((statusBindImageTexture == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindImageTexture == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindImageTexture) ? "true" : "false")+"\n";
  1793. status += std::string(" drawArraysInstancedBaseInstance ")+((statusDrawArraysInstancedBaseInstance == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawArraysInstancedBaseInstance == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawArraysInstancedBaseInstance) ? "true" : "false")+"\n";
  1794. status += std::string(" drawElementsInstancedBaseInstance ")+((statusDrawElementsInstancedBaseInstance == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawElementsInstancedBaseInstance == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawElementsInstancedBaseInstance) ? "true" : "false")+"\n";
  1795. status += std::string(" drawElementsInstancedBaseVertexBaseInstance ")+((statusDrawElementsInstancedBaseVertexBaseInstance == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawElementsInstancedBaseVertexBaseInstance == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawElementsInstancedBaseVertexBaseInstance) ? "true" : "false")+"\n";
  1796. status += std::string(" drawTransformFeedbackInstanced ")+((statusDrawTransformFeedbackInstanced == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawTransformFeedbackInstanced == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawTransformFeedbackInstanced) ? "true" : "false")+"\n";
  1797. status += std::string(" drawTransformFeedbackStreamInstanced ")+((statusDrawTransformFeedbackStreamInstanced == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDrawTransformFeedbackStreamInstanced == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDrawTransformFeedbackStreamInstanced) ? "true" : "false")+"\n";
  1798. status += std::string(" getActiveAtomicCounterBufferiv ")+((statusGetActiveAtomicCounterBufferiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetActiveAtomicCounterBufferiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetActiveAtomicCounterBufferiv) ? "true" : "false")+"\n";
  1799. status += std::string(" getInternalformativ ")+((statusGetInternalformativ == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetInternalformativ == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetInternalformativ) ? "true" : "false")+"\n";
  1800. status += std::string(" memoryBarrier ")+((statusMemoryBarrier == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusMemoryBarrier == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glMemoryBarrier) ? "true" : "false")+"\n";
  1801. status += std::string(" texStorage1D ")+((statusTexStorage1D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexStorage1D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexStorage1D) ? "true" : "false")+"\n";
  1802. status += std::string(" texStorage2D ")+((statusTexStorage2D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexStorage2D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexStorage2D) ? "true" : "false")+"\n";
  1803. status += std::string(" texStorage3D ")+((statusTexStorage3D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexStorage3D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexStorage3D) ? "true" : "false")+"\n";
  1804. status += "\n";
  1805. status += "GL_VERSION_4_3\n";
  1806. status += std::string(" bindVertexBuffer ")+((statusBindVertexBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindVertexBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindVertexBuffer) ? "true" : "false")+"\n";
  1807. status += std::string(" clearBufferData ")+((statusClearBufferData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearBufferData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearBufferData) ? "true" : "false")+"\n";
  1808. status += std::string(" clearBufferSubData ")+((statusClearBufferSubData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearBufferSubData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearBufferSubData) ? "true" : "false")+"\n";
  1809. status += std::string(" copyImageSubData ")+((statusCopyImageSubData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCopyImageSubData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCopyImageSubData) ? "true" : "false")+"\n";
  1810. status += std::string(" debugMessageCallback ")+((statusDebugMessageCallback == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDebugMessageCallback == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDebugMessageCallback) ? "true" : "false")+"\n";
  1811. status += std::string(" debugMessageControl ")+((statusDebugMessageControl == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDebugMessageControl == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDebugMessageControl) ? "true" : "false")+"\n";
  1812. status += std::string(" debugMessageInsert ")+((statusDebugMessageInsert == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDebugMessageInsert == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDebugMessageInsert) ? "true" : "false")+"\n";
  1813. status += std::string(" dispatchCompute ")+((statusDispatchCompute == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDispatchCompute == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDispatchCompute) ? "true" : "false")+"\n";
  1814. status += std::string(" dispatchComputeIndirect ")+((statusDispatchComputeIndirect == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDispatchComputeIndirect == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDispatchComputeIndirect) ? "true" : "false")+"\n";
  1815. status += std::string(" framebufferParameteri ")+((statusFramebufferParameteri == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusFramebufferParameteri == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glFramebufferParameteri) ? "true" : "false")+"\n";
  1816. status += std::string(" getDebugMessageLog ")+((statusGetDebugMessageLog == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetDebugMessageLog == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetDebugMessageLog) ? "true" : "false")+"\n";
  1817. status += std::string(" getFramebufferParameteriv ")+((statusGetFramebufferParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetFramebufferParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetFramebufferParameteriv) ? "true" : "false")+"\n";
  1818. status += std::string(" getInternalformati64v ")+((statusGetInternalformati64v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetInternalformati64v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetInternalformati64v) ? "true" : "false")+"\n";
  1819. status += std::string(" getObjectLabel ")+((statusGetObjectLabel == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetObjectLabel == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetObjectLabel) ? "true" : "false")+"\n";
  1820. status += std::string(" getObjectPtrLabel ")+((statusGetObjectPtrLabel == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetObjectPtrLabel == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetObjectPtrLabel) ? "true" : "false")+"\n";
  1821. status += std::string(" getProgramInterfaceiv ")+((statusGetProgramInterfaceiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetProgramInterfaceiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetProgramInterfaceiv) ? "true" : "false")+"\n";
  1822. status += std::string(" getProgramResourceIndex ")+((statusGetProgramResourceIndex == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetProgramResourceIndex == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetProgramResourceIndex) ? "true" : "false")+"\n";
  1823. status += std::string(" getProgramResourceLocation ")+((statusGetProgramResourceLocation == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetProgramResourceLocation == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetProgramResourceLocation) ? "true" : "false")+"\n";
  1824. status += std::string(" getProgramResourceLocationIndex ")+((statusGetProgramResourceLocationIndex == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetProgramResourceLocationIndex == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetProgramResourceLocationIndex) ? "true" : "false")+"\n";
  1825. status += std::string(" getProgramResourceName ")+((statusGetProgramResourceName == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetProgramResourceName == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetProgramResourceName) ? "true" : "false")+"\n";
  1826. status += std::string(" getProgramResourceiv ")+((statusGetProgramResourceiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetProgramResourceiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetProgramResourceiv) ? "true" : "false")+"\n";
  1827. status += std::string(" invalidateBufferData ")+((statusInvalidateBufferData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusInvalidateBufferData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glInvalidateBufferData) ? "true" : "false")+"\n";
  1828. status += std::string(" invalidateBufferSubData ")+((statusInvalidateBufferSubData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusInvalidateBufferSubData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glInvalidateBufferSubData) ? "true" : "false")+"\n";
  1829. status += std::string(" invalidateFramebuffer ")+((statusInvalidateFramebuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusInvalidateFramebuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glInvalidateFramebuffer) ? "true" : "false")+"\n";
  1830. status += std::string(" invalidateSubFramebuffer ")+((statusInvalidateSubFramebuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusInvalidateSubFramebuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glInvalidateSubFramebuffer) ? "true" : "false")+"\n";
  1831. status += std::string(" invalidateTexImage ")+((statusInvalidateTexImage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusInvalidateTexImage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glInvalidateTexImage) ? "true" : "false")+"\n";
  1832. status += std::string(" invalidateTexSubImage ")+((statusInvalidateTexSubImage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusInvalidateTexSubImage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glInvalidateTexSubImage) ? "true" : "false")+"\n";
  1833. status += std::string(" multiDrawArraysIndirect ")+((statusMultiDrawArraysIndirect == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusMultiDrawArraysIndirect == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glMultiDrawArraysIndirect) ? "true" : "false")+"\n";
  1834. status += std::string(" multiDrawElementsIndirect ")+((statusMultiDrawElementsIndirect == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusMultiDrawElementsIndirect == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glMultiDrawElementsIndirect) ? "true" : "false")+"\n";
  1835. status += std::string(" objectLabel ")+((statusObjectLabel == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusObjectLabel == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glObjectLabel) ? "true" : "false")+"\n";
  1836. status += std::string(" objectPtrLabel ")+((statusObjectPtrLabel == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusObjectPtrLabel == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glObjectPtrLabel) ? "true" : "false")+"\n";
  1837. status += std::string(" popDebugGroup ")+((statusPopDebugGroup == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusPopDebugGroup == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glPopDebugGroup) ? "true" : "false")+"\n";
  1838. status += std::string(" pushDebugGroup ")+((statusPushDebugGroup == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusPushDebugGroup == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glPushDebugGroup) ? "true" : "false")+"\n";
  1839. status += std::string(" shaderStorageBlockBinding ")+((statusShaderStorageBlockBinding == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusShaderStorageBlockBinding == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glShaderStorageBlockBinding) ? "true" : "false")+"\n";
  1840. status += std::string(" texBufferRange ")+((statusTexBufferRange == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexBufferRange == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexBufferRange) ? "true" : "false")+"\n";
  1841. status += std::string(" texStorage2DMultisample ")+((statusTexStorage2DMultisample == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexStorage2DMultisample == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexStorage2DMultisample) ? "true" : "false")+"\n";
  1842. status += std::string(" texStorage3DMultisample ")+((statusTexStorage3DMultisample == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTexStorage3DMultisample == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTexStorage3DMultisample) ? "true" : "false")+"\n";
  1843. status += std::string(" textureView ")+((statusTextureView == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureView == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureView) ? "true" : "false")+"\n";
  1844. status += std::string(" vertexAttribBinding ")+((statusVertexAttribBinding == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribBinding == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribBinding) ? "true" : "false")+"\n";
  1845. status += std::string(" vertexAttribFormat ")+((statusVertexAttribFormat == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribFormat == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribFormat) ? "true" : "false")+"\n";
  1846. status += std::string(" vertexAttribIFormat ")+((statusVertexAttribIFormat == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribIFormat == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribIFormat) ? "true" : "false")+"\n";
  1847. status += std::string(" vertexAttribLFormat ")+((statusVertexAttribLFormat == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexAttribLFormat == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexAttribLFormat) ? "true" : "false")+"\n";
  1848. status += std::string(" vertexBindingDivisor ")+((statusVertexBindingDivisor == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexBindingDivisor == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexBindingDivisor) ? "true" : "false")+"\n";
  1849. status += "\n";
  1850. status += "GL_VERSION_4_4\n";
  1851. status += std::string(" bindBuffersBase ")+((statusBindBuffersBase == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindBuffersBase == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindBuffersBase) ? "true" : "false")+"\n";
  1852. status += std::string(" bindBuffersRange ")+((statusBindBuffersRange == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindBuffersRange == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindBuffersRange) ? "true" : "false")+"\n";
  1853. status += std::string(" bindImageTextures ")+((statusBindImageTextures == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindImageTextures == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindImageTextures) ? "true" : "false")+"\n";
  1854. status += std::string(" bindSamplers ")+((statusBindSamplers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindSamplers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindSamplers) ? "true" : "false")+"\n";
  1855. status += std::string(" bindTextures ")+((statusBindTextures == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindTextures == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindTextures) ? "true" : "false")+"\n";
  1856. status += std::string(" bindVertexBuffers ")+((statusBindVertexBuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindVertexBuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindVertexBuffers) ? "true" : "false")+"\n";
  1857. status += std::string(" bufferStorage ")+((statusBufferStorage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBufferStorage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBufferStorage) ? "true" : "false")+"\n";
  1858. status += std::string(" clearTexImage ")+((statusClearTexImage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearTexImage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearTexImage) ? "true" : "false")+"\n";
  1859. status += std::string(" clearTexSubImage ")+((statusClearTexSubImage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearTexSubImage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearTexSubImage) ? "true" : "false")+"\n";
  1860. status += "\n";
  1861. status += "GL_VERSION_4_5\n";
  1862. status += std::string(" bindTextureUnit ")+((statusBindTextureUnit == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBindTextureUnit == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBindTextureUnit) ? "true" : "false")+"\n";
  1863. status += std::string(" blitNamedFramebuffer ")+((statusBlitNamedFramebuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusBlitNamedFramebuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glBlitNamedFramebuffer) ? "true" : "false")+"\n";
  1864. status += std::string(" checkNamedFramebufferStatus ")+((statusCheckNamedFramebufferStatus == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCheckNamedFramebufferStatus == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCheckNamedFramebufferStatus) ? "true" : "false")+"\n";
  1865. status += std::string(" clearNamedBufferData ")+((statusClearNamedBufferData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearNamedBufferData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearNamedBufferData) ? "true" : "false")+"\n";
  1866. status += std::string(" clearNamedBufferSubData ")+((statusClearNamedBufferSubData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearNamedBufferSubData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearNamedBufferSubData) ? "true" : "false")+"\n";
  1867. status += std::string(" clearNamedFramebufferfi ")+((statusClearNamedFramebufferfi == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearNamedFramebufferfi == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearNamedFramebufferfi) ? "true" : "false")+"\n";
  1868. status += std::string(" clearNamedFramebufferfv ")+((statusClearNamedFramebufferfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearNamedFramebufferfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearNamedFramebufferfv) ? "true" : "false")+"\n";
  1869. status += std::string(" clearNamedFramebufferiv ")+((statusClearNamedFramebufferiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearNamedFramebufferiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearNamedFramebufferiv) ? "true" : "false")+"\n";
  1870. status += std::string(" clearNamedFramebufferuiv ")+((statusClearNamedFramebufferuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClearNamedFramebufferuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClearNamedFramebufferuiv) ? "true" : "false")+"\n";
  1871. status += std::string(" clipControl ")+((statusClipControl == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusClipControl == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glClipControl) ? "true" : "false")+"\n";
  1872. status += std::string(" compressedTextureSubImage1D ")+((statusCompressedTextureSubImage1D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCompressedTextureSubImage1D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCompressedTextureSubImage1D) ? "true" : "false")+"\n";
  1873. status += std::string(" compressedTextureSubImage2D ")+((statusCompressedTextureSubImage2D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCompressedTextureSubImage2D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCompressedTextureSubImage2D) ? "true" : "false")+"\n";
  1874. status += std::string(" compressedTextureSubImage3D ")+((statusCompressedTextureSubImage3D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCompressedTextureSubImage3D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCompressedTextureSubImage3D) ? "true" : "false")+"\n";
  1875. status += std::string(" copyNamedBufferSubData ")+((statusCopyNamedBufferSubData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCopyNamedBufferSubData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCopyNamedBufferSubData) ? "true" : "false")+"\n";
  1876. status += std::string(" copyTextureSubImage1D ")+((statusCopyTextureSubImage1D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCopyTextureSubImage1D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCopyTextureSubImage1D) ? "true" : "false")+"\n";
  1877. status += std::string(" copyTextureSubImage2D ")+((statusCopyTextureSubImage2D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCopyTextureSubImage2D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCopyTextureSubImage2D) ? "true" : "false")+"\n";
  1878. status += std::string(" copyTextureSubImage3D ")+((statusCopyTextureSubImage3D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCopyTextureSubImage3D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCopyTextureSubImage3D) ? "true" : "false")+"\n";
  1879. status += std::string(" createBuffers ")+((statusCreateBuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCreateBuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCreateBuffers) ? "true" : "false")+"\n";
  1880. status += std::string(" createFramebuffers ")+((statusCreateFramebuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCreateFramebuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCreateFramebuffers) ? "true" : "false")+"\n";
  1881. status += std::string(" createProgramPipelines ")+((statusCreateProgramPipelines == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCreateProgramPipelines == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCreateProgramPipelines) ? "true" : "false")+"\n";
  1882. status += std::string(" createQueries ")+((statusCreateQueries == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCreateQueries == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCreateQueries) ? "true" : "false")+"\n";
  1883. status += std::string(" createRenderbuffers ")+((statusCreateRenderbuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCreateRenderbuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCreateRenderbuffers) ? "true" : "false")+"\n";
  1884. status += std::string(" createSamplers ")+((statusCreateSamplers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCreateSamplers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCreateSamplers) ? "true" : "false")+"\n";
  1885. status += std::string(" createTextures ")+((statusCreateTextures == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCreateTextures == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCreateTextures) ? "true" : "false")+"\n";
  1886. status += std::string(" createTransformFeedbacks ")+((statusCreateTransformFeedbacks == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCreateTransformFeedbacks == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCreateTransformFeedbacks) ? "true" : "false")+"\n";
  1887. status += std::string(" createVertexArrays ")+((statusCreateVertexArrays == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusCreateVertexArrays == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glCreateVertexArrays) ? "true" : "false")+"\n";
  1888. status += std::string(" disableVertexArrayAttrib ")+((statusDisableVertexArrayAttrib == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusDisableVertexArrayAttrib == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glDisableVertexArrayAttrib) ? "true" : "false")+"\n";
  1889. status += std::string(" enableVertexArrayAttrib ")+((statusEnableVertexArrayAttrib == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusEnableVertexArrayAttrib == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glEnableVertexArrayAttrib) ? "true" : "false")+"\n";
  1890. status += std::string(" flushMappedNamedBufferRange ")+((statusFlushMappedNamedBufferRange == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusFlushMappedNamedBufferRange == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glFlushMappedNamedBufferRange) ? "true" : "false")+"\n";
  1891. status += std::string(" generateTextureMipmap ")+((statusGenerateTextureMipmap == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGenerateTextureMipmap == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGenerateTextureMipmap) ? "true" : "false")+"\n";
  1892. status += std::string(" getCompressedTextureImage ")+((statusGetCompressedTextureImage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetCompressedTextureImage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetCompressedTextureImage) ? "true" : "false")+"\n";
  1893. status += std::string(" getCompressedTextureSubImage ")+((statusGetCompressedTextureSubImage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetCompressedTextureSubImage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetCompressedTextureSubImage) ? "true" : "false")+"\n";
  1894. status += std::string(" getGraphicsResetStatus ")+((statusGetGraphicsResetStatus == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetGraphicsResetStatus == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetGraphicsResetStatus) ? "true" : "false")+"\n";
  1895. status += std::string(" getNamedBufferParameteri64v ")+((statusGetNamedBufferParameteri64v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetNamedBufferParameteri64v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetNamedBufferParameteri64v) ? "true" : "false")+"\n";
  1896. status += std::string(" getNamedBufferParameteriv ")+((statusGetNamedBufferParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetNamedBufferParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetNamedBufferParameteriv) ? "true" : "false")+"\n";
  1897. status += std::string(" getNamedBufferPointerv ")+((statusGetNamedBufferPointerv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetNamedBufferPointerv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetNamedBufferPointerv) ? "true" : "false")+"\n";
  1898. status += std::string(" getNamedBufferSubData ")+((statusGetNamedBufferSubData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetNamedBufferSubData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetNamedBufferSubData) ? "true" : "false")+"\n";
  1899. status += std::string(" getNamedFramebufferAttachmentParameteriv ")+((statusGetNamedFramebufferAttachmentParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetNamedFramebufferAttachmentParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetNamedFramebufferAttachmentParameteriv) ? "true" : "false")+"\n";
  1900. status += std::string(" getNamedFramebufferParameteriv ")+((statusGetNamedFramebufferParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetNamedFramebufferParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetNamedFramebufferParameteriv) ? "true" : "false")+"\n";
  1901. status += std::string(" getNamedRenderbufferParameteriv ")+((statusGetNamedRenderbufferParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetNamedRenderbufferParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetNamedRenderbufferParameteriv) ? "true" : "false")+"\n";
  1902. status += std::string(" getQueryBufferObjecti64v ")+((statusGetQueryBufferObjecti64v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetQueryBufferObjecti64v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetQueryBufferObjecti64v) ? "true" : "false")+"\n";
  1903. status += std::string(" getQueryBufferObjectiv ")+((statusGetQueryBufferObjectiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetQueryBufferObjectiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetQueryBufferObjectiv) ? "true" : "false")+"\n";
  1904. status += std::string(" getQueryBufferObjectui64v ")+((statusGetQueryBufferObjectui64v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetQueryBufferObjectui64v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetQueryBufferObjectui64v) ? "true" : "false")+"\n";
  1905. status += std::string(" getQueryBufferObjectuiv ")+((statusGetQueryBufferObjectuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetQueryBufferObjectuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetQueryBufferObjectuiv) ? "true" : "false")+"\n";
  1906. status += std::string(" getTextureImage ")+((statusGetTextureImage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTextureImage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTextureImage) ? "true" : "false")+"\n";
  1907. status += std::string(" getTextureLevelParameterfv ")+((statusGetTextureLevelParameterfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTextureLevelParameterfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTextureLevelParameterfv) ? "true" : "false")+"\n";
  1908. status += std::string(" getTextureLevelParameteriv ")+((statusGetTextureLevelParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTextureLevelParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTextureLevelParameteriv) ? "true" : "false")+"\n";
  1909. status += std::string(" getTextureParameterIiv ")+((statusGetTextureParameterIiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTextureParameterIiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTextureParameterIiv) ? "true" : "false")+"\n";
  1910. status += std::string(" getTextureParameterIuiv ")+((statusGetTextureParameterIuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTextureParameterIuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTextureParameterIuiv) ? "true" : "false")+"\n";
  1911. status += std::string(" getTextureParameterfv ")+((statusGetTextureParameterfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTextureParameterfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTextureParameterfv) ? "true" : "false")+"\n";
  1912. status += std::string(" getTextureParameteriv ")+((statusGetTextureParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTextureParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTextureParameteriv) ? "true" : "false")+"\n";
  1913. status += std::string(" getTextureSubImage ")+((statusGetTextureSubImage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTextureSubImage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTextureSubImage) ? "true" : "false")+"\n";
  1914. status += std::string(" getTransformFeedbacki64_v ")+((statusGetTransformFeedbacki64_v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTransformFeedbacki64_v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTransformFeedbacki64_v) ? "true" : "false")+"\n";
  1915. status += std::string(" getTransformFeedbacki_v ")+((statusGetTransformFeedbacki_v == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTransformFeedbacki_v == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTransformFeedbacki_v) ? "true" : "false")+"\n";
  1916. status += std::string(" getTransformFeedbackiv ")+((statusGetTransformFeedbackiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetTransformFeedbackiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetTransformFeedbackiv) ? "true" : "false")+"\n";
  1917. status += std::string(" getVertexArrayIndexed64iv ")+((statusGetVertexArrayIndexed64iv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetVertexArrayIndexed64iv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetVertexArrayIndexed64iv) ? "true" : "false")+"\n";
  1918. status += std::string(" getVertexArrayIndexediv ")+((statusGetVertexArrayIndexediv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetVertexArrayIndexediv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetVertexArrayIndexediv) ? "true" : "false")+"\n";
  1919. status += std::string(" getVertexArrayiv ")+((statusGetVertexArrayiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetVertexArrayiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetVertexArrayiv) ? "true" : "false")+"\n";
  1920. status += std::string(" getnCompressedTexImage ")+((statusGetnCompressedTexImage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetnCompressedTexImage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetnCompressedTexImage) ? "true" : "false")+"\n";
  1921. status += std::string(" getnTexImage ")+((statusGetnTexImage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetnTexImage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetnTexImage) ? "true" : "false")+"\n";
  1922. status += std::string(" getnUniformdv ")+((statusGetnUniformdv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetnUniformdv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetnUniformdv) ? "true" : "false")+"\n";
  1923. status += std::string(" getnUniformfv ")+((statusGetnUniformfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetnUniformfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetnUniformfv) ? "true" : "false")+"\n";
  1924. status += std::string(" getnUniformiv ")+((statusGetnUniformiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetnUniformiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetnUniformiv) ? "true" : "false")+"\n";
  1925. status += std::string(" getnUniformuiv ")+((statusGetnUniformuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusGetnUniformuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glGetnUniformuiv) ? "true" : "false")+"\n";
  1926. status += std::string(" invalidateNamedFramebufferData ")+((statusInvalidateNamedFramebufferData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusInvalidateNamedFramebufferData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glInvalidateNamedFramebufferData) ? "true" : "false")+"\n";
  1927. status += std::string(" invalidateNamedFramebufferSubData ")+((statusInvalidateNamedFramebufferSubData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusInvalidateNamedFramebufferSubData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glInvalidateNamedFramebufferSubData) ? "true" : "false")+"\n";
  1928. status += std::string(" mapNamedBuffer ")+((statusMapNamedBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusMapNamedBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glMapNamedBuffer) ? "true" : "false")+"\n";
  1929. status += std::string(" mapNamedBufferRange ")+((statusMapNamedBufferRange == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusMapNamedBufferRange == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glMapNamedBufferRange) ? "true" : "false")+"\n";
  1930. status += std::string(" memoryBarrierByRegion ")+((statusMemoryBarrierByRegion == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusMemoryBarrierByRegion == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glMemoryBarrierByRegion) ? "true" : "false")+"\n";
  1931. status += std::string(" namedBufferData ")+((statusNamedBufferData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusNamedBufferData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glNamedBufferData) ? "true" : "false")+"\n";
  1932. status += std::string(" namedBufferStorage ")+((statusNamedBufferStorage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusNamedBufferStorage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glNamedBufferStorage) ? "true" : "false")+"\n";
  1933. status += std::string(" namedBufferSubData ")+((statusNamedBufferSubData == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusNamedBufferSubData == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glNamedBufferSubData) ? "true" : "false")+"\n";
  1934. status += std::string(" namedFramebufferDrawBuffer ")+((statusNamedFramebufferDrawBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusNamedFramebufferDrawBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glNamedFramebufferDrawBuffer) ? "true" : "false")+"\n";
  1935. status += std::string(" namedFramebufferDrawBuffers ")+((statusNamedFramebufferDrawBuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusNamedFramebufferDrawBuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glNamedFramebufferDrawBuffers) ? "true" : "false")+"\n";
  1936. status += std::string(" namedFramebufferParameteri ")+((statusNamedFramebufferParameteri == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusNamedFramebufferParameteri == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glNamedFramebufferParameteri) ? "true" : "false")+"\n";
  1937. status += std::string(" namedFramebufferReadBuffer ")+((statusNamedFramebufferReadBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusNamedFramebufferReadBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glNamedFramebufferReadBuffer) ? "true" : "false")+"\n";
  1938. status += std::string(" namedFramebufferRenderbuffer ")+((statusNamedFramebufferRenderbuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusNamedFramebufferRenderbuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glNamedFramebufferRenderbuffer) ? "true" : "false")+"\n";
  1939. status += std::string(" namedFramebufferTexture ")+((statusNamedFramebufferTexture == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusNamedFramebufferTexture == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glNamedFramebufferTexture) ? "true" : "false")+"\n";
  1940. status += std::string(" namedFramebufferTextureLayer ")+((statusNamedFramebufferTextureLayer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusNamedFramebufferTextureLayer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glNamedFramebufferTextureLayer) ? "true" : "false")+"\n";
  1941. status += std::string(" namedRenderbufferStorage ")+((statusNamedRenderbufferStorage == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusNamedRenderbufferStorage == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glNamedRenderbufferStorage) ? "true" : "false")+"\n";
  1942. status += std::string(" namedRenderbufferStorageMultisample ")+((statusNamedRenderbufferStorageMultisample == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusNamedRenderbufferStorageMultisample == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glNamedRenderbufferStorageMultisample) ? "true" : "false")+"\n";
  1943. status += std::string(" readnPixels ")+((statusReadnPixels == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusReadnPixels == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glReadnPixels) ? "true" : "false")+"\n";
  1944. status += std::string(" textureBarrier ")+((statusTextureBarrier == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureBarrier == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureBarrier) ? "true" : "false")+"\n";
  1945. status += std::string(" textureBuffer ")+((statusTextureBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureBuffer) ? "true" : "false")+"\n";
  1946. status += std::string(" textureBufferRange ")+((statusTextureBufferRange == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureBufferRange == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureBufferRange) ? "true" : "false")+"\n";
  1947. status += std::string(" textureParameterIiv ")+((statusTextureParameterIiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureParameterIiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureParameterIiv) ? "true" : "false")+"\n";
  1948. status += std::string(" textureParameterIuiv ")+((statusTextureParameterIuiv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureParameterIuiv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureParameterIuiv) ? "true" : "false")+"\n";
  1949. status += std::string(" textureParameterf ")+((statusTextureParameterf == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureParameterf == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureParameterf) ? "true" : "false")+"\n";
  1950. status += std::string(" textureParameterfv ")+((statusTextureParameterfv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureParameterfv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureParameterfv) ? "true" : "false")+"\n";
  1951. status += std::string(" textureParameteri ")+((statusTextureParameteri == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureParameteri == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureParameteri) ? "true" : "false")+"\n";
  1952. status += std::string(" textureParameteriv ")+((statusTextureParameteriv == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureParameteriv == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureParameteriv) ? "true" : "false")+"\n";
  1953. status += std::string(" textureStorage1D ")+((statusTextureStorage1D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureStorage1D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureStorage1D) ? "true" : "false")+"\n";
  1954. status += std::string(" textureStorage2D ")+((statusTextureStorage2D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureStorage2D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureStorage2D) ? "true" : "false")+"\n";
  1955. status += std::string(" textureStorage2DMultisample ")+((statusTextureStorage2DMultisample == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureStorage2DMultisample == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureStorage2DMultisample) ? "true" : "false")+"\n";
  1956. status += std::string(" textureStorage3D ")+((statusTextureStorage3D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureStorage3D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureStorage3D) ? "true" : "false")+"\n";
  1957. status += std::string(" textureStorage3DMultisample ")+((statusTextureStorage3DMultisample == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureStorage3DMultisample == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureStorage3DMultisample) ? "true" : "false")+"\n";
  1958. status += std::string(" textureSubImage1D ")+((statusTextureSubImage1D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureSubImage1D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureSubImage1D) ? "true" : "false")+"\n";
  1959. status += std::string(" textureSubImage2D ")+((statusTextureSubImage2D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureSubImage2D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureSubImage2D) ? "true" : "false")+"\n";
  1960. status += std::string(" textureSubImage3D ")+((statusTextureSubImage3D == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTextureSubImage3D == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTextureSubImage3D) ? "true" : "false")+"\n";
  1961. status += std::string(" transformFeedbackBufferBase ")+((statusTransformFeedbackBufferBase == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTransformFeedbackBufferBase == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTransformFeedbackBufferBase) ? "true" : "false")+"\n";
  1962. status += std::string(" transformFeedbackBufferRange ")+((statusTransformFeedbackBufferRange == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusTransformFeedbackBufferRange == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glTransformFeedbackBufferRange) ? "true" : "false")+"\n";
  1963. status += std::string(" unmapNamedBuffer ")+((statusUnmapNamedBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusUnmapNamedBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glUnmapNamedBuffer) ? "true" : "false")+"\n";
  1964. status += std::string(" vertexArrayAttribBinding ")+((statusVertexArrayAttribBinding == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexArrayAttribBinding == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexArrayAttribBinding) ? "true" : "false")+"\n";
  1965. status += std::string(" vertexArrayAttribFormat ")+((statusVertexArrayAttribFormat == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexArrayAttribFormat == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexArrayAttribFormat) ? "true" : "false")+"\n";
  1966. status += std::string(" vertexArrayAttribIFormat ")+((statusVertexArrayAttribIFormat == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexArrayAttribIFormat == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexArrayAttribIFormat) ? "true" : "false")+"\n";
  1967. status += std::string(" vertexArrayAttribLFormat ")+((statusVertexArrayAttribLFormat == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexArrayAttribLFormat == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexArrayAttribLFormat) ? "true" : "false")+"\n";
  1968. status += std::string(" vertexArrayBindingDivisor ")+((statusVertexArrayBindingDivisor == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexArrayBindingDivisor == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexArrayBindingDivisor) ? "true" : "false")+"\n";
  1969. status += std::string(" vertexArrayElementBuffer ")+((statusVertexArrayElementBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexArrayElementBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexArrayElementBuffer) ? "true" : "false")+"\n";
  1970. status += std::string(" vertexArrayVertexBuffer ")+((statusVertexArrayVertexBuffer == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexArrayVertexBuffer == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexArrayVertexBuffer) ? "true" : "false")+"\n";
  1971. status += std::string(" vertexArrayVertexBuffers ")+((statusVertexArrayVertexBuffers == NOpenGLProc::TYPE_ARB) ? "ARB" : ((statusVertexArrayVertexBuffers == NOpenGLProc::TYPE_EXT) ? "EXT" : " "))+" : "+((glVertexArrayVertexBuffers) ? "true" : "false")+"\n";
  1972. return status;
  1973. }
  1974. //------------------------------------------------------------------------------