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"
6263#include " assetmgr.h"
6364#include " WW3D2/dx8wrapper.h"
6465
65- // #define ALLOW_WATER_TRACK_EDIT
66-
6766// number of vertex pages allocated - allows double buffering of vertex updates.
6867// while one is being rendered, another is being updated. Improves HW parallelism.
6968#define WATER_VB_PAGES 1000
@@ -281,18 +280,6 @@ void WaterTracksObj::init( Real width, const Vector2 &start, const Vector2 &end,
281280// =============================================================================
282281Int WaterTracksObj::update (Int msElapsed)
283282{
284- #ifdef ALLOW_WATER_TRACK_EDIT
285- // if (pauseWaves)
286- // m_elapsedMs = m_timeToReachBeach+m_timeToStop;
287- // else
288- #endif
289-
290- // nothing to do here...most of the work is done on render.
291- m_elapsedMs += msElapsed; // advance time for this update
292-
293- // /@todo: Should check in here if we are done with this object are return FALSE to free it.
294- // return FALSE;
295-
296283 return TRUE ; // assume we had an update
297284}
298285
@@ -308,6 +295,9 @@ Int WaterTracksObj::update(Int msElapsed)
308295
309296Int WaterTracksObj::render (DX8VertexBufferClass *vertexBuffer, Int batchStart)
310297{
298+ // TheSuperHackers @tweak The wave movement time step is now decoupled from the render update.
299+ m_elapsedMs += TheGameEngine->getLogicTimeStepMilliseconds ();
300+
311301 VertexFormatXYZDUV1 *vb;
312302 Vector2 waveTailOrigin,waveFrontOrigin;
313303 Real ooWaveDirLen=1 .0f /m_waveDir.Length (); // one over length
0 commit comments