xxxxxxxxxx
let points = [];
let palette;
var mic;
function setup() {
createCanvas(800, 800);
background(250);
mic = new p5.AudioIn();
mic.start();
//blendMode(ADD);
palette = [
[250, 0, 0],
[250, 250, 0],
[0, 0, 250],
];
// for (let i = 0; i < 120; i++) {
// points.push({
// rad: 2 * PI * random(),
// r: 0 ,
// color:random(palette),
// size:1,
// vr:random([1])
// });
//}
}
function draw() {
//clear();
background(250,10);
points.push({
rad: 2 * PI * random(),
r: 100 ,
color:random(palette),
size:4,
vr:random([1,2,3,4,5,6,12])
});
//macから音声を取得
var sound_volume = mic.getLevel();
var change_sound_volume = map(sound_volume,0,1,0,1000);
text(change_sound_volume,10,10);
let m = sound_volume;
//fill(250, 10);
for (let i = 0; i < points.length; i++) {
let r = points[i].r;
let rad = points[i].rad;
noStroke();
fill(points[i].color);
rect(r * sin(rad) + width / 2, r * cos(rad) + height / 2, points[i].size, points[i].size);
points[i].r += points[i].vr/10;
points[i].rad += m;
}
}
function mouseClicked(){
// for (let i = 0; i < 20; i++) {
// points.push({
// rad: 2 * PI * random(),
// r: 0 ,
// color:random(palette),
// size:15,
// vr:3*random()
// });
// }
points.forEach(obj => {
obj.color = random(palette);
})
}