#include <simgear/compiler.h>
+#include <simgear/props/props.hxx>
#include <simgear/structure/subsystem_mgr.hxx>
#include <simgear/math/interpolater.hxx>
SGVec4f _scene_ambient;
SGVec4f _scene_diffuse;
SGVec4f _scene_specular;
+ SGVec4f _scene_chrome;
// clear sky, fog and cloud color
+ SGVec4f _sun_color;
SGVec4f _sky_color;
SGVec4f _fog_color;
SGVec4f _cloud_color;
SGVec4f _adj_fog_color;
SGVec4f _adj_sky_color;
+ // input parameters affected by the weather system
+ float _saturation;
+ float _scattering;
+ float _overcast;
+
double _dt_total;
void update_sky_color ();
void update_adj_fog_color ();
+ void updateSunPos();
+
+ // properties for chrome light; not a tie because I want to fire
+ // property listeners when the values change.
+ SGPropertyNode_ptr _chromeProps[4];
+
+ SGPropertyNode_ptr _sunAngleRad;
public:
FGLight ();
inline const SGVec4f& scene_ambient () const { return _scene_ambient; }
inline const SGVec4f& scene_diffuse () const { return _scene_diffuse; }
inline const SGVec4f& scene_specular () const { return _scene_specular; }
+ inline const SGVec4f& scene_chrome () const { return _scene_chrome; }
inline const SGVec4f& sky_color () const { return _sky_color; }
inline const SGVec4f& cloud_color () const { return _cloud_color; }
inline const SGVec4f& adj_fog_color () const { return _adj_fog_color; }
inline const SGVec4f& adj_sky_color () const { return _adj_sky_color; }
-
// Sun related functions
inline double get_sun_angle () const { return _sun_angle; }