Something that would really help with level management is if the Levels tab also showed nested levels as sub-categories of the level they are part of.
If I have a sub-level of a persistent level, I noticed I can also make sub-levels inside THAT sub-level. For very very large maps, this would help a lot.
The current way it’s shown
Persistent Level
SubTile1_1
SubSubTile1_1 ← Same ‘sub’ level as its parent level (problematic)
I would like to know how are you nesting sublevels inside other sublevels? I cannot seem to find how to do this and it would greatly help on my project!
It’s been awhile but I believe you just drag it onto the level list (Windows → Levels if you don’t have it open) or you can just say Add Existing Level from there, with a sub level selected.
Unfortunately I have tried that already… When you add levels (new or existant) in sublevels using the contextual menu it creates the level as a sublevel of the persistant one (Check the Reference Viewer of your “sub-sublevel” by right clicking on it in the content browser and it is referencing to your Persistant level, not its desired sublevel “parent”). Draging and dropping a level from the Content Browser into the level hierarchy (over a sublevel) will always drop as a sublevel of the Persistant one, not it’s sublevels… I’ve been researching about this and I asked because you were the first out of like 12-15 people saying it’s not possible to do so…
In the end, it does seems like it’s not possible to do so
I believe those levels are still sub-levels, but (as the topic of this entire thread states) they appear to be all below the main one.
We definitely had sub-levels working in the fashion you’re suggesting here, but I don’t know much else since that was a different project I’m no longer working with. You might be able to run some tests to see if you can load your main level, then your sub-level, then a sub-level of that sub-level.
Shouldn’t be too difficult to figure out if it’s working the way you want, even if the list is confusing.
I’ve just succeded to load nested subLevel into the main Level.
It will require some C++ skills. In my case it was a dynamic streaming level created and Added by code in every level at runtime.
Step to do it:
When your map is loaded, so the direct subLevel too:
For every StreamingLevels in the Map (GetStreamingLevels)
Retrieve the matching UWorld object FindObjectChecked<UWorld>(ANY_PACKAGE, *subLevel->GetWorldAsset().ToSoftObjectPath().GetAssetName(), true);
Next store the subLevel->GetStreamingLevels() into a temps array
Next Detach the subLevel > sublevels from the parent subLevel subLevel->RemoveStreamingLevels(subLevel->GetStreamingLevels()), to make their state == Removed
Next for each ULevelStreaming in the temp array, add a Duplicate into the main Level.
You need to duplicate them cause the parent UWorld will not match the main one.