Unity 3D 性能优化(三)

CenterOfMass

在处理物理碰撞时,尤其是OnTrigger族消息,由于要手动计算碰撞点会经常要用到碰撞体的质心。获取质心常用的有三种方式:
1、Collider.bounds.center
2、Collider.rigidbody.worldCenterOfMass
3、Collider.attachedRigidbody.worldCenterOfMass
第一种方式其实是认为碰撞体是均匀几何体,所以取碰撞盒中心作为质心。注意,这里的Collider并不是collider属性,而是表示一个Collider引用,所以不必考虑collider属性访问引起的性能开销(其实在处理碰撞时,Collider引用是能够直接得到的,也不需要做collider属性访问)。

设计实验——针对同一个碰撞体,分别调用以上三种方式各8×1024×1024次
实验结果——第一种约4500ms,第二种约2500ms,第三种约2000ms。

在碰撞不涉及刚体的情况下,要获取质心只能使用性能最差的第一种方式。而有刚体的情况下,自然推荐使用第三种方式。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值