/// <summary> /// Change terrain layer settings. /// </summary> /// <param name="dataSource">The data source for the terrain height map.</param> /// <param name="elevationType">Mesh generation strategy for the tile/height.</param> /// <param name="enableCollider">Enable/Disable collider component for the tile game object.</param> /// <param name="factor">Multiplier for the height data.</param> /// <param name="layerId">Unity Layer for the tile game object.</param> public virtual void SetProperties(ElevationSourceType dataSource = ElevationSourceType.MapboxTerrain, ElevationLayerType elevationType = ElevationLayerType.TerrainWithElevation, bool enableCollider = false, float factor = 1, int layerId = 0) { if (_layerProperty.sourceType != dataSource || _layerProperty.elevationLayerType != elevationType) { _layerProperty.sourceType = dataSource; _layerProperty.elevationLayerType = elevationType; _layerProperty.HasChanged = true; } if (_layerProperty.colliderOptions.addCollider != enableCollider) { _layerProperty.colliderOptions.addCollider = enableCollider; _layerProperty.colliderOptions.HasChanged = true; } if (_layerProperty.requiredOptions.exaggerationFactor != factor) { _layerProperty.requiredOptions.exaggerationFactor = factor; _layerProperty.requiredOptions.HasChanged = true; } if (_layerProperty.unityLayerOptions.layerId != layerId) { _layerProperty.unityLayerOptions.layerId = layerId; _layerProperty.unityLayerOptions.HasChanged = true; } }
/// <summary> /// Sets the main strategy for terrain mesh generation. /// Flat terrain doesn't pull data from servers and just uses a quad as terrain. /// </summary> /// <param name="elevationType">Type of the elevation strategy</param> public virtual void SetElevationType(ElevationLayerType elevationType) { if (_layerProperty.elevationLayerType != elevationType) { _layerProperty.elevationLayerType = elevationType; _layerProperty.HasChanged = true; } }
public void SetTerrainOptions(ElevationLayerType type, ElevationRequiredOptions requiredOptions = null, ElevationModificationOptions modificationOptions = null) { _layerProperty.elevationLayerType = type; Debug.Log("Terrain Type : " + _layerProperty.elevationLayerType); if (requiredOptions != null) { _layerProperty.requiredOptions = requiredOptions; } if (modificationOptions != null) { _layerProperty.modificationOptions = modificationOptions; } }