VSE: Fix animation versioning for bezier F-curves
`seq_convert_transform_animation()` converted only keyframed value, but when bezier interpolation is used, posotion of handles was unchanged. This caused significant difference in animation. I have checked only linear interpolation when testing versioning originally.
This commit is contained in:
parent
ffacce5be4
commit
9f34f2b20d
|
@ -113,7 +113,9 @@ static void seq_convert_transform_animation(const Scene *scene,
|
|||
BezTriple *bezt = fcu->bezt;
|
||||
for (int i = 0; i < fcu->totvert; i++, bezt++) {
|
||||
/* Same math as with old_image_center_*, but simplified. */
|
||||
bezt->vec[0][1] = image_size / 2 + bezt->vec[0][1] - scene->r.xsch / 2;
|
||||
bezt->vec[1][1] = image_size / 2 + bezt->vec[1][1] - scene->r.xsch / 2;
|
||||
bezt->vec[2][1] = image_size / 2 + bezt->vec[2][1] - scene->r.xsch / 2;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -250,7 +252,9 @@ static void seq_convert_transform_animation_2(const Scene *scene,
|
|||
BezTriple *bezt = fcu->bezt;
|
||||
for (int i = 0; i < fcu->totvert; i++, bezt++) {
|
||||
/* Same math as with old_image_center_*, but simplified. */
|
||||
bezt->vec[0][1] *= scale_to_fit_factor;
|
||||
bezt->vec[1][1] *= scale_to_fit_factor;
|
||||
bezt->vec[2][1] *= scale_to_fit_factor;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue