unity内存优化教程笔记

本文介绍了Unity游戏开发中的内存优化策略,包括代码优化、贴图优化和框架设计。代码优化涉及用for替换foreach,避免string连接操作,合理使用gameObject.CompareTag,以及运用对象池。贴图优化包括压缩图片,调整纹理资源,选择合适的压缩格式和利用mipMap。框架设计方面,建议在场景切换时加入loading场景,以及对GUI模块进行生命周期管理,以降低内存峰值和提高性能。
摘要由CSDN通过智能技术生成

优化层面:代码、贴图、框架设计


一、代码优化

1、用for代替foreach

原因:Mono下的foreach频繁调用容易触及堆上限,导致GC过早触发,出现卡顿现象。尤其在update中,用for代替foreach。

2、string

连接两个字符串的操作使用StringBuilder.Append来代替string。

 String aa="abc";
 aa+="def";
 StringBuilder text=new StringBuilder("abc",10);
 text.Append("def");
原因:每次使用string的时候,都会在内存里创建一个新的字符串对象,需要为该对象分配新的空间。

3、gameObject.tag = xxx

使用gameObject.CompareTag("XXX")来代替gameObject.tag = xxx。

原因:gameObject.tag会在内部循环调用对象分配的标签属性以及拷贝额外的内存。
4、使用ObjectPool对象池来管理对象,避免频繁使用的Instance,Destroy。


二、贴图优化<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值