UE5 c++ 暴露变量和方法给蓝图

文章目录

暴露变量到属性面板

使用UPROPERTY()宏标记属性,使用括号里的参数确认不同的表现形式

cpp 复制代码
	//UPROPERTY(EditDefaultsOnly) //只能在蓝图的"类默认值"里编辑
	//UPROPERTY(EditInstanceOnly) //只能实例化后在属性面板编辑
	//UPROPERTY(EditAnywhere) //类的默认值和实例化后都可以编辑
	//UPROPERTY(VisibleDefaultsOnly) //只能在蓝图的"类默认值"里可见,不能编辑
	//UPROPERTY(VisibleInstanceOnly) //只能实例化后在属性面板里可见,不能编辑
	UPROPERTY(VisibleAnywhere)  //类的默认值和实例化后都可见,不能编辑
	float Amplitude = 0.25f;

暴露后,会显示在类名分类下方,我现在的类名就叫"Item"

暴露变量到蓝图节点

变量必须在public修饰符下

cpp 复制代码
	//UPROPERTY(EditAnywhere,BlueprintReadOnly)//只读
	UPROPERTY(EditAnywhere,BlueprintReadWrite)//可读可写
	float Amplitude = 0.25f;//振幅

为变量分组

cpp 复制代码
UPROPERTY(EditAnywhere,BlueprintReadWrite,Category="正弦函数")
	float Amplitude = 0.25f;//振幅

暴露私有变量到蓝图

csharp 复制代码
private:
	UPROPERTY(VisibleAnywhere,BlueprintReadOnly,meta=(AllowPrivateAccess="true"))   //使用Meta
	float runningTime; 

暴露方法

cpp 复制代码
	//UFUNCTION(BlueprintCallable) //普通方法
	UFUNCTION(BlueprintPure) //纯函数
	float TransformSin(float Value);
相关推荐
现任明教教主~42 分钟前
Thinkphp站群蜘蛛池SaaS系统YanyvSEO含多用户/积分/六大引擎计费/易支付对接
java·开发语言·spring
一条破秋裤1 小时前
Linux 线程创建:pthread_create 与基本回收
java·linux·运维
布吉岛的石头2 小时前
Java 程序员第 49 阶段5:BERT 预训练目标 MLM+NSP 的工程含义
java·人工智能·深度学习·bert·transformer
码匠许师傅2 小时前
【C++三方组件】cpp-httplib:一个头文件起 HTTP 服务
开发语言·c++·http
摇滚侠2 小时前
《On Java 中文版 基础卷》阅读笔记 对象无处不在 03
java·笔记·python
无名猿3 小时前
new/delete 与 malloc/free:为什么绝对不能混用
c++·内存管理·现代c++·踩坑记录
二十雨辰3 小时前
[学成在线]-01项目背景
java
弈栈录4 小时前
Java AI 应用的异步化与高并发设计
java·后端·架构
落魄实习生4 小时前
Agent Scope Java 2.x 系列【2】 ReActAgent
java·开发语言
艸肅4 小时前
Ubuntu 安装 JDK (含手动安装)
java·ubuntu·jdk