gpt4 book ai didi

c# - OnTriggerEnter Unity c# 触发器未注册

转载 作者:行者123 更新时间:2023-11-30 23:13:01 25 4
gpt4 key购买 nike

我正在尝试让标有“Bullet”的项目符号项目击中此代码所附加的目标。我在项目符号上勾选了 Is Trigger。碰撞在目标上起作用,因为我可以与玩家一起击中它。任何帮助将不胜感激。

void OnTriggerEnter(Collider other)
{

if (other.gameObject.CompareTag("Bullet"))
{
Debug.Log ("Hit!");
Destroy(this);
}
}

最佳答案

子弹(碰撞检测类型 - discrete)快速行进将穿过静态墙(简单的盒子碰撞器或网格碰撞器。它不是动态对象,因为没有刚体)而无需注册 OnTriggerEnter .

连续碰撞检测:要解决这个问题,我们可以将子弹的碰撞检测类型更改为连续。子弹碰撞检测将变得连续,即使速度很快也不会错过墙壁。

Collision Detection Setting in RigidBody component

Continuous Dynamic Collision Detection :另外,如果我们想让子弹击中一个动态物体(具有刚体,例如移动的敌人角色),那么我们需要将这两个对象都设置为 连续 碰撞检测和至少其中一个对象到Continuous Dynamic 碰撞检测。

关于c# - OnTriggerEnter Unity c# 触发器未注册,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43799626/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com