示例#1
0
        private string[] GetDependencies(string assetBundleName)
        {
            string[] dependencies = new string[0];

            if (DependenciesCache.TryGetValue(assetBundleName, out dependencies))
            {
                return(dependencies);
            }

            if (!Define.IsAsync)
            {
                List <string> dependenciesList = new List <string>();
                int           count            = ETCold.LoadHelper.GetAssetBundleDependenciesCount(assetBundleName, true);
                Array         userDat          = ETCold.LoadHelper.GetAssetBundleDependencies(assetBundleName, true);
                for (int i = 0; i < count; i++)
                {
                    dependenciesList.Add((string)userDat.GetValue(count));
                }
                dependencies = dependenciesList.ToArray();
            }
            else
            {
                dependencies = this.AssetBundleManifestObject.GetAllDependencies(assetBundleName);
            }

            DependenciesCache.Add(assetBundleName, dependencies);
            return(dependencies);
        }
示例#2
0
        private string[] GetDependencies(string assetBundleName, bool isScene = false)
        {
            string[] dependencies = new string[0];
            if (DependenciesCache.TryGetValue(assetBundleName, out dependencies))
            {
                return(dependencies);
            }

            if (!Define.IsAsync)
            {
#if UNITY_EDITOR
                if (isScene == false)
                {
                    dependencies = AssetDatabase.GetAssetBundleDependencies(assetBundleName, true);
                }
#endif
            }
            else
            {
                dependencies = this.AssetBundleManifestObject.GetAllDependencies(assetBundleName);
            }

            DependenciesCache.Add(assetBundleName, dependencies);
            return(dependencies);
        }
示例#3
0
        private string[] GetDependencies(string assetBundleName)
        {
            string[] dependencies = Array.Empty <string>();
            if (DependenciesCache.TryGetValue(assetBundleName, out dependencies))
            {
                return(dependencies);
            }

            if (!Define.IsAsync)
            {
#if UNITY_EDITOR
                dependencies = AssetDatabase.GetAssetBundleDependencies(assetBundleName, true);
#endif
            }
            else
            {
                dependencies = this.AssetBundleManifestObject.GetAllDependencies(assetBundleName);
            }

            DependenciesCache.Add(assetBundleName, dependencies);
            return(dependencies);
        }