Katana 7.0v5 Release Notes

Release Date

24 January 2025

Previous Releases

What's New in Katana 7.0

These release notes describe changes from Katana 7.0v4 to 7.0v5.

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

Feature Enhancements

API/SDK Documentation

  • ID 411866 - Documentation was added to the Katana Developer Guide for some notable options supported by getOption() and setOption() in various Viewer classes.

Hydra Viewer

  • ID 569289 - The "Lights, Cameras, and Locators" snapping mode has been updated to "Lights, Cameras, Locators, and Rigs" and when selected allows for snapping to rig locations.

Licensing

  • EULA Updated.

Node Graph

  • ID 542748 - Hold the Control ('Ctrl') key while deleting a node now stops any upstream or downstream nodes from being reconnected through the deleted node.

Performance

  • ID 585189 - Extra verbose logging has been added to the Continual eviction mode if verboseLogging is enabled in the RenderSettings node. It will report when...

    • ...a new thread is involved in the scene graph traversal
    • ...the cache has reached capacity
    • ...whether the first eviction takes place in each traversal thread
  • ID 585190 - A protectedDepth parameter has been added to the RenderSettings node, available only when the Continual cache eviction mode is used.

    Cache entries associated with scene graph locations whose path depth is less or equal than the configured protected depth will never be evicted from the cache.

    For instance, if set to 3, locations such as /root (depth 1), /root/world (depth 2), and /root/world/geo (depth 3) would be protected from cache eviction, but not /root/world/geo/teapot (depth 4).

  • ID 585191 - A protectedPaths array parameter has been added to the RenderSettings node, available only when the Continual cache eviction mode is used.

    Cache entries associated with the configured scene graph location paths will never be evicted from the cache. Ancestors of the configured paths are implicitly protected too.

  • ID 592286 - When performing a render with the Continual eviction strategy, the scene graph traversal could stall indefinitely on occasions. Having heavy-to-cook locations at a shallow depth in the scene tree could make the issue more prevalent.

Rendering

  • ID 582063 - When the KATANA_MOVE_FILES_ON_RENDER_COMPLETE environment variable is set to 1, completed renders are now sent to the output destination from the temp directory via a move operation, rather than the default copy.

Bug Fixes

API/SDK Changes

  • ID 587599 - When calling methods from the NodeGraphAPI module that subsequently called GetAllConnectedInputs, such as NodegraphAPI.Util.GetAllContributingNodes(), the nodes returned would not include nodes which were contained within Group or ShadingGroup nodes if the input and output port names were the same.

API/SDK Documentation

  • ID 511129 - In the Katana Developer Guide, a number of mishandled markup artifacts were present.

Hydra Viewer

  • ID 528082 - When running Katana in a remote desktop session, transforming an object near or beyond the viewport boundaries caused the mouse cursor and the object to jump in the manipulated direction. An option called continuousManipulation under Preferences > viewer menu was introduced for users. This option is on by default and can be changed while in a remote desktop session to prevent objects from moving beyond the Viewer.

  • ID 583978 - When the Validate Locations checkbox in the camera picker popup in the Viewer tab was toggled on and off while the viewed Node Graph did not include nodes contributing to the 3D scene, an exception was raised.

  • ID 584011 - When attempting to snap an object to the center of a large mesh using the Origin - Center snapping mode in the Viewer tab, a crash could be produced.

  • ID 585904 - When the viewed node graph did not include any contributing Geolib-based node, the Look Through Lights and Cameras menu dropdown in the Viewer tab could present a permanent spinning wheel, wrongly indicating that the scene was still being cooked.

Live Groups

  • ID 577493 - When Callbacks were called during an asset publish, they could be called in the wrong order and provided incorrect data.

Monitor

  • ID 95732 / BZ 44699 - When using the pixel probe tool in the Monitor tab while the active AOV had no ID data, no location was available instead of falling back to the ID information in the primary AOV.

Network Materials

  • ID 526099 - Promoted parameters were not staying connected to the source widget when the parent Group node was being converted to other Group types. Promoted parameters will now stay connected to their source node parameter.

  • ID 536014 - When changing a connection to a port with a promoted parameter, the changes were not reflected in the Material Interface in the Parameters tab of the NetworkMaterialCreate or NetworkMaterialEdit nodes.

  • ID 550113 - When baking a Material through the UsdMaterialBake node, shader parameters promoted to the material interface while also having a shader input connection would cause an error to occur in the terminal. In this scenario, Katana will author the shader connection, and write the material interface with a default value on the exported USD Layer.

Performance

  • ID 514722 - (Linux only) When repeatedly opening and closing Viewer tabs, Katana would occasionally crash.

  • ID 586359 - Interacting with the Material Interface, such as collapsing and expanding pages was slower while performing a Live Render.

  • ID 587045 - Clicking the 'Show Help' button (question mark icon) next to a parameter in the Parameters tab brings up a dialog window with some relevant help text. When a Scene Explorer tab was open and showing, this help text would take a long time to load (~5 seconds).

  • ID 590194 - When using LD_PRELOAD to load an external jemalloc library, Katana would fail to open. The included jemalloc library has been upgraded to 5.3.0 and the library (and SONAME) is now suffixed with _fn to avoid collisions with the same library loaded through LD_PRELOAD. The symbols within the included jemalloc have been prefixed with fnje_ to improve uniqueness.

Python

  • ID 266120 - Parameter state badge would not update when the state of a parameter was modified through Python.

  • ID 576088 - When interacting with the UsdScenegraph in the Python tab, via NodesUsdAPI.UsdScenegraphManager.getActiveScenegraph(), UsdScenegraph.ensureLocationVisible() would expand all upstream locations except the USD pseudo-root location '/'.

  • ID 588676 - When interacting with the UsdScenegraph in the Python tab, via NodesUsdAPI.UsdScenegraphManager.getActiveScenegraph(), UsdScenegraph.openLocationsRecursive() would have no effect.

Scene Explorer

  • ID 585563 - When expanding locations in the Scene Explorer tab after the viewer flag had been changed to a node with a different scene location, caused Katana to log an error message about the expanded location not being valid.

UI

  • ID 574260 - Layout attribute values of nodes inside NetworkMaterialCreate node were not updating when the refresh button was clicked.

  • ID 580541 - Deleted Graph State Variables were not refreshed in the Graph State Variables tool bar dropdown and persisted until an update was enforced.

  • ID 585193 - Input port names of the Merge node could not be renamed via the Parameters tab

  • ID 588896 - Appropriate labels for advanced.preferredInputAttributes parameter in a Merge type node was missing.

  • ID 589159 - When a ShadingNode-based node was shown in the legacy node graph view, the output port would show with a permanently highlighted color.

  • ID 589186 - When clicking the Expand All To or Collapse All To actions in the Scene Explorer tab and Scene Graph tab right-click context menus, an error message would appear in the terminal and the action would not be performed. This issue did not apply to the actions listed under Reveal Locations with Working Set States actions.

  • ID 592670 - When an array parameter was defined in a GenericAssign Args file with its size XML attribute set to 0, the array would still be created with one element, disallowing the definition of empty array parameters.

USD Import

  • ID 545898 - Parameters that are in the public interface from a USD material are now imported via UsdIn with the correct name. UsdIn creates a layout.{shaderNodeName}.parameterVars.{parameterName}.hints attribute to give Katana the name, label and page that should be used for any parameter in the public interface.

  • ID 553366 - Material locations imported via the UsdIn node would not be created correctly if they were composed through a Specializes composition arc at an ancestor level above the Material Group location.

  • ID 577631 - When importing a USD file through UsdIn node that has unresolved <UDIM> texture file paths, warning messages were thrown during rendering and the relevant file path attributes were not populated.

USD Native

  • ID 556419 - When moving between nodes using the Viewer flag, USD Native nodes that had the same parameters were not re-evaluated correctly in the Viewer.

  • ID 578727 - Getting a Geometry Producer by Path could cause a deadlock if it triggered a cook which cooked an op that tried to acquire the Python Global Interpreter Lock.

  • ID 588106 - An unused USD session layer has been removed from the global USD stage; no behavior change is expected. Performance of the global stage composition should have marginally improved.

  • ID 589499 - When connecting a UsdToKatana node either directly or indirectly to a UsdPythonWrite node, and with the pseudo root prim path "/" included in the primPath parameter, will crash Katana when viewed.

  • ID 589698 - Attributes would not always clear or get created when toggling the enable state on parameters on the UsdSchemaSet node.

  • ID 590310 - Whilst retrieving SdrShadeShaderNode information from the Sdr.Registry, the sourceType was not always provided and could retrieve the wrong shader if multiple shaders are defined with the same identifier; causing potential mismatching of attribute and their types when converting, these shaders with conflicting identifiers.

USD Text View

  • ID 590188 - The specializes keyword was not syntax highlighted by the USD Syntax highlighter.

Known Issues

Attributes Tab

  • ID 589027 - The Attributes tab doesn't currently update animated attributes or properties values from an incoming USD scene. Flushing caches resolves the issue.

Hydra Viewer

  • ID 580249 - Manipulating transformations for both Geolib and USD locations/prims at the same time (driven by their respective transformation nodes set to interactive) is currently not supported.

Rendering

  • ID 587519 - When opening a new scene while the Parameters tab's Included Outputs floating menu is still active for a render node, errors are printed to the terminal.

USD Native

  • ID 588881 - The pivotTranslate parameter on the UsdTransformEdit node currently have no effect.

  • ID 587515 - The Centre of Interest manipulator is currently not supported in conjunction with USD prims.

  • ID 586965 - USD's stitch method for stitching layers doesn't retain blocked attributes.

  • ID 579376 -

    Currently, Pattern-Based Collections does not support the use of the include and exclude widgets in conjunction with the membershipExpression widget on the UsdCollection node. This is due to a known issue with USD 24.05. NOTE: More info can be found on the USD thread: https://forum.aousd.org/t/problems-with-pattern-based-collections/1197/7. Katana's Pattern-Based Collection widget computes collection membership using membership expressions, therefore it does not currently handle relationship-mode collections correctly (statement true for USD 24.05).

System Requirements

Officially Supported Operating Systems

  • Windows 10 64-bit or higher
  • Linux 64-bit operating system (Rocky Linux 9)

Hardware Requirements

Minimum Recommended
CPU Dual-core processor
Storage 2.5+ 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.5+ (see note below)

Note:  AMD-based graphics cards are currently not supported.

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 RTX 4000

  • NVIDIA Quadro RTX A4000

  • NVIDIA Quadro RTX A3000

  • NVIDIA Quadro P4000

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.