Processing の examples その0 (3D-Camera-MoveEye)

コードはこんなの

/**
 * Move Eye. 
 * by Simon Greenwold.
 * 
 * The camera lifts up (controlled by mouseY) while looking at the same point.
 */

void setup() {
  size(640, 360, P3D);
  fill(204);
}

void draw() {
  lights();
  background(0);
  
  // Change height of the camera with mouseY
  camera(30.0, mouseY, 220.0, // eyeX, eyeY, eyeZ
         0.0, 0.0, 0.0, // centerX, centerY, centerZ
         0.0, 1.0, 0.0); // upX, upY, upZ
  
  noStroke();
  box(90);
  stroke(255);
  line(-100, 0, 0, 100, 0, 0);
  line(0, -100, 0, 0, 100, 0);
  line(0, 0, -100, 0, 0, 100);
}
  • fill()は描画するものの色を設定するもんらしい。引数が1個だと白黒で、3個だとRGBぽい。
  • camera()は最初引数3つが視点がある座標、次の3つが見る先、最後の3つが視点の上げ下げ。
  • noStrokeとboxで境界線なしの立方体書いてる。
  • 最後に座標わかりやすくするためにxyz軸を書いてる。

以上。