Why Python, PyGame, and Panda Rule

I’ve been picking up Python for the last year or so.  Coming from a world of C, C++, Java, and PHP, at first it was a really strange language.  Many of its concepts such as forced indentation threw me.  I thought it was too rigid and forced demands from a few programmers onto a whole slew of others.

But my opinion changed over time.  I discovered how absolutely easy it was to perform actions that would otherwise take piles of even PHP code to accomplish.  And the fact that it could be compiled to executable format (with py2exe) and also use multiplatform GUI toolkits such as wxPython sealed it for me.

But the ease of making complex games also made it quite attractive.  For 2D games (and with a little bit of work 3D) PyGame makes it extremely simple to access these things.  Built on SDL, which I had previously used with C, it abstracts even more away from the low-level work, leaving you to concentrate on making a game, not building a library.

Then I found Panda3D.  For pure 3D work, it’s absolutely amazing.  Optimized C++ code with Python wrappers around it, it has just about every feature for a 3D engine needed for a modern game.  The community there is small but dedicated.  I’ve even taken to making a few tools to make development of games with Panda even easier.  I recommend them heartily for multiplatform 3D games.

The fact that one could, with nothing but free/open source tools and programming languages, make a complete game is something that excites me.

I fully intend now to use Panda as my 3D engine of choice for Chromasphere when it comes time to make it.  For now, I must write the script for the game.  Everything in due time.

%d bloggers like this: