Async Loading Screen

@ **Truong.Bui **Thank you for this awesome plugin it was just what I was looking for, gladly bought you a coffee! Now if I bought you a coffee pot is there any way you could add Music to the loading screens? I think that would be the final piece to add to make this complete.

Also in your trailer video, LINK HERE , at about the 24 second mark the circular throbber that looks 3 D, where could I get that one?

Thank you in advance, look forward to your response!

Nemodain

Hey @Nemodain, thank you very much for the coffees :wink:

You just need to add any music clip you want in Movie Paths option.

It is just a sequence of images. I just downloaded those images on the internet for the trailer video, it’s not mine so I can’t share it. You should follow this tutorial for custom loading icon.

](filedata/fetch?id=1849382&d=1609860700)

I kinda was wondering if I could use the Movie Paths options, thank you for the quick response and I will check out that tutorial!

Thanks again!

Nemo

You’re welcome :slight_smile:

Btw, you may need to convert your music clip to mp4 cause .mp3 or .wav doesn’t work.

Update version 1.2
Changelog

  • Added new blueprint library function Stop Loading Screen. To use this function, you must enable the Allow Engine Tick option. Call this function in BeginPlay event to stop the Loading Screen (works with Delay node):

  • Added Show Loading Complete Text option and Loading Complete Text Settings section, which show a text when level loading is complete. Note that you need to set Wait For Manual Stop = true, and Minimum Loading Screen Display Time = -1, this also allows players press any key to stop the Loading Screen by themself.

Show Loading Complete Text Settings:

Example:

I have currently implemented this plugin and it works wonderfully.

But there are some issues that I am facing right now, namely two:

1 - I don’t see an easy way to change the volume of the movie that is being played. By digging deep into the implementation of the code I was able to find where the setup for the movie itself is made via IGameMoviePlayer::SetupLoadingScreen but I can’t seem to find even a hint of a sound component that is used to play the audio portion of the media and how to manipulate it’s volume

2 - I need to add a custom widget akin to the subtitle box to display subtitles in the movie. The implementation of this widget is already done, but it’s inside the project itself and I can’t really include files from the project itself to the plugin.

It would be greatly appreciated if you were to nudge me into the right direction regarding those two problems, thanks.

Is there a way have levels that could be ignored with the loading screen? Like, there are 2 levels that I don’t want the loading screen to appear, is there a way to disable Async loading screen on specific maps?

1 Like

Awesome plug-in! Thank you, to start with.

There are a couple of things I was wondering whether it’s possible to do now – or whether you plan on implementing in a future update:

> in the Startup Loading Screen, you can check “Movies Are Skippable” and then skip all of your movies as the game is loaded.
→ would it be possible to redefine the “skip the movies” input? Currently it listens only to mouse clicks, I’d need to skip by pressing a Gamepad button
→ would it be possible to skip the movies one by one, rather than skip the whole queue entirely?

Cheers!
f

It’s not working with world composition, my player opens the persistent level with “Open Level” in blueprints, the loading screen flashes and then the level loads and the player falls into an empty void?

@Truong.Bui Thanks for this plugin, it looks very useful. I got a question tho. I was using the ActionRPG’s loading screen which uses the same logic (i think) but since the widget that was showing was made in slate i was able to use materials other than just textures.

In the end i stopped using that logic because it seems it was hanging my builds on some platforms. My question is…is there any way to use materials for the loading screen? Thanks

1 Like

Hi! It’s an amazing plugin but I think it can be better. There are my ideas

[START UP LOADING SCREEN]

  • You should add a new function „show Movies before the Overlay” because when I enabled the Overlay the Movie went behind the Overlay.

[CUSTOM TEXT]

  • You should add new custom text widgets for „Map Name” or „Gamemode description”

[CUSTOM WIDGET]

  • Ability to add custom widgets instead of changing the settings of the overlay. „Use Custom widget?”

[BUG ON START UP LOADING SCREEN]

  • The loading icon is buged when I set it to „Image Sequence” and It only shows the first image and doesn’t change to the next ones.

Hello!

Thanks for the plugin, it’s pretty awesome! I was wondering if there is a way to “hide” the “loading widget” once the level has been loaded and “manually stop” is active. So I want my “Loading Complete Text” to be in the widget and nothing else. Right now, when the level is loaded I have both messages in the screen “loading, please wait” and “press any button to continue”.

I hope I made myself clear!

Thanks a lot!

Hi Dorothir, at the moment you cannot do this. However, I’ll add this option in the next update. The workaround is to change the loading text to just “Loading” so no one notes that.

Thanks for sharing this plugin! I’m trying to use it in 4.26, only for the initial startup screen. Everything works with one crucial exception. I have Wait for Manual Stop turned on, and call StopLoadingScreen. This works, as long as I do it directly in a BeginPlay event. However, I need to do some asynchronous setup (load savegame, etc.), and if I do that, as soon as I hit an asynchronous node in BP, it no longer progresses. As a simplified example, if my game mode has a Delay node in BeginPlay then a StopLoadingScreen node, the flow never proceeds past the delay node, even though the documentation for Stop Loading Screen explicitly states that it supports delays. I have Allow Engine Tick enabled, and Minimum Loading Screen Display Time set to 0.5. Is there any other setup I need?

Any game data that is loaded in BeginPlay do not belong to level loading progress, so I think you have to use Level Streaming to load your asset instead.

Is there a way to keep the initial movie player (the one started at game launch) alive while level streaming or other asynchronous initialization is happening?

Hey @TruongBui , Great job man ! Thank you for the plugin !
One small problem is , If I press any button while the level is loading , it automatically takes that as a input and when the Loading complete text appears, it Instantly opens the level.
So, how to not take that input while loading ? Could you please give a solution to this? Thank you

@Rishi_Jayanthan You may want to uncheck this option:

1 Like

No matter what I try. I cannot get videos to work. I tried using the sample ones provided, but with no luck. I have no idea what to try

I think it’s because there is a conflict with other plugins. You may try with an empty project to see if the video is showing up.