Skip to content

Gaffer 1.5.2.0

Latest
Compare
Choose a tag to compare
@johnhaddon johnhaddon released this 13 Dec 09:31

Caution : The GafferML features introduced in this release are considered experimental, and are not subject to the usual backwards compatibility guarantees that apply to the rest of Gaffer.

Features

  • GafferML : Added a new module with the following nodes for running machine learning models via ONNX Runtime :
    • DataToTensor : Converts Gaffer data to tensors.
    • Inference : Loads ONNX models and performs inference using an array of input tensors.
    • ImageToTensor : Converts images to tensors for use with the Inference node.
    • TensorToImage : Converts tensors back to images following inference.
  • VisualiserTool : Added tool to 3D viewer for visualising primitive variables on meshes.

Improvements

  • MergeScenes : Removed unnecessary temporary contexts.
  • RenderPassEditor :
    • Added support for entering custom values in the Type column. Custom types can be later configured with a downstream NameSwitch selecting based on the value of the renderPass:type option.
    • Columns that edit options now include the option name in their header tooltip.
    • Improved description of render:cameraExclusions and render:matteExclusions options.

Fixes

  • MergeScenes : Fixed bug handling input connections not originating from the output of another node. These could cause locations provided by other inputs to lose all their properties.
  • PathFilter : Fixed bug allowing dropping paths onto read-only PathFilter nodes in the graph.
  • VectorDataWidget : Fixed bug allowing dropping paths onto read-only widgets.
  • GraphEditor : Fixed errors when dragging an unknown file type into the GraphEditor.
  • Widget : Fixed event.sourceWidget for DragDropEvents generated from a Qt native drag within the same Gaffer process. This will now reference the GafferUI.Widget that the Qt source widget belongs to, if any.
  • Catalogue : Fixed bug which "stole" drags that crossed the image listing but which were destined elsewhere, for instance a drag from the HierarchyView to a PathFilter in the GraphEditor.
  • GadgetWidget : Fixed signal handling bug in setViewportGadget(). This could cause the widget to attempt to redraw unnecessarily when the old viewport requested a redraw.
  • EditScope : Fixed error updating the Global Edit Target in read-only files.
  • RandomChoice : Fixed errors right-clicking on non-value plugs in the NodeEditor.

API

  • PlugLayout : Activations may now depend on the presence of certain plugs, as they are now reevaluated when child plugs are added and removed.
  • IECoreArnold::ShaderNetworkAlgo : Added a new API to allow just-in-time substitutions to be made when translating shaders to Arnold. Use with care.