
The work shipped in the Open Beta client on Steam alongside Avatars SDK 3.10.6-beta.1, which VRChat pushed to its packages repository on October 19, with beta.2 later that day and beta.3 on October 23. UploadVR reported the feature on October 23. VRChat had promised SDK support for higher fidelity face tracking back in October 2024, then laid the system out in a developer update on September 24, where it was called High Fidelity Face Tracking and the timing was given as “Soon.” The newest stable release is still 3.10.5 from September 4, so all of this is beta-channel work on both sides, and you will need VRChat on Steam switched over to the open beta branch before any of it appears in your editor.
Unified Expressions is the vocabulary
Unified Expressions is the naming standard that VRCFaceTracking, the community app that has carried face tracking in VRChat for years, uses to flatten wildly different hardware into one set of named keys. JawOpen means the same thing whether a Quest Pro or a webcam produced it. VRChat adopted that standard outright instead of writing a parallel one. The beta documentation calls it a superset of various face tracking standards, so most avatars implement only a subset of the keys. Tick Use All Tracking Keys and your avatar picks up a full-face-tracking marker on its details page.
Setting it up
What you need: the Open Beta client, Avatars SDK 3.10.6-beta.1 or later, and an avatar whose Skinned Mesh Renderers already carry facial blendshapes.
- Enable the section. Expand Face Tracking on the VRC Avatar Descriptor and click Enable.
- Pick your key set. Turn on Use All Tracking Keys for webcam or OSC tracking. Leave it off for an avatar that only needs advanced visemes or automatic eye movement.
- Add the meshes. Add Mesh takes up to 16 Skinned Mesh Renderers, and blendshapes are matched by exact name across every mesh in the list. Naming discipline matters more here than it used to.
- Route LipSync and Eye Look through Face Tracking. Set LipSync Mode to Viseme Blend Shape Face Tracking and Eye Gaze Mode to Face Tracking or Both, so their viseme and eye keys are in the table before Auto-Fill runs.
- Run Auto-Fill Blendshapes. Then walk the table and correct the blendshape and multiplier on each key by hand. Auto-Fill guesses from names, and names lie.
- Build and test. Build & Test, in the Builder tab of the VRChat SDK Control Panel, is the quickest way to find out whether a mapping reads as a face or as a grimace.
Blendshapes Sets sit underneath that. Each set maps tracking keys and visemes to blendshape names and loads at its own Default Weight, and you drive those weights from animator state behaviors or from the new Parameter Behaviors, which combine inputs with Max, Min, Add, Multiply or a custom expression. When two active sets touch the same blendshape, the higher value wins rather than the two summing, so 0.3 and 0.7 give you 0.7, not 1.0.

The synced parameter budget stops being the ceiling
VRChat now sends the full Unified Expressions payload to remote viewers itself, and remote clients run your mappings locally. Synced face data therefore does not touch your custom synced parameter budget. That budget is the wall every face tracking avatar has been pressed against since OSC setups became normal, and taking it out of the equation is the most useful thing in this release. The sync can be lossy, with nearby avatars receiving higher fidelity, so when one specific value has to land exactly, you forward it to a parameter and mark it Synced, which does spend the old budget.
1 Comment
Pingback: Man tired of modern gaming rebuilds childhood PC and finds stranger’s 30-year-old homework - Comic Vibe