W3bbo said:AndyC said:*snip*The Aero Glass effect is computationally expensive, yes; such is how blur works.
Looking at OS X, the only real effect is transparency, as used by the window drop-shadow effect and simple window rect transformations (like in Expose), nothing like Aero's polygonal 3D transformations (well, ignoring OS X's desktop compositor).
Prior to Aero in Vista the GUI of Windows hadn't really changed much since Windows 2. In fact you could argue that it's still the same now as you can see if you stop the Desktop Window Manager service (or DWM.Exe crashes as it still does from time to time). Everything just goes on as normal, just without the effects on the window frames.
Of course you don't need GPU acceleration to do effects as long as you are restrained in what you do. The key thing is that you render each window to an off-screen bitmap. This is something GUIs didn't do in the early days because memory was so scarce, hence the non-deterministic paint message and invalidation semantics we've all grown to know and love. But now they have the memory, there's no particular reason to make windows repaint themselves except when their contents change, even when you don't have GPU acceleration. Then it becomes a game mostly of just blitting the bits of the window backing store (remember that most cards had hardware for blitting even before GPUs came long) and alpha-blending the drop-shadow over the top. The drop-shadow is a small percentage of the total pixels so it's not too expensive even if you do it with the CPU.
FWIW, I think OSX's GUI works in a similar way to X11 under the covers (but heavily optimized for shared memory and without the decades of cruft) which is why the window manager has an offscreen copy of the window contents to play with. And it has that architecture because Apple re-engineered it all after the NeXT merger - the original MacOS worked a lot like 16 bit Windows did. Windows, like I said, has stayed pretty-much the same aside from parts of it being separated along kernel/usermode boundaries. It's worth mentioning though that Windows 2000 introduced alpha-blended window effects, though I think that just does repeated repaints of the stack of regions that are alpha-blended rather than off-screen compositing.