美文网首页
FlowCanvas自定义节点

FlowCanvas自定义节点

作者: BacteriumFox | 来源:发表于2020-01-05 23:25 被阅读0次

Simplex节点

  1. 动作节点
    可调用动作节点用于创建需要调用流信号的动作。它们具有1个流量输入,1个流量输出,最多5个值输入参数并且根本没有值输出。简而言之,您可以派生泛型CallableActionNode类,其中泛型参数表示节点的值输入参数,然后覆盖Invoke void方法,该方法具有与声明的泛型参数相同且类型相同的多个参数。例如。
  1. 功能节点
    可调用功能节点与上面的可调用操作类似,但是它们始终返回1值输出。该过程与之前非常相似,但是在这种情况下,第一个通用参数表示返回值的类型,您将要覆盖的Invoke方法将需要返回所声明的类型。例如
  1. 潜在动作节点
    潜在动作节点与之前的CallableAction节点相似,但是在这种情况下,Invoke方法是IEnumerator,被称为协程。因此,您需要将其视为协程。例如
  1. 纯功能节点
    纯功能节点用于不需要任何流量信号的节点,但是当它们通过单个Value输出发出请求时,它们只是简单地返回一个值。第一个通用参数是节点的返回类型和您需要覆盖的Invoke方法,而其余的通用参数是要使用的函数的值输入参数。例如。

Full节点

创建完整的流节点可能更难理解,但是您可以完全访问所有内容,并且可以创建所需的任何类型的节点,例如新的事件,流控制器或其他任何对象,尽管我个人建议这样做仅事件和流控制器。

让我们以重新创建FlowController节点“ SwitchBool”为例,该节点实际上是if-then-else语句。为此,创建一个类并派生自“ FlowControlNode”,然后必须重写RegisterPorts方法并在其中注册端口。

使用以下方法完成端口的注册:

FlowInput:AddFlowInput(字符串名称,动作指针)
name:端口的名称。
指针:调用此流输入后将被调用的委托。

FlowOutput:AddFlowOutput(字符串名称)
name:端口的名称。
要执行端口,您必须在返回的FlowOutput对象上调用Call(),并接收当前的Flow对象。

ValueInput <T>:AddValueInput <T>(字符串名称)
name:端口的名称。
要获得连接到端口的值,只需调用返回对象的.value属性即可。

ValueOutput <T>:AddValueOutput <T>(字符串名称,Func <T> getter)
name:端口的名称。
getter:将被调用以获取T类型的值的委托。

如上所示,如果名称需要与类名称不同,可以使用许多属性来指定名称,以及节点类别和帮助描述的属性。

Event节点

在极少数情况下,您可能想创建一个特定于您的项目的自定义事件节点,而现有事件节点不足或不足。这样,您可以创建一个自定义事件节点来处理几乎所有需要的内容。这是包含的“输入按钮”事件节点的示例。

请注意,以上节点实现了IUpdatable接口。由于Unity输入系统无法基于常规事件(UnityEvent或C#Event)运行,因此我们需要逐帧检查输入。在这种情况下,当然需要实现IUpdatable接口及其单个“更新”方法。

官方文档链接

相关文章

  • FlowCanvas自定义节点

    Simplex节点 动作节点可调用动作节点用于创建需要调用流信号的动作。它们具有1个流量输入,1个流量输出,最多5...

  • FlowCanvas节点介绍

    一、Events(事件) 事件节点负责开始和触发任何流执行。没有事件节点,您的流程图中将不会真正发生任何事情。您添...

  • 【kotlin】自定义节点链表 - LinkedList

    使用自定义节点的链表。 由于原生LinkedList无法使用自定义节点,所以创建此类。使用此类可以手动对节点进行修...

  • Emmet 语法

    孩子节点 > 兄弟节点 + 上级节点 ^ 倍增 * ID属性 # CLASS属性 . 自定义属性 文本 {} 组 ...

  • Spring XML解析的详细过程 2

    本章要点 自定义节点的解析过程 1.自定义节点的解析过程 代码片段: org.springframework.be...

  • iOS 手机上一个项目调启另一个项目(都已安装)

    1、先自己定义一个自定义协议,在Info.plist中加URL types节点。在这个节点中定义程序所支持的自定义...

  • NodeCanvas & FlowCanvas架构简单整理

    在下面文章中NodeCanvas与FlowCanvas我将使用简写NC与FC说明。 一、核心介绍 NC与FC从功能...

  • Taro.createSelectorQuery() 获取不到

    Taro.createSelectorQuery() 获取不到自定义组件的节点信息 bug:自定义组件内会获取不...

  • 搜索二叉树的实现

    定义二叉树的节点:包含左节点,右节点和当前结点的值 节点之间的比较方法:通过自定义的Comparator或默认的C...

  • dubbo服务导出

    dubbo版本:2.7.2 一、spring解析自定义扩展标签。 spring分析xml节点的可以看出对于自定义命...

网友评论

      本文标题:FlowCanvas自定义节点

      本文链接:https://www.haomeiwen.com/subject/zerrpctx.html