GLEXT.H
上传用户:tengyuc
上传日期:2007-08-14
资源大小:722k
文件大小:12k
源码类别:

OpenGL

开发平台:

Visual C++

  1. #ifndef __glext_h_
  2. #define __glext_h_
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. /*
  7. ** Copyright 1992-1999 Silicon Graphics, Inc.
  8. ** All Rights Reserved.
  9. **
  10. ** This is UNPUBLISHED PROPRIETARY SOURCE CODE of Silicon Graphics, Inc.;
  11. ** the contents of this file may not be disclosed to third parties, copied or
  12. ** duplicated in any form, in whole or in part, without the prior written
  13. ** permission of Silicon Graphics, Inc.
  14. **
  15. ** RESTRICTED RIGHTS LEGEND:
  16. ** Use, duplication or disclosure by the Government is subject to restrictions
  17. ** as set forth in subdivision (c)(1)(ii) of the Rights in Technical Data
  18. ** and Computer Software clause at DFARS 252.227-7013, and/or in similar or
  19. ** successor clauses in the FAR, DOD or NASA FAR Supplement. Unpublished -
  20. ** rights reserved under the Copyright Laws of the United States.
  21. */
  22. #ifndef APIENTRY
  23. #define WIN32_LEAN_AND_MEAN 1
  24. #include <windows.h>
  25. #endif
  26. #define GL_ARB_multitexture                 1
  27. #define GL_EXT_abgr                         1
  28. #define GL_EXT_bgra                         1
  29. #define GL_EXT_clip_volume_hint             1
  30. #define GL_EXT_compiled_vertex_array        1
  31. #define GL_EXT_cull_vertex                  1
  32. #define GL_EXT_packed_pixels                1
  33. #define GL_EXT_point_parameters             1
  34. #define GL_EXT_stencil_wrap                 1
  35. #define GL_EXT_texture_env_add              1
  36. #define GL_EXT_texture_env_combine          1
  37. #define GL_EXT_vertex_array                 1
  38. #define GL_NV_texgen_reflection             1
  39. #define GL_NV_texture_env_combine4          1
  40. #define GL_WIN_swap_hint                    1
  41. /* EXT_abgr */
  42. #define GL_ABGR_EXT                         0x8000
  43. /* EXT_packed_pixels */
  44. #define GL_UNSIGNED_BYTE_3_3_2_EXT          0x8032
  45. #define GL_UNSIGNED_SHORT_4_4_4_4_EXT       0x8033
  46. #define GL_UNSIGNED_SHORT_5_5_5_1_EXT       0x8034
  47. #define GL_UNSIGNED_INT_8_8_8_8_EXT         0x8035
  48. #define GL_UNSIGNED_INT_10_10_10_2_EXT      0x8036
  49. /* EXT_vertex_array */
  50. #define GL_VERTEX_ARRAY_EXT                 0x8074
  51. #define GL_NORMAL_ARRAY_EXT                 0x8075
  52. #define GL_COLOR_ARRAY_EXT                  0x8076
  53. #define GL_INDEX_ARRAY_EXT                  0x8077
  54. #define GL_TEXTURE_COORD_ARRAY_EXT          0x8078
  55. #define GL_EDGE_FLAG_ARRAY_EXT              0x8079
  56. #define GL_VERTEX_ARRAY_SIZE_EXT            0x807A
  57. #define GL_VERTEX_ARRAY_TYPE_EXT            0x807B
  58. #define GL_VERTEX_ARRAY_STRIDE_EXT          0x807C
  59. #define GL_VERTEX_ARRAY_COUNT_EXT           0x807D
  60. #define GL_NORMAL_ARRAY_TYPE_EXT            0x807E
  61. #define GL_NORMAL_ARRAY_STRIDE_EXT          0x807F
  62. #define GL_NORMAL_ARRAY_COUNT_EXT           0x8080
  63. #define GL_COLOR_ARRAY_SIZE_EXT             0x8081
  64. #define GL_COLOR_ARRAY_TYPE_EXT             0x8082
  65. #define GL_COLOR_ARRAY_STRIDE_EXT           0x8083
  66. #define GL_COLOR_ARRAY_COUNT_EXT            0x8084
  67. #define GL_INDEX_ARRAY_TYPE_EXT             0x8085
  68. #define GL_INDEX_ARRAY_STRIDE_EXT           0x8086
  69. #define GL_INDEX_ARRAY_COUNT_EXT            0x8087
  70. #define GL_TEXTURE_COORD_ARRAY_SIZE_EXT     0x8088
  71. #define GL_TEXTURE_COORD_ARRAY_TYPE_EXT     0x8089
  72. #define GL_TEXTURE_COORD_ARRAY_STRIDE_EXT   0x808A
  73. #define GL_TEXTURE_COORD_ARRAY_COUNT_EXT    0x808B
  74. #define GL_EDGE_FLAG_ARRAY_STRIDE_EXT       0x808C
  75. #define GL_EDGE_FLAG_ARRAY_COUNT_EXT        0x808D
  76. #define GL_VERTEX_ARRAY_POINTER_EXT         0x808E
  77. #define GL_NORMAL_ARRAY_POINTER_EXT         0x808F
  78. #define GL_COLOR_ARRAY_POINTER_EXT          0x8090
  79. #define GL_INDEX_ARRAY_POINTER_EXT          0x8091
  80. #define GL_TEXTURE_COORD_ARRAY_POINTER_EXT  0x8092
  81. #define GL_EDGE_FLAG_ARRAY_POINTER_EXT      0x8093
  82. /* EXT_bgra */
  83. #define GL_BGR_EXT                          0x80E0
  84. #define GL_BGRA_EXT                         0x80E1
  85. /* EXT_clip_volume_hint */
  86. #define GL_CLIP_VOLUME_CLIPPING_HINT_EXT    0x80F0
  87. /* EXT_point_parameters */
  88. #define GL_POINT_SIZE_MIN_EXT               0x8126
  89. #define GL_POINT_SIZE_MAX_EXT               0x8127
  90. #define GL_POINT_FADE_THRESHOLD_SIZE_EXT    0x8128
  91. #define GL_DISTANCE_ATTENUATION_EXT         0x8129
  92. /* EXT_compiled_vertex_array */
  93. #define GL_ARRAY_ELEMENT_LOCK_FIRST_EXT     0x81A8
  94. #define GL_ARRAY_ELEMENT_LOCK_COUNT_EXT     0x81A9
  95. /* EXT_cull_vertex */
  96. #define GL_CULL_VERTEX_EXT                  0x81AA
  97. #define GL_CULL_VERTEX_EYE_POSITION_EXT     0x81AB
  98. #define GL_CULL_VERTEX_OBJECT_POSITION_EXT  0x81AC
  99. /* ARB_multitexture */
  100. #define GL_ACTIVE_TEXTURE_ARB               0x84E0
  101. #define GL_CLIENT_ACTIVE_TEXTURE_ARB        0x84E1
  102. #define GL_MAX_TEXTURE_UNITS_ARB            0x84E2
  103. #define GL_TEXTURE0_ARB                     0x84C0
  104. #define GL_TEXTURE1_ARB                     0x84C1
  105. #define GL_TEXTURE2_ARB                     0x84C2
  106. #define GL_TEXTURE3_ARB                     0x84C3
  107. #define GL_TEXTURE4_ARB                     0x84C4
  108. #define GL_TEXTURE5_ARB                     0x84C5
  109. #define GL_TEXTURE6_ARB                     0x84C6
  110. #define GL_TEXTURE7_ARB                     0x84C7
  111. #define GL_TEXTURE8_ARB                     0x84C8
  112. #define GL_TEXTURE9_ARB                     0x84C9
  113. #define GL_TEXTURE10_ARB                    0x84CA
  114. #define GL_TEXTURE11_ARB                    0x84CB
  115. #define GL_TEXTURE12_ARB                    0x84CC
  116. #define GL_TEXTURE13_ARB                    0x84CD
  117. #define GL_TEXTURE14_ARB                    0x84CE
  118. #define GL_TEXTURE15_ARB                    0x84CF
  119. #define GL_TEXTURE16_ARB                    0x84D0
  120. #define GL_TEXTURE17_ARB                    0x84D1
  121. #define GL_TEXTURE18_ARB                    0x84D2
  122. #define GL_TEXTURE19_ARB                    0x84D3
  123. #define GL_TEXTURE20_ARB                    0x84D4
  124. #define GL_TEXTURE21_ARB                    0x84D5
  125. #define GL_TEXTURE22_ARB                    0x84D6
  126. #define GL_TEXTURE23_ARB                    0x84D7
  127. #define GL_TEXTURE24_ARB                    0x84D8
  128. #define GL_TEXTURE25_ARB                    0x84D9
  129. #define GL_TEXTURE26_ARB                    0x84DA
  130. #define GL_TEXTURE27_ARB                    0x84DB
  131. #define GL_TEXTURE28_ARB                    0x84DC
  132. #define GL_TEXTURE29_ARB                    0x84DD
  133. #define GL_TEXTURE30_ARB                    0x84DE
  134. #define GL_TEXTURE31_ARB                    0x84DF
  135. /* EXT_stencil_wrap */
  136. #define GL_INCR_WRAP_EXT                    0x8507
  137. #define GL_DECR_WRAP_EXT                    0x8508
  138. /* NV_texgen_reflection */
  139. #define GL_NORMAL_MAP_NV                    0x8511
  140. #define GL_REFLECTION_MAP_NV                0x8512
  141. /* EXT_texture_env_combine */
  142. #define GL_COMBINE_EXT                      0x8570
  143. #define GL_COMBINE_RGB_EXT                  0x8571
  144. #define GL_COMBINE_ALPHA_EXT                0x8572
  145. #define GL_RGB_SCALE_EXT                    0x8573
  146. #define GL_ADD_SIGNED_EXT                   0x8574
  147. #define GL_INTERPOLATE_EXT                  0x8575
  148. #define GL_CONSTANT_EXT                     0x8576
  149. #define GL_PRIMARY_COLOR_EXT                0x8577
  150. #define GL_PREVIOUS_EXT                     0x8578
  151. #define GL_SOURCE0_RGB_EXT                  0x8580
  152. #define GL_SOURCE1_RGB_EXT                  0x8581
  153. #define GL_SOURCE2_RGB_EXT                  0x8582
  154. #define GL_SOURCE0_ALPHA_EXT                0x8588
  155. #define GL_SOURCE1_ALPHA_EXT                0x8589
  156. #define GL_SOURCE2_ALPHA_EXT                0x858A
  157. #define GL_OPERAND0_RGB_EXT                 0x8590
  158. #define GL_OPERAND1_RGB_EXT                 0x8591
  159. #define GL_OPERAND2_RGB_EXT                 0x8592
  160. #define GL_OPERAND0_ALPHA_EXT               0x8598
  161. #define GL_OPERAND1_ALPHA_EXT               0x8599
  162. #define GL_OPERAND2_ALPHA_EXT               0x859A
  163. /* NV_texture_env_combine4 */
  164. #define GL_COMBINE4_NV                      0x8503
  165. #define GL_SOURCE3_RGB_NV                   0x8583
  166. #define GL_SOURCE3_ALPHA_NV                 0x858B
  167. #define GL_OPERAND3_RGB_NV                  0x8593
  168. #define GL_OPERAND3_ALPHA_NV                0x859B
  169. /*************************************************************/
  170. /* EXT_vertex_array */
  171. typedef void (APIENTRY * PFNGLARRAYELEMENTEXTPROC) (GLint i);
  172. typedef void (APIENTRY * PFNGLCOLORPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
  173. typedef void (APIENTRY * PFNGLDRAWARRAYSEXTPROC) (GLenum mode, GLint first, GLsizei count);
  174. typedef void (APIENTRY * PFNGLEDGEFLAGPOINTEREXTPROC) (GLsizei stride, GLsizei count, const GLboolean *pointer);
  175. typedef void (APIENTRY * PFNGLGETPOINTERVEXTPROC) (GLenum pname, GLvoid* *params);
  176. typedef void (APIENTRY * PFNGLINDEXPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
  177. typedef void (APIENTRY * PFNGLNORMALPOINTEREXTPROC) (GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
  178. typedef void (APIENTRY * PFNGLTEXCOORDPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
  179. typedef void (APIENTRY * PFNGLVERTEXPOINTEREXTPROC) (GLint size, GLenum type, GLsizei stride, GLsizei count, const GLvoid *pointer);
  180. /* ARB_multitexture */
  181. typedef void (APIENTRY * PFNGLMULTITEXCOORD1DARBPROC) (GLenum target, GLdouble s);
  182. typedef void (APIENTRY * PFNGLMULTITEXCOORD1DVARBPROC) (GLenum target, const GLdouble *v);
  183. typedef void (APIENTRY * PFNGLMULTITEXCOORD1FARBPROC) (GLenum target, GLfloat s);
  184. typedef void (APIENTRY * PFNGLMULTITEXCOORD1FVARBPROC) (GLenum target, const GLfloat *v);
  185. typedef void (APIENTRY * PFNGLMULTITEXCOORD1IARBPROC) (GLenum target, GLint s);
  186. typedef void (APIENTRY * PFNGLMULTITEXCOORD1IVARBPROC) (GLenum target, const GLint *v);
  187. typedef void (APIENTRY * PFNGLMULTITEXCOORD1SARBPROC) (GLenum target, GLshort s);
  188. typedef void (APIENTRY * PFNGLMULTITEXCOORD1SVARBPROC) (GLenum target, const GLshort *v);
  189. typedef void (APIENTRY * PFNGLMULTITEXCOORD2DARBPROC) (GLenum target, GLdouble s, GLdouble t);
  190. typedef void (APIENTRY * PFNGLMULTITEXCOORD2DVARBPROC) (GLenum target, const GLdouble *v);
  191. typedef void (APIENTRY * PFNGLMULTITEXCOORD2FARBPROC) (GLenum target, GLfloat s, GLfloat t);
  192. typedef void (APIENTRY * PFNGLMULTITEXCOORD2FVARBPROC) (GLenum target, const GLfloat *v);
  193. typedef void (APIENTRY * PFNGLMULTITEXCOORD2IARBPROC) (GLenum target, GLint s, GLint t);
  194. typedef void (APIENTRY * PFNGLMULTITEXCOORD2IVARBPROC) (GLenum target, const GLint *v);
  195. typedef void (APIENTRY * PFNGLMULTITEXCOORD2SARBPROC) (GLenum target, GLshort s, GLshort t);
  196. typedef void (APIENTRY * PFNGLMULTITEXCOORD2SVARBPROC) (GLenum target, const GLshort *v);
  197. typedef void (APIENTRY * PFNGLMULTITEXCOORD3DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r);
  198. typedef void (APIENTRY * PFNGLMULTITEXCOORD3DVARBPROC) (GLenum target, const GLdouble *v);
  199. typedef void (APIENTRY * PFNGLMULTITEXCOORD3FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r);
  200. typedef void (APIENTRY * PFNGLMULTITEXCOORD3FVARBPROC) (GLenum target, const GLfloat *v);
  201. typedef void (APIENTRY * PFNGLMULTITEXCOORD3IARBPROC) (GLenum target, GLint s, GLint t, GLint r);
  202. typedef void (APIENTRY * PFNGLMULTITEXCOORD3IVARBPROC) (GLenum target, const GLint *v);
  203. typedef void (APIENTRY * PFNGLMULTITEXCOORD3SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r);
  204. typedef void (APIENTRY * PFNGLMULTITEXCOORD3SVARBPROC) (GLenum target, const GLshort *v);
  205. typedef void (APIENTRY * PFNGLMULTITEXCOORD4DARBPROC) (GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q);
  206. typedef void (APIENTRY * PFNGLMULTITEXCOORD4DVARBPROC) (GLenum target, const GLdouble *v);
  207. typedef void (APIENTRY * PFNGLMULTITEXCOORD4FARBPROC) (GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q);
  208. typedef void (APIENTRY * PFNGLMULTITEXCOORD4FVARBPROC) (GLenum target, const GLfloat *v);
  209. typedef void (APIENTRY * PFNGLMULTITEXCOORD4IARBPROC) (GLenum target, GLint s, GLint t, GLint r, GLint q);
  210. typedef void (APIENTRY * PFNGLMULTITEXCOORD4IVARBPROC) (GLenum target, const GLint *v);
  211. typedef void (APIENTRY * PFNGLMULTITEXCOORD4SARBPROC) (GLenum target, GLshort s, GLshort t, GLshort r, GLshort q);
  212. typedef void (APIENTRY * PFNGLMULTITEXCOORD4SVARBPROC) (GLenum target, const GLshort *v);
  213. typedef void (APIENTRY * PFNGLACTIVETEXTUREARBPROC) (GLenum target);
  214. typedef void (APIENTRY * PFNGLCLIENTACTIVETEXTUREARBPROC) (GLenum target);
  215. /* EXT_compiled_vertex_array */
  216. typedef void (APIENTRY * PFNGLLOCKARRAYSEXTPROC) (GLint first, GLsizei count);
  217. typedef void (APIENTRY * PFNGLUNLOCKARRAYSEXTPROC) (void);
  218. /* EXT_cull_vertex */
  219. typedef void (APIENTRY * PFNGLCULLPARAMETERDVEXTPROC) (GLenum pname, GLdouble* params);
  220. typedef void (APIENTRY * PFNGLCULLPARAMETERFVEXTPROC) (GLenum pname, GLfloat* params);
  221. /* WIN_swap_hint */
  222. typedef void (APIENTRY * PFNGLADDSWAPHINTRECTWINPROC) (GLint x, GLint y, GLsizei width, GLsizei height);
  223. /* EXT_point_parameter */
  224. typedef void (APIENTRY * PFNGLPOINTPARAMETERFEXTPROC) (GLenum pname, GLfloat param);
  225. typedef void (APIENTRY * PFNGLPOINTPARAMETERFVEXTPROC) (GLenum pname, const GLfloat *params);
  226. #ifdef __cplusplus
  227. }
  228. #endif
  229. #endif /* __glext_h_ */