特效合并,意思是说将粒子所用的零碎图片,以shader为单位合并成一张图集,好处就是可以降低draw call。试想,合并前每个粒子使用一个material,而每一个material就要占用一个drawcall,而合并后多个粒子可以用同一个material,这样就降低了drawcall,提升了性能。
合并工具的代码如下:
1 using System;
2 using System.Collections.Generic;
3 using System.IO;
4 using System.Linq;
5 using System.Text;
6 using UnityEditor;
7 using UnityEngine;
8
9 namespace AssetBundle
10 {
11 public class ParticleSystemCombiner : ScriptableObject
12 {
13 public const string
14 AtlasFolder = "Assets/Cloth/Resources/ParticleSystemAtlas",
15 ParticleAtlasPath = "Assets/Cloth/R