Level Streaming question

Hi! I’m looking for smooth Loading Screen for my game, besides I am going to dynamically build large world from smaller chunks, so here is the idea I came up after reading all the information:

  1. Use the World Composition
  2. Have LoadingScreen as persistent level

Under persistent level LoadingScreen, I have all other game levels - like, MainMenu, Scene1, Scene2 e.t.c;

So, inside my LoadingScreen code, I do this:



void UCLoadingScreenGUI::BeginPlay()
{
	Super::BeginPlay();

		if (levelToLoad == ELevelNames::MAIN_MENU)
		{
			FLatentActionInfo info;
			info.UUID = 3;
			UGameplayStatics::LoadStreamLevel(this, "MainMenu", true, false, info);
		}

	}
}

And this loads all my levels - MainMenu, and Scene1, and Scene2. Where am I wrong in my logic?

info.UUID - maybe here? I am using number 3 randomly, I guess this is for my own use, and does not matter.