mirror of https://github.com/tuyoogame/YooAsset
update asset bundle builder
parent
2384921477
commit
ef8a8ff497
|
@ -59,31 +59,6 @@ namespace YooAsset.Editor
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取所有的打包资源
|
||||
/// </summary>
|
||||
public List<BuildAssetInfo> GetAllAssets()
|
||||
{
|
||||
List<BuildAssetInfo> result = new List<BuildAssetInfo>(BundleInfos.Count);
|
||||
foreach (var bundleInfo in BundleInfos)
|
||||
{
|
||||
result.AddRange(bundleInfo.BuildinAssets);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取AssetBundle内构建的资源路径列表
|
||||
/// </summary>
|
||||
public string[] GetBuildinAssetPaths(string bundleName)
|
||||
{
|
||||
if (_bundleInfoDic.TryGetValue(bundleName, out BuildBundleInfo bundleInfo))
|
||||
{
|
||||
return bundleInfo.GetBuildinAssetPaths();
|
||||
}
|
||||
throw new Exception($"Not found {nameof(BuildBundleInfo)} : {bundleName}");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取构建管线里需要的数据
|
||||
/// </summary>
|
||||
|
@ -117,5 +92,18 @@ namespace YooAsset.Editor
|
|||
}
|
||||
throw new Exception($"Not found bundle : {bundleName}");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 创建着色器信息类
|
||||
/// </summary>
|
||||
public void CreateShadersBundleInfo(string shadersBundleName)
|
||||
{
|
||||
if (IsContainsBundle(shadersBundleName) == false)
|
||||
{
|
||||
var shaderBundleInfo = new BuildBundleInfo(shadersBundleName);
|
||||
BundleInfos.Add(shaderBundleInfo);
|
||||
_bundleInfoDic.Add(shadersBundleName, shaderBundleInfo);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -40,17 +40,13 @@ namespace YooAsset.Editor
|
|||
throw new Exception($"构建过程中发生错误 : {exitCode}");
|
||||
}
|
||||
|
||||
// 着色器适配
|
||||
// 创建着色器信息
|
||||
// 说明:解决因为着色器资源包导致验证失败。
|
||||
// 例如:当项目里没有着色器,如果有依赖内置着色器就会验证失败。
|
||||
string shadersBundleName = buildMapContext.ShadersBundleName;
|
||||
if (buildResults.BundleInfos.ContainsKey(shadersBundleName))
|
||||
{
|
||||
if (buildMapContext.IsContainsBundle(shadersBundleName) == false)
|
||||
{
|
||||
var shaderBundleInfo = new BuildBundleInfo(shadersBundleName);
|
||||
buildMapContext.BundleInfos.Add(shaderBundleInfo);
|
||||
}
|
||||
buildMapContext.CreateShadersBundleInfo(shadersBundleName);
|
||||
}
|
||||
|
||||
BuildLogger.Log("Unity引擎打包成功!");
|
||||
|
|
Loading…
Reference in New Issue