When implementing a sequencer system that uses FSoftObjectPath to reference an actor placed in a level (at runtime, the corresponding actor is obtained by calling FSoftObjectPath::ResolveObject), ResolveObject may fail only at the initialization timing when the movie render queue is executed.
This is because the GPlayInEditorID referenced by the ResolveObject function is not set yet at this timing. This could be fixed by adding FScopedConditionalWorldSwitcher to a particular line in
UMoviePipeline::TickProducingFrames() so that GPlayInEditorID can be already set when starting Sequencer from MovieScenePipeline;
void UMoviePipeline::TickProducingFrames() { // Skip... { // Workaround FScopedConditionalWorldSwitcher ___Switcher(GetWorld()); // We tell it to jump so that things responding to different scrub-types work correctly. LevelSequenceActor->GetSequencePlayer()->SetPlaybackPosition(FMovieSceneSequencePlaybackParams(TimeInPlayRate, EUpdatePositionMethod::Jump)); CustomSequenceTimeController->SetCachedFrameTiming(FQualifiedFrameTime(CurrentRootSeqTick, TargetSequence->GetMovieScene()->GetTickResolution())); }
Since it is difficult to reproduce unless the situation is as described in the Description, a Repro Project is provided by the original reporter. Open the project and run the game in PIE, then "ImportEntityImpl WorldCheck OK" message would be logged in the log, which means soft-reference solved object is the same as Context->GameWorld().
However, when open NewLevelSequence asset and run the Movie Render Queue locally (PIE), "ImportEntityImpl WorldCheck Failed" message in logged in this scenario, which means soft-reference solved object is not in the same world as Context.
Those special logging is implemented in UMovieSceneTestInfoSection::ImportEntityImpl().
Status update on UE-21075 and UE-20622?
i have this problem UE4CC-Windows-58DC12AF4B97F057BD108FBFF569B2E9_0000
I am not able to find world outliner how to enable it?
How can i modify the param name in EQS node
Undefined sysmbol: typeinfo for AActor when cross-compile linux dedicated server on windows
Teleporter in the Creative Hub is Locked and cannot be accessed
Why is the ProceduralMeshComponent not drawing a face?
Delay nodes occasionally don't fire the "Completed" output in a nativized build
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-202183 in the post.
0 |
Component | UE - Anim - Sequencer - MRQ |
---|---|
Affects Versions | 5.3.2 |
Created | Dec 8, 2023 |
---|---|
Updated | Dec 18, 2023 |