3 ms·
> I wonder what web development could learn from online game development when it comes to "multiplayer" apps - I mean it's right there in the name. 100%. The a
by paulgb 4y ago
> I wonder what web development could learn from online game development when it comes to "multiplayer" apps - I mean it's right there in the name.
100%. The architecture we used for https://plane.dev https://plane.dev takes a lot of inspiration from how game servers work, but using HTTP/WebSocket instead of UDP.
A lot of state sharing techniques that people are now using on the web (like cursor position smoothing and optimistic updates) have decades of precedent in multiplayer games.
We’ve also seen more apps start to use an approach to pixel streaming which more closely resembles stadia than traditional VNC. https://digest.browsertech.com/archive/browsertech-digest-womp-and-the-rise-of-pixel/ https://digest.browsertech.com/archive/browsertech-digest-wo...
- Joeri 4y agobut using HTTP/WebSocket instead of UDP I think websockets run over UDP when hosted on http/3.
- paulgb 4y agoThey do, but with HTTP/3 there’s also WebTransport, which is even better because it means we will be able to avoid head-of-line blocking.
- JayStavis 4y agoThe intersection of state replication and pixel streaming is indeed interesting. Cloud games for example are usually using game state sync techniques, and then add in the client<>gpu latency on top of that. A true cloud native game (sadly part of Stadia's original ambitions) would hopefully have a more e2e state management approach inclusive of the pixel latency. This is very different from "local multiplayer" pixel streaming, which may be what companies like Switchboard[1] are doing: multiple clients control the same I/O channel (e.g. you and I share a mouse on a single remote desktop) [1] https://www.switchboard.app/ https://www.switchboard.app/