#include "rmannotes.sl" displacement disp1_2(float freq = 5, Km = 0.01) { float surface_mag, layer_mag; float ss, tt; float fuzz = 0.05; /* background layer */ surface_mag = 0; /* rotate & repeat layers */ rotate2d(s, t, radians(45), .5, .5, ss, tt); ss = repeat(ss, freq); tt = repeat(tt, freq); /* layer 1 */ layer_mag = pulse(0.35, 0.65, fuzz, ss); surface_mag += layer_mag; /* layer 2 */ layer_mag = pulse(0.35, 0.65, fuzz, tt); surface_mag = max(surface_mag, layer_mag); /* displace */ P += Km * surface_mag * normalize(N); N = calculatenormal(P); }