Rubygame 2.6 test release

A test release is now available for Rubygame 2.6! I don't want to write a lot about it now; I'll save that for the final release. But, I'll give you a brief introduction.

I don't normally do test releases, but this is a special circumstance. Architecturally, Rubygame 2.6 is a radical departure from previous versions of Rubygame: there is now absolutely no C code in Rubygame. There is nothing to compile. This should make Rubygame a lot easier to install on all platforms, as well as easier to develop and improve.

This is possible thanks to the wonderful Ruby-FFI library, which allows Ruby code to directly interface with C libraries, without the need for a compiled wrapper. I'll have plenty more words to praise it later, but suffice it to say for now that it's really quite marvelous. JRuby and Rubinius also have (mostly-)compatible FFI libraries, which means that once a few wrinkles are ironed out, you will be able to run Rubygame with those implementations as well!

Along with the Rubygame 2.6 test release, I have prepared test releases of Ruby-SDL-FFI and Nice-FFI, two supporting libraries that I've been developing. The purpose of the releases is to make sure that all these libraries also work correctly for other people, on other platforms.

Downloadable gems are available. You must install them in this order (Update: Now that Rubygame 2.6 has been released, you don't need to install these manually anymore — just do gem install rubygame!):

If you are on MatzRuby (not JRuby or Rubinius), you will also need the "ffi" gem. It should be installed automatically as a dependency of Nice-FFI, but if not you can install it with gem install ffi.

You will still need to have SDL and related libraries installed on your system. Rubygame (actually, Nice-FFI, but Rubygame uses that) is programmed to look for SDL in the most common places on Linux, Mac, and Windows, so hopefully you won't have to do anything special.

Rubygame 2.6 is intended to be backwards compatible with previous versions of Rubygame. Please try it with as many games as you can. If something works in Rubygame 2.5 but not in 2.6, that indicates a bug in Rubygame 2.6 and you should tell me about it!

It should work on MatzRuby 1.8 and 1.9. It may not work on JRuby and/or Rubinius yet. I'll be trying to get those to work soon, but there are a few subtle differences in FFI implementation that I need to figure out first. Please let me know whether it works for you.

In general, please post feedback and bug reports in the forums.

Update: Mac users will still need to use rsdl. This is a limitation of SDL on Mac, sorry.


Have something interesting to say about this post? Email your thoughtful comments to