UE5 蓝图介绍

# 蓝图类型

### 关卡蓝图
**关卡蓝图(Level Blueprint)** 是一种专业类型的 **蓝图(Blueprint)**,用作当前关卡的全局事件图。
与整个级别相关的事件,或关卡内Actor的特定实例, 用于以函数调用或流控制操作的形式触发操作序列。
关卡蓝图还提供了关卡流送和[Sequencer](https://docs.unrealengine.com/5.0/zh-CN/real-time-compositing-with-sequencer-in-unreal-engine)的控制机制, 以及将事件绑定到关卡内的Actor的控制机制。

### 蓝图类
**_Blueprint Class(蓝图类)_**, 一般缩写为 **_Blueprint(蓝图)_**,是一种允许内容创建者轻松地基于现有游戏性类添加功能的资源。
实际上,这些类蓝图定义了一种新类别或类型的Actor,这些Actor可以作为实例放置到地图中, 就和其他类型的Actor的行为一样。

### 纯数据蓝图
**Data-Only Blueprint(仅包含数据的蓝图)** 是指仅包含代码(以节点图表的形式)、变量及从其父类继承的组件的类蓝图。
仅包含数据的蓝图允许您调整及修改继承的属性,但是不能添加新元素。从本质上讲,这些蓝图是原型的替代物,设计人员可以使用它们来调整属性或者设置具有变种的项目。

### 蓝图接口
**蓝图接口(Blueprint Interface)** 是一个或多个函数的集合 - 只有名称,没有实施 -  可以添加到其他蓝图中。
在本质上,这类似于一般编程中的接口概念, 它允许多个不同类型的对象通过一个公共接口 共享和被访问。
简单理解,蓝图接口允许不同的蓝图类间彼此共享及发送数据
内容创建者可以通过编辑器以与其他蓝图类似的方式创建蓝图接口, 但它们仍有一定的局限性,原因在于以下操作不可执行
-   添加新变量
-   编辑图表
-   添加组件

### 蓝图宏库
**蓝图宏库(Blueprint Macro Library)** 是一个容器,它包含一组宏或自包含的图表,这些图表可以作为节点放置在其他蓝图中。它们可以节省时间,因为它们可以存储常用的节点序列,包括执行和数据传输所需的输入和输出。
宏在引用它们的所有图表之间共享,但是它们会自动扩展到图表中, 就像它们在编译期间是一个折叠节点那样。这意味着蓝图宏库不需要编译。但是, 对宏的更改仅反映在重新编译包含这些图表的蓝图时 引用该宏的图表中。

### 蓝图工具
**蓝图工具**(简称 **Blutility**),是用于执行编辑器行为或延展编辑器功能的纯编辑器蓝图。其可将不带参数的[事件](https://docs.unrealengine.com/5.0/zh-CN/events-in-unreal-engine)作为 UI 按键公开, 并能执行对 _蓝图_ 公开的任意函数,同时对视口中当前选定的 Actor 集产生作用。

# 蓝图剖析

### 组件窗口
了解组件(Components)后,**蓝图编辑器(蓝图编辑器)** 中的 **组件(Components)** 窗口允许您将组件添加到蓝图。这提供了以下方法: 通过胶囊组件(CapsuleComponent)、盒体组件(BoxComponent)或球体组件(SphereComponent)添加碰撞几何体, 以静态网格体组件(StaticMeshComponent)或金属网格体组件(SkeletalMeshComponent)形式添加渲染几何体, 使用移动组件(MovementComponent)控制移动。还可以将组件(Components)列表中添加的组件 指定给实例变量,以便您在此蓝图或其他蓝图的图表中访问它们。

### 构造脚本
创建蓝图类的实例时,**构造脚本(Construction Script)** 在组件列表 之后运行。它包含的节点图表允许蓝图实例执行初始化操作。构造脚本的功能可以非常丰富,它们可以执行场景射线追踪、设置网格体和材质等操作,从而根据场景环境来进行设置。例如,光源蓝图可判断其所在地面类型,然后从一组网格体中选择合适的网格体, 或者,栅栏蓝图可以向各个方向射出射线, 从而确定栅栏可以有多长。

### 事件图表
蓝图的 **事件图表(EventGraph)** 包含一个节点图表;节点图表使用事件和函数调用来执行操作,从而响应与该蓝图有关的游戏事件。它添加的功能会对该蓝图的所有实例产生影响。你可以在这里设置交互功能和动态响应。例如,光源蓝图可以通过关闭其 和更改其网格体使用的材质,来响应伤害事件。光源蓝图的所有实例会自动具备这个功能。

### 函数
**函数(Functions)** 是属于特定 **蓝图(Blueprint)** 的节点图表,它们可以从蓝图中的另一个图表 执行或调用。函数具有一个由节点指定的单一进入点,函数的名称 包含一个执行输出引脚。当您从另一个图表调用函数时,输出执行引脚将被激活, 从而使连接的网络执行。

### 变量
**Variables(变量)** 是保存值或参考世界场景中的对象或Actor的属性。这些 属性可以由包含它们的 **蓝图(Blueprint)** 通过内部方式访问,也可以 通过外部方式访问,以便设计人员使用放置在关卡中的蓝图实例 来修改它们的值。

### 蓝图模式
蓝图的模式决定其窗口中显示的内容。关卡蓝图仅包含一个模式(图表模式),而蓝图类包含三种不同模式:
-   默认模式(编程和脚本/蓝图可视化脚本编辑器模式默认值)——可在此设置蓝图默认选项。
-   组件模式(编程和脚本/蓝图可视化脚本编辑器模式组件)——可在此添加、移除和编辑构成蓝图的组件。
NOTE
更多详情,请参阅
蓝图类模式(编程和脚本/蓝图可视化脚本编辑器模式)文档。

你可能感兴趣的:(ue5)