As you can see from the screenshot, I have a cave with many bridges. Bridges have different planks but all have a simple box (block all) collision around them, I have also tried changing them to convex.
I originally put a large nav mesh bounds volume around the entire area I want the ai to move and have put a smaller one around a single mesh for the purpose of this screenshot.
The settings for Nav Mesh and Nav system in the project settings are largely default. You can see my cell size and height etc, they are default.
I have tried rebuilding by nav path and have restarted UE4 which seemed to work for others but you can see that it is still patchy and not covering the entire mesh.
Use one navmesh bounds volume for the whole level and make sure all your static meshes and static mesh actors are marked as navigation relevant (the Has Navigation Data and Can Ever Affect Navigation flags respectively). Also make sure the default navmesh generation agent radius makes sense for your game’s scale.
Okay so i got it working. Adding a navigation mesh for the first time was a little overwhelming.
I lowered the cell size, and decreased the radius of my smallest agent slightly, This produced much more nav mesh but the nav mesh was still patchy and not always connected where it should be.
I built a lot of bridges from a spline. I had remove the collision and add a convex collision ensuring that the accuracy was 0 and the max hull verts was 32. This allowed the collision to cover all the gaps between the planks. Some planks were widely spaced and the nav mesh had trouble connecting it. I also made sure that the collision for the bridge was set as simple as convex.
I have supports and other props that break up the collision on my bridges. I was able to combat this by remove the collision and adding a convex collision ensuring the accuracy was 1 and max hull verts was 32. I again used simple as convex and made sure that Can Ever Affect Navigation was turned off and has navigation data was turned off.
This seemed to sort it for me and hopefully helps someone else.
I had similar problem that navmesh doesn’t generate on some of the floor meshes, solved this problem by check and then uncheck “Fill Collision Underneath for Navmesh” for the floor meshes in the map, then the navemesh appeared on top of these meshes.
just for any future visitor, your visible meshes do not have to be responsible for your navigation collision! It’s advisable in many cases to create a custom mesh in the shape of the bridge that will tell the navi system where npcs could walk instead of bridge pieces.
In the case of your bridge, create a hidden/transparent mesh who’s surface “aligns” to your bridge and make that the navi collision instead of the bridge pieces. Remove the collision for your visible bridge pieces. In case you have something like a hanging bridge that moves around while walking over it this solution might not work, but if the bridge is static, I recommend creating this custom collision mesh.
or of course as you did, make a convex collision over the full bridge, that would of course work too.