Files
UnrealEngineUWP/Engine/Source/Runtime/MovieSceneTracks
andrew rodham 31a414b144 Sequencer: Fixed MPC tracks not restoring state correctly
There are 2 issues here that are tackled together:
  - Firstly, the MPC track was using the PreAnimatedStateInterface to save its MPC values. Unfortunately this meant that its SavePreAnimatedState function could get called before the system was actually run (though this was not deterministic). This meant that it would try and save values before the bound materials had even been added, and so it would fail.
    The fix is to remove the use of this interface and just cache the state inside its OnRun function when we know it's initialized its materials correctly.

  - Second, this system suffered the same problem as Material Parameter tracks whereby it could end up caching unbound state for keep state entites. Although there's no evidence of this being a problem in practice (I suspect Keep State MPC tracks are seldom used), I have fixed it using the same method as 24444161)

#rb Max.Chen
#preflight 63fe779bf43e53f681bd8885

#localization none
#tests Tested the original repro, EngineTests and Ad-hoc FrontEnd testing

[CL 24471251 by andrew rodham in ue5-main branch]
2023-03-01 16:49:55 -05:00
..