Skip to content

Instantly share code, notes, and snippets.

@memmam
Last active June 17, 2024 04:28
Show Gist options
  • Save memmam/3e56417db6e77e59af6f4cfe95d68245 to your computer and use it in GitHub Desktop.
Save memmam/3e56417db6e77e59af6f4cfe95d68245 to your computer and use it in GitHub Desktop.
Mocap suit instructions

Mocap Suit Build Guide

Parts list

NOTES: If you buy Vive trackers instead of Tundra Trackers, they don't come with straps. Also, Tundra Labs plans to eventually stop including their straps and strap loops with their trackers, only shipping the threaded bases. This part list is assuming you have the straps and strap loops presently included with the Tundra Trackers. You'll need to buy more straps if this is not the case - you need at least eight wrist/ankle straps, a chest/waist strap, and some way to affix a tracker to the skateboarding helmet.

This guide is written assuming you're using 10 trackers total (head, hands, elbows, waist, knees, and feet). Regardless of if you buy the eight Vive 3.0 trackers or the two sets of Tundra Trackers, you still will need the two additional Vive 3.0 trackers.

Needed software

  • VSeeFace - Free, this guide is written assuming you are using VSeeFace as your primary tracking software
  • VirtualMotionCapture - Free, however to use the 'Enable OSC motion sender' feature (required for this guide) you need the version from the developer's Patreon or Pixiv Fanbox, which can be accessed for $3/mo
  • SteamVR - Free, this is the actual tracking software for the VR body trackers

Instructions

Before we get started, you'll need to decide what kind of trackers you'll be using. I used 8 Tundra Trackers and 2 Vive 3.0 trackers, with the expectation I'm going to re-use the two Vive 3.0 trackers for a pair of LucidVR gloves down the road, and to take advantage of the straps included with early units of the Tundra Trackers. Aside from those factors, you can mix and match any type of Lighthouse-tracked VR trackers that you want, with the caveat that Vive 1.0 Trackers will NOT work with 2.0 Base Stations.

EDIT: As above, Tundra Labs seems to be going out of business and two of my trackers arrived faulty so idk about their quality control. Vive 3.0 trackers are recommended.

Insofar as straps, I used two sets of the above listed Kiwi Design trackers (five straps total, for my hands, feet, and waist), plus five of the included Tundra Tracker straps (for my elbows and knees, plus one to attach a tracker to the helmet I built). The Tundra Tracker straps come in different lengths; what worked for me was three of the shortest ones (for the head/elbows) and two of the medium-length ones (for the knees). In truth, any straps will do, but be wary that different brands will hold the trackers more or less securely than others, and this can cause issues with tracking stability. Also, if you use the included Tundra Tracker straps, I found that they hold much better if you double up the strap (e.g. if you run the strap through the strap loop base twice). Also be aware that eventually Tundra Labs will stop shipping straps with their trackers; what you do in this case is up to you.

For the hands, I also included knit fingerless gloves, as the feel of the KIWI straps directly on your hands is somewhat uncomfortable; I find these help quite a bit. I also included a roll of double-sided velcro, for making ankle braces for the foot straps. Both of these are optional at your discretion. You can also elect to replace the hand straps and fingerless gloves entirely with LucidVR gloves, but that falls outside of the scope of this guide; I will be working on a guide and software for adding finger tracking to this setup at a later date.

At this point what you need to do is fairly simple: put the trackers on the straps. If you elected for the eight Tundra Trackers and two Vive trackers, use the Vive trackers for your hands. If you elect to make ankle straps, the means to do so is fairly simple. Cut and affix velcro from the roll you purchased to the existing velcro on the strap for your foot, such that you make a loop running from one side of the strap, snugly along the back of your foot, and around to the other side. I assume you know how to use a screwdriver, so I will leave how to switch the backplates on three of the Tundra Trackers to the thread mount instead of the strap loop so you can use the KIWI straps as an exercise for the reader.

Before we go any farther, be advised you will need a .vrm of your avatar, NOT a .vsfavatar, as we will be utilizing VirtualMotionCapture for this guide in addition to VSeeFace. I based my steps on the following tutorials:

VR Full Body tracking in VSeeFace, by Suvidriel

How To Use HTC Vive Tracker Without HMD For Unreal Engine, by Hussein Abdallah (This tutorial is SLIGHTLY wrong; please see my instructions)

The first thing you need to do is install SteamVR, and set it up to allow you to run it without a headset.

Open the folder 'C:\Program Files (x86)\Steam\steamapps\common\SteamVR', and do the following:

Open 'drivers\null\resources\settings', and open 'default.vrsettings' in your text editor of choice (e.g. Notepad, Notepad++, Visual Studio Code, NOT Word/WordPad/etc). Back this file up before you make ANY changes.

Change the "enable" entry from false to true. Change the numbers next to the "windowWidth", "windowHeight", "renderWidth", and "renderHeight" entries to 0. Save the file.

Next, go to 'C:\Program Files (x86)\Steam\config', and open 'steamvr.vrsettings'. Yet again, back up this file before you make ANY changes. Next, look for a line that says "steamvr" : {. You want to add three entries under this line:

"requireHmd": false,
"activateMultipleDrivers": true,
"enableHomeApp" : false,

Save the file. If you have done this correctly, you should now be able to run SteamVR either normally if a headset is plugged in, or without a headset plugged in if you want to only use trackers. SteamVR should also no longer automatically start SteamVR Home, which will help with rendering overhead.

At this point, if you haven't already, plug in all of the USB dongles that came with your trackers, and open SteamVR. If your trackers do not connect automatically (i.e. if the light stays blue when they're turned on instead of turning green), in the SteamVR menu (click the icon with three lines in the upper-left of the SteamVR window), go to 'Devices', and then 'Pair Controller'. Select 'HTC Vive Tracker', and follow the prompts to pair all of your trackers. If it says your trackers' firmware is out of date, go to 'Devices', and then 'Update Device', and similarly follow the prompts. You will have to plug in each tracker as you update them.

At this step, I recommend you label all of your trackers in a way such that you do not lose track of which tracker goes on which body part, or you will need to repeat the following steps every time you want to use motion capture with your V-Tuber model.

Next, open VirtualMotionCapture, and load your model using the 'Open VRM' button. At this point, turn on your trackers if they aren't on already. Click 'Settings', then 'Open tracker assignment settings'. You should see the name of a tracker light up green when you move the physical tracker in real life. Use this to assign each tracker to the correct position on your body. Mind the settings for left and right hand 'to shoulder' - these should be set to 50 if your trackers are on the back of your hand, or -50 if they're on your wrist.

From here, check 'Enable OSC motion sender' under 'VMCProtocol motion sender'. Note this REQUIRES the paid version of VirtualMotionCapture, which you can get by pledging $3/mo to the developer's Patreon or Pixiv Fanbox. Go into VSeeFace, open Settings, General Settings, and enable 'OSC/VMC receiver (disables tracking)'. So VSeeFace knows not to expect facial tracking data from VirtualMotionCapture, check 'Apply VSeeFace tracking', and check 'Apply expressions', 'Track face features', 'Track blendshapes', 'Track eye bones', and 'Track jaw bone'. Make sure the rest of the boxes under 'Apply VSeeFace Tracking' are unchecked, or VSeeFace will NOT apply the tracking from VirtualMotionCapture. Also, make sure the port number matches in VSeeFace and VirtualMotionCapture (it should default to 39539). If you want to use TIFA/TITS/etc, make sure the number is different than the one you're using for that. Lastly, if you want your avatar to walk around the tracked area instead of staying in place, check 'Avatar locomotion' in VSeeFace General Settings.

If your legs look broken, try toggling the 'Fix Knee rotation' setting. If that doesn't work, try adjusting your knee tracker placement. Also try adjusting your elbow tracker placement if your arms look broken.

Click close on the VMC settings window, and click 'Save settings' and save them somewhere where you'll remember them, so you can load them with the 'Open settings' button in case they don't save correctly (this happened to me at least once). Click 'Calibration', leave 'Normal mode' selected for full body tracking, click 'Calibration', and do your best T-pose. Adjust your camera position in VSeeFace as needed. You should be done!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment