Inside Unreal: Modular Game Features

Thanks for your time. That’s what I was afraid of. The goal here is that I would like to find a solution that doesn’t necessitate losing the ability to instance render the visuals for these objects.

Honestly, if the PostEditChangeOwner of UAssetUserData took a UObject* of the owner, that simple change could give me a mechanism to register the relevent components in a way that doesn’t involve a huge expensive scan, and lets me hook into only what I need. Is that a reasonable change that could be made at the engine level? I can do it in a local engine build, but I’m not in a hurry to get off into custom engine land.

UActorComponent::PostInitProperties calls PostEditChangeOwner on the asset user data, so my ULootableAssetUserData could cast the owner and do the functionality I need to do.

Likewise, if UAssetUserData took an object reference, there could be an engine level user data subclass that provides a callback into the game feature system for a more generalized hook into the feature system.

Thoughts?