コード例 #1
0
        private AssetBundleInfo GetBundleInfo(string name, BaseLoadFinish callback = null)
        {
            AssetBundleInfo info = null;

            if (!mBundleInfos.ContainsKey(name))
            {
                mBundleInfos.Add(name, new AssetBundleInfo(name));
            }
            info = mBundleInfos[name];
            return(info);
        }
コード例 #2
0
        protected void LoadReady(string name, BaseLoadFinish callback)
        {
            var dependencies = mResManifest.GetAllDependencies(name);

            for (int i = 0; i < dependencies.Length; i++)
            {
                var dependencie = dependencies[i];
                mLoadQueue.Enqueue(GetBundleInfo(dependencie));
            }
            var info = GetBundleInfo(name, callback);

            mLoadQueue.Enqueue(info);
            info.AddCallback(callback);
            if (mLoading == true)
            {
                return;
            }
            mLoading = true;
            Global.Instance.StartCoroutine(LoadQueue(name));
        }
コード例 #3
0
 public void LoadAsync(string bundleName, BaseLoadFinish callback)
 {
     LoadReady(bundleName, callback);
 }
コード例 #4
0
 public void LoadAsync(string name, string suffix, BaseLoadFinish callback)
 {
     LoadReady(name + suffix, callback);
 }
コード例 #5
0
 public void AddCallback(BaseLoadFinish callback)
 {
     OnLoadFinish.Enqueue(callback);
 }