From 44d042094e21b519b38a3d78761b64bb5ceeb350 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Foucault?= Date: Sun, 29 Sep 2019 01:19:45 +0200 Subject: GPU: Workaround for broken node links on NVidia drivers Related to T70011 and T70008 --- source/blender/gpu/intern/gpu_extensions.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'source/blender/gpu/intern/gpu_extensions.c') diff --git a/source/blender/gpu/intern/gpu_extensions.c b/source/blender/gpu/intern/gpu_extensions.c index 7b6759c44bf..d3259b93b5c 100644 --- a/source/blender/gpu/intern/gpu_extensions.c +++ b/source/blender/gpu/intern/gpu_extensions.c @@ -355,6 +355,15 @@ void gpu_extensions_init(void) GG.glew_arb_base_instance_is_supported = GLEW_ARB_base_instance; gpu_detect_mip_render_workaround(); + /* XXX TODO a nasty nvidia driver bug on GTX & RTX 10X0 / 20X0 is breaking instancing when using + * indirect drawcall. (see T70011) */ + if (GPU_type_matches(GPU_DEVICE_NVIDIA, GPU_OS_ANY, GPU_DRIVER_ANY)) { + if (strstr(renderer, "RTX 10") || strstr(renderer, "RTX 20") || strstr(renderer, "GTX 10") || + strstr(renderer, "GTX 20")) { + GG.glew_arb_base_instance_is_supported = false; + } + } + if (G.debug & G_DEBUG_GPU_FORCE_WORKAROUNDS) { printf("\n"); printf("GPU: Bypassing workaround detection.\n"); -- cgit v1.2.3