示例#1
0
        public Chunk(int x, int z, CoordinateSpace space)
        {
            if (space == CoordinateSpace.World)
            {
                x >>= 4;
                z >>= 4;
            }

            chunkSegments = new List <ChunkSegment>(height);
            coordinates   = new ChunkCoordinates2D(x, z, CoordinateSpace.Chunk);
            chunks.Add(GetChunkHashCode(), this);

            for (int y = 0; y < height; y++)
            {
                ChunkCoordinates3D coordinates = new ChunkCoordinates3D(x, y, z, CoordinateSpace.Chunk);
                ChunkSegment       segment     = new ChunkSegment(this, coordinates);
                chunkSegments.Add(segment);
            }
        }
 public ChunkSegment(Chunk chunk, ChunkCoordinates3D coordinates)
 {
     this.coordinates = coordinates;
     this.chunk       = chunk;
 }