public float f(float x, float y, float z) { float octave1 = _noise.noise3d(x * _magnification, y * _magnification, z * _magnification); float octave2 = _noise.noise3d(x * _magnification * 0.5f, y * _magnification * 0.5f, z * _magnification * 0.5f); return(octave1 * 0.75f + octave2 * 0.25f); }
static void TestSimplexNoise() { System.Diagnostics.Stopwatch sw = new System.Diagnostics.Stopwatch(); SimplexNoiseGenerator sng = new SimplexNoiseGenerator(Environment.TickCount); sw.Start(); for (int x = 0; x < 16; x++) { for (int y = 0; y < 128; y++) { for (int z = 0; z < 16; z++) { sng.noise3d(x, y, z); } } } sw.Stop(); Console.WriteLine("Done in {0}ms.", sw.ElapsedMilliseconds); Console.ReadKey(); }