|
|
Hello. I thought a simple pattern iterator would be cool. Ive been trying to
make this for a while. Basically I want to copy a function many times and have
control over the omega and roughness. I'm sure its a really simple thing but
I'm not that good at programing yet. I think I know that I should have each
octave added less ,but I can't keep it from getting too dim or bright.
this is what I have so far:
I might also try an averaged pigmentloop that might be easier.
#macro iterator(pigment_function_booleon,Function,Octaves,Omega,rough)
(
#for(i,.1,Octaves,1)
Function(x*(i+Omega)+i,y*(i+Omega),z*(i+Omega)).grey/(i*rough)+
#end
0)/Octaves/(i*rough)
#end
#declare no_wrap=function(x) {max(min(x,1),0)}
camera{location<0,0,-5>
look_at 0}
#declare ridge=function{pigment{bozo scale .1 triangle_wave color_map{[0 rgb
0][1 rgb 1]}}}
#declare ridged=function{iterator(yes,ridge,4,.5,.1) }
plane{z,0
pigment{function{no_wrap(ridged(x,y,z))}color_map{[0 rgb 0][1 rgb
1]}}finish{emission 1}}
thanks in advanced
Post a reply to this message
|
|