I was reading through the Q3 source and notice a reference to Struct delta compression.
I was wondering if there is anything more to this than keeping copied of the ''before'' struct comparing then filling the new struct up with NULL''s(for all bit the same) before sending..
Also, do you more experinced guy''s generally use ''general'' compression on your delta compressed data to further reduce the bytes sent?
Chris ''gimp'' Brodie
On thinking about it a bit more all the other clinets in a game really need to know about me is changes that I make to my base state.. so I can probably get away with some basic strings of preformatted data, with data reduction and then compression.
I''m still interested to understand the reason that carmack used delta compression on his q3 game structs. Or at least thats what his commented code say.
I''d be inclined to just come up with a messaging system that both client and server understand (like first 4 bits denote the message type which allows the destination to what to do with the data (and how to expand the data reduction method. ) If I wanted to use massive structs in the game like all the quakes do then I''d just have a translation laver that pulls the important stuff out of the struct and shoves it in to these custom messages.
Maybe that''s what he did and I misunderstood his code comments...