Region impostors, or infinite draw distance #4617
Replies: 5 comments
-
This is something I have in test in Sharpview, my experimental Rust viewer. It's real enough that you can try it. (Downloading Sharpview requires a password, but if you need access, write me.) This discussion is about using the same technology with other viewers. The general idea is to combine concepts from the SL map, off-region terrain sculpts, Tyche Shepard's Grid Survey, Open Drone Map, and Google Earth to show the SL world all the way out to the edges of the grid, all the time. It turns out that's not too hard. Things to know that might concern some people:
|
Beta Was this translation helpful? Give feedback.
-
Discussing it a little internally - we might be able to provide a bit of support by exposing a field that could store an object UUID that viewers could query. It's unlikely we will be able to dedicate much in terms of hours to this however - but we might be able to at least set the foundation for people to build out the viewer end of this. Some important details you might want to consider rendering-wise:
|
Beta Was this translation helpful? Give feedback.
-
Re layers: Since the impostor info comes from pictures, not the internal SL data, we can only capture some layers. Currently, only the base color and emissive layers are used. The emissive layer is for lights. I'd like to take aerial photos of a region with diffuse daylight, and again with no sunlight at all. Those become the base color and emissive layers for the 3D impostor. The impostors are then lit and rendered with whatever environment is currently active. At night, the impostors would show everything that's lit at night. Buildings. Lighthouses, Pools of light from street lights. Airport runways. It's mostly to orient users. That's really the point of this. Most of the time, in SL, if you're out in the open and not in a valley, you'll be able to see Mt. Campion and the Snowlands in the distance, giving a sense of place and some points of reference in the world. The camera can get no closer than the draw distance to an region impostor; get closer and the next region goes live. Much of what I'm working on now is to let people see what that looks like. Do we need higher-rez textures? Is 512x512 enough? 1024x1024 might be necessary sometimes. |
Beta Was this translation helpful? Give feedback.
-
Re what to store: How to store the info for viewers is an open question. Current plan:
Delivering the needed info to the viewer is simple. Making good impostors is hard. The plan is to start with plain terrain impostors, get some viewer support, then gradually upgrade the impostors without further viewer changes. Initial impostors will be just the ground texture atop a terrain sculpt, plus a water level. Should be great for sailors; you'll be able to see the far shore. I'm tempted to figure out some way to add lighthouses and runways to the impostors as aids to navigation. Other than that, no buildings or trees in this phase. All of this is down at ground level. Skyboxes will not be impostored. A altitude of 128 meters above the highest terrain point in a region is suggested for picture taking. There are maybe ten towers in SL taller than that. |
Beta Was this translation helpful? Give feedback.
-
A useful LL side feature to consider initially is naming but not implementing a capability which tells viewers where to find the impostor index. Without that capability, lookup will go to a server of mine, but LL can preempt that at any time and take over the impostor system. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
At the request of Geenz Linden, I'm starting this discussion here.
Ref: https://www.animats.com/sharpview/technotes/impostor.html
Beta Was this translation helpful? Give feedback.
All reactions