#declare USE_PHOTONS=on; global_settings { #if(USE_PHOTONS) photons { spacing 0.002 autostop 0 jitter 0 } #end max_trace_level 20 } light_source { <-50, 50, 100> color rgb 1.25 photons { refraction on reflection on } } light_source { <0, 50, -100> color rgb .3 } camera { //location <0,1.1,-4> location <.6,1.5,-4> //look_at <0,0,-1.7> look_at <.135,0,-0.60> angle 40 } background { rgb <.5,.5,.5> } global_settings { ambient_light .5 } #declare Value=0.06; #declare Pattern_Scale=0.15; #declare fn_pattern0= function { pattern { bumps rotate -y*360*clock scale scale <.75, 1.5, .75> } } #if( clock > .5 ) #declare yclock = 1 - clock; #else #declare yclock = clock; #end #declare fn_water= function { y - (fn_pattern0(x - 20, 2*yclock, z))*Value } #declare Water_Base=-.55; #declare ROOT2 = 1.4142136; #declare CLIP_BOX= difference { box { <-2.5, -2.1, -2.5> <2.5, 2.5, 2.5> } box { <-1, -2.15, -1> <1, 2.55, 1> rotate y*45 } } difference { isosurface { function { fn_water(x, y-.5, z) } contained_by { box {<-ROOT2,Water_Base,-ROOT2> } } accuracy .0001 } CLIP_BOX texture { pigment { rgbf <.8, .9, .9, .9> } } finish { roughness .00001 specular .8 reflection { .05 .75 fresnel on } } interior { ior 1.33 fade_power 1.9 fade_distance .25 } //interior { ior 1.33 fade_power 1.9 fade_distance .5 } photons { target reflection on refraction on collect on } } plane { y, Water_Base + 0.00001 pigment { rgb <.95 .95 .8> } }