mirror of https://github.com/tuyoogame/YooAsset
update resource package
parent
522ddb5115
commit
7c561ce254
|
@ -21,6 +21,13 @@ namespace YooAsset
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string Error { private set; get; }
|
public string Error { private set; get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 资源对象
|
||||||
|
/// </summary>
|
||||||
|
internal PackageAsset Asset
|
||||||
|
{
|
||||||
|
get { return _packageAsset; }
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 唯一标识符
|
/// 唯一标识符
|
||||||
|
|
|
@ -147,22 +147,6 @@ namespace YooAsset
|
||||||
return string.Empty;
|
return string.Empty;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// 获取主资源包
|
|
||||||
/// 注意:传入的资源路径一定合法有效!
|
|
||||||
/// </summary>
|
|
||||||
public PackageBundle GetMainPackageBundle(string assetPath)
|
|
||||||
{
|
|
||||||
if (AssetDic.TryGetValue(assetPath, out PackageAsset packageAsset))
|
|
||||||
{
|
|
||||||
return GetMainPackageBundle(packageAsset.BundleID);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
throw new Exception("Should never get here !");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 获取主资源包
|
/// 获取主资源包
|
||||||
/// 注意:传入的资源包ID一定合法有效!
|
/// 注意:传入的资源包ID一定合法有效!
|
||||||
|
@ -181,23 +165,17 @@ namespace YooAsset
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 获取资源依赖列表
|
/// 获取主资源包
|
||||||
/// 注意:传入的资源路径一定合法有效!
|
/// 注意:传入的资源对象一定合法有效!
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public PackageBundle[] GetAllDependencies(string assetPath)
|
public PackageBundle GetMainPackageBundle(PackageAsset packageAsset)
|
||||||
{
|
{
|
||||||
if (TryGetPackageAsset(assetPath, out PackageAsset packageAsset))
|
return GetMainPackageBundle(packageAsset.BundleID);
|
||||||
{
|
|
||||||
return GetAllDependencies(packageAsset);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
throw new Exception("Should never get here !");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 获取资源依赖列表
|
/// 获取资源依赖列表
|
||||||
|
/// 注意:传入的资源对象一定合法有效!
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public PackageBundle[] GetAllDependencies(PackageAsset packageAsset)
|
public PackageBundle[] GetAllDependencies(PackageAsset packageAsset)
|
||||||
{
|
{
|
||||||
|
|
|
@ -167,20 +167,20 @@ namespace YooAsset
|
||||||
}
|
}
|
||||||
BundleInfo IBundleQuery.GetMainBundleInfo(AssetInfo assetInfo)
|
BundleInfo IBundleQuery.GetMainBundleInfo(AssetInfo assetInfo)
|
||||||
{
|
{
|
||||||
if (assetInfo.IsInvalid)
|
if (assetInfo == null || assetInfo.IsInvalid)
|
||||||
throw new Exception("Should never get here !");
|
throw new Exception("Should never get here !");
|
||||||
|
|
||||||
// 注意:如果清单里未找到资源包会抛出异常!
|
// 注意:如果清单里未找到资源包会抛出异常!
|
||||||
var packageBundle = ActiveManifest.GetMainPackageBundle(assetInfo.AssetPath);
|
var packageBundle = ActiveManifest.GetMainPackageBundle(assetInfo.Asset);
|
||||||
return CreateBundleInfo(packageBundle);
|
return CreateBundleInfo(packageBundle);
|
||||||
}
|
}
|
||||||
BundleInfo[] IBundleQuery.GetDependBundleInfos(AssetInfo assetInfo)
|
BundleInfo[] IBundleQuery.GetDependBundleInfos(AssetInfo assetInfo)
|
||||||
{
|
{
|
||||||
if (assetInfo.IsInvalid)
|
if (assetInfo == null || assetInfo.IsInvalid)
|
||||||
throw new Exception("Should never get here !");
|
throw new Exception("Should never get here !");
|
||||||
|
|
||||||
// 注意:如果清单里未找到资源包会抛出异常!
|
// 注意:如果清单里未找到资源包会抛出异常!
|
||||||
var depends = ActiveManifest.GetAllDependencies(assetInfo.AssetPath);
|
var depends = ActiveManifest.GetAllDependencies(assetInfo.Asset);
|
||||||
List<BundleInfo> result = new List<BundleInfo>(depends.Length);
|
List<BundleInfo> result = new List<BundleInfo>(depends.Length);
|
||||||
foreach (var packageBundle in depends)
|
foreach (var packageBundle in depends)
|
||||||
{
|
{
|
||||||
|
@ -197,20 +197,20 @@ namespace YooAsset
|
||||||
}
|
}
|
||||||
string IBundleQuery.GetMainBundleName(AssetInfo assetInfo)
|
string IBundleQuery.GetMainBundleName(AssetInfo assetInfo)
|
||||||
{
|
{
|
||||||
if (assetInfo.IsInvalid)
|
if (assetInfo == null || assetInfo.IsInvalid)
|
||||||
throw new Exception("Should never get here !");
|
throw new Exception("Should never get here !");
|
||||||
|
|
||||||
// 注意:如果清单里未找到资源包会抛出异常!
|
// 注意:如果清单里未找到资源包会抛出异常!
|
||||||
var packageBundle = ActiveManifest.GetMainPackageBundle(assetInfo.AssetPath);
|
var packageBundle = ActiveManifest.GetMainPackageBundle(assetInfo.Asset);
|
||||||
return packageBundle.BundleName;
|
return packageBundle.BundleName;
|
||||||
}
|
}
|
||||||
string[] IBundleQuery.GetDependBundleNames(AssetInfo assetInfo)
|
string[] IBundleQuery.GetDependBundleNames(AssetInfo assetInfo)
|
||||||
{
|
{
|
||||||
if (assetInfo.IsInvalid)
|
if (assetInfo == null || assetInfo.IsInvalid)
|
||||||
throw new Exception("Should never get here !");
|
throw new Exception("Should never get here !");
|
||||||
|
|
||||||
// 注意:如果清单里未找到资源包会抛出异常!
|
// 注意:如果清单里未找到资源包会抛出异常!
|
||||||
var depends = ActiveManifest.GetAllDependencies(assetInfo.AssetPath);
|
var depends = ActiveManifest.GetAllDependencies(assetInfo.Asset);
|
||||||
List<string> result = new List<string>(depends.Length);
|
List<string> result = new List<string>(depends.Length);
|
||||||
foreach (var packageBundle in depends)
|
foreach (var packageBundle in depends)
|
||||||
{
|
{
|
||||||
|
@ -319,12 +319,12 @@ namespace YooAsset
|
||||||
}
|
}
|
||||||
|
|
||||||
// 注意:如果清单里未找到资源包会抛出异常!
|
// 注意:如果清单里未找到资源包会抛出异常!
|
||||||
PackageBundle mainBundle = manifest.GetMainPackageBundle(assetInfo.AssetPath);
|
PackageBundle mainBundle = manifest.GetMainPackageBundle(assetInfo.Asset);
|
||||||
if (checkList.Contains(mainBundle) == false)
|
if (checkList.Contains(mainBundle) == false)
|
||||||
checkList.Add(mainBundle);
|
checkList.Add(mainBundle);
|
||||||
|
|
||||||
// 注意:如果清单里未找到资源包会抛出异常!
|
// 注意:如果清单里未找到资源包会抛出异常!
|
||||||
PackageBundle[] mainDependBundles = manifest.GetAllDependencies(assetInfo.AssetPath);
|
PackageBundle[] mainDependBundles = manifest.GetAllDependencies(assetInfo.Asset);
|
||||||
foreach (var dependBundle in mainDependBundles)
|
foreach (var dependBundle in mainDependBundles)
|
||||||
{
|
{
|
||||||
if (checkList.Contains(dependBundle) == false)
|
if (checkList.Contains(dependBundle) == false)
|
||||||
|
|
Loading…
Reference in New Issue