feat(world-gen): rescale biome relief and snow line for 512-tall world
This commit is contained in:
@@ -18,8 +18,8 @@ public sealed class DesertBiome : IBiome
|
||||
}
|
||||
|
||||
public float SampleHeight(NoiseSource noise, float worldX, float worldZ)
|
||||
=> WorldConstants.SeaLevel + 4f * noise.Continent(worldX, worldZ)
|
||||
+ 1.5f * this._detail.GetNoise(worldX, worldZ);
|
||||
=> WorldConstants.SeaLevel + 16f * noise.Continent(worldX, worldZ)
|
||||
+ 6f * this._detail.GetNoise(worldX, worldZ);
|
||||
|
||||
public IBlock TopBlock(int worldY) => this.Surface.Top;
|
||||
}
|
||||
|
||||
@@ -18,8 +18,8 @@ public sealed class ForestBiome : IBiome
|
||||
}
|
||||
|
||||
public float SampleHeight(NoiseSource noise, float worldX, float worldZ)
|
||||
=> WorldConstants.SeaLevel + 6f * noise.Continent(worldX, worldZ)
|
||||
+ 4f * this._detail.GetNoise(worldX, worldZ);
|
||||
=> WorldConstants.SeaLevel + 24f * noise.Continent(worldX, worldZ)
|
||||
+ 16f * this._detail.GetNoise(worldX, worldZ);
|
||||
|
||||
public IBlock TopBlock(int worldY) => this.Surface.Top;
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ namespace VoxelEngine.World.WorldGen.Biomes;
|
||||
|
||||
public sealed class MountainsBiome : IBiome
|
||||
{
|
||||
private const int SnowLine = 96;
|
||||
private const int SnowLine = 384;
|
||||
private readonly FastNoiseLite _ridged;
|
||||
private readonly IBlock _stone;
|
||||
private readonly IBlock _snow;
|
||||
@@ -25,8 +25,8 @@ public sealed class MountainsBiome : IBiome
|
||||
}
|
||||
|
||||
public float SampleHeight(NoiseSource noise, float worldX, float worldZ)
|
||||
=> WorldConstants.SeaLevel + 10f * noise.Continent(worldX, worldZ)
|
||||
+ 45f * this._ridged.GetNoise(worldX, worldZ);
|
||||
=> WorldConstants.SeaLevel + 40f * noise.Continent(worldX, worldZ)
|
||||
+ 200f * this._ridged.GetNoise(worldX, worldZ);
|
||||
|
||||
public IBlock TopBlock(int worldY) => worldY >= MountainsBiome.SnowLine ? this._snow : this._stone;
|
||||
}
|
||||
|
||||
@@ -18,8 +18,8 @@ public sealed class PlainsBiome : IBiome
|
||||
}
|
||||
|
||||
public float SampleHeight(NoiseSource noise, float worldX, float worldZ)
|
||||
=> WorldConstants.SeaLevel + 6f * noise.Continent(worldX, worldZ)
|
||||
+ 2f * this._detail.GetNoise(worldX, worldZ);
|
||||
=> WorldConstants.SeaLevel + 24f * noise.Continent(worldX, worldZ)
|
||||
+ 8f * this._detail.GetNoise(worldX, worldZ);
|
||||
|
||||
public IBlock TopBlock(int worldY) => this.Surface.Top;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user