コード例 #1
0
ファイル: GameMap.cs プロジェクト: waskerdu/KronosNull
        public Chunk



            (int x, int y, int z, int width, ref Grid3f copyGrid)
        {
            position     = new Vector3(x, y, z);
            marchingGrid = new Grid3f(width);
            for (int i = 0; i < width; i++)
            {
                for (int f = 0; f < width; f++)
                {
                    for (int g = 0; g < width; g++)
                    {
                        if (copyGrid.OnGrid(x + i, y + f, z + g))
                        {
                            val = copyGrid.Get(x + i, y + f, z + g);
                        }
                        else
                        {
                            val = 1;
                        }
                        marchingGrid.Set(i, f, g, val);
                    }
                }
            }
        }
コード例 #2
0
ファイル: GameMap.cs プロジェクト: waskerdu/KronosNull
 public Map(int _width, int _height = 0, int _depth = 0)
 {
     if (_height == 0)
     {
         _height = _width;
     }
     if (_depth == 0)
     {
         _depth = _width;
     }
     width            = _width;
     height           = _height;
     depth            = _depth;
     cubeGrid         = new Grid3i(width, height, depth);
     cubeGridCopy     = new Grid3i(width, height, depth);
     marchingGrid     = new Grid3f(width + 1, height + 1, depth + 1);
     marchingGridCopy = new Grid3f(width + 1, height + 1, depth + 1);
 }
コード例 #3
0
ファイル: GameMap.cs プロジェクト: waskerdu/KronosNull
 public ClusterMap(int _width, int _height = 0, int _depth = 0)
 {
     if (_height == 0)
     {
         _height = _width;
     }
     if (_depth == 0)
     {
         _depth = _width;
     }
     width            = _width;
     height           = _height;
     depth            = _depth;
     cubeGrid         = new Grid3i(width, height, depth);
     cubeGridCopy     = new Grid3i(width, height, depth);
     marchingGrid     = new Grid3f(width + 1, height + 1, depth + 1);
     marchingGridCopy = new Grid3f(width + 1, height + 1, depth + 1);
     chunkList        = new List <Chunk>();
 }
コード例 #4
0
ファイル: GameMap.cs プロジェクト: waskerdu/KronosNull
 public void CopyToMarching(ref Grid3f grid)
 {
     for (int i = 0; i < width; i++)
     {
         for (int f = 0; f < height; f++)
         {
             for (int g = 0; g < depth; g++)
             {
                 if (Get(i, f, g) == 0)
                 {
                     grid.Set(i, f, g, 1);
                     grid.Set(i, f + 1, g, 1);
                     grid.Set(i, f, g + 1, 1);
                     grid.Set(i, f + 1, g + 1, 1);
                     grid.Set(i + 1, f, g, 1);
                     grid.Set(i + 1, f + 1, g, 1);
                     grid.Set(i + 1, f, g + 1, 1);
                     grid.Set(i + 1, f + 1, g + 1, 1);
                 }
             }
         }
     }
 }
コード例 #5
0
ファイル: GameMap.cs プロジェクト: waskerdu/KronosNull
 public void CopyTo(ref Grid3f copyTo)
 {
     data.CopyTo(copyTo.data, 0);
 }