Navigation mesh not generating correctly

Hi fellow unreal users :smiley:

i just got wondered that if unreal can handle a bunch of Nav Modifiers or Nav Links which spawn during run-time.
so i have get in to the test, and make a simple blueprint actor that using ‘instanced static mesh component’ to spawn tile grid floor, then spawn random nav-modifier just above that tile (while red one is Area-Obstacle, green one is Area-Default).

but before i even try to spawn 100100 (pic is 5050), i just faced a problem. which nav mesh doesn’t generate the way i expected :confused:

and, for detailed info, i marked the size of nav bound volume by Cylinder mesh.

so as you can see in the picture, nav bound is big enough to cover most of ‘dynamically spawned 50*50 size tile grid’. and as generated nav mesh shows, i also set ‘dynamic nav mesh generation’ option thing to ‘true’.

i just don’t get it why it only generates a small bit of grid.

thanks for read, and hope all of you have a nice day :smiley:

ok so i finally find an answer.

first of all, here is a post by who had same problem like me. [4.6.1] - Navmesh not generating over instanced static meshes - Asset Creation - Unreal Engine Forums

seems like there is some problem about “navigation mesh generation system”. i Guess it is possible that ‘Add instance’ in instanced static mesh component doesn’t tell Navigation Bound Volume to regenerate navigation mesh. So, you need to tell Navigation Bound Volume to recast nav mesh.

So long story short, i discovered that if you press F8 during play you can edit map like edit mode. so i use that, move my instanced static mesh component a little then that makes recasting work begin, and i have got a full navigation mesh.

there is some ways to make actor to tell nav system to recast nav mesh. but i couldn’t find any way to rebuild nav mesh only by blueprint.

So, Long story short, you need to trigger engine to rebuild navigation mesh by moving an actor or execute some functions on C++.