[dxbc] Enable NaN fixup by default on older RADV versions

And get rid of a whole bunch of game-specific workarounds.
This commit is contained in:
Philip Rebohle 2021-01-28 19:32:00 +01:00
parent f5fa7a9099
commit 1478011822
No known key found for this signature in database
GPG Key ID: C8CC613427A31C99
2 changed files with 4 additions and 44 deletions

View File

@ -70,6 +70,10 @@ namespace dxvk {
if (devInfo.khrShaderFloatControls.shaderDenormPreserveFloat64)
floatControl.set(DxbcFloatControlFlag::DenormPreserve64);
}
if (!devInfo.khrShaderFloatControls.shaderSignedZeroInfNanPreserveFloat32
|| adapter->matchesDriver(DxvkGpuVendor::Amd, VK_DRIVER_ID_MESA_RADV_KHR, 0, VK_MAKE_VERSION(20, 3, 0)))
enableRtOutputNanFixup = true;
}
}

View File

@ -186,14 +186,6 @@ namespace dxvk {
{ R"(\\Subnautica\.exe$)", {{
{ "dxvk.enableOpenVR", "False" },
}} },
/* Super Monkey Ball: Banana Blitz HD */
{ R"(\\SMBBBHD\.exe$)", {{
{ "d3d11.enableRtOutputNanFixup", "True" },
}} },
/* Yooka-Laylee and the Impossible Lair */
{ R"(\\YLILWin64\.exe$)", {{
{ "d3d11.enableRtOutputNanFixup", "True" },
}} },
/* Blue Reflection */
{ R"(\\BLUE_REFLECTION\.exe$)", {{
{ "d3d11.constantBufferRangeCheck", "True" },
@ -202,10 +194,6 @@ namespace dxvk {
{ R"(\\SecretWorldLegendsDX11\.exe$)", {{
{ "d3d11.constantBufferRangeCheck", "True" },
}} },
/* Stars End */
{ R"(\\Stars End\.exe$)", {{
{ "d3d11.enableRtOutputNanFixup", "True" },
}} },
/* Borderlands 3 */
{ R"(\\Borderlands3\.exe$)", {{
{ "d3d11.invariantPosition", "True" },
@ -222,10 +210,6 @@ namespace dxvk {
{ R"(\\Mafia3DefinitiveEdition\.exe$)", {{
{ "d3d11.invariantPosition", "True" },
}} },
/* Observation */
{ R"(\\Observation\.exe$)", {{
{ "d3d11.enableRtOutputNanFixup", "True" },
}} },
/* Darksiders Warmastered - apparently reads *
* from write-only mapped buffers */
{ R"(\\darksiders1\.exe$)", {{
@ -236,30 +220,6 @@ namespace dxvk {
{ "d3d11.apitraceMode", "True" },
{ "d3d11.invariantPosition", "True" },
}} },
/* The Dungeon of Maheulbeuk */
{ R"(\\Naheulbeuk\.exe$)", {{
{ "d3d11.enableRtOutputNanFixup", "True" },
}} },
/* The Ghost Train */
{ R"(\\TheGhostTrain\.exe$)", {{
{ "d3d11.enableRtOutputNanFixup", "True" },
}} },
/* Missing Children */
{ R"(\\Missing Children\.exe$)", {{
{ "d3d11.enableRtOutputNanFixup", "True" },
}} },
/* The Convenience Store Yakin Jiken */
{ R"(\\The Convenience Store Yakin Jiken\.exe$)", {{
{ "d3d11.enableRtOutputNanFixup", "True" },
}} },
/* Art of Rally */
{ R"(\\artofrally(_demo)?\.exe$)", {{
{ "d3d11.enableRtOutputNanFixup", "True" },
}} },
/* Empire of Sin */
{ R"(\\EmpireOfSin\.exe$)", {{
{ "d3d11.enableRtOutputNanFixup", "True" },
}} },
/**********************************************/
/* D3D9 GAMES */
@ -424,10 +384,6 @@ namespace dxvk {
{ R"(\\eqgame\.exe$)", {{
{ "d3d9.apitraceMode", "True" },
}} },
/* VRChat */
{ R"(\\VRChat\.exe$)", {{
{ "d3d11.enableRtOutputNanFixup", "True" },
}} },
}};