Files
netease-modsdk-wiki/docs/mcguide/20-玩法开发/12-可视化编程/10-新版逻辑编辑器使用说明/15-逻辑编辑器基础概念.md
2025-03-18 14:46:12 +08:00

72 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
front:
hard: 入门
time: 10分钟
selection:
---
# 逻辑编辑器基础概念
## 预设与实例
**预设Preset** 就是“预先设定”的意思。开发者们可以将方块、素材、实体、特效以及玩法逻辑拼装成一个预设。在使用时,一个预设作为一个整体被放置在游戏中,被放置到游戏中的预设被称为 **实例**
关于预设和实例的更多信息请访问[这篇文档](../../14-预设玩法编程/9-第一个预设Mod/1-新建预设并添加素材.md)。
## 零件
**零件Part** 是预设架构下,一种可以挂接到预设下的玩法逻辑对象。当我们把逻辑写到零件代码里,再将零件挂接到一个生效的预设下时,零件的逻辑也会随之生效。
关于零件的更多信息请访问[这篇文档](../../14-预设玩法编程/9-第一个预设Mod/4-创建和挂接零件.md)。
## 蓝图
在逻辑编辑器中,我们通过节点式编程的形式,将不同的节点通过执行连线和数据连线相连构成节点网络,从而编写一套完整的逻辑。这些承载了节点与连线的图表,我们将其称为**蓝图Blueprint**。蓝图只能通过逻辑编辑器进行编辑。
> 蓝图是仅限新版逻辑编辑器才有的功能,在旧版编辑器内将无法打开蓝图文件。旧版编辑器现已停止维护,请将编辑器升级至新版后继续开发。
![](./images/new_docs/A7.png)
## 蓝图零件
**蓝图零件BlueprintPart**,顾名思义,则是一种使用蓝图编写零件逻辑的特殊零件。与普通零件相比,蓝图文件在资源管理器的文件夹中多了一个 **.bp** 文件,即**蓝图脚本文件**。在资源管理器中双击.bp文件即可在逻辑编辑器中打开该蓝图零件的蓝图图表进行编辑。
> 在资源管理器的【精简模式】下,你可以在【蓝图】分页下找到每个零件的蓝图;
> 在资源管理器的【完整模型】下,你可以在每个蓝图零件文件夹中找到对应零件的蓝图。
![](./images/new_docs/A8.png)
## 事件
**事件Event** 是模组SDK架构的核心组成部分也是编程的一类常用技术。模组SDK的事件系统可以参考这篇文档[事件简介](../../../20-玩法开发/13-模组SDK编程/2-Python脚本开发/9-事件简介.md)。
简单来说,事件系统就是用于写明白在某种情况触发的时候应该执行什么逻辑。例如“当玩家点击潜行键时播放角色蹲下的动画”,那么“当玩家点击潜行键时”就是一个事件。当监听到这个事件后,系统就会执行“播放角色蹲下的动画”这个逻辑。
在蓝图中,事件监听节点是蓝图逻辑网络执行的起点,通过事件节点连出的执行引线连接一系列接口,那么系统监听到这个事件时,后续的一系列节点逻辑都会被按顺序执行。
![](./images/new_docs/A9.png)
## 接口
**接口Interface** 在蓝图中是节点图表的一种,可以从其他蓝图图表中调用其内部逻辑。
我们将所有的SDK接口以及大量的python接口都制作成了**内置接口**,放在右键菜单中供开发者直接调用(开发者无法直接修改这些接口的逻辑);同时,我们还允许开发者创建**自定义接口**,编写自己需要的节点逻辑。
举个例子: 我们在下面这个自定义接口图表中编写好了Interface_1这个自定义接口的逻辑
![](./images/new_docs/A10.png)
然后在跟图表中调用Interface_1就可以直接复用其内部逻辑进行运算。
![](./images/new_docs/A11.png)
## 蓝图零件变量
**蓝图零件变量** 用于储存值或对象属性,可通过【获取变量】节点调用变量值,也可以通过【设置变量】节点为该变量设置新的值。
![](./images/new_docs/A12.png)