ID 594461 - UI and Canvas lag when editing node trees and node properties if there are Multi-Channel nodes downstream

Follow

Problem summary
UI and Canvas lag when editing node trees and node properties if there are Multi-Channel nodes downstream.
 
According to the MariLog.txt this is caused by the following process:
Debug : [ MriShaderNetworkManager.cpp:2977] : Updated bake points due to changes on 1 nodes in 45ms
 
About this process/lag:
  • The process occurs and causes lag even when no Bake Points exist in the project.
     
  • This process is triggered every time a node tree is edited (connecting/disconnecting nodes) and when most Node Properties are edited. 
     
  • When the node being edited is not connected to downstream Multi-Channel nodes, this process still happens but it takes 0ms. 
     
  • The more Multi-Channel Bottom Transparency / Multi-Channel Merge / Multi-Channel Bake Point / Shader Network nodes exist downstream of the node being edited, the longer this process takes. This can be confirmed by adding more Multi-Channel nodes and seeing the milliseconds rise in the MariLog.txt messages.
     
  • This process takes precedence over UI and Canvas visual updates, hence why it causes lag.
     
  • This process occurs and causes lag even when the node tree being edited isn't being viewed.
 
 
Customer reported version
Mari 6.0v3
 
 
Customer reported platform
Alma 9
 
 
Steps to reproduce
  1. Launch Mari and open any project, such as the Example Project.
     
  2. Create a Cloud node.
     
  3. Open its Node Properties and drag the Roughness slider around. Notice how it slides smoothly and the Canvas updates instantly.
     
  4. Create a few Multi-Channel nodes and connect them downstream of the Cloud node.
     
  5. Drag the Cloud node's Roughness slider around once again.
 
NOTE: The above is just an example. Any change to the node tree or to the Node Properties upstream of a Multi-Channel node will trigger the Updated bake points process.
 
 
Expected behaviour
Multi-Channel nodes should not trigger Bake Point updates if there are no Bake Points to update. As such, no lag should occur
 
 
Actual behaviour
There is a delay to UI and Canvas visual updates whenever a node tree with downstream Multi-Channel nodes is edited.
 
This is particularly noticeable when dragging a slider around, as the process is triggered multiple times during a single mouse drag.
 

 
 
Workaround
Unknown.
 
 
Reproduced by support
This bug has been reproduced in:
Mari 7.1v1 - Windows 10 - Rocky 9
Mari 6.0v1 - Windows 10 - Rocky 9
 
Unable to reproduce bug in:
Mari 5.0v4
 
 
Earliest version tested
Mari 5.0v4 - This issue doesn't appear in this version and has regressed
 
 

    We're sorry to hear that

    Please tell us why