yoppa.org


immediate bitwave

Blog

プロジェクション・マッピング基礎練

今年の多摩美のopenFrameworksの授業(Media art II)では、プロジェクション・マッピングをとりあげていこうという方針になった。ところが、実は今まで知識としてはプロジェクション・マッピングについて知っていても、自分でゴリゴリとプログラムを書いてこなかった。主な理由としては、身近にプロジェクションしながら試す環境が無いというのが大きい。これではいかんということで、奮発して小型プロジェクターを購入してみた。

TwitterとFacebookでおすすめの小型プロジェクターを募ったところ、複数の方からQUMI Q5が良いという評判が寄せられた。それではということで、amazonで購入。あわせて、SLIKのミニ三脚も買ってみた。

数日で届いたので早速試してみたところ、期待していた以上に明るい。そして小さくて軽い。評判が良いだけあると実感。手元にあったNexus 7と大きさを比較してみると、こんな感じ。

Untitled

道具は揃ったので、早速プロジェクション・マッピングの基礎練習。まずは、基本中の基本ということで、透視変換をつかってプロジェクターとは並行になっていない平面にピッタリと画像を投影する実験。本来はOpenCVで行列の計算をしなければいけない(と思う)のだが、便利なアドオンを開発している人が既にいるので、それを利用。julapyさんによるofxQuadWarpを使用すると、とても簡単に実現できる。

サンプルをちょっと修正して、ルービックキューブにoFロゴを投影してみた。プロジェクターが明るくて鮮明なので、なかなか良い感じ。

Untitled

ここまで出来ると、いよいよ立体の複数の面にマッピングしたくなってくる。より本格的なキャリブレーションのシステムが必要となってくるのだが、まずは出来合いのプログラムを活用してみた。Kyle McDonaldさんが、YCAM InterLabに滞在して制作したプロジェクションマッピングのためのツールキット、「mapamok」を使用して、実験してみた。

Google Sketchupでルービックキューブをモデリングして(といっても、立方体を並べただけだけど)、それをモデルとしてmapamokに読み込む。キャリブレーションは慣れるまではちょっと戸惑うのだけれど、一度コツをつかめば意外と簡単だった。それぞれの頂点を選んで投影された図形をみながら調整していく。10分ほど調整して、ルービックキューブにピッタリとマッピングできた。サイバー!

Untitled

アニメーションしてみるとこんな感じ。

なかなか楽しい!

まずは、既存のツールで試せたので、次のステップとしては自作のプログラムでマッピングできるようにしていきたい。