wirebox icon indicating copy to clipboard operation
wirebox copied to clipboard

Wiring Tool: allow sub-wiring complex types

Open Nebual opened this issue 2 years ago • 0 comments

When wiring a Bool Input (Light: On) to a Float Output (Ranger: Distance), it implicitly converts (abs(floatVal) > 0.001f). What should the behaviour be when wiring a Float Input (Thruster: Force) to a complex type, like a Vector3 (GPS: Position) or Angle or String? For a Vector3, one might want the Length, or one of the components (X, Y, Z).

It might be ok to just decide "float -> Vector3/Angle/String will always use the Length", but it'd be neat to allow the Wiring Tool's UI to sub-select an interpretation/casting method, via a submenu after selecting the input and then output.

Use Cases

  • This could allow for components like GPS/Speedometer to avoid redundant outputs like "Position: Vector3, X: float, Y: float, Z: float" if you could instead wire directly to Position.X or Position.Length via the tool.
  • This would reduce the need for conversion Gates in many cases.

Or maybe this is too wacky haha, but I like the idea!

Nebual avatar Sep 07 '23 07:09 Nebual