On Tue, 2007-01-30 at 10:24 +0100, Ulrich von Zadow wrote: > > I've been trying to get handling of vertical blank waits working on an > i945 (Mesa 6.5.1 using the i810 driver) without success. Specifically, > WaitVideoSyncSGI causes waits that are much too long when used to wait > for more than one vblank (i.e. WaitVideoSyncSGI(2, 0, &count) results in > about 3 frames a second). Waiting for one vblank works. The same code > works on old matrox r200 cards.
Have you considered using glXSwapIntervalSGI() instead? With the i915tex driver as of Mesa 6.5.2, this will schedule buffer swaps so long as glXSwapBuffers() is called in time, so it returns immediately and the driver only blocks when it needs to grab the hardware lock while the buffer swap is pending. The buffer swap is then triggered by the vertical blank interrupt, so it's very unlikely to tear. This even works independently on both heads of a MergedFB / RandR 1.2 multihead setup. -- Earthling Michel Dänzer | http://tungstengraphics.com Libre software enthusiast | Debian, X and DRI developer ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Mesa3d-dev mailing list Mesa3d-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mesa3d-dev