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);
相关推荐
金銀銅鐵5 小时前
带您看懂字节码指令(二):空循环里有什么
java·后端·ai编程
吴名氏.7 小时前
Java转AI Agent教程(第十三周)混合检索与重排
java·数据库·人工智能·ai·ai agent
.痞老板.8 小时前
java ee--多线程(进阶)
java·java-ee
深入云栈9 小时前
Netty 4.2.x 源码深度解析 (二十三):ByteBuf 核心设计 —— 索引、类型与零拷贝
java·后端·架构
wang_shu_mo_ran10 小时前
MyBatis 从入门到进阶(一)
java·spring·mybatis
量化分析码农12 小时前
股票历史数据的复权参数对照:多级别返回的字段与数值差异
java·javascript·后端
猫猫不是喵喵.12 小时前
从0到1创建一个微服务项目
java·数据库·微服务·1024程序员节
瑞雪兆丰年兮12 小时前
JavaWeb-day13-SpringBootWeb事务管理&AOP
java·开发语言·springboot·javaweb·事务·web·aop
曲径海盗12 小时前
Try-Except怎么用,3个追问解答在自动化下的应用
java·jvm·oracle
Cosolar13 小时前
极简智库:快速搭建你的开源项目教程阅读平台,让 docs/ 目录被更多人看见
java·架构·github