Spreadsheet : Added support for drag and drop. Values and Plugs can be dragged from outside a Spreadsheet to a cell to set its value or connect to its value plug.
Instancer : Added
encapsulateInstanceGroupsplug, which outputs the instances within capsules. This has the same performance benefits as using an Encapsulate node downstream, with the following additional benefits :
Significantly improved performance when the prototypes define sets. A benchmarch with 1 million instances saw set generation time go from 10s using a downstream Encapsulate node to 0.002s using
Fewer unnecessary capsule invalidations, resulting in fewer interactive rendering updates.
ArnoldRender : Added support for animated camera parameters, such as field of view.
DeleteFaces/DeletePoints/DeleteCurves : Added
ignoreMissingVariableplug which allows users to opt-out of errors.
Constraint : Added
targetSceneplug, to allow constraining to locations in another scene.
Added support for connecting to the individual components of Vector, Point, Normal, UV and Color primitive variable inputs.
prototypeIndexto primitive variable creation menus.
OSLImage : Added support for connecting to the individual components of channel inputs.
Added support for USD skinning and blendshapes, which are now applied automatically to meshes during loading.
Added interpolation for animated cameras loaded from Alembic caches.
PointsPrimitive variables with Varying interpolation are now conformed to Vertex interpolation on load. This is particularly helpful when loading points written from Houdini.
SceneWriter : Added support for writing cameras to Alembic caches.
Fixed bug that caused the Inspector to edit the wrong node when SetFilters were in use.
Fixed bugs when using the CameraTool to manipulate scaled cameras or lights. Note: the Viewport projection will no longer display the effects of scale or shear components in the view matrix.
Widget : Fixed incorrect
ButtonEventcoordinate origin for mouse signals under certain widget configurations.
CatalogueSelect : Fixed broken presets for promoted
PlugAlgo : Fixed metadata handling when promoting plugs which were themselves promoted from the constructor of a custom node.
NodeAlgo : Fixed corner case where a preset could be listed twice if it was specified by both
GafferUI : Fixed incorrect Tree/TableView horizontal header height.
Spreadsheet : Fixed bug that allowed values to be pasted onto plugs with inputs.
Render/InteractiveRender : Fixed bug in light filter context handling. This could result in light filters not being linked to the correct lights, or cause exceptions during scene translation.
M33fVectorDataPlug : Added new plug type for specifying arrays of 3x3 matrices.
FilterPlug : Added
matchmethod to evaluate the filter for the specified
extractDataFromPlug()now supports M33fPlug and M33fVectorDataPlug.
promote()allows metadata to be excluded from promotion by registering a
<metadataName>:promotablemetadata value of
NodeAlgo : If an input plug does not have presets of its own, it now inherits them from its first output. This is particularly useful when promoting plugs which have dynamic presets which are computed on demand. Previously the presets would have been baked in to the promoted plug, but by preventing promotion using
presetNames:promotable = falseand
presetValues:promotable = falsethe promoted plug can continue to use the dynamic presets.
copyIf()function, to copy metadata matching an arbitrary predicate.
Deprecated the complex form of
copy()in favour of a simpler overload and the new
setCameraTransformnow properly removes scale and shear from the supplied matrix.
objectSamples()overload which fills
Cortex : Updated to version 10.1.4.0.