Hasta ahora, hemos visto los puntos de ruta.
Miramos los waypoints y las medidas NAV.
Ahora vamos a ver las medidas de NAV con mucho más detalle.
Y sí, vamos a hacerlo en el activo de la Aldea Vikinga de Unity.
Ahora no tienes que ir a buscarlo a la tienda de bienes.
Lo tengo como archivo de inicio para esta conferencia, junto con algunos pequeños amigos que vamos a utilizar
en nuestras escenas, a saber, Chopper aquí, que es un personaje animado, pero va a convertirse en nuestro agente
de malla de navegación, y luego podemos crear toda una bandada de helicópteros en la pista.
Así que cuando descargues el paquete de inicio, encontrarás que hay una escena de inicio de malla nav
en la carpeta de activos.
Abre eso y esto es lo que vas a encontrar.
Lo primero que tenemos que hacer es crear nuestra malla de navegación.
Así que si nos alejamos un poco y echamos un vistazo a lo que estamos tratando, el Pueblo Vikingo, si no lo
has mirado antes, está hecho de unas cuantas medidas diferentes.
Así que hay estas mallas de montaña de fondo que están pasando aquí.
Ahora bien, no vamos a acercarnos a ellos porque no se puede ir andando hasta allí.
Tenemos esta especie de avión flotante que se ha moldeado en un terreno, y luego
hay un montón de modelos aquí, como algunas rocas y casas, tablones y lo que sea.
Van a formar parte de esta malla.
Así que lo que tienes que hacer es acercarte a la jerarquía y localizar tu entorno.
Usted quiere seleccionar cosas como las estructuras que incluirán sus pasos, tablones, casas, etc.
debajo de eso así como tienes rocas, tienes el terreno y tienes puntales.
Ahora bien, si seleccionamos todo el entorno, entonces vamos al inspector y vamos a nuestra navegación estática
desplegable estática.
Te preguntará si quieres hacer todos los niños.
Sí, lo hacemos.
Ahora, no creas que realmente ha sucedido a menos que haga clic a través y sólo comprobar que las
cosas se han marcado como estática de navegación porque a veces me parece que puede perder las cosas.
Así que ya lo tenemos hecho.
Ahora que lo tenemos, vamos a abrir nuestra pestaña de navegación.
Ahora el mío está sentado detrás de mi inspector.
Pero si has olvidado de dónde sacarlo, es la ventana I.
Y luego la navegación.
Una vez que se abre, vamos a hacer clic en la pestaña de hornear y pulse hornear.
Bien, seleccionemos nuestro entorno y echemos un vistazo a las áreas horneadas que obtenemos.
Ya está.
De acuerdo.
Y eso puede tardar un poco en generarse porque es realmente bastante grande.
Y puedes ver que incluso he seleccionado por completo accidente estas montañas en el fondo, que obviamente
habrían creado mucho más para generar la malla de navegación.
Así que si te parece que se vuelve un poco torpe, vamos a encontrar estos picos de las montañas.
De acuerdo.
En realidad son esos tres modelos de ahí.
Y vamos a entrar en.
El inspector, de nuevo, sólo marca esos en cuanto a la estática de la navegación.
Entonces, si volvemos a hornear de nuevo, en realidad dejará esos fuera.
Así que vamos a hornear esta vez.
De acuerdo.
Mucho más rápido de generar.
Y puedes ver que no tenemos malla por ahí, lo cual es genial porque no necesitamos estar por ahí.
Muy bien.
Así que ahí está nuestra malla de navegación.
Ahora, si echamos un vistazo.
Una vez que lo hayamos generado, te dará una idea de lo bien que ha horneado las cosas y de lo bien
que se han hecho las zonas por las que no se puede caminar.
Así que si echamos un vistazo aquí, se puede ver que las áreas azules son donde Trump va a ser capaz
de caminar los otros bits.
No puede ir.
Así que si vamos alrededor de este lado, la roca, en realidad será capaz de caminar y pasar por encima de
esa roca.
Puede que no quieras que sea capaz de hacerlo.
Así que volvemos a nuestra pestaña de hornear y encontramos los detalles de nuestro agente aquí arriba.
Lo que se ha horneado es el área razonable para que este agente en particular pueda navegar.
Hay una pendiente al final, así que decimos 45 grados en este caso.
Así que se calcula que esto es aceptable para subir y bajar si quieres reducir esa pendiente para que el helicóptero
pueda subir, cosas así.
Podemos arrastrar esto hacia abajo, y darle a hornear de nuevo.
Y ahora verás que no va a subir a esa roca por mucho que lo intente, porque simplemente
no hay camino hacia arriba.
No hay malla de navegación.
Así que con eso un poco más abajo, como que restringes a dónde puede ir.
Ahora, en la pista, podemos hacer esto para todos los diferentes tipos de agentes, lo que significa que algunos pueden
subir a la roca, otros no pueden subir a la roca en función de sus diferentes habilidades.
Ahora podemos convertir a Chopper en un agente.
Así que selecciona Chopper en la jerarquía.
Vamos al inspector y vamos a añadir un componente de agente de malla naval.
Ahora, si nos acercamos un poco, seremos capaces de ver lo que ha hecho a nuestro agente.
Así que tiene este colisionador a su alrededor.
En realidad no es un colisionador en el sentido al que se está acostumbrado.
Es más bien un colisionador de malla naval, pero te muestra el espacio que se le asigna.
Así que su altura es la de un humanoide porque este es el agente básico de malla naval humanoide.
No necesita estar tan alto, vale, porque sólo es bastante bajo, lo que significa
que podría pasar por debajo de cosas bajas, mientras que esta altura le va a impedir pasar por otro tipo de
zonas bajas si las hubiera.
Así que, por ejemplo, allí tienes como estas puertas y pilotes.
En realidad, podría ser capaz de agacharse allí si se hace un poco más pequeño.
Entonces, ¿cómo podemos cambiar el tamaño de este colisionador de malla de navegación por ahí?
Bueno, podemos ir a la configuración de nuestro agente de malla naval y sólo bajar a la evasión de obstáculos
donde se puede cambiar el tamaño de él.
Así que puedes bajar esa altura.
Y probablemente diría que es como uno podría ser un poco más bajo que eso podría sus ojos sólo asoman la parte
superior, pero vamos a dejarlo como uno.
De acuerdo.
Ahora vamos a hacer un controlador para ejecutar el puente.
Así que en su activo, vamos a crear una secuencia de comandos sharp3dc y vamos a llamar a ese controlador AI y
vamos a abrir eso.
Y esto va a ser un código muy, muy simple en la parte superior.
Necesitaremos usar el motor unity punto I y en la parte superior estamos aquí tendremos un agente nav mesh público
y luego en el inicio iremos agente igual a este punto obtener componente nav mesh agente.
Bien, eso es todo lo que necesitamos aquí.
Así que guarda eso.
Ahora volvemos a la unidad.
Usted quiere obtener ese código y arrastrar y soltar en chopper, asegurándose de que está en el mismo elemento que tiene el
agente de malla nav.
Así que pongamos eso ahí.
De acuerdo.
Ahora vamos a tener montones y montones de agentes corriendo por ahí.
Así que vamos a crear un objeto de juego vacío en la jerarquía y lo llamaremos nuestro gestor de agentes, luego crearemos
un nuevo script para eso.
Así que crearemos un script en C-sharp y lo llamaremos nuestro gestor de agentes y lo abriremos.
Ahora esto va a recoger todos sus agentes y mantener un seguimiento de ellos en una matriz.
Así que los agentes de la matriz de objetos de juego.
Y luego en la salida.
Los agentes van a ser iguales a los objetos del juego.
Encuentra los objetos del juego con la etiqueta.
Lo haremos automáticamente.
Vamos a etiquetarlas con alienígenas y mayúsculas.
Recuérdame hacer eso cuando volvamos a la escena ahora dentro de la actualización para mover a estos chicos, sólo quiero
hacer clic en el medio ambiente y luego obtener la posición del ratón de eso y luego ir allí.
Así que vamos a tener si el punto de entrada obtener botón del ratón hacia abajo cero el botón izquierdo del ratón y luego aquí vamos a realizar
un lanzamiento de rayos.
Así que queremos un golpe de lanzamiento de rayos.
Llamaremos a eso hit y luego iremos si physics dot ray cast camera dot main screen point to ray input dot mouse position.
Así es como se hace un lanzamiento de rayos desde la posición del ratón en la que se ha hecho clic en la pantalla
hacia el entorno para averiguar dónde golpeamos realmente algo.
Así que tendremos nuestro golpe proyectará ese rayo para una distancia de 100.
Con suerte habremos dado con algo dentro de ese tiempo o dentro de esa distancia y
entonces iremos por cada juego, objeto A en los agentes, y entonces les diremos que vayan a ese lugar.
Así que obtengo el componente I controlador punto agente punto set destino hit punto.
Bien, ahora este componente de obtención no es particularmente una buena idea tener dentro de la actualización
y vendrá y tipo de rejilla que en un momento.
Pero primero guarda esto.
Tenemos que volver y etiquetarlo como IA.
Así que vamos a agarrar Chopper y luego en el inspector, que desea crear una nueva etiqueta para la IA, que
será en capital.
Así que lo guardo y vuelvo a Chopper y lo etiquetamos como me gusta.
Ahora con el terreno, voy a ver si tenemos un colisionador aquí porque si no tenemos
un colisionador en el propio tren, no podremos hacer clic.
Pero lo hacemos.
Hay un colisionador de trenes.
También seleccione su gestor de agentes y luego ponga el código del gestor de agentes para que realmente se ejecute.
Muy bien, entonces presionemos el play.
Lo que he hecho aquí es alinear un poco mi cámara.
Así que estamos mirando aquí abajo y si hago clic, ahora puedes ver que se va a mover.
No está animado.
No lo hemos programado para que se anime a caminar, debería decir.
Está como atascado en su ídolo.
Así que puedes ver que se moverá de posición en posición.
Bien, genial.
Bueno, ese es el comienzo de nuestro agente de malla naval y nuestro agente.
Déjame volver en el siguiente vídeo.
Seguiremos mejorando en esto.
Arreglaremos eso de conseguir componentes de lo que hablaba y también añadiremos algunas animaciones adecuadas
y algunos agentes más.