NavMesh Settings

I’ve been playing around with project settings recently, due to nav meshes coming in at different speeds, and was wondering what could possibly be changing in regards to the navmesh that would make it come in when the game starts much faster when the project settings go from Desktop → Mobile.

Running on a tablet with desktop/max quality settings, our navmesh can take something like 90 seconds to come in, but when on Mobile/scalable settings, it comes in almost instantly. Looking thru the ini’s I see these settings get changed:

r.MobileHDR=False						    ->	True
r.SeparateTranslucency=False				->	True
r.DefaultFeature.Bloom=False				->	True
r.DefaultFeature.AmbientOcclusion=False		->	True
r.DefaultFeature.LensFlare=False			->	True
bUseSplitscreen=False						->	True
TargetedHardwareClass=Mobile 				->	Desktop
AppliedTargetedHardwareClass=Mobile 		->	Desktop
DefaultGraphicsPerformance=Scalable			->	Maximum
AppliedDefaultGraphicsPerformance=Scalable	->	Maximum

Are these setting changes just freeing up a lot of processing power for the navmesh to compute faster? I’m not even sure if that’s all computed on the CPU or GPU, so I’m mainly just curious what’s going on under the hood.

A final thought: is there possibly some background priority task system and the navmesh is just low in priority on the list of things to do?

Thanks!

Navmesh generation is fully CPU-bound, so the more work your CPU has to perform the later you’ll get your navmesh fully generated. Navmesh generation is using UE4’s generic asynchronous tasks async navmesh generation so it doesn’t get any priority treatment.

BTW, do you really need to generate navmesh on mobile devices? It’s pretty computation-heavy and will suck device’s battery like it’s nobody’s business. Let me know if you need me to tell you how to setup static navmesh.

Cheers,

–mieszko

I sadly do need to generate nav meshes for mobile, though battery life is not an issue at all. I’m fine with the experience lasting 3 minutes and then dying for all I care.

I would love to hear more about static nav mesh generation and/or somehow getting generation higher up in priority, as I sure doing it synchronously is out of the question. Really, the more information on the topic the better! :slight_smile:

Tune in for upcoming AI support stream where I’ll be talking about navmesh generation tweaking, amongst other things :slight_smile:

As an addendum to this, after making the tile size uu much smaller, my navmesh is obviously building out in chunks like flood fill algorithm. Is there any way to choose the point at which the navmesh builds out from? Or some weird way to take the nav mesh bounds volume and scale it up over time from a location, or something?

Thanks!

Unfortunately there are no means of controlling these aspects of navmesh generation currently. But we have some in our backlog.