]> git.mxchange.org Git - flightgear.git/blobdiff - src/Main/fgviewer.cxx
Merge branch 'master' of git://gitorious.org/fg/flightgear into next
[flightgear.git] / src / Main / fgviewer.cxx
index 6e6e040b726cc5e0b97ee81aceaa40c7d1eb8f59..428bc2c328e24312261ba6d977ae89376a7b6f28 100644 (file)
@@ -1,3 +1,7 @@
+#ifdef HAVE_CONFIG_H
+#  include "config.h"
+#endif
+
 #include <iostream>
 #include <cstdlib>
 
@@ -40,7 +44,8 @@ public:
     {
         try {
             SGSharedPtr<SGPropertyNode> prop = new SGPropertyNode;
-            return simgear::SGModelLib::loadModel(modelPath, prop);
+            return simgear::SGModelLib::loadModel(modelPath,
+                                                  globals->get_props());
         } catch (...) {
             std::cerr << "Error loading \"" << modelPath << "\"" << std::endl;
             return 0;
@@ -67,8 +72,6 @@ static void dumpOut(osg::Node* node)
     char filename[24];
     static int count = 1;
 
-    FGRenderer *renderer = globals->get_renderer();
-
     while (count < 1000) {
         FILE *fp;
         snprintf(filename, 24, "fgviewer-%03d.osg", count++);
@@ -101,6 +104,7 @@ bool GraphDumpHandler::handle(const osgGA::GUIEventAdapter& ea,
     default:
         return false;
     }
+    return false;
 }
 
 void GraphDumpHandler::getUsage(osg::ApplicationUsage& usage) const
@@ -145,15 +149,14 @@ fgviewerMain(int argc, char** argv)
     osgGA::KeySwitchMatrixManipulator* keyswitchManipulator;
     keyswitchManipulator = new osgGA::KeySwitchMatrixManipulator;
 
-    osgGA::MatrixManipulator* mm = new osgGA::TrackballManipulator;
-    keyswitchManipulator->addMatrixManipulator('1', "Trackball", mm);
-    mm = new osgGA::FlightManipulator;
-    keyswitchManipulator->addMatrixManipulator('2', "Flight", mm);
-    mm = new osgGA::DriveManipulator;
-    keyswitchManipulator->addMatrixManipulator('3', "Drive", mm);
-    mm = new osgGA::TerrainManipulator;
-    keyswitchManipulator->addMatrixManipulator('4', "Terrain", mm);
-
+    keyswitchManipulator->addMatrixManipulator('1', "Trackball",
+                                               new osgGA::TrackballManipulator);
+    keyswitchManipulator->addMatrixManipulator('2', "Flight",
+                                               new osgGA::FlightManipulator);
+    keyswitchManipulator->addMatrixManipulator('3', "Drive",
+                                               new osgGA::DriveManipulator);
+    keyswitchManipulator->addMatrixManipulator('4', "Terrain",
+                                               new osgGA::TerrainManipulator);
     viewer.setCameraManipulator(keyswitchManipulator);
 
     // Usefull stats
@@ -223,6 +226,8 @@ fgviewerMain(int argc, char** argv)
     SGReaderWriterBTGOptions* btgOptions = new SGReaderWriterBTGOptions;
     btgOptions->getDatabasePathList() = filePathList;
     btgOptions->setMatlib(globals->get_matlib());
+    btgOptions->setUseRandomObjects(fgGetBool("/sim/rendering/random-objects", false));
+    btgOptions->setUseRandomVegetation(fgGetBool("/sim/rendering/random-vegetation", false));
 
     // read the scene from the list of file specified command line args.
     osg::ref_ptr<osg::Node> loadedModel;