Remove VK_EXT_CUSTOM_BORDER_COLOR

This commit is contained in:
CamilleLaVey 2025-11-25 15:52:41 -04:00 committed by lizzie
parent 3dc06c8948
commit 237cc9781e

View file

@ -25,6 +25,7 @@
#include "video_core/vulkan_common/vulkan_device.h"
#include "video_core/vulkan_common/vulkan_wrapper.h"
#include "video_core/gpu_logging/gpu_logging.h"
#include "vulkan/vulkan_core.h"
#if defined(ANDROID) && defined(ARCHITECTURE_arm64)
#include <adrenotools/bcenabler.h>
@ -1117,6 +1118,19 @@ bool Device::GetSuitability(bool requires_swapchain) {
// Driver detection variables for workarounds in GetSuitability
const VkDriverId driver_id = properties.driver.driverID;
const bool is_intel_windows = driver_id == VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS;
const bool is_turnip = driver_id == VK_DRIVER_ID_MESA_TURNIP;
// VK_EXT_CUSTOM_BORDER_COLOR
if (extensions.custom_border_color && (driver_id == VK_DRIVER_ID_QUALCOMM_PROPRIETARY || is_turnip)) {
const char* driver_name = is_turnip ? "Turnip" : "Adreno";
LOG_WARNING(Render_Vulkan,
"{} driver has broken custom border color handling; disabling VK_EXT_custom_border_color",
driver_name);
RemoveExtensionFeature(extensions.custom_border_color, features.custom_border_color,
VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME);
}
// VK_EXT_extended_dynamic_state2 below this will appear drivers that need workarounds.
// Samsung: Broken extendedDynamicState3ColorBlendEquation