Blender Git Commit Log
Git Commits -> Revision 781f41f
Revision 781f41f by Kévin Dietrich (master) March 24, 2021, 13:18 (GMT) |
Alembic procedural: deduplicate cached data accross frames Currently the procedural will add an entry to the cache for every frame even if the data only changes seldomly. This means that in some cases we will have duplicate data accross frames. The cached data is now stored separately from the time information, and an index is used to retrieve it based on time. This decoupling allows for multiple frames to point to the same data. To check if two arrays are the same, we compute their keys using the Alembic library's routines (which is based on murmur3), and tell the cache to reuse the last data if the keys match. This can drastically reduce memory usage at the cost of more processing time, although processing time is only increased if the topology may change. |
Commit Details:
Full Hash: 781f41f633fc61033423ebae657c0495ab9d131b
Parent Commit: 9b82620
Lines Changed: +104, -42