/// <summary> /// 请求完成 public override void RequestComplete() { // if (assetBundle.Contains(assetName)) // { // if (onComplete != null) // { // GameObject obj = assetBundle.Load(assetName) as GameObject; // Bundle asset = obj == null ? null : obj.GetComponent<Bundle>(); // if (asset != null) // { // asset.assetName = assetName; // 设置名字,用于Bundle自我查找 // AssetBundleLoadManager.instance.mAssetCached.Add(assetName, asset); // if (asset.hasDependBundle) // { // asset.CollectSubBundles(this.DoInstantiateComplete); // } // else // { // DoInstantiateComplete(); // } // } // else // { // onComplete(assetName, null); // } // } // } // else // { // if (onComplete != null) // onComplete(assetName, null); // Debug.LogWarning("--Toto-- AssetLoadRequest->RequestComplete: assetBundle does not contain '" + assetName + "'."); // } // 改load为mainAsset方式 if (onComplete != null) { GameObject obj = assetBundle.mainAsset as GameObject; Bundle asset = obj == null ? null : obj.GetComponent <Bundle>(); if (asset != null) { asset.assetName = assetName; // 设置名字,用于Bundle自我查找 AssetBundleLoadManager.instance.mAssetCached.Add(assetName, asset); if (asset.hasDependBundle) { asset.CollectSubBundles(this.DoInstantiateComplete); } else { DoInstantiateComplete(); } } else { onComplete(assetName, null); Debug.LogWarning("--Toto-- AssetLoadRequest->RequestComplete: assetBundle does not contain '" + assetName + "'."); } } assetBundle.Unload(false); }
/// <summary> /// 加载bundle回调 /// </summary> /// <param name="assetName"></param> /// <param name="asset">bundle资源,非实例对象</param> protected void OnLoadBundle(string assetName, Bundle asset) { for (int i = 0; i < dependBundles.Length; ++i) { if (dependBundles[i].assetName == assetName) { if (asset != null) { subBundles[i] = asset; // asset.transform.parent = dependBundles[i].attachPoint; // asset.transform.localPosition = Vector3.zero; // if (dependBundles[i].identityLocalScale) // asset.transform.localScale = Vector3.one; // if (dependBundles[i].identityLocalRotation) // asset.transform.localRotation = Quaternion.identity; asset.CollectSubBundles(this.OnCollectSubBundle); } return; } } }
/// <summary> /// 加载bundle回调 /// </summary> /// <param name="assetName"></param> /// <param name="asset">bundle资源,非实例对象</param> protected void OnLoadBundle(string assetName, Bundle asset) { for (int i = 0; i < dependBundles.Length; ++i) { if (dependBundles[i].assetName == assetName) { if (asset != null) { subBundles[i] = asset; // asset.transform.parent = dependBundles[i].attachPoint; // asset.transform.localPosition = Vector3.zero; // if (dependBundles[i].identityLocalScale) // asset.transform.localScale = Vector3.one; // if (dependBundles[i].identityLocalRotation) // asset.transform.localRotation = Quaternion.identity; asset.CollectSubBundles(this.OnCollectSubBundle); } return; } } }