#author("2019-05-22T18:21:24+09:00","default:qua","qua") [[Processing/3.ライブラリの利用]] #author("2019-05-22T18:22:56+09:00","default:qua","qua") #navi(Processing/3.ライブラリの利用) * 3-3-4 ステレオ画像 [#q5fa0a04] Camera 3D ライブラリはステレオ画像の生成を行う。簡単な赤・青の色付き眼鏡で見るような画像の例を示す。setup()内にcamera3Dに関する記述が増えたのと、preDraw()という手続きが増えたところが通常の3Dと異なっている。ステレオ画像を作成するためには、左右の目で見るための2つの画像を生成する必要がある。そのためにdraw()が1フレーム当たりに2回呼び出される。 そこで、1フレーム当たり1回だけ行うべき操作はpreDraw()またはpostDraw()の中に記述しておく。preDraw()はdraw()を実行する前、postDraw()は実行した後に実行される。 import camera3D.Camera3D; Camera3D camera3D; float th=0, z = -400; void setup() { size(800, 800, P3D); camera3D = new Camera3D(this); camera3D.setBackgroundColor(color(192)); camera3D.renderDefaultAnaglyph().setDivergence(1); } void preDraw() { z += 3; th += 0.1; } void draw() { strokeWeight(8); stroke(0); fill(255, 255, 255); translate(width/2, height/2, z); rotateY(th); box(100); }