Fix glTF cubic spline track interpolation incorrectly reporting times/values size mismatch (3.4 specific)

This commit is contained in:
Mark Riedesel 2021-11-09 09:30:58 -05:00
parent 1a278249ac
commit 999bba6916

View file

@ -5770,7 +5770,7 @@ struct EditorSceneImporterGLTFInterpolate<Quat> {
template <class T>
T GLTFDocument::_interpolate_track(const Vector<float> &p_times, const Vector<T> &p_values, const float p_time, const GLTFAnimation::Interpolation p_interp) {
ERR_FAIL_COND_V(!p_values.size(), T());
if (p_times.size() != p_values.size()) {
if (p_times.size() != (p_values.size() / (p_interp == GLTFAnimation::INTERP_CUBIC_SPLINE ? 3 : 1))) {
ERR_PRINT_ONCE("The interpolated values are not corresponding to its times.");
return p_values[0];
}