|
|
Perhaps something like this:
#declare Ripples =
function { y-sin(pow(x*x+z*z,1/3)+pi/4) }
camera { location <0,15,-20> look_at 0 angle 35 }
light_source { <100,200,-50>, 1 }
isosurface
{ function { Ripples(x*10,y,z*10) }
contained_by { box { -<15,1,15>, <15,1,15> } }
max_gradient 3.4
scale <1,.5,1>
pigment { rgb z }
finish { specular .5 }
}
The key value which controls the rate of change of the ripples is the
1/3 in the exponent of the function. 1/2 (ie. square root) will give ripples
at equal distances. Values larger than 1/2 will make the ripples to increase
frequency farther away from the origin, while values smaller than 1/2
(eg. the used 1/3) will decrease the frequency.
(Note that changing the exponent will also change the overall frequency,
so the factors in the function call (inside the isosurface) will probably
need to be adjusted accordingly.)
--
#macro M(A,N,D,L)plane{-z,-9pigment{mandel L*9translate N color_map{[0rgb x]
[1rgb 9]}scale<D,D*3D>*1e3}rotate y*A*8}#end M(-3<1.206434.28623>70,7)M(
-1<.7438.1795>1,20)M(1<.77595.13699>30,20)M(3<.75923.07145>80,99)// - Warp -
Post a reply to this message
|
|