Timothy Miller wrote:
On 3/16/06, Daniel Rozsnyó <[EMAIL PROTECTED]> wrote:
For 2D: any moving thing has to move at 50/60 fps so that the image can
be properly outputted to the interlaced device. Question: does X
architecture support some synchronization with the output's Vsync (e.g.
when you move a window) ?
Not really, and the last thing we want to do is make the X server wait
before issuing a bitblt. Perhaps the best thing to do would be to
give the rendering engine a flag for bitblt that says "don't let this
temporally intersect with the raster scan." Not trivial and probably
undesirable too.
X does in fact have the concept of a 'sync counter', which is a server
side resource that
clients can block on until they reach a certain value. Given a counter
containing the
vblank/notvblank state, an X client could ask to be blocked until the
next blank.
For example an X client could do this:
- draw stuff to a pixmap
- block until vblank
- blit pixmap to window
Note blocking means "no more requests are being executed until the
property becomes true",
not "blocked by the operating system". To implement this in X, an
interrupt when vblank starts
would be needed. But X doesn't actually implement this even for cards
that have such an interrupt.
Soren
_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)