889b1429245e382d4194673d73c92a626ce3484f
Instead of locking for the whole time the undo data is being stored, only lock while the step's per-node undo node map is being accessed. This is fine because each PBVH node is only processed by a single thread. Changing the node vector to not store anything until the undo step is finalized makes this process a bit simpler because we don't have to build both the map and the vector at the same time. Overall this improved the performance of the sculpt brush benchmark from #118145 by 12%, from 0.68s to 0.61s.
…
Blender
Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline-modeling, rigging, animation, simulation, rendering, compositing, motion tracking and video editing.
Project Pages
Development
License
Blender as a whole is licensed under the GNU General Public License, Version 3. Individual files may have a different, but compatible license.
See blender.org/about/license for details.
Description
Languages
C++
78%
Python
14.9%
C
2.9%
GLSL
1.9%
CMake
1.2%
Other
0.9%
