dba072ef934cdb2e5cc29eaa0238ee6764b0c4a8
We have a set of corners around some vertex. They have arbitrary connectivity between each other and form a set of linked lists through shared smooth edges. We have to linearly traverse each of these lists to mix the normals. And as a way to iterate over all these lists mixed in some index space we use a mask of already visited corners. So we take the first non-checked corner by mask lookup. And this lookup starts from the beginning every time even if we know there is no way to find any elements before current one. In a synthetic example with 20k fan fill of circle this gives a 8x speed up. Pull Request: https://projects.blender.org/blender/blender/pulls/144649
…
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%
