Problem summary
Deferred OpScripts that create new locations don't automatically update the SceneGraph when Implicit Resolvers are toggled.
Customer reported version
Katana 3.6v2
Customer reported platform
rhel7
Steps to reproduce - 1) Create a LocationCreate node and connect an OpScript node.
- 2) Double click the OpScript node to set both the View and Edit flags.
- 3) Within the OpScript parameters, set the CEL path to the "/root" and change the executionMode to "deferred".
- 4) Add the following code:
Interface.CreateChild("taco")
- 5) Expand "/root" within the Scene Graph tab.
- 6) Within the top-right corner of the Scene Graph tab, click the Toggle Scene Graph Implicit Resolvers icon.
Alternative reproduction steps:
- Run the following snippet in a Python tab:
rootNode = NodegraphAPI.GetRootNode()locationCreateNode = NodegraphAPI.CreateNode('LocationCreate', rootNode)opScriptNode = NodegraphAPI.CreateNode('OpScript', rootNode)opScriptNode.getParameter('executionMode').setValue('deferred', 0)opScriptNode.getParameter('CEL').setValue('/root', 0)opScriptNode.getParameter('script.lua').setValue( 'Interface.CreateChild("taco")', 0)locationCreateNode.getOutputPortByIndex(0).connect( opScriptNode.getInputPortByIndex(0))DrawingModule.AutoPositionNodes([locationCreateNode, opScriptNode], oldStyle=True)NodegraphAPI.SetNodeViewed(opScriptNode, viewed=True, exclusive=True)Utils.EventModule.ProcessAllEvents()scenegraph = ScenegraphManager.getActiveScenegraph()scenegraph.ensureLocationVisible('/root/world')Utils.EventModule.ProcessAllEvents()QtCore.QTimer.singleShot( 3000, lambda: scenegraph.setImplicitResolversActive(True))
Expected behaviour
The OpScript is run and within the scene graph, a new child location called "taco" is added under "/root".
Actual behaviour
The OpScript is run and the scene graph is not updated.
Workaround
Removing and resetting the
View flag on the
OpScript node will update the scene graph.
Reproduced by support
This bug has been reproduced in:
Katana 3.6v2 - Windows 10, Centos 7
Katana 3.6v1 - Windows 10
Unable to reproduce bug in:
Katana 3.5v4 - Windows 10
Katana 3.5v1 - Windows 10
Katana 3.2v6 - Windows 10
Earliest version tested
Katana 3.5v4 - This issue doesn't appear in this version and has regressed