OK, looks like the problem was that the procedural components weren’t being serialized. I just called the FinishAndRegisterComponent() method of the owning actor to fix it, instead of RegisterComponent(). Alternatively, making a UProperty TArray of USceneComponent pointers and adding all the procedural components to it also worked.
1 Like