Isolates objects by removing paths not matching a filter from the scene.


The Isolate node does not work well with the ... wildcard in PathFilters. Because of the way Gaffer generates scenes progressively from the root, the Isolate node needs to know if the filter matches any descendants (children, grandchildren etc) of the current location; if there are any matches then the current location is kept, otherwise it is removed. When faced with ..., the Isolate node assumes that there will always be a descendant match because ... matches anything. This can cause it to keep locations where in fact there may be no true descendant match. The only alternative would be to search the scene recursively looking for a true match, but this would defeat the goal of lazy evaluation and could cause poor performance.


Container for user-defined plugs. Nodes should never make their own plugs here, so users are free to do as they wish.


The processed output scene.


The on/off state of the node. When it is off, the node outputs the input scene unchanged.


The input scene


The filter used to control which parts of the scene are processed. A Filter node should be connected here.


The ancestor to isolate the objects from. Only locations below this will be removed.


Keeps all lights and light filters, regardless of other settings. This is useful when isolating an asset but wanting to render it using a light rig located elsewhere in the scene.


Keeps all cameras, regardless of other settings. This is useful when isolating an asset but wanting to render it through a camera located elsewhere in the scene.


By default, the bounding boxes of ancestor locations are automatically updated when children are removed. This can be turned off if necessary to get improved performance - in this case the bounding boxes will still wholly contain the contents at each location, but may be bigger than necessary.