jacius / rebirth

High-level game framework, built on Rubygame & OpenGL. (On hold)

This URL has Read+Write access

jacius (author)
Wed Feb 25 22:56:58 -0800 2009
commit  5aaeedc86182aecbff26ed71178805826127bd08
tree    8c79ccecc4ecf93d65e5af486064880b084de9a8
parent  ef6da6925979b82eaf4cd3f7095ec16f5ec7b20a
rebirth / GOALS
eae52a1c » jacius 2008-06-03 Added GOALS. It's always ni... 1
2 I'm trying to codify the goals that I want to accomplish with
3 Rebirth. This mostly encompasses guiding design principles,
4 priorities, etc.
5
6 In rough order by priority, descending:
7
8 1. Ease of use. It should be natural to express game behavior,
9 without needing to jump through hoops. Use of defaults and
10 constraints to suggest a course of action and reduce the
11 "burden of choice" on developers.
12
13 2. Flexibility. Rebirth should be able to handle games of many
14 types and genres; physics or non-physics, action or slow-paced.
15
16 3. Object-oriented. It should focus on game objects and how they
17 behave and interact, not on the mechanics of image blitting
18 and event management.
19
20 4. Examples. Plenty of running example games to help users get
21 started and see how the library can / should be used.
22
23 5. Documentation. Every module, every class, every method
24 documented, plus tutorials with examples about various important
25 concepts and features.
26
27 6. Behavior-driven development. Spec first, then implement.
28 Full spec coverage, master branch is always green.
29
30 7. Small, incremental releases. Every feature should be a release,
31 every release should add or refine a feature. Avoid build-ups.