Ruby-opengl 0.60.0 released

Hello,

we’ve just released version 0.60.0 of the OpenGL bindings for ruby.

Changes:

  • Automatic error checking for GL/GLU calls, enabled by default (see
    doc/tutorial)
  • Added support for many more OpenGL extensions
  • Support for Ruby 1.9.0+ (requires mkrf 0.2.3)
  • Ton of bugfixes.

API Changes:

  • Boolean functions/parameters was changed to ruby true/false instead of
    GL_TRUE / GL_FALSE, which remains for compatibility
  • glGet* functions now returns x instead of [x] when returning only one
    value
  • Functions operating on packed strings (glTexture, gl*Pointer etc.)
    accepts
    ruby arrays directly
  • Matrix handling functions also accepts instances of Matrix class, or
    any
    class that can be converted to array
  • glUniformv and glUniformmatrixv now does not require ‘count’
    parameter,
    they will calculate it from length of passed array
  • glCallLists needs type specifier (previously was forced to GL_BYTE)
  • 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

There has been lots of code changes since last release, so expect some
bugs.
This release marks pretty much completion of the low-level API (before
OpenGL
3.0 hits us), meaning there shouldn’t be much things you can do in C
OpenGL
that you couldn’t do in ruby. There is still no API documentation
(planned
for next release), although most of the functions follows their C
counterparts with the same patterns and changes outlined in tutorial
section
of our homepage. Also, performance freaks will be happy to hear that
with
ruby 1.9.0, the raw speed of OpenGL operations now matches the speed of
Perl’s POGL bindings (at least according to my tests), which is between
2x-5x
increase from ruby 1.8.

As always, any feedback is appreciated.

Homepage: http://ruby-opengl.rubyforge.org/
Bug tracker: http://rubyforge.org/tracker/?atid=8185&group_id=2103

Thanks,
Jan