unity-OnTriggerEnter的使用

1.首先给发生碰撞检测的两个物体都添加Collider组件

2.给要碰撞的一方添加上Rigidbody组件

 3.勾选要碰撞的一方物体上的Is Trigger组件

 4.给要碰撞的一方添加一个碰撞检测的脚本

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class text : MonoBehaviour
{

    private void OnTriggerEnter(Collider cube)
    {
        if (cube.tag== "Plane")
        {
            Debug.Log("早点休息,不要熬夜");
        }
    }
}

5.添加tag

在箭头指向的地方下拉添加tag(该tag要与脚本中的tag一致,一定不能写错!!!1)

 

 然后给被碰撞检测的物体添加上该tag就完成了

 测试结果

  • 5
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: OnTriggerEnterUnity中的一个函数,用于检测物体之间的碰撞。它是通过检测两个物体之间的距离和它们的碰撞体积来计算出来的。当两个物体的碰撞体积重叠时,OnTriggerEnter函数就会被调用。 ### 回答2: Unity 的 OnCollisionEnter 是根据物体之间的碰撞检测来计算出来的。在Unity的物理引擎中,每个游戏对象都有一个碰撞体组件,它定义了物体的形状和大小。当两个物体的碰撞体相互重叠时,物理引擎会检测到碰撞事件的发生。 具体而言,OnTriggerEnter 方法用于处理物体之间的触发器碰撞检测。触发器是一种不会产生物理反应的碰撞体,通常用于检测触发特定行为,如进入触发器范围时播放音效或触发剧情事件。 当一个物体的碰撞体上设置了触发器标记时,它将成为一个触发器。当其他物体的碰撞体进入此触发器的范围时,Unity会检测到这个触发器与其他物体的碰撞发生,并调用相应的 OnTriggerEnter 方法。 在 OnTriggerEnter 方法中,您可以编写代码来响应物体之间的碰撞事件。您可以访问碰撞事件涉及的两个物体的信息,如碰撞体的引用、碰撞体的标签等。然后,您可以根据需要执行相应的处理逻辑,比如播放音效、更改游戏状态等。 ### 回答3: Unity 的OnTriggerEnter是通过比较碰撞体的包围盒来计算出来的。当两个碰撞体相互接触时,Physics引擎会检测它们的包围盒是否有交叉。包围盒是以碰撞体的中心为基准构建出来的立方体或球体,用于快速估算碰撞体之间的接触情况。 当包围盒相交时,Physics引擎会触发OnTriggerEnter事件,通知相关的游戏对象或脚本发生了碰撞。这个事件可以用于执行一些逻辑,比如在碰撞发生时播放音效、增加分数等操作。 在OnTriggerEnter事件中,我们可以通过函数参数获取到碰撞发生的详细信息,例如碰撞对象、碰撞点、碰撞法线等。通过这些信息,我们可以根据需要实现自定义的碰撞逻辑。 需要注意的是,OnTriggerEnter只会在参与碰撞的对象中的至少一个对象勾选了"IsTrigger"属性时被调用。如果两个碰撞体都没有勾选"IsTrigger"属性,它们将发生物理碰撞,而不会触发OnTriggerEnter事件。 总结起来,Unity 的OnTriggerEnter是利用碰撞体的包围盒交叉判断来计算的,它能够方便地检测游戏中的物体是否发生了碰撞,并提供了与之相关的事件供开发者处理碰撞后的逻辑。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值