Nav Mesh Vehicle AI

A simple but robust way to handle vehicle AI, using the engine’s default navigation system. Work’s directly with any vehicle pawn, using the same movement code as any player controlled vehicle. Multiplayer Ready.

Category:
Tags: , , , , ,

Description

This simple but robust AI system allow’s any vehicle class, including custom one’s, to move to a destination, going around obstacles that can even change at runtime, as long as it affect’s the nav mesh. Very easy to implement using a simple actor component that can be used to set different settings, like a max speed multiplier to a target destination acceptance radius and other performance settings. (See last screenshot for all the options).

Update 1: Added out of the box support to simple vehicle pawns, using the simple vehicle component.

Update 2: Forward obstacles detection added. The vehicles now try to compensate detected obstacles in front of them by adjusting their throttle. This works for any actor that has the correct object type assigned, including other vehicles.

Update 3: Better detection and responses between vehicles, “road” nav modifier so vehicles can prefer a specific path and added 2 more move to modes, loop through a set of path points and a follow target where the vehicle follows a target actor.

Update 4: Added path offsetting so vehicles can distance themselfs from walls and obstacles, without needing to change any settings in the nav mesh radius.

Overview: https://youtu.be/-J20gTrL83U

Multiplayer and Dozens of Vehicles Stress Test: https://youtu.be/frtgMB2dkaA

Update 1: https://youtu.be/X__LKFrhDW0

Update 3: https://youtu.be/yGCnsWjXVCo

Update 4: https://youtu.be/yhpozFaut1M

All my other products: Click Here

Technical Details

Number of Blueprints: 6 (2 main blueprints and 4 used for testing scene and test vehicle).

Input: None, since it’s a AI system.

Network Replicated: Yes.

Supported Development Platforms: Windows, Mac

Windows: Yes

Mac: Yes

Documentation:

Important/Additional Notes:

Supported Engine Versions

4.26 – 4.27, 5.0 – 5.3