【unity优化二】零碎经验集合
来源:互联网 发布:单片机音阶频率表 编辑:程序博客网 时间:2024/06/05 20:24
1、闪退原因与处理
1)内存分配不足,例如IOS上C#代码通过AOT(Ahead of time)编译,而不是JIT(Just in time)。AOT实现反射机制需要预先分配一块内存存类的元数据,当过度使用泛型时导致类元数据过大,,预分配内存不够就闪退抛出
2)无限递归导致栈溢出闪退
3)程序逻辑出现两个空指针异常导致闪退
2、卡顿原因与处理
1)GC Collect垃圾回收
2)资源加载时机错:移动或战斗过程中才去加载和实例化资源(如:特效资源)导致顿卡,建议预加载。
3)特效Shader太耗:建议顶点Shader中的乘法运算不超过3次,像素Shader中乘法运算不超过2次,尽量避免三角函数、幂函数等复杂数学运算。人物角色移动过程中烟雾特效太耗,移动过程中每走一步new一个烟雾,建议去掉这个特效。
4)UI主界面刷新逻辑:每秒刷新主界面的逻辑UIPanelMainCity.UpdateData() 中逻辑处理每次分配了2M的大数组,大数组分配会造成顿卡,通过Cache的方式优化掉改数组。
3、耗电和发热
4、摄像机
将远平面设置成合适的距离,远平面过大会将一些不必要的物体加入渲染,降低效率。
另外我们可以根据不同的物体来设置摄像机的远裁剪平面。Unity 提供了可以根据不同的 layer 来设置不同的 view distance ,所以我们可以实现将物体进行分层,大物体层设置的可视距离大些,而小物体层可以设置地小些,另外,一些开销比较大的实体(如粒子系统)可以设置得更小些等等。 0 0
- 【unity优化二】零碎经验集合
- Unity内存优化经验分享
- unity性能优化(二)
- Unity - 优化(二)
- Unity内存优化方案集合
- unity手游优化经验(记录)
- 【unity实用技能】性能优化经验分享
- Unity技术支持团队性能优化经验分享
- Unity技术支持团队性能优化经验分享
- [Unity-9] Unity性能优化二
- struts2零碎集合
- 数据库优化_零碎
- android开发的零碎经验
- Unity零碎知识点记录1
- C++基本(二)零碎
- 零碎笔记(二)
- Unity项目优化--开发项目的一点经验
- Unity 3D优化游戏运行性能的经验
- extern可以声明一个变量而不定义它,extern可以声明一个类吗?
- [python]findall函数讲解
- 小紫书 习题2-5 分数化小数(decimal)
- MySQL 中事务详解
- O-C相关-03:面向对象概念的具体介绍
- 【unity优化二】零碎经验集合
- 当你访问网站时,Session会立刻建立吗?
- 挑战程序设计初级篇例题
- 计算几何中的精度问题
- [Git 工作流指南]Git Workflows and Tutorials
- [2015-08-02] python014
- 实现自定义对话框中的属性动画
- 虚函数与多态性
- UE4信息交互-命令行执行自定义事件ConsoleCommand