- Home /
NavMeshAgent Desired Velocity always 0
This has been annoying me for ages I have not changed anything that I think would cause this. The car goes in the direction it is facing and flies of the track.
Code:
using UnityEngine;
using UnityEditor;
using System.Collections;
public class RivalPathFind : MonoBehaviour {
public float sensitivity;
NavMeshAgent agent;
Transform wantedPos;
bool setTarget;
// Use this for initialization
void Start () {
wantedPos = new GameObject().transform;
wantedPos.name = "WantedPosition" + " " + gameObject.name;
agent = GetComponentInChildren<NavMeshAgent>();
}
// Update is called once per frame
void Update () {
wantedPos.position = (agent.desiredVelocity * sensitivity) + transform.position;
if(!setTarget && GameObject.FindGameObjectWithTag("End")){
Debug.Log("Hi");
agent.SetDestination(GameObject.FindGameObjectWithTag("End").transform.position);
GetComponent<RivalAI>().target = wantedPos;
setTarget = true;
}
//Debug.Log(agent.destination);
}
}
Typically, the desired velocity will be set to Vector3.zero if the Nav$$anonymous$$eshAgent does not have a path... You didn't really provide much information other than your code, so I am assu$$anonymous$$g there is something wrong with the way you configured it outside of the code. Either there is something wrong with your navigation area or you didn't configure the Nav$$anonymous$$eshAgent properly. Like I said, it's hard to help out when this little information is given.
Your answer
Follow this Question
Related Questions
How to stop a Navmeshagent from teleporting when the navmesh overlaps in Z 1 Answer
Movement with NavMeshAgent pushes RigidBody 1 Answer
Respawning Navmesh and Prefabs 0 Answers
How to make enemy AI with NavMesh 2 Answers
NavMeshAgent's desiredVelocity and .hasPath falsely returning 0 / false 2 Answers