public IEnumerator AssetFromBundle(string bundleAssetName) { bool containKey = bundleDic.ContainsKey(bundleAssetName); if (containKey) { yield break; } string path = string.Format("{1}/{0}", bundleAssetName, Application.streamingAssetsPath); WWW dataWWW = new WWW(path); yield return(dataWWW); if (dataWWW.error != null) { yield break; } if (dataWWW.isDone) { AssetBundle assetBundle = AssetBundle.LoadFromMemory(dataWWW.bytes); BundleReferenceStruct referenceStruct = BundleReferenceStruct.CreateBundleStruct(); referenceStruct.InitBundle(assetBundle); bundleDic.Add(bundleAssetName, referenceStruct); } yield return(null); }
public static BundleReferenceStruct CreateBundleStruct() { BundleReferenceStruct referenceStruct = new BundleReferenceStruct() { loadedBundle = null, referenceCount = 0 }; return(referenceStruct); }