fCraft.FilteredNoise.GetNoise C# (CSharp) Method

GetNoise() public method

public GetNoise ( double x, double y ) : double
x double
y double
return double
        public double GetNoise( double x, double y ) {
            return noise1.GetNoise( x + noise2.GetNoise( x, y ), y );
        }
    }

Usage Example

Example #1
0
        // create the base heightmap
        void Raise()
        {
            Random        raiseRand   = new Random(random.Next());
            FilteredNoise raiseNoise1 = new FilteredNoise(new PerlinNoise(raiseRand, genParams.TerrainDetailOctaves),
                                                          new PerlinNoise(raiseRand, genParams.TerrainDetailOctaves));
            FilteredNoise raiseNoise2 = new FilteredNoise(new PerlinNoise(raiseRand, genParams.TerrainDetailOctaves),
                                                          new PerlinNoise(raiseRand, genParams.TerrainDetailOctaves));
            PerlinNoise raiseNoise3 = new PerlinNoise(raiseRand, genParams.TerrainFeatureOctaves);

            const double scale = 1.3;

            for (int x = 0; x < genParams.MapWidth; x++)
            {
                for (int y = 0; y < genParams.MapLength; y++)
                {
                    double d2 = raiseNoise1.GetNoise(x * scale, y * scale) / 6 - 4;
                    double d3 = raiseNoise2.GetNoise(x * scale, y * scale) / 5 + 10 - 4;
                    double d4 = raiseNoise3.GetNoise(x, y) / 8;
                    if (d4 > 0)
                    {
                        d3 = d2;
                    }
                    double elevation = Math.Max(d2, d3) / 2;
                    if (elevation < 0)
                    {
                        elevation *= 0.8;
                    }
                    heightmap[(x + y * genParams.MapWidth)] = (int)elevation;
                }
            }
        }
All Usage Examples Of fCraft.FilteredNoise::GetNoise