Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/269.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我如何使用OnTriggerExit功能,并检查我的船是否发生碰撞?_C#_Unity3d - Fatal编程技术网

C# 我如何使用OnTriggerExit功能,并检查我的船是否发生碰撞?

C# 我如何使用OnTriggerExit功能,并检查我的船是否发生碰撞?,c#,unity3d,C#,Unity3d,我想检查我的船是否相撞,而不是其他物体。 这是我附加到游戏对象上的脚本,游戏对象有长方体碰撞器和刚体。长方体碰撞器:触发器设置为“开”。他的尺码是500。我没有改变任何东西,使用重力的刚体打开了 运行游戏时,我有许多克隆的游戏对象,每个都标记为“球体”,但在脚本中,当我检查标记名时,碰撞器是“未标记的” 我要做的是确保碰撞的物体是一艘克隆的宇宙飞船 using UnityEngine; using System.Collections; public class InvisibleWalls

我想检查我的船是否相撞,而不是其他物体。 这是我附加到游戏对象上的脚本,游戏对象有长方体碰撞器和刚体。长方体碰撞器:触发器设置为“开”。他的尺码是500。我没有改变任何东西,使用重力的刚体打开了

运行游戏时,我有许多克隆的游戏对象,每个都标记为“球体”,但在脚本中,当我检查标记名时,碰撞器是“未标记的”

我要做的是确保碰撞的物体是一艘克隆的宇宙飞船

using UnityEngine;
using System.Collections;

public class InvisibleWalls : MonoBehaviour {

    public float smooth = 1f;
    private Vector3 targetAngles;

    // Use this for initialization
    void Start () {

    }

    // Update is called once per frame
    void Update () {

    }

    void OnTriggerExit(Collider other)
    {
        if (other.tag == "Sphere") 
        {
            targetAngles = other.transform.eulerAngles + 180f * Vector3.up;
            other.transform.eulerAngles = Vector3.Lerp (other.transform.eulerAngles, targetAngles, smooth * Time.deltaTime);
        }
    }
}
这是我试图检查并确认船舶碰撞的部分:

if (other.tag == "Sphere")
但是当使用断点时,当pbject发生碰撞时,它确实会停在这一行上,而另一个.tag标记则是“未标记的”

显示标记为“球体”的克隆宇宙飞船对象的屏幕截图

这张屏幕截图显示了游戏对象和长方体碰撞器以及刚体


根据我所能收集到的信息

如果CrashlandShip对象没有碰撞器,添加碰撞器应该可以工作

还要注意,要使触发器工作,其中一个对象(地形或船舶)必须是非触发器(2个触发器不会导致碰撞或触发器事件)

所以试试这个:在你的
crashlandeship\u UpsideDown
预置中添加一个球体碰撞器,并确保它们不是用IsTrigger设置的


代码的其余部分看起来不错。

好了,现在可以使用OnTriggerExit中标记为“Sphere”的另一个变量了。但是它进入了IF,在里面画了两条线,但是船永远不会后退,它们一直向前,直到它们离开。你的问题是关于对撞机,而不是物体的运动,你介意问一个关于stackoverflow的新问题吗,以避免这个问题的未来观众感到困惑?创建了新问题: