Blender Git Loki

Git Commits -> Revision 4ba06ad

Revision 4ba06ad by Campbell Barton (master)
July 23, 2021, 02:54 (GMT)
Edit Mesh: multi-thread auto-smooth & custom normal calculations

Supported multi-threading for bm_mesh_loops_calc_normals.

This is done by operating on vertex-loops instead of face-loops.

Single threaded operation still loops over faces since iterating
over vertices adds some overhead in the case of custom-normals
as the order used for accessing loops must be the same as iterating
of a faces loops.

From isolated timing tests of bm_mesh_loops_calc_normals on high
poly models, this gives between 3.5x to 10x speedup,
with larger gains for meshes with custom-normals.

NOTE: this is part one of two patches for multi-threaded auto-smooth,
tagging edges as sharp is still single threaded.

Reviewed By: mont29

Ref D11928

Commit Details:

Full Hash: 4ba06ad0a8cdec66d9a9cb06f982736d46c40f4c
Parent Commit: 3fb4795
Lines Changed: +730, -261

3 Modified Paths:

/source/blender/blenkernel/BKE_mesh.h (+6, -0) (Diff)
/source/blender/blenkernel/intern/mesh_normals.cc (+30, -0) (Diff)
/source/blender/bmesh/intern/bmesh_mesh_normals.c (+694, -261) (Diff)
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021