En la clase anterior, añadimos un código para calcular los factores de aceleración y frenado en función
de la curva que se va a girar.
Ahora, no es suficiente.
Descubrimos que, si intentamos ir hacia un waypoint concreto y no miramos hacia delante, hacia el siguiente waypoint,
porque realmente es lo que viene a continuación, ese será el ángulo de giro que debemos tomar.
Así que en ese caso, podemos implementar un rastreador de progreso, que es una especie de waypoint por delante del
coche, y el coche puede seguir el rastreador de progreso en su lugar.
Así que vamos a llegar a la parte superior de nuestro código de controlador de IA y vamos a añadir en un objeto de juego llamado
Tracker.
Y vamos a tener un waypoint de rastreo entero actual igual a cero y queremos flotar, mirar hacia adelante y vamos a tener que establecer
inicialmente a 40.
Eso es lo lejos que quieres que esté el rastreador del propio vehículo.
De acuerdo.
Así que en el inicio, vamos a crear este rastreador.
Así que el rastreador va a ser igual al objeto de juego punto crear primitiva y voy a hacer una cápsula punto primitiva
cápsula.
Y esto es sólo para que podamos verlo y vamos a destruir inmediatamente el colisionador en eso porque no queremos
que el coche tropiece con él o se quede atascado en cualquier lugar.
Así que vamos a obtener el componente del colisionador y eliminar eso.
Ahora voy a poner esta línea, pero la voy a comentar porque la puedes quitar un poco más
tarde.
Y básicamente lo que es, es el renderizador de la malla de la cápsula para que puedas deshacerte de ella cuando
ya no la necesites ver.
Así que rastreador obtener componente y que será un renderizador de malla y vamos a poner punto habilitado.
Es igual a falso.
Entonces tendremos la transformación del punto de rastreo.
La posición del punto es igual a la posición del punto de la transformación del punto.
Así que vamos a ponerlo donde está el coche y luego vamos a tener tracker punto de transformación punto de rotación es igual a este punto de
transformación punto de rotación.
Así que está orientado en la misma dirección que el vehículo.
Bien, genial.
Así que eso es configurar el rastreador.
Ahora vamos a crear un método de seguimiento del progreso, supongo que nulo.
Y esto va a conseguir básicamente nuestro progreso.
Tengo que recorrer todos los puntos de paso.
Así que ya hemos estado haciendo esto con el coche.
Queremos depurar la línea de trazado de puntos y esta línea es para que podamos ver qué cápsula pertenece a qué coche y también
el ángulo entre ellos.
Así que este punto transforma la posición del punto y el rastreador transforma el punto.
Deletrea la posición del punto de transformación del rastreador.
Muy bien entonces si el vector tres punto distancia este punto transformador punto posición rastreador
es mayor entonces mira hacia adelante.
Entonces vamos a impedir que nuestro rastreador se mueva.
Así que la mirada hacia adelante es tener nuestro rastreador en como un pedazo de elástico y sólo puede llegar tan lejos antes de
que se detenga y espere a que el coche para ponerse al día.
Bien, así que un rastreador de transformar la mirada y vamos a ver los puntos de ruta del circuito entre paréntesis.
La posición transformada del punto de seguimiento actual.
La Troika se da el lujo de usar un bloqueo, que va a dar la vuelta y va a mirar directamente hacia donde tiene
que ir, lo que significa que va a terminar acercándose bastante a donde está.
Así que no tenemos que preocuparnos por los deslices y todo ese tipo de cosas que hacen que el rendimiento sea inexacto.
Así que Tracker Transform, Translate y cero cero.
Esto es lo rápido que quieres que vaya tu rastreador.
Ahora bien, si encuentras que el rastreador está como muy cerca del coche y pegado a él y nunca se aleja lo suficiente,
entonces por supuesto podrías aumentar este valor.
He comprobado que con la configuración actual parece estar bien.
Bien, ya lo tenemos y eso es prácticamente todo lo que tenemos que hacer para mover el rastreador.
Y entonces, si la distancia del vector tres puntos de la posición de la transformación de puntos del rastreador y la posición de puntos del circuito de la
transformación de puntos del rastreador actual es menor que uno, significa.
Hemos llegado a ese punto de paso y vamos a actualizarlo.
Déjame ver si puedo poner esta línea aquí abajo para que puedas ver un poco más claro lo que hemos hecho.
De acuerdo.
Así que después de esto dentro de aquí, tendremos el waypoint actual del rastreador más el plus.
Entonces, si el waypoint actual del rastreador es mayor o igual que el número de ellos.
Puntos de ruta del circuito.
Longitud del punto.
Entonces actual.
El punto de control es igual a cero.
Así.
Deshagámonos de ese espacio de ahí.
Y luego tenemos ese soporte allí para terminar nuestro rastreador de progreso.
Bien, genial.
Ahora esto tiene que correr realmente y mantenerse por delante de nuestro coche.
Así que vamos a actualizar su posición dentro de la actualización.
Así que lo primero que haremos aquí es poner el rastreador de progreso y ejecutar eso.
Y después de eso, vamos a establecer el objetivo para el coche.
Así que el objetivo, en lugar de ser un punto de ruta, va a ser el rastreador de progreso.
Así que rastreador de punto de transformación, punto de posición.
Muy bien.
Así que el objetivo ahora se utiliza para calcular las distancias y los ángulos, que es todo lo bueno y todo lo demás es bueno hasta
que lleguemos a la parte inferior donde estamos actualizando nuestros puntos de ruta y nuestros objetivos para nuestro
controlador de IA.
Y vamos a comentar esto porque ya no lo necesitamos.
Vamos a seguir ese rastreador de puntos de ruta en su lugar.
Bien, guardemos esto y volvamos a la unidad.
Y lo que voy a hacer es repasar algunos de los ajustes con los que he estado jugando en mis ruedas, que también
podrían influir en cómo se comporta y cómo se comportan las tuyas.
Así que, de nuevo, selecciona todos tus colisionadores de rueda.
Mi par máximo está en 300, mis ángulos de dirección máximos en 90, mi charla de ruptura máxima está en 5000, y en mis otros ajustes
no he cambiado la fricción o realmente jugué un poco con la rigidez de la misma y encontré que sólo
voy a permanecer con uno.
Los otros valores no los he cambiado y deberían ser como los que ya tenías.
Bien, ahora lo que vamos a ver cuando pulsemos el play es una cápsula emergente que el coche va a seguir.
Así que vamos a ver cómo funciona.
Muy bien.
Así que se va.
Ahora, fíjate que llega tan lejos y luego simplemente espera hasta que el coche lo alcance.
Y entonces, una vez que lleguemos aquí arriba y comience a ir a este punto de referencia, verás que el coche
realmente se romperá mucho antes en esa esquina.
Y se va.
Y no está tan mal lo que he conseguido con esto hasta ahora.
Y eso fue sobre todo juguetear con estos valores, que es lo que tendrás que hacer.
Bien, entonces estamos llegando a esta esquina aquí y el rastreador de puntos de ruta va a estar allí antes de que realmente.
Y ahora se ha volteado y luego va a aterrizar al revés porque es su volteo y se va
de nuevo.
Así que no es perfecto, pero está mejorando.
Y, por supuesto, puedes jugar con la distancia entre tu rastreador de waypoints y el vehículo.
De acuerdo.
Ahora, una cosa que es un poco de un problema no está en esta esquina, pero usted habría visto hasta
el otro extremo es que el coche se vuelca porque no parece tener suficiente tipo de dar en la suspensión en ese momento
en un lado.
Y por lo tanto, sólo se voltea.
Y nos acercamos a voltear el coche de nuevo y notar que cuando lo hace, sólo se inclina directamente,
bien.
Un coche normal va a deslizarse por un lado.
Las ruedas podrían levantarse aquí y éstas soportarían un poco más de presión.
Así que volveremos en la próxima conferencia y veremos cómo implementar el código anti rodamiento.