Wednesday, June 14, 2006

Pygame moves to subversion, and more 1.8 updates.

Pygame has moved to subversion. Thanks to our wonderful hosting friends at seul.org for setting it up for us.

The sdl ctypes has been moving forward. This is a project sponsored by the google summer of code. A couple of SDL example programs are running, and the code is looking good. There is a manual, and a couple of tests. sdl ctypes is being developed in the pygame subversion. http://www.pygame.org/ctypes/

For pygame I have gone through most of the documentation comments on the website. Only 20 remain left to sort through. shreadwheat also added some more documentation enhancements.

A request for the scaling functions to be able to accept a destination surface has been made. I've mostly completed this change. It allows for faster scaling when you are repeating the scale operation multiple times onto the same surface. This is because you don't need to allocate memory so often. However the destination surface has to be the correct size, and format. If it isn't an exception is raised letting you know.

This brings up a point about a surface pool. That is rather than create new surfaces, ask to get one from the memory pool. If there are any left in the pool give one of those rather than creating another one. Once that surface is not referenced it will go back into the pool. This is a common pattern to increase speed where lots of allocations are made. For some programs using pygame that create lots of same format surfaces repeatedly this should be a good speedup. Especially for larger surfaces (50x50 or bigger).

I'm probably going to give pygame another month before feature freeze because of work commitments. So there should be plenty of time to add anything else to pygame if you want it in there.

No comments: