The easy answer is yes you do not have to have a backbuffer.
Use:
SetGraphicsDriver(WhateverGraphicsDriver(),0)
Make sure you specify 0 (or whatever combination of actual buffers that you want to be the default), and you will get a display without a backbuffer. Everything you draw will draw straight to the visible buffer as soon as the graphics card decides to flush its list of things to do. Typically that means right away.
There ARE some benefits in some situations to using a single-buffered display system. For one, it lets you keep the same previous contents of the front buffer so you can do things like dirty rectangles and updating the custom mouse pointer without having to redraw and flip the entire display.
Yes it MIGHT be prone to tearing because you are drawing to the same buffer that the video scan is reading from to create visible pixels on the screen, and in most cases it is very likely you WILL get some tearing, and for `slower` drawing routines you may see the progress of the screen being drawn in whatever order you draw your objects. But this doesn't mean you should discard the whole idea. It can be useful for certain kinds of applications/game engines.
So just set the default in the driver to not include GRAPHICS_BACKBUFFER and you're all set.
Use:
SetGraphicsDriver(WhateverGraphicsDriver(),0)
Make sure you specify 0 (or whatever combination of actual buffers that you want to be the default), and you will get a display without a backbuffer. Everything you draw will draw straight to the visible buffer as soon as the graphics card decides to flush its list of things to do. Typically that means right away.
There ARE some benefits in some situations to using a single-buffered display system. For one, it lets you keep the same previous contents of the front buffer so you can do things like dirty rectangles and updating the custom mouse pointer without having to redraw and flip the entire display.
Yes it MIGHT be prone to tearing because you are drawing to the same buffer that the video scan is reading from to create visible pixels on the screen, and in most cases it is very likely you WILL get some tearing, and for `slower` drawing routines you may see the progress of the screen being drawn in whatever order you draw your objects. But this doesn't mean you should discard the whole idea. It can be useful for certain kinds of applications/game engines.
So just set the default in the driver to not include GRAPHICS_BACKBUFFER and you're all set.