# ContactGloveOSC セットアップ

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

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

前提環境

(2023/12/ 更新)

  • VRChat Creator Companion:v2.2.3
  • Unity:2019 4.31f1 / 2022 3.6f1(※)
  • VRChat Package Resolver Tool
    • v0.1.26:Unity 2019 4.31f1
    • v0.1.27:Unity 2022 3.6f1
  • VRChat SDK (-Base/-Avatar)
    • v3.4.2:Unity 2019 4.31f1
    • v3.5.0:Unity 2022 3.6f1
  • Modular Avatar:v1.8.4

Avatar用ProjectのUnityバージョンについて

※2023/12現在、新規作成Project/既存ProjectへのContactGloveOSC導入は
Unity 2019 4.31f1 で行うことを推奨します。

詳細
  • VCC側の推奨Unityバージョン更新に伴い、UnityとAvatar用SDKのバージョン不一致や、Unity2022への移行に伴うアバターアップロード時のcrash等が発生する場合があるため。
  • ContactGloveOSCのギミックや同梱のエディタ拡張機能については動作確認済みです。

# 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-Native ]
    OFF
    [ ContactGlove ( Index-Emulate ) ]
    or
    [ Other-Controllers ]
    ENABLE DISABLE

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

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

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

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

ContactGlove-Native(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が作動するようになりました!🎉

セットアップ完了!

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

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