]> git.mxchange.org Git - simgear.git/commitdiff
Clean up the Pre-, and PostDraw functions a bit. Especially the glPushAttrib has...
authorehofman <ehofman>
Sat, 24 Jan 2004 12:08:12 +0000 (12:08 +0000)
committerehofman <ehofman>
Sat, 24 Jan 2004 12:08:12 +0000 (12:08 +0000)
simgear/scene/sky/moon.cxx
simgear/scene/sky/oursun.cxx
simgear/scene/sky/sky.cxx
simgear/scene/sky/stars.cxx

index dd280f699bd4474dff9d8f62cb5ba2c70b089eff..3514f705c6ad6307f7d1e51e11552f798c86a136 100644 (file)
@@ -48,7 +48,7 @@ static int sgMoonOrbPreDraw( ssgEntity *e ) {
     ssgLeaf *f = (ssgLeaf *)e;
     if ( f -> hasState () ) f->getState()->apply() ;
 
-    glPushAttrib( GL_COLOR_BUFFER_BIT | GL_ENABLE_BIT );
+    glPushAttrib( GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT | GL_ENABLE_BIT );
     // cout << "push error = " << glGetError() << endl;
 
     glDisable( GL_DEPTH_TEST );
@@ -62,24 +62,14 @@ static int sgMoonOrbPreDraw( ssgEntity *e ) {
 static int sgMoonOrbPostDraw( ssgEntity *e ) {
     /* cout << endl << "Moon orb post draw" << endl << "----------------" 
         << endl << endl; */
-    // glEnable( GL_DEPTH_TEST );
-    // glEnable( GL_FOG );
 
     // Some drivers don't properly reset glBendFunc with a
     // glPopAttrib() so we reset it to the 'default' here.
-    glBlendFunc ( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA ) ;
+    // glBlendFunc ( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA ) ;
 
     glPopAttrib();
     // cout << "pop error = " << glGetError() << endl;
     
-    /* test
-    glDisable( GL_LIGHTING );
-    glDisable( GL_CULL_FACE );
-    glEnable( GL_COLOR_MATERIAL );
-    glColorMaterial( GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE );
-    glEnable( GL_CULL_FACE );
-    glEnable( GL_LIGHTING ); */
-
     return true;
 }
 
@@ -105,9 +95,6 @@ static int sgMoonHaloPreDraw( ssgEntity *e ) {
 static int sgMoonHaloPostDraw( ssgEntity *e ) {
     /* cout << endl << "Moon halo post draw" << endl << "----------------" 
         << endl << endl; */
-    // glEnable( GL_DEPTH_TEST );
-    // glEnable( GL_FOG );
-    // glBlendFunc ( GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA ) ;
     
     glPopAttrib();
     // cout << "pop error = " << glGetError() << endl;
index 923ae3f832b2b81a4f8c962c8e5441873e21eaf7..9d4794a4bf068628901972dd5da8528e52e185b9 100644 (file)
@@ -73,9 +73,6 @@ static int sgSunOrbPostDraw( ssgEntity *e ) {
     glPopAttrib();
     // cout << "pop error = " << glGetError() << endl;
 
-    // glEnable( GL_DEPTH_TEST );
-    // glEnable( GL_FOG );
-
     return true;
 }
 
@@ -104,9 +101,6 @@ static int sgSunHaloPostDraw( ssgEntity *e ) {
     glPopAttrib();
     // cout << "pop error = " << glGetError() << endl;
 
-    // glEnable( GL_DEPTH_TEST );
-    // glEnable( GL_FOG );
-
     return true;
 }
 
index fe6bb0ed106106ab5507849c175d241c69bcef23..1da027a035182794d7747a2a725d86c610c272c4 100644 (file)
@@ -175,7 +175,7 @@ void SGSky::preDraw( float alt, float fog_exp2_density ) {
     //        certain NVidia drivers don't seem to implement
     //        glPushAttrib(FG_FOG_BIT) properly. The result is that
     //        there is not fog when looking at the sun.
-    glFogf ( GL_FOG_DENSITY, fog_exp2_density );
+    // glFogf ( GL_FOG_DENSITY, fog_exp2_density );
 
        // if we are closer than this to a cloud layer, don't draw clouds
     static const float slop = 5.0;
index 023b6baae38b925e4beac163f9999dd2e2720ba9..47c7f8f1b67e4e08e1b3b566f716ca73460a3a4a 100644 (file)
@@ -45,7 +45,7 @@ static int sgStarPreDraw( ssgEntity *e ) {
     ssgLeaf *f = (ssgLeaf *)e;
     if ( f -> hasState () ) f->getState()->apply() ;
 
-    glPushAttrib( GL_DEPTH_BUFFER_BIT | GL_FOG_BIT );
+    glPushAttrib( GL_DEPTH_BUFFER_BIT | GL_FOG_BIT | GL_COLOR_BUFFER_BIT );
 
     glDisable( GL_DEPTH_TEST );
     glDisable( GL_FOG );
@@ -60,9 +60,6 @@ static int sgStarPostDraw( ssgEntity *e ) {
 
     glPopAttrib();
 
-    // glEnable( GL_DEPTH_TEST );
-    // glEnable( GL_FOG );
-
     return true;
 }