Some considerations

Martijn Sipkema msipkema@sipkema-digital.com
Mon, 5 Jan 2004 16:57:02 +0100


[...]
> 2) that of catching applications at intermediate states, where
> they have not finished re-rendering their presentation.  Without
> application knowledge, there is no way for the compositing manager
> to know when it is "safe" to composite the results onto the screen.
> Without this knowledge, there is no way for an external agent to
> "get the right answer".
> 
> This is soluble by some amount of coordination between the
> application and the compositing manager.
> 
> I think, though am not entirely sure (the proof will be in
> the implementation) that we can use the existing X Synchronization
> extension to provide this coordination between clients and the
> composting manager.  When an application is "done" with a frame
> and idle, it can increment a counter and await the compositing
> manager further incrementing the counter before proceeding, or
> a scheme like this.

For OpenGL rendering the flush command could be used for this; one
shouldn't call flush in the middle of drawing though I suspect some
applications may... For X11 drawing the flush isn't sent over the wire,
is it?

--ms