Preview 1 LWC update removed UFUNCTION support for TArray of FVector3f, FVector2f

I am working on updating the Runtime Mesh Component plugin for UE5. This plugin works with mesh data buffers, and many of its blueprintable functions use TArray<FVector> and TArray<FVector2D>. These buffers are internally 32-bit floats, which matched the internal representation of the FVector types pre-LWC.

With LWC, there is a significant overhead introduced in UFUNCTIONs that need to use TArray<FVector3f> internally, because only (default double-precision) FVector is supported as a function argument and conversion is required. Maybe there should be Blueprint support for single-precision floating point types to improve performance and memory footprint?

2 Likes

TArray<FVector2f> isn’t blueprintable, I’m over here trying to figure what to replace that with. TArray<FBox> maybe? This is meant to house the data from UV’s. Like why the heck is a TArray<FVector3f> blueprint supported and a 2f isn’t?

I’m attempting to port over the vertex animation toolset plugin

1 Like

Hmm it seems full release UE5 may have changed the behavior compared to EA / Preview 1 / Preview 2?