Tokyo BLOCKS Hakathonに参加しました
HoloToneというものを作りました。
BLOCKSという押し込みもできるマルチタッチデバイスのビジュアライズ的なものをやってみました。
ホロレンズ越しの画像ではMixedRealityな表現も。
TouchDesignerとHoloLensを繋ぐ
これをVJライブパフォーマンス的には共有したいので、画面に出すのですが
そこにTouchDesignerでのエフェクト掛けてみたいなぁと思った次第。
Mixed Reality Captureを使う
HoloLenseにWebブラウザで直接アクセスすると
LivePreviewができます。
これで画面がとれます。リアルタイムといっても1秒くらいラグがあります。
(Windows Mixed Realityだからもしかしてこれから出てくるデバイスとかでも使えるのだろうか?)
強引な繋ぎ方
TouchDesignerにはスクリーン画面キャプチャ機能があるので、
表示しているWebサイトをそのまま取り込んでしまった。
もっと良い方法があれば知りたいところ。
ScreenGrabのTOPを使って、キャプチャ位置をうまく調整
いけてない点(画面が狭くなる)
スクリーン画面キャプチャなので、作業領域が画面半分になり苦労したり。
右側のマシンで、画面右半分がキャプチャのためにとってあるので、
TouchDesignerの画面は左側半分で作業するという感じになってた。
いけてる点(複数接続や切断に強い=弱い連携)
端末側でLiveViewができない時でも強く接続しているわけではないので、安定している。
デバイスとか握ってしまって別ハードと連携とかだと、1対1接続しかできないとか縛りが多いことがよくあるので、(開発上の理由でそうなっているのだろうけど)
こういうWebッブラウザのようなゆるい接続形式だから、たぶん複数台とかでも取り込めたりするかもしれない。(通信帯域的に間に合えば)
ハッカソンの会場のような、
接続が不安定だったり、ドライバが想定外(複数マシンから接続とか)な状態で復帰しないとかは使いづらいことになるので、
こういうゆるい接続はローテクながらありかもしれない。
余談ですが、
BLOCKSも複数もPCから接続したり、複数PCに状態を送ることはできない。
今回のハッカソンでは、Maxでホストマシン1台と接続してOSCで飛ばすことで複数マシンで処理できるようにしていた。
実際、BLOCKSの接続でMaxがよく落ちるけど、HoloLensやTouchDesigner側はその影響を受けずに済むことができた。
BLOCKSもデバイスIDとPortだけ指定してUDPで入力情報を飛ばすだけみたいな機能があればよかったかもしれない。
(これはUSBとかBluetoothの問題でホスト切り替わり時にマスターとかスレーブとかどう変わるとかわかりにくいし)
->これやろうとするとBLOCKSそれぞれにホストPCが必要になるので、小さいマシンとかたくさんあればできるのだろうか。
他に工夫した点
HoloLensのライブストリーミングは遅延(ラグ)があるのですが、
BLOCKSの操作はOSC経由で送っているのでほぼリアルタイムです。
リアルタイムの変化を加えることで、遅延感を感じさせないようにしています。
実際には遅延があるけど、変化がリアルタイムなので気づきにくくなります。
MaxでBLOCKSのMultiTouchをOSCに変換
ここではudpsendを使って 7600ポートにそれぞれの値を出力
Select CHOPを使って変換
OSC CHOPではblocks数字で のフォーマットだったので、意味のある名前に変えて扱いやすくし
適宜フィルターとかいろいろ
TouchDesignerでOSCを受け取る
あとは画面を歪ませたり、波形を重ねたり
OSCでとったxy座標と押し込み具合で
歪ませたり、円を表示する位置や大きさ色を変えたりして重ねています。
若干フィルターでなめらかにしたり、フィードバックをかけて残像感を出したりして調整しています。
Filter CHOPを通したり、
パレットにあるFeedbackとか使うと見た目が良い感じになって楽しい。これで見栄えがすごく変わる。
押した時の反応のためのカーブ
BLOCKSは強めに押し込むと結構な深さまで値が取れる
で、強く押し込み続けるのは指に負担もかかるので、エフェクトが出やすいようにカーブかけてみたり。
を数式でわざわざ入れているのですが、CHOPでカーブとかの変換できないのかな?(なにかありそう)
カーブエディタみたいなのがあれば良いのだが。
歪ませている動画 http://www.youtube.com/watch?v=SjHBRmPdl6U
調整するとかなりいい感じで、押し込んだフィードバック(触覚感)と画面の歪み具合が良い感じに(楽しい)。
BLOCKS良いデバイスですね。
押し込みやマルチタッチ(15点までとれる)、LEDによる表示も簡単なので、
楽器やインターフェースのプロトタイプ作りとかに使えて便利。
複数繋ぐことで拡張もできるので、ちょっと足りないとかなら買い足せばなんとかなる感じ。
ソースなど
Tokyo BLOCKS Hakathonについて
こういうAudio Developerの集まりって日本だとなぜかあまりない気がするので、
もっと流行って欲しい。
自作楽器とか音楽プログラムとか、発表やアイデアがとても面白いと感じました。
微力ながらちょっと宣伝
もくもく会のようなものをやってます https://effectorhack.connpass.com/