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)相同;它们都有进入点和离开点;每个通道可拥有任意数量的执行或数据引脚;在其他蓝图和图表上使用时,这些引脚在宏节点上均为可见;

 

在 Unreal Engine 中,如果希望完全依赖蓝图而不涉及 C++ 来实现功能,可以通过以下几种方式完成复杂的游戏逻辑设计。以下是关于如何利用蓝图系统独立实现功能的具体说明: ### ### 使用事件图表构建基础逻辑 任何基于时间驱动的行为都可以通过 **Event Graph** 实现。例如,在角色移动过程中触发某些动作或者定时执行某段代码片段等操作均可以直接放置于 `Event Begin Play` 或者其他预设好的事件节点之后[^1]。 ```blueprint // Event Tick Example within Blueprint Editor Event Tick -> Set Variable (e.g., CurrentSpeed) based on conditions like InputAxisValue etc. ``` ### ### 创建自定义宏以重用常用模式 当发现某个特定处理流程频繁出现时,则应该考虑将其封装成可重复使用的单元——这就是所谓的“Macro”。 Macros 不仅有助于提高工作效率还能增强项目的清晰程度因为它们使得原本冗长杂乱无章的部分变得简洁明了易于理解维护[^2]. #### #### 宏的应用场景举例 假设我们需要不断检查玩家是否按下了跳跃键并且根据当前状态决定能否再次跃起的话就可以建立这样个名为CanJumpAgain的macro: ```blueprint InputAction_Jump Pressed --> Get Character Movement Component --> Is Falling? No->Yes Output True Else False ``` 随后只要把这个宏拖放到任意需要判断的地方即可自动获得致的结果反馈无需重新编写相同的判定语句多次. ### ### 运用接口促进不同对象间的沟通交流 即使全部采用蓝图方式进行开发也难免会遇到跨模块协作的情况比如让敌人感知到主角靠近后开始追击之类的互动需求这时就需要借助Interface机制来达成目的[^3]. 具体做法是在公共目录下新建个Interfaces分类下的空白Blueprint Interface然后添加若干抽象方法供后续关联双方共同遵循约定实施调用. ```blueprint // Define an interface called 'IPerception' Add Function: SensePlayer() returns bool; // In Enemy AI BP, implement IPerception by adding custom logic inside implemented function block. SensePlayer Implementation Block { ... } ``` 最后记得将此interface应用至相关联的目标身上这样才能激活对应的功能选项卡从而顺利完成预期的任务安排哦! --- 以上便是纯靠蓝图就能搞定大部分常规性工作的核心思路总结啦~当然随着项目规模扩大单纯依靠图形化界面或许还是会面临些局限之处不过对于初学者而言已经足够应付绝大多数日常所需咯~
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值