Profiler窗口的使用
参考Unity手册路径:Working In Unity> Advanced Development>Profiler Overview
窗口路径:window> analysis> profiler
窗口简介
分析种类:内存、CPU……
模式,可以监听运行时/编辑器时 的性能。以及连接其他设备的IP。
录制按钮
运行时清空显示界面(7)
深度分析。开启后会消耗更多的性能。一般不开。具体参考手册说明
分析种类切换
分析数据图形界面
内存检测窗口
简单模式参考手册即可。这里讲一下详细模式的使用。
点击……PlayerMode。即可看见 Other、Not Saved…… 四个组。 其中资源主要在Assets组中,比如图中的 Texture2D中的 Texture1 就是使用Addressable 加载的 小埋头像图片(名称Texture1) ,目前引用次数为4(并非历史记录总和而是实时增量计算).
在右侧窗口,可以看见引用该资源的 对象是哪些。
在Scene Memory中的 MonoBehavior中能找到我们 写的test 脚本。当在监视面板删除Test脚本(运行时),那么过一会检测结果中,就没有 Test了。
结合Addressable使用的问题
先说小麦头像(远端加载的问题),卸载过程中注意如下:
一定要通过
Addressable.Release(AsyncOperationHandle)
卸载。(通过句柄卸载)-
一定要把所有相关的句柄都要卸载完毕。
获取下载大小函数执行完的句柄
下载依赖包函数执行返回的句柄
加载小麦头像资源的句柄
测试完毕后,Texture1(小麦头像)资源在分析器中便消失,卸载成功。
还有个问题:
本地的资源组包,默认就在分析器中看得见,即使没有调用加载函数。
猜测:根据32个引用来看,都是Editor的引用,是否意味着只是在编辑器模式下为了更好的编辑体验而设计,在打包过后并不会出现这个问题?
现象:在使用Addressable的项目中,即使空场景运行,也需要打包一次。