diff options
Diffstat (limited to 'src/video_core')
| -rw-r--r-- | src/video_core/renderer_opengl/gl_device.h | 4 | ||||
| -rw-r--r-- | src/video_core/renderer_opengl/gl_shader_cache.cpp | 1 | ||||
| -rw-r--r-- | src/video_core/renderer_vulkan/vk_pipeline_cache.cpp | 5 |
3 files changed, 10 insertions, 0 deletions
diff --git a/src/video_core/renderer_opengl/gl_device.h b/src/video_core/renderer_opengl/gl_device.h index 3ff8cad83..cc0b95f1a 100644 --- a/src/video_core/renderer_opengl/gl_device.h +++ b/src/video_core/renderer_opengl/gl_device.h | |||
| @@ -176,6 +176,10 @@ public: | |||
| 176 | return vendor_name == "ATI Technologies Inc."; | 176 | return vendor_name == "ATI Technologies Inc."; |
| 177 | } | 177 | } |
| 178 | 178 | ||
| 179 | bool IsIntel() const { | ||
| 180 | return vendor_name == "Intel"; | ||
| 181 | } | ||
| 182 | |||
| 179 | bool CanReportMemoryUsage() const { | 183 | bool CanReportMemoryUsage() const { |
| 180 | return can_report_memory; | 184 | return can_report_memory; |
| 181 | } | 185 | } |
diff --git a/src/video_core/renderer_opengl/gl_shader_cache.cpp b/src/video_core/renderer_opengl/gl_shader_cache.cpp index 479bb8ba3..6ecda2984 100644 --- a/src/video_core/renderer_opengl/gl_shader_cache.cpp +++ b/src/video_core/renderer_opengl/gl_shader_cache.cpp | |||
| @@ -218,6 +218,7 @@ ShaderCache::ShaderCache(RasterizerOpenGL& rasterizer_, Core::Frontend::EmuWindo | |||
| 218 | .lower_left_origin_mode = true, | 218 | .lower_left_origin_mode = true, |
| 219 | .need_declared_frag_colors = true, | 219 | .need_declared_frag_colors = true, |
| 220 | .need_fastmath_off = device.NeedsFastmathOff(), | 220 | .need_fastmath_off = device.NeedsFastmathOff(), |
| 221 | .need_gather_subpixel_offset = device.IsAmd() || device.IsIntel(), | ||
| 221 | 222 | ||
| 222 | .has_broken_spirv_clamp = true, | 223 | .has_broken_spirv_clamp = true, |
| 223 | .has_broken_unsigned_image_offsets = true, | 224 | .has_broken_unsigned_image_offsets = true, |
diff --git a/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp b/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp index 0684cceed..985cc3203 100644 --- a/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp +++ b/src/video_core/renderer_vulkan/vk_pipeline_cache.cpp | |||
| @@ -329,6 +329,11 @@ PipelineCache::PipelineCache(RasterizerVulkan& rasterizer_, const Device& device | |||
| 329 | 329 | ||
| 330 | .lower_left_origin_mode = false, | 330 | .lower_left_origin_mode = false, |
| 331 | .need_declared_frag_colors = false, | 331 | .need_declared_frag_colors = false, |
| 332 | .need_gather_subpixel_offset = driver_id == VK_DRIVER_ID_AMD_PROPRIETARY || | ||
| 333 | driver_id == VK_DRIVER_ID_AMD_OPEN_SOURCE || | ||
| 334 | driver_id == VK_DRIVER_ID_MESA_RADV || | ||
| 335 | driver_id == VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS || | ||
| 336 | driver_id == VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA, | ||
| 332 | 337 | ||
| 333 | .has_broken_spirv_clamp = driver_id == VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS, | 338 | .has_broken_spirv_clamp = driver_id == VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS, |
| 334 | .has_broken_spirv_position_input = driver_id == VK_DRIVER_ID_QUALCOMM_PROPRIETARY, | 339 | .has_broken_spirv_position_input = driver_id == VK_DRIVER_ID_QUALCOMM_PROPRIETARY, |