Ruby-opengl is a library that offers Ruby bindings to OpenGL, GLU, and GLUT for code execution flexibility and development ease.
This latest release of ruby-opengl includes a number of exciting updates and changes. Automatic error checking for GL/GLU calls is now enabled by default, and there is support for many more OpenGL extensions. Plus, the project now supports Ruby 1.9.0+ (requires mkrf 0.2.3) and comes with a ton of bugfixes.
When it comes to API changes, there are a number of notable updates. Boolean functions/parameters have been changed to ruby true/false instead of GL_TRUE / GL_FALSE, which remains for compatibility. glGet* functions now return x instead of [x] when returning only one value, and functions operating on packed strings (glTexture, gl*Pointer etc.) now also accept ruby arrays directly. Matrix handling functions now also accept instances of Matrix class, or any class that can be converted to array. Additionally, glUniform*v and glUniformmatrix*v now do not require 'count' parameter, as they will calculate it from length of passed array. glCallLists needs a type specifier, which was previously forced to GL_BYTE. Finally, 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.
Overall, ruby-opengl is an excellent choice for anyone looking for robust, comprehensive Ruby bindings for OpenGL, GLU, and GLUT. With its latest updates and changes, it's clear that this project is continuing to improve and evolve with the times.
Version 0.60.0: N/A