[Bf-blender-cvs] [0c2809d] depsgraph_refactor: Preparing object evaluation code for getting split off from ubereval into smaller chunks

Joshua Leung noreply at git.blender.org
Thu Dec 18 05:09:24 CET 2014


Commit: 0c2809d2b67d3078aae595cfaa14e4711a62f5ac
Author: Joshua Leung
Date:   Thu Dec 18 15:50:20 2014 +1300
Branches: depsgraph_refactor
https://developer.blender.org/rB0c2809d2b67d3078aae595cfaa14e4711a62f5ac

Preparing object evaluation code for getting split off from ubereval into smaller chunks

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

M	source/blender/blenkernel/BKE_object.h
M	source/blender/blenkernel/intern/object_update.c
M	source/blender/depsgraph/intern/depsgraph_build_nodes.cpp
M	source/blender/depsgraph/intern/depsgraph_type_defines.cpp
M	source/blender/depsgraph/intern/stubs.h

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

diff --git a/source/blender/blenkernel/BKE_object.h b/source/blender/blenkernel/BKE_object.h
index c7e18e1..85cfe1e 100644
--- a/source/blender/blenkernel/BKE_object.h
+++ b/source/blender/blenkernel/BKE_object.h
@@ -175,9 +175,17 @@ void BKE_object_tfm_protected_restore(struct Object *ob,
 void BKE_object_eval_local_transform(struct EvaluationContext *eval_ctx,
                                      struct Scene *scene,
                                      struct Object *ob);
+void BKE_object_eval_parent(struct EvaluationContext *eval_ctx,
+                            struct Scene *scene,
+                            struct Object *ob);
 void BKE_object_eval_constraints(struct EvaluationContext *eval_ctx,
                                  struct Scene *scene,
                                  struct Object *ob);
+
+/* (placeholder helpers for granular object transform updates) */
+void BKE_object_solve_parenting(struct Scene *scene, struct Object *ob, struct Object *par, float obmat[4][4], float slowmat[4][4],
+                                float r_originmat[3][3], const bool set_origin);
+
 void BKE_object_eval_modifier(struct EvaluationContext *eval_ctx,
                               struct Scene *scene,
                               struct Object *ob,
diff --git a/source/blender/blenkernel/intern/object_update.c b/source/blender/blenkernel/intern/object_update.c
index 64a8d28..4b2d171 100644
--- a/source/blender/blenkernel/intern/object_update.c
+++ b/source/blender/blenkernel/intern/object_update.c
@@ -71,6 +71,15 @@ void BKE_object_eval_local_transform(EvaluationContext *eval_ctx,
 	(void) scene;  /* Ignored. */
 }
 
+void BKE_object_eval_parent(EvaluationContext *eval_ctx, Scene *scene, Object *ob)
+{
+	PRINT("%s on %s\n", __func__, ob->id.name);
+
+	(void) eval_ctx;  /* Ignored. */
+	(void) scene;  /* Ignored. */
+	(void) ob; /* Ignored. */
+}
+
 void BKE_object_eval_constraints(EvaluationContext *eval_ctx,
                                  Scene *scene,
                                  Object *ob)
diff --git a/source/blender/depsgraph/intern/depsgraph_build_nodes.cpp b/source/blender/depsgraph/intern/depsgraph_build_nodes.cpp
index cf9a583..5b07312 100644
--- a/source/blender/depsgraph/intern/depsgraph_build_nodes.cpp
+++ b/source/blender/depsgraph/intern/depsgraph_build_nodes.cpp
@@ -282,7 +282,7 @@ void DepsgraphNodeBuilder::build_object_transform(Scene *scene, Object *ob)
 	/* object parent */
 	if (ob->parent) {
 		add_operation_node(&ob->id, DEPSNODE_TYPE_TRANSFORM,
-		                   DEPSOP_TYPE_EXEC, function_bind(BKE_object_eval_parent, _1, ob),
+		                   DEPSOP_TYPE_EXEC, function_bind(BKE_object_eval_parent, _1, scene, ob),
 		                   DEG_OPCODE_TRANSFORM_PARENT);
 	}
 	
diff --git a/source/blender/depsgraph/intern/depsgraph_type_defines.cpp b/source/blender/depsgraph/intern/depsgraph_type_defines.cpp
index 1e43a1a..01060fc 100644
--- a/source/blender/depsgraph/intern/depsgraph_type_defines.cpp
+++ b/source/blender/depsgraph/intern/depsgraph_type_defines.cpp
@@ -256,8 +256,6 @@ void BKE_rigidbody_rebuild_sim(EvaluationContext *eval_ctx, Scene *scene) {}
 void BKE_rigidbody_eval_simulation(EvaluationContext *eval_ctx, Scene *scene) {}
 void BKE_rigidbody_object_sync_transforms(EvaluationContext *eval_ctx, Scene *scene, Object *ob) {}
 
-void BKE_object_eval_parent(EvaluationContext *eval_ctx, Object *ob) {}
-
 void BKE_mesh_eval_geometry(EvaluationContext *eval_ctx, Mesh *mesh) {}
 void BKE_mball_eval_geometry(EvaluationContext *eval_ctx, MetaBall *mball) {}
 void BKE_curve_eval_geometry(EvaluationContext *eval_ctx, Curve *curve) {}
diff --git a/source/blender/depsgraph/intern/stubs.h b/source/blender/depsgraph/intern/stubs.h
index d87db2b..626d458 100644
--- a/source/blender/depsgraph/intern/stubs.h
+++ b/source/blender/depsgraph/intern/stubs.h
@@ -55,8 +55,6 @@ void BKE_rigidbody_rebuild_sim(struct EvaluationContext *eval_ctx, Scene *scene)
 void BKE_rigidbody_eval_simulation(struct EvaluationContext *eval_ctx, Scene *scene); // BKE_rigidbody_do_simulation
 void BKE_rigidbody_object_sync_transforms(struct EvaluationContext *eval_ctx, Scene *scene, Object *ob); // BKE_rigidbody_sync_transforms
 
-void BKE_object_eval_parent(struct EvaluationContext *eval_ctx, Object *ob);
-
 void BKE_mesh_eval_geometry(struct EvaluationContext *eval_ctx, Mesh *mesh);  // wrapper around makeDerivedMesh() - which gets BMesh, etc. data...
 void BKE_mball_eval_geometry(struct EvaluationContext *eval_ctx, MetaBall *mball); // BKE_displist_make_mball
 void BKE_curve_eval_geometry(struct EvaluationContext *eval_ctx, Curve *curve); // BKE_displist_make_curveTypes




More information about the Bf-blender-cvs mailing list