Path: | doc/extended_readme.rdoc |
Last Update: | Mon Nov 19 19:57:04 -0500 2007 |
(Stuff that didn‘t make it into the main README file.)
Rubygame‘s core is a low-level extension written in C; it provides a basic interface to SDL and its companion libraries. Building upon that is a ruby library which implements high-level concepts like game objects, event management, etc.
Rubygame is modular, meaning you can pick and choose which parts to use. For example, if you don‘t need TrueType font support, SDL_ttf is not required to compile Rubygame. It is possible for a game to detect at run-time which features are present, and behave accordingly (for example, the game might disable certain optional features).
Rubygame is multi-tiered, meaning you can access Rubygame‘s functionality on a number of levels, each level being built on the level below it. Each higher level is closer to a complete game, but is also less flexible. The idea here is that developers will use the higher levels most of the time, but be free to hack lower levels when they need to do something special.
The version number of Rubygame has a strict meaning, to help you decide whether the new version might break your application. The version number has 3 parts: the major version number, the minor version number, and the patch number. For the example of Rubygame 2.0.0:
2 . 0 . 0 MAJOR . MINOR . PATCH
When a new release of Rubygame is made, one of the version numbers will go up, and the numbers that come after it will be reset to 0. Which number will go up depends on how much the Rubygame API changed: