Background:
In my previous game I used Actor Factories to spawn my objects. I set up a field of path nodes, associated an actor factory with each one, and was able to “draw” the spawn patterns
Video of game: Objects in Space - Week 3 - FINAL BUILD - YouTube
Currently:
The only relevant node I can find is “Spawn Actor” (v In Level Blueprint v)

2 Questions:
1- Is there a simpler way to spawn Actors using Blueprint?
2- Is there any way to specify the default variables before spawning a BP actor? (Example: Spawn 1 asteroid with 200 speed and spawn another with 800)
Hi Alexander,
Thank you for your questions.
Is there a simpler way to spawn Actors using Blueprint?
I have to ask if the Notes are just for getting coordinates for the placement of your actors? If so, then a simpler solution would be to create a “Master” Blueprint that only holds Vectors, then turn on the “Show 3d Widget” and Editable properties. Once you place the Master BP in you level, you will be able to drag widgets from it and place them where you want your Actors to spawn. That should speed up the spawning workflow.
Another spawn system example can be seen in the Level Blueprint of the Content Examples map Level_Scripting.umap. It spawns a series of coins. This may be worth looking into.
Is there any way to specify the default variables before spawning a BP actor? (Example: Spawn 1 asteroid with 200 speed and spawn another with 800)
Yes, going back to the “Master” BP model, you could easily have a float variable in your Asteroid BP for speed, set it to Expose on Spawn and Editable. Now, in the Master BP, create a Spawn Actor with the Asteroid BP set as the actor and you should have a new node appear for the Speed variable. You can then have the Master BP spawn an Asteroid with a speed set in the Master BP first.
Is there anything that the Spawn Actor node is limiting you from doing? I would be happy to further assist or create a feature request.
Thank you,
Alexander
1 - A few things you could do that might simplify your layout:
- You should be able to just connect the Return Value of Get Actor Transform to Spawn Actor and save yourself the trouble of the intermediate variable.
- You could also, depending on whether you find it cleaner/easier/etc. put the Nodes in to an array and then do a foreach with them.
2 - Your blueprint variables can be marked in the details when you have it selected to Expose on Spawn (must also be Editable, you’ll get a warning about that). Then when you select that blueprint as the SpawnActor class it will create a pin on the node that allows you to supply the properties.
Thank you Alexander and Marc.
Alex: I was just using notes for their location (Similar to how I used path nodes previously.) But your “Master BP” talk gave me an idea- I created a blank BP with an Arrow component. Now I can visually see the transforms (Rotation, Scale)
Not sure I follow you with the Vectors and “Show 3d Widget” stuff, but I think this solution will work fine.
Thanks again!
It looks like you are on a very similar track to what I am describing with vectors. To clarify, what you are doing with the arrows could be done in a much easier way by creating Vector variables for each spawn location, then Expose on Spawn. When you place the BP into the level, you will see vector Widgets appear on it’s origin that can be moved and placed in the world (they are diamond shaped wire frames). This is what you are trying to do using arrows, but with this method, it takes less memory and saves you some steps. Instead of using “Get actor transform” you can just plug the vectors into the Spawn Transform.