コード例 #1
0
ファイル: GenTree.cs プロジェクト: Mooncoder/CraftSaga
 public void Generate(PlaceVoxelDelegate placeVoxel, int x, int y, int z)
 {
     int barkH = y%4 + 6;
     int rad = Mathf.RoundToInt((x + z)%3 + 5);
     for (int la = 0; la < barkH; la++)
     {
         placeVoxel(x, y + la, z, 2, false);
     }
     for(int la=-rad;la<=rad;la++)
     {
         for (int lb = -rad; lb <= rad; lb++)
         {
             for (int lc = -rad; lc <= rad; lc++)
             {
                 if (new Vector3(la, lb, lc).magnitude < rad)
                 {
                     placeVoxel(x + la, y + lb + barkH, z + lc, 2048 + y%3, false);
                 }
             }
         }
     }
 }
コード例 #2
0
ファイル: GenTree.cs プロジェクト: shuidong/CraftSaga
    public void Generate(PlaceVoxelDelegate placeVoxel, int x, int y, int z)
    {
        int barkH = y % 4 + 6;
        int rad   = Mathf.RoundToInt((x + z) % 3 + 5);

        for (int la = 0; la < barkH; la++)
        {
            placeVoxel(x, y + la, z, 2, false);
        }
        for (int la = -rad; la <= rad; la++)
        {
            for (int lb = -rad; lb <= rad; lb++)
            {
                for (int lc = -rad; lc <= rad; lc++)
                {
                    if (new Vector3(la, lb, lc).magnitude < rad)
                    {
                        placeVoxel(x + la, y + lb + barkH, z + lc, 2048 + y % 3, false);
                    }
                }
            }
        }
    }