a5e7657ceeb6cc5b6a67209ab1120e45ffa39e6f
Currently slicing a span clamped the final size so that it would be within bounds of the input. However, in the vast majority of cases that is already the case anyway, and we can use asserts to detect when that assumption fails. The clamping had a performance cost. On a test interpolating a boolean attribute from 1 million curves to 4 million points, removing the clamping saved about 10% of the time. That's an extreme case but this probably slightly improves performance in other cases too. Slicing is used a lot in the new curve code. This commit introduces `slice_safe` which still does the clamping, and uses it in the few places that needed it or where I wasn't sure.
…
.. 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%