modifying disconnected material nodes triggers luxcore viewport refresh
Expected: Nodes that are not part of a node tree connected to an output node should not be part of the compiled surface, and changes to those disconnected nodes should not trigger a viewport refresh. Experienced: Any node update in the Luxcore material panel, whether the node is connected or not, triggers luxcore to refresh the viewport again. Replication: default cube:
- Create material. Default attatches a matte material to material output.
- Add a math node. Math node is disconnected, but viewport immediately refreshes.
- Change Value 1 on math node to 2. Viewport refreshes.
Impact: This issue impacts performance; it also is inconsistent with the behaviour of other parts of the Blender program.
Commentary:
Normally in blender, nodes that are not connected to an output node are not calculated, as a performance enhancement. I'm not sure if the disconnected nodes are being send to luxcore at all, but definitely unneeded requests to update the viewport are being sent.
If disconnected nodes are being sent to luxcore, I would recommend also pruning those out of the compiled surface definition. IDK if luxcore is inclined to ignore them, but it seems needlessly complicated.