]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - cg_math.h
No longer gives fail message when skybox loads properly, and no longer gives two...
[xonotic/darkplaces.git] / cg_math.h
index e7921e836804da5410f334c3649b3eef91edb23c..d8c539e1aa4cfa63f035f591324d8c71d4aed0fa 100644 (file)
--- a/cg_math.h
+++ b/cg_math.h
@@ -32,6 +32,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #define M_PI           3.14159265358979323846  // matches value in gcc v2 math.h
 #endif
 
+#ifndef NULL
+#define NULL ((void *)0)
+#endif
+
 typedef float vec_t;
 typedef vec_t vec2_t[2];
 typedef vec_t vec3_t[3];
@@ -46,11 +50,11 @@ extern vec3_t vec3_origin;
 #define nanmask (255<<23)
 #define        IS_NAN(x) (((*(int *)&x)&nanmask)==nanmask)
 
-#define bound(min,num,max) (num >= min ? (num < max ? num : max) : min)
+#define bound(min,num,max) ((num) >= (min) ? ((num) < (max) ? (num) : (max)) : (min))
 
 #ifndef min
-#define min(A,B) (A < B ? A : B)
-#define max(A,B) (A > B ? A : B)
+#define min(A,B) ((A) < (B) ? (A) : (B))
+#define max(A,B) ((A) > (B) ? (A) : (B))
 #endif
 
 #define lhrandom(MIN,MAX) ((rand() & 32767) * (((MAX)-(MIN)) * (1.0f / 32767.0f)) + (MIN))
@@ -76,17 +80,6 @@ extern vec3_t vec3_origin;
 #define VectorScale(in, scale, out) ((out)[0] = (in)[0] * (scale),(out)[1] = (in)[1] * (scale),(out)[2] = (in)[2] * (scale))
 #define VectorCompare(a,b) (((a)[0]==(b)[0])&&((a)[1]==(b)[1])&&((a)[2]==(b)[2]))
 #define VectorMA(a, scale, b, c) ((c)[0] = (a)[0] + (scale) * (b)[0],(c)[1] = (a)[1] + (scale) * (b)[1],(c)[2] = (a)[2] + (scale) * (b)[2])
-#define VectorNormalizeFast(_v)\
-{\
-       float _y, _number;\
-       _number = DotProduct(_v, _v);\
-       if (_number != 0.0)\
-       {\
-               *((long *)&_y) = 0x5f3759df - ((* (long *) &_number) >> 1);\
-               _y = _y * (1.5f - (_number * 0.5f * _y * _y));\
-               VectorScale(_v, _y, _v);\
-       }\
-}
 #define VectorRandom(v) {do{(v)[0] = CGVM_RandomRange(-1, 1);(v)[1] = CGVM_RandomRange(-1, 1);(v)[2] = CGVM_RandomRange(-1, 1);}while(DotProduct(v, v) > 1);}
 
 void AngleVectors (vec3_t angles, vec3_t forward, vec3_t right, vec3_t up);
@@ -99,3 +92,4 @@ void AngleMatrix (vec3_t angles, vec3_t translate, vec_t matrix[][4]);
 void VectorVectors(const vec3_t forward, vec3_t right, vec3_t up);
 
 #endif
+