pygame is
Simple DirectMedia Layer is
Site Swing

PyGL3Display - 1.9-alpha6

David Griffin (habilain)



2.0 will be the final version of PyGL3Display

I've been looking through PyGL3Displays code with the intention of implementing proper Z-ordering and have come to the conclusion uncovered that a) PyGL3Display would likely need some major API-breaking work to implement Z-ordering in any sane manner and b) there's a fair amount of other use cases which PyGL3Display, in it's current form, simply cannot do (e.g. multiple windows)

Hence the choices are either a backwards incompatible release or to put PyGL3Display in maintenance only mode and move to another project. I've chosen the latter; apologies to anyone that this inconveniences. - David

PyGL3Display is a high performance, OpenGL, 2D sprite library for Python/Pygame with a simple API, not too dissimilar to Pygames (There's an API compatible Image object, and Sprites are not too dissimilar). It requires slightly more recent hardware than other libraries, but it is "breaks the Pygame FPS counter" fast*.

License: GPL v2 / v3. Commercial licenses are negotiable - at least on parts which I have copyright on (as I am open to outside contribution).

Requirements: Python 2.x, Pygame, PyOpenGL, OpenGL 2.0 compliant system

On Linux only: CFFI can replace PyOpenGL

Not yet compatible with Python 3

Main Design:

1. Near optimal performance.

2. Use GPU shaders as much as possible, as Python programs are much more likely to be CPU bound.

3. Clean, easy to use "normal" API, which also has an advanced mode for people who want the absolute maximum in performance and don't mind getting their hands dirty. For normal use, the API should not be any more difficult to use than Pygame.

* "Breaks the Pygame FPS counter" fast: On my Phenom II based system, the text demo, which draws a not inconsiderable amount of text, jumps between 3333.33 FPS and 5000 FPS according to a Pygame clock object. A hand written FPS counter indicates the real FPS is about 4200. On a much older system (Pentium 4), PyGL3Display still manages 666.66 FPS according to Pygame clocks - which again, seems like I'm hitting some accuracy limit in floating points.

Note: Questions, bug reports etc. are all best done through Launchpad, because that way I'll get notified quickly.


Fixes a critical bug with rendering multiple primitives Improves code quality


Home Page:


click to view original size


PyGL3Display - 2.0 - Nov 28, 2013
PyGL3Display - 2.0-alpha1 - Mar 22, 2013
PyGL3Display - 1.92 - Oct 22, 2012
PyGL3Display - 1.9 - Sep 10, 2012
PyGL3Display - 1.9-beta2 - Aug 26, 2012
PyGL3Display - 1.9-beta1 - Jul 25, 2012
PyGL3Display - 1.9-alpha8 - Jul 2, 2012
PyGL3Display - 1.9-alpha7 - May 29, 2012
PyGL3Display - 1.9-alpha6 - Apr 28, 2012
PyGL3Display - 1.9-alpha5 - Apr 20, 2012
PyGL3Display - 1.9-alpha4 - Mar 31, 2012
PyGL3Display - 1.9-alpha3 - Feb 4, 2012
PyGL3Display - 1.9-alpha2 - Jan 18, 2012
PyGL3Display - 1.9-alpha - Jan 17, 2012
PyGL3Display - 1.1 - Sep 22, 2011
PyGL3Display - 1.02 - May 25, 2011
PyGL3Display - 1.0 - May 3, 2011
PyGL3Display - 0.9 - Apr 4, 2011 account Comments

If you wish to leave a comment with your account, please sign in first.

January 29, 2012 2:14am - Xandar Kablandar - nickname: (eternalcheesecake) - 5/5
This is *exactly* what I've been looking for! Thank you!
May 6, 2011 9:53am - Gummbum - nickname: (gummbum)
TIP: 7-zip 9.20 can handle xz files ( XZ is listed as a supported format.

Right-clicking in Windows Exploder doesn't show "Open with" for 7z, but if you open 7z File Browser and access the archive file it works. Looks like a bug in the installer, not registering the mime type.
May 5, 2011 8:33am - Max Messerich - nickname: (schnappus)
7zip can't open it :(
May 4, 2011 2:36pm - Max Messerich - nickname: (schnappus)
I'd love to give it a try, but I can't do anything with the downloaded file.
I'm running Windows 7.

our projects welcomes all python game, art, music, sound, video and multimedia projects. If they use pygame or not.
recent releases
Feb 21, 2017

Jan 31, 2017

Jan 24, 2017

Jan 18, 2017

Jan 7, 2017

Dec 30, 2016

Dec 8, 2016

Nov 28, 2016

Nov 27, 2016

... more!
for pygame related questions, comments, and suggestions, please see help (lists, irc)