0.15.0.0
UI
UI Editor
Added drag and drop of objects onto Set nodes in the NodeGraph.
Fixed crash which could occur when opening recent files.
Fixed crash which could occur when using OpenGL widgets within Maya.
Added support for summary tooltips on node UI tabs (#332).
Fixed bugs which could cause a blank NodeEditor if an expression referenced a script variable.
Fixed bugs in channel mask menus on image processing nodes.
Core
Added Wedge node. This allows tasks to be dispatched multiple times using a range of values (#1372).
Added TaskContextVariables node. This allows variables to be defined within the tree of tasks (renders etc) executed by a dispatcher.
Added Loop node. This takes an input and loops it N times through an external graph before outputting it again. This provides the user with the ability to do things with the graph which were previously only achievable with code.
Reference
Fixed serialisation of empty reference.
Fixed serialisation of user plug metadata.
Fixed referencing of promoted plugs
ExecutableNode requirements plug
UnionFilter filter inputs
OSLImage and OSLObject shader plugs.
RenderManShader coshader plugs (#1358).
Expression
Fixed support for setting GafferImage FormatPlugs.
ContextVariables
Fixed serialisation bug where additional plugs were added on save/load and copy/paste.
Improved Context and ValuePlug performance.
Image
Added ImageLoop node.
Performance
Improved Reformat performance.
Improved threading peformance for small images.
ImageWriter
Improved error messages.
Fixed bugs with empty filenames and filenames using substitutions.
ImageTransform
Fixed copy/paste.
Fixed dirty propagation bug which could prevent the viewer updating at the right time.
ImageReader
Added error reporting for missing files.
Scene
Added SceneLoop node.
Transform
Fixed bugs in World mode.
Added Parent, Local Reset and World Reset modes.
Renamed Object space to Local.
Changed default space to Local.
Note that these are backwards incompatible changes, necessary to fix an important bug and get the Transform node on a solid footing for the future. To get the same results as the old World mode, use the new Parent mode.
FreezeTransform
Fixed bug which prevented the UI updating when the input object was changed.
Fixed bugs which could cause incorrect bounds to be computed.
Appleseed
Removed options and attributes that are not useful in Gaffer.
Fixed default values for some options and attributes.
Documented all nodes.
Added support for shading overrides.
API
Pass-through connections may now be made for FormatPlug (#1250).
Added TaskContextProcessor base class. This enables the development of ExecutableNodes which request their input requirements in different contexts.
Added support for directly setting Color3f context values from Python.
UI Metadata additions. Many additions were made to the metadata supported by the Node UIs, and the existing UIs were ported to make use of it.
“layout:visibilityActivator”
“plugValueWidget:type”
“compoundDataPlugValueWidget:editable”
“boolPlugValueWidget:displayMode”
“vectorDataPlugValueWidget:dragPointer”
“pathPlugValueWidget:leaf”
“pathPlugValueWidget:valid”
“pathPlugValueWidget:bookmarks”
“fileSystemPathPlugValueWidget:extensions”
“fileSystemPathPlugValueWidget:extensionsLabel”
ScriptProcedural
Added context parameter.
BoolWidget
Added setDisplayMode()/getDisplayMode() accessors.
Added AcceptsDependencyCycles Plug flag. See the Loop node for an example of use.
Added FileSystemPathPlugValueWidget.
Metadata
Fixed inconsistent handling of NULL values.
Added methods for deregistering values.
Removed GafferUI.SectionedCompoundPlugValueWidget.
Activator expressions are now attached to the parent of the plug, rather than always being on the node.
Removed StringPlugValueWidget continuousUpdate constructor argument. Use metadata instead.
Removed MultiLineStringPlugValueWidget continuousUpdate constructor argument. Use metadata instead.
SceneNode
Added childNames argument to bounds union methods.
SceneAlgo
Added
bound( const IECore::Object * )
function.
Build
Updated to Cortex 9.0.0.
Updated to OIIO 1.5.17.
Updated to OSL 1.6.8.
Updated to 1.2.0-beta.
Incompatibilies
Removed
Reference::fileNamePlug()
(#801). UseReference::fileName()
instead. UsecontinueOnError = True
when loading old scripts.Removed arguments from CompoundDataPlugValueWidget constructor. Use Metadata instead.
Removed SectionedCompoundDataPlugVlueWidget. Use LayoutPlugValueWidget and metadata instead.
Changed base class for ImagePlug.
Changed base class for ScenePlug.
Changed base class for SplinePlug.
Removed ImageMixinBase. Use ImageProcessor instead.
Removed SceneMixinBase. Use SceneProcessor instead.
Removed GafferUI.SectionedCompoundPlugValueWidget. Use LayoutPlugValueWidget instead.
Activator expressions are now attached to the parent of the plug, rather than always being on the node.
Changed ChannelMaskPlugValueWidget constructor arguments.
Changed Transform behaviour to fix bug in world space mode, add new modes and change the default mode to local. If you need the old world space behaviour, use the new parent space mode.