Cool stuff for Python Coders
Today at Day 2 of LCA, I attened the Distro Summit for the first half of the day, and the Gaming Miniconf for the second part, this particular post is going to focus mostly upon the gaming talks, since it’s probably the stuff I was more technically interested in, and the parts that I can remember best.
LCA Observation of the day:
The current distros of choice to bag out are:
- Ubuntu
- Gentoo
Python!
The latter half of the gaming miniconf spent a lot of time dealing with Python, which is excellent, given that Python is one of the main reasons why I’m attending the conference.
The first talk given was for Pyglet by Alex Holkner (the lead/founder of the project) and Richard Jones, a game development/media processing library (which would therefore make it a suitable replacement for Pygame), is written entirely in Python, and allows for extremely rapid development of games in Python. It’s currently at version 1.0, but is soon to progress to version 1.1, which, amongst other things, introduces a proper event handling inner loop, which is something that is notoriously missing from libraries such as Pygame.
Pyglet is designed around the ctypes library that was introduced in Python 2.5: for those of you who aren’t familiar with it, allows developers to register shared C libraries within python, and call them as functions without needing to write full-blown Python extensions in C. Pygame uses ctypes to wrap basically every media-related libary imaginable (frequently multiple libraries for different operating systems) and presents them to coders as a unified interface, so developers don’t need to know whether or not their system is using Quicktime or OpenAL (for example).
Demos given included of an FPS and a full-screen Mandelbrot Set renderer, both of which were very fast (though the fractal did get a bit pixelated at high zoom, so there could have been a large amount of caching performed — I’m not sure as I haven’t really looked into it.
From a coding point of view, Pyglet looks like an excellent library, a worthy successor to Pygame, and could be extremely fun to code in. Which leads me to:
Richard Jones gave a talk about Pyweek, a twice-yearly Python Game Writing challenge; the aim is to write Python games, which must somehow link into a theme (for example “Energy” or “It Runs on Steam”), and the game must be written entirely within a week. You may code in teams or as ain individual. The next round will be in March, followed by September. I’m seriously considering taking part in the next one.
The final non-lightning talk I saw was on an interesting game system, whereby you draw a picture of the game you want to play, and it lets you play it. I can’t remember the name of it, and can’t find it on Planet LCA yet, so if anyone remembers the name of it, it would be great if you can let me know (such as via the comments on this post) — this looked incredibly cool, and I’ll definitely try it out at the open day.