When I try to use ChaosCacheCollection within a blueprint(e.g. Set Cache Collection node for spawned ChaosCachePlayer) I’m getting crach error
Ensure condition failed: Registry [File:C:\Program Files\Epic Games\UnrealEngine\Engine\Source\Runtime\Engine\Private\Elements\Framework\EngineElementsLibrary.cpp] [Line: 33]
Typed element was requested for '/Game/Characters/Level1EnemyMan/Destruction/L1EnemyMan2_CC.L1EnemyMan2_CC:L1EnemyMan_GeometryCollection_0.GeometryCollectionComponent0.GameplayEventDispatcher' before the registry was available! This usually means that NewObject was used instead of CreateDefaultSubobject during CDO construction.
More details:
I’ve created Geometry Collection with Fracture and Field, then I Recorded it with Chaos Cache Manager and saved in ChaosCacheCollection. I have Enemy character blueprint. When the enemy has no health, it spawns ChaosCachePlayer and run it for destruction. It works fine.
But when I restart UE 5.3, it throws the error above.
So far, I’ve debuged that during start up, the UE tries to load existing Blueprints with dependent packages. One of those dependencies is my ChaosCacheCollection(L1EnemyMan2_CC above). There are stored GeometryCollectionComponent within ChaosCacheCollection. It tries to create instance of GeometryCollectionComponent. That component in its turn will create instance of ‘GameplayEventDispatcher’. When it does so, it throws that exception.
I know that one of potential root causes is to use ‘CreateDefaultObject’ instead of ‘NewObject’. By the way, GeometryCollectionComponent constructor uses NewObject, but when I changed it to CreateDefaultObject, It didn’t help. So, it is not my case because the code is completely OOTB.
Does it mean that UE5.3 doesn’t support using ChaosCacheCollection within blueprint to be able dynamicly create it?
Any ideas would be appreciated.