Forum

A new standardised protocol?

Discuss programming topics for the various GPL'd game engine sources.

Moderator: InsideQC Admins

Postby Spike » Tue Oct 14, 2008 10:14 am

Or you can revamp the protocol to be bit-based rather than byte based, and send coords with 10bit precision...

But its probably best to add proper deltas between frames and just use a convienient coord size.
Mostly its just entities that are spammed, wasted space elsewhere really doesn't matter too much. But two players running around spam each other with origin/velocity updates constantly.

Darkplaces5+ uses floats for WriteCoord (and thus all normal coords), with it choosing between 16bit and floats for entity updates. This is a nice aproach.
Deltas also reduce the data sent. It would still send less data even if it were fully 32bit...
Spike
 
Posts: 2892
Joined: Fri Nov 05, 2004 3:12 am
Location: UK

Postby metlslime » Tue Oct 14, 2008 10:28 am

oh, and the idea of sending all coords as relative to the client origin (except for the client origin itself) occurred to me too, and this is actually probably a good idea, except for the amount of code that it affects. We would then assume the client doesn't care about anything more than 4096 units away.
metlslime
 
Posts: 316
Joined: Tue Feb 05, 2008 11:03 pm

Postby r00k » Wed Oct 15, 2008 4:47 am

LordHavoc wrote:... sometime - after IronGrip: Warlords ....


You mean this ?

http://igwarlord.isotx.com/index.php

damn i hit the BUY button sevral times and it didnt work ;)
r00k
 
Posts: 1110
Joined: Sat Nov 13, 2004 10:39 pm

Postby metlslime » Thu Oct 16, 2008 2:54 am

metlslime wrote:oh, and the idea of sending all coords as relative to the client origin (except for the client origin itself) occurred to me too, and this is actually probably a good idea, except for the amount of code that it affects. We would then assume the client doesn't care about anything more than 4096 units away.


Oh yeah, I remember now that the flaw with this idea is that even in a map like Marcher that fits inside the standard 8192 box, you would actually lose visibility of far away entities in that main outdoor space, since it is larger than 4096 across. So this would actually lose capabilities compared to the standard protocol.
metlslime
 
Posts: 316
Joined: Tue Feb 05, 2008 11:03 pm

Postby metlslime » Sat Oct 25, 2008 9:39 am

another crazy idea: generate and send the client the bounding box for the entire level's playable space, then send all coordinates so that so that 0-65535 are mapped so the range defined by the bounding box. so as the level exceeds the normal 8192^3 cube, it would gradually lose precision.
metlslime
 
Posts: 316
Joined: Tue Feb 05, 2008 11:03 pm

Previous

Return to Engine Programming

Who is online

Users browsing this forum: No registered users and 1 guest