From: Curtis O. <cur...@gm...> - 2011-09-29 19:58:57
|
On Thu, Sep 29, 2011 at 1:10 PM, ThorstenB <wrote: > Well, I have little to add. I can just confirm your and Curt's > descriptions: yes, the tile loader reads the visibility property. When > is has increased above a certain threshold (or when the position has > moved into another area), it starts loading more scenery. And it always > requests all tiles within the range defined by visibility (limited to > the max-lod range though). It could be changed easily to watch for some > other property - such as a specific "ground visibility property", when > that's provided. But yes, loading scenery is a major performance/memory > factor - so we shouldn't be loading much more scenery than we do now - > unless the fundamental concepts are also improved (such as better LOD > support for scenery tiles). > And it'd be rather complicated to implement any other tile loading > method instead of the current concept of loading all tiles within a > certain range. The tile loader lives in a simple 2D world. It knows > nothing about elevation of certain tiles etc. > Just to add a couple more bits of information. The tile loader knows (or can compute) the exact dimensions of the tiles. I thinks in terms of "square" rings if that makes sense. There is the tile which you are over right now. There is a ring of 8 tiles surrounding your current tile. There is a ring of 16 tiles surrounding that and a ring of 24 tiles surrounding that. 3x3 = 9 - the inner tile = 8. 5x5 = 25 - the 3x3 block = 16, etc. So the tile loader loads the 'current tile' which you are over the top of it and proceeds to load as many surrounding 'rings' as needed to cover the current visibility distance. As Thorsten B. points out though ... there is a memory/performance/disk-io price when loading tiles. And if we are pushing scenery complexity at the same time as pushing visibility out, this price will grow exponentially ... so it's worth paying attention to. Regards, Curt. -- Curtis Olson: http://www.atiak.com - http://aem.umn.edu/~uav/ http://www.flightgear.org - http://gallinazo.flightgear.org |