GDC2011: Networking for Physics Programmers

by Glenn Fiedler on February 24, 2011

This year I’ll be presenting a new version of Networking for Physics Programmers as part of the physics tutorial day on Tuesday.

As for the material to be presented this year, it will differ significantly from prior years. I’m going for more advanced material this year so I’m not going to spend 5 minutes explaining UDP vs. TCP. We’ll be skipping that and going right to the interesting stuff which is:

1. How to develop your own custom network protocol in UDP. Reliability and acks, node / transport abstraction, how to structure your game protocol and serialize packets.

2. Overview of game networking models. Pure client/server, FPS networking model with client side prediction, deterministic lockstep, authority scheme. Examples of games using each technique. How each networking model works. Advantages and disadvantages. Understand the trade-offs so you can pick the best networking model for your situation.

3. Worked example: authority scheme for networked physics in a large streaming world. Same cube demo. Different networking strategy. This year I’ll be doing it dedicated client/server style instead of P2P and I’ll focus on all the practical details and tricks required to synchronize physics state in under 64kbit/sec such as: compression tricks for position, orientation and linear/angular velocity, how to prioritize object updates when you have too many objects to fit in one packet, using a reliability system and acks to avoid sending at rest objects over and over, lossy compression, quantization and other neat tricks.

Hope to see you Tuesday, March 1, in Room 3007, West Hall Moscone Center. I’ll be talking from 3:30PM- 4PM

Schedule details here.

UPDATE: Unfortunately the original material as presented above consistently took 2.5 hours during practice sessions. As a result, I’ve had to cut section 1 and 3. There is a lot of great info in section 2 and the feedback from practice sessions was consistently that it was the best section of the talk. If you’d like some information about #1 and #3 you can ask questions during Q&A, plus I’ll be available during GDC for impromptu meetings etc. where I can go over this info with a whiteboard or a notepad. DM me on twitter if you’d like to meet up: @gafferongames

{ 17 comments… read them below or add one }

Dave February 25, 2011 at 3:27 am

If only I lived on the west coast…. I’d love to come listen. I hope it goes great and I really hope you post everything on your website after you’re done! :)

Reply

Fredrik February 25, 2011 at 7:35 am

Hi!

For those of us who are unable to attend the GDC, will you release any material (like slides, or video?) presented in your talk here on your blog? I can only speak for myself, but at least I would really appreciate that. :)

Greetings,
Fredrik.

Reply

Glenn Fiedler February 25, 2011 at 3:51 pm

absolutely. slides + demo

Reply

James Mitchell March 6, 2011 at 10:49 am

You need to come back to Australia and do a talk at some event here. :P

Reply

Glenn Fiedler March 7, 2011 at 8:14 pm

I’m available anytime if somebody wants to front the airfare :)

Reply

Glenn Fiedler March 15, 2011 at 8:03 pm

Heads up I’m a bit late getting the final slides ready due to a problem with my macbook air. Final slides will be done this week. cheers all

Reply

J R March 31, 2011 at 8:00 pm

Just curious about the slides. :) I wanted to learn about the subject and I checked the GDC Vault and I didn’t see anything there.

Reply

Glenn Fiedler April 1, 2011 at 2:50 am

Still hard at work on them, this weekend I hope!

Reply

Nick K. April 3, 2011 at 10:54 pm

Awesome. I’ve also been looking forward to finally getting a look at the material.

Reply

Ali April 11, 2011 at 8:33 pm

Hello,
I’ve been waiting for your slides and your source code since I’ve seen your post in your blog. Unfortunately, you are too busy to post or you just simply forgot about.
Anyhow, we are still waiting for your slides and I hope you post it soon.

Thanks,
Ali

Reply

Glenn Fiedler April 11, 2011 at 9:46 pm

Coming very soon. I have not forgotten!

Reply

Glenn Fiedler April 24, 2011 at 7:55 am

For those who have been waiting, here are the slides as presented at GDC:
http://code.google.com/p/netgame/downloads/detail?name=Networked%20Physics%202011.key

Reply

Anonymous May 13, 2011 at 1:44 pm

Can you export to this one to PDF too?

Reply

Nick K. July 3, 2011 at 9:41 am

Yeah, us Windows guys can’t open the keynote file unfortunately. Any chance of getting a Windows-compatible version? Either PDF or PPT (PowerPoint) would be awesome. Thanks!

Reply

Brian Bucklew July 14, 2011 at 5:33 pm

Seconding the need for a PDF or other Windows-compatible format, please. :)

Reply

Joe April 26, 2011 at 1:32 am

Cheers for the slides, happy easter =)

Reply

Veikko Eeva July 13, 2011 at 8:01 pm

One can use Zamzar to convert Keynote files to something that’s readily usable on Windows, like PowerPoint (2003, I assume). Linky: http://blog.zamzar.com/2011/05/18/convert-keynote-to-powerpoint-pdf-html-and-more/. It looks like converting straight from the URL doesn’t work always, uploading from a file seem to be more robust.

Reply

Leave a Comment

{ 1 trackback }

Previous post: