A Parameterized Vector4 are being treated as Float3. This prevents users from being able to use Vector4s in an If node during runtime.

This is seen as far back as //UE4/Release4.22 cl 8065155 so this is not a regression.

Steps to Reproduce
  1. Open any project
  2. Create a new material
  3. Open the material editor for that material
  4. Creat an 'If' node
  5. Create three Vector4 nodes
    • Hold '4' and Left mouse click on the graph
  6. Create two Vector1 nodes
    • Hold '1' and Left mouse click on the graph
  7. Connect the Vector nodes to the If Node inputs to match the attached screenshot
  8. Connect the If node output to Base Color
  9. Right click one of the Vector4 nodes and select Convert to Parameter

The If node throws an error. "Arithmetic between types float3 and float4 are undefined"

No errors are thrown, material compiles successfully

Community References

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-97794 in the post.

Login to Vote

Won't Fix
ComponentUE - Graphics Features
Affects Versions4.
CreatedAug 28, 2020
ResolvedJun 8, 2022
UpdatedJun 9, 2022