diff --git a/scene/resources/animation.cpp b/scene/resources/animation.cpp index 383f3f5d4e5..3156e12c505 100644 --- a/scene/resources/animation.cpp +++ b/scene/resources/animation.cpp @@ -1815,7 +1815,7 @@ Variant Animation::value_track_interpolate(int p_track, float p_time) const { bool ok = false; - Variant res = _interpolate(vt->values, p_time, vt->update_mode == UPDATE_CONTINUOUS ? vt->interpolation : INTERPOLATION_NEAREST, vt->loop_wrap, &ok); + Variant res = _interpolate(vt->values, p_time, (vt->update_mode == UPDATE_CONTINUOUS || vt->update_mode == UPDATE_CAPTURE) ? vt->interpolation : INTERPOLATION_NEAREST, vt->loop_wrap, &ok); if (ok) {