Version 0.10.0.0
Pre-release
Pre-release
andrewkaufman
released this
09 Mar 21:03
·
16129 commits
to main
since this release
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.
- Added scope() method. This should be used by custom edit menu
- CompoundVectorParameterValueWidget
- Added support for "showIndices" parameter user data.
- PathMatcher
- Added addPaths() and removePaths() methods, each taking a second
PathMatcher to provide the paths.
- Added addPaths() and removePaths() methods, each taking a second
- Serialisation
- Made classPath() and modulePath() methods compatible with passing
a class as well as an instance.
- Made classPath() and modulePath() methods compatible with passing
- 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.
- The info API has been replaced with a property API. Emulation
- PathListingWidget
- Column python class has been replaced with several specialised
C++ subclasses. It is no longer possible to derive from Column
in python.
- Column python class has been replaced with several specialised
- GraphGadget
- Added argument to upstreamNodeGadgets() method.
- GafferScene::Filter
- Renamed "match" plug to "out". Backwards compatibility is
provided by a getattr alias in Python.
- Renamed "match" plug to "out". Backwards compatibility is
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.