[Bf-blender-cvs] [6ef8db35e7a] master: Cleanup: clarify naming for deformed vertex positions & normals
Campbell Barton
noreply at git.blender.org
Tue Jan 10 06:44:02 CET 2023
Commit: 6ef8db35e7a8104a81c0fb5c8522c3e93fb4f75d
Author: Campbell Barton
Date: Tue Jan 10 16:39:53 2023 +1100
Branches: master
https://developer.blender.org/rB6ef8db35e7a8104a81c0fb5c8522c3e93fb4f75d
Cleanup: clarify naming for deformed vertex positions & normals
Edit-mesh duplicator logic used a struct member vert_coords which read
as an alternative (and inconsistent) naming to vert_positions.
Rename to `vert_positions_deform` as the purpose of this value is to
assign when modifiers deform an edit-mesh.
Add `_deform` suffix to normals as well.
===================================================================
M source/blender/blenkernel/intern/object_dupli.cc
===================================================================
diff --git a/source/blender/blenkernel/intern/object_dupli.cc b/source/blender/blenkernel/intern/object_dupli.cc
index a9f2406ccfd..18dd92b62b4 100644
--- a/source/blender/blenkernel/intern/object_dupli.cc
+++ b/source/blender/blenkernel/intern/object_dupli.cc
@@ -565,8 +565,8 @@ struct VertexDupliData_EditMesh {
BMEditMesh *em;
/* Can be nullptr. */
- const float (*vert_coords)[3];
- const float (*vert_normals)[3];
+ const float (*vert_positions_deform)[3];
+ const float (*vert_normals_deform)[3];
/**
* \note The edit-mesh may assign #DupliObject.orco in cases when a regular mesh wouldn't.
@@ -682,14 +682,14 @@ static void make_child_duplis_verts_from_editmesh(const DupliContext *ctx,
BMIter iter;
int i;
- const float(*vert_coords)[3] = vdd->vert_coords;
- const float(*vert_normals)[3] = vdd->vert_normals;
+ const float(*vert_positions_deform)[3] = vdd->vert_positions_deform;
+ const float(*vert_normals_deform)[3] = vdd->vert_normals_deform;
BM_ITER_MESH_INDEX (v, &iter, em->bm, BM_VERTS_OF_MESH, i) {
const float *co, *no;
- if (vert_coords != nullptr) {
- co = vert_coords[i];
- no = vert_normals ? vert_normals[i] : nullptr;
+ if (vert_positions_deform != nullptr) {
+ co = vert_positions_deform[i];
+ no = vert_normals_deform ? vert_normals_deform[i] : nullptr;
}
else {
co = v->co;
@@ -710,10 +710,10 @@ static void make_duplis_verts(const DupliContext *ctx)
/* Gather mesh info. */
BMEditMesh *em = nullptr;
- const float(*vert_coords)[3] = nullptr;
- const float(*vert_normals)[3] = nullptr;
+ const float(*vert_positions_deform)[3] = nullptr;
+ const float(*vert_normals_deform)[3] = nullptr;
const Mesh *me_eval = mesh_data_from_duplicator_object(
- parent, &em, &vert_coords, use_rotation ? &vert_normals : nullptr);
+ parent, &em, &vert_positions_deform, use_rotation ? &vert_normals_deform : nullptr);
if (em == nullptr && me_eval == nullptr) {
return;
}
@@ -724,9 +724,9 @@ static void make_duplis_verts(const DupliContext *ctx)
VertexDupliData_EditMesh vdd{};
vdd.params = vdd_params;
vdd.em = em;
- vdd.vert_coords = vert_coords;
- vdd.vert_normals = vert_normals;
- vdd.has_orco = (vert_coords != nullptr);
+ vdd.vert_positions_deform = vert_positions_deform;
+ vdd.vert_normals_deform = vert_normals_deform;
+ vdd.has_orco = (vert_positions_deform != nullptr);
make_child_duplis(ctx, &vdd, make_child_duplis_verts_from_editmesh);
}
@@ -1073,7 +1073,7 @@ struct FaceDupliData_EditMesh {
bool has_orco, has_uvs;
int cd_loop_uv_offset;
/* Can be nullptr. */
- const float (*vert_coords)[3];
+ const float (*vert_positions_deform)[3];
};
static void get_dupliface_transform_from_coords(Span<float3> coords,
@@ -1181,7 +1181,7 @@ static DupliObject *face_dupli_from_editmesh(const DupliContext *ctx,
/* Mesh variables. */
BMFace *f,
- const float (*vert_coords)[3])
+ const float (*vert_positions_deform)[3])
{
const int coords_len = f->len;
Array<float3, 64> coords(coords_len);
@@ -1189,9 +1189,9 @@ static DupliObject *face_dupli_from_editmesh(const DupliContext *ctx,
BMLoop *l_first, *l_iter;
int i = 0;
l_iter = l_first = BM_FACE_FIRST_LOOP(f);
- if (vert_coords != nullptr) {
+ if (vert_positions_deform != nullptr) {
do {
- copy_v3_v3(coords[i++], vert_coords[BM_elem_index_get(l_iter->v)]);
+ copy_v3_v3(coords[i++], vert_positions_deform[BM_elem_index_get(l_iter->v)]);
} while ((l_iter = l_iter->next) != l_first);
}
else {
@@ -1261,9 +1261,9 @@ static void make_child_duplis_faces_from_editmesh(const DupliContext *ctx,
BMIter iter;
const bool use_scale = fdd->params.use_scale;
- const float(*vert_coords)[3] = fdd->vert_coords;
+ const float(*vert_positions_deform)[3] = fdd->vert_positions_deform;
- BLI_assert((vert_coords == nullptr) || (em->bm->elem_index_dirty & BM_VERT) == 0);
+ BLI_assert((vert_positions_deform == nullptr) || (em->bm->elem_index_dirty & BM_VERT) == 0);
invert_m4_m4(inst_ob->world_to_object, inst_ob->object_to_world);
/* Relative transform from parent to child space. */
@@ -1272,7 +1272,7 @@ static void make_child_duplis_faces_from_editmesh(const DupliContext *ctx,
BM_ITER_MESH_INDEX (f, &iter, em->bm, BM_FACES_OF_MESH, a) {
DupliObject *dob = face_dupli_from_editmesh(
- fdd->params.ctx, inst_ob, child_imat, a, use_scale, scale_fac, f, vert_coords);
+ fdd->params.ctx, inst_ob, child_imat, a, use_scale, scale_fac, f, vert_positions_deform);
if (fdd->has_orco) {
const float w = 1.0f / float(f->len);
@@ -1294,8 +1294,9 @@ static void make_duplis_faces(const DupliContext *ctx)
/* Gather mesh info. */
BMEditMesh *em = nullptr;
- const float(*vert_coords)[3] = nullptr;
- const Mesh *me_eval = mesh_data_from_duplicator_object(parent, &em, &vert_coords, nullptr);
+ const float(*vert_positions_deform)[3] = nullptr;
+ const Mesh *me_eval = mesh_data_from_duplicator_object(
+ parent, &em, &vert_positions_deform, nullptr);
if (em == nullptr && me_eval == nullptr) {
return;
}
@@ -1307,8 +1308,8 @@ static void make_duplis_faces(const DupliContext *ctx)
FaceDupliData_EditMesh fdd{};
fdd.params = fdd_params;
fdd.em = em;
- fdd.vert_coords = vert_coords;
- fdd.has_orco = (vert_coords != nullptr);
+ fdd.vert_positions_deform = vert_positions_deform;
+ fdd.has_orco = (vert_positions_deform != nullptr);
fdd.has_uvs = (uv_idx != -1);
fdd.cd_loop_uv_offset = (uv_idx != -1) ?
CustomData_get_n_offset(&em->bm->ldata, CD_MLOOPUV, uv_idx) :
More information about the Bf-blender-cvs
mailing list