In sequencer, an "event track" can be added to call functions/events defined in the Sequence Director Blueprint. The parameters for those endpoint functions/events can be sent as a Payload associated with each key on the track. However, if any parameters are of type "Soft Class Reference" or "Soft Object Reference", and the referenced class/object is not loaded when the Level Sequence asset itself is loaded/compiled, then those endpoint functions/events receive "None" instead of the correct path.
Additionally, if any parameters are of type "Soft Class Path", "Soft Object Path" or even "String", and the payload arguments represent a class/object path, then the endpoint functions/events always receive an empty string, even if the corresponding class/object was loaded when the Level Sequence asset was loaded/compiled.
The incorrect behavior with soft references is probably related to the code in file [Source\Editor\MovieSceneTools\Private\MovieSceneDirectorBlueprintUtils.cpp], function FMovieSceneDirectorBlueprintUtils::GenerateEntryPoint(), lines 312-319. Payload variables are internally stored as soft references to their actual object values, and at that point those soft references are resolved. But if the object value is already a soft reference, ResolveObject() attempts to resolve it and fails when the object is not loaded. Then, in file [Source\Editor\BlueprintGraph\Private\EdGraphSchema_K2.cpp], function UEdGraphSchema_K2::TrySetDefaultObject() just takes the path of the object (lines 4962-4966), but it was already null at this point.
The incorrect behavior with strings that represent class/object paths is probably also related to the code in file [Source\Editor\MovieSceneTools\Private\MovieSceneDirectorBlueprintEndpointCustomization.cpp], function FMovieSceneDirectorBlueprintEndpointCustomization::OnPayloadVariableChanged(), line 407. This associates an object with any payload variable that represent a path to an object. So the code in GenerateEntryPoint() will treat it as an object instead of a string.
=== ISSUE 1 ===
=== ISSUE 2 ===
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-220745 in the post.
1 |
Component | UE - Anim - Sequencer |
---|---|
Affects Versions | 5.4.3 |
Target Fix | 5.5 |
Fix Commit | 35487196 |
---|
Created | Jul 31, 2024 |
---|---|
Resolved | Aug 13, 2024 |
Updated | Sep 3, 2024 |