diff options
author | Eric Wiltfang <mail@eric-wiltfang.de> | 2017-11-25 15:41:14 +0100 |
---|---|---|
committer | Eric Wiltfang <mail@eric-wiltfang.de> | 2017-11-25 15:41:14 +0100 |
commit | 57845b53f3e71ad8f7c72f3583042f5972beac4a (patch) | |
tree | 5bfc95799e63bc8a2984bfd44c077cddbfe5b719 /drivers/gles3 | |
parent | aa5f7e0ff246001e9a6352dbc59610953171ec38 (diff) |
Fix particle preprocessing. Fixes #12460.
Remove an incorrect check likely left over from copying from the
normal fixed_fps update case.
Also makes sure that the preprocessing_time is always fully simulated,
rather overshooting the mark than stopping early.
Diffstat (limited to 'drivers/gles3')
-rw-r--r-- | drivers/gles3/rasterizer_storage_gles3.cpp | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/drivers/gles3/rasterizer_storage_gles3.cpp b/drivers/gles3/rasterizer_storage_gles3.cpp index 89d3d7ff75..fc9150ecdc 100644 --- a/drivers/gles3/rasterizer_storage_gles3.cpp +++ b/drivers/gles3/rasterizer_storage_gles3.cpp @@ -5694,13 +5694,9 @@ void RasterizerStorageGLES3::update_particles() { else frame_time = 1.0 / 30.0; - float delta = particles->pre_process_time; - if (delta > 0.1) { //avoid recursive stalls if fps goes below 10 - delta = 0.1; - } - float todo = delta; + float todo = particles->pre_process_time; - while (todo >= frame_time) { + while (todo >= 0) { _particles_process(particles, frame_time); todo -= frame_time; } |