Priority Loading feature on objects, and an "Only load objects with Priority" viewer setting
Dolly Waifu
Loading into a large event, or a well-decorated region can be a hassle, especially for those on low-end computers. It is not uncommon for vendors to use high resolution textures that seem to load after everything around you has loaded first. This often forces users to idle for long periods of times in shopping event regions and stores, just waiting to see the things they might want to buy. In the early days of an event's opening, this often means jam-packed regions for multiple days straight. This request will help ease this bottleneck, and allow those on lower-end machines to shop with ease.
I am suggesting an optional setting in the edit window that pushes an object's textures to the front of the rendering queue. This option would only be enabled for objects a user owns, that are modifiable, and that are set to sale, or have their "click to" setting set to "Buy" or "Pay". By default, with this setting enabled, a user would see these priority objects' textures load in first, before anything else, with all other objects displaying the unloaded grey texture until the priority objects are finished.
In addition, there should be an option in preferences to ONLY load textures on priority objects, leaving everything as untextured mesh shapes, and one to IGNORE priority and render objects normally.
In any case, avatars, terrain, and environments would be unaffected by this setting, since they have their own optional rendering settings already.
It's kind of a "show friends only" but for vendors!
Log In
AWalphaomega Resident
I wish this had not been merged with mine. It is NOT the same thing
Spidey Linden
Merged in a post:
VIEWER: Please add an option to only load textures into the cache which are not occluded.
AWalphaomega Resident
As far as I can tell, there are currently no viewer versions which have this option. Under the current system, as soon as your camera enters a new area, such as when driving a vehicle, the viewer attempts to load all of the textures within your set draw distance.
If you use the texture console while driving, you can see this happen. Almost immediately upon entering the range of a highly textured area, the cache begins to load up with a vast amount of data, most of which is entirely useless to the vehicle driver, since within a few seconds, all of those loaded and cached images will now be "behind" you, and never seen. This results in the cache filling up very quickly and churning in such a way as to seriously degrade viewer performance within a short time.
Why are the textures useless to the driver? Because you are only interested in seeing the outside of buildings as they appear from the road, and having to load all of the artwork and interior stuff from every house you pass by is an unnecessary waste of bandwidth, when you have no intention of ever "camming in" to all of the buildings or even camming to see trees that exist beyond the visual tree line as can be seen from the road.
WHY DOES THIS MATTER MORE NOW SINCE PBR?
It matters more now because the amount of data streaming required to load 2048 size packaged materials (which include several 2048 textures) is at least four times ( and likely more) the amount of data previously streamed before the introduction and popularization of 2048 textures and packaged PBR materials. It is clearly evident in the vastly degraded performance in situations such as vehicle usage, but can also happen simply by spinning your avatar around a bit, once the texture cache is approaching full.
WHY SHOULD IT BE AN OPTION?
Implementing a change to the viewer such that ONLY textures which are not currently occluded are loaded and cached will vastly reduce the bandwidth load upon entering a new range of textures. This will potentially create a much easier time for most viewers and stop the incessant stutters and freezes (which usually are NOT accompanied by an FPS drop or even an increase in obvious computer resource usage, but rather indicate that there is simply a bottleneck in the transfer system between RAM, CPU, GPU and disk.) This type of bottleneck is probably not avoidable even with a very powerful system, as there are theoretical limits in place when so much data is constantly churning between RAM, CPU, GPU and SSD (or whatever you use for storage). The sheer length of time it takes to clear even a moderate 10GB cache size should be all the evidence needed of this.
It should be a togglable option since it would likely result in poor performance for users who generally only TP to a new location and seldom move. This idea is primarily to benefit users who physically move a lot, and cross into a lot of new areas and new regions, such as with vehicle use.
Nyx Onyx
I'd like you to be able to easily set the priority of things to load. In the case of shopping, I need the vendors first pretty please - I don't need my avatar to load first even, nor that of others (can use the minimap to avoid collisions, or just see particle clouds). At other times, I might be more interested in loading just my own avatar, then the surrounding objects, and last avatars of others. Then in yet another situation, I might want to load all avatars first, then the environment. So, something like the Quick Preferences of Firestorm, and a dropdown menu of priority orders might be a way to go about it. Perhaps a button that is easily reachable that opens a panel that lets you reorder elements easily (the way BOM layer reordering should have been made: click and drag to reorder), and save presets.
- Textures on loaded items
- Payables
- Rezzed Objects
- HUDs
- Own Avatar
- Friend Avatars
- Other Avatars
Tamraen Dryke
Nyx Onyx I prefer this approach, letting the individual user decide what is pushed to the front for them personally and per situation (as well a permanent option in settings maybe?)
I'd love this very very much!
Nyx Onyx
Tamraen Dryke I don't see why it wouldn't be "permanent", as in, remain as you have set it until you set it in a different way - just making it easy to change as you move about, not having to go looking in preferences each time you want to do something different.
Tamraen Dryke
Nyx Onyx true, but the vast majority of time this isn't something I need, only in special circumstances like going to an event opening day. I don't want to have to undo it each time I leave. On the other hand, it wouldn't make much of a difference whether it's on or off anywhere else since it'll all load anyway. I just figure while they're in there, they could give us options of "Load xyz textures first (Reset on Teleport)" and "Load xyz textures first (Always)"
Nyx Onyx
Tamraen Dryke just saving presets should be easy enough I think, no need to reorder priorities each time, and you'd want to set that before teleporting in many cases. So a dropdown list in the same view with + and - for saving a preset to that list, and typing in a name. Much like selecting a parcel stream and managing saved streams. (At least on FS) Edit: and I don't know about you, but when shopping, I tend to go to several places after each other, including events.