``` UFUNCTION(BlueprintImplementableEvent) void MyFuntion(); // Begin Class UMyClass Function MyFuntion static const FName NAME_UMyClass_MyFuntion = FName(TEXT("MyFuntion")); void UMyClass::MyFuntion() const { UFunction* Func = FindFunctionChecked(NAME_UMyClass_MyFuntion); // 5.5生成的代码相比5.3多了下面这行CLASS_Native,导致调用不到ProcessEvent if (!Func->GetOwnerClass()->HasAnyClassFlags(CLASS_Native)) { const_cast<UMyClass*>(this)->ProcessEvent(Func,NULL); } else { const_cast<UMyClass*>(this)->MyFuntion_Implementation(); } } //5.3 static FName NAME_UMyClass_MyFuntion = FName(TEXT("MyFuntion")); void UMyClass::MyFuntion() const { const_cast<UMyClass*>(this)->ProcessEvent(FindFunctionChecked(NAME_UMyClass_MyFuntion),NULL); } ```
Activity
[-]UE5.5.4 BlueprintNativeEvent 无法调用到Lua[/-][+]UE_5.5.4 BlueprintNativeEvent 无法调用到Lua[/+][-]UE_5.5.4 BlueprintNativeEvent 无法调用到Lua[/-][+]UE_5.5.4 BlueprintNativeEvent 无法从c++ call Lua[/+]xk-11 commentedon Apr 17, 2026
看起来是这个版本打开了Native 的优化,从源码层面关闭这个优化才可以。