Sky Keyframe

struct simul::sky::SkyKeyframe : public simul::sky::BaseKeyframe

The keyframe structure for simul::sky::SkyKeyframer.

The properties of any sky keyframe can be changed at any time. However, only HazeEccentricity can be changed for an in-use keyframe without triggering a recalculation of the colour tables.

Public Members

float daytime

The time this keyframe represents, in a floating-point number of days from the starting midnight of the sequence. If simul::sky::SkyKeyframer::SetLinkKeyframeTimeAndDaytime is true, this is not used.

mutable float4 Mie

The Mie scattering coefficients (x=red,y=green,z=blue). Mutable because of AutoMie.

float Haze

The amount of haze, mist or fog.

float HazeBaseKm

The base altitude, above which haze starts to decrease in density.

float HazeScaleKm

The vertical scale over which haze reduces with altitude.

float HazeEccentricity

The anisotropy of Mie scattering. Can be changed without recalculating tables.

float GroundFog

Thick ground fog.

float FogCeilingKm

Upper limit of ground fog.

float SeaLevelTemperatureK

Temperature at sealevel, in kelvins - mainly relevant to infra-red.

float StoreAsColours

If true, the keyframe is stored as a colour table, rather than generating its colours from its properties.

bool AutoMie

Whether to recalculate the Mie coefficients based on the haze at this keyframe.

bool automaticSunPosition

Whether to calculate the sun position from the date and time.