511ac66dabf170de2e0e445afbee261ddb944cf6
Use the shared cache system introduced in e8f4010611 for the
"looptris" triangulation cache. This avoids recalculation when meshes
are copied but the positions or topology don't change. The most obvious
improvement is for cases like a large meshes being adjusted slightly
with a simple geometry nodes modifier. In a basic test with a transform
node with a 1 million point grid I observed an improvement of 13%, from
9.75 to 11 FPS, which shows that we avoid spending 6ms recalculating
the triangulation of every update.
This also makes the thread safety for the triangulation data use a
more standard double-checked lock pattern, which is nice because we
can avoid holding a lock whenever the cached data is retrieved.
Split from https://developer.blender.org/D16530
…
.. Keep this document short & concise, linking to external resources instead of including content in-line. See 'release/text/readme.html' for the end user read-me. 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. .. figure:: https://code.blender.org/wp-content/uploads/2018/12/springrg.jpg :scale: 50 % :align: center Project Pages ------------- - `Main Website <http://www.blender.org>`__ - `Reference Manual <https://docs.blender.org/manual/en/latest/index.html>`__ - `User Community <https://www.blender.org/community/>`__ Development ----------- - `Build Instructions <https://wiki.blender.org/wiki/Building_Blender>`__ - `Code Review & Bug Tracker <https://developer.blender.org>`__ - `Developer Forum <https://devtalk.blender.org>`__ - `Developer Documentation <https://wiki.blender.org>`__ 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 <https://www.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%