We have been working on a 2D graphics engine built on openGL. I sent
some emails few months ago with some questions regarding this proyect to
To refresh memory about it, we were looking for a way to display SDL or
opengl graphics within a window that could have standard pull down
menus. The best way to achive this we found was with wxpython + opengl.
So we have been working in this dirtection. We were interested on
implementing a event handling systems and classes that would respond to
these events in a similar way as Macromedia Flash or Director sprites
system do. For this we have developed a event handler that receives the
events from wx and sends them to the objects that are intersected by the
mouse. This is of course a wx based system and it wouldnt work for
pygame or GLUT.
We have decided that we should release the drawing part of it so that
people using pygame or glut could benefit from this work. At first we
tried to create a event handling system that would work for all systems
with little change but we couldnt find a way to do this.
So we stripped down the event handling system and the mouse related
classes so that the only thing left is the core basic shapes and the
We are not trainied programmers, i mean we didnt study proper computer
engineering. So i expect that there are things that shouldnt be done
like we have done. We have never develoloped such a big proyect and we
are learning a lot on the process however its difficult to know how to
structure it eficiently.
Also we got a basic introduction to OpenGL and we started working from
that, using the RedBook and some mailing lists to solve problems we
found on the way. So we are not sure that what we have done is very much
the OpenGL-way to do it or if there are things which are totally crazy
:) We have been trying to read about patern design, unit test and
extreme programming to see if this could help doning it better, but it
is a hard job to put theory into practice.
I believe it can be used together with pygame but i havent tested it as
we are using it within wxpython. Actually the example we created to
distribute is based on GLUT as this is the deafult system for OpenGL.
It has been developed initially under Windows and now under Mac. I have
tested it on Ubuntu Linux sucessfully. I am not able at the moment to
test it under windows as i dont have any machine with windows I could
use. It would be great if someone could test it on windows and report
We would be really happy if someone would try to use it with pygame or
GLUT or any other system and report inconsistancies, suggestions,
problems or any kind of ideas or feedback about it.
We have called it Mirra and it can be downloaded from: