站点图标 星夜笔记本

VRCHAT个人PC模型优化篇

不是教做quest/安卓模型,仅针对pc重量级功能模型的优化

基本上就是我horiz到milk之间的差异

Unity自带的网格压缩

选中fbx后在检查器中选择网格压缩,一般情况下中等,少量情况低或者不压缩,高是几乎不用,中及以下一般来说几乎不影响外观,影响的话就调低。

仅2022比较有效,2019几乎无效。(应该没人还用2019改模了吧)

压缩贴图

使用 VRC-Avatar-Performance-ToolslilAvatarUtils ,后者更全面。

由于个人对模型下载大小比较敏感,所以压缩的比较狠,个人参考值如下。

tex/normal 1024

mask/matcap.. 512

动骨合并

其实就是把几个同层级的骨骼共用一个动骨组件,实际上来说它并不是优化,所以也不要叫它动骨优化,实际转换数是一样的,这样做的唯一意义就是防止超过256的动骨组件限制。

例如图中原本outer L a到outer_R_e的每一项都有一个动骨组件,合并的话就是把原本的动骨组件都删了,并如图中所示在父级outer_root添加一样的动骨组件,Root Transform添加自己。

由于这不是优化这里就不介绍更多了。

减少控制器层数

特别是FX,其它控制器一般不会有多少Layer。

对于没有过渡效果/VRC脚本的Layer建议使用BlendTree来做,安装MA后可直接创建asset的BlendTree。

特别是衣服开关、饰品开关什么的,一定要选择BlendTree来做。

并使用MA Merge Blend Tree组件合并,这个没啥好讲的直接拖进去就好了

当然也可以正常在Layer里做BlendTree,等待运行/上传时AvatarOptimizer(这个下面会讲)自动合并,不过个人习惯MA的,这样整合到它应在的gameobject上会比较好维护

=bool开关
=int开关
=float转盘

AvatarOptimizer自动优化

使用插件AvatarOptimizer的AAO Trace And Optimize组件,添加到模型的父级中,运行/上传时可以自动优化,它是非破坏性的,可以放心加。

如果没什么特别需求或者进阶操作,直接加这一个就行了

光是这一个都可以让你模型有非常大的优化提升。更多用法阅读文档

NDMF Mantis LOD Editor减面

可以直接在Unity中减面,但它也可以是非破坏性的,运行/上传时才减面,并且可以实时预览,只需要在想减的东西下面加组件,简单拉下进度条就行了,非常方便,偷懒必备,不用去其它建模软件里操作了。

需要下载 Unity Asset Mantis LOD EditorMantis LOD EditorのNDMF化ツール

查看实际统计数据

由于使用了一堆非破坏性工具,需要运行后才能看到最终成果,所以看sdk统计是没用的。

在vcc中安装anatawa12's gists pack,并在unity中安装ActualPerformanceWindow

运行后弹出的窗口可以看到统计

后话

优化最终看的还是取舍,重量级的东西不要加,衣服/头发什么的尽量选择没那么复杂的。

退出移动版