Guest User

Untitled

a guest
Jul 21st, 2018
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 25.50 KB | None | 0 0
  1. #ifndef _LOAD_GL_EXTENSIONS_H_
  2. #define _LOAD_GL_EXTENSIONS_H_
  3.  
  4. #include "platform.h"
  5. #include <SDL_types.h>
  6.  
  7. #ifdef __cplusplus
  8. extern "C"
  9. {
  10. #endif
  11.  
  12. #ifndef GL_ATI_texture_compression_3dc
  13. #define GL_ATI_texture_compression_3dc 1
  14.  
  15. #define GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI 0x8837
  16.  
  17. #endif /* GL_ATI_texture_compression_3dc */
  18.  
  19. #ifndef GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT
  20. #define GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT 0x8C72
  21. #endif
  22.  
  23. typedef enum {
  24. arb_multitexture = 0,
  25. arb_texture_compression = 1,
  26. arb_point_parameters = 2,
  27. arb_point_sprite = 3,
  28. arb_vertex_buffer_object = 4,
  29. arb_shadow = 5,
  30. arb_texture_env_combine = 6,
  31. arb_texture_env_crossbar = 7,
  32. arb_texture_env_dot3 = 8,
  33. arb_occlusion_query = 9,
  34. arb_depth_texture = 10,
  35. arb_fragment_program = 11,
  36. arb_vertex_program = 12,
  37. arb_fragment_shader = 13,
  38. arb_vertex_shader = 14,
  39. arb_shader_objects = 15,
  40. arb_shading_language_100 = 16,
  41. arb_texture_non_power_of_two = 17,
  42. ext_compiled_vertex_array = 18,
  43. ext_draw_range_elements = 19,
  44. ext_framebuffer_object = 20,
  45. ext_texture_compression_s3tc = 21,
  46. ext_texture_filter_anisotropic = 22,
  47. sgis_generate_mipmap = 23,
  48. arb_texture_mirrored_repeat = 24,
  49. arb_texture_rectangle = 25,
  50. ext_fog_coord = 26,
  51. ati_texture_compression_3dc = 27,
  52. ext_texture_compression_latc = 28,
  53. ext_texture_compression_rgtc = 29,
  54. arb_texture_cube_map = 30,
  55. arb_texture_float = 31,
  56. ext_abgr = 32,
  57. ext_gpu_program_parameters = 33
  58. } extension_enum;
  59.  
  60. /* GL_VERSION_1_2 */
  61. extern PFNGLCOPYTEXSUBIMAGE3DPROC ELglCopyTexSubImage3D;
  62. extern PFNGLDRAWRANGEELEMENTSPROC ELglDrawRangeElements;
  63. extern PFNGLTEXIMAGE3DPROC ELglTexImage3D;
  64. extern PFNGLTEXSUBIMAGE3DPROC ELglTexSubImage3D;
  65. /* GL_VERSION_1_2 */
  66.  
  67. /* GL_VERSION_1_3 */
  68. extern PFNGLACTIVETEXTUREPROC ELglActiveTexture;
  69. extern PFNGLCLIENTACTIVETEXTUREPROC ELglClientActiveTexture;
  70. extern PFNGLCOMPRESSEDTEXIMAGE1DPROC ELglCompressedTexImage1D;
  71. extern PFNGLCOMPRESSEDTEXIMAGE2DPROC ELglCompressedTexImage2D;
  72. extern PFNGLCOMPRESSEDTEXIMAGE3DPROC ELglCompressedTexImage3D;
  73. extern PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC ELglCompressedTexSubImage1D;
  74. extern PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC ELglCompressedTexSubImage2D;
  75. extern PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC ELglCompressedTexSubImage3D;
  76. extern PFNGLGETCOMPRESSEDTEXIMAGEPROC ELglGetCompressedTexImage;
  77. extern PFNGLLOADTRANSPOSEMATRIXDPROC ELglLoadTransposeMatrixd;
  78. extern PFNGLLOADTRANSPOSEMATRIXFPROC ELglLoadTransposeMatrixf;
  79. extern PFNGLMULTTRANSPOSEMATRIXDPROC ELglMultTransposeMatrixd;
  80. extern PFNGLMULTTRANSPOSEMATRIXFPROC ELglMultTransposeMatrixf;
  81. extern PFNGLMULTITEXCOORD1DPROC ELglMultiTexCoord1d;
  82. extern PFNGLMULTITEXCOORD1DVPROC ELglMultiTexCoord1dv;
  83. extern PFNGLMULTITEXCOORD1FPROC ELglMultiTexCoord1f;
  84. extern PFNGLMULTITEXCOORD1FVPROC ELglMultiTexCoord1fv;
  85. extern PFNGLMULTITEXCOORD1IPROC ELglMultiTexCoord1i;
  86. extern PFNGLMULTITEXCOORD1IVPROC ELglMultiTexCoord1iv;
  87. extern PFNGLMULTITEXCOORD1SPROC ELglMultiTexCoord1s;
  88. extern PFNGLMULTITEXCOORD1SVPROC ELglMultiTexCoord1sv;
  89. extern PFNGLMULTITEXCOORD2DPROC ELglMultiTexCoord2d;
  90. extern PFNGLMULTITEXCOORD2DVPROC ELglMultiTexCoord2dv;
  91. extern PFNGLMULTITEXCOORD2FPROC ELglMultiTexCoord2f;
  92. extern PFNGLMULTITEXCOORD2FVPROC ELglMultiTexCoord2fv;
  93. extern PFNGLMULTITEXCOORD2IPROC ELglMultiTexCoord2i;
  94. extern PFNGLMULTITEXCOORD2IVPROC ELglMultiTexCoord2iv;
  95. extern PFNGLMULTITEXCOORD2SPROC ELglMultiTexCoord2s;
  96. extern PFNGLMULTITEXCOORD2SVPROC ELglMultiTexCoord2sv;
  97. extern PFNGLMULTITEXCOORD3DPROC ELglMultiTexCoord3d;
  98. extern PFNGLMULTITEXCOORD3DVPROC ELglMultiTexCoord3dv;
  99. extern PFNGLMULTITEXCOORD3FPROC ELglMultiTexCoord3f;
  100. extern PFNGLMULTITEXCOORD3FVPROC ELglMultiTexCoord3fv;
  101. extern PFNGLMULTITEXCOORD3IPROC ELglMultiTexCoord3i;
  102. extern PFNGLMULTITEXCOORD3IVPROC ELglMultiTexCoord3iv;
  103. extern PFNGLMULTITEXCOORD3SPROC ELglMultiTexCoord3s;
  104. extern PFNGLMULTITEXCOORD3SVPROC ELglMultiTexCoord3sv;
  105. extern PFNGLMULTITEXCOORD4DPROC ELglMultiTexCoord4d;
  106. extern PFNGLMULTITEXCOORD4DVPROC ELglMultiTexCoord4dv;
  107. extern PFNGLMULTITEXCOORD4FPROC ELglMultiTexCoord4f;
  108. extern PFNGLMULTITEXCOORD4FVPROC ELglMultiTexCoord4fv;
  109. extern PFNGLMULTITEXCOORD4IPROC ELglMultiTexCoord4i;
  110. extern PFNGLMULTITEXCOORD4IVPROC ELglMultiTexCoord4iv;
  111. extern PFNGLMULTITEXCOORD4SPROC ELglMultiTexCoord4s;
  112. extern PFNGLMULTITEXCOORD4SVPROC ELglMultiTexCoord4sv;
  113. extern PFNGLSAMPLECOVERAGEPROC ELglSampleCoverage;
  114. /* GL_VERSION_1_3 */
  115.  
  116. /* GL_VERSION_1_4 */
  117. extern PFNGLBLENDCOLORPROC ELglBlendColor;
  118. extern PFNGLBLENDEQUATIONPROC ELglBlendEquation;
  119. extern PFNGLBLENDFUNCSEPARATEPROC ELglBlendFuncSeparate;
  120. extern PFNGLFOGCOORDPOINTERPROC ELglFogCoordPointer;
  121. extern PFNGLFOGCOORDDPROC ELglFogCoordd;
  122. extern PFNGLFOGCOORDDVPROC ELglFogCoorddv;
  123. extern PFNGLFOGCOORDFPROC ELglFogCoordf;
  124. extern PFNGLFOGCOORDFVPROC ELglFogCoordfv;
  125. extern PFNGLMULTIDRAWARRAYSPROC ELglMultiDrawArrays;
  126. extern PFNGLMULTIDRAWELEMENTSPROC ELglMultiDrawElements;
  127. extern PFNGLPOINTPARAMETERFPROC ELglPointParameterf;
  128. extern PFNGLPOINTPARAMETERFVPROC ELglPointParameterfv;
  129. extern PFNGLSECONDARYCOLOR3BPROC ELglSecondaryColor3b;
  130. extern PFNGLSECONDARYCOLOR3BVPROC ELglSecondaryColor3bv;
  131. extern PFNGLSECONDARYCOLOR3DPROC ELglSecondaryColor3d;
  132. extern PFNGLSECONDARYCOLOR3DVPROC ELglSecondaryColor3dv;
  133. extern PFNGLSECONDARYCOLOR3FPROC ELglSecondaryColor3f;
  134. extern PFNGLSECONDARYCOLOR3FVPROC ELglSecondaryColor3fv;
  135. extern PFNGLSECONDARYCOLOR3IPROC ELglSecondaryColor3i;
  136. extern PFNGLSECONDARYCOLOR3IVPROC ELglSecondaryColor3iv;
  137. extern PFNGLSECONDARYCOLOR3SPROC ELglSecondaryColor3s;
  138. extern PFNGLSECONDARYCOLOR3SVPROC ELglSecondaryColor3sv;
  139. extern PFNGLSECONDARYCOLOR3UBPROC ELglSecondaryColor3ub;
  140. extern PFNGLSECONDARYCOLOR3UBVPROC ELglSecondaryColor3ubv;
  141. extern PFNGLSECONDARYCOLOR3UIPROC ELglSecondaryColor3ui;
  142. extern PFNGLSECONDARYCOLOR3UIVPROC ELglSecondaryColor3uiv;
  143. extern PFNGLSECONDARYCOLOR3USPROC ELglSecondaryColor3us;
  144. extern PFNGLSECONDARYCOLOR3USVPROC ELglSecondaryColor3usv;
  145. extern PFNGLSECONDARYCOLORPOINTERPROC ELglSecondaryColorPointer;
  146. extern PFNGLWINDOWPOS2DPROC ELglWindowPos2d;
  147. extern PFNGLWINDOWPOS2DVPROC ELglWindowPos2dv;
  148. extern PFNGLWINDOWPOS2FPROC ELglWindowPos2f;
  149. extern PFNGLWINDOWPOS2FVPROC ELglWindowPos2fv;
  150. extern PFNGLWINDOWPOS2IPROC ELglWindowPos2i;
  151. extern PFNGLWINDOWPOS2IVPROC ELglWindowPos2iv;
  152. extern PFNGLWINDOWPOS2SPROC ELglWindowPos2s;
  153. extern PFNGLWINDOWPOS2SVPROC ELglWindowPos2sv;
  154. extern PFNGLWINDOWPOS3DPROC ELglWindowPos3d;
  155. extern PFNGLWINDOWPOS3DVPROC ELglWindowPos3dv;
  156. extern PFNGLWINDOWPOS3FPROC ELglWindowPos3f;
  157. extern PFNGLWINDOWPOS3FVPROC ELglWindowPos3fv;
  158. extern PFNGLWINDOWPOS3IPROC ELglWindowPos3i;
  159. extern PFNGLWINDOWPOS3IVPROC ELglWindowPos3iv;
  160. extern PFNGLWINDOWPOS3SPROC ELglWindowPos3s;
  161. extern PFNGLWINDOWPOS3SVPROC ELglWindowPos3sv;
  162. /* GL_VERSION_1_4 */
  163.  
  164. /* GL_VERSION_1_5 */
  165. extern PFNGLBEGINQUERYPROC ELglBeginQuery;
  166. extern PFNGLBINDBUFFERPROC ELglBindBuffer;
  167. extern PFNGLBUFFERDATAPROC ELglBufferData;
  168. extern PFNGLBUFFERSUBDATAPROC ELglBufferSubData;
  169. extern PFNGLDELETEBUFFERSPROC ELglDeleteBuffers;
  170. extern PFNGLDELETEQUERIESPROC ELglDeleteQueries;
  171. extern PFNGLENDQUERYPROC ELglEndQuery;
  172. extern PFNGLGENBUFFERSPROC ELglGenBuffers;
  173. extern PFNGLGENQUERIESPROC ELglGenQueries;
  174. extern PFNGLGETBUFFERPARAMETERIVPROC ELglGetBufferParameteriv;
  175. extern PFNGLGETBUFFERPOINTERVPROC ELglGetBufferPointerv;
  176. extern PFNGLGETBUFFERSUBDATAPROC ELglGetBufferSubData;
  177. extern PFNGLGETQUERYOBJECTIVPROC ELglGetQueryObjectiv;
  178. extern PFNGLGETQUERYOBJECTUIVPROC ELglGetQueryObjectuiv;
  179. extern PFNGLGETQUERYIVPROC ELglGetQueryiv;
  180. extern PFNGLISBUFFERPROC ELglIsBuffer;
  181. extern PFNGLISQUERYPROC ELglIsQuery;
  182. extern PFNGLMAPBUFFERPROC ELglMapBuffer;
  183. extern PFNGLUNMAPBUFFERPROC ELglUnmapBuffer;
  184. /* GL_VERSION_1_5 */
  185.  
  186. /* GL_VERSION_2_0 */
  187. extern PFNGLATTACHSHADERPROC ELglAttachShader;
  188. extern PFNGLBINDATTRIBLOCATIONPROC ELglBindAttribLocation;
  189. extern PFNGLBLENDEQUATIONSEPARATEPROC ELglBlendEquationSeparate;
  190. extern PFNGLCOMPILESHADERPROC ELglCompileShader;
  191. extern PFNGLCREATEPROGRAMPROC ELglCreateProgram;
  192. extern PFNGLCREATESHADERPROC ELglCreateShader;
  193. extern PFNGLDELETEPROGRAMPROC ELglDeleteProgram;
  194. extern PFNGLDELETESHADERPROC ELglDeleteShader;
  195. extern PFNGLDETACHSHADERPROC ELglDetachShader;
  196. extern PFNGLDISABLEVERTEXATTRIBARRAYPROC ELglDisableVertexAttribArray;
  197. extern PFNGLDRAWBUFFERSPROC ELglDrawBuffers;
  198. extern PFNGLENABLEVERTEXATTRIBARRAYPROC ELglEnableVertexAttribArray;
  199. extern PFNGLGETACTIVEATTRIBPROC ELglGetActiveAttrib;
  200. extern PFNGLGETACTIVEUNIFORMPROC ELglGetActiveUniform;
  201. extern PFNGLGETATTACHEDSHADERSPROC ELglGetAttachedShaders;
  202. extern PFNGLGETATTRIBLOCATIONPROC ELglGetAttribLocation;
  203. extern PFNGLGETPROGRAMINFOLOGPROC ELglGetProgramInfoLog;
  204. extern PFNGLGETPROGRAMIVPROC ELglGetProgramiv;
  205. extern PFNGLGETSHADERINFOLOGPROC ELglGetShaderInfoLog;
  206. extern PFNGLGETSHADERSOURCEPROC ELglGetShaderSource;
  207. extern PFNGLGETSHADERIVPROC ELglGetShaderiv;
  208. extern PFNGLGETUNIFORMLOCATIONPROC ELglGetUniformLocation;
  209. extern PFNGLGETUNIFORMFVPROC ELglGetUniformfv;
  210. extern PFNGLGETUNIFORMIVPROC ELglGetUniformiv;
  211. extern PFNGLGETVERTEXATTRIBPOINTERVPROC ELglGetVertexAttribPointerv;
  212. extern PFNGLGETVERTEXATTRIBDVPROC ELglGetVertexAttribdv;
  213. extern PFNGLGETVERTEXATTRIBFVPROC ELglGetVertexAttribfv;
  214. extern PFNGLGETVERTEXATTRIBIVPROC ELglGetVertexAttribiv;
  215. extern PFNGLISPROGRAMPROC ELglIsProgram;
  216. extern PFNGLISSHADERPROC ELglIsShader;
  217. extern PFNGLLINKPROGRAMPROC ELglLinkProgram;
  218. extern PFNGLSHADERSOURCEPROC ELglShaderSource;
  219. extern PFNGLSTENCILFUNCSEPARATEPROC ELglStencilFuncSeparate;
  220. extern PFNGLSTENCILMASKSEPARATEPROC ELglStencilMaskSeparate;
  221. extern PFNGLSTENCILOPSEPARATEPROC ELglStencilOpSeparate;
  222. extern PFNGLUNIFORM1FPROC ELglUniform1f;
  223. extern PFNGLUNIFORM1FVPROC ELglUniform1fv;
  224. extern PFNGLUNIFORM1IPROC ELglUniform1i;
  225. extern PFNGLUNIFORM1IVPROC ELglUniform1iv;
  226. extern PFNGLUNIFORM2FPROC ELglUniform2f;
  227. extern PFNGLUNIFORM2FVPROC ELglUniform2fv;
  228. extern PFNGLUNIFORM2IPROC ELglUniform2i;
  229. extern PFNGLUNIFORM2IVPROC ELglUniform2iv;
  230. extern PFNGLUNIFORM3FPROC ELglUniform3f;
  231. extern PFNGLUNIFORM3FVPROC ELglUniform3fv;
  232. extern PFNGLUNIFORM3IPROC ELglUniform3i;
  233. extern PFNGLUNIFORM3IVPROC ELglUniform3iv;
  234. extern PFNGLUNIFORM4FPROC ELglUniform4f;
  235. extern PFNGLUNIFORM4FVPROC ELglUniform4fv;
  236. extern PFNGLUNIFORM4IPROC ELglUniform4i;
  237. extern PFNGLUNIFORM4IVPROC ELglUniform4iv;
  238. extern PFNGLUNIFORMMATRIX2FVPROC ELglUniformMatrix2fv;
  239. extern PFNGLUNIFORMMATRIX3FVPROC ELglUniformMatrix3fv;
  240. extern PFNGLUNIFORMMATRIX4FVPROC ELglUniformMatrix4fv;
  241. extern PFNGLUSEPROGRAMPROC ELglUseProgram;
  242. extern PFNGLVALIDATEPROGRAMPROC ELglValidateProgram;
  243. extern PFNGLVERTEXATTRIB1DPROC ELglVertexAttrib1d;
  244. extern PFNGLVERTEXATTRIB1DVPROC ELglVertexAttrib1dv;
  245. extern PFNGLVERTEXATTRIB1FPROC ELglVertexAttrib1f;
  246. extern PFNGLVERTEXATTRIB1FVPROC ELglVertexAttrib1fv;
  247. extern PFNGLVERTEXATTRIB1SPROC ELglVertexAttrib1s;
  248. extern PFNGLVERTEXATTRIB1SVPROC ELglVertexAttrib1sv;
  249. extern PFNGLVERTEXATTRIB2DPROC ELglVertexAttrib2d;
  250. extern PFNGLVERTEXATTRIB2DVPROC ELglVertexAttrib2dv;
  251. extern PFNGLVERTEXATTRIB2FPROC ELglVertexAttrib2f;
  252. extern PFNGLVERTEXATTRIB2FVPROC ELglVertexAttrib2fv;
  253. extern PFNGLVERTEXATTRIB2SPROC ELglVertexAttrib2s;
  254. extern PFNGLVERTEXATTRIB2SVPROC ELglVertexAttrib2sv;
  255. extern PFNGLVERTEXATTRIB3DPROC ELglVertexAttrib3d;
  256. extern PFNGLVERTEXATTRIB3DVPROC ELglVertexAttrib3dv;
  257. extern PFNGLVERTEXATTRIB3FPROC ELglVertexAttrib3f;
  258. extern PFNGLVERTEXATTRIB3FVPROC ELglVertexAttrib3fv;
  259. extern PFNGLVERTEXATTRIB3SPROC ELglVertexAttrib3s;
  260. extern PFNGLVERTEXATTRIB3SVPROC ELglVertexAttrib3sv;
  261. extern PFNGLVERTEXATTRIB4NBVPROC ELglVertexAttrib4Nbv;
  262. extern PFNGLVERTEXATTRIB4NIVPROC ELglVertexAttrib4Niv;
  263. extern PFNGLVERTEXATTRIB4NSVPROC ELglVertexAttrib4Nsv;
  264. extern PFNGLVERTEXATTRIB4NUBPROC ELglVertexAttrib4Nub;
  265. extern PFNGLVERTEXATTRIB4NUBVPROC ELglVertexAttrib4Nubv;
  266. extern PFNGLVERTEXATTRIB4NUIVPROC ELglVertexAttrib4Nuiv;
  267. extern PFNGLVERTEXATTRIB4NUSVPROC ELglVertexAttrib4Nusv;
  268. extern PFNGLVERTEXATTRIB4BVPROC ELglVertexAttrib4bv;
  269. extern PFNGLVERTEXATTRIB4DPROC ELglVertexAttrib4d;
  270. extern PFNGLVERTEXATTRIB4DVPROC ELglVertexAttrib4dv;
  271. extern PFNGLVERTEXATTRIB4FPROC ELglVertexAttrib4f;
  272. extern PFNGLVERTEXATTRIB4FVPROC ELglVertexAttrib4fv;
  273. extern PFNGLVERTEXATTRIB4IVPROC ELglVertexAttrib4iv;
  274. extern PFNGLVERTEXATTRIB4SPROC ELglVertexAttrib4s;
  275. extern PFNGLVERTEXATTRIB4SVPROC ELglVertexAttrib4sv;
  276. extern PFNGLVERTEXATTRIB4UBVPROC ELglVertexAttrib4ubv;
  277. extern PFNGLVERTEXATTRIB4UIVPROC ELglVertexAttrib4uiv;
  278. extern PFNGLVERTEXATTRIB4USVPROC ELglVertexAttrib4usv;
  279. extern PFNGLVERTEXATTRIBPOINTERPROC ELglVertexAttribPointer;
  280. /* GL_VERSION_2_0 */
  281.  
  282. /* GL_VERSION_2_1 */
  283. extern PFNGLUNIFORMMATRIX2X3FVPROC ELglUniformMatrix2x3fv;
  284. extern PFNGLUNIFORMMATRIX2X4FVPROC ELglUniformMatrix2x4fv;
  285. extern PFNGLUNIFORMMATRIX3X2FVPROC ELglUniformMatrix3x2fv;
  286. extern PFNGLUNIFORMMATRIX3X4FVPROC ELglUniformMatrix3x4fv;
  287. extern PFNGLUNIFORMMATRIX4X2FVPROC ELglUniformMatrix4x2fv;
  288. extern PFNGLUNIFORMMATRIX4X3FVPROC ELglUniformMatrix4x3fv;
  289. /* GL_VERSION_2_1 */
  290.  
  291. /* GL_ARB_multitexture */
  292. extern PFNGLACTIVETEXTUREARBPROC ELglActiveTextureARB;
  293. extern PFNGLCLIENTACTIVETEXTUREARBPROC ELglClientActiveTextureARB;
  294. extern PFNGLMULTITEXCOORD1DARBPROC ELglMultiTexCoord1dARB;
  295. extern PFNGLMULTITEXCOORD1DVARBPROC ELglMultiTexCoord1dvARB;
  296. extern PFNGLMULTITEXCOORD1FARBPROC ELglMultiTexCoord1fARB;
  297. extern PFNGLMULTITEXCOORD1FVARBPROC ELglMultiTexCoord1fvARB;
  298. extern PFNGLMULTITEXCOORD1IARBPROC ELglMultiTexCoord1iARB;
  299. extern PFNGLMULTITEXCOORD1IVARBPROC ELglMultiTexCoord1ivARB;
  300. extern PFNGLMULTITEXCOORD1SARBPROC ELglMultiTexCoord1sARB;
  301. extern PFNGLMULTITEXCOORD1SVARBPROC ELglMultiTexCoord1svARB;
  302. extern PFNGLMULTITEXCOORD2DARBPROC ELglMultiTexCoord2dARB;
  303. extern PFNGLMULTITEXCOORD2DVARBPROC ELglMultiTexCoord2dvARB;
  304. extern PFNGLMULTITEXCOORD2FARBPROC ELglMultiTexCoord2fARB;
  305. extern PFNGLMULTITEXCOORD2FVARBPROC ELglMultiTexCoord2fvARB;
  306. extern PFNGLMULTITEXCOORD2IARBPROC ELglMultiTexCoord2iARB;
  307. extern PFNGLMULTITEXCOORD2IVARBPROC ELglMultiTexCoord2ivARB;
  308. extern PFNGLMULTITEXCOORD2SARBPROC ELglMultiTexCoord2sARB;
  309. extern PFNGLMULTITEXCOORD2SVARBPROC ELglMultiTexCoord2svARB;
  310. extern PFNGLMULTITEXCOORD3DARBPROC ELglMultiTexCoord3dARB;
  311. extern PFNGLMULTITEXCOORD3DVARBPROC ELglMultiTexCoord3dvARB;
  312. extern PFNGLMULTITEXCOORD3FARBPROC ELglMultiTexCoord3fARB;
  313. extern PFNGLMULTITEXCOORD3FVARBPROC ELglMultiTexCoord3fvARB;
  314. extern PFNGLMULTITEXCOORD3IARBPROC ELglMultiTexCoord3iARB;
  315. extern PFNGLMULTITEXCOORD3IVARBPROC ELglMultiTexCoord3ivARB;
  316. extern PFNGLMULTITEXCOORD3SARBPROC ELglMultiTexCoord3sARB;
  317. extern PFNGLMULTITEXCOORD3SVARBPROC ELglMultiTexCoord3svARB;
  318. extern PFNGLMULTITEXCOORD4DARBPROC ELglMultiTexCoord4dARB;
  319. extern PFNGLMULTITEXCOORD4DVARBPROC ELglMultiTexCoord4dvARB;
  320. extern PFNGLMULTITEXCOORD4FARBPROC ELglMultiTexCoord4fARB;
  321. extern PFNGLMULTITEXCOORD4FVARBPROC ELglMultiTexCoord4fvARB;
  322. extern PFNGLMULTITEXCOORD4IARBPROC ELglMultiTexCoord4iARB;
  323. extern PFNGLMULTITEXCOORD4IVARBPROC ELglMultiTexCoord4ivARB;
  324. extern PFNGLMULTITEXCOORD4SARBPROC ELglMultiTexCoord4sARB;
  325. extern PFNGLMULTITEXCOORD4SVARBPROC ELglMultiTexCoord4svARB;
  326. /* GL_ARB_multitexture */
  327.  
  328. /* GL_EXT_compiled_vertex_array */
  329. extern PFNGLLOCKARRAYSEXTPROC ELglLockArraysEXT;
  330. extern PFNGLUNLOCKARRAYSEXTPROC ELglUnlockArraysEXT;
  331. /* GL_EXT_compiled_vertex_array */
  332.  
  333. /* GL_EXT_draw_range_elements */
  334. extern PFNGLDRAWRANGEELEMENTSEXTPROC ELglDrawRangeElementsEXT;
  335. /* GL_EXT_draw_range_elements */
  336.  
  337. /* GL_ARB_point_parameters */
  338. extern PFNGLPOINTPARAMETERFARBPROC ELglPointParameterfARB;
  339. extern PFNGLPOINTPARAMETERFVARBPROC ELglPointParameterfvARB;
  340. /* GL_ARB_point_parameters */
  341.  
  342. /* GL_ARB_vertex_buffer_object */
  343. extern PFNGLBINDBUFFERARBPROC ELglBindBufferARB;
  344. extern PFNGLBUFFERDATAARBPROC ELglBufferDataARB;
  345. extern PFNGLBUFFERSUBDATAARBPROC ELglBufferSubDataARB;
  346. extern PFNGLDELETEBUFFERSARBPROC ELglDeleteBuffersARB;
  347. extern PFNGLGENBUFFERSARBPROC ELglGenBuffersARB;
  348. extern PFNGLGETBUFFERPARAMETERIVARBPROC ELglGetBufferParameterivARB;
  349. extern PFNGLGETBUFFERPOINTERVARBPROC ELglGetBufferPointervARB;
  350. extern PFNGLGETBUFFERSUBDATAARBPROC ELglGetBufferSubDataARB;
  351. extern PFNGLISBUFFERARBPROC ELglIsBufferARB;
  352. extern PFNGLMAPBUFFERARBPROC ELglMapBufferARB;
  353. extern PFNGLUNMAPBUFFERARBPROC ELglUnmapBufferARB;
  354. /* GL_ARB_vertex_buffer_object */
  355.  
  356. /* GL_EXT_framebuffer_object */
  357. extern PFNGLBINDFRAMEBUFFEREXTPROC ELglBindFramebufferEXT;
  358. extern PFNGLBINDRENDERBUFFEREXTPROC ELglBindRenderbufferEXT;
  359. extern PFNGLCHECKFRAMEBUFFERSTATUSEXTPROC ELglCheckFramebufferStatusEXT;
  360. extern PFNGLDELETEFRAMEBUFFERSEXTPROC ELglDeleteFramebuffersEXT;
  361. extern PFNGLDELETERENDERBUFFERSEXTPROC ELglDeleteRenderbuffersEXT;
  362. extern PFNGLFRAMEBUFFERRENDERBUFFEREXTPROC ELglFramebufferRenderbufferEXT;
  363. extern PFNGLFRAMEBUFFERTEXTURE1DEXTPROC ELglFramebufferTexture1DEXT;
  364. extern PFNGLFRAMEBUFFERTEXTURE2DEXTPROC ELglFramebufferTexture2DEXT;
  365. extern PFNGLFRAMEBUFFERTEXTURE3DEXTPROC ELglFramebufferTexture3DEXT;
  366. extern PFNGLGENFRAMEBUFFERSEXTPROC ELglGenFramebuffersEXT;
  367. extern PFNGLGENRENDERBUFFERSEXTPROC ELglGenRenderbuffersEXT;
  368. extern PFNGLGENERATEMIPMAPEXTPROC ELglGenerateMipmapEXT;
  369. extern PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVEXTPROC ELglGetFramebufferAttachmentParameterivEXT;
  370. extern PFNGLGETRENDERBUFFERPARAMETERIVEXTPROC ELglGetRenderbufferParameterivEXT;
  371. extern PFNGLISFRAMEBUFFEREXTPROC ELglIsFramebufferEXT;
  372. extern PFNGLISRENDERBUFFEREXTPROC ELglIsRenderbufferEXT;
  373. extern PFNGLRENDERBUFFERSTORAGEEXTPROC ELglRenderbufferStorageEXT;
  374. /* GL_EXT_framebuffer_object */
  375.  
  376. /* GL_ARB_texture_compression */
  377. extern PFNGLCOMPRESSEDTEXIMAGE1DARBPROC ELglCompressedTexImage1DARB;
  378. extern PFNGLCOMPRESSEDTEXIMAGE2DARBPROC ELglCompressedTexImage2DARB;
  379. extern PFNGLCOMPRESSEDTEXIMAGE3DARBPROC ELglCompressedTexImage3DARB;
  380. extern PFNGLCOMPRESSEDTEXSUBIMAGE1DARBPROC ELglCompressedTexSubImage1DARB;
  381. extern PFNGLCOMPRESSEDTEXSUBIMAGE2DARBPROC ELglCompressedTexSubImage2DARB;
  382. extern PFNGLCOMPRESSEDTEXSUBIMAGE3DARBPROC ELglCompressedTexSubImage3DARB;
  383. extern PFNGLGETCOMPRESSEDTEXIMAGEARBPROC ELglGetCompressedTexImageARB;
  384. /* GL_ARB_texture_compression */
  385.  
  386. /* GL_ARB_occlusion_query */
  387. extern PFNGLBEGINQUERYARBPROC ELglBeginQueryARB;
  388. extern PFNGLDELETEQUERIESARBPROC ELglDeleteQueriesARB;
  389. extern PFNGLENDQUERYARBPROC ELglEndQueryARB;
  390. extern PFNGLGENQUERIESARBPROC ELglGenQueriesARB;
  391. extern PFNGLGETQUERYOBJECTIVARBPROC ELglGetQueryObjectivARB;
  392. extern PFNGLGETQUERYOBJECTUIVARBPROC ELglGetQueryObjectuivARB;
  393. extern PFNGLGETQUERYIVARBPROC ELglGetQueryivARB;
  394. extern PFNGLISQUERYARBPROC ELglIsQueryARB;
  395. /* GL_ARB_occlusion_query */
  396.  
  397. /* GL_ARB_vertex_program */
  398. extern PFNGLBINDPROGRAMARBPROC ELglBindProgramARB;
  399. extern PFNGLDELETEPROGRAMSARBPROC ELglDeleteProgramsARB;
  400. extern PFNGLDISABLEVERTEXATTRIBARRAYARBPROC ELglDisableVertexAttribArrayARB;
  401. extern PFNGLENABLEVERTEXATTRIBARRAYARBPROC ELglEnableVertexAttribArrayARB;
  402. extern PFNGLGENPROGRAMSARBPROC ELglGenProgramsARB;
  403. extern PFNGLGETPROGRAMENVPARAMETERDVARBPROC ELglGetProgramEnvParameterdvARB;
  404. extern PFNGLGETPROGRAMENVPARAMETERFVARBPROC ELglGetProgramEnvParameterfvARB;
  405. extern PFNGLGETPROGRAMLOCALPARAMETERDVARBPROC ELglGetProgramLocalParameterdvARB;
  406. extern PFNGLGETPROGRAMLOCALPARAMETERFVARBPROC ELglGetProgramLocalParameterfvARB;
  407. extern PFNGLGETPROGRAMSTRINGARBPROC ELglGetProgramStringARB;
  408. extern PFNGLGETPROGRAMIVARBPROC ELglGetProgramivARB;
  409. extern PFNGLGETVERTEXATTRIBPOINTERVARBPROC ELglGetVertexAttribPointervARB;
  410. extern PFNGLGETVERTEXATTRIBDVARBPROC ELglGetVertexAttribdvARB;
  411. extern PFNGLGETVERTEXATTRIBFVARBPROC ELglGetVertexAttribfvARB;
  412. extern PFNGLGETVERTEXATTRIBIVARBPROC ELglGetVertexAttribivARB;
  413. extern PFNGLISPROGRAMARBPROC ELglIsProgramARB;
  414. extern PFNGLPROGRAMENVPARAMETER4DARBPROC ELglProgramEnvParameter4dARB;
  415. extern PFNGLPROGRAMENVPARAMETER4DVARBPROC ELglProgramEnvParameter4dvARB;
  416. extern PFNGLPROGRAMENVPARAMETER4FARBPROC ELglProgramEnvParameter4fARB;
  417. extern PFNGLPROGRAMENVPARAMETER4FVARBPROC ELglProgramEnvParameter4fvARB;
  418. extern PFNGLPROGRAMLOCALPARAMETER4DARBPROC ELglProgramLocalParameter4dARB;
  419. extern PFNGLPROGRAMLOCALPARAMETER4DVARBPROC ELglProgramLocalParameter4dvARB;
  420. extern PFNGLPROGRAMLOCALPARAMETER4FARBPROC ELglProgramLocalParameter4fARB;
  421. extern PFNGLPROGRAMLOCALPARAMETER4FVARBPROC ELglProgramLocalParameter4fvARB;
  422. extern PFNGLPROGRAMSTRINGARBPROC ELglProgramStringARB;
  423. extern PFNGLVERTEXATTRIB1DARBPROC ELglVertexAttrib1dARB;
  424. extern PFNGLVERTEXATTRIB1DVARBPROC ELglVertexAttrib1dvARB;
  425. extern PFNGLVERTEXATTRIB1FARBPROC ELglVertexAttrib1fARB;
  426. extern PFNGLVERTEXATTRIB1FVARBPROC ELglVertexAttrib1fvARB;
  427. extern PFNGLVERTEXATTRIB1SARBPROC ELglVertexAttrib1sARB;
  428. extern PFNGLVERTEXATTRIB1SVARBPROC ELglVertexAttrib1svARB;
  429. extern PFNGLVERTEXATTRIB2DARBPROC ELglVertexAttrib2dARB;
  430. extern PFNGLVERTEXATTRIB2DVARBPROC ELglVertexAttrib2dvARB;
  431. extern PFNGLVERTEXATTRIB2FARBPROC ELglVertexAttrib2fARB;
  432. extern PFNGLVERTEXATTRIB2FVARBPROC ELglVertexAttrib2fvARB;
  433. extern PFNGLVERTEXATTRIB2SARBPROC ELglVertexAttrib2sARB;
  434. extern PFNGLVERTEXATTRIB2SVARBPROC ELglVertexAttrib2svARB;
  435. extern PFNGLVERTEXATTRIB3DARBPROC ELglVertexAttrib3dARB;
  436. extern PFNGLVERTEXATTRIB3DVARBPROC ELglVertexAttrib3dvARB;
  437. extern PFNGLVERTEXATTRIB3FARBPROC ELglVertexAttrib3fARB;
  438. extern PFNGLVERTEXATTRIB3FVARBPROC ELglVertexAttrib3fvARB;
  439. extern PFNGLVERTEXATTRIB3SARBPROC ELglVertexAttrib3sARB;
  440. extern PFNGLVERTEXATTRIB3SVARBPROC ELglVertexAttrib3svARB;
  441. extern PFNGLVERTEXATTRIB4NBVARBPROC ELglVertexAttrib4NbvARB;
  442. extern PFNGLVERTEXATTRIB4NIVARBPROC ELglVertexAttrib4NivARB;
  443. extern PFNGLVERTEXATTRIB4NSVARBPROC ELglVertexAttrib4NsvARB;
  444. extern PFNGLVERTEXATTRIB4NUBARBPROC ELglVertexAttrib4NubARB;
  445. extern PFNGLVERTEXATTRIB4NUBVARBPROC ELglVertexAttrib4NubvARB;
  446. extern PFNGLVERTEXATTRIB4NUIVARBPROC ELglVertexAttrib4NuivARB;
  447. extern PFNGLVERTEXATTRIB4NUSVARBPROC ELglVertexAttrib4NusvARB;
  448. extern PFNGLVERTEXATTRIB4BVARBPROC ELglVertexAttrib4bvARB;
  449. extern PFNGLVERTEXATTRIB4DARBPROC ELglVertexAttrib4dARB;
  450. extern PFNGLVERTEXATTRIB4DVARBPROC ELglVertexAttrib4dvARB;
  451. extern PFNGLVERTEXATTRIB4FARBPROC ELglVertexAttrib4fARB;
  452. extern PFNGLVERTEXATTRIB4FVARBPROC ELglVertexAttrib4fvARB;
  453. extern PFNGLVERTEXATTRIB4IVARBPROC ELglVertexAttrib4ivARB;
  454. extern PFNGLVERTEXATTRIB4SARBPROC ELglVertexAttrib4sARB;
  455. extern PFNGLVERTEXATTRIB4SVARBPROC ELglVertexAttrib4svARB;
  456. extern PFNGLVERTEXATTRIB4UBVARBPROC ELglVertexAttrib4ubvARB;
  457. extern PFNGLVERTEXATTRIB4UIVARBPROC ELglVertexAttrib4uivARB;
  458. extern PFNGLVERTEXATTRIB4USVARBPROC ELglVertexAttrib4usvARB;
  459. extern PFNGLVERTEXATTRIBPOINTERARBPROC ELglVertexAttribPointerARB;
  460. /* GL_ARB_vertex_program */
  461.  
  462. /* GL_ARB_vertex_shader */
  463. extern PFNGLBINDATTRIBLOCATIONARBPROC ELglBindAttribLocationARB;
  464. extern PFNGLGETACTIVEATTRIBARBPROC ELglGetActiveAttribARB;
  465. extern PFNGLGETATTRIBLOCATIONARBPROC ELglGetAttribLocationARB;
  466. /* GL_ARB_vertex_shader */
  467.  
  468. /* GL_ARB_shader_objects */
  469. extern PFNGLATTACHOBJECTARBPROC ELglAttachObjectARB;
  470. extern PFNGLCOMPILESHADERARBPROC ELglCompileShaderARB;
  471. extern PFNGLCREATEPROGRAMOBJECTARBPROC ELglCreateProgramObjectARB;
  472. extern PFNGLCREATESHADEROBJECTARBPROC ELglCreateShaderObjectARB;
  473. extern PFNGLDELETEOBJECTARBPROC ELglDeleteObjectARB;
  474. extern PFNGLDETACHOBJECTARBPROC ELglDetachObjectARB;
  475. extern PFNGLGETACTIVEUNIFORMARBPROC ELglGetActiveUniformARB;
  476. extern PFNGLGETATTACHEDOBJECTSARBPROC ELglGetAttachedObjectsARB;
  477. extern PFNGLGETHANDLEARBPROC ELglGetHandleARB;
  478. extern PFNGLGETINFOLOGARBPROC ELglGetInfoLogARB;
  479. extern PFNGLGETOBJECTPARAMETERFVARBPROC ELglGetObjectParameterfvARB;
  480. extern PFNGLGETOBJECTPARAMETERIVARBPROC ELglGetObjectParameterivARB;
  481. extern PFNGLGETSHADERSOURCEARBPROC ELglGetShaderSourceARB;
  482. extern PFNGLGETUNIFORMLOCATIONARBPROC ELglGetUniformLocationARB;
  483. extern PFNGLGETUNIFORMFVARBPROC ELglGetUniformfvARB;
  484. extern PFNGLGETUNIFORMIVARBPROC ELglGetUniformivARB;
  485. extern PFNGLLINKPROGRAMARBPROC ELglLinkProgramARB;
  486. extern PFNGLSHADERSOURCEARBPROC ELglShaderSourceARB;
  487. extern PFNGLUNIFORM1FARBPROC ELglUniform1fARB;
  488. extern PFNGLUNIFORM1FVARBPROC ELglUniform1fvARB;
  489. extern PFNGLUNIFORM1IARBPROC ELglUniform1iARB;
  490. extern PFNGLUNIFORM1IVARBPROC ELglUniform1ivARB;
  491. extern PFNGLUNIFORM2FARBPROC ELglUniform2fARB;
  492. extern PFNGLUNIFORM2FVARBPROC ELglUniform2fvARB;
  493. extern PFNGLUNIFORM2IARBPROC ELglUniform2iARB;
  494. extern PFNGLUNIFORM2IVARBPROC ELglUniform2ivARB;
  495. extern PFNGLUNIFORM3FARBPROC ELglUniform3fARB;
  496. extern PFNGLUNIFORM3FVARBPROC ELglUniform3fvARB;
  497. extern PFNGLUNIFORM3IARBPROC ELglUniform3iARB;
  498. extern PFNGLUNIFORM3IVARBPROC ELglUniform3ivARB;
  499. extern PFNGLUNIFORM4FARBPROC ELglUniform4fARB;
  500. extern PFNGLUNIFORM4FVARBPROC ELglUniform4fvARB;
  501. extern PFNGLUNIFORM4IARBPROC ELglUniform4iARB;
  502. extern PFNGLUNIFORM4IVARBPROC ELglUniform4ivARB;
  503. extern PFNGLUNIFORMMATRIX2FVARBPROC ELglUniformMatrix2fvARB;
  504. extern PFNGLUNIFORMMATRIX3FVARBPROC ELglUniformMatrix3fvARB;
  505. extern PFNGLUNIFORMMATRIX4FVARBPROC ELglUniformMatrix4fvARB;
  506. extern PFNGLUSEPROGRAMOBJECTARBPROC ELglUseProgramObjectARB;
  507. extern PFNGLVALIDATEPROGRAMARBPROC ELglValidateProgramARB;
  508. /* GL_ARB_shader_objects */
  509.  
  510. /* GL_EXT_fog_coord */
  511. extern PFNGLFOGCOORDPOINTEREXTPROC ELglFogCoordPointerEXT;
  512. extern PFNGLFOGCOORDDEXTPROC ELglFogCoorddEXT;
  513. extern PFNGLFOGCOORDDVEXTPROC ELglFogCoorddvEXT;
  514. extern PFNGLFOGCOORDFEXTPROC ELglFogCoordfEXT;
  515. extern PFNGLFOGCOORDFVEXTPROC ELglFogCoordfvEXT;
  516. /* GL_EXT_fog_coord */
  517.  
  518. /* GL_EXT_gpu_program_parameters */
  519. extern PFNGLPROGRAMENVPARAMETERS4FVEXTPROC ELglProgramEnvParameters4fvEXT;
  520. extern PFNGLPROGRAMLOCALPARAMETERS4FVEXTPROC ELglProgramLocalParameters4fvEXT;
  521. /* GL_EXT_gpu_program_parameters */
  522.  
  523. extern void init_opengl_extensions();
  524. extern Uint32 have_extension(extension_enum extension);
  525. extern Uint32 get_texture_units();
  526. extern float get_max_anisotropic_filter();
  527.  
  528. extern const char* get_gl_version_str();
  529. extern GLboolean supports_gl_version(Uint8 major, Uint8 minor);
  530.  
  531. #ifdef __cplusplus
  532. }
  533. #endif
  534.  
  535. #endif //_LOAD_GL_EXTENSIONS_H_
Add Comment
Please, Sign In to add comment