Sto lavorando a un'arma a coltello da lancio in cui un giocatore mira e poi lancia un coltello. Il coltello gira in aria e in caso di collisione smette di girare e si accoppia all'oggetto con cui si è urtato. La rotazione viene gestita tramite l'animazione mentre il percorso del coltello è gestito dalla fisica.
Un problema che sto affrontando è come assicurarsi che quando il coltello si scontra con un nemico che il coltello sarà rivolto verso di loro. Al momento ciò che accade a volte è che il coltello si inserisce per primo in una maniglia nemica. Il che è ovviamente irrealistico. Allo stesso tempo, penso che sarebbe abbastanza irragionevole per il coltello "colpire" il nemico solo se si scontrasse prima con la lama, poiché la velocità con cui il coltello gira è al di fuori del controllo del giocatore.
Ho guardato un sacco di riprese lente di killcam di armi simili e ogni volta che l'arma viene lanciata gira in aria e magicamente finisce sempre con la lama che punta verso il bersaglio. Per un gioco in cui la distanza di lancio sarà costante, questo è abbastanza semplice da fare. Ma non sono del tutto sicuro di come prevederlo poiché ci sono molti fattori imprevedibili coinvolti, ad es. direzione del coltello, rotazione del coltello, posizione del nemico, distanza dal nemico ecc. Se possibile, preferirei non dover usare una logica di previsione complessa poiché il gioco sarà per dispositivi di fascia bassa. Esiste un modo "fumo e specchi" per risolvere questo problema?
Esempio: https://youtu.be/0fav8lFpBko?t=42s