When creating an animation blueprint with nested sub anim instances (more than 2 nested layers deep) with exposed properties, the editor crashes when compiling the blueprint with the error message:
Assertion failed: ((UObject*)ContainerPtr)->IsA((UClass*)GetOuter()) [File:D:\Build\++UE4+Release-4.18+Compile\Sync\Engine\Source\Runtime\CoreUObject\Public\UObject/UnrealType.h] [Line: 351] 'REINST_ABP_Nested_2_C_0' is of class 'REINST_ABP_Nested_2_C_6' however property '__SUBINSTANCE_PlayRate_E932DC304C293F31E3F3818115656A73' belongs to class 'TRASHCLASS_ABP_Nested_24'
In short:
- At most 2 nested layers (with or without exposed properties) works
- 3 or more nested layers, but without exposed properties works
- 3 or more nested layers, with exposed properties from the 2. nested layer on or deeper crashes
More details on the exact (dummy) setup and when it crashes:
When using not more than 2 layers of nested sub anim instances (main → nested_2 → nested_1), with or without exposed properties, everything works fine:
When using 3 or more layers of nested sub anim instances (main → nested_3 → nested_2 → nested_1), but without any exposed properties, it also works fine:
But when using 3 or more layers with exposed variables, it crashes when compiling the blueprint:
More specifically it seems that only as soon as properties of sub anim instances used in layer 2 (nested_2) or deeper are exposed, it crashes:
For example exposing a property of nested_2 in nested_3 or a property of nested_3 in main (which is not connected to a property of a lower layer (nested_1)) seems to work fine.
Also note that in order to go back from a crashing setup to a working setup with 3 nested layers, I first had to go back to a setup with 2 nested layers. Just removing all exposed properties in the 3 nested setup (without first going to the 2 nested setup) still crashed.
A repository with a dummy project showcasing the problem can be found [here][5].