Ejemplo n.º 1
0
        public PerlinNoise(PerlinNoiseSettings settings)
        {
            this.noise    = Api.Shared.CreateSimplexNoise(settings.Seed);
            this.settings = settings;

            // generate octave offsets
            this.octaveOffsets = new Vector2F[settings.Octaves];
            var random = new Random(settings.Seed);

            for (var i = 0; i < settings.Octaves; i++)
            {
                var offsetX = random.Next(-100000, 100000); // + settings.Offset.X;
                var offsetY = random.Next(-100000, 100000); // - settings.Offset.Y;
                this.octaveOffsets[i] = (offsetX, offsetY);
            }

            this.combineFunction = settings.GetCombineFunction();
        }
Ejemplo n.º 2
0
 public NoiseSelector(double from, double to, ISimplexNoise noise)
     : this(new RangeDouble(from, to), noise)
 {
 }
Ejemplo n.º 3
0
 public NoiseSelector(RangeDouble range, ISimplexNoise noise)
 {
     this.noise     = noise;
     this.rangeFrom = range.From;
     this.rangeTo   = range.To;
 }
Ejemplo n.º 4
0
 private static double GetNoiseValue(ISimplexNoise noise, int x, int y, double noiseScale)
 {
     return(noise.Get(x * noiseScale, y * noiseScale));
 }