Make sound audiable not until after the scenery is loaded.
This commit is contained in:
parent
c09d1c92ca
commit
800dad8273
2 changed files with 6 additions and 6 deletions
|
@ -142,8 +142,8 @@ SG_USING_STD(string);
|
|||
|
||||
|
||||
class Sound;
|
||||
|
||||
extern const char *default_root;
|
||||
float init_volume;
|
||||
|
||||
|
||||
#ifdef FG_USE_CLOUDS_3D
|
||||
|
@ -1654,6 +1654,8 @@ bool fgInitSubsystems() {
|
|||
// Initialize the sound subsystem.
|
||||
////////////////////////////////////////////////////////////////////
|
||||
|
||||
init_volume = fgGetFloat("/sim/sound/volume");
|
||||
fgSetFloat("/sim/sound/volume", 0.0f);
|
||||
globals->set_soundmgr(new SGSoundMgr);
|
||||
globals->get_soundmgr()->init();
|
||||
globals->get_soundmgr()->bind();
|
||||
|
@ -1850,7 +1852,6 @@ void fgReInitSubsystems()
|
|||
fgSetBool("/sim/freeze/master", true);
|
||||
}
|
||||
fgSetBool("/sim/crashed", false);
|
||||
fgSetBool("/sim/initialised", false);
|
||||
|
||||
// Initialize the FDM
|
||||
fgInitFDM();
|
||||
|
@ -1874,7 +1875,6 @@ void fgReInitSubsystems()
|
|||
if ( !freeze ) {
|
||||
fgSetBool("/sim/freeze/master", false);
|
||||
}
|
||||
fgSetBool("/sim/initialised", true);
|
||||
fgSetBool("/sim/sceneryloaded",false);
|
||||
}
|
||||
|
||||
|
|
|
@ -96,6 +96,7 @@
|
|||
|
||||
static double real_delta_time_sec = 0.0;
|
||||
double delta_time_sec = 0.0;
|
||||
extern float init_volume;
|
||||
|
||||
|
||||
#ifdef macintosh
|
||||
|
@ -550,6 +551,8 @@ static void fgMainLoop( void ) {
|
|||
|
||||
if (!scenery_loaded && globals->get_tile_mgr()->all_queues_empty() && cur_fdm_state->get_inited()) {
|
||||
fgSetBool("sim/sceneryloaded",true);
|
||||
fgSetFloat("/sim/sound/volume", init_volume);
|
||||
globals->get_soundmgr()->set_volume(init_volume);
|
||||
}
|
||||
|
||||
if (fgGetBool("/sim/rendering/specular-highlight")) {
|
||||
|
@ -577,8 +580,6 @@ static void fgIdleFunction ( void ) {
|
|||
// printf("idle state == %d\n", idle_state);
|
||||
|
||||
if ( idle_state == 0 ) {
|
||||
fgSetBool("sim/initialised", false);
|
||||
|
||||
// Initialize the splash screen right away
|
||||
if ( fgGetBool("/sim/startup/splash-screen") ) {
|
||||
fgSplashInit(fgGetString("/sim/startup/splash-texture"));
|
||||
|
@ -662,7 +663,6 @@ static void fgIdleFunction ( void ) {
|
|||
if ( idle_state == 1000 ) {
|
||||
// We've finished all our initialization steps, from now on we
|
||||
// run the main loop.
|
||||
fgSetBool("sim/initialised",true);
|
||||
fgSetBool("sim/sceneryloaded",false);
|
||||
|
||||
fgRegisterIdleHandler(fgMainLoop);
|
||||
|
|
Loading…
Reference in a new issue