summaryrefslogtreecommitdiff
path: root/src/video_core
diff options
context:
space:
mode:
Diffstat (limited to 'src/video_core')
-rw-r--r--src/video_core/renderer_opengl/gl_device.h4
-rw-r--r--src/video_core/renderer_opengl/gl_shader_cache.cpp1
-rw-r--r--src/video_core/renderer_vulkan/vk_pipeline_cache.cpp5
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,