Home > Übersicht > Wozu gibt es die Welt?
Rendering und Raytracing ist
eine Programmiertechnik zur Erzeugung von dreidimensional wirkenden
Darstellungen. Man definiert mathematische Körper wie Flächen, Kugeln und
Zylinder und deren Oberflächenstruktur und weist ihnen einen Ort in einem
Koordinatensystem zu. Außerdem setzt man Ort, Blickrichtung und
Objektiveinstellungen der Kamera fest und fügt Lichtquellen in den Raum ein.
Ein Programm untersucht dann, welchen Weg Lichtstrahlen zwischen Lichtquellen
und Kamera zurücklegen und wie sie dabei an den Körpern reflektiert werden,
unter Berücksichtigung von Lichtbrechungen und Beeinflussung des Lichts durch
Nebel, Staub in der Luft und lichtdurchlässige Stoffe.
Einfache und kostengünstige
Beispiele sind Haus- und Gartenplaner.
Zur Erzeugung von fotorealistischen
3D-Bildern benutze ich das Werkzeug POV-Ray, das man sich unter www.povray.com als Freeware downloaden kann. Für die
folgende Darstellung habe ich als Fotos nur zwei Bilder von Tannenzweigen und
zwei von Tannenspitzen verwendet. Die Erstellung eines Bildes erfordert
Programmierung. Ich habe z.B. geschachtelte Programmschleifen zum Anbringen der
Tannenzweige am Stamm geschrieben.
Fangen wir also an mit der
Erschaffung unserer kleinen Welt, allerdings nicht ganz in der Reihenfolge wie
in der Bibel angegeben: ►
|
|
|
... und es war finster auf der Tiefe... |
|
Programmierung: camera { location
<0, 4, -5> look_at
<0, 2.8, 1> } |
|
weiter ► |
|
|
|
... und die Erde war wüst und leer... |
|
Programmierung: camera ... plane { y, 0.0
... sky_sphere { pigment {
gradient y color_map ... |
|
weiter ► |
|
|
|
Es werde Licht! |
|
Programmierung: ... light_source { <10000,
6000, -2000> // position of the
light source color rgb
<0.97, 0.80, 0.75> // color
of the light parallel point_at
<0, 0, 0> } |
|
weiter ► |
|
|
|
Und der Geist Gottes schwebte über dem
Wasser. |
|
Programmierung: ... plane { ... normal {
dents scale <0.25,0.25,0.05>} finish {
reflection { 0.03, 1 }
brilliance 10 ambient
0.1 } } } |
|
weiter ► |
|
|
|
Es sammle sich das Wasser unter dem
Himmel an besondere Örter, das man das Trockene sehe! |
|
Programmierung: ... #macro
Baue_Insel(Entfernung,Mittelpunkt,Hoehe,Breite,Tiefe,Drehung) #local Insel1 = height_field { sys "Insel_Height1.bmp" ... #declare Insel = object { ... |
|
weiter ► |
|
|
|
Es lasse die Erde aufgehen Gras und
Kraut! ► |
|
Programmierung: ... #macro
AKA_Gras01(Typ, Gras) #local Gras = object { Gras ... |
|
weiter ► |
|
|
|
... und Bäume ... ► |
|
Programmierung: ... #macro
AKA_Tanne01 (Hoehe, Breite, Typ) #declare AKA_Tanne01_Obj = union { cone // Stamm {
<0,-0.2,0>, 0.10, <0, 4, 0>, 0.001 pigment
{rgb <168, 140, 114> / 255} } object { AKA_Tanne01_Spitze rotate
y*45 } object { AKA_Tanne01_Spitze rotate
y*135 } ... #while
(Z_Hoehe >= 1) object { AKA_Tanne01_Rosette ... } ... #end ... hollow } |
|
weiter ► |
|
|
|
Seid fruchtbar und mehret euch ... |
|
weiter ► |
|
|
|
Aber ein Nebel ging auf von der Erde und
feuchtet alles Land. ► |
|
Programmierung: ... fog { fog_type 2 color
<0.87, 0.8, 0.8> distance 6 fog_offset
0.1 fog_alt 0.3 rotate
x*-0.4 } |
|
Oder
möchten Sie Beispiele über den Umgang mit Raytracia sehen? ▼ Oder
möchten Sie vom Computer erzeugte mp3-Musik kostenlos downloaden? ▼ Zurück
zur Schöpfungsgeschichte ◄ |
Ein
Science-Fiction-Roman ohne Handlung