let inc = 15;
let scaleN = 0.005;
let sizeB = 250;
let range =500;
function setup() {
createCanvas(windowWidth, windowHeight, WEBGL);
}
function draw() {
background(255);
orbitControl();
colorMode(HSB);
angleMode(DEGREES)
noStroke();
rotateX(60);
translate(-sizeB / 2, -inc, -sizeB / 2);
for (let x = inc; x < sizeB; x += inc) {
for (let y = inc; y < sizeB; y += inc) {
let noiseV = noise(x * scaleN, y * scaleN);
let rotateR = 23.5/noiseV
fill(0, 0, noiseV*100);
push();
translate(x, y, noiseV * range);
rotateY(-rotateR)
plane(inc);
pop();
}
}
}
Here's my code. It displaces a plane based on noise, but i've yet to figure out how to rotate them so they sync properly, instead of there being visible holes between them. The ones with noise levels of 1 or 0 will be rotated none, as they are flat. The ones in between have to be rotate somehow to link with each other without seams.