I come from a Unity3D background and I have gotten used to pooling frequently used actors instead of spawning and killing them at runtime. Take projectiles for example, I am creating a game that will be spawning a pretty hefty amount of projectiles per second. In Unity I would use a projectile pool to prevent any slowdown, especially on mobile platforms. However in Unreal I can’t figure out how to do this.
I have been able to create an array with my projectiles, however I can’t find a way to activate and deactivate them as needed. All solutions I have found seem to only half work, for example making actors hidden in game seem to only affect the visibility as they are still performing their logic in the background. This would be okay for static meshes that don’t have to do anything, but as far as projectiles with blueprints I have had no luck. I have also tried disabling the actor tick and a few other nodes in combination but nothing seems to work for me.
Is pooling necessary in Unreal? Is garbage collection an issue and can it be controlled in blueprints?
Thanks for any input on the subject!