[Bf-blender-cvs] [61e5f81] master: Fix T40556: Curve Modifier does not work when used in a Background scene

Sergey Sharybin noreply at git.blender.org
Tue Jul 1 13:48:34 CEST 2014


Commit: 61e5f81e37d5365ebb9da49ea9b6f62f4110d054
Author: Sergey Sharybin
Date:   Tue Jul 1 17:46:55 2014 +0600
https://developer.blender.org/rB61e5f81e37d5365ebb9da49ea9b6f62f4110d054

Fix T40556: Curve Modifier does not work when used in a Background scene

A bit hackish solution for now, cleaner solution we'll look into as a
part of the new DAG project, when it's clear what kind of data is passed
to the evaluation callbacks.

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

M	source/blender/blenkernel/intern/depsgraph.c

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

diff --git a/source/blender/blenkernel/intern/depsgraph.c b/source/blender/blenkernel/intern/depsgraph.c
index 2157909..24b5806 100644
--- a/source/blender/blenkernel/intern/depsgraph.c
+++ b/source/blender/blenkernel/intern/depsgraph.c
@@ -3106,7 +3106,17 @@ short DAG_get_eval_flags_for_object(Scene *scene, void *object)
 		/* Happens when external render engine exports temporary objects
 		 * which are not in the DAG.
 		 */
+
 		/* TODO(sergey): Doublecheck objects with Curve Deform exports all fine. */
+
+		/* TODO(sergey): Weak but currently we can't really access proper DAG from
+		 * the modifiers stack. This is because in most cases modifier is to use
+		 * the foreground scene, but to access evaluation flags we need to know
+		 * active background scene, which we don't know.
+		 */
+		if (scene->set) {
+			return DAG_get_eval_flags_for_object(scene->set, object);
+		}
 		return 0;
 	}
 }




More information about the Bf-blender-cvs mailing list