From a2d11f670a10aca5099034bcddc32faa81226a55 Mon Sep 17 00:00:00 2001 From: Alibek Omarov Date: Wed, 13 Jul 2022 19:20:43 +0300 Subject: [PATCH] engine, public: fix float precision issues in mathlib and monster navigation code --- engine/server/sv_move.c | 2 +- public/xash3d_mathlib.h | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/engine/server/sv_move.c b/engine/server/sv_move.c index 491e0a89..48753f21 100644 --- a/engine/server/sv_move.c +++ b/engine/server/sv_move.c @@ -243,7 +243,7 @@ float SV_VecToYaw( const vec3_t src ) } else { - yaw = (int)( atan2( src[1], src[0] ) * 180.0f / M_PI_F ); + yaw = (int)( atan2( src[1], src[0] ) * 180.0 / M_PI ); if( yaw < 0 ) yaw += 360.0f; } return yaw; diff --git a/public/xash3d_mathlib.h b/public/xash3d_mathlib.h index 985e5d1f..363090d2 100644 --- a/public/xash3d_mathlib.h +++ b/public/xash3d_mathlib.h @@ -34,18 +34,18 @@ GNU General Public License for more details. #define ROLL 2 #ifndef M_PI -#define M_PI (float)3.14159265358979323846 +#define M_PI (double)3.14159265358979323846 #endif #ifndef M_PI2 -#define M_PI2 ((float)(M_PI * 2)) +#define M_PI2 ((double)(M_PI * 2)) #endif #define M_PI_F ((float)(M_PI)) #define M_PI2_F ((float)(M_PI2)) -#define RAD2DEG( x ) ((float)(x) * (float)(180.f / M_PI_F)) -#define DEG2RAD( x ) ((float)(x) * (float)(M_PI_F / 180.f)) +#define RAD2DEG( x ) ((double)(x) * (double)(180.0 / M_PI)) +#define DEG2RAD( x ) ((double)(x) * (double)(M_PI / 180.0)) #define NUMVERTEXNORMALS 162