Gosu is a free 2D game development library for Ruby and C++, available
gem install gosu on Windows and Mac OS X, now available in
version 0.7.9. (The gem is tagged as 0.7.9.1 because of ongoing
trouble with the gem release process.)
After exactly five long months, a new version of Gosu has been made
available for Windows and Mac OS X again. The Linux, and now also
FreeBSD port will follow shortly when I find a free day to rewrite the
whole X11 code. As written on Gosu’s home page, I am not working on a
lot of new features, but rather trying to get everything into a stable
state before starting work on the 0.8.x series of Gosu. There has been
a lot of change during the 0.7.x series and it shows in the source
code and release tools.
The only major addition is a way to capture keyboard input into text,
in a higher-level way than typical event based libraries do it. It
already allows for very natural text editing, something that’s usually
very limited in games, and more work will go into it to allow for dead
keys and proper Japanese text input on OS X. An example that shows how
this can be used is included.
This time’s fixes:
- All: OpenGL allocates depth buffer, allows for real embedded 3D
- All: Gosu::Font looks a lot smoother
- Mac: Fixed a bug where fullscreen mode could rearrange desktop icons
(and otherwise confuse OS X).
- Mac: Added mouse wheel support.
- Mac: char_to_id bugfix (thanks 0x17!)
- Mac: Mouse will not be hidden as aggressively
- Mac: Don’t keep firing buttonDown events when holding keys down
- Windows: Fullscreen mode allows alt+tab switching.
- Windows: Fixed mouse wheel support.
Documentation, an issue tracker and a Wiki are available at:
Feel invited to report every bug and glitch you find, or request new
If you want to get into gamedev but need some motivation, or if you
want to show the world how beautiful games in Ruby can be, please
consider participating in the upcoming Ludum Dare 48h gamedev compo:
These compos are great to have fun on IRC, test new styles of coding
or new libraries, or just to enjoy some crunchtime zen without
anything happening if your project really doesn’t work out all too