static void RefreshUnusedAssetsBatch(BuildInfo buildInfo, FileFilterGroup filtersToUse)
{
if (buildInfo.UnusedAssetsIncludedInCreation)
{
BRT_BuildReportWindow.GetValueMessage = "Getting list of unused assets...";
List<BuildReportTool.SizePart> allUsed = buildInfo.UsedAssets.GetAllAsList();
BuildReportTool.SizePart[] allUnused;
BuildReportTool.SizePart[][] perCategoryUnused;
BuildPlatform buildPlatform = GetBuildPlatformFromString(buildInfo.BuildType, buildInfo.BuildTargetUsed);
allUnused = GetAllUnusedAssets(buildInfo.ScenesIncludedInProject, buildInfo.ScriptDLLs, buildInfo.ProjectAssetsPath, buildInfo.IncludedSvnInUnused, buildInfo.IncludedGitInUnused, buildPlatform, buildInfo.UnusedPrefabsIncludedInCreation, buildInfo.UnusedAssetsBatchNum, buildInfo.UnusedAssetsEntriesPerBatch, allUsed);
if (allUnused != null && allUnused.Length > 0)
{
perCategoryUnused = SegregateAssetSizesPerCategory(allUnused, filtersToUse);
buildInfo.UnusedAssets = new AssetList();
buildInfo.UnusedAssets.Init(allUnused, perCategoryUnused, filtersToUse);
if (allUsed.Count != buildInfo.UsedAssets.AllCount)
{
// it means GetAllUnusedAssets() found new used assets
// re-assign all used and re-sort
BuildReportTool.SizePart[] newAllUsedArray = allUsed.ToArray();
BuildReportTool.SizePart[][] newPerCategoryUsed = SegregateAssetSizesPerCategory(newAllUsedArray, filtersToUse);
buildInfo.UsedAssets = new AssetList();
buildInfo.UsedAssets.Init(newAllUsedArray, newPerCategoryUsed, filtersToUse);
}
}
else
{
buildInfo.MoveUnusedAssetsBatchNumToPrev();
}
BRT_BuildReportWindow.GetValueMessage = "";
buildInfo.FlagOkToRefresh();
}
}