// Cloned by Darragh McG on 21 Sep 2023 from World "One Cube World (P5)" by Starter user
// Please leave this clone trail here.
const objectsize = 100; // size of object
const anglechange = 0.01; // how much the rotate angle changes each step
var angle = 0; // rotate angle starts at 0
// make an array of random (x,y,z) positions
const noboxes = 1000; // how many boxes to have
var a = new Array(noboxes); // array of the box positions
for ( var i=0; i < noboxes; i++ ) // set up the array
{
//[[displacment xyz], size]
a[i] = [[ AB.randomIntAtoB(-250,250), AB.randomIntAtoB(-250,250), AB.randomIntAtoB(-250,250) ], AB.randomIntAtoB(10,40)];
}
// Add Music
const MUSICFILE = '/uploads/starter/SuspenseStrings.mp3';
AB.backgroundMusic ( MUSICFILE );
function setup() // "setup" is called once at start of run
{
createCanvas ( ABWorld.fullwidth(), ABWorld.fullheight(), WEBGL );
}
function draw() // "draw" is called every timestep during run
{
background("slategrey"); // background color
normalMaterial();
rotateX(angle); // set each dimension rotation angle to "angle"
rotateY(angle / 10);
rotateZ(angle);
for ( var i=0; i < noboxes; i++ )
{
translate ( a[i][0][0], a[i][0][1], a[i][0][2] ); // get box position i
box(a[i][1]);
translate ( -a[i][0][0], -a[i][0][1], -a[i][0][2] );
}
angle += anglechange;
}