GJM :Unity3D 5.x性能分析工具与应用方法
原帖地址 http://gad.qq.com/content/coursedetail/7180616
Unity Profiler
Unity => Window=>Profiler
Profiler=>CPU 绿色渲染占用时间、蓝色逻辑代码、橙色物理模块、灰色GC占用时间
Unity => Winwodw =>Frame Debug 帧调试器渲染工作
测试尽量使用真机进行测试分析
在Editor中进行调试得到的结果偏大
性能问题:卡顿 耗电 发热 内存占用过高
卡顿 耗电 发热
CPU=> 1.GPU DrawCall过多 2.UI问题 3.代码逻辑开销
CPU=> 1.GPU Shader复杂 2.带宽问题
内存占用过高
内存占用过高 =>纹理,网格,动画,音频,mono堆内存
---------------------------------------------------------------------------
常见瓶颈
CPU => 渲染,UI,代码/加载,动画。物理
GPU =》 Shader,overdraw,阴影,光照
内存 =》 纹理,mono堆内存,assetbundle,音频,动画等
-------------------------------------------------------------------------------
CPU性能参考指标
帧率FPC 每秒绘制的帧数
30帧 没秒30毫秒时 比较OK的体验、每秒60帧是较好的体验 显示器的刷新帧率是每秒60帧
开启垂直同步可以让帧率和显示器的刷新频率保持一致
DrawCall
以使用OpenGL的为参考 在每次绘制模型之前准备好顶点数据,调用一系列的API来设置材质和参数等环境
然后unity调用一个OpenGL接口 GLDraw来告诉GPU开始渲染
每个DC 只能绘制65535个顶点 带宽很有限
----------------------------------------------------------------
GPU 性能诊断
透明物体 阴影 实时光照 屏幕后处理
透明物体overdraw查看
---------------------------------------------------------------
内存诊断
资源内存占用
unity引擎内存占用
mono托管堆内存占用
资源内存 占用
纹理资源 网格 材质 动画 音频 纹理资源 占用主要
内存推荐用量: 纹理资源50MB 、网格资源20MB 、 动画片段15MB 、 音源片段15MB 、 Mono堆内存40MB、其他10MB
GJM :Unity3D 5.x性能分析工具与应用方法的更多相关文章
- Chrome性能分析工具Coverage使用方法
操作路径如下: 打开控制台-->点击‘Sources’-->ctrl+shift+p-->在命令窗口输入coverage-->在下边新出现的窗口中点击左上角刷新按钮. 界面如下 ...
- Hi,腾讯WeTest联合Unity官方打造的性能分析工具UPA,今日全新发布!
早在2016年ChinaJoy开始,WeTest曾受邀出席过Unity中国的线下性能场的活动,介绍我们的自动化框架和王者荣耀的故事.当时的活动很成功,期间我们收到了不少Unity开发者的好评,也为我们 ...
- Java 性能分析工具 , 第 3 部分: Java Mission Control
引言 本文为 Java 性能分析工具系列文章第三篇,这里将介绍如何使用 Java 任务控制器 Java Mission Control 深入分析 Java 应用程序的性能,为程序开发人员在使用 Jav ...
- Java 性能分析工具 , 第 2 部分:Java 内置监控工具
引言 本文为 Java 性能分析工具系列文章第二篇,第一篇:操作系统工具.在本文中将介绍如何使用 Java 内置监控工具更加深入的了解 Java 应用程序和 JVM 本身.在 JDK 中有许多内置的工 ...
- Java 性能分析工具 , 第 1 部分: 操作系统工具
引言 性能分析的前提是将应用程序内部的运行状况以及应用运行环境的状况以一种可视化的方式更加直接的展现出来,如何来达到这种可视化的展示呢?我们需要配合使用操作系统中集成的程序监控工具和 Java 中内置 ...
- 系统级性能分析工具perf的介绍与使用
测试环境:Ubuntu16.04(在VMWare虚拟机使用perf top存在无法显示问题) Kernel:3.13.0-32 系统级性能优化通常包括两个阶段:性能剖析(performance pro ...
- 性能分析工具-PerfView
Roslyn的PM(程序经理) Bill Chiles,Roslyn使用纯托管代码开发,但性能超过之前使用C++编写的原生实现,这有什么秘诀呢?他最近写了一篇文章叫做<Essential Per ...
- 11个Visual Studio代码性能分析工具
软件开发中的性能优化对程序员来说是一个非常重要的问题.一个小问题可能成为一个大的系统的瓶颈.但是对于程序员来说,通过自身去优化代码是十分困难的.幸运的是,有一些非常棒的工具可以帮助程序员进行代码分析和 ...
- Linux性能分析工具的安装和使用
转自:http://blog.chinaunix.net/uid-26488891-id-3118279.html Normal 0 7.8 磅 0 2 false false false EN-US ...
随机推荐
- PHP制作查询租房表
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- JavaWeb表单数据的获取方式
表单页面 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8&q ...
- G2 2.0 更灵活、更强大、更完备的可视化引擎!
概述 G2作为一款技术产品,自诞生以来,服务于广大的Web工程师群体和一部分数据分析师.一直来,G2 因其易用的语法和扎实的可视化理论基础,广受使用者好评.G2 1.x 的可视化能力已经非常强大,使用 ...
- KnockoutJS 3.X API 第七章 其他技术(2) 使用扩展器来增加可观察量(监控属性)
Knockout observables提供了支持读取/写入值并在值改变时通知订阅者所需的基本功能. 但在某些情况下,您可能希望向可观察者添加其他功能. 这可能包括通过在可观察者前面放置一个可写的计算 ...
- jQuery动画的实现
没有引入deferred机制,其余流程都有了 //////////// //创建动画缓动对象 // //////////// function Tween(value, prop, animation ...
- Android入门(二十二)解析JSON
原文链接:http://www.orlion.ga/687/ 解析JSON的方式有很多,主要有官方提供的 JSONObject,谷歌的开源库 GSON.另外,一些第三方的开源库如 Jackson.Fa ...
- 在 ML2 中配置 VXLAN - 每天5分钟玩转 OpenStack(110)
上一节我们介绍了 VXLAN 的基本概念,今天介绍如何在 ML2 中启用 VXLAN. 在 /etc/neutron/plugins/ml2/ml2_conf.ini 设置 vxlan network ...
- Android接入百度自动更新SDK
一:前言 公司的app,上传到百度应用市场,然后说必须要接入百度的自动更新sdk才能上架,于是从百度官网上去下载jar包,下载的时候必须要带上数据统计,如果使用自动的jar包,还需要带上广告联盟,坑爹 ...
- MapReduce的理解
1 什么是MapReduce? Map本意可以理解为地图,映射(面向对象语言都有Map集合),这里我们可以理解为从现实世界获得或产生映射.Reduce本意是减少的意思,这里我们可以理解为归并前面Map ...
- Oracle手边常用命令及操作语句
Oracle手边常用命令及操作语句 作者:白宁超 时间:2016年3月4日11:24:08 摘要:日常使用oracle数据库过程中,常用脚本命令莫不是用户和密码.表空间.多表联合.执行语句等常规操作. ...