diff --git a/dxvk.conf b/dxvk.conf index 3e739704b..46edbb9c0 100644 --- a/dxvk.conf +++ b/dxvk.conf @@ -515,7 +515,9 @@ # Support DF formats # -# Support the vendor extension DF floating point depth formats +# Support the vendor extension DF floating point depth formats on AMD and Intel. +# Note that this config is ignored and disabled by default on Nvidia, or when +# spoofing a Nvidia GPU, as it does not support these formats natively. # # Supported values: # - True/False diff --git a/src/d3d9/d3d9_format.cpp b/src/d3d9/d3d9_format.cpp index 87431a874..31ce7290b 100644 --- a/src/d3d9/d3d9_format.cpp +++ b/src/d3d9/d3d9_format.cpp @@ -438,7 +438,11 @@ namespace dxvk { D3D9VkFormatTable::D3D9VkFormatTable( const Rc& adapter, const D3D9Options& options) { - m_dfSupport = options.supportDFFormats; + + const auto& props = adapter->deviceProperties(); + uint32_t vendorId = options.customVendorId == -1 ? props.vendorID : uint32_t(options.customVendorId); + + m_dfSupport = options.supportDFFormats && DxvkGpuVendor(vendorId) != DxvkGpuVendor::Nvidia; m_x4r4g4b4Support = options.supportX4R4G4B4; m_d32supportFinal = options.supportD32;