Unity 6000.2.9f1 project that turns Perlin, Simplex, and Value noise into terrain meshes with adjustable height curves, vertex colouring, and water planes.
PCG/Assets/Scripts/PerlinNoise.cs,SimplexNoise.cs, andValueNoise.cshold the seeded generators, all inheriting fromNoiseGeneratorBasefor fractal (octave) sampling.ProceduralTerrainbuilds the mesh at runtime, applies biome colours, and exposes inspector fields for octaves, persistence, height multipliers, and aNoise Typetoggle between the three generators.- Tweaking the single
AnimationCurve heightCurveremaps the sampled noise. Flattening the curve produces gentle plains while steepening it exaggerates cliffs (see the Perlin variants below).
- Open the
PCGfolder in Unity 6000.2.9f1. - Load
Assets/Scenes/SampleScene.unityor add theProceduralTerraincomponent to an empty GameObject in any scene. - (Optional) Adjust the
ProceduralTerraininspector away from its default values. PickNoise Type, seed, frequency, and curve shape, then enter Play mode to regenerate the mesh.
Perlin noise (default height curve)

Perlin noise with a flattened height curve

Perlin noise with a steeper height curve

We would like to acknowledge the use of the Simple Water Shader URP provided by IgniteCoders for free on the Unity Asset Store, which we have used to generate a realistic water texture.

