Cleanup: remove use_normals arugment to MOD_deform_mesh_eval_get
Accessing the normals creates them on demand so there was no need to pass an argument requesting them.
This commit is contained in:
parent
afc71a0512
commit
223d623891
|
@ -211,8 +211,7 @@ static void deformMatrices(ModifierData *md,
|
|||
int verts_num)
|
||||
{
|
||||
ArmatureModifierData *amd = (ArmatureModifierData *)md;
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
|
||||
BKE_armature_deform_coords_with_mesh(amd->object,
|
||||
ctx->object,
|
||||
|
|
|
@ -467,7 +467,7 @@ static void deformVerts(ModifierData *md,
|
|||
|
||||
if (ctx->object->type == OB_MESH && cmd->defgrp_name[0] != '\0') {
|
||||
/* mesh_src is only needed for vgroups. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
if (cmd->type == MOD_CAST_TYPE_CUBOID) {
|
||||
|
@ -493,8 +493,7 @@ static void deformVertsEM(ModifierData *md,
|
|||
Mesh *mesh_src = NULL;
|
||||
|
||||
if (cmd->defgrp_name[0] != '\0') {
|
||||
mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, editData, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
if (mesh && mesh->runtime.wrapper_type == ME_WRAPPER_TYPE_MDATA) {
|
||||
|
|
|
@ -94,7 +94,7 @@ static void deformVerts(ModifierData *md,
|
|||
}
|
||||
|
||||
if (mesh == NULL) {
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, NULL, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, NULL, NULL, verts_num, false);
|
||||
}
|
||||
else {
|
||||
/* Not possible to use get_mesh() in this case as we'll modify its vertices
|
||||
|
|
|
@ -107,7 +107,7 @@ static void deformVerts(ModifierData *md,
|
|||
}
|
||||
|
||||
if (mesh == NULL) {
|
||||
mesh_src = MOD_deform_mesh_eval_get(ob, NULL, NULL, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ob, NULL, NULL, NULL, verts_num, false);
|
||||
}
|
||||
else {
|
||||
/* Not possible to use get_mesh() in this case as we'll modify its vertices
|
||||
|
|
|
@ -729,8 +729,7 @@ static void deformVerts(ModifierData *md,
|
|||
float (*vertexCos)[3],
|
||||
int verts_num)
|
||||
{
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
|
||||
correctivesmooth_modifier_do(
|
||||
md, ctx->depsgraph, ctx->object, mesh_src, vertexCos, (uint)verts_num, NULL);
|
||||
|
@ -747,8 +746,7 @@ static void deformVertsEM(ModifierData *md,
|
|||
float (*vertexCos)[3],
|
||||
int verts_num)
|
||||
{
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, editData, mesh, NULL, verts_num, false, false);
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false);
|
||||
|
||||
/* TODO(@campbellbarton): use edit-mode data only (remove this line). */
|
||||
if (mesh_src != NULL) {
|
||||
|
|
|
@ -111,7 +111,7 @@ static void deformVerts(ModifierData *md,
|
|||
|
||||
if (ctx->object->type == OB_MESH && cmd->name[0] != '\0') {
|
||||
/* mesh_src is only needed for vgroups. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
struct MDeformVert *dvert = NULL;
|
||||
|
|
|
@ -372,8 +372,7 @@ static void deformVerts(ModifierData *md,
|
|||
float (*vertexCos)[3],
|
||||
int verts_num)
|
||||
{
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
|
||||
displaceModifier_do((DisplaceModifierData *)md, ctx, mesh_src, vertexCos, verts_num);
|
||||
|
||||
|
@ -389,8 +388,7 @@ static void deformVertsEM(ModifierData *md,
|
|||
float (*vertexCos)[3],
|
||||
int verts_num)
|
||||
{
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, editData, mesh, NULL, verts_num, false, false);
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false);
|
||||
|
||||
/* TODO(@campbellbarton): use edit-mode data only (remove this line). */
|
||||
if (mesh_src != NULL) {
|
||||
|
|
|
@ -430,8 +430,7 @@ static void deformVerts(struct ModifierData *md,
|
|||
int verts_num)
|
||||
{
|
||||
HookModifierData *hmd = (HookModifierData *)md;
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
|
||||
deformVerts_do(hmd, ctx, ctx->object, mesh_src, NULL, vertexCos, verts_num);
|
||||
|
||||
|
|
|
@ -764,8 +764,7 @@ static void deformVerts(ModifierData *md,
|
|||
float (*vertexCos)[3],
|
||||
int verts_num)
|
||||
{
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
|
||||
LaplacianDeformModifier_do(
|
||||
(LaplacianDeformModifierData *)md, ctx->object, mesh_src, vertexCos, verts_num);
|
||||
|
@ -782,8 +781,7 @@ static void deformVertsEM(ModifierData *md,
|
|||
float (*vertexCos)[3],
|
||||
int verts_num)
|
||||
{
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, editData, mesh, NULL, verts_num, false, false);
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false);
|
||||
|
||||
/* TODO(@campbellbarton): use edit-mode data only (remove this line). */
|
||||
if (mesh_src != NULL) {
|
||||
|
|
|
@ -535,7 +535,7 @@ static void deformVerts(ModifierData *md,
|
|||
return;
|
||||
}
|
||||
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
|
||||
laplaciansmoothModifier_do(
|
||||
(LaplacianSmoothModifierData *)md, ctx->object, mesh_src, vertexCos, verts_num);
|
||||
|
@ -558,7 +558,7 @@ static void deformVertsEM(ModifierData *md,
|
|||
return;
|
||||
}
|
||||
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false);
|
||||
|
||||
/* TODO(@campbellbarton): use edit-mode data only (remove this line). */
|
||||
if (mesh_src != NULL) {
|
||||
|
|
|
@ -98,7 +98,7 @@ static void deformVerts(ModifierData *md,
|
|||
{
|
||||
LatticeModifierData *lmd = (LatticeModifierData *)md;
|
||||
struct Mesh *mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
|
||||
MOD_previous_vcos_store(md, vertexCos); /* if next modifier needs original vertices */
|
||||
|
||||
|
|
|
@ -297,7 +297,7 @@ static void deformVerts(ModifierData *md,
|
|||
|
||||
if (ctx->object->type == OB_MESH && mcmd->defgrp_name[0] != '\0') {
|
||||
/* `mesh_src` is only needed for vertex groups. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
}
|
||||
meshcache_do(mcmd, scene, ctx->object, mesh_src, vertexCos, verts_num);
|
||||
|
||||
|
@ -320,8 +320,7 @@ static void deformVertsEM(ModifierData *md,
|
|||
|
||||
if (ctx->object->type == OB_MESH && mcmd->defgrp_name[0] != '\0') {
|
||||
/* `mesh_src` is only needed for vertex groups. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, editData, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false);
|
||||
}
|
||||
if (mesh_src != NULL) {
|
||||
BKE_mesh_wrapper_ensure_mdata(mesh_src);
|
||||
|
|
|
@ -444,8 +444,7 @@ static void deformVerts(ModifierData *md,
|
|||
float (*vertexCos)[3],
|
||||
int verts_num)
|
||||
{
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
|
||||
MOD_previous_vcos_store(md, vertexCos); /* if next modifier needs original vertices */
|
||||
|
||||
|
@ -463,8 +462,7 @@ static void deformVertsEM(ModifierData *md,
|
|||
float (*vertexCos)[3],
|
||||
int verts_num)
|
||||
{
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, editData, mesh, NULL, verts_num, false, false);
|
||||
Mesh *mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false);
|
||||
|
||||
/* TODO(@campbellbarton): use edit-mode data only (remove this line). */
|
||||
if (mesh_src != NULL) {
|
||||
|
|
|
@ -119,8 +119,7 @@ static void deformVerts(ModifierData *md,
|
|||
}
|
||||
|
||||
if (mesh_src == nullptr) {
|
||||
mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, nullptr, nullptr, vertexCos, verts_num, false, true);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, nullptr, nullptr, vertexCos, verts_num, true);
|
||||
if (mesh_src == nullptr) {
|
||||
return;
|
||||
}
|
||||
|
|
|
@ -108,7 +108,7 @@ static void deformVerts(ModifierData *md,
|
|||
(swmd->shrinkType == MOD_SHRINKWRAP_PROJECT)) {
|
||||
/* mesh_src is needed for vgroups, but also used as ShrinkwrapCalcData.vert when projecting.
|
||||
* Avoid time-consuming mesh conversion for curves when not projecting. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
struct MDeformVert *dvert = NULL;
|
||||
|
@ -135,8 +135,7 @@ static void deformVertsEM(ModifierData *md,
|
|||
Mesh *mesh_src = NULL;
|
||||
|
||||
if ((swmd->vgroup_name[0] != '\0') || (swmd->shrinkType == MOD_SHRINKWRAP_PROJECT)) {
|
||||
mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, editData, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
/* TODO(@campbellbarton): use edit-mode data only (remove this line). */
|
||||
|
|
|
@ -453,7 +453,7 @@ static void deformVerts(ModifierData *md,
|
|||
|
||||
if (ctx->object->type == OB_MESH && sdmd->vgroup_name[0] != '\0') {
|
||||
/* mesh_src is only needed for vgroups. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
SimpleDeformModifier_do(sdmd, ctx, ctx->object, mesh_src, vertexCos, verts_num);
|
||||
|
@ -475,8 +475,7 @@ static void deformVertsEM(ModifierData *md,
|
|||
|
||||
if (ctx->object->type == OB_MESH && sdmd->vgroup_name[0] != '\0') {
|
||||
/* mesh_src is only needed for vgroups. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, editData, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
/* TODO(@campbellbarton): use edit-mode data only (remove this line). */
|
||||
|
|
|
@ -190,7 +190,7 @@ static void deformVerts(ModifierData *md,
|
|||
Mesh *mesh_src = NULL;
|
||||
|
||||
/* mesh_src is needed for vgroups, and taking edges into account. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
|
||||
smoothModifier_do(smd, ctx->object, mesh_src, vertexCos, verts_num);
|
||||
|
||||
|
@ -210,7 +210,7 @@ static void deformVertsEM(ModifierData *md,
|
|||
Mesh *mesh_src = NULL;
|
||||
|
||||
/* mesh_src is needed for vgroups, and taking edges into account. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false);
|
||||
|
||||
/* TODO(@campbellbarton): use edit-mode data only (remove this line). */
|
||||
BKE_mesh_wrapper_ensure_mdata(mesh_src);
|
||||
|
|
|
@ -114,7 +114,7 @@ static void deformVerts(ModifierData *md,
|
|||
surmd->mesh = (Mesh *)BKE_id_copy_ex(NULL, (ID *)mesh, NULL, LIB_ID_COPY_LOCALIZE);
|
||||
}
|
||||
else {
|
||||
surmd->mesh = MOD_deform_mesh_eval_get(ctx->object, NULL, NULL, NULL, verts_num, false, false);
|
||||
surmd->mesh = MOD_deform_mesh_eval_get(ctx->object, NULL, NULL, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
if (!ctx->object->pd) {
|
||||
|
|
|
@ -1577,7 +1577,7 @@ static void deformVerts(ModifierData *md,
|
|||
|
||||
if (smd->defgrp_name[0] != '\0') {
|
||||
/* Only need to use mesh_src when a vgroup is used. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
surfacedeformModifier_do(md, ctx, vertexCos, verts_num, ctx->object, mesh_src);
|
||||
|
@ -1599,7 +1599,7 @@ static void deformVertsEM(ModifierData *md,
|
|||
|
||||
if (smd->defgrp_name[0] != '\0') {
|
||||
/* Only need to use mesh_src when a vgroup is used. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, em, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, em, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
surfacedeformModifier_do(md, ctx, vertexCos, verts_num, ctx->object, mesh_src);
|
||||
|
|
|
@ -169,7 +169,6 @@ Mesh *MOD_deform_mesh_eval_get(Object *ob,
|
|||
Mesh *mesh,
|
||||
const float (*vertexCos)[3],
|
||||
const int verts_num,
|
||||
const bool use_normals,
|
||||
const bool use_orco)
|
||||
{
|
||||
if (mesh != NULL) {
|
||||
|
@ -217,14 +216,6 @@ Mesh *MOD_deform_mesh_eval_get(Object *ob,
|
|||
}
|
||||
}
|
||||
|
||||
/* TODO: Remove this "use_normals" argument, since the caller should retrieve normals afterwards
|
||||
* if necessary. */
|
||||
if (use_normals) {
|
||||
if (LIKELY(mesh)) {
|
||||
BKE_mesh_vertex_normals_ensure(mesh);
|
||||
}
|
||||
}
|
||||
|
||||
if (mesh && mesh->runtime.wrapper_type == ME_WRAPPER_TYPE_MDATA) {
|
||||
BLI_assert(mesh->totvert == verts_num);
|
||||
}
|
||||
|
|
|
@ -42,7 +42,6 @@ struct Mesh *MOD_deform_mesh_eval_get(struct Object *ob,
|
|||
struct Mesh *mesh,
|
||||
const float (*vertexCos)[3],
|
||||
int verts_num,
|
||||
bool use_normals,
|
||||
bool use_orco);
|
||||
|
||||
void MOD_get_vgroup(struct Object *ob,
|
||||
|
|
|
@ -348,7 +348,7 @@ static void deformVerts(ModifierData *md,
|
|||
|
||||
if (wmd->defgrp_name[0] != '\0' || wmd->texture != NULL) {
|
||||
/* mesh_src is only needed for vgroups and textures. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
warpModifier_do(wmd, ctx, mesh_src, vertexCos, verts_num);
|
||||
|
@ -370,7 +370,7 @@ static void deformVertsEM(ModifierData *md,
|
|||
|
||||
if (wmd->defgrp_name[0] != '\0' || wmd->texture != NULL) {
|
||||
/* mesh_src is only needed for vgroups and textures. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, em, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, em, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
/* TODO(@campbellbarton): use edit-mode data only (remove this line). */
|
||||
|
|
|
@ -302,11 +302,10 @@ static void deformVerts(ModifierData *md,
|
|||
Mesh *mesh_src = NULL;
|
||||
|
||||
if (wmd->flag & MOD_WAVE_NORM) {
|
||||
mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, NULL, mesh, vertexCos, verts_num, true, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, vertexCos, verts_num, false);
|
||||
}
|
||||
else if (wmd->texture != NULL || wmd->defgrp_name[0] != '\0') {
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, NULL, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
waveModifier_do(wmd, ctx, ctx->object, mesh_src, vertexCos, verts_num);
|
||||
|
@ -327,16 +326,10 @@ static void deformVertsEM(ModifierData *md,
|
|||
Mesh *mesh_src = NULL;
|
||||
|
||||
if (wmd->flag & MOD_WAVE_NORM) {
|
||||
/* NOTE(@campbellbarton): don't request normals here because `use_normals == false`
|
||||
* because #BKE_mesh_wrapper_ensure_mdata has not run yet.
|
||||
* While this could be supported the argument is documented to be removed,
|
||||
* so pass false here and let the normals be created when requested. */
|
||||
mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, editData, mesh, vertexCos, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, vertexCos, verts_num, false);
|
||||
}
|
||||
else if (wmd->texture != NULL || wmd->defgrp_name[0] != '\0') {
|
||||
mesh_src = MOD_deform_mesh_eval_get(
|
||||
ctx->object, editData, mesh, NULL, verts_num, false, false);
|
||||
mesh_src = MOD_deform_mesh_eval_get(ctx->object, editData, mesh, NULL, verts_num, false);
|
||||
}
|
||||
|
||||
/* TODO(@campbellbarton): use edit-mode data only (remove this line). */
|
||||
|
|
Loading…
Reference in New Issue