Bug 760 - severe flickering with rendering on root window
Summary: severe flickering with rendering on root window
Status: RESOLVED FIXED
Alias: None
Product: DRI
Classification: Unclassified
Component: General (show other bugs)
Version: DRI git
Hardware: x86 (IA32) Linux (All)
: high normal
Assignee: Default DRI bug account
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-06-16 22:17 UTC by D Brooks
Modified: 2009-06-30 07:05 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description D Brooks 2004-06-16 22:17:18 UTC
Attempting to run a DRI accelerated rendering with the radeon and rv200 drivers,
on the root window, leads to severe flickering. [Perhaps double buffering is not
active? But this flickering seems to be somewhat Z-dependent... Within the
flickering, you can sometimes see things being drawn that should be occluded by
other objects]].

To replicate the problem:
Use, say, one of the gl xscreensavers, [located in /usr/X11R6/lib/xscreensavers
on my distribution]

such as:
./superquadrics -root

And the problem will be quite apparant. 
This only happens when openGL applications are run on the root window. 

[
Comment 1 James Renken 2004-06-17 12:32:26 UTC
Duplicated with ATI All-in-Wonder (Radeon) 9000 AGP 64MB and glmatrix.
Comment 2 Adam Jackson 2004-06-17 12:59:56 UTC
~$ /usr/lib/xscreensaver/glmatrix -visual 39 -root
glmatrix: ignoring `-visual 39' because of `-root'.
glmatrix: using root window's visual 0x23.

0x23 is not double-buffered.
Comment 3 D Brooks 2004-07-23 01:34:51 UTC
How can one change the visual id of the root window, then? This isn't a problem
with my nvidia card. I have tried running X with all -cc options between 0x00
and 0x50, and it refuses to run in each case!
Comment 4 Ian Romanick 2004-07-26 08:35:20 UTC
AFAIK, you can't.  If the root window doesn't have the required capabilities,
don't use it.  It's just that easy.
Comment 5 Adam Jackson 2004-07-26 09:26:07 UTC
i asked keithp about this a while ago.  it's not impossible to do, but it
involves hacking the server to enable a back buffer for the root window.
Comment 6 Dieter Nützel 2004-10-21 11:17:09 UTC
This is a 'problem' with all xscrennsaver GL modules in KDE 3.3.1 at least. 
 
They request for root and get unbuffered. 
 
/opt/Mesa> /usr/X11R6/lib/xscreensaver/queens -visual 39 -root 
queens: ignoring `-visual 39' because of `-root'. 
queens: using root window's visual 0x23. 
 
=> Nothing or flickering. 
 
But KDE's GL saver (keuphoria.kss) are working right. 
 
 
But we have more regression, here. 
 
flipscreen3d (big textures are broken, again): 
/opt/Mesa> /usr/X11R6/lib/xscreensaver/flipscreen3d -geometry 1280x1024 
flipscreen3d: error mipmapping 2048x1024 texture: (unknown) 
flipscreen3d: turning on -wireframe. 
 
=> Empty black flipping window. 
 
But this one works: 
/usr/X11R6/lib/xscreensaver/flipscreen3d 
/usr/X11R6/lib/xscreensaver/flipscreen3d -geometry 1024x1024 
/opt/Mesa> /usr/X11R6/lib/xscreensaver/flipscreen3d -geometry 1024x1025 
/opt/Mesa> /usr/X11R6/lib/xscreensaver/flipscreen3d -geometry 1024x1280 
/opt/Mesa> /usr/X11R6/lib/xscreensaver/flipscreen3d -geometry 1024x160 
/opt/Mesa> /usr/X11R6/lib/xscreensaver/flipscreen3d -geometry 1024x1600 
 
Badness starts here: 
/opt/Mesa> /usr/X11R6/lib/xscreensaver/flipscreen3d -geometry 1025x1024 
flipscreen3d: error mipmapping 2048x1024 texture: (unknown) 
flipscreen3d: turning on -wireframe. 
 
 
Comment 7 Ian Romanick 2004-10-21 13:03:42 UTC
As has been said 6.02E23 times before, this is a bug in xscreensaver.  The root
window isn't double buffered.  Get over it.
Comment 8 Adam Jackson 2008-02-24 18:23:47 UTC
Mass reopen.  The "REMIND" resolution is lame, I'm deleting it.  Consider yourself reminded.
Comment 9 Jerome Glisse 2009-06-30 07:05:50 UTC
This was an xscreensaver bug.


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.