📜  oncollisionenter (1)

📅  最后修改于: 2023-12-03 14:44:53.231000             🧑  作者: Mango

相撞检测事件:OnCollisionEnter

简介

OnCollisionEnter是Unity中一种重要的事件函数,作用是在两个碰撞体相撞时被调用。这个事件通常用于处理碰撞后的逻辑,比如撞击声音或播放爆炸动画。

函数定义
void OnCollisionEnter(Collision collision)
参数说明
  • collision: 碰撞事件的信息和具体对象。
使用方法

OnCollisionEnter方法必须附加到一个具有碰撞器(Collider)组件的游戏对象上。

首先,在MonoBehaviour扩展中编写OnCollisionEnter函数。例如,以下代码将在两个物体碰撞时调用该函数并将碰撞事件打印到控制台。

void OnCollisionEnter(Collision collision) 
{
    Debug.Log("Collision Detected!");
}
代码演示

你可以通过以下方法在Unity中测试OnCollisionEnter函数。

  1. 创建一个新的场景,并添加两个将碰撞器附加到上的游戏对象。
  2. 在其中一个对象上添加一个名为MyScript的C#脚本,并将以下代码添加到脚本中:
    using UnityEngine;
    using System.Collections;
    
    public class MyScript : MonoBehaviour
    {
        void OnCollisionEnter(Collision collision)
        {
            Debug.Log("collision detected");
        }
    }
    
  3. 点击播放按钮并将两个游戏对象移动在一起。

可以看到它们相撞时在控制台中打印“collision detected”。

推荐阅读