Example #1
0
        private void ProcessOneSpriteAtlas(ResInfo resInfo)
        {
            List <OneInfo> deps = resInfo.depends;

            foreach (var dep in deps)
            {
                if (dep.Type != InfoType.RES)
                {
                    continue;
                }
                ResInfo oneRes = dep as ResInfo;
                if (oneRes.IsTexture())
                {
                    oneRes.bundleExclude = true;
                    List <string> refBy = oneRes.refBy;
                    if (null != refBy)
                    {
                        foreach (var oneRefStr in refBy)
                        {
                            if (totals.ContainsKey(oneRefStr))
                            {
                                OneInfo refInfo = totals[oneRefStr];
                                if (refInfo.Type == InfoType.RES && ((ResInfo)refInfo).IsTexture())
                                {
                                    continue;
                                }
                                refInfo.RemoveDepend(oneRes);
                                refInfo.AddDepend(resInfo);//依赖于spriteAtlas
                                resInfo.RefBy(refInfo.res);
                            }
                        }
                    }
                }
            }
        }