]> git.mxchange.org Git - flightgear.git/blobdiff - src/Aircraft/aircraft.cxx
Make FGAircraftModel more subsystem-alike, move update to fgMainLoop.
[flightgear.git] / src / Aircraft / aircraft.cxx
index 60b5eb311d3f95ebe9abe2036c3acd7f6c4f48d0..c3514e29afcc75d02f89075efce8e14a4b170c37 100644 (file)
@@ -34,6 +34,7 @@
 #include <simgear/misc/sg_path.hxx>
 #include <simgear/structure/commands.hxx>
 #include <simgear/structure/exception.hxx>
+#include <simgear/sound/soundmgr_openal.hxx>
 
 #include <Main/globals.hxx>
 #include <Main/fg_init.hxx>
@@ -203,14 +204,8 @@ fgLoadAircraft (const SGPropertyNode * arg)
         globals->get_current_panel()->update(0);
     }
 
-    // Load the new 3D model
-    //
-    globals->get_aircraft_model()->unbind();
-    delete globals->get_aircraft_model();
-    globals->set_aircraft_model(new FGAircraftModel);
-    globals->get_aircraft_model()->init();
-    globals->get_aircraft_model()->bind();
-
+    globals->get_aircraft_model()->reinit();
+        
     // TODO:
     //    load new electrical system
     //
@@ -226,14 +221,7 @@ fgLoadAircraft (const SGPropertyNode * arg)
     t = fgInitTime();
     globals->set_time_params( t );
 
-    // Reinitialize some subsystems
-    //
-    globals->get_viewmgr()->reinit();
-    globals->get_controls()->reset_all();
-    globals->get_aircraft_model()->reinit();
-    globals->get_subsystem("fx")->reinit();
     globals->get_subsystem("xml-autopilot")->reinit();
-
     fgReInitSubsystems();
 
     if ( !freeze ) {