[发明专利]一种电子游戏资源高效加载方法及系统有效
申请号: | 201410753185.3 | 申请日: | 2014-12-09 |
公开(公告)号: | CN104536780B | 公开(公告)日: | 2018-04-20 |
发明(设计)人: | 彭达;邹涛;陈飞舟;沈震坤;李杰;许剑峰 | 申请(专利权)人: | 珠海金山网络游戏科技有限公司;成都西山居互动娱乐科技有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445 |
代理公司: | 广州嘉权专利商标事务所有限公司44205 | 代理人: | 谭志强 |
地址: | 519000 广东省珠*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 电子游戏 资源 高效 加载 方法 系统 | ||
技术领域
本发明涉及计算机技术领域,尤其涉及一种电子游戏资源高效加载方法及系统。
背景技术
现在的各种电子游戏在运行过程中都需要加载各类游戏资源,同类游戏资源一般既有需要渲染线程同步加载的部分,也有可以通过加载线程进行异步加载的部分。但是现在大部分的技术方案中是在将整个加载功能中包含的各子功能作为一个整体,渲染线程和加载线程需要加载时都执行相同的流程,这样的话渲染线程和加载线程之间必然需要进行同步、互斥或加锁,因此这样比较容易导致加载线程会拖累渲染线程从而卡顿的现象。
发明内容
为了解决上述技术问题,本发明的目的是提供一种能有效减少卡顿现象,提升用户体验的一种电子游戏资源高效加载方法及系统。
本发明所采用的技术方案是:
一种电子游戏资源高效加载方法,包括以下步骤:
A、渲染线程接收加载资源请求,并查找资源管理器内是否已存在该资源,若是,则返回加载完成并结束;反之,则执行步骤B;
B、渲染线程创建存放该资源所需的内存;
C、根据加载资源请求的类型,读取对应的资源数据到内存中并返回加载状态。
作为所述的一种电子游戏资源高效加载方法的进一步改进,所述步骤C包括:
C1、判断加载资源请求是否是同步请求,若是,则渲染线程读取对应的资源数据到内存中,进而返回加载完成并结束;反之,则执行步骤C2;
C2、将加载资源请求添加至异步加载请求队列中,并返回等待加载状态;
C3、加载线程对异步加载请求队列中的加载资源请求进行处理,并返回加载状态。
作为所述的一种电子游戏资源高效加载方法的进一步改进,所述步骤C3包括:
C31、加载线程依次取出异步加载请求队列中的加载资源请求;
C32、根据取出的加载资源请求,加载线程读取对应的资源数据到内存中;
C33、返回加载完成并结束。
本发明所采用的另一技术方案是:
一种电子游戏资源高效加载系统,包括:
查找单元,用于渲染线程接收加载资源请求,并查找资源管理器内是否已存在该资源,若是,则返回加载完成并结束;反之,则执行创建单元;
创建单元,用于渲染线程创建存放该资源所需的内存;
加载单元,用于根据加载资源请求的类型,读取对应的资源数据到内存中并返回加载状态。
作为所述的一种电子游戏资源高效加载系统的进一步改进,所述加载单元包括:
判断单元,用于判断加载资源请求是否是同步请求,若是,则渲染线程读取对应的资源数据到内存中,进而返回加载完成并结束;反之,则执行异步队列添加单元;
异步队列添加单元,用于将加载资源请求添加至异步加载请求队列中,并返回等待加载状态;
加载线程处理单元,用于加载线程对异步加载请求队列中的加载资源请求进行处理,并返回加载状态。
作为所述的一种电子游戏资源高效加载系统的进一步改进,所述加载线程处理单元包括:
请求取出单元,用于加载线程依次取出异步加载请求队列中的加载资源请求;
数据读取单元,用于根据取出的加载资源请求,加载线程读取对应的资源数据到内存中;
状态返回单元,用于返回加载完成并结束。
本发明的有益效果是:
本发明一种电子游戏资源高效加载方法及系统通过将渲染线程和加载线程的功能进行分配,能最大程度消除渲染线程与加载线程之间的各种锁,并且能确保慢速的资源数据读取不会拖累到要求快速进行的渲染功能,从而能有效减少游戏体验过程中的卡顿现象,大大提升用户的游戏体验。
附图说明
下面结合附图对本发明的具体实施方式作进一步说明:
图1是本发明一种电子游戏资源高效加载方法的步骤流程图;
图2是本发明一种电子游戏资源高效加载方法步骤C的步骤流程图;
图3是本发明一种电子游戏资源高效加载方法步骤C3的步骤流程图;
图4是本发明一种电子游戏资源高效加载系统的模块方框图。
具体实施方式
参考图1,本发明一种电子游戏资源高效加载方法,包括以下步骤:
A、渲染线程接收加载资源请求,并查找资源管理器内是否已存在该资源,若是,则返回加载完成并结束;反之,则执行步骤B;
B、渲染线程创建存放该资源所需的内存;
C、根据加载资源请求的类型,读取对应的资源数据到内存中并返回加载状态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海金山网络游戏科技有限公司;成都西山居互动娱乐科技有限公司,未经珠海金山网络游戏科技有限公司;成都西山居互动娱乐科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410753185.3/2.html,转载请声明来源钻瓜专利网。