Upgrade to Pro — share decks privately, control downloads, hide ads and more …

iOS Real Time Multiplayer Gaming

iOS Real Time Multiplayer Gaming

Here's a small glimpse into advanced network communication concepts for real time multiplayer gaming with a focus on iOS mobile devices. Network protocols, topologies, synchronization strategies, bitpacking techniques and so much more! Everything will culminate into an example game for iOS using GameKit for matchmaking and communication, though the usefulness of the concepts extend to every platform.

Joel Stewart

April 17, 2014
Tweet

Other Decks in Programming

Transcript

  1. @ojstewart Reliable : TCP Guaranteed In-Order Guaranteed Arrival Guaranteed Correct

    Sender Receiver Sliding Window Packet 1 Ack 1 Handshake
  2. @ojstewart Achieving Nirvana UDP with selective ACKs Send Delta of

    ACK Values Send Delta of Recipient’s Prediction Synchronize Object Acceleration Use Acceleration in Velocity Prediction Use Velocity in Position Prediction Reduce Precision Everywhere “Bitpack” with Custom Strategies Allow Slop to Reduce Traffic
  3. @ojstewart Bit Packing 00000000 00000000 00000000 00000001 00001 5-bit Strategy

    00000000 00000000 00000000 11000001 01100 10001 00000000 00000000 00001000 11000001 <= “4096”? 15-bits: 01000 11100 10001 <= “15” requires 5-bits: <= “255”? 10-bits: