Blender Git Commit Log

Git Commits -> Revision 7b88a4a

Revision 7b88a4a by Jacques Lucke (master)
December 11, 2021, 10:26 (GMT)
Geometry Nodes: remove accidental exponential time algorithm

Calling `foreach_field_input` on a highly nested field (we do that
often) has an exponential running time in the number of nodes.
That is because the same node may be visited many times.
This made Blender freeze on some setups that should work just fine.
Now every field keeps track of its inputs all the time. That replaces
the exponential algorithm with constant time access.

Commit Details:

Full Hash: 7b88a4a3ba7eb9b839afa6c42d070812a3af7997
Parent Commit: 4c705ab
Lines Changed: +93, -42

3 Modified Paths:

/source/blender/functions/FN_field.hh (+31, -18) (Diff)
/source/blender/functions/intern/field.cc (+56, -20) (Diff)
/source/blender/nodes/intern/geometry_nodes_eval_log.cc (+6, -4) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021