Materials and Material Instances are broken in 5.3.1 (Crash)

Crash happens when switching Static Bool parameters in Material Instances.

Crash log:

Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x0000000000000008

UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:629]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:553]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:537]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:621]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:612]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:612]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:553]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:553]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:612]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:621]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:612]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:553]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:621]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:612]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:612]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:553]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:553]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:621]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:532]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:537]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:553]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:621]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:537]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:537]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:532]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:537]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:625]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParametersFromExpression() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:553]
UnrealEditor_MaterialEditor!FMaterialEditorUtilities::GetVisibleMaterialParameters() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditorUtilities.cpp:277]
UnrealEditor_UnrealEd!UMaterialEditorInstanceConstant::RegenerateArrays() [D:\build\++UE5\Sync\Engine\Source\Editor\UnrealEd\Private\PreviewMaterial.cpp:610]
UnrealEditor_MaterialEditor!FMaterialInstanceEditor::RebuildMaterialInstanceEditor() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialInstanceEditor.cpp:1261]
UnrealEditor_MaterialEditor!UMaterialEditingLibrary::RebuildMaterialInstanceEditors() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditingLibrary.cpp:385]
UnrealEditor_MaterialEditor!UMaterialEditingLibrary::UpdateMaterialFunction() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditingLibrary.cpp:1028]
UnrealEditor_MaterialEditor!FMaterialEditor::UpdateOriginalMaterial() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditor.cpp:2700]
UnrealEditor_MaterialEditor!FMaterialEditor::OnApply() [D:\build\++UE5\Sync\Engine\Source\Editor\MaterialEditor\Private\MaterialEditor.cpp:3523]
UnrealEditor_MaterialEditor!TBaseSPMethodDelegateInstance<0,FMaterialEditor,1,void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfSafe() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:298]
UnrealEditor_Slate!TDelegate<void __cdecl(void),FDefaultDelegateUserPolicy>::ExecuteIfBound<void,0>() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateSignatureImpl.inl:570]
UnrealEditor_Slate!FUICommandList::ExecuteAction() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Commands\UICommandList.cpp:117]
UnrealEditor_Slate!SToolBarButtonBlock::OnClicked() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\MultiBox\SToolBarButtonBlock.cpp:446]
UnrealEditor_Slate!TBaseSPMethodDelegateInstance<0,SToolBarButtonBlock,1,FReply __cdecl(void),FDefaultDelegateUserPolicy>::Execute() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateInstancesImpl.h:281]
UnrealEditor_Slate!TDelegate<FReply __cdecl(void),FDefaultDelegateUserPolicy>::Execute() [D:\build\++UE5\Sync\Engine\Source\Runtime\Core\Public\Delegates\DelegateSignatureImpl.inl:549]
UnrealEditor_Slate!SButton::ExecuteOnClick() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Input\SButton.cpp:465]
UnrealEditor_Slate!SButton::OnMouseButtonUp() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Widgets\Input\SButton.cpp:390]
UnrealEditor_Slate!FEventRouter::Route<FReply,FEventRouter::FToLeafmostPolicy,FPointerEvent,`FSlateApplication::RoutePointerUpEvent'::`8'::<lambda_3> >() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:442]
UnrealEditor_Slate!FSlateApplication::RoutePointerUpEvent() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:5206]
UnrealEditor_Slate!FSlateApplication::ProcessMouseButtonUpEvent() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:5775]
UnrealEditor_Slate!FSlateApplication::OnMouseUp() [D:\build\++UE5\Sync\Engine\Source\Runtime\Slate\Private\Framework\Application\SlateApplication.cpp:5740]
UnrealEditor_ApplicationCore!FWindowsApplication::ProcessDeferredMessage() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:2231]
UnrealEditor_ApplicationCore!FWindowsApplication::DeferMessage() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:2738]
UnrealEditor_ApplicationCore!FWindowsApplication::ProcessMessage() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:1099]
UnrealEditor_ApplicationCore!FWindowsApplication::AppWndProc() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsApplication.cpp:937]
user32
user32
UnrealEditor_ApplicationCore!FWindowsPlatformApplicationMisc::PumpMessages() [D:\build\++UE5\Sync\Engine\Source\Runtime\ApplicationCore\Private\Windows\WindowsPlatformApplicationMisc.cpp:148]
UnrealEditor!FEngineLoop::Tick() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\LaunchEngineLoop.cpp:5749]
UnrealEditor!GuardedMain() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Launch.cpp:188]
UnrealEditor!GuardedMainWrapper() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:118]
UnrealEditor!LaunchWindowsStartup() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:258]
UnrealEditor!WinMain() [D:\build\++UE5\Sync\Engine\Source\Runtime\Launch\Private\Windows\LaunchWindows.cpp:298]
UnrealEditor!__scrt_common_main_seh() [D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288]
kernel32
ntdll

Unfortunately, i couldn’t find steps to reproduce this, so i can’t submit a bug report.
However, my master materials are broken.
Perhaps, it has something to do with using Get/Set MaterialAttributes nodes inside of functions or connecting input Material Attributes data to other function inputs as a preview.

I also did a test with a simple function that packs data to Material Attributes - used a Material Function, made in UE5.2, and created a copy of it from scratch. The function from 5.2 crashed the editor, the new one didn’t.

But it also crashes in many different cases.

I hope for a fix in 5.3.2

2 Likes

Seeing this as well across multiple materials. Can’t nail it down.

Unreal is trash these days.

1 Like

5.3.2 issue are still reproducible