性能分析工具Profiler——05内存优化

学习笔记适合新手,如有错误请指正。?号处也请各位指点下,谢谢。

内存优化一般来说主要从以下两方面入手:降低资源大小,及时释放不用资源

降低资源大小

要降低资源大小,首先需要分析哪些资源占用较大的比重

1在Build后,打开Console界面,点击界面右上交的下拉菜单

2Open Editor Log打开Editor日志,其中有在整个包中按大小排序的资源列表,它显示了资源的大小以及在安装宝中所占的比例

一般来说,一个3D游戏项目中贴图及UI资源图至少占用50%以上容量,其次就是模型资源、音频资源等,这些资源首先尽量选择合适的压缩格式,并在可接受的范围内适当降低品质

例如一个按钮框素材如果使用1024x1024的尺寸就明显是浪费了,使用256x256的尺寸是更好的选择,而且一定要慎用全屏背景图,这类图每张都会占用非常大的空间

在设计UI时,多考虑UI的复用性,多使用九宫格都是很有帮助的

释放内存中的资源

及时释放内存中的资源是内存优化中非常重要的环节,我们有AssetBundle.Unload、Resources.Unload、GC.Collect等方法可用

其他优化经验

设置目标帧率:通过Application.targetFrameRate设定FPS上限,好处是稳定帧率,减少在高帧率和低帧率间切换造成的不流畅感,这也会减少设备发热和耗电,移动设备上推荐设置为30

音频格式:在游戏中播放时间较长的音乐(如背景音乐)时,建议音频使用OGG或者MP3压缩格式,短促 音效(如枪声,按钮点击音效等)建议采用WAV或者AIF未压缩格式

摄像机:摄像机将远平面设置成合适的距离,远平面过打会将一些不必要的物体加入渲染,降低效率

碰撞:尽量使用立方体或者圆柱体等基本碰撞体,对于复杂的网格模型,请尽量不要使用MeshCollider,而选用基本的立方体或者圆柱体等去拼近似形状

时间: 2024-07-29 02:26:06

性能分析工具Profiler——05内存优化的相关文章

性能分析工具Profiler——01

学习笔记适合新手,如有错误请指正.?号处也请各位指点下,谢谢. Profiler是Unity中一个辅助优化游戏性能的工具,它在游戏运行时实时详细报告游戏各个部分每帧所耗费的时间 例如: 图像渲染部分.动画系统或者脚本各耗费多少时间 在运行场景或者使用设备运行游戏的时候打开Profiler,它会记录并以时间轴为基础显示数据,让你可以知道哪些帧或者功能部分消耗较多的时间 Profiler会检测代码,这会对性能造成一定影响,一般来说,重点关注的时间消耗最多的那些帧里消耗最多的部分 Profiler界面

Visual Studio代码性能分析工具

AMD CodeXL 2011年发布的AMD CodeAnalyst Performance Analyzer 现在已经被AMD CodeXL所替代.AMD CodeXL的主要目的是帮助开发者更好利用CPU, GPU和APU的计算性能,具有强大的GPU调试.CPU和GPU代码分析.及静态的OpenCL内核性能分析等能力. AMD提供了支持Windows 7.Windows 8和Linux系统的单机版CodeXL分析工具.在Visual Studio 2010,2012和2013上也有AMD Co

11个Visual Studio代码性能分析工具

软件开发中的性能优化对程序员来说是一个非常重要的问题.一个小问题可能成为一个大的系统的瓶颈.但是对于程序员来说,通过自身去优化代码是十分困难的.幸运的是,有一些非常棒的工具可以帮助程序员进行代码分析和性能测试,从而大大简化程序员进行代码性能优化的过程.MSDN杂志2011年7月份曾发布主题为“.NET代码分析工具和技术”的那一期,让广大程序员收获颇丰.四年过去之后,这些工具又进一步做出了很多改进,同时也出现了更多的选择.本文对当前主流的一些Visual Studio代码性能分析工具进行简单的梳理

11 个 Visual Studio 代码性能分析工具

软件开发中的性能优化对程序猿来说是一个很重要的问题. 一个小问题可能成为一个大的系统的瓶颈. 可是对于程序猿来说.通过自身去优化代码是十分困难的.幸运的是.有一些很棒的工具能够帮助程序猿进行代码分析和性能測试,从而大大简化程序猿进行代码性能优化的过程.MSDN 杂志 2011 年 7 月份曾公布主题为".NET 代码分析工具和技术"的那一期.让广大程序猿收获颇丰.四年过去之后,这些工具又进一步做出了非常多改进,同一时候也出现了很多其它的选择.很多其它应用代码安全工具请点击:http:/

Java性能优化指南系列(二):Java 性能分析工具

进行JAVA程序性能分析的时候,我们一般都会使用各种不同的工具.它们大部分都是可视化的,使得我们可以直观地看到应用程序的内部和运行环境到底执行了什么操作,所以性能分析(性能调优)是依赖于工具的.在第2章,我强调了基于数据驱动的性能测试是非常重要的,我们必须测试应用的性能并理解每个指标的含义.性能分析和数据驱动非常类似,为了提升应用程序的性能,我们必须获取应用运行的相关数据.如何获取这些数据并理解它们是本章的主题.[本章重点介绍JDK中提供的性能分析工具] 操作系统工具及其分析 程序分析的起点并不

Android 性能优化 五 性能分析工具dumpsys的使用

Android提供的dumpsys工具可以用于查看感兴趣的系统服务信息与状态,手机连接电脑后可以直接命令行执行adb shell dumpsys 查看所有支持的Service但是这样输出的太多,可以通过dumpsys | grep "DUMP OF SERVICE" 仅显示主要的Service的信息 一.列出dumpsys所有支持命令 > adb shell $ dumpsys | grep "DUMP OF SERVICE" 以下是在我个人三星S3手机上的输

Java 性能分析工具

如何利用 JConsole观察分析Java程序的运行,进行排错调优 http://jiajun.iteye.com/blog/810150 如何使用JVisualVM进行性能分析 http://jiajun.iteye.com/blog/1180230 全功能的Java剖析工具(profiler) http://www.blogjava.net/mrzhangshunli/archive/2007/08/27/140088.html http://www.cnblogs.com/jayzee/p

Java 性能分析工具 , 第 2 部分:Java 内置监控工具

引言 本文为 Java 性能分析工具系列文章第二篇,第一篇:操作系统工具.在本文中将介绍如何使用 Java 内置监控工具更加深入的了解 Java 应用程序和 JVM 本身.在 JDK 中有许多内置的工具,其中包括: jcmd:打印一个 Java 进程的类,线程以及虚拟机信息.适合用在脚本中.使用 jcmd - h 来查看使用方法. jconsole:提供 JVM 活动的图形化展示,包括线程使用,类使用以及垃圾回收(GC)信息. jhat:帮助分析内存堆存储. jmap:提供 JVM 内存使用信息

系统级性能分析工具perf的介绍与使用

测试环境:Ubuntu14.04  on VMWare Kernel:3.13.0-32 系统级性能优化通常包括两个阶段:性能剖析(performance profiling)和代码优化.性能剖析的目标是寻找性能瓶颈,查找引发性能问题的原因及热点代码.代码优化的目标是针对具体性能问题而优化代码或编译选项,以改善软件性能. 在性能剖析阶段,需要借助于现有的profiling工具,如perf等.在代码优化阶段往往需要借助开发者的经验,编写简洁高效的代码,甚至在汇编级别合理使用各种指令,合理安排各种指