[Bf-blender-cvs] [8f7fb592145] temp-geometry-nodes-extrude-mesh: Working basic edge mode
Hans Goudey
noreply at git.blender.org
Mon Dec 27 17:27:49 CET 2021
Commit: 8f7fb5921455904f1d4b13e013731fc8a6eed4ae
Author: Hans Goudey
Date: Mon Dec 27 10:27:42 2021 -0600
Branches: temp-geometry-nodes-extrude-mesh
https://developer.blender.org/rB8f7fb5921455904f1d4b13e013731fc8a6eed4ae
Working basic edge mode
===================================================================
M source/blender/nodes/geometry/nodes/node_geo_extrude_mesh.cc
===================================================================
diff --git a/source/blender/nodes/geometry/nodes/node_geo_extrude_mesh.cc b/source/blender/nodes/geometry/nodes/node_geo_extrude_mesh.cc
index d5948c2b649..6589ad3ce04 100644
--- a/source/blender/nodes/geometry/nodes/node_geo_extrude_mesh.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_extrude_mesh.cc
@@ -221,7 +221,7 @@ static void extrude_mesh_edges(MeshComponent &component,
MEdge &edge = extrude_edges[i];
edge.v1 = extrude_vert_orig_indices[i];
edge.v2 = orig_vert_size + i;
- edge.flag |= (ME_EDGEDRAW | ME_EDGERENDER | ME_LOOSEEDGE);
+ edge.flag = (ME_EDGEDRAW | ME_EDGERENDER);
}
for (const int i : duplicate_edges.index_range()) {
@@ -229,7 +229,7 @@ static void extrude_mesh_edges(MeshComponent &component,
MEdge &edge = duplicate_edges[i];
edge.v1 = extrude_vert_indices[orig_edge.v1];
edge.v2 = extrude_vert_indices[orig_edge.v2];
- edge.flag |= (ME_EDGEDRAW | ME_EDGERENDER | ME_LOOSEEDGE);
+ edge.flag = (ME_EDGEDRAW | ME_EDGERENDER);
}
for (const int i : new_polys.index_range()) {
@@ -237,6 +237,7 @@ static void extrude_mesh_edges(MeshComponent &component,
poly.loopstart = orig_loop_size + i * 4;
poly.totloop = 4;
poly.mat_nr = 0;
+ poly.flag = 0;
}
/* Maps new vertices to the extruded edges connecting them to the original edges. The values are
@@ -265,13 +266,13 @@ static void extrude_mesh_edges(MeshComponent &component,
poly_loops[0].v = orig_edge.v1;
poly_loops[0].e = orig_edge_index;
poly_loops[1].v = orig_edge.v2;
- poly_loops[1].e = extrude_edge_offset + extrude_edge_index_1;
+ poly_loops[1].e = extrude_edge_offset + extrude_edge_index_2;
/* The first vertex of the duplicate edge is the extrude edge that isn't used yet. */
- poly_loops[2].v = extrude_edge_1.v1 == orig_edge.v2 ? extrude_edge_1.v1 : extrude_edge_1.v2;
+ poly_loops[2].v = extrude_edge_1.v1 == orig_edge.v2 ? extrude_edge_2.v1 : extrude_edge_2.v2;
poly_loops[2].e = duplicate_edge_offset + i;
- poly_loops[3].v = extrude_edge_2.v1 == orig_edge.v1 ? extrude_edge_2.v2 : extrude_edge_2.v1;
- poly_loops[3].e = extrude_edge_offset + extrude_edge_index_2;
+ poly_loops[3].v = extrude_edge_2.v1 == orig_edge.v1 ? extrude_edge_1.v1 : extrude_edge_1.v2;
+ poly_loops[3].e = extrude_edge_offset + extrude_edge_index_1;
}
component.attribute_foreach([&](const AttributeIDRef &id, const AttributeMetaData meta_data) {
More information about the Bf-blender-cvs
mailing list