Custom Load Screens for SteamVR?

Anyone know how to do this? I want to let the player know that the game hasn’t crashed; that it’s simply loading.

I know level streaming is supposed to help, but it’s not perfect, and with the level I’d be streaming in, it’d still cause it to hang.

If it’s going to hang, it’d be nice if it could hang with a message that says ‘loading’.

Didn’t I read something about this in the 4.14 release notes ?

“New: VR Loading Movies
The engine now supports loading movies on Oculus, GearVR, SteamVR, and PSVR. These run on the rendering thread, and can mask framerate hiccups as you load up your content. To use the splash screen, you can set a texture using the “Set Splash Screen” node, or choose to automatically have it appear when you load a map with the “Enable Auto Loading Splash Screen” node.”

Not sure what to do from here, but looks interesting !

Hmmm. Useful to know!

So where do you put? In the level blueprint of the map you’re loading?


No matter where you put it, it just produces a black screen. I tried various sizes and settings for the textures like suggested here (, but it’s still only a black screen. Anyone had any success? Or are these blueprint nodes buggy?

I had success from running everything you have above, but only after launching it this way once, then removing all the parts before the delay. It seems setting the splash, or trying to do anything with it while running turns it black.
Not really useful… luckily for us we only need black at this time. I will be doing some more testing today.

These nodes need some better documentation.

So that black screen seems to be caused by ‘Set Splash Screen’ -> ‘Show on Set’ checkbox.

But I can’t figure out if you put it in the level that it’s loading away from, or the level you load to. I can’t get a consistent result.

But I have seen it… and it looks like a big textured window (in my case white) out in steam compositor. Which is… not the best result, but adequate for me to stick a loading sign on to let the player know the game hasn’t bugged out.

If only I could actually get it activating reliably.

I think at some point I also threw in a stereo layer node, and that might’ve made a difference?

Like I said, this feature needs documentation.

Isn’t the purpose of this loading screen that you don’t see the SteamVR environment, when a new level loads with OpenLevel ?
Currently this doesn’t work and you are still thrown into the default SteamVR homescreen when loading a new level.

Isn’t that what level streaming is for, HEGI? I recall that back… one or two major versions ago it used to be buggy and you still were thrown back to Steam every now and then, but at least it wasn’t all the time. I’m not sure if it’s fixed now, should be… I would hope so.


As for everyone else:

I seen someone using following trick:

  • Stream a “splash screen level” - basically just an empty environment with your splash screen and some lights.
  • Unload your previous level…
  • …and then stream the actual level you’d like to load.

Here’s a doc with all the stuff you would need to accomplish that.

ps. Billboards you might want to use for splash screen appear to be buggy?

Whenever you call open level, it throws you back the Steam home screen. If you load an empty level, you just see it for a split second. The VR splash screen doesn’t cover that in 4.14. And as i understand “Enable Auto Loading Splash Screen” is exactly for that.

It’s being worked on. :slight_smile: