|
|
Hi,
Here is the code I used for legs of the goban I posted here some time
ago. It is based on isosurfaces but it's quite fast to render (~40s on a
P900). You may probably want to play with scaling to get the exact
"profile".
Hope this helps.
Nicolas
#version 3.5;
#include "colors.inc"
#include "woods.inc"
camera {
location <1.0, 1.5, -2.0>
direction 1.5*z
right x*image_width/image_height
look_at <0.0, 0.5, 0.0>
}
background {rgb 1}
light_source {
<0, 0, 0>
color rgb <1, 1, 1>
translate <-30, 30, -30>
}
// ********************************************************************
// A sine sphere object
// ********************************************************************
#declare sine_sphere =
isosurface {
function {
sqrt( x*x + y*y + z*z ) - .9
+ abs(sin( 4*atan2(x, z) )*0.1)
}
threshold 0
accuracy 0.0001
max_gradient 3
contained_by {box {<-1,0,-1>, < 1, 1, 1>}}
}
// ********************************************************************
// A sine cylinder object
// ********************************************************************
#declare sine_cylinder =
isosurface {
function {
sqrt(x*x + z*z) - 0.9
+ abs(sin(4*atan2(x, z))*0.1)
}
threshold 0
accuracy 0.0001
max_gradient 3
contained_by {box {<-1,0,-1>, < 1, 1, 1>}}
}
// ********************************************************************
// The foot
// ********************************************************************
union {
// Upper part
object {
sine_cylinder
scale <1, .75, 1>
translate y*2
}
object {
sine_sphere
scale <1, .75, 1>
rotate x*180
translate y*2
}
// Middle part
object{
sine_cylinder
scale <.4,.5,.4>
translate y*1
}
// Lower part
difference {
object {
sine_sphere
rotate x*180
translate y*1
}
plane {y,.25}
}
object {
sine_sphere
scale <1,.25,1>
translate y*1
}
translate y*-.25
scale 1/2.5
texture {T_Wood3}
}
Post a reply to this message
Attachments:
Download 'foot.jpg' (15 KB)
Preview of image 'foot.jpg'
|
|