移除unity 3d中对象的长方体碰撞器

本文关键字:长方体 碰撞 对象 unity 3d 移除 | 更新日期: 2023-09-27 17:59:13

这是我在Update函数中的代码。该对象有一个长方体碰撞器。

if (Input.GetMouseButtonDown(0)) { 
    Ray ray = camera.ScreenPointToRay(Input.mousePosition); 
    if (Physics.Raycast (ray, out hit3, 400.0F)) {
        wName = hit3.collider.gameObject.name;
        Destroy(hit3.collider.gameObject);
    }
}

但是盒子对撞机并没有被摧毁。

我该如何销毁它?

移除unity 3d中对象的长方体碰撞器

现在使用代码

 Destroy(hit3.collider);

根据Destroy()上的文档,"实际的对象销毁总是延迟到当前更新循环之后,但总是在渲染之前完成。"

这可能是问题所在吗?如果在当前的Update函数中进行检查,则该对象可能尚未被销毁。否则Destroy()应该删除该游戏对象的所有组件。