xxxxxxxxxx
let vecLocation = [];
let vecVelocity = [];
let circlecolor = [];
let diameter=[];
const NUM = 40;
function setup() {
createCanvas(windowWidth, windowHeight);
frameRate(60);
for (let i = 0; i < NUM; i++) {
vecLocation[i] = createVector(width / 2, height/2);
vecVelocity[i] = createVector(random(-10, 10), random(-10, 10));
circlecolor[i]=[random(255),random(255),random(255),random(180,200)];
diameter[i]=random(20,50);
}
}
function draw() {
background(250,240,230);
fill(180,238,180);
circle(width/2,height,height*2);
fill(250,240,230);
circle(width/2,height,height*2-200);
noStroke();
for (let i = 0; i < NUM; i++) {
fill(circlecolor[i][0],circlecolor[i][1],circlecolor[i][2],circlecolor[i][3]);
ellipse(vecLocation[i].x, vecLocation[i].y, diameter[i],diameter[i]);
vecLocation[i].add(vecVelocity[i]);
if (vecLocation[i].x > width-10 ||vecLocation[i].x < 10) { // OR
vecVelocity[i].x = vecVelocity[i].x * -1;
for(let j=0;j<3;j++){
circlecolor[i][j]+=random(-circlecolor[i][j],255-circlecolor[i][j]);
}
fill(circlecolor[i][0],circlecolor[i][1],circlecolor[i ][2],circlecolor[i][3]);
}
if (vecLocation[i].y > height-10 || vecLocation[i].y < 10) { // OR
vecVelocity[i].y = vecVelocity[i].y * -1;
for(let j=0;j<3;j++){
circlecolor[i][j]+=random(-circlecolor[i][j],255-circlecolor[i][j]);
}
fill(circlecolor[i][0],circlecolor[i][1],circlecolor[i ][2],circlecolor[i][3]);
}
}
}