Example #1
0
        /// <summary>
        /// 把一个资源包名称加入加载任务列表。
        /// </summary>
        public void BundleTask(string assetbundleName, bool allowUnload, DelegateAssetBundleLoaded onLoaded = null, bool needMD5 = false)
        {
            var task = m_TaskPool.Get();

            task.SetBundle(assetbundleName.ToLower(), allowUnload, onLoaded, needMD5);
            ScheduleTask(task);
        }
Example #2
0
 public void SetBundle(string assetbundleName, bool allowUnload, DelegateAssetBundleLoaded onLoaded, bool needMD5)
 {
     this.assetbundleName = assetbundleName;
     this.allowUnload     = allowUnload;
     this.onABLoaded      = onLoaded;
     this.needMD5         = needMD5;
 }
Example #3
0
        /// <summary>
        /// 执行预加载
        /// </summary>
        public int ExecutePreload(DelegateAssetBundleLoaded onLoaded = null, DelegateAssetBundleLoaded onLoadedAll = null)
        {
            var count = m_PreloadAssetBundles.Count;

            Log("Load Need AssetBundles = " + count);

            using (var itor = m_PreloadAssetBundles.GetEnumerator()) {
                while (itor.MoveNext())
                {
                    var    kv = itor.Current;
                    string assetbundleName, assetName;
                    GetAssetpath(kv.Key, out assetbundleName, out assetName);
                    BundleTask(assetbundleName, kv.Value, onLoaded);
                }
            }
            FinalTask(onLoadedAll);
            m_PreloadAssetBundles.Clear();
            return(count);
        }
Example #4
0
 /// <summary>
 /// 标志某批加载的最终一个加载回调
 /// </summary>
 public void FinalTask(DelegateAssetBundleLoaded onLoaded)
 {
     BundleTask("", true, onLoaded);
 }