f63cfd8e289da00782667b0a8eba0a8eaf89831e
Using the new index mask implementation, things can be a bit simpler. It's also simpler to use `complement` instead of `to_ranges_invert`, which just made everything less standard. Also create the new curve offsets in place instead of copying, and use implicit sharing to share attributes when no curves were deleted. With a version of `IndexMask::complement()` optmized locally, I observed the following speedups with a 1.2 million point curve system: - Delete points: 29 FPS -> 45 FPS - Delete curves: 48 FPS -> 49 FPS - Delete tip points: 25 FPS -> 32 FPS Also add a method to apply the "gather" function to all attributes, mostly as a continued experiment of consolidating attribute propagation. This can be used more elsewhere in the future.
…
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%
