]> git.mxchange.org Git - flightgear.git/commitdiff
Fix starting on carrier.
authorJames Turner <zakalawe@mac.com>
Thu, 6 Mar 2014 09:21:04 +0000 (09:21 +0000)
committerJames Turner <zakalawe@mac.com>
Thu, 6 Mar 2014 09:21:04 +0000 (09:21 +0000)
- scenery intersection needs to check the whole scene since carriers
are outside it. (could possibly be optimised further)

src/Scenery/scenery.cxx

index c05d6eeff12d9adc9def8b2f069e467bbbb96a06..73d0b7f462d189ee221b6ce1c43f80593e30b646 100644 (file)
@@ -384,7 +384,7 @@ FGScenery::get_elevation_m(const SGGeod& geod, double& alt,
 
   FGSceneryIntersect intersectVisitor(SGLineSegmentd(start, end), butNotFrom);
   intersectVisitor.setTraversalMask(SG_NODEMASK_TERRAIN_BIT);
-  terrain_branch->accept(intersectVisitor);
+  get_scene_graph()->accept(intersectVisitor);
 
   if (!intersectVisitor.getHaveHit())
       return false;
@@ -413,7 +413,7 @@ FGScenery::get_cart_ground_intersection(const SGVec3d& pos, const SGVec3d& dir,
 
   FGSceneryIntersect intersectVisitor(SGLineSegmentd(start, end), butNotFrom);
   intersectVisitor.setTraversalMask(SG_NODEMASK_TERRAIN_BIT);
-  terrain_branch->accept(intersectVisitor);
+  get_scene_graph()->accept(intersectVisitor);
 
   if (!intersectVisitor.getHaveHit())
       return false;
@@ -436,7 +436,7 @@ bool FGScenery::scenery_available(const SGGeod& position, double range_m)
     // currently the PagedLODs will not be loaded by the DatabasePager
     // while the splashscreen is there, so CheckSceneryVisitor force-loads
     // missing objects in the main thread
-    terrain_branch->accept(csnv);
+    get_scene_graph()->accept(csnv);
     if(!csnv.isLoaded())
         return false;
     return true;