第三章 热更新资源与代码
一.修改热更场景
场景很简单,新增了一个按钮
新增一个图片预制体
新增热更脚本MainWindowUI.cs
,并挂载在Canvas上,然后将Button拖入LoadPrefab
using UnityEngine;
using UnityEngine.AddressableAssets;
using UnityEngine.UI;
public class MainWindowUI : MonoBehaviour
{
public Button LoadPrefab;
private void Start()
{
LoadPrefab.onClick.AddListener(async () =>
{
var picture = await Addressables.LoadAssetAsync<GameObject>("Image").Task;
Instantiate(picture, this.transform, false);
});
}
}
二.打包测试
因为修改了脚本,所以需要再次编译dll
复制编译后的dll到Assets
在AddressableGroup内更新Build资源
替换打包资源,先复制./hybridclr_addressables/Library/com.unity.addressables/aa/Windows
下所有文件
将该文件夹所有文件复制替换./hybridclr_addressables/output/Win64/HybridCLR_Addressables_Data/StreamingAssets/aa
下所有文件
运行HybridCLR_Addressables.exe
可以看见新加的Button正确加载,点击button
新加的预制体也正确出现,说明热更的脚本生效了
总结
本教程到此结束,完整工程链接点这里
因为HybridCLRData与打包后的文件过大,所有HybridCLRData文件已经初始化,请自行按照第一章流程来配置环境
打包后的相关文件也已删除