// make an array of random (x,y,z) positions
const noboxes = 600; // 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
{
a[i] = [ AB.randomIntAtoB(-500,500), AB.randomIntAtoB(-500,500), AB.randomIntAtoB(-500,500) ];
}
const MUSICFILE1 = '/uploads/starter/SuspenseStrings.mp3'; // add music file from server
const MUSICFILE2 = 'https://ancientbrain.com/uploads/apples25/11Vivaldi.mp3'; // add music file uploaded from local drive to server
AB.backgroundMusic ( MUSICFILE2 );
var img;
function preload()
{
img1 = loadImage ( '/uploads/starter/earth.1.jpg' ); // default image
img2 = loadImage ( '/uploads/apples25/1632214750.png' ); // image uploaded from browser (ctrl c, ctrl v)
img3 = loadImage ( '/uploads/starter/earth.4.jpg' ); // image selected from other user uploads
img4 = loadImage ( '/uploads/apples25/StoneFish.jpg' ); // stone fish photo
// https://ancientbrain.com/uploads/apples25/1632214750.png
}
// Cloned by Apples Twenty Five on 21 Sep 2021 from World "One Cube World (P5)" by Starter user
// Please leave this clone trail here.
const objectsize = 200; // size of object
const anglechange = 0.01; // how much the rotate angle changes each step
var angle = 0; // rotate angle starts at 0
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("AntiqueWhite"); // background color
//background(img4); // background image
//fill("green"); // paint box with this color
texture(img4);
tint(255,200) // sets transparency of image (1st param is white, 2nd is transparency level)
rotateX(angle); // set each dimension rotation angle to "angle"
rotateY(angle);
rotateZ(angle);
//box(objectsize); // draw a cube of this size
/*
box(objectsize); // draw 4 cubes and displace position linearly
translate(55, 55, 55);
box(objectsize);
translate(55, 55, 55);
box(objectsize);
translate(55, 55, 55);
box(objectsize);
*/
for ( var i=0; i < noboxes; i++ )
{
translate ( a[i][0], a[i][1], a[i][2] ); // get box position i
box(objectsize);
}
//box ( 200, 50, 1000 );
angle = angle + anglechange ; // change angle each step to get rotate movement
}