*/
// mathlib.h
+#ifndef MATHLIB_H
+#define MATHLIB_H
+
#ifndef M_PI
#define M_PI 3.14159265358979323846 // matches value in gcc v2 math.h
#endif
qbyte NormalToByte(const vec3_t n);
void ByteToNormal(qbyte num, vec3_t n);
-void R_ConcatRotations (const float in1[3][3], const float in2[3][3], float out[3][3]);
-void R_ConcatTransforms (const float in1[3][4], const float in2[3][4], float out[3][4]);
+void R_ConcatRotations (const float in1[3*3], const float in2[3*3], float out[3*3]);
+void R_ConcatTransforms (const float in1[3*4], const float in2[3*4], float out[3*4]);
void AngleVectors (const vec3_t angles, vec3_t forward, vec3_t right, vec3_t up);
// LordHavoc: proper matrix version of AngleVectors
#define PlaneDist(point,plane) ((plane)->type < 3 ? (point)[(plane)->type] : DotProduct((point), (plane)->normal))
#define PlaneDiff(point,plane) (((plane)->type < 3 ? (point)[(plane)->type] : DotProduct((point), (plane)->normal)) - (plane)->dist)
-//#define PlaneDist(point,plane) (DotProduct((point), (plane)->normal))
-//#define PlaneDiff(point,plane) (DotProduct((point), (plane)->normal) - (plane)->dist)
// LordHavoc: minimal plane structure
typedef struct
tinydoubleplane_t;
void RotatePointAroundVector(vec3_t dst, const vec3_t dir, const vec3_t point, float degrees);
+
+#endif
+