Beispiel #1
0
        private IReadOnlyCollection <Chunk> CalculateVisibleChunks(Vector2i chunkPosition)
        {
            var radius        = 2;
            var visibleChunks = new List <Chunk>();

            for (var y = chunkPosition.Y - radius; y <= chunkPosition.Y + radius; ++y)
            {
                for (var x = chunkPosition.X - radius; x <= chunkPosition.X + radius; ++x)
                {
                    visibleChunks.Add(_chunkProvider.GetChunk(Guid.Empty, chunkPosition + new Vector2i(x, y)));
                }
            }

            return(visibleChunks);
        }
Beispiel #2
0
 public Chunk GetChunk(Vector2i position)
 {
     return(_chunkProvider.GetChunk(Id, position));
 }