[d3d9] Rename apitraceMode

It's not just used for apitrace and the new name
is more consistent with the D3D11 equivalent option.
This commit is contained in:
Robin Kertels 2023-05-26 12:33:36 +02:00 committed by Joshie
parent d9d6316609
commit 5fd025c513
5 changed files with 15 additions and 14 deletions

View File

@ -567,14 +567,15 @@
# APITrace Mode # APITrace Mode
# #
# Makes all host visible buffers cached and coherent # Allocates dynamic resources in D3DPOOL_DEFAULT in
# Improves performance when apitracing, but also can impact # cached system memory rather than uncached memory or host-visible
# some dumb games. # VRAM, in order to allow fast readback from the CPU. This is only
# useful for buggy applications, and may reduce GPU-bound performance.
# #
# Supported values: # Supported values:
# - True/False # - True/False
# d3d9.apitraceMode = False # d3d9.cachedDynamicBuffers = False
# Seamless Cubes # Seamless Cubes
# #

View File

@ -125,7 +125,7 @@ namespace dxvk {
memoryFlags |= VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT; memoryFlags |= VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT;
} }
if (memoryFlags & VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT && m_parent->GetOptions()->apitraceMode) { if ((memoryFlags & VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT) && m_parent->GetOptions()->cachedDynamicBuffers) {
memoryFlags &= ~VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT; memoryFlags &= ~VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT;
memoryFlags |= VK_MEMORY_PROPERTY_HOST_COHERENT_BIT memoryFlags |= VK_MEMORY_PROPERTY_HOST_COHERENT_BIT
| VK_MEMORY_PROPERTY_HOST_CACHED_BIT; | VK_MEMORY_PROPERTY_HOST_CACHED_BIT;

View File

@ -66,7 +66,7 @@ namespace dxvk {
this->forceAspectRatio = config.getOption<std::string> ("d3d9.forceAspectRatio", ""); this->forceAspectRatio = config.getOption<std::string> ("d3d9.forceAspectRatio", "");
this->enumerateByDisplays = config.getOption<bool> ("d3d9.enumerateByDisplays", true); this->enumerateByDisplays = config.getOption<bool> ("d3d9.enumerateByDisplays", true);
this->longMad = config.getOption<bool> ("d3d9.longMad", false); this->longMad = config.getOption<bool> ("d3d9.longMad", false);
this->apitraceMode = config.getOption<bool> ("d3d9.apitraceMode", false); this->cachedDynamicBuffers = config.getOption<bool> ("d3d9.cachedDynamicBuffers", false);
this->deviceLocalConstantBuffers = config.getOption<bool> ("d3d9.deviceLocalConstantBuffers", false); this->deviceLocalConstantBuffers = config.getOption<bool> ("d3d9.deviceLocalConstantBuffers", false);
this->allowDirectBufferMapping = config.getOption<bool> ("d3d9.allowDirectBufferMapping", true); this->allowDirectBufferMapping = config.getOption<bool> ("d3d9.allowDirectBufferMapping", true);
this->seamlessCubes = config.getOption<bool> ("d3d9.seamlessCubes", false); this->seamlessCubes = config.getOption<bool> ("d3d9.seamlessCubes", false);

View File

@ -124,8 +124,8 @@ namespace dxvk {
/// don't match entirely to the regular vertex shader in this way. /// don't match entirely to the regular vertex shader in this way.
bool longMad; bool longMad;
/// Apitrace mode: Maps all buffers in cached memory. /// Cached dynamic buffers: Maps all buffers in cached memory.
bool apitraceMode; bool cachedDynamicBuffers;
/// Use device local memory for constant buffers. /// Use device local memory for constant buffers.
bool deviceLocalConstantBuffers; bool deviceLocalConstantBuffers;

View File

@ -49,7 +49,7 @@ namespace dxvk {
* hardware. */ * hardware. */
{ R"(\\(FarCry2|farcry2game)\.exe$)", {{ { R"(\\(FarCry2|farcry2game)\.exe$)", {{
{ "d3d9.customVendorId", "10de" }, { "d3d9.customVendorId", "10de" },
{ "d3d9.apitraceMode", "True" }, { "d3d9.cachedDynamicBuffers", "True" },
}} }, }} },
/* Far Cry 3: Assumes clear(0.5) on an UNORM * /* Far Cry 3: Assumes clear(0.5) on an UNORM *
* format to result in 128 on AMD and 127 on * * format to result in 128 on AMD and 127 on *
@ -500,12 +500,12 @@ namespace dxvk {
* D3DPOOL_DEFAULT, * * D3DPOOL_DEFAULT, *
* D3DUSAGE_DYNAMIC | D3DUSAGE_WRITEONLY buffer */ * D3DUSAGE_DYNAMIC | D3DUSAGE_WRITEONLY buffer */
{ R"(\\(trl|tra|tru)\.exe$)", {{ { R"(\\(trl|tra|tru)\.exe$)", {{
{ "d3d9.apitraceMode", "True" }, { "d3d9.cachedDynamicBuffers", "True" },
{ "d3d9.maxFrameRate", "60" }, { "d3d9.maxFrameRate", "60" },
}} }, }} },
/* Everquest */ /* Everquest */
{ R"(\\eqgame\.exe$)", {{ { R"(\\eqgame\.exe$)", {{
{ "d3d9.apitraceMode", "True" }, { "d3d9.cachedDynamicBuffers", "True" },
}} }, }} },
/* Dark Messiah of Might & Magic */ /* Dark Messiah of Might & Magic */
{ R"(\\mm\.exe$)", {{ { R"(\\mm\.exe$)", {{
@ -660,7 +660,7 @@ namespace dxvk {
}} }, }} },
/* Witcher 1: Very long loading times */ /* Witcher 1: Very long loading times */
{ R"(\\witcher\.exe$)", {{ { R"(\\witcher\.exe$)", {{
{ "d3d9.apitraceMode", "True" }, { "d3d9.cachedDynamicBuffers", "True" },
}} }, }} },
/* Guitar Hero World Tour * /* Guitar Hero World Tour *
* Very prone to address space crashes */ * Very prone to address space crashes */
@ -685,7 +685,7 @@ namespace dxvk {
}} }, }} },
/* Hammer World Editor */ /* Hammer World Editor */
{ R"(\\(hammer(plusplus)?|mallet|wc)\.exe$)", {{ { R"(\\(hammer(plusplus)?|mallet|wc)\.exe$)", {{
{ "d3d9.apitraceMode", "True" }, { "d3d9.cachedDynamicBuffers", "True" },
}} }, }} },
/* Dragon Age Origins * /* Dragon Age Origins *
* Keeps unmapping the same 3 1MB buffers * * Keeps unmapping the same 3 1MB buffers *
@ -702,7 +702,7 @@ namespace dxvk {
* Helps performance when Resizable BAR * * Helps performance when Resizable BAR *
* is enabled */ * is enabled */
{ R"(\\ASN_App_PcDx9_Final\.exe$)", {{ { R"(\\ASN_App_PcDx9_Final\.exe$)", {{
{ "d3d9.apitraceMode", "True" }, { "d3d9.cachedDynamicBuffers", "True" },
}} }, }} },
/* Black Mesa * /* Black Mesa *
* Artifacts & broken flashlight on Intel */ * Artifacts & broken flashlight on Intel */