← Atari Inside SH / 1994

Raytracing Workshop

Grundlagen

"Schreib mal einen Kursus fĂŒr die ATARI-Inside! Aber möglichst einen interessanteren, als man ihn in anderen Computermagazinen zu lesen bekam / bekommt." Diesen Satz bekomme ich mindestens zweimal in der Woche von meinem Chefredakteur zu hören. Auf die Frage: "Zu welchem Thema denn?", erhalte ich dann immer die Ă€ußerst befriedigende Antwort: "Weiß nicht, denk Dir was aus!" Einen Workshop? Gab es doch schon alles: von DTP ĂŒber 3D- Grafikprogrammierung bis hin zum Assembler-Kurs. Weil ich natĂŒrlich selbst fleißiger Leser und dieser Kurse schon ĂŒberdrĂŒssig bin - um es nicht deutlicher zu sagen - wollte ich nun wirklich nicht mit sinnlosen Kurswiederholungen nerven. Also irgendwas aus meinem Lieblingsfach Computergrafik? Nach stundenlangem DurchblĂ€ttern diverser Computerzeitschriften merkte ich, dass tatsĂ€chlich ein Thema ziemlich stiefmĂŒtterlich behandelt wurde:
das Raytracing!

Da ich bis vor kurzem jedoch nur mit Rendersoftware zu tun hatte (dazu spĂ€ter mehr), musste auch ich mich erst in das Raytracing einarbeiten. Und da fingen die Probleme bereits an. Man hat zwar schon viel ĂŒber Raytracing gehört, aber welche Software ist die Richtige? Kann ich den Lesern Oberhaupt zumuten, eine teure Software zu kaufen? So machte ich mich schlau und entdeckte eine, meiner Meinung nach, hervorragende Lösung. In Compuserve, einem weltweiten Computernetz, fand ich in der Grafik/Raytracing Area den Persistance of vision Raytracer, kurz POV. Er ist nicht nur Freeware, sondern enthĂ€lt auch eine komplette Dokumentation auf Englisch! FĂŒr Programmierer liegt sogar der Sourcecode in C bei. Einziges Manko: POV wird ĂŒber eine Scriptsprache programmiert. Es gibt somit keine grafische BenutzeroberflĂ€che. Jetzt werden sicherlich schon einige von Ihnen fast das Heulen kriegen und versucht sein, schnell weiterzublĂ€ttern, doch halt:
Erstens ist die Scriptsprache recht einfach zu erlernen (ich als "nur" Basicprogrammierer darf das sagen) und zweitens bietet sie viel mehr Möglichkeiten als ein in seinen Funktionen beschrÀnkter Grafikeditor. Damit Sie nun Zeit haben, POV zu besorgen, wollen wir nicht gleich mit der Programmiererei beginnen, sondern lediglich ein paar Grundlagen besprechen.
Die Theorie des Raytracing und erste Programmbeispiele gibt es dann ab der nÀchsten Ausgabe.
Der Kursus umfasst einschließlich dieser EinfĂŒhrung fĂŒnf Teile. Im Zuge dieses Workshops starten wir auch einen Wettbewerb. Wer uns die schönste eigene ! Raytracing-Grafik zuschickt, kann sich mit dieser auf eine der nĂ€chsten Titelseiten der ATARI-Inside ein Denkmal setzen. Aber genug des Schwafelns, kommen wir zur Sache:
Neben dem Raytracing gibt es noch zwei weitere allgemein bekannte Methoden, das Rendering und das Radiosity-Verfahren. Alle drei Methoden verfolgen die Absicht, die Natur und deren Objekte so realistisch wie möglich vom Computer berechnen und darstellen zu lassen. Dies gelingt allen dreien nicht 100 %ig. Die Ergebnisse können von Verfahren zu Verfahren recht unterschiedlich ausfallen und die Objekte werden als 3-dimensionale Modelle kreiert und in einem virtuellen Raum plaziert. Jedes Objekt bekommt bestimmte Eigenschaften wie z.B. OberflĂ€chenstruktur, Farbe etc. zugewiesen. Außerdem kann man Kameras und Lichter installieren. Beim Rendering wird mit Objekten gearbeitet, die aus vielen kleinen FlĂ€chen (Polygonen) zusammengesetzt sind. Ein Nachteil ist dabei schon genannt, wenn man die Objekte extrem vergrĂ¶ĂŸert (also mit der Kamera heranfĂ€hrt), sieht man das sie aus vielen kleinen Einzelteilen. Außerdem hat das Rendering den Nachteil, dass Schatten, OberflĂ€chenstrukturen und durchsichtige Körper nur schwer oder gar nicht dargestellt werden können.
Das Radiosity-Verfahren liefert die natĂŒrlichsten Bilder, braucht aber auch am meisten RechnerkapazitĂ€ten. Jeder Punkt eines Objekts bekommt einen bestimmten Energiewert zugewiesen. Da die Strahlen von den Objekten ausgehen, ist eine Berechnung sehr zeit- und rechenintensiv. Das Ergebnis des Radiosity kann sich sehen lassen. Die Bilder wirken sehr natĂŒrlich und haben nicht so harte Kanten wie beim Raytracing. Da es z. Z. aber keine erschwinglichen und schnellen Radiosity-Programme fĂŒr ATARls oder PCs gibt, hat sich das Thema schon erledigt. Bleibt nur noch der goldene Mittelweg. Besser als das Rendering aber nicht so perfekt wie Radiosity:

Das Raytracing:
Hier gehen die Lichtstrahlen nicht vom Objekt aus, sondern vom einzelnen Bildschirmpunkt. Die Rechenzeit wird dadurch erheblich verkĂŒrzt, da nur noch die Punkte, die wirklich gesehen werden können, berechnet werden mĂŒssen. Wie genau das alles funktioniert, wie POV programmiert wird und welche Besonderheiten POV bietet, erklĂ€ren wir dann in der nĂ€chsten Ausgabe. Übrigens liegen POV eine Menge Beispielsourcen bei. Mit einer entsprechenden Shell lassen sie sich sehr komfortabel berechnen. Die Shell sollte ebenfalls in Mailboxen zu finden sein und den PD-Paketen zu POV beiliegen. Sie ist ein unverzichtbares Hilfsmittel. Als kleinen Appetitanreger sollten Sie sich einmal die Anzeigengrafik links oben auf Seite 65 anschauen, sie wurde mit POV berechnet!

Themen:

  1. Funktionsweise von Raytracing. Bedienung von POV, erste Beispiel
  2. weitere Grundformen
  3. OberflÀchenstrukturen, Materialeigenschaften
  4. Spezialformen