Rubygame 2.5.0 is now ready to go!
The main focus of this release is improving the Clock class. Clock now has a more responsive and accurate algorithm for measuring framerate, better support for multithreaded games (set
Clock#nice = true), a new ClockTicked event class (for use with EventHandler), and a way to calibrate the Clock to minimize wasted CPU power.
I've also written an in-depth tutorial about using Clock, entitled Managing Framerate. It covers several aspects of using Clock, including:
- framerate monitoring (finding out how fast your game is running)
- framerate limiting (setting the maximum framerate, to avoid wasting CPU power)
- calibrating Clock (to reduce CPU usage even more)
- framerate independence (so characters don't move slower if the framerate drops)
In addition to the Clock improvements, I've also added the Screen.get_resolution method to retrieve the user's desktop resolution (useful for automatically deciding how large to make the Screen). Thanks to Stephen Paul Weber (singpolyma) for the suggestion and for the initial patch!
There are also a few other smaller changes, so you may want to have a look at the NEWS for the full release notes.