Fairy GUI + Addressables
//加载FairyGUI Package
AsyncOperationHandle<TextAsset> handle = Addressables.LoadAssetAsync<TextAsset>(fairy_package);
yield return handle;
TextAsset pkgAsset = handle.Result;
UIPackage.AddPackage(
pkgAsset.bytes,
"game",
async (string name, string extension, Type type, PackageItem ite) => {
if(type == typeof(Texture))
{
Texture t = await Addressables.LoadAssetAsync<Texture>(name+extension).Task ;
ite.owner.SetItemAsset(ite, t, DestroyMethod.Destroy);
Addressables.Release(t);
}
Logger.Log($"{name}, {extension}, {type.ToString()}, {ite.ToString()}");
});
// UIPackage.CreateObject("game", "LaunchPage");
GObject go= UIPackage.CreateObjectFromURL("ui://l64dumk9pyg64t");
GObject go1= UIPackage.CreateObjectFromURL("ui://l64dumk9pyg64t");
//go.Dispose();
//go1.Dispose();
GRoot.inst.SetContentScaleFactor(1280, 720, UIContentScaler.ScreenMatchMode.MatchWidthOrHeight);
GRoot.inst.AddChild(go.asCom)
按上面代码使用addressable加载资源 ,运行后能显示出UI, 但是第二次运行报错,显示找到不图片资源,在Unity中查看图片资源时,无法显示,右键 reimport, Unity 直接Crash
没有找到相关结果
已邀请:
3 个回复
谷主
赞同来自:
2. DestroyMethod传Custom,设置NTexture.CustomDestroyMethod为释放资源的方法。
zj831007
赞同来自:
CustomDestroyMethod 没有调用,只有当我关闭Unity时这个方法才被调用,这是什么原因呢?
谷主
赞同来自: