private void Update(EvaluationContext context) { var previousTime = context.TimeInBars; context.TimeInBars = NewTime.GetValue(context); // Execute subtree //SubTree.DirtyFlag.Invalidate(); Result.Value = SubTree.GetValue(context); //Log.Debug($"old:{previousTime} / new:{context.TimeInBars}"); context.TimeInBars = previousTime; //SubTree.DirtyFlag.Clear(); }
private void Update(EvaluationContext context) { var previousKeyframeTime = context.LocalTime; var previousEffectTime = context.LocalFxTime; var newTime = NewTime.GetValue(context); context.LocalTime = newTime; context.LocalFxTime = newTime; // Execute subtree Result.Value = SubTree.GetValue(context); context.LocalTime = previousKeyframeTime; context.LocalFxTime = previousEffectTime; }