1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171
|
// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a
// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// Persistence Of Vision Raytracer sample file.
// Woods.inc demonstration on spheres, cones, and cubes.
// Try woods1.pov on slower computers.
//
// -w320 -h240
// -w800 -h600 +a0.3
#version 3.6;
global_settings {assumed_gamma 2.2}
#default { finish { specular 0.15 roughness 0.025 ambient 0.25 } }
// Set default finish for wood textures before including the file
#include "colors.inc"
#include "woods.inc"
camera {
location <0, 30, -60>
direction <0, 0, 3.95>
right x*1.33
look_at 3*y
}
light_source {<-50, 50, -1000> color Gray75}
light_source {< 50, 30, -20> color White}
background { color Gray30 }
#declare Thing =
union {
sphere{<0, 4, 0>, 1}
cone { -y, 1, y, 0.5 translate 2*y }
box {-1, 1 translate y}
no_shadow
}
#declare T01 = texture { T_Wood1 rotate x*90 }
#declare T02 = texture { T_Wood2 rotate x*90 }
#declare T03 = texture { T_Wood3 rotate x*90 }
#declare T04 = texture { T_Wood4 rotate x*90 }
#declare T05 = texture { T_Wood5 rotate x*90 }
#declare T06 = texture { T_Wood6 rotate x*90 }
#declare T07 = texture { T_Wood7 rotate x*90 }
#declare T08 = texture { T_Wood8 rotate x*90 }
#declare T09 = texture { T_Wood9 rotate x*90 }
#declare T10 = texture { T_Wood10 rotate x*90 }
#declare T11 = texture { T_Wood11 rotate x*90 }
#declare T12 = texture { T_Wood12 rotate x*90 }
#declare T13 = texture { T_Wood13 rotate x*90 }
#declare T14 = texture { T_Wood14 rotate x*90 }
#declare T15 = texture { T_Wood15 rotate x*90 }
#declare T16 = texture { T_Wood16 rotate x*90 }
#declare T17 = texture { T_Wood17 rotate x*90 }
#declare T18 = texture { T_Wood18 rotate x*90 }
#declare T19 = texture { T_Wood19 rotate x*90 }
#declare T20 = texture { T_Wood20 rotate x*90 }
#declare T21 = texture { T_Wood21 rotate x*90 }
#declare T22 = texture { T_Wood22 rotate x*90 }
#declare T23 = texture { T_Wood23 rotate x*90 }
#declare T24 = texture { T_Wood24 rotate x*90 }
#declare T25 = texture { T_Wood25 rotate x*90 }
#declare T26 = texture { T_Wood26 rotate x*90 }
#declare T27 = texture { T_Wood27 rotate x*90 }
#declare T28 = texture { T_Wood28 rotate x*90 }
#declare T29 = texture { T_Wood29 rotate x*90 }
#declare T30 = texture { T_Wood30 rotate x*90 }
#declare T31 = texture { T_Wood31 rotate x*90 }
#declare T32 = texture { T_Wood32 rotate x*90 }
#declare T33 = texture { T_Wood33 rotate x*90 }
#declare T34 = texture { T_Wood34 rotate x*90 }
#declare T35 = texture { T_Wood35 rotate x*90 }
#declare Height = 1;
#declare Dist1 = -8;
#declare Dist2 = -4;
#declare Dist3 = 0;
#declare Dist4 = 4;
#declare Dist5 = 8;
#declare Dist6 = 12;
#declare Dist7 = 16;
#declare Col1 = -8;
#declare Col2 = -4;
#declare Col3 = 0;
#declare Col4 = 4;
#declare Col5 = 8;
// 1st row, left to right
union {
object { Thing texture{T01} translate <Col1 Height Dist1 >}
object { Thing texture{T02} translate <Col2 Height Dist1 >}
object { Thing texture{T03} translate <Col3 Height Dist1 >}
object { Thing texture{T04} translate <Col4 Height Dist1 >}
object { Thing texture{T05} translate <Col5 Height Dist1 >}
translate -x
}
// 2nd row, left to right
union {
object { Thing texture{T06} translate <Col1 Height Dist2 >}
object { Thing texture{T07} translate <Col2 Height Dist2 >}
object { Thing texture{T08} translate <Col3 Height Dist2 >}
object { Thing texture{T09} translate <Col4 Height Dist2 >}
object { Thing texture{T10} translate <Col5 Height Dist2 >}
translate x
}
// 3rd row, left to right
union {
object { Thing texture{T11} translate <Col1 Height Dist3 >}
object { Thing texture{T12} translate <Col2 Height Dist3 >}
object { Thing texture{T13} translate <Col3 Height Dist3 >}
object { Thing texture{T14} translate <Col4 Height Dist3 >}
object { Thing texture{T15} translate <Col5 Height Dist3 >}
translate -x
}
// 4th row, left to right
union {
object { Thing texture{T16} translate <Col1 Height Dist4 >}
object { Thing texture{T17} translate <Col2 Height Dist4 >}
object { Thing texture{T18} translate <Col3 Height Dist4 >}
object { Thing texture{T19} translate <Col4 Height Dist4 >}
object { Thing texture{T20} translate <Col5 Height Dist4 >}
translate x
}
// 5th row, left to right
union {
object { Thing texture{T21} translate <Col1 Height Dist5 >}
object { Thing texture{T22} translate <Col2 Height Dist5 >}
object { Thing texture{T23} translate <Col3 Height Dist5 >}
object { Thing texture{T24} translate <Col4 Height Dist5 >}
object { Thing texture{T25} translate <Col5 Height Dist5 >}
translate -x
}
// 6th row, left to right
union {
object { Thing texture{T26} translate <Col1 Height Dist6 >}
object { Thing texture{T27} translate <Col2 Height Dist6 >}
object { Thing texture{T28} translate <Col3 Height Dist6 >}
object { Thing texture{T29} translate <Col4 Height Dist6 >}
object { Thing texture{T30} translate <Col5 Height Dist6 >}
translate x
}
// 7th row, left to right
union {
object { Thing texture{T31} translate <Col1 Height Dist7 >}
object { Thing texture{T32} translate <Col2 Height Dist7 >}
object { Thing texture{T33} translate <Col3 Height Dist7 >}
object { Thing texture{T34} translate <Col4 Height Dist7 >}
object { Thing texture{T35} translate <Col5 Height Dist7 >}
translate -x
}
|