会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利分类库 / 运动;游戏;娱乐活动 / 游戏状态同步方法、装置、设备及存储介质

游戏状态同步方法、装置、设备及存储介质

申请号 CN202311754622.9 申请日 2023-12-19 公开(公告)号 CN117732046A 公开(公告)日 2024-03-22
申请人 咪咕文化科技有限公司; 中国移动通信集团有限公司; 发明人 陈星睿; 郑彬戈; 齐松; 仝博; 李伟;
摘要 本 发明 公开一种游戏状态同步方法、装置、设备及存储介质,通过获取客户端发送的同步数据包,以解析得到目标 角 色的角色状态数据;当所述目标角色的当前画面 帧 超出预设的帧 阈值 临界点 时,采用插值 算法 对所述角色状态数据进行运算,同步所述目标角色的状态;其中,所述帧阈值临界点与所述目标角色出生所在帧的帧数差值为预设差值;当所述目标角色的当前画面帧未超出预设的帧阈值临界点时,对所述角色状态数据直接赋值运算,同步所述目标角色的状态。本发明 实施例 通过根据目标角色的当前画面帧与帧阈值临界点的比对结果选用不同的游戏状态同步方式,降低了角色同步过程中掉帧、卡顿和缓冲的 风 险。
权利要求

1.一种游戏状态同步方法,其特征在于,包括:
获取客户端发送的同步数据包,并解析得到目标色的角色状态数据;
当所述目标角色的当前画面超出预设的帧阈值临界点时,采用插值算法对所述角色状态数据进行运算,同步所述目标角色的状态;其中,所述帧阈值临界点与所述目标角色出生所在帧的帧数差值为预设差值;
当所述目标角色的当前画面帧未超出预设的帧阈值临界点时,对所述角色状态数据直接赋值运算,同步所述目标角色的状态。
2.如权利要求1所述的游戏状态同步方法,其特征在于,所述当所述目标角色的当前画面帧超出预设的帧阈值临界点时,采用插值算法对所述角色状态数据进行运算,同步所述目标角色的状态,还包括:
获取所述客户端对于所述同步数据包的发送频率
当所述目标角色的当前画面帧超出预设的帧阈值临界点时,对所述角色状态数据以所述发送频率进行插值运算,同步所述目标角色的状态。
3.如权利要求2所述的游戏状态同步方法,其特征在于,所述获取客户端发送的同步数据包,包括:获取客户端通过服务器广播的同步数据包。
4.如权利要求1所述的游戏状态同步方法,其特征在于,还包括:
响应于用户操作,对指定角色进行处理,并根据处理结果生成同步数据包;
将生成的同步数据包通过服务器进行广播,分发至所述客户端。
5.如权利要求4所述的游戏状态同步方法,其特征在于,所述响应于用户操作,对指定角色进行处理,包括以下中的至少一种:
响应于角色创建操作,创建指定角色;
响应于角色移动操作,控制所述指定角色移动;
响应于角色摧毁操作,摧毁所述指定角色;
响应于角色动作状态改变操作,控制所述指定角色的动作状态改变。
6.如权利要求1~5任一所述的游戏状态同步方法,其特征在于,还包括:
向服务器发起角色查验请求;其中,所述角色查验请求包括当前场景ID和当前场景的现有角色信息;
接收所述服务器反馈的角色修正信息,并根据所述角色修正信息对当前场景的角色进行修正;
其中,所述角色修正信息由所述服务器通过以下方式得到:
解析所述角色查验请求,得到所述当前场景ID和所述现有角色信息;
根据所述当前场景ID查询后台维持的所有角色信息,并与所述现有角色信息比对,得到遗漏角色和多余角色;
根据所述遗漏角色和所述多余角色生成角色修正信息。
7.如权利要求6所述的游戏状态同步方法,其特征在于,所述角色查验请求还包括客户端心跳数据,所述角色修正信息还包括服务器心跳数据。
8.一种游戏状态同步装置,其特征在于,包括:
数据获取模,用于获取客户端发送的同步数据包,并解析得到目标角色的角色状态数据;
第一同步模块,用于当所述目标角色的当前画面帧超出预设的帧阈值临界点时,采用插值算法对所述角色状态数据进行运算,同步所述目标角色的状态;其中,所述帧阈值临界点与所述目标角色出生所在帧的帧数差值为预设差值;
第二同步模块,用于当所述目标角色的当前画面帧未超出预设的帧阈值临界点时,对所述角色状态数据直接赋值运算,同步所述目标角色的状态。
9.一种游戏状态同步设备,其特征在于,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任意一项所述的游戏状态同步方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至7中任意一项所述的游戏状态同步方法。

说明书全文

游戏状态同步方法、装置、设备及存储介质

技术领域

[0001] 本发明涉及计算机技术领域,具体的说,涉及的是一种游戏状态同步方法、装置、设备及存储介质。

背景技术

[0002] 网络游戏是联网进行的多人电子游戏,又称在线游戏,在用户进行网络游戏时,需要保障各个用户之间的信息交互,实现各个客户端的游戏状态同步。现有技术中,状态同步方式通常有同步、状态同步和实时广播同步,其中,帧同步和状态同步每间隔一定时间向服务器发送一次状态,而实时广播则是实时进行;在进行游戏时通常由上述三种同步方式单独使用或结合使用将消息进行广播。然而对于多人在线时数据量大、色较多的情况,上述方案在角色同步过程中容易出现掉帧、卡顿和缓冲问题。

发明内容

[0003] 基于此,本发明提供了一种游戏状态同步方法、装置、设备及存储介质,其能够通过根据目标角色的当前画面帧与帧阈值临界点的比对结果选用不同的游戏状态同步方式,降低了角色同步过程中掉帧、卡顿和缓冲的险。
[0004] 为实现上述目的,本发明实施例提供了一种游戏状态同步方法,包括:
[0005] 获取客户端发送的同步数据包,并解析得到目标角色的角色状态数据;
[0006] 当所述目标角色的当前画面帧超出预设的帧阈值临界点时,采用插值算法对所述角色状态数据进行运算,同步所述目标角色的状态;其中,所述帧阈值临界点与所述目标角色出生所在帧的帧数差值为预设差值;
[0007] 当所述目标角色的当前画面帧未超出预设的帧阈值临界点时,对所述角色状态数据直接赋值运算,同步所述目标角色的状态。
[0008] 作为上述方案的改进,所述当所述目标角色的当前画面帧超出预设的帧阈值临界点时,采用插值算法对所述角色状态数据进行运算,同步所述目标角色的状态,还包括:
[0009] 获取所述客户端对于所述同步数据包的发送频率
[0010] 当所述目标角色的当前画面帧超出预设的帧阈值临界点时,对所述角色状态数据以所述发送频率进行插值运算,同步所述目标角色的状态。
[0011] 作为上述方案的改进,所述获取客户端发送的同步数据包,包括:获取客户端通过服务器广播的同步数据包。
[0012] 作为上述方案的改进,还包括:
[0013] 响应于用户操作,对指定角色进行处理,并根据处理结果生成同步数据包;
[0014] 将生成的同步数据包通过服务器进行广播,分发至所述客户端。
[0015] 作为上述方案的改进,所述响应于用户操作,对指定角色进行处理,包括以下中的至少一种:
[0016] 响应于角色创建操作,创建指定角色;
[0017] 响应于角色移动操作,控制所述指定角色移动;
[0018] 响应于角色摧毁操作,摧毁所述指定角色;
[0019] 响应于角色动作状态改变操作,控制所述指定角色的动作状态改变。
[0020] 作为上述方案的改进,还包括:
[0021] 向服务器发起角色查验请求;其中,所述角色查验请求包括当前场景ID和当前场景的现有角色信息;
[0022] 接收所述服务器反馈的角色修正信息,并根据所述角色修正信息对当前场景的角色进行修正;
[0023] 其中,所述角色修正信息由所述服务器通过以下方式得到:
[0024] 解析所述角色查验请求,得到所述当前场景ID和所述现有角色信息;
[0025] 根据所述当前场景ID查询后台维持的所有角色信息,并与所述现有角色信息比对,得到遗漏角色和多余角色;
[0026] 根据所述遗漏角色和所述多余角色生成角色修正信息。
[0027] 作为上述方案的改进,所述角色查验请求还包括客户端心跳数据,所述角色修正信息还包括服务器心跳数据。
[0028] 为实现上述目的,本发明实施例还提供了一种游戏状态同步装置,包括:
[0029] 数据获取模,用于获取客户端发送的同步数据包,并解析得到目标角色的角色状态数据;
[0030] 第一同步模块,用于当所述目标角色的当前画面帧超出预设的帧阈值临界点时,采用插值算法对所述角色状态数据进行运算,同步所述目标角色的状态;其中,所述帧阈值临界点与所述目标角色出生所在帧的帧数差值为预设差值;
[0031] 第二同步模块,用于当所述目标角色的当前画面帧未超出预设的帧阈值临界点时,对所述角色状态数据直接赋值运算,同步所述目标角色的状态。
[0032] 为实现上述目的,本发明实施例还提供了一种游戏状态同步设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一实施例所述的游戏状态同步方法。
[0033] 为实现上述目的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如上述任一实施例所述的游戏状态同步方法。
[0034] 与现有技术相比,本发明实施例公开的游戏状态同步方法、装置、设备及存储介质,通过获取客户端发送的同步数据包,以解析得到目标角色的角色状态数据;当所述目标角色的当前画面帧超出预设的帧阈值临界点时,采用插值算法对所述角色状态数据进行运算,同步所述目标角色的状态;其中,所述帧阈值临界点与所述目标角色出生所在帧的帧数差值为预设差值;当所述目标角色的当前画面帧未超出预设的帧阈值临界点时,对所述角色状态数据直接赋值运算,同步所述目标角色的状态。由此可见,本发明实施例通过根据目标角色的当前画面帧与帧阈值临界点的比对结果选用不同的游戏状态同步方式,降低了角色同步过程中掉帧、卡顿和缓冲的风险。附图说明
[0035] 为了更清楚地说明本发明的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0036] 图1是本发明一实施例提供的一种游戏状态同步方法的流程示意图;
[0037] 图2是本发明一实施例提供的游戏状态同步架构图;
[0038] 图3是本发明一实施例提供的服务器数据处理流程示意图。

具体实施方式

[0039] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0040] 参见图1,是本发明一实施例提供的一种游戏状态同步方法的流程示意图。
[0041] 具体地,所述游戏状态同步方法,包括步骤S1~S3:
[0042] S1、获取客户端发送的同步数据包,并解析得到目标角色的角色状态数据;
[0043] S2、当所述目标角色的当前画面帧超出预设的帧阈值临界点时,采用插值算法对所述角色状态数据进行运算,同步所述目标角色的状态;其中,所述帧阈值临界点与所述目标角色出生所在帧的帧数差值为预设差值;
[0044] S3、当所述目标角色的当前画面帧未超出预设的帧阈值临界点时,对所述角色状态数据直接赋值运算,同步所述目标角色的状态。
[0045] 具体地,请参见图2,图2为本申请实施例提供的一种游戏状态同步架构图,如图1所示,游戏状态同步架构由服务集群10和多个客户端20组成,本申请是通过本地客户端所实现的,对本地客户端与其他客户端之间进行游戏数据同步。其中,客户端可以是计算机,也可以是手机等终端设备,在此不作限定,客户端与客户端之前的数据通过服务集群中的服务器进行广播,实现数据同步。
[0046] 示例性的,假设用户A、B、C、D、E五位用户同时在线(每位用户各代表一个客户端),且在同一场景内任意运动,此时假如用户A的在场景里行走或奔跑,以每T秒发送一次自身的状态数据,比如空间坐标/朝向等数据。其余四位用户收到用户A发来的数据后,需要同步A的状态。首先用户B需要判断在A在B的画面里是否处于第一帧画面(即A角色出生的帧),若是,则直接用收到的数据对用户A赋值,以避免跳帧或者错误的插值过程;若不是第一帧画面,则采用以同样的T秒进行插值运动来进行状态同步,同理,用户C、D和E对各自画面中的A的状态进行更新,实现各个用户的数据同步。
[0047] 值得说明的是,预设差值为大于等于0的正整数,可根据实际情况进行设置。
[0048] 与现有技术相比,本发明实施例通过根据目标角色的当前画面帧与帧阈值临界点的比对结果选用不同的游戏状态同步方式,降低了角色同步过程中掉帧、卡顿和缓冲的风险。
[0049] 在一种优选的实施例中,所述当所述目标角色的当前画面帧超出预设的帧阈值临界点时,采用插值算法对所述角色状态数据进行运算,同步所述目标角色的状态,还包括:
[0050] 获取所述客户端对于所述同步数据包的发送频率;
[0051] 当所述目标角色的当前画面帧超出预设的帧阈值临界点时,对所述角色状态数据以所述发送频率进行插值运算,同步所述目标角色的状态。
[0052] 示例性的,客户端收到服务器广播来的数据时,根据不同的数据类别进行对应的角色同步,假设其他客户端以每T秒发送一次自身的状态数据的发送频率,向服务器发送数据,由服务器进行广播。在本地客户端中,在大于T时,角色被还原行为时会比较慢,且停止时会漂移;小于T时,角色同步时会有卡顿现象。为了确保角色不会出现闪现、抖动和延迟等异常现象,在收到角色出生指令后开始帧累加计算,前M帧对数据进行直接赋值运算,可避免角色闪现现象,再对之后的数据以同样的T秒进行插值运算,即M帧内直接赋值,M帧外的进行插值运动,可确保角色无抖动和无延迟的流畅运动。
[0053] 值得说明的是,通常M设置为人眼不可察觉的值,例如10帧,可以根据需求自行设置,通常设置在15帧以内,因为15帧以内人眼无法察觉,一般情况下,可设置M的取值范围为1到15。
[0054] 在一种优选的实施例中,所述获取客户端发送的同步数据包,包括:获取客户端通过服务器广播的同步数据包。
[0055] 在一种优选的实施例中,还包括:
[0056] 响应于用户操作,对指定角色进行处理,并根据处理结果生成同步数据包;
[0057] 将生成的同步数据包通过服务器进行广播,分发至所述客户端。
[0058] 在一种优选的实施例中,所述响应于用户操作,对指定角色进行处理,包括以下中的至少一种:
[0059] 响应于角色创建操作,创建指定角色;
[0060] 响应于角色移动操作,控制所述指定角色移动;
[0061] 响应于角色摧毁操作,摧毁所述指定角色;
[0062] 响应于角色动作状态改变操作,控制所述指定角色的动作状态改变。
[0063] 具体地,角色创建操作、角色移动操作、角色摧毁操作和角色动作状态改变操作为用户操作,用户可以通过鼠标键盘或触控屏等电子设备与客户端互动。
[0064] 具体地,分别在客户端和服务端(服务器)进行不同的逻辑处理,客户端上报行为数据和解析同步行为、服务器集群处理与透传行为数据两个部分,示例性的,详细流程如下:
[0065] 首先,客户端需要和服务端约定网络同步数据协议,常见包括但不限于角色ID、消息类型、空间位置、空间朝向、动作指令和对应动作指令的数据等。约定好协议后客户端和服务器分别进行网络同步逻辑开发。
[0066] 对于客户端,将消息类型分为“角色出生指令”(出生指令)、“角色运动定时更新指令”(定时更新指令)、“角色状态变化实时更新指令”(状态变化指令)和“角色摧毁指令”(摧毁指令)。当角色初次创建时需要发送角色出生数据给服务器;当角色处于持续移动中时需要以每T秒发送角色定时更新数据给服务器;当角色场景跳转或者离开等摧毁时需要发送角色摧毁指令给服务器;当角色动作状态改变时需要实时发送新的状态数据给服务器。
[0067] 对于服务器,在收到客户端发来的各种类型数据时,根据业务需求对发来的数据进行直接透传广播或者业务加工后再广播,例如在角色非运动状态下的状态变化需要实时广播出去,比如跳跃、挥手、坐下等动作的时候。示例性的,如图3所示,对客户端发送过来的指令数据(同步数据包)进行解析,识别出生效场景ID和指令类别(角色状态数据),指令类别包括出生指令、定时更新指令、状态变化指令和摧毁指令;对于出生指令,判断是否需要分配出生地,若是,则计算出生地并进行数据替换,然后经过安全校验、行为预测等数据处理,最后进行数据广播,若否,直接进行数据广播;对于定时更新指令、状态变化指令和摧毁指令经过安全校验、行为预测等数据处理,然后进行数据广播。
[0068] 最后,客户端收到服务器广播来的数据时,依然根据不同的数据类别进行对应的角色同步,采用所述游戏状态同步方法进行同步。
[0069] 在一种优选的实施例中,还包括:
[0070] 向服务器发起角色查验请求;其中,所述角色查验请求包括当前场景ID和当前场景的现有角色信息;
[0071] 接收所述服务器反馈的角色修正信息,并根据所述角色修正信息对当前场景的角色进行修正;
[0072] 其中,所述角色修正信息由所述服务器通过以下方式得到:
[0073] 解析所述角色查验请求,得到所述当前场景ID和所述现有角色信息;
[0074] 根据所述当前场景ID查询后台维持的所有角色信息,并与所述现有角色信息比对,得到遗漏角色和多余角色;
[0075] 根据所述遗漏角色和所述多余角色生成角色修正信息。
[0076] 在一种优选的实施例中,所述角色查验请求还包括客户端心跳数据,所述角色修正信息还包括服务器心跳数据。
[0077] 具体地,场景中的角色频繁创建和移除容易导致角色数量不一致,为了确保同一场景中的角色数量的一致,客户端和服务端通过建立心跳机制来进行纠正。客户端和服务端通过彼此检测对方心跳消息来判断对方是否离线,若心跳正常收发则通过数据来进行查漏补缺。其具体过程如下:
[0078] 1、客户端发起心跳格式为{消息类型:心跳,数据:场景ID,当前场景的所有角色信息}的心跳信息。消息类型用于区分其它业务层的消息,可以直接判定这是心跳数据;场景ID描述了此客户端当前所在场景的唯一标识;当前场景的所有角色信息表示了此客户端在当前场景能看到的所有角色信息。
[0079] 2、服务端发起心跳格式为{消息类型:心跳,数据:场景ID,待增加角色列表,待删除角色列表},服务端将收到某客户端的发来的数据后,服务器会拿着数据与后台维持的这个场景所有角色信息数据进行差异对比,生成待增加的角色列表和待删除的角色列表,然后形成新的心跳数据回复给这个客户端。
[0080] 3、客户端在收到服务器发来的数据后,再在此场景中创建遗漏的角色和删除多余的角色。
[0081] 由此可见,本发明实施例公开的游戏状态同步方法,设置了帧阈值临界点M,小于等于阈值时采用直接赋值进行位移同步,大于阈值时采用插值位移方式,用来确保角色无闪现漂移现象;采用了在角色持续位移过程中定时广播机制来减少数据量又不影响角色的同步,持续位移时以T秒每条数据定时发给服务集群,其它客户端以同样的T秒进行插值位移,可确保角色无抖动运动,也无延迟运动的现象,解决下发数据量过大、角色同步跳帧、角色行为卡顿或者缓慢等问题。
[0082] 本发明实施例还提供一种游戏状态同步装置,包括:
[0083] 数据获取模块,用于获取客户端发送的同步数据包,并解析得到目标角色的角色状态数据;
[0084] 第一同步模块,用于当所述目标角色的当前画面帧超出预设的帧阈值临界点时,采用插值算法对所述角色状态数据进行运算,同步所述目标角色的状态;其中,所述帧阈值临界点与所述目标角色出生所在帧的帧数差值为预设差值;
[0085] 第二同步模块,用于当所述目标角色的当前画面帧未超出预设的帧阈值临界点时,对所述角色状态数据直接赋值运算,同步所述目标角色的状态。
[0086] 值得说明的是,具体的所述游戏状态同步装置的工作过程可参考上述实施例中所述游戏状态同步方法的工作过程,在此不再赘述。
[0087] 与现有技术相比,本发明实施例公开的游戏状态同步装置通过根据目标角色的当前画面帧与帧阈值临界点的比对结果选用不同的游戏状态同步方式,降低了角色同步过程中掉帧、卡顿和缓冲的风险。
[0088] 本发明实施例还提供一种游戏状态同步设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上述游戏状态同步方法实施例中的步骤,例如图1中所述的步骤S1~S3;或者,所述处理器执行所述计算机程序时实现上述各装置实施例中各模块的功能。
[0089] 示例性的,所述计算机程序可以被分割成一个或多个模块,所述一个或者多个模块被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述游戏状态同步设备中的执行过程。例如,所述计算机程序可以被分割成多个模块,各模块具体功能如下:
[0090] 数据获取模块,用于获取客户端发送的同步数据包,并解析得到目标角色的角色状态数据;
[0091] 第一同步模块,用于当所述目标角色的当前画面帧超出预设的帧阈值临界点时,采用插值算法对所述角色状态数据进行运算,同步所述目标角色的状态;其中,所述帧阈值临界点与所述目标角色出生所在帧的帧数差值为预设差值;
[0092] 第二同步模块,用于当所述目标角色的当前画面帧未超出预设的帧阈值临界点时,对所述角色状态数据直接赋值运算,同步所述目标角色的状态。
[0093] 各个模块具体的工作过程可参考上述实施例所述的游戏状态同步装置的工作过程,在此不再赘述。
[0094] 所述游戏状态同步设备可以是桌上型计算机、笔记本、掌上电脑及端服务器等计算设备。所述游戏状态同步设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,所述游戏状态同步设备还可以包括输入输出设备、网络接入设备、总线等。
[0095] 所述处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程阵列(Field‑Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述游戏状态同步设备的控制中心,利用各种接口和线路连接整个游戏状态同步设备的各个部分。
[0096] 所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述游戏状态同步设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0097] 其中,所述游戏状态同步设备集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
[0098] 以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。