This is an old revision of the document!
Generarea procedurală de biomuri este o tehnică utilizată pentru a crea lumi virtuale cu zone cu proprietăți geografice distincte (ocean, deșert, junglă, tundră etc.). Fiecare biom este caracterizat de condiții climatice specifice, vegetație și relief. Astfel, în acest laborator se va implementa un sistem simplificat de generare de biomuri pornind de la două hărți de zgomot și clasificarea acestora pe baza modelului Whittaker.
Pentru a îmbunătăți realismul terenului generat, tereneul se poate genera folosind fractal noise, care combină mai multe straturi (octave) de zgomot Perlin la frecvențe și amplitudini diferite. Fiecare nouă octavă introdusă adaugă un nivel de detaliu:
Parametrii care controlează fBm sunt:
float FractalNoise(int x, int y)
{
for (i = 0; i < octaves; i++)
{
xCoord = (float)x / width * scale * frequency;
yCoord = (float)y / height * scale * frequency;
perlinValue = Mathf.PerlinNoise(xCoord, yCoord) * 2 - 1;
noiseHeight += perlinValue * amplitude;
amplitude *= persistence;
frequency *= lacunarity;
}
return (noiseHeight + 1) / 2; // Normalize to 0 - 1
}