osgEarth的Rex引擎原理分析(二十一)建立瓦片模型過程詳解
阿新 • • 發佈:2018-11-25
目標:(十七)中問題47
osgEarth/TerrainTileModelFactory.cpp TerrainTileModel* TerrainTileModelFactory::createTileModel(const MapFrame& frame, const TileKey& key, const CreateTileModelFilter& filter, const TerrainEngineRequirements* requirements, ProgressCallback* progress) { // Make a new model: osg::ref_ptr<TerrainTileModel> model = new TerrainTileModel( key, frame.getRevision() ); // assemble all the components: //addImageLayers(model.get(), frame, requirements, key, filter, progress); addColorLayers(model.get(), frame, requirements, key, filter, progress); addPatchLayers(model.get(), frame, key, filter, progress); if ( requirements == 0L || requirements->elevationTexturesRequired() ) { unsigned border = requirements->elevationBorderRequired() ? 1u : 0u; addElevation( model.get(), frame, key, filter, border, progress ); } #if 0 if ( requirements == 0L || requirements->normalTexturesRequired() ) { addNormalMap( model.get(), frame, key, progress ); } #endif // done. return model.release(); }