Bug 23621 (Pedro)

Summary: Draw on Front buffer doesn't work.
Product: Mesa Reporter: Pierre LANDO <pierre.lando>
Component: Drivers/DRI/i915Assignee: Ian Romanick <idr>
Status: RESOLVED WORKSFORME QA Contact:
Severity: major    
Priority: medium CC: pierre.lando, sylvestre.ledru
Version: 7.5Keywords: NEEDINFO
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments: c test file
screenshot of a C test program
screenshot of a scilab witch use JOGL AWTcanvas.
A screenshot of the test program without glutSwapBuffers
Single Buffered test program.

Description Pierre LANDO 2009-09-01 02:22:29 UTC
Created attachment 29060 [details]
c test file

On Linux 2.6.29.6-217.2.16.fc11.i686.PAE i686 i386 GNU/Linux

With :
OpenGL vendor string: Tungsten Graphics, Inc                      
OpenGL renderer string: Mesa DRI Mobile IntelĀ® GM45 Express Chipset GEM 20090114 x86/MMX/SSE2                                       
OpenGL version string: 2.1 Mesa 7.5-devel                         
OpenGL shading language version string: 1.20 

And >> lsmod  | grep i915
i915                  147340  2
drm                   166512  2 i915
i2c_algo_bit            4804  1 i915
i2c_core               18016  4 i2c_i801,i915,drm,i2c_algo_bit
video                  17344  1 i915

Using glDrawBuffer(GL_FRONT) with JOGl or with C++/OpenGl result to a drawing on the upper-left part of the screen instead of the GL window.
Comment 1 Pierre LANDO 2009-09-01 02:27:01 UTC
Created attachment 29061 [details]
screenshot of a C test program
Comment 2 Pierre LANDO 2009-09-01 02:29:27 UTC
Created attachment 29062 [details]
screenshot of a scilab witch use JOGL AWTcanvas.

When Scilab use AWT GLCanvas, the zoom rectangle is draw out of the window.
Comment 3 Pierre LANDO 2009-09-01 02:31:21 UTC
Rem : when scilab use SWIG GLJPanel no bugs append, but on Intel Graphics, GLJPanel don't work must of the time, it's why we prefer to use AWT canvas.
Comment 4 Eric Anholt 2009-09-01 09:04:52 UTC
The SwapBuffers swaps the back on top of the frontbuffer rendering you did.  Remove it, and your demo app works.
Comment 5 Pierre LANDO 2009-09-02 00:23:33 UTC
Off course .. but.
My problem is not about seeing the cube.
My problem is that the GL frame isn't draw in the app window but on the upper-left corner off the screen.

See the screen-shot :
http://bugs.freedesktop.org/attachment.cgi?id=29061
Comment 6 Pierre LANDO 2009-09-02 00:41:04 UTC
Created attachment 29089 [details]
A screenshot of the test program without glutSwapBuffers

The difference is that the window is not draw at all (no random colours, just the back off the window)
Comment 7 Pierre LANDO 2009-09-02 00:50:35 UTC
Created attachment 29090 [details]
Single Buffered test program.

Here a single Buffered test program.
glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE | GLUT_DEPTH);
NO glDrawBuffer(something);
NOR SwapBuffers
The result is the same :
The window program is empty and the GL frame is rendered to the upper-left corner of the screen (see the previews screen shot).
Comment 8 Ian Romanick 2009-09-02 22:44:34 UTC
What version of the 2D driver (xf86-video-intel) and xserver do you have?  The front buffer rendering fixes require updated versions of all three packages.  I believe xf86-video-intel 2.8.1 and xserver 1.6.2 are the minimum versions required.

On my system with GIT master installed from all three, the single buffered test program produces the correct results.
Comment 9 Ian Romanick 2009-09-02 22:46:02 UTC
I also see from the version string that you're using a pre-release of Mesa 7.5 (the "7.5-devel" part).  Have you tried the actual 7.5 release?
Comment 10 Ian Romanick 2009-09-17 11:09:04 UTC
Two weeks with no update: closing.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.