6a05e5161bc7092cf3b25ea9f0164c5673f57bfb
Searching for a simulation state at a particular frame was implemented with a linear loop. The timeline did that for every visible frame, giving quadratic performance overall when zoomed out. Since the states are already assumed to be sorted by frame, we can use binary search instead giving logarithmic performance for each lookup instead. In the test file from #108097, instead of dropping to 20-30 FPS after about 4000 frames, I observed the original 70 FPS. Pull Request: https://projects.blender.org/blender/blender/pulls/109037
…
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%
