private T LoadResource<T>(string assetName, bool isCache = false) where T : Object {
if (_cachedAsset.Contains(assetName)) { // 缓存中存储了要加载的资源
return _cachedAsset[assetName] as T; //返回缓存中的内容
}
T loadedAsset = _currentAssetBundle.LoadAsset<T>(assetName); // 资源未缓存,进行资源加载
if (loadedAsset != null && isCache) { // 判断是否需要将加载的资源加入缓存集合
_cachedAsset.Add(assetName, loadedAsset); // 资源需要被缓存
}
else if (loadedAsset == null) { // 资源加载失败
Debug.LogError(
$"{GetType()}/LoadResource<T>方法根据参数assetName={assetName}" +
$"无法在AssetBundle:{_currentAssetBundle}中加载相关资源");
}
return loadedAsset;
}