Just curious if operator shader overrides are supposed to work on multiple objects, namely multiple alembic nodes (using the gpu cache workflow)?
I'm having a hard time to get operators work correctly on multiple nodes, be it alembic nodes or standins.
Sometimes they work/don't-work, depending on how often I hammer the render-update button (without any further changes) and this behavior is directly related to 'parallel_node_init on/off'.
Most often the approaches I tried don't work with 'parallel_node_init off'.
Is the whole selector string parsed as global expression or just the part after the shape-name?
Just curious if something like 'myAlembic*.itemsParent_NULL.someItemPrefix*/*' is possible where 'myAlembic' is the most common name for name/prefix for the alembic-shape-nodes.
Or what would be the correct approach to override shaders on 'certain' nodes?
Doing a '*.(@node == 'polymesh')' expression seems to work but then I can't figure out how to filter by alembic gpu-cache node-name (-part) or by the 'name' and get consistent results when updating the renderer.
(*.(@node == 'polymesh')) and (*.(name == '*standRow*'))
Is the closest I can get but once again it fails if I don't set 'parallel_node_init off' explicitly and just because it worked the last 10 times I hammered the render-update button doesn't mean that this expression is valid.
*update*: doing the same expression in another scene didn't work either.
*update2*: it seems to work with standins but not on alembic nodes (gpu cache nodes)
Any tips on how to get this work using a more 'path-like' syntax? nodeName*/someparent/someChild/*)