[Bf-blender-cvs] [9cc4f430c93] refactor-mesh-position-generic: Merge branch 'master' into refactor-mesh-position-generic
Hans Goudey
noreply at git.blender.org
Mon Dec 19 06:24:47 CET 2022
Commit: 9cc4f430c938d7e69a0605bf4e5662346f3d203e
Author: Hans Goudey
Date: Sun Dec 18 12:38:09 2022 -0600
Branches: refactor-mesh-position-generic
https://developer.blender.org/rB9cc4f430c938d7e69a0605bf4e5662346f3d203e
Merge branch 'master' into refactor-mesh-position-generic
===================================================================
===================================================================
diff --cc source/blender/blenkernel/BKE_mesh.h
index b5f3137ba1c,066d302fdd1..548ed122f3e
--- a/source/blender/blenkernel/BKE_mesh.h
+++ b/source/blender/blenkernel/BKE_mesh.h
@@@ -617,15 -620,15 +617,15 @@@ void BKE_mesh_normals_loop_custom_set(c
struct MEdge *medges,
int numEdges,
const struct MLoop *mloops,
- float (*r_custom_loopnors)[3],
+ float (*r_custom_loop_normals)[3],
int numLoops,
const struct MPoly *mpolys,
- const float (*polynors)[3],
+ const float (*poly_normals)[3],
int numPolys,
short (*r_clnors_data)[2]);
-void BKE_mesh_normals_loop_custom_from_verts_set(const struct MVert *mverts,
+void BKE_mesh_normals_loop_custom_from_verts_set(const float (*positions)[3],
const float (*vert_normals)[3],
- float (*r_custom_vertnors)[3],
+ float (*r_custom_vert_normals)[3],
int numVerts,
struct MEdge *medges,
int numEdges,
diff --cc source/blender/blenkernel/intern/mesh_iterators.cc
index 393ce479f8a,bc765c0ddd0..c89e0f41de1
--- a/source/blender/blenkernel/intern/mesh_iterators.cc
+++ b/source/blender/blenkernel/intern/mesh_iterators.cc
@@@ -185,12 -185,12 +185,12 @@@ void BKE_mesh_foreach_mapped_loop(Mesh
}
}
else {
- const float(*lnors)[3] = (flag & MESH_FOREACH_USE_NORMAL) ?
- static_cast<const float(*)[3]>(
- CustomData_get_layer(&mesh->ldata, CD_NORMAL)) :
- nullptr;
+ const float(*loop_normals)[3] = (flag & MESH_FOREACH_USE_NORMAL) ?
+ static_cast<const float(*)[3]>(
+ CustomData_get_layer(&mesh->ldata, CD_NORMAL)) :
+ nullptr;
- const MVert *mv = BKE_mesh_verts(mesh);
+ const float(*positions)[3] = BKE_mesh_positions(mesh);
const MLoop *ml = BKE_mesh_loops(mesh);
const MPoly *mp = BKE_mesh_polys(mesh);
const int *v_index = static_cast<const int *>(
@@@ -217,8 -217,8 +217,8 @@@
for (i = 0; i < mp->totloop; i++, ml++) {
const int v_idx = ml->v;
const int f_idx = p_idx;
- const float *no = lnors ? *lnors++ : nullptr;
+ const float *no = loop_normals ? *loop_normals++ : nullptr;
- func(userData, v_idx, f_idx, mv[ml->v].co, no);
+ func(userData, v_idx, f_idx, positions[ml->v], no);
}
}
}
diff --cc source/blender/blenkernel/intern/mesh_normals.cc
index d3f5012454b,3db34786661..99032e4ddf5
--- a/source/blender/blenkernel/intern/mesh_normals.cc
+++ b/source/blender/blenkernel/intern/mesh_normals.cc
@@@ -945,11 -993,11 +945,11 @@@ static void split_loop_nor_single_do(Lo
MLoopNorSpaceArray *lnors_spacearr = common_data->lnors_spacearr;
const Span<short2> clnors_data = common_data->clnors_data;
- const Span<MVert> verts = common_data->verts;
+ const Span<float3> positions = common_data->positions;
const Span<MEdge> edges = common_data->edges;
const Span<MLoop> loops = common_data->loops;
- const Span<float3> polynors = common_data->polynors;
- MutableSpan<float3> loop_normals = common_data->loopnors;
+ const Span<float3> poly_normals = common_data->poly_normals;
+ MutableSpan<float3> loop_normals = common_data->loop_normals;
MLoopNorSpace *lnor_space = data->lnor_space;
const int ml_curr_index = data->ml_curr_index;
@@@ -1000,10 -1051,10 +1000,10 @@@ static void split_loop_nor_fan_do(LoopS
BLI_Stack *edge_vectors)
{
MLoopNorSpaceArray *lnors_spacearr = common_data->lnors_spacearr;
- MutableSpan<float3> loopnors = common_data->loopnors;
+ MutableSpan<float3> loop_normals = common_data->loop_normals;
MutableSpan<short2> clnors_data = common_data->clnors_data;
- const Span<MVert> verts = common_data->verts;
+ const Span<float3> positions = common_data->positions;
const Span<MEdge> edges = common_data->edges;
const Span<MPoly> polys = common_data->polys;
const Span<MLoop> loops = common_data->loops;
@@@ -1540,9 -1591,9 +1540,9 @@@ void BKE_mesh_normals_loop_split(const
/* Init data common to all tasks. */
LoopSplitTaskDataCommon common_data;
common_data.lnors_spacearr = r_lnors_spacearr;
- common_data.loopnors = {reinterpret_cast<float3 *>(r_loopnors), numLoops};
+ common_data.loop_normals = {reinterpret_cast<float3 *>(r_loop_normals), numLoops};
common_data.clnors_data = {reinterpret_cast<short2 *>(clnors_data), clnors_data ? numLoops : 0};
- common_data.verts = {mverts, numVerts};
+ common_data.positions = {reinterpret_cast<const float3 *>(positions), numVerts};
common_data.edges = {medges, numEdges};
common_data.polys = polys;
common_data.loops = loops;
@@@ -1602,12 -1653,12 +1602,12 @@@
* Compute internal representation of given custom normals (as an array of float[2]).
* It also makes sure the mesh matches those custom normals, by setting sharp edges flag as needed
* to get a same custom lnor for all loops sharing a same smooth fan.
- * If use_vertices if true, r_custom_loopnors is assumed to be per-vertex, not per-loop
+ * If use_vertices if true, r_custom_loop_normals is assumed to be per-vertex, not per-loop
* (this allows to set whole vert's normals at once, useful in some cases).
- * r_custom_loopnors is expected to have normalized normals, or zero ones,
+ * r_custom_loop_normals is expected to have normalized normals, or zero ones,
* in which case they will be replaced by default loop/vertex normal.
*/
-static void mesh_normals_loop_custom_set(const MVert *mverts,
+static void mesh_normals_loop_custom_set(const float (*positions)[3],
const float (*vert_normals)[3],
const int numVerts,
MEdge *medges,
@@@ -1767,9 -1819,9 +1768,9 @@@
}
}
- /* And now, recompute our new auto lnors and lnor spacearr! */
+ /* And now, recompute our new auto `loop_normals` and lnor spacearr! */
BKE_lnor_spacearr_clear(&lnors_spacearr);
- BKE_mesh_normals_loop_split(mverts,
+ BKE_mesh_normals_loop_split(positions,
vert_normals,
numVerts,
medges,
@@@ -1874,9 -1926,9 +1875,9 @@@ void BKE_mesh_normals_loop_custom_set(c
false);
}
-void BKE_mesh_normals_loop_custom_from_verts_set(const MVert *mverts,
+void BKE_mesh_normals_loop_custom_from_verts_set(const float (*positions)[3],
const float (*vert_normals)[3],
- float (*r_custom_vertnors)[3],
+ float (*r_custom_vert_normals)[3],
const int numVerts,
MEdge *medges,
const int numEdges,
diff --cc source/blender/blenkernel/intern/mesh_tangent.cc
index 56e731c3adf,8534a68cca4..f8037af2891
--- a/source/blender/blenkernel/intern/mesh_tangent.cc
+++ b/source/blender/blenkernel/intern/mesh_tangent.cc
@@@ -67,16 -67,16 +67,16 @@@ struct BKEMeshToTangent
copy_v4_fl4(p_res, T.x, T.y, T.z, orientation ? 1.0f : -1.0f);
}
- const MPoly *mpolys; /* faces */
- const MLoop *mloops; /* faces vertices */
- const float (*positions)[3]; /* vertices */
- const MLoopUV *luvs; /* texture coordinates */
- const float (*lnors)[3]; /* loops' normals */
- float (*tangents)[4]; /* output tangents */
- int num_polys; /* number of polygons */
+ const MPoly *mpolys; /* faces */
+ const MLoop *mloops; /* faces vertices */
- const MVert *mverts; /* vertices */
++ const float (*positions)[3]; /* vertices */
+ const MLoopUV *luvs; /* texture coordinates */
+ const float (*loop_normals)[3]; /* loops' normals */
+ float (*tangents)[4]; /* output tangents */
+ int num_polys; /* number of polygons */
};
-void BKE_mesh_calc_loop_tangent_single_ex(const MVert *mverts,
+void BKE_mesh_calc_loop_tangent_single_ex(const float (*positions)[3],
const int /*numVerts*/,
const MLoop *mloops,
float (*r_looptangent)[4],
@@@ -91,9 -91,9 +91,9 @@@
BKEMeshToTangent mesh_to_tangent;
mesh_to_tangent.mpolys = mpolys;
mesh_to_tangent.mloops = mloops;
- mesh_to_tangent.mverts = mverts;
+ mesh_to_tangent.positions = positions;
mesh_to_tangent.luvs = loopuvs;
- mesh_to_tangent.lnors = loopnors;
+ mesh_to_tangent.loop_normals = loop_normals;
mesh_to_tangent.tangents = r_looptangent;
mesh_to_tangent.num_polys = numPolys;
diff --cc source/blender/modifiers/intern/MOD_normal_edit.cc
index 48a5fd93e0f,cc25f032228..a70359a2275
--- a/source/blender/modifiers/intern/MOD_normal_edit.cc
+++ b/source/blender/modifiers/intern/MOD_normal_edit.cc
@@@ -547,10 -546,10 +547,10 @@@ static Mesh *normalEditModifier_do(Norm
if (use_current_clnors) {
clnors = static_cast<short(*)[2]>(
CustomData_duplicate_referenced_layer(ldata, CD_CUSTOMLOOPNORMAL, loops_num));
- loopnors = static_cast
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list