using desktopbuffer() with different drivers

BlitzPlus Forums/BlitzPlus Programming/using desktopbuffer() with different drivers

dan_upright(Posted 2003) [#1]
is there some reason why desktopbuffer() is only available in directdraw mode?

the following line of code
CopyRect 0, 0, DESKTOP_WIDTH, DESKTOP_HEIGHT, 0, 0, DesktopBuffer(), ImageBuffer(backdrop)
works in directdraw, throws an "incompatible graphics" error in native and hangs in opengl (and kills ddhelp, needing a reboot before i can run the prog again)

any particular reason why this is happening, or am i doing something wrong?


Mark Tiffany(Posted 2003) [#2]
The most likely answer is simply because native and OpenGL drivers are not yet fully implemented. As I understand it, mark got all the basics of these drivers working ok, but did not implement all of the functionality for them. Hence you'll find commands like this that don't (always) work. And hence the comments in the versions.txt about them being experimental.

I also have some vague recollection about the Windows desktop only being available through DirectDraw - which would be another reason for it to fail in OpenGL and native modes. In fact, I wouldn't be at all surprised if that was it.

In any case, I think it's highly unlikely that you are doing something wrong! ;-)


DrMartin(Posted 2003) [#3]
I read yesterday that it only works in DD, not sure where I read it though.


cyberseth(Posted 2003) [#4]
Yep, Native and OpenGL are "prototype" drivers. Use them at your own peril! ;)


Zo Zo Zee Zar(Posted 2003) [#5]
OI DAN THAT SIG IS TOO BIG U CHEESEBRAIN


dan_upright(Posted 2003) [#6]
OI THAT SIG IS TOO BIG U CHEESEBRAIN
shut up you fat goit =p


Zo Zo Zee Zar(Posted 2003) [#7]
hmmm fair comment.


Michael Reitzenstein(Posted 2003) [#8]
you guys are crazy