![]() |
|
#1
|
||||
|
||||
|
There's been some Discussion here in the past about Page Tearing (especially in TZT).
Now that I'm in the position to do something about it I wanted to ask for opinions/guidelines on how to keep such a thing in check. I've been doing my research on triple buffering, but it doesn't appear as though the Flip() command in DX is really all it's cracked up to be (but is on the right track). I did find a good page on using a VXD running in ring 0 to help with the real time inadequacies of tracking the Vertical Scan in windows, though. My current guess is that I would need to manually maintain three buffers with 4 buffer states. - Drawing Buffer State (the one I'm actually writing to) - Waiting To Be Primary State (post Drawing Buffer State) - Primary Buffer State (being displayed) - Waiting to be Drawing Buffer State (post Post Display State) Ergo, the buffers would go through this cycle: Drawing -> Waiting To Be Primary -> Primary -> Waiting To Be Drawing -> Drawing -> etc... Does this make sense? Is this actually what triple buffering means and I misunderstood the documentation? The MS website made it appear as though the programmer was only ever able to access the Waiting To Be Drawn buffer which kinda defeats having 3 buffers, right? Bonzo Goes To BltBurg, -Esotic |
|
#2
|
||||
|
||||
|
|
|
#3
|
||||
|
||||
|
Here's my current list of documentation:
http://www.codeproject.com/gdi/teari...&select=667869 http://msdn.microsoft.com/archive/de...ddref_4bxe.asp http://msdn.microsoft.com/archive/de...ddref_9k6a.asp http://www.compuphase.com/vretrace.htm http://msdn.microsoft.com/archive/de...urfaceflip.asp http://msdn.microsoft.com/archive/de...dover_3gzb.asp http://www.teamradeon.com/articles/g...sync_guide.asp
|
|
#4
|
|||
|
|||
|
directDraw is antiquated,
i'd rather convert the rendering engine to direct3d where the final step is putting your tzt 2d output onto texture, then to screen using more advanced and powerful techniques, even being able to scale it up to a much higher resolution |
![]() |
| Thread Tools | |
| Display Modes | |
|
|