【UE4】函数

函数宏

       UFUNCTION()宏负责将c++函数公开给反射系统

       BlueprintCallable

该函数可在蓝图中被调用(将其公开给蓝图虚拟机)

BlueprintImplementableEvent

       该函数须在蓝图中实现,c++代码中不需要实现定义;该方法让c++代码能够调用蓝图中定义的函数

BlueprintNativeEvent

       提供c++默认实现,同时仍允许蓝图覆盖此方法

       期望该函数在蓝图被重写,同时又拥有c++的实现方法,那么定义函数时,除了自身的方法名外,还需要加一个后缀_Implementation,并在c++实现这个有后缀的函数。这样定义以后,会优先调用蓝图中的Event,如果蓝图中该event没有实现,则调用C++的方法

UFUNCTION(BlueprintNativeEvent)
int32 AAAA();
int32 AAAA_Implementation();

BlueprintPure

纯函数

原文地址:https://www.cnblogs.com/mu-ye/p/11769687.html

时间: 2024-10-16 00:45:35

【UE4】函数的相关文章

UE4 Pure函数的特点

蓝图里的Pure函数跟正常函数的区别是:Pure函数在它连接到的正常函数执行的时候才执行,正常函数按照连接的顺序执行. Pure函数不会改变游戏中其他的变量,所以getter和其他一些纯计算的函数一般设置为pure.这个特点跟C++的const函数很类似,所以在UE4的c++中,将一个const的函数暴露给蓝图,也会是一个pure函数.同时也可以使用UFUNCTION(BlueprintPure)将一个函数暴露为Pure函数.

[UE4插件使用-问题合集-02] error C4458: declaration of 'ModuleIndex' hides class member 函数参数使用的参数名字与所在类中的某个变量名字重名了

error C4458 函数参数名与所在类的变量名重名 问题描述: 解决过程: 我这边报错的那行是宏定义,所以要找到宏定义处,是放到另一文件中的,可以看到这个宏定义是定义了函数的: 可以看到这个函数形参有一个是"ModuleIndex",没错,就是它与类中某个变量同名的.类中的那个同名变量我这里就不找了,你们知道就行了.实际上这样的C++语法是没有问题的,内层作用域中与外层作用域中同名的变量会隐藏外层的同名变量,但可能同样是版本的原因,新版本的UE4(我这里是4.24)对于这种情况视为

[UE4]C++调用蓝图函数:BlueprintImplementableEvent函数说明符用法

用BlueprintImplementableEvent标明的函数在C++代码中不需要有方法体,方法体在蓝图中实现. 用法: 1,现在C++头文件中定义函数名 UFUNCTION(BlueprintImplementableEvent) void OnDepleted(); 2,在蓝图中Add Event,找到对应的函数名,创建后即可实现具体逻辑 3,最后可以在自己的C++代码中调用该方法,这样就会自动调用蓝图函数 void MyActor::OnPressed() { OnDepleted()

[UE4]蓝图函数库小结

蓝图函数库的功能非常强劲,如果在项目中使用的话有时能达到事半功倍的效果. 蓝图函数库,Blueprint Function Library.可以非常方便的将代码中的函数暴露给所有的蓝图使用,同时也提供了很好的代码复用性.完成的蓝图函数库可以非常轻易的在其他项目中使用或者共享给其他人.由于在函数库中定义的所有函数都能在其他的蓝图中访问,可以说是和单例模式的C++代码接合的天然素材.也可以防止为了定义一些泛用的函数而频繁的使用接口继承. 使用起来也是非常的简单明了.类似下面的代码就可以完成一个蓝图函

Ue4中的框选函数

1 void AHUD::GetActorsInSelectionRectangle(TSubclassOf<class AActor> ClassFilter, const FVector2D& FirstPoint, const FVector2D& SecondPoint, TArray<AActor*>& OutActors, bool bIncludeNonCollidingComponents, bool bActorMustBeFullyEnc

[UE4]小技巧:自动添加函数返回值

将一个变量拖放到返回节点上面会自动创建响应类型的返回值 原文地址:https://www.cnblogs.com/timy/p/9819245.html

当Lantent函数碰到BehaviorTree的Abort

UE4中的BehaviorTree(BT),有四种流控制的方式.如下图.每一个选项的作用可以参看链接,本文就不再复制粘贴.讲一个与本文相关的选项,Self,这个选项会一直进行Decorator节点的判断,如果条件不满足,它会立即终止. 而Lantent函数是UE4的蓝图系统中,最接近Unity协程概念的一个东西.Lantent函数最简单的例子就是Delay节点.Lantent函数只能在蓝图中的Event中使用,而不能在蓝图中的函数中使用.Lantent函数保存调用Delay时的Context,当

用UE4来做Zego即构的房间列表

Zego即构是一家做直播的服务商,Zego即构自己的房间列表,本文只是测试功能用,相应代码并没完全测试,请选择性参考. 我们在UE4中来实现一下,我感觉这个过程有点意思,UE4中C++与蓝图和UI的互相通信基本全部用到了. Zego即构没有专门的UE4插件,所以我们主要逻辑全部在C++中,蓝图只是辅助. 首先,我们定义一个房间结构,因为要想UE4中C++和蓝图可见可用,我们要用C++实现,并实现特定的写法让蓝图知道. USTRUCT(BlueprintType) struct FRoomBlue

UE4新手编程之代码初试

虚幻4中常用的按键和快捷键 虚幻4中有一些按键和快捷键很常用,牢记它们并运动到实际的项目开发中,将会大大地提高你的工作效率和使得工作更简便快捷.下面将列举它们出来: 按键 动作 鼠标左键 选择actor 鼠标左键+拖动 前后移动和左右旋转摄像头 鼠标右键 选择actor并打开右键菜单 鼠标右键+拖动 旋转摄像头方向 鼠标左键+鼠标右键+拖动 摄像头上下左右移动 鼠标中键+拖动 摄像头上下左右移动 滑轮向上 摄像机向前移动 滑轮向下 摄像机向后移动 F 聚焦选中的actor 箭头方向键 摄像机前后