Unity判断平台是否为Android的方法

前言

每次进行游戏优化的时候都用这个工具查看内存泄漏啊、代码优化啊之类的东西。真的好用,但是之前也就是自己摸索一下就用了,这次所以就跑去看看 官网教程。

profiler工具介绍

Windows ——> analysis——>profiler 打开profiler面板
unity 判断是否是android unity查看_数据


1是菜单栏 2是模块选择面板 3是帧视图 4是模块详细信息

菜单栏中选中Record,运行时就会自动收集分析数据,鼠标左键点击帧视图就会暂停程序,显示出当前帧的综合信息.

菜单栏

unity 判断是否是android unity查看_菜单栏_02


record:选中后开始收集数据

deepProfile:更深层次的显示代码的堆栈调用信息(会占用大量内存)

profile Editor:收集unity编辑器占用的资源(一般不用)

Editor:当前收集信息的目标源,设置这个能以真机为目标设备采集数据

Allocation CallStacks:设置这个可以在模块详细信息或者timeline视图观察GC的完整堆栈

Clear on Play:运行时清空当前视图

Clear:清空当前视图

Load:加载统计数据

Save:保存统计数据

Frame:指示当前 查看的帧号,前后箭头可以切换上一帧下一帧,按键盘的左右键效果一样

帧视图

unity 判断是否是android unity查看_内存泄漏_03


模块视图中的正方形颜色就是帧视图中该模块的颜色,在模块视图中针对不同数据项可以进行隐藏与排序。左键点击帧帧视图Unity会暂停运行。模块详细信息会显示当前选中帧的详细信息。

模块视图

unity 判断是否是android unity查看_unity 判断是否是android_04


Add Profiler:添加模块视图

CPU Usage:Cpu信息视图,关掉这个视图,仍然会采集数据,最主要的分析视图,通过这个可以确定渲染、物理、代码、动画等模块当前运行完毕所需要的时间,从而进一步决定是否就不同模块再进行更具体的分析。

CPU Usage:GPU模块默认是取消勾选的,收集数据会有很大的开销,有的平台或设备不一定支持。

Rendering:这个视图的统计的数据跟Game视图中的stats(Statistic面板)统计渲染方面的的东西差不多是一样的,顶点数,三角形,批次合并数,等等

Memory:可以查看各个部分对内存的占用情况,比如贴图,GC,Meshes等

Audio:声音统计信息

Physics:物理统计信息

UI:UI统计信息

Global Illumination: 光照统计信息


模块详细信息

unity 判断是否是android unity查看_数据_05

通过profiler分析优化游戏性能

  1. 不要等到游戏开发完毕的时候再来统一优化游戏性能,如果加了某个功能发现性能异常就立即排查
  2. 开发的时候时刻注意资源优化,不要自己给自己挖坑
  3. 如果开发的时候很认真的对待写的代码,用的资源。那么最后进行更深层次的针对性的优化会简单很多
  4. 游戏卡顿的原因,一个是整体帧率太低,一般30帧往上都能接受,第二个是帧率变化太大,某个Update需要很长时间才执行完毕,这时就会卡。

一般而言,游戏性能优化基本可以这样分类,资源的优化与脚本的优化
美术资源在开发时就应该遵循够用的前提下,用最小的资源。如果到了这后期出现较大的瓶颈,
(程序能做的就是针对不同平台设置相应不同的压缩方式), 如果仍然不能满足需求,让美术优化某些资源可能比程序自己优化要效果好得多。程序要做的就是通过分析工具找出需要优化的资源。脚本优化的话主要也是优化自己写的代码。下面我们就来看看如何定位问题:

  • 首先我们从CPU模块开始分析
  • 禁用垂直同步,这部分不需要我们关心,在模块视图中隐藏VSync,另外每当我们在“层次结构”视图中看到一个名为WaitForTargetFPS 的函数时,这意味着我们的游戏正在等待VSync。
  • 渲染限制, 渲染是性能问题的常见原因。在尝试解决渲染问题之前,确定我们的游戏是受CPU限制还是受GPU限制很重要,因为这些情况需要不同的处理方法。
    如果可以进行GPU Usage分析,那么看下图中的部分,CPU与GPU谁用的处理时间长,性能瓶颈就在谁那里。

    如果不能进行Gpu Usage分析,那么选中Cup Usage,在详细信息视图中,选Hierarchy,按time ms时间排序,如果Gfx.WaitForPresent函数花时间最长,说明CPU在等待GPU。
  • 要进行不同的性能分析基本靠着Cpu Usage的详细信息,就可以大致分析出性能瓶颈,然后看需要是否要进行更深层次的分析。


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空