在Unity3D中制作"Flappy Bird"游戏(Flappy Plane),如何破坏障碍物?

Making "Flappy Bird" Game In Unity3D (Flappy Plane), How To Destroy The Obstacles?

我是 Unity3D 和 C# 编程的初学者。我正在制作名为 flappy plane 的游戏。问题是在障碍物离开屏幕后摧毁它们。我制作了预制件和一个代码,可以在场景中的某个地方克隆该预制件(使用实例化),当然,该预制件(障碍物)向左移动。

我尝试使用此代码:

void Update()
{
    Vector2 position = Camera.main.WorldToScreenPoint (transform.position);
    if (position.x < Screen.width)
    {
// Here I will try to destroy the obstacle.
        }
    }

这段代码不是很合逻辑,所以请大家帮助我。我试过这样做,但我不知道如何制作宽度。我想摧毁加速游戏的障碍。谢谢!

MonoBehaviour.Destroy(gameObject)是您想要的吗?我不太确定您在流程的哪一部分遇到困难?

编辑: 经过澄清,以下是修改后的答案:

跟踪玩家坐标的位置,当一个物体发现自己的坐标小于玩家坐标减去玩家在屏幕上的偏移量时,将其销毁。基本上类似于以下内容(假设相机始终以玩家为中心并随之移动):

void Update()
{
    int xBound = Camera.main.transform.position.x - (Screen.width / 2);
    if (transform.position.x < xBound)
    {
        MonoBehaviour.Destroy(gameObject)
    }
}