实体 (Entities)
实体是在 场景 (Scene) 中(如节点、资源)或跨场景(如插件)持续存在的对象。在 Warudo 中编写脚本就是定义你自己的实体类型并与 Warudo 主窗口场景交互。你可以使用 Warudo 提供的基本类来定义自己的实体类:
- 节点: 继承
Node来创建新的节点。节点可自定义数据输入、数据输出、流输入、流输出和触发器。通过将节点从节点控制板拖到蓝图编辑器来实例化节点。(节点实例会与蓝图一同保存) - 资源: 继承
Asset来创建新的资源。资源类型可以定义数据输入和触发器。使用 添加资源 菜单实例化资源。(资源实例会与蓝图一同保存) - 插件: 继承
Plugin来创建新的插件。插件类型可以定义数据输入和触发器。当 Warudo 启动时或热重载插件时,将加载插件。每种插件类型只有一个插件实例,并且数据输入跨场景保存。 - 结构数据: 继承
StructuredData来创建新的结构数据。结构数据是一种复杂的数据类型,可用作节点、资源或插件中的“嵌入式”数据输入。
信息
在创建你的第一个脚本教程中,我们创建了一个名为 HelloWorldNode 的自定义节点和一个名为 的 CookieClickerAsset 自定义资源。
提示
实体的概念与 Unity 的 MonoBehaviour 大致相似,但采用了更规范易用的方式。
实体实例化后,Warudo 会自动为其分配一个 UUID(唯一标识符),此 UUID 用于标识场景中的实体,并与场景一起保存。你也可以通过 Id 属性获取 UUID。
实体类可以包含常规 C# 字段和方法。但是,要与 Warudo 主窗口场景交互,你需要在实体中创建端口和触发器。所有实体都可以具有数据输入端口(Data input)和触发器(Trigger),而节点还可以具有数据输出端口(Data output)、流输入端口(Fliw input)