[Bf-blender-cvs] [d490065] depsgraph_refactor: Merge branch 'master' into depsgraph_refactor

Sergey Sharybin noreply at git.blender.org
Mon Mar 23 12:18:20 CET 2015


Commit: d490065ea0e18b49fbd4b5e01d41a6dc819cf62e
Author: Sergey Sharybin
Date:   Mon Mar 23 16:17:30 2015 +0500
Branches: depsgraph_refactor
https://developer.blender.org/rBd490065ea0e18b49fbd4b5e01d41a6dc819cf62e

Merge branch 'master' into depsgraph_refactor

Conflicts:
	source/blender/editors/object/object_constraint.c
	source/blender/render/intern/source/pipeline.c

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



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

diff --cc source/blender/editors/object/object_constraint.c
index 1653a7f,f1b349d..7ea1cc8
--- a/source/blender/editors/object/object_constraint.c
+++ b/source/blender/editors/object/object_constraint.c
@@@ -1161,20 -1194,49 +1194,50 @@@ void ED_object_constraint_update(Objec
  		DAG_id_tag_update(&ob->id, OB_RECALC_OB);
  }
  
 -static void object_pose_tag_update(Object *ob)
++static void object_pose_tag_update(Main *bmain, Object *ob)
+ {
++	BKE_pose_tag_recalc(bmain, ob->pose);    /* Checks & sort pose channels. */
+ 	ob->pose->flag |= POSE_RECALC;    /* Checks & sort pose channels. */
+ 	if (ob->proxy && ob->adt) {
+ 		/* We need to make use of ugly POSE_ANIMATION_WORKAROUND here too, else anim data are not reloaded
+ 		 * after calling `BKE_pose_rebuild()`, which causes T43872.
+ 		 * Note that this is a bit wide here, since we cannot be sure whether there are some locked proxy bones
+ 		 * or not...
+ 		 * XXX Temp hack until new depsgraph hopefully solves this. */
+ 		ob->adt->recalc |= ADT_RECALC_ANIM;
+ 	}
+ }
+ 
  void ED_object_constraint_dependency_update(Main *bmain, Object *ob)
  {
  	ED_object_constraint_update(ob);
  
  	if (ob->pose) {
- 		BKE_pose_tag_recalc(bmain, ob->pose);    /* Checks & sort pose channels. */
- 		if (ob->proxy && ob->adt) {
- 			/* We need to make use of ugly POSE_ANIMATION_WORKAROUND here too, else anim data are not reloaded
- 			 * after calling `BKE_pose_rebuild()`, which causes T43872.
- 			 * Note that this is a bit wide here, since we cannot be sure whether there are some locked proxy bones
- 			 * or not...
- 			 * XXX Temp hack until new depsgraph hopefully solves this. */
- 			ob->adt->recalc |= ADT_RECALC_ANIM;
- 		}
 -		object_pose_tag_update(ob);
++		object_pose_tag_update(bmain, ob);
+ 	}
+ 	DAG_relations_tag_update(bmain);
+ }
+ 
+ void ED_object_constraint_tag_update(Object *ob, bConstraint *con)
+ {
+ 	if (ob->pose) {
+ 		BKE_pose_tag_update_constraint_flags(ob->pose);
+ 	}
+ 
+ 	object_test_constraint(ob, con);
+ 
+ 	if (ob->type == OB_ARMATURE)
+ 		DAG_id_tag_update(&ob->id, OB_RECALC_DATA | OB_RECALC_OB);
+ 	else
+ 		DAG_id_tag_update(&ob->id, OB_RECALC_OB);
+ }
+ 
+ void ED_object_constraint_dependency_tag_update(Main *bmain, Object *ob, bConstraint *con)
+ {
+ 	ED_object_constraint_tag_update(ob, con);
+ 
+ 	if (ob->pose) {
 -		object_pose_tag_update(ob);
++		object_pose_tag_update(bmain, ob);
  	}
  	DAG_relations_tag_update(bmain);
  }
diff --cc source/blender/render/intern/source/pipeline.c
index 2b58790,b397db7..6a86c84
--- a/source/blender/render/intern/source/pipeline.c
+++ b/source/blender/render/intern/source/pipeline.c
@@@ -387,7 -385,9 +387,8 @@@ Render *RE_NewRender(const char *name
  		BLI_addtail(&RenderGlobal.renderlist, re);
  		BLI_strncpy(re->name, name, RE_MAXNAME);
  		BLI_rw_mutex_init(&re->resultmutex);
+ 		BLI_rw_mutex_init(&re->partsmutex);
 -		re->eval_ctx = MEM_callocN(sizeof(EvaluationContext), "re->eval_ctx");
 -		re->eval_ctx->mode = DAG_EVAL_RENDER;
 +		re->eval_ctx = DEG_evaluation_context_new(DAG_EVAL_RENDER);
  	}
  	
  	RE_InitRenderCB(re);




More information about the Bf-blender-cvs mailing list