Category : Printer + Display Graphics
Archive   : POV2SCN.ZIP
Filename : TOMB.POV

 
Output of file : TOMB.POV contained in archive : POV2SCN.ZIP
// Persistence Of Vision raytracer version 2.0 sample file.

// By Drew Wells

// Title-"Tomb"
// a haunted tomb on a hill, gravestones, rusty fence, pumpkin patch.
// - Drew Wells cis 73767,1244
// 11/90 rev 7/92
#include "shapes.inc"
#include "colors.inc"
#include "textures.inc"
#include "stones.inc"

/* Camera */
camera {
direction <0.0, 0.0, 1.5>
up <0.0, 1.0, 0.0>
right <-4/3, 0.0, 0.0>
translate < -15.0, 5.0, 120.0>
look_at <10.0, 12.0, 55.0>
}
#declare TombTex = texture { Stone8 finish { ambient .1 } scale 0.5 }
#declare HeadTex = texture { Stone3 }
#declare ColTex = texture { Stone13 finish { phong .3 } scale .2 }
#declare Rust2 = texture { Stone1 }


#declare Yellow_Clouds = pigment {
bozo
turbulence 0.6
colour_map {
[0.0 0.3 colour red 0.9 green 0.5 blue 0.3
colour red 0.6 green 0.4 blue 0.0]
[0.3 0.6 colour red 0.6 green 0.4 blue 0.0
colour red 0.4 green 0.4 blue 0.0 filter 1.0]
[0.6 0.8 colour red 0.4 green 0.4 blue 0.0 filter 1.0
colour Clear]
[0.8 1.001 colour Clear
colour Clear]
}
}

#declare Sunset_Sky = pigment {
gradient y

colour_map {
[0.0 0.4 colour red 0.8 green 0.0 blue 0.0
colour red 0.4 green 0.0 blue 0.4]
[0.4 0.6 colour red 0.4 green 0.0 blue 0.4
colour red 0.0 green 0.0 blue 0.2]
[0.6 1.001 colour red 0.0 green 0.0 blue 0.2
colour red 0.0 green 0.0 blue 0.1]
}
scale 700.0
}


/*************************************************/
/* Define objects for use in scene */
/*************************************************/

#declare Cross = union {
/* Tried to make celtic cross, but vga resolution is too coarse */
/*
intersection {
object {
Cylinder_Z
scale 0.4
translate <0.0, 0.45, 0.0>
}
plane { -z, 0.02 }
plane { z, 0.02 }
}
*/

/*vertical part*/
intersection {
/*top & bottom*/
plane { y, 1.0 }
plane { -y, 2.0 }
/*front & back*/
plane { z, 0.12 }
plane { -z, 0.12 }
/*left & right*/
plane { x, 0.15 }
plane { -x, 0.15 }
}

/*horizontal part*/
intersection {
/*top & bottom*/
plane { y, 0.6 }
plane { -y, -0.3 }
/*front & back*/
plane { z, 0.12 }
plane { -z, 0.12 }
/*left & right walls*/
plane { x, 0.7 }
plane { -x, 0.7 }
}

bounded_by { box { <-.8, -2.1, -.2>, <.8, 1.1, .8> } }

texture {
HeadTex
scale 0.1
finish {
ambient 0.1
diffuse 0.7
}
}
}

#declare Headstone = union {
intersection {
object { Cylinder_Z }
plane { -z, 0.1 }
plane { z, 0.1 }
}

intersection {
/*top & bottom*/
plane { y, 0.0 }
plane { -y, 2.0 }
/*front & back*/
plane { z, 0.1 }
plane { -z, 0.1 }
/*left & right */
plane { x, 1.0 }
plane { -x, 1.0 }
}

texture {
HeadTex
scale <0.1, 0.2, 0.1>

finish {
ambient 0.1
diffuse 0.7
}
}
}


#declare Pole = object { Cylinder_Y scale <0.1, 1.0, 0.1> }


#declare Xpole = object { Cylinder_X scale <0.1, 0.1, 0.1> }

/* Rusty iron gate & fence - object should have been composite to avoid the */
/* "carved from one piece" look. */
#declare Gate = union {
intersection {
object { Xpole }
plane { x, 8.0 }
plane { -x, 2.0 }
translate 6.5*y
}
intersection {
object { Xpole }
plane { x, 8.0 }
plane { -x, 2.0 }
translate 1.9*y
}
intersection {
object { Pole }
plane { y, 7.5 }
plane { -y, 0.0 }
translate 1.0*x
}
sphere { <1.0, 7.5, 0.0>, 0.3 }
intersection {
object { Pole }
plane { y, 7.75 }
plane { -y, 0.2 }
translate 2.5*x
}
sphere { <2.5, 7.75, 0.0>, 0.3 }
intersection {
object { Pole }
plane { y, 8.0 }
plane { -y, 0.2 }
translate 4.0*x
}
sphere { <4.0, 8.0, 0.0>, 0.3 }
intersection {
object { Pole }
plane { y, 7.75 }
plane { -y, 0.2 }
translate 5.5*x
}
sphere { <5.5, 7.75, 0.0>, 0.3 }
intersection {
object { Pole }
plane { y, 7.5 }
plane { -y, 0.2 }
translate 7.0*x
}
sphere { <7.0, 7.5, 0.0>, 0.3 }

bounded_by { box { <0.0, 0.0, -1.0>, <8.0, 9.0, 1.0> } }

texture {
Rust2
finish {
ambient 0.2
diffuse 0.9
}
}
}

/* a rectangular pad to serve as a footing for the column */
#declare BasePad = box {
<-1.2, -0.25, -1.2>, <1.2, 0.25, 1.2>
pigment { colour red 0.6 green 0.6 blue 0.4 }
}

#declare ColTop = union {
box { <-1.5, -.1, -1.5>, <1.5, .2, 1.5> }
box { <-1.25, .2, -1.25> <1.25, .4, 1.25> }
box { <-1, .4, -1> <1, .6, 1> }

pigment { color red .6 green .6 blue .4 }
}

#declare Beam = object { Cylinder_Y }

#declare Beam2 = object {
Cylinder_Y
inverse
scale <.3, 1, .3>
translate 1.4*x
}

#declare Beam3 = intersection {
object { Beam scale <1.2, 1, 1.2> }
object { Beam2 }
object { Beam2 rotate -45*y }
object { Beam2 rotate -90*y }
object { Beam2 rotate -135*y }
object { Beam2 rotate 180*y }
object { Beam2 rotate 45*y }
object { Beam2 rotate 90*y }
object { Beam2 rotate 135*y }
plane { y, 8 }
plane { -y, 0 }

pigment { color red .8 green 0 blue .0 }
}

#declare Column = union {
object { Beam3 texture { ColTex } }
//object { BasePad texture { ColTex finish {phong 0} } translate <0, 0, 0> }
object { ColTop texture { ColTex finish {phong 0} } translate <0, 8, 0> }
}


#declare Tomb = union {
difference {
box { <-10, -5, -7.5>, <10, 10, 7.5> } // bulk
box { <-3, -5, -7.0>, <3, 7, 7.6> } // door
}
/* Foundation */
box { <-11, -2, -10.5>, <11, -1, 10.5> }
box { <-12, -3, -11>, <12, -2, 11> }
box { <-13, -4, -12>, <13, -3, 12> }
box { <-14, -5, -13>, <14, -4, 13> }

bounded_by { box { <-14.1, -5.1, -13.1>, <14.1, 10.1, 18.6> } }
}

#declare InnerBeams = union {
intersection {
object { Beam }
plane { y, 8.0 }
plane { -y, 2.0 }
translate < 5.0, 0.0, 7.5>
}
intersection {
object { Beam }
plane { y, 8.0 }
plane { -y, 2.0 }
translate < -5.0, 0.0, 7.5>
}

pigment { Blue }
}


#declare Pointy = object {
/*pointy part*/
intersection {
plane { -y, 1 }
plane { -z, 1 }
plane { z, 1 rotate 27*y rotate 40*x }
plane { z, 1 rotate -27*y rotate 40*x }
plane { +x, 0 rotate 70*z }
plane { -x, 0 rotate -70*z }
scale <3, 4, 1>
translate < 0, 12, 8.5>
}

pigment { Blue }
}


#declare CornerBeams = union {
intersection {
object { Beam scale <1.5, 1.0, 1.5>}
plane { y, 10.0 }
plane { -y, 2.0 }
translate < 10.0, 0.0, 7.5>
}
intersection {
object { Beam scale <1.5, 1.0, 1.5> }
plane { y, 10.0 }
plane { -y, 2.0 }
translate <-10.0, 0.0, 7.5>
}
sphere { <-10.0, 10.0, 7.5>, 1.5 }
sphere { < 10.0, 10.0, 7.5>, 1.5 }

pigment { Blue }
}

/* Ghost in tomb doorway */
#declare Figure = intersection {
object { Beam scale <2.3, 1.0, 2.3> }
plane { y, 8.0 }
plane { -y, 2.0 }
translate 4.3*z

texture {
pigment {
granite
/* Use any ghost image you like for the tomb doorway or comment */
/* out the Figure in TombAll */
/*imagemap { gif "ghost.gif" once interpolate 2.0 } */
scale < 6.5, 8.0, 6.5 >
translate < -1.0, 7.5, 4.3 >
quick_color Black
}
finish {
ambient 0.10
diffuse 0.3
}
}
}

/* TombAll is the completed tomb */
#declare TombAll = union {
object { Tomb texture { TombTex } }
object { InnerBeams texture { Stone21 } }
object { Pointy texture { Stone4 } }
object { CornerBeams texture { Stone18 scale <.5, .5, .5> } }
}

/* Pumpkin parts */
#declare Stem = intersection {
object { Pole }
plane { y, 0.04 rotate <0.0, -10.0, -10.0> }
plane { -y, 1.0 }
translate <0.0, 0.3, 0.0>

texture {
pigment { color red 0.04 green 0.33 blue 0.05 }
normal {
bumps 0.5
scale 0.2
}
finish {
ambient 0.1
diffuse 0.9
}
}
}

#declare Slice = sphere {
<0, 0, 0>, 1
translate <0.0, 0.0, 0.5>
scale <0.28, 0.30, 0.40>
}

#declare Pumpkin = union {
object { Slice }
object { Slice rotate -20.0*y }
object { Slice rotate -40.0*y }
object { Slice rotate -60.0*y }
object { Slice rotate -80.0*y }
object { Slice rotate -100.0*y }
object { Slice rotate -120.0*y }
object { Slice rotate -140.0*y }
object { Slice rotate -160.0*y }
object { Slice rotate -180.0*y }
object { Slice rotate -200.0*y }
object { Slice rotate -220.0*y }
object { Slice rotate -240.0*y }
object { Slice rotate -260.0*y }
object { Slice rotate -280.0*y }
object { Slice rotate -300.0*y }
object { Slice rotate -320.0*y }
object { Slice rotate -340.0*y }

bounded_by { sphere { <0, 0, 0>, 1.5 } }

texture {
pigment { color red 0.5 green 0.22 blue 0.1 }
normal {
bumps 0.3
scale 0.1
}
finish {
ambient 0.1
diffuse 0.9
phong 0.75
phong_size 30.0
}
}
}


/*******************************************/
/* Scene description */
/*******************************************/

object {
Cross
scale <1.7, 2.0, 1.0>
rotate -15.0*x
translate <-16.0, 7.7, 61.5>
}

object {
Headstone
scale <1.0, 1.0, 1.0>
rotate 15.0*x
translate <-14.0, 4.0, 76.0>
}

object {
Headstone
scale <1.0, 1.0, 1.0>
translate <12.0, 4.0, 74.0>
}

object {
Headstone
scale <1.0, 1.0, 1.0>
rotate -10.0*x
translate <18.0, 8.0, 70.0>
}

object {
Cross
scale <1.5, 2.0, 1.0>
rotate -15.0*x
translate <17.0, 10.0, 60.0>
}

object {
Cross
scale <1.5, 2.0, 1.0>
rotate -15.0*x
translate <26.0, 10.0, 70.0>
}

object {
Cross
scale <1.5, 2.0, 1.0>
rotate <-15.0, 0.0, -10.0>
translate <31.0, 10.0, 78.0>
}


/* Little Pumpkin Patch */
object {
Pumpkin
scale <1.5, 2.0, 1.5>
translate <5.0, 1.55, 95.0>
}

object {
Stem
scale <1.5, 2.5, 1.5>
translate < 5.0, 1.55, 95.0>
}

object {
Pumpkin
scale <1.5, 2.5, 1.5>
translate < 11.0, 1.6, 90.0>
}

object {
Stem
scale <1.5, 2.5, 1.5>
translate < 11.0, 1.6, 90.0>
}


/* Ghastly Tomb!*/
object {
TombAll
rotate <7.0, 15.0, 0.0>
translate <0.0, 16.0, 38.0>
}

/*left entry gate*/
object {
Gate
translate <-9.0, 0.0, 88.0>
}

/*right entry gate*/
object {
Gate
rotate <-10.0, -160.0, 0.0>
translate <7.0, 0.0, 87.5>
}

/*Use gate object to make left & right fence*/
object {
Gate
translate <-19.0, 0.0, 88.0>
}

object {
Gate
translate <-31.0, 0.0, 88.0>
}

object {
Gate
translate <9.0, 0.0, 88.0>
}

object {
Gate
translate <19.0, 0.0, 88.0>
}

/* Columns to hold the fence and gates up */
object { Column translate <-20.0, 0.0, 88.0> }
object { Column translate <-10.0, 0.0, 88.0> }
object { Column translate < 8.0, 0.0, 88.0> }
object { Column translate < 18.0, 0.0, 88.0> }

/*hill under tomb*/
object {
Paraboloid_Y
scale <40.0, 10.0, 77.0>
rotate <0.0, 0.0, 180.0>
translate <0.0, 21.0, -28.0>

texture {
pigment { color red 0.5 green 0.6 blue 0.2 }
normal {
bumps 0.8
scale 5.0
}
finish {
ambient 0.1
diffuse 0.7
}
}
}

/*hill to right of tomb*/
object {
Paraboloid_Y
scale <30.0, 10.0, 40.0>
rotate 180.0*z
translate <40.0, 14.0, 50.0>

texture {
pigment { color red 0.6 green 0.6 blue 0.1 }
normal {
bumps 0.8
scale < 7.0, 5.0, 5.0>
}
finish {
ambient 0.1
diffuse 0.7
}
}
}

/* Ground */
plane {
y, 1.0

texture {
pigment { color red 0.6 green 0.6 blue 0.1 }
normal {
bumps 0.7
scale < 1.0, 1.0, 1.0>
}
finish {
ambient 0.1
diffuse 0.7
}
}
}

/*The Sun*/
light_source { <150.0, 30.0, 1200.0> color red 1 green .8 blue .65 }

/* Sky - gradient sunset*/
sphere {
<0.0, 0.0, 0.0>, 2000.0
inverse

texture {
pigment {
Sunset_Sky
translate 200.0*y
scale 1.2
quick_color Green
}
finish {
ambient 0.6
diffuse 0.0
}
}
}

/* Clouds - uses a sky texture with the sky portion defined as transparent */
/* so the gradient behind it is visible */
sphere {
<0.0, 0.0, 0.0>, 1997.0
inverse
texture {
pigment {
Yellow_Clouds
scale <1000.0 30.0 100.0>
quick_color Green
}
finish {
ambient 0.7
diffuse 0.0
}
}
}


  3 Responses to “Category : Printer + Display Graphics
Archive   : POV2SCN.ZIP
Filename : TOMB.POV

  1. Very nice! Thank you for this wonderful archive. I wonder why I found it only now. Long live the BBS file archives!

  2. This is so awesome! 😀 I’d be cool if you could download an entire archive of this at once, though.

  3. But one thing that puzzles me is the “mtswslnkmcjklsdlsbdmMICROSOFT” string. There is an article about it here. It is definitely worth a read: http://www.os2museum.com/wp/mtswslnk/