プログラミング知識不要! ゲームエンジンUnityを応用したVJ映像作成ツール“vjkit”でキミもヤバい映像を出せちゃうぜ

2013年4月16日、東京都のベルサール汐留で、ゲームエンジン“Unity”の主催する技術カンファレンス“UNITE Japan 2013”2日目が行われた。ユニティ・テクノロジーズ・ジャパンの大前広樹氏が講演したのは……え、ゲームじゃなくてVJっスカ?

●これもまたゲーム技術のナイスな応用

DSCF8693.JPG

 2013年4月16日、東京都のベルサール汐留で、ゲームエンジン“Unity”の主催する技術カンファレンス“UNITE Japan 2013”2日目が行われた。
 ユニティ・テクノロジーズ・ジャパンの大前広樹氏が講演したのは、インタラクティブアートのワークショップとクラブイベントが合体した“fuZe powered by Unity”なるイベントと、そのために作られたUnity用のテンプレート&サンプル集“vjkit”について。

 「ゲーム関係ないじゃーん」と思うかもしれないが、ビデオゲーム業界というのは映像+音をリアルタイム処理しつつ人間からの入力(コントローラー)で制御することを極めまくってきたわけで、そこで使われている技術というのはいろいろ応用が効く。

 とくにクラブなんかで流れるVJ映像は、フツー3DCGソフトとエフェクトソフトでうんうん唸りながらあれこれ作って、最後に映像ファイルに書きだしたりするんだけども(記者は古い実写映像なんかを加工する派ですがそれはさておき)、そこでやっていること、3D空間に大量に物を出したり、なんか変化させたり、その映像にフィルターエフェクトをかけたりなんてのはビデオゲームなら常にやっていることで、しかも普通のVJ映像みたいなプリレンダーCGではなく、リアルタイムにできてナンボぐらいのことなのだ。

 というわけで、VJとかそれにリアルタイム入力なんかを加えたインタラクティブアートがゲームと近いのはわかる。とてもよくわかる。でも、なんでそんな方面のイベントをすることにしたのか? 大前氏いわく、そこにはUnity Japanに“色んな角度から才能を持った人にスポットライトを当てたい”という考えがあるからだという。


DSCF8696.JPG DSCF8698.JPG

 Unityが“ゲーム開発を民主化する”という理念を持っていることは有名だが、これを見方を変えて“これまでゲーム開発が特別なものであるせいで自分の才能を発揮できなかった人にツールを提供する”と切り出してみるとかなり近い。

 だが、ゲーム開発コミュニティは盛り上がっていても、その隣接分野の開発コミュニティの動向は「うーん?」という感じなのが実情。
 そりゃ「ArduinoとMax/MSPを組み合わせて~~」なんて盛り上がってる人もいるんだろうけど、CEDECみたいに4000人以上が参加するカンファレンスが毎年行われるなんてことはないんじゃないだろうか。少なくとも、「俺の考えた最強のゲーム」をノートにこっそり書いた人数の方が、「俺の考えた超ヤバいインタラクティブアート」と描いた人数より圧倒的に多いと記者は思う。

 ならばインタラクティブアートを作りたい人のための場所を作ろう、ということで立ち上がったのが、fuZeなのである。
 これはゲームにもまったく見返りがない話ではない。90年代以降のゲームクリエイターには、インタラクティブアート方面での才能を発揮する人もいる(スライドでは水口哲也氏と故・飯野賢治氏が例として挙げられていた)。ならば同じようにインタラクティブアートを盛り上げていけば、そちらの方面からビデオゲームと呼び得るようなものが出てくるかもしれない……。


DSCF8699.JPG DSCF8700.JPG DSCF8701.JPG

 かくして誕生したfuZeは、全4回のワークショップと、そこで作ったインタラクティブ映像を実際にVJに使っちゃうクラブパーティーの全5回構成のイベントとなる。
 2月から3月にかけて火曜の夜という時間帯に行われたのだが、これは意図的なもので、平日の仕事・学校帰りなどに寄って、単に講演を拝聴するのではなく、参加者の創造性を刺激して実際に制作を行なってもらうようなイベントにするためだったという。


DSCF8702.JPG DSCF8704.JPG DSCF8705.JPG DSCF8703.JPG

▲インタラクティブアート、VJ、アーティスト、パントマイマー、映画監督……ガチな人が関わっているけど楽しくエッセンスに触れられちゃうのであーる。

 とはいえ、一回2時間のワークショップでやれることは限られている。そこで話を早くするために作られたのが、VJっぽいことをやるための機能を簡単に実現するvjkitだ。
 例えば「音に対して反応するオブジェクトを作りたいんですけど」なんて時に、フーリエ変換の基礎のお勉強からやってたのでは永久に完成しない。だからvjkitには、“入力された音を低音域・中音域・高音域にいい感じに成分分解し、スレッショルド(反応しない値)とか差分だけ取り出すのなんかも設定できて、いい感じのパラメーターにしてくれる”ような機能が最初から入っている。これから得られた値を3Dオブジェクトの箱の大きさ変動にあてれば、それだけで“音に対してなんかでかくなったり小さくなったりする箱”の完成、なのである。


DSCF8706.JPG DSCF8707.JPG DSCF8708.JPG

▲「大丈夫、ちょーっとだけプログラミング覚えればいいから。っていうかスクリプト書くなんてプログラミングの内に入らないから」なんてわけにはいかないので、簡単に体験できるキットとして出来たのがvjkit。モーションキャプチャーしたアニメーションデータなども入っている。ゴイスー。

DSCF8712.JPG DSCF8713.JPG DSCF8714.JPG DSCF8715.JPG

▲プログラミング知識は不要。「パラメーターをいじるとなんか対応したものが変化するよね」ぐらいのことはわかっていた方がいいが、プログラミングコードを一行も書かずに、音に反応して震える(大きさが変化する)箱がなんかサイバーな文字が並ぶ球の中でビヨンビヨンするそれっぽい映像の完成であーる。

DSCF8718.JPG

 そんなわけで、vjkitは豊富なそれっぽいプリセットを用意し、機能のドラッグアンドドロップとパネルでのパラメーター設定だけで大体のことができるようになっており、ゲームコントローラーを使ってコントロールするなんてことも可能。実際に非ゲーム系のプログラマーのヒトが制作した、かなりそれっぽいアーティスティックな映像なども講演では披露された。

 ちなみにこのvjkit、ゲームにも応用が効くようで、実際に大前氏は個人的に作ったゲームのプロトタイプ(チューブの中を壁を避けながら進んでいくというもので、インディーゲーム『Audio Surf』のように、鳴っているサウンドに対していい感じに壁が生成される)に先ほどのサウンド解析機能を取り込んで使ってみたとか。

 個人的にはシーンの動的なブレンド機能などもつくと本当にVJソフトっぽくていいな、とか本筋ではないことを考えてしまうぐらい、結構イケてるツールになっているvjkit。「お?」と思った人は、今週末にとりあえず落としてみてはいかがだろうか?