[uae] Re: OT: Beryl (also Re: Compiz)

  • From: Jason Rainforest <l3mming@xxxxxxxxxxxx>
  • To: uae@xxxxxxxxxxxxx
  • Date: Wed, 21 Mar 2007 09:20:29 +1000

Hey Rich,

On Tue, 2007-03-20 at 13:36 -0400, Richard Drummond wrote:

> Actually I have Beryl working now. Still no dice with compiz 0.3.6.

I think I tried to get Compiz 0.3.6 working with Debian, but some highly
desirable items (like Gnome-compiz-manager) required GTK 2.10+ to build
from source. I tried adding Experimental to my sources.list, but even
then some packages weren't new enough or they just didn't exist yet.
Installing Ubuntu fixed this, and is close enough to Debian that I
haven't missed anything. The most major difference is using sudo rather
than just su'ing to root, everything else is familiar (it's built on
Debian afterall). That and having much newer versions of everything is
nice.

> Definitely rough edges. :-)
> 
> It doesn't seem to insert any wedge between an OpenGL application and the 
> screen. Thus OpenGL output is not composited. Drag an OpenGL window and the 
> window content stays where it is, while the window frame moves. You can't 
> occlude an OpenGL window with another window, either (you can occlude the 
> window frame, but the window content still stays on top).


I would assume Compiz does insert a wedge between OpenGL application
output and the screen. I can drag OpenGL outputs around in Compiz and
they move with the window frame, and also are subject to all of Compiz's
visual effects. I'd assume this is also why OpenGL outputs are either
erratic, slow to update, or update in strange ways (some parts of the
the display will update faster than the rest of it).

In the case of Beryl, if it isn't redirecting OpenGL outputs, this would
explain why an OpenGL display is unmovable.. this would be great for
games like Quake IV as there would be no need to stop Beryl before
playing. Compiz needs to be stopped first, or frame rates are halved and
display updates become mildly erratic. I don't think the option
unredirect_fullscreen_windows has any effect on it here either.

> E-UAE's OpenGL renderer works surprisingly well, despite the above problems. 
> I 
> see no significant slow down here. I haven't been able to reproduce Jason's 
> problem yet, either.

E-UAE's OpenGL renderer is the only way to use E-UAE i586 under AMD64 +
Compiz here at the moment (out of the usual SDL and SDL OpenGL - haven't
tried X11/DGA or anything else). Compiz's compositing gets in the way of
a smooth update though. Perhaps in later versions of Compiz this issue
is fixed? I haven't tried building it from CVS (and Gandalfn's
repository for Ubuntu hasn't been updated since January).

So, using the standard SDL renderer, the AMD64 compile of E-UAE works
fine, but the i586 version has much increased brightness and strange
transparency settings while Compiz is compositing. I'm not sure if this
would give any leads, but: The gnome-terminal supports true transparency
with Compiz. Perhaps the way it achieves this (sets a flag somewhere
with GTK or the X server?) is where E-UAE i586 has its problem.

Cheers,
Jason

Other related posts: