/// <summary> /// Build a heightmap based on perlin noise. /// </summary> public static IHeightMap Build(float minHeight, float maxHeight, float scale, int seed) { if (minHeight == maxHeight) { return(new ConstantHeightMap(minHeight)); } var noise = new LayeredNoise(scale, seed); return(new PerlinHeightMap(noise, minHeight, maxHeight)); }
/// <summary> /// Build a heightmap out of multiple layers of perlin noise. /// </summary> public static IHeightMap Build(float minHeight, float maxHeight, float scale, int seed, int numLayers, float amplitudeFactor, float frequencyGrowth) { if (minHeight == maxHeight || numLayers == 0) { return(new ConstantHeightMap(minHeight)); } var noise = new LayeredNoise(numLayers, amplitudeFactor, frequencyGrowth, scale, seed); return(new PerlinHeightMap(noise, minHeight, maxHeight)); }