]> git.mxchange.org Git - flightgear.git/blobdiff - src/Time/light.hxx
Merge branch 'next' of gitorious.org:fg/flightgear into next
[flightgear.git] / src / Time / light.hxx
index ffffa5ab28c51c779c22b227ba0f5a9a0e1ed7cd..f3ecb32e16bf5f8f8c30c23ca2435ca6c36e38f3 100644 (file)
@@ -36,6 +36,7 @@
 
 #include <simgear/compiler.h>
 
+#include <simgear/props/props.hxx>
 #include <simgear/structure/subsystem_mgr.hxx>
 #include <simgear/math/interpolater.hxx>
 
@@ -60,9 +61,6 @@ private:
     double _sun_lon, _sun_lat;
     double _moon_lon, _moon_gc_lat;
 
-    // in cartesian coordiantes
-    SGVec3d _sunpos, _moonpos;
-
     // (in view coordinates)
     SGVec4f _sun_vec, _moon_vec;
 
@@ -88,6 +86,7 @@ private:
     SGVec4f _scene_ambient;
     SGVec4f _scene_diffuse;
     SGVec4f _scene_specular;
+    SGVec4f _scene_chrome;
 
     // clear sky, fog and cloud color
     SGVec4f _sky_color;
@@ -103,6 +102,9 @@ private:
     void update_sky_color ();
     void update_adj_fog_color ();
 
+    // properties for chrome light; not a tie because I want to fire
+    // property listeners when the values change.
+    SGPropertyNode_ptr _chromeProps[4];
 public:
 
     FGLight ();
@@ -120,6 +122,7 @@ public:
     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; }
@@ -141,9 +144,6 @@ public:
     inline double get_sun_lat () const { return _sun_lat; }
     inline void set_sun_lat (double l) { _sun_lat = l; }
 
-    inline const SGVec3d& get_sunpos () const { return _sunpos; }
-    inline void set_sunpos (const SGVec3d& p) { _sunpos = p; }
-
     inline SGVec4f& sun_vec () { return _sun_vec; }
     inline SGVec4f& sun_vec_inv () { return _sun_vec_inv; }
 
@@ -162,9 +162,6 @@ public:
     inline double get_moon_gc_lat () const { return _moon_gc_lat; }
     inline void set_moon_gc_lat (double l) { _moon_gc_lat = l; }
 
-    inline const SGVec3d& get_moonpos () const { return _moonpos; }
-    inline void set_moonpos (const SGVec3d& p) { _moonpos = p; }
-
     inline const SGVec4f& moon_vec () const { return _moon_vec; }
     inline const SGVec4f& moon_vec_inv () const { return _moon_vec_inv; }
 };