unity3d在实例化数个模型都帧数大幅下降

RT,我在unity3d中实例化了10个以上的球体时就会导致游戏帧数大幅下降,在实例化钱场景中几乎是空的,实例化的球体有一下几个特点:
高速移动
带有一个负责计算移动的脚本
带有一个光源
求问是什么原因,是因为我的脚本写得太差效率低下么?还是说是其他原因。
是用在PC平台的,另,每个球体都有一个刚体组件
最新回答
无心

2024-10-24 08:07:26

根据你说的情况,基本猜测你是脚本写的有些问题。
另外,你对实例化的方法理解可能存在一些问题。
就实例化10个刚体球,一般不会使游戏帧率变化很大。不太清楚你是不是将实例化写到循环里面了,如果写到循环里面,那么就会出现帧率大减的情况。
unity里面最好实例化是场景开始的时候就准备好,另外你实例化时应该提前做好prefab模型才好。
如啼眼

2024-10-24 08:09:38

Light,Rigidbody,Script都会影响性能,你可以逐个禁用,不就可以发现是哪个影响最大了吗:)
提高性能的办法可以降低光源/阴影的质量、范围……用自编脚本替代Rigidbody……优化物体移动的脚本。
还有物体面数多了也会影响性能,考虑是球体又是PC平台,除非你把球体面数做得离谱,否则应该影响不大。
小棉袄

2024-10-24 08:05:38

这个要看用在什么平台上了
对于实例化,还是比较耗时的,可以看下对象池ObjectPool方面的内容,会有帮助的
你好调皮

2024-10-24 08:05:01

估计是移动脚本写的有问题,如果是用刚体移动的话计算量会很大
不给糖吃就胡闹

2024-10-24 08:03:14

光源,吃内存