Unity3d Trigger 和 Collision 使用

本文详细介绍了Unity中两种重要的交互事件——碰撞(Collision)与触发(Trigger)的区别与应用场景。碰撞适用于物理可见的接触检测,而触发则侧重于事件触发,如玩家进入特定区域。文章还解释了OnCollisionEnter与OnTriggerEnter函数的参数差异及其获取信息的不同。

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

大致研究了下,可以有这几种情况:

  • 如果物理视觉上有碰撞,则在OnCollisionEnter中实现。要求双方都具有Rigidbody,双方都是可见的物体。应用上偏向于可见的碰撞。
  • 如果物体经过某一不可见区域,比如踩点事件,则使用OnTriggerEnter。要求至少1方拥有Rigidbody,并且有1方加入Trigger。应用上偏向于事件触发(顾名思义),比如Player进入某个区域或是站到某个位置。

另外,OnCollisionEnter传递的是collision对象,通过此对象可以获得相应的碰撞体的transform、rigidbody、gameObject等对象;OnTriggerEnter传递的则是collider碰撞器,其可以获得碰撞器的材质等信息。此外,collision对象中包含了collider对象。比较复杂。

其他待定。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值