[Bf-blender-cvs] [a6dd22d4311] master: Fix T74957: Matcap flip not updating

Philipp Oeser noreply at git.blender.org
Tue Mar 24 09:52:01 CET 2020


Commit: a6dd22d4311ce0265bd7678b68bff71c59404771
Author: Philipp Oeser
Date:   Fri Mar 20 10:30:35 2020 +0100
Branches: master
https://developer.blender.org/rBa6dd22d4311ce0265bd7678b68bff71c59404771

Fix T74957: Matcap flip not updating

Caused by rBc476c36e4008.

This hooks into the existing FIXME (workaround for a missing update
tagging from operators), needs to also check the shading.flag (to detect
changes in V3D_SHADING_MATCAP_FLIP_X).

Differential Revision: https://developer.blender.org/D7192

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

M	source/blender/draw/engines/workbench/workbench_data.c

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

diff --git a/source/blender/draw/engines/workbench/workbench_data.c b/source/blender/draw/engines/workbench/workbench_data.c
index f000028562f..ceb57327fb0 100644
--- a/source/blender/draw/engines/workbench/workbench_data.c
+++ b/source/blender/draw/engines/workbench/workbench_data.c
@@ -203,7 +203,8 @@ void workbench_private_data_init(WORKBENCH_PrivateData *wpd)
     /* FIXME: This reproduce old behavior when workbench was separated in 2 engines.
      * But this is a workaround for a missing update tagging from operators. */
     if (scene->display.shading.type != wpd->shading.type ||
-        (v3d && (XRAY_ENABLED(v3d) != XRAY_ENABLED(&scene->display)))) {
+        (v3d && (XRAY_ENABLED(v3d) != XRAY_ENABLED(&scene->display))) ||
+        (scene->display.shading.flag != wpd->shading.flag)) {
       wpd->view_updated = true;
     }
 
@@ -229,7 +230,8 @@ void workbench_private_data_init(WORKBENCH_PrivateData *wpd)
   else {
     /* FIXME: This reproduce old behavior when workbench was separated in 2 engines.
      * But this is a workaround for a missing update tagging from operators. */
-    if (v3d->shading.type != wpd->shading.type || XRAY_ENABLED(v3d) != XRAY_ENABLED(wpd)) {
+    if (v3d->shading.type != wpd->shading.type || XRAY_ENABLED(v3d) != XRAY_ENABLED(wpd) ||
+        v3d->shading.flag != wpd->shading.flag) {
       wpd->view_updated = true;
     }



More information about the Bf-blender-cvs mailing list