本发明涉及数据处理领域,尤其是一种游戏数据的处理方法、系统和存储介质。
背景技术:
现在随着移动互联网的发展,人们获取游戏的途径越来越多,诸如应用商店、小程序、和网站等游戏分发渠道。随着人们休闲娱乐时间的碎片化,游戏往轻量级和休闲娱乐化发展。近年来,有很多优秀作品得到了市场的认可。例如捕鱼游戏、挖金矿游戏和跑酷游戏等。
其中,对于人气较高的捕鱼游戏,其游戏画面中会有很多鱼,在游戏的实现层面上,每一条鱼出现都需要为其创建一个独立的对象,每一次创建都需要耗费系统资源。而在游戏中,会有源源不断的鱼游出显示区域或者被玩家捕抓后消失。同时,会有源源不断的鱼被加入到显示区域中。
当前此类游戏的做法是,直接删除游出显示区域和被玩家不抓后消失的鱼;而在有新的鱼被加入到显示区域时,重新创建对象。这样的技术方案需要耗费大量的系统资源。
技术实现要素:
为解决上述技术问题,本发明的目的在于:提供一种游戏数据的处理方法、系统和存储介质,以减少对系统资源的浪费。
本发明所采取的第一种技术方案是:
一种游戏数据的处理方法,包括以下步骤:
在检测到第一目标对象从画面中被移除后,获取对象缓冲池的缓存对象的数量;
根据对象缓冲池的缓存对象的数量,将第一目标对象存储到对象缓冲池或者将第一目标对象删除;
获取创建请求;
根据所述创建请求在对象缓冲池中读取缓存对象作为第二目标对象加入到显示区域。
进一步,所述根据对象缓冲池的缓存对象的数量,将第一目标对象存储到对象缓冲池或者将第一目标对象删除,其具体包括:
判断对象缓冲池中的缓存对象的数量是否大于第一设定阈值,若是,则将第一目标对象删除,反之,则将第一目标对象存储到对象缓冲池。
进一步,所述将第一目标对象删除,其具体为:将第一目标对象所占用的内存空间进行释放。
进一步,所述第一目标对象从画面中被移除包括第一目标对象从显示区域内被移除或者第一目标对象移动到显示区域外。
进一步,在所述在检测到第一目标对象从画面中被移除后,获取对象缓冲池的缓存对象的数量,这一步骤之前还包括以下步骤:
获取移除请求;
根据所述移除请求确定从画面中被移除的第一目标对象。
本发明所采取的第二种技术方案是:
一种游戏数据的处理系统,包括:
第一获取模块,用于在检测到第一目标对象从画面中被移除后,获取对象缓冲池的缓存对象的数量;
处理模块,用于根据对象缓冲池的缓存对象的数量,将第一目标对象存储到对象缓冲池或者将第一目标对象删除;
第二获取模块,用于获取创建请求;
读取模块,用于根据所述创建请求在对象缓冲池中读取缓存对象作为第二目标对象加入到显示区域。
进一步,所述根据对象缓冲池的缓存对象的数量,将第一目标对象存储到对象缓冲池或者将第一目标对象删除,其具体包括:
判断对象缓冲池中的缓存对象的数量是否大于第一设定阈值,若是,则将第一目标对象删除,反之,则将第一目标对象存储到对象缓冲池。
进一步,所述将第一目标对象删除,其具体为:将第一目标对象所占用的内存空间进行释放。
本发明所采取的第三种技术方案是:
一种游戏数据的处理系统,包括:
至少一个存储器,用于存储程序;
至少一个处理器,用于加载所述程序以执行一种游戏数据的处理方法。
本发明所采取的第四种技术方案是:
一种存储介质,其存储有程序,所述程序被处理器执行时实现一种游戏数据的处理方法。
本发明的有益效果是:本发明设置了对象缓冲池,并根据对象缓冲池中缓存对象的数量,确定被移除的第一目标对象是直接删除还是存储缓冲池,然后在创建对象时,在缓冲池中直接读取缓存对象作为第二目标对象加入到显示区域,本发明通过对象缓冲池,可以减少对象的创建数量,降低系统的运算量,节省了系统资源。
附图说明
图1为本发明一种游戏数据的处理方法的流程图。
具体实施方式
下面结合说明书附图和具体的实施例对本发明进行进一步的说明。
参照图1,一种游戏数据的处理方法,包括以下步骤:
s101、在检测到第一目标对象从画面中被移除后,获取对象缓冲池的缓存对象的数量。
本步骤为条件触发,只有在第一目标对象从画面中被移除时,才会触发执行本步骤。在本实施例中,第一目标对象是指在显示区域内的鱼。
s102、根据对象缓冲池的缓存对象的数量,将第一目标对象存储到对象缓冲池或者将第一目标对象删除。
本实施例根据对象缓冲池的缓存对象的数量来决定将第一目标对象存储到对象缓冲池还是将第一目标对象直接删除。在本实施例中,当对象缓冲池中的缓存对象的数量达到可以满足游戏需求的时候,可以将第一目标对象直接删除。当对象缓冲池中的缓存对象的数量没有满足游戏需求时,则可以将第一目标对象缓存在对象缓冲池中进行复用。
s103、获取创建请求。
游戏负责控制显示区域内鱼的数量的线程,在需要在显示区域中加入鱼的时候,会发起创建请求。所述创建请求包括创建类型。
s104、根据所述创建请求在对象缓冲池中读取缓存对象作为第二目标对象加入到显示区域。
本步骤根据创建请求中的创建类型,在对象缓冲池中查找相同类型的对象,然后将该对象读取出来作为第二目标对象,再将其加入到显示区域中。例如,需要创建一条鲨鱼,本实施例首先在对象缓冲池中查找是否存在已经被缓存的类型为鲨鱼的对象;如果有,则直接读取该对象作为新的鲨鱼加入到显示区域中;如果没有,则重新创建一个类型为鲨鱼的对象。
作为优选的实施例,所述根据对象缓冲池的缓存对象的数量,将第一目标对象存储到对象缓冲池或者将第一目标对象删除,其具体包括:
判断对象缓冲池中的缓存对象的数量是否大于第一设定阈值,若是,则将第一目标对象删除,反之,则将第一目标对象存储到对象缓冲池。
本实施例通过阈值判断,算法简单,便于开发和实现,适合应用在规模较小的游戏中。
作为优选的实施例,所述将第一目标对象删除,其具体为:将第一目标对象所占用的内存空间进行释放。
作为优选的实施例,所述第一目标对象从画面中被移除包括第一目标对象从显示区域内被移除或者第一目标对象移动到显示区域外。
本实施例中,所述第一目标对象从显示区域内被移除一般是指鱼在游戏中被玩家捕抓,然后直接从现实区域中消失的情况,而第一目标对象移动到显示区域外是指鱼在游戏中游到显示区域外面,从而消失。
作为优选的实施例,在所述步骤s101,之前还包括以下步骤:
获取移除请求;
根据所述移除请求确定从画面中被移除的第一目标对象。
游戏负责控制内存管理的线程在有鱼被移除后,会触发移除请求,请求清理内存中的数据,如果鱼一直被创建而不被删除,则会发生内存溢出。
本实施例公开了一种与图1相对应的游戏数据的处理系统,其包括:
第一获取模块,用于在检测到第一目标对象从画面中被移除后,获取对象缓冲池的缓存对象的数量;
处理模块,用于根据对象缓冲池的缓存对象的数量,将第一目标对象存储到对象缓冲池或者将第一目标对象删除;
第二获取模块,用于获取创建请求;
读取模块,用于根据所述创建请求在对象缓冲池中读取缓存对象作为第二目标对象加入到显示区域。
作为优选的实施例,所述根据对象缓冲池的缓存对象的数量,将第一目标对象存储到对象缓冲池或者将第一目标对象删除,其具体包括:
判断对象缓冲池中的缓存对象的数量是否大于第一设定阈值,若是,则将第一目标对象删除,反之,则将第一目标对象存储到对象缓冲池。
作为优选的实施例,所述将第一目标对象删除,其具体为:将第一目标对象所占用的内存空间进行释放。
本实施例公开了一种与图1相对应的游戏数据的处理系统,其包括:
至少一个存储器,用于存储程序;
至少一个处理器,用于加载所述程序以执行一种游戏数据的处理方法。
本实施例公开了一种与图1相对应的存储介质,其存储有程序,所述程序被处理器执行时实现一种游戏数据的处理方法。
对于上述方法实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。