[Bf-blender-cvs] [fc61cdf142] blender2.8: Merge branch 'master' into blender2.8
Sergey Sharybin
noreply at git.blender.org
Thu Mar 16 15:42:54 CET 2017
Commit: fc61cdf1428dc74f4ef9b834de9082f910ce08e0
Author: Sergey Sharybin
Date: Thu Mar 16 15:42:49 2017 +0100
Branches: blender2.8
https://developer.blender.org/rBfc61cdf1428dc74f4ef9b834de9082f910ce08e0
Merge branch 'master' into blender2.8
===================================================================
===================================================================
diff --cc source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
index 4c84ac417e,7bcaee61fe..b6071b1075
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
@@@ -495,10 -494,21 +495,21 @@@ void DepsgraphNodeBuilder::build_object
build_particles(scene, ob);
}
- /* grease pencil */
- if (ob->gpd) {
+ /* Grease pencil. */
+ if (ob->gpd != NULL) {
build_gpencil(ob->gpd);
}
+
+ /* Object that this is a proxy for. */
+ if (ob->proxy) {
+ ob->proxy->proxy_from = ob;
- build_object(scene, base, ob->proxy);
++ build_object(scene, ob->proxy);
+ }
+
+ /* Object dupligroup. */
+ if (ob->dup_group != NULL) {
- build_group(scene, base, ob->dup_group);
++ build_group(scene, ob->dup_group);
+ }
}
void DepsgraphNodeBuilder::build_object_transform(Scene *scene, Object *ob)
diff --cc source/blender/depsgraph/intern/builder/deg_builder_nodes_scene.cc
index f4a191067c,7dd694cb57..2141f7f649
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes_scene.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes_scene.cc
@@@ -80,24 -79,10 +80,12 @@@ void DepsgraphNodeBuilder::build_scene(
}
/* scene objects */
- LINKLIST_FOREACH (Base *, base, &scene->base) {
- Object *ob = base->object;
- build_object(scene, base, ob);
+ FOREACH_SCENE_OBJECT(scene, ob)
+ {
+ /* object itself */
+ build_object(scene, ob);
-
- /* object that this is a proxy for */
- // XXX: the way that proxies work needs to be completely reviewed!
- if (ob->proxy) {
- ob->proxy->proxy_from = ob;
- build_object(scene, ob->proxy);
- }
-
- /* Object dupligroup. */
- if (ob->dup_group) {
- build_group(scene, ob->dup_group);
- }
}
+ FOREACH_SCENE_OBJECT_END
/* rigidbody */
if (scene->rigidbody_world) {
diff --cc source/blender/depsgraph/intern/builder/deg_builder_relations_scene.cc
index f0d70e3871,3bf435c37e..2e2182609d
--- a/source/blender/depsgraph/intern/builder/deg_builder_relations_scene.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_relations_scene.cc
@@@ -75,29 -74,10 +75,11 @@@ void DepsgraphRelationBuilder::build_sc
}
/* scene objects */
- LINKLIST_FOREACH (Base *, base, &scene->base) {
- Object *ob = base->object;
+ FOREACH_SCENE_OBJECT(scene, ob)
+ {
- /* object itself */
build_object(bmain, scene, ob);
-
- /* object that this is a proxy for */
- if (ob->proxy) {
- ob->proxy->proxy_from = ob;
- build_object(bmain, scene, ob->proxy);
- /* TODO(sergey): This is an inverted relation, matches old depsgraph
- * behavior and need to be investigated if it still need to be inverted.
- */
- ComponentKey ob_pose_key(&ob->id, DEPSNODE_TYPE_EVAL_POSE);
- ComponentKey proxy_pose_key(&ob->proxy->id, DEPSNODE_TYPE_EVAL_POSE);
- add_relation(ob_pose_key, proxy_pose_key, DEPSREL_TYPE_TRANSFORM, "Proxy");
- }
-
- /* Object dupligroup. */
- if (ob->dup_group) {
- build_group(bmain, scene, ob, ob->dup_group);
- }
}
+ FOREACH_SCENE_OBJECT_END
/* rigidbody */
if (scene->rigidbody_world) {
More information about the Bf-blender-cvs
mailing list