Hi all,

I am presenting an experimental (WIP) method to reduce memory consumption by 
scenery with 30%, while increasing the visibility distance 4 times.
This method relies on some kind of LOD system, without mesh simplification.
People smarter than me can come up with a safe algorithm to do that, but I'm 
afraid it requires changes to Terragear. Right now mesh simplification was not 
a priority.

The need arised from my frequent flights in SRTM + Corine high-res terrain, 
where running out of memory was a frequent event (quite terminal on a 32bit 
machine unfortunately).
So I took the liberty today and modified the scenery manager a little. It now 
works by having an inner circle of high-res tiles, surrounded by an outer 
circle of low-res tiles. You will be able to spot that on the map in the 
second picture.
Memory savings range from 30% to 50%. I have not yet been able to figure out 
why, when leaving a detailed mesh zone, memory consumption does not drop and 
remains the same. This behaviour was present before my patch. Re-entering a 
high definition zone should not increase memory any further.

I have performed a test with the UFO, setting visibility to 80 miles, LOD 
distance bare to 120000 meters, and climbing to 30000 ft aka 10000 meters.
FPS observed was 21, no doubt because of the complexity of the mesh.
Maximum memory consumption after waiting for the loading threads to finish was 
2800 MB, out of which 680 were other system apps. Terrain was entirely SRTM + 
Corine.

The tile cache behaviour was modified too, it will no longer have a "heavy 
tail" history, but stay mostly rectangular around the aircraft. Once I find 
out how to deal with the tower view, I plan to disable any tower view as long 
as the aircraft is not within a reasonable distance of the tower (say 3 km). 
This should prevent terrain loss problems.
Could use some pointers on where to find the tower view settings in the code.

And last, a couple of screenshots for reference:
http://wiki.flightgear.org/File:Terrain_loading1b.png
http://wiki.flightgear.org/File:Terrain_loading2b.png

Sorry about the ugliness of the screens, but Thorsten's atmospheric scattering 
interferes with the view distance, so I had to disable most nicer shaders.

The code, as James would put it, is downright ugly, but it fulfills my needs 
in this case.
Any comments?

Cheers,
Adrian

------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
Flightgear-devel mailing list
Flightgear-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/flightgear-devel

Reply via email to