View Full Version : Vizconnect and HTC Vive Trackers

06-05-2018, 12:09 PM
For a study, we wanted to replicate the full body tracking with IK that you demonstrate in this short clip: https://youtu.be/Hf-oRZF5mGw
Unfortunately, in Vizconnect I couldn't find a way to add the HTC Vive trackers, because there are only entries for the SteamVR HMD and the SteamVR Controllers, which both work. I tried those entries to connect to the extra trackers with different IDs, but to no avail.
On the other hand, steamvr.getTrackerList() lists the trackers when the script is running. But I would need them in Vizconnect to set up the IK for the avatar, right?
Since you show off a running demo, can you please tell me what need's to be done to be able to use the extra HTC Vive trackers?

06-11-2018, 10:40 AM
I went at it again today and figured it out. For now, I added a few lines of code to the file that vizconnect saves. In the initTrackers() function, add these lines of code, if you want to track the extra HTC Vive trackers that are not controllers in vizconnect:

#VC: initialize a new tracker
_name = 'extra_tracker_1'
if vizconnect.isPendingInit('tracker', _name, initFlag, initList):
#VC: init the raw object
if initFlag&vizconnect.INIT_RAW:
#VC: set some parameters
index = 0

#VC: create the raw object
import steamvr
tracker = steamvr.getTrackerList()[index]
except IndexError:
viz.logWarn("** WARNING: Not able to connect to tracker at index {0}. It's likely that not enough trackers are connected.".format(index))
tracker = viz.addGroup()
tracker.invalidTracker = True
rawTracker[_name] = tracker

#VC: init the wrapper (DO NOT EDIT)
if initFlag&vizconnect.INIT_WRAPPERS:
vizconnect.addTracker(rawTracker[_name], _name, make='Valve', model='SteamVR Controller Tracker')

You can, of course, change the name. Add this snippet again with another name and index to add additional trackers.

06-13-2018, 10:00 AM
Hi, here is the vizconnect link for what I used to do the full body tracking:

You just have to change getControllerList to getTrackerList in vizconnect. If you want to change the offsets, you also have to do that manually in the code. The way it's set up in this vizconnect is Right Hand, Left Hand, Left Foot, Right Foot, and Pelvis (with the lights facing towards you on the trackers). Also, note that you don't want to press "merge" if running the vizconnect GUI afterwards. Let me know if that works for you. In the next version of Vizard the ViveTrackers will be able to be added as their own tracker.

06-13-2018, 02:39 PM
Thanks a lot for sharing! I was going to figure out the offsets later this week, and your setup will hopefully be a good starting point.
I didn't know about the merging causing issues, so thanks again for this information.
Good to know, that there'll be a next version. I wasn't sure about that since you released Vizible.