MSG_PackCoord: use rounded coordinate

This commit is contained in:
L 2023-02-08 14:47:57 +01:00
parent 034ceb2a99
commit 595958d578

View file

@ -1790,23 +1790,14 @@ int MSG_PackAlpha(float alpha, int bits)
int MSG_PackCoord(float coord) int MSG_PackCoord(float coord)
{ {
int packed; unsigned int packed = (int)round(coord * 4.0 + MAX_PACKED_COORD_HALF);
float rounded;
rounded = coord * 4.f + MAX_PACKED_COORD_HALF;
packed = (int)rounded;
coordstats[packed]++; coordstats[packed]++;
return packed; return packed;
} }
int MSG_PackCoordExtra(float coord) int MSG_PackCoordExtra(float coord)
{ {
unsigned int packed; unsigned int packed = round(coord * 16.0 + MAX_PACKED_COORD_EXTRA_HALF);
float rounded;
rounded = coord * 16.f + MAX_PACKED_COORD_EXTRA_HALF;
packed = (int)rounded;
if (packed >= MAX_PACKED_COORD_EXTRA) { if (packed >= MAX_PACKED_COORD_EXTRA) {
Com_DPrintf("Illegal XYZ coordinates for an entity, information lost in transmission\n"); Com_DPrintf("Illegal XYZ coordinates for an entity, information lost in transmission\n");
} }