So I have come to a point where I have too many SceneComponents on my blueprints. I only need their full transform and tags. Cool, I’ll make a C++ class based off of scene component that holds a TArray<String, FTransform, TArray Tag>. That’s all the info I need. Then I’ll make a function that uses BlueprintCallable and CallInEditor. This should expose that UFUNCTION to BP. Boom easy.
Nope. Adding this new SceneComponent to the actor does not expose that CallInEditor function. So maybe I can make a CallInEditor function on that actor. I have a base actor type. Just add a CallInEditor there, that calls my new MakeFunction. Sort of success, I have to have the actors in game/level to make these conversions. Yep the documentation states that CallInEditor works on instances, not the actual BP actor. Shoot… To be clear, the code works and is in place. I just don’t know how to call a func in editor on a BP itself.
Now I don’t know what my options are. I want to make a list of these scene components, then delete the ones I have a reference of. Do I need to make a blutility? I haven’t made one in a year. I think that could work but isn’t there some way to expose a function to enact changes on the actual BP/Class?