[Bf-blender-cvs] [2694c1fc60b] blender2.8: Merge branch 'master' into blender2.8

Sergey Sharybin noreply at git.blender.org
Thu Feb 22 16:32:51 CET 2018


Commit: 2694c1fc60b9a7ee473722e4790d385cc747463a
Author: Sergey Sharybin
Date:   Thu Feb 22 16:31:59 2018 +0100
Branches: blender2.8
https://developer.blender.org/rB2694c1fc60b9a7ee473722e4790d385cc747463a

Merge branch 'master' into blender2.8

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



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

diff --cc source/blender/depsgraph/intern/builder/deg_builder_nodes_rig.cc
index 0892a48caaf,73bbbcfa0b3..aabcbd1c6d4
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes_rig.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes_rig.cc
@@@ -134,38 -114,19 +134,38 @@@ void DepsgraphNodeBuilder::build_spline
  /* Pose/Armature Bones Graph */
  void DepsgraphNodeBuilder::build_rig(Object *object)
  {
 -	bArmature *arm = (bArmature *)object->data;
 +	bArmature *armature = (bArmature *)object->data;
 +	Scene *scene_cow;
 +	Object *object_cow;
 +	bArmature *armature_cow;
 +	if (DEG_depsgraph_use_copy_on_write()) {
 +		/* NOTE: We need to expand both object and armature, so this way we can
 +		 * safely create object level pose.
 +		 */
 +		scene_cow = get_cow_datablock(scene_);
 +		object_cow = expand_cow_datablock(object);
 +		armature_cow = expand_cow_datablock(armature);
 +	}
 +	else {
 +		scene_cow = scene_;
 +		object_cow = object;
 +		armature_cow = armature;
 +	}
  	OperationDepsNode *op_node;
  
 -	/* animation and/or drivers linking posebones to base-armature used to define them
 +	/* Animation and/or drivers linking posebones to base-armature used to
 +	 * define them.
 +	 *
  	 * NOTE: AnimData here is really used to control animated deform properties,
 -	 *       which ideally should be able to be unique across different instances.
 -	 *       Eventually, we need some type of proxy/isolation mechanism in-between here
 -	 *       to ensure that we can use same rig multiple times in same scene...
 +	 *       which ideally should be able to be unique across different
 +	 *       instances. Eventually, we need some type of proxy/isolation
 +	 *       mechanism in-between here to ensure that we can use same rig
 +	 *       multiple times in same scene.
  	 */
- 	if (built_map_.checkIsBuilt(armature)) {
 -	if (!built_map_.checkIsBuilt(arm)) {
 -		build_animdata(&arm->id);
++	if (!built_map_.checkIsBuilt(armature)) {
 +		build_animdata(&armature->id);
  		/* Make sure pose is up-to-date with armature updates. */
 -		add_operation_node(&arm->id,
 +		add_operation_node(&armature->id,
  		                   DEG_NODE_TYPE_PARAMETERS,
  		                   NULL,
  		                   DEG_OPCODE_PLACEHOLDER,



More information about the Bf-blender-cvs mailing list