Blender Git Commit Log

Git Commits -> Revision c765d4c

March 15, 2021, 19:08 (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.

Now we compute a hash for the data and compare it to the one for the
previous frame and only if they are different do we create a new entry.
The hash is computed by the Alembic library (using murmur3).

This can drastically reduce memory usage at the cost of more processing
time. In one file, memory usage goes from 9.08 Gb down to 4.28 Gb over
240 frames.

Commit Details:

Full Hash: c765d4c89a428396ae142b42a97ae224606bc7d9
Parent Commit: d63ccb1
Lines Changed: +88, -45

2 Modified Paths:

/intern/cycles/render/alembic.cpp (+51, -26) (Diff)
/intern/cycles/render/alembic.h (+37, -19) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021