Archived

This topic is now archived and is closed to further replies.

Null buffering

This topic is 5798 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

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?

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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)

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites
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.

Share this post


Link to post
Share on other sites