I am trying to play Widget animation while rendering LevelSequence.But I found that the Widget animation and LevelSequence are not synchronized. When LevelSequence records the second frame, the Widget animation has already run to the fifth frame.
I tried to set the Widget animation’s flag to EMovieSceneSequenceFlags::BlockingEvaluation, but unfortunately, it didn’t work.
Does anyone know how to synchronize the Widget animation and LevelSequence frame by frame?
I was facing the same problem and I found a solution so I thought it was a good idea to share it if anyone else needed the solution.
1- If you are spawning the widget with a blueprint, in this blueprint, create a function name SetSomething, like SetWidgetTime. Make it call in editor.
2- Create a float variable, call it like the “Something” in the name of the function, in my case WidgetTime. Make it Instance editable and expose to cinematics
3- In your function, add an input parameter, type float, naming is afaik not important but I named It like my variable
4- Use the Play animation node on your widget, linked to the animation you want to play in it. Set playback speed to 0 and link your function’s float variable to the Playback Start Time pin.
4- In your sequencer, expose your variable and set it for the duration of your animation (0 at the start frame, TimeLength to your end frame)
This will execute your function for each frame the variable is set in sequencer, and it wil use the value of your variable to set time and update the widget animation accordingly.
Once you’ve created your level sequence and widget animation; ensure that the widget it being added to the viewport on Event BeginPlay via the Level Blueprint
You can then choose if the level sequence and widget are combined in the render (checked), or rendered separately for you to combine in other video software yourself (unchecked).
The output from UE will be an image sequence of the combined render, or multiple image sequences of the un-combined render; so long as there’s the same number of frames in both the level sequence and widget animation they should line up as expected