#include "rmannotes.sl" surface diff() { float fuz = 0.05; color surface_color = 1; /* tile coords */ float freq = 4; float ss = repeat(s, freq); float tt = repeat(t, freq); float col = whichtile(s, freq); float row = whichtile(t, freq); float d = distance(point(.5,.5,0), point(ss,tt,0)); float R = 0.3; color layer_color = color "hsv" (cellnoise(row*10 + 321), 1, udn2(s*4 + 321, t*4 +984, 0.5, 1.0)); /* add noise to feature samples - different for every feature */ d += .25 * snoise2(ss*3 + row*10 + 298, tt*3 + col*10 + 832); color layer_opac = 1 - smoothstep(R-fuz, R, d); surface_color = blend(surface_color, layer_color, layer_opac); Ci = surface_color; }