Пример #1
0
        public AssetBundleInfo GetBundleInfo(string key)
        {
            key = key.ToLower();
#if _AB_MODE_
            key = HashUtil.Get(key) + ".ab";
#endif
            var e = _loadedAssetBundle.GetEnumerator();
            while (e.MoveNext())
            {
                AssetBundleInfo abi = e.Current.Value;
                if (abi.bundleName == key)
                {
                    return(abi);
                }
            }
            return(null);
        }
Пример #2
0
        /// <summary>
        /// 通过一个路径加载ab
        /// </summary>
        /// <param name="path">路径</param>
        /// <param name="prority">优先级</param>
        /// <param name="handler">回调</param>
        /// <returns></returns>
        public AssetBundleLoader LoadAsync(string path, int prority, LoadAssetCompleteHandler handler = null)
        {
            string newPath = path.Replace("/", "\\");

#if _AB_MODE_
            AssetBundleLoader loader = this.CreateLoader(HashUtil.Get(newPath.ToLower()) + ".ab", newPath);
#else
            AssetBundleLoader loader = this.CreateLoader(newPath);
#endif
            loader.prority     = prority;
            loader.onComplete += handler;

            _isCurrentLoading = true;
            _nonCompleteLoaderSet.Add(loader);
            _thisTimeLoaderSet.Add(loader);

            return(loader);
        }