From 61e5f81e37d5365ebb9da49ea9b6f62f4110d054 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Tue, 1 Jul 2014 17:46:55 +0600 Subject: 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. --- source/blender/blenkernel/intern/depsgraph.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'source') diff --git a/source/blender/blenkernel/intern/depsgraph.c b/source/blender/blenkernel/intern/depsgraph.c index 21579098266..24b580672d1 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; } } -- cgit v1.2.3