Unity碰撞器(Collider)与触发器(Trigger)

在Unity3D中,物体发生碰撞需要带有碰撞器和刚体,碰撞器分为普通碰撞器和触发器。普通碰撞器在Is Trigger设为false时用于物理碰撞,产生实际碰撞效果;设为true时则不参与物理碰撞,用于检测进入、退出和停留事件。触发器适用于不希望碰撞影响物体运动或检测特定区域的情况。例如,汽车被撞飞的效果需要普通碰撞器,而门自动打开则适合使用触发器。各种类型的碰撞器性能从高到低排序为:Sphere Collider > Capsule Collider > Box Collider > Mesh Collider。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

要产生碰撞必须为游戏对象添加刚体(Rigidbody)和碰撞器,刚体可以让物体在物理影响下运动。碰撞体是物理组件的一类,它要与刚体一起添加到游戏对象上才能触发碰撞。如果两个刚体相互撞在一起,除非两个对象有碰撞体时物理引擎才会计算碰撞,在物理模拟中,没有碰撞体的刚体会彼此相互穿过。

物体发生碰撞的必要条件:
两个物体都必须带有碰撞器(collider),其中一个物体还必须带有刚体(Rigidbody)。
在unity3d中,能检测碰撞发生的方式有两种,一种是利用碰撞器,另一种则是利用触发器。
碰撞器:一群组件,它包含了很多种类,比如:Box Collider(盒碰撞体),Mesh Collider(网格碰撞体)等,这些碰撞器应用的场合不同,但都必须加到GameObjecet身上。
触发器:只需要在检视面板中的碰撞器组件中勾选IsTrigger属性选择框。

触发信息检测:
1.MonoBehaviour.OnTriggerEnter(Collider collider)当进入触发器
2.MonoBehaviour.OnTriggerExit(Collider collider)当退出触发器
3.MonoBehaviour.OnTriggerStay(Collider collider)当逗留触发器

碰撞信息检测:
1.MonoBehaviour.OnCollisionEnter(Collision collision) 当进入碰撞器
2.MonoBehaviour.OnCollisionExit(Collision collision) 当退出碰撞器
3.MonoBehaviour.On

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值