降低骨骼数,减少面片数。
方法:
1.勾选Optimize Game Objects,以剔除骨骼节点对应的Transform节点
2.开启多线程渲染选项
主要影响的函数调用开销,可以在profiler中查看:
Animators.Update
MeshSkinning.Update
Camera.Render
注意:
1.其中Animators.Update函数在骨骼节点优化后,场景内放一百个模型播放动画,该函数耗时降低不是很明显,但CPU时间消耗以及FPS提高很明显
2.开启多线程渲染后,会降低主线程的渲染压力,但当角色数目过多的时候,帧率的优化会达到瓶颈,但降低了主线程的性能压力,依然很有用,让主线程有更多的精力处理复杂的游戏逻辑
其他的优化策略:
1.BakeMesh,相当于将将蒙皮转换为普通mesh文章来源:https://www.toymoban.com/news/detail-500739.html
2.GUI Skinning 将每一帧骨骼动画的1*4的移动矩阵和3*3的旋转矩阵信息,以(r,g,b,a)的形式存储在纹理网格中,通过GPU采样获取信息在GPU中完成计算,以节省CPU消耗。文章来源地址https://www.toymoban.com/news/detail-500739.html
到了这里,关于Unity中动画系统的性能优化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!