Changeset View
Changeset View
Standalone View
Standalone View
source/blender/modifiers/intern/MOD_solidify.c
| Show First 20 Lines • Show All 64 Lines • ▼ Show 20 Lines | static void requiredDataMask(Object *UNUSED(ob), | ||||
| /* ask for vertexgroups if we need them */ | /* ask for vertexgroups if we need them */ | ||||
| if (smd->defgrp_name[0] != '\0' || smd->shell_defgrp_name[0] != '\0' || | if (smd->defgrp_name[0] != '\0' || smd->shell_defgrp_name[0] != '\0' || | ||||
| smd->rim_defgrp_name[0] != '\0') { | smd->rim_defgrp_name[0] != '\0') { | ||||
| r_cddata_masks->vmask |= CD_MASK_MDEFORMVERT; | r_cddata_masks->vmask |= CD_MASK_MDEFORMVERT; | ||||
| } | } | ||||
| } | } | ||||
| static Mesh *applyModifier(ModifierData *md, const ModifierEvalContext *ctx, Mesh *mesh) | static Mesh *modifyMesh(ModifierData *md, const ModifierEvalContext *ctx, Mesh *mesh) | ||||
| { | { | ||||
| const SolidifyModifierData *smd = (SolidifyModifierData *)md; | const SolidifyModifierData *smd = (SolidifyModifierData *)md; | ||||
| switch (smd->mode) { | switch (smd->mode) { | ||||
| case MOD_SOLIDIFY_MODE_EXTRUDE: | case MOD_SOLIDIFY_MODE_EXTRUDE: | ||||
| return MOD_solidify_extrude_applyModifier(md, ctx, mesh); | return MOD_solidify_extrude_modifyMesh(md, ctx, mesh); | ||||
| case MOD_SOLIDIFY_MODE_NONMANIFOLD: | case MOD_SOLIDIFY_MODE_NONMANIFOLD: | ||||
| return MOD_solidify_nonmanifold_applyModifier(md, ctx, mesh); | return MOD_solidify_nonmanifold_modifyMesh(md, ctx, mesh); | ||||
| default: | default: | ||||
| BLI_assert(0); | BLI_assert(0); | ||||
| } | } | ||||
| return mesh; | return mesh; | ||||
| } | } | ||||
| ModifierTypeInfo modifierType_Solidify = { | ModifierTypeInfo modifierType_Solidify = { | ||||
| /* name */ "Solidify", | /* name */ "Solidify", | ||||
| /* structName */ "SolidifyModifierData", | /* structName */ "SolidifyModifierData", | ||||
| /* structSize */ sizeof(SolidifyModifierData), | /* structSize */ sizeof(SolidifyModifierData), | ||||
| /* type */ eModifierTypeType_Constructive, | /* type */ eModifierTypeType_Constructive, | ||||
| /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs | | /* flags */ eModifierTypeFlag_AcceptsMesh | eModifierTypeFlag_AcceptsCVs | | ||||
| eModifierTypeFlag_SupportsMapping | eModifierTypeFlag_SupportsEditmode | | eModifierTypeFlag_SupportsMapping | eModifierTypeFlag_SupportsEditmode | | ||||
| eModifierTypeFlag_EnableInEditmode, | eModifierTypeFlag_EnableInEditmode, | ||||
| /* copyData */ modifier_copyData_generic, | /* copyData */ modifier_copyData_generic, | ||||
| /* deformVerts */ NULL, | /* deformVerts */ NULL, | ||||
| /* deformMatrices */ NULL, | /* deformMatrices */ NULL, | ||||
| /* deformVertsEM */ NULL, | /* deformVertsEM */ NULL, | ||||
| /* deformMatricesEM */ NULL, | /* deformMatricesEM */ NULL, | ||||
| /* applyModifier */ applyModifier, | /* modifyMesh */ modifyMesh, | ||||
| /* modifyHair */ NULL, | |||||
| /* modifyPointCloud */ NULL, | |||||
| /* modifyVolume */ NULL, | |||||
| /* initData */ initData, | /* initData */ initData, | ||||
| /* requiredDataMask */ requiredDataMask, | /* requiredDataMask */ requiredDataMask, | ||||
| /* freeData */ NULL, | /* freeData */ NULL, | ||||
| /* isDisabled */ NULL, | /* isDisabled */ NULL, | ||||
| /* updateDepsgraph */ NULL, | /* updateDepsgraph */ NULL, | ||||
| /* dependsOnTime */ NULL, | /* dependsOnTime */ NULL, | ||||
| /* dependsOnNormals */ dependsOnNormals, | /* dependsOnNormals */ dependsOnNormals, | ||||
| /* foreachObjectLink */ NULL, | /* foreachObjectLink */ NULL, | ||||
| /* foreachIDLink */ NULL, | /* foreachIDLink */ NULL, | ||||
| /* foreachTexLink */ NULL, | /* foreachTexLink */ NULL, | ||||
| /* freeRuntimeData */ NULL, | /* freeRuntimeData */ NULL, | ||||
| }; | }; | ||||