游戏画面显示控制方法及其系统
技术领域
本发明涉及计算机游戏,更具体地说,涉及一种游戏画面显示控制方法及其系统。
背景技术
目前,2D图形游戏最显著的特征是所有图形元素是以平面图片的形式制作的,地图中的个体图素与其它个体图素整合在一起的,即整图制作。其地表、建筑等场景都是单帧的静止图片构成的。而动画则是以一张一帧的形式预先存在的,如果需要在游戏中表现动态的场景图素(例如火把,流动的水,飘动的旗子)是用几张图片组成在一起的动态图片,然后,按照一定的规则调用这些做好的动态图片,逐帧播放。
但是,如果在不更新游戏的情况下,需要变化某个体图素(例如,将树变化成积雪的树),一般是很难做到的。因为该个体图素是整个地图信息中的一部分,无法对其进行替换,而必须重新制作一幅新的整图,在该新的整图中,将该个体图素单独替换,其它不变。然后再将该整图全部更新到客户端,如果网络版的游戏,还需要更新到服务器。
由上述可知,当某一个体图素需要变化时,就需要重新制作新的整图,这样就大量重复使用了那些不需要变化的图素,造成人力、物力资源的浪费,甚至还会消耗过多的服务器资源和网络带宽资源,影响了服务器与用户交互的速度,破坏了用户的交互感受。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种游戏画面显示控制方法及其系统。
本发明解决其技术问题所采用的技术方案是:构造一种游戏画面显示控制方法,包括如下步骤:
S1.服务器端接收到改变地图图素的请求消息;
S2.服务器端根据请求消息更改服务器端地图配置文件中地图图素的关系,并将更改后的结果发送到客户端;
S3.客户端根据收到的消息,更改其客户端地图配置文件中地图图素的关系,根据所述客户端地图配置文件中地图图素关系调用存储在客户端中相应的地图图素文件并播放已制作好的指定帧,以实现对游戏画面的控制。
在本发明所述的方法中,在执行所述步骤S1之前进一步包括:
S01.设计出需要被管理的图素数量和规格;
S02.根据所述图素的数量和规则制作出游戏画面中需要被调用和管理的美术资源,并以地图图素文件的形式保存在客户端;
S03.利用地图编辑器将所述地图图素文件中的图素整合成地图文件。
在本发明所述的方法中,在执行所述步骤S2之前进一步包括:判断是否允许更改地图配置文件,该地图配置文件存储在服务器端和客户端,描述了地图中各图素的编号和位置的关系信息。
在本发明所述的方法中,若允许更改服务器端和客户端的地图配置文件,则所述方法转到所述步骤S2,且所述步骤S3具体包括,客户端根据收到的消息,更改其客户端地图配置文件中地图图素的关系,以进一步确认具体所要被调用、改变帧的地图图素的编号及位置,据此调用存储在客户端中相应的地图图素文件并播放已制作好的指定帧,以实现对游戏画面的控制。在本发明所述的方法中,在所述步骤S3中,所述根据所述客户端地图配置文件中地图图素关系调用存储在客户端中相应的地图图素文件并播放已制作好的指定帧进一步包括:
对地图上被允许绘制的图素进行管理;和
调用所述地图图素文件对所述被允许绘制的图素的指定帧进行重新绘制;
播放已制作好的指定帧播放已制作好的指定帧。
在本发明所述的方法中,地图上的每个图素均具有多帧的多种变化方案。
在本发明所述的方法中,播放地图上的图素的每一帧或多帧均是单独的信息。
本发明的有益效果是,使得游戏画面变化更丰富,节省了图素图量以及细化了后续维护对整个地图管理的控制。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明实现游戏画面显示控制的流程图;
图2是本发明游戏的前期制作的流程图。
具体实施方式
如图1所示,步骤S100中,当服务器接收到客户端发来的需要改变游戏画面中某个地图图素的请求时(例如,需要将地图上的树变化成有积雪的树,该树的编号是1-1-1),首先确认是否允许该请求(步骤S105中),主要是用户需要请求改变某地图上的某个图素,而因为改变这个图素之后,服务器可能会允许所有用户的客户端都改变这个图素的显示,因此需要判断修改这个图素的请求是不是允许的。如果不允许,则直接向客户端返回错误提示(步骤S110中);
否则,步骤S115中,则由服务器端的地图资源管理模块读取服务器端的地图配置文件,并判断是否允许更改该地图配置文件,该地图配置文件存储在服务器端和客户端,描述了地图中各图素的名称(或叫编号)和位置的关系信息(例如,该地图配置文件描述地图上所有图素的编号以及位置,各图素之间的关系如何)。
步骤S125中,如果不可以更改,则直接向客户端返回错误提示(步骤S120中);否则,则处理确认需要在客户端变化和修改地图中某个图素的请求消息(例如将上述图素1-1-1变化为另一图素1-1-2),更改完服务器端地图配置文件中的地图某个地图图素的关系后保存该地图配置文件,并将更改后的结果发送至客户端。
步骤S130中,当客户端接收到服务器发送来的处理结果的消息,由客户端上的地图资源管理模块对该消息进行处理。根据接收到的消息对客户端地图配置文件中相应的地图图素的关系进行更改,以进一步确认具体说要被调用、改变帧的地图图素的位置。
步骤S135中,游戏画面中地图图素的显示可以由客户端现有的地图资源显示模块来显示,地图资源显示模块根据接收到的消息,分别对某个地图上的某个图素进行管理。调用存储在客户端中的地图图素文件(该地图图素文件专门存放地图上的所有图素资源,便于调用需要变化的图素,是在制作游戏前期完成的,见图2所示),对被允许绘制的某个图素的某一帧重新绘制,并播放已经被制作好的指定帧。
最后,游戏画面上的地图中被修改的图素就可以显示出来。因此,上述方案不仅仅可以只变化一个图素,还可以对单一整图上的多个图素进行管理,变化出各种效果:例如建筑损坏,季节交替,风格变化等等。不需要更换全部图素,可以节省了不需要更换的、可以重复实用的那些图素的图量。
如图2所示,在游戏中,我们在屏幕上所看到的每一帧画面都是由若干图素按照某种顺序依次显示出来的,而这些图素实际上就是事先准备好的一些图片,比如说背景图片,人物角色的图片等等。这些都属于游戏的前期制作部分,具体制作包括以下三个步骤:
第一步,策划先设计出需要被管理的图素数量和规格。
步骤S200中,在该步骤中,策划除了按照现有的方法设计出每张地图的风格、规则、用途外,还需要精确到地图上的每个图素,并设计出每个图素有多少个变化方案。例如,地图中有一个“房子”的图素,除了第一帧是“房子的完整状态”外,还需要设计出第二帧以后的每帧的变化方案,例如,还需要设计出“该房子的秋天状态”,“该房子的破损状态”,“该房子燃烧状态”等等,并依此描述在第三帧、第四帧等后续的帧中。并详细描述出,该图素将用在什么地图的什么状态下,预计调用哪个美术资源的地图图素文件。
第二步,美术按照策划设计的规则,制作出游戏中将要被调用和管理的美术资源,并以地图图素文件的形式保存在客户端。
步骤S205中,在该步骤中,美术除了制作出每个图素的初始的单帧图以外,还需要按照策划的需要按照策划的需求,将后续的每一帧都制作出来,并且在表现上符合规格,该规格类似动画需求的连续帧的规格,但与动画帧不同的地方在于,动画是需要多帧图的连续播放,展现出一个连续的动态的图片,而本发明图素是,固定播放静止的每一帧(或者多帧)都是一个单独的信息,每帧之间未必存在必然的联系。
第三步,地图编辑人员利用地图编辑器将上述美术资源,参考程序给出的规则放入地图中,并整合成一个地图文件。
步骤S210、S215、S220、S225中,在该步骤中,地图编辑人员,必须严格按照策划的设计思路和美术提供图素的规则,将图素拼接在地图中,并且在地图编辑器的功能支持下,将多帧图素的变化规则和变化方法记录在策划预计的地图配置文件中,该地图配置文件具体描述了地图中各图素的编号和位置的关系信息,即需要改变多帧图素并定位具体那一帧的文件。最后,地图上的单独图素被修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若对本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。