CityCompilerを使ってMikuMikuStudioでProcessingを動かす

CityCompilerOnMikuMikuStudio OpticalFlow from Yasuto Nakanishi on Vimeo.

CityCompilerはjMonkeyEngineというゲームエンジンを使っていますが,同じゲームエンジンを使ったプロジェクトにMikuMikuStudioがあります.MikuMikuStudioは,MikuMikuDanceのデータを読み込んで表示することができますが,jMonkeyEngineはJavaで書かれていて,Androidのアプリを作ることもできます.そうして作られているのがTinyARというAndroidアプリで,スマホの中でミクさんが踊る様子を色んな方向から見ることができます.

MikuMikuStudioはNetBeansをベースにつくられた開発環境jmonkeyplatformをベースにつくられた開発環境です.ふだんCityCompilerを使う時はEclipseを使って開発しているのですが,MikuMikuStudioにCityCompilerのクラスが使えるようにライブラリなどをコピーして,使ってみました.

まず,仮想カメラをミクさんの前に置いて,後ろに巨大スクリーンを置きました.あとミクさんの周りを動くカメラとディスプレイも置いてみました.特に理由はなかったのですが,別のプロジェクトでオプティカルフローのことを調べていたので,OpenProcessingのサイトにあったProcessingのスケッチOptical Flowをダウンロードしました.

仮想カメラからの画像をこのスケッチに渡すように設定して,それぞれのディスプレイに結果を表示してみました.ミクさんとカメラとディスプレイの位置は最初は適当に配置しますが,GUIを使ってディスプレイを移動して試行錯誤している間に「予期せぬ発見」がありました.

ミクさんとカメラとディスプレイがうまく並ぶと,合わせ鏡のように映像の中に映像がはいっていきます.ミクさんの動きに反応して描画されたグラフィクスの動きにさらにオプティカルフローの処理がかかって,色の線の爆発?が起きるようになりました.

最初はフェス会場にミクさんを降臨させて,巨大ディスプレイでミクさんの姿にエフェクトがかかった演出の様子をシミュレーションしようとしたのですが,機材の空間的な配置を検討している中で,まったく予期しないアイデアが降臨しました.これも神々しいミクさんのお陰だと思います.

ワークショップご参加ありがとうございました!

11月の24(土)と25(日)にワークショップ「空間をプログラミングしよう!」,盛況のうちに開催することができました.

数時間のプログラミングの作業の中で,我々の想像を超えたさまざまなシミュレーションを作っていただきました.この画像は参加者の皆さんのコードを実行した様子を幾つか抜粋したものです.

Processingの画面が様々な建築物にプロジェクションされたり,色々な大きさのディスプレイに表示されたり.またプロジェクタやカメラが空間の中を移動したりすることで,空間と情報が渾然一体となった環境をつくり出しています.

CityCompilerを使って仮想空間でシミュレーションを色々とやってみると,「予期せぬ発見」をすることがあります.
仮想プロジェクタ・ディスプレイや仮想カメラが仮想空間の中で動作するのを見て,あたまの中だけで考えていたのとは違ったアイデアが広がっていくことを楽しんでいただけたように思います.CityCompilerを使って皆さんの想像力・創造力が発揮された瞬間を見ることができて,楽しい2日間を過ごさせていただきました.

ご参加いただいた皆さん,どうもありがとうございました.

このワークショップでのフィードバックを受けて,来年の1月19(土)にまたワークショップを開催予定です.またこのサイトでもお知らせをさせて頂きます.