在随机位置的简单场景中实例化一些立方体

时间:2016-03-02 19:18:06

标签: c# unity3d

我是C#的新手,我正在建立一个关于unity3D的Braitenberg车辆模拟。我正在创建一个环境,随机定位的立方体。

问题1:它创建了我插入创建的多维数据集的两倍。

问题2:我很难让车辆避开立方体。我开始试图在控制台中打印一条消息,因为车辆在一个立方体附近,但它不起作用。

这是我创建立方体的代码。

public class Cubes : MonoBehaviour {
public float distance;
public List<GameObject> allCubes = new List<GameObject>();
public float[,] positionS = new float[10, 2];
void Start () {
    GameObject cube = GameObject.CreatePrimitive(PrimitiveType.Cube);
    for (int x = 0; x < 10; x++)
    {
        positionS[x, 0] = Random.Range(-20F, 20F);
        positionS[x, 1] = Random.Range(-20F, 20F);

        //cube.AddComponent<Rigidbody>();
        //cube.transform.position = new Vector3(position[x,0], position[x,1], 0.5F);

        allCubes.Add((GameObject)Instantiate(cube, new Vector3(positionS[x, 0], 0.5F, positionS[x, 1]), Quaternion.identity));  
    }
}    

}

这里是我检查车辆之间距离的地方:

public class CubeDetector: Cubes
{
public float[] distances;
public CarBehaviour car;
void Update()
{
    for (int i = 0; i < allCubes.Count; i++)
    {
        distances[i] = Vector3.Distance(car.transform.position, allCubes[i].transform.position);

        if (i < 9)
        {
            if (distances[i] < distances[i++])
            {
                Console.WriteLine('y');
                Console.ReadLine();
            }
            else
            {
                Console.WriteLine('n');
                Console.ReadLine();
            }
        }
    }
}

}

欢迎任何帮助!

0 个答案:

没有答案