# ContactGloveOSC Setup

Here, we describe how to integrate ContactGloveOSC into a VRChat Avatar.

Please also refer to the setup video (opens new window).

Prerequisites

(Updated 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

# Creating an Avatar Project

If you have already set up the environment and created an existing Avatar project, proceed to Installing ContactGloveOSC.

Project Creation Steps
  • Installing VRChat Creator Companion

  • Installing Unity

  • Creating Avatar Project

    • We provide instructions for selecting the Unity version when creating a new project.
    • As of December 2023, it is recommended to create the project with Unity 2019 4.31f1 unless there are specific reasons.
    1. Click on Projects in VCC, then press "Create New Project."

      ProjectCreate_1

    2. Select "Avatars" (the selection may vary depending on the Unity version used).

      • For Unity 2019 4.31f1, select the lower option.
      • For Unity 2022 3.6f1, select the upper option.
        ProjectCreate_2
    3. Set any Project Name.

    4. Press "Create Project" to create the Avatar project.

# Installing ContactGloveOSC

  • Installing Modular Avatar

  • Installing ContactGloveOSC Install it in the avatar project via VCC.

Installing ContactGloveOSC via VCC
  • Click here.
  • The browser will prompt to launch VCC, click the highlighted area.
    ContactGloveOSC_InstallVCC_1
  • VCC will launch, and a window like the image below will appear. Click the highlighted area.
    ContactGloveOSC_InstallVCC_2
  • ContactGloveOSC is now registered in VCC.
  1. Click on Manage Project.
    ContactGloveOSC_InstallVCC_2
  2. Inside Manage Packages, find ContactGloveOSC and add it to the project by clicking the (+) on the right.
Example of Manage Packages (Unity 2019.4.31f1)
※ Required packages and their versions may vary depending on the avatar/Unity version. Please check the setup method for your avatar.
Manage Packages

Note on ContactGloveOSC Installation

  • Before using VCC for editing avatar information, be sure to take a backup.

    calibration

  • Compatibility with the previous version of ContactGlove for OSC gimmicks is not guaranteed.

  • If you are installing ContactGloveOSC on an avatar with previously set up old gimmicks, duplicate the backup project file of the corresponding avatar and install it using the duplicated project.

# ContactGloveOSC Configuration Steps

The flow of the steps is as shown in the following diagram.

ContactGloveOSC_AutoSet_workflow

# [1] Automatic Setup using Automatic Setup Avatar

  1. In the Unity window, a tab named "ContactGloveOSC" will appear.
ContactGloveOSC_setup_1
  1. Select Automatic Setup.
ContactGloveOSC_AutoSet_1
  1. The Automatic Setup window will appear.
ContactGloveOSC_AutoSet_2
  1. Drag and drop the Avatar from the Hierarchy into the Avatar field.
ContactGloveOSC_AutoSet_4
  1. Adjust the ContactGloveOSC Settings.

    ContactGloveOSC_AutoSet_5

    • Full ver

      • Uses synchronous parameters (177bit).
      • Performs detailed OSC hand tracking using many parameters.
    • Lite ver

      • Uses synchronous parameters (107bit).
      • Performs OSC hand tracking with fewer parameters than Full ver.
      • Bending/straightening of the thumb, index finger, and little finger is represented by 0/1.
    • [Experimental] : HandSign Setup

      • Activates when performing hand signs during OSC hand tracking.

        ContactGloveOSC_AutoSet_6

      • You can specify an animation to fix the hand shape when performing hand signs.

        • Experimental implementation; may not work well depending on the original avatar's implementation.
  2. Press the "Auto Setup" button.

ContactGloveOSC_AutoSet_7
  1. After a while, the setup will be completed, and a message will be displayed in the status.
    • The first run will include an additional note about duplicating the controller.

Gimmicks have been incorporated into the avatar! 🎉


# [2] Upload Avatar & Enable Gimmicks

  1. Upload the avatar.

  2. Change into the modified avatar in VRChat.

  3. Open the ActionMenu (Ring Menu) and perform the following:

    1. Confirm that there is an item Expressions > [CGOSC]Enable.
    2. Go to Options > OSC > Toggle and set it to "Disabled".
    3. Go to Options > OSC and press "Reset Config".
    4. Go to Options > OSC > Toggle and set it to "Enabled".

      WARNING

      Perform steps 2 to 4 whenever you update the avatar to ensure proper operation of the gimmicks.

  4. Enable/Disable OSC Hand Tracking

    • Setting [CGOSC]Enable to ON enables hand tracking using ContactGlove's OSC.
    • Setting [CGOSC]Enable to OFF performs traditional hand tracking and hand signs configured for the avatar.
      • When [CGOSC]Enable is OFF, traditional usage is available with various controllers
        • Example:
        • ContactGlove (Index Emulation)
        • Index Controller
        • Other Controllers
    ON
    [ ContactGlove-OSC ]
    OFF
    [ ContactGlove ( Index-Emulate ) ]
    or
    [ Other-Controllers ]
    ENABLE DISABLE

    If "[Experimental] Enable Hand Signs" is activated during setup

    When [CGOSC]Enable is ON and hand signs are performed, the hand shape is fixed to the originally configured hand sign for the avatar.

    Behavior in VRChat (Open-Beta) 2024.3.1 as of 2024/7/25

    • [CGOSC]Enable: ON enables hand tracking using OSC for ContactGlove.
    • [CGOSC]Enable: OFF uses SteamVR skeletal hand tracking for finger joint bending movements.

Hand tracking with ContactGloveOSC is now operational! 🎉

# [3] Gesture Toggle (OSC) Binding Configuration

To use the Gesture Toggle feature during ContactGlove-OSC hand tracking, you need to configure a custom Gesture Toggle binding (= Gesture Toggle (OSC)) for ContactGloveOSC in DivingStation.

[Procedure]

  1. Open DivingStation.

  2. Click on Controllers (Tab) > Settings.

    ContactGloveOSC_setup_20

  3. Click on Button Bindings.

    ContactGloveOSC_setup_21

  4. Look for VRChat at the bottom of the popup window.

    ContactGloveOSC_setup_22

  5. Assign the button you usually use for GestureToggle in VRChat to the [OSC] Toggle Gesture Fix On/Off (= Gesture Toggle (OSC)) binding.

    Example: If the button assigned to GestureToggle in VRChat is A button,

    Binding Assigned Button
    VRChat GestureToggle A button
    ContactGlove Button Bindings A button Button (Down)
    ContactGlove VRChat Bindings Gesture Toggle (OSC) Button (Down)
  6. Change to the corresponding avatar in VRChat, turn on [CGOSC] Enable: ON, and press the assigned button.

    • Pressing the assigned button will toggle ContactGlove's vibration, enabling/disabling facial expressions.
    • If you enabled "[Experimental] : HandSign Setup" during setup, you can also fix hand signs simultaneously.

GestureToggle now operates during OSC hand tracking with ContactGloveOSC! 🎉

Setup Complete!

Well done. The setup is now complete! 🎉

Let's move our fingers on the avatar! 👉