VRChatでのギターやベース演奏、あるいはVRバンドのライブを見て、「もっと動きがあれば、さらにかっこいいのに」と感じたことはありませんか?
特にデスクトップモードの演者は、どうしても棒立ちのまま動きがなくなってしまいがちです。 もちろん、これは演者自身も「なんとかしたい」と感じていることでしょう。
今回ご紹介するのは、Sheila |シラタキさんが制作した『EmobadgeGuitarGimmick(VRCEGG)』です。
このギミックは、もともと手に追従する楽器を簡単に導入できるツールとして登場しました。7月にバージョン2にアップデートされ、デスクトップモードでもアニメーション再生が可能になるなど、さらにパワーアップしています。
そもそも何故デスクトップで演奏する選択肢があるのか
「でも、VRで演奏すれば自然に動きがつくじゃないか」、そう思う方もいるかもしれません。
実は、VRヘッドセットを被りながらの演奏は、難易度が高いのです。
Quest 3の登場でカラーパススルー機能が向上し、以前よりは格段に演奏しやすくなりました。 しかし、それ以前の機種ではヘッドセットのわずかな隙間から手元を覗き込んだり、コントローラーを体に括り付けて無理やりトラッキングさせたりと、多くの工夫が必要でした。
ハードルは低くなったとはいえ、「頭に500g以上の機器を載せ、視界が制限された状態で楽器を演奏する」ことの難しさは、VRヘッドセットを被ったことがある方なら想像に難くないでしょう。
だからこそ、安定したクオリティの演奏のために、今もデスクトップモードを選ぶ演者は多いのです。 『EmobadgeGuitarGimmick』は、そんなデスクトップとVR、双方の演者が抱える悩みを解決し、表現の幅を大きく広げてくれる素晴らしいギミックです。
それでは早速、導入方法を見ていきましょう。
『EmobadgeGuitarGimmick』導入方法
前提として、あらかじめアバターにModular Avatar(MA)を導入しておいてください。導入については下記の記事を参考にしてください。
Unitypackageをインポートすると、「VRCEGG」フォルダができているので、ここを開きます。

フォルダ内にあるピンク色のPrefab(左がベース、右がギター)から、使いたい方を選びます。導入方法は基本的に変わらないので、今回はギターで説明していきます。

Prefabを、ヒエラルキー上にあるアバターのルート(一番上の階層)へドラッグ&ドロップしてください。

先ほどアバターに追加したPrefabの階層を、「Guitar_GimmickRoot」から順に「ここにギターを入れる」というオブジェクトが見つかるまで開きます。


使いたいギター(またはベース)の3Dモデルを、この「ここにギターを入れる」オブジェクトの中へドラッグ&ドロップします。

シーンビュー上で、あなたのギターモデルがピンク色のシルエットに合うように、位置とスケールを調整します。
公式説明書では、ナット(0フレット)と太ももがあたる部分の位置を揃えるのが目安とされています。あとは指板が見えるように、前後や回転を調整しましょう。


アコースティックギターを使う場合は、Prefab内にある「サンプル:アコギ設定位置」を表示させてから調整してください。

ヒエラルキー上で「Physbone」というオブジェクトを開きます。 中には「RootTransformに設定」と書かれたオブジェクトが6つあります。

あなたのアバターのArmatureの中から、指定されたボーンを、これら6つのオブジェクトの「VRC Phys Bone」コンポーネント内にある「Root Transform」の欄に、それぞれドラッグ&ドロップで設定します。

設定するArmature内のオブジェクトは、上から「右上腕」「左人差し指の根元」「左小指の根元」「左中指の根元」「左薬指の根元」「左親指の根元」に相当するものです。
多くのアバターは上記の名前で設定すれば問題ありません。しかし、アバターによって名前が違う場合は、この日本語解説を参考に読み替えてください。なお、左利きバージョンを使っている方は左右を読み替える必要があるため気をつけましょう。

また各指のヒエラルキー上の順序もギミック内の順序と同じになっていることが多いです。
あとは、アップロードすればUnityでの作業が終わります。
導入時のトラブルシューティング
なお制作者のマニュアルによると、「アバターによってはUpper_arm.Rの下層にある、Support Boneにより正しくPBが設定されない場合」があるとのこと。


この場合は、「Upper_arm.R」の Ignore Transformに、Upper_arm.Rの下層にあるLower_arm.RとHand.R以外のBoneを設定します。Ignore TransformのElementは27が上限のため、MAによりBoneが追加され27を越える場合は、Upper_arm.Rより下層に追加されるBoneを調整します。

必要に応じて、上記4つのコライダーを設定してください。
衣装貫通コライダーは、とりわけスカートの場合、座り/立ち姿勢で差が出るので、あらかじめ立って演奏するのか座って演奏するのかを決めた上での設定を推奨します。

ベースの場合は、追加で弦のコライダーを設定しても良いです。