Navigation Behavior

The Navigation Behavior class computes the optimal path computed from a Navigation Mesh using the A* algorithm. It then returns a Final Velocity which steers the agent along the computed path.

The Navigation Behavior class, U4DEngine::U4DNavigation requires a Navigation Data in order to compute the path and steering velocity.

The code snippet below shows how to use the U4DNavigation class:

//1. Create a Navigation Object
U4DEngine::U4DNavigation *navigation=new U4DEngine::U4DNavigation();

//2. Load a Navigation Mesh by providing the name of the nav mesh and the file
	//set options here such as path radius

//3. Compute Optimal Path. The method required a pointer to the agent and a Target Position.

//4. Compute the final "Navigation" velocity for the character
U4DEngine::U4DVector3n finalVelocity=navigation->getSteering(myCharacter);
//Set the final velocity y component to zero.

//Check if the resulting velocity is set to zero. Do this as a a safeguard. I have to fix this issue.
    uSoldier->applyVelocity(finalVelocity, dt);