Blender Git Commit Log
Git Commits -> Revision b5542c1
Revision b5542c1 by Campbell Barton (master) June 26, 2021, 07:07 (GMT) |
Edit Mesh: optimize common use-cases for partial updates Skip updating normals & tessellation for contiguous geometry regions for operations such as translate & uniform scale. This means when all geometry is selected, no updates are needed as the relative locations of vertices aren't being modified. Performance: As this is skipping a multi-threaded operation, larger improvements are noticeable on systems with fewer cores. - ~1.15x to ~1.3x overall gain for 32 cores. - ~1.7x to ~2.2x overall gain for 1 core (limited using `-t 1` argument). Details: - Rotate & non-uniform scale only skip tessellation. - Proportional editing and axis-mirror have special handling ensure geometry is properly grouped before considering a face part of a single group that can be skipped. - Loose vertices always need their normals to be recalculated since they're calculated based on the location. - Non-affine transform operations such as shrink-fatten & bend, don't take advantage of this optimization. - Snap projection also disables the optimization. |
Commit Details:
Full Hash: b5542c1ea4c29c56338706158578c41f6e65df5c
Parent Commit: c1fe582
Lines Changed: +553, -91