Python 3D Software Collection



Retained-mode or "scenegraph" engines are generally the most appropriate choice for novice programmers, or those who simply want to accomplish some domain-specific task (such as "display these six widgets and let user examine them" or "let the user wander around this world") rather than spending time worrying about the actual process of rendering.
C++ Library for Visual FX with Python binding
Focussed on the needs of those creating Visual effects tools/toolchains. RIB (renderman) format support, Maya importers, image handling, UI controls.
Large C++ 3D Game engine with (second-class) Python bindings
Large, popular 3D engine which apparently provides Python bindings of some sort. Lots of nice features in the core engine.
PSF Python
C++ Python extension providing DirectX 9.0 access
Interface to the 2D, 3D, and audio features of the Direct-X library from Microsoft. Includes support for loading .x meshes. Provides access to HLSL shaders and the like.
Recent C++ engine with mechanical engineering feel comes with an IDE for creating the 3D and programmatic features. Lots of physics simulation support as well. Built on OpenGL 2.0.
zlib/libpng License
Game-style? C++ engine with Python binding
C++ engine with fairly extensive list of features and fairly high-quality screenshots. Python binding apparently "somewhere around the net", though other sources suggest that it's a built-in scripting API. Uses OpenGL or Direct3D for its rendering back-end. Has content loaders for e.g. Quake BSPs.
Wrapper around Coin for Qt-based visualization tasks Intends to provide reasonable platform for doing 3D work under Qt with large data-sets. Uses Coin as the rendering engine, not based on Pivy.
New 2D sprite engine for PyGame written using OpenGL
Game-focused 2D graphics engine providing accelerated operations for PyGame sprite-based games. Sprites are to 2D graphics engines as scenegraphs are to 3D graphics engine, (retained-mode method of drawing figures).
Scientific data visualizer written on top of VTK
MayaVi is a free, easy to use scientific data visualizer. It provides a Tkinter GUI
2D Graphics package trying to create Director-like API
New project originally based on wxPython, now trying to generalise their API for use with other PyOpenGL-hosting GUI libraries.
Virtual world engine with networking and 3D graphics
Uses Panda or Ogre for rendering, Twisted for networking, ODE for physics. Server infrastructure with "portal" modelling to limit area-of-interest.
3D Game/VR engine with "pending" support for Python
Currently Windows only, with support for other platforms planned. C++ engine with bindings to TCL/Tk and Lua currently.
Fairly advanced C++ rendering engine with Python binding
OGRE is a fairly advanced Game-style engine. The Python binding has been resurrected and is now under active development and has apparently covered the bulk of the OGRE API.
VRML97-compatible scenegraph engine written in Python
Built directly on top of PyOpenGL, OpenGLContext is a retained-mode rendering engine which demonstrates many of the most basic features desired by those building scenegraph engines. It is written primarily to provide a source of sample and testing code for the PyOpenGL library, but represents a fairly complete rendering engine.
OSGPL ("Relaxed LGPL")
General-purpose C++ engine with Python binding
Large C++ rendering engine with what looks to be a fairly large user base. Rendering quality is rather good judging from the screenshots. Uses OpenGL for it's rendering back-end. Rather minimal homepage for the Python wrapper.
Custom (GPL-like?)
CMU/Disney collaboration on 3D game/simulation engine
C++ engine with Python bindings. Goals are to be: fast, powerful, easy to program, flexible, modifiable, long-lived, platform agnostic, and reprogrammable on the fly. Focus of the project is on the Python interface.
BSD (but requires commercial or GPL Coin)
Wrapper for the Coin/Inventor Scenegraph Library
Pivy is a Coin binding for Python. Coin is a high-level 3D graphics library with a C++ Application Programming Interface. Coin uses scene-graph data structures to render real-time graphics suitable for all kinds of scientific and engineering visualization applications. Can be extended with PyOpenGL. Includes loaders for a number of common formats, including VRML97.
2D PyGame library
Collection of modules for use in writing games with PyGame, includes an OpenGL accelerated 2D drawing library, a scenegraph-based sprite engine, and some extensions to PyGame's drawing commands.
Virtual Reality engine with Python extension API
Large research project written in C++ with Python either embedded in or embedding the engine. Focus appears to be on the creation of a single API usable across all platforms (at the C++ level).
Rewrite of Soya3D game engine
Cloud-based game engine under active development, targeting deployment in the near-term future.
Very early-stage engine for 3D role playing games
"Open Source" (unspecified)
C++ raytracer with Python binding
Raytracer with what looks like a fairly extensive Python binding (with some limitations on the type of extending you can do with Python). Focus appears to be on "script" writing (similar to VPython) with nodes similar to those seen in any of the scenegraph engines.
Large 3D and 2D rendering project using PyOpenGL
Currently unmaintained, but has Python code for a lot of interesting tasks, such as rendering a subset of SVG in OpenGL and loading various 3D file formats. Appears to use wxPython as its GUI-hosting environment.
ZOE Derivative with 'extensions including perspective and lighting'
In summary, a conversion of ZOE to use PyGame for GUI operations instead of GLUT. PyOpenGL-based. Focus on wireframes and particle systems inherited from ZOE.
A "sketchbook" for (networked) OpenGL graphics
Built on top of PyOpenGL, Twisted and PyGame; a rather extensive-seeming engine for experimenting with OpenGL rendering.
Very high level 3D engine for Python games
Aims at providing a professional-level development platform for (GPL) 3D games. Impressive screenshots. Written in PyRex, uses Cal3D for character animation, ODE for physical simulation.
3D Game engine in Python w/ Pyrex
Focus on flexibility, clean design and ease of use (for coders). This is more properly a game engine, with a set of features apparently including, for instance, collision detection, physics simulation (using ODE), and a 3DSMax exporter. Rendering pipeline is GLSL-based with no legacy (fixed) pipeline.
LGPL (GPL Demos)
Portable library for creating 3D games
At some point, had a Python binding, don't currently see any mention of it. This is a fairly large engine for creating games or game-like programs, includes a scenegraph engine, support for audio, UI, joysticks, that kind of thing.
High level scripting of custom C 3D engine in Python
Fairly early project that seems to be focussing on ease-of-use for writing quick scripts to explore an idea. Integration with gstreamer and PyODE.
CNRI Python
3D Programming for Ordinary Mortals
Simple 3D scenegraph engine with focus on educational rendering. Large user community, novice friendly. Not really focused on cutting-edge rendering features or the like. Uses a simple C/C++ engine wrapped for use by Python.
BSD-like (+ notification-of-changes)
Research/visualisation focused toolkit with strong Python bindings
VTK is a C++ retained-mode rendering engine with fairly complete Python bindings. It has quite a few mechanisms which attempt to make the process of visualising phenomena easier. Embeddable in wxPython.
Data-visualation of 1D to 4D array data
PyOpenGL-based renderer for scientific data using scripting-friendly APIs.
Scenegraph with focus on wireframes and particle systems
ZOE (formerly OGLE) is a very trivial OpenGL graphics engine, written entirely in Python. It's primary focus is rapid prototyping and experimentation, so it only supports the barest essentials, with focus on wire frames. Special emphasis is placed on particle systems (where non-interacting particles follow simple rules).