← All posts
postMay 3, 2026
NavMesh Agent Basics
#csharp#unity#navmesh#ai

csharp
using UnityEngine;
using UnityEngine.AI;
public class EnemyAI : MonoBehaviour
{
[SerializeField] private Transform target;
private NavMeshAgent _agent;
private void Awake() => _agent = GetComponent<NavMeshAgent>();
private void Update()
{
if (target == null) return;
_agent.SetDestination(target.position);
// Check arrival
bool arrived = !_agent.pathPending &&
_agent.remainingDistance <= _agent.stoppingDistance;
if (arrived) OnReachTarget();
}
private void OnReachTarget() => Debug.Log("Enemy reached target!");
}