From 7e35deb60dcb660c15124cbf42c928d7dc200a83 Mon Sep 17 00:00:00 2001 From: AqpAnaciy <101519462+aqpanaciy@users.noreply.github.com> Date: Tue, 24 Mar 2026 11:44:42 +0300 Subject: [PATCH] Update TerraformableAltitude.cs - the blending layer is used only for calculating terraforming barriers. There is no need to store it. Reduces server memory consumption by 260 MB in the current zone configuration. --- src/Perpetuum/Zones/Terrains/TerraformableAltitude.cs | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/src/Perpetuum/Zones/Terrains/TerraformableAltitude.cs b/src/Perpetuum/Zones/Terrains/TerraformableAltitude.cs index 971d84c5..0fd9a6a3 100644 --- a/src/Perpetuum/Zones/Terrains/TerraformableAltitude.cs +++ b/src/Perpetuum/Zones/Terrains/TerraformableAltitude.cs @@ -7,26 +7,23 @@ public class TerraformableAltitude : AltitudeLayer private const ushort BARRIER_MINIMUM = 1850; private const ushort BARRIER_MAXIMUM = 30000; //32768at SOHA nem lephetjuk at - private readonly ILayer _blend; - public TerraformableAltitude(ILayer original,ILayer blend,ushort[] rawData) : base(rawData,original.Width,original.Height) { OriginalAltitude = original; - _blend = blend; Barrier = new Layer(LayerType.Barrier, Width, Height); - CalculateBarrier(); + CalculateBarrier(blend); } public ILayer OriginalAltitude { get; } public ILayer Barrier { get; } - private void CalculateBarrier() + private void CalculateBarrier(ILayer blend) { for (var i = 0; i < Barrier.RawData.Length; i++) { var originalValue = OriginalAltitude.RawData[i]; - var blendValue = _blend.RawData[i] / (double)ushort.MaxValue; + var blendValue = blend.RawData[i] / (double)ushort.MaxValue; var minBarrier = BARRIER_MINIMUM.Mix(originalValue, blendValue); var maxBarrier = BARRIER_MAXIMUM.Mix(originalValue, blendValue);