Streaming Level Tiles with Nav Mesh
I have a problem. I have created a series of sublevels I spawn procedurally at runtime to create a large grid world. These sublevels are modular, and are instanced many times at different positions and rotations. While doing this I assumed I could create a Nav Mesh Volume per sublevel and precalculate the Nav Mesh of each tile - however this does not seem to be working.
I am thinking as a fallback I could load levels in dynamically so it doesn't have to calculate the nav mesh of the entire world, however I think this is not even viable as I imagine there will be a huge frame drop when a new level is loaded in.
Hoping someone has answers, I would be super grateful.
asked Oct 08 '18 at 07:35 PM in Blueprint Scripting
There is another way. You could use the Nav Invoker component on your AI.
This requires a few changes though, and not documented very well.
First you will need to change some settings inside your project settings.
Then you will need to add the nav invoker component to your AI Pawn, there is some tile distance settings you can play with inside the component if you need. Defaults are good start points though.
You will also need to put a nav mesh bounds volume over your entire world (Do not worry, it will not get calculated.)
Now if you place an AI with the nav invoker component into the world you will see the nav mesh only gets calculated a certain radius around the AI Pawn. Move the AI around and you can see it update its nav mesh by calculating more tiles and removing old tiles depending on the nav invoker component settings.
Hope this helps!
answered Oct 12 '18 at 11:40 AM
Follow this question
Once you sign in you will be able to subscribe for any updates here