public void Build() { try { InitPipline(); List <AssetFile> assetsNeedBuild = null; if (m_IAssetCollector != null) { m_IAssetCollector.Hanlde(out assetsNeedBuild); } else { return; } List <AssetFile> ganeraterAssets = null; m_IAssetGaneraters.ForEach(p => { p.Hanlde(assetsNeedBuild, out ganeraterAssets); assetsNeedBuild = ganeraterAssets; }); List <AssetFile> modifyAssets = null; m_IAssetModifiers.ForEach(p => { p.Hanlde(assetsNeedBuild, out modifyAssets); assetsNeedBuild = modifyAssets; }); List <AssetFileGroup> groups = null; if (m_IBundleBuidler != null) { m_IBundleNameBuilder.Hanlde(assetsNeedBuild, out groups); } else { return; } List <BundleFile> bundleFiles = null; if (m_IBundleBuidler != null) { m_IBundleBuidler.Hanlde(groups, out bundleFiles); } if (m_IBundleExporter != null) { m_IBundleExporter.Hanlde(bundleFiles); } else { return; } } catch (CResourcesException e) { LogUtility.LogError("{0} {1}", e.Message, e.StackTrace); } }