diff options
author | Yaohua Xiong <xiongyaohua@gmail.com> | 2022-11-24 20:43:34 +0800 |
---|---|---|
committer | Yaohua Xiong <xiongyaohua@gmail.com> | 2022-12-05 21:22:05 +0800 |
commit | 91e9ad92f5f78dd1578df46205f028599f095357 (patch) | |
tree | f13fa7ecddc68dc33d4bac4016f77184fd483169 /scene/2d | |
parent | 8912f3e4a7c012443e941f4c6f2342c9913fa330 (diff) |
Refactor baking code for Curve2D
The main change is to caculate tangent directly from bezier curve, without going
through discretized polyline, avoiding pitfalls of discretization. A similar refacor
had been applied to Curve3D.
The test cases for Curve2D is updated, comparing floating point with is_equal_approxmiate()
instead of `==`, in order to avoid float precision problem.
Diffstat (limited to 'scene/2d')
-rw-r--r-- | scene/2d/path_2d.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/scene/2d/path_2d.cpp b/scene/2d/path_2d.cpp index b5945a4562..b68a8fb031 100644 --- a/scene/2d/path_2d.cpp +++ b/scene/2d/path_2d.cpp @@ -177,7 +177,7 @@ void PathFollow2D::_update_transform() { } if (rotates) { - Transform2D xform = c->sample_baked_with_rotation(progress, cubic, loop, lookahead); + Transform2D xform = c->sample_baked_with_rotation(progress, cubic); xform.translate_local(v_offset, h_offset); set_rotation(xform[1].angle()); set_position(xform[2]); |