noiseObj [] noises; mouseTrack mousePos = new mouseTrack(); int rRand, gRand, bRand; void setup() { frameRate(24); rRand = int(random(100)); gRand = int(random(200)); bRand = int(random(255)); size(500,500,P3D); background(50,50,50); noises = new noiseObj[20]; for(int i = 0; i < 20; i++) { noises[i] = new noiseObj(i*(height/20)); } } void draw() { mousePos.addLoc(mouseX,mouseY); if(mousePressed) for(int i = 0; i < 20;i++) noises[i/*int(random(19))*/].enableClick(); for(int i = 0; i < 3;i++) { set(int(random(1,500)), int(random(1,400)), noises[0].randColor2()); } updatePixels(); for(int i = 0; i < 20;i++){ //noises[i].getMouseMovement(mousePos.hasMouseMoved()); noises[i].calcWave(); noises[i].renderWave(i*25, i*25); } } /* Ideas: If the pixels near the top become too white, have it auto refresh (this is done with the pixels array and filling/updating it Other ideas are to have a filter applied when you click through the pixel thing, such as changing random pixels to be different colors Could also have a slinky thing pulse across the screen at a random (0,y) location to start and go off the screen, which will go no matter the # of clicks */