- Laubbäume
Sie bestehen aus drei ineinander verschachtelten Kugeln, die
mit einer teilweise transparenten Textur versehen wurden.
#declare LaubbaumStTex =
texture{
pigment{
granite
color_map
{
[ 0.0 rgb <0.36, 0.26, 0.05> ]
[ 0.23 rgb <0.53, 0.38, 0.08> ]
[ 0.80 rgb <0.67, 0.48, 0.10> ]
[ 1.0 rgb <0.78, 0.56, 0.16> ]
}
}
normal
{
granite , 0.5
turbulence 0.35
}
scale 3.0
}
#declare LaubbaumBlattTex =
texture{
pigment{
bozo
color_map
{
[ 0.0 rgb <0.24, 0.49, 0.07> ]
[ 0.27 rgb <0.22, 0.64, 0.09> ]
[ 0.31 rgbt <0.45, 0.73, 0.29, 1.0> ]
[ 0.70 rgbt <0.54, 0.75, 0.41, 1.0> ]
[ 0.74 rgb <0.45, 0.73, 0.29> ]
[ 1.0 rgb <0.22, 0.64, 0.09> ]
}
}
normal{
bumps , 0.5
turbulence 0.25
}
scale 0.1
}
union { // Laubbaum
sphere { // Laubbaum-Krone aussen
<0,0,0>,1
texture {
LaubbaumBlattTex
}
scale 4.0
translate 6.3*z
}
sphere { // Laubbaum-Krone Mitte
<0,0,0>,1
texture {
LaubbaumBlattTex
}
scale 3.5
translate <-0.05, -0.05, 6.3>
}
sphere { // Laubbaum-Krone innen
<0,0,0>,1
texture {
LaubbaumBlattTex
}
scale 3.0
translate <-0.05, -0.05, 6.3>
}
cone { // LaubbStamm
<0,0,0>, 0.3, <0,0,1>, 1.0
texture {
LaubbaumStTex
}
scale <1.0, 1.0, 8.0>
rotate <180.0, 0.0, 180.0>
translate <0.05, -0.1, 8.0>
}
}
- Hintergrund
Der Hintergrund ist einfach eine grosse Kugel mit mehreren Wolken darauf.
Er sieht erstaunlicherweise (ja, das wundert mich selbst) aus fast jeder
Perspektive gut aus.
sphere { // Himmelskugel
<0,0,0>,1
texture // BlauerHimmel
{
pigment
{
gradient z
color_map
{
[ 0.0 rgb <0.60, 0.84, 1.0> ]
[ 1.0 rgb <0.0, 0.38, 0.74> ]
}
}
finish
{
ambient 0.7
diffuse 0.4
}
}
texture // Schleierwolken
{
pigment
{
bozo
color_map
{
[ 0.0 rgbf 1 ]
[ 0.70 rgbf 1 ]
[ 0.70 rgbf <0.86, 0.88, 0.92, 1.0> ]
[ 0.78 rgbf <0.82, 0.83, 0.89, 0.0> ]
[ 1.0 rgbf <0.63, 0.65, 0.77, 0.0> ]
}
turbulence 0.25
}
finish
{
ambient 0.7
diffuse 0.40
}
scale <0.3, 0.3, 0.07>
}
texture // Wolken
{
pigment
{
wrinkles
color_map
{
[ 0.0 rgbf <0.5 , 0.5 , 0.5 , 0.0> ]
[ 0.20 rgbf <1.0 , 1.0 , 1.0 , 0.1> ]
[ 0.20 rgbf <1.0 , 1.0 , 1.0 , 1.0> ]
[ 0.50 rgbf <1.0 , 1.0 , 1.0 , 1.0> ]
[ 0.50 rgbf <0.94, 0.94, 0.94, 0.1> ]
[ 0.75 rgbf <0.67, 0.67, 0.67, 0.0> ]
[ 1.0 rgbf <0.5 , 0.5 , 0.5 , 0.0> ]
}
turbulence 0.3
}
finish
{
ambient 0.7
diffuse 0.40
}
scale <0.15, 0.15, 0.08>
}
hollow
scale 100
}
- Boden
Der Boden besteht aus 5*5 Bezier-Patches und ist dann lediglich mit einer
texture_map bemalt. Das hat den Vorteil, daß ich für ihn keine 10000 Objekte
brauche (wenn ich jeden Fels extra machen würde) und alles eine einheitliche
Oberfläche ohne Kanten gibt, aber so kann ich andererseits nicht genau
bestimmen, wo Fels- bzw. Waldboden landen. Der See wurde übrigens einfach als
Wasserbox in eine Vertiefung des Bezier-Patches gelegt.
#declare LandschaftsTex =
texture // GrasTex
{
pigment{
granite
color_map
{
[ 0.0 rgb <0.06, 0.5 , 0.0> ]
[ 1.0 rgb <0.69, 0.83, 0.53> ]
}
scale 0.1
}
normal { bumps , 0.5 } scale 0.4
}
texture // WegTex
{
pigment
{
marble
color_map
{
[ 0.21 rgbf <1.0 , 1.0 , 1.0 , 1.0> ]
[ 0.21 rgbf <0.73, 0.63, 0.37, 1.0> ]
[ 0.23 rgbf <0.72, 0.56, 0.38, 0.0> ]
[ 0.27 rgbf <0.76, 0.62, 0.25, 0.0> ]
[ 0.28 rgbf <0.69, 0.51, 0.30, 1.0> ]
[ 0.28 rgbf <1.0 , 1.0 , 1.0 , 1.0> ]
}
turbulence 0.35
}
normal { granite , 0.5 scale 0.02 }
scale 4.0
rotate -80.0 * z
}
#declare FelsenTex=texture{
pigment
{
granite
color_map
{
[ 0.0 rgb <0.36, 0.36, 0.36> ]
[ 0.23 rgb <0.65, 0.65, 0.65> ]
[ 0.80 rgb <0.75, 0.75, 0.75> ]
[ 1.0 rgb <0.90, 0.90, 0.90> ]
}
}
normal { granite , 0.5 turbulence 0.2 } scale 0.4
}
#declare WaldbodenTex=texture{
pigment
{
granite
color_map
{
[ 0.0 rgb <0.41, 0.21, 0.04> ]
[ 1.0 rgb <0.48, 0.39, 0.07> ]
}
}
normal { granite , 0.5 turbulence 0.2 } scale 0.01
}
union { // Landschaft
[...] // 25 Bezier-Patches erstellen... macht mir ja Moray
texture{
bozo
texture_map
{
[0.0 FelsenTex]
[0.13 FelsenTex]
[0.15 LandschTex]
[0.62 LandschTex]
[0.75 WaldbodenTex]
[1.0 WaldbodenTex]
}
scale 2.5
translate -1.0 * x
}
}
- Nebel
Hier handelt es sich um ein Halo, das in ein quaderförmiges Container -
Objekt gequetscht wurde.
box { // Nebelmacher
<-1, -1, -1>, <1, 1, 1>
texture {
pigment
{
color rgbt <1.0, 1.0, 1.0, 1.0>
}
halo
{
cubic
box_mapping
samples 20.0
aa_level 5
jitter 0.3
color_map
{
[ 0.0 rgbt <1.0 , 1.0 , 1.0 , 1.0> ]
[ 1.0 rgbt <0.51, 0.49, 0.51, 0.0> ]
}
turbulence 0.5
}
}
hollow
scale <50.0, 50.0, 8.0>
translate <17.75, -41.6, 8.0>
}
- Bodenplatten
Die Bodenplatten sind in Wahrheit eine Ebene, deren Textur mittels des sehr
praktischen "Brick"-Patterns von POV-Ray erstellt wurde.
plane { // Untergrund
z,0
texture {
pigment
{
brick
pigment
{
granite
color_map
{
[ 0.0 rgb <0.36, 0.36, 0.36> ]
[ 1.0 rgb <0.80, 0.80, 0.80> ]
}
scale 0.2
}
pigment
{
granite
color_map
{
[ 0.0 rgb <0.43, 0.23, 0.23> ]
[ 1.0 rgb <0.65, 0.55, 0.44> ]
}
turbulence 0.2
scale 0.5
}
brick_size <2.0, 1.0, 1.0>
mortar 0.08
}
normal
{
brick
normal
{
bumps , 0.1
}
normal
{
granite , 0.2
scale 0.2
}
brick_size <2.0, 1.0, 1.0>
mortar 0.08
}
scale 3.0
}
- Wassertropfen
Er besteht aus einem kubischen Drehkörper. Aber Achtung! Kubische
Drehkörper dauern sehr lange zum Rendern, wer den Tropfen also aus
der Nähe betrachten will, sollte sich viel Zeit nehmen...
lathe { // Tropfen - braucht mindestens POV-Ray 3.02 zum Rendern
cubic_spline // wegen Fehler in 3.00: Kontrollpunkte koennen nicht auf
// Minuskoordinaten liegen
8 // control points
<-0.4, -0.8>,
<0.0, -1.4>,
<1.0, -1.0>,
<1.1, -0.1>,
<0.9, 0.7>,
<0.4, 1.4>,
<0.0, 2.2>,
<0.0, 2.4>
rotate <90,0,90>
texture {
pigment
{
color rgbf <0.89, 0.89, 1.0, 0.85>
}
normal
{
ripples , 1.0
scale 0.05
translate 0.6 * x
}
finish
{
ambient 0.1
reflection 0.3
refraction on ior 1.33
}
}
scale 0.1
translate <1.65, 0.0, 4.5>
}