Unity 内存性能分析器 (Memory Profiler)

一、 安装

安装有两种
方式一:
add package : com.unity.memoryprofiler
方式二:
From Packages : Unity Registry 搜索 Memory Profiler

二、 使用

  • 打开:Windows - > Analysis - > Memory Profiler

  • 打开MemoryProfiler界面,可以链接真机检测,也可以在Editor检测。 点击Capture 保存当下帧的内容。
  • Capture 完毕之后,会保存本地一个镜像 : * .snap文件

  • 点击Snap 会显示对应帧的详细信息

三、 单帧检测

  • 单帧检测, 一般去看工程内的资源, 去检查占用内存特别大的游戏对象。

在TreeMap界面进行检查, 这里已经分好类, 同时可以根据Size的大小进行排序


查看内存占用较大的游戏对象进行优化处理

  • 内存地址查看
    Fragmentation 页签进行查看, 点击对应的地址块,下方可显示详细信息

四、 两帧对比检测

一般使用两帧率对比用于检测内存泄漏。
在要对比的节点分别进行Capture, 点击Compare Snapshots进行对比,在分别点击两个Capture,进行对比

Summary页签可看汇总的对比内容


在Objects and Allocations 页签可看详细的对比内容, 一般进行筛选。
筛选方式:Diff -> Match -> new

筛选之后就可以进行详细分析了, 可通过查看Size, Type, Referenced By等标签查看对应的游戏对象。

对于有问题的对象, 可以查看对应详细的引用列表找到具体是哪里出问题

五、总结

MemoryProfiler 是一个非常好用的检查内存问题的工具,以下问题都可以通过该工具进行排查

  • 查找有问题的游戏资源,例如:Mesh和贴图非常大的美术资源
  • 内存泄漏问题
  • 游戏对象引用问题
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码

)">
< <上一篇
下一篇>>