AssetBundles.AssetBundleManager.UnloadDependencies C# (CSharp) Method

UnloadDependencies() protected static method

protected static UnloadDependencies ( string assetBundleName ) : void
assetBundleName string
return void
        protected static void UnloadDependencies(string assetBundleName)
        {
            string[] dependencies = null;
            if (!m_Dependencies.TryGetValue(assetBundleName, out dependencies) )
                return;

            // Loop dependencies.
            foreach(var dependency in dependencies)
            {
                UnloadAssetBundleInternal(dependency);
            }

            m_Dependencies.Remove(assetBundleName);
        }

Usage Example

		protected static void UnloadAssetBundleInternal(string assetBundleName)
		{
			string text;
			LoadedAssetBundle loadedAssetBundle = AssetBundleManager.GetLoadedAssetBundle(assetBundleName, out text);
			if (loadedAssetBundle == null)
			{
				return;
			}
			if (--loadedAssetBundle.m_ReferencedCount == 0)
			{
				AssetBundleManager.m_LoadedAssetBundles.Remove(assetBundleName);
				if (!AssetBundleManager.m_ToUnloadAssetBundles.ContainsKey(assetBundleName))
				{
					AssetBundleManager.m_ToUnloadAssetBundles.Add(assetBundleName, loadedAssetBundle);
				}
				AssetBundleManager.UnloadDependencies(assetBundleName);
			}
		}
All Usage Examples Of AssetBundles.AssetBundleManager::UnloadDependencies