Merge pull request #10030 from Wollnashorn/botw-amd-fix
shader_recompiler: Fix ImageGather rounding on AMD/Intel
This commit is contained in:
commit
e0895a8581
6 changed files with 73 additions and 0 deletions
|
@ -176,6 +176,10 @@ public:
|
|||
return vendor_name == "ATI Technologies Inc.";
|
||||
}
|
||||
|
||||
bool IsIntel() const {
|
||||
return vendor_name == "Intel";
|
||||
}
|
||||
|
||||
bool CanReportMemoryUsage() const {
|
||||
return can_report_memory;
|
||||
}
|
||||
|
|
|
@ -218,6 +218,7 @@ ShaderCache::ShaderCache(RasterizerOpenGL& rasterizer_, Core::Frontend::EmuWindo
|
|||
.lower_left_origin_mode = true,
|
||||
.need_declared_frag_colors = true,
|
||||
.need_fastmath_off = device.NeedsFastmathOff(),
|
||||
.need_gather_subpixel_offset = device.IsAmd() || device.IsIntel(),
|
||||
|
||||
.has_broken_spirv_clamp = true,
|
||||
.has_broken_unsigned_image_offsets = true,
|
||||
|
|
|
@ -329,6 +329,11 @@ PipelineCache::PipelineCache(RasterizerVulkan& rasterizer_, const Device& device
|
|||
|
||||
.lower_left_origin_mode = false,
|
||||
.need_declared_frag_colors = false,
|
||||
.need_gather_subpixel_offset = driver_id == VK_DRIVER_ID_AMD_PROPRIETARY ||
|
||||
driver_id == VK_DRIVER_ID_AMD_OPEN_SOURCE ||
|
||||
driver_id == VK_DRIVER_ID_MESA_RADV ||
|
||||
driver_id == VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS ||
|
||||
driver_id == VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA,
|
||||
|
||||
.has_broken_spirv_clamp = driver_id == VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS,
|
||||
.has_broken_spirv_position_input = driver_id == VK_DRIVER_ID_QUALCOMM_PROPRIETARY,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue