[Bf-blender-cvs] [6752022310b] master: Fix T62327: Multires with Particles: Undo not working

Sergey Sharybin noreply at git.blender.org
Fri Mar 8 14:38:32 CET 2019


Commit: 6752022310b34bc6dd244f33903b898ff428777c
Author: Sergey Sharybin
Date:   Fri Mar 8 14:37:46 2019 +0100
Branches: master
https://developer.blender.org/rB6752022310b34bc6dd244f33903b898ff428777c

Fix T62327: Multires with Particles: Undo not working

Modifier stack was forced to be re-evaluated when it was not
supposed to. Should also improve sculpt performance.

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

M	source/blender/depsgraph/intern/depsgraph_tag.cc

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

diff --git a/source/blender/depsgraph/intern/depsgraph_tag.cc b/source/blender/depsgraph/intern/depsgraph_tag.cc
index 493247e252f..f6887af63f2 100644
--- a/source/blender/depsgraph/intern/depsgraph_tag.cc
+++ b/source/blender/depsgraph/intern/depsgraph_tag.cc
@@ -622,8 +622,12 @@ void graph_id_tag_update(Main *bmain,
 	/* Special case for nested node tree datablocks. */
 	id_tag_update_ntree_special(bmain, graph, id, flag, update_source);
 	/* Direct update tags means that something outside of simulated/cached
-	 * physics did change and that cache is to be invalidated. */
-	if (update_source == DEG_UPDATE_SOURCE_USER_EDIT) {
+	 * physics did change and that cache is to be invalidated.
+	 * This is only needed if data changes. If it's just a drawing, we keep the
+	 * point cache. */
+	if (update_source == DEG_UPDATE_SOURCE_USER_EDIT &&
+	    flag != ID_RECALC_SHADING)
+	{
 		graph_id_tag_update_single_flag(
 		        bmain, graph, id, id_node, ID_RECALC_POINT_CACHE, update_source);
 	}



More information about the Bf-blender-cvs mailing list