使用蓝图组件

  • 蓝图组件 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" 节点访问)。
相关推荐
Kang.Charles10 小时前
UE游戏性能优化归结(基于UE5环境)
游戏·ue5
吴梓穆11 小时前
UE5 Invideo 插件,拉取rtsp视频流
ue5
曼巴UE52 天前
Unlua 官方案例
c++·ue5·lua·ue
zhangzhangkeji2 天前
(29)UGameInstance 、UGameInstanceSubsystem 与 UGameState 的区别,一言
ue5
电子云与长程纠缠7 天前
UE5 两种方式实现蓝图编辑器下Tick
ue5
netcy7 天前
UE5 小部件 组合框(键)ComboBox (Key)
ue5
二DUAN帝8 天前
态势仿真推演系统 AFSIM+UE 架构选型
qt·ue5·afsim
maplewen.10 天前
【UE】GAS Gameplay Ability
ue5
帅_shuai_10 天前
UE5.6 Slate独立程序——初始化空白Slate环境
ue5
吴梓穆10 天前
UE5 c++ 模板函数
java·c++·ue5