Unity3d 性能优化
来源:互联网 发布:条数计算java 编辑:程序博客网 时间:2024/06/18 07:31
众所周知,Unity3d 的性能优化是一个非常复杂的话题,根据不同的分类标准,可以分为不同的项目,根据以往参考别人的看法,本文将其归纳为为三大类:
CPU
DrawCall
提起优化,就不得不提DrawCall,DrawCall 可以归纳为cpu向gpu的一次调用。
Batching:
Static Batching
Dynamic Batching
将图片打包成图集:
GC
gc的调用时机,当堆内存不足是调用,或者自己调用
GPU
occlusion:
减少顶点的数目:
优化模型:
减少片元的数目:
内存:
程序方面:
01,务必删除脚本中为空或不需要的默认方法。
查阅过一些资料,也曾向一位大牛问过,但是说实话,没找到让我信服答案,不过这条准则肯定是没毛病的。
02,只在一个脚本中使用OnGUI方法。
你就当这是废话吧!
03,避免在OnGUI中对变量,方法进行更新,赋值。输入变量建议在upadate中进行。
通过脚本测试发现,OnGUI的调用频率为update的2倍,通过查阅其它相关资料发现,有人说是至少两倍 (未验证)
04,不要频繁的去获取组件,如果需要,最好声明未变量。
其实这里指的就应该是getcomponent, 客观的讲,我并没有进行相关的测试,从网上得到的结果是: Getcompont 有三个重载的版本,getcompont<T> () getComponet(System.type type); getComponet(string str); 并且它们三个的效率是依次递减的,另外最后一个还涉及的C#的反射机制,故效率可以说是低的可 以。不行你试试,反正我暂时是懒得验证了!
05,尽量使用整型数字,因为IPhone的浮点数计算能力很差
后半句,我不确定,我从来都不屑于用Iphone, 没错,你猜的很对,太穷了,根本就买不起啊
06, 尽量少的进行实例化(instantiate)对象,对于确实需要频繁重新生成的物体,可以使用对象池。
这个我是深有体会,确实应该如此!记住就行,优化必备
- Unity3D 性能优化工具
- Unity3D开发性能优化
- Unity3D性能优化
- unity3d 性能 脚本优化
- unity3D开发性能优化
- Unity3D开发性能优化
- Unity3D开发性能优化
- Unity3D的优化性能
- unity3d的性能优化
- Unity3d之性能优化
- Unity3D性能优化总结
- Unity3D开发性能优化
- Unity3D性能优化
- Unity3D性能优化总结
- Unity3D性能优化总结
- Unity3D - 图形性能优化
- unity3d 性能优化整理
- unity3d性能优化汇总
- 模型调参:分步骤的提升模型的精度
- Java Message Service, 2nd Edition.pdf 英文原版 免费下载
- 自顶向下,逐步求精设计方法
- JAVA 读取文件方法大全
- Java的File.separator
- Unity3d 性能优化
- 底部弹出对话框
- 第三次代码题
- (11) linux shell 命令 -- awk
- Eclipse git插件更新某个本地冲突文件
- 《电路计算C++与MATLAB》学习笔记(三)
- window 让你告别cmd,安装cmder
- 单链表相关操作的C++实现
- 洗牌算法