Skip to content

Commit 75349c8

Browse files
committed
tweak(water): Decouple wave movement time step from render update
1 parent 2bbf902 commit 75349c8

File tree

1 file changed

+4
-14
lines changed

1 file changed

+4
-14
lines changed

GeneralsMD/Code/GameEngineDevice/Source/W3DDevice/GameClient/Water/W3DWaterTracks.cpp

Lines changed: 4 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@
5050
#include "GameClient/InGameUI.h"
5151
#include "GameClient/Water.h"
5252
#include "GameLogic/TerrainLogic.h"
53+
#include "Common/GameEngine.h"
5354
#include "Common/GlobalData.h"
5455
#include "Common/UnicodeString.h"
5556
#include "Common/file.h"
@@ -64,8 +65,6 @@
6465

6566
//#pragma optimize("", off)
6667

67-
//#define ALLOW_WATER_TRACK_EDIT
68-
6968
//number of vertex pages allocated - allows double buffering of vertex updates.
7069
//while one is being rendered, another is being updated. Improves HW parallelism.
7170
#define WATER_VB_PAGES 1000
@@ -283,18 +282,6 @@ void WaterTracksObj::init( Real width, const Vector2 &start, const Vector2 &end,
283282
//=============================================================================
284283
Int WaterTracksObj::update(Int msElapsed)
285284
{
286-
#ifdef ALLOW_WATER_TRACK_EDIT
287-
// if (pauseWaves)
288-
// m_elapsedMs = m_timeToReachBeach+m_timeToStop;
289-
// else
290-
#endif
291-
292-
//nothing to do here...most of the work is done on render.
293-
m_elapsedMs += msElapsed; //advance time for this update
294-
295-
///@todo: Should check in here if we are done with this object are return FALSE to free it.
296-
// return FALSE;
297-
298285
return TRUE; //assume we had an update
299286
}
300287

@@ -310,6 +297,9 @@ Int WaterTracksObj::update(Int msElapsed)
310297

311298
Int WaterTracksObj::render(DX8VertexBufferClass *vertexBuffer, Int batchStart)
312299
{
300+
// TheSuperHackers @tweak The wave movement time step is now decoupled from the render update.
301+
m_elapsedMs += TheGameEngine->getLogicTimeStepMilliseconds();
302+
313303
VertexFormatXYZDUV1 *vb;
314304
Vector2 waveTailOrigin,waveFrontOrigin;
315305
Real ooWaveDirLen=1.0f/m_waveDir.Length(); //one over length

0 commit comments

Comments
 (0)