Esempio n. 1
0
        public override AssetRequest <TAsset> LoadAsync <TAsset>(string deviceList, ref ContentManifest.AssetEntry entry, AssetLoadedHandler <TAsset> handler = null)
        {
            AssetBundleCreateWrapper          assetBundleCreateWrapper = new AssetBundleCreateWrapper(null);
            AsyncBundleCreateRequest <TAsset> result = new AsyncBundleCreateRequest <TAsset>(entry.Key, assetBundleCreateWrapper);

            CoroutineRunner.StartPersistent(waitForBundleToCreate(entry.Key, assetBundleCreateWrapper, handler), this, "waitForBundleToCreate");
            return(result);
        }
Esempio n. 2
0
        private IEnumerator waitForBundleToCreate <TAsset>(string key, AssetBundleCreateWrapper bundleRequest, AssetLoadedHandler <TAsset> handler) where TAsset : class
        {
            AssetBundleCreateRequest bundleLoadRequest = (AssetBundleCreateRequest)(bundleRequest.MutableOperation = AssetBundle.LoadFromFileAsync(key));

            yield return(bundleLoadRequest);

            AssetBundle bundle = bundleLoadRequest.assetBundle;

            if (bundle == null)
            {
                Log.LogError(this, "Failed to load asset bundle:" + key);
            }
        }