Possiamo dire che ad un certo livello il gioco sta seguendo un percorso pre-calcolato. Dato che le tracce del gioco di corse sono (di solito) comunque un percorso pre-calcolato.
Anche se stiamo parlando di generare le tracce in modo casuale, il gioco deve aver calcolato la parte corrente delle tracce nel momento in cui l'auto arriva.
Bene, è stato facile. Qualcos'altro al riguardo?
Entrambi, seguendo un percorso pre-calcolato e controllando l'auto in modo sistematico, hanno usi nell'industria dei giochi. La risposta è usare entrambi, in qualche modo.
Prima di tutto, voglio menzionare che "calcolare una curva" può significare due cose:
Creazione di funzioni che genereranno la posizione sulla curva, avendo come parametro fino a che punto si desidera interrogare.
Creazione di un percorso, inteso come elenco di punti (o istruzioni e altre informazioni di controllo) da seguire.
Il primo può essere utile per la previsione o in alcune simulazioni fisiche. Tuttavia, quando parliamo di controllare un oggetto, quest'ultimo è l'approccio raccomandato.
Nota: per i giochi più vecchi (anni '80) le altre auto preferiscono gli ostacoli in movimento. Erano lì per te per evitarli e superarli. Non stiamo parlando di quelli.
Seguire un percorso pre-calcolato: è utile per filmati o scene ripetibili. Ad esempio, in GTA San Andreas l'inseguimento insegue il bersaglio dell'inseguimento e tutte le auto seguono un percorso predefinito (questo assicura che l'obiettivo dell'inseguimento possa evitare il traffico ※). Tuttavia, non appena li perturbate, ricadono nel controllo dell'IA, in questo caso l'IA dovrà trovare il percorso per arrivare a dove dovrebbe seguire il suo normale percorso.
※: In effetti, è stato preregistrato. La registrazione e la riproduzione sono state una delle nuove funzionalità del motore di gioco GTA SA.
Controllato da AI:
L'intelligenza artificiale nella sua forma più semplice è una macchina a stati. Verifica lo stato in cui si trova ed esegue alcune azioni a seconda di ciò. Mi riferirò a queste combinazioni di stato e azione come comportamenti. Le azioni non devono corrispondere al gamepad del giocatore. Nemmeno i comportamenti.
Per un gioco semplice, probabilmente hai bisogno solo di due comportamenti notevoli: 1) se è sui binari, segui il percorso evitando altre macchine e ostacoli e 2) se non è sui binari, torna sui binari.
In questa fase, non è lontano dal seguire un percorso (le tracce). Tuttavia, poiché i binari non sono in realtà una linea, non stiamo parlando di seguire un percorso, ma di stargli vicino (evitando altre macchine e ostacoli). Ciò significa che l'IA deve risolvere "sterzo, frenata e accelerazione".
Per un gioco moderno, l'auto sarà anche soggetta a simulazione fisica (per risolvere la collisione e mantenere il realismo). Per questo motivo, ogni iterazione del loop di gioco dell'auto verrà aggiornata in base alla sua velocità e accelerazione, e anche "sterzo, frenata e accelerazione" (modifiche alla velocità) verranno applicati per seguire il comportamento attuale.
Voglio anche menzionare che i giochi moderni possono avere comportamenti più complessi, ad esempio l'intelligenza artificiale può scegliere di colpire un'altra macchina o bloccarne la strada. In effetti, l'IA può persino scegliere quale applicare in base a una qualche forma di apprendimento automatico, ma sto divagando.
Infine, considera che può anche essere utile avere un controllo più semplice per le auto AI al di fuori della vista del giocatore. Sia per le prestazioni che per il Rubber Banding (che in questo caso mantiene le auto dell'IA vicine al giocatore per mantenere interessante la gara, può essere considerato come un imbroglio dell'IA quando non si può davvero lasciare indietro qualsiasi avversario).
Per quanto riguarda l'animazione, di solito non è una buona idea simulare la fisica delle ruote in modo indipendente. Se lo fai, potrebbe aggiungere realismo al gioco, ma costerà le prestazioni. Di solito il gioco animerà le ruote in base al comportamento invece di esprimere il comportamento in termini di movimento delle ruote e simulare le conseguenze.
Naturalmente, potrebbe essere necessario considerare ulteriormente qualsiasi cosa le ruote siano in contatto con il terreno. E forse animando la sospensione.