UnLua访问C++属性、动态生成Actor

一、访问C++属性、动态生成Actor

1、在C++类MyBaseActor中新增蓝图可编辑属性:Name

cpp 复制代码
public:
	UPROPERTY(EditAnywhere)
	FString Name;

2、在继承自C++的蓝图子类BP_BaseActor中给Name赋值

3、在Lua中实现点击按钮动态生成Actor,并访问其Name属性

lua 复制代码
function WBP_FirstLua_C:Construct()
	self.btnTest.OnPressed:Add(self,WBP_FirstLua_C.OnClickTest)
end

function WBP_FirstLua_C:OnClickTest()
	local World = self:GetWorld()
	if not World then
		return
	end
	--加载蓝图类,注意文件路径格式:蓝图名.Lua类名
	local ActorClass = UE.UClass.Load("/Game/MyLuaTest/BP_BaseActor.BP_BaseActor_C")
	if not ActorClass then
		return
	end
	--动态生成一个actor
	local Rotation = UE.FQuat(1,1,1,1)
    local Translation = UE.FVector(1,1,1)
    local Scale = UE.FVector(1,1,1)
    local Transform = UE.FTransform(Rotation, Translation, Scale)
	local Actor = World:SpawnActor(ActorClass,Transform,UE.ESpawnActorCollisionHandlingMethod.AlwaysSpawn,self,self,"")
	if not Actor then
		return
	end

	self.Actor = Actor
	print("MyBaseActor'Name is "..self.Actor.Name)
end
相关推荐
曼巴UE53 小时前
UE C++ 字符串编码转码
c++·ue5
AI视觉网奇7 小时前
ue 蓝图 学笔记
笔记·ue5
AI视觉网奇1 天前
新版MD、UE5.6 服装同步、模拟
ue5
AA陈超1 天前
虚幻引擎5 GAS开发俯视角RPG游戏 P07-19.发送鼠标光标数据
c++·笔记·学习·游戏·ue5·虚幻引擎
DoomGT2 天前
Audio - UE5中的音效播放重启问题
游戏·ue5·游戏引擎·虚幻·虚幻引擎
AI视觉网奇2 天前
ue5 入门笔记
笔记·ue5
会思考的猴子3 天前
UE5 笔记敌人自动追踪
笔记·ue5
AI视觉网奇3 天前
Ue5 端上 搭建笔记
笔记·ue5
AA陈超4 天前
枚举类 `ETriggerEvent`
开发语言·c++·笔记·学习·ue5
曼巴UE54 天前
UE C++ UI的折叠动画,隐藏收缩经验分享
c++·ue5