]> git.mxchange.org Git - flightgear.git/commitdiff
Panel night lighting acts as if lights are always turned on. We don't
authorcurt <curt>
Sat, 28 Sep 2002 03:57:37 +0000 (03:57 +0000)
committercurt <curt>
Sat, 28 Sep 2002 03:57:37 +0000 (03:57 +0000)
really see anything different in the day, but as day turns to night the
panel smoothly darkens and the lighting component becomes visible.
Lights are wired to electrical system so if you kill power, you lose the
lights.

src/Cockpit/panel.cxx
src/Cockpit/steam.cxx

index 0199dd1789e1911c3409aa369f748985cb12efba..6ec50fd59f57f242085fec72db8e359f731aea1d 100644 (file)
@@ -373,12 +373,14 @@ FGPanel::draw()
   glEnable(GL_BLEND);
   glEnable(GL_ALPHA_TEST);
   glEnable(GL_COLOR_MATERIAL);
-  // glColor4f(1.0, 1.0, 1.0, 1.0);
-  if ( cur_light_params.sun_angle * SGD_RADIANS_TO_DEGREES < 95.0 ) {
-      glColor4fv( cur_light_params.scene_diffuse );
-  } else {
-      glColor4f(0.7, 0.2, 0.2, 1.0);
+  sgVec4 panel_color;
+  sgCopyVec4( panel_color, cur_light_params.scene_diffuse );
+  if ( fgGetDouble("/systems/electrical/outputs/instrument-lights") > 1.0 ) {
+      if ( panel_color[0] < 0.7 ) panel_color[0] = 0.7;
+      if ( panel_color[1] < 0.2 ) panel_color[1] = 0.2;
+      if ( panel_color[2] < 0.2 ) panel_color[2] = 0.2;
   }
+  glColor4fv( panel_color );
   if (_bg != 0) {
     glBindTexture(GL_TEXTURE_2D, _bg->getHandle());
     // glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
@@ -877,12 +879,14 @@ FGTexturedLayer::draw ()
     
                                // From Curt: turn on the panel
                                // lights after sundown.
-    if ( cur_light_params.sun_angle * SGD_RADIANS_TO_DEGREES < 95.0 ) {
-      glColor4fv( cur_light_params.scene_diffuse );
-    } else {
-      glColor4f(0.7, 0.2, 0.2, 1.0);
+    sgVec4 panel_color;
+    sgCopyVec4( panel_color, cur_light_params.scene_diffuse );
+    if ( fgGetDouble("/systems/electrical/outputs/instrument-lights") > 1.0 ) {
+        if ( panel_color[0] < 0.7 ) panel_color[0] = 0.7;
+        if ( panel_color[1] < 0.2 ) panel_color[1] = 0.2;
+        if ( panel_color[2] < 0.2 ) panel_color[2] = 0.2;
     }
-
+    glColor4fv( panel_color );
 
     glTexCoord2f(_texture.getMinX(), _texture.getMinY()); glVertex2f(-w2, -h2);
     glTexCoord2f(_texture.getMaxX(), _texture.getMinY()); glVertex2f(w2, -h2);
index e5f058407abade1d0a5c475a1404cf2fe6184e70..99875e6c9aa1fcaad8834fb45c6f49a4903af9b5 100644 (file)
@@ -318,6 +318,7 @@ void FGSteam::_CatchUp()
        More subtle flaw is having it not move or a travel limit
        occasionally due to some dirt in the tube or on the ball.
        */
+        // cout << current_aircraft.fdm_state->get_A_Z_pilot() << endl;
        d = -current_aircraft.fdm_state->get_A_Z_pilot();
        if ( d < 1 ) d = 1;
        set_lowpass ( & the_TC_rad,