Blender Git Commit Log

Git Commits -> Revision 6bef255

Revision 6bef255 by Campbell Barton (master)
June 14, 2021, 12:56 (GMT)
BMesh: remove unit-length edge-vector cache from normal calculation

Bypass stored edge-vectors for ~16% performance gains.

While this increases unit-length edge-vector calculations by around ~4x
the overhead of a parallel loop over all edges makes it worthwhile.

Note that caching edge-vectors per-vertex performs better and may be
worth investigating further, although in my tests this increases code
complexity with barley measurable benefits over not using cache at all.

Details about performance and possible optimizations are noted in
bm_vert_calc_normals_impl.

Commit Details:

Full Hash: 6bef2559047461794eb3ff27de15f4caf5ddcf1e
Parent Commit: 8083527
Lines Changed: +69, -202

3 Modified Paths:

/source/blender/bmesh/intern/bmesh_mesh_normals.c (+67, -159) (Diff)
/source/blender/bmesh/intern/bmesh_mesh_partial_update.c (+2, -41) (Diff)
/source/blender/bmesh/intern/bmesh_mesh_partial_update.h (+0, -2) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021