Vector_vertex02

PVector pos;
PVector vel;
PVector fri;
float r;

void setup() {
  size(500, 500);
  colorMode(HSB, 360, 100, 100, 100);
  pos = new PVector (0, 0);
  vel = new PVector(1, 1);
  background(0, 0, 100);
}

void draw() {
  fill(0, 0, 100, 3);
  rect(-50, -50, width+50, height+50);

  fri = new PVector(random(0.01, 0.1), random(0.01, 0.1));

  pos.add(vel);
  vel.add(fri);

  r = atan2(mouseX, mouseY);

  pushMatrix();
  translate(pos.x, pos.y);
  rotate(r);

  beginShape();
  vertex(pos.x*2, pos.y*2);
  vertex(pos.y*-2, pos.x*-2);
  endShape();

  beginShape();
  vertex(pos.x*2, pos.y*-2);
  vertex(pos.y*-2, pos.x*2);
  endShape();

  popMatrix();

  if (pos.x < 0 || pos.x > width) {

    vel.x = - vel.x;
    vel.y =- vel.y;
  }
}

高尾さんに「摩擦」とか「重力」とかの変数を付け加えると面白くなるよと言われたから,昨日のスケッチにPVector velを追加してみた.そうしたら,昨日は規則だった動きだったけど,今日のスケッチは不規則な動きをするようになった.もちろん,randomを使ったからというところもあるのだけれど,それでも,自分がこんな動きをつくれるようになったんだと,1日1スケッチをつづけることで,自分のなかでProcessingスキルと考え方が育っているなと実感した.自分で書いたコードについてどうなっているのかはまだわからないところがあるけれど,それでも動きをつくるということは少しできてきた.