public static WorldChunk CreateWorldChunk(ChunkLocation l, BlockWorld w) { WorldChunk c = pool.Get(); c.SetUp(l, w); return(c); }
private void SetUp(ChunkLocation l, BlockWorld world) { location = l; this.world = world; renderedblocks = 0; meshready = false; for (int i = 0; i < blocks.Length; i++) { blocks[i] = Blocks.Air; } for (int i = 0; i < metadata.Length; i++) { metadata[i] = 0; } }
public override void CleanUp() { for (int i = 0; i < 6; i++) { neighbors[i].SetNeighbor((i + 3) % 6, BorderChunk.Instance, false); neighbors[i] = BorderChunk.Instance; } if (renderer != null) { world.DisposeChunkRenderer(renderer); renderer = null; } pool.Add(this); world = null; }