Katana 6.0v2 Release Notes

Release Date

21 March 2023

Previous Releases

What's New in Katana 6.0

These release notes describe changes from Katana 6.0v1 to 6.0v2.

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

Feature Enhancements

API/SDK Changes

  • ID 502961 - Two new types of callback have been added: Callbacks.Type.preLookFileMaterialsOut and Callbacks.Type.postLookFileMaterialsOut. These are similar to the existing Callbacks.Type.preLookFileBake and Callbacks.Type.postLookFileBake, only they are triggered before/after a Look File is written by a LookFileMaterialsOut node rather than by a LookFileBake node. Callback function executors and handlers are documented for both LookFileBake and LookFileMaterialsOut nodes in the Katana Developer Guide.

    Below is an example Python script that can be run in the Python tab to define and add two callbacks of the new types that, on execution, print the Look File's Asset ID and the name of the node doing the Look File writing.

    def cbPrePrint(**kwargs):
        print("\nPreLookFileMaterialsOut callback")
        print("lookFileAssetId = " + kwargs["lookFileAssetId"])
        print("Node name = " + kwargs['node'].getName())
    
    def cbPostPrint(**kwargs):
        print("\nPostLookFileMaterialsOut callback")
        print("lookFileAssetId = " + kwargs["lookFileAssetId"])
        print("Node name = " + kwargs['node'].getName())
        
    Callbacks.addCallback(Callbacks.Type.preLookFileMaterialsOut, cbPrePrint)
    Callbacks.addCallback(Callbacks.Type.postLookFileMaterialsOut, cbPostPrint)

Network Materials

  • ID 524735 - Click "Show User Parameters at Top Level" on ShadingGroup parameters and the "User" heading will be displayed above the User Parameters group.

NetworkMaterialEdit

  • The NetworkMaterialEditDefaults tab was removed without a deprecation banner or parameter overrides transfer/discard options, similar to that on the NetworkMaterialCreateDefaults tab, users are now able to apply the overrides directly onto the exposed ShadingNode parameters or discard them.

Rendering

  • ID 527552 - The Render node now writes the final file path of the render output as a scene graph attribute following a disk render. This is in addition to the temporary file path of the render output, which was already written as a scene graph attribute following a disk render. These attributes are stored in the scene graph at the /root location. The final file path can be found in the attribute hierarchy: renderSettings.outputs.<outputName>.rendererSettings.finalRenderLocation.

UI

  • Katana's default layouts have been reorganised and adjusted to better suit modern requirements.

  • When launching Katana (while using a default layout), it will launch into a maximized windowed mode. When exiting maximize mode, the application dimensions will be set to the screen dimensions.

Bug Fixes

Color

  • ID 534276 - Displays in OCIO config files that feature "looks" could show the wrong color transform in the Monitor tab.

  • ID 535286 - The Developer Guide showed incorrect patch version for OpenColorIO in one of the tables.

Configuration

  • ID 514857 - When the KATANA_TMPDIR environment variable is defined by the user, Katana fails to define the TMPDIR environment variable that is required internally.

Foresight+

  • ID 515514 - When a Live Render process terminated unexpectedly (for example, using "killall -9 renderboot") and a second Live Render is started, an error message from the previously killed process was displayed. This error message has now been removed. A message is still reported via the RenderLog.

Katana <> Nuke

  • ID 527482 - Loading the KatanaWriter and KatanaReader nodes for Nuke 14.0v1 from Katana would fail.

Miscellaneous

  • ID 514655 - Reverting a project containing shading nodes with ascii characters would cause an error to be produced.

  • ID 533146 - Internal Material Soloing Converter plugins were being prioritised over user plugins when evaluating ports for soloing in the network material context.

Network Materials

  • ID 512965 - When making a new Network Material node, creating a node within it caused it to jump away from the mouse.

  • ID 522918 - Within a NetworkMaterialEdit node, interface config parameters now inherit from upstream materials. Enable states on parameters also correctly inherit.

  • ID 524314 - When grouping nodes that have been soloed while in Material Soloing mode, the soloed ports will create visible ports on the ShadingGroup that has been created.

    When grouping a soloed node nested within a ShadingGroup, Material Soloing port connection would jump outside the parent group without chaining. When Soloing a port that does not have a Material Solo Converter Associated with it, Katana would throw a warning but still allow the port to be visually soloed but with no functionality.

  • ID 527099 - In the NetworkMaterial context, attempting to expose parameters to a ShadingGroup node would fail, raising an error in the console.

  • ID 533056 - Addition of attributes to the Material Interface of a NetworkMaterialEdit node's upstream NetworkMaterial after the NetworkMaterialEdit node's Material Interface has been generated would not be properly taken in to account when regenerating the NetworkMaterialEdit node's Material Interface. This is now fixed, and a NetworkMaterialEdit node's Material Interface should properly take in to account upstream changes.

  • ID 533472 - When deleting an deleting a NME and NMC. If the NME is first in the selection either through Drag selection or Shift + Left Click selection, NME would cause an error when undoing the delete action.

  • ID 533596 - Attributes in a NetworkMaterialEdit Node's material interface properly take in to account the interfaceConfig of both their shading node, as well as the ShadingGroup nodes which parent said node. Changes to these interfaceConfigs in the NetworkMaterialEdit Node should not break the mapping to the upstream material attributes if possible.

    Parameter duplication errors in NME will not prevent NME from generating, or users entering the NME to fix such errors. The material interface attributes may be incorrect while the error is active however.

  • ID 535320 - Katana would crash when entering a ShadingGroup or LiveShadingGroup if that node was not placed inside a Network Material context first.

NetworkMaterialEdit

  • ID 512962 - Attributes which have been added to a NetworkMaterialEdit node's material interface now properly check for whether there is a naming collision with both other attributes from the same context, or attributes inherited from the upstream material interface. Name collision errors will not occur when the attribute added to the material interface from a NetworkMaterialEdit node is meant to represent the same attribute as an upstream material interface attribute.

  • ID 526151 - NME's exposed parameters will display an incorrect state badge if the name or page prefix parameter is changed on an upstream node. As well as this, the parameters will change back to default values unless the Local flag is activated.

  • ID 527767 - Katana would crash when hitting the "." key to create a new dot node within a NetworkMaterialCreate/Edit node that had at at least two nodes which were copy and pasted duplicates.

  • ID 528520 - LiveShadingGroup nodes will now be converted to ShadingGroup nodes when placed in a NetworkMaterialEdit node via either pasting or macros.

Performance

  • ID 523058 - When certain attributes in the RenderSettings node were set to Force Default it would cause the render to fail. This has been corrected.

  • ID 525654 - Geolib3-MT profiling data inflated execution times for Ops that queried inputs that are not already cached, including the input evaluation time in the reported value. This commonly manifested as Merge Ops appearing to be excessively expensive, but any Op that performs non-default queries could be affected.

  • ID 525758 - When enabling the Heat Map on a node graph with nodes which are either cooked multiple times or are composed of multiple Ops, the display color would not accurately reflect the total time taken by those nodes.

  • ID 526686 - Child locations individually deleted and created in the same Op incorrectly retained their original sibling order when using the Geolib3-MT runtime.

  • ID 534259 - When diamond connections were present in the Op graph, Foresight+ Live Renders could take long to start. Multiple diamond connections in a linear chain would result in a exponential increase in computation, giving the impression that the render process was in a blocked state.

Processing

  • ID 516358 - Geolib3-MT's FlattenMergeHierarchies Op Graph optimizer now skips Merge Op pairs with a common input.

  • ID 522938 - Use of the Geolib Cook Interface's replaceChildren() with the Geolib3-MT runtime could result in erroneous calculation of Op execution root depth, and hence the root location path returned by getRootLocationPath(), as well as errors in dependent evaluations, specifically when the root depth of the input was different to that of the cooking Op. In certain cases, this could cause a cooking thread to freeze.

Python

  • ID 411783 - When callbacks are registered within the UI or the Python tab against a node, publishing from within the UI or the Python tab will call all callbacks registered against the node.

  • ID 528768 - When the user tried to import pygraphviz in Katana, a SyntaxError Python exception was raised, as the bundled version was not compatible with Python 3.

    Graphviz and PyGraphviz have been removed from Katana.

Rendering

  • ID 522813 - Restored EXR metadata disk render behaviour Katana 4.0. Error was introduced in Katana 4.5.

    Details follow:

    It is possible to create custom EXR metadata fields in Katana disk renders in both Arnold and Renderman. This can be created in the UI using AttributeSet nodes.

    Set the attribute name at /root to `renderSettings.metadata.<attrib>.[key|value|prefix]` where <attrib> is an arbitrary attribute identifier (not output to EXR). - If either <key> or <value> are not included the metadata is not output to the EXR. - If there is no prefix, the property will be `exr/katana:<key> = <value>` - If a prefix is specified, the property will be `exr/<prefix>:katana:<key> = <value>`

    Note:  Support for this feature is renderer-specific.

UI

  • ID 444310 - When the Color Picker dialog window was initialized using a grayscale color, the vertical slider controlling color hue would only take effect after the user had made a selection in the main picker sub-window.

  • ID 493902 - When using the color eye dropper on the first attempt, the selection wasn't respected.

  • ID 510417 - When opening a QDialog window in Katana on Windows, a non-functional help button was present in the title bar.

USD

  • ID 534163 - When importing a USD file using the UsdIn node with the isolatePath parameter, if the file contained a light list cache with any lights which weren't descendents of the path specified in isolatePath, then an error would be shown in the scenegraph.

Other Bug Fixes

  • ID 509821 - Using external editors to edit parameter values would fail with a cryptic error message displaying: 'Could not create named temporary file.'

Known Issues

Catalog

  • ID 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. (This issue is a regression in Katana 2.0v1.)

Hydra Viewer

  • ID 427252 - Locators created via PrimitiveCreate nodes can be snapped to in all modes, rather than just the Lights, Cameras, and Locators mode.

  • ID 420882 - Changing between the Viewer (Hydra) tab's multipane layout options quickly can cause a crash or many error messages to be written to the terminal/console.

  • ID 380129 - Use of non-conformant GL anti-aliasing modes that employ supersampling reduces rendered point size by the supersampling scaling factor. Katana currently employs any reported anti-aliasing mode (up to a maximum sample count of 16): as a workaround, change the viewerHydra.antiAliasing preference to a lesser anti-aliasing mode.

  • ID 352167 - Textures loaded from Hydra shaders are not cleared or reloaded from disk when flushing caches.

Live Groups

  • ID 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).

  • ID 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.

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

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

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

Materials

  • ID 442604 - When "exploding" a NetworkMaterialEdit node in the Node Graph tab into its parts by selecting it and choosing Edit > Explode Selected Groups or pressing the U key, Python exceptions are raised.

  • ID 429775 - NetworkMaterialEdit nodes do not currently respect local Graph State changes, for example as performed by VariableSet nodes downstream.

  • ID 429302 - When editing a locked node inside a NetworkMaterialEdit node graph, the parameters will be shown at their default state.

  • ID 427408 - When entering a NetworkMaterialEdit node whose sceneGraphLocation parameter is empty, warnings are logged by the Geolib3 Runtime.

  • ID 423341 - In a NetworkMaterialEdit node graph, connections can be displayed incorrectly if a node's name begins with a number.

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

  • ID 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. (This issue is a regression in Katana 2.5v1.)

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

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

Parameter Expressions

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

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

  • ID 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.

Performance

  • ID 105424 / BZ 47518 - Expressions using getParam to link to dynamic parameters would fail if the dynamic parameters hadn't yet been cooked.

Python

  • ID 496659 - When loading a website into a PyQt5.QtWebEngineWidgets.QWebEngineView widget, warning and error messages may be issued by the underling Qt WebEngine classes, leading to certain websites not being displayed correctly, or not being displayed at all. (This issue is a regression in Katana 4.5v1 / Katana 5.0v1.)

  • ID 494168 - In the Katana Developer Guide, some members of C++ classes that are marked as friend incorrectly appear as friend friend. (This issue is a regression in Katana 5.0v1, and may be related to an issue in Breathe.)

Rendering

  • ID 524428 - Misleading error messages can be shown in the Render Log when live rendering with 3Delight.

  • ID 523574 - Sourcing an aces v1.3 colour profile can cause Katana to crash when rendering with renderer plugins that don't currently support aces v1.3

  • ID 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.

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

  • ID 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.

  • ID 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.

  • ID 70016 / BZ 36137 - Rendering repeatedly with a large number of AOVs consumes more and more memory, possibly leading to a crash when running out of memory.

  • ID 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.

UI

  • ID 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.

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

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

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

  • ID 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.

  • ID 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.

  • ID 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.

USD

  • ID 468287 - UsdIn is not retaining expanded view state information for shading nodes in a Network Material context.

Windows

  • ID 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. (This issue is a regression in Katana 3.1v1, possibly caused by QTBUG-52728 - Paint bug and palette errors after some events in Windows)

  • ID 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 issue does not affect Linux, where a bundled 3Delight installation is tied to its corresponding Katana installation.

  • ID 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."

Miscellaneous

  • ID 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.

  • ID 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.

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

System Requirements

Officially Supported Operating Systems

  • Windows 10,11(64-bit)

  • Linux CentOS/RHEL 7.6 to 7.9 (64-bit)

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.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 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.