Blender Git Commit Log

Git Commits -> Revision 2604f28

Revision 2604f28 by Sergey Sharybin (master)
July 18, 2018, 14:09 (GMT)
Cycles: Fix missing nested particle systems when instanced multiple times

Was only visible when doing command line, since it was happening due to
cache-free policy which was aimed to bring memory usage down.

The issue is that if object with particle system is used as a nested
duplicator multiple times, it will only generate children first time,
and after that its caches are freed. After that duplication system
can not generate any instances, since the path cache is lost.

Now we delay caches free to after all objects are synchronized, which
ensures all instances are generated.

This will increase a memory peak a bit during object synchronization
time, but overall it shouldn't be that bad, since memory footprint
after synchronization will stay the same as before this change.

The ultimate thing to do here would be to drop the whole dependency
graph away, but this will require:

- API on engine side, to inform it to drop the dependency graph.
- Changes in Cycles report system to NOT use evaluated scene to get
scene name (evaluated scene will be gone with dependency graph).

Commit Details:

Full Hash: 2604f281b7bd74f396b2479fbdb97cbf9dc27689
Parent Commit: 5fd677c
Lines Changed: +29, -12

3 Modified Paths:

/intern/cycles/blender/blender_mesh.cpp (+0, -12) (Diff)
/intern/cycles/blender/blender_sync.cpp (+26, -0) (Diff)
/intern/cycles/blender/blender_sync.h (+3, -0) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021