Background cell loading (not preload)
Recent versions of OpenMW have the option of preloading cells into a cache in the background, for cells the player is nearby to and may enter soon (either via a wider game world radius, or nearby teleport activators and such). However, the issue is that this cache is an addition to what's loaded for the player to see, and it's counted by the number of cells (understandably, as it would be very difficult to get a proper estimate in bytes ahead of time that a cell would need).
As a result, it becomes difficult to keep memory consumption under control since it's loading more cells than the player is actually in view of, and mods can have a significant impact on the amount of memory any given cell needs (e.g. the game has 9 loaded cells in view, and if for example the cell cache is an additional 10 or 11 cells, a mod that has a modest 2x memory increase per cell is actually causing 20x extra memory use in total). Consequently, even modestly modded games can require a lot more memory than expected, potentially requiring users to manually lower the preload cache size to keep from running out of memory or hitting swap, which also reduces its effectiveness.
My suggestion is to have an option for background cell loading to affect cells in the normal 3x3 grid around the player too, even if the preload cache is disabled. So for example, the player is walking along and crosses a cell boundary that triggers the next 3 cells in front to load. With this, those three cells would load in the background as the player continues to walk forward in the preexisting cell, and displays as soon as it's ready. As long as the player is moving at a nominal pace, the cells should be ready well before the player gets too much closer.
The only caveat would be if the player is moving too fast and/or cell loading is too slow so they do get too close to the edge of the available cells (and by extension, when the player is teleported to a cell that's not loaded). In this case, the game would have to be halted while the cells finish loading. However, in these extreme cases it wouldn't be any worse than having the preload cache disabled, while still improving the experience for the more general cases without an increase in memory requirements. Plus it's completely orthogonal to the preload cache... they can coexist, so players can have either or both as they desire.
(RM-3284 from redmine: created on 2016-03-29 by Chris Robinson, , closed on 2016-06-11 by nobody)