760cf70d63a345d8241ba4e41311b0324d9d4def
Replace `DRW_Attributes` with a VectorSet of std::string. The max number of attributes is still the same. The inline buffer size is 4, and std::string's inline buffer is smaller than the previous char array size of 64, but it seems reasonable to save those optimizations for shorter attribute names and fewer attributes. In return we significantly decrease the size of the batch caches, simplify the code, and remove the attribute name length limit. I observed roughly an 8% increase in the 30k cube objects file, a change from 12 to 13 FPS. I'm guessing this is mostly because `VectorSet<std::string>` is smaller than `DRW_Attributes`. Pull Request: https://projects.blender.org/blender/blender/pulls/138946
…
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%
