一种通用的游戏界面行为控制系统的制作方法
【技术领域】
[0001]本发明涉及一种通用的游戏界面行为控制系统,属于计算机游戏领域。
【背景技术】
[0002]游戏界面在游戏中有着举足轻重的地位,它与用户(玩家)进行直接的交互,同时也修改非常频繁。当游戏程序有新玩法的时候,或者系统的需求发生变化,往往免不了要修改界面。游戏的界面设计,需要耗费开发人员大量的时间与精力。例如,使用Unity游戏引擎设计一个装备系统,进行步骤如下面所示:
1)准备美术相关的资源,制作成图集;
2)使用在unity,拼接界面,保存成prefab文件;
3)使用c#语言加载prefab文件,并且实现一些按钮的响应事件。
[0003]上述的步骤只能实现一些基础的界面行为,如果需要实现更多附加界面行为时,则需要开发人员编写更为复杂的界面代码,界面行为实例如下所示:
1)当打开背包界面时,自动关闭玩家换装界面;
2)当打开某一界面时,另外一个指定界面同时打开;
3)当在特定场景时,一些指定的打开的界面关闭;
4)对于某些界面,可以使用快捷键进行打开和关闭,比如“ESC”关闭界面;
5)对于某些特定的界面,如模态,打开时阻止禁止鼠标和键盘输入信息;
6)对于某些界面,当打开和关闭时需要提供一些语音提示;
7)当有一些打开的界面,然后点击背景时,界面自动关闭;
8)对于一些打开的界面,当玩家行走一段时间关闭;
9)一些界面一打开时,出现在屏幕的指定的角落;
10)还有一些界面需要渐隐打开。
[0004]上述只是一部分例子,在实际开发过程中界面需要的附加界面可能会更多、更加复杂,这样就需要开发人员耗费大量重复的劳动,造成了低下的效率和更容易触发的BUG。因此一套简单、易用、灵活的界面行为开发系统可以极大的提高游戏开发效率和降低游戏bug的产生。
【发明内容】
[0005]针对现有技术低下的开发效率和更容易触发BUG的缺陷,本发明提供了一种通用的游戏界面行为控制系统,他具有简单、易用、灵活等特点,使游戏界面开发变得简单和高效。
[0006]本发明以Lua脚本语言实现技术支持。Lua由标准C编写而成,代码简洁优美,几乎在所有操作系统和平台上都可以编译,运行。同时Lua是解释性的语言,修改后便可以执行,无须编译。
[0007]本发明的技术方案包括一种通用的界面行为控制系统,该系统包括:界面行为描述模块,提供存储和可编辑的界面属性和界面行为有关数据;界面配置文件生成器,将界面行为描述模块的界面属性和界面行为有关数据参数化,并封装成配置文件;界面对象加载器,用于创建新的界面对象,加载和存储数据资源,解析配置文件;界面数据处理器,用于对数据资源进行标识和分类,记录相关界面行为;界面管理器,用于执行所有界面行为,进而控制所有界面进行打开、隐藏和分层显示。
[0008]优选地,所述的界面行为描述模块包括:存储模块,使用可视化、可编辑的数据存储技术存储数游戏界面属性和界面行为信息;编辑模块,使用面向用户的可编辑的操作界面编辑游戏界面属性和界面行为信息。
[0009]进一步,所述的界面配置文件生成器包括:封装模块,用于将界面行为描述模块参数化,对参数化后的行为描述模块的数据进行封装,使封装后的行为描述模块的数据成为能被脚本解析器解析的配置文件。
[0010]进一步,所述的对象加载器包括:数据加载模块,用于对包含配置文件的数据文件进行预处理,使配置文件转换为数据流;对象创建模块,用于创建包含新的游戏界面属性和界面行为的界面对象;数据存储模块,用于存储包含配置文件的数据资源、解析后的界面属性和界面行为信息;文件解析模块,调用游戏程序的脚本解析器对预处理的数据资源文件进行解析,并且在解析的界面行为与相应的应用程序编程接口之间建立连接。
[0011]进一步,在一个优选的实施方案中,所述的对象加载器的对象创建模块进一步配置为:首先,在界面行为描述模块创建新的界面属性和界面行为有关的数据资源;然后,将资源数据传递给界面配置文件生成器,由界面配置文件生成器将包含新的界面属性和界面行为信息的数据资源封装成配置文件;最后,对象创建模块接收配置文件并将其解析为新的界面对象。
[0012]进一步,在一个优选的实施方案中,所述的数据资源包括:Lua配置文件、通用接口函数、界面属性和界面行为信息。
[0013]进一步,所述的界面管理器包括:记录模块,用于记录界面行为信息,对数据资源进行分类识别和管理,对配置文件信息进行整理和记录;
进一步,所述的界面行为管理模块包括:界面行为管理模块,用于执行所有游戏界面发送的打开、隐藏和运行的请求,并且在打开、隐藏和运行界面时都执行对界面管理器的处理函数的调用;界面分层模块,用于将所有游戏界面划分为多个界面层,使每个界面层都具有特定的类型和场景元素,同时将一个或多个界面分类到不同的界面层。
[0014]本发明的有益效果为:将资源、逻辑、数据分离,结构上易于理解和维护;整个游戏的界面,都列在一张表,也易于查看和修改;添加和修改界面的行为更加方便。理解了表,针对表各项的意义,直接修改就行,策划美术也可以修改。解放了程序的劳动力,让专业人士做专门的事,有利于提高界面的品质;在实际的游戏开发中,由于抽取了通用的接口,不再需要每个单独界面,编写界面的行为,降低逻辑的复杂度,减少了代码的重复性,提高了开发的效率。
【附图说明】
[0015]图1所示为根据本发明的通用游戏界面行为控制系统的框图;
图2所示为根据本发明的通用游戏界面行为控制系统的界面行为描述表; 图3所示为根据本发明的通用游戏界面行为控制系统的界面行为实现过程;
图4所示为根据本发明的通用游戏界面行为控制系统的函数处理表;
图5所示为根据本发明的通用游戏界面行为控制系统的用户配置流程。
【具体实施方式】
[0016]为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。本发明的游戏界面行为控制系统适用于单机游戏、手机游戏、网页游戏等游戏的开发,尤其适用于在控制角色扮演类游戏中实现的游戏界面行为的处理。
[0017]图1所示为根据本发明实施例的游戏界面行为控制系统的总体框图,该系统结构包括:界面行为描述模块、界面配置文件生成器、界面对象加载器、界面数据管理器、界面管理器。其中,界面行为描述模块用于存储界面属性和界面行为,并向用户提供自定义编辑的界面。界面配置文件生成器用于将行为模块中的数据进行参数化然后封装成配置文件传递给界面对象加载器。对象加载器用于解析配置文件,加载资源数据,创建新的行为对象。界面数据管理器则存储用于对数据资源进行分类标识,存储当前的界面行为。界面管理器管理、分类所有的界面。
[0018]图2所示为根据本发明实施例的游戏界面行为控制系统的一种界面行为描述表,该图只是列举了部分的界面属性和界面行为。该描述表包括所有界面的属性以及界面行为。其中A、B列分别代表界面属性和这些界面属性在描述表中的数据类型,Cl至C5表示得是这些界面行为的数据,这些数据是对用户开放的,用户根据需求可以直接或者通过编辑界面编辑其中的数据。
[0019]图3所示为根据本发明实施例的游戏界面行为控制系统的一次用户创建界面行为的简要过程,该创建过程包括:首先,用户根据需求修改界面行为描述表的内容,然后将表传递给界面配置文件生成器,界面配置文件生成器将表进行参数化,如下所示:
[〃HeroPropMain〃] = {
[〃CheckRange〃] = false,
[〃Desc〃]= 〃主角属性〃,
[〃ESC〃] = true,
[〃IsClickHide〃] = false,
[〃IsMulti〃] = true,
["Layer"] = 4,
[〃LevelLimit〃] = I,
[〃Locat1n〃] = A,
["ModuleName"]= 〃 角色",
[〃Name〃] = 〃HeroPropMain〃,
["OffsetPos"] = {0,0,},
["Path"] = /