大规模粒子渲染,和动画系统优化一样,需要优化和权衡的是GPU和CPU的负载,同样技巧也相似。
动画系统的优化
1.DrawCall的减少
Batch 单个模型顶点数量太多,可以合批的数量不多
GPUInstance 手游限制
2.负载的均衡
CPU:可以通过预计算缓存的方式来优化如插件MeshAnimator
GPU:GPUSkin的方式进行优化
粒子系统的优化
1.DrawCall的减少
Batch 单个模型顶点数量少,手游重点优化范式
GPUInstance 手游限制
2.负载的均衡
CPU:在Unity2018版本中可以使用ECS+JobSystem这个大杀器
GPU:使用shader来批量计算针对单个粒子的信息如位置,旋转,生命期等