PyOpenGL Logo

PyOpenGL 3.x

The Python OpenGLŪ Binding

About PyOpenGL

PyOpenGL is the cross platform Python binding to OpenGL and related APIs.  The binding is created using the standard (in Python 2.5 and above) ctypes library, and is provided under an extremely liberal BSD-style Open-Source license.

PyOpenGL includes support for OpenGL v1.1 through 3.0, GLU, GLUT v3.7 (and FreeGLUT), and GLE 3.  It also includes support for hundreds of OpenGL extensions.

PyOpenGL is interoperable with a large number of external GUI libraries for Python including (wxPython, FxPy, PyGame, and Qt).  It can be used with the Tkinter GUI library if you have installed the Togl widget for Tk.

Sub-Packages

The SourceForge PyOpenGL project has two sub-projects, the core library, PyOpenGL (known as the OpenGL-ctypes module in bzr, and the OpenGL package when installed in Python), and a teaching and testing library, OpenGLContext built on top of the core.

Documentation

The documentation collection provides reference documentation, support and feedback information and pointers to more in-depth documentation.

Downloading and Installation

The project download page provides links to the distributions.  The installation page provides step-by-step instructions and dependency lists.

Source Code

You can work with latest version of PyOpenGL using the bzr distributed source code control tool on the LaunchPad code-hosting platform:

bzr branch lp:pyopengl
bzr branch lp:pyopengl-demo

Contributions and patches are very welcome.  You can either request a merge via LaunchPad or send a patch-set via email using "bzr send" to mcfletch@vrplumber.com.

Support

Bug reports and feature requests should use the SourceForge project page.  General questions are best answered on the PyOpenGL mailing list.

OpenGL.org is a good starting point for information about OpenGL and related technologies.

Other Libraries

There are quite a few 3D-related libraries available for use with Python, many of them either based on, or extensible with PyOpenGL.  PyOpenGL's author collects pointers to them on his site.  There is another commonly used binding of OpenGL for Python which is part of the Pyglet game development environment.

A SourceForge Open-Source Project