C# OnCollisionInter2d无法发送信息
我正在测试OnCollisioner2D,它似乎不适合我。 我在两个游戏对象上都安装了box collider 2d和rigidbody2d,但它仍然无法向控制台发送消息C# OnCollisionInter2d无法发送信息,c#,unity3d,2d,collision-detection,C#,Unity3d,2d,Collision Detection,我正在测试OnCollisioner2D,它似乎不适合我。 我在两个游戏对象上都安装了box collider 2d和rigidbody2d,但它仍然无法向控制台发送消息 using UnityEngine; using System.Collections; public class CollisionAndResetSystem : MonoBehaviour { void OnCollisionEnter2D(Collision2D coll) { if (coll.gameOb
using UnityEngine;
using System.Collections;
public class CollisionAndResetSystem : MonoBehaviour {
void OnCollisionEnter2D(Collision2D coll) {
if (coll.gameObject.tag == "Cube")
print ("hit");
}
}
我从脚本API中得到了这个问题,它不想工作。脚本中没有问题。问题必须在“BoxCollizedR2D”组件中。请检查“BoxCollizedR2D”的大小,将其在x和y以及两个游戏对象中的大小更改为100左右。如果您可以看到“BoxCollimer2d”gizmo,请签入场景视图。你必须使“BoxCollizer2D”与你的游戏对象一样大,然后只有OnCollizeInter2D可以工作。如果你不需要你的对象受物理影响的话 然后设置
iskinetic=false
和Gravity Scale=0
,并记住将您的OnCollisionInter2D
脚本附加到您的游戏对象上
以下几件事:
void OnCollisionEnter2D(Collision2D coll) {
if (coll.gameObject.tag == "Cube")
print ("hit");
}
希望有帮助 最重要的是检查脚本附加到哪个游戏对象,交叉检查脚本是否附加到您试图与之发生冲突的游戏对象。并使用Debug.log()代替Print(),希望对您有所帮助。我刚才拼写的碰撞错误。。。