solid
let n = 10,
r = 20,
p = 0.5;
function setup() {
createCanvas(windowWidth, windowHeight, WEBGL);
noStroke();
normalMaterial();
}
function draw() {
background(255);
orbitControl();
t = frameCount / 500;
rotateX(t);
rotateY(t);
rotateZ(t);
for (let i = -n; i < n; i++) {
for (let j = -n; j < n; j++) {
for (let k = -n; k < n; k++) {
push();
translate(
r * i + random(-p, p),
r * j + random(-p, p),
r * k + random(-p, p)
);
sphere(r / 2, 12, 12);
pop();
}
}
}
}