CN104598270B - 一种多人网络游戏中资源加载的方法和装置 - Google Patents

一种多人网络游戏中资源加载的方法和装置 Download PDF

Info

Publication number
CN104598270B
CN104598270B CN201410806709.0A CN201410806709A CN104598270B CN 104598270 B CN104598270 B CN 104598270B CN 201410806709 A CN201410806709 A CN 201410806709A CN 104598270 B CN104598270 B CN 104598270B
Authority
CN
China
Prior art keywords
resource
list
resource file
loaded
quoting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410806709.0A
Other languages
English (en)
Other versions
CN104598270A (zh
Inventor
王洪彦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Pixel Software Technology Co Ltd
Original Assignee
Beijing Pixel Software Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Pixel Software Technology Co Ltd filed Critical Beijing Pixel Software Technology Co Ltd
Priority to CN201410806709.0A priority Critical patent/CN104598270B/zh
Publication of CN104598270A publication Critical patent/CN104598270A/zh
Application granted granted Critical
Publication of CN104598270B publication Critical patent/CN104598270B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种多人网络游戏中资源加载的方法,包括:A、确定需要预加载到内存的资源文件列表;B、客户端启动初始化的时候,将资源文件列表中的资源文件加载在内存中;C、判断是否客户端加载了资源文件列表之外的其他资源,若是,执行步骤D,否则执行步骤E;D、将所述被加载的其他资源文件名加入到资源引用计数列表中,并记录资源的使用次数和最近使用时间;E、判断是否满足删除资源的条件,若是,删除资源引用计数列表中未被使用的时间超过第一阈值的资源,同时更新资源文件列表,删除下次客户端启动不需要预加载的资源。本申请还公开了一种多人网络游戏中资源加载的装置。本申请方案能够提高资源访问速度,又有效地节省了内存空间的占用。

Description

一种多人网络游戏中资源加载的方法和装置
技术领域
本申请涉及计算机网络技术领域,尤其涉及一种多人网络游戏中资源加载的方法和装置。
背景技术
在多人网络游戏中经常会出现多角色互动的情况,当任一玩家的视野中出现很多其他玩家的时候或者出现很多非玩家角色(NPC)的时候,就需要同时加载这些角色相关的资源。
现有技术中一种资源加载的方法是:资源全部存储在客户端的硬盘文件中,需要的时候再去加载资源。这种方式的优点在于可以节省内存空间、游戏启动速度快,然而会导致如下缺点:频繁加载资源会导致经常卡顿,流畅度大幅下降。
为了避免大量资源加载导致流畅度下降的情况,现有技术中还有一种资源加载的方式是资源全部提前加载到内存中,需要的时候从内存直接访问,其优点是访问速度快、流畅度大幅提高,然而缺点是内存空间占用多,对客户端的硬件要求过高,并且游戏启动速度慢。
发明内容
本申请提供了一种多人网络游戏中资源加载的方法及装置,能够提高资源访问速度,又有效地节省了内存空间的占用。
本申请实施例提供了一种多人网络游戏中资源加载的方法,包括:
A、确定需要预加载到内存的资源文件列表;
B、客户端启动初始化的时候,将资源文件列表中的资源文件加载在内存中;
C、判断是否客户端加载了资源文件列表之外的其他资源,若是,执行步骤D,否则执行步骤E;
D、将所述被加载的其他资源文件名加入到资源引用计数列表中,并记录资源的使用次数和最近使用时间;
E、判断是否满足删除资源的条件,若是,删除资源引用计数列表中未被使用的时间超过第一阈值的资源,同时更新资源文件列表,删除下次客户端启动不需要预加载的资源。
较佳地,所述资源文件列表包括基础资源文件列表和临时资源文件列表;所述基础资源文件列表对于每一个客户端内容相同;临时资源文件列表初始为空,根据玩家的行为情况动态增加内容。
较佳地,所述基础资源文件列表中包括主角的相关资源文件。
较佳地,所述删除条件包括:发生特定事件;或者每隔预设的时间间隔则认为满足删除条件。
较佳地,所述特定事件为玩家进行场景转换或者发生特殊剧情播放动画。
较佳地,所述第一阈值为10分钟。
较佳地,该方法进一步包括:
判断是否关闭客户端,若是,对于资源引用计数列表中使用次数大于第二阈值的资源加入到临时资源文件列表中,否则返回步骤C。
较佳地,所述第二阈值为10次。
本申请实施例还提供了一种多人网络游戏中资源加载的装置,包括:
预加载模块,用于确定需要预加载到内存的资源文件列表;客户端启动初始化的时候,将资源文件列表中的资源文件加载在内存中;
判断模块,用于判断是否客户端加载了资源文件列表之外的其他资源,若是,使能资源引用计数模块,否则使能删除处理模块;
资源引用计数模块,将所述被加载的其他资源文件名加入到资源引用计数列表中,并记录资源的使用次数和最近使用时间,然后再使能删除处理模块;
删除处理模块,用于判断是否满足删除资源的条件,若是,删除资源引用计数列表中未被使用的时间超过第一阈值的资源,同时将资源引用计数列表中被删除的资源在资源文件列表中也同步删除。
较佳地,所述资源文件列表包括基础资源文件列表和临时资源文件列表;所述基础资源文件列表对于每一个客户端内容相同;临时资源文件列表初始为空,根据玩家的行为情况动态增加内容。
从以上技术方案可以看出,该方法较好地克服了完全内存加载和完全硬盘加载的弊端,只把访问频繁的资源提前加载到内存中,提高了资源访问速度,又有效节省了内存空间占用,在提高客户端流畅度的基础上也有很高的应用价值。同时,除了预加载主角这类通用资源外,还根据玩家自己的游戏行为预加载一些其他相关资源,进一步提高客户端流畅性并且增加了灵活性。
附图说明
图1为本申请实施例提供的多人网络游戏中资源加载的方法流程示意图。
具体实施方式
为使本申请技术方案的技术原理、特点以及技术效果更加清楚,以下结合具体实施例对本申请技术方案进行详细阐述。
本申请实施例提供的多人网络游戏中资源加载的方法流程如图1所示,包括如下步骤:
步骤101:确定需要预加载到内存的资源文件列表。
根据本申请的另一实施例,所述资源文件列表包括基础资源文件列表(PreResList)和临时资源文件列表(TempResList)。
主角的各种相关资源文件访问频繁,并且玩家之间的多人互动是比较普遍的情况,因此需要把主角的各种相关资源文件列举在PreResList中。
还有一些主角之外的资源文件(如怪物资源文件)对于玩家来说也可能是经常使用的资源,可以把这部分资源预加载到TempResList中,进一步提高客户端流畅性并且增加了灵活性。
PreResList和TempResList需要映射到客户端文件里,PreResList中的内容对于每个客户端都是一样的,TempResList中的内容则是随着客户端的不同而变化,TempResList最开始是没有内容的,根据玩家最近一段时间的行为情况,动态增减TempResList中的内容。
步骤102:客户端启动初始化的时候,将资源文件列表中的资源文件加载在内存中。
根据本申请的另一实施例,在客户端启动初始化时,把PreResList和TempResList里的资源文件加载到内存中。主角的资源文件相比其他资源所占的空间很小,但是访问非常频繁,因此这部分资源存储在PreResList中。此外,多人互动游戏中会经常需要加载其他玩家的角色,每个玩家的游戏行为的不同决定了每个玩家对其他资源也有频繁加载的情况,这部分资源的数量也不会很大,可以放置在TempResList中,作为PreResList的补充。
步骤103:判断是否客户端加载了资源文件列表之外的其他资源,若是,执行步骤104,否则执行步骤105。
步骤104:将所述被加载的其他资源文件名加入到资源引用计数列表(CountResList)中,并记录资源的使用次数和最近使用时间。所述其他资源指的是除了主角之外的怪物、地图场景等资源。
步骤105:判断是否满足删除资源的条件,若是,执行步骤106,否则转至步骤107。
所述删除条件包括但不限于:
发生特定事件,如玩家进行场景转换,发生特殊剧情播放动画等。
或者每隔预设的时间间隔则认为满足删除条件。所述时间间隔可以根据实际需要确定。
步骤106:删除CountResList中未被使用的时间超过第一阈值的资源,同时将CountResList中删除的资源在TempResList中也同步删除,所删除的资源就是客户端下次启动时不需要预加载的资源。
当此类特定事件发生时,客户端删除CountResList中未被使用的时间超过第一阈值的资源,同时更新TempResList,删除下次客户端启动不需要预加载的资源。
客户端每隔预设的时间间隔执行一次删除CountResList中未使用的时间超过第一阈值的资源,同时更新TempResList,删除下次客户端启动不需要预加载的资源。
所述第一时间阈值可以取为10分钟,也可以根据实际情况进行调整。
步骤107:判断是否关闭客户端,若是,执行步骤108,否则返回步骤103。
步骤108:玩家关闭客户端的时候,对于CountResList中使用次数大于第二阈值的资源加入到临时资源文件列表TempResList中。
所述第二阈值可以根据实际需要而定,例如设为10次。一般来说CountResList中使用次数大于10次的资源可以认为是使用比较频繁的资源,所以更新到TempResList中作为下一次启动客户端的预加载文件,可以根据实际情况调整次数判断标准。
本申请实施例还提供了一种多人网络游戏中资源加载的装置,包括:
预加载模块,用于确定需要预加载到内存的资源文件列表;客户端启动初始化的时候,将资源文件列表中的资源文件加载在内存中;
判断模块,用于判断是否客户端加载了资源文件列表之外的其他资源,若是,使能资源引用计数模块,否则使能删除处理模块;
资源引用计数模块,将所述被加载的其他资源文件名加入到资源引用计数列表中,并记录资源的使用次数和最近使用时间,然后再使能删除处理模块;
删除处理模块,用于判断是否满足删除资源的条件,若是,删除资源引用计数列表中未被使用的时间超过第一阈值的资源,同时将资源引用计数列表中被删除的资源在资源文件列表中也同步删除。
较佳地,所述资源文件列表包括基础资源文件列表和临时资源文件列表;所述基础资源文件列表对于每一个客户端内容相同;临时资源文件列表初始为空,根据玩家的行为情况动态增加内容。
较佳地,所述基础资源文件列表中包括主角的相关资源文件。
较佳地,所述删除条件包括:发生特定事件;或者每隔预设的时间间隔则认为满足删除条件。
较佳地,所述特定事件为玩家进行场景转换或者发生特殊剧情播放动画。
较佳地,所述第一阈值为10分钟。
较佳地,该装置进一步包括:
关闭处理模块,用于是否关闭客户端,若是,对于资源引用计数列表中使用次数大于第二阈值的资源加入到临时资源文件列表中。
较佳地,所述第二阈值为10次。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请的保护范围,凡在本申请技术方案的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

Claims (10)

1.一种多人网络游戏中资源加载的方法,其特征在于,包括:
A、确定需要预加载到内存的资源文件列表;
B、客户端启动初始化的时候,将资源文件列表中的资源文件加载在内存中;
C、判断是否客户端加载了资源文件列表之外的其他资源,若是,执行步骤D,否则执行步骤E;
D、将所述被加载的其他资源文件名加入到资源引用计数列表中,并记录资源的使用次数和最近使用时间;
E、判断是否满足删除资源的条件,若是,删除资源引用计数列表中未被使用的时间超过第一阈值的资源,同时更新资源文件列表,删除下次客户端启动不需要预加载的资源。
2.根据权利要求1所述的方法,其特征在于,所述资源文件列表包括基础资源文件列表和临时资源文件列表;所述基础资源文件列表对于每一个客户端内容相同;临时资源文件列表初始为空,根据玩家的行为情况动态增加内容。
3.根据权利要求2所述的方法,其特征在于,所述基础资源文件列表中包括主角的相关资源文件。
4.根据权利要求2所述的方法,其特征在于,所述删除条件包括:发生特定事件;或者每隔预设的时间间隔则认为满足删除条件。
5.根据权利要求4所述的方法,其特征在于,所述特定事件为玩家进行场景转换或者发生特殊剧情播放动画。
6.根据权利要求1所述的方法,其特征在于,所述第一阈值为10分钟。
7.根据权利要求1至6任一项所述的方法,其特征在于,该方法进一步包括:
判断是否关闭客户端,若是,对于资源引用计数列表中使用次数大于第二阈值的资源加入到临时资源文件列表中,否则返回步骤C。
8.根据权利要求7所述的方法,其特征在于,所述第二阈值为10次。
9.一种多人网络游戏中资源加载的装置,其特征在于,包括:
预加载模块,用于确定需要预加载到内存的资源文件列表;客户端启动初始化的时候,将资源文件列表中的资源文件加载在内存中;
判断模块,用于判断是否客户端加载了资源文件列表之外的其他资源,若是,使能资源引用计数模块,否则使能删除处理模块;
资源引用计数模块,将所述被加载的其他资源文件名加入到资源引用计数列表中,并记录资源的使用次数和最近使用时间,然后再使能删除处理模块;
删除处理模块,用于判断是否满足删除资源的条件,若是,删除资源引用计数列表中未被使用的时间超过第一阈值的资源,同时将资源引用计数列表中被删除的资源在资源文件列表中也同步删除。
10.根据权利要求9所述的装置,其特征在于,所述资源文件列表包括基础资源文件列表和临时资源文件列表;所述基础资源文件列表对于每一个客户端内容相同;临时资源文件列表初始为空,根据玩家的行为情况动态增加内容。
CN201410806709.0A 2014-12-22 2014-12-22 一种多人网络游戏中资源加载的方法和装置 Active CN104598270B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410806709.0A CN104598270B (zh) 2014-12-22 2014-12-22 一种多人网络游戏中资源加载的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410806709.0A CN104598270B (zh) 2014-12-22 2014-12-22 一种多人网络游戏中资源加载的方法和装置

Publications (2)

Publication Number Publication Date
CN104598270A CN104598270A (zh) 2015-05-06
CN104598270B true CN104598270B (zh) 2018-06-01

Family

ID=53124088

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410806709.0A Active CN104598270B (zh) 2014-12-22 2014-12-22 一种多人网络游戏中资源加载的方法和装置

Country Status (1)

Country Link
CN (1) CN104598270B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105607901B (zh) * 2015-12-11 2019-12-13 Tcl集团股份有限公司 系统内存的优化方法、装置及终端设备
CN105536252A (zh) * 2015-12-23 2016-05-04 盛趣信息技术(上海)有限公司 客户端、服务器和数据传输系统及方法
CN105630556B (zh) * 2015-12-25 2019-02-19 北京像素软件科技股份有限公司 一种加载资源的方法和系统
KR101738611B1 (ko) * 2016-03-29 2017-05-22 넷마블게임즈 주식회사 스마트 기기간 게임 어플리케이션 프로그램 및 리소스 파일을 전송하기 위한 장치, 어플리케이션 프로그램, 및 그 전송 방법
CN106651747B (zh) * 2016-12-30 2019-02-05 腾讯科技(深圳)有限公司 一种应用中模拟对象的资源处理方法以及装置
CN106951067A (zh) * 2017-02-13 2017-07-14 歌尔科技有限公司 一种虚拟现实场景的生成方法及设备
CN107122214B (zh) * 2017-04-28 2020-08-04 Oppo广东移动通信有限公司 应用程序的预处理方法、装置及终端
CN107469352B (zh) * 2017-07-12 2021-06-08 福建天晴数码有限公司 游戏前端的资源缓存方法、存储介质
CN108595553B (zh) * 2018-04-10 2022-02-08 红云红河烟草(集团)有限责任公司 一种基于关系型数据库的工业数采时序数据压缩存储和解压查询方法
CN108762838B (zh) * 2018-05-21 2022-01-28 Oppo广东移动通信有限公司 应用程序预加载方法、装置、存储介质及终端
CN110569220B (zh) * 2019-09-12 2023-01-06 腾讯科技(深圳)有限公司 游戏资源文件的展示方法、装置、终端及存储介质
CN110704129A (zh) * 2019-09-30 2020-01-17 北京金山安全软件有限公司 一种资源的实例化方法、装置、电子设备及存储介质
CN113656089B (zh) * 2020-04-30 2023-02-28 华为技术有限公司 应用程序中的类验证方法和装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101626391A (zh) * 2008-07-08 2010-01-13 盛大计算机(上海)有限公司 网络游戏客户端资源处理方法
CN101729848B (zh) * 2009-12-10 2011-07-27 四川长虹电器股份有限公司 基于机顶盒的游戏功能实现方法
CN102650946B (zh) * 2012-03-22 2015-04-01 杭州梵艺科技有限公司 在手持终端加载显示图形界面的方法
CN102799456B (zh) * 2012-07-24 2015-11-25 上海晨思电子科技有限公司 一种游戏引擎加载资源文件的方法、装置和计算机

Also Published As

Publication number Publication date
CN104598270A (zh) 2015-05-06

Similar Documents

Publication Publication Date Title
CN104598270B (zh) 一种多人网络游戏中资源加载的方法和装置
CN107371056A (zh) 一种加载弹幕的方法和装置
US20180332347A1 (en) Analyzing multimedia content using knowledge graph embeddings
CN106104484A (zh) 基于因设备而异或因用户而异的资源使用简档的资源管理
US20140172964A1 (en) Multiple virtual machine memory usage reduction system and method
CN103218224A (zh) 一种提高存储空间利用率的方法和终端
JP6715334B2 (ja) Gpuリソース再構築方法、ユーザー・デバイス、システム及び記憶媒体
US9147435B2 (en) Weighted playlist
US20150156227A1 (en) Synchronize Tape Delay and Social Networking Experience
CN103577226B (zh) 一种IOS和Android平台上的组件式游戏构建方法
CN109753145B (zh) 一种过渡动画的展示方法和相关装置
CN109045694A (zh) 虚拟场景显示方法、装置、终端及存储介质
CN113672757B (zh) 一种音频播放方法及装置
US10880604B2 (en) Filter and prevent sharing of videos
CN105677579B (zh) 缓存系统中的数据访问方法和系统
US8904373B2 (en) Method for persisting specific variables of a software application
KR20230164624A (ko) 아이템 제공 장치 및 방법
US9149725B2 (en) Method and server for PVP team matching in computer games
JP7361399B2 (ja) 画面キャプチャ方法、端末および記憶媒体
CN107610205A (zh) 基于html5将网页输入音频生成口型动画的方法、装置和系统
CN104994920A (zh) 呈现具有分层式功能的数字内容项目
CN104461382B (zh) 运行多个文件系统的文件服务器的内部写方法和服务器
US10946278B2 (en) Generating alternate reality games (ARG) incorporating augmented reality (AR)
CN113318441A (zh) 游戏场景的显示控制方法及装置、电子设备、存储介质
JP2015502781A (ja) エミュレータ類ゲームのキャラクター削除方法、装置及びシステム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant