It would be great to have this issue debated and fixed. I have the impression that using the Cairo backend suffers from the same problem.
Alexandre > Le 22-11-2013 à 14:57, Ronie Salgado <[email protected]> a écrit : > > Hello, > > I want to know about the Pharo graphic system architecture, I whould like to > know if there's some documentation explaining his inner works. > > For NBOpenGL and Roassal 3D in particular, I'm having some flickering, which > I think is related to the way that the OpenGL framebuffer is transferred into > a pharo window. > > In NBOpenGL, rendering is done in a offscreen FBO, whose content is > transferred into main memory y blitted into a pharo window. The pharo window > of course must be blitted or renderer into the screen, which means anothere > transfer into the GPU. In other words, we are a GPU->CPU->GPU memory > roundtrip. > > The consequences of this are the lost of performance, the lost of > double-buffering and which is more important, the lost v-sync. The lack of > v-sync is seen in the way of tearing, which is more appreciated when moving > on the X-axis in a 3d view, such as in the Roassal3D example in > R3Example>>city. > > I have heard that in pharo 3, all of the graphics are being moving into > Athens, a new graphics, for which I donr't know where's the documentation. I > believe that athens is a vector graphics API, which several backends as > cairo, which also has an opengl backend. I would like to share that OpenGL > context to avoid that round-trip if possible, or use a native window for the > OpenGL stuff, but to that I need to know how pharo graphics are done. > > Greetings, > Ronie Salgado
