使用蓝图组件

  • 蓝图组件 blueprint component为啥不能set actor location
  1. 组件不是 Actor,没有 "自身位置" 的概念 组件(如 Scene Component、Mesh Component 等)是依附于 Actor 存在的 "附属物",它本身不是独立的 Actor,因此没有 "世界空间位置"(World Location)的属性,只有 "相对位置"(Relative Location)------ 即相对于其所属 Actor(或父组件)的位置。而Set Actor LocationActor 类的函数,作用是移动整个 Actor(包括其所有组件),组件本身并不具备这个函数。

如何间接实现类似需求?

如果需要通过组件来移动其所属的 Actor,可以分两步:

  1. 在组件中通过**Get Owner**节点获取它所依附的 Actor(返回值是一个 Actor 对象);
  2. 对获取到的 Actor 调用Set Actor Location,即可移动整个 Actor(包括该组件)。

那添加了蓝图组件的actor能继承它暴露的变量么?

举例说明:

假设你有一个蓝图组件 BP_MyComponent,其中暴露了一个公开变量 MyValue(整数)。当 Actor BP_MyActor 添加了这个组件后:

  • 错误方式 :在 BP_MyActor 中直接拖拽 MyValue 变量使用(无法直接访问,因为变量属于组件,而非 Actor)。
  • 正确方式
    1. BP_MyActor 的蓝图中,添加 Get BP_MyComponent 节点(获取组件实例);
    2. 从该组件节点的输出引脚中,找到 MyValue 变量,直接连接使用(或通过 "获取 MyValue" 节点访问)。
相关推荐
mengzhi啊2 天前
UE5关卡切换 传统加载(阻塞)vs流式加载(非阻塞)。还有加载关卡3种办法
ue5
电子云与长程纠缠2 天前
UE中使用TGuardValue与TInlineComponentArray数据结构
开发语言·数据结构·学习·ue5·游戏引擎
Duo1J4 天前
【UE】Slate 编辑器工具开发03 - 节点编辑器 (EdGraph)
ue5·编辑器·游戏引擎·ue4
directx3d_beginner5 天前
26,怪物受击接口改为C++
ue5
远离UE47 天前
UE5 UV邻接 Niagara潜水模拟 学习笔记
ue5·uv
AA陈超7 天前
005 T03 — 角色基类与移动系统 详细功能设计文档
ue5
AA陈超7 天前
004 T02 - 俯视角摄像机系统 设计文档
网络·c++·ue5·虚幻引擎
AA陈超8 天前
006 T03 — 蓝图操作指南
c++·游戏·架构·ue5·github·虚幻引擎
Duo1J10 天前
【UE】Slate 编辑器工具开发01 - Slate语法 & 常用控件
ue5·编辑器·游戏引擎·ue4
朗迹 - 张伟10 天前
UE5.7 PCG从入门到精通系列课程【第五课:PCG沿一条样条线生成物体】
ue5·pcg