Usage example - Nav3D Doc

Docy Child

Usage example

The following is an example of using the Path object to find the path from A to B.

				
					using Nav3D.API;
using System;
using UnityEngine;

class YourGameScenario : MonoBehaviour
{
    private void Start()
    {
        Nav3DManager.InitNav3D(1f);

        Vector3 a = new Vector3(-10, 10, 10);
        Vector3 b = new Vector3(-10, 10, 10);

        FindPath(a, b, PrintPath);
    }

    //your method for pathfinding from A to B
    void FindPath(Vector3 _A, Vector3 _B, Action<Vector3[]> _OnPathFound)
    {
        //create Path instance
        Path path = Nav3DPathfindingManager.PrefetchPath(_A, _B);

        //perform pathfinding from _A to _B
        path.UpdatePath(_OnSuccess: () =>
        {
            //notify that path was found
            UnityEngine.Debug.Log("Path successfully found!");

            //invoke callback
            _OnPathFound(path.Trajectory);

            //finish work with Path instance
            path.Dispose();
        });
    }

    void PrintPath(Vector3[] _Path)
    {
        for (int i = 0; i < _Path.Length - 1; i++)
            UnityEngine.Debug.LogError($"Path point {i}: {_Path[i]}");
    }
}
				
			

Agent log

In the second section, you can get the contents of the agent log by clicking on ...

Debug drawing

In the first section, you can visualize the agent and his nearest environment. T...

Creating and configuring an agent description from code

All Nav3DAgentDescription parameters configured in the description inspector c...

Nav3DManager

Nav3DManager is a helper static class. Can be useful for checking whether Nav3D ...

Nav3DInitializer

To use Nav3D in playmode, you need to initialize it. The Nav3DInitializer compon...

Nav3DObstacleLoader

To use the possibility of pre-baking obstacles on the scene in editor mode and t...

Nav3DObstacle

To manage obstacles on the scene, the Nav3DObstacle component is designed. Attac...

Obstacle combinations

We will call obstacles with the selected processing mode “Runtime” as runtim...

Operations with obstacles

Regardless of the obstacle processing mode, the processing procedure consists of...

Deeper dive into obstacles

As already described above, in order for an obstacle to be taken into account du...

Nav3DAgent : Debug

The Nav3DAgent and its inheritors have an inspector that provides several useful...

Nav3DAgent

As mentioned above, you can use the Nav3DAgent script as a component for your ga...

Chat Icon Close Icon
en_USEnglish