The only way to make a real loading screen is level streaming
It can be a bit ‘lumpy’ when the load starts ( depending on how much is in the level ), and it’s also a bit of a fiddle to know when the load has finished. That’s why people write plugins to do it.
Streaming is perfectly useable though, I’ve used it in a published game, as have many others.