-
-
Notifications
You must be signed in to change notification settings - Fork 21.6k
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
Support baking gridmap navmesh. #31454
Support baking gridmap navmesh. #31454
Conversation
04b87ff
to
82acd43
Compare
Fixed failing travis check. |
Very excited for this. Should also resolve the duplicate #18837
|
Just wondering, wouldnt it be cleaner if navigation could query collision meshes from |
There's talk of overhauling how Navigation works such as in #15110, however Reduz is likely busy with the Vulkan backend work. It might be worth making a new issue to discuss what changes/additions should be made to it for 3.2 or maybe 4.0. Currently I am unaware of a single place to discuss this sort of stuff |
Querying PhysicsServer would be probably better, but you would still need to differentiate meshes you want for navigations and one you don't. So somewhat like #15110. Which is somewhat similar (at least in concept) to how Unity deals with it. |
@lliberadzki yeah that's why I suggested there could be an API for that as well |
Some comments about Navigation from @reduz on IRC:
In the meantime, this PR seems good, it's not a lot of code and implements a useful feature. |
Thanks! |
Thanks a lot |
How do you set which tiles to navigate and which ones are obstacles? And which floor is the reference? |
This just passes all tiles geometry to recastnavigation baking process. This means that whatever is not reachable by agent (as for example in climbing distance, or not wide enough for agent radius) is an obstacle. |
Normally it's necessary to add navigation meshes under every tile nodes. One example is described in #17118. Its hard to do this inside the editor for more complex 3d shapes as there is not 3d navmesh editor included.
With this commit it would be possible to omit generating navmeshes for each tile and generate navmesh for gridmap as a whole. This would also make it possible to place obstacles or props with gridmap itself. Look at the following gif for example:
I don't know if this will be useful but i added it for personal project and thought i would share. Along with #22767 it would allow navigating procedurally generated gridmaps. What do you guys think?
Bugsquad edit: Fixes #18837.