ruby-opengl 0.40.1 → 0.50.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (154) hide show
  1. data/Rakefile +2 -2
  2. data/doc/build_install.txt +48 -28
  3. data/doc/extensions.txt +361 -0
  4. data/doc/history.txt +8 -2
  5. data/doc/requirements_and_design.txt +0 -13
  6. data/doc/roadmap.txt +11 -13
  7. data/doc/supplies/page_template.html +11 -5
  8. data/doc/thanks.txt +2 -4
  9. data/doc/tutorial.txt +1 -4
  10. data/examples/{nehe_lesson02.rb → NeHe/nehe_lesson02.rb} +0 -0
  11. data/examples/{nehe_lesson03.rb → NeHe/nehe_lesson03.rb} +0 -0
  12. data/examples/{nehe_lesson04.rb → NeHe/nehe_lesson04.rb} +0 -0
  13. data/examples/{nehe_lesson05.rb → NeHe/nehe_lesson05.rb} +0 -0
  14. data/examples/NeHe/nehe_lesson36.rb +303 -0
  15. data/examples/OrangeBook/3Dlabs-License.txt +33 -0
  16. data/examples/OrangeBook/brick.frag +36 -0
  17. data/examples/OrangeBook/brick.rb +388 -0
  18. data/examples/OrangeBook/brick.vert +41 -0
  19. data/examples/OrangeBook/particle.frag +17 -0
  20. data/examples/OrangeBook/particle.rb +424 -0
  21. data/examples/OrangeBook/particle.vert +38 -0
  22. data/examples/README +13 -83
  23. data/examples/RedBook/aaindex.rb +97 -0
  24. data/examples/RedBook/aapoly.rb +142 -0
  25. data/examples/RedBook/aargb.rb +119 -0
  26. data/examples/RedBook/accanti.rb +162 -0
  27. data/examples/RedBook/accpersp.rb +215 -0
  28. data/examples/RedBook/alpha.rb +123 -0
  29. data/examples/RedBook/alpha3D.rb +158 -0
  30. data/examples/RedBook/bezcurve.rb +105 -0
  31. data/examples/RedBook/bezmesh.rb +137 -0
  32. data/examples/RedBook/checker.rb +124 -0
  33. data/examples/RedBook/clip.rb +95 -0
  34. data/examples/RedBook/colormat.rb +135 -0
  35. data/examples/RedBook/cube.rb +69 -0
  36. data/examples/RedBook/depthcue.rb +99 -0
  37. data/examples/RedBook/dof.rb +205 -0
  38. data/examples/{legacy → RedBook}/double.rb +59 -58
  39. data/examples/{legacy → RedBook}/drawf.rb +47 -54
  40. data/examples/RedBook/feedback.rb +145 -0
  41. data/examples/RedBook/fog.rb +167 -0
  42. data/examples/RedBook/font.rb +151 -0
  43. data/examples/RedBook/hello.rb +79 -0
  44. data/examples/RedBook/image.rb +137 -0
  45. data/examples/{legacy → RedBook}/jitter.rb +60 -62
  46. data/examples/RedBook/lines.rb +128 -0
  47. data/examples/RedBook/list.rb +111 -0
  48. data/examples/RedBook/material.rb +275 -0
  49. data/examples/RedBook/mipmap.rb +156 -0
  50. data/examples/{legacy → RedBook}/model.rb +66 -72
  51. data/examples/{legacy → RedBook}/movelight.rb +67 -75
  52. data/examples/RedBook/pickdepth.rb +179 -0
  53. data/examples/{legacy → RedBook}/planet.rb +62 -66
  54. data/examples/RedBook/quadric.rb +158 -0
  55. data/examples/RedBook/robot.rb +115 -0
  56. data/examples/RedBook/select.rb +196 -0
  57. data/examples/RedBook/smooth.rb +95 -0
  58. data/examples/RedBook/stencil.rb +163 -0
  59. data/examples/RedBook/stroke.rb +167 -0
  60. data/examples/RedBook/surface.rb +166 -0
  61. data/examples/RedBook/teaambient.rb +132 -0
  62. data/examples/RedBook/teapots.rb +182 -0
  63. data/examples/RedBook/tess.rb +183 -0
  64. data/examples/RedBook/texbind.rb +147 -0
  65. data/examples/RedBook/texgen.rb +169 -0
  66. data/examples/RedBook/texturesurf.rb +128 -0
  67. data/examples/RedBook/varray.rb +159 -0
  68. data/examples/RedBook/wrap.rb +148 -0
  69. data/examples/misc/anisotropic.rb +194 -0
  70. data/examples/misc/font-glut.rb +46 -0
  71. data/examples/{plane.rb → misc/plane.rb} +0 -0
  72. data/examples/misc/readpixel.rb +65 -0
  73. data/examples/{smooth.rb → misc/smooth.rb} +0 -0
  74. data/examples/{test.rb → misc/test.rb} +0 -0
  75. data/ext/common/common.h +252 -70
  76. data/ext/common/gl-enums.h +6102 -7334
  77. data/ext/common/gl-types.h +47 -0
  78. data/ext/common/glu-enums.h +469 -0
  79. data/ext/gl/gl-1.0-1.1.c +842 -2464
  80. data/ext/gl/gl-1.2.c +217 -281
  81. data/ext/gl/gl-1.3.c +113 -133
  82. data/ext/gl/gl-1.4.c +98 -334
  83. data/ext/gl/gl-1.5.c +28 -34
  84. data/ext/gl/gl-2.0.c +26 -235
  85. data/ext/gl/gl-2.1.c +31 -124
  86. data/ext/gl/gl-enums.c +786 -631
  87. data/ext/gl/gl-ext-arb.c +66 -0
  88. data/ext/gl/gl-ext-ext.c +218 -0
  89. data/ext/gl/gl.c +138 -31
  90. data/ext/gl/mkrf_conf.rb +1 -0
  91. data/ext/glu/glu-enums.c +163 -0
  92. data/ext/glu/glu.c +1003 -1205
  93. data/ext/glu/mkrf_conf.rb +1 -0
  94. data/ext/glut/glut.c +1056 -1175
  95. data/lib/opengl.rb +90 -3
  96. data/test/tc_common.rb +26 -13
  97. data/test/tc_ext_arb.rb +73 -0
  98. data/test/tc_ext_ext.rb +74 -0
  99. data/test/tc_func_12.rb +8 -8
  100. data/test/tc_func_13.rb +17 -11
  101. data/test/tc_func_14.rb +8 -8
  102. data/test/tc_func_15.rb +190 -2
  103. data/test/tc_func_20.rb +36 -10
  104. data/test/tc_func_21.rb +445 -2
  105. data/test/tc_glu.rb +305 -0
  106. data/test/tc_misc.rb +1 -0
  107. metadata +84 -68
  108. data/doc/screenshots.txt +0 -23
  109. data/examples/legacy/COPYRIGHT +0 -8
  110. data/examples/legacy/aaindex.rb +0 -98
  111. data/examples/legacy/aapoly.rb +0 -153
  112. data/examples/legacy/aargb.rb +0 -139
  113. data/examples/legacy/accanti.rb +0 -159
  114. data/examples/legacy/accpersp.rb +0 -216
  115. data/examples/legacy/alpha.rb +0 -133
  116. data/examples/legacy/alpha3D.rb +0 -165
  117. data/examples/legacy/bezcurve.rb +0 -107
  118. data/examples/legacy/bezmesh.rb +0 -131
  119. data/examples/legacy/checker.rb +0 -121
  120. data/examples/legacy/clip.rb +0 -104
  121. data/examples/legacy/colormat.rb +0 -145
  122. data/examples/legacy/cube.rb +0 -73
  123. data/examples/legacy/depthcue.rb +0 -101
  124. data/examples/legacy/dof.rb +0 -212
  125. data/examples/legacy/feedback.rb +0 -152
  126. data/examples/legacy/fog.rb +0 -172
  127. data/examples/legacy/font-glut.rb +0 -41
  128. data/examples/legacy/font.rb +0 -158
  129. data/examples/legacy/hello.rb +0 -75
  130. data/examples/legacy/image.rb +0 -145
  131. data/examples/legacy/lines.rb +0 -135
  132. data/examples/legacy/list.rb +0 -120
  133. data/examples/legacy/material.rb +0 -290
  134. data/examples/legacy/mipmap.rb +0 -159
  135. data/examples/legacy/pickdepth.rb +0 -180
  136. data/examples/legacy/quadric.rb +0 -180
  137. data/examples/legacy/readpixel.rb +0 -59
  138. data/examples/legacy/robot.rb +0 -120
  139. data/examples/legacy/select.rb +0 -207
  140. data/examples/legacy/smooth.rb +0 -41
  141. data/examples/legacy/stencil.rb +0 -154
  142. data/examples/legacy/stroke.rb +0 -170
  143. data/examples/legacy/surface.rb +0 -170
  144. data/examples/legacy/teaambient.rb +0 -132
  145. data/examples/legacy/teapots.rb +0 -188
  146. data/examples/legacy/tess.rb +0 -222
  147. data/examples/legacy/texbind.rb +0 -157
  148. data/examples/legacy/texgen.rb +0 -171
  149. data/examples/legacy/texturesurf.rb +0 -128
  150. data/examples/legacy/varray.rb +0 -167
  151. data/examples/legacy/wrap.rb +0 -158
  152. data/lib/gl_prev.rb +0 -46
  153. data/lib/glu_prev.rb +0 -46
  154. data/lib/glut_prev.rb +0 -45
data/Rakefile CHANGED
@@ -135,9 +135,9 @@ gem_files = gem_files.exclude("**/*.so", "**/*.o{,bj}", "ext/**/*.log", "ext/gl*
135
135
 
136
136
  spec = Gem::Specification.new do |s|
137
137
  s.name = "ruby-opengl"
138
- s.version = "0.40.1"
138
+ s.version = "0.50.0"
139
139
  s.authors = [ "Alain Hoang", "Jan Dvorak", "Minh Thu Vo", "James Adam" ]
140
- s.homepage = "http://opengl-ruby.rubyforge.org"
140
+ s.homepage = "http://ruby-opengl.rubyforge.org"
141
141
  s.platform = Gem::Platform::RUBY
142
142
  s.summary = "OpenGL Interface for Ruby"
143
143
  s.files = gem_files
@@ -1,10 +1,19 @@
1
1
  Building ruby-opengl
2
2
  ====================
3
3
 
4
-
5
4
  Pre-requisites
6
5
  --------------
7
6
 
7
+ General
8
+ --------------
9
+ * C compiler
10
+ * ruby 1.8.5+
11
+ * rake
12
+ * mkrf 0.2.0+
13
+ * rubygems 0.9.1+
14
+ * OpenGL headers for OpenGL version 1.1 or later
15
+ * GLUT 3.7+ or API-compatible implementation (freeglut,OpenGLUT)
16
+
8
17
  Linux
9
18
  --------------
10
19
  On Ubuntu or Debian systems, aside from Ruby you'll need ruby and
@@ -17,11 +26,9 @@ For OpenGL related headers you'll need the following packages:
17
26
  * `libgl1-mesa-dri libglu1-mesa freeglut3`
18
27
  * `libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev`
19
28
 
20
- You MUST have rubygems 0.9.1 or higher installed.
21
-
22
- On Gentoo, Debian and ubuntu, rubygems 0.9.0 will be installed by default
29
+ On older Gentoo, Debian and Ubuntu, rubygems 0.9.0 will be installed by default
23
30
  in the packages. This version of rubygems is INCOMPATIBLE with ruby-opengl.
24
- You'll need to install rubygems from source.
31
+ You'll need to install rubygems 0.9.1+ from source.
25
32
 
26
33
  On some distributions you may need 'xorg-dev' developer package.
27
34
 
@@ -32,16 +39,39 @@ version that ships with OS X has known problems with properly building
32
39
  ruby-opengl bindings. You'll also need XCode for gcc and tools. Macports
33
40
  or fink should handle this cleanly.
34
41
 
42
+ * To compile under Mac OS X you MUST install your own version of Ruby
43
+ as the version included with Tiger (1.8.2) has a broken rbconfig
44
+ and will fail to build the project properly. Try either [MacPorts][],
45
+ [Fink][], or [building your own from source][].
46
+
47
+ [Macports]: http://www.macports.org/
48
+ [Fink]: http://finkproject.org/
49
+ [building your own from source]: http://www.ruby-lang.org/en/downloads/
50
+
35
51
  Windows
36
52
  --------------
37
- On Windows you need to have platform SDK and compiler that *must* match the one which
38
- was used for compiling ruby binary (for One-click ruby installer it is MSVC 6.0).
53
+ For manual build on Windows you need to have platform SDK and compiler that *must* match the one which was used for compiling ruby binary (for One-click ruby installer it is MSVC 6.0).
39
54
  You may also need 'glut.h' in SDK include directory, as the One-click ruby
40
- installer is missing it. You can copy the file from glut package at
41
- http://www.xmission.com/~nate/glut.html .
55
+ installer is missing it. You can copy the file from glut package at [glut homepage][].
56
+ Alternatively, you can install the precompiled binary gem (see bellow).
57
+
58
+ [glut homepage]: http://www.xmission.com/~nate/glut.html
42
59
 
43
- Manual Build instructions for all platforms
44
- (see above for platform-specific notes)
60
+ Build and installation
61
+ --------------
62
+
63
+ Installing from rubygems
64
+ -------------------
65
+
66
+ ruby-opengl should support being installed via gems now. Just
67
+ try 'gem install -y ruby-opengl' and it should pull down the gem
68
+ and try to build the bindings for you automatically.
69
+
70
+ For windows there is also pre-built binary windows gem available
71
+ (i386-mswin32) which is compatible with the ruby one-click installer and does not need
72
+ compiler or other mentioned tools installed.
73
+
74
+ Manual Build instructions for all platforms (see above for platform-specific notes)
45
75
  ------------------
46
76
  1. Make sure you have working ruby with rubygems installed
47
77
  and (if needed) appropriate developer packages (ruby-dev,ruby1.8-dev,...).
@@ -53,32 +83,22 @@ Manual Build instructions for all platforms
53
83
  6. Run 'rake' at the top level of the project
54
84
  7. (OPTIONAL) Run 'rake test' to run unit tests to verify it works properly
55
85
 
56
- Installing
86
+ Installing manually built extensions
57
87
  ------------------
58
88
  1. Run 'rake clean' to clean out the project
59
- 2. Run 'rake gem' to build source gem
89
+ 2. Run 'rake gem' to create source gem from project
60
90
  3. Run 'gem install pkg/ruby-opengl-<version>.gem' to compile and install the gem
91
+ 4. Done.
61
92
 
62
- Building binary gem
93
+ Building binary gem (useful only for binary distribution of the project)
63
94
  ------------------
64
95
  1. Run 'gem install gembuilder' to install the gembuilder package
65
96
  2. Run 'rake clean' to clean out the project
66
97
  3. Run 'rake gem' to build source gem
67
98
  4. Run 'gembuilder pkg/ruby-opengl-<version>.gem' to compile the binary gem
68
99
 
69
- Installing from rubygems
70
- -------------------
71
-
72
- ruby-opengl should also support being installed via gems now. Just
73
- try 'gem install -y ruby-opengl' and it should pull down the gem
74
- and try to build the bindings for you automatically.
75
-
76
- You MUST have rubygems 0.9.1 or higher installed for ruby-opengl
77
- to work properly. 0.8.x and 0.9.0 will not build ruby-opengl
78
- properly.
79
100
 
80
-
81
- Testing / Running
101
+ Testing
82
102
  -----------------
83
103
 
84
104
  To run unit tests:
@@ -90,9 +110,9 @@ implementation, so depending on your GL provider,drivers or OS, the tests may
90
110
  fail, crash, or not run at all, without affecting your ability to use the
91
111
  bindings.
92
112
 
113
+ Running programs and examples
114
+ -----------------
93
115
  To run a sample file, make sure the ruby-opengl gem is installed then:
94
116
 
95
117
  $ cd examples
96
118
  $ ruby -rubygems plane.rb
97
-
98
- Hit ESC to exit.
@@ -0,0 +1,361 @@
1
+ <pre>
2
+ ruby-opengl extensions support status in trunk (SVN):
3
+
4
+ [X] - supported
5
+ [ ] - not supported yet
6
+ [N] - no plans for now, platform specific or other (GLX,WGL,GLU,GLUT..)
7
+ [I] - implicitly supported with no additional test code required
8
+ [O] - obsolete; extension drafted but not implemented by vendor, etc.
9
+
10
+ [code][testcase]
11
+ ARB:
12
+ [ ][ ] 1. GL_ARB_multitexture
13
+ [N][N] 2. GLX_ARB_get_proc_address
14
+ [X][X] 3. GL_ARB_transpose_matrix
15
+ [N][N] 4. WGL_ARB_buffer_region
16
+ [X][X] 5. GL_ARB_multisample
17
+ [N][N] GLX_ARB_multisample
18
+ [N][N] WGL_ARB_multisample
19
+ [X][I] 6. GL_ARB_texture_env_add
20
+ [X][I] 7. GL_ARB_texture_cube_map
21
+ [N][N] 8. WGL_ARB_extensions_string
22
+ [N][N] 9. WGL_ARB_pixel_format
23
+ [N][N] 10. WGL_ARB_make_current_read
24
+ [N][N] 11. WGL_ARB_pbuffer
25
+ [ ][ ] 12. GL_ARB_texture_compression
26
+ [X][I] 13. GL_ARB_texture_border_clamp
27
+ [ ][ ] 14. GL_ARB_point_parameters
28
+ [ ][ ] 15. GL_ARB_vertex_blend
29
+ [ ][ ] 16. GL_ARB_matrix_palette
30
+ [X][I] 17. GL_ARB_texture_env_combine
31
+ [X][I] 18. GL_ARB_texture_env_crossbar
32
+ [X][I] 19. GL_ARB_texture_env_dot3
33
+ [N][N] 20. WGL_ARB_render_texture
34
+ [X][I] 21. GL_ARB_texture_mirrored_repeat
35
+ [X][I] 22. GL_ARB_depth_texture
36
+ [X][I] 23. GL_ARB_shadow
37
+ [X][I] 24. GL_ARB_shadow_ambient
38
+ [ ][ ] 25. GL_ARB_window_pos
39
+ [ ][ ] 26. GL_ARB_vertex_program
40
+ [ ][ ] 27. GL_ARB_fragment_program
41
+ [ ][ ] 28. GL_ARB_vertex_buffer_object
42
+ [ ][ ] 29. GL_ARB_occlusion_query
43
+ [ ][ ] 30. GL_ARB_shader_objects
44
+ [ ][ ] 31. GL_ARB_vertex_shader
45
+ [ ][ ] 32. GL_ARB_fragment_shader
46
+ [X][I] 33. GL_ARB_shading_language_100
47
+ [X][I] 34. GL_ARB_texture_non_power_of_two
48
+ [X][I] 35. GL_ARB_point_sprite
49
+ [X][I] 36. GL_ARB_fragment_program_shadow
50
+ [X][I] 37. GL_ARB_draw_buffers
51
+ [X][I] 38. GL_ARB_texture_rectangle
52
+ [X][X] 39. GL_ARB_color_buffer_float
53
+ [N][N] WGL_ARB_pixel_format_float
54
+ [N][N] GLX_ARB_fbconfig_float
55
+ [X][I] 40. GL_ARB_half_float_pixel
56
+ [X][I] 41. GL_ARB_texture_float
57
+ [X][I] 42. GL_ARB_pixel_buffer_object
58
+
59
+ Other:
60
+ [X][I] 1. GL_EXT_abgr
61
+ [ ][ ] 2. GL_EXT_blend_color
62
+ [ ][ ] 3. GL_EXT_polygon_offset
63
+ [X][I] 4. GL_EXT_texture
64
+ [X][I] 6. GL_EXT_texture3D
65
+ [ ][ ] 7. GL_SGIS_texture_filter4
66
+ [ ][ ] 9. GL_EXT_subtexture
67
+ [ ][ ] 10. GL_EXT_copy_texture
68
+ [ ][ ] 11. GL_EXT_histogram
69
+ [ ][ ] 12. GL_EXT_convolution
70
+ [X][I] 13. GL_SGI_color_matrix
71
+ [ ][ ] 14. GL_SGI_color_table
72
+ [ ][ ] 15. GL_SGIS_pixel_texture
73
+ [ ][ ] 16. GL_SGIX_pixel_texture
74
+ [ ][ ] 16. GL_SGIS_texture4D
75
+ [X][I] 17. GL_SGI_texture_color_table
76
+ [X][I] 18. GL_EXT_cmyka
77
+ [ ][ ] 20. GL_EXT_texture_object
78
+ [ ][ ] 21. GL_SGIS_detail_texture
79
+ [ ][ ] 22. GL_SGIS_sharpen_texture
80
+ [X][I] 23. GL_EXT_packed_pixels
81
+ [X][I] 24. GL_SGIS_texture_lod
82
+ [ ][ ] 25. GL_SGIS_multisample
83
+ [N][N] GLX_SGIS_multisample
84
+ [X][I] 27. GL_EXT_rescale_normal
85
+ [N][N] 28. GLX_EXT_visual_info
86
+ [ ][ ] 30. GL_EXT_vertex_array
87
+ [X][I] 31. GL_EXT_misc_attribute
88
+ [X][I] 32. GL_SGIS_generate_mipmap
89
+ [X][I] 33. GL_SGIX_clipmap
90
+ [X][I] 34. GL_SGIX_shadow
91
+ [X][I] 35. GL_SGIS_texture_edge_clamp
92
+ [X][I] 36. GL_SGIS_texture_border_clamp
93
+ [ ][ ] 37. GL_EXT_blend_minmax
94
+ [X][I] 38. GL_EXT_blend_subtract
95
+ [X][I] 39. GL_EXT_blend_logic_op
96
+ [N][N] 40. GLX_SGI_swap_control
97
+ [N][N] 41. GLX_SGI_video_sync
98
+ [N][N] 42. GLX_SGI_make_current_read
99
+ [N][N] 43. GLX_SGIX_video_source
100
+ [N][N] 44. GLX_EXT_visual_rating
101
+ [X][I] 45. GL_SGIX_interlace
102
+ [N][N] 47. GLX_EXT_import_context
103
+ [N][N] 49. GLX_SGIX_fbconfig
104
+ [N][N] 50. GLX_SGIX_pbuffer
105
+ [X][I] 51. GL_SGIS_texture_select
106
+ [ ][ ] 52. GL_SGIX_sprite
107
+ [X][I] 53. GL_SGIX_texture_multi_buffer
108
+ [ ][ ] 54. GL_EXT_point_parameters
109
+ [ ][ ] 55. GL_SGIX_instruments
110
+ [X][I] 56. GL_SGIX_texture_scale_bias
111
+ [ ][ ] 57. GL_SGIX_framezoom
112
+ [ ][ ] 58. GL_SGIX_tag_sample_buffer
113
+ [ ][ ] 60. GL_SGIX_reference_plane
114
+ [ ][ ] 61. GL_SGIX_flush_raster
115
+ [N][N] 62. GLX_SGI_cushion
116
+ [X][I] 63. GL_SGIX_depth_texture
117
+ [ ][ ] 64. GL_SGIS_fog_function
118
+ [X][I] 65. GL_SGIX_fog_offset
119
+ [ ][ ] 66. GL_HP_image_transform
120
+ [X][I] 67. GL_HP_convolution_border_modes
121
+ [X][I] 69. GL_SGIX_texture_add_env
122
+ [ ][ ] 74. GL_EXT_color_subtable
123
+ [N][N] 75. GLU_EXT_object_space_tess
124
+ [X][I] 76. GL_PGI_vertex_hints
125
+ [ ][ ] 77. GL_PGI_misc_hints
126
+ [ ][ ] 78. GL_EXT_paletted_texture
127
+ [X][I] 79. GL_EXT_clip_volume_hint
128
+ [ ][ ] 80. GL_SGIX_list_priority
129
+ [X][I] 81. GL_SGIX_ir_instrument1
130
+ [N][N] 83. GLX_SGIX_video_resize
131
+ [X][I] 84. GL_SGIX_texture_lod_bias
132
+ [N][N] 85. GLU_SGI_filter4_parameters
133
+ [N][N] 86. GLX_SGIX_dm_buffer
134
+ [X][I] 90. GL_SGIX_shadow_ambient
135
+ [N][N] 91. GLX_SGIX_swap_group
136
+ [N][N] 92. GLX_SGIX_swap_barrier
137
+ [X][I] 93. GL_EXT_index_texture
138
+ [ ][ ] 94. GL_EXT_index_material
139
+ [ ][ ] 95. GL_EXT_index_func
140
+ [X][I] 96. GL_EXT_index_array_formats
141
+ [ ][ ] 97. GL_EXT_compiled_vertex_array
142
+ [ ][ ] 98. GL_EXT_cull_vertex
143
+ [N][N] 100. GLU_EXT_nurbs_tessellator
144
+ [X][I] 101. GL_SGIX_ycrcb
145
+ [ ][ ] 102. GL_EXT_fragment_lighting
146
+ [X][I] 110. GL_IBM_rasterpos_clip
147
+ [X][I] 111. GL_HP_texture_lighting
148
+ [ ][ ] 112. GL_EXT_draw_range_elements
149
+ [X][I] 113. GL_WIN_phong_shading
150
+ [X][I] 114. GL_WIN_specular_fog
151
+ [N][N] 115. GLX_SGIS_color_range
152
+ [N][N] GL_SGIS_color_range
153
+ [ ][ ] 117. GL_EXT_light_texture
154
+ [X][I] 119. GL_SGIX_blend_alpha_minmax
155
+ [N][N] 120. GL_EXT_scene_marker
156
+ [N][N] GLX_EXT_scene_marker
157
+ [X][I] 127. GL_SGIX_pixel_texture_bits
158
+ [X][I] 129. GL_EXT_bgra
159
+ [ ][ ] 132. GL_SGIX_async
160
+ [X][I] 133. GL_SGIX_async_pixel
161
+ [X][I] 134. GL_SGIX_async_histogram
162
+ [O][O] 135. GL_INTEL_texture_scissor
163
+ [ ][ ] 136. GL_INTEL_parallel_arrays
164
+ [O][O] 137. GL_HP_occlusion_test
165
+ [ ][ ] 138. GL_EXT_pixel_transform
166
+ [X][I] 139. GL_EXT_pixel_transform_color_table
167
+ [X][I] 141. GL_EXT_shared_texture_palette
168
+ [N][N] 142. GLX_SGIS_blended_overlay
169
+ [X][I] 144. GL_EXT_separate_specular_color
170
+ [ ][ ] 145. GL_EXT_secondary_color
171
+ [O][O] 146. GL_EXT_texture_env
172
+ [ ][ ] 147. GL_EXT_texture_perturb_normal
173
+ [ ][ ] 148. GL_EXT_multi_draw_arrays
174
+ [ ][ ] GL_SUN_multi_draw_arrays
175
+ [ ][ ] 149. GL_EXT_fog_coord
176
+ [X][I] 155. GL_REND_screen_coordinates
177
+ [ ][ ] 156. GL_EXT_coordinate_frame
178
+ [X][I] 158. GL_EXT_texture_env_combine
179
+ [X][I] 159. GL_APPLE_specular_vector
180
+ [X][I] 160. GL_APPLE_transform_hint
181
+ [ ][ ] 163. GL_SUNX_constant_data
182
+ [ ][ ] 164. GL_SUN_global_alpha
183
+ [ ][ ] 165. GL_SUN_triangle_list
184
+ [ ][ ] 166. GL_SUN_vertex
185
+ [N][N] 167. WGL_EXT_display_color_table
186
+ [N][N] 168. WGL_EXT_extensions_string
187
+ [N][N] 169. WGL_EXT_make_current_read
188
+ [N][N] 170. WGL_EXT_pixel_format
189
+ [N][N] 171. WGL_EXT_pbuffer
190
+ [N][N] 172. WGL_EXT_swap_control
191
+ [ ][ ] 173. GL_EXT_blend_func_separate
192
+ [X][I] 174. GL_INGR_color_clamp
193
+ [X][I] 175. GL_INGR_interlace_read
194
+ [X][I] 176. GL_EXT_stencil_wrap
195
+ [N][N] 177. WGL_EXT_depth_float
196
+ [X][I] 178. GL_EXT_422_pixels
197
+ [X][I] 179. GL_NV_texgen_reflection
198
+ [X][I] 181. GL_SGIX_texture_range
199
+ [X][I] 182. GL_SUN_convolution_border_modes
200
+ [N][N] 183. GLX_SUN_get_transparent_index
201
+ [X][I] 185. GL_EXT_texture_env_add
202
+ [X][I] 186. GL_EXT_texture_lod_bias
203
+ [X][I] 187. GL_EXT_texture_filter_anisotropic
204
+ [ ][ ] 188. GL_EXT_vertex_weighting
205
+ [X][I] 189. GL_NV_light_max_exponent
206
+ [ ][ ] 190. GL_NV_vertex_array_range
207
+ [ ][ ] 191. GL_NV_register_combiners
208
+ [X][I] 192. GL_NV_fog_distance
209
+ [X][I] 193. GL_NV_texgen_emboss
210
+ [X][I] 194. GL_NV_blend_square
211
+ [X][I] 195. GL_NV_texture_env_combine4
212
+ [N][N] 196. GL_MESA_resize_buffers
213
+ [N][N] 197. GL_MESA_window_pos
214
+ [X][I] 198. GL_EXT_texture_compression_s3tc
215
+ [X][I] 199. GL_IBM_cull_vertex
216
+ [ ][ ] 200. GL_IBM_multimode_draw_arrays
217
+ [ ][ ] 201. GL_IBM_vertex_array_lists
218
+ [X][I] 206. GL_3DFX_texture_compression_FXT1
219
+ [N][N] 207. GL_3DFX_multisample
220
+ [ ][ ] 208. GL_3DFX_tbuffer
221
+ [N][N] 209. WGL_EXT_multisample
222
+ [N][N] GL_EXT_multisample
223
+ [X][I] 210. GL_SGIX_vertex_preclip
224
+ [X][I] GL_SGIX_vertex_preclip_hint
225
+ [X][I] 212. GL_SGIX_resample
226
+ [ ][ ] 214. GL_SGIS_texture_color_mask
227
+ [N][N] 215. GLX_MESA_copy_sub_buffer
228
+ [N][N] 216. GLX_MESA_pixmap_colormap
229
+ [N][N] 217. GLX_MESA_release_buffers
230
+ [N][N] 218. GLX_MESA_set_3dfx_mode
231
+ [X][I] 220. GL_EXT_texture_env_dot3
232
+ [X][I] 221. GL_ATI_texture_mirror_once
233
+ [ ][ ] 222. GL_NV_fence
234
+ [ ][ ] 223. GL_IBM_static_data
235
+ [X][I] 224. GL_IBM_texture_mirrored_repeat
236
+ [O][O] 225. GL_NV_evaluators
237
+ [X][I] 226. GL_NV_packed_depth_stencil
238
+ [ ][ ] 227. GL_NV_register_combiners2
239
+ [X][I] 228. GL_NV_texture_compression_vtc
240
+ [X][I] 229. GL_NV_texture_rectangle
241
+ [X][I] 230. GL_NV_texture_shader
242
+ [X][I] 231. GL_NV_texture_shader2
243
+ [X][I] 232. GL_NV_vertex_array_range2
244
+ [ ][ ] 233. GL_NV_vertex_program
245
+ [N][N] 234. GLX_SGIX_visual_select_group
246
+ [X][I] 235. GL_SGIX_texture_coordinate_clamp
247
+ [N][N] 237. GLX_OML_swap_method
248
+ [N][N] 238. GLX_OML_sync_control
249
+ [X][I] 239. GL_OML_interlace
250
+ [X][I] 240. GL_OML_subsample
251
+ [X][I] 241. GL_OML_resample
252
+ [N][N] 242. WGL_OML_sync_control
253
+ [X][I] 243. GL_NV_copy_depth_to_color
254
+ [ ][ ] 244. GL_ATI_envmap_bumpmap
255
+ [ ][ ] 245. GL_ATI_fragment_shader
256
+ [ ][ ] 246. GL_ATI_pn_triangles
257
+ [ ][ ] 247. GL_ATI_vertex_array_object
258
+ [ ][ ] 248. GL_EXT_vertex_shader
259
+ [ ][ ] 249. GL_ATI_vertex_streams
260
+ [N][N] 250. WGL_I3D_digital_video_control
261
+ [N][N] 251. WGL_I3D_gamma
262
+ [N][N] 252. WGL_I3D_genlock
263
+ [N][N] 253. WGL_I3D_image_buffer
264
+ [N][N] 254. WGL_I3D_swap_frame_lock
265
+ [N][N] 255. WGL_I3D_swap_frame_usage
266
+ [ ][ ] 256. GL_ATI_element_array
267
+ [ ][ ] 257. GL_SUN_mesh_array
268
+ [X][I] 258. GL_SUN_slice_accum
269
+ [X][I] 259. GL_NV_multisample_filter_hint
270
+ [X][I] 260. GL_NV_depth_clamp
271
+ [ ][ ] 261. GL_NV_occlusion_query
272
+ [ ][ ] 262. GL_NV_point_sprite
273
+ [N][N] 263. WGL_NV_render_depth_texture
274
+ [N][N] 264. WGL_NV_render_texture_rectangle
275
+ [X][I] 265. GL_NV_texture_shader3
276
+ [X][I] 266. GL_NV_vertex_program1_1
277
+ [X][I] 267. GL_EXT_shadow_funcs
278
+ [ ][ ] 268. GL_EXT_stencil_two_side
279
+ [X][I] 269. GL_ATI_text_fragment_shader
280
+ [X][I] 270. GL_APPLE_client_storage
281
+ [ ][ ] 271. GL_APPLE_element_array
282
+ [ ][ ] 272. GL_APPLE_fence
283
+ [ ][ ] 273. GL_APPLE_vertex_array_object
284
+ [ ][ ] 274. GL_APPLE_vertex_array_range
285
+ [X][I] 275. GL_APPLE_ycbcr_422
286
+ [O][O] 276. GL_S3_s3tc
287
+ [ ][ ] 277. GL_ATI_draw_buffers
288
+ [N][N] 278. WGL_ATI_pixel_format_float
289
+ [X][I] 279. GL_ATI_texture_env_combine3
290
+ [X][I] 280. GL_ATI_texture_float
291
+ [X][I] 281. GL_NV_float_buffer
292
+ [N][N] WGL_NV_float_buffer
293
+ [ ][ ] 282. GL_NV_fragment_program
294
+ [ ][ ] 283. GL_NV_half_float
295
+ [ ][ ] 284. GL_NV_pixel_data_range
296
+ [ ][ ] 285. GL_NV_primitive_restart
297
+ [X][I] 286. GL_NV_texture_expand_normal
298
+ [X][I] 287. GL_NV_vertex_program2
299
+ [ ][ ] 288. GL_ATI_map_object_buffer
300
+ [ ][ ] 289. GL_ATI_separate_stencil
301
+ [ ][ ] 290. GL_ATI_vertex_attrib_array_object
302
+ [X][I] 291. GL_OES_byte_coordinates
303
+ [ ][ ] 292. GL_OES_fixed_point
304
+ [ ][ ] 293. GL_OES_single_precision
305
+ [X][I] 294. GL_OES_compressed_paletted_texture
306
+ [X][I] 295. GL_OES_read_format
307
+ [ ][ ] 296. GL_OES_query_matrix
308
+ [ ][ ] 297. GL_EXT_depth_bounds_test
309
+ [X][I] 298. GL_EXT_texture_mirror_clamp
310
+ [ ][ ] 299. GL_EXT_blend_equation_separate
311
+ [X][I] 300. GL_MESA_pack_invert
312
+ [X][I] 301. GL_MESA_ycbcr_texture
313
+ [X][I] 302. GL_EXT_pixel_buffer_object
314
+ [X][I] 303. GL_NV_fragment_program_option
315
+ [X][I] 304. GL_NV_fragment_program2
316
+ [X][I] 305. GL_NV_vertex_program2_option
317
+ [X][I] 306. GL_NV_vertex_program3
318
+ [N][N] 307. GLX_SGIX_hyperpipe
319
+ [N][N] 308. GLX_MESA_agp_offset
320
+ [X][I] 309. GL_EXT_texture_compression_dxt1
321
+ [X][X] 310. GL_EXT_framebuffer_object
322
+ [ ][ ] 311. GL_GREMEDY_string_marker
323
+ [X][I] 312. GL_EXT_packed_depth_stencil
324
+ [N][N] 313. WGL_3DL_stereo_control
325
+ [ ][ ] 314. GL_EXT_stencil_clear_tag
326
+ [X][I] 315. GL_EXT_texture_sRGB
327
+ [ ][ ] 316. GL_EXT_framebuffer_blit
328
+ [ ][ ] 317. GL_EXT_framebuffer_multisample
329
+ [X][I] 318. GL_MESAX_texture_stack
330
+ [ ][ ] 319. GL_EXT_timer_query
331
+ [ ][ ] 320. GL_EXT_gpu_program_parameters
332
+ [ ][ ] 321. GL_APPLE_flush_buffer_range
333
+ [ ][ ] 322. GL_NV_gpu_program4
334
+ [ ][ ] 323. GL_NV_geometry_program4
335
+ [ ][ ] 324. GL_EXT_geometry_shader4
336
+ [ ][ ] 325. GL_NV_vertex_program4
337
+ [ ][ ] 326. GL_EXT_gpu_shader4
338
+ [ ][ ] 327. GL_EXT_draw_instanced
339
+ [X][I] 328. GL_EXT_packed_float
340
+ [N][N] WGL_EXT_pixel_format_packed_float
341
+ [N][N] GLX_EXT_fbconfig_packed_float
342
+ [ ][ ] 329. GL_EXT_texture_array
343
+ [ ][ ] 330. GL_EXT_texture_buffer_object
344
+ [X][I] 331. GL_EXT_texture_compression_latc
345
+ [X][I] 332. GL_EXT_texture_compression_rgtc
346
+ [X][I] 333. GL_EXT_texture_shared_exponent
347
+ [ ][ ] 334. GL_NV_depth_buffer_float
348
+ [X][I] 335. GL_NV_fragment_program4
349
+ [ ][ ] 336. GL_NV_framebuffer_multisample_coverage
350
+ [X][I] 337. GL_EXT_framebuffer_sRGB
351
+ [N][N] GLX_EXT_framebuffer_sRGB
352
+ [N][N] WGL_EXT_framebuffer_sRGB
353
+ [X][I] 338. GL_NV_geometry_shader4
354
+ [ ][ ] 339. GL_NV_parameter_buffer_object
355
+ [ ][ ] 340. GL_EXT_draw_buffers2
356
+ [ ][ ] 341. GL_NV_transform_feedback
357
+ [ ][ ] 342. GL_EXT_bindable_uniform
358
+ [ ][ ] 343. GL_EXT_texture_integer
359
+ [N][N] 344. GLX_EXT_texture_from_pixmap
360
+
361
+ </pre>