Null buffering

Started by
6 comments, last by Senses777 22 years, 2 months ago
In DDraw 7, is there a way to not use any screen buffer at all? The program I am writing does not need it (it would actually be better without it). (please no tearing lectures) So how would I go about doing this?
"I want to make a simple MMORPG first" - Fenryl
Advertisement
you need at the very minium the primary buffer to be created. if you dont create the primary buffer then you are not showing anything on the screen, you should not be using directdraw7.
OMG... why in the world are you using directdraw if you don''t need to draw to the screen...
PaladinGLT
As far as I can guess, you may need DDraw to get video info / etc, without actually rendering anything, right? If that''s the point - just create DirectDraw interface (DirectDrawCreate / DirectDrawCreateEx) and use it.
oh, oops, I worded that wrong. I want to use JUST the primary buffer, (so that when I blit something, it is on the screen without flipping, yes I know what tearing is)
"I want to make a simple MMORPG first" - Fenryl
Maybe it would help to try to explain exactly what you are doing. Something doesn''t quite make sense...
Author, "Real Time Rendering Tricks and Techniques in DirectX", "Focus on Curves and Surfaces", A third book on advanced lighting and materials
Okay, I am going to be blitting (ok, not blitting, editing the surface directly, I already have this working) one pixel at a time and real-time updating would be better than having two buffers and flipping.
"I want to make a simple MMORPG first" - Fenryl
as long as you dont read from the primary buffer (quite slow), your fine. just create the primary buffer (ppl really need to learn to read the docs). also direct access to the primary buffer does not mean tearing. you only get tearing if you update during a screen refresh, and even then only if your update effects the scanlines that are about to be updated. (ie you update scalines that are updated and some that are not). if you only update scalines behind the scanline currently being refreshed, you will NEVER get tearing. this is equivenlent to updating on vsyncs (just more complex since you are doing the per pixel access), since you are keeping your drawing timed to the moniter refresh rate. i am not sure how the realtime updating will be better with no back buffer, please explain. (do realize barring tearing, there are other reasons why you use back buffers like to ensure as you draw, ppl dont see the frame being produced. though you are aware of this i am sure.

This topic is closed to new replies.

Advertisement