Description

Adding a parameter of type structure bp which references an enum as a value to a module script crashes the engine. This issue is also occurring in 4.27.

Steps to Reproduce
  1. Create an Enumeration BP, open it and add several members, name it MyEnum
  2. Create a Structure BP, name it MyStruct , open it and add MyEnum as a value
  3. Go to Project Settings > Plugins > Niagara > add an additional parameter enum and select MyEnum as the value.
  4. Add MyStruct as the value for Additional Parameter and Payload Types
  5. Create a Niagara System, open it, and add a new user parameter of type MyStruct
  6. Create a Niagara Module Script, open it, right click on the Node graph and add a parameter of type MyStruct

Actual Result: Engine crashes as soon as the user attempts to add the structure parameter referencing the first enumeration bp.
Expected Result: Parameter type structure is added successfully in Niagara Module Script

Callstack
Assertion failed: 0 [File:D:\build\++UE5\Sync\Engine\Plugins\FX\Niagara\Source\NiagaraEditor\Private\EdGraphSchema_Niagara.cpp] [Line: 1878]
UnrealEditor-NiagaraEditor!UEdGraphSchema_Niagara::GetTypeDefForProperty(FProperty const *) [EdGraphSchema_Niagara.cpp:1878]
UnrealEditor-NiagaraEditor!UNiagaraNodeConvert::AutowireNewNode(UEdGraphPin *) [NiagaraNodeConvert.cpp:570]
UnrealEditor-NiagaraEditor!FNiagaraAction_NewNode::CreateNode(UEdGraph *,UEdGraphPin *,UE::Math::TVector2<double>,bool) [NiagaraActions.cpp:262]
UnrealEditor-NiagaraEditor!FNiagaraAction_NewNode::CreateNode(UEdGraph *,TArray<UEdGraphPin *,TSizedDefaultAllocator<32> > &,UE::Math::TVector2<double>,bool) [NiagaraActions.cpp:311]
UnrealEditor-NiagaraEditor!SNiagaraGraphActionMenu::OnItemActivated(TSharedPtr<FNiagaraAction_NewNode,1> const &) [SNiagaraGraphActionMenu.cpp:192]
UnrealEditor-NiagaraEditor!void TBaseSPMethodDelegateInstance<0,SNiagaraGraphActionMenu,1,void __cdecl(TSharedPtr<FNiagaraAction_NewNode,1> const &) [DelegateInstancesImpl.h:290]
UnrealEditor-NiagaraEditor!SItemSelector<FString,TSharedPtr<FNiagaraAction_NewNode,1>,ENiagaraMenuSections,unsigned int,unsigned int,unsigned int>::OnMouseClick(TSharedRef<SItemSelector<FString,TSharedPtr<FNiagaraAction_NewNode,1>,ENiagaraMenuSections,unsigned int,unsigned int,unsigned int>::FItemSelectorItemViewModel,1>) [SItemSelector.h:2038]
UnrealEditor-NiagaraEditor!TBaseSPMethodDelegateInstance<0,SItemSelector<FString,TSharedPtr<FNiagaraAction_NewNode,1>,ENiagaraMenuSections,unsigned int,unsigned int,unsigned int>,1,void ,FDefaultDelegateUserPolicy>::ExecuteIfSafe(TSharedRef<SItemSelector<FString,TSharedPtr<FNiagaraAction_NewNode,1>,ENiagaraMenuSections,unsigned int,unsigned int,unsigned int>::FItemSelectorItemViewModel,1>) [DelegateInstancesImpl.h:307]
UnrealEditor-NiagaraEditor!TDelegate<void ,FDefaultDelegateUserPolicy>::ExecuteIfBound<void,0>(TSharedRef<SItemSelector<FString,TSharedPtr<FNiagaraAction_NewNode,1>,ENiagaraMenuSections,unsigned int,unsigned int,unsigned int>::FItemSelectorItemViewModel,1>) [DelegateSignatureImpl.inl:607]
UnrealEditor-NiagaraEditor!SListView<TSharedRef<SItemSelector<FString,TSharedPtr<FNiagaraAction_NewNode,1>,ENiagaraMenuSections,unsigned int,unsigned int,unsigned int>::FItemSelectorItemViewModel,1> >::Private_OnItemClicked(TSharedRef<SItemSelector<FString,TSharedPtr<FNiagaraAction_NewNode,1>,ENiagaraMenuSections,unsigned int,unsigned int,unsigned int>::FItemSelectorItemViewModel,1>) [SListView.h:1077]
UnrealEditor-NiagaraEditor!STableRow<TSharedRef<SItemSelector<FString,TSharedPtr<FNiagaraAction_NewNode,1>,ENiagaraMenuSections,unsigned int,unsigned int,unsigned int>::FItemSelectorItemViewModel,1> >::OnMouseButtonUp(FGeometry const &,FPointerEvent const &) [STableRow.h:546]
UnrealEditor-Slate!7ffa2ef80000  + 34034
UnrealEditor-Slate!7ffa2ef80000  + 16fc6
UnrealEditor-Slate!7ffa2ef80000  + 902de
UnrealEditor-Slate!7ffa2ef80000  + 791b1
UnrealEditor-Slate!7ffa2ef80000  + 6d5dc
UnrealEditor-ApplicationCore!FWindowsApplication::ProcessDeferredMessage(FDeferredWindowsMessage const &) [WindowsApplication.cpp:2210]
UnrealEditor-ApplicationCore!FWindowsApplication::DeferMessage(TSharedPtr<FWindowsWindow,1> &,HWND__ *,unsigned int,unsigned __int64,__int64,int,int,unsigned int) [WindowsApplication.cpp:2699]
UnrealEditor-ApplicationCore!FWindowsApplication::ProcessMessage(HWND__ *,unsigned int,unsigned __int64,__int64) [WindowsApplication.cpp:1078]
UnrealEditor-ApplicationCore!FWindowsApplication::AppWndProc(HWND__ *,unsigned int,unsigned __int64,__int64) [WindowsApplication.cpp:916]
USER32!7ffab4a80000  + e858
USER32!7ffab4a80000  + e299
UnrealEditor-ApplicationCore!FWindowsPlatformApplicationMisc::PumpMessages(bool) [WindowsPlatformApplicationMisc.cpp:138]
UnrealEditor!7ff703eb0000  + 7114
UnrealEditor!7ff703eb0000  + 20d9c
UnrealEditor!7ff703eb0000  + 20e8a
UnrealEditor!7ff703eb0000  + 23c4d
UnrealEditor!7ff703eb0000  + 35534
UnrealEditor!7ff703eb0000  + 386e6
KERNEL32!7ffab5740000  + 17034
ntdll!7ffab6630000  + 52651

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-148411 in the post.

2
Login to Vote

Cannot Reproduce
ComponentUE - Niagara
Affects Versions5.0
CreatedApr 6, 2022
ResolvedJun 30, 2023
UpdatedJul 3, 2023