4. Redistribuição e faixas de altura
Do ruído cru a um mapa com água, praia, campo e montanha.
O fBm da demo 3 tem uma distribuição "gaussiana": a maioria dos valores fica perto do meio, poucos perto dos extremos. Terreno assim vira um morro contínuo, sem planície e sem pico. Redistribuir é passar o valor por uma curva antes de usá-lo. Faixas são limiares que transformam altura em tipo de terreno.
histograma da altura (depois da curva)
curva de redistribuição: entrada → saída
Três formas de redistribuir
| Método | Fórmula | Efeito |
|---|---|---|
| Potência | h = pow(n, e) com n em 0..1 | e > 1 achata os vales e afina os picos (mais planície, montanhas raras). e < 1 faz o contrário. |
| Curva editável | h = curva.Evaluate(n) | No Unity é um AnimationCurve no Inspector; no Godot, um recurso Curve. Permite platô de água (curva plana no início) e serra (curva íngreme no fim). |
| Falloff / ilha | h = n − falloff(dist. ao centro) | Abaixa as bordas para o mapa terminar em água. Necessário quando o mapa é finito e não há chunks. |
Faixas de altura como biomas. A forma mais simples de bioma é uma tabela: altura abaixo de 0,3 é água, até 0,35 é areia, até 0,6 é campo, até 0,8 é rocha, acima é neve.
Na demo, arraste os limiares e observe como a costa e a linha de neve se movem. No trabalho, essa tabela também decide onde itens e inimigos podem nascer.