はじめに
拙作のEVMC4UとBoltを連携させたいというツイートを見かけました。
Boltは、最近Unity Technologiesに買収され無償化された、ビジュアルスクリプティング環境です
私自身Boltを触ったことがあまりないのですが、手探りで試してみましたので記録しておきます。
環境
- Unity 2020.1.2f1
- EVMC4U v3.7
- Bolt Version 1.4.13 - September 28, 2020
EVMC4Uのセットアップ
EVMC4U v3.7は以下からダウンロードして使用します。
booth
https://booth.pm/ja/items/1801535
もしくはgithub
https://github.com/gpsnmeajp/EasyVirtualMotionCaptureForUnity
EVMC4U自体のセットアップは、UnityPackageを導入した直後に出るチュートリアルに従ってください。
Bolt のセットアップ
導入
Boltは、AssetStoreで導入後、PackageManagerから導入します。
Download後、Importできなくて困ったのですが、Toolsから「Install Bolt」をクリックで導入されるようです。
その後、セットアップに入るのですが、重要な手順がいくつかあります。
Programmer Namingを選択してください。
Assembly Optionsは特に変更ありません
Type Options にてEVMC4U関係のTypeを追加してください
完了
作例
MIDI CC値を取り出す
直接取り出せます。
キャリブレーション状態を取り出す
トラッカーの姿勢をTransformにセットする
直接取り出せますが、少し工夫が必要です。
どのデバイスが、どの位置に格納されるかは一定ではないため、リストをスキャンして、予め設定したシリアル番号に一致する姿勢にセットしています。
コントローラー情報を取り出す
以下の補助スクリプトを導入してください。
https://github.com/gpsnmeajp/EVMC4U-Bolt-Bridge/blob/main/InputReceiverForBolt.cs
適当なオブジェクトにアタッチし、ReceiverにEVMC4UのInputReceiverのGameObjectを登録します。
そして以下のように組むと、スティック操作でオブジェクトが動きます。
#EVMC4U pic.twitter.com/PHJCjcHXKQ
— Segmentation Fault (@Seg_Faul) November 8, 2020
入力状態は以下のようにInspectorから確認できます。
執筆時点のバーチャルモーションキャプチャーの動作に合わせて作成しています。