有关于VRC.fbx类模型转VRM模型的教程
为一些想用VRChat模型作为直播皮套和进入Reborn大家庭的小伙伴而创建
简介
此攻略是给与拥有 VRC 模型的主播和给我们 reborn 群小伙伴提供的快捷转 vrm 格式的教程,我们建议模型私用不共享,避免遭受麻烦。此图书将长期维护。
开始!模型的大变身
转换 VRM 模型的基本步骤
一、准备
一、选择 Unity 编辑器
目前 VRChat 支持的两个编辑器中, 2019.4.31f1 版本更加稳定, 而 2022.3.6f1 版本则会高发内存溢出的问题,所以在这里推荐 Unity 2019.4.31f1。
您当然可以选择使用 Unity 2022.3.6f1,但也请额外注意并优化模型。
二、学习 Univrm
我们用于 Unity 中转换为 VRM 模型的插件为 Univrm ,此插件可以将拥有 UnityAvatar 的物体转换为 VRM 模型的能力。
- 点击这里下载 Univrm。
- 或者点击这里下载 Univrm 的国内副本(速度更快,网络稳定,经过整合)。
此外我们推荐您工程中的模型着色器使用 liltoon ,此着色器中含有 Mtoon 渲染的功能,可以快速渲染您的 VRM 模型。
此处 VRChat 基础知识 请前往入门包及初级包学习。
- VRChat 入门包
- VRChat 初级包
二、开始转换
一、载入univrm插件
载入我们下载好的 univrm 插件:
将 UnityPackage 导入进我们的工程中:
载入后会在工具栏显示 vrm 工具,如果没有就重启一下 unity,如果还没有检查一下是不是报错了
二、准备模型,简单处理
准备好我们的 vrc 模型 ,并用工具进行简单处理。
本教程使用入门包教程中所使用的模型 HAOLAN,参考以下文章:https://docs.vrcd.org.cn/books/vrchat/page/b9228
将模型预制件进行 T-pose 初始操作,我们可以点击模型的预制件后用 VRM0 下的 T-pose 进行操作
操作后我们可以在场景中看到初始化后的预制件
此时的预制件已经替换了组件以及清除了不需要的组件
三、二次处理,载入VRM组件
此处额外补充使用liltoon着色器的模型提前渲染材质的操作,首先找到模型的材质球,此材质球需要使用liltoon着色器,点击下方的 转换为MToon 将材质渲染并收集到固定文件夹以备后续使用。
此后我们可以将渲染的材质球替换原来的材质球
初次处理的模型没有达到 VRM 打包条件,需要二次处理,我们需要进行一次导出自动生成打包件。
使用 VRM0 中的 Export 进行一次导出。
导出时主题、作者、简介需要填充字符,否则不允许导出。
如果导出时出现以下警告:
这是你的模型因为添加衣服商品等导致网格冗杂,需要进行网格整合,点击 VRM0 中的 MeshIngratorWizard 进行网格整合。
此时文件夹中会出现新的预制件和两个整合后的网络,此时就可以进行导出了。
我们可以在目标文件夹找到打包好的 VRM 文件。
如果我们没有找到,回去看一下报错,大概率内存溢出,优化一下材质。
我们将文件重新导入到工程当中,使用 VRM0 中的 Import 进行导入。
这时我们就可以看见解包出来的文件。
如果在导入后:只有一个或几个不完整的文件夹,又或是 VRM 文件不可读,则意味着导出的 VRM 文件不完整,一般是材质过大导致内存溢出打包过程被迫中断,我们优化一下材质(压缩贴图)
四、更换VRM支持着色器
如果您在制作过程中使用了 liltoon 的 Mtoon 着色后打包了 VRM 则可以跳过此条
将预制件拖入场景中。
做成 vrm 时插件会将模型的着色器全部换成 Standard 着色器,我们需要把他换为 vrm 支持的更好的 Mtoon 着色器。
点击 Shader 选择 vrm >> Mtoon。
修改前后对比:
根据群友的反馈,着色器转换时会复制一些不需要的数据,而这会造成严重曝光。
我们需要将每一个材质球的发光(Emission)和 Rim 调整为黑色。
五、骨骼处理
vrm 转换时会自动删除所有动骨(db动骨和pb动骨),我们需要手动添加,我们找到模型子集的 secondary
上面一般会自带 bone 组件,我们需要对他进行调整,将动骨拖入 Root Bone 中
并进行参数调整,您可以参考我们的参数设置(上面第二个图例)
下面我们加入碰撞
找到我们想加碰撞的地方添加组件 VRM Spring Bone Collider Gtoup 并且调整参数(一般刚好看不见球就行)
将添加好碰撞组件的物体拖入 secondary 中的 Collider Group 中。
完成之后可以运行场景拖动模型看看效果。
六、导出
对于 Reborn 的小伙伴来说此时我们已经可以导出了,如果是各位皮套使用人可以参考下一页
三、对于皮套的面捕一事
对于目前市场上的面捕软件,目前需要做处理的是小k直播姬和warudo,下面会教学如何去做软件中的表情识别。
在上一页中 三、二次处理,载入VRM组件 里我们得到了VRM的解包文件,在其中就有表情管理器。
选中之后我们可以看到 VRM 模型上的默认表情列表,我们可以在里面编辑表情,也可以通过表情本身去编辑。
对于 warudo 来说默认的表情已经足够日常使用了,毕竟 warudo 可以直接调用模型的 blendshape,小k待会会有详细解释
选中表情键,看这个表情键的描述去调整blendshape。
将列表中的表情键调整好就可以了
小k直播姬:你是真好,抽象到一般人还做不了
小k是用控制器的参数控制表情的所以表情的名字有严格的使用规范,在此不做具体说明,小k官方的文档讲述了具体的使用方法,接下来将是对应的引用:
《小K直播姬VRM文件Unity中转换操作规范_V1.5》
BlendShape 设置
在 文件夹Assets/SetVRM下打开 XXX.BlendShapes文件夹
点击BlendShape文件进行BlendShape编辑
点击 Create BlendShapeClip
将其命名保存在当前目录下。
点击保存后的BlendShapeClip文件,查看其 Inspector 界面
这是一个BlendShape动画设置,可以自行组合模型上的所有BlendShape。
点击这里修改命名
JawOpen 是由face下的表情参数合成出来的。点击BlendShape,会显示出对应模型上的所有BlendShape的列表。
需要添加上52个表情,这样导出的VRM文件才能被识别
这是全部的命名列表
BlendShape 的命名规则
BrowInnerUp
BrowDownLeft
BrowDownRight
BrowOuterUpLeft
BrowOuterUpRight
EyeLookUpLeft
EyeLookUpRight
EyeLookDownLeft
EyeLookDownRight
EyeLookInLeft
EyeLookInRight
EyeLookOutLeft
EyeLookOutRight
EyeBlinkLeft
EyeBlinkRight
EyeSquintRight
EyeSquintLeft
EyeWideLeft
EyeWideRight
CheekPuff
CheekSquintLeft
CheekSquintRight
NoseSneerLeft
NoseSneerRight
JawOpen
JawForward
JawLeft
JawRight
MouthFunnel
MouthPucker
MouthLeft
MouthRight
MouthRollUpper
MouthRollLower
MouthShrugUpper
MouthShrugLower
MouthClose
MouthSmileLeft
MouthSmileRight
MouthFrownLeft
MouthFrownRight
MouthDimpleLeft
MouthDimpleRight
MouthUpperUpLeft
MouthUpperUpRight
MouthLowerDownLeft
MouthLowerDownRight
MouthPressLeft
MouthPressRight
MouthStretchLeft
MouthStretchRight
TongueOut
每个命名都需要按照上面的命名来,不然导入到进去不能识别。
《小K直播姬FBX模型制作规范_V1.5》
眼睛表情14个
1..EyeBlinkLeft 左眼上眼睑合拢:
2. EyeBlinkRight 右眼上眼睑合拢:
3.EyeLookDownLeft 左眼向下看(以露出半个瞳孔为参考):
4.EyeLookDownRight 右眼向下看
5.EyeLookInLeft 左眼看向内眼角(左右移动幅度以瞳仁贴近眼眶边缘为依据):
6.EyeLookInRight 右眼看向内眼角(左右移动幅度以瞳仁贴近眼眶边缘为依据):
7.EyeLookOutLeft 左眼看向外眼角
8.EyeLookOutRight 右眼看向外眼角
9.EyeLookUpLeft 左眼向上看
10.EyeLookUpRight 右眼向上看
11.EyeSquintLeft 左眼睛眯眼
12.EyeSquintRight 右眼睛眯眼
13.EyeWideLeft 左眼睛瞪眼
14.EyeWideRight 右眼睛瞪眼
嘴巴和下巴表情27个
1.JawForward 下巴向前
2.JawLeft 下巴向左
3.JawRight 下巴向右
4.JawOpen 下巴张开
5.MouthClose 闭嘴(下巴下移但是嘴唇紧闭)
6.MouthDimpleLeft 左微笑(嘴角微微后移不要拉太长,嘴角凹陷)
7.MouthDimpleRight 右微笑
8.MouthFrownLeft 左耷拉嘴
9.MouthFrownRight 右耷拉嘴
10.MouthFunnel 嘴唇撅起成漏斗形ao
11.MouthLeft 嘴角往左撇
12.MouthRight 嘴角往右撇
13.MouthLowerDownLeft 左下唇往下
14.MouthLowerDownRight 右下唇往下
15.MouthPressLeft 左嘴按压
16.MouthPressRight 右嘴按压
17.MouthPucker 嘴向中间皱(嘴微闭,嘴角凹陷)
18.MouthRollLower 下嘴唇往里卷
19.MouthRollUpper 上唇里卷
20.MouthShrugLower 下唇上耸
21.MouthShrugUpper 上唇上耸
22. MouthSmileLeft 左嘴笑
23.MouthSmileRight 右嘴笑
24.MouthStretchLeft 左下角咧嘴
25.MouthStretchRight
右下角咧嘴
26. MouthUpperUpLeft 左上唇往上
27.MouthUpperUpRight 右上唇往上
眉与鼻子脸颊10个
1. BrowDownLeft 左眉下降
2.BrowDownRight 右眉下降
3.BrowInnerUp 眉毛内侧上挑
4.BrowOuterUpLeft 左眉外侧上挑
5.BrowOuterUpRight 右眉外侧上挑
6.CheekPuff 脸颊吸气
7.CheekSquintLeft 左侧苹果肌隆起
8.CheekSquintRight 右侧苹果肌隆起
9.NoseSneerLeft 鼻子左侧嘲讽
10.NoseSneerRight 鼻子右侧嘲讽
11.TongueOut 伸出舌头
末
此文档会保持维护,大家有什么问题可以在此章节下留言