static void deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts, int UNUSED(useRenderParams), int UNUSED(isFinalCalc)) { HookModifierData *hmd = (HookModifierData*) md; deformVerts_do(hmd, ob, derivedData, vertexCos, numVerts); }
static void deformVertsEM(ModifierData *md, Object *ob, struct EditMesh *editData, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts) { HookModifierData *hmd = (HookModifierData*) md; DerivedMesh *dm = get_dm(ob, editData, derivedData, NULL, 0); deformVerts_do(hmd, ob, dm, vertexCos, numVerts); if(derivedData != dm) dm->release(dm); }
static void deformVertsEM(ModifierData *md, Object *ob, struct BMEditMesh *editData, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts) { HookModifierData *hmd = (HookModifierData *) md; DerivedMesh *dm = derivedData; /* We need a valid dm for meshes when a vgroup is set... */ if (!dm && ob->type == OB_MESH && hmd->name[0] != '\0') dm = get_dm(ob, editData, dm, NULL, false, false); deformVerts_do(hmd, ob, dm, vertexCos, numVerts); if (derivedData != dm) dm->release(dm); }
static void deformVerts(ModifierData *md, Object *ob, DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts, int UNUSED(useRenderParams), int UNUSED(isFinalCalc)) { HookModifierData *hmd = (HookModifierData*) md; DerivedMesh *dm = derivedData; /* We need a valid dm for meshes when a vgroup is set... */ if (!dm && ob->type == OB_MESH && hmd->name[0] != '\0') dm = get_dm(ob, NULL, dm, NULL, 0); deformVerts_do(hmd, ob, dm, vertexCos, numVerts); if (derivedData != dm) dm->release(dm); }