我是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.
}
}
此代码不是真正的逻辑,所以请人们帮助我。我尝试过这样做,但我不知道如何制作宽度的东西。我想摧毁加速游戏的障碍。谢谢!
答案 0 :(得分:0)
MonoBehaviour.Destroy(gameObject)
你追求的是什么?我不确定你正在努力的过程中有哪些部分?
编辑: 通过澄清,下面是修改后的答案:
跟踪玩家坐标的位置,当一个物体发现其自己的坐标小于玩家协调减去玩家在屏幕上的位置偏移时,将其摧毁。基本上类似于以下内容(假设相机始终以播放器为中心并随之移动):
void Update()
{
int xBound = Camera.main.transform.position.x - (Screen.width / 2);
if (transform.position.x < xBound)
{
MonoBehaviour.Destroy(gameObject)
}
}