-
-
Notifications
You must be signed in to change notification settings - Fork 21.1k
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
Add more detailed Navigation Debug Visualization #62601
Conversation
e2d27f1
to
e9b49eb
Compare
FINALLY!!! (I did drop the navmesh approach for my racer mostly due to how finicky it was to debug without a real visualization) |
2f6b7f1
to
9bd93e2
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks pretty good to me.
Maybe @AndreaCatania @Scony @lawnjelly want to have a closer look too :)
efc4283
to
e09e3a7
Compare
e09e3a7
to
0aae704
Compare
- Adds more customization options to ProjectSettings. - Displays navregion edge connections and navigation polygon edges in editor and at runtime. - Majority of debug code moved from SceneTree to NavigationServer. - Removes the irritating debug MeshInstance child node from NavigationRegion3D and replaces it with direct RenderingServer API.
0aae704
to
c394ea5
Compare
Thanks! |
I'm confused by this change, is there no way to turn this off? Disabling gizmos doesn't do it, and I see nothing in the settings. And the old NavigationRegion3D gizmo still exists, is there are need for both? |
yeah this seems to be borked... if you have a nav mesh in the scene it's always on even on build. |
That it is always turned on in debug builds was an oversight from testing, it should only show in the Editor if the Gizmo is turned visible or when "Visible Navigation" is enabled in test runs like the old debug did. PR #63708 should fix this. The individual settings are in ProjectSettings -> Debug -> Shapes. I will remove the old leftovers e.g. debug mesh with another pr as I couldn't remove it immediately without breaking other builds while this pr was not merged. @jgillich |
Implements proposals #4507 as far as possible for now.
Customization options in ProjectSettings
Navigationmesh polygons are now displayed with a line mesh so it is easier to spot suboptimal navigation layouts or sources of pathfinding problems. Each face has the option to be displayed in a slightly different, randomized color which helps when level geometry is placed on top the navigation mesh to spot where large polygons start and end.
The colors for faces and edges of the navigation mesh or for edge connections are now all separated options. Edges and connections now also have
xray
option to disable depth test.The old settings
Geometry Color
andDisabled Geometry Color
are still available for now as they are still used by some 2D features that I did not want to touch rightnow e.g. TileMaps.Navregion edge connections in editor and at runtime
This displays the edge connections between two different region navigation meshes so users can now see immediatly if they are connected or withing distance of the
edge_connection_margin
. In order to get this information the NavigationServer must run.