0

As we all knows, when we LoadMap in Unreal engine, the main thread will be blocked, and the UI will be stuck. So Unreal provide us FDefaultGameMoviePlayer, which uses another thread (SlateLoadingThread) to call Paint for the specified WidgetLoadingScreen. This is done in FMoviePlayerWidgetRenderer::DrawWindow.

But I could not figure out why Unreal does not just call FSlateApplication::Get().Tick(ESlateTickType::TimeAndWidgets); in FMoviePlayerWidgetRenderer::DrawWindow, which would lead to the UMG animation tick. During the lifetime of SlateLoadingThread, the main thread will keep stuck in LoadMap, so there should not exists any race condition between the main thread and SlateLoadingThread.

Is there any problem if the UMG animation tick is not called in the main thread?

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.