-
Notifications
You must be signed in to change notification settings - Fork 0
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
Navigation2D is deprecated in Godot 3.x. Need to use Navigation2DServer.map_get_path() instead #349
Comments
I believe this is related to godotengine/godot#65257 (comment) somewhat, as we had to do a bit of hacking already. We should probably wait for the updated/improved/fixed |
It is safe to remove all In current Godot 3.5+ |
Right, but what about Godot issue 65257 (mentioned above, which you've also commented on)? While I understand that it's "safe" to do what you said, does issue 65257 not potentially affect things? |
We discussed this issue 65257 among navigation devs that is why I came here from the link. In short, the old 3.4 behavior with artificial parameter position snapping will not come back in both Godot 3.5+ and Godot 4.x as part of the NavigationServer. If your 3.4 project relied on this behavior you will need to add a custom check with a project appropriated epsilon and snap the positions yourself. |
Ah, ok, thank you for the update. Then, to confirm, as in the "solution" I said we were going to use back in the original ticket, using our own |
Yes you will need your own depending on your project size / scale as default is_equal_approximate() functions epsilon might fail for you. That is one (there where many other) reason why we can't implement this automatically or with a toggleable option in the NavigationServer. There is just no "right" epsilon for this kind of checks without knowing all the project details. It also doesn't capture how the precision of float decreases as you get farther from the origin. E.g. the old behavior had plenty of bugs after certain project sizes or polygon layouts so we can't just go back. |
Perfectly fair and understandable. Thank you again! |
Describe the bug
Escoria makes big use of Navigation2D node to perform character path calculations. However, Navigation2D is deprecated in current stable version of Godot so we need to move to Navigation2DServer.map_get_path instead as advised in Navigation2D
If I'm not wrong this causes a warning in the editor's debugger.
To Reproduce
N/A
Expected behavior
After fix, the behaviour should be identical to current, but shouldn't use Navigation2D system anymore.
Screenshots
N/A
Versions
Additional context
N/A
The text was updated successfully, but these errors were encountered: