[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