While VRChat provides built-in parameters for visemes ( vrc_viseme_* ) and eye tracking ( vrc_eyelid_* ), vrcfaceblendh is part of the custom expression pipeline. It allows you to drive specific BlendShapes directly from an animation or a gesture.
At first glance, it looks like a typo. "Blendh"? Shouldn't it be "BlendShape"? But make no mistake—this parameter is one of the most powerful (and misunderstood) tools for high-fidelity facial expression management.
If you’ve ever dipped your toes into VRChat avatar creation—specifically custom visemes or eye tracking—you’ve likely stumbled upon a peculiar term in the Unity Animator parameters list: vrcfaceblendh .
| Direct BlendShape | vrcfaceblendh Parameter | |------------------|----------------------------| | Hardcoded to one mesh | Works across LODs / multiple meshes | | May conflict with visemes | Easily blended with other face parameters | | No built-in normalization | Can be remapped (0–100% to 0–1 float) | | Can break avatar dynamics | Fully supported by Expression Menu & Actions |
While VRChat provides built-in parameters for visemes ( vrc_viseme_* ) and eye tracking ( vrc_eyelid_* ), vrcfaceblendh is part of the custom expression pipeline. It allows you to drive specific BlendShapes directly from an animation or a gesture.
At first glance, it looks like a typo. "Blendh"? Shouldn't it be "BlendShape"? But make no mistake—this parameter is one of the most powerful (and misunderstood) tools for high-fidelity facial expression management.
If you’ve ever dipped your toes into VRChat avatar creation—specifically custom visemes or eye tracking—you’ve likely stumbled upon a peculiar term in the Unity Animator parameters list: vrcfaceblendh .
| Direct BlendShape | vrcfaceblendh Parameter | |------------------|----------------------------| | Hardcoded to one mesh | Works across LODs / multiple meshes | | May conflict with visemes | Easily blended with other face parameters | | No built-in normalization | Can be remapped (0–100% to 0–1 float) | | Can break avatar dynamics | Fully supported by Expression Menu & Actions |