|
|
Just a bit of fun with an isosurface I did a while ago.
// Persistence of Vision Ray Tracer Scene Description File
// File: IsoTest
// Vers: 3.5
// Desc: Crackle world
// Date: 11 Apr 2004
// Auth: PM 2Ring
//
#version 3.5;
global_settings {
assumed_gamma 1.0
//max_trace_level 20
}
//----Textures, etc--------------------------------------------
#declare SkyBlue = rgb <.035, .27, .67>*.6; //For water & sky
#declare CM_Clouds1 =
color_map {
[0.0 SkyBlue ]
[0.82 rgb 0.75]
[0.87 rgb 0.85]
[0.90 rgb 1]
}
#declare T_Clouds =
texture{
pigment {
crackle
color_map {CM_Clouds1}
warp{
//turbulence 0.75
turbulence 0.2
octaves 6
omega 0.7
lambda 2.25
}
}
finish{ambient 0.9 diffuse 0.2}
}
//Planet colour map
#declare WLevel = 0.15;
//Interpolate Levels
#macro Level(h)(WLevel + h*(1-WLevel))#end
#declare CMPlanet =
color_map{
[0 blue .15]
//[WLevel rgb<0,0,0.4> filter 0.2 transmit 0.5]
[WLevel/2 rgb<0,0.55,0.55>]
[WLevel rgb<0,0.1,0.55>]
[WLevel rgb<.75,.65,.2>]
[Level(0.025) rgb<.05,.5,.15>]
[Level(0.3) rgb<.9,.8,.25>]
[Level(0.5) rgb<.65,.45,.1>]
[Level(0.6) rgb<.35,.25,0.2>]
[Level(0.7) rgb .5]
[Level(0.8) rgb<.7, .7, .725>]
[Level(0.9) rgb .9]
[1 rgb 1]
}
#declare PCrackle =
pigment{
crackle
//form vnormalize(<-.5,.25,.25>)
//metric 2
//offset 0.25
//solid
}
#declare PlanetCrackle =
pigment{
//PCrackle
gradient y scale .95
color_map{
CMPlanet
}
}
//--------------------------The actual scene-------------------
#declare f_ground = function{pigment{PCrackle}}
#declare SGround =
isosurface{
function{
y - 0.075*f_ground(x*7, y, z*5).x
}
max_gradient 1.213
contained_by{ box{<-1, 0, -.5>, <1, .2, 1.4>} }
accuracy 0.003 //default 0.001
scale 12
}
object {
SGround
texture{
pigment{PlanetCrackle}
finish{
brilliance 1.25
phong 1 phong_size 100
diffuse 0.7 ambient 0.1
}
}
}
#declare SkyRad = 1E3;
sphere{0, SkyRad
inverse
no_shadow
texture{
T_Clouds
scale <1, .2, 1> * SkyRad / 5
}
}
//--------------------------Lights & camera-------------------
#declare LightLoc = <10, 40, -30> * 30;
#declare Sun = sphere{
LightLoc, 3E2
pigment{rgb<1,1,.8>}
finish{ambient 1.5 diffuse 0}
}
light_source {
LightLoc rgb 1
parallel point_at 0
looks_like{object{Sun}}
}
camera {
location <0, 5, -8.0> * 2.5 * 1.1
look_at 3.75*y
right x*image_width/image_height
direction z
angle 30
}
//-------------------------End of file-------------------------
Post a reply to this message
Attachments:
Download 'isoteste2.jpg' (104 KB)
Preview of image 'isoteste2.jpg'
|
|