• Viewer : Added per-purpose control over which locations are shown in the viewer, according to their usd:purpose attribute.

    • The Drawing Mode dropdown menu can be used to to choose the visible purposes.

    • The default purposes can be specified in a startup file using Gaffer.Metadata.registerValue( GafferSceneUI.SceneView, "drawingMode.includedPurposes.value", "userDefault", IECore.StringVectorData( [ "default", "proxy" ] ) ).

  • StandardOptions : Added includedPurposes plug, to control which locations are included in a render based on the value of their usd:purpose attribute.

  • 3Delight : Added additional output presets.


  • GraphEditor : Removed dynamic raster-space sizing of focus icon, as it caused excessive overlap with other nodes at certain zoom levels and on certain high resolution displays (#5435).

  • StringPlugValueWidget : Fixed bug handling Esc.

  • Arnold : Fixed unnecessary opaque attribute deprecation warnings. These are now only emitted in the case that opaque has been explicitly turned off.

  • ShaderUI : Fixed bug causing identical but independent shaders in a shader network from being included in the shader browser.

  • Encapsulate :

    • Fixed bug where global attributes (from the point of encapsulation) were baked into the contents of the capsule instead of being inherited naturally (from the node being rendered).

    • Fixed motion blur so that global settings are now taken from the downstream node being rendered, not from the input to the Encapsulate node.


  • SceneTestCase : Added assertScenesRenderSame() method.

  • RenderController : Added missing updateRequired() Python binding.

  • CapturingRenderer :

    • Added capturedObjectNames() method.

    • Added capturedName() and capturedLinkTypes() methods to CapturedObject class.


  • Fixed compilation with Boost versions prior to 1.74.