返回 导航

UE5

hangge.com

UE5 - 控件蓝图使用详解11(将控件作为组件放入Actor类蓝图)

作者:hangge | 2025-12-24 08:43
    通过将 UI 控件组件放入 Actor 蓝图,我们可以轻松实现如悬浮血条、交互提示、动态道具等丰富的玩法与表现,使 UI 与游戏世界无缝融合。下面我将通过一个样例进行演示。

十一、将控件作为组件放入 Actor 类蓝图

1,创建控件蓝图

(1)在“内容浏览器”面板中单击鼠标右键后新建一个“控件蓝图”并命名为“UI_Name”。

(2)双击打开“UI_Name” 控件蓝图,在视口的右上角可以设置控件的尺寸,设置“模式”为“自定义”,“宽度”为 600,“高度”保持不变。

(3)在“控制板”面板中添加一个“文本”子控件,接着在“细节”面板中设置“外观 > 字体 > 尺寸”为 60

(4)接下来我们需要将“文本”子控件与一个函数绑定。在“细节”面板中打开“绑定”下拉列表,单击“创建绑定”按钮创建绑定。

(4)此时打开了一个函数蓝图,此函数的返回值决定了文本的内容。使用鼠标右键单击“Return Value”引脚,执行“提升为变量”菜单命令。

(5)在“细节”面板中设置“变量命名”为“Name

2,创建 Actor 类蓝图

(1)在“内容浏览器”面板中单击鼠标右键后新建一个“Actor”类蓝图并命名为“BP_Item”。

(2)双击打开“BP_Item”蓝图,在“组件”面板中添加一个“Widget”组件。

(3)在“细节”面板的“用户界面”卷展栏中设置“空间”为“屏墓”,“控件类”为“UI_Name

(4)在“我的蓝图”面板中单击“变量”按钮回新建一个变量,设置“变量命名”为“Name”,“变量类型”为“命名”,勾选“可编辑实例”与“生成时公开”选项。

(5)打开“事件图表”面板,拖拽中拖曳“Widget”组件到“事件图表”面板中并添加如下完整逻辑。
  • 因为默认的“Widget”节点不是指定的控件类,而是控件组件,所以需要使用“获取用户控件对象”节点得到用户控件的对象引用。添加一个“获取用户控件对象”节点,用于获取控件组件中实例化的控件对象。
  • 此时通过节点得到的内容不是创建的用户控件,需要使用“类型转换为 UI_Name”节点将用户控件转换到“UI_Name”蓝图的用户控件的子控件上,从“As UI Name”引脚输出的是对象的引用。

3,运行测试

(1)拖曳“BP_Item”蓝图到关卡中。

(2)在“细节”面板中设置“Name”为“椅子”。

(3)接着在这个 Actor 实例中添加一个静态网格体组件并赋予一个椅子模型。

(4)编译并保存后进入 PIE 运行模式,最终效果如下图所示。
评论

全部评论(0)

回到顶部