C# 如何正确地发出IgnoreCollision命令?
我有代码,当我的主对象碰到另一个对象时,它在哪里重置。但是,它会命中每个对象并重置场景。我试图让我的主要对象忽略某个对象。这是我到目前为止所拥有的C# 如何正确地发出IgnoreCollision命令?,c#,unity3d,C#,Unity3d,我有代码,当我的主对象碰到另一个对象时,它在哪里重置。但是,它会命中每个对象并重置场景。我试图让我的主要对象忽略某个对象。这是我到目前为止所拥有的 void OnCollisionEnter(Collision collision) { SceneManager.LoadScene(SceneManager.GetActiveScene().name); if (collision.gameObject.tag == "BlueLaunchpad")
void OnCollisionEnter(Collision collision)
{
SceneManager.LoadScene(SceneManager.GetActiveScene().name);
if (collision.gameObject.tag == "BlueLaunchpad")
{
Physics.IgnoreCollision(BlueLaunchpad.collider);
}
}
}
我想你应该试试这样的东西:
void OnCollisionEnter(Collider collider )
{
if (collider.gameObject.tag == "BlueLaunchpad")
{
Physics.IgnoreCollision(collider);
}
else
{
SceneManager.LoadScene(SceneManager.GetActiveScene().name);
}
}
这样,当它点击BlueLaunchpad时,它不应该加载场景,但是它会点击每个对象并重置场景,你在这里说什么?这是Unity吗?请添加Unity标签。看来你在用他们的API你做错了!如果(collision.gameObject.tag==“RightObject”){Doaction();}除(BlueLaunchPad.collider)外,其他一切都正常工作;它在BlueLaunchPad上给了我一个错误。我想我遗漏了一些东西,但我不确定是什么。非常感谢。是的,对不起,我还没有自己运行这个程序,试试物理;我编辑了安塞尔