I’m pretty clear on the instancing behavior of actor components owned by actors. Everything else… is a little fuzzy.
Suppose that I have a couple of actors in my world, each with the declaration
UPROPERTY()
UMyThing* MyThing;
And suppose that, in the editor, things have been set up such that both actors point to the same UMyThing. (BTW, UMyThing is not a UActorComponent.) Suppose further that the UMyThing was created with NewObject(), without an owner specified.
- If I start a PIE session, will the actors in the PIE session point to a duplicated version of the
UMyThing, to the same instance as the ones in the editor, or to nothing at all? If I export the level, will theUMyThingbe exported with it? - Does the ownership of the object come into play at all?
- How do things change if I add
NonPIEDuplicateTransientto theUPROPERTYdeclarations?