PyOpenGL is the way to get really high performance. Virtually all of the GUI toolkits have OpenGL canvases. OpenGL itself is window system independent so you just need to establish a context using the GUI and then use OpenGL calls to do your drawing. People think of it as exclusively 3D but it does all the usual 2D stuff very well. gb