summaryrefslogtreecommitdiff
path: root/drivers/gles3
diff options
context:
space:
mode:
authorEric Wiltfang <mail@eric-wiltfang.de>2017-11-25 15:41:14 +0100
committerEric Wiltfang <mail@eric-wiltfang.de>2017-11-25 15:41:14 +0100
commit57845b53f3e71ad8f7c72f3583042f5972beac4a (patch)
tree5bfc95799e63bc8a2984bfd44c077cddbfe5b719 /drivers/gles3
parentaa5f7e0ff246001e9a6352dbc59610953171ec38 (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.cpp8
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;
}