Targeting di un veicolo con movimento complesso?


9

Targeting di un veicolo con velocità costante nota è semplice e la collisione è garantita (vedi Previsione della posizione del nemico per far sì che un oggetto conduca il suo bersaglio , Trova punto di incontro di 2 oggetti in 2D, conoscendo la velocità (costante) e la pendenza ). L'IA imprecisa può essere modellata aggiungendo un piccolo fattore di errore.

Ma come si potrebbe mirare a un veicolo i cui movimenti sono più complessi? Forse sta eludendo l'IA o un altro oggetto di gioco.

Ho pensato a come farei io stesso in un FPS (in cui i proiettili hanno una velocità finita) e penso che potrebbe essere necessario avere almeno un paio di modalità di targeting basate sul movimento del bersaglio nel secondo precedente circa:

  • Se è vicino all'obiettivo lineare (accelerazione di picco in un determinato intervallo) con il modello lineare
  • Se è altamente irregolare (forse potrebbe essere utilizzata la dimensione del riquadro di delimitazione di posizioni recenti?), Targetizzare in media

Per ora posso assumere lo spazio 2d, l'IA è stazionaria e il proiettile non è guidato e si muove in modo lineare.


1
Se hai tempo per raccogliere dati sull'oggetto in movimento irregolare, puoi interpolare la sua prossima mossa più probabile e sparare lì. Più dati hai, più preciso sarà.
Michael K,

Non so se stai solo parlando di proiettili o no. Ma c'è anche un'ordinanza intelligente. Un pungiglione lanciato da un gioco di ruolo può tenere traccia del calore di un aereo, ad esempio.
Steve H,

@SteveH - solo "proiettili" non guidati. Ho chiarito in questione.
e100,

Risposte:


11

Pensieri casuali (nessun codice) ...

Nella vita reale, si prende di mira un veicolo con un movimento complesso, cercando di capire cos'è quel movimento in modo da anticiparlo. Se stai scrivendo un codice per l'IA per indirizzare l'IA, allora dovresti creare un'IA di destinazione derivata dall'intelligenza artificiale di destinazione. Ad esempio, se il tuo obiettivo correrà in cerca di copertura se nelle vicinanze, l'IA bersaglio dovrebbe essere in grado di anticipare questo movimento.

D'altra parte, se stai cercando di colpire gli umani con l'IA, sarà molto più difficile. Il targeting casuale potrebbe funzionare, ma potrebbe sembrare solo "casuale", il che potrebbe essere un problema per il tuo gioco.

Per trovare una soluzione, una cosa che puoi fare è separare mentalmente il problema nei diversi pezzi del tentativo di sparare a qualcosa ...

Capacità di tracciamento

Per colpire un bersaglio con un dispositivo mirato che può muoversi, bisogna essere in grado di tracciare e muovere il dispositivo per seguire il bersaglio. Il targeter osserva il bersaglio in movimento e muove il suo obiettivo da seguire. Se un tracker ha un numero limitato di movimenti, la sua capacità di tracciamento sarà ostacolata e potrebbe essere difficile rintracciare alcune cose. ma se il tracker ha una grande libertà di tracciamento, può potenzialmente tracciare molte cose. Pensa alla differenza tra una torretta del serbatoio e il fatto che stai indicando qualcosa con un dito.

Velocità di tracciamento

Un altro fattore è la velocità con cui il tracker può tracciare. Se è molto lento (pensa a "torretta serbatoio"), allora non può seguire un bersaglio che si muove velocemente. Invece deve fare affidamento sull'anticipazione del percorso del bersaglio. D'altra parte un tracker con velocità "veloce" può spostarsi rapidamente nella nuova posizione di un bersaglio.

Tracciamento del tempo di reazione

Un terzo fattore di tracciamento è il tempo di reazione del tracciamento. Cioè, quando il bersaglio cambia direzione, quanto velocemente può reagire il localizzatore? L'ultimo tracker è uno con una velocità di tracciamento rapida e tempi di reazione istantanei: può tracciare qualsiasi cambiamento.

Riconoscimento target

In che modo il targeter può riconoscere un target? Se uno sta seguendo un bersaglio in un ambiente complesso, ci possono essere momenti in cui il bersaglio non riesce a riconoscere o "perde" il bersaglio. Più velocemente il targeter è in grado di riconoscere un target, meglio lo farà. Meno è probabile che perda un bersaglio, meglio sarà.

Tempo di reazione al tiro

Solo perché il bersaglio si presenta nel mirino per un breve momento non significa che accadrà un tiro. Il tracker può reagire abbastanza velocemente da premere il grilletto? Inseguitori veramente cattivi con tempi di reazione davvero cattivi non colpiranno nulla. Inseguitori veramente buoni con tempi di reazione davvero buoni colpiranno qualsiasi cosa, perché hanno bisogno solo del minimo tempo sul bersaglio.

Anticipare il movimento

L'anticipazione del movimento è un altro fattore. Questa è la differenza tra il solo tentativo di tracciare dove si trova il bersaglio ora, rispetto al tracciamento verso dove pensi che sarà il bersaglio. Se un tracker può anticipare, può seguire meglio il bersaglio e avere più possibilità di avere il bersaglio nel mirino, migliorando così la sua capacità di ottenere un tiro in base al tempo di reazione. I tracker a zero anticipation spostavano automaticamente l'obiettivo verso l'obiettivo, indipendentemente dalle azioni dell'obiettivo. Il caso peggiore è un tracker la cui velocità è bassa senza alcuna aspettativa cercando di tracciare un semplice bersaglio in movimento. Immagina un bersaglio che passi solo a sinistra e poi a destra ogni pochi secondi. Un tracker lento continuerebbe a far rimbalzare l'obiettivo avanti e indietro, mai abbastanza veloce da raggiungere l'obiettivo.

Modellazione del movimento target

Come accennato in alto, il tracker può anticipare l'obiettivo modellandone il movimento, che non è necessariamente così difficile da fare. Se un veicolo sta guidando a una certa velocità, ci sono un numero finito di posti in cui può trovarsi il veicolo nel secondo successivo e sono disposti essenzialmente come un triangolo davanti al loro movimento. Più velocemente stanno andando, più stretto è il triangolo. Più velocemente possono girare, più è largo. Un veicolo veramente veloce che difficilmente può girare (come un razzo) ha un percorso potenziale molto piccolo stretto. Uno lento che può girare molto bene ha un percorso potenziale molto più ampio. È come quelle telecamere di backup su alcune auto che sovrappongono le linee che ti mostrano dove andrà la tua auto se continui a guidare come è ora, oltre a dove potresti potenzialmente andare se dovessi girare di più la ruota.

Quindi, tenendo a mente ciò, dovresti mettere la tua casella "potenziale spazio target" in quello spazio potenziale percorso. Se sai che il tuo obiettivo ha la tendenza a spostarsi da un lato all'altro, la casella del bersaglio deve essere abbastanza ampia da comprendere tutti i movimenti possibili. Se il tuo bersaglio è piuttosto lineare nel suo movimento, puoi rendere la tua scatola bersaglio molto più piccola e centrata sulla posizione prevista del movimento. Penso che questo tipo di pensiero ti aiuterà a creare un'unica soluzione per il tracciamento che non distingue realmente tra anticipazione lineare e non lineare. Il tracciamento lineare è semplicemente un'anticipazione con un livello di confidenza più elevato (riquadro di targeting più piccolo), mentre il tracciamento casuale è il tracciamento di confidenza di livello basso (riquadro di tracciamento più grande).

Naturalmente questo diventa difficile se l'obiettivo è fermo, perché ha il potenziale per muoversi in qualsiasi direzione. Ma ovviamente se rimane fermo troppo a lungo, è un bersaglio facile anche per il tracker più lento.

Psicologia del bersaglio

Considera cosa faresti se all'improvviso avessi dei colpi che atterrano alla tua sinistra. Correresti contro di loro? NO! Corri a destra. O forse correresti per una copertura. Ma poi forse il targeter spara in modo specifico nella posizione di copertina, quindi non ci si corre.

Capacità di apprendere

Potenzialmente il tuo targeter può imparare dall'esperienza. Supponiamo che all'inizio non abbiano idea del potenziale movimento del veicolo. Non sanno quanto velocemente può andare o quanto velocemente può girare. Osservarlo in azione insegnerà loro di cosa si tratta. Ciò significa che la prima volta che provano a seguirne uno, potrebbero non fare molto bene. Ma imparano il comportamento del movimento e fanno meglio nei tentativi successivi.

Ulteriori letture

Un po 'di googling dopo aver scritto questo ha portato a questo manuale per il tiro al bersaglio ...

http://www.globalsecurity.org/military/library/policy/army/fm/3-22-9/c07.htm

Potrebbero esserci delle idee su come una persona reale dovrebbe / dovrebbe / potrebbe mirare e seguire.


Wow - mi ha dato un sacco di spunti di riflessione - grazie!
e100

Sì, non so se ho una risposta esatta per te, solo alcune cose a cui pensare. Per quanto ci sia matematica nel monitoraggio, penso che ci sia anche psicologia.
Tim Holt,

In effetti, l'idea di identificare che tipo di bersaglio è e quindi il suo probabile modello di comportamento è evidente a posteriori. Potrebbe essere esteso per capire qual è anche la sua modalità / stato (ad es. Statico / inconsapevole / in combattimento / eludere ecc.)
e100
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.