private void CreateVoxelizedMultibody() { selectedObject = (Selection.activeObject != null) ? (GameObject)Selection.activeObject : null; Mesh mesh; MeshFilter meshFilter = selectedObject.GetComponent <MeshFilter>(); if (meshFilter != null) { mesh = meshFilter.sharedMesh; } else { mesh = selectedObject.GetComponent <SkinnedMeshRenderer>().sharedMesh; } List <Voxel_t> voxels; CPUVoxelizer.Voxelize( mesh, // a target mesh resolution, // # of voxels for largest AABB bounds out voxels, out float unit ); // build gameobject with individual, colliding voxel cube objects Material material = selectedObject.GetComponent <MeshRenderer>().sharedMaterial; GameObject go = VoxelMesh.BuildObject(voxels.ToArray(), unit, material, folderName, useUv); go.GetComponent <MeshRenderer>().material = material; }