Я делаю игру, в которой участвует враг, контролируемый ИИ. Я использую NavMesh для AI. Враг проходит между определенным количеством очков, но если он обнаруживает игрока, он преследует их. Движение агента НавМеш действительно шаткое и резкое. Это происходит при переходе между заданными точками или после игрока. Спасибо за помощь:)
Мой код:
void FixedUpdate()
{
if (!agent.pathPending)
{
if (agent.remainingDistance <= agent.stoppingDistance)
{
if (!agent.hasPath || agent.velocity.sqrMagnitude == 0f)
{
pathIndex++;
SetDestination(pathIndex) //this is just a function to get the next point to go to;
}
}
}
}
void SetDestination(int pathIndex)
{
if (pathPoints.Length == 0) return;
agent.SetDestination(pathPoints[pathIndex % pathPoints.Length]);
}