display: Fix ability to copy wdxGraphicsBuffer to RAM on DX9

This commit is contained in:
rdb 2024-10-10 19:57:42 +02:00
parent 30418158e8
commit bd4dc8a379
2 changed files with 10 additions and 8 deletions

View File

@ -305,11 +305,12 @@ int FrameBufferProperties::
get_buffer_mask() const {
int mask = 0;
if (_property[FBP_back_buffers] > 0) {
mask = RenderBuffer::T_front | RenderBuffer::T_back;
} else {
mask = RenderBuffer::T_front;
}
//XXX rdb: some buffers only have a front buffer, some only a back buffer
//if (_property[FBP_back_buffers] > 0) {
mask = RenderBuffer::T_front | RenderBuffer::T_back;
//} else {
// mask = RenderBuffer::T_front;
//}
if (_property[FBP_depth_bits] > 0) {
mask |= RenderBuffer::T_depth;
}

View File

@ -45,9 +45,10 @@ wdxGraphicsBuffer9(GraphicsEngine *engine, GraphicsPipe *pipe,
_color_backing_store = nullptr;
_depth_backing_store = nullptr;
// is this correct ??? Since the pbuffer never gets flipped, we get
// screenshots from the same buffer we draw into.
_screenshot_buffer_type = _draw_buffer_type;
// Since the pbuffer never gets flipped, we get screenshots from the same
// buffer we draw into, which is the back buffer.
_draw_buffer_type = RenderBuffer::T_back;
_screenshot_buffer_type = RenderBuffer::T_back;
_shared_depth_buffer = 0;
_debug = 0;