(12)发明专利申请
(10)申请公布号 CN 107943464 A(43)申请公布日 2018.04.20
(21)申请号 201711360821.6(22)申请日 2017.12.18
(71)申请人 苏州蜗牛数字科技股份有限公司
地址 215000 江苏省苏州市工业园区中新
大道西171号(72)发明人 施健 王俊 申云宾
(74)专利代理机构 北京德崇智捷知识产权代理
有限公司 11467
代理人 董柏雷(51)Int.Cl.
G06F 8/20(2018.01)
权利要求书2页 说明书5页 附图5页
(54)发明名称
一种程序逻辑的图形可视化展示和编辑的方法
(57)摘要
本发明公开了一种程序逻辑的图形可视化展示和编辑的方法,包括以下步骤:(1)解析:打开流程图,将现有的函数,事件等导出为可识别的功能节点,节点配置的文件自行配置,导出配置完即可显示在流程图的菜单系统中;(2)编辑:在流程编辑软件上绘制流程图,流程图上的一个节点代表一个基础的逻辑功能,连线代表基础逻辑功能的先后关系,节点和连线任意组合扩展,用基础的逻辑组合成复杂的逻辑;(3)保存为序列化文件:保存后生成配置文件;(4)编译。本发明实现策划和程序的同步开发,同时玩法的设计和具体的玩法实现都是策划自己在做,减少了沟通成本;涵盖了程序开发中,逻辑编写的核心功能,不但适用于游戏,也能进行一般软件的开发。
CN 107943464 ACN 107943464 A
权 利 要 求 书
1/2页
1.一种程序逻辑的图形可视化展示和编辑的方法,其特征在于,包括以下步骤:(1)解析:打开流程图,将现有的函数,事件等导出为可识别的功能节点,节点配置的文件自行配置,导出配置完即可显示在流程图的菜单系统中;(2)编辑:在流程编辑软件上绘制流程图,流程图上的一个节点代表一个基础的逻辑功能,连线代表基础逻辑功能的先后关系,节点和连线任意组合扩展,用基础的逻辑组合成复杂的逻辑;(3)保存为序列化文件:保存后生成配置文件;(4)编译:对所述步骤(3)中的配置文件进行编译,编译过程将流程图中的连线关系转化为一个只有先后顺序一系列基础逻辑功能的队列,并保存到新的配置文件中,最后由逻辑配置文件解析模块来解析这个新的配置文件,按其先后顺序依次执行约定的内置基础功能,实现用户在流程图中描述的程序逻辑。
2.根据权利要求1所述的程序逻辑的图形可视化展示和编辑的方法,其特征在于,在所述步骤(1)中,所述流程图定义了描述信息、节点数据、变量数据、事件数据、节点连接信息和函数数据;其中变量数据、事件数据、函数数据作为不同的节点的补充信息对节点加以区分,节点数据中则包含了流程图中所有被插入的节点,节点连接信息则是节点间引脚的连线情况;
解析以上的数据,先遍历节点数据并插入到流程图中,再根据节点连接信息,进行引脚的连接。
3.根据权利要求2所述的程序逻辑的图形可视化展示和编辑的方法,其特征在于,在所述步骤(1)中,节点中参数引脚关联了变量,则该引脚值取变量值使用;关联事件数据的节点作为事件类节点予以区分,此类节点作为流程图中一条执行流的开始节点;节点与函数数据关联,说明该节点是使用多个现有节点拼接而成,具体的拼接情况在函数数据中体现。
4.根据权利要求3所述的程序逻辑的图形可视化展示和编辑的方法,其特征在于,在所述步骤(2)中,在右键菜单中选中一个单元格单击,每个单元格都绑定了节点的唯一编号,单击操作时会进行编号的匹配,编号匹配上的会使用相应配置进行节点的绘制;编写逻辑时,按住节点的参数引脚、逻辑引脚连线,对右键菜单进行过滤,找到匹配的节点。
5.根据权利要求4所述的程序逻辑的图形可视化展示和编辑的方法,其特征在于,在所述步骤(2)中,参数端口是强类型匹配,判断连入的是逻辑引脚还是参数引脚,然后判断参数类型是入参还是出参;如果是参数引脚匹配类型得到相应的节点,从过滤后的列表中选中需要的节点,连接节点中匹配的第一个引脚。
6.根据权利要求5所述的程序逻辑的图形可视化展示和编辑的方法,其特征在于,在所述步骤(3)中,在流程图的控制器中,数据被单独解析保存,保存数据之前会对节点及连线数据做一次重新的汇总刷新,过程如下:
对于节点数据,重新遍历节点数据集,每个引脚重新设置序号;节点连接信息,遍历连接数据集,写入有连线的节点唯一编号及连线引脚的序号;数据更新完直接流程图控制器进行保存。
7.根据权利要求6所述的程序逻辑的图形可视化展示和编辑的方法,其特征在于,在所述步骤(4)中,首先预处理,将函数数据中封装的节点数据,还原并和流程图主文件中的节点联系数据合并为一份文件;要进行编译需要通过节点配置中的唯一编号获取相应的节点
2
CN 107943464 A
权 利 要 求 书
2/2页
配置,发生节点配置获取失败时会返回错误号;获取到节点配置后会与本地缓存的节点数据进行匹配,如果发生了影响编译结果的差异,参数顺序改变、参数数量改变、参数类型改变等会返回相应错误。
3
CN 107943464 A
说 明 书
一种程序逻辑的图形可视化展示和编辑的方法
1/5页
技术领域
[0001]本发明涉及图形用户界面的交互技术领域,尤其涉及交互数据的分析处理。背景技术
[0002]泛娱乐化的时代,游戏内容爆炸着,游戏的革新速度也在不断的加快中,短短几年间,端游从主力变为了明日黄花,手游的崛起,VR的来势汹汹,技术的变革倒逼着游戏内容的变革。游戏开发中怎么提高效率,也成为了大家关注的问题。[0003]游戏软件的开发最早是硬编码,策划提出需求,程序按照要求开发相应的功能。游戏是一个需要不断打磨调优的系统,各种数值需要频繁修改。这就使得即使程序本身改动并不大,为了多加一个选项,还需要去修改代码,不小心还会导致一些意外问题,增加额外的开发成本。
[0004]由此催生出通过配表方式提升软件灵活性的方法。所谓配表只将一些容易发生变化的数据写入一些指定的文件中,程序运行时读取,这样即时相关数据有变动程序也不用修改,很好的提高了效率。但是游戏不像一般的软件产品,需求变化可能不只是数据上的修改。提供更多的玩法给广大的爱好者,适应潮流才是根本。当发生流程改变时,配表的方式难免会力不从心。而且这种流程下很容易产生策划和程序不能同步处理问题的情况。往往,策划忙着整理需求的时候程序只能干等着,而程序做需求时,策划除了解释的时间,更多的时候也是等待。
发明内容
[0005]本发明要解决的技术问题是,提供一种策划人员开发部分逻辑功能的能力,使用连线等图形化方式将这些功能点组织为具体的玩法,以此来提高游戏软件的开发效率的程序逻辑的图形可视化展示和编辑的方法。[0006]为解决上述技术问题,本发明要采用的技术方案是:该程序逻辑的图形可视化展示和编辑的方法,包括以下步骤:
(1)解析:打开流程图,将现有的函数,事件等导出为可识别的功能节点,节点配置的文件自行配置,导出配置完即可显示在流程图的菜单系统中;
(2)编辑:在流程编辑软件上绘制流程图,流程图上的一个节点代表一个基础的逻辑功能,连线代表基础逻辑功能的先后关系,节点和连线任意组合扩展,用基础的逻辑组合成复杂的逻辑;
(3)保存为序列化文件:保存后生成配置文件;(4)编译:对所述步骤(3)中的配置文件进行编译,编译过程将流程图中的连线关系转化为一个只有先后顺序一系列基础逻辑功能的队列,并保存到新的配置文件中,最后由逻辑配置文件解析模块来解析这个新的配置文件,按其先后顺序依次执行约定的内置基础功能,实现用户在流程图中描述的程序逻辑。[0007]采用上述技术方案,可以实现策划和程序的同步开发,同时玩法的设计和具体的
4
CN 107943464 A
说 明 书
2/5页
玩法实现都是策划自己在做,减少了沟通成本;涵盖了程序开发中,逻辑编写的核心功能,不但适用于游戏,也能进行一般软件的开发。[0008]优选的,在所述步骤(1)中,所述流程图定义了描述信息、节点数据、变量数据、事件数据、节点连接信息和函数数据;其中变量数据、事件数据、函数数据作为不同的节点的补充信息对节点加以区分,节点数据中则包含了流程图中所有被插入的节点,节点连接信息则是节点间引脚的连线情况;
解析以上的数据,先遍历节点数据并插入到流程图中,再根据节点连接信息,进行引脚的连接。
[0009]优选的,在所述步骤(1)中,节点中参数引脚关联了变量,则该引脚值取变量值使用;关联事件数据的节点作为事件类节点予以区分,此类节点作为流程图中一条执行流的开始节点;节点与函数数据关联,说明该节点是使用多个现有节点拼接而成,具体的拼接情况在函数数据中体现。[0010]优选的,在所述步骤(2)中,在右键菜单中选中一个单元格单击,每个单元格都绑定了节点的唯一编号,单击操作时会进行编号的匹配,编号匹配上的会使用相应配置进行节点的绘制;编写逻辑时,按住节点的参数引脚、逻辑引脚连线,对右键菜单进行过滤,找到匹配的节点。
[0011]优选的,在所述步骤(2)中,参数端口是强类型匹配,判断连入的是逻辑引脚还是参数引脚,然后判断参数类型是入参还是出参;如果是参数引脚匹配类型得到相应的节点,从过滤后的列表中选中需要的节点,连接节点中匹配的第一个引脚。[0012]优选的,在所述步骤(3)中,在流程图的控制器中,数据被单独解析保存,保存数据之前会对节点及连线数据做一次重新的汇总刷新,过程如下:
对于节点数据,重新遍历节点数据集,每个引脚重新设置序号;节点连接信息,遍历连接数据集,写入有连线的节点唯一编号及连线引脚的序号;数据更新完直接流程图控制器进行保存。[0013]优选的,在所述步骤(4)中,首先预处理,将函数数据中封装的节点数据,还原并和流程图主文件中的节点联系数据合并为一份文件;要进行编译需要通过节点配置中的唯一编号获取相应的节点配置,发生节点配置获取失败时会返回错误号;获取到节点配置后会与本地缓存的节点数据进行匹配,如果发生了影响编译结果的差异,参数顺序改变、参数数量改变、参数类型改变等会返回相应错误。附图说明
[0014]下面结合附图和本发明的实施方式进一步详细说明:
图1是本发明程序逻辑的图形可视化展示和编辑的方法流程图系统的操作流程;图2 为流程图系统的定义的基本数据;图3 为流程图中的节点样式;图4 为流程图中的节点连线状态;图5 为流程图系统分层;图6 为流程图节点插入;图7 为流程图编译流程。
5
CN 107943464 A
说 明 书
3/5页
具体实施方式
[0015]本发明的程序逻辑的图形可视化展示和编辑的方法,包括以下步骤:
(1)解析:打开流程图,将现有的函数,事件等导出为可识别的功能节点,节点配置的文件自行配置,导出配置完即可显示在流程图的菜单系统中;
(2)编辑:在流程编辑软件上绘制流程图,流程图上的一个节点代表一个基础的逻辑功能,连线代表基础逻辑功能的先后关系,节点和连线任意组合扩展,用基础的逻辑组合成复杂的逻辑;
(3)保存为序列化文件:保存后生成配置文件;(4)编译:对所述步骤(3)中的配置文件进行编译,编译过程将流程图中的连线关系转化为一个只有先后顺序一系列基础逻辑功能的队列,并保存到新的配置文件中,最后由逻辑配置文件解析模块来解析这个新的配置文件,按其先后顺序依次执行约定的内置基础功能,实现用户在流程图中描述的程序逻辑。[0016]在所述步骤(1)中,所述流程图定义了描述信息、节点数据、变量数据、事件数据、节点连接信息和函数数据;其中变量数据、事件数据、函数数据作为不同的节点的补充信息对节点加以区分,节点数据中则包含了流程图中所有被插入的节点,节点连接信息则是节点间引脚的连线情况;
解析以上的数据,先遍历节点数据并插入到流程图中,再根据节点连接信息,进行引脚的连接。[0017]另外,在所述步骤(1)中,节点中参数引脚关联了变量,则该引脚值取变量值使用;关联事件数据的节点作为事件类节点予以区分,此类节点作为流程图中一条执行流的开始节点;节点与函数数据关联,说明该节点是使用多个现有节点拼接而成,具体的拼接情况在函数数据中体现。[0018]在所述步骤(2)中,在右键菜单中选中一个单元格单击,每个单元格都绑定了节点的唯一编号,单击操作时会进行编号的匹配,编号匹配上的会使用相应配置进行节点的绘制;编写逻辑时,按住节点的参数引脚、逻辑引脚连线,对右键菜单进行过滤,找到匹配的节点;参数端口是强类型匹配,判断连入的是逻辑引脚还是参数引脚,然后判断参数类型是入参还是出参;如果是参数引脚匹配类型得到相应的节点,从过滤后的列表中选中需要的节点,连接节点中匹配的第一个引脚。[0019]在所述步骤(3)中,在流程图的控制器中,数据被单独解析保存,保存数据之前会对节点及连线数据做一次重新的汇总刷新,过程如下:
对于节点数据,重新遍历节点数据集,每个引脚重新设置序号;节点连接信息,遍历连接数据集,写入有连线的节点唯一编号及连线引脚的序号;数据更新完直接流程图控制器进行保存。[0020]在所述步骤(4)中,首先预处理,将函数数据中封装的节点数据,还原并和流程图主文件中的节点联系数据合并为一份文件;要进行编译需要通过节点配置中的唯一编号获取相应的节点配置,发生节点配置获取失败时会返回错误号;获取到节点配置后会与本地缓存的节点数据进行匹配,如果发生了影响编译结果的差异,参数顺序改变、参数数量改变、参数类型改变等会返回相应错误。
6
CN 107943464 A[0021]
说 明 书
4/5页
更具体的,在本发明实施例中,流程图节点有两类,内置节点和功能节点,内置节
点如流程类,常用的数值计算等基础节点,功能节点需要额外导入,依据项目的不同会有不同的节点。(注:流程图中的有效节点,无论内置的或者功能性节点,都会对应程序中的一段具体的功能代码。)
如图3所示,流程图节点引入了引脚的概念,所谓引脚是指节点中显示标题,参数、节点是否失效的一些单独区域。所有的引脚都有内容显示和提示信息显示的功能并且可以隐藏。比如,节点失效引脚一般就是处于隐藏状态的,只有在该节点对应的配置丢失或者不匹配时才会显示。[0022]如图4,逻辑引脚和参数引脚用于节点和节点间的连线交互,是流程图组织程序逻辑的基本组成。逻辑引脚,描述的是节点与节点之间的执行顺序,参数引脚包含了对应参数的,参数值和类型信息。[0023]右键菜单,右键菜单是流程图系统的重要组成部分。流程图系统加载,会读预设配置文件中指定的节点配置文件的路径,并做相应的解析。解析后的数据最终用于生成右键菜单。流程图系统中的节点都可以在右键菜单中找到。
[0024]如图1所示的是为本发明程序逻辑的图形可视化展示和编辑的方法的流程图系统的基本操作流程。可以归纳为解析、编辑、保存、编译;其中,编译步骤其实是贯穿于整个流程图操作的,包括节点的过滤,节点有效性判定等都应用到了解析系统的相关功能。[0025]解析步骤:流程图文件打开的过程,实际是一个反序列化操作过程。如图2中所示,本实施例中流程图定义了描述信息、节点数据、变量数据、事件数据、节点连接信息、函数数据等6中基本的数据;其中,变量数据、事件数据、函数数据作为不同的节点的补充信息对节点加以区分。
[0026]比如节点中参数引脚关联了变量,则该引脚值取变量值使用;关联事件数据的节点作为事件类节点予以区分,此类节点作为流程图中一条执行流的开始节点;节点与函数数据关联,说明该节点是使用多个现有节点拼接而成,具体的拼接情况在函数数据中体现。[0027]节点数据中则包含了流程图中所有被插入的节点,节点连接信息则是节点间引脚的连线情况。
[0028]打开任一流程图时,解析以上的数据,先遍历节点数据并插入到流程图中,再根据节点连接信息,进行引脚的连接。[0029]编辑步骤:在右键菜单中选中一个单元格单击。每个单元格都绑定了节点的唯一编号,单击操作时会进行编号的匹配。编号匹配上的会使用相应配置进行节点的绘制。[0030]编写逻辑时,按住节点的参数引脚、逻辑引脚连线,可以对右键菜单进行过滤,找到匹配的节点。本实施例中的参数端口是强类型匹配,故类型完全一致的引脚才能匹配上。具体流程如下:首先判断连入的是逻辑引脚还是参数引脚;然后判断参数类型是入参还是出参,如图3所示,本实施例中左侧为入参引脚,右侧为出参引脚;如果是参数引脚匹配类型得到相应的节点。从过滤后的列表中选中需要的节点,连接节点中匹配的第一个引脚。[0031]直接右键单击流程图空白处,也可以显示右键菜单,此时显示的是未过滤的节点集合。
[0032]本实施例中,显示采用了显示“视图”和逻辑“控制器”方式进行了分离,如图5所示,界面操作,比如插入节点时,控制器中会将相应的节点配置写入数据缓存,以保证数据
7
CN 107943464 A
说 明 书
5/5页
一致性。
[0033]保存步骤:图2所示,流程图系统中包含6中基本的数据。在流程图控制器中,这些数据被单独解析保存。所以保存数据之前会对节点及连线数据做一次重新的汇总刷新,过程如下:
对于节点数据,重新遍历节点数据集,每个引脚重新设置序号。[0034]节点连接信息,遍历连接数据集,写入有连线的节点唯一编号及连线引脚的序号。[0035]数据更新完直接流程图控制器进行保存。[0036]编译步骤:首先预处理,将函数数据中封装的节点数据,还原并和流程图主文件中的节点联系数据合并为一份文件。[0037]图6和图7所示,流程图的序列化文件中存储的主要是业务不想关的显示数据,要进行编译需要通过节点配置中的唯一编号获取相应的节点配置,发生节点配置获取失败时会返回错误号。
[0038]获取到节点配置后会与本地缓存的节点数据进行匹配,如果发生了影响编译结果的差异,参数顺序改变、参数数量改变、参数类型改变等会返回相应错误。[0039]本实施例中节点分为事件流节点和执行流节点,区分在于有没有逻辑引脚。[0040]接下来进行剪枝操作,剔除无效数据。如前所述,本实施例中,以事件类节点作为一条执行流(即一条逻辑)的开始节点,所有流程图中孤立的事件类节点、执行流的开始节点不是事件类节点的逻辑将被剔除。如果执行流中的某个节点引用了一个数据流节点,则递归的向上查找,并将这些节点当做执行流节点,并插入当前执行流节点之前。[0041]本实施例中所有的流程图都有一个统一的执行流起点,以该节点为起始,遍历每条执行流,并给每个节点编号,至此编译完成。
[0042]上面结合附图对本发明的实施方式作了详细的说明,但是本发明不限于上述实施方式,在所属技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下做出各种变化。
8
CN 107943464 A
说 明 书 附 图
1/5页
图1
图2
9
CN 107943464 A
说 明 书 附 图
2/5页
图3
图4
10
CN 107943464 A
说 明 书 附 图
3/5页
11
图5
CN 107943464 A
说 明 书 附 图
4/5页
图6
12
CN 107943464 A
说 明 书 附 图
5/5页
图7
13
因篇幅问题不能全部显示,请点此查看更多更全内容