35 lines
702 B
JavaScript
35 lines
702 B
JavaScript
let ma;
|
|
|
|
function setup() {
|
|
createCanvas(windowWidth, windowHeight, WEBGL);
|
|
ma = atan(cos(QUARTER_PI));
|
|
}
|
|
|
|
function draw() {
|
|
background(100);
|
|
rotateX(-ma);
|
|
rotateY(-QUARTER_PI);
|
|
let gap = 5 + sin(millis() / 500) * 15
|
|
let colorMap = map(gap, -10, 20, 20, 40)
|
|
translate(-(gap + 40) * 4.5, -(gap + 50) * 4.5, -(gap + 40) * 4.5);
|
|
|
|
for (let x = 0; x < 10; x++) {
|
|
push()
|
|
for (let y = 0; y < 10; y++) {
|
|
push()
|
|
for (let z = 0; z < 10; z++) {
|
|
noStroke()
|
|
fill(x * colorMap, y * colorMap, z * colorMap)
|
|
box(20)
|
|
translate(0, 0, 35 + gap)
|
|
}
|
|
pop()
|
|
translate(0, 35 + gap, 0)
|
|
}
|
|
pop()
|
|
translate(35 + gap, 0, 0)
|
|
}
|
|
}
|
|
|
|
|