/// <summary> /// 加载引用AB包 /// </summary> /// <param name="abName"></param> /// <returns></returns> private IEnumerator LoadReference(string abName, string refABName) { //ab依赖包已经加载,依赖包的引用包就是它自己 if (_DicABRelaton.ContainsKey(abName)) { ABRelation tmpABRelationObj = _DicABRelaton[abName]; tmpABRelationObj.AddReference(refABName); } else { //依赖包未加载,就直接添加引用包,加载依赖包 ABRelation tmpABRelationObj = new ABRelation(abName); tmpABRelationObj.AddReference(refABName); _DicABRelaton.Add(abName, tmpABRelationObj); //开始加载依赖的包 yield return(LoadAssetBundle(abName)); } }
}//Method_end /// <summary> /// 加载引用AB包 /// </summary> /// <param name="abName">AB包名称</param> /// <param name="refABName">被引用AB包名称</param> /// <returns></returns> private IEnumerator LoadReference(string abName, string refABName) { //AB包已经加载 if (_DicABRelation.ContainsKey(abName)) { ABRelation tmpABRelationObj = _DicABRelation[abName]; //添加AB包引用关系(被依赖) tmpABRelationObj.AddReference(refABName); } else { ABRelation tmpABRelationObj = new ABRelation(abName); tmpABRelationObj.AddReference(refABName); _DicABRelation.Add(abName, tmpABRelationObj); //开始加载依赖的包(这是一个递归调用) yield return(LoadAssetBundeler(abName)); } }