Is It Possible To Generate NavMesh Areas from Terrain Textures?

I’m just in the senario where I don’t want sea creatures (that spawn off an ocean terrain texture via Crux) to come out of the water and chase the player on land. I’ve been searching for an answer but i’m unsure if there are any solutions for this.

Any help would be much appreciated, thanks!

I thought i would share my success with a method i came up with. it works for me but it might not work for you.

alt text

what ive done is duplicated my terrain data in my assets, applied it to a new terrain. This way i have a clone of my original terrain.

alt text

In the scene i have 2 terrains stacked right on top of one another. on the terrain i want my “path” to be, i raise it up slightly above the original terrain.

alt text

alt text

after marking the “path” terrain to the correct navigation area i bake. (remember to make the cost of your “path” area cheaper than the original terrain).

alt text

Bake and its good to go. Just remember to turn off your “path” terrain and paint some paths on your original terrain. Semi-hack way to achieve this, but it works
alt text

Not possible, but possible with a hack :slight_smile:

get a mesh of your terrain via:


In any 3d modeling package, delete any polygons which would have water texture.

Import the remaining mesh polygons back into unity, match position of the mesh with the terrain’s position

Set Terrain as AI non-static.

set mesh as AI static + optionally assign an AI-layer from the “Layers” tab in Unity’s AI pathfinidng panel


Disable the adjusted mesh so it’s not visible (or get rid of it entirely)