Navmesh pathfinding with slope and surface costs

I’d like to have a pathfinding:

  • with slope costs so that AI prefers to move flat land before going to climb a hill (most important),
  • with surface costs based on a landscape so AI wouldn’t walk into the swamp on their heels unless they don’t have a dry way (less important).

The project:

  • is a huge realistic world;
  • i’m trying to go blueprint-only;
  • the runtime navmesh generating is not necessary for me (might become later, but now i’m making editor widget).

As far as I understand it is only possible to:

  • Use navModifiers to set cost for specific volumes (actors) - i can’t afford to place volumes on every slope fragments of a landscape manually.
  • Go into the deep programming to override pathfinding/casting - would be heavily time-consuming and frustrating for me.

And it is not possible to:

  • tell the navmesh to generate areas with different costs,
  • use any kind of external editing for a navmesh,
  • place navmodifiers procedurally on the slopes or specific landscape surfaces.

Am i right or are there any other possible solutions?
Maybe someone did publish a code snippet or a plugin?
Any workaround ideas?

1 Like

Did you find any way to do this?

I’m also interested in how to modify cost based on surface characteristics such as slope angle, physical material, etc. to make a vehicle find the most efficient path.

Don’t mind writing some C++ code as long as I don’t have to modify and rebuild the engine itself.