Bug Tracker – Bug 792

Bullet puffs do not need 32 bit fixed-point precision

Last modified: 2012-02-25 19:03:59 CST
Bug 792 - (ARRAY(0x6003bc8)) Bullet puffs do not need 32 bit fixed-point precision
(ARRAY(0x6003bc8))
Bullet puffs do not need 32 bit fixed-point precision
Status: NEW
Product: Odamex
Classification: Unclassified
Component: Server & Client
(old) 0.6-dev
All All
: P1 trivial
Depends on:
Blocks:
  Show dependency tree
 
Reported: 2012-02-25 19:03:59 CST by Dr. Sean
Modified: 2012-02-25 19:03 CST (History)
0 users

See Also:


Attachments
Patch (2.26 KB, patch)
2012-02-25 19:03:59 CST, Dr. Sean
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dr. Sean 2012-02-25 19:03:59 CST
Created ﷒0﷓
Patch

Accuracy for bullet and blood puffs is not particularly important at a resolution greater than 1 map unit.  A great bandwidth savings can be had by sending bullet puff positions as 16 bit instead of 32 bit fixed-point coordinates.  The angle the puff is facing is also of no importance and can be disregarded.  For a super-shotgun blast, the position and angle of bullet puffs current use 16*20 = 320 bytes.  By not sending the angle and sending the position as 16 bits instead, a super-shotgun blast would use 6*20 = 120 bytes.

I have attached a patch that implements this.  I feel it can be implemented better in the future as part of a more robust network serialization scheme that determines what level of positional accuracy an actor needs based on certain criteria.