【Unity3d】碰撞检测

本文介绍了Unity3d中碰撞检测的基本概念和实现方式。碰撞发生的必要条件包括带有Collider的发起碰撞物体和接收碰撞物体,至少一个物体需带有Rigidbody。Unity支持碰撞器和触发器两种检测方式,分别对应OnCollision和OnTrigger系列方法。通过调整Collider的IsTrigger属性,可以在物理碰撞和触发事件之间切换,以满足不同场景需求。
摘要由CSDN通过智能技术生成
Unity3d碰撞器
一.碰撞发生的必要条件:
1.产生碰撞效果需要具备两个因素

a.发起碰撞的物体
b.接收碰撞的物体

2发起碰撞的物体
a.Rigidbody
b.CharacterController

3.接受碰撞的物体
a.所有的Collider

二.在unity3d中,能检测碰撞发生的方式有两种,一种是利用碰撞器,另一种则是利用触发器。
触发信息:
1.MonoBehaviour.OnTriggerEnter( Collider other )当进入触发器
2.MonoBehaviour.OnTriggerExit( Collider other )当退出触发器
3.MonoBehaviour.OnTriggerStay( Collider other )当逗留触发器
碰撞信息:
1.MonoBehaviour.OnCollisionEnter( Collision collisionInfo ) 当进入碰撞器
2.MonoBehaviour.OnCollisionExit( Collision collisionInfo ) 当退出碰撞器
3.MonoBehaviour.OnCollisionStay( Collision collisionInfo )  当逗留碰撞器

三.举例
A物体和B物体要发生碰撞,则A和B中必须要带有Collider组件,并且A和B中至少一个物体携带Rigidbody
1.新建一个场景,添加CubeA,CubeB,Ground 三个物体,三个物体
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值