public void ReceiveVoxelData(int chunkx, int chunky, int chunkz, byte[] data) { GameObject chunkObject = ChunkManager.GetChunk(chunkx, chunky, chunkz); // find the chunk if (chunkObject == null) { return; // abort if chunk isn't spawned anymore } Chunk chunk = chunkObject.GetComponent <Chunk>(); ChunkDataFiles.DecompressData(chunk, GetString(data)); // decompress data // ChunkManager.DataReceivedCount ++; // let ChunkManager know that we have received the data chunk.VoxelsDone = true; // let Chunk know that it can update it's mesh Chunk.CurrentChunkDataRequests--; }
public static Dictionary <string, string[]> LoadedRegions; // data of currently loaded regions public bool LoadData() // attempts to load data from file, returns false if data is not found { Chunk chunk = GetComponent <Chunk>(); string chunkData = GetChunkData(chunk.ChunkIndex); if (chunkData != "") { ChunkDataFiles.DecompressData(chunk, GetChunkData(chunk.ChunkIndex)); chunk.VoxelsDone = true; return(true); } else { return(false); } }