3-D-Grafiken und Cyberwelten (2) - Höhenfelder mit POV erstellt

center

3-D-Grafiken sind in aller Munde, fast jedes Spiel kommt mit 3- D-Effekten oder gerenderten Grafiken daher. In Anschluss an die erste Folge im Heft 12/96 zeigen wir Ihnen in dieser Ausgabe die Erstellung der Grafik "Höhenfelder" durch eine Produktion mit dem Freeware-Programm "POV". Wer bislang kein POV-Kenner ist, wird durch unseren in der kommenden Ausgabe beginnenden POV-Kurs für die Version 3.0 eingewiesen.

Ein Grund für uns, einmal tiefer in die Materie einzusteigen. Gute Raytracer- und Rendersoftware ist oftmals sehr teuer. Preise von mehr als 1000,- DM sind keine Seltenheit im 3-D- und CAD-Bereich. Aber dies muss nicht so sein.

POV - wer ist das?

POV, der Shareware Raytracer, generiert bessere Bilder als viele sogenannte professionelle Software, ist für alle Systeme zu haben - und das kostenlos. POV wird ständig weiterentwickelt; mit jeder weiteren Version wird es schneller und flexibler. Auf dem ATARI ist mir die letzte Version 2.2 bekannt, im PC-Bereich die 3.0 für DOS und eine neue Windows 95 Version, die sehr komfortabel ist. Wir wollen in den nächsten 3-D-Kurs-Teilen vermehrt auf spezielle Effekte mit POV eingehen.

"Höhenfelder"

In POV gibt es ein Schlüsselwort "height-field", mit dem sich sogenannte Höhenfelder generieren lassen. Höhenfelder ähneln in ihrer Form Gebirgen. Mit "height - field" werden Bilder anhand ihres Palettenindex oder ihrer Farbwerte in dreidimensionale Objekte mit einer Höhe, Breite und Tiefe erzeugt. Höhenfelder sind in eine Quaderform integriert, deren Eckkoordinaten <0,0,0> und <1,1,1> sind.

Dass die Höhenfelder erst einmal in einen Quader von einer Einheit erzeugt werden, macht es relativ einfach, ihnen eine Textur zuzuweisen. Die Zeilen und Spalten der Bilddatei entsprechen der X- bzw. Z-Achse. Der Farbwert jedes Pixel bestimmt die Y- Koordinate an der entsprechenden Stelle. Für jedes Pixel werden zwei Dreiecke erzeugt. Durch dieses Geflecht von Dreiecken wird die Form definiert. Es können drei verschiedene Bildtypen verwendet werden: GIF, TGA und POT. Das letzte Format ist nichts anderes als eine Erweiterung des GIF Formates auf 16 Bit, was eine genauere Auflösung ergibt. Beim GIF Format werden die Farbwerte in einer Tabelle verwaltet. POV bestimmt die Höhe der Form anhand des Pixelindex in der Farbtabelle. Zum Beispiel:

Ein Pixel mit dem Index 0 ist ganz unten, ein Pixel mit einem größeren Indexwert weiter oben. Da das GIF Format auf maximal 256 Farbwerte beschränkt ist, kann POV auch nur 256 verschiedene Höhen erstellen. Die Auflösung des Bildes spielt bei der Erstellung keine Rolle, d.h. POV skaliert das Quellbild automatisch, so dass es in die Quaderform von 1 Einheit Kantenlänge passt. Die Auflösung des Bildes spielt erst beim Skalieren des Höhenfeldes eine Rolle, d.h. ein Bild mit der Auflösung 800800 wird ein feiner unterteiltes Heightfield liefern als eines mit 320200. Fügt man das Schlüsselwort "smooth" in die Höhenfeld-Anweisung mit ein, werden die Kanten geglättet und man erhält feinere Übergänge zwischen den Höhenunterschieden.

Es gibt die Möglichkeit, einen sogenannten water-level Faktor anzugeben, der das Höhenfeld ab einer bestimmten Höhe abkappt. Er bezieht sich aber auf das unmanipulierte Höhenfeld, weiches die Maße 111 hat. Ein "water-level 0.5" zum Bei- spiel würde nur die obere Hälfte des Bildes zum Heightfield umsetzen und alles, was unter 0.5 liegt, nicht weiter beachten. Man kann sich die Funktion dieses Kommandos gut merken, indem man sich vorstellt, dass Wasser die Landschaft überflutet. Bei einem Wert von 1 wäre alles unter Wasser, bei 0.5 nur um die Hälfte, bei 0.25 nur ein Viertel .

In oben gezeigtem Beispiel verwende ich ein Graustufen-GIF-Bild als Vorlage für das Höhenfeld.

Mit einem einfachen Höhenfeld als Insel oder Berglandschaft kann man sich schon fast des WOW !!! Effektes sicher sein.

center


Steffen Helnick
Aus: ST-Computer 02 / 1997, Seite 25

Links

Copyright-Bestimmungen: siehe Über diese Seite