TITLE: Piercing The Veil
NAME: Caleb Hattingh and Braam van Dyk
COUNTRY: South Africa
EMAIL: caleb@netactive.co.za
WEBPAGE: -
TOPIC: Future
COPYRIGHT: I SUBMIT TO THE STANDARD RAYTRACING COMPETITION COPYRIGHT.
JPGFILE: cbveil.jpg
ZIPFILE: cbveil.zip
RENDERER USED: 
    Povray 3.5

TOOLS USED: 
    Spatch, Adobe Photoshop 6.0, MS Excel(!)

RENDER TIME: 
    1d 08h 44m 27s

HARDWARE USED: 
    AMD Athlon 1GHz, 256MB RAM

IMAGE DESCRIPTION: 


It is night, a time for dreaming, imagination, and the unknown.  The future
always seems a little more uncertain at night than during the day.

Gathered before us, we have some of the devices people have used through the
ages in their attempts to pierce the veil time hangs before us.  We have a
crystal ball, into which mystics past have gazed deeply in order to fathom
the mysteries of tomorrow.  We have the Tarot spread, which seers have used
to frame our fate.  We have ornamental zodiac symbols, signs of unspeakable
horoscopes which chart our path from our very birth.  We have the dreamcatchers
hanging over the table, which remind us of the power of dreams to light our
way.

In particular, the dreamcatchers are, according to native american tradition,
dream "filters" that catch dreams of confusion in their webs.  Dreams of
clarity
pass through unhindered, because they know their purpose and message.

They hang over the other objects in order that their messages are clear and
truthful.

The moon is bright this night, with an eerie blue hue.  The moon casts its
dream-like light over the table, creating an atmosphere pregnant with
paranormal expectation.


DESCRIPTION OF HOW THIS IMAGE WAS CREATED: 


"We" in this document refers to both Caleb Hattingh and Braam van Dyk.  This is
Caleb's 3rd entry in the IRTC, and the first for Braam.

Firstly a disclaimer:  We are not psychics, mediums, or mystics.  The scene
created, as well as the description above is presented with artistic licence
only.  We shouldn't have to make this point, but we know that on the web, there
are some people with very strong legs, and they can jump to any conclusion no
matter how far.

Render Settings:

Dimension: 1024x768
Command-line settings: +FN -GD +AM2 +A0.01 +R2
Radiosity:
// radiosity (global illumination) settings
global_settings {
  radiosity {
    pretrace_start 0.08           // start pretrace at this size
    pretrace_end   0.04           // end pretrace at this size
    count 35                      // higher -> higher quality (1..1600)  35 
    nearest_count 3               // higher -> higher quality (1..10)  5 
    error_bound 0.2               // higher -> smoother, less accurate  1.8 
    recursion_limit 3             // how much interreflections are calculated
(1..5+)  3 
    low_error_factor .5           // reduce error_bound during last pretrace
step
    gray_threshold 0.2            // increase for weakening colors (0..1)  0 
    minimum_reuse 0.015           // reuse of old radiosity samples  0.015 
    brightness 1.2                  // brightness of radiosity effects (0..1)  1


    adc_bailout 0.01/2
  }
}

*This scene actually comes out very different without radiosity, because
of the strange lighting.  In particular, the stand for the crystal ball
is MUCH less vibrant.

Spatch:

We used Spatch for the chairs around the table.  The .spt file should be in the
zip.  We actually started with a windsor chair we downloaded off the web, but
in the end we wanted a chair that looked a little different, especially the
backrest.  In the final picture, as you can see, the chairs are not even that
visible.   For texturing the chair, I actually ran out of time.  I used one the
wood textures in "woods.inc", but it didn't turn out that well, and there is
not
enough time to change it and render again.  One day when I get a fast
computer...

Photoshop:

We used Photoshop to put the text in the bottom right-hand corner.  We also
played around with increasing the brightness and contrast because we thought
that
the left side of the scene was too dark.  However, there is an eerie paleness
to the scene as-rendered, and brightness/contrast brought warmth which dulled
the effect, in our opinion.  So, we just left the picture as rendered.  We
kinda like the fact that you get to see more the closer you look :)

Tarot cards:

We managed to obtain a deck of Tarot cards from our Yoga instructor,
Jennifer Wilson.  We chose a selection of about 20 visually striking cards,
and scanned these in, and used these as image-maps.  We then put these on
rounded boxes scaled to the correct size. We used the RoundBox include-file
by Julius Klatte.  We then arranged these cards in a circle.

Table:

The table was fairly easy.  2 flat boxes, but one of them rotated 45 degrees,
and
then an intersection CSG.  We wanted to be a little more fancy, so we put
cylinders
along the edges of each of the boxes.  We could have just used the RoundBox
include already mentioned, but we originally intended having a different
texture for the trims.  Of course, in the end we chose to use the same wood
texture for the whole table.

Zodiac Symbols:

Kinda straightforward, we found a unicode font with zodiac symbols and arranged
these in a circle.

Crystal ball:

A sphere with reflection and refraction.  Not rocket science.

Pearl Stand for Crystal ball:

This is almost rocket science :)  It is a blob, made up of rising rings of
spheres.  To get the shape, we used a function that evaluates a parabola
flipped on its side.  We found that the blob didn't look that great when the
diameter gets small, because the spheres in each circle are then too big to
allow place for holes.  So we modified the macro to shrink the spheres as a
function of diameter.  Finally, we put a fine rotation on each successive ring
of spheres.  We are quite proud of this object.  It is available as a macro
in our source.

Dreamcatchers:

Without these, our scene was looking a bit empty.  They were mostly easy to
construct, except for the feathers and the 'web' inside the rings (You did know
those were feathers, right?).

The web was made by chopping an arc out of a thin torus, so that the arc fits
between the two concentric wooden rings in the dreamcatcher.  This arc was then
replicated around, and this set of arcs was then copied and flipped to get the
arcs running in the opposite direction.  The feathers were a little more
interesting.  We made a XY-scatter plot in Excel, of about 6 points, where the
x-range was between 0 and 1.  We then dragged the points on the graph to give
an outline of one side of a feather.  Once the general shape was right, we
fitted a 4th order polynomial to these points.  We then used this function
directly in Povray.  We constructed many thin cylinders, each running from an
axis, to the point calculated by evaluating our "shape" function, while we move
along the axis.  Once we have generated one side of the feather, we duplicated
and flipped it to make the full feather.  The result it that the feather looks
reasonable at a distance, and very, very good close-up (although we don't have
a close-up in our scene).  We want to develop this technique further, when more
time becomes available :)

Landscape:

The landscape is a heightfield, and we also used pov to generate the map.
We don't really like the height-field, but at least it is dark outside, and
the focus of the scene is elsewhere.

Sky:

We used Chris Colefax's galaxy include.  It is very cool.

Stone Wall:

We first made a macro for a stone 'brick'.  This was made
by randomising spheres inside the dimensions of a box and making these into a
blob.  Then, we arranged the bricks into a wall.  Then, we put some code
into the macro that would "leave out" some bricks, creating a window.

Smoky Room:

We made a tranparent box of the same dimensions as our room to create the
media.  We are not media experts, and we need to experiment much more with the
settings to learn how to use it.  However, we think the effect in the final
scene is quite good.  We also need faster hardware to do these experiments :)

- - -

Finally, we include our source, but without the image-maps because of size
limitations.  We have tried to make all the objects callable by macros, and
we have tried to put each object into a different .inc file.  If you take
the time to look around, you might find something useful.

Many thanks
Caleb Hattingh and Braam van Dyk
27 December 2003














