Isolate

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

Caution

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.

user

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

out

The processed output scene.

enabled

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

in

The input scene

filter

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

from

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

keepLights

Keeps all lights, 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.

keepCameras

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.

adjustBounds

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.