Snow: Difference between revisions

236 bytes added ,  11 August 2012
Signed comments, add info about script.
(Signed comments, add info about script.)
Line 1: Line 1:
{{WIP}}
[[File:SnowAtAltitude2.jpg|thumb|270px|The snow line in FlightGear 2.0.0.]]
[[File:SnowAtAltitude2.jpg|thumb|270px|The snow line in FlightGear 2.0.0.]]
As of [[FlightGear]] 2.6.0, the '''snow line''' is based on a user selectable elevation (<tt>Environment > Global Weather</tt> dialog) and the nearest [[METAR]] station's report. If the METAR reports snow and the station is below the level set by the user, the snow line will be set to the station's altitude.
As of [[FlightGear]] 2.6.0, the '''snow line''' is based on a user selectable elevation (<tt>Environment > Global Weather</tt> dialog) and the nearest [[METAR]] station's report. If the METAR reports snow and the station is below the level set by the user, the snow line will be set to the station's altitude.
Line 17: Line 16:


In [[Nasal]] this will be:
In [[Nasal]] this will be:
var lat = getprop("/position/latitude-deg");
{{pre2|1=
var snowLineClimatic = 0.0001*math.pow(lat,4) - 0.0019*math.pow(lat,3) - 1.7972*math.pow(lat,2) + 15.444*lat + 6022.1;
var lat = getprop("/position/latitude-deg");
var snowLineClimatic = 0.0001*math.pow(lat,4) - 0.0019*math.pow(lat,3) - 1.7972*math.pow(lat,2) + 15.444*lat + 6022.1;}}
 
By running this code once, on startup, we can get a location specific default snow line. Which in turn can be made more precise with METAR reports.


=== Actual ===
=== Actual ===
Line 35: Line 37:
This might give us somewhat reasonable winter/snow season globally at most locations with reasonable effort..?
This might give us somewhat reasonable winter/snow season globally at most locations with reasonable effort..?


(ThorstenR:) Snow is special in that it has a long memory of what has gone before. In central Finland, we may not see the ground till April if there was lots of snowfall in winter (as last year) as it takes a lot of time to thaw, even if the weather is bright and sunny, and some patches of snow remain till May. But it's very different if there wasn't much snow during the winter months.
{{unsigned|22:11, 14 January 2012|Tigert}}
 
The snowline is also very much history dependent. If the snow is actually falling, it may cover the ground well below the actual freezing line. It will be gone a few hours later, but for the time being the ground appears white nevertheless.
 
In contrast, old snow thaws first on the sun-exposed southern slopes and remains for a long time in shadowy spots. So in thawing conditions in spring, it's no way close to a uniform altitude condition. The shader could get this by taking the normal of the noon sun position with the terrain into account, as well as the underlying terrain (snow remains longer in forest-covered patches than in open terrain).
 
Thawing and re-freezing also causes characteristic effects. For instance, you can tell if the temperature has been above zero between the last snowfall and now by looking at the trees - trees loose their snow load very quickly within a few hours above zero temperature. In spring, there is often continuous snowcover on the ground, but the trees show none at all.
 
All this calls for information which Flightgear can't have and which the user should supply - do I want to simulate freshly falling snow or thawing conditions?


In case there is really need for a more realistic snow model beyond a user-defined snowline or simply loading winter textures, it should have a small config dialog where the user specifies what situation he wants to have rendered. A probabilistic model is no better than a user-defined snowline in my opinion.
: Snow is special in that it has a long memory of what has gone before. In central Finland, we may not see the ground till April if there was lots of snowfall in winter (as last year) as it takes a lot of time to thaw, even if the weather is bright and sunny, and some patches of snow remain till May. But it's very different if there wasn't much snow during the winter months.
: The snowline is also very much history dependent. If the snow is actually falling, it may cover the ground well below the actual freezing line. It will be gone a few hours later, but for the time being the ground appears white nevertheless.
: In contrast, old snow thaws first on the sun-exposed southern slopes and remains for a long time in shadowy spots. So in thawing conditions in spring, it's no way close to a uniform altitude condition. The shader could get this by taking the normal of the noon sun position with the terrain into account, as well as the underlying terrain (snow remains longer in forest-covered patches than in open terrain).
: Thawing and re-freezing also causes characteristic effects. For instance, you can tell if the temperature has been above zero between the last snowfall and now by looking at the trees - trees loose their snow load very quickly within a few hours above zero temperature. In spring, there is often continuous snowcover on the ground, but the trees show none at all.
: All this calls for information which Flightgear can't have and which the user should supply - do I want to simulate freshly falling snow or thawing conditions?
: In case there is really need for a more realistic snow model beyond a user-defined snowline or simply loading winter textures, it should have a small config dialog where the user specifies what situation he wants to have rendered. A probabilistic model is no better than a user-defined snowline in my opinion.
: {{unsigned|12:45, 26 January 2012|Thorsten}}


== Vegetation ==
== Vegetation ==