update runtime code

可寻址模式默认支持通过资源路径加载。
pull/150/head
hevinci 2023-08-09 20:15:55 +08:00
parent 0331b7b6e3
commit 9b4abf86b6
1 changed files with 11 additions and 12 deletions

View File

@ -97,7 +97,7 @@ namespace YooAsset
Manifest.AssetDic = new Dictionary<string, PackageAsset>(_packageAssetCount); Manifest.AssetDic = new Dictionary<string, PackageAsset>(_packageAssetCount);
if (Manifest.EnableAddressable) if (Manifest.EnableAddressable)
Manifest.AssetPathMapping1 = new Dictionary<string, string>(_packageAssetCount); Manifest.AssetPathMapping1 = new Dictionary<string, string>(_packageAssetCount * 3);
else else
Manifest.AssetPathMapping1 = new Dictionary<string, string>(_packageAssetCount * 2); Manifest.AssetPathMapping1 = new Dictionary<string, string>(_packageAssetCount * 2);
@ -130,15 +130,6 @@ namespace YooAsset
Manifest.AssetDic.Add(assetPath, packageAsset); Manifest.AssetDic.Add(assetPath, packageAsset);
// 填充AssetPathMapping1 // 填充AssetPathMapping1
if (Manifest.EnableAddressable)
{
string location = packageAsset.Address;
if (Manifest.AssetPathMapping1.ContainsKey(location))
throw new System.Exception($"Address have existed : {location}");
else
Manifest.AssetPathMapping1.Add(location, packageAsset.AssetPath);
}
else
{ {
string location = packageAsset.AssetPath; string location = packageAsset.AssetPath;
if (Manifest.LocationToLower) if (Manifest.LocationToLower)
@ -146,7 +137,7 @@ namespace YooAsset
// 添加原生路径的映射 // 添加原生路径的映射
if (Manifest.AssetPathMapping1.ContainsKey(location)) if (Manifest.AssetPathMapping1.ContainsKey(location))
throw new System.Exception($"AssetPath have existed : {location}"); throw new System.Exception($"Location have existed : {location}");
else else
Manifest.AssetPathMapping1.Add(location, packageAsset.AssetPath); Manifest.AssetPathMapping1.Add(location, packageAsset.AssetPath);
@ -155,11 +146,19 @@ namespace YooAsset
{ {
string locationWithoutExtension = PathUtility.RemoveExtension(location); string locationWithoutExtension = PathUtility.RemoveExtension(location);
if (Manifest.AssetPathMapping1.ContainsKey(locationWithoutExtension)) if (Manifest.AssetPathMapping1.ContainsKey(locationWithoutExtension))
YooLogger.Warning($"AssetPath have existed : {locationWithoutExtension}"); YooLogger.Warning($"Location have existed : {locationWithoutExtension}");
else else
Manifest.AssetPathMapping1.Add(locationWithoutExtension, packageAsset.AssetPath); Manifest.AssetPathMapping1.Add(locationWithoutExtension, packageAsset.AssetPath);
} }
} }
if (Manifest.EnableAddressable)
{
string location = packageAsset.Address;
if (Manifest.AssetPathMapping1.ContainsKey(location))
throw new System.Exception($"Location have existed : {location}");
else
Manifest.AssetPathMapping1.Add(location, packageAsset.AssetPath);
}
// 填充AssetPathMapping2 // 填充AssetPathMapping2
if (Manifest.IncludeAssetGUID) if (Manifest.IncludeAssetGUID)