Minor fiddling with material properties *trying* to chase down a visual bug
where the scene get's brighter or dimmer depending on whether or not the sun or moon is in the field of view.
This commit is contained in:
parent
6cb91111d8
commit
a371fe4e6d
2 changed files with 14 additions and 9 deletions
|
@ -200,11 +200,13 @@ void fgBuildRenderStates( void ) {
|
||||||
default_state = new ssgSimpleState;
|
default_state = new ssgSimpleState;
|
||||||
default_state->disable( GL_TEXTURE_2D );
|
default_state->disable( GL_TEXTURE_2D );
|
||||||
default_state->enable( GL_CULL_FACE );
|
default_state->enable( GL_CULL_FACE );
|
||||||
default_state->disable( GL_COLOR_MATERIAL );
|
default_state->enable( GL_COLOR_MATERIAL );
|
||||||
|
default_state->setColourMaterial( GL_AMBIENT_AND_DIFFUSE );
|
||||||
|
default_state->setMaterial( GL_EMISSION, 0, 0, 0, 1 );
|
||||||
|
default_state->setMaterial( GL_SPECULAR, 0, 0, 0, 1 );
|
||||||
default_state->disable( GL_BLEND );
|
default_state->disable( GL_BLEND );
|
||||||
default_state->disable( GL_ALPHA_TEST );
|
default_state->disable( GL_ALPHA_TEST );
|
||||||
default_state->disable( GL_LIGHTING );
|
default_state->disable( GL_LIGHTING );
|
||||||
default_state->setMaterial( GL_AMBIENT_AND_DIFFUSE, 1.0, 1.0, 1.0, 1.0 );
|
|
||||||
|
|
||||||
hud_and_panel = new ssgSimpleState;
|
hud_and_panel = new ssgSimpleState;
|
||||||
hud_and_panel->disable( GL_CULL_FACE );
|
hud_and_panel->disable( GL_CULL_FACE );
|
||||||
|
@ -620,12 +622,14 @@ void fgRenderFrame( void ) {
|
||||||
global_tile_mgr.prep_ssg_nodes();
|
global_tile_mgr.prep_ssg_nodes();
|
||||||
|
|
||||||
// force the default state so ssg can get back on track if
|
// force the default state so ssg can get back on track if
|
||||||
// we've changed things elsewhere
|
// we've changed things elsewhere (this is now handled
|
||||||
FGMaterialSlot m_slot;
|
// differently)
|
||||||
FGMaterialSlot *m_ptr = &m_slot;
|
//
|
||||||
if ( material_mgr.find( "Default", m_ptr ) ) {
|
// FGMaterialSlot m_slot;
|
||||||
m_ptr->get_state()->force();
|
// FGMaterialSlot *m_ptr = &m_slot;
|
||||||
}
|
// if ( material_mgr.find( "Default", m_ptr ) ) {
|
||||||
|
// m_ptr->get_state()->force();
|
||||||
|
// }
|
||||||
|
|
||||||
// draw the ssg scene
|
// draw the ssg scene
|
||||||
ssgCullAndDraw( scene );
|
ssgCullAndDraw( scene );
|
||||||
|
|
|
@ -204,7 +204,8 @@ fgMATERIAL_MGR::load_lib ( void )
|
||||||
textured->setTexture( (char *)tex_file.c_str() );
|
textured->setTexture( (char *)tex_file.c_str() );
|
||||||
textured->enable( GL_COLOR_MATERIAL );
|
textured->enable( GL_COLOR_MATERIAL );
|
||||||
textured->setColourMaterial( GL_AMBIENT_AND_DIFFUSE );
|
textured->setColourMaterial( GL_AMBIENT_AND_DIFFUSE );
|
||||||
textured->setMaterial( GL_SPECULAR, 0.0, 0.0, 0.0, 1.0 );
|
textured->setMaterial( GL_EMISSION, 0, 0, 0, 1 );
|
||||||
|
textured->setMaterial( GL_SPECULAR, 0, 0, 0, 1 );
|
||||||
|
|
||||||
// Set up the coloured state
|
// Set up the coloured state
|
||||||
nontextured->enable( GL_LIGHTING );
|
nontextured->enable( GL_LIGHTING );
|
||||||
|
|
Loading…
Reference in a new issue