HTFramework框架使用手册(七)StepEditor任务步骤编辑器(上)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq992817263/article/details/87712995

StepEditor模块简介

严格来说,StepEditor只是框架的一个内置工具,他最开始的用途是用来解决一系列冗长的线性任务,为了实现可视化和降低后期改动的复杂度!意识到了这些问题之后,才产生了写这么一个编辑器的想法。

如下这个简单的例子,一个常见的任务流程:
1.找到NPC张三。
2.与张三交谈。
3.张三叫你去杀死几只大黄蜂。
(后面可能还会有无限多)…

按照正常人的思维,直接写一个任务列表顺序执行就OK了,所以,StepEditor便是封装了这个过程,在StepEditor中每个任务都有激活触发执行三个状态,他执行一系列任务是这样的:

1.StepEditor初始化,并激活任务一。
2.任务一获得触发条件。
3.任务一进入执行状态。
4.任务一执行完成激活任务二。
5.循环1-4直到所有任务完成

需要注意的是,每个任务只有激活后,才能获得触发条件,只有触发条件满足,才能进入执行状态,执行状态会自动完成,并激活下一任务。

注意:StepEditor所能做的几个重点,就是编辑任务的激活状态操作、编辑任务的触发条件、编辑任务的执行状态操作。

使用StepEditor

创建Step Content Asset

Step Content Asset(步骤内容资源)为StepEditor使用的标准资源,创建方法:
Project界面右键 -> Create -> HTFramework -> StepContentAsset

如下,新创建的TestTask001,其中包含的任务步骤数量为0,点击Edit Step Content按钮便可以打开StepEditor窗口编辑此资源:
在这里插入图片描述

打开StepEditor窗口

点击Step Content Asset资源面板的Edit Step Content按钮后,打开的StepEditor初始窗口如下图:
在这里插入图片描述

StepEditor窗口详解

在这里插入图片描述
①.Step Content List(步骤内容列表)
1.这里显示所有的任务步骤,可以进行新建、编辑、移动、克隆、删除等操作。
2.点击任务步骤右方的–>按钮,为选中并编辑此步骤。

②.Step Content Properties(步骤的属性面板)
1.仅当选中一个步骤时,此面板显示该步骤的属性。

③.Camera Control(摄像机控制组件)
1.仅当选中一个步骤时,此面板显示当前场景的摄像机控制组件。

④.Operation Panel(操作编辑面板)
1.仅当选中一个步骤时,此面板显示该步骤的所有操作节点。

⑤.Step Operation Properties(步骤操作的属性面板)
1.仅当选中一个步骤且选中一个操作节点时,此面板显示该操作的属性。

注意:他们之间的逻辑关系如下:
1.①中的每个步骤包含有多个操作
2.②中显示步骤的属性。
3.⑤中显示操作的属性。
4.当步骤处于激活状态,且②面板中的属性Trigger被触发,则此步骤的所有操作将会根据④面板的连线规则,从Enter节点进入并依次执行节点,等待②面板中的属性Elapse Time设置的时间(秒)后,自动激活下一步骤

步骤的属性面板详解

在这里插入图片描述
当在①面板中选择一个步骤时,②面板则显示此步骤的属性:

1.Name步骤的名称。

2.Elapse Time:从步骤的执行状态开始,到自动激活下一步骤所经过的时间。

3.Instant:勾选后,忽略Elapse Time时间,瞬间激活下一步骤

4.Target:当前步骤的目标。

注意:每个步骤必须有一个目标,该目标会被标识一个全局唯一的GUID,在之后的工作中,你可以随意进行改变目标的父子层级关系、或是重命名等操作,都不会导致这里的目标丢失,除非点击了GUID之后的Clear按钮。

5.Prompt:步骤的详细提示。

6.Ancillary:步骤的附属信息。

7.Operation:步骤的操作节点数量,点击Find按钮可以查找由于拖动原因丢失到窗口以外的操作节点。

8.Trigger:步骤的触发条件。

9.Best View:若已激活摄像机控制组件,设置摄像机组件的最佳视角。

10.View Offset:若已激活摄像机控制组件,设置摄像机注视点的偏移。

11.Helper:步骤的助手,当一个步骤所要执行的操作过于复杂,无法使用预制的操作节点连线来完成,则可以创建一个助手来帮助执行,助手的规则将在后续讲解。

操作的属性面板详解

在这里插入图片描述
当在④面板中选择一个操作节点时,⑤面板则显示此操作的属性:

1.Name操作的名称。

2.Elapse Time:从操作的执行状态开始,到执行下一操作所经过的时间。

3.Instant:勾选后,忽略Elapse Time时间,瞬间执行到下一操作。

4.Target:当前操作的目标。

注意:每个操作必须有一个目标,该目标会被标识一个全局唯一的GUID,在之后的工作中,你可以随意进行改变目标的父子层级关系、或是重命名等操作,都不会导致这里的目标丢失,除非点击了GUID之后的Clear按钮。

5.Type:操作的类型。

注意:根据操作类型的不同,这里可以在扩展新的操作类型时定制GUI,如上图中的操作类型为Action Args(执行一个带参数的方法),这个方法可以是目标张三上的任意脚本的任意带有一个string参数的方法。

6.Clone:克隆此操作节点,将会复制一个一模一样的节点。

猜你喜欢

转载自blog.csdn.net/qq992817263/article/details/87712995
今日推荐