[OLPC-Games] PyGame is go!

Andrew Clunis orospakr at linux.ca
Thu Apr 5 17:45:33 EDT 2007

Hash: SHA1

Kent Quirk wrote:
> Hello, everyone.
> Thanks to some work by John Palmieri, SDL and PyGame work on the XO, and 
> today we demonstrated several existing PyGame games running without 
> changes, including sound, graphics, keyboard, and mouse input. 
> Furthermore, he's working on integrating it all into the build, which 
> includes removing several extraneous dependencies. It's only a short 
> time until we have at least a base version available for others to 
> experiment with. There will be some ongoing work to remove excess 
> libraries and to integrate it properly with GTK and with Sugar. But 
> we're now comfortable that it's going to be reasonable to develop games 
> using the PyGame toolkit.
> So please, feel free to start creating! This will definitely be the 
> "preferred" game development platform for the OLPC laptops.
> We're attempting to define an entire game creation "stack" of capabilities.
> At the bottom is SDL, which is accessible as libsdl in the usual ways 
> from C/C++. It's useful for porting existing applications.
> On top of SDL lies PyGame, which exposes most of SDL to Python programmers.
> Both PyGame and SDL will be trimmed down to remove support that isn't 
> applicable, while attempting to avoid breaking the existing APIs. 
> (Example: asking for a list of possible video modes might only return a 
> single mode -- but we won't remove the mode selection API because to do 
> so would break some existing SDL games).
> Parallel to SDL will be additional game-oriented support libraries for 
> using the hardware specific to the OLPC laptops, such as the camera, the 
> microphone, the mesh network, and so forth.
> And on top of all of that we hope to create several general-purpose game 
> engines and python libraries for making it easy to build simple games in 
> various categories. Under consideration are things like:
> * An adventure game engine
> * A basic arcade game engine
> * A basic board game engine
> * A few widgets for the creation of straightforward UIs
> * Libraries for doing things like player matching for two-player and 
> multiplayer games on the mesh, support for the camera as an input 
> device, and so forth.
> So...if you have ambitions to make games for OLPC, please start thinking 
> about PyGame. You can easily get PyGame running on every major desktop 
> platform.
> When you think about it, please keep in mind some of the limitations of 
> the platform:
> * Processor speed is low compared to modern desktop PCs. Don't make 
> games that depend on a known processor speed for performance. In fact, 
> consider inserting a call something like pygame.time.delay(100) into the 
> main loop; if the game still plays well like that you've done it right. 
> Yes, we realize this limits things like high-frame-rate arcade games. 
> But high-frame-rate arcade games that hog the CPU also chew through 
> battery life. Some of those might be fun...but we also need games that 
> run at a more sedate pace.
> * There are going to be interesting performance issues with the screen; 
> we'll likely be doing work to make it easier / faster, but if you're 
> manipulating colors of objects it might be slow or it might give you 
> strange results. Stay flexible if you can on screen size.
> * Keep 'em small and light in terms of assets (sound, art). Disk space 
> is at a premium.
> Please keep an eye on the Game development page on the wiki, along with 
> the pages for SDL Implementation and PyGame Implementation. We'll be 
> building those out over the next couple of weeks.
> All the best,
>     Kent

Nicely done!

Now the fun part; allowing PyGame embedding within a Sugar activity so
actual Sugar games can be created. :)

btw, how did you solve the interaction issues with matchbox and regular
pygame windows?

- --
Andrew Clunis

Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org


More information about the Games mailing list