Assertion failed: Num() == AdditiveCurve.Num() when playing Level Sequence


We have an issue here in our studio when loading a Level Sequence for our crowd. The level sequence plays when the crowd animation track is removed from the level sequence, and the level sequence plays with the crowd animation if the scene is not open (which isn’t super helpful).

The crowd is made up of multiple MetaHumans that have retargeted motion capture animation sequences animating them. This was working great until recently, but now seemingly out of the blue every time anyone tries to play the level sequence, Unreal crashes with the following error:

Assertion failed: Num() == AdditiveCurve.Num() [File:D:\build++UE5\Sync\Engine\Source\Runtime\Engine\Public\Animation\AnimCurveTypes.h] [Line: 562]

We have also had the GPU crash below occur in place of this previous error on some occasions, alongside the following crash report:


Fatal error: [File:D:\build++UE5\Sync\Engine\Source\Runtime\D3D12RHI\Private\D3D12Util.cpp] [Line: 859] pResource->Map(Subresource, pReadRange, reinterpret_cast<void**>(&pData)) failed at D:\build++UE5\Sync\Engine\Source\Runtime\D3D12RHI\Private\D3D12RHIPrivate.h:1387 with error DXGI_ERROR_DEVICE_REMOVED with Reason: DXGI_ERROR_DEVICE_HUNG

Any idea what could cause this?


Update – after chatting with Jack Condon from Epic it seems that the error is just us pushing the GPU to hard by loading and animating too many MetaHumans at high LODs. Dropping the LOD on unnecessarily detailed MetaHumans seemed to fix the issue.