PageRenderTime 79ms CodeModel.GetById 36ms RepoModel.GetById 0ms app.codeStats 4ms

/packages/opengl/src/glext.pp

http://github.com/graemeg/freepascal
Puppet | 11391 lines | 10093 code | 1298 blank | 0 comment | 1971 complexity | 8408ddad5ba60ae072630bd7ffff1a8a MD5 | raw file
Possible License(s): GPL-2.0, LGPL-2.0, LGPL-2.1, LGPL-3.0, BSD-3-Clause

Large files files are truncated, but you can click here to view the full file

  1. {
  2. Adaption of the delphi3d.net OpenGL units to FreePascal
  3. Sebastian Guenther (sg@freepascal.org) in 2002
  4. These units are free to use
  5. }
  6. {$MACRO ON}
  7. {$MODE Delphi}
  8. {$IFDEF Windows}
  9. {$DEFINE extdecl:=stdcall }
  10. {$ELSE}
  11. {$DEFINE extdecl:=cdecl }
  12. {$ENDIF}
  13. unit GLext;
  14. (**************************************************
  15. * OpenGL extension loading library *
  16. * Generated by MetaGLext, written by Tom Nuydens *
  17. * (tom@delphi3d.net -- http://www.delphi3d.net *
  18. **************************************************)
  19. //*** Generated on 10/11/2002
  20. interface
  21. uses
  22. SysUtils,
  23. {$IFDEF Windows}
  24. Windows,
  25. {$ELSE}
  26. dynlibs,
  27. {$ENDIF}
  28. GL;
  29. {$IFDEF Windows}
  30. { Declared in Windows unit as well in FPC; but declared here as well, to be
  31. fully compatible to upstream version - sg }
  32. function wglGetProcAddress(proc: PChar): Pointer; extdecl; external 'OpenGL32.dll';
  33. {$ELSE}
  34. function wglGetProcAddress(proc: PChar): Pointer;
  35. {$ENDIF}
  36. // Test if the given extension name is present in the given extension string.
  37. function glext_ExtensionSupported(const extension: String; const searchIn: String): Boolean;
  38. // Load the extension with the given name.
  39. function glext_LoadExtension(ext: String): Boolean;
  40. type
  41. GLcharARB = Char;
  42. TGLcharARB = GLcharARB;
  43. PGLcharARB = ^GLcharARB;
  44. PPGLchar = ^PGLchar;
  45. {$ifdef DARWIN}
  46. GLHandleARB = Pointer; // defined as void * in OpenGL.framework/glext.h
  47. {$else}
  48. GLhandleARB = Cardinal;
  49. {$endif}
  50. TGLhandleARB = GLhandleARB;
  51. PGLhandleARB = ^GLhandleARB;
  52. GLintptr = PtrInt;
  53. TGLintptr = GLintptr;
  54. PGLintptr = ^GLintptr;
  55. GLsizeiptr = PtrInt;
  56. TGLsizeiptr = GLsizeiptr;
  57. PGLsizeiptr = ^GLsizeiptr;
  58. GLchar = Char;
  59. TGLchar = GLchar;
  60. PGLchar = Pchar;
  61. GLint64 = Int64;
  62. TGLint64 = GLint64;
  63. PGLint64 = ^GLint64;
  64. GLuint64 = QWord;
  65. TGLuint64 = GLuint64;
  66. PGLuint64 = ^GLuint64;
  67. //***** GL_version_1_2 *****//
  68. const
  69. GL_UNSIGNED_BYTE_3_3_2 = $8032;
  70. GL_UNSIGNED_SHORT_4_4_4_4 = $8033;
  71. GL_UNSIGNED_SHORT_5_5_5_1 = $8034;
  72. GL_UNSIGNED_INT_8_8_8_8 = $8035;
  73. GL_UNSIGNED_INT_10_10_10_2 = $8036;
  74. GL_RESCALE_NORMAL = $803A;
  75. GL_UNSIGNED_BYTE_2_3_3_REV = $8362;
  76. GL_UNSIGNED_SHORT_5_6_5 = $8363;
  77. GL_UNSIGNED_SHORT_5_6_5_REV = $8364;
  78. GL_UNSIGNED_SHORT_4_4_4_4_REV = $8365;
  79. GL_UNSIGNED_SHORT_1_5_5_5_REV = $8366;
  80. GL_UNSIGNED_INT_8_8_8_8_REV = $8367;
  81. GL_UNSIGNED_INT_2_10_10_10_REV = $8368;
  82. GL_BGR = $80E0;
  83. GL_BGRA = $80E1;
  84. GL_MAX_ELEMENTS_VERTICES = $80E8;
  85. GL_MAX_ELEMENTS_INDICES = $80E9;
  86. GL_CLAMP_TO_EDGE = $812F;
  87. GL_TEXTURE_MIN_LOD = $813A;
  88. GL_TEXTURE_MAX_LOD = $813B;
  89. GL_TEXTURE_BASE_LEVEL = $813C;
  90. GL_TEXTURE_MAX_LEVEL = $813D;
  91. GL_LIGHT_MODEL_COLOR_CONTROL = $81F8;
  92. GL_SINGLE_COLOR = $81F9;
  93. GL_SEPARATE_SPECULAR_COLOR = $81FA;
  94. GL_SMOOTH_POINT_SIZE_RANGE = $0B12;
  95. GL_SMOOTH_POINT_SIZE_GRANULARITY = $0B13;
  96. GL_SMOOTH_LINE_WIDTH_RANGE = $0B22;
  97. GL_SMOOTH_LINE_WIDTH_GRANULARITY = $0B23;
  98. GL_ALIASED_POINT_SIZE_RANGE = $846D;
  99. GL_ALIASED_LINE_WIDTH_RANGE = $846E;
  100. GL_PACK_SKIP_IMAGES = $806B;
  101. GL_PACK_IMAGE_HEIGHT = $806C;
  102. GL_UNPACK_SKIP_IMAGES = $806D;
  103. GL_UNPACK_IMAGE_HEIGHT = $806E;
  104. GL_TEXTURE_3D = $806F;
  105. GL_PROXY_TEXTURE_3D = $8070;
  106. GL_TEXTURE_DEPTH = $8071;
  107. GL_TEXTURE_WRAP_R = $8072;
  108. GL_MAX_3D_TEXTURE_SIZE = $8073;
  109. var
  110. glBlendColor: procedure(red: GLclampf; green: GLclampf; blue: GLclampf; alpha: GLclampf); extdecl;
  111. glBlendEquation: procedure(mode: GLenum); extdecl;
  112. glDrawRangeElements: procedure(mode: GLenum; start: GLuint; _end: GLuint; count: GLsizei; _type: GLenum; const indices: PGLvoid); extdecl;
  113. glColorTable: procedure(target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; _type: GLenum; const table: PGLvoid); extdecl;
  114. glColorTableParameterfv: procedure(target: GLenum; pname: GLenum; const params: PGLfloat); extdecl;
  115. glColorTableParameteriv: procedure(target: GLenum; pname: GLenum; const params: PGLint); extdecl;
  116. glCopyColorTable: procedure(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei); extdecl;
  117. glGetColorTable: procedure(target: GLenum; format: GLenum; _type: GLenum; table: PGLvoid); extdecl;
  118. glGetColorTableParameterfv: procedure(target: GLenum; pname: GLenum; params: PGLfloat); extdecl;
  119. glGetColorTableParameteriv: procedure(target: GLenum; pname: GLenum; params: PGLint); extdecl;
  120. glColorSubTable: procedure(target: GLenum; start: GLsizei; count: GLsizei; format: GLenum; _type: GLenum; const data: PGLvoid); extdecl;
  121. glCopyColorSubTable: procedure(target: GLenum; start: GLsizei; x: GLint; y: GLint; width: GLsizei); extdecl;
  122. glConvolutionFilter1D: procedure(target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; _type: GLenum; const image: PGLvoid); extdecl;
  123. glConvolutionFilter2D: procedure(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; _type: GLenum; const image: PGLvoid); extdecl;
  124. glConvolutionParameterf: procedure(target: GLenum; pname: GLenum; params: GLfloat); extdecl;
  125. glConvolutionParameterfv: procedure(target: GLenum; pname: GLenum; const params: PGLfloat); extdecl;
  126. glConvolutionParameteri: procedure(target: GLenum; pname: GLenum; params: GLint); extdecl;
  127. glConvolutionParameteriv: procedure(target: GLenum; pname: GLenum; const params: PGLint); extdecl;
  128. glCopyConvolutionFilter1D: procedure(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei); extdecl;
  129. glCopyConvolutionFilter2D: procedure(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; height: GLsizei); extdecl;
  130. glGetConvolutionFilter: procedure(target: GLenum; format: GLenum; _type: GLenum; image: PGLvoid); extdecl;
  131. glGetConvolutionParameterfv: procedure(target: GLenum; pname: GLenum; params: PGLfloat); extdecl;
  132. glGetConvolutionParameteriv: procedure(target: GLenum; pname: GLenum; params: PGLint); extdecl;
  133. glGetSeparableFilter: procedure(target: GLenum; format: GLenum; _type: GLenum; row: PGLvoid; column: PGLvoid; span: PGLvoid); extdecl;
  134. glSeparableFilter2D: procedure(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; _type: GLenum; const row: PGLvoid; const column: PGLvoid); extdecl;
  135. glGetHistogram: procedure(target: GLenum; reset: GLboolean; format: GLenum; _type: GLenum; values: PGLvoid); extdecl;
  136. glGetHistogramParameterfv: procedure(target: GLenum; pname: GLenum; params: PGLfloat); extdecl;
  137. glGetHistogramParameteriv: procedure(target: GLenum; pname: GLenum; params: PGLint); extdecl;
  138. glGetMinmax: procedure(target: GLenum; reset: GLboolean; format: GLenum; _type: GLenum; values: PGLvoid); extdecl;
  139. glGetMinmaxParameterfv: procedure(target: GLenum; pname: GLenum; params: PGLfloat); extdecl;
  140. glGetMinmaxParameteriv: procedure(target: GLenum; pname: GLenum; params: PGLint); extdecl;
  141. glHistogram: procedure(target: GLenum; width: GLsizei; internalformat: GLenum; sink: GLboolean); extdecl;
  142. glMinmax: procedure(target: GLenum; internalformat: GLenum; sink: GLboolean); extdecl;
  143. glResetHistogram: procedure(target: GLenum); extdecl;
  144. glResetMinmax: procedure(target: GLenum); extdecl;
  145. glTexImage3D: procedure(target: GLenum; level: GLint; internalformat: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; format: GLenum; _type: GLenum; const pixels: PGLvoid); extdecl;
  146. glTexSubImage3D: procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; _type: GLenum; const pixels: PGLvoid); extdecl;
  147. glCopyTexSubImage3D: procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; x: GLint; y: GLint; width: GLsizei; height: GLsizei); extdecl;
  148. function Load_GL_version_1_2: Boolean;
  149. //***** GL_ARB_imaging *****//
  150. const
  151. GL_CONSTANT_COLOR = $8001;
  152. GL_ONE_MINUS_CONSTANT_COLOR = $8002;
  153. GL_CONSTANT_ALPHA = $8003;
  154. GL_ONE_MINUS_CONSTANT_ALPHA = $8004;
  155. GL_BLEND_COLOR = $8005;
  156. GL_FUNC_ADD = $8006;
  157. GL_MIN = $8007;
  158. GL_MAX = $8008;
  159. GL_BLEND_EQUATION = $8009;
  160. GL_FUNC_SUBTRACT = $800A;
  161. GL_FUNC_REVERSE_SUBTRACT = $800B;
  162. GL_CONVOLUTION_1D = $8010;
  163. GL_CONVOLUTION_2D = $8011;
  164. GL_SEPARABLE_2D = $8012;
  165. GL_CONVOLUTION_BORDER_MODE = $8013;
  166. GL_CONVOLUTION_FILTER_SCALE = $8014;
  167. GL_CONVOLUTION_FILTER_BIAS = $8015;
  168. GL_REDUCE = $8016;
  169. GL_CONVOLUTION_FORMAT = $8017;
  170. GL_CONVOLUTION_WIDTH = $8018;
  171. GL_CONVOLUTION_HEIGHT = $8019;
  172. GL_MAX_CONVOLUTION_WIDTH = $801A;
  173. GL_MAX_CONVOLUTION_HEIGHT = $801B;
  174. GL_POST_CONVOLUTION_RED_SCALE = $801C;
  175. GL_POST_CONVOLUTION_GREEN_SCALE = $801D;
  176. GL_POST_CONVOLUTION_BLUE_SCALE = $801E;
  177. GL_POST_CONVOLUTION_ALPHA_SCALE = $801F;
  178. GL_POST_CONVOLUTION_RED_BIAS = $8020;
  179. GL_POST_CONVOLUTION_GREEN_BIAS = $8021;
  180. GL_POST_CONVOLUTION_BLUE_BIAS = $8022;
  181. GL_POST_CONVOLUTION_ALPHA_BIAS = $8023;
  182. GL_HISTOGRAM = $8024;
  183. GL_PROXY_HISTOGRAM = $8025;
  184. GL_HISTOGRAM_WIDTH = $8026;
  185. GL_HISTOGRAM_FORMAT = $8027;
  186. GL_HISTOGRAM_RED_SIZE = $8028;
  187. GL_HISTOGRAM_GREEN_SIZE = $8029;
  188. GL_HISTOGRAM_BLUE_SIZE = $802A;
  189. GL_HISTOGRAM_ALPHA_SIZE = $802B;
  190. GL_HISTOGRAM_LUMINANCE_SIZE = $802C;
  191. GL_HISTOGRAM_SINK = $802D;
  192. GL_MINMAX = $802E;
  193. GL_MINMAX_FORMAT = $802F;
  194. GL_MINMAX_SINK = $8030;
  195. GL_TABLE_TOO_LARGE = $8031;
  196. GL_COLOR_MATRIX = $80B1;
  197. GL_COLOR_MATRIX_STACK_DEPTH = $80B2;
  198. GL_MAX_COLOR_MATRIX_STACK_DEPTH = $80B3;
  199. GL_POST_COLOR_MATRIX_RED_SCALE = $80B4;
  200. GL_POST_COLOR_MATRIX_GREEN_SCALE = $80B5;
  201. GL_POST_COLOR_MATRIX_BLUE_SCALE = $80B6;
  202. GL_POST_COLOR_MATRIX_ALPHA_SCALE = $80B7;
  203. GL_POST_COLOR_MATRIX_RED_BIAS = $80B8;
  204. GL_POST_COLOR_MATRIX_GREEN_BIAS = $80B9;
  205. GL_POST_COLOR_MATRIX_BLUE_BIAS = $80BA;
  206. GL_POST_COLOR_MATIX_ALPHA_BIAS = $80BB;
  207. GL_COLOR_TABLE = $80D0;
  208. GL_POST_CONVOLUTION_COLOR_TABLE = $80D1;
  209. GL_POST_COLOR_MATRIX_COLOR_TABLE = $80D2;
  210. GL_PROXY_COLOR_TABLE = $80D3;
  211. GL_PROXY_POST_CONVOLUTION_COLOR_TABLE = $80D4;
  212. GL_PROXY_POST_COLOR_MATRIX_COLOR_TABLE = $80D5;
  213. GL_COLOR_TABLE_SCALE = $80D6;
  214. GL_COLOR_TABLE_BIAS = $80D7;
  215. GL_COLOR_TABLE_FORMAT = $80D8;
  216. GL_COLOR_TABLE_WIDTH = $80D9;
  217. GL_COLOR_TABLE_RED_SIZE = $80DA;
  218. GL_COLOR_TABLE_GREEN_SIZE = $80DB;
  219. GL_COLOR_TABLE_BLUE_SIZE = $80DC;
  220. GL_COLOR_TABLE_ALPHA_SIZE = $80DD;
  221. GL_COLOR_TABLE_LUMINANCE_SIZE = $80DE;
  222. GL_COLOR_TABLE_INTENSITY_SIZE = $80DF;
  223. GL_IGNORE_BORDER = $8150;
  224. GL_CONSTANT_BORDER = $8151;
  225. GL_WRAP_BORDER = $8152;
  226. GL_REPLICATE_BORDER = $8153;
  227. GL_CONVOLUTION_BORDER_COLOR = $8154;
  228. function Load_GL_ARB_imaging: Boolean;
  229. //***** GL_version_1_3 *****//
  230. const
  231. GL_TEXTURE0 = $84C0;
  232. GL_TEXTURE1 = $84C1;
  233. GL_TEXTURE2 = $84C2;
  234. GL_TEXTURE3 = $84C3;
  235. GL_TEXTURE4 = $84C4;
  236. GL_TEXTURE5 = $84C5;
  237. GL_TEXTURE6 = $84C6;
  238. GL_TEXTURE7 = $84C7;
  239. GL_TEXTURE8 = $84C8;
  240. GL_TEXTURE9 = $84C9;
  241. GL_TEXTURE10 = $84CA;
  242. GL_TEXTURE11 = $84CB;
  243. GL_TEXTURE12 = $84CC;
  244. GL_TEXTURE13 = $84CD;
  245. GL_TEXTURE14 = $84CE;
  246. GL_TEXTURE15 = $84CF;
  247. GL_TEXTURE16 = $84D0;
  248. GL_TEXTURE17 = $84D1;
  249. GL_TEXTURE18 = $84D2;
  250. GL_TEXTURE19 = $84D3;
  251. GL_TEXTURE20 = $84D4;
  252. GL_TEXTURE21 = $84D5;
  253. GL_TEXTURE22 = $84D6;
  254. GL_TEXTURE23 = $84D7;
  255. GL_TEXTURE24 = $84D8;
  256. GL_TEXTURE25 = $84D9;
  257. GL_TEXTURE26 = $84DA;
  258. GL_TEXTURE27 = $84DB;
  259. GL_TEXTURE28 = $84DC;
  260. GL_TEXTURE29 = $84DD;
  261. GL_TEXTURE30 = $84DE;
  262. GL_TEXTURE31 = $84DF;
  263. GL_ACTIVE_TEXTURE = $84E0;
  264. GL_CLIENT_ACTIVE_TEXTURE = $84E1;
  265. GL_MAX_TEXTURE_UNITS = $84E2;
  266. GL_TRANSPOSE_MODELVIEW_MATRIX = $84E3;
  267. GL_TRANSPOSE_PROJECTION_MATRIX = $84E4;
  268. GL_TRANSPOSE_TEXTURE_MATRIX = $84E5;
  269. GL_TRANSPOSE_COLOR_MATRIX = $84E6;
  270. GL_MULTISAMPLE = $809D;
  271. GL_SAMPLE_ALPHA_TO_COVERAGE = $809E;
  272. GL_SAMPLE_ALPHA_TO_ONE = $809F;
  273. GL_SAMPLE_COVERAGE = $80A0;
  274. GL_SAMPLE_BUFFERS = $80A8;
  275. GL_SAMPLES = $80A9;
  276. GL_SAMPLE_COVERAGE_VALUE = $80AA;
  277. GL_SAMPLE_COVERAGE_INVERT = $80AB;
  278. GL_MULTISAMPLE_BIT = $20000000;
  279. GL_NORMAL_MAP = $8511;
  280. GL_REFLECTION_MAP = $8512;
  281. GL_TEXTURE_CUBE_MAP = $8513;
  282. GL_TEXTURE_BINDING_CUBE_MAP = $8514;
  283. GL_TEXTURE_CUBE_MAP_POSITIVE_X = $8515;
  284. GL_TEXTURE_CUBE_MAP_NEGATIVE_X = $8516;
  285. GL_TEXTURE_CUBE_MAP_POSITIVE_Y = $8517;
  286. GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = $8518;
  287. GL_TEXTURE_CUBE_MAP_POSITIVE_Z = $8519;
  288. GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = $851A;
  289. GL_PROXY_TEXTURE_CUBE_MAP = $851B;
  290. GL_MAX_CUBE_MAP_TEXTURE_SIZE = $851C;
  291. GL_COMPRESSED_ALPHA = $84E9;
  292. GL_COMPRESSED_LUMINANCE = $84EA;
  293. GL_COMPRESSED_LUMINANCE_ALPHA = $84EB;
  294. GL_COMPRESSED_INTENSITY = $84EC;
  295. GL_COMPRESSED_RGB = $84ED;
  296. GL_COMPRESSED_RGBA = $84EE;
  297. GL_TEXTURE_COMPRESSION_HINT = $84EF;
  298. GL_TEXTURE_COMPRESSED_IMAGE_SIZE = $86A0;
  299. GL_TEXTURE_COMPRESSED = $86A1;
  300. GL_NUM_COMPRESSED_TEXTURE_FORMATS = $86A2;
  301. GL_COMPRESSED_TEXTURE_FORMATS = $86A3;
  302. GL_CLAMP_TO_BORDER = $812D;
  303. GL_CLAMP_TO_BORDER_SGIS = $812D;
  304. GL_COMBINE = $8570;
  305. GL_COMBINE_RGB = $8571;
  306. GL_COMBINE_ALPHA = $8572;
  307. GL_SOURCE0_RGB = $8580;
  308. GL_SOURCE1_RGB = $8581;
  309. GL_SOURCE2_RGB = $8582;
  310. GL_SOURCE0_ALPHA = $8588;
  311. GL_SOURCE1_ALPHA = $8589;
  312. GL_SOURCE2_ALPHA = $858A;
  313. GL_OPERAND0_RGB = $8590;
  314. GL_OPERAND1_RGB = $8591;
  315. GL_OPERAND2_RGB = $8592;
  316. GL_OPERAND0_ALPHA = $8598;
  317. GL_OPERAND1_ALPHA = $8599;
  318. GL_OPERAND2_ALPHA = $859A;
  319. GL_RGB_SCALE = $8573;
  320. GL_ADD_SIGNED = $8574;
  321. GL_INTERPOLATE = $8575;
  322. GL_SUBTRACT = $84E7;
  323. GL_CONSTANT = $8576;
  324. GL_PRIMARY_COLOR = $8577;
  325. GL_PREVIOUS = $8578;
  326. GL_DOT3_RGB = $86AE;
  327. GL_DOT3_RGBA = $86AF;
  328. var
  329. glActiveTexture: procedure(texture: GLenum); extdecl;
  330. glClientActiveTexture: procedure(texture: GLenum); extdecl;
  331. glMultiTexCoord1d: procedure(target: GLenum; s: GLdouble); extdecl;
  332. glMultiTexCoord1dv: procedure(target: GLenum; const v: PGLdouble); extdecl;
  333. glMultiTexCoord1f: procedure(target: GLenum; s: GLfloat); extdecl;
  334. glMultiTexCoord1fv: procedure(target: GLenum; const v: PGLfloat); extdecl;
  335. glMultiTexCoord1i: procedure(target: GLenum; s: GLint); extdecl;
  336. glMultiTexCoord1iv: procedure(target: GLenum; const v: PGLint); extdecl;
  337. glMultiTexCoord1s: procedure(target: GLenum; s: GLshort); extdecl;
  338. glMultiTexCoord1sv: procedure(target: GLenum; const v: PGLshort); extdecl;
  339. glMultiTexCoord2d: procedure(target: GLenum; s: GLdouble; t: GLdouble); extdecl;
  340. glMultiTexCoord2dv: procedure(target: GLenum; const v: PGLdouble); extdecl;
  341. glMultiTexCoord2f: procedure(target: GLenum; s: GLfloat; t: GLfloat); extdecl;
  342. glMultiTexCoord2fv: procedure(target: GLenum; const v: PGLfloat); extdecl;
  343. glMultiTexCoord2i: procedure(target: GLenum; s: GLint; t: GLint); extdecl;
  344. glMultiTexCoord2iv: procedure(target: GLenum; const v: PGLint); extdecl;
  345. glMultiTexCoord2s: procedure(target: GLenum; s: GLshort; t: GLshort); extdecl;
  346. glMultiTexCoord2sv: procedure(target: GLenum; const v: PGLshort); extdecl;
  347. glMultiTexCoord3d: procedure(target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble); extdecl;
  348. glMultiTexCoord3dv: procedure(target: GLenum; const v: PGLdouble); extdecl;
  349. glMultiTexCoord3f: procedure(target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat); extdecl;
  350. glMultiTexCoord3fv: procedure(target: GLenum; const v: PGLfloat); extdecl;
  351. glMultiTexCoord3i: procedure(target: GLenum; s: GLint; t: GLint; r: GLint); extdecl;
  352. glMultiTexCoord3iv: procedure(target: GLenum; const v: PGLint); extdecl;
  353. glMultiTexCoord3s: procedure(target: GLenum; s: GLshort; t: GLshort; r: GLshort); extdecl;
  354. glMultiTexCoord3sv: procedure(target: GLenum; const v: PGLshort); extdecl;
  355. glMultiTexCoord4d: procedure(target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble; q: GLdouble); extdecl;
  356. glMultiTexCoord4dv: procedure(target: GLenum; const v: PGLdouble); extdecl;
  357. glMultiTexCoord4f: procedure(target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat; q: GLfloat); extdecl;
  358. glMultiTexCoord4fv: procedure(target: GLenum; const v: PGLfloat); extdecl;
  359. glMultiTexCoord4i: procedure(target: GLenum; s: GLint; t: GLint; r: GLint; q: GLint); extdecl;
  360. glMultiTexCoord4iv: procedure(target: GLenum; const v: PGLint); extdecl;
  361. glMultiTexCoord4s: procedure(target: GLenum; s: GLshort; t: GLshort; r: GLshort; q: GLshort); extdecl;
  362. glMultiTexCoord4sv: procedure(target: GLenum; const v: PGLshort); extdecl;
  363. glLoadTransposeMatrixf: procedure(const m: PGLfloat); extdecl;
  364. glLoadTransposeMatrixd: procedure(const m: PGLdouble); extdecl;
  365. glMultTransposeMatrixf: procedure(const m: PGLfloat); extdecl;
  366. glMultTransposeMatrixd: procedure(const m: PGLdouble); extdecl;
  367. glSampleCoverage: procedure(value: GLclampf; invert: GLboolean); extdecl;
  368. glCompressedTexImage3D: procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); extdecl;
  369. glCompressedTexImage2D: procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); extdecl;
  370. glCompressedTexImage1D: procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); extdecl;
  371. glCompressedTexSubImage3D: procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); extdecl;
  372. glCompressedTexSubImage2D: procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); extdecl;
  373. glCompressedTexSubImage1D: procedure(target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); extdecl;
  374. glGetCompressedTexImage: procedure(target: GLenum; level: GLint; img: PGLvoid); extdecl;
  375. function Load_GL_version_1_3: Boolean;
  376. //***** GL_ARB_multitexture *****//
  377. const
  378. GL_TEXTURE0_ARB = $84C0;
  379. GL_TEXTURE1_ARB = $84C1;
  380. GL_TEXTURE2_ARB = $84C2;
  381. GL_TEXTURE3_ARB = $84C3;
  382. GL_TEXTURE4_ARB = $84C4;
  383. GL_TEXTURE5_ARB = $84C5;
  384. GL_TEXTURE6_ARB = $84C6;
  385. GL_TEXTURE7_ARB = $84C7;
  386. GL_TEXTURE8_ARB = $84C8;
  387. GL_TEXTURE9_ARB = $84C9;
  388. GL_TEXTURE10_ARB = $84CA;
  389. GL_TEXTURE11_ARB = $84CB;
  390. GL_TEXTURE12_ARB = $84CC;
  391. GL_TEXTURE13_ARB = $84CD;
  392. GL_TEXTURE14_ARB = $84CE;
  393. GL_TEXTURE15_ARB = $84CF;
  394. GL_TEXTURE16_ARB = $84D0;
  395. GL_TEXTURE17_ARB = $84D1;
  396. GL_TEXTURE18_ARB = $84D2;
  397. GL_TEXTURE19_ARB = $84D3;
  398. GL_TEXTURE20_ARB = $84D4;
  399. GL_TEXTURE21_ARB = $84D5;
  400. GL_TEXTURE22_ARB = $84D6;
  401. GL_TEXTURE23_ARB = $84D7;
  402. GL_TEXTURE24_ARB = $84D8;
  403. GL_TEXTURE25_ARB = $84D9;
  404. GL_TEXTURE26_ARB = $84DA;
  405. GL_TEXTURE27_ARB = $84DB;
  406. GL_TEXTURE28_ARB = $84DC;
  407. GL_TEXTURE29_ARB = $84DD;
  408. GL_TEXTURE30_ARB = $84DE;
  409. GL_TEXTURE31_ARB = $84DF;
  410. GL_ACTIVE_TEXTURE_ARB = $84E0;
  411. GL_CLIENT_ACTIVE_TEXTURE_ARB = $84E1;
  412. GL_MAX_TEXTURE_UNITS_ARB = $84E2;
  413. var
  414. glActiveTextureARB: procedure(texture: GLenum); extdecl;
  415. glClientActiveTextureARB: procedure(texture: GLenum); extdecl;
  416. glMultiTexCoord1dARB: procedure(target: GLenum; s: GLdouble); extdecl;
  417. glMultiTexCoord1dvARB: procedure(target: GLenum; const v: PGLdouble); extdecl;
  418. glMultiTexCoord1fARB: procedure(target: GLenum; s: GLfloat); extdecl;
  419. glMultiTexCoord1fvARB: procedure(target: GLenum; const v: PGLfloat); extdecl;
  420. glMultiTexCoord1iARB: procedure(target: GLenum; s: GLint); extdecl;
  421. glMultiTexCoord1ivARB: procedure(target: GLenum; const v: PGLint); extdecl;
  422. glMultiTexCoord1sARB: procedure(target: GLenum; s: GLshort); extdecl;
  423. glMultiTexCoord1svARB: procedure(target: GLenum; const v: PGLshort); extdecl;
  424. glMultiTexCoord2dARB: procedure(target: GLenum; s: GLdouble; t: GLdouble); extdecl;
  425. glMultiTexCoord2dvARB: procedure(target: GLenum; const v: PGLdouble); extdecl;
  426. glMultiTexCoord2fARB: procedure(target: GLenum; s: GLfloat; t: GLfloat); extdecl;
  427. glMultiTexCoord2fvARB: procedure(target: GLenum; const v: PGLfloat); extdecl;
  428. glMultiTexCoord2iARB: procedure(target: GLenum; s: GLint; t: GLint); extdecl;
  429. glMultiTexCoord2ivARB: procedure(target: GLenum; const v: PGLint); extdecl;
  430. glMultiTexCoord2sARB: procedure(target: GLenum; s: GLshort; t: GLshort); extdecl;
  431. glMultiTexCoord2svARB: procedure(target: GLenum; const v: PGLshort); extdecl;
  432. glMultiTexCoord3dARB: procedure(target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble); extdecl;
  433. glMultiTexCoord3dvARB: procedure(target: GLenum; const v: PGLdouble); extdecl;
  434. glMultiTexCoord3fARB: procedure(target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat); extdecl;
  435. glMultiTexCoord3fvARB: procedure(target: GLenum; const v: PGLfloat); extdecl;
  436. glMultiTexCoord3iARB: procedure(target: GLenum; s: GLint; t: GLint; r: GLint); extdecl;
  437. glMultiTexCoord3ivARB: procedure(target: GLenum; const v: PGLint); extdecl;
  438. glMultiTexCoord3sARB: procedure(target: GLenum; s: GLshort; t: GLshort; r: GLshort); extdecl;
  439. glMultiTexCoord3svARB: procedure(target: GLenum; const v: PGLshort); extdecl;
  440. glMultiTexCoord4dARB: procedure(target: GLenum; s: GLdouble; t: GLdouble; r: GLdouble; q: GLdouble); extdecl;
  441. glMultiTexCoord4dvARB: procedure(target: GLenum; const v: PGLdouble); extdecl;
  442. glMultiTexCoord4fARB: procedure(target: GLenum; s: GLfloat; t: GLfloat; r: GLfloat; q: GLfloat); extdecl;
  443. glMultiTexCoord4fvARB: procedure(target: GLenum; const v: PGLfloat); extdecl;
  444. glMultiTexCoord4iARB: procedure(target: GLenum; s: GLint; t: GLint; r: GLint; q: GLint); extdecl;
  445. glMultiTexCoord4ivARB: procedure(target: GLenum; const v: PGLint); extdecl;
  446. glMultiTexCoord4sARB: procedure(target: GLenum; s: GLshort; t: GLshort; r: GLshort; q: GLshort); extdecl;
  447. glMultiTexCoord4svARB: procedure(target: GLenum; const v: PGLshort); extdecl;
  448. function Load_GL_ARB_multitexture: Boolean;
  449. //***** GL_ARB_transpose_matrix *****//
  450. const
  451. GL_TRANSPOSE_MODELVIEW_MATRIX_ARB = $84E3;
  452. GL_TRANSPOSE_PROJECTION_MATRIX_ARB = $84E4;
  453. GL_TRANSPOSE_TEXTURE_MATRIX_ARB = $84E5;
  454. GL_TRANSPOSE_COLOR_MATRIX_ARB = $84E6;
  455. var
  456. glLoadTransposeMatrixfARB: procedure(m: PGLfloat); extdecl;
  457. glLoadTransposeMatrixdARB: procedure(m: PGLdouble); extdecl;
  458. glMultTransposeMatrixfARB: procedure(m: PGLfloat); extdecl;
  459. glMultTransposeMatrixdARB: procedure(m: PGLdouble); extdecl;
  460. function Load_GL_ARB_transpose_matrix: Boolean;
  461. //***** GL_ARB_multisample *****//
  462. const
  463. WGL_SAMPLE_BUFFERS_ARB = $2041;
  464. WGL_SAMPLES_ARB = $2042;
  465. GL_MULTISAMPLE_ARB = $809D;
  466. GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = $809E;
  467. GL_SAMPLE_ALPHA_TO_ONE_ARB = $809F;
  468. GL_SAMPLE_COVERAGE_ARB = $80A0;
  469. GL_MULTISAMPLE_BIT_ARB = $20000000;
  470. GL_SAMPLE_BUFFERS_ARB = $80A8;
  471. GL_SAMPLES_ARB = $80A9;
  472. GL_SAMPLE_COVERAGE_VALUE_ARB = $80AA;
  473. GL_SAMPLE_COVERAGE_INVERT_ARB = $80AB;
  474. var
  475. glSampleCoverageARB: procedure(value: GLclampf; invert: GLboolean); extdecl;
  476. function Load_GL_ARB_multisample: Boolean;
  477. //***** GL_ARB_texture_env_add *****//
  478. function Load_GL_ARB_texture_env_add: Boolean;
  479. {$IFDEF Windows}
  480. //***** WGL_ARB_extensions_string *****//
  481. var
  482. wglGetExtensionsStringARB: function(hdc: HDC): Pchar; extdecl;
  483. function Load_WGL_ARB_extensions_string: Boolean;
  484. //***** WGL_ARB_buffer_region *****//
  485. const
  486. WGL_FRONT_COLOR_BUFFER_BIT_ARB = $0001;
  487. WGL_BACK_COLOR_BUFFER_BIT_ARB = $0002;
  488. WGL_DEPTH_BUFFER_BIT_ARB = $0004;
  489. WGL_STENCIL_BUFFER_BIT_ARB = $0008;
  490. var
  491. wglCreateBufferRegionARB: function(hDC: HDC; iLayerPlane: GLint; uType: GLuint): THandle; extdecl;
  492. wglDeleteBufferRegionARB: procedure(hRegion: THandle); extdecl;
  493. wglSaveBufferRegionARB: function(hRegion: THandle; x: GLint; y: GLint; width: GLint; height: GLint): BOOL; extdecl;
  494. wglRestoreBufferRegionARB: function(hRegion: THandle; x: GLint; y: GLint; width: GLint; height: GLint; xSrc: GLint; ySrc: GLint): BOOL; extdecl;
  495. function Load_WGL_ARB_buffer_region: Boolean;
  496. {$ENDIF}
  497. //***** GL_ARB_texture_cube_map *****//
  498. const
  499. GL_NORMAL_MAP_ARB = $8511;
  500. GL_REFLECTION_MAP_ARB = $8512;
  501. GL_TEXTURE_CUBE_MAP_ARB = $8513;
  502. GL_TEXTURE_BINDING_CUBE_MAP_ARB = $8514;
  503. GL_TEXTURE_CUBE_MAP_POSITIVE_X_ARB = $8515;
  504. GL_TEXTURE_CUBE_MAP_NEGATIVE_X_ARB = $8516;
  505. GL_TEXTURE_CUBE_MAP_POSITIVE_Y_ARB = $8517;
  506. GL_TEXTURE_CUBE_MAP_NEGATIVE_Y_ARB = $8518;
  507. GL_TEXTURE_CUBE_MAP_POSITIVE_Z_ARB = $8519;
  508. GL_TEXTURE_CUBE_MAP_NEGATIVE_Z_ARB = $851A;
  509. GL_PROXY_TEXTURE_CUBE_MAP_ARB = $851B;
  510. GL_MAX_CUBE_MAP_TEXTURE_SIZE_ARB = $851C;
  511. function Load_GL_ARB_texture_cube_map: Boolean;
  512. //***** GL_ARB_depth_texture *****//
  513. const
  514. GL_DEPTH_COMPONENT16_ARB = $81A5;
  515. GL_DEPTH_COMPONENT24_ARB = $81A6;
  516. GL_DEPTH_COMPONENT32_ARB = $81A7;
  517. GL_TEXTURE_DEPTH_SIZE_ARB = $884A;
  518. GL_DEPTH_TEXTURE_MODE_ARB = $884B;
  519. function Load_GL_ARB_depth_texture: Boolean;
  520. //***** GL_ARB_point_parameters *****//
  521. const
  522. GL_POINT_SIZE_MIN_ARB = $8126;
  523. GL_POINT_SIZE_MAX_ARB = $8127;
  524. GL_POINT_FADE_THRESHOLD_SIZE_ARB = $8128;
  525. GL_POINT_DISTANCE_ATTENUATION_ARB = $8129;
  526. var
  527. glPointParameterfARB: procedure(pname: GLenum; param: GLfloat); extdecl;
  528. glPointParameterfvARB: procedure(pname: GLenum; params: PGLfloat); extdecl;
  529. function Load_GL_ARB_point_parameters: Boolean;
  530. //***** GL_ARB_shadow *****//
  531. const
  532. GL_TEXTURE_COMPARE_MODE_ARB = $884C;
  533. GL_TEXTURE_COMPARE_FUNC_ARB = $884D;
  534. GL_COMPARE_R_TO_TEXTURE_ARB = $884E;
  535. function Load_GL_ARB_shadow: Boolean;
  536. //***** GL_ARB_shadow_ambient *****//
  537. const
  538. GL_TEXTURE_COMPARE_FAIL_VALUE_ARB = $80BF;
  539. function Load_GL_ARB_shadow_ambient: Boolean;
  540. //***** GL_ARB_texture_border_clamp *****//
  541. const
  542. GL_CLAMP_TO_BORDER_ARB = $812D;
  543. function Load_GL_ARB_texture_border_clamp: Boolean;
  544. //***** GL_ARB_texture_compression *****//
  545. const
  546. GL_COMPRESSED_ALPHA_ARB = $84E9;
  547. GL_COMPRESSED_LUMINANCE_ARB = $84EA;
  548. GL_COMPRESSED_LUMINANCE_ALPHA_ARB = $84EB;
  549. GL_COMPRESSED_INTENSITY_ARB = $84EC;
  550. GL_COMPRESSED_RGB_ARB = $84ED;
  551. GL_COMPRESSED_RGBA_ARB = $84EE;
  552. GL_TEXTURE_COMPRESSION_HINT_ARB = $84EF;
  553. GL_TEXTURE_COMPRESSED_IMAGE_SIZE_ARB = $86A0;
  554. GL_TEXTURE_COMPRESSED_ARB = $86A1;
  555. GL_NUM_COMPRESSED_TEXTURE_FORMATS_ARB = $86A2;
  556. GL_COMPRESSED_TEXTURE_FORMATS_ARB = $86A3;
  557. var
  558. glCompressedTexImage3DARB: procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; depth: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); extdecl;
  559. glCompressedTexImage2DARB: procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; height: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); extdecl;
  560. glCompressedTexImage1DARB: procedure(target: GLenum; level: GLint; internalformat: GLenum; width: GLsizei; border: GLint; imageSize: GLsizei; const data: PGLvoid); extdecl;
  561. glCompressedTexSubImage3DARB: procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; zoffset: GLint; width: GLsizei; height: GLsizei; depth: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); extdecl;
  562. glCompressedTexSubImage2DARB: procedure(target: GLenum; level: GLint; xoffset: GLint; yoffset: GLint; width: GLsizei; height: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); extdecl;
  563. glCompressedTexSubImage1DARB: procedure(target: GLenum; level: GLint; xoffset: GLint; width: GLsizei; format: GLenum; imageSize: GLsizei; const data: PGLvoid); extdecl;
  564. glGetCompressedTexImageARB: procedure(target: GLenum; lod: GLint; img: PGLvoid); extdecl;
  565. function Load_GL_ARB_texture_compression: Boolean;
  566. //***** GL_ARB_texture_env_combine *****//
  567. const
  568. GL_COMBINE_ARB = $8570;
  569. GL_COMBINE_RGB_ARB = $8571;
  570. GL_COMBINE_ALPHA_ARB = $8572;
  571. GL_SOURCE0_RGB_ARB = $8580;
  572. GL_SOURCE1_RGB_ARB = $8581;
  573. GL_SOURCE2_RGB_ARB = $8582;
  574. GL_SOURCE0_ALPHA_ARB = $8588;
  575. GL_SOURCE1_ALPHA_ARB = $8589;
  576. GL_SOURCE2_ALPHA_ARB = $858A;
  577. GL_OPERAND0_RGB_ARB = $8590;
  578. GL_OPERAND1_RGB_ARB = $8591;
  579. GL_OPERAND2_RGB_ARB = $8592;
  580. GL_OPERAND0_ALPHA_ARB = $8598;
  581. GL_OPERAND1_ALPHA_ARB = $8599;
  582. GL_OPERAND2_ALPHA_ARB = $859A;
  583. GL_RGB_SCALE_ARB = $8573;
  584. GL_ADD_SIGNED_ARB = $8574;
  585. GL_INTERPOLATE_ARB = $8575;
  586. GL_SUBTRACT_ARB = $84E7;
  587. GL_CONSTANT_ARB = $8576;
  588. GL_PRIMARY_COLOR_ARB = $8577;
  589. GL_PREVIOUS_ARB = $8578;
  590. function Load_GL_ARB_texture_env_combine: Boolean;
  591. //***** GL_ARB_texture_env_crossbar *****//
  592. function Load_GL_ARB_texture_env_crossbar: Boolean;
  593. //***** GL_ARB_texture_env_dot3 *****//
  594. const
  595. GL_DOT3_RGB_ARB = $86AE;
  596. GL_DOT3_RGBA_ARB = $86AF;
  597. function Load_GL_ARB_texture_env_dot3: Boolean;
  598. //***** GL_ARB_texture_mirrored_repeat *****//
  599. const
  600. GL_MIRRORED_REPEAT_ARB = $8370;
  601. function Load_GL_ARB_texture_mirrored_repeat: Boolean;
  602. //***** GL_ARB_vertex_blend *****//
  603. const
  604. GL_MAX_VERTEX_UNITS_ARB = $86A4;
  605. GL_ACTIVE_VERTEX_UNITS_ARB = $86A5;
  606. GL_WEIGHT_SUM_UNITY_ARB = $86A6;
  607. GL_VERTEX_BLEND_ARB = $86A7;
  608. GL_MODELVIEW0_ARB = $1700;
  609. GL_MODELVIEW1_ARB = $850A;
  610. GL_MODELVIEW2_ARB = $8722;
  611. GL_MODELVIEW3_ARB = $8723;
  612. GL_MODELVIEW4_ARB = $8724;
  613. GL_MODELVIEW5_ARB = $8725;
  614. GL_MODELVIEW6_ARB = $8726;
  615. GL_MODELVIEW7_ARB = $8727;
  616. GL_MODELVIEW8_ARB = $8728;
  617. GL_MODELVIEW9_ARB = $8729;
  618. GL_MODELVIEW10_ARB = $872A;
  619. GL_MODELVIEW11_ARB = $872B;
  620. GL_MODELVIEW12_ARB = $872C;
  621. GL_MODELVIEW13_ARB = $872D;
  622. GL_MODELVIEW14_ARB = $872E;
  623. GL_MODELVIEW15_ARB = $872F;
  624. GL_MODELVIEW16_ARB = $8730;
  625. GL_MODELVIEW17_ARB = $8731;
  626. GL_MODELVIEW18_ARB = $8732;
  627. GL_MODELVIEW19_ARB = $8733;
  628. GL_MODELVIEW20_ARB = $8734;
  629. GL_MODELVIEW21_ARB = $8735;
  630. GL_MODELVIEW22_ARB = $8736;
  631. GL_MODELVIEW23_ARB = $8737;
  632. GL_MODELVIEW24_ARB = $8738;
  633. GL_MODELVIEW25_ARB = $8739;
  634. GL_MODELVIEW26_ARB = $873A;
  635. GL_MODELVIEW27_ARB = $873B;
  636. GL_MODELVIEW28_ARB = $873C;
  637. GL_MODELVIEW29_ARB = $873D;
  638. GL_MODELVIEW30_ARB = $873E;
  639. GL_MODELVIEW31_ARB = $873F;
  640. GL_CURRENT_WEIGHT_ARB = $86A8;
  641. GL_WEIGHT_ARRAY_TYPE_ARB = $86A9;
  642. GL_WEIGHT_ARRAY_STRIDE_ARB = $86AA;
  643. GL_WEIGHT_ARRAY_SIZE_ARB = $86AB;
  644. GL_WEIGHT_ARRAY_POINTER_ARB = $86AC;
  645. GL_WEIGHT_ARRAY_ARB = $86AD;
  646. var
  647. glWeightbvARB: procedure(size: GLint; weights: PGLbyte); extdecl;
  648. glWeightsvARB: procedure(size: GLint; weights: PGLshort); extdecl;
  649. glWeightivARB: procedure(size: GLint; weights: PGLint); extdecl;
  650. glWeightfvARB: procedure(size: GLint; weights: PGLfloat); extdecl;
  651. glWeightdvARB: procedure(size: GLint; weights: PGLdouble); extdecl;
  652. glWeightvARB: procedure(size: GLint; weights: PGLdouble); extdecl;
  653. glWeightubvARB: procedure(size: GLint; weights: PGLubyte); extdecl;
  654. glWeightusvARB: procedure(size: GLint; weights: PGLushort); extdecl;
  655. glWeightuivARB: procedure(size: GLint; weights: PGLuint); extdecl;
  656. glWeightPointerARB: procedure(size: GLint; _type: GLenum; stride: GLsizei; pointer: PGLvoid); extdecl;
  657. glVertexBlendARB: procedure(count: GLint); extdecl;
  658. function Load_GL_ARB_vertex_blend: Boolean;
  659. //***** GL_ARB_vertex_program *****//
  660. const
  661. GL_VERTEX_PROGRAM_ARB = $8620;
  662. GL_VERTEX_PROGRAM_POINT_SIZE_ARB = $8642;
  663. GL_VERTEX_PROGRAM_TWO_SIDE_ARB = $8643;
  664. GL_COLOR_SUM_ARB = $8458;
  665. GL_PROGRAM_FORMAT_ASCII_ARB = $8875;
  666. GL_VERTEX_ATTRIB_ARRAY_ENABLED_ARB = $8622;
  667. GL_VERTEX_ATTRIB_ARRAY_SIZE_ARB = $8623;
  668. GL_VERTEX_ATTRIB_ARRAY_STRIDE_ARB = $8624;
  669. GL_VERTEX_ATTRIB_ARRAY_TYPE_ARB = $8625;
  670. GL_VERTEX_ATTRIB_ARRAY_NORMALIZED_ARB = $886A;
  671. GL_CURRENT_VERTEX_ATTRIB_ARB = $8626;
  672. GL_VERTEX_ATTRIB_ARRAY_POINTER_ARB = $8645;
  673. GL_PROGRAM_LENGTH_ARB = $8627;
  674. GL_PROGRAM_FORMAT_ARB = $8876;
  675. GL_PROGRAM_BINDING_ARB = $8677;
  676. GL_PROGRAM_INSTRUCTIONS_ARB = $88A0;
  677. GL_MAX_PROGRAM_INSTRUCTIONS_ARB = $88A1;
  678. GL_PROGRAM_NATIVE_INSTRUCTIONS_ARB = $88A2;
  679. GL_MAX_PROGRAM_NATIVE_INSTRUCTIONS_ARB = $88A3;
  680. GL_PROGRAM_TEMPORARIES_ARB = $88A4;
  681. GL_MAX_PROGRAM_TEMPORARIES_ARB = $88A5;
  682. GL_PROGRAM_NATIVE_TEMPORARIES_ARB = $88A6;
  683. GL_MAX_PROGRAM_NATIVE_TEMPORARIES_ARB = $88A7;
  684. GL_PROGRAM_PARAMETERS_ARB = $88A8;
  685. GL_MAX_PROGRAM_PARAMETERS_ARB = $88A9;
  686. GL_PROGRAM_NATIVE_PARAMETERS_ARB = $88AA;
  687. GL_MAX_PROGRAM_NATIVE_PARAMETERS_ARB = $88AB;
  688. GL_PROGRAM_ATTRIBS_ARB = $88AC;
  689. GL_MAX_PROGRAM_ATTRIBS_ARB = $88AD;
  690. GL_PROGRAM_NATIVE_ATTRIBS_ARB = $88AE;
  691. GL_MAX_PROGRAM_NATIVE_ATTRIBS_ARB = $88AF;
  692. GL_PROGRAM_ADDRESS_REGISTERS_ARB = $88B0;
  693. GL_MAX_PROGRAM_ADDRESS_REGISTERS_ARB = $88B1;
  694. GL_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = $88B2;
  695. GL_MAX_PROGRAM_NATIVE_ADDRESS_REGISTERS_ARB = $88B3;
  696. GL_MAX_PROGRAM_LOCAL_PARAMETERS_ARB = $88B4;
  697. GL_MAX_PROGRAM_ENV_PARAMETERS_ARB = $88B5;
  698. GL_PROGRAM_UNDER_NATIVE_LIMITS_ARB = $88B6;
  699. GL_PROGRAM_STRING_ARB = $8628;
  700. GL_PROGRAM_ERROR_POSITION_ARB = $864B;
  701. GL_CURRENT_MATRIX_ARB = $8641;
  702. GL_TRANSPOSE_CURRENT_MATRIX_ARB = $88B7;
  703. GL_CURRENT_MATRIX_STACK_DEPTH_ARB = $8640;
  704. GL_MAX_VERTEX_ATTRIBS_ARB = $8869;
  705. GL_MAX_PROGRAM_MATRICES_ARB = $862F;
  706. GL_MAX_PROGRAM_MATRIX_STACK_DEPTH_ARB = $862E;
  707. GL_PROGRAM_ERROR_STRING_ARB = $8874;
  708. GL_MATRIX0_ARB = $88C0;
  709. GL_MATRIX1_ARB = $88C1;
  710. GL_MATRIX2_ARB = $88C2;
  711. GL_MATRIX3_ARB = $88C3;
  712. GL_MATRIX4_ARB = $88C4;
  713. GL_MATRIX5_ARB = $88C5;
  714. GL_MATRIX6_ARB = $88C6;
  715. GL_MATRIX7_ARB = $88C7;
  716. GL_MATRIX8_ARB = $88C8;
  717. GL_MATRIX9_ARB = $88C9;
  718. GL_MATRIX10_ARB = $88CA;
  719. GL_MATRIX11_ARB = $88CB;
  720. GL_MATRIX12_ARB = $88CC;
  721. GL_MATRIX13_ARB = $88CD;
  722. GL_MATRIX14_ARB = $88CE;
  723. GL_MATRIX15_ARB = $88CF;
  724. GL_MATRIX16_ARB = $88D0;
  725. GL_MATRIX17_ARB = $88D1;
  726. GL_MATRIX18_ARB = $88D2;
  727. GL_MATRIX19_ARB = $88D3;
  728. GL_MATRIX20_ARB = $88D4;
  729. GL_MATRIX21_ARB = $88D5;
  730. GL_MATRIX22_ARB = $88D6;
  731. GL_MATRIX23_ARB = $88D7;
  732. GL_MATRIX24_ARB = $88D8;
  733. GL_MATRIX25_ARB = $88D9;
  734. GL_MATRIX26_ARB = $88DA;
  735. GL_MATRIX27_ARB = $88DB;
  736. GL_MATRIX28_ARB = $88DC;
  737. GL_MATRIX29_ARB = $88DD;
  738. GL_MATRIX30_ARB = $88DE;
  739. GL_MATRIX31_ARB = $88DF;
  740. var
  741. glVertexAttrib1sARB: procedure(index: GLuint; x: GLshort); extdecl;
  742. glVertexAttrib1fARB: procedure(index: GLuint; x: GLfloat); extdecl;
  743. glVertexAttrib1dARB: procedure(index: GLuint; x: GLdouble); extdecl;
  744. glVertexAttrib2sARB: procedure(index: GLuint; x: GLshort; y: GLshort); extdecl;
  745. glVertexAttrib2fARB: procedure(index: GLuint; x: GLfloat; y: GLfloat); extdecl;
  746. glVertexAttrib2dARB: procedure(index: GLuint; x: GLdouble; y: GLdouble); extdecl;
  747. glVertexAttrib3sARB: procedure(index: GLuint; x: GLshort; y: GLshort; z: GLshort); extdecl;
  748. glVertexAttrib3fARB: procedure(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat); extdecl;
  749. glVertexAttrib3dARB: procedure(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble); extdecl;
  750. glVertexAttrib4sARB: procedure(index: GLuint; x: GLshort; y: GLshort; z: GLshort; w: GLshort); extdecl;
  751. glVertexAttrib4fARB: procedure(index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); extdecl;
  752. glVertexAttrib4dARB: procedure(index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); extdecl;
  753. glVertexAttrib4NubARB: procedure(index: GLuint; x: GLubyte; y: GLubyte; z: GLubyte; w: GLubyte); extdecl;
  754. glVertexAttrib1svARB: procedure(index: GLuint; const v: PGLshort); extdecl;
  755. glVertexAttrib1fvARB: procedure(index: GLuint; const v: PGLfloat); extdecl;
  756. glVertexAttrib1dvARB: procedure(index: GLuint; const v: PGLdouble); extdecl;
  757. glVertexAttrib2svARB: procedure(index: GLuint; const v: PGLshort); extdecl;
  758. glVertexAttrib2fvARB: procedure(index: GLuint; const v: PGLfloat); extdecl;
  759. glVertexAttrib2dvARB: procedure(index: GLuint; const v: PGLdouble); extdecl;
  760. glVertexAttrib3svARB: procedure(index: GLuint; const v: PGLshort); extdecl;
  761. glVertexAttrib3fvARB: procedure(index: GLuint; const v: PGLfloat); extdecl;
  762. glVertexAttrib3dvARB: procedure(index: GLuint; const v: PGLdouble); extdecl;
  763. glVertexAttrib4bvARB: procedure(index: GLuint; const v: PGLbyte); extdecl;
  764. glVertexAttrib4svARB: procedure(index: GLuint; const v: PGLshort); extdecl;
  765. glVertexAttrib4ivARB: procedure(index: GLuint; const v: PGLint); extdecl;
  766. glVertexAttrib4ubvARB: procedure(index: GLuint; const v: PGLubyte); extdecl;
  767. glVertexAttrib4usvARB: procedure(index: GLuint; const v: PGLushort); extdecl;
  768. glVertexAttrib4uivARB: procedure(index: GLuint; const v: PGLuint); extdecl;
  769. glVertexAttrib4fvARB: procedure(index: GLuint; const v: PGLfloat); extdecl;
  770. glVertexAttrib4dvARB: procedure(index: GLuint; const v: PGLdouble); extdecl;
  771. glVertexAttrib4NbvARB: procedure(index: GLuint; const v: PGLbyte); extdecl;
  772. glVertexAttrib4NsvARB: procedure(index: GLuint; const v: PGLshort); extdecl;
  773. glVertexAttrib4NivARB: procedure(index: GLuint; const v: PGLint); extdecl;
  774. glVertexAttrib4NubvARB: procedure(index: GLuint; const v: PGLubyte); extdecl;
  775. glVertexAttrib4NusvARB: procedure(index: GLuint; const v: PGLushort); extdecl;
  776. glVertexAttrib4NuivARB: procedure(index: GLuint; const v: PGLuint); extdecl;
  777. glVertexAttribPointerARB: procedure(index: GLuint; size: GLint; _type: GLenum; normalized: GLboolean; stride: GLsizei; const pointer: PGLvoid); extdecl;
  778. glEnableVertexAttribArrayARB: procedure(index: GLuint); extdecl;
  779. glDisableVertexAttribArrayARB: procedure(index: GLuint); extdecl;
  780. glProgramStringARB: procedure(target: GLenum; format: GLenum; len: GLsizei; const _string: PGLvoid); extdecl;
  781. glBindProgramARB: procedure(target: GLenum; _program: GLuint); extdecl;
  782. glDeleteProgramsARB: procedure(n: GLsizei; const programs: PGLuint); extdecl;
  783. glGenProgramsARB: procedure(n: GLsizei; programs: PGLuint); extdecl;
  784. glProgramEnvParameter4dARB: procedure(target: GLenum; index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); extdecl;
  785. glProgramEnvParameter4dvARB: procedure(target: GLenum; index: GLuint; const params: PGLdouble); extdecl;
  786. glProgramEnvParameter4fARB: procedure(target: GLenum; index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); extdecl;
  787. glProgramEnvParameter4fvARB: procedure(target: GLenum; index: GLuint; const params: PGLfloat); extdecl;
  788. glProgramLocalParameter4dARB: procedure(target: GLenum; index: GLuint; x: GLdouble; y: GLdouble; z: GLdouble; w: GLdouble); extdecl;
  789. glProgramLocalParameter4dvARB: procedure(target: GLenum; index: GLuint; const params: PGLdouble); extdecl;
  790. glProgramLocalParameter4fARB: procedure(target: GLenum; index: GLuint; x: GLfloat; y: GLfloat; z: GLfloat; w: GLfloat); extdecl;
  791. glProgramLocalParameter4fvARB: procedure(target: GLenum; index: GLuint; const params: PGLfloat); extdecl;
  792. glGetProgramEnvParameterdvARB: procedure(target: GLenum; index: GLuint; params: PGLdouble); extdecl;
  793. glGetProgramEnvParameterfvARB: procedure(target: GLenum; index: GLuint; params: PGLfloat); extdecl;
  794. glGetProgramLocalParameterdvARB: procedure(target: GLenum; index: GLuint; params: PGLdouble); extdecl;
  795. glGetProgramLocalParameterfvARB: procedure(target: GLenum; index: GLuint; params: PGLfloat); extdecl;
  796. glGetProgramivARB: procedure(target: GLenum; pname: GLenum; params: PGLint); extdecl;
  797. glGetProgramStringARB: procedure(target: GLenum; pname: GLenum; _string: PGLvoid); extdecl;
  798. glGetVertexAttribdvARB: procedure(index: GLuint; pname: GLenum; params: PGLdouble); extdecl;
  799. glGetVertexAttribfvARB: procedure(index: GLuint; pname: GLenum; params: PGLfloat); extdecl;
  800. glGetVertexAttribivARB: procedure(index: GLuint; pname: GLenum; params: PGLint); extdecl;
  801. glGetVertexAttribPointervARB: procedure(index: GLuint; pname: GLenum; pointer: PGLvoid); extdecl;
  802. glIsProgramARB: function(_program: GLuint): GLboolean; extdecl;
  803. function Load_GL_ARB_vertex_program: Boolean;
  804. //***** GL_ARB_window_pos *****//
  805. var
  806. glWindowPos2dARB: procedure(x: GLdouble; y: GLdouble); extdecl;
  807. glWindowPos2fARB: procedure(x: GLfloat; y: GLfloat); extdecl;
  808. glWindowPos2iARB: procedure(x: GLint; y: GLint); extdecl;
  809. glWindowPos2sARB: procedure(x: GLshort; y: GLshort); extdecl;
  810. glWindowPos2dvARB: procedure(const p: PGLdouble); extdecl;
  811. glWindowPos2fvARB: procedure(const p: PGLfloat); extdecl;
  812. glWindowPos2ivARB: procedure(const p: PGLint); extdecl;
  813. glWindowPos2svARB: procedure(const p: PGLshort); extdecl;
  814. glWindowPos3dARB: procedure(x: GLdouble; y: GLdouble; z: GLdouble); extdecl;
  815. glWindowPos3fARB: procedure(x: GLfloat; y: GLfloat; z: GLfloat); extdecl;
  816. glWindowPos3iARB: procedure(x: GLint; y: GLint; z: GLint); extdecl;
  817. glWindowPos3sARB: procedure(x: GLshort; y: GLshort; z: GLshort); extdecl;
  818. glWindowPos3dvARB: procedure(const p: PGLdouble); extdecl;
  819. glWindowPos3fvARB: procedure(const p: PGLfloat); extdecl;
  820. glWindowPos3ivARB: procedure(const p: PGLint); extdecl;
  821. glWindowPos3svARB: procedure(const p: PGLshort); extdecl;
  822. function Load_GL_ARB_window_pos: Boolean;
  823. //***** GL_EXT_422_pixels *****//
  824. const
  825. GL_422_EXT = $80CC;
  826. GL_422_REV_EXT = $80CD;
  827. GL_422_AVERAGE_EXT = $80CE;
  828. GL_422_REV_AVERAGE_EXT = $80CF;
  829. function Load_GL_EXT_422_pixels: Boolean;
  830. //***** GL_EXT_abgr *****//
  831. const
  832. GL_ABGR_EXT = $8000;
  833. function Load_GL_EXT_abgr: Boolean;
  834. //***** GL_EXT_bgra *****//
  835. const
  836. GL_BGR_EXT = $80E0;
  837. GL_BGRA_EXT = $80E1;
  838. function Load_GL_EXT_bgra: Boolean;
  839. //***** GL_EXT_blend_color *****//
  840. const
  841. GL_CONSTANT_COLOR_EXT = $8001;
  842. GL_ONE_MINUS_CONSTANT_COLOR_EXT = $8002;
  843. GL_CONSTANT_ALPHA_EXT = $8003;
  844. GL_ONE_MINUS_CONSTANT_ALPHA_EXT = $8004;
  845. GL_BLEND_COLOR_EXT = $8005;
  846. var
  847. glBlendColorEXT: procedure(red: GLclampf; green: GLclampf; blue: GLclampf; alpha: GLclampf); extdecl;
  848. function Load_GL_EXT_blend_color: Boolean;
  849. //***** GL_EXT_blend_func_separate *****//
  850. const
  851. GL_BLEND_DST_RGB_EXT = $80C8;
  852. GL_BLEND_SRC_RGB_EXT = $80C9;
  853. GL_BLEND_DST_ALPHA_EXT = $80CA;
  854. GL_BLEND_SRC_ALPHA_EXT = $80CB;
  855. var
  856. glBlendFuncSeparateEXT: procedure(sfactorRGB: GLenum; dfactorRGB: GLenum; sfactorAlpha: GLenum; dfactorAlpha: GLenum); extdecl;
  857. function Load_GL_EXT_blend_func_separate: Boolean;
  858. //***** GL_EXT_blend_logic_op *****//
  859. function Load_GL_EXT_blend_logic_op: Boolean;
  860. //***** GL_EXT_blend_minmax *****//
  861. const
  862. GL_FUNC_ADD_EXT = $8006;
  863. GL_MIN_EXT = $8007;
  864. GL_MAX_EXT = $8008;
  865. GL_BLEND_EQUATION_EXT = $8009;
  866. var
  867. glBlendEquationEXT: procedure(mode: GLenum); extdecl;
  868. function Load_GL_EXT_blend_minmax: Boolean;
  869. //***** GL_EXT_blend_subtract *****//
  870. const
  871. GL_FUNC_SUBTRACT_EXT = $800A;
  872. GL_FUNC_REVERSE_SUBTRACT_EXT = $800B;
  873. function Load_GL_EXT_blend_subtract: Boolean;
  874. //***** GL_EXT_clip_volume_hint *****//
  875. const
  876. GL_CLIP_VOLUME_CLIPPING_HINT_EXT = $80F0;
  877. function Load_GL_EXT_clip_volume_hint: Boolean;
  878. //***** GL_EXT_color_subtable *****//
  879. var
  880. glColorSubTableEXT: procedure(target: GLenum; start: GLsizei; count: GLsizei; format: GLenum; _type: GLenum; const data: PGLvoid); extdecl;
  881. glCopyColorSubTableEXT: procedure(target: GLenum; start: GLsizei; x: GLint; y: GLint; width: GLsizei); extdecl;
  882. function Load_GL_EXT_color_subtable: Boolean;
  883. //***** GL_EXT_compiled_vertex_array *****//
  884. const
  885. GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = $81A8;
  886. GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = $81A9;
  887. var
  888. glLockArraysEXT: procedure(first: GLint; count: GLsizei); extdecl;
  889. glUnlockArraysEXT: procedure(); extdecl;
  890. function Load_GL_EXT_compiled_vertex_array: Boolean;
  891. //***** GL_EXT_convolution *****//
  892. const
  893. GL_CONVOLUTION_1D_EXT = $8010;
  894. GL_CONVOLUTION_2D_EXT = $8011;
  895. GL_SEPARABLE_2D_EXT = $8012;
  896. GL_CONVOLUTION_BORDER_MODE_EXT = $8013;
  897. GL_CONVOLUTION_FILTER_SCALE_EXT = $8014;
  898. GL_CONVOLUTION_FILTER_BIAS_EXT = $8015;
  899. GL_REDUCE_EXT = $8016;
  900. GL_CONVOLUTION_FORMAT_EXT = $8017;
  901. GL_CONVOLUTION_WIDTH_EXT = $8018;
  902. GL_CONVOLUTION_HEIGHT_EXT = $8019;
  903. GL_MAX_CONVOLUTION_WIDTH_EXT = $801A;
  904. GL_MAX_CONVOLUTION_HEIGHT_EXT = $801B;
  905. GL_POST_CONVOLUTION_RED_SCALE_EXT = $801C;
  906. GL_POST_CONVOLUTION_GREEN_SCALE_EXT = $801D;
  907. GL_POST_CONVOLUTION_BLUE_SCALE_EXT = $801E;
  908. GL_POST_CONVOLUTION_ALPHA_SCALE_EXT = $801F;
  909. GL_POST_CONVOLUTION_RED_BIAS_EXT = $8020;
  910. GL_POST_CONVOLUTION_GREEN_BIAS_EXT = $8021;
  911. GL_POST_CONVOLUTION_BLUE_BIAS_EXT = $8022;
  912. GL_POST_CONVOLUTION_ALPHA_BIAS_EXT = $8023;
  913. var
  914. glConvolutionFilter1DEXT: procedure(target: GLenum; internalformat: GLenum; width: GLsizei; format: GLenum; _type: GLenum; const image: PGLvoid); extdecl;
  915. glConvolutionFilter2DEXT: procedure(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; _type: GLenum; const image: PGLvoid); extdecl;
  916. glCopyConvolutionFilter1DEXT: procedure(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei); extdecl;
  917. glCopyConvolutionFilter2DEXT: procedure(target: GLenum; internalformat: GLenum; x: GLint; y: GLint; width: GLsizei; height: GLsizei); extdecl;
  918. glGetConvolutionFilterEXT: procedure(target: GLenum; format: GLenum; _type: GLenum; image: PGLvoid); extdecl;
  919. glSeparableFilter2DEXT: procedure(target: GLenum; internalformat: GLenum; width: GLsizei; height: GLsizei; format: GLenum; _type: GLenum; const row: PGLvoid; const column: PGLvoid); extdecl;
  920. glGetSeparableFilterEXT: procedure(target: GLenum; format: GLenum; _type: GLenum; row: PGLvoid; column: PGLvoid; span: PGLvoid); extdecl;
  921. glConvolutionParameteriEXT: procedure(target: GLenum; pname: GLenum; param: GLint); extdecl;
  922. glConvolutionParameterivEXT: procedure(target: GLenum; pname: GLenum; const params: PGLint); extdecl;
  923. glConvolutionParameterfEXT: procedure(target: GLenum; pname: GLenum; param: GLfloat); extdecl;
  924. glConvolutionParameterfvEXT: procedure(target: GLenum; pname: GLenum; const params: PGLfloat); extdecl;
  925. glGetConvolutionParameterivEXT: procedure(target: GLenum; pname: GLenum; params: PGLint); extdecl;
  926. glGetConvolutionParameterfvEXT: procedure(target: GLenum; pname: GLenum; params: PGLfloat); extdecl;
  927. function Load_GL_EXT_convolution: Boolean;
  928. //***** GL_EXT_fog_coord *****//
  929. const
  930. GL_FOG_COORDINATE_SOURCE_EXT = $8450;
  931. GL_FOG_COORDINATE_EXT = $8451;
  932. GL_FRAGMENT_DEPTH_EXT = $8452;
  933. GL_CURRENT_FOG_COORDINATE_EXT = $8453;
  934. GL_FOG_COORDINATE_ARRAY_TYPE_EXT = $8454;
  935. GL_FOG_COORDINATE_ARRAY_STRIDE_EXT = $8455;
  936. GL_FOG_COORDINATE_ARRAY_POINTER_EXT = $8456;
  937. GL_FOG_COORDINATE_ARRAY_EXT = $8457;
  938. var
  939. glFogCoordfEXT: procedure(coord: GLfloat); extdecl;
  940. glFogCoorddEXT: procedure(coord: GLdouble); extdecl;
  941. glFogCoordfvEXT: procedure(coord: PGLfloat); extdecl;
  942. glFogCoorddvEXT: procedure(coord: PGLdouble); extdecl;
  943. glFogCoordPointerEXT: procedure(_type: GLenum; stride: GLsizei; pointer: PGLvoid); extdecl;
  944. function Load_GL_EXT_fog_coord: Boolean;
  945. //***** GL_EXT_histogram *****//
  946. const
  947. GL_HISTOGRAM_EXT = $8024;
  948. GL_PROXY_HISTOGRAM_EXT = $8025;
  949. GL_HISTOGRAM_WIDTH_EXT = $8026;
  950. GL_HISTOGRAM_FORMAT_EXT = $8027;
  951. GL_HISTOGRAM_RED_SIZE_EXT = $8028;
  952. GL_HISTOGRAM_GREEN_SIZE_EXT = $8029;
  953. GL_HISTOGRAM_BLUE_SIZE_EXT = $802A;
  954. GL_HISTOGRAM_ALPHA_SIZE_EXT = $802B;
  955. GL_HISTOGRAM_LUMINANCE_SIZE_EXT = $802C;
  956. GL_HISTOGRAM_SINK_EXT = $802D;
  957. GL_MINMAX_EXT = $802E;
  958. GL_MINMAX_FORMAT_EXT = $802F;
  959. GL_MINMAX_SINK_EXT = $8030;
  960. var
  961. glHistogramEXT: procedure(target: GLenum; width: GLsizei; internalformat: GLenum; sink: GLboolean); extdecl;
  962. glResetHistogramEXT: procedure(target: GLenum); extdecl;
  963. glGetHistogramEXT: procedure(target: GLenum; reset: GLboolean; format: GLenum; _type: GLenum; values: PGLvoid); extdecl;
  964. glGetHistogramParameterivEXT: procedure(target: GLenum; pname: GLenum; params: PGLint); extdecl;
  965. glGetHistogramParameterfvEXT: procedure(target: GLenum; pname: GLenum; params: PGLfloat); extdecl;
  966. glMinmaxEXT: procedure(target: GLenum; internalformat: GLenum; sink: GLboolean); extdecl;
  967. glResetMinmaxEXT: procedure(target: GLenum); extdecl;
  968. glGetMinmaxEXT: procedure(target: GLenum; reset: GLboolean; format: GLenum; _type: GLenum; values: PGLvoid); extdecl;
  969. glGetMinmaxParameterivEXT: procedure(target: GLenum; pname: GLenum; params: PGLint); extdecl;
  970. glGetMinmaxParameterfvEXT: procedure(target: GLenum; pname: GLenum; params: PGLfloat); extdecl;
  971. function Load_GL_EXT_histogram: Boolean;
  972. //***** GL_EXT_multi_draw_arrays *****//
  973. var
  974. glMultiDrawArraysEXT: procedure(mode: GLenum; first: PGLint; count: PGLsizei; primcount: GLsizei); extdecl;
  975. glMultiDrawElementsEXT: procedure(mode: GLenum; count: PGLsizei; _type: GLenum; const indices: PGLvoid; primcount: GLsizei); extdecl;
  976. function Load_GL_EXT_multi_draw_arrays: Boolean;
  977. //***** GL_EXT_packed_depth_stencil *****//
  978. const
  979. GL_DEPTH_STENCIL_EXT = $84F9;
  980. GL_UNSIGNED_INT_24_8_EXT = $84FA;
  981. GL_DEPTH24_STENCIL8_EXT = $88F0;
  982. GL_TEXTURE_STENCIL_SIZE_EXT = $88F1;
  983. function Load_GL_EXT_packed_depth_stencil: Boolean;
  984. //***** GL_EXT_packed_pixels *****//
  985. const
  986. GL_UNSIGNED_BYTE_3_3_2_EXT = $8032;
  987. GL_UNSIGNED_SHORT_4_4_4_4_EXT = $8033;
  988. GL_UNSIGNED_SHORT_5_5_5_1_EXT = $8034;
  989. GL_UNSIGNED_INT_8_8_8_8_EXT = $8035;
  990. GL_UNSIGNED_INT_10_10_10_2_EXT = $8036;
  991. function Load_GL_EXT_packed_pixels: Boolean;
  992. //***** GL_EXT_paletted_texture *****//
  993. const
  994. GL_COLOR_INDEX1_EXT = $80E2;
  995. GL_COLOR_INDEX2_EXT = $80E3;
  996. GL_COLOR_INDEX4_EXT = $80E4;
  997. GL_COLOR_INDEX8_EXT = $80E5;
  998. GL_COLOR_INDEX12_EXT = $80E6;
  999. GL_COLOR_INDEX16_EXT = $80E7;
  1000. GL_COLOR_TABLE_FORMAT_EXT = $80D8;
  1001. GL_COLOR_TABLE_WIDTH_EXT = $80D9;
  1002. GL_COLOR_TABLE_RED_SIZE_EXT = $80DA;
  1003. GL_COLOR_TABLE_GREEN_SIZE_EXT = $80DB;
  1004. GL_COLOR_TABLE_BLUE_SIZE_EXT = $80DC;
  1005. GL_COLOR_TABLE_ALPHA_SIZE_EXT = $80DD;
  1006. GL_COLOR_TABLE_LUMINANCE_SIZE_EXT = $80DE;
  1007. GL_COLOR_TABLE_INTENSITY_SIZE_EXT = $80DF;
  1008. GL_TEXTURE_INDEX_SIZE_EXT = $80ED;
  1009. GL_TEXTURE_1D = $0DE0;
  1010. GL_TEXTURE_2D = $0DE1;
  1011. GL_TEXTURE_3D_EXT = $806F;
  1012. // GL_TEXTURE_CUBE_MAP_ARB { already defined }
  1013. GL_PROXY_TEXTURE_1D = $8063;
  1014. GL_PROXY_TEXTURE_2D = $8064;
  1015. GL_PROXY_TEXTURE_3D_EXT = $8070;
  1016. // GL_PROXY_TEXTURE_CUBE_MAP_ARB { already defined }
  1017. // GL_TEXTURE_1D { already defined }
  1018. // GL_TEXTURE_2D { already defined }
  1019. // GL_TEXTURE_3D_EXT { already defined }
  1020. // GL_TEXTURE_CUBE_MAP_ARB { already defined }
  1021. var
  1022. glColorTableEXT: procedure(target: GLenum; internalFormat: GLenum; width: GLsizei; format: GLenum; _type: GLenum; const data: PGLvoid); extdecl;
  1023. // glColorSubTableEXT { already defined }
  1024. glGetColorTableEXT: procedure(target: GLenum; format: GLenum; _type: GLenum; data: PGLvoid); extdecl;
  1025. glGetColorTableParameterivEXT: procedure(target: GLenum; pname: GLenum; params: PGLint); extdecl;
  1026. glGetColorTableParameterfvEXT: procedure(target: GLenum; pname: GLenum; params: PGLfloat); extdecl;
  1027. function Load_GL_EXT_paletted_texture: Boolean;
  1028. //****…

Large files files are truncated, but you can click here to view the full file