7
7
using Mapbox . BaseModule . Data . Tiles ;
8
8
using Mapbox . BaseModule . Map ;
9
9
using Mapbox . BaseModule . Unity ;
10
+ using Mapbox . ImageModule . Terrain . TerrainStrategies ;
10
11
using UnityEngine ;
11
12
using TerrainData = Mapbox . BaseModule . Data . DataFetchers . TerrainData ;
12
13
@@ -17,13 +18,15 @@ public class TerrainLayerModule : ITerrainLayerModule
17
18
private TerrainLayerModuleSettings _settings ;
18
19
private Source < TerrainData > _rasterSource ;
19
20
private HashSet < CanonicalTileId > _retainedTerrainTiles ;
21
+ private TerrainStrategy _terrainStrategy ;
20
22
21
23
//Terrain module doesn't support cpu elevation now after TileCreator changes
22
24
public TerrainLayerModule ( Source < TerrainData > source , TerrainLayerModuleSettings settings ) : base ( )
23
25
{
24
26
_settings = settings ;
25
27
_retainedTerrainTiles = new HashSet < CanonicalTileId > ( ) ;
26
28
_rasterSource = source ;
29
+ _terrainStrategy = new ElevatedTerrainStrategy ( ) ;
27
30
}
28
31
29
32
public virtual IEnumerator Initialize ( )
@@ -70,15 +73,16 @@ public virtual bool LoadInstant(UnityMapTile unityTile)
70
73
var targetTileId = GetDataId ( unityTile . CanonicalTileId ) ;
71
74
if ( _rasterSource . GetInstantData ( targetTileId , out var instantData ) && instantData . IsElevationDataReady )
72
75
{
76
+ _terrainStrategy . RegisterTile ( unityTile , false ) ;
77
+ Debug . Log ( unityTile . CanonicalTileId . Z + " using " + instantData . TileId . Z ) ;
73
78
unityTile . TerrainContainer . SetTerrainData ( instantData , _settings . UseShaderTerrain ) ;
74
79
return true ;
75
80
}
76
81
77
82
return false ;
78
83
}
79
84
80
- public virtual bool RetainTiles ( HashSet < CanonicalTileId > retainedTiles ,
81
- Dictionary < UnwrappedTileId , UnityMapTile > activeTiles )
85
+ public virtual bool RetainTiles ( HashSet < CanonicalTileId > retainedTiles , Dictionary < UnwrappedTileId , UnityMapTile > activeTiles )
82
86
{
83
87
if ( _settings . ElevationLayerType == ElevationLayerType . FlatTerrain )
84
88
return true ;
0 commit comments