Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PathFollow with RotationMode = Oriented is wrong at unit_offset = 1.0 #50973

Closed
MikeFrom opened this issue Jul 28, 2021 · 5 comments · Fixed by #50986
Closed

PathFollow with RotationMode = Oriented is wrong at unit_offset = 1.0 #50973

MikeFrom opened this issue Jul 28, 2021 · 5 comments · Fixed by #50986

Comments

@MikeFrom
Copy link

MikeFrom commented Jul 28, 2021

Godot version

3.3.2.stable

System information

Windows 10

Issue description

This seams to work, from unit_offset 0.0 to 0.999, the z-axis of the PathFollow is aligned to the Path correctly. But at unit_offset 1.0 suddenly the x-axis is aligned to the path. This seams like a bug.

Steps to reproduce

Play the Project: At unit_offset = 1 the rotation is wrong.

PathFollow_Bug_Example

Minimal reproduction project

Here a simple Godot 3.3.2.stable project, which shows the bug:

Godot_3_3_2_stable_PathFollow_Bug_Example.zip

@MikeFrom
Copy link
Author

Another note: When you switch rotation_mode to Y, XY, or XYZ, the rotation works for the first pass. But when you repeat the PathFollow movement, the rotation is always added, and is also buggy. You can try this with my project and switching e.g. to XYZ.

PathFollow is so essential and important, that I hope you fix first PathFollow, before you add some fancy Godot 4.0 features. Thank you.

@Calinou
Copy link
Member

Calinou commented Jul 28, 2021

PathFollow is so essential and important, that I hope you fix first PathFollow, before you add some fancy Godot 4.0 features. Thank you.

Bugs in existing nodes are fixed by contributors on a best-effort basis. There are many other bugs in PathFollow right now, and few contributors are knowledgeable with the Path/PathFollow code (including me).

The PathFollow3D code is here in master: https://github.com/godotengine/godot/blob/master/scene/3d/path_3d.cpp
And in 3.x: https://github.com/godotengine/godot/blob/3.x/scene/3d/path.cpp

@MikeFrom
Copy link
Author

I would like to help, but I am not the C++, and Bezier expert. Can I donate/vote for a working PathFollower?

I have done some tests with the Rotation modes of PathFollow. They seam so buggy (for years?), that noone can use them successfully.

I think I have to write my own rotation/tangent code for curves, started here:
https://godotengine.org/qa/111365/curve3d-how-to-get-the-direction-at-a-given-point

@Calinou
Copy link
Member

Calinou commented Jul 28, 2021

Can I donate/vote for a working PathFollower?

Due to how Godot's development works, there is no way to donate or vote for specific features to be fixed. Nothing prevents you from paying a third-party developer to look into fixing the feature, but we can't be held responsible for anything bad happening due to this.

@MikeFrom
Copy link
Author

MikeFrom commented Aug 3, 2021

Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants