EMPTY
EMPTY

The following images are my attempts at ray tracing, using 'Persistence of Vision' or 'PovRay'.

I am a beginner and these are three views of my first reasonably successful scene.
If you are not aware of this method of creating images, you might think that photography is involved. This is not the case. In fact everything in the scene is constructed with numbers.

The Pill

The scene tells a silly little story, if you can see it.
I would like to mention that the table is a very good rendering of one that I carved many years ago and is still in use.
Following are two close-ups :

The Pill

The Pill

Actually there is a little photography involved -
I photographed the picture on the mug, the portrait (but not the frame) and the label of the pill container. These were then planned onto the geometric models.

Next is a construction of my fly-tying vice.

vice


... and a closer view.

vice

And just in case you are interested, here is part of the code for the Rubik's Cube:
#declare PanelThick =0.009375;
#declare CornerRad = PanelThick/2;
//----------------single cell-----------------------
//to make rounded edges, construct from flat panels with cylinder edges...
#declare PanelTex=
texture{
pigment{Black}
finish {
ambient .1
diffuse .4
reflection .25
specular 1
}
}
//----------------------------------
#declare PanelSide=
box{
<-(CellWidth/2-CornerRad), -PanelThick, (CellWidth/2-CornerRad)>
< (CellWidth/2-CornerRad), 0,-(CellWidth/2-CornerRad)>
texture{PanelTex} }
#declare PanelEdge=
cylinder{
<-(CellWidth/2-CornerRad),-CornerRad,0>,
<(CellWidth/2-CornerRad),-CornerRad,0>,
CornerRad
texture{PanelTex}
}
//_-------------------------------------------------------------------------
#declare Panel=
union{
object{PanelSide}
//...................................................
object{PanelEdge
translate z*(CellWidth/2-CornerRad)
}

object{PanelEdge translate -z*(CellWidth/2-CornerRad)
}
object{PanelEdge
rotate y*90
translate -x*(CellWidth/2-CornerRad)
}
object{PanelEdge
rotate y*90
translate x*(CellWidth/2-CornerRad)
}
//....................................................
sphere {<0, 0, 0>, CornerRad
translate < -(CellWidth/2-CornerRad), -CornerRad,(CellWidth/2-CornerRad)>
}
sphere {<0, 0, 0>, CornerRad
translate < -(CellWidth/2-CornerRad), -CornerRad,-(CellWidth/2-CornerRad)>
}
sphere {<0, 0, 0>, CornerRad
translate < (CellWidth/2-CornerRad), -CornerRad,(CellWidth/2-CornerRad)>
}
sphere {<0, 0, 0>, CornerRad
translate < (CellWidth/2-CornerRad), -CornerRad,-(CellWidth/2-CornerRad)>
}
texture{PanelTex}
}
//_-------------------------------------------------------------------------