10,828 Commits over 3,867 Days - 0.12cph!
Merge from world_update_2
Fixed Parallel.For ignoring its start index parameter, which luckily has so far always been 0 (introduced in 2017)
Merge from world_update_2
Hopefully made WaterBody water level determination work on the server (now using collider instead of renderer)
Renamed bridge to swamp in terrain paint modes (as that's what it's actually painting)
Replacing several Pool.GetList and FreeList with the new Pool.Get and FreeUnmanaged (post merge cleanup)
Removing Terrain_Distance from Shader.SetGlobalTexture as its unused on the shader side (all use cases covered by Terrain_ShoreVector)
CraggyIsland TopologyMap fixes
TerrainTexturing.ShoreVector doesn't need to take water volumes into account (this was from when lakes were using water volumes)
Post merge formatting fixes
Removed WaterSystem.GetHeight / GetNormal / MinLevel / MaxLevel as several places were misusing it (everything should go through WaterLevel)
Main Camera post merge prefab fix
WaterLevel post merge compile fix
Merge from main (this will likely need some post-merge fixes)
Fixed terrain shader parameters not updating when TerrainConfig is adjusted
Forgotten file (WaterBody)
Don't place lakes where their water level would end up below 0 (lake / ocean rendering issue that would need wider water shader changes)
Fixed various errors in edit mode
Fixed water being invisible in edit mode
Subtracting
103462 (causing water rendering regressions)
Set SlopeScale for cliff_hills_large_temperate and cliff_hills_mid_temperate to 3 (baseline new functionality test)
Removed center terrain anchor from cliff_hills_large_temperate and cliff_hills_mid_temperate as it blocks placement on steeper slopes
Exposed TargetCount, TargetLength, AnchorModeInitial and AnchorModeRepeat in PlaceCliffs
Reduced TargetCount for cliff_hills_large_temperate from 8 to 4 (reduces generation time by order of magnitude with little visual impact)
Adjusted AnchorModeRepeat for cliff_hills_large_temperate and cliff_hills_mid_temperate to MaximizeHeight to ensure they stick out of the terrain as much as possible
Added TerrainAnchor.SlopeScale (scales anchor extents and offset as they are increasingly rotated, including its edit-time gizmos for easier tweaking)
Prefab<T> caches PrefabAttribute on repeat calls
Merge from world_update_2
Discard ocean fragments entirely if there's no chance the camera is inside the ocean (fixes remaining depth corruption issues while preserving underwater mask coverage while underwater)
Merge from world_update_2
More shitty workarounds for underwater effects inside lakes
Fixed oasis_a, b and c having ocean topology painted at the center of their lake (I disabled the transfer of ocean topology on the Monument script instead of removing it, this is probably from some automated import and may reappear)
Merge from world_update_2
ProceduralMapEmpty up to date
Fixed TSAA / AO image effect issues when flying above canyons looking down (caused motion vector / depth / normal artifacts)
Fixed lake volume sides sometimes being visible under the terrain (only visible when admin flying)
Updating RustNative (removed old lake logic, fixes issues at shallow ocean areas)
Merge from world_update_2
Decor topology is now considered blocked for road and river generation
Place river source object right after river generation, so it can be avoided by road and rail generation
Fixed issues related to DecorSwim and WaterCheck
Added terrainHeight to WaterInfo since we already retrieve it, saves duplicate calls into TerrainHeightMap by callers
Added GetWaterAndTerrainSurface (returns both) and GetWaterOrTerrainSurface (returns the max of them) to WaterLevel
Buoyancy fixes inside canyons
Don't cull lake water if swamp topology exists
Added forgiveness radius when creating the water culling mask to work around slight inaccuracies in the painted topologies (may have to dial this back in the future, so let's try and make the topologies as accurate as possible)
Encoded water body type into shore vector w component, instead of just ocean mask
Use ocean, lake and river topology to cull water (depending on the water type)
TODO: Lakes need lakeside topology around their water volume (covering some of their beach, see Asana)
TODO: Oceanside topology needs improving (will do next)
River flow improvements (follows a sin wave on flat terrain)
River distance improvements (rivers keep a more reasonable distance from each other)
Small river width randomization fix
Merge from world_update_2
Fixed 35-40 calls of TerrainWaterMap vs. WaterLevel
Reduced river length scale so max length is identical to before the recent start width change in
103263
Fixed abovegroundpool and paddlingpool having their water body types set incorrectly
Widened rivers slightly at their origin
Merge from world_update_2
Fixed DecorSwim breaking from
103228 (removing ocean from water map)