86. 2023-11-12周总结

  1. YooAsset和HybridCLR插件化

1. YooAsset和HybridCLR插件化

将用到的一些客户端插件,插件化,封装一些流程包括运行时和打包时,这样其他项目要用的化直接引入这个插件即可。

在做YooAseet封装的时候遇到点问题,原因是YooAsset更新太频繁了,而且动不动就该接口,导致之前写好的代码用不了。

例如这两个接口改动前后的第三个参数,旧版表示是否加载完成是否立即激活,新版表示加载完是否挂起,结果导致我升级完场景加载不出来,一直在怀疑是否我插件化搞得有问题,最后才找到这个原因。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// 新版接口
/// <summary>
/// 异步加载场景
/// </summary>
/// <param name="location">场景的定位地址</param>
/// <param name="sceneMode">场景加载模式</param>
/// <param name="suspendLoad">场景加载到90%自动挂起</param>
/// <param name="priority">加载的优先级</param>
public SceneHandle LoadSceneAsync(string location, LoadSceneMode sceneMode = LoadSceneMode.Single, bool suspendLoad = false, uint priority = 0);

// 旧版接口
/// <summary>
/// 异步加载场景
/// </summary>
/// <param name="location">场景的定位地址</param>
/// <param name="sceneMode">场景加载模式</param>
/// <param name="activateOnLoad">加载完毕时是否主动激活</param>
/// <param name="priority">优先级</param>
public SceneOperationHandle LoadSceneAsync(string location, LoadSceneMode sceneMode = LoadSceneMode.Single, bool activateOnLoad = true, int priority = 100);