当前位置: 代码网 > it编程>编程语言>Asp.net > 【unity资源加载与优化章】Profiler优化工具详解

【unity资源加载与优化章】Profiler优化工具详解

2024年08月02日 Asp.net 我要评论
性能优化开篇

在这里插入图片描述


👨‍💻个人主页

👨‍💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!

👨‍💻 本文由 秩沅 原创

👨‍💻 专栏交流🧧
🟥✨unity100个实战基础✨🟥🎁
🟦✨ unity100个精华一记✨🟦🎁
🟩✨ unity50个demo案例教程✨🟩🎁
🟨✨ unity100个精华细节bug✨🟨🎁

在这里插入图片描述

在这里插入图片描述




前言

  • profiler工具可以查看每一帧游戏的渲染,加载和内存,可精确到耗时资源本身——故此我们了解它的目的是为了跟踪导致性能问题产生的源头
    在这里插入图片描述

🎶(1基础知识


  • 什么是fps

从60到50fps呈现出的是额外3.3毫秒的运行时间,但是从30到20fps呈现出的是额外的16.6毫秒的运行时间。故此帧率越高运行速度越快

  • 什么是ms
  • 什么是帧时间

🎶(2使用操作——观察


  • 在开发过程中,我们可以通过编辑模式的状态下按住ctrl+7 打开profiler性能分析窗口但是,此时的分析结果会有误差
    要获得更好的性能分析结果,应该始终在目标设备上对应用程序进行性能分析(打包测试)操作如下:

在这里插入图片描述


图片来源于官方文档入口


在这里插入图片描述

  • building setting -> 勾选development - autoconnect profiler - deep profiling support

在这里插入图片描述

  • 移动设备性能测试请见:入口

示例

在这里插入图片描述

  • 以上黄色的是 vsync(垂直同步)区域,一般在cpu视图中选择隐藏,在hierarchy视图中选择忽视对应的层级为

⭕cpu usage cpu分析器


  • cpu完成每帧所花费的时间
  • 据上图分析,此时帧时间已超过流畅性值(16.67ms)
  • 帧率fps也在15,这说明画面极其卡顿

hierarchy层级结构

  • 打开层级我们可以看到
    各个部分对于cpu的内存占用率
    在这里插入图片描述
totalselfcallsgc alloctime msself ms
占用时间自身代码运行的时间调用次数gc内存此模块运行的时间自身代码占用的时间

注: gc分配的内存struct和class一次性分配的内存别超过2kb

在这里插入图片描述


timeline时间线性图

cpu 任务执行的顺序和对应线程负责任务

可在其中查看线程情况
在这里插入图片描述


⭕gpu usage gpu分析器


辨别游戏的问题是cpu密集还是gpu密集

一般情况下,gup分析器是默认未激活状态的,需要手动开启(但是开启后会额外增加开销)
如下图所示,点击勾选 gpu usage的选项。开启gpu

在这里插入图片描述

  • 此时可以通过比对cpu 和 gpu 的数据 来判断 游戏是cpu密集还是gpu密集
    在这里插入图片描述

【unityc#专题篇】之c#进阶篇】

【unityc#专题篇】之c#核心篇】

【unityc#专题篇】之c#基础篇】

【unity-c#专题篇】之c#入门篇】

【unityc#专题篇】—进阶章题单实践练习

【unityc#专题篇】—基础章题单实践练习

【unityc#专题篇】—核心章题单实践练习


你们的点赞👍 收藏⭐ 留言📝 关注✅是我持续创作,输出优质内容的最大动力!


在这里插入图片描述


(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com