Releases: GafferHQ/gaffer
Releases · GafferHQ/gaffer
Gaffer 0.32.0.0
Breaking Changes
- GLWidget : Replaced setOverlay/getOverlay with addOverlay/removeOverlay (#1979).
- Gadget (#1979) :
- Added member variable.
- Made
Gadget::visible()
method const.
Improvements
- ArnoldOptions : Added texture system settings (#1958).
- CustomOptions, CustomAttributes, PrimitiveVariables, OSLCode : Added option to add point and normal values in addition to vectors (#1977).
- OSLShader : Added support for specifying nodule visibility via metadata (#1975).
- Appleseed :
- GUI : User defaults are now applied to new ScriptNodes (#1960).
- OpenColorIO : Added support for specifying OCIO context variables per node (#1988).
- UIEditor / UserPlugs :
- Main menu (#1987) :
- Added options for flushing Arnold render caches.
- Added issue tracker link
- Renamed "mailing list" to "forum"
- GLWidget (#1979) :
- Added support for multiple overlays.
- Fixed overlay drawing problems.
- Viewer (#1979) :
- Added support for tool toolbars.
- Added support for tool shortcuts.
- Added sidebar showing all available tools.
- Added translate and scale manipulators.
- Arnold : Added support for subdiv_smooth_derivs attribute on polymeshes (#1996).
Fixes
- Isolate : Fixed bug when using keepLights or keepCameras (#1965).
- InteractiveArnoldRender : Fixed occasional hangs (#1983).
- Browser app : Fixed shutdown errors (#1981).
- Light visualisers : Fixed errors triggered by specific intensity values (#1982).
- OSLShader : Fixed ambiguities between point, vector and normal types (#1977).
- Display : Fixed to support retries after failing to launch the server (#1972).
- UIEditor : Fixed preset naming bugs (#1966).
- Wrapper : Fixed bugs when Gaffer was installed in a location with spaces in the file path (#1961, #1962).
- ErrorDialogue : Fixed parentWindow lifetime issues (#1986).
- CDL : Fixed dirty propagation (#1988).
- Crop : Fixed hang when using a crop with no input image (#1993).
- DispatcherUI : Removed emulated "PlaybackRange" option which was clashing with CustomRange (#1991).
- NodeUI : Fixed documentation:url metadata (#1995).
API
- GafferUI::PlugAdder : Added support for subclassing in Python ()
- CompoundNumericPlug : Added
IECore::GeometricData::Interpretation
setting (#1977). - Added
GafferImage::OpenImageIOAlgo
namespace with various utility functions (#1977). - Added
Gaffer::PlugAlgo
namespace with areplacePlug()
utility function (#1977). - Fixed binding of
Serialiser::childNeedsSerialisation
(#1973). - Added
WidgetAlgo.joinEdges()
(#1979). - Gadget : Added setEnabled/getEnabled/enabled methods (#1979).
- Style : Using enum to define axes for translate/scale handles (#1979).
- StandardStyle : Added
disabledState()
(#1979).
Build
Gaffer 0.31.0.0
Breaking Changes
- ScriptNode (#1935)
- Removed evaluate() method.
- Removed scriptEvaluatedSignal() method.
- Reordered virtual methods.
- Options (#1929)
- Moved "prefix" plug to CustomOptions node.
- Added virtual method.
- Shader : Removed NetworkBuilder from the API (#1936).
- OSL ShadingEngine : Added argument to
shade()
method (#1944). - Moved all Algo to nested namespaces (#1953).
Improvements
- ShaderSwitch (#1938)
- Added support for all parameter types.
- Added support for expressions and other inputs to the index plug.
- Added a generic Switch node to the NodeGraph menu (#1938).
- ArnoldShader
- OSLShader : Added support for pass-through of input parameters (#1936).
- ArnoldOptions : Added sample clamp options (#1943).
- Camera : Added "Copy From Viewer" item to NodeEditor tool menu (#1950).
- Stats app (#1949)
- Added command line arguments to output
- Added current version to output
- Added -contextMonitor argument (#1952)
- OSLObject : Added support for "world" and "object" coordinate systems (#1944).
- Arnold renderer : Added automatic creation of directories for log files (#1954).
- Rewrote NodeGraph nodule layout code for improved consistency between plugs on nodes
and nested plugs. StandardNodeGadget and CompoundNodule now support the same set of
metadata (#1952).
Fixes
- Fixed error when importing GafferScene or GafferImage before GafferDispatch.
- ScriptNode : Fixed node deletion code to automatically reconnect nested child plugs (#1936).
- Set : Fixed update bug (#1941).
- ObjectSource : Fixed update bug (#1941).
- Reference : Fix reload bug where connections to nested plugs were lost (#1940).
- Dot : Fixed bug where output plug was lost during save (#1946).
- OSLImage : Fix
affects()
so input image affects shading. - ChannelDataProcess : Fix
affects()
.
API
- ScriptNode (#1935)
- Made serialisation and execution useable from C++.
- Added
isExecuting()
method.
- Switch
- Added
setup()
method to simplify creation of custom switches. - Added
activeInPlug()
method.
- Added
- ImageGadget
- Added
textureLoader()
method.
- Added
- Added PlugAdder gadget to simplify the process of adding dynamic
plugs within the NodeGraph. - OSL Shading Engine : Added support for named transform spaces (#1944).
- Added ContextMonitor class.
- Menu : Added
modal
argument topopup()
method. - MetadataAlgo : Added
affectedByChange()
overload for nodes.
Gaffer 0.30.2.0
Improvements
- Graph Layout : Don't apply positions if the layout algorithm fails.
- StandardOptions : Added "render:sampleMotion" parameter.
- Currently with Arnold support ( RenderMan support requires Cortex update ).
- Arnold backend : Options prefixed with "header:" are written into the header of image outputs.
Fixes
- ArnoldDisplacement :
- Accepts OSLShader inputs to map plug.
- Fixed dirty propagation.
- ArnoldOptions : Removed errorColorBadMesh option.
- Arnold backend : Leave instancing of ASS archives to Arnold itself.
- Fixed a crash bug when Arnold's procedural cache is in use (tested in Arnold 4.2.15.1)
- Build :
- Fixed failing Travis tests by removing
ImageWriterTest.testMultipleWrite()
. - IE options supply DCC specific LINKFLAGS if specified.
- Fixed failing Travis tests by removing
Gaffer 0.30.1.0
Improvements
- Arnold backend : Added support for adding arbitrary parameters to the Arnold options by using
a CustomOptions node to create options prefixed with "ai:declare:" (#1911). - ArnoldOptions : Added AA_seed. If not specified, this defaults to the current frame (#1913).
- Expression : Added support for PathMatcherDataPlugs in python expressions. In particular this allows the FilterResults node to be used as an input to an expression (#1915).
- Documentation : Added Expression reference (#1918).
Fixes
- Dispatcher
- Reference : Reconnect outputs from any plugs.
API
- Menu : Added support for
functools.partial
in "active" and "checkBox" fields (#1914). - NodeGraph : Added support for "nodeGraph:childrenViewable" metadata. This controls whether the subgraph of a node is accessible via the "Show Contents..." menu item and the cursor down keypress (#1914).
- PathMatcher/PathMatcherData : Added Python repr support (#1915).
Gaffer 0.30.0.0
Breaking Changes
- Resample : Replaced
dataWindow
plug withmatrix
plug (#1896). - OpenImageIOReader : Changed units of cache memory limit methods to bytes (#1895).
- Serialiser : Added
serialisation
argument to all methods (#1882). - Metadata : Removed
inherit
argument from theplugsWithMetadata()
andnodesWithMetadata()
methods (#1882). - ExecutableRender : Removed
command()
method (#1885). - Changed return type of
Filter::outPlug()
,FilteredSceneProcessor::filterPlug() and
FilterProcessor::inPlug()`. Source code compatibility is maintained.
Features
- Added Mirror node for flipping and flopping images (#1896).
- Added FilterResults node for searching an input scene for
all locations matched by a filter (#1908).
Improvements
- Reference : Added "Duplicate as Box" menu item in NodeGraph (#1898, #1899).
- Box : Added "Import Reference" menu item in NodeEditor (#1898, #1899).
- OSLObject/OSLImage : Added support for vector shader parameters (#1901).
- OSLShader : Added support for array parameters (#1892).
- Render nodes : Added cache clearing after scene generation (#1900).
- Stats app : Added OIIO memory usage reporting (#1895).
- GUI app : Increased default cache size to 1 gigabyte (#1895).
- Image view : Added solo channel plug and button (#1881).
- Node Graph :
- The internal network of Reference nodes may now
be viewed by pressing the cursor down key (#1882).
- The internal network of Reference nodes may now
- ArnoldShader : Added support for "gaffer.plugType" "" metadata.
This can be used to disable the loading of a plug (#1884). - Documentation
- Improved loading times for scripts with many ArnoldShaders.
- Added support for alternate shiboken install location (#1891).
- Isolate : Added
keepLights
andkeepCameras
plugs (#1893). - Light Visualisers :
- Added basic area light visualisations to StandardLightVisualiser.
- Added visualisation metadata for Arnold quad, disk, cylinder, and skydome lights.
Fixes
- ImageTransform : Fixed negative scaling (#1896, #1613).
- Set : Fixed filter update bug (#1878, #1908).
- Cache preferences : Stopped serialising metadata unnecessarily (#1895).
- OSX (#1879, #1566, #1880, #1885)
- Fixed numerous build errors
- Fixed problems caused by System Integrity Protection
- Reference (#561, #1882)
- Fixed copy/paste of nodes from inside a Reference
- Prevented editing of internal nodes. They may now be viewed
but in a read-only state.
- Arnold
- Fixed ai:shape:step_size attribute (#1883).
- Fixed crashes when using as_color_texture shader (#1905).
API
- OpenImageIOReader (#1895)
- Added
cacheMemoryUsage()
static method - Changed units of cache memory limit methods to bytes.
- Added
- Serialiser : Added
serialisation
argument to all methods (#1882) - Metadata (#1882)
- Added simplified API and deprecated previous API
- Added MetadataAlgo.h with methods for controlling read-onliness and
querying if a metadata change affects a particular plug. - Removed
inherit
argument from theplugsWithMetadata()
andnodesWithMetadata()
methods.
- Plug : Deprecated ReadOnly flag - use MetadataAlgo instead (#1882).
- ExecutableRender : Removed
command()
method (#OSX). - StandardNodule : Added support for "label" metadata (#1889).
- Added M44fVectorDataPlug (#1892).
- ValuePlug : Added
clearCache()
method (#1900). - ErrorDialogue
- Added ErrorHandler context manager.
- Added
messages
constructor parameter.
Version 0.29.0.0
Highlights of this release include an entirely rewritten Appleseed backend with support
for editing geometry and environment lights during interactive renders, an OSLCode node
for the writing of OSL shaders within Gaffer, and much improved OSL support in GafferArnold.
Apps
- Screengrab
- Added delay command line argument (#1861).
Core
- StringPlug
- Fixed substitutions when plug has an input (#1860).
Appleseed
- InteractiveAppleseedRender (#1833)
- Reimplemented completely to using new Gaffer scene description
APIs. - Added support for adding/removing/deforming/transforming objects during rendering.
- Added support for changing environment lights during rendering.
- Improved performance and responsiveness.
- Reimplemented completely to using new Gaffer scene description
- AppleseedRender (#1833)
- Reimplemented completely to using new Gaffer scene description APIs.
- AppleseedShaderBall
Arnold
- InteractiveArnoldRender
- Added support for editing subdivision attributes while rendering (#1855).
- ArnoldOptions
- Added log verbosity settings (#1866).
- OSL
- Improved OSL shader support using Arnold's new osl_shader node (#1873).
- Improved warning messages for unsupported parameters (#1872).
OSL
- Added OSLCode node, to allow editing of OSL shader snippets on the fly (#1861).
UI
- ArnoldShader
- ArnoldAttributes
- Fixed formatting of Subdivision section summary (#1855).
- NodeMenu
- Sorted Arnold shaders into submenus (#1870).
- ScriptEditor/Expression/PythonCommand
- Made code font monospaced (#1861).
- ShaderView
- Expression
- Fixed broken popup menus on non-ValuePlugs (#1861).
- OSLShader
- Fixed support for "null" widget type (#1865).
- ImageReader/SceneReader/AlembicSource
- Improved layout of reload button (#1867).
- ArnoldOptions
- Moved threads setting to Rendering section.
- Added indentation to nested collapsible widgets (#1866).
- SceneInspector
- Fixed errors when selected path doesn't exist (#1874).
- Display
- Don't attempt to start server unless UI is connected (#222).
- Added home shortcut for image view.
- Selection/Crop Tools
- Fixed precision issues when far from origin.
Documentation
- Consolidated reference docs into a parent section (#1860).
- Added string substitutions reference (#1860).
API
- Renderer
- Added bool return value to ObjectInterface::attributes(), to signify
success/failure #1855.
- Added bool return value to ObjectInterface::attributes(), to signify
- OSLShader
- LabelPlugValueWidget
- Added support for "labelPlugValueWidget:renameable" metadata (#1861).
- MultiLineTextWidget
- Added "role" property (#1861).
- MultiLineStringPlugValueWidget
- Added support for specifying role via "multiLineStringPlugValueWidget:role"
metadata (#1861).
- Added support for specifying role via "multiLineStringPlugValueWidget:role"
- OSL
- Added GafferOSL/Spline.h header, to simplify use of splines in shaders (#1861).
- View
- Removed
virtual void plugDirtied()
.
- Removed
- CompoundDataPlug
- Added support for BoolVectorData (#1863).
- PlugLayout
- Added support for "layout:accessory" metadata.
- Added RefreshPlugValueWidget and deprecated IncrementingPlugValueWidget (#1867).
- ViewportGadget
- Don't convert raster positions to V2i.
Build
- Added OSLHOME build option, only necessary when building without using GafferHQ/dependencies (#1871).
Version 0.28.3.0
OSL
- Metadata
- Support OSL "page", "connectable", and "URL" metadata
- Support metadata on spline plugs
- Support min/max metadata
Version 0.28.2.1
API
- ArnoldShader
- Fix
outPlug()
loading bug introduced in 0.28.2.0.
- Fix
Version 0.28.2.0
UI
- Fixed incorrect re-use of widgets when swapping plugs with the same name.
Scene
- Fixed context scoping issue during renders.
Arnold
- Added curve min_pixel_width and mode attributes.
- Shaders are now re-loadable, and will automatically reload during script load.
Cortex
- Fixed incorrect re-use of plugs when swapping parameters with the same name.
API
- SceneAlgo
- Fixed context used by
sets()
function.
- Fixed context used by
- RendererAlgo (preview)
- Fixed context used by
RenderSets
class.
- Fixed context used by
- ArnoldShader
- Added keepExistingValue argument to
loadShader()
. - Added
loadShader()
to serialisation. - Reusing existing plugs wherever possible.
- Added keepExistingValue argument to
- CompoundParameterHandler
- Match by parameter object instead of name.
- CompoundPlugValueWidget
- Match by plug object instead of name.
Version 0.28.1.0
UI
- The 3D Viewer can now look through lights (#1846).
- Prefixed NodeMenu search text for RSL and OSL shaders with ri and osl respectively (#1850).
Arnold
- Added support for trace sets (#1847). Any standard gaffer set with a name beginning with "render:" will be exported to Arnold as a trace set.
- Fixed ArnoldDisplacement crash (#1849).
- Added support for a
gaffer.nodeMenu.category
metadata value to customise the shader menu (#1850).
Scene
- Added LightToCamera node (#1846).
API
- Context (#1848)
- Added GIL release in
set()
method bindings to
fix potential deadlocks. - Fixed bug which meant that
remove()
wasn't
emittingchangedSignal()
.
- Added GIL release in
- SceneAlgo
- Added
sets()
overload to compute a subset of all sets.
- Added
- RendererAlgo (preview)
- Added RenderSets utility class.
- Modified output methods to take a RenderSets argument.
- ShaderPlug
- Fixed bug involving plugs with no input (#1849).
Build
- Added INSTALL_POST_COMMAND option, to allow custom commands to be run after installation (#1845).