[Bf-blender-cvs] [30fb4559779] blender2.8: Initial 'fix' for Sculpt & COW - shallow copy sculpt data into COWed object.

Bastien Montagne noreply at git.blender.org
Wed May 30 15:15:42 CEST 2018


Commit: 30fb4559779cbb1b520cf10c4877f8ead91e0257
Author: Bastien Montagne
Date:   Wed May 30 15:13:24 2018 +0200
Branches: blender2.8
https://developer.blender.org/rB30fb4559779cbb1b520cf10c4877f8ead91e0257

Initial 'fix' for Sculpt & COW - shallow copy sculpt data into COWed object.

Still a lot to fix here, right now you can get sculpt drawing updating
when you come from Edit mode, not from Object mode... Go figure...

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

M	source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc

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

diff --git a/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc b/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc
index 4ccabb77a5d..edae5fb002d 100644
--- a/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc
+++ b/source/blender/depsgraph/intern/eval/deg_eval_copy_on_write.cc
@@ -527,10 +527,10 @@ void update_special_pointers(const Depsgraph *depsgraph,
 			 */
 			Object *object_cow = (Object *)id_cow;
 			const Object *object_orig = (const Object *)id_orig;
-			(void) object_cow;  /* Ignored for release builds. */
 			BLI_assert(object_cow->derivedFinal == NULL);
 			BLI_assert(object_cow->derivedDeform == NULL);
 			object_cow->mode = object_orig->mode;
+			object_cow->sculpt = object_orig->sculpt;
 			if (object_cow->type == OB_ARMATURE) {
 				BKE_pose_remap_bone_pointers((bArmature *)object_cow->data,
 				                             object_cow->pose);
@@ -937,6 +937,7 @@ void deg_free_copy_on_write_datablock(ID *id_cow)
 			 */
 			Object *ob_cow = (Object *)id_cow;
 			ob_cow->data = NULL;
+			ob_cow->sculpt = NULL;
 			break;
 		}
 		default:



More information about the Bf-blender-cvs mailing list