Version 0.14.0.0
Pre-releaseUI
- 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.
- Improved "Select Affected Objects" menu item. This is now available
- NodeEditor
- Added "Select Affected Objects" menu item in the tool menu for
filters and scene processors.
- Added "Select Affected Objects" menu item in the tool menu for
- 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
- Expression
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
scoped
argument toSignal.connect()
python bindings. -
Added
SignalClass
for binding signals, and deprecated the old
SignalBinder
. -
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
toNodule::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.