diff options
Diffstat (limited to 'source/blender/blenkernel/intern/mesh_legacy_convert.cc')
-rw-r--r-- | source/blender/blenkernel/intern/mesh_legacy_convert.cc | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/mesh_legacy_convert.cc b/source/blender/blenkernel/intern/mesh_legacy_convert.cc index 627c0057a28..efbea35bfcf 100644 --- a/source/blender/blenkernel/intern/mesh_legacy_convert.cc +++ b/source/blender/blenkernel/intern/mesh_legacy_convert.cc @@ -918,6 +918,33 @@ void BKE_mesh_add_mface_layers(CustomData *fdata, CustomData *ldata, int total) /** \} */ /* -------------------------------------------------------------------- */ +/** \name Face Set Conversion + * \{ */ + +void BKE_mesh_legacy_face_set_from_generic(Mesh *mesh) +{ + using namespace blender; + for (CustomDataLayer &layer : MutableSpan(mesh->pdata.layers, mesh->pdata.totlayer)) { + if (StringRef(layer.name) == ".sculpt_face_set") { + layer.type = CD_SCULPT_FACE_SETS; + } + } +} + +void BKE_mesh_legacy_face_set_to_generic(Mesh *mesh) +{ + using namespace blender; + for (CustomDataLayer &layer : MutableSpan(mesh->pdata.layers, mesh->pdata.totlayer)) { + if (layer.type == CD_SCULPT_FACE_SETS) { + BLI_strncpy(layer.name, ".sculpt_face_set", sizeof(layer.name)); + layer.type = CD_PROP_INT32; + } + } +} + +/** \} */ + +/* -------------------------------------------------------------------- */ /** \name Bevel Weight Conversion * \{ */ |