summaryrefslogtreecommitdiff
path: root/public/worldsize.h
diff options
context:
space:
mode:
authorFluorescentCIAAfricanAmerican <[email protected]>2020-04-22 12:56:21 -0400
committerFluorescentCIAAfricanAmerican <[email protected]>2020-04-22 12:56:21 -0400
commit3bf9df6b2785fa6d951086978a3e66f49427166a (patch)
tree2c0f1f0c63c4832882bc93814ebd2c2b1c6224e5 /public/worldsize.h
downloadarchived-source-engine-2018-hl2-src-master.tar.xz
archived-source-engine-2018-hl2-src-master.zip
Diffstat (limited to 'public/worldsize.h')
-rw-r--r--public/worldsize.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/public/worldsize.h b/public/worldsize.h
new file mode 100644
index 0000000..957e17f
--- /dev/null
+++ b/public/worldsize.h
@@ -0,0 +1,42 @@
+//========= Copyright Valve Corporation, All rights reserved. ============//
+//
+// Purpose:
+//
+// $NoKeywords: $
+//
+//=============================================================================//
+// worldsize.h -- extent of world and resolution/size of coordinate messages used in engine
+
+#ifndef WORLDSIZE_H
+#define WORLDSIZE_H
+#pragma once
+
+
+// These definitions must match the coordinate message sizes in coordsize.h
+
+// Following values should be +16384, -16384, +15/16, -15/16
+// NOTE THAT IF THIS GOES ANY BIGGER THEN DISK NODES/LEAVES CANNOT USE SHORTS TO STORE THE BOUNDS
+#define MAX_COORD_INTEGER (16384)
+#define MIN_COORD_INTEGER (-MAX_COORD_INTEGER)
+#define MAX_COORD_FRACTION (1.0-(1.0/16.0))
+#define MIN_COORD_FRACTION (-1.0+(1.0/16.0))
+
+#define MAX_COORD_FLOAT (16384.0f)
+#define MIN_COORD_FLOAT (-MAX_COORD_FLOAT)
+
+// Width of the coord system, which is TOO BIG to send as a client/server coordinate value
+#define COORD_EXTENT (2*MAX_COORD_INTEGER)
+
+// Maximum traceable distance ( assumes cubic world and trace from one corner to opposite )
+// COORD_EXTENT * sqrt(3)
+#define MAX_TRACE_LENGTH ( 1.732050807569 * COORD_EXTENT )
+
+// This value is the LONGEST possible range (limited by max valid coordinate number, not 2x)
+#define MAX_COORD_RANGE (MAX_COORD_INTEGER)
+
+#define ASSERT_COORD( v ) Assert( (v.x>=MIN_COORD_INTEGER*2) && (v.x<=MAX_COORD_INTEGER*2) && \
+ (v.y>=MIN_COORD_INTEGER*2) && (v.y<=MAX_COORD_INTEGER*2) && \
+ (v.z>=MIN_COORD_INTEGER*2) && (v.z<=MAX_COORD_INTEGER*2) ); \
+
+
+#endif // WORLDSIZE_H