Hasta ahora, en esta breve serie para ocultar, hemos trabajado con estos árboles.
Ahora vamos a implementar una forma de acercarnos sigilosamente por detrás del ladrón.
Pero antes, vamos a probar lo que tenemos con algunos objetos más grandes.
Así que ir en el prefabricado, que no es que uno, pero creo que los activos estándar, prototipos y debe haber algunos
prefabricados en allí, que es estos.
Es posible que los haya visto antes porque provienen de algún activo de prueba de juegos que pone unity.
Si quieres añadir una casa o algo así, entonces sólo tienes que cogerlo y ponerlo ahí.
Ahora, esto puede ser un poco grande.
Hagámoslo un poco más pequeño y colóquelo en nuestra escena.
Ahora tenemos que asegurarnos de que se trata de una estática de navegación.
Así que ven al inspector con eso seleccionado y vamos a comprobar que lo es.
Sí, lo es.
Así que podemos volver a nuestra navegación y realizar una cocción.
Así que eso nos va a bloquear de pasar por eso.
Ahora, para hacer las pruebas un poco mejor, voy a mover la goma hacia aquí.
Ah, y antes de hacerlo, tenemos que asegurarnos de poner nuestra casa en un objeto oculto.
Así que asegúrate de etiquetarlo como oculto.
De lo contrario, no se incluirá.
Bien, entonces presionemos el play y movamos al policía.
Y ahora mira a través del edificio.
Si lo ponemos en pausa y echamos un vistazo donde está, puedes ver que definitivamente no hay línea de visión a través
de esto porque el colisionador que está sentado en esta casa está pegado a ella, mientras que alrededor de los árboles no lo está.
Así que tendrías que construir probablemente un sombreado más complejo si quisieras bloquear los
troncos de forma diferente a las hojas reales.
Así que ahora que todo funciona como esperábamos, podemos volver a nuestro código y añadir ese
pequeño extra.
Y vamos a decir que el agente necesita esconderse si puede ver el objetivo.
Así que lo primero que vamos a añadir es un pequeño método llamado puede ver el objetivo.
Y aquí arriba de nuestra actualización, lo añadiremos.
Así que va a ser bool puede ver el objetivo.
Luego, dentro de aquí, vamos a hacer un molde de rayos.
Así que un reparto de rayos.
Golpear la refundición.
Información.
Vector de tres rayos al objetivo.
Así que vamos a crear un rayo que va desde la posición de nuestro agente a la posición de nuestro objetivo.
Así que la posición transformada del punto objetivo menos esta posición transformada del punto.
Y entonces diremos si la física.
El reparto del rayo de puntos.
Este punto transformó la posición.
Derecho al objetivo.
Y la salida para eso será nuestra información de reparto.
Si el objeto que golpeamos.
Así que si la información refundida punto transformar el objeto de juego.
La etiqueta de puntos es igual a la etiqueta que tenemos en nuestro policía o nuestra policía, que es policía.
Pero compruebe que su proyecto lo ha recogido y volveremos.
Es cierto.
Así que esto va a realizar un radio que si estamos escondidos detrás de algo y no podemos
ser vistos por el policía, entonces no vamos a golpear al policía con este Rayo.
En realidad, va a golpear el colisionador del objeto que estamos ocultando.
Vale, tengo un pequeño error ortográfico aquí arriba.
Arreglemos eso.
Sí.
Información del reparto y volvemos.
Verdadero, o de lo contrario vamos a devolver falso.
Así es como puede ver el objetivo.
Ahora en la actualización, lo que podemos hacer es ir si podemos ver el objetivo.
A continuación, realizaremos nuestra ocultación del objetivo desde nuestra habilidad del objetivo.
De acuerdo.
Así que de vuelta en la unidad, lo que vamos a hacer es asegurarnos de que el policía está etiquetado con la etiqueta de policía en minúsculas.
Si no la tienes, añádela como etiqueta y pégala al policía.
Ahora, lo que va a pasar aquí es que cuando presione el play, el ladrón, si puede verme, se va a mover
de lugar.
Bien, ahora se ha trasladado allí.
Se va a quedar en el lugar donde fue.
¿A dónde vas?
Allí.
De acuerdo.
Así que ahora vamos a volver por este lado.
Y tan pronto como pueda atraer un rayo al policía, irá a esconderse.
De acuerdo.
Ahora bien, lo que no puedes hacer actualmente es acercarte sigilosamente por detrás del ladrón.
Ahora, ¿recuerdas cuando hicimos nuestra máquina de estado finito, en realidad construimos en la capacidad de colarse
detrás de UG y estaba en una malla de la marina también.
Así que el mismo código puede ser utilizado para determinar como un ángulo de visión.
Así que si el policía está realmente frente al ladrón, entonces hará que se mueva.
Si no, podrás acercarte a él por detrás.
Así que voy a dejar esto como un reto para ti.
Y cuando volvamos en el próximo vídeo, implementaremos ese código y lo haremos funcionar.