You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm curious if Oxidized Navigation supports the concept of navigation links. In my project, I have scenarios where agents need to traverse between disconnected navigation meshes. For example:
Two platforms with a gap in between, where the AI agent needs to jump across.
One platform directly overhead, where the AI agent needs to climb a ladder.
These scenarios require navigation links to enable agents to move between different areas. I know that both Godot and Unreal, which implement Recast, support this feature. However, I haven't seen anything in the Oxidized Navigation code or documentation that suggests how to achieve this.
Navigation Links aren't a feature of Recast but something Unreal & Godot have appended to the nav-mesh data.
It makes sense for Oxidized Navigation to support them but I don't have an immediate solution for implementing them.
The following is me spitballing an implementation, it's not a guaranteed one.
It would be possible to add links as EdgeConnections with a u8 of 'metadata' to tell if the connection is a Link (1 bit) + a link type (the 7 remaining bits). You'd get 128 "link types" that you could handle as you see fit.
Or a separate EdgeConnection variant for links and then store the links separately in NavMeshTile. Then you could fit much more metadata and save the link entities for when you are moving.
Limiting factors:
Async nature means you can't access the Link entities while pathfinding.
Efficient cache usage is important for pathfinding.
I'm curious if Oxidized Navigation supports the concept of navigation links. In my project, I have scenarios where agents need to traverse between disconnected navigation meshes. For example:
These scenarios require navigation links to enable agents to move between different areas. I know that both Godot and Unreal, which implement Recast, support this feature. However, I haven't seen anything in the Oxidized Navigation code or documentation that suggests how to achieve this.
Here is a reference to Godot's implementation of navigation links: Godot Navigation Links Documentation.
If this functionality is not currently implemented in Oxidized Navigation, what would a potential solution look like?
The text was updated successfully, but these errors were encountered: