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); }
public Chunk GetChunk(Vector2i position) { return(_chunkProvider.GetChunk(Id, position)); }