unity 碰撞器

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

1.MonoBehaviour.OnTriggerEnter2D( Collider2D other )当进入触发器 //2d触发器
2.MonoBehaviour.OnTriggerExit2D( Collider2D other )当退出触发器
3.MonoBehaviour.OnTriggerStay2D( Collider2D other )当逗留触发器

碰撞信息检测:
1.MonoBehaviour.OnCollisionEnter( Collision collisionInfo ) 当进入碰撞器
2.MonoBehaviour.OnCollisionExit( Collision collisionInfo ) 当退出碰撞器
3.MonoBehaviour.OnCollisionStay( Collision collisionInfo ) 当逗留碰撞器

1.系统默认会给每个对象(GameObject)添加一个碰撞组件(ColliderComponent),一些背景对象则可以取消该组件。
2.在unity3d中,能检测碰撞发生的方式有两种,一种是利用碰撞器,另一种则是利用触发器。这两种方式的应用非常广泛。为了完整的了解这两种方式,我们必须理解以下概念:

(一)碰撞器是一群组件,它包含了很多种类,比如:Box Collider,Capsule Collider等,这些碰撞器应用的场合不同,但都必须加到GameObjecet身上。
(二)所谓触发器,只需要在检视面板中的碰撞器组件中勾选IsTrigger属性选择框。
(三)在Unity3d中,主要有以下接口函数来处理这两种碰撞检测:

Unity中,可以通过以下几种方式来检测碰撞之间的碰撞: 1. OnCollisionEnter(Collision collision):当物体碰撞开始时调用,可以获取碰撞信息。 ```csharp void OnCollisionEnter(Collision collision) { Debug.Log("Collision occurred with " + collision.gameObject.name); } ``` 2. OnCollisionStay(Collision collision):当物体持续碰撞时调用,可以获取碰撞信息。 ```csharp void OnCollisionStay(Collision collision) { Debug.Log("Collision is still occurring with " + collision.gameObject.name); } ``` 3. OnCollisionExit(Collision collision):当物体碰撞结束时调用,可以获取碰撞信息。 ```csharp void OnCollisionExit(Collision collision) { Debug.Log("Collision ended with " + collision.gameObject.name); } ``` 4. OnTriggerEnter(Collider other):当物体进入另一个物体的触发时调用,可以获取触发信息。 ```csharp void OnTriggerEnter(Collider other) { Debug.Log("Trigger entered with " + other.gameObject.name); } ``` 5. OnTriggerStay(Collider other):当物体持续进入另一个物体的触发时调用,可以获取触发信息。 ```csharp void OnTriggerStay(Collider other) { Debug.Log("Trigger is still being entered with " + other.gameObject.name); } ``` 6. OnTriggerExit(Collider other):当物体离开另一个物体的触发时调用,可以获取触发信息。 ```csharp void OnTriggerExit(Collider other) { Debug.Log("Trigger exited with " + other.gameObject.name); } ``` 以上方法都需要在物体上添加Collider组件,并且需要挂载一个脚本来处理碰撞事件。在这些方法中,可以通过参数获取碰撞或触发的信息,例如碰撞或触发所在的物体、碰撞或触发的位置等等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值