【发布时间】:2014-12-28 16:06:15
【问题描述】:
我想创建一个由随机生成的对象组成的地形。我创建了几个预制件并制作了一个脚本,将所有 3 个预制件放在一个数组中,并随机生成它们。 我遇到的问题是(不同大小的)对象是在 1 个单位距离内产生的,所以基本上是相互重叠的,而不是一个接一个。 第二个问题是我不确定如何将产卵限制在一个不错的数字。我创建了一个脚本,一旦我通过它们就会破坏它们,但是在代码中,目前它们正在无限地产生,太快了(我知道代码不是最好的,我还在练习)。 我确实寻找了可能的解决方案或类似的问题,但没有找到任何可以帮助我的东西。 这是我脚本中的代码:
using UnityEngine;
using System.Collections;
public class SpawnScript : MonoBehaviour {
public GameObject[] obj;
public Vector3 pos = new Vector3(-8,-4,0);
public float size = 1.0f;
private Vector3 dir = Vector3.right;
void Start () {
Spawn();
}
void Spawn() {
for (int i = 0; i<30; i++)
{
Instantiate (obj [Random.Range (0, obj.Length)], pos, Quaternion.identity);
pos += dir * size;
}
Invoke ("Spawn", 2);
}
}
我希望我能得到任何建议、参考或帮助。
【问题讨论】: