2008/8/22 Rico Schüller <[EMAIL PROTECTED]>: > H. Verbeet schrieb: >> >> 2008/8/21 Rico Schüller <[EMAIL PROTECTED]>: >> >>> >>> + /* Set the scissor rect values */ >>> + scissor.left=0; >>> + scissor.right=ThisDevice->ddraw_width; >>> + scissor.top=0; >>> + scissor.bottom=ThisDevice->ddraw_height; >>> + IWineD3DDevice_SetScissorRect(device, &scissor); >>> + >>> >> >> Are you sure you shouldn't be using the primary swapchain's backbuffer >> dimensions? >> >> >> > > I'm not sure what exactly you mean. But the attached patch works for me (on > wine and windows). Could you have a look at it, please. Probably I should > improve the patch a bit. > I'm not sure what that patch is supposed to do.
ddraw_width and ddraw_height are the width and height of the current screen. For fullscreen applications that's the same as the backbuffer, but for windowed applications the backbuffer is smaller. I think it would make more sense for the initial scissor rect to be the size of the backbuffer than the size of the screen. Also keep in mind that a device might have multiple swapchains, not all of which might have the same backbuffer dimensions.