Version: 2021.1
Utilizando el NavMesh Agent con otros componentes
Nav Mesh Obstacle

NavMesh Agent

Los componentes NavMeshAgent le ayudarán a usted crear personajes que se eviten a ellos mismos mientras se mueven hacia su objetivo. Los Agentes razonan acerca del muno del juego utilizando el NavMesh y saben cómo evitarse entre ellos al igual que otros obstáculos en movimiento. Pathfinding (Encuentra caminos) y el razonamiento espacial son manejados utilizando la API de scripting del NavMesh Agent.

Propiedades

Propiedad Función
Agent Size (Tamaño del Agente)
Radius Radio del agente, utilizado para calcular colisiones entre obstáculos y otros agentes.
Height La longitud del espacio libre en altura que el agente necesita para pasar por debajo de un obstáculo que esté por encima.
Base offset El desfase del cilindro de colisión en relación el punto de pivote del transform.
Steering (Dirección)
Speed Velocidad máxima de movimiento (en unidades globales por segundo).
Angular Speed Velocidad máxima de rotación (grados por segundo).
Acceleration Aceleración máxima (en unidades globales por segundo al cuadrado).
Stopping distance El agente va a parar cuando esté cerca a la ubicación final.
Auto Braking Cuando esté activado, el agente va disminuir cuando alcance el destino. Usted debería desactivar esto para comportamientos como patrullando, dónde el agente debería moverse más suave entre múltiples puntos
Obstacle Avoidance
Quality Obstacle avoidance quality (Calidad de evasión de obstáculos). Si usted tiene un número mayor de agentes usted puede guardar tiempo de CPU al reducir la obstacle avoidance quality. Configurando avoidance a none (ninguno), solo resolverá colisión, pero no intentará a evitar de manera activa otros agentes y obstáculos.
Priority Los Agents de baja prioridad serán ignorados por este Agent al realizar la evasión. El valor debe estar en el rango entre 0 y 99, donde números menores indican una prioridad más alta.
Path Finding (Encuentra Caminos)
Auto Traverse OffMesh Link Configúrelo a true para traverse off- mesh links (atravesar los enlaces off-mesh) de manera automática. Usted debería apagar esto cuando usted quiera utilizar animación o alguna manera especifica de traverse off-mesh links.
Auto Repath Cuando esté activado el agente va a intentar encontrar un camino de nuevo cuando alcance el camino parcial. Cuando no haya un camino al destino, un camino parcial es generado a la ubicación más cercana al destino.
Area Mask La Area Mask describe qué tipos de área el agente va a considerar cuando encuentre un camino. Cuando usted prepare meshes para el NavMesh baking, usted puede configurar cada tipo del área de meshes. Por ejemplo, usted puede marcar las escalares con el tipo de área special, y restringir algunos tipos de caracteres de utilizar las escaleras.

Detalles

El Agent está definido por un cilindro vertical cuyo tamaño está especificado por las propiedades Radius y Height. El cilindro se mueve con el objeto pero siempre permanece vertical incluso si el objeto rota. La forma del cilindro es utilizada para detectar y responder a colisiones entre otros agentes y obstáculos. Cuando el punto de ancla del GameObject no coincida con la base del cilindro, puedes usar la propiedad Base Offset para que ocupe la diferencia de altura.

El height (altura) y radius (radio) del cilindro están en realidad especificadas en dos diferentes lugares: NavMesh bake settings y las propiedades de los agentes individuales.

  • NavMesh bake settings describe cómo todos los NavMesh Agents están colisionando o evitando la geometría del mundo estática. Con el fin de mantener la memoria en el presupuesto y la carga de CPU en revisión, solo un tamaño puede ser especificado en los ajustes bake.
  • Los valores del NavMesh Agent properties describen cómo el agente colisiona con los obstáculos moviendo y otros agentes.

En la mayoría de casos usted puede configurar el tamaño del agente igual en ambos lugares. Pero, por ejemplo, un soldado más pesado puede tener un radio mayor, para que otros agentes puedan dejar más espacio alrededor de él, pero de lo contrario él va a evitar el entorno igual.

Lecturas Adicionales

Utilizando el NavMesh Agent con otros componentes
Nav Mesh Obstacle