Differences between revisions 5 and 6
Revision 5 as of 2002-07-19 08:45:57
Size: 1713
Editor: taoriver
Comment: Added my experience working games with Python.
Revision 6 as of 2002-09-03 11:45:38
Size: 2073
Editor: proxy10
Comment:
Deletions are marked like this. Additions are marked like this.
Line 8: Line 8:

Another library is [http://www.alobbs.com/pykyra PyKyra]:
  PyKyra is a fast game development framework for Python. It is based in SDL and the Kyra engine. In addition to the standard features of Kyra, PyKyra also supports
MPEG video, sound (MP3, Ogg Vorbis, Wav and Multichannel module files),
direct images reading and much more. -- InTheirOwnWords

Game Programming With Python

You can write whole games in Python using [http://www.pygame.org/ PyGame].

If you have an existing game and want to add a scripting engine to make it more flexible, Python is also a very good choice. But you'll have to learn about IntegratingPythonWithOtherLanguages.

Read [http://www.onlamp.com/pub/a/python/2002/07/11/pythonnews.html Humongous Python] for a case study.

Another library is [http://www.alobbs.com/pykyra PyKyra]:

  • PyKyra is a fast game development framework for Python. It is based in SDL and the Kyra engine. In addition to the standard features of Kyra, PyKyra also supports

MPEG video, sound (MP3, Ogg Vorbis, Wav and Multichannel module files), direct images reading and much more. -- InTheirOwnWords

Testimony

I tried porting [http://taoriver.net/eouwiki/ Escape of the Unicorn] to Python/PySDL, but the game dropped from 30 fps to 6 fps.

After a lot of profiling and unrolling screen draw code, I was able to reach 8 frames a second.

If you look at PyGame and PySDL games, you'll notice that they aren't action or arcade games.

I have only heard of few efforts that succeeded in embedding Python in C++, and I have forgotten them. For the most part, people (including Humongous, as described in [http://www.onlamp.com/pub/a/python/2002/07/11/pythonnews.html the case study described]) extend Python with C++. If you are going to mix Python and C++, I think it is best to extend Python- that is the intended direction. I consider this a failing of Python.

If you want to embed a scripting system because you already have a huge system, embed something like Guile. I think it is an inferior solution, but that it will result in a lot less heartbreak.

I suspect I'll try to rewrite Escape of the Unicorn as a C++/Python mixture some day, and pay careful attention to how I cut the C++/Python lines. I think only a few things need to be given to C++, such as display loops, animation management, and collision detection.

-- LionKimbro DateTime(2002-07-19T10:45:57)

GameProgramming (last edited 2020-06-12 09:29:10 by DavidBoddie)

Unable to edit the page? See the FrontPage for instructions.