JS viewer

Syntax-highlighted view of JS of World: Ahmed's One Cube World





// Cloned by Ahmed Hazyl on 9 May 2020 from World "One Cube World (P5)" by Starter user 
// Please leave this clone trail here.

// make an array of random (x,y,z) positions 

const noboxes = 30;                 	// 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) ];
}
 
var img;
function preload ()
{
//    img = loadImage ('/uploads/starter/earth.1.jpg');
    img = loadImage ('uploads/hazylium/dice_four.jpg');
}
 
const objectsize    = 10;      // size of object   
const objectwidth = 100;
const objectheight = 100;
const objectdepth = 100;

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("azure");    // background color 
//    fill("aquamarine");               // paint box with this color 
    texture(img);
           
    rotateX(angle);             // set each dimension rotation angle to "angle"
    rotateY(angle);
    rotateZ(angle);

//    box(objectsize);
//    box(objectwidth, objectheight, objectdepth);            // draw a cube of this size 
//    translate(250, 250, 250);
//    box(objectwidth, objectheight, objectdepth);            // draw another cube of this size  

    for ( var i=0; i < noboxes; i++ )
    {
      translate ( a[i][0], a[i][1], a[i][2] );		// get box position i 
      box(objectsize);             
    }

    angle = angle + anglechange ;       // change angle each step to get rotate movement        
}