0 votes

Hi guys, I have a problem with my navigation mesh. I am using the heightmap terrain plugin with 2k resolution, which I then scale up to 2 to double its size and thus I'm able to get a decent looking terrain that is more or less the size of a Fortnite map.

Trouble is, I can't bake a navi mesh using this terrain. There are 2 ways about getting a navi mesh:

  1. First bake the terrain itself into an array mesh, and then turn that into a navigation mesh. This generally works but the problem is, I have to downgrade the LoD to 13 when baking the mesh from the terrain, otherwise Godot will crash when starting the game. This Lod is OK for the flatter parts of the terrain but whenever it gets just slightly more hilly, the navi mesh is simply not accurate enough in those places and NPCs get stuck

  2. Bake the terrain into a mesh and bring that under the navigation mesh node, then bake the navimesh. This option allows me to play with the mesh parameters before baking (like slope, climb). The problem though is that I'm unable to bake the mesh without Godot crashing. I got it to work a few time by cranking up the 'cell size' property to 1 or above, but the mesh that bakes out of that is completely useless (not enough detail).

I also thought about exporting the heightmap and using that to recreate the terrain in Blender, and then create a navimesh there and reimport, but the heighmaps that export out of the plugin (this is the Zylann's plugin) are useless, regardless of format (they look like the grayscale is the wrong way round or something).

Does anyone have any tips? Perhaps there's something in the memory settings or something that would keep Godot from crashing when baking a more detailed mesh??

Godot version 3.2.3
in Engine by (389 points)

Please log in or register to answer this question.

Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to webmaster@godotengine.org with your username.