0.10.0.0¶
Core¶
- Reimplemented paths framework in C++ (#1190). This gives much improved performance - 10x or more speed improvements in the SceneHierarchy panel.
 - Fixed subprocess hangs seen when dispatching renders inside Maya.
 - Restored compatibility with references from prior to version 0.8.0.0.
 
UI¶
- Added bookmarks system for NodeGraph (#849).
- Bookmark nodes using the right-click node context menu
 - Connect plugs to bookmarked nodes using the right-click plug context menu.
 
 - Added NodeGraph Ctrl+Click to select all downstream nodes (#941).
 - Added additional “Edit/Select Connected” menu items
 - Fixed “Edit/SelectConnected” menu items to ignore invisible nodes.
 - Fixed “Edit/SelectAll” menu item to ignore invisible nodes (#1207).
 - Highlighted plugs at non-default values in the NodeEditor (#1216).
 - SceneInspector
- Significant performance improvements.
 - Added name based filtering for options and attributes (#1159).
 - Added query caching.
 
 - Fixed bug whereby Widget.setVisible( notABool ) could cause problems.
 - Fixed clearing of StandardNodeGadget errors for non-DependencyNodes.
 
Scene¶
- Added “mode” plug to Set node. This allows paths to be added to or removed from existing sets, in addition to the old behaviour of creating a new set (or replacing an existing one of the same name).
 - Added ClippingPlane node.
 - Added “enabled” plug to Filter nodes (#1196).
 - Added FilterSwitch node (#1197).
 - Added “name” plug to Duplicate node, to provide control over the names given to the duplicates (#1200).
 
Appleseed¶
- Added photon target attribute.
 - Added sampler option.
 - Synced default options with new Appleseed defaults.
 
Cortex¶
- Added UI hint to control the visibility of the header in the ParameterisedHolder node UI.
 
API¶
- GraphGadget
- Added degreesOfSeparation argument to upstreamNodeGadgets() method.
 - Added downstreamNodeGadgets() and connectedNodeGadgets() methods.
 
 - EditMenu
- Added scope() method. This should be used by custom edit menu commands to ensure they operate on the right portion of the node graph.
 
 - CompoundVectorParameterValueWidget
- Added support for “showIndices” parameter user data.
 
 - PathMatcher
- Added addPaths() and removePaths() methods, each taking a second PathMatcher to provide the paths.
 
 - Serialisation
- Made classPath() and modulePath() methods compatible with passing a class as well as an instance.
 
 - PathListingWidget
- Added setSortable() and getSortable() methods.
 
 - Added MatchPatternPathFilter
 - Added bindings for SceneAlgo camera() and shutter() functions.
 - Metadata
- Added control over persistence of instance values.
 
 - Added preprocessor macros for gaffer version numbers.
 
Incompatibilities¶
- Path
- The info API has been replaced with a property API. Emulation for the old API exists, but it has been deprecated.
 - Properties must derive from RunTimeTyped, whereas info could contain any python type.
 - Subclasses now must implement the copy() method.
 
 - PathListingWidget
- Column python class has been replaced with several specialised C++ subclasses. It is no longer possible to derive from Column in python.
 
 - GraphGadget
- Added argument to upstreamNodeGadgets() method.
 
 - GafferScene::Filter
- Renamed “match” plug to “out”. Backwards compatibility is provided by a getattr alias in Python.
 
 
Build¶
- Updated public build to use Cortex 9.0.0-b4.
 - libGafferUI now links with Qt. This must be considered when building Gaffer to be hosted inside other applications.
 - Requires subprocess32 python module.
 - Added subprocess32 to dependencies build process.