Una vez usted tenga un NavMesh baked para su nivel es tiempo de crear un personaje que pueda navegar la escena. Nosotros vamos a construir nuestro agente prototipo de un cilindro y lo pondremos en movimiento. Esto se hace al utilizar el Componente NavMesh Agent y un script simple.
Primero creemos el personaje:
Ahora usted tiene un agente NavMesh simple configurado y listo para recibir comandos!
Cuando usted esté experimentando con un Agente NavMesh, lo más seguro es que usted va a ajustar sus dimensiones para el tamaño del su personaje y la velocidad.
El componente NavMesh Agent maneja ambos el pathfinding (encontra caminos) y el control del movimiento de un personaje. En sus scripts, la navegación se puede manejar tan simple como coger el punto de destino deseado - el Agente NavMesh puede manejar todo desde ahí.
// MoveTo.cs
using UnityEngine;
using UnityEngine.AI;
public class MoveTo : MonoBehaviour {
public Transform goal;
void Start () {
NavMeshAgent agent = GetComponent<NavMeshAgent>();
agent.destination = goal.position;
}
}
Lo que sigue es que nosotros necesitamos construir un script simple que le permite a usted enviar su personaje al destino especificado por otro Game Object, y una Esfera la cual será el destino a dónde será movido.
MoveTo.cs
) y remplace su contenido con el script de arriba.Para resumir, en su script, necesitará obtener una referencia al componente NavMesh Agent y luego para activar el agente, solo debe asignar una posición a su destino propiedad. ElNavigation How Tos le dará más ejemplos sobre cómo resolver escenarios de juego comunes con el agente NavMesh.