protected static string RemapVariantName(string assetBundleName)
{
string[] bundlesWithVariant = m_AssetBundleManifest.GetAllAssetBundlesWithVariant();
string[] split = assetBundleName.Split('.');
int bestFit = int.MaxValue;
int bestFitIndex = -1;
// Loop all the assetBundles with variant to find the best fit variant assetBundle.
for (int i = 0; i < bundlesWithVariant.Length; i++)
{
string[] curSplit = bundlesWithVariant[i].Split('.');
if (curSplit[0] != split[0])
continue;
int found = System.Array.IndexOf(m_ActiveVariants, curSplit[1]);
// If there is no active variant found. We still want to use the first
if (found == -1)
found = int.MaxValue-1;
if (found < bestFit)
{
bestFit = found;
bestFitIndex = i;
}
}
if (bestFit == int.MaxValue-1)
{
Debug.LogWarning("Ambigious asset bundle variant chosen because there was no matching active variant: " + bundlesWithVariant[bestFitIndex]);
}
if (bestFitIndex != -1)
{
return bundlesWithVariant[bestFitIndex];
}
else
{
return assetBundleName;
}
}