Skip to main content

二、开始转换

一、载入univrm插件

载入我们下载好的 univrm 插件:

image.png

UnityPackage 导入进我们的工程中:

序列 01_8 00_00_00-00_00_30.gif

载入后会在工具栏显示vrm工具,如果没有就重启一下unity,如果还没有检查一下是不是报错了

image.png

二、准备模型,简单处理

准备好我们的vrc模型 ,并用工具进行简单处理。

本教程使用入门包教程中所使用的模型 HAOLAN,参考以下文章:https://docs.vrcd.org.cn/books/vrchat/page/b9228

将模型预制件进行T-pose初始操作,我们可以点击模型的预制件后用 VRM0 下的 T-pose 进行操作

序列 01_9 00_00_00-00_00_30.gif

操作后我们可以在场景中看到初始化后的预制件

此时的预制件已经替换了组件以及清除了不需要的组件

三、二次处理,载入VRM组件

此处额外补充使用liltoon着色器的模型提前渲染材质的操作,首先找到模型的材质球,此材质球需要使用liltoon着色器,点击下方的 转换为MToon 将材质渲染并收集到固定文件夹以备后续使用

序列 01_11 00_00_00-00_00_30.gif

此后我们可以将渲染的材质球替换原来的材质球

初次处理的模型没有达到VRM打包条件,需要二次处理,我们需要进行一次导出自动生成打包件

使用 VRM0 中的 Export 进行一次导出

序列 01 00_00_00-00_00_30.gif

导出时主题、作者、简介需要填充字符,否则不允许导出

如果导出时出现以下警告:

image.png

这是你的模型因为添加衣服商品等导致网络冗杂,需要进行网络的整合,点击 VRM0 中的 MeshIngratorWizard 进行网络整合。

序列 01_12 00_00_00-00_00_30.gif

此时文件夹中会出现新的预制件和两个整合后的网络,此时就可以进行导出了。

image.png

我们可以在目标文件夹找到打包好的 VRM 文件。

image.png

如果我们没有找到,回去看一下报错,大概率内存溢出,优化一下材质

我们将他重新导入到工程当中,使用 VRM0 中的 Import 进行导入。

序列 01_10 00_00_00-00_00_30.gif

这时我们就可以看见解包出来的文件。

image.png

 如果导入后时出现以下情况:

image.png

只有一个文件夹或几个不完整的文件夹,又或是不可读的VRM文件

说明导出时的VRM不完整,一般是材质过大导致内存溢出打包过程被迫中断,我们优化一下材质(压缩贴图)

四、更换VRM支持着色器

如你在制作过程中使用了liltoon的Mtoon着色后打包了VRM则可以跳过此条

将预制件拖入场景中。

image.png

image.png

做成 vrm 时插件会将模型的着色器全部换成 Standard 着色器,我们需要把他换为 vrm 支持的更好的 Mtoon 着色器。

点击 Shader 选择 vrm >> Mtoon

画板 238.png

修改前后对比:

iinYADA6EYC2AE2a-236.png

根据群友的反馈,着色器转换时会复制一些不需要的数据,而这会造成严重曝光。

画板 245.png

我们需要将每一个材质球的发光(Emission)和 Rim 调整为黑色。

画板 244.png

五、骨骼处理

vrm转换时会自动删除所有动骨(db动骨和pb动骨),我们需要手动添加,我们找到模型子集的secondary

image.png

上面一般会自带 bone 组件,我们需要对他进行调整,将动骨拖入 Root Bone 中

画板 241.png

并进行参数调整,您可以参考我们的参数设置(上面第二个图例)

下面我们加入碰撞

找到我们想加碰撞的地方添加组件VRM Spring Bone Collider Gtoup 并且调整参数(一般刚好看不见球就行)

image.pngimage.png

image.png

将添加好碰撞组件的物体拖入secondary中的Collider Gtoup中。

image.png

完成之后可以运行场景拖动模型看看效果。

六、导出

对于Reborn的小伙伴来说此时我们已经可以导出了,如果是各位皮套使用人可以参考下一页

使用 VRM0 中的 Export 进行最终的导出,在此我们可以将名字简介作者都填上,也可以放上一个好看的封面

image.png

最终出来的VRM模型文件就可以上传啦!