3D Navigation Plugin

Update - Added a switch for Manhattan/Euclidean heuristics.

Going to get some simple path smoothing added shortly.

“Going to get some simple path smoothing added shortly.” - Super… :slight_smile:

Added a simple Chaikin smoothing algorithm.

Think I have a stupid bug with the path output that I need to fix, will try and get it done over the weekend.

Update : Added a clearance distance option.

Images seem to be broken for me?

Download the plugin from

Copy it to <your project>/Plugins/ folder

  • Create a new AIController from SVONAIController
  • Add an SVONVolume to your scene
  • Adjust the SVONVolume properties, enable some debug viz and click ‘Generate’ to check it
  • On play, the SVONVolume will generate the octree (so you will get a pause with a large number of layers)
  • Use the SVONAIController MoveTo (through BT if you want) to pathfind and follow the 3D path

Ok so the full steps for getting a project working will be :

  1. Download as zip from GitHub - midgen/uesvon: 3D navmesh generation and pathfinding plugin for UnrealEngine
  2. Extract the folder into <YourProjectFolder>/Plugins/uesvon/
  3. Right click your .UPROJECT file in <YourProjectFolder>, click ‘Generate solution files’
  4. Now open the <YourProject>.sln file in Visual Studio
  5. Build the solution, and launch
  6. Find the Plugins window in the editor, and make sure the UESVON plugin is enabled.
  7. Restart the editor for good measure

You should now be able to add the SVONVolume, and create blueprints based on SVONAIController.

Alternatively, just download the demo project GitHub - midgen/CashDemo: Demo project for CashGen, UnrealFastNoise, GOAPer and open

Demos/UESVON/UESVON_Demo.umap

1 Like

Any news about 4.20 version?

Sorry, but I can’t help you without more detailed information on the problems you are having, like the error messages, and the exact steps you are following.

If you download the demo project, you’ll need to run a git submodule update to sync the plugins :
git submodule update --init --recursive

I’ll get on it this week, hopefully tomorrow morning, I can’t imagine there’s much that needs to change.

Have you tried building on 4.20?

Submitted today. Just a couple of include changes as they moved the NavigationSystem into it’s own module.

4.19 version is archived in a branch.

Im planning on testing this out with my VR project, atm we’re using DoN’s 3D pathfinding.
Have you built this on 4.21?

Not yet, I’ll try and find time this week to get all my stuff updated.

Updated all my plugins to 4.21. No changes required for this one, although there’s a warning I’ll fix next week.

Update just submitted :slight_smile:

You can now bake your navigation data, rather than generating it at BeginPlay. Simply select ‘UseBaked’ in Generation Strategy, click ‘Generate’, then save the asset when it’s finished.

The saved data will now be used when loading the game.

And submitted a bunch of fixes for packaged builds. Enjoy :slight_smile:

Added SVON MoveTo BT node and AITask, so you don’t need to use the SVONAIController.

Just add an SVONNavigationComponent to your AIController, and use the SVON MoveTo BT Node.

That’s convenient, i guess :slight_smile:

Some more fixes to the pathfinding today…as well as enhancing debug tools.

  • volumetric path is now recorded in the Visual Logger
  • ‘Debug Distance’ property will limit distance that octree debug viz is rendered
  • In Editor will use viewport camera position
  • Otherwise will use first player controller position

Nice advancing on this, very.

Today’s update :

  • Added asynchronous pathfinding

Just tick the option on the SVONMoveTo behaviour node