google / google/codeworld

Interpolation in reconciling collaboration state

Open
#447 3 comments 0 reactions 0 assignees View on GitHub
discussion
Dominant language
Haskell
Stars
1.3k
Forks
201
PR merge metrics
No merged PRs in 30d

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.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.