Changeset View
Changeset View
Standalone View
Standalone View
source/blender/modifiers/intern/MOD_skin.c
| Show First 20 Lines • Show All 1,869 Lines • ▼ Show 20 Lines | static Mesh *base_skin(Mesh *origmesh, | ||||
| if (!has_valid_root) { | if (!has_valid_root) { | ||||
| modifier_setError(&smd->modifier, "No valid root vertex found (you need one per mesh island you want to skin)"); | modifier_setError(&smd->modifier, "No valid root vertex found (you need one per mesh island you want to skin)"); | ||||
| } | } | ||||
| if (!bm) | if (!bm) | ||||
| return NULL; | return NULL; | ||||
| result = BKE_mesh_from_bmesh_for_eval_nomain(bm, 0); | result = BKE_mesh_from_bmesh_for_eval_nomain(bm, NULL); | ||||
| BM_mesh_free(bm); | BM_mesh_free(bm); | ||||
| result->runtime.cd_dirty_vert |= CD_MASK_NORMAL; | result->runtime.cd_dirty_vert |= CD_MASK_NORMAL; | ||||
| skin_set_orig_indices(result); | skin_set_orig_indices(result); | ||||
| return result; | return result; | ||||
| } | } | ||||
| Show All 34 Lines | |||||
| { | { | ||||
| Mesh *result; | Mesh *result; | ||||
| if (!(result = final_skin((SkinModifierData *)md, mesh))) | if (!(result = final_skin((SkinModifierData *)md, mesh))) | ||||
| return mesh; | return mesh; | ||||
| return result; | return result; | ||||
| } | } | ||||
| static CustomDataMask requiredDataMask(Object *UNUSED(ob), | static void requiredDataMask(Object *UNUSED(ob), ModifierData *UNUSED(md), CustomData_MeshMasks *r_cddata_masks) | ||||
| ModifierData *UNUSED(md)) | |||||
| { | { | ||||
| return CD_MASK_MVERT_SKIN | CD_MASK_MDEFORMVERT; | r_cddata_masks->vmask |= CD_MASK_MVERT_SKIN | CD_MASK_MDEFORMVERT; | ||||
| } | } | ||||
| ModifierTypeInfo modifierType_Skin = { | ModifierTypeInfo modifierType_Skin = { | ||||
| /* name */ "Skin", | /* name */ "Skin", | ||||
| /* structName */ "SkinModifierData", | /* structName */ "SkinModifierData", | ||||
| /* structSize */ sizeof(SkinModifierData), | /* structSize */ sizeof(SkinModifierData), | ||||
| /* type */ eModifierTypeType_Constructive, | /* type */ eModifierTypeType_Constructive, | ||||
| /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode, | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_SupportsEditmode, | ||||
| Show All 25 Lines | |||||