diff --git a/WickedEngine/wiTerrain.cpp b/WickedEngine/wiTerrain.cpp index 2dae47cfc..4f576a121 100644 --- a/WickedEngine/wiTerrain.cpp +++ b/WickedEngine/wiTerrain.cpp @@ -474,12 +474,20 @@ namespace wi::terrain modifier->Seed(seed); } - // Add some nice weather and lighting: - if (!scene->weathers.Contains(terrainEntity)) + // Add some nice weather and lighting if there are no weathers in the scene yet: + bool created_terrain_weather = false; + if (scene->weathers.GetCount() == 0) { - scene->weathers.Create(terrainEntity); + if (!scene->weathers.Contains(terrainEntity)) + { + scene->weathers.Create(terrainEntity); + created_terrain_weather = true; + } + } + if (created_terrain_weather) + { + *scene->weathers.GetComponent(terrainEntity) = weather; } - *scene->weathers.GetComponent(terrainEntity) = weather; if (!weather.IsOceanEnabled()) { scene->ocean = {};