Python 3D Software Collection



Gaming/VR tends to focus on rendering immersive 3d environments in perspective mode. The environments tend to be complex, and composed of heterogeneous elements (as opposed to scientific rendering's homogeneous elements).
BattleTech (game) implementation using PyOpenGL
Custom (BSD-like terms)
Client-server chess game with 3D interface
Uses Twisted for networking and PyOpenGL for graphics
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.
Small GLUT + OpenGL C-python library
A simplified interface to OpenGL and GLUT, but still very low-level, you're basically working with minimal wrappers around the OpenGL calls.
3DStudio (classic) format loader (and renderer)
Utility library for loading .3ds files generated by the original 3DStudio and lots of other programs. Includes code for rendering the loaded models using PyOpenGL.
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.
Tile-based real-time strategy game using OpenGL for graphics
The project has been "frozen" for a very long time.
Advanced 3D Interface for Pyglet
Extends Pyglet with convenient abstractions for commonly used advanced OpenGL features (GLSL, FBOs, etc.)
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.
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).
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.
Engine for running physical simulations (non-graphical)
ODE is an open source, high performance library for simulating rigid body dynamics. Has advanced joint types and integrated collision detection with friction. ODE is useful for simulating vehicles, objects in virtual reality environments and virtual creatures. Used in games, tools and simulations. Python binding is apparently quite usable.
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.
Clone of MineSweeper with a "3D" view of the 2D board
Written with PyGame and PyOpenGL, doesn't seem to use the 3D effect for anything other than warping the 2D board. Seems to use textures for the individual tiles.
Simple Directmedia Library (SDL) wrapper for Python
Commonly used library for providing a PyOpenGL rendering context. Includes sprite-based animations, media playback, image loading, text-rendering, rich "surface" mechanism for compositing (non-hardware-accellerated, however), text rendering and the like. OpenGLContext provides a full PyGame context.
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.
Cross platform windowing and multimedia (game) framework in Python
Pyglet is a Python-coded library which uses ctypes to produce a portable GUI/multimedia layer that lets you write games in an OpenGL-implemented engine. It includes full bindings for a C-style OpenGL library with most extensions. Pyglet is under active development, with new frequent new features and releases.
BSD (+ zlib/libpng)
Python binding to the GLFW library
GLFW is a (C?) library which provides a cross-platform abstraction for system-level events such as window creation, mouse and keyboard interaction. PyGLFW is a binding for GLFW for Python.
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).
C++ Game development platform with Python binding
2D Game development platform based on a C++ SDL sprite platform (not Pygame). Kyra includes toolchains for isometric art and the like.
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
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.
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.
3DStudio (classic) format loader (and renderer)
Utility library for loading .3ds files generated by the original 3DStudio and lots of other programs. Includes code for rendering the loaded models using PyOpenGL.