From b6544777942962dfefe64ad3b9283290ec3653f9 Mon Sep 17 00:00:00 2001 From: Stuart Buchanan Date: Sat, 9 Aug 2014 20:43:34 +0100 Subject: [PATCH] New materials.xml format --- src/ATC/trafficcontrol.cxx | 8 ++++---- src/Airports/groundnetwork.cxx | 8 ++++---- src/Scenery/tilemgr.cxx | 9 +-------- utils/fgviewer/fgviewer.cxx | 1 - 4 files changed, 9 insertions(+), 17 deletions(-) diff --git a/src/ATC/trafficcontrol.cxx b/src/ATC/trafficcontrol.cxx index 65d60ae52..907818cfb 100644 --- a/src/ATC/trafficcontrol.cxx +++ b/src/ATC/trafficcontrol.cxx @@ -1409,9 +1409,9 @@ void FGStartupController::render(bool visible) //osg::Node *custom_obj; SGMaterial *mat; if (segment->hasBlock(now)) { - mat = matlib->find("UnidirectionalTaperRed"); + mat = matlib->find("UnidirectionalTaperRed", center); } else { - mat = matlib->find("UnidirectionalTaperGreen"); + mat = matlib->find("UnidirectionalTaperGreen", center); } if (mat) geode->setEffect(mat->get_effect()); @@ -1487,9 +1487,9 @@ void FGStartupController::render(bool visible) //osg::Node *custom_obj; SGMaterial *mat; if (segment->hasBlock(now)) { - mat = matlib->find("UnidirectionalTaperRed"); + mat = matlib->find("UnidirectionalTaperRed", segCenter); } else { - mat = matlib->find("UnidirectionalTaperGreen"); + mat = matlib->find("UnidirectionalTaperGreen", segCenter); } if (mat) geode->setEffect(mat->get_effect()); diff --git a/src/Airports/groundnetwork.cxx b/src/Airports/groundnetwork.cxx index 701c07570..3c692629a 100644 --- a/src/Airports/groundnetwork.cxx +++ b/src/Airports/groundnetwork.cxx @@ -1230,9 +1230,9 @@ void FGGroundNetwork::render(bool visible) //osg::Node *custom_obj; SGMaterial *mat; if (segments[pos]->hasBlock(now)) { - mat = matlib->find("UnidirectionalTaperRed"); + mat = matlib->find("UnidirectionalTaperRed", center); } else { - mat = matlib->find("UnidirectionalTaperGreen"); + mat = matlib->find("UnidirectionalTaperGreen", center); } if (mat) geode->setEffect(mat->get_effect()); @@ -1304,9 +1304,9 @@ void FGGroundNetwork::render(bool visible) //osg::Node *custom_obj; SGMaterial *mat; if (segments[k]->hasBlock(now)) { - mat = matlib->find("UnidirectionalTaperRed"); + mat = matlib->find("UnidirectionalTaperRed", segCenter); } else { - mat = matlib->find("UnidirectionalTaperGreen"); + mat = matlib->find("UnidirectionalTaperGreen", segCenter); } if (mat) geode->setEffect(mat->get_effect()); diff --git a/src/Scenery/tilemgr.cxx b/src/Scenery/tilemgr.cxx index 4ffd5d6f3..c2e635acd 100644 --- a/src/Scenery/tilemgr.cxx +++ b/src/Scenery/tilemgr.cxx @@ -199,7 +199,6 @@ void FGTileMgr::reinit() void FGTileMgr::materialLibChanged() { _options->setMaterialLib(globals->get_matlib()); - _options->getMaterialLib()->refreshActiveMaterials(); } /* schedule a tile for loading, keep request for given amount of time. @@ -304,7 +303,7 @@ void FGTileMgr::schedule_needed(const SGBucket& curr_bucket, double vis) } /** - * Update the various queues maintained by the tilemagr (private + * Update the various queues maintained by the tilemgr (private * internal function, do not call directly.) */ void FGTileMgr::update_queues(bool& isDownloadingScenery) @@ -316,7 +315,6 @@ void FGTileMgr::update_queues(bool& isDownloadingScenery) TileEntry *e; int loading=0; int sz=0; - bool didRefreshMaterialCache = false; tile_cache.set_current_time( current_time ); tile_cache.reset_traversal(); @@ -332,11 +330,6 @@ void FGTileMgr::update_queues(bool& isDownloadingScenery) e->prep_ssg_node(vis); if (!e->is_loaded()) { - if (!didRefreshMaterialCache) { - didRefreshMaterialCache = true; - globals->get_matlib()->refreshActiveMaterials(); - } - bool nonExpiredOrCurrent = !e->is_expired(current_time) || e->is_current_view(); bool downloading = isTileDirSyncing(e->tileFileName); isDownloadingScenery |= downloading; diff --git a/utils/fgviewer/fgviewer.cxx b/utils/fgviewer/fgviewer.cxx index e0ebcf250..f5bb8e944 100644 --- a/utils/fgviewer/fgviewer.cxx +++ b/utils/fgviewer/fgviewer.cxx @@ -188,7 +188,6 @@ main(int argc, char** argv) SG_LOG(SG_GENERAL, SG_ALERT, "Problems loading FlightGear materials.\n" << "Probably FG_ROOT is not properly set."); } - ml->refreshActiveMaterials(); simgear::SGModelLib::init(fg_root, props); // Set up the reader/writer options -- 2.39.5