Skip to content

Engine: Add runtime navmesh generation#9919

Merged
zach2good merged 1 commit into
basefrom
navmesh_building
May 3, 2026
Merged

Engine: Add runtime navmesh generation#9919
zach2good merged 1 commit into
basefrom
navmesh_building

Conversation

@zach2good
Copy link
Copy Markdown
Contributor

@zach2good zach2good commented May 3, 2026

I affirm:

  • I understand that if I do not agree to the following points by completing the checkboxes my PR will be ignored.
  • I understand I should leave resolving conversations to the LandSandBoat team so that reviewers won't miss what was said.
  • I have read and understood the Contributing Guide and the Code of Conduct.
  • I have tested my code and the things my code has changed since the last commit in the PR and will test after any later commits.

What does this pull request do?

Given that Ino has done god's work with ximeshes and xi-visualizer, sruon added ximesh loading to LSB, and the RecastDemo shows you how to generate nav data from 3D point/tri data... why don't we just make xi_map capable of generating it's own navmeshes?

By default, the system remains as it has always been: if the file is in /navmeshes/, use it. If it isn't there, it'll use the corresponding ximeshes entry and generate a new navmesh file using the defaults we used in the xiNavmeshes repo.

The defaults are the same as before, so this doesn't FIX any foibles with navmeshes yet

But, this opens up the doors to test and experiment and actually know what the different numbers do, and try to capture test cases and get things like Garlaige Citadel or the high walkways in Sky to behave better.

THIS ALSO DOESN'T FIX PATHFINDING - Both navmesh and pathfinding are borked, and both need to be working for a smooth experience.

image

Tracy

I did a little experimenting of dropping cellSize and cellHeight down, and it does seem to give a 5% boost in performance, at the cost of doubling (or more) the size and memory footprint of the navmesh. Interesting stuff.

@zach2good zach2good force-pushed the navmesh_building branch from 1d031ee to b02324e Compare May 3, 2026 12:44
Co-authored-by: InoUno <inoiown@gmail.com>
Co-authored-by: sruon <sruon@users.noreply.github.com>
@zach2good zach2good force-pushed the navmesh_building branch from b02324e to 6d6250a Compare May 3, 2026 12:53
@zach2good zach2good merged commit f6f5ea7 into base May 3, 2026
10 checks passed
@zach2good zach2good deleted the navmesh_building branch May 3, 2026 15:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants