Version 0.15.0.0
Pre-release
Pre-release
andrewkaufman
released this
23 Jul 20:35
·
15335 commits
to main
since this release
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.
- Fixed serialisation bug where additional plugs were added on
- 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 bug which prevented the UI updating when the input object
- 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.
- Added
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.