yoo2.2,9
This commit is contained in:
Alex-Rachel
2025-01-25 13:46:17 +08:00
parent 634a392a1f
commit 6166fd24c6
584 changed files with 15684 additions and 11714 deletions

View File

@@ -6,15 +6,15 @@ namespace YooAsset
internal class YooAssetSettings : ScriptableObject
{
/// <summary>
/// 清单文件名称
/// YooAsset文件名称
/// </summary>
public string ManifestFileName = "PackageManifest";
public string DefaultYooFolderName = "yoo";
/// <summary>
/// 默认的YooAsset文件夹名称
/// 资源清单前缀名称(默认为空)
/// </summary>
public string DefaultYooFolderName = "package";
public string PackageManifestPrefix = string.Empty;
/// <summary>
/// 清单文件头标记
@@ -29,43 +29,12 @@ namespace YooAsset
/// <summary>
/// 清单文件格式版本
/// </summary>
public const string ManifestFileVersion = "2.0.0";
/// <summary>
/// 缓存的数据文件名称
/// </summary>
public const string CacheBundleDataFileName = "__data";
/// <summary>
/// 缓存的信息文件名称
/// </summary>
public const string CacheBundleInfoFileName = "__info";
/// <summary>
/// 缓存的资源文件的文件夹名称
/// </summary>
public const string CacheFilesFolderName = "CacheFiles";
/// <summary>
/// 缓存的清单文件的文件夹名称
/// </summary>
public const string ManifestFolderName = "ManifestFiles";
/// <summary>
/// 记录应用程序版本的文件名称
/// </summary>
public const string AppFootPrintFileName = "ApplicationFootPrint.bytes";
public const string ManifestFileVersion = "2.2.5";
/// <summary>
/// 构建输出文件夹名称
/// </summary>
public const string OutputFolderName = "OutputCache";
/// <summary>
/// 构建输出的报告文件
/// </summary>
public const string ReportFileName = "BuildReport";
}
}

View File

@@ -1,4 +1,5 @@
using UnityEngine;
using System.IO;
using UnityEngine;
namespace YooAsset
{
@@ -35,9 +36,12 @@ namespace YooAsset
/// <summary>
/// 获取构建报告文件名
/// </summary>
public static string GetReportFileName(string packageName, string packageVersion)
public static string GetBuildReportFileName(string packageName, string packageVersion)
{
return $"{YooAssetSettings.ReportFileName}_{packageName}_{packageVersion}.json";
if (string.IsNullOrEmpty(Setting.PackageManifestPrefix))
return $"{packageName}_{packageVersion}.report";
else
return $"{Setting.PackageManifestPrefix}_{packageName}_{packageVersion}.report";
}
/// <summary>
@@ -45,7 +49,10 @@ namespace YooAsset
/// </summary>
public static string GetManifestBinaryFileName(string packageName, string packageVersion)
{
return $"{Setting.ManifestFileName}_{packageName}_{packageVersion}.bytes";
if (string.IsNullOrEmpty(Setting.PackageManifestPrefix))
return $"{packageName}_{packageVersion}.bytes";
else
return $"{Setting.PackageManifestPrefix}_{packageName}_{packageVersion}.bytes";
}
/// <summary>
@@ -53,7 +60,10 @@ namespace YooAsset
/// </summary>
public static string GetManifestJsonFileName(string packageName, string packageVersion)
{
return $"{Setting.ManifestFileName}_{packageName}_{packageVersion}.json";
if (string.IsNullOrEmpty(Setting.PackageManifestPrefix))
return $"{packageName}_{packageVersion}.json";
else
return $"{Setting.PackageManifestPrefix}_{packageName}_{packageVersion}.json";
}
/// <summary>
@@ -61,7 +71,10 @@ namespace YooAsset
/// </summary>
public static string GetPackageHashFileName(string packageName, string packageVersion)
{
return $"{Setting.ManifestFileName}_{packageName}_{packageVersion}.hash";
if (string.IsNullOrEmpty(Setting.PackageManifestPrefix))
return $"{packageName}_{packageVersion}.hash";
else
return $"{Setting.PackageManifestPrefix}_{packageName}_{packageVersion}.hash";
}
/// <summary>
@@ -69,7 +82,120 @@ namespace YooAsset
/// </summary>
public static string GetPackageVersionFileName(string packageName)
{
return $"{Setting.ManifestFileName}_{packageName}.version";
if (string.IsNullOrEmpty(Setting.PackageManifestPrefix))
return $"{packageName}.version";
else
return $"{Setting.PackageManifestPrefix}_{packageName}.version";
}
#region
/// <summary>
/// 获取YOO的Resources目录的加载路径
/// </summary>
public static string GetYooResourcesLoadPath(string packageName, string fileName)
{
if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
return PathUtility.Combine(packageName, fileName);
else
return PathUtility.Combine(Setting.DefaultYooFolderName, packageName, fileName);
}
/// <summary>
/// 获取YOO的Resources目录的全路径
/// </summary>
public static string GetYooResourcesFullPath()
{
if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
return $"Assets/Resources";
else
return $"Assets/Resources/{Setting.DefaultYooFolderName}";
}
/// <summary>
/// 获取YOO的编辑器下内置文件根目录
/// </summary>
public static string GetYooEditorBuildinRoot()
{
if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
return PathUtility.Combine(Application.dataPath, "StreamingAssets");
else
return PathUtility.Combine(Application.dataPath, "StreamingAssets", Setting.DefaultYooFolderName);
}
/// <summary>
/// 获取YOO的PC端内置文件根目录
/// </summary>
public static string GetYooStandaloneBuildinRoot()
{
if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
return Application.streamingAssetsPath;
else
return PathUtility.Combine(Application.streamingAssetsPath, Setting.DefaultYooFolderName);
}
/// <summary>
/// 获取YOO的移动端内置文件根目录
/// </summary>
public static string GetYooMobileBuildinRoot()
{
if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
return Application.streamingAssetsPath;
else
return PathUtility.Combine(Application.streamingAssetsPath, Setting.DefaultYooFolderName);
}
/// <summary>
/// 获取YOO的Web端内置文件根目录
/// </summary>
public static string GetYooWebBuildinRoot()
{
if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
return Application.streamingAssetsPath;
else
return PathUtility.Combine(Application.streamingAssetsPath, Setting.DefaultYooFolderName);
}
/// <summary>
/// 获取YOO的编辑器下缓存文件根目录
/// </summary>
public static string GetYooEditorCacheRoot()
{
if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
{
string projectPath = Path.GetDirectoryName(Application.dataPath);
projectPath = PathUtility.RegularPath(projectPath);
return projectPath;
}
else
{
// 注意:为了方便调试查看,编辑器下把存储目录放到项目根目录下。
string projectPath = Path.GetDirectoryName(Application.dataPath);
projectPath = PathUtility.RegularPath(projectPath);
return PathUtility.Combine(projectPath, Setting.DefaultYooFolderName);
}
}
/// <summary>
/// 获取YOO的PC端缓存文件根目录
/// </summary>
public static string GetYooStandaloneCacheRoot()
{
if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
return Application.dataPath;
else
return PathUtility.Combine(Application.dataPath, Setting.DefaultYooFolderName);
}
/// <summary>
/// 获取YOO的移动端缓存文件根目录
/// </summary>
public static string GetYooMobileCacheRoot()
{
if (string.IsNullOrEmpty(Setting.DefaultYooFolderName))
return Application.persistentDataPath;
else
return PathUtility.Combine(Application.persistentDataPath, Setting.DefaultYooFolderName);
}
#endregion
}
}