ruby-opengl 0.60.0-i386-mswin32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/MIT-LICENSE +18 -0
- data/README.txt +47 -0
- data/doc/build_install.txt +122 -0
- data/doc/history.txt +66 -0
- data/doc/requirements_and_design.txt +117 -0
- data/doc/roadmap.txt +28 -0
- data/doc/scientific_use.txt +35 -0
- data/doc/thanks.txt +29 -0
- data/doc/tutorial.txt +469 -0
- data/examples/NeHe/nehe_lesson02.rb +117 -0
- data/examples/NeHe/nehe_lesson03.rb +122 -0
- data/examples/NeHe/nehe_lesson04.rb +133 -0
- data/examples/NeHe/nehe_lesson05.rb +186 -0
- data/examples/NeHe/nehe_lesson36.rb +303 -0
- data/examples/OrangeBook/3Dlabs-License.txt +33 -0
- data/examples/OrangeBook/brick.frag +36 -0
- data/examples/OrangeBook/brick.rb +376 -0
- data/examples/OrangeBook/brick.vert +41 -0
- data/examples/OrangeBook/particle.frag +17 -0
- data/examples/OrangeBook/particle.rb +406 -0
- data/examples/OrangeBook/particle.vert +38 -0
- data/examples/README +16 -0
- data/examples/RedBook/aapoly.rb +142 -0
- data/examples/RedBook/aargb.rb +119 -0
- data/examples/RedBook/accanti.rb +162 -0
- data/examples/RedBook/accpersp.rb +215 -0
- data/examples/RedBook/alpha.rb +123 -0
- data/examples/RedBook/alpha3D.rb +158 -0
- data/examples/RedBook/bezcurve.rb +105 -0
- data/examples/RedBook/bezmesh.rb +137 -0
- data/examples/RedBook/checker.rb +124 -0
- data/examples/RedBook/clip.rb +95 -0
- data/examples/RedBook/colormat.rb +135 -0
- data/examples/RedBook/cube.rb +69 -0
- data/examples/RedBook/depthcue.rb +99 -0
- data/examples/RedBook/dof.rb +205 -0
- data/examples/RedBook/double.rb +105 -0
- data/examples/RedBook/drawf.rb +91 -0
- data/examples/RedBook/feedback.rb +145 -0
- data/examples/RedBook/fog.rb +167 -0
- data/examples/RedBook/font.rb +151 -0
- data/examples/RedBook/hello.rb +79 -0
- data/examples/RedBook/image.rb +137 -0
- data/examples/RedBook/jitter.rb +207 -0
- data/examples/RedBook/lines.rb +128 -0
- data/examples/RedBook/list.rb +111 -0
- data/examples/RedBook/material.rb +275 -0
- data/examples/RedBook/mipmap.rb +156 -0
- data/examples/RedBook/model.rb +113 -0
- data/examples/RedBook/movelight.rb +132 -0
- data/examples/RedBook/pickdepth.rb +179 -0
- data/examples/RedBook/planet.rb +108 -0
- data/examples/RedBook/quadric.rb +158 -0
- data/examples/RedBook/robot.rb +115 -0
- data/examples/RedBook/select.rb +196 -0
- data/examples/RedBook/smooth.rb +95 -0
- data/examples/RedBook/stencil.rb +163 -0
- data/examples/RedBook/stroke.rb +167 -0
- data/examples/RedBook/surface.rb +166 -0
- data/examples/RedBook/teaambient.rb +132 -0
- data/examples/RedBook/teapots.rb +182 -0
- data/examples/RedBook/tess.rb +183 -0
- data/examples/RedBook/texbind.rb +147 -0
- data/examples/RedBook/texgen.rb +169 -0
- data/examples/RedBook/texturesurf.rb +128 -0
- data/examples/RedBook/varray.rb +159 -0
- data/examples/RedBook/wrap.rb +148 -0
- data/examples/misc/OGLBench.rb +337 -0
- data/examples/misc/anisotropic.rb +194 -0
- data/examples/misc/fbo_test.rb +356 -0
- data/examples/misc/font-glut.rb +46 -0
- data/examples/misc/glfwtest.rb +30 -0
- data/examples/misc/plane.rb +161 -0
- data/examples/misc/readpixel.rb +65 -0
- data/examples/misc/sdltest.rb +34 -0
- data/examples/misc/trislam.rb +828 -0
- data/lib/gl.so +0 -0
- data/lib/glu.so +0 -0
- data/lib/glut.so +0 -0
- data/lib/opengl.rb +84 -0
- metadata +132 -0
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/README.txt
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
ruby-opengl
|
2
|
+
===========
|
3
|
+
|
4
|
+
[ruby-opengl][] consists of Ruby extension modules that are bindings for
|
5
|
+
the [OpenGL][], GLU, and [GLUT][] libraries. It is intended to be a
|
6
|
+
replacement for -- and uses the code from -- [Yoshi's ruby-opengl][].
|
7
|
+
|
8
|
+
It's licensed under the MIT license. Please see the included MIT-LICENSE
|
9
|
+
file for the terms of the license.
|
10
|
+
|
11
|
+
|
12
|
+
[ruby-opengl]: http://rubyforge.org/projects/ruby-opengl/
|
13
|
+
[OpenGL]: http://www.opengl.org/
|
14
|
+
[GLUT]: http://www.opengl.org/documentation/specs/glut/spec3/spec3.html
|
15
|
+
|
16
|
+
|
17
|
+
[Yoshi's ruby-opengl]: http://www2.giganet.net/~yoshi/
|
18
|
+
|
19
|
+
|
20
|
+
Current release: 0.60.0 (December 29, 2007)
|
21
|
+
-----------------
|
22
|
+
Changes in this release:
|
23
|
+
* Automatic error checking for GL/GLU calls, enabled by default (see doc/tutorial)
|
24
|
+
* Added support for many more OpenGL extensions
|
25
|
+
* Support for Ruby 1.9.0+ (requires mkrf 0.2.3)
|
26
|
+
* Ton of bugfixes.<br><br>
|
27
|
+
<b>API Changes:</b>
|
28
|
+
* Boolean functions/parameters was changed to ruby true/false instead of GL\_TRUE / GL\_FALSE, which remains for compatibility
|
29
|
+
* glGet\* functions now returns x instead of [x] when returning only one value
|
30
|
+
* Functions operating on packed strings (glTexture, gl\*Pointer etc.) now also accepts ruby arrays directly
|
31
|
+
* Matrix handling functions now also accepts instances of Matrix class, or any class that can be converted to array
|
32
|
+
* glUniform\*v and glUniformmatrix\*v now does not require 'count' parameter, they will calculate it from length of passed array
|
33
|
+
* glCallLists needs type specifier (previously was forced to GL_BYTE)
|
34
|
+
* On ruby 1.9, glut keyboard callback returns char ("x") instead of integer so using 'if key == ?x' works on both 1.8 and 1.9
|
35
|
+
|
36
|
+
Previous release: 0.50.0 (October 23, 2007)
|
37
|
+
-----------------
|
38
|
+
Changes in this release:
|
39
|
+
|
40
|
+
* GLU and GLUT cleanup, bugfixes, some missing functions added - version 3.7
|
41
|
+
of GLUT API is now requirement (previously 3.0)
|
42
|
+
* We added support for number of OpenGL extensions
|
43
|
+
* Some new examples and code cleanup
|
44
|
+
* Support for OpenGL 2.1 (that includes pixelpack/unpack buffer)
|
45
|
+
* Some code refactoring to remove duplicity
|
46
|
+
* Documentation update (still no API doc though)
|
47
|
+
* Lots of bugfixes.
|
@@ -0,0 +1,122 @@
|
|
1
|
+
Building ruby-opengl
|
2
|
+
====================
|
3
|
+
|
4
|
+
Pre-requisites
|
5
|
+
--------------
|
6
|
+
|
7
|
+
General
|
8
|
+
--------------
|
9
|
+
* C compiler (not needed for binary install on Windows)
|
10
|
+
* ruby 1.8.5+ or ruby 1.9.0+
|
11
|
+
* rake
|
12
|
+
* mkrf 0.2.0+ (0.2.3+ for ruby 1.9)
|
13
|
+
* rubygems 0.9.1+
|
14
|
+
* OpenGL headers for OpenGL version 1.1 or later (not needed for binary install on Windows)
|
15
|
+
* GLUT 3.7+ or API-compatible implementation (freeglut,OpenGLUT)
|
16
|
+
|
17
|
+
Linux
|
18
|
+
--------------
|
19
|
+
On Ubuntu or Debian systems, aside from Ruby you'll need ruby and
|
20
|
+
some extra ruby related packages:
|
21
|
+
|
22
|
+
* `ruby rdoc ri ruby1.8-dev`
|
23
|
+
|
24
|
+
For OpenGL related headers you'll need the following packages:
|
25
|
+
|
26
|
+
* `libgl1-mesa-dri libglu1-mesa freeglut3`
|
27
|
+
* `libgl1-mesa-dev libglu1-mesa-dev freeglut3-dev`
|
28
|
+
|
29
|
+
On older Gentoo, Debian and Ubuntu, rubygems 0.9.0 will be installed by default
|
30
|
+
in the packages. This version of rubygems is INCOMPATIBLE with ruby-opengl.
|
31
|
+
You'll need to install rubygems 0.9.1+ from source.
|
32
|
+
|
33
|
+
On some distributions you may need 'xorg-dev' developer package.
|
34
|
+
|
35
|
+
Mac OS X
|
36
|
+
--------------
|
37
|
+
On OS X, you will need to install your own version of Ruby as the
|
38
|
+
version that ships with OS X has known problems with properly building
|
39
|
+
ruby-opengl bindings. You'll also need XCode for gcc and tools. Macports
|
40
|
+
or fink should handle this cleanly.
|
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
|
+
|
51
|
+
Windows
|
52
|
+
--------------
|
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).
|
54
|
+
You may also need 'glut.h' in SDK include directory, as the One-click ruby
|
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
|
+
<b>Important note:</b> If you are using the One-click installer version 1.8.6-25 or earlier,
|
59
|
+
you must delete or rename files 'opengl.so' and 'glut.so' in
|
60
|
+
C:/ruby/lib/ruby/site_ruby/1.8/i386-msvcrt
|
61
|
+
|
62
|
+
[glut homepage]: http://www.xmission.com/~nate/glut.html
|
63
|
+
|
64
|
+
Build and installation
|
65
|
+
--------------
|
66
|
+
|
67
|
+
Installing from rubygems
|
68
|
+
-------------------
|
69
|
+
|
70
|
+
ruby-opengl should support being installed via gems now. Just
|
71
|
+
try 'gem install -y ruby-opengl' and it should pull down the gem
|
72
|
+
and try to build the bindings for you automatically.
|
73
|
+
|
74
|
+
For windows there is also pre-built binary windows gem available
|
75
|
+
(i386-mswin32) which is compatible with the ruby one-click installer and does not need
|
76
|
+
compiler or other mentioned tools installed.
|
77
|
+
|
78
|
+
Manual Build instructions for all platforms (see above for platform-specific notes)
|
79
|
+
------------------
|
80
|
+
1. Make sure you have working ruby with rubygems installed
|
81
|
+
and (if needed) appropriate developer packages (ruby-dev,ruby1.8-dev,...).
|
82
|
+
2. Make sure you have working C compiler
|
83
|
+
3. Install rake either from package or by running 'gem install rake'
|
84
|
+
4. Install mkrf (0.2.0+) either from package or by running 'gem install mkrf'
|
85
|
+
5. Make sure you have working OpenGL installation, this includes libGL,libGLU,
|
86
|
+
glut and (if needed) appropriate -dev or -devel packages.
|
87
|
+
6. Run 'rake' at the top level of the project
|
88
|
+
7. (OPTIONAL) Run 'rake test' to run unit tests to verify it works properly
|
89
|
+
|
90
|
+
Installing manually built extensions
|
91
|
+
------------------
|
92
|
+
1. Run 'rake clean' to clean out the project
|
93
|
+
2. Run 'rake gem' to create source gem from project
|
94
|
+
3. Run 'gem install pkg/ruby-opengl-(version).gem' to compile and install the gem
|
95
|
+
4. Done.
|
96
|
+
|
97
|
+
Building binary gem (useful only for binary distribution of the project)
|
98
|
+
------------------
|
99
|
+
1. Run 'gem install gembuilder' to install the gembuilder package
|
100
|
+
2. Run 'rake clean' to clean out the project
|
101
|
+
3. Run 'rake gem' to build source gem
|
102
|
+
4. Run 'gembuilder pkg/ruby-opengl-(version).gem' to compile the binary gem
|
103
|
+
|
104
|
+
|
105
|
+
Testing
|
106
|
+
-----------------
|
107
|
+
|
108
|
+
To run unit tests:
|
109
|
+
|
110
|
+
$ rake test
|
111
|
+
|
112
|
+
Note that the tests have the adverse effect of testing the underlying OpenGL
|
113
|
+
implementation, so depending on your GL provider,drivers or OS, the tests may
|
114
|
+
fail, crash, or not run at all, without affecting your ability to use the
|
115
|
+
bindings.
|
116
|
+
|
117
|
+
Running programs and examples
|
118
|
+
-----------------
|
119
|
+
To run a sample file, make sure the ruby-opengl gem is installed then:
|
120
|
+
|
121
|
+
$ cd examples
|
122
|
+
$ ruby -rubygems plane.rb
|
data/doc/history.txt
ADDED
@@ -0,0 +1,66 @@
|
|
1
|
+
Project history
|
2
|
+
===============
|
3
|
+
|
4
|
+
The [original ruby-opengl](http://www2.giganet.net/~yoshi/) was written
|
5
|
+
by Yoshi.
|
6
|
+
|
7
|
+
James A. desperately wanted to get the OpenGL Ruby bindings working on his Mac,
|
8
|
+
but they wouldn't even compile on OSX. After a little bit of tweaking, he made
|
9
|
+
his patched bindings available to the ruby community in a very informal manner.
|
10
|
+
|
11
|
+
John G. then wanted to clean it up and add some docs to it, and so started
|
12
|
+
tweaking and put up a new site and made his changes available.
|
13
|
+
|
14
|
+
Then Peter M. came along and decided to try updating ruby-opengl using SWIG,
|
15
|
+
as it seemed easier than doing everything by hand. Peter wrote the new code,
|
16
|
+
John started the actual RubyForge project, put up a new site, and Peter
|
17
|
+
committed the code.
|
18
|
+
|
19
|
+
Thu M. V. joined the project with a lot of energy, and the mailing list
|
20
|
+
was showing a good bit of activity.
|
21
|
+
|
22
|
+
After some experience, we began to question whether SWIG was necessary/helpful
|
23
|
+
for a project of this nature. The leaning was that people want to abandon
|
24
|
+
SWIG and go back to maintaining the binding files by hand. Thu even provided
|
25
|
+
a script to help with the manual coding that would be required without using
|
26
|
+
SWIG.
|
27
|
+
|
28
|
+
The reasoning at the time was:
|
29
|
+
|
30
|
+
Pro-SWIG:
|
31
|
+
|
32
|
+
* Could use the .i files for another project, perhaps (OTOH, we couldn't
|
33
|
+
use previous .i files on this project...)
|
34
|
+
|
35
|
+
* It's supposed to require less manual coding.
|
36
|
+
|
37
|
+
Con-SWIG:
|
38
|
+
|
39
|
+
* yet another tool to learn
|
40
|
+
|
41
|
+
* OpenGL isn't really all that big
|
42
|
+
|
43
|
+
* OpenGL doesn't change a lot
|
44
|
+
|
45
|
+
* A lot of boilerplate and overhead in the generated files because SWIG is
|
46
|
+
a general tool.
|
47
|
+
|
48
|
+
|
49
|
+
In September 2006, we stopped using SWIG. Thu and Peter began fine tuning
|
50
|
+
Thu's original `utils/mkwrap.rb` script.
|
51
|
+
|
52
|
+
Development stalled in October 2006.
|
53
|
+
|
54
|
+
Development picked up again towards the end of 2006. After a long hiatus
|
55
|
+
and getting a new release of mkrf out the door, version 0.33 (following the
|
56
|
+
numbering of original Yoshi's bindings which stalled at 0.32) was released.
|
57
|
+
|
58
|
+
During first half of 2007, we added large portion of code, as well as number
|
59
|
+
of unit tests, creating near-complete support for OpenGL 2.1.
|
60
|
+
Support for MS Windows was also added during this time.
|
61
|
+
|
62
|
+
Version 0.40 was released in July 2007.
|
63
|
+
|
64
|
+
Version 0.50 was released in October 2007.
|
65
|
+
|
66
|
+
Version 0.60 was released in December 2007.
|
@@ -0,0 +1,117 @@
|
|
1
|
+
Design
|
2
|
+
======
|
3
|
+
|
4
|
+
This document records the requirements, high-level design, and the
|
5
|
+
specifications for the ruby-opengl project.
|
6
|
+
|
7
|
+
The content of this document was gleaned from the postings on the
|
8
|
+
ruby-opengl-dev list and internal notes from John G., Peter M., Vo Minh Thu,
|
9
|
+
and Robert K.
|
10
|
+
|
11
|
+
|
12
|
+
Requirements
|
13
|
+
------------
|
14
|
+
|
15
|
+
* ruby-opengl is a Ruby extension library which wraps the OpenGL, GLU,
|
16
|
+
and GLUT libraries.
|
17
|
+
|
18
|
+
* ruby-opengl shall provide three base modules: *BaseGL*, *BaseGLU*, and
|
19
|
+
*BaseGLUT* (the "Base Modules").
|
20
|
+
|
21
|
+
Note: "BaseGL" etc. are not the names that appear in the code -- they are
|
22
|
+
just handles so we can write about them in documents like this one.
|
23
|
+
|
24
|
+
* The Base Modules shall be separately loadable.
|
25
|
+
|
26
|
+
* BaseGL shall not depend on any of the other Ruby modules.
|
27
|
+
|
28
|
+
* BaseGLU shall depend on, at most, BaseGL.
|
29
|
+
|
30
|
+
* BaseGLUT shall depend on, at most, BaseGLU and BaseGL.
|
31
|
+
|
32
|
+
* Base Module syntax shall closely follow the standard C-syntax.
|
33
|
+
|
34
|
+
The syntax for a Ruby program that uses the base modules, shall closely
|
35
|
+
follow the standard C-like syntax that OpenGL programmers are used to,
|
36
|
+
and that most OpenGL examples are published in:
|
37
|
+
|
38
|
+
{{ruby}}
|
39
|
+
require 'gl'
|
40
|
+
Gl.glBegin( Gl::GL_POLYGON )
|
41
|
+
Gl.glVertex2d( 0, 0 )
|
42
|
+
Gl.glVertex2d( 0, 1 )
|
43
|
+
Gl.glVertex2d( 1, 1 )
|
44
|
+
Gl.glVertex2d( 1, 0 )
|
45
|
+
Gl.glEnd
|
46
|
+
|
47
|
+
Or:
|
48
|
+
|
49
|
+
{{ruby}}
|
50
|
+
require 'gl'
|
51
|
+
include Gl
|
52
|
+
glBegin( GL_POLYGON )
|
53
|
+
glVertex2d( 0, 0 )
|
54
|
+
glVertex2d( 0, 1 )
|
55
|
+
glVertex2d( 1, 1 )
|
56
|
+
glVertex2d( 1, 0 )
|
57
|
+
glEnd
|
58
|
+
|
59
|
+
The rationale for adopting the C-like syntax is:
|
60
|
+
* Makes it familiar to OpenGL programmers.
|
61
|
+
* Removes the burden of learning OpenGL plus some Ruby-isms, just to
|
62
|
+
get started.
|
63
|
+
* Makes it easier to port OpenGL programs to/from ruby-opengl.
|
64
|
+
* The current OpenGL documentation more naturally fits ruby-opengl.
|
65
|
+
* Putting "gl", "glu" and "glut" in front of all the names (i.e.,
|
66
|
+
following the C-like syntax) leaves common variable names open for
|
67
|
+
the programmers (e.g., "vertex", "color" etc. are popular topics in
|
68
|
+
3D programming, so not robbing the ruby namespace of such valuable
|
69
|
+
real-estate seems nice).
|
70
|
+
|
71
|
+
|
72
|
+
* It shall be possible to check out the project from svn, compile and test
|
73
|
+
on the following platforms: Mac OS X, GNU/Linux. MS Windows operating
|
74
|
+
systems may also be supported in the future.
|
75
|
+
|
76
|
+
* The project will make a number of pre-compiled extensions available as gems.
|
77
|
+
|
78
|
+
* The project will supply source code and build scripts (via svn checkout)
|
79
|
+
conducive to straightforward porting to other platforms.
|
80
|
+
|
81
|
+
* There shall be a test suite that exercises each call in each of the Base
|
82
|
+
modules.
|
83
|
+
|
84
|
+
* All project documentation will be in Markdown format in files that end in
|
85
|
+
`.txt`.
|
86
|
+
|
87
|
+
* The project will make some efforts to track versions of OpenGL.
|
88
|
+
|
89
|
+
|
90
|
+
### Things in the future
|
91
|
+
|
92
|
+
Once the base modules are implemented, there are several ideas on things to
|
93
|
+
do next. This list is not really requirements, but a list of nice ideas to
|
94
|
+
try:
|
95
|
+
|
96
|
+
* Provide wrappers for glBegin/glEnd, eg: polygon()...translates to
|
97
|
+
glBegin(GL_POLYGON)....glEnd
|
98
|
+
|
99
|
+
* Untyped versions of the multi-typed gl functions: e.g., a single
|
100
|
+
glVertex that examines its arguments and calls the appropriate
|
101
|
+
glVertex{234}{fisdv} call in BaseGL.
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
Implementation
|
106
|
+
--------------
|
107
|
+
|
108
|
+
Our plan is to continue on with Yoshi's original code, modified
|
109
|
+
to use standard OpenGL-style constant and function names.
|
110
|
+
|
111
|
+
|
112
|
+
### Build environment ###
|
113
|
+
|
114
|
+
The build environment will use:
|
115
|
+
|
116
|
+
* use rake and mkrf.
|
117
|
+
* minimize the number of additional tools required
|
data/doc/roadmap.txt
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
Roadmap
|
2
|
+
=======
|
3
|
+
|
4
|
+
* Write comprehensive API documentation
|
5
|
+
* Create more example code
|
6
|
+
* Add RMagick(ImageMagick) integration for easy image handling (textures,screenshots)
|
7
|
+
* Support all pixelstore modes (currently forced to default values by
|
8
|
+
any function getting/setting data affected by it)
|
9
|
+
|
10
|
+
Possible Features
|
11
|
+
========
|
12
|
+
* Add **all** OpenGL extensions (some are obsolete or not really used or useful at all)
|
13
|
+
* Add direct mapping on ruby types for vertex arrays, buffers and image data to allow high performance data operations from within ruby
|
14
|
+
- this should be modeled after Perl's OpenGL::Array
|
15
|
+
- Update: preliminary tests shows that performance-wise there is no need for it, as the Ruby interpreter overhead is currently larger than immediate-mode calls overhead, so any potential speed gains are in domain of 1-5%. It still may be good idea from usability perspective, although that would require more comprehensive design, not just simple wrapper.
|
16
|
+
* Support for r/w VBO buffer mapping - gl(Un)MapBuffer (is it needed?)
|
17
|
+
|
18
|
+
<br/>
|
19
|
+
<br/>
|
20
|
+
<br/>
|
21
|
+
<br/>
|
22
|
+
<br/>
|
23
|
+
<br/>
|
24
|
+
<br/>
|
25
|
+
<br/>
|
26
|
+
<br/>
|
27
|
+
<br/>
|
28
|
+
<br/>
|
@@ -0,0 +1,35 @@
|
|
1
|
+
Scientific Use
|
2
|
+
--------------
|
3
|
+
|
4
|
+
Though not directly related to ruby-opengl, this page contains a
|
5
|
+
few tidbits of general info that might possibly be of interest to
|
6
|
+
a number of users.
|
7
|
+
|
8
|
+
There are currently two bindings to the [GNU Scientific Library][1] (GSL):
|
9
|
+
|
10
|
+
* Yoshiki's Ruby/GSL (<http://rb-gsl.rubyforge.org/>) --
|
11
|
+
Comes with an API reference. Also, I've been told that the API has been
|
12
|
+
worked a bit to be more comfortable for Ruby programmers.
|
13
|
+
* Arno's ruby-gsl (<http://ruby-gsl.sourceforge.net/>) --
|
14
|
+
more of a straight wrapper around the C API.
|
15
|
+
|
16
|
+
[1]: http://www.gnu.org/software/gsl/
|
17
|
+
|
18
|
+
<a href="http://rubyforge.org/softwaremap/trove_list.php?form_cat=97">Browse Rubyforge</a>
|
19
|
+
for more.
|
20
|
+
|
21
|
+
|
22
|
+
Links
|
23
|
+
-----
|
24
|
+
|
25
|
+
* <http://sciruby.codeforpeople.com/sr.cgi/FrontPage> -- SciRuby wiki.
|
26
|
+
* <http://narray.rubyforge.org/> -- Numerical n-dimensional Array class.
|
27
|
+
* <http://www.kitp.ucsb.edu/~paxton/tioga.html> -- Tioga. Create plots using
|
28
|
+
Ruby and TeX.
|
29
|
+
|
30
|
+
<br/>
|
31
|
+
<br/>
|
32
|
+
<br/>
|
33
|
+
<br/>
|
34
|
+
<br/>
|
35
|
+
<br/>
|
data/doc/thanks.txt
ADDED
@@ -0,0 +1,29 @@
|
|
1
|
+
Thank you
|
2
|
+
---------
|
3
|
+
|
4
|
+
Aside from big thank-you's to the core devs, special thanks also goes to:
|
5
|
+
|
6
|
+
* Bill Kelly -- provided some pilot code changing how users can call method and constant names.
|
7
|
+
* Ilmari Heikkinen -- provided code for changing how users can call method and constant names.
|
8
|
+
* James Adam -- Mac OS X fixes
|
9
|
+
* Tony Hursh -- Mac OS X glut build tweak
|
10
|
+
* Sean Long -- More Mac OS X fixes
|
11
|
+
* John Gabriele -- Numerous fixes, documentation, and project support
|
12
|
+
* Ronald Pijnacker -- Windows support and bugfixes
|
13
|
+
* **Yoshi** -- providing ruby-opengl-0.32g from which to work off of.
|
14
|
+
|
15
|
+
<br/>
|
16
|
+
<br/>
|
17
|
+
<br/>
|
18
|
+
<br/>
|
19
|
+
<br/>
|
20
|
+
<br/>
|
21
|
+
<br/>
|
22
|
+
<br/>
|
23
|
+
<br/>
|
24
|
+
<br/>
|
25
|
+
<br/>
|
26
|
+
<br/>
|
27
|
+
<br/>
|
28
|
+
<br/>
|
29
|
+
<br/>
|