If I understood correctly: try and set the spawner as Owner and in the spawned actor use it to cast and bind.
On another note: usually the spawned has no knowledge of the spawner. So keeping a reference to the spawned in an array and maintaining the flow down is the way to go in avoiding circular dependencies. Any bindings would be done in the spawner if the communication is to go up.
Don’t know if it applies to your context so… hope it helps.
My goal is to have various blueprints, spawning the same object at different times (not at the same time)
So if that would work, the object would dynamically bind itself to the parent who spawned it, instead of manually setting the parent actor and binding it to the specific one every time.
This is exactly why coms go from spawner → spawned. If the spawner are not the same class we would need to cast each one to bind.
On the other hand since the spawner already knows what it is spawning, saving it to an array and looping it when needed will serve the same purpose. In this context the spawner would beed a Soft Class Reference of the spawned. There would be an abstract base class of the spawned with only essential code (sometimes even empty functions) and the appropiate child would be assigned to be spawned.
Makes sense?
Perhaps I could be of more helps if you could elaborate on the specifics of your case. Feel like I might be assuming too much on what you are trying to do.
I am basically generating visuals designs (vj loops) based on blueprints.
So the user chooses a module(look) that I pre-designed, then UE is loading the 3D objects.
Each module has a main blueprint that is loaded which spawns all the mini objects, like a 3D spotlight for example. Using OSC commands, the module blueprint controls the mini objects.
At first, I did as you said and had an array when each OSC command looped through all the objects.
Then I found that Event Dispatchers work faster as some OSC commands are in real time (like BPM synced commands)
Switching to event dispatchers meant I had to bind each miniblueprint/object to a specific module Blueprint, the one who spawned it, via the Get All Actors of Class.
I haven’t found a way to bind one mini object-blueprint into a generic class/dynamic parent, that would ideal… but I’m not following on how to do that.
If I could do that, I could use multiple parent-blueprints and just one copy of a mini-object blueprint, without the need to duplciate it and re-bind it into other modules.