我正在尝试使用移动的2D对撞机作为“对象的移除器”,通过销毁它碰撞的所有对象但是在执行此操作时遇到问题。
答案 0 :(得分:2)
OnTriggerEnter
示例in the documentation完全符合您的要求:
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
void OnTriggerEnter(Collider other) {
Destroy(other.gameObject);
}
}
别忘了检查对撞机是否触发。该脚本应附加到游戏对象上,以破坏触及它的东西。
答案 1 :(得分:0)
我遇到了同样的问题。我正在制作2D游戏,因此您可能需要调整我的代码。您应该将对撞机上的“Is Trigger”设置为false(未选中)并将javascript脚本附加到“对象移除器”并使用下面的代码。
对于2D:
function OnCollisionEnter2D(coll: Collision2D) {
Destroy(coll.gameObject);
}
对于3D:
function OnCollisionEnter(coll: Collision) {
Destroy(coll.gameObject);
}
我不能100%确定3D代码是否有效。
希望这有帮助! :)