3d graphics

Mike C. Fletcher mcfletch at rogers.com
Fri Feb 18 11:55:27 EST 2005


Eric Hanson wrote:

>Hi,
>
>I'm interested in doing some work with 3d graphics
>visualizations of XML/RDF data in Python.  I know Python is
>strong on the XML front but what about 3d graphics?  Is there a
>graphics library out there with graphics library with a fairly
>gradual learning curve?  Do people actually use Python for games
>programming and the likes?
>  
>
Python's got a few 3D libraries:

    http://www.vrplumber.com/py3d.py

You'll probably be most interested in a scenegraph/retained-mode 
renderer, listed here:

    http://www.vrplumber.com/py3d.py?category=retained

depending on your background, VPython (or VTK/MayaVi if you're more from 
a science background) might be a good starting point.  Soya or Panda 
seem more involved, but probably take you a little further toward 
game-like engines.  Pivy or OpenGLContext (both being Inventor-style 
scenegraphs) are more toolkits for developers to build applications, 
they generally let you load and work with objects readily, but they 
aren't trying to provide "jumping, shooting and exploding" features 
out-of-the-box.  Then there are the full (normally C++) game engines 
with Python wrappers, likely a steeper learning curve, but once you get 
up and running they should give you fairly easy going for writing a game.

Most (commercial) games that use Python follow that last model, a C++ 
engine that uses Python for scripting and extensions.  AFAIK there 
hasn't been a (commercial) 3D game (graphics engine) written with Python 
as the primary implementation language (for the graphics engine).  Of 
the retained-mode renderers on that page, only a handful are primarily 
Python code; it takes a lot of work to get a decently performing 
scenegraph engine written in Python.

HTH,
Mike

 
________________________________________________
  Mike C. Fletcher
  Designer, VR Plumber, Coder
  http://www.vrplumber.com
  http://blog.vrplumber.com
                              PyCon is coming...




More information about the Python-list mailing list