附加设置与系统测试¶
附加设置¶
根据你的项目配置,可能需要执行一些额外的设置步骤,请查看以下内容以确认是否有适用于你的情况。
如果你在项目中使用 Common UI 插件,请进行附加设置
Common UI 附加设置¶
-
打开
BP_EasyMainGameHUD类(EasyGameUI/Core),并找到 Init 部分 -
将以下代码复制并粘贴到蓝图的任意位置:
Begin Object Class=/Script/BlueprintGraph.K2Node_Composite Name="K2Node_Composite_0" ExportPath="/Script/BlueprintGraph.K2Node_Composite'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0'" Begin Object Class=/Script/Engine.EdGraph Name="Ensure Gamepad Detection" ExportPath="/Script/Engine.EdGraph'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection'" Begin Object Class=/Script/BlueprintGraph.K2Node_Tunnel Name="K2Node_Tunnel_1" ExportPath="/Script/BlueprintGraph.K2Node_Tunnel'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_Tunnel_1'" End Object Begin Object Class=/Script/BlueprintGraph.K2Node_Tunnel Name="K2Node_Tunnel_0" ExportPath="/Script/BlueprintGraph.K2Node_Tunnel'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_Tunnel_0'" End Object Begin Object Class=/Script/BlueprintGraph.K2Node_GetSubsystemFromPC Name="K2Node_GetSubsystemFromPC_0" ExportPath="/Script/BlueprintGraph.K2Node_GetSubsystemFromPC'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_GetSubsystemFromPC_0'" End Object Begin Object Class=/Script/BlueprintGraph.K2Node_AddDelegate Name="K2Node_AddDelegate_0" ExportPath="/Script/BlueprintGraph.K2Node_AddDelegate'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_AddDelegate_0'" End Object Begin Object Class=/Script/BlueprintGraph.K2Node_CustomEvent Name="K2Node_CustomEvent_0" ExportPath="/Script/BlueprintGraph.K2Node_CustomEvent'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_CustomEvent_0'" End Object Begin Object Class=/Script/BlueprintGraph.K2Node_EnumEquality Name="K2Node_EnumEquality_0" ExportPath="/Script/BlueprintGraph.K2Node_EnumEquality'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_EnumEquality_0'" End Object Begin Object Class=/Script/BlueprintGraph.K2Node_IfThenElse Name="K2Node_IfThenElse_0" ExportPath="/Script/BlueprintGraph.K2Node_IfThenElse'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_IfThenElse_0'" End Object Begin Object Class=/Script/BlueprintGraph.K2Node_VariableGet Name="K2Node_VariableGet_0" ExportPath="/Script/BlueprintGraph.K2Node_VariableGet'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_VariableGet_0'" End Object Begin Object Class=/Script/BlueprintGraph.K2Node_CallFunction Name="K2Node_CallFunction_1" ExportPath="/Script/BlueprintGraph.K2Node_CallFunction'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_CallFunction_1'" End Object Begin Object Class=/Script/BlueprintGraph.K2Node_CallFunction Name="K2Node_CallFunction_0" ExportPath="/Script/BlueprintGraph.K2Node_CallFunction'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_CallFunction_0'" End Object Begin Object Class=/Script/BlueprintGraph.K2Node_CallFunction Name="K2Node_CallFunction_12" ExportPath="/Script/BlueprintGraph.K2Node_CallFunction'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_CallFunction_12'" End Object End Object Begin Object Name="Ensure Gamepad Detection" ExportPath="/Script/Engine.EdGraph'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection'" Begin Object Name="K2Node_Tunnel_1" ExportPath="/Script/BlueprintGraph.K2Node_Tunnel'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_Tunnel_1'" InputSinkNode="/Script/BlueprintGraph.K2Node_Composite'K2Node_Composite_0'" bCanHaveInputs=True NodePosX=3632 NodePosY=-176 NodeGuid=AA30C75C472171F4561C6CBDCAC39E59 CustomProperties Pin (PinId=5A51D38440F0298244BEA7B5E20D1CE6,PinName="then",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_AddDelegate_0 83FEBE544BC8EFA134B1C7A7C1FCC5EC,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties UserDefinedPin (PinName="then",PinType=(PinCategory="exec"),DesiredPinDirection=EGPD_Input) End Object Begin Object Name="K2Node_Tunnel_0" ExportPath="/Script/BlueprintGraph.K2Node_Tunnel'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_Tunnel_0'" OutputSourceNode="/Script/BlueprintGraph.K2Node_Composite'K2Node_Composite_0'" bCanHaveOutputs=True NodePosX=2672 NodePosY=-176 NodeGuid=70B2D99245E99E08D52F69AB9EA9A89F CustomProperties Pin (PinId=E0EE2D8A41975BB8C9AC5B8EEFF5EFA7,PinName="execute",Direction="EGPD_Output",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_AddDelegate_0 C8A16F6A49604C3EC5DB2CB17206732E,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties UserDefinedPin (PinName="execute",PinType=(PinCategory="exec"),DesiredPinDirection=EGPD_Output) End Object Begin Object Name="K2Node_GetSubsystemFromPC_0" ExportPath="/Script/BlueprintGraph.K2Node_GetSubsystemFromPC'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_GetSubsystemFromPC_0'" CustomClass="/Script/CoreUObject.Class'/Script/CommonInput.CommonInputSubsystem'" NodePosX=2992 NodePosY=-112 NodeGuid=01485CD9434FA7CE18EC28AD4E6FFD8E CustomProperties Pin (PinId=7023F8FA49E9827FA2DAABA12E1D4E80,PinName="PlayerController",PinType.PinCategory="object",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.Class'/Script/Engine.PlayerController'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_VariableGet_0 7F8C40CF4AD6D7529FFC6BA80967724B,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=CCE1C4B24F2B57B6C1AE7A92EB135F51,PinName="ReturnValue",Direction="EGPD_Output",PinType.PinCategory="object",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.Class'/Script/CommonInput.CommonInputSubsystem'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_AddDelegate_0 FF4FD41244C96814A9AB49B9104B8F57,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) End Object Begin Object Name="K2Node_AddDelegate_0" ExportPath="/Script/BlueprintGraph.K2Node_AddDelegate'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_AddDelegate_0'" DelegateReference=(MemberParent="/Script/CoreUObject.Class'/Script/CommonInput.CommonInputSubsystem'",MemberName="OnInputMethodChanged") NodePosX=3296 NodePosY=-176 NodeGuid=A87BEB9746BB6FEC2F0576B5DB14FF99 CustomProperties Pin (PinId=C8A16F6A49604C3EC5DB2CB17206732E,PinName="execute",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_Tunnel_0 E0EE2D8A41975BB8C9AC5B8EEFF5EFA7,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=83FEBE544BC8EFA134B1C7A7C1FCC5EC,PinName="then",Direction="EGPD_Output",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_Tunnel_1 5A51D38440F0298244BEA7B5E20D1CE6,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=FF4FD41244C96814A9AB49B9104B8F57,PinName="self",PinFriendlyName=NSLOCTEXT("K2Node", "BaseMCDelegateSelfPinName", "Target"),PinType.PinCategory="object",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.Class'/Script/CommonInput.CommonInputSubsystem'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_GetSubsystemFromPC_0 CCE1C4B24F2B57B6C1AE7A92EB135F51,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=CD7F596342AA60112F004EBA56DEDFB0,PinName="Delegate",PinFriendlyName=NSLOCTEXT("K2Node", "PinFriendlyDelegatetName", "Event"),PinType.PinCategory="delegate",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(MemberParent="/Script/CoreUObject.Package'/Script/CommonInput'",MemberName="InputMethodChangedDelegate__DelegateSignature"),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=True,PinType.bIsConst=True,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_CustomEvent_0 756F44A0440B62C866619284C77D9197,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) End Object Begin Object Name="K2Node_CustomEvent_0" ExportPath="/Script/BlueprintGraph.K2Node_CustomEvent'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_CustomEvent_0'" CustomFunctionName="EnsureGamepadDetection" NodePosX=2672 NodePosY=-32 NodeGuid=F4AEB69B47BC6239C96C28998912CE62 CustomProperties Pin (PinId=756F44A0440B62C866619284C77D9197,PinName="OutputDelegate",Direction="EGPD_Output",PinType.PinCategory="delegate",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(MemberParent="/Script/Engine.BlueprintGeneratedClass'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD_C'",MemberName="EnsureGamepadDetection",MemberGuid=F4AEB69B47BC6239C96C28998912CE62),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_AddDelegate_0 CD7F596342AA60112F004EBA56DEDFB0,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=1FA523284FE58FDE1DBC71BBE5284265,PinName="then",Direction="EGPD_Output",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_IfThenElse_0 888A229B4BF925905D4051AC73AA78CA,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=E2B823D2497270BA3A0CFC91F04A749A,PinName="bNewInputType",Direction="EGPD_Output",PinType.PinCategory="byte",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.Enum'/Script/CommonInput.ECommonInputType'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="MouseAndKeyboard",AutogeneratedDefaultValue="MouseAndKeyboard",LinkedTo=(K2Node_EnumEquality_0 1AB9EF444600A9864DBBD681D8093A68,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties UserDefinedPin (PinName="bNewInputType",PinType=(PinCategory="byte",PinSubCategoryObject="/Script/CoreUObject.Enum'/Script/CommonInput.ECommonInputType'"),DesiredPinDirection=EGPD_Output,PinDefaultValue="MouseAndKeyboard") End Object Begin Object Name="K2Node_EnumEquality_0" ExportPath="/Script/BlueprintGraph.K2Node_EnumEquality'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_EnumEquality_0'" NodePosX=2928 NodePosY=43 NodeGuid=8FCEE7CA42F47A66F831FD98AE8A374B CustomProperties Pin (PinId=F7D5E23B4584FC4E57BFA9BD9E7BF825,PinName="ReturnValue",Direction="EGPD_Output",PinType.PinCategory="bool",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_IfThenElse_0 D7293014417A5CC1FBF57BBE149325F6,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=1AB9EF444600A9864DBBD681D8093A68,PinName="A",PinType.PinCategory="byte",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.Enum'/Script/CommonInput.ECommonInputType'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_CustomEvent_0 E2B823D2497270BA3A0CFC91F04A749A,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=B3C5C22B470867AB0A48A2A8494E2B1C,PinName="B",PinType.PinCategory="byte",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.Enum'/Script/CommonInput.ECommonInputType'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="Gamepad",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) End Object Begin Object Name="K2Node_IfThenElse_0" ExportPath="/Script/BlueprintGraph.K2Node_IfThenElse'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_IfThenElse_0'" NodePosX=3328 NodePosY=-16 NodeGuid=7FD2B4EB48A778750AF5AC920D42703C CustomProperties Pin (PinId=888A229B4BF925905D4051AC73AA78CA,PinName="execute",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_CustomEvent_0 1FA523284FE58FDE1DBC71BBE5284265,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=D7293014417A5CC1FBF57BBE149325F6,PinName="Condition",PinType.PinCategory="bool",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="true",AutogeneratedDefaultValue="true",LinkedTo=(K2Node_EnumEquality_0 F7D5E23B4584FC4E57BFA9BD9E7BF825,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=6555AD5E42F085622974A4B59724A6AE,PinName="then",PinFriendlyName=NSLOCTEXT("K2Node", "true", "true"),Direction="EGPD_Output",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_CallFunction_1 B82933D146459F174FE78DB19CB833EB,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=B004C4BA446EBC69AE23A0B0EDFBAEDE,PinName="else",PinFriendlyName=NSLOCTEXT("K2Node", "false", "false"),Direction="EGPD_Output",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) End Object Begin Object Name="K2Node_VariableGet_0" ExportPath="/Script/BlueprintGraph.K2Node_VariableGet'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_VariableGet_0'" VariableReference=(MemberName="PlayerOwner",bSelfContext=True) NodePosX=2832 NodePosY=-112 NodeGuid=7CB3279A4739B32DD0FEDA80352E9943 CustomProperties Pin (PinId=7F8C40CF4AD6D7529FFC6BA80967724B,PinName="PlayerOwner",PinFriendlyName=NSLOCTEXT("UObjectDisplayNames", "HUD:PlayerOwner", "Player Owner"),Direction="EGPD_Output",PinType.PinCategory="object",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.Class'/Script/Engine.PlayerController'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=True,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_GetSubsystemFromPC_0 7023F8FA49E9827FA2DAABA12E1D4E80,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=C6183C19405B4A29727CCEA25B80DC6D,PinName="self",PinFriendlyName=NSLOCTEXT("K2Node", "Target", "Target"),PinType.PinCategory="object",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.Class'/Script/Engine.HUD'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=True,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) End Object Begin Object Name="K2Node_CallFunction_1" ExportPath="/Script/BlueprintGraph.K2Node_CallFunction'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_CallFunction_1'" FunctionReference=(MemberName="HandleLocalAnyKeyInput",MemberGuid=3E0E222B41D4937801B1E9BC2FCEC8C1,bSelfContext=True) NodePosX=3536 NodePosY=-32 NodeGuid=43A5671840B4FCD260BEBBA0EE7480BB CustomProperties Pin (PinId=B82933D146459F174FE78DB19CB833EB,PinName="execute",PinToolTip="\nExec",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_IfThenElse_0 6555AD5E42F085622974A4B59724A6AE,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=ADEB07594E33134A18CEC6A64EE293B4,PinName="then",PinToolTip="\nExec",Direction="EGPD_Output",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=7D54E6084F761B4FABDCEE8ADF994FAD,PinName="self",PinFriendlyName=NSLOCTEXT("K2Node", "Target", "Target"),PinToolTip="Target\nSelf Object Reference",PinType.PinCategory="object",PinType.PinSubCategory="self",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=F2A1FA804343391597BF83BF536948CB,PinName="Pressed?",PinToolTip="Pressed?\nBoolean",PinType.PinCategory="bool",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="true",AutogeneratedDefaultValue="true",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=DADD34DA4825B2A00826658C86E2F2C5,PinName="Key",PinToolTip="Key\nKey Structure",PinType.PinCategory="struct",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.ScriptStruct'/Script/InputCore.Key'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="Gamepad_LeftY",AutogeneratedDefaultValue="None",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) End Object Begin Object Name="K2Node_CallFunction_0" ExportPath="/Script/BlueprintGraph.K2Node_CallFunction'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_CallFunction_0'" bIsInterfaceCall=True FunctionReference=(MemberParent="/Script/Engine.BlueprintGeneratedClass'/Game/EasyGameUI/Core/Utilities/BPI_EGUI_HUDInterface.BPI_EGUI_HUDInterface_C'",MemberName="HandleAnyKeyTriggered",MemberGuid=8D82AD064B27A7F5D587AA9F2E905902) NodePosX=3536 NodePosY=224 NodeGuid=8F18032247FFC8C767FB26998B22E940 CustomProperties Pin (PinId=A7E1D67F4AC59A0088643090A0963B24,PinName="execute",PinToolTip="\nExec",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=91FA6116433B53C9F6FC50AE8774DF9F,PinName="then",PinToolTip="\nExec",Direction="EGPD_Output",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=78C423F84AB43986253353B2A8ECD830,PinName="self",PinFriendlyName=NSLOCTEXT("K2Node", "Target", "Target"),PinToolTip="Target\nBPI EGUI HUDInterface Interface",PinType.PinCategory="interface",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/Engine.BlueprintGeneratedClass'/Game/EasyGameUI/Core/Utilities/BPI_EGUI_HUDInterface.BPI_EGUI_HUDInterface_C'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=AB036F4D4D181F4BF981E8BD8EDE26F7,PinName="Key",PinToolTip="Key\nKey Structure",PinType.PinCategory="struct",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.ScriptStruct'/Script/InputCore.Key'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=True,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="Gamepad_LeftY",AutogeneratedDefaultValue="None",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=7E3E3D264701722329C43F81D7F81AA5,PinName="InstigatorWidget",PinToolTip="Instigator Widget\nUser Widget Object Reference",PinType.PinCategory="object",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.Class'/Script/UMG.UserWidget'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=024A0F98434A9BD39DC53A9FE343E54D,PinName="ReturnValue",PinToolTip="Return Value\nEvent Reply Structure\n\nHandle Any Key Triggered",Direction="EGPD_Output",PinType.PinCategory="struct",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.ScriptStruct'/Script/UMG.EventReply'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) End Object Begin Object Name="K2Node_CallFunction_12" ExportPath="/Script/BlueprintGraph.K2Node_CallFunction'/Game/EasyGameUI/Core/BP_EasyMainGameHUD.BP_EasyMainGameHUD:EventGraph.K2Node_Composite_0.Ensure Gamepad Detection.K2Node_CallFunction_12'" FunctionReference=(MemberName="HandleLocalAnyKeyInput",MemberGuid=3E0E222B41D4937801B1E9BC2FCEC8C1,bSelfContext=True) NodePosX=4032 NodePosY=128 NodeGuid=9EBB780448797C31EFD0BEB055F8A3DB CustomProperties Pin (PinId=B82933D146459F174FE78DB19CB833EB,PinName="execute",PinToolTip="\nExec",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=ADEB07594E33134A18CEC6A64EE293B4,PinName="then",PinToolTip="\nExec",Direction="EGPD_Output",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=7D54E6084F761B4FABDCEE8ADF994FAD,PinName="self",PinFriendlyName=NSLOCTEXT("K2Node", "Target", "Target"),PinToolTip="Target\nSelf Object Reference",PinType.PinCategory="object",PinType.PinSubCategory="self",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=F2A1FA804343391597BF83BF536948CB,PinName="Pressed?",PinToolTip="Pressed?\nBoolean",PinType.PinCategory="bool",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="true",AutogeneratedDefaultValue="true",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=DADD34DA4825B2A00826658C86E2F2C5,PinName="Key",PinToolTip="Key\nKey Structure",PinType.PinCategory="struct",PinType.PinSubCategory="",PinType.PinSubCategoryObject="/Script/CoreUObject.ScriptStruct'/Script/InputCore.Key'",PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,DefaultValue="Gamepad_FaceButton_Bottom",AutogeneratedDefaultValue="None",PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) End Object Schema="/Script/CoreUObject.Class'/Script/BlueprintGraph.EdGraphSchema_K2'" Nodes(0)="/Script/BlueprintGraph.K2Node_Tunnel'K2Node_Tunnel_0'" Nodes(1)="/Script/BlueprintGraph.K2Node_Tunnel'K2Node_Tunnel_1'" Nodes(2)="/Script/BlueprintGraph.K2Node_GetSubsystemFromPC'K2Node_GetSubsystemFromPC_0'" Nodes(3)="/Script/BlueprintGraph.K2Node_AddDelegate'K2Node_AddDelegate_0'" Nodes(4)="/Script/BlueprintGraph.K2Node_CustomEvent'K2Node_CustomEvent_0'" Nodes(5)="/Script/BlueprintGraph.K2Node_EnumEquality'K2Node_EnumEquality_0'" Nodes(6)="/Script/BlueprintGraph.K2Node_IfThenElse'K2Node_IfThenElse_0'" Nodes(7)="/Script/BlueprintGraph.K2Node_VariableGet'K2Node_VariableGet_0'" Nodes(8)="/Script/BlueprintGraph.K2Node_CallFunction'K2Node_CallFunction_1'" GraphGuid=72CB7E7C4C40BFF11F550E9FA0F6E9A2 End Object BoundGraph="/Script/Engine.EdGraph'Ensure Gamepad Detection'" OutputSourceNode="/Script/BlueprintGraph.K2Node_Tunnel'Ensure Gamepad Detection.K2Node_Tunnel_1'" InputSinkNode="/Script/BlueprintGraph.K2Node_Tunnel'Ensure Gamepad Detection.K2Node_Tunnel_0'" NodePosX=2944 NodePosY=-221 bCanRenameNode=True NodeGuid=1781191446C435FCBDEBAFACB9D8CAC2 CustomProperties Pin (PinId=F076587E470BE7B05AFA36B9E90DFF59,PinName="then",Direction="EGPD_Output",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties Pin (PinId=7423DE6046C251E62141CB80BC4E357D,PinName="execute",PinType.PinCategory="exec",PinType.PinSubCategory="",PinType.PinSubCategoryObject=None,PinType.PinSubCategoryMemberReference=(),PinType.PinValueType=(),PinType.ContainerType=None,PinType.bIsReference=False,PinType.bIsConst=False,PinType.bIsWeakPointer=False,PinType.bIsUObjectWrapper=False,PinType.bSerializeAsSinglePrecisionFloat=False,LinkedTo=(K2Node_CallParentFunction_0 93D45B04486F9D7B5B66419424DFDD68,),PersistentGuid=00000000000000000000000000000000,bHidden=False,bNotConnectable=False,bDefaultValueIsReadOnly=False,bDefaultValueIsIgnored=False,bAdvancedView=False,bOrphanedPin=False,) CustomProperties UserDefinedPin (PinName="execute2",PinType=(PinCategory="exec"),DesiredPinDirection=EGPD_Output) End Object -
最终你应该得到如下图所示的折叠图表,其代码与下面图片中的完全相同
-
像这样将该节点接入 Begin Play 事件的执行流程末尾:
-
最后,打开项目设置(Project Settings),输入“游戏视口(Game Viewport)”,并确认
Game Viewport Client Class设置中选中的是CommonGameViewportClient
如果你要将该资源迁移到 UE5.7+,请进行附加设置(如果你是直接在 5.7+ 下载的资源,则无需此步骤)
UE5.7 附加设置¶
如果你下载该资源时使用的版本低于 5.7(5.3-5.6),现在要升级到 5.7+,则需要进行一处小修改,以使按键重新绑定和输入提示恢复正常工作。
如果你是直接为 5.7 或更新版本的引擎下载该插件,则无需执行此操作。
如果你在重启项目时遇到持续出现的 JSON 编译错误,请进行附加设置
JSON 编译错误修复¶
在极少数情况下(如果受到影响,通常很容易察觉),你在重启项目时可能会遇到 JSON 插件节点丢失的问题,即使该插件已经启用。(如果你只是忘记启用插件,重启项目应该就能修复节点;最坏的情况下,你可能需要重新就地下载该资源来修复它)
这可能由插件或 C++ 模块的加载冲突导致,你可以简单地进入 BP_EasyMainGameHUD,检查重启项目后是否出现编译错误或 JSON 节点丢失来进行确认。
如果遇到此问题,你可以通过修改 Json 插件的加载顺序(Load Order)来修复。
- 前往你的 Unreal Engine 安装目录,然后进入文件夹
[Engine version]\Engine\Plugins\JsonBlueprintUtilities - 进入该文件夹后,用文本编辑器打开
JsonBlueprintUtilities.uplugin文件 -
你应该会看到类似以下的内容:
-
将所有
"LoadingPhase"的值从"Default"修改为"PreDefault" - 重启项目并再次测试,你可能需要重新下载该资源才能获得干净且无错误的版本,但完成此修复后该问题应该不会再出现。
注意
Blueprint File Utilities 插件也可能出现类似问题,此时只需在 [Engine version]\Engine\Plugins\BlueprintFileUtils 文件夹中的 BlueprintFileUtils.uplugin 里重复上述步骤即可
系统测试¶
完成前面的所有步骤后,你可以测试该资源,看看它是否已正确集成并完全正常工作。
为此,请前往 EasyGameUI/Maps 并打开 L_EGUI_MainMenuDemoLevel。然后开始运行,看看主菜单是否正确显示。同时请确认在你按下运行或加载到任意新关卡时,左上角会出现以下日志 Easy Game Hud Initialized。
如果主菜单正常显示,并且你获得了全部正确的日志、没有出现下面列出的任何错误,我建议你稍微试用一下该系统(选项菜单、新游戏、拍照模式等),看看是否有什么地方出现异常。
在资源的演示关卡中导航时,几乎所有系统都应该是正常的。
反之,你可能会遇到各种问题或错误,以下是你最可能遇到的一些常见问题:
“缺失插件(Missing Plugins)”通知
如果你忘记启用必需的插件,可能会看到此弹窗,请按下“Enable Missing”按钮并重启项目。
然后回头查看项目设置步骤,确认你没有遗漏任何必需的插件或设置。
如果完成此步骤后资源仍无法正常工作,你很可能需要就地重新下载它。“严重错误:项目设置“Enable User Settings”不为 True。”
你可能忘记启用项目设置“Enable User Settings”,请回头查看项目设置步骤,确认你已应用所有必需的设置。
“严重错误:Game Instance 类未正确设置。”
你的 Game Instance 可能未正确设置,或未在项目设置中选中,请回头查看Game Instance 设置
“Easy Game HUD Initialized”完全没有显示(在你自己的关卡中游玩时)
你的 Game HUD 可能未正确设置,或未在你的 GameMode 中选中,请回头查看Game HUD 设置
支持
如果完成以上所有步骤后,你在集成过程中仍然遇到问题,请通过 discord 或电子邮件(nerwy.ytb@gmail.com)联系我,我很乐意为你提供帮助!











