opengl 0.9.0-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (145) hide show
  1. checksums.yaml +7 -0
  2. checksums.yaml.gz.sig +3 -0
  3. data.tar.gz.sig +0 -0
  4. data/.autotest +29 -0
  5. data/.gemtest +0 -0
  6. data/.gitignore +6 -0
  7. data/.travis.yml +19 -0
  8. data/History.rdoc +77 -0
  9. data/MIT-LICENSE +18 -0
  10. data/Manifest.txt +138 -0
  11. data/README.rdoc +102 -0
  12. data/Rakefile +60 -0
  13. data/examples/NeHe/NeHe.png +0 -0
  14. data/examples/NeHe/crate.png +0 -0
  15. data/examples/NeHe/glass.png +0 -0
  16. data/examples/NeHe/nehe_lesson02.rb +117 -0
  17. data/examples/NeHe/nehe_lesson03.rb +123 -0
  18. data/examples/NeHe/nehe_lesson04.rb +132 -0
  19. data/examples/NeHe/nehe_lesson05.rb +182 -0
  20. data/examples/NeHe/nehe_lesson06.rb +186 -0
  21. data/examples/NeHe/nehe_lesson07.rb +240 -0
  22. data/examples/NeHe/nehe_lesson08.rb +255 -0
  23. data/examples/NeHe/nehe_lesson09.rb +203 -0
  24. data/examples/NeHe/nehe_lesson11.rb +176 -0
  25. data/examples/NeHe/nehe_lesson12.rb +203 -0
  26. data/examples/NeHe/nehe_lesson16.rb +211 -0
  27. data/examples/NeHe/nehe_lesson19.rb +209 -0
  28. data/examples/NeHe/nehe_lesson36.rb +308 -0
  29. data/examples/NeHe/particle.png +0 -0
  30. data/examples/NeHe/star.png +0 -0
  31. data/examples/NeHe/tim.png +0 -0
  32. data/examples/OrangeBook/3Dlabs-License.txt +33 -0
  33. data/examples/OrangeBook/brick.frag +36 -0
  34. data/examples/OrangeBook/brick.rb +378 -0
  35. data/examples/OrangeBook/brick.vert +41 -0
  36. data/examples/OrangeBook/particle.frag +17 -0
  37. data/examples/OrangeBook/particle.rb +408 -0
  38. data/examples/OrangeBook/particle.vert +38 -0
  39. data/examples/README +16 -0
  40. data/examples/RedBook/aapoly.rb +143 -0
  41. data/examples/RedBook/aargb.rb +121 -0
  42. data/examples/RedBook/accanti.rb +164 -0
  43. data/examples/RedBook/accpersp.rb +217 -0
  44. data/examples/RedBook/alpha.rb +125 -0
  45. data/examples/RedBook/alpha3D.rb +160 -0
  46. data/examples/RedBook/bezcurve.rb +107 -0
  47. data/examples/RedBook/bezmesh.rb +139 -0
  48. data/examples/RedBook/checker.rb +126 -0
  49. data/examples/RedBook/clip.rb +97 -0
  50. data/examples/RedBook/colormat.rb +137 -0
  51. data/examples/RedBook/cube.rb +71 -0
  52. data/examples/RedBook/depthcue.rb +101 -0
  53. data/examples/RedBook/dof.rb +206 -0
  54. data/examples/RedBook/double.rb +107 -0
  55. data/examples/RedBook/drawf.rb +93 -0
  56. data/examples/RedBook/feedback.rb +147 -0
  57. data/examples/RedBook/fog.rb +168 -0
  58. data/examples/RedBook/font.rb +153 -0
  59. data/examples/RedBook/hello.rb +81 -0
  60. data/examples/RedBook/image.rb +139 -0
  61. data/examples/RedBook/jitter.rb +207 -0
  62. data/examples/RedBook/light.rb +155 -0
  63. data/examples/RedBook/lines.rb +130 -0
  64. data/examples/RedBook/list.rb +113 -0
  65. data/examples/RedBook/material.rb +276 -0
  66. data/examples/RedBook/mipmap.rb +158 -0
  67. data/examples/RedBook/model.rb +115 -0
  68. data/examples/RedBook/movelight.rb +134 -0
  69. data/examples/RedBook/pickdepth.rb +181 -0
  70. data/examples/RedBook/planet.rb +110 -0
  71. data/examples/RedBook/quadric.rb +160 -0
  72. data/examples/RedBook/robot.rb +117 -0
  73. data/examples/RedBook/select.rb +198 -0
  74. data/examples/RedBook/smooth.rb +97 -0
  75. data/examples/RedBook/stencil.rb +165 -0
  76. data/examples/RedBook/stroke.rb +169 -0
  77. data/examples/RedBook/surface.rb +168 -0
  78. data/examples/RedBook/teaambient.rb +134 -0
  79. data/examples/RedBook/teapots.rb +184 -0
  80. data/examples/RedBook/tess.rb +185 -0
  81. data/examples/RedBook/texbind.rb +149 -0
  82. data/examples/RedBook/texgen.rb +171 -0
  83. data/examples/RedBook/texturesurf.rb +130 -0
  84. data/examples/RedBook/varray.rb +161 -0
  85. data/examples/RedBook/wrap.rb +150 -0
  86. data/examples/misc/OGLBench.rb +338 -0
  87. data/examples/misc/anisotropic.rb +196 -0
  88. data/examples/misc/fbo_test.rb +357 -0
  89. data/examples/misc/font-glut.rb +47 -0
  90. data/examples/misc/glfwtest.rb +30 -0
  91. data/examples/misc/plane.rb +161 -0
  92. data/examples/misc/readpixel.rb +66 -0
  93. data/examples/misc/sdltest.rb +36 -0
  94. data/examples/misc/trislam.rb +829 -0
  95. data/ext/opengl/common.h +428 -0
  96. data/ext/opengl/conv.h +244 -0
  97. data/ext/opengl/extconf.rb +47 -0
  98. data/ext/opengl/funcdef.h +313 -0
  99. data/ext/opengl/gl-1.0-1.1.c +3075 -0
  100. data/ext/opengl/gl-1.2.c +155 -0
  101. data/ext/opengl/gl-1.3.c +443 -0
  102. data/ext/opengl/gl-1.4.c +348 -0
  103. data/ext/opengl/gl-1.5.c +224 -0
  104. data/ext/opengl/gl-2.0.c +667 -0
  105. data/ext/opengl/gl-2.1.c +57 -0
  106. data/ext/opengl/gl-3.0.c +493 -0
  107. data/ext/opengl/gl-enums.c +4873 -0
  108. data/ext/opengl/gl-enums.h +14588 -0
  109. data/ext/opengl/gl-error.c +112 -0
  110. data/ext/opengl/gl-error.h +28 -0
  111. data/ext/opengl/gl-ext-3dfx.c +27 -0
  112. data/ext/opengl/gl-ext-arb.c +875 -0
  113. data/ext/opengl/gl-ext-ati.c +41 -0
  114. data/ext/opengl/gl-ext-ext.c +889 -0
  115. data/ext/opengl/gl-ext-gremedy.c +41 -0
  116. data/ext/opengl/gl-ext-nv.c +680 -0
  117. data/ext/opengl/gl-types.h +67 -0
  118. data/ext/opengl/gl.c +220 -0
  119. data/ext/opengl/gl_buffer.c +177 -0
  120. data/ext/opengl/opengl.c +7 -0
  121. data/lib/gl.rb +1 -0
  122. data/lib/opengl.rb +53 -0
  123. data/lib/opengl/2.0/opengl.so +0 -0
  124. data/lib/opengl/2.1/opengl.so +0 -0
  125. data/lib/opengl/test_case.rb +86 -0
  126. data/test/dummy.xorg.conf +140 -0
  127. data/test/test_gl.rb +38 -0
  128. data/test/test_gl_10_11.rb +1363 -0
  129. data/test/test_gl_12.rb +71 -0
  130. data/test/test_gl_13.rb +221 -0
  131. data/test/test_gl_14.rb +218 -0
  132. data/test/test_gl_15.rb +258 -0
  133. data/test/test_gl_20.rb +417 -0
  134. data/test/test_gl_21.rb +436 -0
  135. data/test/test_gl_ext_arb.rb +508 -0
  136. data/test/test_gl_ext_ati.rb +28 -0
  137. data/test/test_gl_ext_ext.rb +608 -0
  138. data/test/test_gl_ext_gremedy.rb +29 -0
  139. data/test/test_gl_ext_nv.rb +349 -0
  140. data/test/test_opengl_buffer.rb +120 -0
  141. data/utils/README +6 -0
  142. data/utils/enumgen.rb +108 -0
  143. data/utils/extlistgen.rb +90 -0
  144. metadata +319 -0
  145. metadata.gz.sig +1 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 090ccdbb75f4cc3e9a6c5141d684d5ecd7d32242
4
+ data.tar.gz: 4bcfd05be54d76fe6190f681dd61f3f1067b7f72
5
+ SHA512:
6
+ metadata.gz: ff8e6b74315b94ade1499f59ae0d31680c2e3c5230d6b03ff0c1a5964b4f3aae3d6fec66cd1061126eb767e469050d4edf176d541149fe04eb327e2ec0e9da4b
7
+ data.tar.gz: 469da0a0b529849ef5f4355e54332bb0f766c5225920a8abeabe519f6f0760380904652019dd1391aea35c361bf637b3724a6cb14ab38798c29ba866f1f828da
checksums.yaml.gz.sig ADDED
@@ -0,0 +1,3 @@
1
+ ��߀:ie�Z�eOb�1�v�>�ߩY�@i����;U���5������*maÈ�̸�ލN>�`N��^����zX��fxh.E"���)o.xSQw�eD��pe#rO�p�/�h�3�dy�*l����>���V��sn�ָ;<�3r� ���+tv
2
+ ��3 �j��D>�o�� B�뷪�G�دUe�}����y���6���jc�}��
3
+ ��I�;�/ze #/��R���ʡ�����r�︾l�Mn������ܖ�
data.tar.gz.sig ADDED
Binary file
data/.autotest ADDED
@@ -0,0 +1,29 @@
1
+ require 'autotest/restart'
2
+
3
+ Autotest.add_hook :initialize do |at|
4
+ at.add_exception /\.git/
5
+ at.add_exception /doc/
6
+ at.add_exception /examples/
7
+ at.add_exception /utils/
8
+ at.add_exception /website/
9
+
10
+ at.add_mapping(/^lib\/.*(\.bundle|so|dll)$/) do |filename, match|
11
+ possible = File.basename(filename, match[1])
12
+ at.files_matching %r%^test/test_#{possible}%
13
+ end
14
+
15
+ def at.path_to_classname s
16
+ sep = File::SEPARATOR
17
+ n = s.sub(/^test#{sep}test_(.*)\.rb/, '\1')
18
+ c = if n =~ /^(glu?)_?(.*)/ then
19
+ "#{$1.capitalize}#{$2.split(/_|(\d+)/).map { |seg| seg.capitalize }.join}"
20
+ end
21
+
22
+ "Test#{c}"
23
+ end
24
+ end
25
+
26
+ Autotest.add_hook :run_command do |at|
27
+ at.unit_diff = 'cat'
28
+ system Gem.ruby, Gem.bin_path('rake', 'rake'), 'compile'
29
+ end
data/.gemtest ADDED
File without changes
data/.gitignore ADDED
@@ -0,0 +1,6 @@
1
+ *.swp
2
+ /TAGS
3
+ /lib/opengl/*.so
4
+ /lib/opengl/*.bundle
5
+ /pkg
6
+ /tmp
data/.travis.yml ADDED
@@ -0,0 +1,19 @@
1
+ language: ruby
2
+ rvm:
3
+ # - "1.9.3"
4
+ - "2.1"
5
+ - "rbx"
6
+ # - jruby-19mode # JRuby in 1.9 mode
7
+ # - rbx-19mode
8
+ matrix:
9
+ allow_failures:
10
+ - rvm: rbx
11
+ before_install:
12
+ - sudo apt-get install xpra xserver-xorg-video-dummy freeglut3-dev;
13
+ - gem install hoe rake-compiler glut glu;
14
+ before_script:
15
+ - "xpra --xvfb=\"Xorg +extension GLX -config `pwd`/test/dummy.xorg.conf -logfile ${HOME}/.xpra/xorg.log\" start :9"
16
+ script: "env DISPLAY=:9 rake test"
17
+ after_script:
18
+ - "xpra stop :9"
19
+ - "cat ~/.xpra/*"
data/History.rdoc ADDED
@@ -0,0 +1,77 @@
1
+ === 0.9.0 / 2014-03-14
2
+
3
+ * Split glu and glut into seperate gems.
4
+ * Add OpenGL 3.0 support.
5
+ * Add x64-mingw platform for cross build and add ruby-2.0.0 to binary gems.
6
+ * Don't pollute the global namespace. Use GL namespace.
7
+
8
+ * Replace UINT2FIX with UINT2NUM since UINT2FIX is not defined in MRI ruby.
9
+ * Don't return the terminating null from C in GetProgramInfoLog.
10
+ * Remove the outdated website, use gh-pages now.
11
+ * Fixes in tests, resolved some upstream mesa bugs.
12
+ * glMaterial: Before converting using to_a, check if conversion is possible.
13
+ * Fix incorrect conversion of bool arguments to functions, they were getting
14
+ converted from C instead of to C (`GL_TRUE/true` got converted to `41`).
15
+ * Fix: some parts of GL_EXT_gpu_shader4 were checking for GL_ARB_vertex_shader
16
+ support instead of GL_EXT_gpu_shader4.
17
+ * Fix ProgramVertexLimitNV checked for GL_NV_gpu_program4 support instead of
18
+ GL_EXT_geometry_shader4.
19
+ * Fix build with Ruby-2.0 on OS X Mavericks.
20
+
21
+ * Dropped support for 1.2 optional ARB_imaging subset. It is deprecated and
22
+ support for it was dropped from all major drivers. Continuing support for it
23
+ would lead to developers using deprecated coding practices.
24
+
25
+ * Fix several test cases.
26
+
27
+ === 0.8.0 / 2013-02-03
28
+
29
+ * Drop support for Ruby 1.8.
30
+ * Wrap glut callbacks in GVL release/acquire for better thread support.
31
+ * Add OpenGL::Buffer for mapped buffers that allows writing.
32
+
33
+ === 0.7.0 / 2013-02-03
34
+
35
+ * Better support of 64 bit systems.
36
+ * Replace mkrf with extconf.rb, hoe and rake-compiler.
37
+ * Switch to dlopen() from deprecated NSAddImage() and friends for OS X.
38
+ * glBegin, glPushMatrix, glEnable and glEnableClientState now accept a block.
39
+ * glEnable/glDisable and glEnableClientState/glDisableClientState now accept
40
+ multiple arguments.
41
+ * Allow to_a-able objects for glColor*v, glRasterPos*v, glRect*v, glTexCoord*v,
42
+ glMaterial, glNormal and glVertex.
43
+ * Fix unused param count in ARY2CMAT.
44
+ * Fix a lot of bugs in the test suite.
45
+ * Merge opengl C extensions into a single extension to avoid code duplication
46
+ in extconf.rb and simplify rebuilding based on header changes.
47
+ * Add cross compilation tasks with download of freeglut for binary windows gems
48
+
49
+ === 0.60.1 / 2009-02-16
50
+
51
+ * Bugfixes
52
+ * Proper support for ruby 1.9/1.9.1+
53
+ * Updated OpenGL enumerators in preparation for OpenGL 3.0
54
+
55
+ === 0.60.0 / 2008-01-06
56
+
57
+ * Automatic error checking for GL/GLU calls, enabled by default (see
58
+ doc/tutorial)
59
+ * Added support for many more OpenGL extensions
60
+ * Support for Ruby 1.9.0+ (requires mkrf 0.2.3)
61
+ * Ton of bugfixes.
62
+
63
+ * API Changes:
64
+ * Boolean functions/parameters was changed to ruby true/false instead of
65
+ GL_TRUE / GL_FALSE, which remains for compatibility
66
+ * glGet\* functions now returns +x+ instead of <code>[x]</code> when
67
+ returning only one value
68
+ * Functions operating on packed strings (glTexture, glPointer etc.) now
69
+ also accepts ruby arrays directly
70
+ * Matrix handling functions now also accepts instances of Matrix class, or
71
+ any class that can be converted to array
72
+ * glUniform*v and glUniformmatrix*v now does not require 'count'
73
+ parameter, they will calculate it from length of passed array
74
+ * glCallLists needs type specifier (previously was forced to GL_BYTE)
75
+ * On ruby 1.9, glut keyboard callback returns char ("x") instead of integer
76
+ so using 'if key == ?x' works on both 1.8 and 1.9
77
+
data/MIT-LICENSE ADDED
@@ -0,0 +1,18 @@
1
+
2
+ Permission is hereby granted, free of charge, to any person obtaining a
3
+ copy of this software and associated documentation files (the "Software"),
4
+ to deal in the Software without restriction, including without limitation
5
+ the rights to use, copy, modify, merge, publish, distribute, sublicense,
6
+ and/or sell copies of the Software, and to permit persons to whom the
7
+ Software is furnished to do so, subject to the following conditions:
8
+
9
+ The above copyright notice and this permission notice shall be included in
10
+ all copies or substantial portions of the Software.
11
+
12
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
14
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
15
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
16
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
17
+ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
18
+ DEALINGS IN THE SOFTWARE.
data/Manifest.txt ADDED
@@ -0,0 +1,138 @@
1
+ .autotest
2
+ .gemtest
3
+ .gitignore
4
+ .travis.yml
5
+ History.rdoc
6
+ MIT-LICENSE
7
+ Manifest.txt
8
+ README.rdoc
9
+ Rakefile
10
+ examples/NeHe/NeHe.png
11
+ examples/NeHe/crate.png
12
+ examples/NeHe/glass.png
13
+ examples/NeHe/nehe_lesson02.rb
14
+ examples/NeHe/nehe_lesson03.rb
15
+ examples/NeHe/nehe_lesson04.rb
16
+ examples/NeHe/nehe_lesson05.rb
17
+ examples/NeHe/nehe_lesson06.rb
18
+ examples/NeHe/nehe_lesson07.rb
19
+ examples/NeHe/nehe_lesson08.rb
20
+ examples/NeHe/nehe_lesson09.rb
21
+ examples/NeHe/nehe_lesson11.rb
22
+ examples/NeHe/nehe_lesson12.rb
23
+ examples/NeHe/nehe_lesson16.rb
24
+ examples/NeHe/nehe_lesson19.rb
25
+ examples/NeHe/nehe_lesson36.rb
26
+ examples/NeHe/particle.png
27
+ examples/NeHe/star.png
28
+ examples/NeHe/tim.png
29
+ examples/OrangeBook/3Dlabs-License.txt
30
+ examples/OrangeBook/brick.frag
31
+ examples/OrangeBook/brick.rb
32
+ examples/OrangeBook/brick.vert
33
+ examples/OrangeBook/particle.frag
34
+ examples/OrangeBook/particle.rb
35
+ examples/OrangeBook/particle.vert
36
+ examples/README
37
+ examples/RedBook/aapoly.rb
38
+ examples/RedBook/aargb.rb
39
+ examples/RedBook/accanti.rb
40
+ examples/RedBook/accpersp.rb
41
+ examples/RedBook/alpha.rb
42
+ examples/RedBook/alpha3D.rb
43
+ examples/RedBook/bezcurve.rb
44
+ examples/RedBook/bezmesh.rb
45
+ examples/RedBook/checker.rb
46
+ examples/RedBook/clip.rb
47
+ examples/RedBook/colormat.rb
48
+ examples/RedBook/cube.rb
49
+ examples/RedBook/depthcue.rb
50
+ examples/RedBook/dof.rb
51
+ examples/RedBook/double.rb
52
+ examples/RedBook/drawf.rb
53
+ examples/RedBook/feedback.rb
54
+ examples/RedBook/fog.rb
55
+ examples/RedBook/font.rb
56
+ examples/RedBook/hello.rb
57
+ examples/RedBook/image.rb
58
+ examples/RedBook/jitter.rb
59
+ examples/RedBook/light.rb
60
+ examples/RedBook/lines.rb
61
+ examples/RedBook/list.rb
62
+ examples/RedBook/material.rb
63
+ examples/RedBook/mipmap.rb
64
+ examples/RedBook/model.rb
65
+ examples/RedBook/movelight.rb
66
+ examples/RedBook/pickdepth.rb
67
+ examples/RedBook/planet.rb
68
+ examples/RedBook/quadric.rb
69
+ examples/RedBook/robot.rb
70
+ examples/RedBook/select.rb
71
+ examples/RedBook/smooth.rb
72
+ examples/RedBook/stencil.rb
73
+ examples/RedBook/stroke.rb
74
+ examples/RedBook/surface.rb
75
+ examples/RedBook/teaambient.rb
76
+ examples/RedBook/teapots.rb
77
+ examples/RedBook/tess.rb
78
+ examples/RedBook/texbind.rb
79
+ examples/RedBook/texgen.rb
80
+ examples/RedBook/texturesurf.rb
81
+ examples/RedBook/varray.rb
82
+ examples/RedBook/wrap.rb
83
+ examples/misc/OGLBench.rb
84
+ examples/misc/anisotropic.rb
85
+ examples/misc/fbo_test.rb
86
+ examples/misc/font-glut.rb
87
+ examples/misc/glfwtest.rb
88
+ examples/misc/plane.rb
89
+ examples/misc/readpixel.rb
90
+ examples/misc/sdltest.rb
91
+ examples/misc/trislam.rb
92
+ ext/opengl/common.h
93
+ ext/opengl/conv.h
94
+ ext/opengl/extconf.rb
95
+ ext/opengl/funcdef.h
96
+ ext/opengl/gl-1.0-1.1.c
97
+ ext/opengl/gl-1.2.c
98
+ ext/opengl/gl-1.3.c
99
+ ext/opengl/gl-1.4.c
100
+ ext/opengl/gl-1.5.c
101
+ ext/opengl/gl-2.0.c
102
+ ext/opengl/gl-2.1.c
103
+ ext/opengl/gl-3.0.c
104
+ ext/opengl/gl-enums.c
105
+ ext/opengl/gl-enums.h
106
+ ext/opengl/gl-error.c
107
+ ext/opengl/gl-error.h
108
+ ext/opengl/gl-ext-3dfx.c
109
+ ext/opengl/gl-ext-arb.c
110
+ ext/opengl/gl-ext-ati.c
111
+ ext/opengl/gl-ext-ext.c
112
+ ext/opengl/gl-ext-gremedy.c
113
+ ext/opengl/gl-ext-nv.c
114
+ ext/opengl/gl-types.h
115
+ ext/opengl/gl.c
116
+ ext/opengl/gl_buffer.c
117
+ ext/opengl/opengl.c
118
+ lib/gl.rb
119
+ lib/opengl.rb
120
+ lib/opengl/test_case.rb
121
+ test/dummy.xorg.conf
122
+ test/test_gl.rb
123
+ test/test_gl_10_11.rb
124
+ test/test_gl_12.rb
125
+ test/test_gl_13.rb
126
+ test/test_gl_14.rb
127
+ test/test_gl_15.rb
128
+ test/test_gl_20.rb
129
+ test/test_gl_21.rb
130
+ test/test_gl_ext_arb.rb
131
+ test/test_gl_ext_ati.rb
132
+ test/test_gl_ext_ext.rb
133
+ test/test_gl_ext_gremedy.rb
134
+ test/test_gl_ext_nv.rb
135
+ test/test_opengl_buffer.rb
136
+ utils/README
137
+ utils/enumgen.rb
138
+ utils/extlistgen.rb
data/README.rdoc ADDED
@@ -0,0 +1,102 @@
1
+ = opengl
2
+
3
+ source :: https://github.com/larskanis/opengl
4
+ docs :: http://larskanis.github.com/opengl
5
+ bugs :: https://github.com/larskanis/opengl/issues
6
+ email :: mailto:ruby-opengl-devel@rubyforge.org
7
+
8
+ {<img src="https://travis-ci.org/larskanis/opengl.png?branch=master" alt="Build Status" />}[https://travis-ci.org/larskanis/opengl]
9
+
10
+ == Description
11
+
12
+ An OpenGL wrapper for Ruby. opengl contains bindings for OpenGL.
13
+
14
+ Be sure to check out
15
+ {GLU}[https://github.com/larskanis/glu] and
16
+ {GLUT}[https://github.com/larskanis/glut]
17
+ gems.
18
+
19
+ == Features and Problems
20
+
21
+ * available for Windows, Linux and OS X
22
+
23
+ == Synopsis
24
+
25
+ require 'opengl'
26
+ FIX (code sample of usage)
27
+
28
+ == Requirements
29
+
30
+ * Ruby 1.9.2+
31
+ * see {0.7}[https://github.com/larskanis/opengl/tree/0.7] for Ruby 1.8.x compatible branch
32
+ * OpenGL development files installed
33
+
34
+ == Tests
35
+
36
+ Note that the tests have the adverse effect of testing the underlying OpenGL
37
+ implementation, so depending on your GL provider, drivers or OS, the tests may
38
+ fail, crash, or not run at all, without affecting your ability to use the bindings.
39
+
40
+ Tests require both glut and glu gem.
41
+
42
+ With our test suite, we were able to uncover and help fix upstream mesa bugs:
43
+
44
+ * {#61026}[https://bugs.freedesktop.org/show_bug.cgi?id=61026] glBitmap segfault
45
+ * {#61003}[https://bugs.freedesktop.org/show_bug.cgi?id=61003] gluSurface with Nurbs spits out debug code
46
+ * {#61395}[https://bugs.freedesktop.org/show_bug.cgi?id=61395] glEdgeFlag can't be set to false
47
+
48
+ Whenever a test or example fails, it should be quickly ported into a simple C
49
+ test program, so we can determine whether it's a bug in the bindings or the
50
+ OpenGL implementation.
51
+
52
+ == Install
53
+
54
+ gem install opengl
55
+
56
+ == Developers
57
+
58
+ After checking out the source, run:
59
+
60
+ $ rake newb
61
+
62
+ This task will install any missing dependencies, run the tests/specs,
63
+ and generate the RDoc.
64
+
65
+ == Cross compiling for Windows
66
+
67
+ Using rake-compiler a cross compiled opengl gem can be build in a
68
+ {rake-compiler-dev-box}[https://github.com/tjschuck/rake-compiler-dev-box]
69
+ the win32 platform. There are no runtime dependencies to any but the
70
+ standard Windows DLLs. Use the standard package_win32_fat_binary
71
+ script.
72
+
73
+ == License
74
+
75
+ (The MIT License)
76
+
77
+ Copyright (c) Blaž Hrastnik (current maintainer)
78
+ Copyright (c) Eric Hodel (current maintainer)
79
+ Copyright (c) Alain Hoang (previous maintainer)
80
+ Copyright (c) Jan Dvorak (contributor)
81
+ Copyright (c) Minh Thu Vo (contributor)
82
+ Copyright (c) James Adam (contributor)
83
+
84
+ Permission is hereby granted, free of charge, to any person obtaining
85
+ a copy of this software and associated documentation files (the
86
+ 'Software'), to deal in the Software without restriction, including
87
+ without limitation the rights to use, copy, modify, merge, publish,
88
+ distribute, sublicense, and/or sell copies of the Software, and to
89
+ permit persons to whom the Software is furnished to do so, subject to
90
+ the following conditions:
91
+
92
+ The above copyright notice and this permission notice shall be
93
+ included in all copies or substantial portions of the Software.
94
+
95
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
96
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
97
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
98
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
99
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
100
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
101
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
102
+
data/Rakefile ADDED
@@ -0,0 +1,60 @@
1
+ # -*- coding: UTF-8 -*-
2
+ #-*-ruby-*-
3
+ #
4
+ # Copyright (C) 2006 John M. Gabriele <jmg3000@gmail.com>
5
+ # Copyright (C) Eric Hodel <drbrain@segment7.net>
6
+ #
7
+ # This program is distributed under the terms of the MIT license.
8
+ # See the included MIT-LICENSE file for the terms of this license.
9
+ #
10
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
11
+ # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
12
+ # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
13
+ # IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
14
+ # CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
15
+ # TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
16
+ # SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
17
+
18
+ require 'hoe'
19
+ require 'rake/extensiontask'
20
+
21
+ hoe = Hoe.spec 'opengl' do
22
+ developer 'Eric Hodel', 'drbrain@segment7.net'
23
+ developer 'Lars Kanis', 'lars@greiz-reinsdorf.de'
24
+ developer 'Blaž Hrastnik', 'speed.the.bboy@gmail.com'
25
+ developer 'Alain Hoang', ''
26
+ developer 'Jan Dvorak', ''
27
+ developer 'Minh Thu Vo', ''
28
+ developer 'James Adam', ''
29
+
30
+ self.readme_file = 'README.rdoc'
31
+ self.history_file = 'History.rdoc'
32
+ self.extra_rdoc_files = FileList['*.rdoc']
33
+
34
+ extra_dev_deps << ['rake-compiler', '~> 0.7', '>= 0.7.9']
35
+ extra_dev_deps << ['glu', '~> 8.1']
36
+ extra_dev_deps << ['glut', '~> 8.1']
37
+
38
+ self.spec_extras = {
39
+ :extensions => %w[ext/opengl/extconf.rb],
40
+ :required_ruby_version => '>= 1.9.2',
41
+ }
42
+ end
43
+
44
+ Rake::ExtensionTask.new 'opengl', hoe.spec do |ext|
45
+ ext.lib_dir = 'lib/opengl'
46
+
47
+ ext.cross_compile = true
48
+ ext.cross_platform = ['i386-mingw32', 'x64-mingw32']
49
+ end
50
+
51
+ task :test => :compile
52
+
53
+ # defines columns in the HTML extension list
54
+ GLEXT_VERSIONS = %w[svn 0.60 0.50]
55
+
56
+ desc 'Generate supported extension list.'
57
+ task :gen_glext_list do
58
+ sh "./utils/extlistgen.rb", "doc/extensions.txt.in", "doc/extensions.txt", *GLEXT_VERSIONS
59
+ end
60
+