[UE4]BlueprintNativeEvent与BlueprintImplementableEvent的用途

本文详细解析了如何在C++和Blueprint中调用函数并相互调用,包括使用BlueprintNativeEvent和BlueprintImplementableEvent的用法,以及在蓝图中实现函数的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

keywords: C++ 调用 蓝图 函数 相互调用 

BlueprintNativeEvent

官方的解释是,如果定义函数UFUNCATION时使用BlueprintNativeEvent标识,表示期望该函数在蓝图被重写(override)(这里的重写指的是定义一个自定义事件Custom Event),同时又拥有C++的实现方法,那么定义函数时,除了自身的方法名以外,还需要加一个后缀_Implementation,并在C++实现这个函数“函数名_Implementation”,比如就这样定义:

/** Override in BPs to power up bombs. */
UFUNCTION(BlueprintNativeEvent, Category = "Game")
int32 AAAA();
int32 AAAA_Implementation();

这样定以后,会优先调用蓝图中的Event,如果蓝图中该Event没有方法体,则调用C++的方法_Implementation。

如果要在蓝图脚本中实现该函数,打开蓝图 -》 我的蓝图 -》 Function -》 Override,找到之前在代码中定义的函数:


 

BlueprintImplementableEvent

如果只是在C++中定义一个函数名且不需要函数体,函数体在蓝图中实现,则可使用 BlueprintImplementableEvent 函数。

 

官方文档:

BlueprintNativeEvent

https://docs.unrealengine.com/latest/INT/Programming/UnrealArchitecture/Reference/Functions/Specifiers/BlueprintNativeEvent/index.html

C++ and Blueprints

https://docs.unrealengine.com/latest/INT/Gameplay/ClassCreation/CodeAndBlueprints/index.html

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值