From: Stuart Buchanan Date: Fri, 10 Feb 2012 22:49:20 +0000 (+0000) Subject: Fall back to taking tree textures from Terrain/ if they are not found under X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=c473cd7213bc778c242c5827b0f2d2c13e42a7ad;p=simgear.git Fall back to taking tree textures from Terrain/ if they are not found under Terrain.high, consistent with the other textures in materials.xml. Also fix comment. --- diff --git a/simgear/scene/material/mat.cxx b/simgear/scene/material/mat.cxx index b3914bcd..5888b867 100644 --- a/simgear/scene/material/mat.cxx +++ b/simgear/scene/material/mat.cxx @@ -244,9 +244,21 @@ SGMaterial::read_properties(const SGReaderWriterOptions* options, tree_varieties = props->getIntValue("tree-varieties", 1); const SGPropertyNode* treeTexNode = props->getChild("tree-texture"); + if (treeTexNode) { string treeTexPath = props->getStringValue("tree-texture"); - tree_texture = SGModelLib::findDataFile(treeTexPath, options); + + if (! treeTexPath.empty()) { + SGPath treePath("Textures.high"); + treePath.append(treeTexPath); + tree_texture = SGModelLib::findDataFile(treePath.str(), options); + + if (tree_texture.empty()) { + treePath = SGPath("Textures"); + treePath.append(treeTexPath); + tree_texture = SGModelLib::findDataFile(treePath.str(), options); + } + } } // surface values for use with ground reactions diff --git a/simgear/scene/tgdb/SGTexturedTriangleBin.hxx b/simgear/scene/tgdb/SGTexturedTriangleBin.hxx index 61783ccc..3e722d98 100644 --- a/simgear/scene/tgdb/SGTexturedTriangleBin.hxx +++ b/simgear/scene/tgdb/SGTexturedTriangleBin.hxx @@ -275,9 +275,7 @@ public: SGVec2f texCoord = a*t0 + b*t1 + c*t2; // Check this random point against the object mask - // blue (for buildings) channel. Also check - // that they are more than spacing metres away from - // any other point. + // blue (for buildings) channel. osg::Image* img = object_mask->getImage(); unsigned int x = (int) (img->s() * texCoord.x()) % img->s(); unsigned int y = (int) (img->t() * texCoord.y()) % img->t();