Katana 3.2v1 Release Notes

Release Date

29 August 2019

Previous Releases

System Requirements

Officially Supported Operating Systems

  • Windows 7 64-bit or higher
  • Linux 64-bit operating system (CentOS/RHEL 6)

Hardware Requirements

Minimum Recommended
CPU Dual-core processor
Storage 1+ GB available for installation
System RAM 1+ GB available
Graphics RAM 1+ GB available 2+ GB available
Display 800 x 600 1920 x 1080
OpenGL OpenGL 4.3+

'Recommended' does not guarantee that it meets your particular needs

Tested Workstation Hardware

The configurations listed below are those that Foundry have tested with Katana. Due to the constantly changing nature and wide variety of computer hardware available in the market, Foundry is unable to officially certify hardware. The list below can be used as a recommendation and does not guarantee that it meets your particular needs.

  • NVIDIA Quadro M4000

  • NVIDIA Quadro P4000

  • NVIDIA Quadro K4000

  • NVIDIA Quadro K6000

Please download and install the latest graphics driver from the NVIDIA website.

If you encounter any issues, please contact Customer Support directly through the Support Portal at the following address: https://support.foundry.com.

What's New in Katana 3.2

These release notes describe changes from Katana 3.1v5 to 3.2v1.

For a high-level overview of all changes in the Katana 3.2 line, please see the accompanying What's New in Katana 3.2 document.

Feature Enhancements

  • TP 81998 / BZ 39875 - Previously in Katana, holding the Ctrl key and selecting a Backdrop node will select all the nodes that are touching the Backdrop. This is opposite of how this interaction is handled in Nuke.

    Now, this interaction has been reversed so that selecting a Backdrop will select the nodes that are touching it and holding Ctrl will now only select the Backdrop node itself. Additionally the single action of clicking & dragging a Backdrop will now drag the Backdrop and all of the nodes inside of it, similarly to Nuke.

  • TP 129274 / BZ 51768 - The Katana Developer Guide documentation of attribute conventions for material locations with material group attributes that represent Network Materials has been completed, corrected, and extended to cover the additional layout information that is stored for Network Materials created by NetworkMaterialGroup nodes.

  • TP 356529 - Support for opening example projects by double-clicking on the tree item in the Example Projects tab's tree widget.

  • Hydra Viewer errors about 'point' scope UVs not being supported are logged once only now.

  • The PyUtilModule.CatalogManager Python module has been renamed to PyUtilModule.CatalogAPI.

  • The Z ordering of Backdrop nodes can now be controlled by the [ and ] keyboard shortcuts, to bring Backdrop nodes to the back and front respectively. As part of this feature, the Send to Back checkbox has been removed from the Edit Backdrop Node dialog.

  • The attribute conventions for Network Materials have been extended to cover information about the layout of a shading node network, taking into account additional nodes such as Backdrop, Dot, Switch, and VariableSwitch nodes, each with their position and color. Storing this additional information will allows us to build tools to recreate a visual representation of a Network Material downstream, even if the attributes are imported via Look Files or other means. (See also TP 129274.)

  • The section on Writing Renderer Plug-ins in the Katana Developer Guide has been extended to include details on customizing a renderer plug-in's layered menu when viewing the contents of a NetworkMaterialGroup node in a Node Graph tab.

  • The FnAttribute API has been extended with a getSize() function for attributes, which returns the total memory in bytes that was allocated when an attribute was created. This new function is available in the C API, the C++ wrapper, the Python bindings, and the OpScript/Lua API.

  • We now ship the shared libraries for Boost 1.61.0. This is a requirement for being able to use shared USD Python libraries and modules.

  • Katana 3.2 now uses a Foundry-namespaced and renamed shared library for TBB (libtbb2017_Foundry.so on Linux) and TBB Memory Allocator (libtbbmalloc2017_Foundry.so on Linux) based on TBB 2017 Update 8, in order to reduce conflicts of having multiple TBB arenas in one session.

  • The Hydra Viewer has been upgraded to USD 19.05 built with the shared USD libraries, which are now shipped with Katana.

  • TP 394745 - The tooltip of attributes in the Attributes tab has been extended to include the size of a given attribute in memory in bytes.

  • TP 394987 - The ID of a catalog item is now sent to the renderboot executable as part of the renderboot command line:

    -sequenceID <sequenceID>
    

    The sequence ID can be used to obtain the corresponding catalog item by using a Python function of the CatalogAPI module:

    CatalogAPI.FindCatalogItemBySequenceID(<sequenceID: int>) --> CatalogAPI.CatalogItem.CatalogItem
    
  • The AttributeUpgrade node type, which was used to address attribute convention changes between Katana 1.x and 2.x, is now deprecated, and has been hidden from node creation menus in the Node Graph tab.

  • Developer documentation on building, installing, and using custom Hydra Render Delegates as plug-ins for Katana's Hydra Viewer has been added to the Writing Plug-ins section of the Katana Developer Guide.

  • The NetworkMaterialGroup node type has been renamed to NetworkMaterialCreate. Documentation and NodegraphAPI hints have been updated to reflect the change. An upgrade script is provided to upgrade existing Katana projects that were created during the alpha and beta cycle of Katana 3.2v1 to the new name.

  • The version of 3Delight that we ship with Katana has been upgraded to version 1.5.9. For more information, refer to the 3Delight Cloud Changelog.

  • The version of the USD library we're using in Katana's Hydra Viewer is now shown in the About Katana dialog, accessible via Help > About Katana.

Bug Fixes

Katana Developer Guide

  • TP 85230 / BZ 41203 - A few incorrect file system location paths of source code example files in the Katana Developer Guide have been corrected.

  • TP 323246 - Internal members of Python classes, such as __dict__, were wrongly exposed in the Katana Developer Guide.

  • TP 381467 - Bold formatting of UI-related terms, such as titles of tabs, was not applied correctly in a few cases, causing double asterisks to show up instead.

  • TP 381468 - Some documented functions were wrongly shown as "Undocumented", notably UI4.Widgets.SceneGraphView.ViewLink.ViewLink.getUpdateSuppressor() and PackageSuperToolAPI.BaseEditor.BaseEditor.getSceneGraphViewTerminalOps().

  • TP 398999 - The Nodes3DAPI.PortOpClient.NodeTraversalEndpointsSpec class was wrongly shown as "Undocumented".

  • TP 399000 - All headlines were wrongly missing from the documentation of the SceneGraphView widget class, making it hard to make sense of the information presented.

  • TP 399002 - Code formatting was not applied correctly in a few cases, causing formatting syntax to show up in verbatim, or causing links to break.

  • TP 399003 - Documentation of the getInputPortAndGraphState() function was missing from instances of the Nodes3DAPI.Node3D class, and was also not included in the Katana Developer Guide.

  • TP 399012 - The hierarchy of the Attributes (C++) page was inconsistent with the hierarchy of the corresponding OpScript/Lua and Python pages.

  • TP 399013 - The following issues in the Katana Developer Guide were fixed:

    • Node-related functions on the Working with Nodes > Connecting Nodes page were incorrectly listed as belonging to the Nodes3DAPI.Node3D class. They're actually defined on the underlying NodegraphAPI.Node class.
    • The Node Properties documentation contained a broken link to the NodegraphAPI.Parameter documentation.
    • The documentation of NodegraphAPI.Parameter.reorderChild() and reorderChildren() functions was wrongly duplicated.
    • The signatures of deprecated functions were wrongly shown as a single unbroken lines, unnecessarily extending the width of the respective page, and making the parameter names and types hard to read.
    • Documentation of Attribute Modifier Plug-ins, a legacy API that shouldn't be used anymore, was missing from the Katana Developer Guide.
  • TP 399014 - A few header files of Geolib3's and Katana's plug-in APIs contained issues in the documentation of parameters and return values.

  • TP 399018 - The following issues in the Katana Developer Guide were fixed:

    • Descriptions of member variables in the Viewer Location Events documentation were missing.
    • FnBaseLocator callback function pointer types did not appear or appeared incorrectly, and were not linked correctly in the signature of the FnBaseLocatorVDC::registerLocator() static function.
    • The wrong callback function pointer type was used for the overridesBaseGeometry parameter of the FnBaseLocatorVDC::registerLocator() static function.
    • BuilderMode and BuilderBuildMode references of the GroupBuilder class incorrectly linked to the respective typedefs instead of enums.
    • Functions in the FnGeolibCookInterface API that accept callback function pointers for deleting private data were not parsed correctly, and appeared as single lines without breaks, exceeding the page boundary.
  • TP 399981 - Multiple typos in the Katana Developer Guide have been fixed.

  • TP 400452 - When the documentation preference was set to local, the API Reference > Parameter Expressions and API Reference > C++ APIs commands in the Help menu of the Katana main window did not link to the correct location in the Katana Developer Guide.

Other Bug Fixes

  • TP 71317 / BZ 36414 - When attempting to undo the creation of a SuperTool-based node, such as GafferThree, an exception was raised.

  • TP 216997 - Materials created via a NetworkMaterialSplice node were of the deprecated type shading network material, instead of the material type.

  • TP 356705 - Manipulating locations during a Live Render could cause continuous live updates (during the manipulation) to stop working for all locations.

  • TP 386841 - When FnGeolibCookInterfaceUtils::cookDaps() was invoked from multiple threads, it would fail to correctly read the default attributes on occasions. This affected Ops that relied on that function, e.g. the AdjustScreenWindowResolve Op, which on occasion failed with an error message: Error getting string value from StringAttribute. The GenericAssign DAP is now thread-safe.

  • TP 394990 - The dead _initKeyboardShortcutCallbacks() Python function was removed from the KeyboardShortcutManagerMixin class, in order to avoid possible confusion about its use.

  • TP 396842 - When refreshing the tree view of a material group attribute on a material location whose attributes are displayed in the Attributes tab, all items in the tree view were collapsed. Now, the expanded state of items is retained when refreshing the tree view.

  • TP 397791 - The initialization of plug-ins used by Default Attribute Producers at render time was not thread safe, and could cause the render process to crash.

  • TP 400154 - When loading internal example projects, areas of the node network were not visible, depending on the chosen main window layout and screen resolution. Now, upon loading an example project, the Node Graph tab will automatically frame all nodes.

Known Issues

Live Groups

  • TP 85118 / BZ 41152 - When editing parameters of a node that is part of a LiveGroup node and reloading the parent LiveGroup node, the UI state of the Parameters tab is reset. This includes scroll bar positions, selections of items, and selections of nested tabs (for example Object, Material and Linking tabs for a Gaffer node).

  • TP 84998 / BZ 41092 - When reloading a LiveGroup node's parameter interface and contents from its source, parameters of child nodes that are edited in floating panes disappear from those panes.

  • TP 84020 / BZ 40598 - Reverting a LiveGroup node does not revert its user parameters.

  • TP 84019 / BZ 40599 - Parameters that are added to LiveGroup nodes are wrongly discarded when performing a reload from source, leading to loss of data.

  • TP 84018 / BZ 40600 - Undoing a revert of an unpublished LiveGroup node does not restore the LiveGroup's editable and modified state.

  • TP 83061 / BZ 40237 - Nodes can be dragged into the Group bubble of a non-editable LiveGroup node.

Materials

  • TP 403364 - When working with Redshift shading nodes within NetworkMaterialCreate or ShadingGroup nodes, an extra blank page is created under the parameters page, and when trying to expand a subpage below that page, the page will immediately collapse down to the blank page.

  • TP 402064 - In a ShadingGroup node graph, the connection between a Dot node and a shading node port can be wrongly colored in some cases.

  • TP 269449 - Choosing Edit Shader Parameters from the main wrench menu of Material nodes does not show wrench buttons next to shader parameters. This can be worked around by toggling the edit flag on the node.

  • TP 199304 - The namespace parameter on Material nodes wrongly allows the insertion of Unicode codepoints outside the ASCII range.

  • TP 191052 - Katana does not have any support for the texture reference object workflows of V-Ray for Maya.

Parameter Expressions

  • TP 188533 - Expressions linked to non-local parameters on not previously edited Material nodes can't be evaluated.

  • TP 105434 / BZ 47520 - Reference Expressions may not refer to dynamic parameters such as shader parameters.

  • TP 60457 / BZ 31790 - Setting an array or group parameter to an expression results in an invalid expression. Upon setting a valid expression (for example, an evaluation of an equivalent parameter on another node using getParam), the parameter is not immediately updated. To workaround this issue, close and reopen the parameter, or flush caches while the node is not edited.

Qt 5

  • TP 356345 - Partially covering the Hydra Viewport with a floating tab will cause it to repaint continuously.

Rendering

  • TP 381284 - The 3Delight renderer plug-in makes use of source material locations rather than resolved material attributes as a means of de-duplication. This can result in material data being lost when excluding material locations from the Render Working Set during a Live Render session.

  • TP 344118 - (Windows only) When installing Katana and opting to install the bundled version of 3Delight, the installation of 3Delight is made by modifying system-wide environment variables such as KATANA_RESOURCES. Thereafter, launching any version of Katana will pick up this installation of 3Delight, which may be incompatible with the version of Katana being launched.

    NOTE: This does not affect Linux, where a bundled 3Delight installation is tied to its corresponding Katana installation.

  • TP 208802 - Closing the Histogram tab after use leaves the Monitor tab unable to display rendered images.

  • TP 176598 - Use of nodes that modify Graph State Variables in Interactive Render Filters is not currently supported.

  • TP 114182 / BZ 49288 - When exporting a Catalog item you need to specify the export folder path to an existing folder. If the folder you're trying to export to does not exist on disk Katana will fail to export.

  • TP 94052 / BZ 44199 - The Repeat Previous Render menu command only works on renders started from a 3D node's context menu.

  • TP 74799 / BZ 36926 - The rendererSettings > displayOptions parameter of a RenderOutputDefine node for the PRMan renderer, shown when its type parameter is set to 'raw', cannot be set using the Parameters tab.

  • TP 12517 / BZ 16168 - Only one Monitor tab may display the results of a Preview Render. The use of multiple Monitor tabs is not currently supported.

Widgets

  • TP 373702 - Clicking in the Viewport and pressing a shortcut whilst the mouse is hovered in another widget will still send the event back to the 'focused' Viewport widget, for shortcuts where the widget hovered over does not handle the shortcut.

  • TP 123558 / BZ 50911 - When changing an array parameter's tuple count/size, any corresponding attributes are not properly updated in the Attributes tab.

  • TP 65347 / BZ 34949 - Using Compiz can lead to text fields not receiving focus events correctly due to an incompatibility between Compiz and Qt. Depending on your configuration, disabling Compiz "desktop effects" may resolve the problem.

Miscellaneous

  • TP 381692 - (Windows only) When logging out and logging back in again, the colors in the UI are incorrect. For example, certain parts of certain types of tabs may appear with a white background color.

  • TP 337653 - Katana logs deprecation warnings when loading the PyMockAsset, PyMultiMockAsset and PyMockFileSeq shipping example Asset API plug-ins.

  • TP 218742 - (Windows only) Katana must be installed to a path no longer than ~140 characters. Attempting to install to a longer path results in an unintuitive error: "The system cannot find the path specified."

  • TP 112544 / BZ 49051 - The Viewer tab may lose sync with the Scene Graph tab when changes to expansion state are interrupted.

  • TP 107038 / BZ 47853 - Indication of attribute source nodes (such as the yellow 'glow' in the Node Graph tab) is unavailable as of Katana 2.0v1.

  • TP 84326 / BZ 40709 - The Alembic library does not support multiple process or thread access to an Alembic file. This means that a crash occurs when modifying an Alembic file outside Katana, while it's loaded in an open Katana scene. To avoid this, you must Flush Caches before attempting to update any modified Alembic files.

  • TP 80738 / BZ 39261 - Operations that lock and unlock nodes do not currently create entries in the Undo History, which can lead to an incorrect node graph state when undoing and redoing operations.

  • TP 71965 / BZ 36691 - State badges are currently shown for attribute values of dynamic array child parameters, even though only their parent array parameter should appear with a state badge.

  • TP 70217 / BZ 36176 - The 2D node Disk Render Upstream Render Outputs option does not use the batch render method, batchRender, for upstream render nodes, instead using diskRender.

  • TP 70196 / BZ 36170 - Control keys (notably arrow keys) do not function as expected in shell mode.