Interpolation in reconciling collaboration state
- Langage dominant
- Haskell
- Étoiles
- 1.3k
- Forks
- 201
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
We'd like to try adding interpolation to collaboration state. The idea is that when an event is received in the past from a remote player, we should initially apply it in the present, and then slide it back in time over some short interval (maybe 200 ms), to its actual target time.
This is equivalent to smoothly interpolating the resulting game state, if we assume: (1) that the step function is continuous with respect to `dt`, and (2) that events commute. When these assumptions fail, we get different artifacts from what we'd get when interpolating the game state; e.g., instead of walking through a wall, the player jumps from one side to the other. But the idea of interpolating is that these assumptions succeed most of the time.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Aucun fichier, test ou point d’entrée n’est nommé. Commencez par localiser la gestion des événements de l’état de collaboration et les chemins de mise à jour de l’état du jeu, puis déterminez comment est représenté le temps cible réel d’un événement distant. La tâche est terminée lorsque les événements distants peuvent être appliqués immédiatement et déplacés progressivement jusqu’à leur temps cible sur un court intervalle, par exemple 200 ms.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- haskell
- Domaine
- distributed-systems, game-dev, networking
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 25/100