diff --git a/Runtime/Mapbox/VectorModule/IVectorLayerVisualizer.cs b/Runtime/Mapbox/VectorModule/IVectorLayerVisualizer.cs index 968c8a02c..e677b755f 100644 --- a/Runtime/Mapbox/VectorModule/IVectorLayerVisualizer.cs +++ b/Runtime/Mapbox/VectorModule/IVectorLayerVisualizer.cs @@ -12,7 +12,7 @@ namespace Mapbox.VectorModule public interface IVectorLayerVisualizer { string VectorLayerName { get; } - void AddModifierStack(List stack); + void AddModifierStacks(IEnumerable stacks); Dictionary> CreateMesh(CanonicalTileId tileId, VectorTileLayer layer); List CreateGo(CanonicalTileId tileId, Dictionary> meshData); void UnregisterTile(CanonicalTileId tileId); diff --git a/Runtime/Mapbox/VectorModule/Unity/VectorLayerVisualizerObject.cs b/Runtime/Mapbox/VectorModule/Unity/VectorLayerVisualizerObject.cs index 159ee6b97..2615fdbf3 100644 --- a/Runtime/Mapbox/VectorModule/Unity/VectorLayerVisualizerObject.cs +++ b/Runtime/Mapbox/VectorModule/Unity/VectorLayerVisualizerObject.cs @@ -32,7 +32,8 @@ public IVectorLayerVisualizer ConstructLayerVisualizer(IMapInformation mapInform { modifierStackObject.Initialize(unityContext); } - _layerVisualizer.AddModifierStack(_modifierStackObjects.Select(x => x.GetModifierStack).ToList()); + _layerVisualizer.AddModifierStacks(_modifierStackObjects.Select((x, i) => x?.GetModifierStack + ?? throw new NullReferenceException($"{name} ({nameof(VectorLayerVisualizerObject)}) is missing {nameof(ModifierStackObject)} reference @ element {i}"))); _layerVisualizer.OnVectorMeshCreated += OnVectorMeshCreated; _layerVisualizer.OnVectorMeshDestroyed += OnVectorMeshDestroyed; diff --git a/Runtime/Mapbox/VectorModule/VectorLayerVisualizer.cs b/Runtime/Mapbox/VectorModule/VectorLayerVisualizer.cs index 6b551cf20..2c3258320 100644 --- a/Runtime/Mapbox/VectorModule/VectorLayerVisualizer.cs +++ b/Runtime/Mapbox/VectorModule/VectorLayerVisualizer.cs @@ -108,9 +108,9 @@ public IEnumerator Initialize() yield return null; } - public void AddModifierStack(List stack) + public void AddModifierStacks(IEnumerable stacks) { - foreach (var modifierStack in stack) + foreach (var modifierStack in stacks) { _stackList.Add(modifierStack.GetHashCode(), modifierStack); }