Blueprint —— 蓝图的使用(一)

目录

一,创建蓝图

二,创建函数

三,创建宏

宏库

四,设置和获得Actor引用

五,放置节点

六,折叠图表

七,连接节点

八,蓝图调试

断点


一,创建蓝图

  • 在内容浏览器中,点击 ADD ,在下拉菜单中选择 Blueprint Class;
    • 或直接在内容浏览器的空白处右击,在下拉菜单中选择 Blueprint Class;
  • 在内容浏览器中,右击资源,选择 Asset Actions / Create Blueprint Using This... 

 

二,创建函数

        函数是属于特定蓝图的节点图表,可被其他图执行或调用;函数有一个节点指定的入口点,包含单个exec输出引脚;当被另一个图表调用时,输出exec引脚被激活,从而连接的网络执行;

  • Self Function Calls,是属于蓝图本身的函数, 通过在该蓝图继承的类或父类中声明;
  • Other Function Calls,是属于除了该蓝图之外的其他对象或Actor的函数;
  • Pure Function Calls,是可以执行的特殊动作,不会直接影响对象; 所产生的结果不会对任何事物造成影响,只有将该结果进行赋值或使用该结果,才能对世界产生影响;

 

三,创建宏

        本质上,宏(Macros) 和蓝图节点中的可折叠图表(collapsed graph)相同;它们都有进入点和离开点;每个通道可拥有任意数量的执行或数据引脚;在其他蓝图和图表上使用时,这些引脚在宏节点上均为可见;

 

<think>嗯,用户这次明确询问UE5蓝图接口的使用方法,而且提供了三篇站内引用资料。从内容看,引用[1]解释了蓝图接口的定义和作用,引用[2]详细描述了具体操作步骤,引用[3]则强调了设计优势。用户应该是个UE5初学者,可能正在尝试实现蓝图间的通信功能。 注意到用户上次提问被系统示例带偏到了快速排序(笑),这次总算回归正轨。ta的需求很聚焦——要具体的操作指南。引用[2]的操作流程已经很完整,但需要更结构化:应该拆解为创建接口、实现接口、调用接口三个阶段,每个阶段补充引擎界面操作的细节。比如"添加函数"这步需要说明参数设置,"实现事件"要强调右键菜单的位置。 特别要注意引用[3]提到的设计哲学。用户在学会基础操作后,很可能会遇到模块解耦的实际问题,所以最后需要点出"降低耦合度"这个核心价值。操作步骤里第4步遍历查找接口的写法容易出错,得提醒Cast to转换的注意事项。 相关问题的设计要覆盖用户可能的后续需求:事件调度器是接口的替代方案,多人游戏场景则是常见应用痛点。第三个问题特意提到变量同步,因为这是新手使用接口时容易忽略的同步问题。 </think>以下是UE5蓝图接口的完整使用教程,结合引用资料逐步解析: ### 、创建蓝图接口 1. **创建资产** - 内容浏览器右键 → `蓝图类` → 选择`Blueprint Interface`并命名(如`BPI_Interaction`) 2. **添加函数** - 双击打开接口 → 点击`+函数`按钮 → 命名函数(如`Interact`) - 设置输入/输出参数(非必需)[^1][^2] ```mermaid graph TD A[创建蓝图接口] --> B[添加函数签名] B --> C[定义输入/输出参数] ``` ### 二、在蓝图中实现接口 1. **绑定接口到类** - 打开需要实现接口的蓝图(如角色蓝图) - 点击`类设置` → `细节`面板 → `已实现的接口` → 添加创建的接口[^2] 2. **实现接口函数** - 在`我的蓝图`面板 → 右键接口函数 → `实现事件` - 编写具体逻辑(如显示交互提示)[^2] ### 三、跨蓝图调用接口 1. **获取接口对象** ```python # 示例步骤: 1. 在调用方蓝图(如UI) 2. 事件图表添加:Get All Actors with Interface 3. 选择目标接口(如BPI_Interaction) ```[^2] 2. **执行接口函数** - 连接`For Each Loop` → `Cast to 接口` → 调用目标函数 - 注意:需先做接口类型转换(Cast)确保安全性[^2] ### 四、核心优势(设计层面) | **特性** | **直接通信** | **蓝图接口** | |----------------|-------------------|----------------------| | 耦合度 | 高(直接引用) | 低(通过契约) | | 可维护性 | 修改影响扩散 | 局部修改无影响[^3] | | 扩展性 | 需修改调用方 | 新类实现接口即可 | | 模块化程度 | 功能交叉 | 边界清晰[^3] | > **关键提示**:接口函数在实现类中会显示为绿色节点,未实现的调用会触发警告[^1] --- ### 常见问题解决 1. **接口未生效** - 检查所有Actor是否正确添加接口实现 - 确认Cast转换成功后再调用函数 2. **参数传递错误** - 确保调用方和被调用方参数类型完全匹配 - 使用`Make Literal`显式设置参数类型
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值