osgearth icon indicating copy to clipboard operation
osgearth copied to clipboard

cache folders don't get populated with data during runtime with osgEarth 3.1+

Open keince opened this issue 2 years ago • 2 comments

I'm currently using osgEarth 3.1.0 build 111 on Windows 10 x64.

Using a simple earth file, I can't get the cache file system to populate the subfolders during runtime.

Here is the output with OSGEARTH_NOTIFY_LEVEL=DEBUG set. I have put in bold the output that I think is problematic. Not sure if it has anything to do on why cache folders are not being populated...

[osgEarth] [Capabilities] Realized graphics window for OpenGL operations. [osgEarth] [Capabilities] Capabilities: [osgEarth] [Capabilities] osgEarth Version: 3.1.0 build 111 [osgEarth] [Capabilities] OSG Version: 3.6.5 [osgEarth] [Capabilities] GDAL Version: 3.2.2 [osgEarth] [Capabilities] GEOS Version: 3.9.1 [osgEarth] [Capabilities] GPU Vendor: NVIDIA Corporation [osgEarth] [Capabilities] GPU Renderer: GeForce GTX 1660 Ti/PCIe/SSE2 [osgEarth] [Capabilities] GL/Driver Version: 4.6.0 NVIDIA 462.75 [osgEarth] [Capabilities] GL Core Profile: no [osgEarth] [Capabilities] Max GPU texture units = 32 [osgEarth] [Capabilities] Max GPU texture coord indices = 8 [osgEarth] [Capabilities] Max GPU attributes = 16 [osgEarth] [Capabilities] Depth buffer bits = 24 [osgEarth] [Capabilities] Max texture size = 32768 [osgEarth] [Capabilities] GLSL = yes [osgEarth] [Capabilities] GLSL Version = 460 [osgEarth] [Capabilities] Texture arrays = yes [osgEarth] [Capabilities] draw instanced = yes [osgEarth] [Capabilities] Texture buffers = yes [osgEarth] [Capabilities] Texture buffer max size = 134217728 [osgEarth] [Capabilities] Compression = ARB S3 RG [osgEarth] [Earth Plugin] Forced load: osgEarth.dll [osgEarth] [Earth Plugin] No valid earth file version; assuming version='2' [osgEarth] [Map] Map profile is: [srs=WGS84, min=-180,-90 max=180,90 lod0=2,1 vdatum=geodetic] [osgEarth] [CacheFactory] Initializing cache of type "filesystem" [osgEarth] [FileSystemCache] Opened a filesystem cache at "C:/tester/cache" [osgEarth] [JobArena] Arena "oe.fscache" concurrency=1 [osgEarth] [Map] [cache=FileSystemCache; policy=read-write; bin=no] [osgEarth] [ElevationPool] Refreshing EP index [osgEarth] [Layer] Layer "worldwide lo-res" Cache bin is [worldwide-lo-res-6d5c6df4] [osgEarth] Creating Profile from source's geographic SRS: WGS 84 [osgEarth] [GDAL] Layer "worldwide lo-res" Geo extents: -180, -90 -> 180, 90 [osgEarth] [GDAL] Layer "worldwide lo-res" Resolution= 0.175781x0.175781 max=0.175781 [osgEarth] [GDAL] Layer "worldwide lo-res" C:/tester/world.tif max Data Level: 3 [osgEarth] [GDAL] Layer "worldwide lo-res" GeoExtent = SW=-180,-90 NE=180,90, SRS=WGS 84 [osgEarth] [GDAL] Layer "worldwide lo-res" Set Profile to [srs=WGS 84, min=-180,-90 max=180,90 lod0=2,1 vdatum=geodetic] [osgEarth] [TileLayer] Layer "worldwide lo-res" [srs=WGS 84, min=-180,-90 max=180,90 lod0=2,1 vdatum=geodetic] [cache=FileSystemCache; policy=read-write; bin=yes] [osgEarth] [Layer] Layer "DTED1" Cache bin is [DTED1-72e5b09e] [osgEarth] Creating Profile from source's geographic SRS: WGS 84 [osgEarth] [GDAL] Layer "DTED1" Geo extents: -112, 39.9996 -> -111, 41.0004 [osgEarth] [GDAL] Layer "DTED1" Resolution= 0.000833333x0.000833333 max=0.000833333 [osgEarth] [GDAL] Layer "DTED1" E:/SRTM/dted/w112/n40.dt1 max Data Level: 10 [osgEarth] [GDAL] Layer "DTED1" GeoExtent = SW=-112.000416667,39.9995833333 NE=-110.999583333,41.0004166667, SRS=WGS 84 [osgEarth] [GDAL] Layer "DTED1" Set Profile to [srs=WGS 84, min=-180,-90 max=180,90 lod0=2,1 vdatum=geodetic] [osgEarth] [ElevationLayer] "DTED1" : Override vdatum = egm96 (was geodetic) [osgEarth] [VerticalDatum] Initializing vertical datum: egm96 [osgEarth] [TileLayer] Layer "DTED1" [srs=unknown, min=-180,-90 max=180,90 lod0=2,1 vdatum=EGM96] [cache=FileSystemCache; policy=read-write; bin=yes] [osgEarth] Closed GDAL Driver on thread 14532 [osgEarth] [engine_rex] Activated! [osgEarth] [TerrainResources] Texture unit 0 reserved for Terrain Color [osgEarth] [TerrainResources] Texture unit 1 reserved for Terrain Elevation [osgEarth] [TerrainResources] Texture unit 2 reserved for Terrain Normals [osgEarth] [TerrainResources] Texture unit 3 reserved for Terrain Parent Color [osgEarth] [TerrainResources] Texture unit 4 reserved for Terrain Land Cover [osgEarth] [RexTerrainEngineNode] Render Bindings: [osgEarth] [RexTerrainEngineNode] > Bound "oe_layer_tex" to unit 0 [osgEarth] [RexTerrainEngineNode] > Bound "oe_layer_texParent" to unit 3 [osgEarth] [RexTerrainEngineNode] > Bound "oe_tile_elevationTex" to unit 1 [osgEarth] [RexTerrainEngineNode] > Bound "oe_tile_normalTex" to unit 2 [osgEarth] [RexTerrainEngineNode] > Bound "oe_tile_landCoverTex" to unit 4 [osgEarth] Intersection of SW=-112.000416667,39.9995833333 NE=-110.999583333,41.0004166667, SRS=WGS 84 and SW=-180,-90 NE=180,90, SRS=WGS84 is: SW=-112.000416667,39.9995833333 NE=-110.999583333,41.0004166667, SRS=WGS 84 [osgEarth] LOD 19 TY=524288 minAR=0.305263 minTY=51771 maxTY=472516 (+/-72.226 deg) [osgEarth] LOD 18 TY=262144 minAR=0.289474 minTY=24505 maxTY=237638 (+/-73.1741 deg) [osgEarth] LOD 17 TY=131072 minAR=0.273684 minTY=11566 maxTY=119505 (+/-74.1172 deg) [osgEarth] LOD 16 TY=65536 minAR=0.257895 minTY=5441 maxTY=60094 (+/-75.0572 deg) [osgEarth] LOD 15 TY=32768 minAR=0.242105 minTY=2551 maxTY=30216 (+/-75.9897 deg) [osgEarth] LOD 14 TY=16384 minAR=0.226316 minTY=1191 maxTY=15192 (+/-76.9208 deg) [osgEarth] LOD 13 TY=8192 minAR=0.210526 minTY=553 maxTY=7638 (+/-77.8601 deg) [osgEarth] LOD 12 TY=4096 minAR=0.194737 minTY=256 maxTY=3839 (+/-78.772 deg) [osgEarth] LOD 11 TY=2048 minAR=0.178947 minTY=117 maxTY=1930 (+/-79.7607 deg) [osgEarth] LOD 10 TY=1024 minAR=0.163158 minTY=53 maxTY=970 (+/-80.7715 deg) [osgEarth] LOD 9 TY=512 minAR=0.147368 minTY=24 maxTY=487 (+/-81.7383 deg) [osgEarth] LOD 8 TY=256 minAR=0.131579 minTY=11 maxTY=244 (+/-82.6172 deg) [osgEarth] LOD 7 TY=128 minAR=0.115789 minTY=5 maxTY=122 (+/-83.6719 deg) [osgEarth] LOD 6 TY=64 minAR=0.1 minTY=2 maxTY=61 (+/-85.7812 deg) [osgEarth] [RexTerrainEngineNode] Creating 2 root keys. [osgEarth] [JobArena] Arena "oe.rex.loadtile" concurrency=4 [osgEarth] [TileNode] notify (create) key 0/0/0 [osgEarth] - 1/2 : 0/0/0 [osgEarth] - 1/2 : 0/0/0 [osgEarth] [TileNode] notify (create) key 0/1/0 [osgEarth] - 2/2 : 0/1/0 [osgEarth] - 2/2 : 0/1/0 [osgEarth] - 2/2 : 0/1/0 [osgEarth] Creating Profile from source's geographic SRS: WGS 84 [osgEarth] [GDAL] Layer "worldwide lo-res" Geo extents: -180, -90 -> 180, 90 [osgEarth] [GDAL] Layer "worldwide lo-res" GeoExtent = SW=-180,-90 NE=180,90, SRS=WGS 84 [osgEarth] Intersection of SW=-180,-90 NE=0,90, SRS=WGS84 and SW=-180,-90 NE=180,90, SRS=WGS 84 is: SW=-180,-90 NE=0,90, SRS=WGS84 [osgEarth] [GDAL] Layer "worldwide lo-res" ReadWindow 0,0 1024x1024 [osgEarth] [GDAL] Layer "worldwide lo-res" DestWindow 0,0 256x256 [osgEarth] Creating Profile from source's geographic SRS: WGS 84 [osgEarth] [GDAL] Layer "worldwide lo-res" Geo extents: -180, -90 -> 180, 90 [osgEarth] [GDAL] Layer "worldwide lo-res" GeoExtent = SW=-180,-90 NE=180,90, SRS=WGS 84 [osgEarth] Intersection of SW=0,-90 NE=180,90, SRS=WGS84 and SW=-180,-90 NE=180,90, SRS=WGS 84 is: SW=0,-90 NE=180,90, SRS=WGS84 [osgEarth] [GDAL] Layer "worldwide lo-res" ReadWindow 1024,0 1024x1024 [osgEarth] [GDAL] Layer "worldwide lo-res" DestWindow 0,0 256x256 [osgEarth] [ElevationPool] Refreshing EP index [osgEarth] Intersection of SW=-112.000416667,39.9995833333 NE=-110.999583333,41.0004166667, SRS=WGS 84 and SW=-180,-90 NE=180,90, SRS=WGS84 is: SW=-112.000416667,39.9995833333 NE=-110.999583333,41.0004166667, SRS=WGS 84 [osgEarth] [ElevationLayer] "DTED1" : Override vdatum = egm96 (was egm96) [osgEarth] [TileLayer] Layer "DTED1" Established metadata for cache bin [] [osgEarth] Creating Profile from source's geographic SRS: WGS 84 [osgEarth] [GDAL] Layer "DTED1" Geo extents: -112, 39.9996 -> -111, 41.0004 [osgEarth] [GDAL] Layer "DTED1" GeoExtent = SW=-112.000416667,39.9995833333 NE=-110.999583333,41.0004166667, SRS=WGS 84

I'm using the command...

osgearth_viewer --window 100 100 1280 1024 test.earth

The cache subfolders get created at runtime but they remain empty during execution.

I posted this problem on the forum but didn't get any response so I'm posting it here as an issue on GitHub.

keince avatar Aug 02 '21 19:08 keince

Here is the earth file I'm using...

<map name="Test" type="geocentric">
  
  <options>
    <terrain>
      <color>#000000</color>
    </terrain>
      <cache type="filesystem">
        <path>C:/tester/cache</path>
      </cache>
  </options>
    
  <GDALImage name="worldwide lo-res" enabled="true" visible="true">
    <url>C:/tester/world.tif</url>
  </GDALImage>

  <GDALElevation name="DTED1" enabled="true" visible="true">
    <url>E:/SRTM/dted/w112/n40.dt1</url>
    <vdatum>egm96</vdatum>
  </GDALElevation>

</map>

keince avatar Aug 02 '21 19:08 keince

I believe this was a defect that was fixed in 3.2. Can you please try it and let us know?

gwaldron avatar Aug 31 '21 12:08 gwaldron