Splines can only be edited in viewport when added in blueprint

I’ve encountered an issue with spline components in the 4.8 preview. Spline components can only be edited in the level viewport when added into a blueprint. Spline components added in a C++ class or to an empty actor can not be edited in the level viewport.

Reproduction steps:

  • Place an empty actor in viewport
  • Add a spline component using add component
  • Try to click on the spline handles in the viewport, you can’t!
  • Save the empty actor with the spline as a new blueprint using add blueprint/script
  • You can now edit the spline in the viewport

Ok I’ve worked out the source of this problem. In SplineComponentVisualizer.cpp on line 287 in VisProxyHandleClick you have the line:

if(SplineCompPropName != NAME_None)

So if you add a spline to an empty actor it’s not getting a name meaning it skips most of this function. The same thing can happen in C++ if you neglect to to give the component a name.

I’m not an expert in the engine in this regard but I don’t see the significance of the component being named in this situation. Would there be any likely consequences to just changing this to see if the component is valid?

Hi karltheawesome,

Thank you for the report. This is a known issue that has been logged as JIRA UE-7476. Our developers are investigating the issue and we will post back here with updates as we have them.

Cheers,

TJ