public void Initiate(Vector3i chunkPosition) { Clear(); _renderer.sharedMaterials = _source.BlockMaterials; _filter.sharedMesh = new Mesh { indexFormat = IndexFormat.UInt32 }; _meshBuilder = new VoxelMeshBuilder(1024, VoxelConsts.BlockCount); _quadBuilder = new VoxelQuadBuilder(1024, VoxelConsts.ChunkLength, blockPosition => { Vector3i p = VoxelUtils.LocalToWorld(VoxelConsts.ChunkLength, chunkPosition, blockPosition); return(_globalLookup.Lookup(p)); }); InitiateUpdaters(); }
Vector3i LocalToGlobal(Vector3i chunkPosition, Vector3i blockPosition) { return(VoxelUtils.LocalToWorld(VoxelConsts.ChunkLength, chunkPosition, blockPosition)); }