CN116196614A - 游戏地图的资源加载方法、装置、设备和可读存储介质 - Google Patents

游戏地图的资源加载方法、装置、设备和可读存储介质 Download PDF

Info

Publication number
CN116196614A
CN116196614A CN202310195639.9A CN202310195639A CN116196614A CN 116196614 A CN116196614 A CN 116196614A CN 202310195639 A CN202310195639 A CN 202310195639A CN 116196614 A CN116196614 A CN 116196614A
Authority
CN
China
Prior art keywords
map
game
loaded
game scene
loading
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.)
Pending
Application number
CN202310195639.9A
Other languages
English (en)
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.)
Netease Hangzhou Network Co Ltd
Original Assignee
Netease Hangzhou Network 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 Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202310195639.9A priority Critical patent/CN116196614A/zh
Publication of CN116196614A publication Critical patent/CN116196614A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/45Controlling the progress of the video game
    • A63F13/48Starting a game, e.g. activating a game device or waiting for other players to join a multiplayer session
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5526Game data structure
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本申请公开了一种游戏地图的资源加载方法、装置、电子设备和计算机可读存储介质,本申请实施例通过获取虚拟角色在游戏地图中的角色运动参数,上述游戏地图由多个地图块组成,每一地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大;基于角色运动参数确定游戏地图中的待加载的地图块,并确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围;基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载。本申请实施例可以提高对游戏地图中需加载的游戏资源的加载效率。

Description

游戏地图的资源加载方法、装置、设备和可读存储介质
技术领域
本申请涉及资源加载技术领域,具体涉及一种游戏地图的资源加载方法、装置、电子设备和计算机可读存储介质。
背景技术
在互联网的浪潮下,硬件和软件技术的不断发展和演进,促进了智能设备和软件的出现。与此同时,涌现出大量的、不同题材的游戏,以满足用户的需求,而随着游戏行业的各种技术的蓬勃发展,游戏地图对应的游戏场景也变得越来越宏大。
在现有技术中,由于游戏地图对应的游戏场景越来越宏大,而导致需加载的游戏资源的资源量越来越大,若想要同时将游戏地图所需的游戏资源全部加载,则需耗费大量的时间,从而导致游戏地图所需的游戏资源的加载效率较低。
发明内容
本申请实施例提供一种游戏地图的资源加载方法、装置、电子设备和计算机可读存储介质,可以提高对游戏地图中需加载的游戏资源的加载效率。
第一方面,本申请实施例提供一种游戏地图的资源加载方法,上述方法包括:
获取虚拟角色在游戏地图中的角色运动参数,上述游戏地图由多个地图块组成,每一上述地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大;
基于上述角色运动参数确定上述游戏地图中的待加载的地图块,并确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围;
基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载。
第二方面,本申请实施例还提供一种游戏地图的资源加载装置,上述装置包括:
参数获取模块,用于获取虚拟角色在游戏地图中的角色运动参数,上述游戏地图由多个地图块组成,每一上述地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大;
范围确定模块,用于基于上述角色运动参数确定上述游戏地图中的待加载的地图块,并确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围;
资源加载模块,用于基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载。
第三方面,本申请实施例还提供一种电子设备,包括存储器存储有多条指令;所述处理器从所述存储器中加载指令,以执行本申请实施例所提供的任一种游戏地图的资源加载方法中的步骤。
第四方面,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例所提供的任一种游戏地图的资源加载方法中的步骤。
本申请实施例中,获取虚拟角色在游戏地图中的角色运动参数,上述游戏地图由多个地图块组成,每一上述地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大,从而通过为不同类型的游戏场景对象配置优先级,以明确不同优先级的游戏场景对象对应的可视范围,进而促使优先级越高的游戏场景对象的资源越先被加载。然后,可基于上述角色运动参数确定上述游戏地图中的待加载的地图块,从而仅需对游戏地图中的待加载的地图块进行资源加载,并确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,以基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载,从而针对待加载的地图块中不同类型的游戏场景对象对应的可视范围,可以促使在加载游戏地图中的待加载地图块时优先加载对游戏画面贡献较高的游戏场景对象,优化了游戏地图的加载流程,以提高对游戏地图中需加载的游戏资源的加载效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的游戏地图的资源加载场景示意图;
图2是本申请实施例提供的游戏地图的资源加载方法的一种实施例流程示意图;
图3是本申请实施例中提供的地图块划分示意图;
图4是本申请实施例中提供的建筑区示意图;
图5是本申请实施例中提供的待加载的地图块的一种示意图;
图6是本申请实施例中提供的待加载的地图块的另一种示意图;
图7a是本申请实施例提供的目标地图块的示意图;
图7b是本申请实施例提供的筛选后的目标地图块的示意图;
图8是本申请实施例中提供的跳伞测试示意图;
图9是本申请实施例提供的游戏地图的资源加载装置的结构示意图;
图10是本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在对本申请实施例进行详细地解释说明之前,先对本申请实施例涉及到的一些名词进行解释说明。
其中,在本申请实施例的描述中,术语“第一”、“第二”等可在本文中用于描述各种概念,但除非特别说明,这些概念不受这些术语限制。这些术语仅用于将一个概念与另一个概念区分。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例提供一种游戏地图的资源加载方法、装置、电子设备和计算机可读存储介质。具体地,本申请实施例的游戏地图的资源加载方法可以由电子设备执行,其中,该电子设备可以为终端或者服务器等设备。该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、游戏机、个人计算机(PC,Personal Computer)、个人数字助理(PersonalDigital Assistant,PDA)等终端设备,终端还可以包括客户端,该客户端可以是游戏应用客户端、携带有游戏程序的浏览器客户端或即时通信客户端等。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。
例如,如图1所示,该电子设备以终端10为例进行说明,该终端可以获取虚拟角色在游戏地图中的角色运动参数,上述游戏地图由多个地图块组成,每一上述地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大;基于上述角色运动参数确定上述游戏地图中的待加载的地图块,并确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围;基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载。
基于上述问题,本申请实施例提供一种游戏地图的资源加载方法、装置、电子设备和计算机可读存储介质,可以提高对游戏地图中需加载的游戏资源的加载效率。
以下结合附图分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于附图所示的顺序执行所示出或描述的步骤。
在本实施例中,以终端为例进行说明,本实施例提供了一种游戏地图的资源加载方法,如图2所示,该游戏地图的资源加载方法的具体流程可以如下:
201、获取虚拟角色在游戏地图中的角色运动参数,上述游戏地图由多个地图块组成,每一上述地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大。
在本实施例中,上述角色运动参数用于指示虚拟角色在游戏地图中进行运动时的相关参数,通过获取虚拟角色在游戏地图中的角色运动参数,可以明确虚拟角色在游戏地图中的运动状态,以便于确定出游戏地图中哪些地图块需进行资源加载,即游戏地图中哪些地图块处于虚拟角色的视线范围内,该虚拟角色可以看到。其中,上述角色运动参数包括但不限于是角色移动速度、角色位置和角色运动方向等。
可以理解的是,由于游戏中的游戏地图所需游戏资源的资源量特别多,倘若对游戏资源一个一个进行计算处理,无疑需耗费大量的时间,对此,在本实施例中,通过引入地图块,将上述游戏地图划分为多个地图块,该游戏地图由多个游戏地图块组成,以用于为游戏地图中的地图块的分块加载,提供支持。
具体地,终端可以将游戏地图分为均等大小的地图块,也可以将游戏地图分为不均等大小的地图块。例如,如图3所示,在图3中终端将游戏地图分为均等大小的地图块,具体可根据游戏的类型和相关需求进行划分,比如将游戏地图均等划分为一定数量的矩形地图块,又或者,从三维空间上进行划分,将游戏地图划分为一定数量的立方体地图块。
其中,由于游戏地图中存在较多的游戏场景对象,该游戏场景对象为组成游戏场景所需的实体单元,例如石头、草地、树木、河流、建筑、灯、音效球或车辆等。
可以理解的是,由于游戏中的游戏地图非常大,而且在游戏地图中不同的游戏场景对象所对应的尺寸也大小不一,所以虚拟角色在游戏地图中并不会看到所有的位置的游戏场景对象,例如被某一游戏场景对象遮挡,而导致虚拟角色无法看到位于该游戏场景之后的游戏场景对象,又或者由于距离太远,而导致虚拟角色无法看到较远位置的游戏场景对象。
对此,在本实施例中,可以通过对每一地图块的游戏场景对象进行多维度的划分,以将游戏场景对象划分为不同类型,从而便于为不同类型的游戏场景对象配置不同的优先级,以及设置不同优先级对应的可视范围,还可对设置后的可视范围进行调整,来实现对优先级的调整,从而实现对于一地图块中虚拟角色感知不到的游戏场景对象可以延迟加载,即虚拟角色“将要”看到时才会开始加载,以及实现对于一地图块中对游戏画面贡献度较高的游戏场景对象可以优先加载,以使画面贡献度较低的游戏场景对象不与画面贡献度较高的游戏场景对象抢占IO资源,以优化了加载流程。其中,上述优先级越高说明对游戏画面的贡献度也就越大,相应地,该可视范围也就越大,也就越快被加载。
其中,上述可视范围为虚拟角色可以看到某一地图块的某一类型的游戏场景对象的范围,也即当虚拟角色处于该可视范围内时需加载该可视范围所属的地图块中的对应类型的游戏场景对象,此外,当虚拟角色离开该可视范围时可以删除该可视范围所属的地图块中的对应类型的游戏场景对象,又或者将该可视范围所属的地图块中的对应类型的游戏场景对象放入缓冲池中,以便于在之后需加载该游戏场景对象时直接从缓冲池中提取。
具体地,上述可视范围可以是立方体范围,即由长宽高组成的范围;上述可视范围还可以是球体范围,即由直径组成的范围,具体可根据需求进行设定,在此不做限定。
在一些实施例中,上述可视范围可以以游戏场景对象所处的地图块为中心来设定范围。
示例性地,倘若一个地图块中包含草地、树木,以及由多个建筑区外轮廓组件和多个建筑区内部物品组成的建筑区,那么可将草地和树木划分为草地植被类,将多个建筑区外轮廓组件划分为建筑外轮廓类,将多个建筑区内部物品划分为建筑内部物件类,从而可为上述三种类型的游戏场景对象配置不同的优先级,以及为不同的优先级设置相应的可视范围。
相应的,在为上述三种类型的游戏场景对应配置优先级时,由于游戏场景的视野开阔,需要看到较远地方的草地和树木,而由于建筑区内部物品一般会被建筑外部轮廓组件所遮挡,所以建筑区内部物品对游戏画面的贡献度最低,所以草地植被类的游戏场景对象对画面的贡献度高于建筑外轮廓类的游戏场景对象,建筑外轮廓类的游戏场景对象对画面的贡献度高于建筑内部物件类的游戏场景对象,也即草地植被类的游戏场景对象的优先级最高,建筑外轮廓类的游戏场景对象的优先级次之,建筑内部物件类的游戏场景对象的优先级最低。例如,终端将草地植被类的游戏场景对象对应的可视范围设置为700*700*100,将建筑外轮廓类的游戏场景对象对应的可视范围设置为300*300*500,将建筑内部物件类的游戏场景对象对应的可视范围设置为300*300*200。
其中,如图4所示,图4中的A区域中所展示的是上述建筑区,图4中的B区域中所展示的是上述建筑区外轮廓组件,图4中的C区域中所展示的是上述建筑区内部物品。
示例性地,倘若一个地图块中的相同类型的游戏场景对象组成了一个维度上的游戏子场景(记为Level),那么该地图块对应的游戏场景由多个维度的Level重叠组成。而为不同维度的Level的配置的优先级所对应的可视范围(记为Level Volume Box),可以通过包围盒技术来实现,例如AABB包围盒,该包围盒可以作为Level的一个属性,通过为不同维度的Level设置不同的Level Volume Box,实现以相应的顺序来依次对多个维度的Level进行资源加载。
在一些实施例中,终端可以直接获取已经划分好的由多个地图块组成的游戏地图,并且该游戏地图中的每一地图块的游戏场景对象已经被划分为多种类型,且每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围。
在一些实施例中,终端可以获取未划分的游戏地图,然后扫描游戏地图中所有的游戏场景对象,并确定游戏地图中的各个游戏场景对象的对象种类,以及在游戏地图中的对象位置。然后,根据游戏地图中的各个游戏场景对象的对象种类,将游戏场景对象划分为多种类型,并将游戏地图划分为特定尺寸的地图块,然后设定处于同一地图块中的同一种类型的游戏场景对象对应的可视范围。
其中,上述将游戏地图划分为各地图块,所划分的尺寸可以根据需求进行设定,例如,将8000m*8000m的8k大地图分为100*100尺寸的地图块。
202、基于上述角色运动参数确定上述游戏地图中的待加载的地图块,并确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围。
其中,上述待加载的地图块为在游戏地图中的需要进行资源加载的地图块,即虚拟角色在当前移动的过程中能够看到的游戏场景所对应的地图块。在本实施例中,通过角色运动参数可以对虚拟角色的运动状态进行预测,以得到虚拟角色在未来能够看到的游戏场景所对应的地图块,即上述待加载地图块,从而仅需加载虚拟角色周围小范围内的地图块,即可满足虚拟角色的需求。其中,终端可以将确定出的待加载的地图块放入预加载池中,以对待加载的地图块进行资源预加载。
可以理解的是,终端通过确定待加载地图块中的各类型的游戏场景对象所对应的可视范围,可以明确在哪一时刻触发对待加载的地图块中的对应类型的游戏场景对象进行资源加载。
在一些实施例中,上述角色运动参数包括角色移动速度、角色位置和角色运动方向,上述基于上述角色运动参数确定上述游戏地图中的待加载的地图块,包括:基于上述角色移动速度确定上述虚拟角色在上述游戏地图中的最远移动距离,并基于上述最远移动距离确定上述虚拟角色在上述游戏地图中的视线长度;基于上述角色位置、上述角色运动方向和上述视线长度,从上述游戏地图中确定处于上述虚拟角色的视线范围内的至少两个目标地图块,并将至少两个上述目标地图块确定为上述待加载的地图块。
其中,上述视线长度为所述虚拟角色与所述虚拟角色在游戏地图中看到的最远游戏场景对象之间的距离。
可以理解的是,基于虚拟角色在游戏地图中的角色移动速度,可以确定出虚拟角色在水平方向上的最远移动距离,基于该最远移动距离即可明确虚拟角色由当前位置至最远移动距离所对应的位置之间的视线长度,从而可以以角色位置为起始点由角色运动方向开始,确定在视线长度范围内的除了已加载的地图块之外的目标地图块,该目标地图块即为待加载的地图块。
在一些实施例中,上述基于上述最远移动距离确定上述虚拟角色在上述游戏地图中的视线长度,包括:若上述最远移动距离大于预设的最大加载距离,则将上述最大加载距离确定为上述视线长度;若上述最远移动距离小于上述最大加载距离,且大于预设的最小加载距离,则将上述最远移动距离确定为上述视线长度;若上述最远移动距离小于上述最小加载距离,则将上述最小加载距离确定为上述视线长度。其中,上述最大加载距离和最小加载距离可以根据需求进行设定,例如,设定最大加载距离为500,最小加载距离为300。
示例性地,如图7a所示,若设定在地图块加载过程中需加载虚拟角色所处的地图块,以及与虚拟角色所处的地图块相邻的地图块,并且,虚拟角色处于图7a中A位置,最小加载距离为图7a中A位置与B位置之间的距离,最大加载距离为图7a中A位置与C位置之间的距离,虚拟角色的最远移动距离为图7a中A位置与D位置之间的距离。那么,通过比较可知,A位置与C位置之间的距离小于A位置与D位置之间的距离,即最大加载距离小于最远移动距离。所以,需将最大加载距离确定为上述视线长度,那么在视线长度范围内的除了已加载的地图块之外的目标地图块,即为图7a中B位置与C位置之间的阴影部分的地图块。
在一些实施例中,由于虚拟角色在游戏地图中移动的过程中存在视野角度,即虚拟角色在游戏地图中可以看到的视线范围对应的角度,所以可基于虚拟角色的视野角度对进一步限定需加载的地图块,以在满足虚拟角色需求的情况下提高了虚拟角色所需地图块的资源加载效率。
具体地,上述基于上述角色运动参数确定上述游戏地图中的待加载的地图块,还可以包括:基于上述视线长度和预设的最小加载距离,计算上述虚拟角色在上述游戏地图中的视野角度;从至少两个上述目标地图块中,将不处于上述视野角度内,且与上述虚拟角色之间的相对距离大于上述最小加载距离的目标地图块筛除,将筛除后的目标地图块确定为上述待加载的地图块。
其中,计算上述虚拟角色在上述游戏地图中的视野角度的计算公式如下所示:
视野角度=2*tan(最小加载距离/视线长度)
示例性地,如图7b所示,由上述图7a对应的示例可知,上述视线长度为最大加载距离,即A位置与C位置之间的距离,而C位置与角色视线边缘之间的距离为最小加载距离,其中,角色视线边缘之间的角度为视野角度,从而需将不处于上述视野角度内,且与上述虚拟角色之间的相对距离大于上述最小加载距离的目标地图块筛除,那么在视线长度范围内的除了已加载的地图块之外的筛除后的目标地图块,即为图7b中B位置与C位置之间的阴影部分的地图块。
在一些实施例中,有些场景中会存在虚拟角色不处于待加载的地图块中的各类型的游戏场景对象对应的可视范围内的情况,从而导致需加载的地图块所需的游戏资源无法及时加载出来,致使无法及时绘制出虚拟角色可以看到的游戏场景。例如,若当前虚拟角色处于大逃杀类射击游戏中的跳伞场景中,如果虚拟角色以垂直于游戏地图的方向进入游戏地图中时,需加载的地图块的个数呈指数倍增加,同时由于加载机械盘IO性能的限制,而导致虚拟角色在跳伞落地之前无法将需加载的地图块所需的游戏资源及时加载出来。其中,终端可设定最大加载高度,即当虚拟角色当前在游戏地图中的角色高度小于或等于该最大加载高度时,需基于待加载的地图块确定是否需调整待加载的地图块中的各类型的游戏场景对象对应的可视范围,上述最大加载高度可根据需求进行设定,例如,设定为1300。
示例性地,如图5所示,当虚拟角色在游戏地图中由a地图块移动至b地图块时,则地图块c1、d1和e1为上述待加载的地图块。而如图6所示,当虚拟角色以垂直于游戏地图的方向进入游戏地图中时,需同时加载9个地图块,即图6中的9个地图块为上述待加载的地图块,是水平进入所需加载的地图块的数量的指数倍。
对此,终端可以基于预设的动态调整策略来调整待加载的地图块中的至少一种类型的游戏场景对象对应的可视范围,以实现动态加载待加载的地图块中的被调整的类型的游戏场景对象,从而促使虚拟角色可以处于调整后的游戏场景对象对应的可视范围中,以使被调整的类型的游戏场景对象能够更早的进行资源加载,提升了被调整的类型的游戏场景对象的资源加载的容忍时间,以避免需加载的地图块所需的游戏资源无法及时加载出来的状况,从而避免了无法及时绘制出虚拟角色可以看到的游戏场景的状况,进而优化了游戏表现。例如,将被调整的类型的游戏场景对象的可视范围由300*300*500调整为500*500*1300。
具体地,上述确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,可以包括:获取上述待加载的地图块中的各类型的游戏场景对象对应的可视范围;若上述虚拟角色不处于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围内,则将上述待加载的地图块中至少一种类型的游戏场景对象对应的可视范围调整为包含上述虚拟角色的范围。
其中,可以基于虚拟角色的角色运动参数中的角色位置,确定待加载的地图块中需调整的类型的游戏场景对象对应的可视范围的调整范围。
在一些实施例中,上述通过动态调整策略将上述待加载的地图块中至少一种类型的游戏场景对象对应的可视范围调整为包含上述虚拟角色的范围,可以包括:将上述待加载的地图块中的优先级最高的预设数量的对应类型的游戏场景对象对应的可视范围进行调整,其中,上述预设数量可以为一个,也可以为两个及两个以上。
在一些实施例中,还可基于游戏地图中的场景特征,来确定出游戏地图中的待加载的地图块,例如,若游戏地图的场景特征为复杂特征,即场景复杂,场景内分布大量的树木、山脉等,而导致虚拟角色的视野被场景遮挡,则可加载虚拟角色所处的地图块,以及与虚拟角色所处的地图块相邻的地图块,即将虚拟角色所处的地图块,以及与虚拟角色所处的地图块相邻的地图块确定为上述待加载的地图块;而倘若游戏地图的场景特征为开阔特征,即场景开阔,角色视线范围很远,则除了加载虚拟角色所处的地图块,以及与虚拟角色所处的地图块相邻的地图块之外,还需加载处于角色视线范围内的更远的地图块,即将虚拟角色所处的地图块、与虚拟角色所处的地图块相邻的地图块,以及处于角色视线范围内的更远的地图块确定为上述待加载的地图块。
其中,处于角色视线范围内的更远的地图块在一般情况下可以用代理地图块来替代,该代理地图块即为简化后的地图块,从而降低对游戏带来的性能压力;而针对于游戏中的“望远”功能,例如配备有望远镜的游戏。虚拟角色透过望远镜可以看到远处的地图块,则为了场景细节表现需求,还需加载望远镜视野内的地图块,以提升望远镜的表现力。
示例性地,面对复杂特征的游戏地图,如图5所示,当虚拟角色在游戏地图中由a地图块移动至b地图块时,地图块c1、d1和e1为上述待加载的地图块,需将地图块c1、d1和e1加载至场景中,还可将地图块c、d和e从内存中删除,又或者将地图块c、d和e放入缓冲池中,以便于在之后需加载该地图块时,直接从缓冲池中提取出。
203、基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载。
在本实施例中,终端基于上述待加载地图块中的各类型的游戏场景对象对应的可视范围,即可在虚拟角色触发该可视范围时,实现对应类型的游戏场景对象的资源加载,从而实现以特定的优先级依次对待加载的地图块中的各类型的游戏场景对象。
在一些实施例中,上述基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载,可以包括:基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,确定上述虚拟角色当前处于的目标可视范围,对上述目标可视范围所属的游戏场景对象进行资源加载。
在一些实施例中,由于游戏地图进行资源加载时,所需加载的资源量非常大,所以为避免出现虚拟角色已经出生在游戏地图中的某一地图块,但该地图块所需加载的游戏资源未加载完成,从而导致无法及时绘制出虚拟角色可以看到的游戏场景的状况,在本实施例中,终端可以对底层的磁盘资源进行排布,以通过资源排布的方式,来优化地图资源包中的各资源文件的组织结构,降低查找需加载的游戏资源所花费的寻道时间,减少了资源加载的IO时间。
具体地,上述依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载,可以包括:从预设的至少一个地图资源包中获取上述待加载的地图块中的各类型的游戏场景对象对应的资源文件,上述游戏地图被划分为多个地图区域,每一地图资源包对应一个地图区域,每一上述地图区域中的相邻游戏场景对象的资源文件位于上述地图区域对应的地图资源包中的相邻位置;基于上述待加载的地图块中的各类型的游戏场景对象对应的上述资源文件,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载。
在本实施例中,终端通过将游戏地图划分为多个地图区域,并将每一地图区域中的资源文件存储于一地图资源包中,以及将每一地图区域中的相邻游戏场景对象的资源文件设置于地图资源包中的相邻位置,从而尽可能的在资源加载时可以促使需加载的资源文件按顺序读取,以提升资源加载速度。例如,若当前终端通过机械盘进行资源读取,则可以提高机械盘的磁道读写速度。
可以理解的是,由于一游戏场景对象对应的资源文本可能存在多个相互关联的资源文件,例如游戏地图中的一个石头,该石头可以使用模型资源对应的模型资源文件,使用材质资源对应的材质资源文件,其中,该材质资源文件还可引用贴图资源对应的贴图资源文件。对此,终端在存储游戏场景对象的多个资源文件时,可以将游戏场景对象的多个资源文件存储于地图资源包中的相邻位置,从而致使相关联的资源尽可能的放置到相邻的磁盘位置上,以便于在对上述待加载的地图块中的各类型的游戏场景对象进行资源加载时,可以顺序读取资源文件,相较于随机读取来说,大大降低了寻道时间。
具体地,上述地图资源包可以采用MPK包体,该MPK包体为一种大文件包体,该包体由多个小文件拼接形成。
在一些实施例中,在从预设的至少一个地图资源包中获取上述待加载的地图块中的各类型的游戏场景对象对应的资源文件之前,需将游戏地图中的各个游戏场景对象对应的资源文件存储于地图资源包中。
具体地,资源文件的存储过程可以包括:遍历每个上述地图区域中的各游戏场景对象,以得到每个上述地图区域中的各游戏场景对象所使用的资源文件的文件存储路径,以基于该文件存储路径获取各游戏场景对象所使用的资源文件。然后,将被遍历的游戏场景对象所使用的资源文件存储于上述被遍历的游戏场景对象所处的地图区域对应的地图资源包中;若存在一目标资源文件被至少两个目标游戏场景对象使用,则将上述目标资源文件存储于第一个被遍历的目标游戏场景对象所处的地图区域对应的地图资源包中。
其中,在遍历上述地图区域中的各游戏场景对象的过程中,可基于各游戏场景对象在地图区域中的位置,按顺序进行遍历,以便于相邻的游戏场景对象所使用的资源文件存储于一地图资源包中的相邻位置。
示例性地,终端可将8k大地图均等划分为8个地图区域,每个区域的尺寸为2000m*2000m,从而遍历8个地图区域中的各游戏场景对象,以得到8个地图区域中的各游戏场景对象所使用的资源文件,例如模型资源文件、材质资源文件,以及音效资源文件等,从而将被遍历的游戏场景对象所使用的资源文件存储于上述被遍历的游戏场景对象所处的地图区域对应的地图资源包中,以得到8个地图资源包。其中,倘若一个资源文件即被两个游戏场景对象所使用,该两个游戏场景对象按照遍历顺序,分别为第一游戏场景对象和第二游戏场景对象,则将该资源文件存储于第一游戏场景对象所处的地图区域对应的地图资源包中的对应位置,该对应位置即为第一游戏场景对象在地图资源包中对应的存储位置。
示例性地,通过上述方法可以极大的降低对游戏地图所需的游戏资源进行加载时的资源加载时间,以提高对游戏地图中需加载的游戏资源的加载效率,在本示例中,通过对公寓、废弃车站以及河湾集地区,三个地区进行跳伞测试,如图8所示,图8中纵轴用于指示跳伞高度为300米时游戏地图中需加载的游戏资源完全加载所需的时间,该时间的单位为秒,图8中的横轴为跳伞的区域,图8中的三个地图对应的左侧柱状图用于指示优化前的加载时间,右侧柱状图用于指示优化后的加载时间,通过图8可以看出,采用上述方法可以极大的降低资源加载需花费的时间,提高资源加载的效率。
由以上内容可以看出,通过获取虚拟角色在游戏地图中的角色运动参数,上述游戏地图由多个地图块组成,每一上述地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大,从而通过为不同类型的游戏场景对象配置优先级,以明确不同优先级的游戏场景对象对应的可视范围,进而促使优先级越高的游戏场景对象的资源越先被加载。然后,可基于上述角色运动参数确定上述游戏地图中的待加载的地图块,并确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,以基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载,从而针对待加载的地图块中不同类型的游戏场景对象对应的可视范围,可以促使在加载游戏地图中的待加载地图块时优先加载对游戏画面贡献较高的游戏场景对象,优化了游戏地图的加载流程,以提高对游戏地图中需加载的游戏资源的加载效率。
为了更好地实施以上方法,本申请实施例还提供一种游戏地图的资源加载装置,该游戏地图的资源加载装置具体可以集成在电子设备中,比如,计算机设备,该计算机设备可以为终端、服务器等设备。
其中,终端可以为手机、平板电脑、智能蓝牙设备、笔记本电脑、个人电脑等设备;服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群。
比如,在本实施例中,将以游戏地图的资源加载装置具体集成在终端为例,对本申请实施例的方法进行详细说明,本实施例提供了一种游戏地图的资源加载装置,如图9所示,该游戏地图的资源加载装置可以包括:
参数获取模块901,用于获取虚拟角色在游戏地图中的角色运动参数,上述游戏地图由多个地图块组成,每一上述地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大;
范围确定模块902,用于基于上述角色运动参数确定上述游戏地图中的待加载的地图块,并确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围;
资源加载模块903,用于基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载。
在一些实施例中,上述角色运动参数包括角色移动速度、角色位置和角色运动方向,上述范围确定模块902具体用于:
基于上述角色移动速度确定上述虚拟角色在上述游戏地图中的最远移动距离,并基于上述最远移动距离确定上述虚拟角色在上述游戏地图中的视线长度;
基于上述角色位置、上述角色运动方向和上述视线长度,从上述游戏地图中确定处于上述虚拟角色的视线范围内的至少两个目标地图块,并将至少两个上述目标地图块确定为上述待加载的地图块。
在一些实施例中,上述范围确定模块902还具体用于:
基于上述视线长度和预设的最小加载距离,计算上述虚拟角色在上述游戏地图中的视野角度;
从至少两个上述目标地图块中,将不处于上述视野角度内,且与上述虚拟角色之间的相对距离大于上述最小加载距离的目标地图块筛除,将筛除后的目标地图块确定为上述待加载的地图块。
在一些实施例中,上述范围确定模块902还具体用于:
若上述最远移动距离大于预设的最大加载距离,则将上述最大加载距离确定为上述视线长度;
若上述最远移动距离小于上述最大加载距离,且大于预设的最小加载距离,则将上述最远移动距离确定为上述视线长度;
若上述最远移动距离小于上述最小加载距离,则将上述最小加载距离确定为上述视线长度。
在一些实施例中,上述范围确定模块902具体用于:
获取上述待加载的地图块中的各类型的游戏场景对象对应的可视范围;
若上述虚拟角色不处于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围内,则将上述待加载的地图块中至少一种类型的游戏场景对象对应的可视范围调整为包含上述虚拟角色的范围。
在一些实施例中,上述资源加载模块903具体用于:
基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,确定上述虚拟角色当前处于的目标可视范围,对上述目标可视范围所属的游戏场景对象进行资源加载。
在一些实施例中,上述资源加载模块903具体用于:
从预设的至少一个地图资源包中获取上述待加载的地图块中的各类型的游戏场景对象对应的资源文件,上述游戏地图被划分为多个地图区域,每一地图资源包对应一个地图区域,每一上述地图区域中的相邻游戏场景对象的资源文件位于上述地图区域对应的地图资源包中的相邻位置;
基于上述待加载的地图块中的各类型的游戏场景对象对应的上述资源文件,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载。
在一些实施例中,上述游戏地图的资源加载装置还包括文件存储模块,上述文件存储模块具体用于:
遍历每个上述地图区域中的各游戏场景对象,将被遍历的游戏场景对象所使用的资源文件存储于上述被遍历的游戏场景对象所处的地图区域对应的地图资源包中;
若存在一目标资源文件被至少两个目标游戏场景对象使用,则将上述目标资源文件存储于第一个被遍历的目标游戏场景对象所处的地图区域对应的地图资源包中。
由上可知,本实施例的游戏地图的资源加载装置通过参数获取模块901来获取虚拟角色在游戏地图中的角色运动参数,上述游戏地图由多个地图块组成,每一上述地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大,从而通过为不同类型的游戏场景对象配置优先级,以明确不同优先级的游戏场景对象对应的可视范围,进而促使优先级越高的游戏场景对象的资源越先被加载。然后,可通过范围确定模块902来基于上述角色运动参数确定上述游戏地图中的待加载的地图块,并确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,以通过资源加载模块903来基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载,从而针对待加载的地图块中不同类型的游戏场景对象对应的可视范围,可以促使在加载游戏地图中的待加载地图块时优先加载对游戏画面贡献较高的游戏场景对象,优化了游戏地图的加载流程,以提高对游戏地图中需加载的游戏资源的加载效率。
相应的,本申请实施例还提供一种电子设备,该电子设备可以为终端,该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、游戏机、个人计算机(PC,PersonalComputer)、个人数字助理(Personal Digital Assistant,PDA)等终端设备。如图10所示,图10为本申请实施例提供的电子设备的结构示意图。该电子设备100包括有一个或者一个以上处理核心的处理器101、有一个或一个以上计算机可读存储介质的存储器102及存储在存储器102上并可在处理器上运行的计算机程序。其中,处理器101与存储器102电性连接。本领域技术人员可以理解,图中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器101是电子设备100的控制中心,利用各种接口和线路连接整个电子设备100的各个部分,通过运行或加载存储在存储器102内的软件程序和/或模块,以及调用存储在存储器102内的数据,执行电子设备100的各种功能和处理数据,从而对电子设备100进行整体监控。
在本申请实施例中,电子设备100中的处理器101会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器102中,并由处理器101来运行存储在存储器102中的应用程序,从而实现各种功能:
获取虚拟角色在游戏地图中的角色运动参数,上述游戏地图由多个地图块组成,每一上述地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大;
基于上述角色运动参数确定上述游戏地图中的待加载的地图块,并确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围;
基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载。
在一些实施例中,上述角色运动参数包括角色移动速度、角色位置和角色运动方向,上述基于上述角色运动参数确定上述游戏地图中的待加载的地图块,包括:
基于上述角色移动速度确定上述虚拟角色在上述游戏地图中的最远移动距离,并基于上述最远移动距离确定上述虚拟角色在上述游戏地图中的视线长度;
基于上述角色位置、上述角色运动方向和上述视线长度,从上述游戏地图中确定处于上述虚拟角色的视线范围内的至少两个目标地图块,并将至少两个上述目标地图块确定为上述待加载的地图块。
在一些实施例中,上述基于上述角色运动参数确定上述游戏地图中的待加载的地图块,还包括:
基于上述视线长度和预设的最小加载距离,计算上述虚拟角色在上述游戏地图中的视野角度;
从至少两个上述目标地图块中,将不处于上述视野角度内,且与上述虚拟角色之间的相对距离大于上述最小加载距离的目标地图块筛除,将筛除后的目标地图块确定为上述待加载的地图块。
在一些实施例中,上述基于上述最远移动距离确定上述虚拟角色在上述游戏地图中的视线长度,包括:
若上述最远移动距离大于预设的最大加载距离,则将上述最大加载距离确定为上述视线长度;
若上述最远移动距离小于上述最大加载距离,且大于预设的最小加载距离,则将上述最远移动距离确定为上述视线长度;
若上述最远移动距离小于上述最小加载距离,则将上述最小加载距离确定为上述视线长度。
在一些实施例中,上述确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,包括:
获取上述待加载的地图块中的各类型的游戏场景对象对应的可视范围;
若上述虚拟角色不处于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围内,则将上述待加载的地图块中至少一种类型的游戏场景对象对应的可视范围调整为包含上述虚拟角色的范围。
在一些实施例中,上述基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载,包括:
基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,确定上述虚拟角色当前处于的目标可视范围,对上述目标可视范围所属的游戏场景对象进行资源加载。
在一些实施例中,上述依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载,包括:
从预设的至少一个地图资源包中获取上述待加载的地图块中的各类型的游戏场景对象对应的资源文件,上述游戏地图被划分为多个地图区域,每一地图资源包对应一个地图区域,每一上述地图区域中的相邻游戏场景对象的资源文件位于上述地图区域对应的地图资源包中的相邻位置;
基于上述待加载的地图块中的各类型的游戏场景对象对应的上述资源文件,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载。
在一些实施例中,在从预设的至少一个地图资源包中获取上述待加载的地图块中的各类型的游戏场景对象对应的资源文件之前,还包括:
遍历每个上述地图区域中的各游戏场景对象,将被遍历的游戏场景对象所使用的资源文件存储于上述被遍历的游戏场景对象所处的地图区域对应的地图资源包中;
若存在一目标资源文件被至少两个目标游戏场景对象使用,则将上述目标资源文件存储于第一个被遍历的目标游戏场景对象所处的地图区域对应的地图资源包中。
由此,本实施例提供的电子设备100可以带来如下技术效果:提高对游戏地图中需加载的游戏资源的加载效率。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
可选的,如图10所示,电子设备100还包括:触控显示屏103、射频电路104、音频电路105、输入单元106以及电源107。其中,处理器101分别与触控显示屏103、射频电路104、音频电路105、输入单元106以及电源107电性连接。本领域技术人员可以理解,图10中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
触控显示屏103可用于显示图形用户界面以及接收用户作用于图形用户界面产生的操作指令。触控显示屏103可以包括显示面板和触控面板。其中,显示面板可用于显示由用户输入的信息或提供给用户的信息以及电子设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。触控面板可用于收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并生成相应的操作指令,且操作指令执行对应程序。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器101,并能接收处理器101发来的命令并加以执行。触控面板可覆盖显示面板,当触控面板检测到在其上或附近的触摸操作后,传送给处理器101以确定触摸事件的类型,随后处理器101根据触摸事件的类型在显示面板上提供相应的视觉输出。在本申请实施例中,可以将触控面板与显示面板集成到触控显示屏103而实现输入和输出功能。但是在某些实施例中,触控面板与触控面板可以作为两个独立的部件来实现输入和输出功能。即触控显示屏103也可以作为输入单元106的一部分实现输入功能。
射频电路104可用于收发射频信号,以通过无线通信与网络设备或其他电子设备建立无线通讯,与网络设备或其他电子设备之间收发信号。
音频电路105可以用于通过扬声器、传声器提供用户与电子设备之间的音频接口。音频电路105可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路105接收后转换为音频数据,再将音频数据输出处理器101处理后,经射频电路104以发送给比如另一电子设备,或者将音频数据输出至存储器102以便进一步处理。音频电路105还可能包括耳塞插孔,以提供外设耳机与电子设备的通信。
输入单元106可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
电源107用于给电子设备100的各个部件供电。可选的,电源107可以通过电源管理系统与处理器101逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源107还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管图10中未示出,电子设备100还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种游戏地图的资源加载方法中的步骤。例如,该计算机程序可以执行如下步骤:
获取虚拟角色在游戏地图中的角色运动参数,上述游戏地图由多个地图块组成,每一上述地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大;
基于上述角色运动参数确定上述游戏地图中的待加载的地图块,并确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围;
基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载。
在一些实施例中,上述角色运动参数包括角色移动速度、角色位置和角色运动方向,上述基于上述角色运动参数确定上述游戏地图中的待加载的地图块,包括:
基于上述角色移动速度确定上述虚拟角色在上述游戏地图中的最远移动距离,并基于上述最远移动距离确定上述虚拟角色在上述游戏地图中的视线长度;
基于上述角色位置、上述角色运动方向和上述视线长度,从上述游戏地图中确定处于上述虚拟角色的视线范围内的至少两个目标地图块,并将至少两个上述目标地图块确定为上述待加载的地图块。
在一些实施例中,上述基于上述角色运动参数确定上述游戏地图中的待加载的地图块,还包括:
基于上述视线长度和预设的最小加载距离,计算上述虚拟角色在上述游戏地图中的视野角度;
从至少两个上述目标地图块中,将不处于上述视野角度内,且与上述虚拟角色之间的相对距离大于上述最小加载距离的目标地图块筛除,将筛除后的目标地图块确定为上述待加载的地图块。
在一些实施例中,上述基于上述最远移动距离确定上述虚拟角色在上述游戏地图中的视线长度,包括:
若上述最远移动距离大于预设的最大加载距离,则将上述最大加载距离确定为上述视线长度;
若上述最远移动距离小于上述最大加载距离,且大于预设的最小加载距离,则将上述最远移动距离确定为上述视线长度;
若上述最远移动距离小于上述最小加载距离,则将上述最小加载距离确定为上述视线长度。
在一些实施例中,上述确定上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,包括:
获取上述待加载的地图块中的各类型的游戏场景对象对应的可视范围;
若上述虚拟角色不处于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围内,则将上述待加载的地图块中至少一种类型的游戏场景对象对应的可视范围调整为包含上述虚拟角色的范围。
在一些实施例中,上述基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载,包括:
基于上述待加载的地图块中的各类型的游戏场景对象对应的可视范围,确定上述虚拟角色当前处于的目标可视范围,对上述目标可视范围所属的游戏场景对象进行资源加载。
在一些实施例中,上述依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载,包括:
从预设的至少一个地图资源包中获取上述待加载的地图块中的各类型的游戏场景对象对应的资源文件,上述游戏地图被划分为多个地图区域,每一地图资源包对应一个地图区域,每一上述地图区域中的相邻游戏场景对象的资源文件位于上述地图区域对应的地图资源包中的相邻位置;
基于上述待加载的地图块中的各类型的游戏场景对象对应的上述资源文件,依次对上述待加载的地图块中的各类型的游戏场景对象进行资源加载。
在一些实施例中,在从预设的至少一个地图资源包中获取上述待加载的地图块中的各类型的游戏场景对象对应的资源文件之前,还包括:
遍历每个上述地图区域中的各游戏场景对象,将被遍历的游戏场景对象所使用的资源文件存储于上述被遍历的游戏场景对象所处的地图区域对应的地图资源包中;
若存在一目标资源文件被至少两个目标游戏场景对象使用,则将上述目标资源文件存储于第一个被遍历的目标游戏场景对象所处的地图区域对应的地图资源包中。
可见,计算机程序能够被处理器进行加载,以执行本申请实施例所提供的任一种游戏地图的资源加载方法中的步骤,从而带来如下技术效果:提高对游戏地图中需加载的游戏资源的加载效率。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该计算机可读存储介质中所存储的计算机程序,可以执行本申请实施例所提供的任一种游戏地图的资源加载方法中的步骤,因此,可以实现本申请实施例所提供的任一种游戏地图的资源加载方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种游戏地图的资源加载方法、装置、电子设备和计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (11)

1.一种游戏地图的资源加载方法,其特征在于,所述方法包括:
获取虚拟角色在游戏地图中的角色运动参数,所述游戏地图由多个地图块组成,每一所述地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大;
基于所述角色运动参数确定所述游戏地图中的待加载的地图块,并确定所述待加载的地图块中的各类型的游戏场景对象对应的可视范围;
基于所述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对所述待加载的地图块中的各类型的游戏场景对象进行资源加载。
2.如权利要求1所述的游戏地图的资源加载方法,其特征在于,所述角色运动参数包括角色移动速度、角色位置和角色运动方向,所述基于所述角色运动参数确定所述游戏地图中的待加载的地图块,包括:
基于所述角色移动速度确定所述虚拟角色在所述游戏地图中的最远移动距离,并基于所述最远移动距离确定所述虚拟角色在所述游戏地图中的视线长度;
基于所述角色位置、所述角色运动方向和所述视线长度,从所述游戏地图中确定处于所述虚拟角色的视线范围内的至少两个目标地图块,并将至少两个所述目标地图块确定为所述待加载的地图块。
3.如权利要求2所述的游戏地图的资源加载方法,其特征在于,所述基于所述角色运动参数确定所述游戏地图中的待加载的地图块,还包括:
基于所述视线长度和预设的最小加载距离,计算所述虚拟角色在所述游戏地图中的视野角度;
从至少两个所述目标地图块中,将不处于所述视野角度内,且与所述虚拟角色之间的相对距离大于所述最小加载距离的目标地图块筛除,将筛除后的目标地图块确定为所述待加载的地图块。
4.如权利要求2所述的游戏地图的资源加载方法,其特征在于,所述基于所述最远移动距离确定所述虚拟角色在所述游戏地图中的视线长度,包括:
若所述最远移动距离大于预设的最大加载距离,则将所述最大加载距离确定为所述视线长度;
若所述最远移动距离小于所述最大加载距离,且大于预设的最小加载距离,则将所述最远移动距离确定为所述视线长度;
若所述最远移动距离小于所述最小加载距离,则将所述最小加载距离确定为所述视线长度。
5.如权利要求1所述的游戏地图的资源加载方法,其特征在于,所述确定所述待加载的地图块中的各类型的游戏场景对象对应的可视范围,包括:
获取所述待加载的地图块中的各类型的游戏场景对象对应的可视范围;
若所述虚拟角色不处于所述待加载的地图块中的各类型的游戏场景对象对应的可视范围内,则将所述待加载的地图块中至少一种类型的游戏场景对象对应的可视范围调整为包含所述虚拟角色的范围。
6.如权利要求1所述的游戏地图的资源加载方法,其特征在于,所述基于所述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对所述待加载的地图块中的各类型的游戏场景对象进行资源加载,包括:
基于所述待加载的地图块中的各类型的游戏场景对象对应的可视范围,确定所述虚拟角色当前处于的目标可视范围,对所述目标可视范围所属的游戏场景对象进行资源加载。
7.如权利要求1所述的游戏地图的资源加载方法,其特征在于,所述依次对所述待加载的地图块中的各类型的游戏场景对象进行资源加载,包括:
从预设的至少一个地图资源包中获取所述待加载的地图块中的各类型的游戏场景对象对应的资源文件,所述游戏地图被划分为多个地图区域,每一地图资源包对应一个地图区域,每一所述地图区域中的相邻游戏场景对象的资源文件位于所述地图区域对应的地图资源包中的相邻位置;
基于所述待加载的地图块中的各类型的游戏场景对象对应的所述资源文件,依次对所述待加载的地图块中的各类型的游戏场景对象进行资源加载。
8.如权利要求7所述的游戏地图的资源加载方法,其特征在于,在从预设的至少一个地图资源包中获取所述待加载的地图块中的各类型的游戏场景对象对应的资源文件之前,还包括:
遍历每个所述地图区域中的各游戏场景对象,将被遍历的游戏场景对象所使用的资源文件存储于所述被遍历的游戏场景对象所处的地图区域对应的地图资源包中;
若存在一目标资源文件被至少两个目标游戏场景对象使用,则将所述目标资源文件存储于第一个被遍历的目标游戏场景对象所处的地图区域对应的地图资源包中。
9.一种游戏地图的资源加载装置,其特征在于,所述装置包括:
参数获取模块,用于获取虚拟角色在游戏地图中的角色运动参数,所述游戏地图由多个地图块组成,每一所述地图块的游戏场景对象被划分为多种类型,每一种类型的游戏场景对象配置有一优先级,每一优先级对应设置有一可视范围,优先级越高,可视范围越大;
范围确定模块,用于基于所述角色运动参数确定所述游戏地图中的待加载的地图块,并确定所述待加载的地图块中的各类型的游戏场景对象对应的可视范围;
资源加载模块,用于基于所述待加载的地图块中的各类型的游戏场景对象对应的可视范围,依次对所述待加载的地图块中的各类型的游戏场景对象进行资源加载。
10.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有多条指令;所述处理器从所述存储器中加载指令,以执行如权利要求1至8任一项所述的游戏地图的资源加载方法中的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至8任一项所述的游戏地图的资源加载方法中的步骤。
CN202310195639.9A 2023-02-22 2023-02-22 游戏地图的资源加载方法、装置、设备和可读存储介质 Pending CN116196614A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310195639.9A CN116196614A (zh) 2023-02-22 2023-02-22 游戏地图的资源加载方法、装置、设备和可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310195639.9A CN116196614A (zh) 2023-02-22 2023-02-22 游戏地图的资源加载方法、装置、设备和可读存储介质

Publications (1)

Publication Number Publication Date
CN116196614A true CN116196614A (zh) 2023-06-02

Family

ID=86515587

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310195639.9A Pending CN116196614A (zh) 2023-02-22 2023-02-22 游戏地图的资源加载方法、装置、设备和可读存储介质

Country Status (1)

Country Link
CN (1) CN116196614A (zh)

Similar Documents

Publication Publication Date Title
CN106547599B (zh) 一种资源动态加载的方法及终端
US20160066119A1 (en) Sound effect processing method and device thereof
CN112245926B (zh) 虚拟地形的渲染方法、装置、设备及介质
US20230082928A1 (en) Virtual aiming control
EP3525101A1 (en) Data backup method, apparatus, storage medium, and terminal
CN116196614A (zh) 游戏地图的资源加载方法、装置、设备和可读存储介质
CN112717393B (zh) 虚拟场景中的虚拟物件显示方法、装置、设备及存储介质
KR102603609B1 (ko) 가상적 객체들을 선택하기 위한 방법, 장치, 단말, 및 저장 매체
CN115222904A (zh) 地形处理方法、装置、电子设备和可读存储介质
CN114159785A (zh) 虚拟道具丢弃方法、装置、电子设备和存储介质
CN116797631A (zh) 差异区域定位方法、装置、计算机设备及存储介质
CN113797531A (zh) 遮挡剔除实现方法、装置、计算机设备及存储介质
CN116889726A (zh) 游戏地图的渲染方法、装置、电子设备和可读存储介质
US20220277495A1 (en) Method for determining collision range and related apparatus
CN117618898A (zh) 地图生成方法、装置、电子设备和计算机可读存储介质
CN117462952A (zh) 碰撞体生成方法、装置、电子设备和可读存储介质
CN112370783A (zh) 虚拟对象渲染方法、装置、计算机设备和存储介质
CN117899468A (zh) 场景内容生成方法、装置和计算机可读存储介质
CN117788972A (zh) 对抗防御样本生成方法、装置、电子设备及存储介质
CN117959700A (zh) 场景可见性数据的生成方法、场景加载方法及装置
CN117671118A (zh) 纹理贴图的处理方法、装置、计算机设备及存储介质
CN117412278A (zh) 蓝牙设备扫描控制方法、装置、电子设备及存储介质
CN115861493A (zh) 动画生成方法、装置、存储介质及电子设备
CN117654030A (zh) 虚拟对象的渲染方法、装置、电子设备及存储介质
CN112843717A (zh) 一种资源分配方法、装置、存储介质及计算机设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination