Beispiel #1
0
    // Use this for initialization
    void Start()
    {
        if (isServer)
        {
            MinMaxCubeWidth  = SanitizeMinMax(MinMaxCubeWidth);
            MinMaxCubeHeight = SanitizeMinMax(MinMaxCubeHeight);

            for (int n = 0; n < NumberOfCubes; n++)
            {
                //get together all our variables used to place the cubes
                float l     = Random.Range(-length / 2, length / 2);
                float phi   = Random.Range(0, 180);
                float theta = phi % 60 + Mathf.Floor(phi / 60) * 120;
                theta += Offset;
                Vector3 scale  = new Vector3(Random.Range(MinMaxCubeWidth.x, MinMaxCubeWidth.y), Random.Range(MinMaxCubeHeight.x, MinMaxCubeHeight.y), Random.Range(MinMaxCubeWidth.x, MinMaxCubeWidth.y));
                Vector3 coords = RadialToCartesian(l, theta, radius, scale.y);


                //network instantiate
                GameObject g = (GameObject)Instantiate(TerrainCube, coords, Quaternion.Euler(theta, 0, 0));
                g.transform.localScale = scale;
                g.transform.parent     = transform;
                //NetworkServer.Spawn(g);

                RandomCube cube = new RandomCube();
                cube.obj = g;
                CubeList.Add(cube);
                Debug.Log(n);
            }
        }
        //Network.Instantiate(TerrainCube, transform.position, Quaternion.Euler(0, 0, 0), 0);
    }
 // RANDOM POINT ON A CUBE. Return a Vector3
 public Vector3 PointOnACube(Normalization n, float t)
 {
     return(RandomCube.Surface(ref _rand, n, t));
 }
 // RANDOM POINT ON A CUBE. Return a Vector3
 public Vector3 PointOnACube()
 {
     return(RandomCube.Surface(ref _rand));
 }
 // RANDOM POINT IN A CUBE. Return a Vector3
 public Vector3 PointInACube(Normalization n, float t)
 {
     return(RandomCube.Volume(ref _rand, n, t));
 }
 // RANDOM POINT IN A CUBE. Return a Vector3
 public Vector3 PointInACube()
 {
     return(RandomCube.Volume(ref _rand));
 }