Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2016-09-29 16:00:03 +0300
committerSergey Sharybin <sergey.vfx@gmail.com>2016-09-29 16:00:03 +0300
commit57a2015f5674ac237fd35f5ec182362e7ff6d79e (patch)
treee22b1a4a0abb0c178d759331c2d4a6205d71dcc2 /source
parent31ebbe40a08ac48ceb4df4f8d9008c038d9ccd94 (diff)
Adopt referenced scene in the context when evaluating sequences within a Scene Strip
This change makes it so that when the sequences within a Scene strip are evaluated, they use the Scene that they come from as the context as opposed the Scene that the Scene strip is in. This is necessary, for example, in the case of the MulticamSelector where it needs to reference strips in the original Scene as opposed to the Scene where the Scene strip is located. Patch by @Matt (HyperSphere), thanks!
Diffstat (limited to 'source')
-rw-r--r--source/blender/blenkernel/intern/sequencer.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/sequencer.c b/source/blender/blenkernel/intern/sequencer.c
index c240aa27343..65d751a8a72 100644
--- a/source/blender/blenkernel/intern/sequencer.c
+++ b/source/blender/blenkernel/intern/sequencer.c
@@ -3447,7 +3447,13 @@ static ImBuf *do_render_strip_uncached(
state->scene_parents = &scene_parent;
/* end check */
- ibuf = do_render_strip_seqbase(context, state, seq, nr, use_preprocess);
+ /* Use the Scene Seq's scene for the context when rendering the scene's sequences
+ * (necessary for Multicam Selector among others).
+ */
+ SeqRenderData local_context = *context;
+ local_context.scene = seq->scene;
+
+ ibuf = do_render_strip_seqbase(&local_context, state, seq, nr, use_preprocess);
/* step back in the list */
state->scene_parents = state->scene_parents->next;