[Bf-blender-cvs] [44d042094e2] master: GPU: Workaround for broken node links on NVidia drivers

Clément Foucault noreply at git.blender.org
Sun Sep 29 00:57:35 CEST 2019


Commit: 44d042094e21b519b38a3d78761b64bb5ceeb350
Author: Clément Foucault
Date:   Sun Sep 29 01:19:45 2019 +0200
Branches: master
https://developer.blender.org/rB44d042094e21b519b38a3d78761b64bb5ceeb350

GPU: Workaround for broken node links on NVidia drivers

Related to T70011 and T70008

===================================================================

M	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");



More information about the Bf-blender-cvs mailing list