将 VRChat 头像导出为 VRM 文件时面部表情转换的规范。
本文阐述了VRM导出过程中面部表情转换的规范。(适用版本:2.0.2及以上)
在使用换装功能将VRChat头像作为VRM导出数据时,面部表情会自动转换以符合VRM的要求。VRM
面部表情称为“表情”,VRM应用中主要使用四种类型:情绪(Emotion)、唇形同步(LipSync)、眨眼(Blink)和注视(LookAt)。
此外,如果VRM应用兼容,还可以使用头像专属的自定义片段(Custom Clips)。https

://vrm.dev/en/univrm1/vrm1_tutorial/expression/
换装功能在VRM导出过程中会根据原始头像的面部数据估算与“表情”对应的数据,并自动进行设置。
请参考下表了解各项的估算方法。
如果基础模型是VRM文件,则使用原始数据的“表情”信息。
情感
这是根据 Playable Layers 中设置的各种 AnimatorController 的 AnimationClip 名称估算出来的。
博士 估算方法 快乐的 根据 AnimationClip 名称设置相应的数据,或者设置分配给手势片段的 AnimationClip。 生气的 根据 AnimationClip 名称设置相应的数据。 伤心 根据 AnimationClip 名称设置相应的数据。 轻松 根据 AnimationClip 名称设置相应的数据。 惊讶 根据 AnimationClip 名称设置相应的数据。
如果找不到匹配的表达式,则不会进行设置。
这种情况更容易发生在“悲伤”和“愤怒”表达式上。任何未设置的动画片段都将设置为其他自定义片段。
对口型同步
LipSync 最初是根据 VRCAvatarDescriptor 中注册的信息设置的,只有对于未设置的值,才会根据 BlendShape 名称进行估算。
博士 估算方法 Aa 检查 AvatarDescriptor 中是否存在“aa”,如果不存在,则将其设置为 BlendShape fcl_mth_a、“あ”等。 IH 检查 AvatarDescriptor 的 `ih` 属性,如果不存在,则在 BlendShape 中将其设置为 `fcl_mth_ih`、`"い", 等。 欧 检查 AvatarDescriptor 中的 `ou`,如果它不存在,则在 BlendShape 中将其设置为 `fcl_mth_ou`、`u` 等。 呃 检查 AvatarDescriptor 中的“ee”,如果不存在,则将其设置为 BlendShape 的 fcl_mth_ee、“え”等。 哦 检查 avatarDescriptor 中是否包含“oh”,如果不存在,则在 BlendShape 中将其设置为 fcl_mth_oh、“お”等。
眨
眨眼效果最初是根据 VRCAvatarDescriptor 中注册的信息设置的,只有对于未设置的项目,才会根据 BlendShape 名称进行估算。
博士 赋值方法 眨 检查 AvatarDescriptor 中的 Blink 属性,如果不存在,则将 BlendShape 设置为 fcl_eye_close, "blink"。 向左眨眼 根据 Blendshape 名称,如果不存在匹配的 Blendshape,则拆分 Blink 并为该设置创建一个新的 Blendshape。 向右眨眼 根据 Blendshape 名称,如果不存在匹配的 Blendshape,则拆分 Blink 并为该设置创建一个新的 Blendshape。
*如果选中推荐选项“允许单独控制左右闪烁”。
看看
LookAt 未包含在 AvatarDescriptor 中,因此未在 VRM Expression 中设置。
转换图





