Fix #120273: GPU: UHD630 on Windows reports buggy extension

On windows the OpenGL backend of the UHD630 driver (but could also be other
GPUs that use the same driver) reports of supporting `GL_ARB_multi_bind`.
But when enabling it can result in incorrect bindings and report errors
about unsupported internal texture formats. These are internal driver issues.

Might also fix #107642 as it shows the same error message. EEVEE-Next
relies more on using the same binding slot for the same texture in order
to reduce actual bindings which makes this more prominent.

Pull Request: https://projects.blender.org/blender/blender/pulls/121062
This commit is contained in:
Jeroen Bakker
2024-04-30 10:38:07 +02:00
committed by Clément Foucault
parent 176c6ef329
commit 3d3dfb6518

View File

@@ -465,6 +465,13 @@ static void detect_workarounds()
GLContext::multi_bind_image_support = false;
}
/* #107642, #120273 Windows UHD600 series GPU but perhaps also others incorrectly report that
* they support image binding. But when used they can result into `GL_INVALID_OPERATION` with
* `internal format of texture N is not supported`. */
if (GPU_type_matches(GPU_DEVICE_INTEL_UHD, GPU_OS_WIN, GPU_DRIVER_OFFICIAL)) {
GLContext::multi_bind_image_support = false;
}
/* Metal-related Workarounds. */
/* Minimum Per-Vertex stride is 1 byte for OpenGL. */