Removes Qualcomm's rotated framebuffer bug from DriverDetails.
Due to changes in how we render to the final framebuffer we no longer encounter this bug. With the change to post processing being enabled at all times and no longer using glBlitFramebuffer, Qualcomm no longer has the chance to rotate our framebuffer underneath of us.
This commit is contained in:
parent
52e6a940cf
commit
daabcfd6fc
|
@ -1395,15 +1395,8 @@ void Renderer::SwapImpl(u32 xfbAddr, u32 fbWidth, u32 fbStride, u32 fbHeight, co
|
||||||
UpdateDrawRectangle(s_backbuffer_width, s_backbuffer_height);
|
UpdateDrawRectangle(s_backbuffer_width, s_backbuffer_height);
|
||||||
TargetRectangle flipped_trc = GetTargetRectangle();
|
TargetRectangle flipped_trc = GetTargetRectangle();
|
||||||
|
|
||||||
if (DriverDetails::HasBug(DriverDetails::BUG_ROTATEDFRAMEBUFFER))
|
// Flip top and bottom for some reason; TODO: Fix the code to suck less?
|
||||||
{
|
std::swap(flipped_trc.top, flipped_trc.bottom);
|
||||||
std::swap(flipped_trc.left, flipped_trc.right);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
// Flip top and bottom for some reason; TODO: Fix the code to suck less?
|
|
||||||
std::swap(flipped_trc.top, flipped_trc.bottom);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Copy the framebuffer to screen.
|
// Copy the framebuffer to screen.
|
||||||
const XFBSource* xfbSource = nullptr;
|
const XFBSource* xfbSource = nullptr;
|
||||||
|
|
|
@ -47,7 +47,6 @@ namespace DriverDetails
|
||||||
{OS_ALL, VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, -1, BUG_BROKENSWAP, -1.0, 46.0, true},
|
{OS_ALL, VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, -1, BUG_BROKENSWAP, -1.0, 46.0, true},
|
||||||
{OS_ALL, VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, -1, BUG_BROKENBUFFERSTREAM, -1.0, -1.0, true},
|
{OS_ALL, VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, -1, BUG_BROKENBUFFERSTREAM, -1.0, -1.0, true},
|
||||||
{OS_ALL, VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, -1, BUG_BROKENTEXTURESIZE, -1.0, 65.0, true},
|
{OS_ALL, VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, -1, BUG_BROKENTEXTURESIZE, -1.0, 65.0, true},
|
||||||
{OS_ALL, VENDOR_QUALCOMM, DRIVER_QUALCOMM_3XX, -1, BUG_ROTATEDFRAMEBUFFER, 53.0, 65.0, true},
|
|
||||||
{OS_ALL, VENDOR_ARM, DRIVER_ARM_MIDGARD, -1, BUG_BROKENBUFFERSTREAM, -1.0, -1.0, true},
|
{OS_ALL, VENDOR_ARM, DRIVER_ARM_MIDGARD, -1, BUG_BROKENBUFFERSTREAM, -1.0, -1.0, true},
|
||||||
{OS_ALL, VENDOR_MESA, DRIVER_NOUVEAU, -1, BUG_BROKENUBO, 900, 916, true},
|
{OS_ALL, VENDOR_MESA, DRIVER_NOUVEAU, -1, BUG_BROKENUBO, 900, 916, true},
|
||||||
{OS_ALL, VENDOR_MESA, DRIVER_R600, -1, BUG_BROKENUBO, 900, 913, true},
|
{OS_ALL, VENDOR_MESA, DRIVER_R600, -1, BUG_BROKENUBO, 900, 913, true},
|
||||||
|
|
|
@ -162,15 +162,6 @@ namespace DriverDetails
|
||||||
// TODO: some windows AMD driver/gpu combination seems also affected
|
// TODO: some windows AMD driver/gpu combination seems also affected
|
||||||
// but as they all support pinned memory, it doesn't matter
|
// but as they all support pinned memory, it doesn't matter
|
||||||
BUG_BROKENUNSYNCMAPPING,
|
BUG_BROKENUNSYNCMAPPING,
|
||||||
// Bug: Adreno now rotates the framebuffer on blit a full 180 degrees
|
|
||||||
// Affected devices: Adreno
|
|
||||||
// Started Version: v53 (dev drivers)
|
|
||||||
// Ended Version: v66 (07-14-2014 dev drivers)
|
|
||||||
// Qualcomm is a super pro company that has recently updated their development drivers
|
|
||||||
// These drivers are available to the Nexus 5 and report as v53
|
|
||||||
// Qualcomm in their infinite wisdom thought it was a good idea to rotate the framebuffer 180 degrees on glBlit
|
|
||||||
// This bug allows us to work around that rotation by rotating it the right way around again.
|
|
||||||
BUG_ROTATEDFRAMEBUFFER,
|
|
||||||
// Bug: Intel's Window driver broke buffer_storage with GL_ELEMENT_ARRAY_BUFFER
|
// Bug: Intel's Window driver broke buffer_storage with GL_ELEMENT_ARRAY_BUFFER
|
||||||
// Affected devices: Intel (Windows)
|
// Affected devices: Intel (Windows)
|
||||||
// Started Version: 15.36.3.64.3907 (10.18.10.3907)
|
// Started Version: 15.36.3.64.3907 (10.18.10.3907)
|
||||||
|
|
Loading…
Reference in New Issue