Hello,
Getting this assert, but very rarely (cannot repro on dev machine):
check(!Parent->HasAnyFlags(RF_NeedLoad));
in here:
void UMaterialInstance::PostLoad()
// Ensure that the instance's parent is PostLoaded before the instance.
if(Parent)
{
#if !WITH_EDITORONLY_DATA
check(!Parent->HasAnyFlags(RF_NeedLoad));
#endif
Parent->ConditionalPostLoad();
}
It happens during async loading of assets. Tried splitting async request into loading individual assets, but that did not help.
Obviously it asserts because parent was not loaded yet. But I don’t understand how that can happen.
Maybe someone else had similar issue by any chance?
Using unreal engine 4.14.1
Full call stack:
PWNDClient.exe!FDebug::AssertFailed(const char * Expr, const char * File, int Line, const wchar_t * Format, …) Line 332 C++
> PWNDClient.exe!UMaterialInstance::PostLoad() Line 1990 C++
PWNDClient.exe!UObject::ConditionalPostLoad() Line 834 C++
PWNDClient.exe!UMaterialInstance::PostLoad() Line 1994 C++
PWNDClient.exe!UObject::ConditionalPostLoad() Line 834 C++
PWNDClient.exe!UMaterialInstance::PostLoad() Line 1994 C++
PWNDClient.exe!UObject::ConditionalPostLoad() Line 834 C++
PWNDClient.exe!FAsyncPackage::PostLoadObjects() Line 5405 C++
PWNDClient.exe!FAsyncPackage::TickAsyncPackage(bool InbUseTimeLimit, bool InbUseFullTimeLimit, float & InOutTimeLimit, FFlushTree * FlushTree) Line 4544 C++
Any ideas or suggestions would be highly appreciated!