summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFire-Head <Fire-Head@users.noreply.github.com>2019-07-11 02:40:15 +0200
committerFire-Head <Fire-Head@users.noreply.github.com>2019-07-11 02:40:15 +0200
commit3225fe3b92d4e5b375e4e5dd4b09394b8a8224f3 (patch)
treedf955d4e9e981b029a9fc32d943f9639b8debff5
parentwaterupd (diff)
parentWaterLevel done (diff)
downloadre3-3225fe3b92d4e5b375e4e5dd4b09394b8a8224f3.tar
re3-3225fe3b92d4e5b375e4e5dd4b09394b8a8224f3.tar.gz
re3-3225fe3b92d4e5b375e4e5dd4b09394b8a8224f3.tar.bz2
re3-3225fe3b92d4e5b375e4e5dd4b09394b8a8224f3.tar.lz
re3-3225fe3b92d4e5b375e4e5dd4b09394b8a8224f3.tar.xz
re3-3225fe3b92d4e5b375e4e5dd4b09394b8a8224f3.tar.zst
re3-3225fe3b92d4e5b375e4e5dd4b09394b8a8224f3.zip
-rw-r--r--src/render/WaterLevel.cpp24
-rw-r--r--src/render/WaterLevel.h43
2 files changed, 67 insertions, 0 deletions
diff --git a/src/render/WaterLevel.cpp b/src/render/WaterLevel.cpp
index f21471cb..fc368e0d 100644
--- a/src/render/WaterLevel.cpp
+++ b/src/render/WaterLevel.cpp
@@ -22,7 +22,10 @@
#include "WaterLevel.h"
#include "patcher.h"
+<<<<<<< HEAD
+=======
+>>>>>>> a644c4e9ceb440f53e31dd39f11a9a3c859ffb44
float TEXTURE_ADDU;
float TEXTURE_ADDV;
@@ -279,8 +282,12 @@ CWaterLevel::GetWaterLevelNoWaves(float fX, float fY, float fZ, float *pfOutLeve
return true;
}
+<<<<<<< HEAD
inline float
_GetWaterDrawDist()
+=======
+inline float _GetWaterDrawDist()
+>>>>>>> a644c4e9ceb440f53e31dd39f11a9a3c859ffb44
{
// if z less then 15.0f return 1200.0f
if ( TheCamera.GetPosition().z < 15.0f )
@@ -293,8 +300,12 @@ _GetWaterDrawDist()
return (TheCamera.GetPosition().z + -15.0f) * 800.0f / 45.0f + 1200.0f;
}
+<<<<<<< HEAD
inline float
_GetWavyDrawDist()
+=======
+inline float _GetWavyDrawDist()
+>>>>>>> a644c4e9ceb440f53e31dd39f11a9a3c859ffb44
{
if ( FindPlayerVehicle() && FindPlayerVehicle()->IsBoat() )
return 120.0f;
@@ -302,8 +313,12 @@ _GetWavyDrawDist()
return 70.0f;
}
+<<<<<<< HEAD
inline void
_GetCamBounds(bool *bUseCamStartY, bool *bUseCamEndY, bool *bUseCamStartX, bool *bUseCamEndX)
+=======
+inline void _GetCamBounds(bool *bUseCamStartY, bool *bUseCamEndY, bool *bUseCamStartX, bool *bUseCamEndX)
+>>>>>>> a644c4e9ceb440f53e31dd39f11a9a3c859ffb44
{
if ( TheCamera.GetForward().z > -0.8f )
{
@@ -324,6 +339,7 @@ _GetCamBounds(bool *bUseCamStartY, bool *bUseCamEndY, bool *bUseCamStartX, bool
}
}
+<<<<<<< HEAD
float
SectorRadius(float fSize)
{
@@ -332,6 +348,14 @@ SectorRadius(float fSize)
void
CWaterLevel::RenderWater()
+=======
+float SectorRadius(float fSize)
+{
+ return sqrtf(powf(fSize, 2) + powf(fSize, 2)) * 1.0040916293f;
+}
+
+void CWaterLevel::RenderWater()
+>>>>>>> a644c4e9ceb440f53e31dd39f11a9a3c859ffb44
{
bool bUseCamEndX = false;
bool bUseCamStartY = false;
diff --git a/src/render/WaterLevel.h b/src/render/WaterLevel.h
index b8ec7a4d..5c849898 100644
--- a/src/render/WaterLevel.h
+++ b/src/render/WaterLevel.h
@@ -1,5 +1,9 @@
#pragma once
+<<<<<<< HEAD
+=======
+
+>>>>>>> a644c4e9ceb440f53e31dd39f11a9a3c859ffb44
#define WATER_BLOCK_SIZE LARGE_SECTOR_SIZE
#define WATER_FINEBLOCK_SIZE HUGE_SECTOR_SIZE
#define WATER_Z_OFFSET (1.5f)
@@ -24,6 +28,7 @@
#define WATER_HEIGHT ((WATER_END_Y - WATER_START_Y))
+<<<<<<< HEAD
#define WATER_UNSIGN_X(x) ( (x) + (WATER_WIDTH /2) )
#define WATER_UNSIGN_Y(y) ( (y) + (WATER_HEIGHT/2) )
#define WATER_SIGN_X(x) ( (x) - (WATER_WIDTH /2) )
@@ -60,6 +65,44 @@
#define WATER_FROM_EXTRAHUGE_SECTOR_Y(y) ( ((y) - (MAX_EXTRAHUGE_SECTORS/2)) * EXTRAHUGE_SECTOR_SIZE )
#define WATER_TO_EXTRAHUGE_SECTOR_X(x) ( WATER_UNSIGN_X(x) / EXTRAHUGE_SECTOR_SIZE )
#define WATER_TO_EXTRAHUGE_SECTOR_Y(y) ( WATER_UNSIGN_Y(y) / EXTRAHUGE_SECTOR_SIZE )
+=======
+#define WATER_UNSIGN_X(x) ( (x) + (WATER_WIDTH /2) )
+#define WATER_UNSIGN_Y(y) ( (y) + (WATER_HEIGHT/2) )
+#define WATER_SIGN_X(x) ( (x) - (WATER_WIDTH /2) )
+#define WATER_SIGN_Y(y) ( (y) - (WATER_HEIGHT/2) )
+
+// 32
+#define WATER_SMALL_X(x) ( WATER_UNSIGN_X(x) / MAX_SMALL_SECTORS )
+#define WATER_SMALL_Y(y) ( WATER_UNSIGN_Y(y) / MAX_SMALL_SECTORS )
+#define WATER_FROM_SMALL_SECTOR_X(x) ( ((x) - (MAX_SMALL_SECTORS/2) ) * SMALL_SECTOR_SIZE )
+#define WATER_FROM_SMALL_SECTOR_Y(y) ( ((y) - (MAX_SMALL_SECTORS/2) ) * SMALL_SECTOR_SIZE )
+#define WATER_TO_SMALL_SECTOR_X(x) ( WATER_UNSIGN_X(x) / SMALL_SECTOR_SIZE )
+#define WATER_TO_SMALL_SECTOR_Y(y) ( WATER_UNSIGN_Y(y) / SMALL_SECTOR_SIZE )
+
+// 64
+#define WATER_LARGE_X(x) ( WATER_UNSIGN_X(x) / MAX_LARGE_SECTORS )
+#define WATER_LARGE_Y(y) ( WATER_UNSIGN_Y(y) / MAX_LARGE_SECTORS )
+#define WATER_FROM_LARGE_SECTOR_X(x) ( ((x) - (MAX_LARGE_SECTORS/2) ) * LARGE_SECTOR_SIZE )
+#define WATER_FROM_LARGE_SECTOR_Y(y) ( ((y) - (MAX_LARGE_SECTORS/2) ) * LARGE_SECTOR_SIZE )
+#define WATER_TO_LARGE_SECTOR_X(x) ( WATER_UNSIGN_X(x) / LARGE_SECTOR_SIZE )
+#define WATER_TO_LARGE_SECTOR_Y(y) ( WATER_UNSIGN_Y(y) / LARGE_SECTOR_SIZE )
+
+// 128
+#define WATER_HUGE_X(x) ( WATER_UNSIGN_X(x) / MAX_HUGE_SECTORS )
+#define WATER_HUGE_Y(y) ( WATER_UNSIGN_Y(y) / MAX_HUGE_SECTORS )
+#define WATER_FROM_HUGE_SECTOR_X(x) ( ((x) - (MAX_HUGE_SECTORS/2) ) * HUGE_SECTOR_SIZE )
+#define WATER_FROM_HUGE_SECTOR_Y(y) ( ((y) - (MAX_HUGE_SECTORS/2) ) * HUGE_SECTOR_SIZE )
+#define WATER_TO_HUGE_SECTOR_X(x) ( WATER_UNSIGN_X(x) / HUGE_SECTOR_SIZE )
+#define WATER_TO_HUGE_SECTOR_Y(y) ( WATER_UNSIGN_Y(y) / HUGE_SECTOR_SIZE )
+
+// 256
+#define WATER_EXTRAHUGE_X(x) ( WATER_UNSIGN_X(x) / MAX_EXTRAHUGE_SECTORS )
+#define WATER_EXTRAHUGE_Y(y) ( WATER_UNSIGN_Y(y) / MAX_EXTRAHUGE_SECTORS )
+#define WATER_FROM_EXTRAHUGE_SECTOR_X(x) ( ((x) - (MAX_EXTRAHUGE_SECTORS/2)) * EXTRAHUGE_SECTOR_SIZE )
+#define WATER_FROM_EXTRAHUGE_SECTOR_Y(y) ( ((y) - (MAX_EXTRAHUGE_SECTORS/2)) * EXTRAHUGE_SECTOR_SIZE )
+#define WATER_TO_EXTRAHUGE_SECTOR_X(x) ( WATER_UNSIGN_X(x) / EXTRAHUGE_SECTOR_SIZE )
+#define WATER_TO_EXTRAHUGE_SECTOR_Y(y) ( WATER_UNSIGN_Y(y) / EXTRAHUGE_SECTOR_SIZE )
+>>>>>>> a644c4e9ceb440f53e31dd39f11a9a3c859ffb44
#define MAX_BOAT_WAKES 8