FPS drops after minimizing the game during rainy weather
When it rains, my OpenMW sometimes suffers from a HUGE slowdown, the latest one was from normal 100+ fps to like 10-15.
Here are some observations (+screenshots with profiler overlay on):
1)screenshot 1,2: the slowdown itself. If I save and reload game now (without closing OpenMw), performance does not change.
2)screenshot 3,4: FPS goes back to normal when the rain ends.
3)screenshot 5,6: if now I load game saved at p.1 (when it's still raining), the performance will still be normal.
4)Performance tends to degrade over time: it has restored to ~100fps at screenshot 6, then I left Openmw running for 20 minutes, and it is already hitting 30.
OpenMW-0.43.0-RC1-win64, no mods except simple texture replacers, view and cell load distance options are all default.
My config is i5-3570 4*3.8Ghz, 16GB RAM, GTX 1080.
I can't reproduce this. I waited around 20 minutes and the performance was unchanged. Some of that time I was walking around, some of the time standing in place.
1) Are you sure it's really the rain causing it and not something else?
2) Are you using 'distant terrain' or modified cell preloading settings? Did you try with 100% default settings?
3) Can you make a screenshot of all the 'F3' panels (press 'F3' 4 times) and the 'F4' resource stats (while the slowdown is in effect, of course)?
4) Can you upload the output of 'showSceneGraph' command when the game is slow? This should be around 1MB in a zip file (if it's much bigger than that, something is very wrong).
#3 Updated by Denis Smirnov 3 months ago
1) I can't be absolutely sure, but I've repeated the experiment several times in different locations and times of day, and every time the end of the rain was also the end of slowdown (I did wait for 1 hour repeatedly until the weather changed).
I tried one more scenario: when slowdown occurs, going into nearby interior (interior performance is unaffected btw) and back does not change anything, but setting Mark, then doing Divine Intervention to a non-rainy area and then Recall fixes performance.
And finally, there are no signs of performance degradation if I just stand and wait when there is no rain.
2) I didn't use distant land (but it turned out that I actually had 2 cells load distance..oops); as for other settings, I'm not sure - my settings.cfg was somewhat cluttered with legacy parameters from Ogre versions, so I just copied the entire settings-default.cfg and repeated the test. Nothing changed though.
3) Yep, here they are, with slowdown and after it. This 4th level of F3 panel slows things, but the actual FPS without it was 24 vs 400..
5) Disabling water shader is raising the normal FPS to insane 400, but it still drops to the same values after a while.
#4 Updated by Denis Smirnov 3 months ago
I think I've got it. The problem is not just the rain, but also OpenMW window being minimized for some time! Reproduces 100% on my side with such conditions, while waiting with game active or minimizing the game without rain does not cause any troubles.
I see that the game processing itself is paused when minimized, so maybe it's the rain sound causing these problems somehow? It keeps playing even when game is not active.
- Subject changed from Massive FPS drop in rainy weather to FPS drops after minimizing the game during rainy weather
- Status changed from New to Resolved
- Assignee set to scrawl .
- Target version set to openmw-0.44
- % Done changed from 0 to 100
It was not the sound. There was a bug that kept increasing the simulation timer when the game is minimized, and when you resume playing the large time delta makes osgParticle spawn a bazillion particles all at once which causes its particle vector to become large and never shrink again. I've fixed the first issue, but the osgParticle issue can't be fixed without touching OSG or copying a lot of code.