0.41.0.0¶
Breaking Changes¶
- Adopted Cortex 10 UV representation (#2281) :
- UVs are now represented as V2f primitive variables, not separate s/t float primitive variables.
- Primary UV set is called “uv”.
- UV origin is in the bottom left, with increasing values of V going up (flipped vertically compared to previous orientation).
- Indices are now stored on the same primitive variable as the UVs themselves.
- This has affected the plugs and default values for a number of nodes.
- SplinePlug : Changed value representation from IECore::Spline to new SplineDefinition class (#2148).
- Algo headers : Removed compatibility namespacing (#2299).
- Removed CompoundPlug. Use Plug or ValuePlug instead (#2298, #1323).
- Removed CompoundPlugValueWidget. Use PlugLayout instead (#2298).
- FilteredSceneProcessor : Removed deprecated
filterContext
method. Use FilterPlug::FilterScope instead (#2260). - Stopped installing Cortex image ops. Use GafferImage nodes instead (#2258).
- Removed OpenImageIOAlgo. Use IECoreImage::OpenImageIOAlgo instead (#2258).
- Removed GafferCortexUI::ImageReaderPathPreview. Use GafferImageUI::ImageReaderPathPreview instead (#2258).
- GafferBindings : Hid internal details in GafferModule (#2289).
- GafferUIBindings : Hid internal details in GafferUIModule (#2256).
- GafferCortexBindings : Hid internal details in GafferCortexModule (#2248).
Features¶
- Added Viewer visualisation of Arnold light filters (#2275).
- Added Encapsulate node. This encapsulates portions of a scene by collapsing the hierarchy and replacing it with a procedural which will be evaluated at render time (#2283).
- Added FloatSpline OSL shader ((#2292).
- Added VTuneMonitor to annotate VTune profiles with node processes (#2247).
Improvements¶
- LightTweaks : Added “Delete” menu item to context menu (#2285).
- OSLShader : Improved node graph labels (#2296).
- Parent : Defaulted “root” plug to value of “/” (#2242).
- ArnoldOptions : Added abortOnError and maxSubdivison settings (#2290).
- SplinePlug :
- CollectScenes : Added “root” plug, to allow subtrees to be collected from the input scene (#2238).
- OSLObject/ShadingEngine : Added multithreaded evaluation for improved performance (#2251).
- CompoundDataPlug : Added menu items for adding box plugs (#2263).
- Browser/View apps : Improved image preview (#2258).
- Filter plug UI : Decluttered embedded filter UIs (#2276).
- Group/BranchCreator : Optimised context management (#2270).
Fixes¶
- ArnoldRender : Fixed error handling for aborted renders (#2279).
- SplineWidget :
- ImageWriter : Fixed bug when writing JPEG with blank scanlines (#2268).
- ImageReader : Fixed “enabled” plug, so that turning it off outputs a default blank image (#2254).
- Documentation :
- BoxIO : Fixed bug that could cause promoted plugs to initially be invisible in the NodeGraph (#2284).
- GraphGadget : Fixed GIL handling in
setRoot()
andsetFilter()
methods (#2287). - PlugLayout : Collapsible layouts are now used if a
rootSection
is specified (#2276). - PlugAlgo : Fixed bug where promoted plugs had the wrong value (#2298).
- Prune : Fixed hashing of sets (#2243).
- Text : Fixed problems with vertical alignment when there was too much text to fit in the text area (#2291).
API¶
- ValuePlug : The
Node::plugSetSignal()
is now emitted for all ancestors, not just for ValuePlugs (#2298). - GafferCortex::ParameterHandler : Added
hash()
method (#2298). - RendererAlgo : Added optional
root
argument tooutputObjects()
(#2283). - SceneAlgo : Added
parallelProcessLocations()
overload takingroot
(#2283). - Wrapper classes : Added templated variadic constructors (#2250).
- PlugAlgo : Added
promoteWithName()
function (#2284). - Added Capsule class to represent encapsulated scene hierarchy (#2283).
- StandardLightVisualiser : Added method for querying spotlight parameters (#2275).
- WidgetAlgo : Fixed
grab()
to work around Qt bugs on OSX (#2307).