|
|
// Persistence of Vision Ray Tracer Scene Description File
// File: .pov
// Vers: 3.1
// Desc: Sphere and Superellipsoid World
// Date: 2000 March 29
// Auth: Paul Vanukoff - van### [at] primenetcom
#global_settings {max_trace_level 15}
#declare sd=seed(802);
#declare map=array[40][40][10]
// fill first layer (layer 0)
#declare i=0;
#while(i<40)
#declare j=0;
#while(j<40)
#switch(rand(sd))
#range( 0.00, 0.25)
#declare map[i][j][0] = 0; // 25% holes
#break
#range( 0.25, 0.50)
#declare map[i][j][0] = 1; // 25% spheres
#break
#range( 0.50, 1.00)
#declare map[i][j][0] = 2; // 50% superellipsoids
#break
#end
#declare j=j+1;
#end
#declare i=i+1;
#end
// fill other layers (layers 1-9)
#declare h=1;
#while(h<10)
#declare i=0;
#while(i<40)
#declare j=0;
#while(j<40)
#switch(map[i][j][h-1])
#case( 0)
#declare map[i][j][h]=0;
#break
#case( 1)
#declare map[i][j][h]=0;
#break
#case( 2)
#switch(rand(sd))
#range( 0.00, 0.25)
#declare map[i][j][h] = 0; // 25% holes
#break
#range( 0.25, 0.50)
#declare map[i][j][h] = 1; // 25% spheres
#break
#range( 0.50, 1.00)
#declare map[i][j][h] = 2; // 50% superellipsoids
#break
#end
#break
#end
#declare j=j+1;
#end
#declare i=i+1;
#end
#declare h=h+1;
#end
// render all layers
#declare h=0;
#while(h<10)
#declare i=0;
#while(i<40)
#declare j=0;
#while(j<40)
#switch(map[i][j][h])
#case( 0)
#break
#case( 1)
sphere
{
< 0, 0, 0>, 1
translate < 2*i-40, 2*h, 2*j-40>
pigment
{
color rgb vnormalize(< rand(sd), rand(sd), rand(sd)>)
}
finish
{
diffuse 7/8
ambient 0
phong 1
reflection 1/4
}
}
#break
#case( 2)
superellipsoid
{
< 0.15, 0.15>
translate < 2*i-40, 2*h, 2*j-40>
pigment
{
color rgb vnormalize(< rand(sd), rand(sd), rand(sd)>)
}
finish
{
diffuse 7/8
ambient 0
phong 1
reflection 1/4
}
}
#break
#end
#declare j=j+1;
#end
#declare i=i+1;
#end
#declare h=h+1;
#end
plane
{
y, -1
pigment
{
color rgb 0
}
normal
{
granite 0.1
scale 3
}
finish
{
diffuse 7/8
ambient 0
phong 1
reflection 1/4
}
}
sky_sphere
{
pigment
{
bozo turbulence 0.75
color_map
{
[0.0 color rgb < 0.1, 0.1, 0.9>]
[0.2 color rgb < 0.1, 0.1, 0.9>]
[1.0 color rgb < 1.0, 1.0, 1.0>]
}
scale 1/10
scale < 3, 1, 3>
}
}
#declare cam_loc = < 37.0, 20.0,-37.0>;
camera
{
location cam_loc
look_at < 18.0, 0.0,-18.0>
}
light_source
{
2 * < 0.0, cam_loc.y, 0.0>
color rgb 3/8
}
light_source
{
2 * cam_loc
color rgb 5/8
}
Post a reply to this message
|
|
|
|
Thanks Paul.
--
Cheers
Steve email mailto:sjl### [at] ndirectcouk
%HAV-A-NICEDAY Error not enough coffee 0 pps.
web http://www.ndirect.co.uk/~sjlen/
or http://start.at/zero-pps
10:20pm up 1 day, 23:09, 6 users, load average: 1.19, 1.06, 1.01
Post a reply to this message
|
|