How do I associate my character with a Navigation System Agent?

I’ve made this Agent in order to change the navmesh footprint, but where do I tell my character that it should use this setting? Is it associated by name or is it set in a default? or something else?

Thank you.

1 Like

If you have only one Supported Agent defined then you don’t have to do anything else. All AI agents will use the one and only navmesh.

If you have more Supported Agent NavigationSystem will pick “best fit” for your AI (a one that will guarantee not getting stuck, if possible).

Cheers,

–mieszko

1 Like

That’s weird… So it uses… what to decide which agent is the best pick? capsule extents or something? This kind of automation makes me uneasy…

It’s using NavAgent’s properties which by default are filled with collision capsule’s size. Pawn’s NavAgent properties can be set via its defaults in Movement Component > Movement Capabilities. When you decide to do that make sure you set bUpdateNavAgentWithOwnersCollision to false.

1 Like

Useful info, also, I would like to ask what effect have these booleans like Can Crouch and so on ?

None at the moment. But you can always read that data in BP/C++ and take advantage of it.

There are future use plans, but not too near future.

I don’t understand why is it not possible to set on the character which navmesh to use. Because i want to limit access to a character but not based on his size.

As far as I understand - if the navigational actor corresponds to the dimensions, then all available nav-meshes are used to find the way.

This is quite logical:The car can pass on the road but can not drive in a narrow alley, and a person can pass both there and there.

If it is necessary to block the actor’s access to a specific place, then one should use one of the prepared types of NavModifire or create own NavModifire type.

make multiple nav mesh
Make sure they are not connected
Place AI in the nav mesh you like it to navigate in
Done!
Your AI won’t move outside the nav mesh they are in

Automation is great, automation without control is absolute pain.

3 Likes

This info saved my day thank you!

This info saved the day thank you!

I have 2 types of ai: Parkour and non parkour. I want the parkour ones to use the nav links and dont want the Non-parkour ones to use the links. I can add the “supported agent” option in the project settings, nav links, nav mesh bounds. But there is no option to add it in the character blueprint.
Now how is my character supposed to know which nav mesh to use?

Hi, have you found a solution? I’m looking everywhere, documentation, forum and videos, and I can’t find anything. I still don’t know if the setting is on the pawn, the controller, I have created a navigation filter class and use it on the controller, but still not related to the created agents…
I can’t believe we can create supported agents, assign them to navmeshes, but AI can’t use them

2 Likes

Hi, is working for you to have different Supported Agents and manage them in the editor?

In ‘project settings > navigation system > Agents’ I have setup 2 agents, 1 is just ‘Default’ , the other called ‘Small’, setup for a character that can fit through tight spaces. In the level I can see both nav meshes being created correctly.

When I play the AI only uses the Default nav mesh. Disabling ‘Default’ in the ‘Supported Agents’ section of the Navmesh Volume leaves only the ‘Small’ nav mesh, but playing this time the character doesn’t move, as if there was no nav mesh. I thought maybe I have to assign the agent to the character, but I can’t seem to find anything on this.

1 Like