快看!UE5蓝图宝典
Part1前言
本文是inveta团队整理的关于UE5的蓝图相关概念和使用方法,适合蓝图初学者入门。
Part2基本概念
1GameInstance (游戏实例)
它的生命周期是,游戏开始一直到游戏结束都一直存在,所以用它可以实现共享不同关卡中的数据
我们可以在上图中的游戏实例类里面更改自定义的游戏实例类。
2GameMode(游戏模式)
游戏一些玩法,游戏的特性,该游戏关卡中的一些特定的方法可以封装在这里面,然后该关卡中的蓝图可以通过获取游戏模式来调用它里面的特定方法,一个关卡一个。
我们可以在指定的关卡的 世界场景设置-游戏模式-游戏模式重载 里面,把它更改成自定义的游戏模式蓝图类。
3Pawn
玩家可控制的对象,只要定义了一个Pawn类,你就可以对它进行控制。比如我们的视角旋转等
4HUD(屏幕显示)
用于显示屏幕上要显示的东西,比如文本框等界面
5PlayerController(玩家控制器)
接收玩家输入的控制信息,比如鼠标,键盘等
6Actor
可放置到场景中的都是actor。
7Character(角色)
拥有移动组件的类,创建它的时候,可以在看到里面会多添加一个 “角色移动”的组件,也只有它能有这个组件,一般一个游戏里的主角用它
8ActorComponent(actor 组件)
用于封装一些看不见的信息组件,比如一个物体的属性。意思就是只有数值类的东西,没有实际的物体
9SceneComponent(场景组件)
它和actor组件相反,它是可见的能放入场景中的物体。如果要它的详细信息,通过细节面板查看
10Object
是所有的基类
11BluePrint Function Library (蓝图函数库)
用于封装一系列的函数,可以用来封装一些公用的函数,类似于一个工具类。蓝图函数库里面的函数是全局可见的,意思就是在其他蓝图类中可以直接调用里面的函数。
12BluePrint Interface (蓝图接口)
一个蓝图接口是一个或多个Function的集合,只有函数声明没有具体实现,可以被添加至别的蓝图中,任何添加了接口的蓝图都可以保证具有这些功能,在每个添加了蓝图接口的蓝图类中,都可以为其添加功能实现。类似编程中的接口概念。允许不同类型的对象通过一个公共接口来访问他
定义蓝图接口
通过Blueprints中的Blueprint Interface来创建一个蓝图接口
在蓝图接口中添加自己需要的接口方法
添加接口需要输入参数和返回值类型,Inputs输入参数,Outputs返回数据,也可以无需输入参数和返回数据。
使用蓝图接口
在需要实现接口的蓝图类中打开Class Settings
在Details(明细)里面找到
点击 Add 添加定义的接口
这时候在图表列表中会展示我们接口定义的方法,因为这是纯蓝图的,可以被完全兼容使用
● 接口的调用
蓝图接口的使用,需要注意需要传递Target,也就是接口执行的对象,该对象必须已经实现了这个接口。然后执行这个接口里面的方法,蓝图中任意地方都可以调用接口
13BluePrint Macro Library (蓝图宏库)
它是一个宏或者多个宏的集合。首先我们需要明白宏的概念,简单来说,宏也相当于一个功能,和函数,事件一样。
它们的区别
● 函数允许有一个执行引脚和一个输出引脚,事件只允许有一个执行引脚,宏允许有多个执行引脚和多个输出引脚。
● 函数和宏允许有返回值,而事件不允许有返回值。
● 事件和宏中可以使用UE提供的延迟节点(如:TimeLine),函数不可以。
● 函数和事件可以跨蓝图类访问,而宏只能在定义的蓝图类中调用。
● 函数可以被继承,而宏不可以被继承,子类无法使用父类中定义的宏。
● 宏库可以跨蓝图类访问
● 函数和宏的调用是同步执行,需要等待函数或宏内部逻辑执行完毕才进行接下来的逻辑,事件是异步执行,触发事件的地方无需关心事件内部的逻辑,只需要触发事件即可执行接下来的逻辑。
Part3蓝图通信
14直接通信
指的是两个蓝图类相互直接调用里面的方法或变量 比如:
通过 "获取类的所有actor" 获取到 自定义的BP_SmallDevice这个蓝图类,然后就可以调用BP_SmallDevice里面定义的函数,变量等。
15类型转换
把一个类型转换成指定的类型 如:
16接口
指声明函数,但是不实现功能,具体功能让添加了这个接口的蓝图类来实现,也可以通过查看哪些子类实现了这个接口,哪些没有实现,然后来区别处理不同的功能
17事件分发器
简单来讲就是事件广播,只要某个类绑定了这个事件,都能连接上这个事件方法继续下面的操作
执行流程
1、发信者利用事件分发器,发送消息到世界。
2、发信者无法从接收者那里得到任何的信息(即返回值),也不知道谁接收到了消息。
3、带有消息接收器的人,会在接收到消息后执行后续的操作。
使用分发器
发信者蓝图中,把刚建立好的事件分发器拖入到编辑器中,选择Call, 连接到某个事件后面,可以是输入事件(鼠标,键盘),也可以是自定事件,之后出一个调用信号。接收者蓝图中,先获取发信者的引用,然后绑定发信者蓝图中的事件分发器,绑定分发器的节点中的 Event引脚连接一个自定义的事件,然后执行后续操作。
思维导图
Part4蓝图常用节点
18流程控制节点
● Branch 分支
● Delay 延迟
● Do Once 执行一次
● Do N 执行N次
● DoOnce MultiInput 执行一次多次输入输出
● Filp Flop 翻转
● Gate 门
● MultiGate 多门
● Retriggerable Delay 可触发延迟
● Sequence 序列
19Branch
它类似于 if else 语句,Condition指的是语句中的判断条件,
20Delay
它用于延迟执行后面的动作,Duration指的是需要延长多少时间,单位秒
21Do Once
指首次命中后执行一次,重置后可以重新执行一次。Reset 重置 选中 Start Closed 表示开始时不能直接执行,需要重置了后才能执行。例如:
按了1键后,会在屏幕中打印Hello字符串,如果继续按1 ,屏幕不会有输出,需要按过2重置后,再按1才会有输出。图中由于勾选了 Start Closed,所以第一次按1 的时候,没有打印Hello,需要先按下2 ,然后再按 1 才会又输出。
22Do N
指执行N次,Enter 表示输入,N 表示可执行的次数,Reset 表示重设,Exit 表示输出,Counter 表示当前执行的次数。示例:
按数字1键的时候,执行字符串打印,连续按3次后,都能打印字符串,超过3次后,无法打印了,按数字键2后,又可以继续连续执行3次。
23DoOnce MultiInput
它类似于switch语句,In Out 一一对应,A In(A输入) 对应 A Out (A输出),Reset In (重置输入)对应 Reset Out(重置输出),如果需要添加一对输入输出,点击 添加引脚即可。示例:
按下 1,2,3输入对应的字符串,按下Z ,输出刷新。每执行一次,就需要重设一次,才能再次执行。
24Filp Flop
Filp Flop 可用于切换状态,is A 表示从 A 开始输出 示例:
按下 1 打印字符串 输出A,再次按下 1 ,打印字符串 输出B
25Gate
Enter:输入 Open:打开门 Close:关闭门 Toggle:切换门状态 Start Closed:初始门状态,开始时无法直接输出,相当于 Close 状态。需要切换到 Open 状态才能输出 只有门开启时可以输出执行
26MultiGate 多门
Reset:重置 Out 0:输出节点0 Out 1:输出节点1 ... Start Index:初始下标 Is Random:是否随机, 打勾后表示随机输出 Loop:是否循环 示例:
按下1 ,随机打印字符串。
27Retriggerable Delay 可触发延迟
和Delay功能差不多,区别在于该节点再次触发会重新计时
28Sequence(序列)
可以同时进行多个输出,一般都是Then0 执行完后执行Then1,依次类推。使用它可以把一个复杂的流程分成几部分来写,这样使得条理清晰,方便维护。
Part5总结
本文主要介绍了UE5蓝图的相关概念,并梳理出了蓝图通信以及常用节点的使用方法。
Part6关于IN VETA
IN VETA是一支由建模、美术、UE5组成的年轻团队。
我们的开源项目:
https://github.com/inveta
我们致力于三维数字孪生技术分享与研发。
欢迎与各界朋友一起探讨技术与商务合作,一起推动数字孪生的发展。
快看!UE5蓝图宝典相关推荐
- 【游戏编程扯淡精粹】UE5 蓝图
[游戏编程扯淡精粹]UE5 蓝图 最近新学蓝图编程..还没看蓝图VM代码,有些点不保证准确 本文主要是从使用角度,分析你为什么需要学习蓝图,蓝图适合做什么,不适合做什么 最后 Bonus,跟一下 Bl ...
- 使用第三方SDK(如微信、qq、快看、头条等),调用接口405 Method Not Allowed
使用第三方SDK(如微信.qq.快看.头条等),调用接口405 Method Not Allowed 错误描述:postman请求正常,但客户端调用后接口没有反应,但返回了405错误. 解决方法:第三 ...
- 快看漫画大数据平台的模型思维与用户增长实践
本文根据快看漫画屈世超老师在DataFunTalk数据主题技术沙龙活动"大数据从底层处理到数据驱动业务"中分享的<大数据平台的模型思维与用户增长实践>编辑整理而成,在未 ...
- 月蚀动漫获快看漫画600万元A轮战略投资,走国漫精品化路线
11月5日消息,月蚀动漫宣布获得快看漫画600万元A轮战略投资. 据了解,月蚀动漫曾于2017年1月获得原力创投的百万级种子轮投资,2018年1月获得英诺天使基金的百万级天使轮投资. 据月蚀动漫创始人 ...
- 靖江机器人怎么样_铁饭碗不保?靖江可能消失的12大职业!快看有你的工作没?...
原标题:铁饭碗不保?靖江可能消失的12大职业!快看有你的工作没? 无人飞机.无人驾驶.智能机器人.... 你能想象这些充满现代感的高科技 正在改变我们的生活吗? 在科技高速发展的今天 人工智能逐渐能够 ...
- 山东师范大学志愿推荐系统邀请码_快看点邀请码填写HGC1QK快看点邀请码填写HGC1QK快看点邀请码大家千万不要乱填写哦...
快看点邀请码填写HGC1QK 快看点邀请码填写HGC1QK快看点邀请码大家千万不要乱填写哦 快看点官网下载是一款非常好玩的软件,喜欢此类风格的用户可以体验一下哦. 快看点官网下载特色系统: 如此好玩的 ...
- 华科计算机复试ccf成绩,新鲜速递!刚拟录取华科学妹总结的复试攻略,快看
原标题:新鲜速递!刚拟录取华科学妹总结的复试攻略,快看 今天给大家分享一位19考研学妹的面试经验,她报考华中科技大学,已拟录取! 复试已落幕,在火车上收到拟录取通知后,感觉自己就像一个凯旋而归的战士. ...
- 人人视频从 App Store 下架整改,并下线“快看”相关内容,网友:我追的剧怎么办?...
今日,据多位网友爆料,人人视频已经从App Store下架,所有视频下架,并下线"快看"相关内容.相关话题迅速登上微博热搜. 对于此问题,小编去App Store下载发现的确已经搜 ...
- 快看漫画个性化推荐探索与实践.pdf(附下载链接)
今天给大家分享<快看漫画个性化推荐探索与实践.pdf>,文末附下载链接. 更多细节请回复"9017",下载报告全文查看. 「 更多干货,更多收获 」 快看漫画个性化推荐 ...
最新文章
- Mongodb 添加删除分片与非分片表维护
- Router通过DHCP上网配置方法
- AdaBoost算法特性
- mvc的Controller返回值类型ActionResult详解
- 剑指offer--替换空格
- Cocos2d-x中常用宏的作用
- PREV-55 小计算器 (进制转换)
- ASP.NET 路由实现页面静态化(附在线Demo和Source)
- Python爬虫搜索全网音乐并下载
- SDK接入学习(一):PlayerSetting详解(PC、Mac、Linux)
- sagemath_同余运算总结
- SD卡分区Linux,使用MiniTool Partition Wizard对SD卡进行EXT4格式分区
- PVID和VID的理解
- 产品三维展示|3D可视化解决方案|产品3D个性化定制案例分享
- JS-计算日期差值;计算日期之间的月数
- Virtual Vertex Muster9—3D渲染农场管理软件
- 安卓键盘加上数字_安卓键盘键值对照表
- 反爬虫爬取网易云歌单
- 视频号推广小程序是什么;助你快速引流变现;丨国仁网络资讯
- 网络优化工程师的工资到底靠谱吗
热门文章
- Scalable IO in Java(Reactor模式)
- 代码随想录--哈希表--三数相加题型
- 运行一个c语言程序主要包括哪些步骤,运行C语言程序的步骤.doc
- 用树莓派在B站24小时直播音乐
- 秒杀系统(1)——秒杀功能设计理念
- linux 日志回滚,Linux 下的日志回滚机制探讨
- vue引用qrcodejs2生成、下载二维码、复制到剪贴板
- C/C++获取安卓手机IMEI编号demo
- Logo Design: Illustrating Logo Marks 标志设计教程 Lynda课程中文字幕
- 20181127 周二 日记