Initial game start loading screen for vr

Hello,

Thanks in advance. I’m looking for a way to have an initial loading screen for vr. I was thinking of using a splash screen, but I don’t know how to load it when the game starts. I’ve submitted my game but it’s taking longer than 4 seconds to load, so I was wondering if there’s anyway to call a splash screen as soon as the game loads.

For which platform did you submit? The oculus and daydream platforms have a splashscreen node.

Hi - it’s for the Gear VR.

Are you able to drop me a mail as I’d like to speak with you via email as you seem to have most of the answers to the questions I pose - it might be easier :slight_smile:

I’m using the Rift for PC, I have the splash screens in between level loads, what’s the best way to use them for when the game boots / starts up?

My workaround was to create a totally blank level - have it as the starting level and add the splash screen node to it - then load the real level

Hi @ would you mind tell me a bit more of your workaround?

I have created a new blank level, then i created two blueprints: 1 bp class for hud and another bp widget. I have added on the widget bp event tick > open level (the one i need to load) > delay of 1s and on hud i have added: event begin play > create widget (choose my widget loading bp) < add to viewport

i also have changed on project settings for loading all the blank levels, and on project settings > maps & modes > default modes > hud class (added the loading hud class)

So, i start the game on stand alone window, it didn’t load the loading screen at the very first moment, stay some seconds on a black screen then load the “loading screen”, the small animation works laggy, the game doesn’t start.

I’m start running out of ideas here about to do this start > load the loading screen when splash screen goes out and the application frame appers > the animation working without stutterings and finally open the level

If you can help, thank you very much!

][4]

Sorry for the late reply.

My workaround involved starting with a totally empty level with no gamemode (so no pawns etc loaded) this ensures it is loaded a fast as possible without any actual assets being loaded.

The only thing it contains is this in the begin play of the loading level blueprint:

which selects the splash screen texture and activates it for loading then loads the actual game level that has the correct gamemode asset.

I still find it a bit laggy though - especially compared to the Daydream splash layer which seems to perform much better.

edit: not sure if that delay is really needed
NOTE: because of the bug with crashing loading a new level with gearvr it could only be tested with a ‘for distribution’ export

Found a nicer solution:

For gearvr all the parameters that in the blueprint node that are given to AddLoadingSplashScreen can also be written in the DefaultEngine.ini file of the game (Config/DefaultEngine.ini), as shown:

(most of those parameters are optional)

[Oculus.Splash.Settings]

TexturePath=”path”

DistanceInMeters=translation (vec3)

Rotation=rotation (quaternion)

SizeInMeters=size (vec2)

DeltaRotation=delta (quaternion)

My exact parameters that work for me:

[Oculus.Splash.Settings]
bAutoEnabled=True
TexturePath=/Game/Textures/loadingScreen_gearvr.loadingScreen_gearvr
DistanceInMeters==(X=1.0, Y=0.0, Z=0.0)

where loadingScreen_gearvr is a texture located in a Textures subfolder of my content folder. Strange you need to duplicate the texture file name after the . So: loadingScreen_gearvr.loadingScreen_gearvr is no typo.
Also I’m not 100% sure if bAutoEnabled=True is required but thought it couldn’t hurt :wink:

Found a nicer solution - see my new answer

Hi , I have used your original method and it’s still slow to get to the first level which loads the splash. Does this method which uses DefaultEngine.ini speed up the process at all or is the end result the same as your original method (loading a blank level with the splash and then loading the level where the player/pawn begins playing). I just want some kind of launch image when the game first loads. In project settings there appears to be a launch image setting, but in my google daydream build I can’t get it to work.

Follow up: I just want some kind of launch image when the game first loads. In project settings there appears to be a launch image setting, but in my google daydream build I can’t get it to work. That’s why I have implemented the method you suggest earlier in this thread.

Yes this way of using the DefaultEngine.ini shows up very quickly and is the proper way to do it :slight_smile:

I answered your Daydream specific query here: How do I set a launch image for a Daydream Build? - Programming & Scripting - Unreal Engine Forums

PS: the launch image setting in the project settings is for non-vr android builds only :wink: