Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Goudey <h.goudey@me.com>2021-03-12 00:57:04 +0300
committerHans Goudey <h.goudey@me.com>2021-03-12 00:57:04 +0300
commitcec588d757c7e442c86aae6d59897ac66a4cc587 (patch)
tree7d67124b5bc2815d2ff6de276e8a517fae92fa2d
parent3e5869e083ead01d636ddf450debbe2b1442e225 (diff)
Fix issue with normals
-rw-r--r--source/blender/nodes/geometry/nodes/node_geo_mesh_primitive_cylinder.cc9
1 files changed, 3 insertions, 6 deletions
diff --git a/source/blender/nodes/geometry/nodes/node_geo_mesh_primitive_cylinder.cc b/source/blender/nodes/geometry/nodes/node_geo_mesh_primitive_cylinder.cc
index 1aab2740cd7..b2274a2c7c7 100644
--- a/source/blender/nodes/geometry/nodes/node_geo_mesh_primitive_cylinder.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_mesh_primitive_cylinder.cc
@@ -415,14 +415,11 @@ Mesh *create_cylinder_or_cone_mesh(const float radius_top,
poly.loopstart = loop_index;
poly.totloop = verts_num;
- /* Go backwards to reverse normal. */
- // for (int i = verts_num - 1; i >= 0; i--) {
for (const int i : IndexRange(verts_num)) {
+ /* Go backwards to reverse surface normal. */
MLoop &loop = loops[loop_index++];
- // loop.e = bottom_edges_start + verts_num - i - 1;
- // loop.v = bottom_verts_start + verts_num - i - 1;
- loop.e = bottom_edges_start + i;
- loop.v = bottom_verts_start + i;
+ loop.v = bottom_verts_start + verts_num - 1 - i;
+ loop.e = bottom_edges_start + verts_num - 1 - (i + 1) % verts_num;
}
}
else if (fill_type == GEO_NODE_MESH_CIRCLE_FILL_TRIANGLE_FAN) {