如何在Unity中将对象移动到随机坐标?

时间:2017-10-19 12:42:47

标签: c# unity3d unity5

我正在审查项目的代码。

我想要做的是下图。 enter image description here

我对这个项目有一些疑问。

作为初学者,我没有足够的解释, 但如果你能看一下,我将不胜感激。

以下是问题:

  1. 如何无限期地创建一个名为small_star的对象,如图所示?

  2. 目前,预制x,y坐标值以场景为中心。 如何使用像照片这样的随机坐标移动对象?当我查看代码时,我使用Mathf.Cos和Mathf.Sin。它有什么影响?

  3. 我想我应该实现它,但对我来说做编码太过分了。 我是初学者。如果你能给我一个具体的解释,我将非常感激。

1 个答案:

答案 0 :(得分:2)

您不提供太多信息,但这可能有效

public GameObject small_star;
public float xMinBoundary;
public float yMinBoundary;
public float xMaxBoundary;
public float yMaxBoundary;

void MoveSpaceShip(){
    float randX = Random.Range (xMinBoundary, xMaxBoundary);
    float randY = Random.Range (yMinBoundary, yMaxBoundary);
    Vector2 target = new Vector2 (randX,randY)
    //Option 1
    //small_star.transform.Translate(target * Time.deltaTime);
    //Option 2
    small_star.transform.position(target)
}

您需要适应您的需求