Neos-Metaverse / NeosPublic

A public issue/wiki only repository for the NeosVR project
195 stars 9 forks source link

Logix ribbon visuals break with overloadable nodes #1393

Open H3BO3 opened 3 years ago

H3BO3 commented 3 years ago

If you increase the inputs of an overloadable logix node a few times and attach ribbons, then decrease the node with the minus button, often the attached ribbon visuals break and stop updating the mesh, visible when the node is incremented or moved. The valid nodes technically stay connected on a reference basis (Packing and unpacking fixes them). In the case of data ribbons, the output ribbons break, and on impulse wires, the input ribbons break.

This also has the possibility to happen when a ribbon is attached and the node is incremented (Mostly seen on overloaded impulse nodes).

There are no log exceptions.

2020-11-25 01 05 30 2020-11-25 01 06 01

badhaloninja commented 3 years ago

This also happens when you add or subtract the number of outputs on nodes that have that option or if you delete a node via the inspector. image

I think I might have run into other occurrences of this but I'm not sure

mralext20 commented 3 years ago

i believe this change happened with 2020.9.9.214, https://discord.com/channels/402159838827905024/469131434628612116/753097713213636710

  • Added cleanup of Slot moved events for ConnectionWires, fixing potential resource leaks when LogiX is packed and unpacked
  • LogiX interface link wires (going into the represented slot/component) no longer have colliders
Frooxius commented 3 years ago

Does this happen always or only sometimes?

H3BO3 commented 3 years ago

I replicated it first try, I think there may be some other cases where it doesn't happen, but I forget what they were. I think the number of overloads going above three affects it? All I know is that it happens very often and have replication steps, but I wasn't able to test for all the edge cases

shiftyscales commented 3 years ago

Using the + operator, it happens every time on the display node output when the node has 4 or greater inputs (nothing needs to be plugged in.)

chemicalcrux commented 3 years ago

I've also observed this when nodes are non-uniformly scaled. The wires will wind up in weird places.

H3BO3 commented 3 years ago

@chemicalcrux It's not really the same, they end up in weird places because nonuniform scaling just breaks the mesh positioning in general. The issue I'm describing is where certain triggers just make them fail to update anymore.