0.14.0.0¶
UI¶
- NodeGraph- Improved “Select Affected Objects” menu item. This is now available on filters as well as on scene processors.
- Added support for dragging objects from the Viewer and SceneHierarchy
and dropping them onto scene processors and PathFilters, to specify
the affected objects.- Dragging onto a node replaces the current paths.
- Shift+Drag adds to the current paths.
- Control+Drag removes from the current paths.
 
- Added plug context menu for moving promoted plugs on Boxes.
 
- NodeEditor- Added “Select Affected Objects” menu item in the tool menu for filters and scene processors.
 
- UIEditor- Added + button for adding plugs, and - button for deleting them.
- Added the ability to create nested sections and drag+drop plugs between them.
 
- Viewer- Fixed grid and gnomon menus.
 
Core¶
Scene¶
- Improved ParentConstraint so it is acts more like the equivalent parenting operation, and maintains the local transforms of the objects being constrained. Note that this is a change of behaviour, but one that we feel is much for the better.
- Fixed ShaderAssignment to allow referencing of promoted shader input plugs.
API¶
- Added parallelTraverse()andfilteredParallelTraverse()methods to SceneAlgo. These make it trivial to traverse all locations in a scene using multiple threads.
- Added inputTransform argument to Constraint::computeConstraint().
- Removed TransformPlugValueWidget.
- Used Plug rather than CompoundPlug in several places. CompoundPlug
is being phased out because the Plug base class is now perfectly
capable of having child plugs.- ExecutableNode::dispatcherPlug()
- LocalDispatcher dispatcher plug
- Shader::parametersPlug()
 
- Fixed support for boost python object methods as menu commands.
- Pointer- Fixed registerPointer()method.
- Added binding for registerPointer().
 
- Fixed 
- Added scopedargument toSignal.connect()python bindings.
- Added SignalClassfor binding signals, and deprecated the oldSignalBinder.
- Added support for binding signals with 4 arguments.
- Added LazyMethod.flush()method.
- Fixed update bug in PathListingWidget.setSelectedPaths().
- Added support for “nodule:type” metadata to control the type
of nodule created for a plug. This should be used in preference
to Nodule::registerNodule(), which has been deprecated.
- Added support for modifying CompoundNodule orientation, spacing and direction using plug metadata.
- Improved signalling of instance metadata changes.
- Added default arguments for ValuePlug constructor arguments.
Incompatibilities¶
- Changed Constraint::computeConstraint() function signature.
- Changed ParentConstraint behaviour to include the local transform of the constrained object.
- Removed TransformPlugValueWidget.
- Changed plug type returned by ExecutableNode::dispatcherPlug().
- Changed Dispatcher::SetupPlugsFn signature.
- Changed ExecutableNode::dispatcherPlug() signature.
- Changed Shader::parametersPlug() to Plug rather than CompoundPlug.
- Removed asUserPlug arguments from Box promotion methods. Plugs are now always promoted directly under a box, and never as user plugs.
- Changed signature of Nodule::registerNodule()when registering a subclass.
- Changed signature of CompoundNodule constructor, which now accepts a Plug rather than CompoundPlug.
- Replaced UIEditor setSelectedPlug()/getSelectedPlug() methods with setSelection()/getSelection().
- Added arguments to Metadata signals.