]> git.mxchange.org Git - flightgear.git/blobdiff - src/Main/main.cxx
Turn back to default lighting when specular-highlight gets disabled
[flightgear.git] / src / Main / main.cxx
index 34941f4c17fe77366c7a07c704cdd05caab89499..4332c28cda376b26d4dd27de775634bcf292d68b 100644 (file)
@@ -333,8 +333,11 @@ void trRenderFrame( void ) {
     glLightModelfv( GL_LIGHT_MODEL_AMBIENT, black );
     glLightModeli( GL_LIGHT_MODEL_LOCAL_VIEWER, GL_FALSE );
 
-    if (fgGetBool("/sim/rendering/specular-highlight"))
+    if (fgGetBool("/sim/rendering/specular-highlight")) {
         glLightModeli(GL_LIGHT_MODEL_COLOR_CONTROL, GL_SEPARATE_SPECULAR_COLOR);
+    } else {
+        glLightModeli(GL_LIGHT_MODEL_COLOR_CONTROL, GL_SINGLE_COLOR);
+    }
 
     ssgGetLight( 0 ) -> setColour( GL_AMBIENT, l->scene_ambient );
 
@@ -612,9 +615,13 @@ void fgRenderFrame() {
         // a completely dark scene.  So, we set GL_LIGHT_MODEL_AMBIENT
         // explicitely to black.
         glLightModelfv( GL_LIGHT_MODEL_AMBIENT, black );
-        if (fgGetBool("/sim/rendering/specular-highlight"))
+        if (fgGetBool("/sim/rendering/specular-highlight")) {
             glLightModeli(GL_LIGHT_MODEL_COLOR_CONTROL,
                           GL_SEPARATE_SPECULAR_COLOR);
+        } else {
+            glLightModeli(GL_LIGHT_MODEL_COLOR_CONTROL,
+                         GL_SINGLE_COLOR);
+        }
 
         ssgGetLight( 0 ) -> setColour( GL_AMBIENT, l->scene_ambient );
         ssgGetLight( 0 ) -> setColour( GL_DIFFUSE, l->scene_diffuse );