# ContactGloveOSC セットアップ

ここではContactGloveOSC のVRChat用Avatarへの導入方法について記載します。

セットアップ動画 (opens new window)もご参照ください。

前提環境

(2024/7/25 更新)

  • VRChat Creator Companion:v2.3.2
  • Unity:2019 4.31f1 / 2022 3.6f1 / 2022.3.22f1
  • VRChat Package Resolver Tool
    • v0.1.26:Unity 2019 4.31f1
    • v0.1.27:Unity 2022 3.6f1
    • v0.1.29:Unity 2022.3.22f1
  • VRChat SDK (-Base/-Avatar)
    • v3.4.2:Unity 2019 4.31f1
    • v3.5.0:Unity 2022 3.6f1
    • v3.6.1:Unity 2022.3.22f1
  • Modular Avatar:v1.9.13

# Avatar用Projectの作成

既に環境設定済みかつ既存のAvatar用Projectを作成済みの方は、ContactGloveOSCの導入へ進んでください。

Project作成手順
  • VRChat Creator Companionのインストール

    • こちら (opens new window)よりVRChat Creator Companion(以下:VCC)をダウンロードしてインストールしてください。
  • Unityのインストール

    • Unity本体のインストールに関してはリンク先の”Set UP”の項目をご確認ください。 
      Set UP (opens new window)
  • Avatar用Project作成

    • 新規作成の場合のUnityバージョン選択について記載します。
    • 2023/12現在、特別な理由がない限り Unity 2019 4.31f1 で作成することを推奨します。
    1. VCCのProjects >「Create New Project」を押します。

      ProjectCreate_1

    2. 「Avatars」を選択します。(利用するUnityバージョンごとに選択する項目が異なります)

      • Unity 2019 4.31f1 を利用する場合は下
      • Unity 2022 3.6f1 を利用する場合は上
        ProjectCreate_2
    3. 任意のProjectNameを設定します。

    4. 「Create Project」を押し、Avatar用Projectを作成します。

# ContactGloveOSCの導入

  • Modular Avatarの導入

  • ContactGloveOSCの導入 VCC経由でアバタープロジェクトにインストールします。

ContactGloveOSC VCCへの導入
  • こちらをクリックします。
  • ブラウザがVCCの起動を求めるので赤枠をクリックします。
    ContactGloveOSC_InstallVCC_1
  • VCCが起動し、画像のようなウィンドウが出現するので赤枠をクリックします.
    ContactGloveOSC_InstallVCC_2
  • VCCにContactGloveOSCが登録されます。
  1. Manage Project をクリックします。
    ContactGloveOSC_InstallVCC_2
  2. Manage Packages 内に ContactGloveOSC があるので、右端の (+) をクリックしてプロジェクトに追加します。
Manage Packagesの一例 ( Unity 2019.4.31f1 )
アバター/Unityのバージョンによって、必要パッケージとそのバージョンは異なります。
ご利用のアバターのセットアップ方法をご確認ください。
Manage Packages

ContactGloveOSC 導入に関する注意

  • アバターの情報を編集するため、VCCを使用して作業を行う前に必ずバックアップをとってください。

    calibration
  • VCC対応版以前の旧ContactGlove用OSCギミックとの互換性はありません。

  • 旧ギミックを設定済みのAvatarにContactGloveOSCを導入する場合は、該当AvatarのバックアップProjectファイルを複製し、複製したProjectを利用して導入を行ってください。

# ContactGloveOSC 設定手順

手順の流れは以下の図のようになります。

ContactGloveOSC_AutoSet_workflow

# [ 1 ]Automatic Setup Avatarを利用した自動セットアップ

  1. Unityウィンドウのタブに"ContactGloveOSC"という項目が現れます。
ContactGloveOSC_setup_1
  1. Automatic Setupを選択します。
ContactGloveOSC_AutoSet_1
  1. Automatic Setupウィンドウが表示されます。
ContactGloveOSC_AutoSet_2
  • (Select Languageから日本語を選択します)
ContactGloveOSC_AutoSet_3
  1. HierarchyのアバターをAvatarフィールドにドラッグアンドドロップします。
ContactGloveOSC_AutoSet_4
  1. ContactGloveOSC 設定を調整します。

    ContactGloveOSC_AutoSet_5

    • Full ver

      • 同期パラメータ(177bit)を利用します。
      • 多くのパラメータを利用して詳細なOSCハンドトラッキングを行います。
    • Lite ver

      • 同期パラメータ(107bit)を利用します。
      • Full ver よりも少ないパラメータでOSCハンドトラッキングを行います。
      • 親指、薬指、小指の曲げ/伸ばしが0/1の表現になります。
    • [実験的]ハンドサインを設定する

      • OSCハンドトラッキング時にハンドサインを行う際に有効化します。

        ContactGloveOSC_AutoSet_6

      • ハンドサインを行った際に、手の形を指定したAnimationで固定することが出来ます。

        • 実験的実装であり、元のアバターの実装次第で上手く動作しない可能性があります。
  2. 「自動セットアップ」ボタンを押します。

ContactGloveOSC_AutoSet_7
  1. しばらくするとセットアップが終了し、ステータスにメッセージが表示されます。

    • 初回実行の際はコントローラを複製した旨が追記されます。
    成功するとステータスに以下のようなメッセージが表示されます。

    ContactGloveOSC_AutoSet_8
    [実験的]ハンドサインを設定するを有効化した場合、ステータスは以下のようになります。

    ContactGloveOSC_AutoSet_9

アバターにギミックが組み込まれました!🎉


# [ 2 ]アバターのアップロード・ギミック有効化

  1. アバターをアップロードします。

  2. VRChat内で改変したアバターに着替えます。

  3. ActionMenu(リングメニュー)を開き、以下を実行します。

    1. Expressions > [CGOSC]Enable の項目があることを確認する。
    2. Options > OSC > トグルを "Disabled" にする。
    3. Options > OSC > "Reset Config" を押す。
    4. Options > OSC > トグルを "Enabled" にする。

      WARNING

      手順2.~4.はアバターを更新した場合にも必ず行ってください。ギミックが上手く動作しません。

  4. OSCハンドトラッキングの有効化/無効化

    • [CGOSC]Enable:ONにすると、ContactGloveのOSCを利用したハンドトラッキングを行います。
    • [CGOSC]Enable:OFFにすると、アバターに設定された従来のハンドトラッキング&ハンドサインを行います。
      • [CGOSC]Enable:OFF時は、様々なコントローラで従来通りの利用が可能です
        • 例)
        • ContactGlove (Indexエミュレーション)
        • Index Controller
        • その他 他社製コントローラ
    ON
    [ ContactGlove-OSC ]
    OFF
    [ ContactGlove ( Index-Emulate ) ]
    or
    [ Other-Controllers ]
    ENABLE DISABLE

    セットアップ時に"[実験的]ハンドサインを設定する"を有効化した場合

    [CGOSC]Enable:ON時にハンドサインを行うと、アバターに元々設定されていたハンドサインで手の形が固定されます。

    2024/7/25のVRChat(Open-Beta)2024.3.1における動作

    • [CGOSC]Enable:ONにすると、ContactGloveのOSCを利用したハンドトラッキングを行います。
    • [CGOSC]Enable:OFFにすると、SteamVR skeletal hand trackingを利用した指の関節ごとの曲げ動作を行います。

ContactGloveOSCによるハンドトラッキングが作動するようになりました!🎉

# [ 3 ]Gesture Toggle (OSC) バインド設定

ContactGlove-OSCハンドトラッキング時にGestureToggle機能を利用する際は、DivingStationでContctGloveOSC用の独自Gesture Toggleバインド( = Gesture Toggle (OSC) )を設定する必要があります。

[手順]

  1. DivingStationを開きます。

  2. コントローラ (タブ) > 設定 をクリックします

    ContactGloveOSC_setup_20

  3. ボタンのバインディング をクリックします。

    ContactGloveOSC_setup_21

  4. ポップアップしたウィンドウの下部から VRChat を探します。

    ContactGloveOSC_setup_22

  5. [OSC]ジェスチャー固定を有効化/無効化( = Gesture Toggle (OSC) )バインド に、VRChatのバインドで普段GestureToggleに割り当てているボタンを割り当てます。

    ex) 普段GestureToggleに割り当てているボタン = Aボタン の場合

    バインド 割り当てボタン
    VRChat GestureToggle Aボタン
    ContactGlove ボタンバインド Aボタン ボタン(下)
    ContactGlove VRChatバインド Gesture Toggle (OSC) ボタン(下)
  6. VRChatで対応アバターに着替え、[CGOSC]Enable:ONにした上で、バインドを割り当てたボタンを押します。

    • 割り当てたボタンを押すとContactGlove本体が振動し、表情固定が有効/無効化されます。
    • セットアップ時に"[実験的]ハンドサインを設定する"を有効化した場合は、同時にハンドサインを固定することが出来ます

ContactGloveOSCでOSCハントラ時にGestureToggleが作動するようになりました!🎉

セットアップ完了!

お疲れ様でした。セットアップは以上で完了となります! 🎉

アバターで指を動かしましょう👉