material-maker icon indicating copy to clipboard operation
material-maker copied to clipboard

Remote Named Parameters Naming Collisions

Open mrtripie opened this issue 2 years ago • 1 comments

Material Maker version:

1.1

OS/device including version:

Windows 10 GTX 1060 6GB

Issue description:

Nodes have built in parameters and inputs. I'll use Shape for example, which has:

  • Parameters:
    • shape
    • sides
    • radius
    • edge
  • Inputs:
    • radius_map
    • edge_map

If you add a Remote Node, and add a Named Parameter that's name matches one of these, several possible bugs appear:

  • Bug 1: If you write an expression using a Named Parameter in the node's matching Parameter, it will freeze Material Maker
  • Bug 2: If you write an expression using a Named Parameter that matches one of the node's OTHER parameters, it will use the node's matching parameter instead (This may not really be a bug, but something that will confuse the user at first)
  • Bug 3: Adding a Named Parameter to a Remote Node that matches an input name will cause all nodes with that input name to output nothing.

Steps to reproduce:

  • Bug 1:
  1. Add Remote node with Named Parameter radius.
  2. Add Shape node, type $radius into the Shape node's radius parameter
  3. Make sure the Shape Node is outputting to the Preview2D or Material, and Material Maker should freeze
  • Bug 2:
  1. Add Remote node with Named Parameter sides.
  2. Add Shape node, type $sides into the Shape node's radius parameter
  3. Changing the sides parameter on the Remote Node won't do anything, but changing the Shape node's sides parameter will affect the radius
  • Bug 3:
  1. Add Remote node with Named Parameter radius_map.
  2. Add a Shape node
  3. The Shape node won't output anything. If you add more Shape nodes they also won't output anything

mrtripie avatar Nov 23 '22 19:11 mrtripie

For Bug 2, perhaps just placing a warning indicator next to the Shape node's radius parameter could work. You could hover over it and it would say that that its using the Shape node's sides parameter instead of the Remote node's

mrtripie avatar Nov 23 '22 19:11 mrtripie