1.3.1.0
Features
USDShader : Added a node for loading shaders from USD’s
SdrRegistry. This includes shaders such asUsdPreviewSurfaceandUsdUVTexture, which are now available in theUSD/Shadersection of the node menu.USDLight : Added a node for defining UsdLux lights. This is available from the
USD/Lightsection of the node menu.SceneReader, SceneWriter : Added limited support for reading and writing Usd Volume prims.
Improvements
LightEditor : Added section displaying UsdLux shadow parameters.
Cycles : Added support for UsdLux lights.
LightTool : Added support for editing animated plugs.
Median, Erode, Dilate : Improved performance significantly for wide filters. Measured improvements of 100x faster for Erode/Dilate, and 10x faster for Median.
Fixes
SceneWriter : Fixed writing of UsdLux lights.
Viewer : Fixed visualisation of shaping cones for UsdLux lights, which were previously drawn at half the correct angle.
DisplayTransform : Fixed missing
viewpresets whendisplayis at the default value (#5392).Arnold
Fixed translation of
vectortyped outputs defined asvector <name>in an output definition.Fixed translation of
shadow:enableandshadow:colorparameters on UsdLux lights, which were previously ignored.
LightTool : Fixed bug causing non-settable plugs to be enabled, such as plugs with an expression as input or those using the default spreadsheet row for their value. This generated the error
ERROR : EventSignalCombiner : Cannot set value for plug {plug} except during computation.LightEditor : Fixed toggling values in cases where inherited light attributes were set by a script context variable without including a default.
GLWidget : Fixed rare crash when showing a GLWidget for the first time.
BranchCreator : Fixed bug which could cause inconsistent hashes to be generated.
Cycles :
Fixed rendering of meshes with faceted normals, which were previously being rendered as smooth. This applies to meshes without an
Nprimitive variable, and meshes whereNhasUniformorFaceVaryinginterpolation. Note that Cycles has no native support forFaceVaryinginterpolation so that in this case all faces are rendered faceted.Fixed translation of Uniform
Nprimitive variables. These are now available to be queried from the standardNgattribute in Cycles.
ImageSampler : Fixed handling of exceptional floating point values. Now returns
infifinfvalues are present in the image, rather than3.4e38.Merge :
Fixed the Difference operation to return correct values for exceptional floating point values. Now there is 0 difference between
infandinf, orNaNandNaN. Additionally, there is infinite difference betweenNaNand any other number, so assertImagesEqual will correctly reportNaNs that don’t belong.Fixed the Divide operation to return 0 for 0/0. This is consistent with how we previously handled fully black tiles, and avoids introducing
NaNvalues which create problems in compositing.
Median/Erode/Dilate : Fixed possible crash bug if there were
NaNs in the input image.ValuePlug : Fixed bug which caused
ComputeNode::computeCachePolicy()to be called unnecessarily for input plugs in some circumstances. This could affect performance, particularly when the plug belonged to a node implemented in Python.
API
OptionalValuePlug : Added a new plug type that pairs an
enabledBoolPlug with avalueValuePlug.Shader : Added support for using OptionalValuePlug to represent optional parameters.
Build
Cortex : Updated to version 10.5.1.0.