[Bf-blender-cvs] [a372e5e426e] master: Fix T61619: Some VSE attributes with keyframes are not sensibly evaluated when the scene is referenced as a strip from another VSE scene

Richard Antalik noreply at git.blender.org
Wed May 1 21:04:06 CEST 2019


Commit: a372e5e426e46f38a5fa08affb27f7fa726775b5
Author: Richard Antalik
Date:   Wed May 1 09:50:12 2019 -0700
Branches: master
https://developer.blender.org/rBa372e5e426e46f38a5fa08affb27f7fa726775b5

Fix T61619: Some VSE attributes with keyframes are not sensibly evaluated
when the scene is referenced as a strip from another VSE scene

Fix T49658: Evaluation / animation of f-curves does not correct
for a scene's position within another scene

Solution: Evaluate animdata before rendering scene seqbase.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D4755

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

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

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

diff --git a/source/blender/blenkernel/intern/sequencer.c b/source/blender/blenkernel/intern/sequencer.c
index f629f6a6d00..19b94977762 100644
--- a/source/blender/blenkernel/intern/sequencer.c
+++ b/source/blender/blenkernel/intern/sequencer.c
@@ -3662,6 +3662,12 @@ static ImBuf *do_render_strip_seqbase(const SeqRenderData *context,
   seqbase = BKE_sequence_seqbase_get(seq, &offset);
 
   if (seqbase && !BLI_listbase_is_empty(seqbase)) {
+
+    if (seq->flag & SEQ_SCENE_STRIPS && seq->scene) {
+      BKE_animsys_evaluate_all_animation(
+          context->bmain, context->depsgraph, seq->scene, nr + offset);
+    }
+
     meta_ibuf = seq_render_strip_stack(context,
                                        state,
                                        seqbase,
@@ -3731,11 +3737,11 @@ static ImBuf *do_render_strip_uncached(const SeqRenderData *context,
       else {
         /* scene can be NULL after deletions */
         ibuf = seq_render_scene_strip(context, seq, nr, cfra);
-
-        /* Scene strips update all animation, so we need to restore original state.*/
-        BKE_animsys_evaluate_all_animation(
-            context->bmain, context->depsgraph, context->scene, cfra);
       }
+
+      /* Scene strips update all animation, so we need to restore original state.*/
+      BKE_animsys_evaluate_all_animation(context->bmain, context->depsgraph, context->scene, cfra);
+
       break;
     }



More information about the Bf-blender-cvs mailing list