Example #1
0
        public AssetTarget(Object o, FileInfo file, string assetPath)
        {
            this.asset     = o;
            this.file      = file;
            this.assetPath = assetPath;
            //this.bundleName = AssetBundleUtils.ConvertToABName(assetPath);
            //this.bundleSavePath = Path.Combine(AssetBundleUtils.pathResolver.BundleSavePath, bundleName);
            this.bundleShortName = file.Name.ToLower();
            this.bundleName      = HashUtil.Get(AssetBundleUtils.ConvertToABName(assetPath)) + ".ab";
            this.bundleSavePath  = Path.Combine(AssetBundleUtils.pathResolver.BundleSavePath, bundleName);

            _isFileChanged = true;
            _metaHash      = "0";
        }
Example #2
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;
        }
        /// <summary>
        /// 通过一个路径加载ab
        /// </summary>
        /// <param name="path">路径</param>
        /// <param name="prority">优先级</param>
        /// <param name="handler">回调</param>
        /// <returns></returns>
        public AssetBundleLoader Load(string path, int prority, LoadAssetCompleteHandler handler = null)
        {
#if _AB_MODE_
            AssetBundleLoader loader = this.CreateLoader(HashUtil.Get(path.ToLower()) + ".ab", path);
#else
            AssetBundleLoader loader = this.CreateLoader(path);
#endif
            loader.prority     = prority;
            loader.onComplete += handler;

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

            return(loader);
        }
        public AssetBundleLoader Load(string path, LoadAssetCompleteHandler handler = null)
        {
#if _AB_MODE_
            AssetBundleLoader loader = this.CreateLoader(HashUtil.Get(path.ToLower()) + ".ab", path);
#else
            AssetBundleLoader loader = this.CreateLoader(path);
#endif
            if (loader == null)
            {
                handler(null);
            }
            else
            {
                _thisTimeLoaderSet.Add(loader);
                if (loader.isComplete)
                {
                    if (handler != null)
                    {
                        handler(loader.bundleInfo);
                    }
                }
                else
                {
                    if (handler != null)
                    {
                        loader.onComplete += handler;
                    }
                    _isCurrentLoading = true;

                    if (loader.state < LoadState.State_Loading)
                    {
                        _nonCompleteLoaderSet.Add(loader);
                    }
                    this.StartLoad();
                }
            }
            return(loader);
        }
Example #5
0
        public AssetTarget(Object o, FileInfo file, string assetPath)
        {
            string abName  = AssetBundleUtils.ConvertToABName(assetPath);
            string dirName = file.Directory.Name;

            if (dirName.StartsWith("&"))
            {
                int index = file.DirectoryName.IndexOf("Assets");
                if (index != -1)
                {
                    dirName = file.DirectoryName.Substring(index);
                    abName  = AssetBundleUtils.ConvertToABName(dirName);
                }
            }
            this.asset           = o;
            this.file            = file;
            this.assetPath       = assetPath;
            this.bundleShortName = file.Name.ToLower();
            this.bundleName      = HashUtil.Get(abName) + ".ab";
            this.bundleSavePath  = Path.Combine(AssetBundleUtils.pathResolver.BundleSavePath, bundleName);

            _isFileChanged = true;
            _metaHash      = "0";
        }