Without proper logs, it is impossible to know exactly what is going on.
Note that it is normal, and the expected behaviour, that the objects not in your camera's field of view get unloaded after some time, based on their distance to the camera, their size, etc. This helps the latest viewers to tone down their memory usage. The Cool VL Viewer also modulates further the object retention based on its actual memory usage (the more memory is used and the less is available, the faster it discards the objects and the more the closer objects also get discarded proportionally). The relevant settings that you could play with to change the rate and amount of discarded objects are these:
- SceneLoadMinRadius: in meters, all objects (visible or invisible) within this radius will remain loaded in memory. Defaults to 32m and the minimum between that setting value and the draw distance is used as the actual minimum radius. The Cool VL Viewer adjusts the objects "scene contribution" when memory gets low (dividing it by up to 4 in low memory condition), thus effectively reducing the weight of this setting by the same amount.
- SceneLoadFrontPixelThreshold/SceneLoadRearPixelThreshold: in pixels, all objects out of view frustum whose screen area is greater than this threshold will remain loaded. Defaults to 400 pixels for both. The Cool VL Viewer adjust the rear objects "scene contribution" when memory gets low (dividing it by up to 4 in low memory condition), thus effectively reducing the weight of the SceneLoadRearPixelThreshold setting by the same amount.
- SceneLoadRearMaxRadiusFraction: a percentage of draw distance beyond which all objects outside of view frustum will be unloaded, regardless of pixel threshold. Defaults to 75%.
- NonVisibleObjectsInMemoryTime: Number of seconds non-visible objects stay in memory before being removed. 0 means never to remove. Defaults to 30s and is dynamically adjusted (reduced) by the Cool VL Viewer when the available memory gets low (can go down to 5s with the 30s default setting, when the memory is almost exhausted).
- NewObjectCreationThrottle: Maximum number of new objects created per frame (this governs the upper limit for the rate at which objects are re-rezzed when they come back in view). Defaults to 200, -1 to disable this throttle.
Please note that if you alter these settings to keep more objects rezzed, you will cause the viewer to consume more memory and perhaps to hit the addressable virtual space limit...