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 文件。

画板 239.png

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

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

序列 01_10 00_00_00-00_00_30.gif

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

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

画板 247.jpeg

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

画板 241.png

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

下面我们加入碰撞

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

画板 250.png

image.png

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

image.png

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

六、导出

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