What would be the best way to move an actor from one level to another?
Important note: Im not talking about “moving” as in “the actor changes location”.
What I mean is that the actor stays where it is but just belongs to a different level.
When I select an actor, I can only find search options for levels in the “Level” context menu.
Would it be switching the levels in the level browser and then cut and paste?
Or is there an option that I missed that lets you change the level for an actor?
Any mesh actors you create in the content browser should be available to add to any level you create from the content browser. If you’re talking about a pawn just place him there. If you mean the player then you should either place a ‘player start’ in the level where ever you want him to spawn along with a ‘Load Level’ blueprint, or you could just use streaming and have the level load seamlessly. This means, for example, the actor walks through a door and into a hall, while he’s in the hall the level behind him unloads while the level in front of him loads so that when he exits the door at the end of the hall he’s in a new level. There are examples of this in the Content Examples Project.
Select the actors in map A. Ctrl+C. Open up map B. Ctrl+V.
When copying actors in the UE4 editor it actually copies huge amounts of text to your clipboard(which can be saved as a text document by the way). If you were to paste that text in another map it automatically converts the text generated into actors.
I have only tested this with static mesh actors. I do not know how well the rest would work.
Its about splitting an existing level into two separate ones.
I have a level with meshes and some landscapes. Now I just want the landscapes to be in a different level so I can temporarily exclude them from Lightmass calculation when I fiddle around with the meshes in the level. (And I dont want to constantly resize the lighmass importance volume either)
On game start, both levels will be loaded, so no dynamic streaming, just developer convienience…
Ah, ok, the good old cut-and paste…
Ill give it a try tomorrow.
The way I do it is super easy. Rather than copying and having both levels having the same actors you can simply select and move whatever you want to the level of your choice.
Go to “Windows” (top left corner) and enable “Levels”. (It is easyer to dock it somewhere on your screen)
Once you have done this, click on the level drop-down menu and click on “Create New…” (usually I use “Empty Level”), or if you have already selected actors that you would like to move you can click on “Create New with Selected Actors”.
If you want to move more actors once you have created the level first you need to select the level that you want the actors to be moved to.
Select all the actors you want to move.
5.Go to the Level menu right click on the level that you want your actors to go and select “Move Selected Actors to Level” (if this option is grayed out it means that some of the selected actors are already in the target level, so you have to select only the one that is not present in the target level).
I will upload an attachment so you can see exactly how to do it.
Is there some safe way to move them so that the references won’t get lost. E.g. I have a blueprint actor of a button that points to door actor it opens. Sometimes when moving the reference is intact, sometimes it nullifies. Can’t pinpoint exactly why it works sometimes and sometimes not…
Would it be possible to automate that process in blueprints? For example if you get all objects of class with tag, and somehow move these objects into a Sub-Level?
I’m also having this issue, is this possible in Unreal Engine 5.3.2? I don’t understand why UE can’t “relink” the reference as it’s the same actor/name. This is really a big problem if you want to update/edit your level organisation or just simply forgot to add to correct level.
You can use Get Streaming Level and move selected actors to level nodes for moving actors, note this, this is a editor utility widget blueprint so I’m not sure if you can call these nodes in normal actor blueprints, If you want to prevent breaking references issue, you need to use duplicate nodes(I don’t know exactly which) so that you can safely move your assets without breaking references. If you want to re-establish references, well to me it’s a bit ridiculous task but I used this method to move my static mesh actors to a proxy level after merging them. And make sure you use Name type variable for package name, otherwise it might cause issues. Hope that helps.