Heightmap: Unterschied zwischen den Versionen
Aus DGL Wiki
Flash (Diskussion | Beiträge) K (→Bewertung) |
I0n0s (Diskussion | Beiträge) K (→Bewertung: -l) |
||
Zeile 14: | Zeile 14: | ||
=Bewertung= | =Bewertung= | ||
Der Vorteil von Heightmaps ist, dass sie sehr leicht zu implementieren sind. Ein Nachteil ist jedoch, dass immer nur ein Höhenwert pro Knoten gespeichert werden kann und man so keine Felsvorsprünge oder Höhlen realisieren kann. | Der Vorteil von Heightmaps ist, dass sie sehr leicht zu implementieren sind. Ein Nachteil ist jedoch, dass immer nur ein Höhenwert pro Knoten gespeichert werden kann und man so keine Felsvorsprünge oder Höhlen realisieren kann. | ||
− | Eine interessante Möglichkeit ist, Heightmaps mit | + | Eine interessante Möglichkeit ist, Heightmaps mit Algorithmen wie [[Perlin Noise]] zur Laufzeit zur erstellen. Desweiteren kann man [[LOD]] benutzen um das Rendern von Heightmaps zu beschleunigen. |
=Ressourcen= | =Ressourcen= |
Version vom 24. Januar 2006, 15:44 Uhr
Konzept
Eine Heightmap ist ein 2-dimensionales Array, dass Informationen über eine Landschaft enthält.Dazu wird einfach an jedem Knoten der entsprechende Höhenwert gespeichert.Zum Beispiel eine zufällige Landschaft:
var i,j: integer; heightmap: array[0..width, 0..depth] of single; begin fo i := 0 to width do for j := 0 to depth do heightmap[i,j] := random; end;
Es kann auch aus einem Graustufenbitmap geladen werden, z.B. je heller ein Punkt, desto höher die Landschaft an dieser Stelle |
Bewertung
Der Vorteil von Heightmaps ist, dass sie sehr leicht zu implementieren sind. Ein Nachteil ist jedoch, dass immer nur ein Höhenwert pro Knoten gespeichert werden kann und man so keine Felsvorsprünge oder Höhlen realisieren kann. Eine interessante Möglichkeit ist, Heightmaps mit Algorithmen wie Perlin Noise zur Laufzeit zur erstellen. Desweiteren kann man LOD benutzen um das Rendern von Heightmaps zu beschleunigen.