20,741
edits
m (even more content/quotes begging to be unified/rewritten some day) |
|||
Line 2: | Line 2: | ||
=== Orbital Rendering:Earthview === | === Orbital Rendering:Earthview === | ||
{{See also|Flying on other planets}} | {{See also|Flying on other planets}} | ||
{{FGCquote | |||
|1= I've managed to implement a scheme for orbital terrain rendering which I had cooked up a while ago. | |||
|2= {{cite web | |||
| url = http://sourceforge.net/p/flightgear/mailman/message/28991398/ | |||
| title = <nowiki>[Flightgear-devel] Earthview - Orbital terrain rendering in FG</nowiki> | |||
| author = <nowiki>Renk Thorsten</nowiki> | |||
| date = Mar 16th, 2012 | |||
| added = Mar 16th, 2012 | |||
| script_version = 0.23 | |||
}} | |||
}} | |||
{{FGCquote | |||
|1= this is really low-tech and lives within the limitations of the current engine - just a textured sphere of 58 km diameter in the scene which is constantly repositioned using simple ray-optics to give the right impression and has a dedicated shader to never fog it and work around the high altitude light problem (see below). The results using Celestia Level 3 texturing are quite compelling | |||
|2= {{cite web | |||
| url = http://sourceforge.net/p/flightgear/mailman/message/28991398/ | |||
| title = <nowiki>[Flightgear-devel] Earthview - Orbital terrain rendering in FG</nowiki> | |||
| author = <nowiki>Renk Thorsten</nowiki> | |||
| date = Mar 16th, 2012 | |||
| added = Mar 16th, 2012 | |||
| script_version = 0.23 | |||
}} | |||
}} | |||
{{FGCquote | |||
|1= It took me 7 hours to get it to this point, less than 100 lines of Nasal, some cut-past with the shaders - most of the time I spent stitching and converting textures. Right now it is really dumb - one can go to even higher resolution texturing by investing some smartness and introducing texture management (currently Earth is effectively covered by 4096x8192, the cloud layer adds the same amount). | |||
|2= {{cite web | |||
| url = http://sourceforge.net/p/flightgear/mailman/message/28991398/ | |||
| title = <nowiki>[Flightgear-devel] Earthview - Orbital terrain rendering in FG</nowiki> | |||
| author = <nowiki>Renk Thorsten</nowiki> | |||
| date = Mar 16th, 2012 | |||
| added = Mar 16th, 2012 | |||
| script_version = 0.23 | |||
}} | |||
}} | |||
Earthview is an orbital rendering engine for FlightGear designed to get credible visuals when using spacecraft such as [[Vostok-1]]. It is based on projecting a simple textured sphere representing Earth into the scene using ray optics. Since there is only a single object in the field of view, performance is generally very good provided that there is enough texture memory available. | Earthview is an orbital rendering engine for FlightGear designed to get credible visuals when using spacecraft such as [[Vostok-1]]. It is based on projecting a simple textured sphere representing Earth into the scene using ray optics. Since there is only a single object in the field of view, performance is generally very good provided that there is enough texture memory available. | ||
{{FGCquote | |||
|1= the Earthview orbital rendering engine. The textures for the planet are based on the NASA Visible Earth collection http://visibleearth.nasa.gov | |||
|2= {{cite web | |||
| url = http://sourceforge.net/p/flightgear/mailman/message/32262904/ | |||
| title = <nowiki>[Flightgear-devel] Orbital rendering</nowiki> | |||
| author = <nowiki>Renk Thorsten</nowiki> | |||
| date = Apr 24th, 2014 | |||
| added = Apr 24th, 2014 | |||
| script_version = 0.23 | |||
}} | |||
}} | |||
Textures are taken from the NASA Visible Earth project - at the highest resolution level, Earth can be rendered at 32768x65536 pixel (about 500 m per pixel) and clouds with half of that. Currently there is a much lower texture resolution distributed via GIT, a mode to make the GB-sized hires textures has yet to be determined. | Textures are taken from the NASA Visible Earth project - at the highest resolution level, Earth can be rendered at 32768x65536 pixel (about 500 m per pixel) and clouds with half of that. Currently there is a much lower texture resolution distributed via GIT, a mode to make the GB-sized hires textures has yet to be determined. | ||
Line 15: | Line 66: | ||
A long standing problem in FlightGear's atmosphere definition has now been addressed and JSBSim spacecraft should now be able to reach any orbital altitude within their capabilities (previously flight was restricted to be below 150 km altitude). | A long standing problem in FlightGear's atmosphere definition has now been addressed and JSBSim spacecraft should now be able to reach any orbital altitude within their capabilities (previously flight was restricted to be below 150 km altitude). | ||
{{FGCquote | |||
|1= To see the blue planet from high up, start FG using the ufo at a high altitude (around 10 million ft is quite good with the texture resolution provided), open the (currently minimalistic) GUI from the View menu, push start, wait for the textures to load and admire the view. | |||
|2= {{cite web | |||
| url = http://sourceforge.net/p/flightgear/mailman/message/32262904/ | |||
| title = <nowiki>[Flightgear-devel] Orbital rendering</nowiki> | |||
| author = <nowiki>Renk Thorsten</nowiki> | |||
| date = Apr 24th, 2014 | |||
| added = Apr 24th, 2014 | |||
| script_version = 0.23 | |||
}} | |||
}} | |||
{{FGCquote | |||
|1= Earthview responds to the weather visibility setting and typically 80-140 km visibility work best (won't affect any scenery loading because we're too far from the planet). Also, rendering in ALS manually tweaking Rayleigh and Mie constants gives a nice atmosphere effect. NASA provides textures in /much/ higher resolution - in my highest resolution texture set I have the planet covered in 32768x16384 and the cloud layer in half of that. For such large textures, loading time is an issue (Earthview isn't excatly *cough* elegant) and pre-mipmapped compressed DDS is pretty much the only sane option - then that's 8 texture chunks a 176 MB each. It'd be nice to make higher resolution versions available for download, but I realie that's quite a bandwidth hog - if there's sufficient interest and someone knows a server... the textures are there. Provided you have the texture memory, performance should actually be pretty high - there's just two textured spheres in the scene, and even on my old computer I get a solid 60 fps. | |||
|2= {{cite web | |||
| url = http://sourceforge.net/p/flightgear/mailman/message/32262904/ | |||
| title = <nowiki>[Flightgear-devel] Orbital rendering</nowiki> | |||
| author = <nowiki>Renk Thorsten</nowiki> | |||
| date = Apr 24th, 2014 | |||
| added = Apr 24th, 2014 | |||
| script_version = 0.23 | |||
}} | |||
}} | |||
== Requirements == | == Requirements == | ||
Line 324: | Line 399: | ||
| date = Dec 17th, 2015 | | date = Dec 17th, 2015 | ||
| added = Dec 17th, 2015 | | added = Dec 17th, 2015 | ||
| script_version = 0.23 | |||
}} | |||
}} | |||
{{FGCquote | |||
|1= I've been wondering how to reduce the memory footprint of Earthview - which, if you customie it with full resolution Pale Blue Marble which come to eight textures a 21000x21000 pixels each, is an issue even when using compressed dds. Even in the current form with 4096x4096 sheets, loading times are an issue (and I've been toying with allowing simply pre-load everything upon aircraft startup based on a config flag). I've toyed with a select animation showing only the texture sheets currently used (basically, given the local horizon from low orbit, in the worst case you can see 4 texture sheets at the same time, often just a single one). However, upon trying that, it seems the whole model, including de-selected sheets, is loaded anyway. I only found that re-loading improved quite a bit. So things appear to end up in a cache no matter what. So, is there a graceful way to load only the parts of the model / the textures I currently want to show? Or should I just trust the cache to optimize things for me and not worry? | |||
|2= {{cite web | |||
| url = http://sourceforge.net/p/flightgear/mailman/message/34579255/ | |||
| title = <nowiki>[Flightgear-devel] Texture memory management</nowiki> | |||
| author = <nowiki>Thorsten Renk</nowiki> | |||
| date = Oct 29th, 2015 | |||
| added = Oct 29th, 2015 | |||
| script_version = 0.23 | |||
}} | |||
}} | |||
{{FGCquote | |||
|1= I've been making some progress with rendering from orbit http://users.jyu.fi/~trenk/pics/earthview_new12.jpg but I'm still trying to wrap my head around what the sky does. Is there anyone who understands what I am seeing? My Windows binary of ~ a month ago shows the skydome below 310.000 ft or so, then exits it and I see fog-grey. Then comes aone of red sky (which is a rendering artefact caused by the lack of atmosphere definition, the added layer patch is not yet in this binary) but up at 1.000.000 ft, I actually get to see black skies and even sometimes stars come out when the sun is below the horizon(!). My Linux binary of 3 days ago shows fog grey all the way up from 310.000 ft to as far as I tested - no red (as expected since this was fixed), but also no black and no stars. So there is a beautiful starry sky implemented somewhere, and it'd be nice to just use it. Does anyone understand what precisely we render at high altitude and where the starry sky comes from, and can we somehow always render it above 300.000 ft? Alternatively I could give Earthview its own star sphere (to be textured freely...), but then that might hide sun and moon from the view, I don't recall where they are physically located, and having a working moon in the sky is definitely a nice feature. I realize that this is a bit of an exotic use of FG and probably not so many people want to do spaceflight, but if there's a simple way to get a nice night sky at high altitude, I would much appreciate some help. | |||
|2= {{cite web | |||
| url = http://sourceforge.net/p/flightgear/mailman/message/32291826/ | |||
| title = <nowiki>[Flightgear-devel] Nightsky</nowiki> | |||
| author = <nowiki>Renk Thorsten</nowiki> | |||
| date = May 2nd, 2014 | |||
| added = May 2nd, 2014 | |||
| script_version = 0.23 | | script_version = 0.23 | ||
}} | }} |