Cubism SDK for Unity的性能调整

最終更新: 2020年1月31日

此页面适用于Cubism 4.2及更早版本的旧版本。 点击此处查看最新页面

概述

基本上,请在使用Unity的Profiler检查繁重的处理部分时执行性能调整。

在Cubism SDK中,模型的结构会影响编程性能。
此外,Live2D SDK for Unity优先考虑结构的清晰性,因此在性能上有一些刻意的牺牲。
下面说明对SDK性能的影响。

模型结构

参考 此处 了解更多详细内容。

项目结构

Unity的Event函数

如上所述,Live2D SDK for Unity优先考虑结构的清晰性。
因此,各个组件的更新处理都是从LateUpdate()等Unity的Event函数进行的。
该Unity的Event函数调用成本并不低。
如果直接使用SDK并显示多个模型,根据执行环境的不同,性能可能会很差。
如果重视性能,建议从一个Controller调用各组件的更新处理。
Cubism SDK for Unity中包含的CubismUpdateController执行相同的处理来控制Cubism SDK组件的执行顺序,因此如果您想采取上述措施,CubismUpdateController的实装会有所帮助。

参考 此处 了解有关CubismUpdateController的详细信息。

处理蒙版纹理

Cubism模型中使用的蒙版纹理共享一个全局纹理。
在Unity上生成Prefab时,在CubismMaskController中设置参考。

但是,如果将模型的Prefab直接设置为AssetBundle,则当Prefab副本化时,CubismMaskController中设置的蒙版纹理会从参考变为设置复制的状态。
因此,如果您忽略此规格,则每次您从AssetBundle重复生成和放弃模型时,纹理将继续保留,并压迫内存记忆。

参考 此处 了解有关此现象和对策的详细信息。

请问这篇文章对您有帮助吗?
关于本报道,敬请提出您的意见及要求。