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

How to move an object to random coordinates in Unity?

我正在审查项目的代码。

我要做的就是下面这张图。

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

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

问题如下:

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

  2. 目前prefab的x,y坐标值都是以场景为中心的。 如何移动具有随机坐标的对象,例如照片?当我查看代码时,我使用 Mathf.Cos 和 Mathf.Sin。有什么作用?

我想我应该实现它,但是对我来说编码太多了。 我是初学者。如果您能给我一个具体的解释,我将不胜感激。

您提供的信息不多,但这可能有用

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)
}

您需要适应您的需求