From e0b3418e65a81ed986507c186ba5f2e2eae1cb30 Mon Sep 17 00:00:00 2001 From: Sergeanur Date: Fri, 8 May 2020 14:34:21 +0300 Subject: Fix water UV on high FPS and inverted free camera --- src/core/Cam.cpp | 2 +- src/core/Timer.h | 5 +++++ src/render/WaterLevel.cpp | 5 +++++ 3 files changed, 11 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/core/Cam.cpp b/src/core/Cam.cpp index e33e6bb0..76d8d22b 100644 --- a/src/core/Cam.cpp +++ b/src/core/Cam.cpp @@ -4489,7 +4489,7 @@ CCam::Process_FollowPed_Rotation(const CVector &CameraTarget, float TargetOrient */ { LookLeftRight = -CPad::GetPad(0)->LookAroundLeftRight(); - LookUpDown = CPad::GetPad(0)->LookAroundUpDown(); + LookUpDown = -CPad::GetPad(0)->LookAroundUpDown(); } float AlphaOffset, BetaOffset; if(UseMouse){ diff --git a/src/core/Timer.h b/src/core/Timer.h index 00a11409..004cda4d 100644 --- a/src/core/Timer.h +++ b/src/core/Timer.h @@ -56,6 +56,11 @@ public: friend bool GenericLoad(void); friend bool GenericSave(int file); + +#ifdef FIX_BUGS + static float GetDefaultTimeStep(void) { return 5.0f / 3.0f; } + static float GetTimeStepFix(void) { return GetTimeStep() / GetDefaultTimeStep(); } +#endif }; #ifdef FIX_BUGS diff --git a/src/render/WaterLevel.cpp b/src/render/WaterLevel.cpp index d7035ab1..e8e79f96 100644 --- a/src/render/WaterLevel.cpp +++ b/src/render/WaterLevel.cpp @@ -351,8 +351,13 @@ CWaterLevel::RenderWater() if ( !CTimer::GetIsPaused() ) { +#ifdef FIX_BUGS + TEXTURE_ADDU += (CGeneral::GetRandomNumberInRange(-0.0005f, 0.0005f) + windAddUV) * CTimer::GetTimeStepFix(); + TEXTURE_ADDV += (CGeneral::GetRandomNumberInRange(-0.0005f, 0.0005f) + windAddUV) * CTimer::GetTimeStepFix(); +#else TEXTURE_ADDU += CGeneral::GetRandomNumberInRange(-0.0005f, 0.0005f) + windAddUV; TEXTURE_ADDV += CGeneral::GetRandomNumberInRange(-0.0005f, 0.0005f) + windAddUV; +#endif } if ( TEXTURE_ADDU >= 1.0f ) -- cgit v1.2.3