Stiamo realizzando uno sparatutto in prima persona più semplice. Il client invia la sua posizione al server a una velocità fissa (attualmente a 10Hz). Il server invia un singolo messaggio che contatta tutte le posizioni dei giocatori a tutti i giocatori alla stessa velocità (10Hz).
Come previsto, il movimento è piuttosto discontinuo poiché il gioco a 60 fps sta ricevendo aggiornamenti 10 volte al secondo. Qual è il modo migliore per attenuare questo movimento? Il modo più ovvio sarebbe interpolare tra gli ultimi due pacchetti, in modo che l'interpolazione finisca quando riceviamo un nuovo pacchetto. Ma questo aggiunge un ritardo istantaneo di 100 ms per tutti i giocatori.
L'altro modo sarebbe usare la velocità e l'accelerazione dedotte dagli ultimi pacchetti per prevedere dove si trova il giocatore prima dell'arrivo del pacchetto successivo, tuttavia se la previsione è sbagliata, il giocatore tende a saltare non appena viene ricevuto un nuovo pacchetto .
Qualcuno sa come i titoli AAA risolvono questo problema?