Browse Source

Blacklist GPU MSAA Blit for KosmicKrisp

kosmic_krisp
MaranBr 1 week ago
parent
commit
f31b1f2d0f
  1. 8
      src/video_core/vulkan_common/vulkan_device.cpp
  2. 4
      src/video_core/vulkan_common/vulkan_device.h

8
src/video_core/vulkan_common/vulkan_device.cpp

@ -432,7 +432,10 @@ Device::Device(VkInstance instance_, vk::PhysicalDevice physical_, VkSurfaceKHR
const bool is_intel_anv = driver_id == VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA;
const bool is_nvidia = driver_id == VK_DRIVER_ID_NVIDIA_PROPRIETARY;
const bool is_mvk = driver_id == VK_DRIVER_ID_MOLTENVK;
const bool is_kosmic_krisp = driver_id == VK_DRIVER_ID_KOSMICKRISP;
const bool is_qualcomm = driver_id == VK_DRIVER_ID_QUALCOMM_PROPRIETARY;
const bool is_turnip = driver_id == VK_DRIVER_ID_MESA_TURNIP;
@ -658,6 +661,11 @@ Device::Device(VkInstance instance_, vk::PhysicalDevice physical_, VkSurfaceKHR
properties.properties.limits.maxVertexInputBindings = 32;
}
if (is_kosmic_krisp) {
LOG_WARNING(Render_Vulkan, "KosmicKrisp do not support MSAA->MSAA image blits. MSAA scaling will use 3D helpers. MSAA resolves work normally.");
cant_blit_msaa = true;
}
const auto dyna_state = Settings::values.dyna_state.GetValue();
// Base dynamic states (VIEWPORT, SCISSOR, DEPTH_BIAS, etc.) are ALWAYS active in vk_graphics_pipeline.cpp

4
src/video_core/vulkan_common/vulkan_device.h

@ -927,6 +927,10 @@ public:
return properties.driver.driverID == VK_DRIVER_ID_MOLTENVK;
}
bool IsKosmicKrisp() const noexcept {
return properties.driver.driverID == VK_DRIVER_ID_KOSMICKRISP;
}
NvidiaArchitecture GetNvidiaArch() const noexcept {
return nvidia_arch;
}

Loading…
Cancel
Save