ID 426569 - Render node outputs not updating correctly in Parameters tab when appearing in a TeleParameter

Follow

Problem summary:

When setting up a TeleParameter to show the outputs parameter of a Render node in the parameter interface of a Group node (e.g. a custom SuperTool node), the list of render outputs is not always updated correctly in the UI.

Steps to reproduce:

  1. Execute the following snippet of Python code in a Python tab:
    • 
      groupNode = NodegraphAPI.CreateNode('Group', NodegraphAPI.GetRootNode())
      cameraCreateNode = NodegraphAPI.CreateNode('CameraCreate', groupNode)
      renderNode = NodegraphAPI.CreateNode('Render', groupNode)
      cameraCreateNode.getOutputPort('out').connect(renderNode.getInputPort('input'))
      outputsParameter = renderNode.getParameter('outputs')
      outputsTeleParameter =  groupNode.getParameters().createChildGroup(
          'outputsContainer').createChildString('outputs', '')
      outputsTeleParameter.setExpression('getParam("%s").param.getFullName()'
                                         % outputsParameter.getFullName())
      outputsTeleParameter.setHintString('{"widget": "teleparam"}')
      NodegraphAPI.SetNodeEdited(groupNode, True, True)
  2. In the Parameters tab, open the outputsContainer group parameter, and inspect the contents of the outputs parameter inside.

Expected behavior:

The outputsContainer.outputs parameter of the Group node shows 1 render output: primary

Actual behavior:

The outputsContainer.outputs parameter of the Group node is empty.

Workaround:

Flush caches.

Tested versions/platforms:

  • 1.0v1 - Affected
  • 3.2v4 - Affected
  • 3.5v2 - Affected

Customer version/platform:

Not supplied

    We're sorry to hear that

    Please tell us why