Level Streaming Volumes vs Load/Unload Levels with Blueprints

Hi (Sorry this is a bit long but I want to be clear see if someone can help me)!
I am having some doubts about how to go around loading and loading my maps for my game.
My game (it’s a life sim) is set in an Academy with different classes or rooms, interior patios and an exterior landcaspe that the player can also explore.
The player will start on their room and go tot classes in the Academy and willingly exit the academy and be able to explore the exterior for foraging or other tasks.

I’ve watched several videos/talks and read the documentation about level streaming volumens and load and unload leves with blueprints or C++

We are designing the academy with hallways in the shape of L turns so there is enough time to load and unload each map or each class.

Right now I am using Level Streaming Volumens to do the load and unload.
I have my Persistent Map containing the level Streaming volumens and all the submaps attached
So for example I would have:

  • Persistent Map with Volumens
    • Sublevel 1 player’s room
    • Sublevel 2 interior patio
    • Sublevel 3 potion class
    • Sublevel 4 hallway connecting player’s room with interior patio (this would be an L turn)

This setting works great and the Streaming Volumens will do the job perfectly

Now my questions are this:

  • What happens when I have more sublevels added? the persistent level will end up with 20 different maps or more. If I understand correctly, all of them will be loaded when I travel to my persistent level but not visible, what problems could this have?

  • What if with my current setting I don’t use volumens but Load/Unload Levels with Blueprints using those hallways in L turn to start loading the next sublevel? Would this be better or worse?

  • The previous premises are for all the zones relevants of the Academy itself, now, what would be the best way to handle the exterior, which is a landscape with mountains, rivers…

Any helps/Tips would be great! I am in general a bit confused with all this and I want to make the best possible scenario in terms of performance.

Thank you so much!

The only reason to use BPs to load / unload is if you can’t use volumes. Your situation is suited to volumes.

Within reason, you can have as many sublevels as you want. When you load the persistent in the editor, there will be a long delay while all the subs are loaded ( depending on size ), but in the packaged product, this won’t happen. Only what is needed is loaded.

It’s probably ok to just leave the landscape outside. But if you have performance problems, then it will also need to go in a streamed level which is loaded while you make your way to the exit.

Thank so so much for this answer!
I’ve been going around this past week trying to figure out what to do and what system use but I think you’ve solved all my issues!!