过去我已经过了100次。团结中的碰撞和触发器。 这一页: http://docs.unity3d.com/Documentation/Components/class-BoxCollider.html 有一个碰撞图表,显示一个刚体触发器对撞机应该在它与空气之外的其他东西碰撞时始终发送一个触发消息。
所以我的探测区是一个刚体触发器对撞机,重力关闭。 然后我有可玩角色的''触发器'',这些是空的游戏对象,只有一个装有IS TRIGGER的盒式对撞机。
然而,当测试时,没有任何事情发生。我在我的刚体上附上了以下代码:
public class HitTest : MonoBehaviour {
void OnTriggerStay(){
Debug.Log("Hit! Obj: "+this.gameObject.name);
}
}
通过使另一个对象成为一个刚性体来解决这个问题,但这会以某种方式弄乱可玩角色的很多东西,我想不惜一切代价阻止它。
关于我在这里做错了什么想法?
提前致谢, 笑脸
答案 0 :(得分:1)
这是不正确的:
void OnTriggerStay() { // Look at here
Debug.Log("Hit! Obj: "+this.gameObject.name); // NOTE: This will show the name of your object
}
正确的是:
void OnTriggerStay(Collider others) { // Look at here
Debug.Log("Hit! Obj: "+others.gameObject.name); // NOTE: This will show the name of the object you collided
}
希望这有帮助! :)