返回介绍

内存 (Memory) 区域

发布于 2021-06-19 18:03:22 字数 1673 浏览 885 评论 0 收藏 0

有两种模式可检测应用程序的内存使用情况。在底部面板顶端的下拉菜单中选择其中一种模式。

简单视图 (Simple View)

简单模式显示 unity 中上一层次每帧的实时内存使用情况。

Unity 给分配保留内存池,避免频繁向 os 询问内存。显示为保留量和使用量。 其覆盖的区域有:

  • Unity 本机 unity 代码中分配跟踪的内存使用量
  • Mono 堆的总大小和托管代码已使用的堆大小,该部分内存会进行垃圾回收
  • GfxDriver 驱动程序中纹理 (Textures)、渲染目标 (Rendertargets)、着色器 (shaders) 和网格数据 (Meshdata) 的估计内存使用量
  • FMOD 估计的音频 (Audio) 驱动程序内存使用量
  • 分析器 (Profiler) 分析器数据使用的内存

显示的数值与任务管理器 (Task Manager) 和活动监视器 (Activity Monitor) 中的值不同,因为有些内存使用不会被内存分析器跟踪。其中包括部分驱动程序和可执行代码 (Executable code) 使用的内存。

一些最常用的资源/工程类型都显示内存统计数据,包括计数和已使用内存(主内存和视频内存)

  • 纹理 (Textures)
  • 网格 (Meshes)
  • 材质 (Materials)
  • 动画 (Animations)
  • 音频 (Audio)
  • 对象计数 (Object Count) 为已创建对象 (Object) 的总数。如果随着时间的延长,数量不断增加,则意味着游戏在创建一些永不销毁的对象。

详细视图 (Detailed View)

详细视图 (Detailed View) 方便获得当前状态的快照。点击“取样 (Take Sample)” 按钮捕获详细的内存使用情况。获取该数据需要一些时间,因而详细视图 (Detailed View) 无法提供 实时细节。取样后分析器窗口会更新树形视图,可供浏览不同的内存使用情况。

将显示单个资源和游戏对象的内存使用情况,以及对象处于内存中的原因。原因包括以下几种:

  • 从本机代码中引用 (Referenced from native code)
  • 场景对象 (Scene object)
  • 内置资源 (Builtin Resources)
  • 标为不保存 (Marked as don't save)

在编辑器中单击列表中的一个对象,将转至工程或场景视图中的该对象。

在编辑器中分析时,内存分析器显示的所有数值都是编辑器的使用值。因为编辑器性能消耗大,这些数值比在播放器中运行的值大。如果要获得应用程序的更精确数值和内存使用情况,请使用分析器连接连到正在运行的播放器,这将给出设备的真实使用信息。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文