En el vídeo anterior, rematamos nuestro flocado y añadimos un poco de aleatoriedad a la velocidad.
Y también cuando las reglas se aplican en este video, vamos a establecer los límites del tanque.
Así que tenemos definidos los límites de dónde pueden nadar los peces en nuestro gestor de rebaños aquí
arriba en nuestros límites de natación.
Así que vamos a entrar en el rebaño y añadir esa funcionalidad en cada pez.
Así que en la parte superior, vamos a crear un toro llamado Turning y vamos a establecer que a falso.
Este toro se va a encender o poner en verdadero cuando un pez llega al límite exterior de donde puede nadar, y entonces se está
dando la vuelta cuando el pez está dando la vuelta desde el borde exterior, no queremos que
entre en el comportamiento de flotación porque eso sólo confundirá la dirección en la que está yendo.
Muy bien.
Así que vamos a poner la prueba para nuestro límite dentro de la actualización.
Así que aquí arriba, vamos a añadir un rebote.
B, ahora, a, límites, si usted no está familiarizado con eso, es una construcción de la unidad, que es básicamente
una como una caja de colisión, esencialmente, y es los límites de ese prisma rectangular en particular.
Así que vamos a crear un nuevo límite basado en el tamaño del espacio de natación que hemos establecido.
Así que los límites y tenemos que darle una posición.
Así que será en el punto f m del gestor de rebaños.
Punto de transformar la posición del punto y va a ser su tamaño de gerente de rebaño f m límites de natación multiplicado
por dos.
Así que estamos haciendo que las dimensiones sean en realidad el doble del tamaño de estos límites de natación para mantener esencialmente a los peces dentro
de allí cuando realmente desoven.
De acuerdo.
Así que cuando los creamos por primera vez, están dentro de los límites de natación alrededor del centro.
Pero esta es la caja que es un poco más grande.
Así que los límites de natación esencialmente que estamos estableciendo son como un valor de radio desde el centro hasta
un borde.
De acuerdo.
Así que con eso hecho, entonces vamos a ir si no B, por lo que se rebotan punto contiene posición
transformada, entonces vamos a decir girando.
Se establecerá como verdadero.
Así que rebota.
El DOT contiene pruebas para la localidad de Fishers.
Si la ubicación de los Pescadores está fuera de la caja delimitadora, entonces será un nudo y eso establecerá el giro como verdadero,
lo que significa que realmente vamos a pasar por un giro.
De lo contrario, lo pondremos en falso.
Así que girar es igual a falso.
Y esto ocurrirá cuando el pez entre de nuevo en la caja delimitadora, o mientras el pez esté todavía en la caja delimitadora.
Ahora, si el giro es cierto, queremos conseguir que el pez se dé la vuelta.
Así que si se gira, entonces vamos a un vector.
Tres direcciones equivalen a la posición transformada del gestor de rebaños punto f m.
Posición de transformación de Linus.
Así que estamos calculando el vector que el pez tiene que recorrer para volver al centro del gestor de bandos, que
es básicamente el origen del gestor de bandos.
Así que estamos dando la vuelta de nuevo al centro, lo que va a conseguir el pescado de nuevo dentro de esa
caja delimitadora.
Y luego vamos a establecer la rotación de transformación para los peces en base a un sorbo como lo estamos haciendo cuando estamos en realidad
flotación.
Porque de nuevo, no queremos mover el pescado con nada de este código.
Sólo queremos cambiar la dirección a la que se enfrenta porque su movimiento ocurre cuando hacemos esta transformación
aquí abajo con el translate.
Bueno, así que estamos sorbiendo alrededor de la rotación de la transformación, a su vez en la rotación de la mirada de punto hacia la dirección y, a continuación,
estamos girando sobre la base de nuestra velocidad de rotación que está en el gestor de rebaño punto FM velocidad de rotación multiplicado por
el tiempo, el tiempo delta.
De acuerdo.
Ahora si estamos girando, hacemos esto.
Si no estamos girando, queremos hacer esta otra cosa aquí abajo, que es aplicar las reglas y comprobar nuestra velocidad.
Así que pondremos un else y entonces todo eso puede ir dentro de ese else para que no apliquemos las reglas y el
giro en el mismo aliento.
Bien, guardemos esto y podemos volver a la unidad y echar un vistazo a nuestro nuevo rebaño y nuestro giro.
Así que vamos a pulsar el play.
Y voy a volver a la escena donde podemos ver a nuestros peces.
Vamos a seleccionar el gestor de rebaños.
Ahora, voy a girar mi distancia vecina a la derecha hacia arriba y ahora podemos ver los peces como.
Van a su rebaño.
Ahora, si bajamos esa distancia de vecindad a uno, entonces van a nadar independientemente.
Pero deberían llegar a los límites.
Y lo estás viendo ahí cuando golpean el borde exterior de ese cuadro delimitador,
como ver a estos chicos aquí y se dan la vuelta y vuelven al centro.
Así que esto significa que no vas a perder un pez, esencialmente, y que se quedarán ahí y no se irán
al infinito, básicamente.
De acuerdo.
Así que este es un bonito y simple algoritmo de flotación.
Y tú, por supuesto, puedes añadir tus peces rosas si quieres y hacer un tanque de aspecto muy colorido.