4 ms·
When you get to game networking Gaffer On Games is a must read. Efficient game networking layers are all about that UDP [2] and reliable UDP [3]. When web games
by drawkbox 6y ago
When you get to game networking Gaffer On Games is a must read. Efficient game networking layers are all about that UDP [2] and reliable UDP [3]. When web games were huge it would have been pure gold to have WebRTC with built in UDP, NAT/punchthrough etc.
[1] https://gafferongames.com/ https://gafferongames.com/
[2] https://gafferongames.com/post/reliability_ordering_and_congestion_avoidance_over_udp/ https://gafferongames.com/post/reliability_ordering_and_cong...
[3] https://gafferongames.com/post/reliable_ordered_messages/ https://gafferongames.com/post/reliable_ordered_messages/
- ggambetta 6y agoI also wrote about client-side prediction and server reconciliation [0], I suppose you're referencing that; but just to be clear, this book is just about graphics, and has nothing to do with that (other than the fact that multiplayer games generally have graphics) [0] https://gabrielgambetta.com/client-server-game-architecture.html https://gabrielgambetta.com/client-server-game-architecture....
- drawkbox 6y agoI was just saying to people interested in games, it is good to get a base level to advanced guide to every part including rendering, networking, gameplay etc that is a good source built from experience and explains things clearly. Yours looks like a great source for networking as well, thanks for adding it. I see you reference Gaffer on Games and the Valve Latency Compensation article, both are great for understanding game networking and helped me greatly in shipped titles especially prior to Unity/Unreal using stuff like enet [2]/RakNet [3]/custom. Lots of networking libs inherited the best from those like reliable UDP, channels and dealing with NAT. Both are excellent libraries to help understand the full picture and get started. Lots of game engines networking libs are based on those. [1] https://developer.valvesoftware.com/wiki/Latency_Compensating_Methods_in_Client/Server_In-game_Protocol_Design_and_Optimization https://developer.valvesoftware.com/wiki/Latency_Compensatin... [2] http://enet.bespin.org/ http://enet.bespin.org/ [3] http://www.jenkinssoftware.com/ http://www.jenkinssoftware.com/ + https://github.com/facebookarchive/RakNet https://github.com/facebookarchive/RakNet
- wyqydsyq 6y agoAnother great resource for learning about multiplayer game networking is this guide from Mikola Lysenko: https://0fps.net/2014/02/10/replication-in-networked-games-overview-part-1/ https://0fps.net/2014/02/10/replication-in-networked-games-o...
- ggambetta 6y agoAnd of course there's also this monumental work: https://www.amazon.com/Development-Deployment-Multiplayer-Online-Games/dp/3903213063 https://www.amazon.com/Development-Deployment-Multiplayer-On...