public static VoxelRegistry GetRegistry() { if (registry == null) { registry = Resources.Load <VoxelRegistry>("VoxelRegistry"); registry.Initialise(); if (registry == null) { throw new System.InvalidOperationException("Could not load the voxel registry!"); } } return(registry); }
private Material GetMaterial(int voxelId) { Material material; if (!voxelMaterials.TryGetValue(voxelId, out material)) { VoxelDefinition voxelDef = VoxelRegistry.GetRegistry()[voxelId]; GameObject voxelPrefab = voxelDef.VoxelPrefab; material = voxelPrefab.GetComponent <MeshRenderer>().sharedMaterial; voxelMaterials[voxelId] = material; } return(material); }