CN110478900B - 虚拟环境中的地图区域生成方法、装置、设备及存储介质 - Google Patents
虚拟环境中的地图区域生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN110478900B CN110478900B CN201910760859.5A CN201910760859A CN110478900B CN 110478900 B CN110478900 B CN 110478900B CN 201910760859 A CN201910760859 A CN 201910760859A CN 110478900 B CN110478900 B CN 110478900B
- Authority
- CN
- China
- Prior art keywords
- area
- map
- nth
- map unit
- region
- 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
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/80—Special adaptations for executing a specific game genre or game mode
- A63F13/822—Strategy games; Role-playing games
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种虚拟环境中的地图区域生成方法、地图区域显示方法、装置、设备及介质,涉及虚拟环境领域。该方法包括:获取地图上的N个第一区域的区域信息,第i个第一区域包含第i+1个第一区域,每个第一区域占据所述地图上的若干个地图单位;在所述地图的边缘确定出离散的M个起始扩散点;以所述M个起始扩散点为中心,将所述第i个第一区域和所述第i+1个第一区域之间的所述地图单位分批次转变为第二区域;当所述第i+1个第一区域不是第N个第一区域时,将所述第i+1个第一区域确定为所述第i个第一区域,再次将所述第i个第一区域和所述第i+1个第一区域之间的所述地图单位分批次转变为第二区域。
Description
技术领域
本申请实施例涉及虚拟环境领域,特别涉及一种虚拟环境中的地图区域生成方法、显示方法及装置。
背景技术
战术竞技游戏是一种将虚拟对象置于虚拟环境中,提供一系列逃生规则,由玩家根据逃生规则制定逃生策略后,控制游戏中的虚拟对象实现逃生的游戏。
在战术竞技游戏的虚拟环境中,地图上存在第一区域(安全区)和第二区域(也称危险区)。位于外圈的第二区域每隔预设周期都会缩小一圈,使得位于中央区域的第一区域变小。比如,在等到T1时长后,位于外圈的第二区域在 T2时长内缩小20%;再等待T1时长后,位于外圈的第二区域在T2时长内再次缩小20%。T1时长可称为等待时长,T2时长可称为缩进时长。
由于第二区域在按照固定频率缩进2-7次后,第一区域会变成最小,缩进方式较为单一。用户可以预测出第一区域和第二区域的位置,控制虚拟角色提前逃离第二区域,进而拉长单局的游戏时长。当同时在线对局的人数较多(比如晚上或周末的上亿玩家同时在线)时,服务器上所承受的压力较大。
发明内容
本申请实施例提供了一种虚拟环境中的虚拟环境中的地图区域生成方法、显示方法及装置,可以解决用户预测出第一区域的位置后,拉长了单局的游戏时长,当同时在线对局的人数较多(比如晚上或周末的上亿玩家同时在线)时,服务器上所承受的压力较大。所述技术方案如下:
一方面,提供了一种虚拟环境中的地图区域生成方法,所述方法包括:
获取地图上的N个第一区域的区域信息,第i个第一区域包含第i+1个第一区域,每个第一区域占据所述地图上的若干个地图单位;
在所述地图的边缘确定出离散的M个扩散点;
以所述M个扩散点为中心,将所述第i个第一区域和所述第i+1个第一区域之间的所述地图单位分批次转变为第二区域;
当所述第i+1个第一区域不是第N个第一区域时,将所述第i+1个第一区域确定为所述第i个第一区域,再次将所述第i个第一区域和所述第i+1个第一区域之间的所述地图单位分批次转变为第二区域;
其中,N、i和M均为正整数,i小于N。
另一方面,提供了一种虚拟环境中的地图区域生成方法,所述方法包括:
在地图中随机选择出第N个第一区域的中心点,所述地图包括若干个地图单位;
以所述中心点为中心,选择出Kn个地图单位作为所述第N个第一区域;
以所述第N个第一区域为中心,增加选择出Kn-1个地图单位作为所述第N-1 个第一区域,所述第N-1个第一区域包含所述第N个第一区域;
当所述第i-1个第一区域不是第1个第一区域时,将所述第i-1个第一区域确定为所述第i个第一区域,再次以所述第N个第一区域为中心,增加选择出 Kn-1个地图单位作为所述第N-1个第一区域;
当所述第i-1个第一区域是第1个第一区域时,生成所述地图上的N个第一区域的区域信息。
另一方面,提供了一种虚拟环境中的地图区域显示方法,所述方法包括:
显示地图俯视画面,所述地图俯视画面显示的地图上存在离散的M个起始扩散点,所述地图包括若干个地图单位;
在所述地图俯视画面中显示第i个缩进期的第二区域扩散动画,所述第二区域扩散动画包括以所述M个起始扩散点为中心,将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域的动画;
当i+1不等于N时,在所述地图俯视画面中显示第i+1个缩进期的第二区域扩散动画,所述第二区域扩散动画包括将所述第i+1个第一区域确定为所述第i 个第一区域,再次将所述第i个第一区域和所述第i+1个第一区域之间的所述地图单位分批次转变为第二区域的动画;
其中,N、i和M均为正整数,i小于N。
另一方面,提供了一种虚拟环境中的地图区域生成装置,所述装置包括:
获取模块,用于获取地图上的N个第一区域的区域信息,第i个第一区域包含第i+1个第一区域,每个第一区域占据所述地图上的若干个地图单位;
确定模块,用于在所述地图的边缘确定出离散的M个扩散点;
转变模块,用于以所述M个扩散点为中心,将所述第i个第一区域和所述第i+1个第一区域之间的所述地图单位分批次转变为第二区域;当所述第i+1个第一区域不是第N个第一区域时,将所述第i+1个第一区域确定为所述第i个第一区域,再次将所述第i个第一区域和所述第i+1个第一区域之间的所述地图单位分批次转变为第二区域。
另一方面,提供了一种虚拟环境中的地图区域生成装置,所述装置包括:
中心点选择模块,用于在地图中随机选择出第N个第一区域的中心点,所述地图包括若干个地图单位;
第一区域选择模块,用于以所述中心点为中心,选择出Kn个地图单位作为所述第N个第一区域;
所述第一区域选择模块,还用于以所述第N个第一区域为中心,增加选择出Kn-1个地图单位作为所述第N-1个第一区域,所述第N-1个第一区域包含所述第N个第一区域;
所述第一区域选择模块,还用于当所述第i-1个第一区域不是第1个第一区域时,将所述第i-1个第一区域确定为所述第i个第一区域,再次以所述第N个第一区域为中心,增加选择出Kn-1个地图单位作为所述第N-1个第一区域;
信息生成模块,用于当所述第i-1个第一区域是第1个第一区域时,生成所述地图上的N个第一区域的区域信息。
另一方面,提供了一种虚拟环境中的地图区域显示装置,所述装置包括:
显示模块,用于显示地图俯视画面,所述地图俯视画面显示的地图上存在离散的M个起始扩散点,所述地图包括若干个地图单位;
缩进模块,用于在所述地图俯视画面中显示第i个缩进期的第二区域扩散动画,所述第二区域扩散动画包括以所述M个起始扩散点为中心,将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域的动画;
所述缩进模块,还用于当i+1不等于N时,在所述地图俯视画面中显示第 i+1个缩进期的第二区域扩散动画,所述第二区域扩散动画包括将所述第i+1个第一区域确定为所述第i个第一区域,再次将所述第i个第一区域和所述第i+1 个第一区域之间的所述地图单位分批次转变为第二区域的动画;
其中,N、i和M均为正整数,i小于N。
另一方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面提供的虚拟环境中的地图区域生成方法,或,上述方面提供的虚拟环境中的地图区域生成方法,或,上述方面提供的虚拟环境中的地图区域显示方法。
另一方面,提供了一种计算机可读存储介质,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面提供的虚拟环境中的地图区域生成方法,或,上述方面提供的虚拟环境中的地图区域生成方法,或,上述方面提供的虚拟环境中的地图区域显示方法。
另一方面,提供了一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行如上述方面提供的虚拟环境中的地图区域生成方法,或,上述方面提供的虚拟环境中的地图区域生成方法,或,上述方面提供的虚拟环境中的地图区域显示方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
通过在地图的边缘确定出离散的M个扩散点,以M个扩散点为中心,将第 i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域;当第 i+1个第一区域不是第N个第一区域时,将第i+1个第一区域确定为第i个第一区域,再次将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域;使得第二区域的扩散方式变得更加随机多样化,从而动态出现不同样式的第二区域,因此用户无法预测出第二区域的位置,增加了对战的多样化和激烈程度,缩短了单局的游戏时长,当同时在线对局的人数较多(比如晚上或周末的上亿玩家同时在线)时,减轻了服务器的业务压力。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个示例性实施例提供的出生点选择过程的示意图;
图2是本申请一个示例性实施例提供的观察技能的技能展示方式示意图;
图3是本申请一个示例性实施例提供的观察视角转换方法的过程示意图;
图4示出了本申请一个示例性实施例提供的电子设备的结构框图;
图5示出了本申请一个示例性实施例提供的计算机系统的结构框图;
图6是本申请一个示例性实施例提供的虚拟环境中的第二区域周期性增大的示意图;
图7是本申请一个示例性实施例提供的虚拟环境中的第二区域和第一区域的分布图;
图8是本申请一个示例性实施例提供的虚拟环境中的地图区域生成方法的流程图;
图9是本申请一个示例性实施例提供的虚拟环境中的地图区域生成方法的流程图;
图10是本申请一个示例性实施例提供的虚拟环境中的地图区域生成方法的流程图;
图11是本申请一个示例性实施例提供的虚拟环境中的地图区域生成方法的流程图;
图12是本申请一个示例性实施例提供的虚拟环境中的地图区域生成方法的流程图;
图13是本申请一个示例性实施例提供的虚拟环境中的地图区域生成方法的流程图;
图14是本申请一个示例性实施例提供的虚拟环境中的地图区域显示方法的流程图;
图15是本申请另一个示例性实施例提供的虚拟环境中的地图区域生成装置的结构框图;
图16是本申请一个示例性实施例提供的虚拟环境中的地图区域生成装置的结构框图;
图17是本申请一个示例性实施例提供的虚拟环境中的地图区域显示装置的结构框图;
图18是本申请另一个示例性实施例提供的终端的结构框图;
图19是本申请另一个示例性实施例提供的终端的结构框图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
首先,对本申请实施例中涉及的名词进行简单介绍:
战术竞技(Battle Royale,战术竞技)游戏:是一种将虚拟对象置于虚拟环境中,并提供一系列逃生规则,由玩家根据逃生规则制定逃生策略后,控制游戏中的虚拟对象实现逃生的游戏。
第一区域(也称安全区):在战术竞技游戏的地图中,不会使虚拟角色受到环境伤害的地图区域。
第二区域(也称危险区):在战术竞技游戏的地图中,会使虚拟角色受到环境伤害的地图区域。比如:当虚拟角色处于第二区域时,会持续掉血量直至死亡。
缩进:第二区域逐渐增大,导致第一区域逐渐变小的进程。
可选地,本申请实施例中,战术竞技游戏所提供的逃生规则至少包括:出生规则、第一区域规则、身份规则、观察规则、逃生规则中的至少一种。
针对上述五种规则分别进行说明:
一、出生规则
该出生规则用于表示虚拟角色进入游戏对局后所处位置的确定方式。可选地,该虚拟环境对应有地图,该地图中的n个预设位置对应有n个出生点。用户可以在对局开始时,对该n个出生点中的任意一个出生点进行选择,则对局开始后,该用户所控制的虚拟角色所处的初始位置为该被选择的出生点对应的位置。可选地,每个对局中提供的候选出生点可以是该n个出生点,也可以是该n个出生点中的部分出生点,如:在该n个出生点中确定出m个出生点作为当前对局的可选出生点,用户在该m个出生点中对任意一个出生点进行选择,0<m<n。可选地,该m个出生点所连成的区域在虚拟环境对应的地图中显示为条状区域,可选地,该条状区域起点位置的出生点与地图的第一侧边距离最近,该条状区域终止位置的出生点与地图的第二侧边距离最近,第一侧边和第二侧边为相对的两条边。
示意性的,以该地图中31个位置对应31个出生点,并在单次对局中确定8 个出生点为例进行说明,图1是本申请一个示例性实施例提供的出生点选择过程的示意图,如图1所示,虚拟环境对应地图中展示有31个出生点110,根据当前对局,随机确定出呈条状区域的8个出生点120作为当前对局中用户可选择的虚拟角色的出生点。
值得注意的是,上述条状区域用于在对局开始时,将参与对局的虚拟对象聚集在条状区域内,并随着第一区域的缩进方向驱赶虚拟对象以相对一致的路径向第一区域移动(比如图1中的左侧方向向右侧方向移动)。值得注意的是,上述条状区域还可以实现为其他形状的区域,本申请实施例对此不加以限定。
二、安全区规则
在逃生过程中,虚拟角色受到虚拟环境中环境因素的影响,需要移动至第一区域,以避免第二区域中的环境因素逐步降低虚拟角色的生命值直至虚拟角色被淘汰。可选地,该第一区域可以根据游戏进度进行缩进,也可以根据用户对游戏道具的使用进行缩进,还可以根据用户对技能的使用进行缩进,其中,缩进过程对应有缩进速度、缩进范围、缩进间隔时长等特征。可选地,缩进过程中,第一区域由较大范围的第一区域逐步缩小至较小范围的第二区域,且第二区域为第一区域中的子区域,也即缩进过程是将第一区域从第一区域的边缘向其内部已确定的第二区域逐步缩小的过程。其中,缩进速度用于表示第一区域缩小至第二区域所用的时长,该缩进时长可以是固定的,也可以根据用户对道具或技能的使用而对应延长或缩短;缩进范围用于表示缩进后的第二区域在虚拟环境中所处的范围,该缩进范围可以是预先设定的,也可以根据用户对道具或技能的使用而增大或减小;缩进间隔时长用于表示相邻两次第一区域缩进事件之间的间隔时长,该缩进间隔时长可以是固定时长,也可以根据用户对道具或技能的使用而延长或缩短。
其中,第一区域可以是规则形状的区域,也可以是不规则形状的区域;第二区域可以是第一区域内规则形状的区域,也可以是第一区域内不规则形状的区域。可选地,虚拟环境对应的地图中以预设大小的方格对虚拟环境进行划分,如:每个方格对应虚拟环境中100×100大小的区域,则第一区域的刷新可以以方格为刷新单位,如:第一区域占6400个相互连接的方格,且轮廓呈不规则形状,第二区域占该6400个方格中相互连接的3800个方格。
可选地,在对第一区域进行确定的过程中,首先在虚拟环境中确定一块预设大小且预设形状的区域作为最终刷新得到的第一安全区域,并在该第一安全区域的基础上生成包围该第一安全区域的第二安全区域,在第二安全区域的基础上,生成包围该第二安全区域的第三安全区域,以此类推,根据安全区域刷新次数确定得到相邻两个安全区域之间的刷新,如:安全区域共需要刷新4次,则首先由最大虚拟环境范围进行第一次安全区域刷新得到第四安全区域,由第四安全区域进行第二次安全区域刷新得到第三安全区域,由第三安全区域进行第三次安全区域刷新得到第二安全区域,由第二安全区域进行第四次安全区域刷新得到第一安全区域。
以最大虚拟环境范围进行第一次安全区域刷新为例进行说明,该最大虚拟环境范围为正方形范围,在该正方形范围的四条侧边分别随机确定至少一个刷新点,在刷新过程中,由每条边上的刷新点逐步向正方形范围内进行刷新,直至刷新得到第四安全区域。
可选地,虚拟角色还可以通过道具或技能在当前第一区域内任意位置创建预设大小的第二区域。示意性的,虚拟角色A获取了道具钻探机后,在虚拟环境中当前第一区域的第一位置使用该钻探机后,在该第一区域中以该第一位置为起始位置,生成预设形状预设大小的第二区域。
三、附加身份规则
可选地,本申请实施例中,战术竞技游戏中提供的逃生规则还包括与虚拟角色的附加身份对应的规则,虚拟角色在虚拟环境中进行逃生时,对应不同附加身份具备不同的技能,以及不同的可视内容。可选地,该附加身份可以是在战术竞技游戏的对局开始之前服务器随机向对局内的虚拟角色分配的,也可以是在匹配成功后用户从服务器随机分配的附加身份中选择的。可选地,当该附加身份是由服务器随机分配的时,服务器以预设比例向对局内的虚拟角色分配附加身份,如:第一附加身份、第二附加身份以及第三附加身份的预设比例为7: 2:1,则对局内共100个虚拟角色时,向70个虚拟角色分配第一附加身份,向 20个虚拟角色分配第二附加身份,并向10个虚拟角色分配第三附加身份;可选地,当附加身份是由用户自行选择的时,服务器控制对局内各附加身份的虚拟角色的数量维持在预设比例,如:第一附加身份、第二附加身份以及第三附加身份的预设比例为7:2:1,对局内共100个虚拟角色,当选择第一附加身份的虚拟角色达到70时,服务器提示该第一附加身份为不可选附加身份。
可选地,本申请实施例提供的战术竞技游戏中,提供有至少三种附加身份,每种附加身份对应有相应技能集合。示意性的,该战术竞技游戏中提供有第一附加身份、第二附加身份以及第三附加身份,其中,第一附加身份对应第一技能集合,第二附加身份对应第二技能集合,第三附加身份对应第三技能集合,其中,第一技能集合、第二技能集合和第三技能集合之间可以存在交集,也即,可以存在目标技能,属于第一技能集合、第二技能集合以及第三技能集合中的至少两个集合。可选地,每个技能集合中还包括各自对应的独立技能,也即,第一技能集合中包括第一技能,该第一技能既不属于第二技能集合,也不属于第三技能集合;第二技能集合中包括第二技能,该第二技能既不属于第一技能集合,也不属于第三技能集合;第三技能集合中包括第三技能,该第三技能既不属于第一技能集合也不属于第二技能集合。
示意性的,以上述三种附加身份为例进行说明,本申请实施例的战术竞技游戏中,每种附加身份对应有至少一种特定技能。示意性的,针对每个附加身份的独立技能分别进行说明:
第一附加身份(破坏者附加身份),其对应的第一技能包括:对虚拟环境中的破坏者宝箱可见,该破坏者宝箱中提供有三种仅破坏者附加身份的虚拟角色可使用的道具,其中包括:1、信号器;2、地震仪;3、钻探机,其中,信号器用于获得额外装备奖励,示意性的,该信号器用户召唤等级较高的道具(如:头盔、装甲、背包等),和/或,该信号器用于召唤综合杀伤力较强的武器;地震仪用于改变第一区域的刷新进度,示意性的,当虚拟对象在两次第一区域刷新事件之间对该地震仪进行使用时,该两次刷新事件之间的时间间隔对应减少预设时长,如:当前第一区域在20秒后开始刷新至下一第一区域,则当虚拟对象对该地震仪进行使用时,当前第一区域减少至10秒后开始刷新至下一第一区域;钻探机用于在第一区域中创建一块预设大小的第二区域。示意性的,虚拟角色A 获取了道具钻探机后,在虚拟环境中当前第一区域的第一位置使用该钻探机后,在该第一区域中以该第一位置为起始位置,生成预设形状预设大小的第二区域。
第二附加身份(追猎者附加身份),其对应的第二技能包括:通过触发道具在地图中对该虚拟角色所处位置周侧的其它虚拟角色的位置进行标记。可选地,该地图中以预设大小的方格对虚拟环境进行划分,则当虚拟角色触发道具时,以该虚拟角色在地图中所处的方格为中心方格,在地图中对该方格周侧(含该方格)共9个方格内的虚拟角色的位置进行标记。
示意性的,图3是本申请一个示例性实施例提供的第三观察技能的技能展示方式示意图,如图3所示,虚拟环境的地图300以预设大小的方格对虚拟环境进行划分,当前目标虚拟角色所处的方格为如图3所示的方格310,当该目标虚拟角色触发该第三观察技能时,以该方格310为中心,确定出该方格310周侧(包含该方格310)共计9个方格内(如图3中虚线框处的9个方格所示)的虚拟角色分布情况,并针对每个虚拟角色所处的位置对该地图中的相应坐标进行标记,如图3中示出的标记320。
可选地,追猎者对地图中对该方格周侧(含该方格)共9个方格内的虚拟角色的位置进行标记后,当该追猎者或被标记的虚拟角色之间产生击杀事件(由击杀者对被击杀者进行击杀)时,则击杀者对应获得增益,如:提高回血速度、提高移动速度等。
第三附加身份(搜寻者附加身份),其对应的第三技能包括:当虚拟角色在虚拟环境中维持生命并收集目标道具达到预设数量时召唤逃生道具,确定获取逃生道具的虚拟角色,或获取逃生道具的虚拟角色以及其队友逃生成功。
四、观察规则
可选地,本申请实施例的战术竞技游戏中,提供有至少三种特殊观察技能,用户在开始游戏对局之前,在该至少三种特殊观察技能中选择任意其中一种作为该用户所控制的主控虚拟角色在游戏对局中对虚拟环境进行观察的特殊观察技能。示意性的,以三种观察技能为例,对该三种特殊观察技能分别进行说明:
第一观察技能(鹰隼俯瞰):通过第一道具以上帝视角观察虚拟环境,也即对第一道具(如:虚拟鸟)进行触发后,该第一道具上升至虚拟环境空中的预设高度,虚拟角色通过该第一道具以该高度对虚拟环境进行观察值得注意的是,由于该虚拟角色以释放第一道具与空中的方式对虚拟环境进行观察,对局中的其他虚拟角色也可以观察得到视线范围内的该第一道具,从而对释放该第一道具的虚拟角色所处的位置进行确定。示意性的,请参考图2,图2是本申请一个示例性实施例提供的观察视角转换方法的过程示意图,如图2所示,首先以虚拟角色200的第一视角对虚拟环境进行观察,观察画面210中包括虚拟环境中的物体211以及山坡312,当用户通过外部输入设备(如:在键盘上按压R键) 触发第一道具230时,通过第一道具230上升至该虚拟环境的预设高度对该虚拟环境进行观察,观察画面240中包括上述物体211、山坡212以及处于山坡 212另一侧的物体213。
第二观察技能(足迹追踪):对该虚拟角色所处虚拟环境的地面进行侦测,得到地面上由虚拟角色在历史时间段留下的脚印信息,也即,虚拟角色触发技能后,游戏界面中显示有该虚拟角色在虚拟环境所处位置周侧区域内的脚印,该脚印用于指示预设时长内从该区域经过的虚拟角色的行进方向(值得注意的是,当虚拟角色在该区域内以倒退的形式行进时,该脚印指示的行进方向与该虚拟角色的实际行进方向相反)。
第三观察技能(晶石探测):通过触发探测道具对以该虚拟角色所处位置为中心的预设范围内的武器晶石进行观察,可选地,该武器晶石为附着在武器上的标志(该武器晶石还可以替换实现为武器贴图、武器配件等),可选地,该武器可以是虚拟角色所持有的武器,也可以是放置于虚拟环境的地面的待捡拾的武器,可选地,当虚拟角色触发该第二观察技能时,该虚拟角色所观察的虚拟环境中的其它虚拟物品呈一定的灰度以及透明度进行显示,武器晶石呈一定的亮度透过其它虚拟物品(如:墙壁、山坡、地板等)进行显示。可选地,触发道具对武器晶石进行观察时,观察范围以虚拟角色所处位置为中心,以预设半径的球形观察范围对处于该观察范围内的武器晶石进行高亮显示。
五、逃生规则
可选地,针对不同的附加身份的逃生规则可以是相同的,也可以是不同的,还可以针对所有附加身份对应同一套统一的逃生规则,并针对特定附加身份对应一套额外逃生规则。示意性的,1、针对所有的虚拟角色,当虚拟角色维持生命至最终第一区域,并获得逃生道具时,确定获取逃生道具的虚拟角色,或获取逃生道具的虚拟角色以及其队友逃生成功;2、针对目标附加身份(如上述附加身份规则中的搜寻者附加身份)的虚拟角色,当虚拟角色在虚拟环境中维持生命并收集目标道具达到预设数量时召唤逃生道具,确定获取逃生道具的虚拟角色,或获取逃生道具的虚拟角色以及其队友逃生成功。值得注意的是,以上述方式2进行逃生时,虚拟环境中目标道具的总数为预设数量,该预设数量用于控制通过方式2逃生的目标附加身份的虚拟角色的数量,如:目标附加身份的虚拟角色需要收集20个目标道具以召唤逃生道具,虚拟环境中目标道具的总数为60,则至多有三个目标附加身份的虚拟角色能够召唤该逃生道具以逃生,可选地,战术竞技游戏中向目标附加身份的虚拟角色实时提示尚未被虚拟角色获取的目标道具的剩余数量和/或位置,则当虚拟角色所持的目标道具数量与剩余数量的总和达不到召唤逃生道具的要求数量时,该虚拟角色切换作战策略,以通过方式1进行逃生。
其中,上述方式1和方式2为并列存在的两个方案,也即,针对目标附加身份的虚拟角色,既可以通过方式1逃生成功,也可以通过方式2逃生成功,但目标附加身份的虚拟角色通过方式1逃生成功后就无需继续达到方式2对应的逃生要求,或,目标附加身份的虚拟角色通过方式2逃生成功后就无需继续达到方式1对应的逃生要求。可选地,上述方式2中的目标道具为目标附加身份的虚拟角色在虚拟环境中可视的道具,也即,该目标道具在虚拟环境中对其它附加身份的虚拟角色不可见。
可选地,虚拟角色通过不同方式逃生后所展示的对局结果也不同,可选地,当目标附加身份的虚拟角色对应有一套额外的逃生规则,并根据该逃生规则逃生成功时,该目标附加身份的虚拟角色针对该额外逃生规则显示有额外展示结果。示意性的,该战术竞技游戏中针对所有附加身份的虚拟角色提供的第一逃生规则,并针对目标附加身份的虚拟角色提供的第二逃生规则,当虚拟角色通过第一逃生规则逃生后,在对局结果界面显示“恭喜您逃生成功,获得第一名”,而处于虚拟环境中依旧保有生命值的虚拟角色在对局结果界面显示“恭喜您获得第二名”;当目标附加身份的虚拟角色通过第二逃生规则逃生,且该目标附加身份的虚拟角色为虚拟环境中首位通过第二逃生规则逃生的虚拟角色时,在对局结果界面显示“恭喜您成为目标附加身份第一名,逃生成功”,针对虚拟环境中第二个通过第二逃生规则逃生的虚拟角色,在对局结果界面显示“恭喜您成为目标附加身份第二名,逃生成功”,以此类推。
本申请中的终端可以是台式计算机、膝上型便携计算机、手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器等等。该终端中安装和运行有支持虚拟环境的应用程序,比如支持三维虚拟环境的应用程序。该应用程序可以是战术竞技(Battle Royale,战术竞技)游戏、虚拟现实应用程序、三维地图程序、军事仿真程序、第三人称射击游戏(Third-PersonalShooting Game,TPS)、第一人称射击游戏(First-person shooting game,FPS)、多人在线战术竞技游戏 (Multiplayer Online Battle Arena,MOBA)中的任意一种。可选地,该应用程序可以是单机版的应用程序,比如单机版的3D游戏程序,也可以是网络联机版的应用程序。
在一些实施例中,上述应用程序可以是射击类游戏、竞速类游戏、大逃杀类型游戏、军事仿真程序等程序。该客户端可以支持Windows操作系统、苹果操作系统、安卓操作系统、IOS操作系统和LINUX操作系统中的至少一种操作系统,并且不同操作系统的客户端可以互联互通。在一些实施例中,上述客户端是适用于具有触摸屏的移动终端上的程序。
在一些实施例中,上述客户端是基于三维引擎开发的应用程序,比如三维引擎是Unity引擎。图4是本申请一个示例性实施例提供的终端的结构示意图。如图4所示,该终端包括处理器11、触摸屏12以及存储器13。
处理器11可以是单核处理器、多核处理器、嵌入式芯片以及具有指令运行能力的处理器中的至少一种。
触摸屏12包括普通触摸屏或压力感应触摸屏,普通触摸屏可以对施加在触摸屏12上的触摸操作进行测量,压力感应触摸屏可以对施加在触摸屏12上的按压力度进行测量。
存储器13存储有处理器11的可执行程序。示意性的,存储器13中存储有多人在线竞技程序A、应用程序B、应用程序C、触摸(以及压力)感应模块 18、操作系统的内核层19。其中,多人在线竞技程序A为基于三维虚拟引擎17 开发的应用程序。可选地,多人在线竞技程序A包括但不限于由三维虚拟引擎 17开发的游戏程序、虚拟现实程序、三维地图程序、三维演示程序中的至少一种。比如,终端的操作系统采用安卓操作系统时,多人在线竞技程序A采用Java 编程语言以及C#语言进行开发;又比如,终端的操作系统采用IOS操作系统时,多人在线竞技程序A采用Object-C编程语言以及C#语言进行开发。
三维虚拟引擎17是一款支持多种操作系统平台的三维交互式引擎,示意性的,三维虚拟引擎可用于游戏开发领域、虚拟现实(Virtual Reality,VR)领域以及三维地图领域等多领域的程序开发,本申请实施例对三维虚拟引擎17的具体类型不限,在下文实施例中以三维虚拟引擎17是Unity引擎为例来举例说明。
触摸(以及压力)感应模块18是用于接收触摸屏驱动程序191所上报的触摸事件(以及压力触控事件)的模块。触摸事件包括:触摸事件的类型和坐标值,触摸事件的类型包括但不限于:触摸开始事件、触摸移动事件和触摸落下事件。压力触控事件中包括:压力触控事件的压力值以及坐标值。该坐标值用于指示压力触控操作在显示屏上的触控位置。可选地,以显示屏的水平方向建立横坐标轴,显示屏的竖直方向建立竖坐标轴得到一个二维坐标系。
示意性的,内核层19包括了触摸屏驱动程序191以及其它驱动程序192。触摸屏驱动程序191是用于检测压力触控事件的模块,当触摸屏驱动程序191 检测到压力触控事件后,将压力触控事件传递给触摸(以及压力)感应模块18。
其它驱动程序192可以是与处理器11有关的驱动程序、与存储器13有关的驱动程序、与网络组件有关的驱动程序、与声音组件有关的驱动程序等。
本领域技术人员可以知晓,上述仅为对终端的结构的概括性示意。在不同的实施例中,终端可以具有更多或更少的组件。比如,终端还可以包括重力加速度传感器、陀螺仪传感器、电源等等。
图5示出了本申请一个示例性实施例提供的计算机系统的结构框图。该计算机系统500包括:第一终端510、服务器集群520、第二终端530。
第一终端510安装和运行有支持虚拟环境的客户端511,该客户端511可以是多人在线对战程序。当第一终端运行客户端511时,第一终端510的屏幕上显示客户端511的用户界面。该客户端可以是军事仿真程序、MOBA游戏、战术竞技游戏、SLG游戏的任意一种。在本实施例中,以该客户端是MOBA游戏来举例说明。第一终端510是第一用户501使用的终端,第一用户501使用第一终端510控制位于虚拟环境中的第一虚拟角色进行活动,第一虚拟角色可以称为第一用户501的主控虚拟角色。第一虚拟角色的活动包括但不限于:调整身体姿态、爬行、步行、奔跑、骑行、飞行、跳跃、驾驶、拾取、射击、攻击、投掷中的至少一种。示意性的,第一虚拟角色是第一虚拟人物,比如仿真人物角色或动漫人物角色。
第二终端530安装和运行有支持虚拟环境的客户端531,该客户端531可以是多人在线对战程序。当第二终端530运行客户端531时,第二终端530的屏幕上显示客户端531的用户界面。该客户端可以是军事仿真程序、MOBA游戏、战术竞技游戏、SLG游戏中的任意一种,在本实施例中,以该客户端是MOBA 游戏来举例说明。第二终端530是第二用户502使用的终端,第二用户502使用第二终端530控制位于虚拟环境中的第二虚拟角色进行活动,第二虚拟角色可以称为第二用户502的主控虚拟角色。示意性的,第二虚拟角色是第二虚拟人物,比如仿真人物角色或动漫人物角色。
可选地,第一虚拟人物和第二虚拟人物处于同一虚拟环境中。可选地,第一虚拟人物和第二虚拟人物可以属于同一个阵营、同一个队伍、同一个组织、具有好友关系或具有临时性的通讯权限。可选的,第一虚拟人物和第二虚拟人物可以属于不同的阵营、不同的队伍、不同的组织或具有敌对关系。
可选地,第一终端510和第二终端530上安装的客户端是相同的,或两个终端上安装的客户端是不同操作系统平台(安卓或IOS)上的同一类型客户端。第一终端510可以泛指多个终端中的一个,第二终端530可以泛指多个终端中的另一个,本实施例仅以第一终端510和第二终端530来举例说明。第一终端 510和第二终端530的设备类型相同或不同,该设备类型包括:智能手机、平板电脑、电子书阅读器、MP3播放器、MP4播放器、膝上型便携计算机和台式计算机中的至少一种。
图5中仅示出了两个终端,但在不同实施例中存在多个其它终端540可以接入服务器集群520。在一些实施例中,还存在一个或多个其它终端540是开发者对应的终端,在其它终端540上安装有虚拟环境的客户端的开发和编辑平台,开发者可在其它终端540上对客户端进行编辑和更新,并将更新后的客户端安装包通过有线或无线网络传输至服务器集群520,第一终端510和第二终端530 可从服务器集群520下载客户端安装包实现对客户端的更新。
第一终端510、第二终端530以及其它终端540通过无线网络或有线网络与服务器集群520相连。
服务器集群520包括一台服务器、多台服务器、云计算平台和虚拟化中心中的至少一种。服务器集群520用于为支持三维虚拟环境的客户端提供后台服务。可选地,服务器集群520承担主要计算工作,终端承担次要计算工作;或者,服务器集群520承担次要计算工作,终端承担主要计算工作;或者,服务器集群520和终端(第一终端510和第二终端530)之间采用分布式计算架构进行协同计算。
在一个示意性的例子中,服务器集群520包括服务器521和服务器526,服务器521包括处理器522、用户帐号数据库523、对战服务模块524、面向用户的输入/输出接口(Input/Output Interface,I/O接口)525。其中,处理器522用于加载服务器521中存储的指令,处理用户帐号数据库523和对战服务模块524 中的数据;用户帐号数据库523用于存储第一终端510、第二终端530以及其它终端540所使用的用户帐号的数据,比如用户帐号的头像、用户帐号的昵称、用户帐号的战斗力指数,用户帐号所在的服务区;对战服务模块524用于提供多个对战房间供用户进行对战;面向用户的I/O接口525用于通过无线网络或有线网络和第一终端510和/或第二终端530建立通信交换数据。可选地,服务器 526内设置有缩进模块527,该缩进模块527用于实现下述实施例中提供的虚拟环境中的地图区域生成方法。
图6示出了一种典型的第二区域的缩进(或扩散)方式的示意图。假设虚拟环境的地图呈正方向。第二区域61是位于正方形63和圆形64之间的地图单位,第一区域62是位于圆形64内的地图单位。位于外圈的第二区域61周期性的增大(也即缩进),导致位于中央的第一区域62会周期性的减小。由于该种方式下,第一区域62是不同大小的规则圆形区域,因此变化方式较为单一,用户很容易提前预测出第一区域62的位置,从而提前规避第二区域61而尽早进入第一区域62中。
本申请实施例提供了一种具有伪随机性的第二区域的缩进方案。在一个示例性的例子中,如图7所示,地图预先划分为阵列分布的7行7列共49个地图单位(或称地图块、方格等)。第二区域会从随机选择的起始扩散点(地图单位 1、4、7、22、28、43、48和49)中开始扩散,按照不同层级的三次扩散后,使得第一区域变为最小第一区域(地图单位25、26和32)。每次扩散后,第一区域均为不规则的凸多边形区域,从而实现无法预测的伪随机性的第二区域。
当然,上述地图的划分方式、地图单位的个数、起始扩散点的位置均为示例性说明,并不限定。在某些实施例中,地图可能会划分为阵列分布的上千个或上万个地图单位。
本申请实施例可分为两个阶段:
第一阶段、N个第一区域的生成过程(预处理过程);
示例性的,图7示出了四个不同面积的第一区域。该第一区域的区域信息可以由服务器提前生成。其中,第0个第一区域包含第1个第一区域,第1个第一区域包含第2个第一区域,第2个第一区域包含第3个第一区域。也即,第0个第一区域>第1个第一区域>第2个第一区域>第3个第一区域。
第0个第一区域的区域信息包括:所有地图单位。
第1个第一区域的区域信息包括:地图单位2、6、9、10、11、12、13、14、 16、17、18、19、20、23、24、25、26、27、30、31、32、33、34、36、37、 38、39、40、41、42、44、48。
第2个第一区域的区域信息包括:地图单位10、12、17、18、19、20、24、 25、26、30、31、32、33、34、38、40。
第3个第一区域的区域信息包括:地图单位25、26、32。
上述区域信息也可以采用其它方式表示,比如采用49个比特的位图来表示,当第i个比特取值为1时,代表包含第i个地图单位;当第i个比特取值为0时,代表不包含第i个地图单位。
第二阶段、根据N个第一区域的区域信息,动态将第一区域转换为第二区域的扩散过程(对局中的过程)。
图7示例性的示出了该扩散过程。以3次扩散为例,第二区域的第一次扩散包括:起始扩散点对应的地图单位,扩散至除第一安全区域之外的所有地图单位;第二区域的第二次扩散包括:除第一安全区域对应的所有地图单位,扩散至除第二安全区域之外的所有地图单位;第二区域的第三次扩散包括:除第二安全区域对应的所有地图单位,扩散至除第三安全区域之外的所有地图单位。
下面采用不同的实施例对上述两个阶段进行介绍。
第一区域的生成阶段
图8示出了本申请的一个示例性实施例提供的虚拟环境中的地图区域生成方法的流程图。该方法可以由图5所示的服务器来执行。该方法包括:
步骤801,在地图中随机选择出第N个第一区域的中心点,地图包括若干个地图单位;
第N个第一区域是地图中的最小第一区域,N为大于一的整数。示例性的,N的取值范围为2-7,或者,N的取值为2-15等。本实施例对N的范围不加以限定。
地图中包括若干个地图单位。可选地,若干个地图单位阵列均匀排布。每个地图单位的形状和大小相同或不同。示例性的,地图单位的形状为正方形、矩形、菱形等形状中的至少一种。本申请实施例中,以地图单位的形状为正方形来举例说明。
在地图中随机选择出一个地图单位,作为最小第一区域的中心点。可选地,中心点为一个。在一个示例中,在地图的中央区域中随机选择出一个地图单位,作为最小第一区域的中心点;在另一个示例中,在地图的中央区域中预设有若干个候选中心点,随机选择其中一个候选中心点作为最小第一区域的中心点。
步骤802,以中心点为中心,选择出Kn个地图单位作为第N个第一区域;
以中心点为中心向四周扩散,随机选择出Kn个地图单位作为第N个第一区域。Kn是第N个第一区域对应的地图单位数量。示例性的,Kn个地图单位是连续的若干个地图单位,也即Kn个地图单位中的每个地图单位与至少一个其它地图单位具有相邻边。
结合参考图7,第三个第一区域对应的K3为3,第二个第一区域对应的K2为16个;第一个第一区域对应的K1为32个。服务器以中心点为中心向四周扩散,随机选择出3个地图单位作为第三个第一区域。
步骤803,以第N个第一区域为中心,增加选择出Kn-1个地图单位作为第 N-1个第一区域,第N-1个第一区域包含第N个第一区域;
示例性的,服务器以第三个第一区域为中心,增加选择13个地图单位作为第二个第一区域。第二个第一区域包含第三个第一区域。
步骤804,当第i-1个第一区域不是第1个第一区域时,将第i-1个第一区域确定为第i个第一区域,再次以第N个第一区域为中心,增加选择出Kn-1个地图单位作为第N-1个第一区域;
示例性的,当第二个第一区域不是第一个第一区域时,以第二个第一区域为中心,增加选择16个地图单位作为第一个第一区域。第一个第一区域包含第二个第一区域。
步骤805,当第i-1个第一区域是第1个第一区域时,生成地图上的N个第一区域的区域信息。
区域信息是用于表示第一区域所占据的地图单位的数据。或者,区域信息是用于表示第二区域所占据的地图单位的数据。或者,区域信息是用于表示第一区域和第二区域分别所占据的地图单位的数据。在本实施例中,以区域信息是用于表示第一区域所占据的地图单位的数据来举例说明。
示例性的,区域信息采用地图单位的编号来表示,比如地图单位2;也可以采用位图来表示,比如采用49(等于行数乘列数)个比特的位图来表示,当第 i个比特取值为1时,代表第一区域包含第i个地图单位;当第i个比特取值为0 时,代表第一区域不包含第i个地图单位。
示例性的,区域信息采用矩阵(矩阵的行列数等于地图单位的行列数)来表示,矩阵中的第i行第j列的比特取值为1时,代表第一区域包含第i行第j 列的地图单位;当第i行第j列比特取值为0时,代表第一区域不包含第i行第 j列地图单位。本申请对此不加以限定。
综上所述,本实施例提供的方法,通过在地图中随机选择出第N个第一区域的中心点,地图包括若干个地图单位;以中心点为中心,选择出Kn个地图单位作为第N个第一区域;以第N个第一区域为中心,增加选择出Kn-1个地图单位作为第N-1个第一区域,直至选择出所有的第一区域。能够使得每个第一区域中所占据的地图单位都是动态确定的,从而生成不同样式的第一区域供后续流程的使用,因此用户无法预测出第一区域的位置,增加了对战的多样化和激烈程度,缩短了单局的游戏时长,减轻了服务器的业务压力。
在一个可选的实施例中,上述方法可以执行多次,从而生成多组不同的第一区域的区域信息。
为了更详细的描述第一区域的生成阶段。图9示出了本申请的另一个示例性实施例提供的虚拟环境中的地图区域生成方法的流程图。该方法可以由图5 所示的服务器来执行。该方法包括:
步骤901,在地图中位于中央区域且属性为陆地的地图单位中,随机选择出一个地图单位作为第N个第一区域的中心点;
中央区域包括:预先设置的位于地图中部的至少两个地图单位。示例性的参考图7,中央区域包括地图单位17、18、19、24、25、26、31、32、33。
可选地,每个地图单位对应有属性,该属性包括:陆地或海洋。
在一个示例中,将属性为陆地的地图单位25随机选择为第三个第一区域的中心点。
步骤902,以中心点为中心向四周扩散,按照已转变为第二区域的相邻地图单位的数量由高到低的顺序,随机选择出Kn个地图单位作为第N个第一区域;
在第一次选择时,中心点周围的相邻地图单位均为第一区域,随机选择出 Kn个地图单位作为第N个第一区域。在非第一次选择时,中心点周围的相邻地图单位已经有一部分地图单位转变为第一区域,按照已转变为第二区域的相邻地图单位的数量由高到低的顺序,随机选择出Kn个地图单位作为第N个第一区域。
结合参考图7,中心点25的相邻地图单位包括:地图单位17、地图单位18、地图单位19、地图单位24、地图单位25、地图单位26、地图单位31、地图单位32和地图单位33。由于均为第一区域,因此随机选择地图单位26和地图单位32作为第N个第一区域。
步骤903,判断第i-1个第一区域是不是第1个第一区域;
如果不是第1个第一区域,则进入步骤904;如果是第1个第一区域,则进入步骤907。
步骤904,当第i-1个第一区域不是第1个第一区域时,计算地图中未被选择的地图单位与中心点之间的距离;
设一个地图单位的边长为单位1,则根据线段计算方式或三角形的边长计算公式,计算出地图中还未被选择的每个地图单位与中心点之间的距离。
可选地,当地图单位与中心点属于同一行或同一列时,根据线段计算方式来计算地图单位与中心点之间的距离。比如,地图单位24和地图单位25之间的距离为1,地图单位23与地图单位25之间的距离为2。又比如,地图单位11 与地图单位25之间的距离为2,地图单位4与地图单位25之间的距离为3。
对于地图中未被选择的地图单位,可以计算出每个地图单位与中心点之间的距离,
步骤905,按照距离由近到远的顺序,随机将未被选择的地图单位中的Kn-1个地图单位确定为目标地图单位;
按照距离由近到远的顺序对未被选择的每个地图单位进行排序。根据排序结果,依次将Kn-1个地图单位确定为目标地图单位。
示例性的,对于未被选择的地图单位,按照距离由近到远的顺序,依次将 Kn-1个地图单位确定为目标地图单位。当存在至少两个地图单位与中心点的距离相同时,在至少两个地图单位中采用随机方式选择出一个地图单位添加至目标地图单位。
目标地图单位是需要添加至第N-1个第一区域的地图单位。
步骤906,将目标地图单位和第N个第一区域中的地图单位,确定为第N-1 个第一区域的地图单位;
重复执行上述步骤904和步骤905,直至所有第一区域都生成完毕。
步骤907,当第i-1个第一区域是第1个第一区域时,生成地图上的N个第一区域的区域信息。
需要说明是,上述第一区域的生成过程可以执行多次,从而生成多组第一区域的区域信息,分别对于不同的第一区域供后续调用。
综上所述,本实施例提供的方法,通过采用随机方式来确定第一区域的中心点,以及属于每个第一区域的地图单位,使得采用该方式所生成的N个第一区域的各不相同,具有较强的随机性,从而形成用户难以预测的安全期形状。
第二区域的扩散阶段(缩进阶段)
图10示出了本申请的一个示例性实施例提供的虚拟环境中的地图区域生成方法的流程图。该方法可以由图5所示的服务器来执行。该方法包括:
步骤1001,获取地图上的N个第一区域的区域信息,第i个第一区域包含第i+1个第一区域,每个第一区域占据地图上的若干个地图单位;
对于一局对战,服务器将多个客户端(分别登陆有不同的用户帐号)匹配至同一虚拟环境中进行对战。该虚拟环境中存在地图。该地图上存在第一区域和第二区域。其中,第一区域会周期性的减小,第二区域会周期性的增大。
在对战开始后,服务器获取地图上的N个第一区域的区域信息。服务器可以读取本地或其他存储位置所存储的N个第一区域的区域信息。当N个第一区域的区域信息存在多组时,随机读取一组N个第一区域的区域信息即可。
区域信息是用于表示第一区域所占据的地图单位的数据。或者,区域信息是用于表示第二区域所占据的地图单位的数据。或者,区域信息是用于表示第一区域和第二区域分别所占据的地图单位的数据。在本实施例中,以区域信息是用于表示第一区域所占据的地图单位的数据来举例说明。
示例性的,区域信息采用地图单位的编号来表示,比如地图单位2;也可以采用位图来表示,比如采用49(等于行数乘列数)个比特的位图来表示,当第 i个比特取值为1时,代表第一区域包含第i个地图单位;当第i个比特取值为0 时,代表第一区域不包含第i个地图单位。
示例性的,区域信息采用矩阵(矩阵的行列数等于地图单位的行列数)来表示,矩阵中的第i行第j列的比特取值为1时,代表第一区域包含第i行第j 列的地图单位;当第i行第j列比特取值为0时,代表第一区域不包含第i行第 j列地图单位。本申请对此不加以限定。
步骤1002,在地图的边缘确定出离散的M个起始扩散点;
在初始状态(或称第0个第一区域)下,地图上的所有地图单位均为第一区域。服务器首先在地图的边缘区域确定出离散的M个起始扩散点。M为正整数。可选地,M大于或等于地图的边缘个数。
起始扩散点是将第一区域转换为第二区域的初始地图单位。服务器以起始扩散点作为初始扩散位置(或中心),将第一区域逐步转变为第二区域。
步骤1003,以M个起始扩散点为中心,将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域;
其中,i的初始值为0。服务器从区域信息获知每个第一区域所占据的地图单位,从而确定出第i个第一区域和第i+1个第一区域之间的地图单位。
在第i次缩进期,服务器将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域。分批次是指将地图单位按照至少两次转换为第二区域,产生类似“蠕动”的缩进效果,从而使得用户无法预知第二区域的扩散方式。
步骤1004,当第i+1个第一区域不是第N个第一区域时,将第i+1个第一区域确定为第i个第一区域,再次将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域。
当第i+1个第一区域是第N个第一区域时,停止第二区域的扩散。
综上所述,本实施例提供的方法,通过在地图的边缘确定出离散的M个起始扩散点,以M个起始扩散点为中心,将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域;当第i+1个第一区域不是第N个第一区域时,将第i+1个第一区域确定为第i个第一区域,再次将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域;使得第二区域的扩散方式变得更加随机多样化,从而动态出现不同样式的第二区域,因此用户无法预测出第二区域的位置,增加了对战的多样化和激烈程度,缩短了单局的游戏时长,减轻了服务器的业务压力。
为了更详细的描述第二区域的扩散阶段。图11示出了本申请的另一个示例性实施例提供的虚拟环境中的地图区域生成方法的流程图。该方法可以由图5 的服务器来执行。该方法包括:
步骤1101,将第0个第一区域和第1个第一区域之间的地图单位作为候选地图单位;
第0个第一区域可以是整个地图上的所有地图单位。第1个第一区域的区域信息可以根据第一区域的区域信息得到。
步骤1102,从候选地图单位中随机选择出离散的M个起始扩散点,M个起始扩散点与地图的边缘之间的距离小于阈值;
示例性的,为了保证每个边缘都存在起始扩散点。以地图为正方形或矩形 (也可以是其它多边形)为例,包括如下步骤:
一,从候选地图单位中为地图的每个边缘随机选择出K个起始扩散点,每个边缘对应的K个起始扩散点与边缘之间的距离小于阈值;K为正整数。
二、从候选地图单位中随机选择出剩余的M-E*K个起始扩散点。
步骤1103,判断第i个第一区域是否为第0个第一区域;
i的初始值为0,然后会不断增加直至等于N。如果是第0个第一区域,则进入步骤1104;如果不是第0个第一区域,则进入步骤1105。
步骤1104,以M个起始扩散点为中心向四周扩散,按照已转变为第二区域的相邻地图单位的数量由高到低的顺序,将第0个第一区域和第1个第一区域之间的地图单位分批次转变为第二区域;
对于位于四角的地图单位,相邻地图单位为三个;对于位于边缘的地图单位,相邻地图单位为5个;对于位于中央区域的地图单位,相邻地图单位为8 个。
将第0个第一区域和第1个第一区域之间的地图单位作为待转变的地图单位。按照已转变为第二区域的相邻地图单位的数量由高到低的顺序进行排序。若存在两个地图单位的已转变为第二区域的相邻地图单位的数量是相同的,则对该两个地图单位进行随机排序。
服务器根据排序结果将第0个第一区域和第1个第一区域之间的地图单位分批次转变为第二区域。示例性的,第0个第一区域和第1个第一区域之间的地图单位包括100个,若需要分为5个批次进行第二区域转变,则可以将排序结果中的第1-20个地图单位作为第一批次进行第二区域转变;将排序结果中的第21-40个地图单位作为第二批次进行第二区域转变;将排序结果中的第41-60 个地图单位作为第三批次进行第二区域转变;将排序结果中的第61-80个地图单位作为第四批次进行第二区域转变;将排序结果中的第81-100个地图单位作为第五批次进行第二区域转变。
可选地,相邻批次之间的时间间隔是相同或不同的。
步骤1105,计算第i个第一区域和第i+1个第一区域之间的地图单位与最近的起始扩散点之间的距离;
将第i个第一区域和第i+1个第一区域之间的地图单位作为待转变的地图单位。计算待转变的地图单位与最近的起始扩散点之间的距离。
设一个地图单位的边长为单位1,则根据线段计算方式或三角形的边长计算公式,计算出地图中每个待转变的地图单位与最近的起始扩散点之间的距离。
可选地,当地图单位与最近的起始扩散点属于同一行或同一列时,根据线段计算方式来计算地图单位与最近的起始扩散点之间的距离。
可选地,当地图单位与最近的起始扩散点不属于同一行且不属于同一列时,根据三角形的边长计算公式,计算地图单位与最近的起始扩散点之间的距离。
对于地图中未被选择的地图单位,可以计算出每个地图单位与最近的起始扩散点之间的距离。每个地图单位所对应的最近的起始扩散点可以是不同的。
在一个示例中,预先将地图划分为多个较大的地图区块,未被选择的地图单位将自身所处的地图区块中的一个起始扩散点,确定为最近的起始扩散点。比如,当该地图区块中仅存在一个起始扩散点时,直接确定为最近的起始扩散点;当该地图区块中存在不止一个起始扩散点(比如2个或3个),则分别计算与不止一个起始扩散点之间的距离,取最小的一个距离作为地图单位与最近的起始扩散点之间的距离。
步骤1106,按照距离由近到远的顺序,将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域。
按照距离由近到远的顺序对待转变的地图单位进行排序,根据排序结果将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域。若存在两个地图单位与最近的起始扩散点之间的距离是相同的,则对该两个地图单位进行随机排序。
在上述第二区域的缩进过程中,服务器周期性地向本局对战中的各个客户端发送帧同步命令,该帧同步命令携带有第二区域扩散数据,该第二区域扩散数据是第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域的数据。各个客户端接收第二区域扩散数据,根据第二区域扩散数据显示第二区域扩散动画。
综上所述,本实施例提供的方法,通过在地图的边缘确定出离散的M个起始扩散点,以M个起始扩散点为中心,将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域;当第i+1个第一区域不是第N个第一区域时,将第i+1个第一区域确定为第i个第一区域,再次将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域;使得第二区域的扩散方式变得更加随机多样化,从而动态出现不同样式的第二区域,因此用户无法预测出第二区域的位置,增加了对战的多样化和激烈程度,缩短了单局的游戏时长,减轻了服务器的业务压力。
本实施例提供的方法,还通过为地图的每个边缘随机选择出K个起始扩散点,每个边缘对应的K个起始扩散点与边缘之间的距离小于阈值;再从候选地图单位中随机选择出剩余的M-E*K个起始扩散点,从而保证了地图中的每个边缘都有起始扩散点的存在。
本实施例提供的方法,还通过计算第i个第一区域和第i+1个第一区域之间的地图单位与最近的起始扩散点之间的距离,按照距离由近到远的顺序,将第i 个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域,同时当若存在两个地图单位与最近的起始扩散点之间的距离是相同的,则对该两个地图单位进行随机排序,从而保证了即便是基于同一组第一区域的区域信息,第二区域在每局中的扩散方式也是存在随机性的,使得用户无法预测第二区域的扩散方式,从而尽可能地缩短对局时长。
图12示出了本申请一个示例性实施例提供的虚拟环境中的地图区域生成方法的流程图。该方法可以由图5所示的服务器来执行。该方法包括:
步骤1201,开始单局的安全区生成;
步骤1202,随机获取最终安全区的中心点;
在地图上所有陆地区域中随机选择一个点,作为最终安全区(第N个安全区)的中心点。
步骤1203,由中心点向外扩展,获取固定面积的连续凸多边形区域;
获取中心点所在的当前方格,并沿方格边缘逐个向外扩散。
相邻已扩散方格的数量最多的方格被优先扩散。最终获取一个连续的凸多边形区域,作为最后一个安全区。
步骤1204,由上一安全区的边缘向外扩展,获取固定面积的连续凸多边形区域;
以相同的方法,由最后一个安全区的边缘扩散,获取倒数第二个安全区。
步骤1205,安全区的数量达到配置值;
当达到配置值时,进入步骤1206;当未达到配置值时,进入步骤1204
步骤1206,单局安全区生成完毕。
不断循环直至完成所有的安全区的生成。这些计算结果被保留在服务器中,供后续流程调用。
图13示出了本申请一个示例性实施例提供的虚拟环境中的地图区域生成方法的流程图。该方法可以由图4或图5所示的终端来执行。该方法包括:
步骤1301,开始;
步骤1302,定义整个地图为初始安全区(第0圈),当前安全区的缩进次序 N=1;
步骤1303,进入第N次安全区的缩进流程;
步骤1304,生成本次安全区的缩进范围;
定义属于第N个安全区但不属于第N+1个安全区的区域为本次安全区的缩进范围。
步骤1305,生成本次危险区的起始点;
随机获取距离第0个安全区边缘固定距离内的方格,作为危险区的起始扩散点,方格不能处于第一个安全区域内。本实施例中,以地图单位是方格来举例说明。
步骤1306,对缩进范围内的所有方格进行排序;
将本次安全区的缩进范围内的方格按照距离危险区的起始扩散点的距离由近到远的顺序进行排序,也即距离近的方格优先得到排序机会。
步骤1307,按照排序选择固定数量的方格转变为危险区;
在一个示例中,该选择过程可以分为n波,每波选择m/n个方格转变为危险区。其中,m为本次安全区的缩进范围内的方格数量与上一次安全区的缩进范围内的方格数量之间的差值。
步骤1308,本次安全区的缩进范围已全部转换为危险区;
当已全部转换为危险区,则进入步骤1310;当还未全部转换为危险区,则进入步骤1309。
步骤1309,进入下一波危险区的转变;
再次选择m/n个方格转变为危险区。
步骤1310,本次安全区的缩进完成;
步骤1311,到达最后一个安全区;
在第N次转变危险区后,判断是否到达最后一个安全区。
若未到达最后一个安全区,则进入步骤1313;若已达到最后一个安全区,则进入步骤1313。
步骤1313,令N=N+1,再次执行步骤1303;
步骤1313,所有的安全区的缩进完成。
图14示出了本申请一个示例性实施例提供的虚拟环境中的地图区域显示方法的流程图。该方法可以应用于如图5所示的终端中。该方法包括:
步骤1401,显示地图俯视画面,地图俯视画面显示的地图上存在离散的M 个起始扩散点,地图包括若干个地图单位;
地图俯视画面是采用俯视视角对地图进行观察的画面。可选地,终端接收服务器的帧同步指令,根据服务器的帧同步指令显示地图俯视画面。
步骤1402,在地图俯视画面中显示第i个缩进期的第二区域扩散动画,第二区域扩散动画包括以M个起始扩散点为中心,将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域的动画;
第二区域存在周期性的等待期和缩进期,整个缩进(或扩散)的次数可以为N次。在第i个缩进期,终端接收服务器的帧同步指令,该帧同步指令包括第二区域扩散数据。终端根据第二区域扩散数据显示第i个缩进期的第二区域扩散动画。
步骤1403,当i+1不等于N时,在地图俯视画面中显示第i+1个缩进期的第二区域扩散动画,第二区域扩散动画包括将第i+1个第一区域确定为第i个第一区域,再次将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域的动画;
其中,N、i和M均为正整数,i小于N。在一个示例中,终端上所显示的第二区域的扩散过程如图7所示。
综上所述,本实施例提供的方法,通过将第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域的动画,使得第二区域的扩散方式变得更加随机多样化,从而动态出现不同样式的第二区域,因此用户无法预测出第二区域的位置,增加了对战的多样化和激烈程度,缩短了单局的游戏时长,减轻了服务器的业务压力。
图15示出了本申请一个示例性实施例提供的虚拟环境中的地图区域生成装置的框图。所述装置包括:获取模块1520、确定模块1540和转变模块1560。
获取模块1520,用于获取地图上的N个第一区域的区域信息,第i个第一区域包含第i+1个第一区域,每个第一区域占据所述地图上的若干个地图单位;
确定模块1540,用于在所述地图的边缘确定出离散的M个起始扩散点;
转变模块1560,用于以所述M个起始扩散点为中心,将所述第i个第一区域和所述第i+1个第一区域之间的所述地图单位分批次转变为第二区域;当所述第i+1个第一区域不是第N个第一区域时,将所述第i+1个第一区域确定为所述第i个第一区域,再次将所述第i个第一区域和所述第i+1个第一区域之间的所述地图单位分批次转变为第二区域。
在一个可选的实施例中,所述确定模块1540,用于将第0个第一区域和第 1个第一区域之间的地图单位作为候选地图单位;从所述候选地图单位中随机选择出离散的M个起始扩散点,所述M个起始扩散点与所述地图的边缘之间的距离小于阈值。
在一个可选的实施例中,所述地图包括E个边缘,所述确定模块1540,用于从所述候选地图单位中为所述地图的每个边缘随机选择出K个起始扩散点,每个边缘对应的K个起始扩散点与所述边缘之间的距离小于阈值;
从所述候选地图单位中随机选择出剩余的M-E*K个起始扩散点。
在一个可选的实施例中,所述转变模块1560,用于当i=0时,以所述M个起始扩散点为中心向四周扩散,按照已转变为第二区域的相邻地图单位的数量由高到低的顺序,将所述第0个第一区域和第1个第一区域之间的地图单位分批次转变为第二区域。
在一个可选的实施例中,转变模块1560,用于当i大于0时,计算所述第i 个第一区域和第i+1个第一区域之间的地图单位与最近的起始扩散点之间的距离;按照所述距离由近到远的顺序,将所述第i个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域。
图16示出了本申请一个示例性实施例提供的虚拟环境中的地图区域生成装置的框图。所述装置包括:中心点选择模块1620、第一区域选择模块1640和信息生成模块1660。
中心点选择模块1620,用于在地图中随机选择出第N个第一区域的中心点,所述地图包括若干个地图单位;
第一区域选择模块1640,用于以所述中心点为中心,选择出Kn个地图单位作为所述第N个第一区域;
所述第一区域选择模块1640,还用于以所述第N个第一区域为中心,增加选择出Kn-1个地图单位作为所述第N-1个第一区域,所述第N-1个第一区域包含所述第N个第一区域;
所述第一区域选择模块1640,还用于当所述第i-1个第一区域不是第1个第一区域时,将所述第i-1个第一区域确定为所述第i个第一区域,再次以所述第 N个第一区域为中心,增加选择出Kn-1个地图单位作为所述第N-1个第一区域;
信息生成模块1660,用于当所述第i-1个第一区域是第1个第一区域时,生成所述地图上的N个第一区域的区域信息。
在一个实施例中,所述中心点选择模块1620,用于在所述地图中位于中央区域且属性为陆地的地图单位中,随机选择出一个地图单位作为所述第N个第一区域的中心点。
在一个实施例中,所述第一区域选择模块1640,用于以所述中心点为中心向四周扩散,按照已转变为第二区域的相邻地图单位的数量由高到低的顺序,随机选择出Kn个地图单位作为所述第N个第一区域。
在一个实施例中,所述第一区域选择模块1640,用于计算所述地图中未被选择的地图单位与所述中心点之间的距离;按照所述距离由近到远的顺序,随机将所述未被选择的地图单位中的Kn-1个地图单位确定为目标地图单位;将所述目标地图单位和所述第N个第一区域中的地图单位,确定为所述第N-1个第一区域的地图单位。
图17示出了本申请的一个示例性实施例提供的虚拟环境中的地图区域显示装置的框图。该装置包括:
显示模块1720,用于显示地图俯视画面,所述地图俯视画面显示的地图上存在离散的M个起始扩散点,所述地图包括若干个地图单位;
缩进模块1740,用于在所述地图俯视画面中显示第i个缩进期的第二区域扩散动画,所述第二区域扩散动画包括以所述M个起始扩散点为中心,将第i 个第一区域和第i+1个第一区域之间的地图单位分批次转变为第二区域的动画;
所述缩进模块1740,还用于当i+1不等于N时,在所述地图俯视画面中显示第i+1个缩进期的第二区域扩散动画,所述第二区域扩散动画包括将所述第 i+1个第一区域确定为所述第i个第一区域,再次将所述第i个第一区域和所述第i+1个第一区域之间的所述地图单位分批次转变为第二区域的动画;
其中,N、i和M均为正整数,i小于N。
图18示出了本申请一个示例性实施例提供的终端1800的结构框图。该终端1800可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio LayerIII,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group AudioLayer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1800还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1800包括有:处理器1801和存储器1802。
处理器1801可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1801可以采用DSP(Digital Signal Processing,数字信号处理)、 FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA (Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1801也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1801可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器 1801还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1802可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1802还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1802中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1801所执行以实现本申请中方法实施例提供的虚拟环境中第二区域显示方法。
在一些实施例中,终端1800还可选包括有:外围设备接口1803和至少一个外围设备。处理器1801、存储器1802和外围设备接口1803之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1803相连。具体地,外围设备包括:射频电路1804、触摸显示屏1805、摄像头1806、音频电路1807、定位组件1808和电源1809中的至少一种。
外围设备接口1803可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1801和存储器1802。在一些实施例中,处理器1801、存储器1802和外围设备接口1803被集成在同一芯片或电路板上;在一些其他实施例中,处理器1801、存储器1802和外围设备接口1803中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1804用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1804通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1804将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1804包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1804可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真) 网络。在一些实施例中,射频电路1804还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1805用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1805是触摸显示屏时,显示屏1805还具有采集在显示屏1805的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1801进行处理。此时,显示屏1805还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1805可以为一个,设置终端1800的前面板;在另一些实施例中,显示屏1805可以为至少两个,分别设置在终端1800的不同表面或呈折叠设计;在再一些实施例中,显示屏1805可以是柔性显示屏,设置在终端1800的弯曲表面上或折叠面上。甚至,显示屏1805还可以设置成非矩形的不规则图形,也即异形屏。显示屏1805可以采用LCD(Liquid Crystal Display,液晶显示屏)、 OLED(Organic Light-EmittingDiode,有机发光二极管)等材质制备。
摄像头组件1806用于采集图像或视频。可选地,摄像头组件1806包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1806还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1807可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1801进行处理,或者输入至射频电路 1804以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1800的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1801或射频电路1804的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1807还可以包括耳机插孔。
定位组件1808用于定位终端1800的当前地理位置,以实现导航或LBS (LocationBased Service,基于位置的服务)。定位组件1808可以是基于美国的 GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
电源1809用于为终端1800中的各个组件进行供电。电源1809可以是交流电、直流电、一次性电池或可充电电池。当电源1809包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1800还包括有一个或多个传感器1810。该一个或多个传感器1810包括但不限于:加速度传感器1811、陀螺仪传感器1812、压力传感器1813、指纹传感器1814、光学传感器1815以及接近传感器1818。
加速度传感器1811可以检测以终端1800建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1811可以用于检测重力加速度在三个坐标轴上的分量。处理器1801可以根据加速度传感器1811采集的重力加速度信号,控制触摸显示屏1805以横向视图或纵向视图进行用户界面的显示。加速度传感器1811还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1812可以检测终端1800的机体方向及转动角度,陀螺仪传感器1812可以与加速度传感器1811协同采集用户对终端1800的3D动作。处理器1801根据陀螺仪传感器1812采集的数据,可以实现如下功能:动作感应 (比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1813可以设置在终端1800的侧边框和/或触摸显示屏1805的下层。当压力传感器1813设置在终端1800的侧边框时,可以检测用户对终端1800 的握持信号,由处理器1801根据压力传感器1813采集的握持信号进行左右手识别或快捷操作。当压力传感器1813设置在触摸显示屏1805的下层时,由处理器1801根据用户对触摸显示屏1805的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1814用于采集用户的指纹,由处理器1801根据指纹传感器1814 采集到的指纹识别用户的身份,或者,由指纹传感器1814根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1801授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1814可以被设置终端1800的正面、背面或侧面。当终端1800上设置有物理按键或厂商Logo时,指纹传感器1814可以与物理按键或厂商Logo集成在一起。
光学传感器1815用于采集环境光强度。在一个实施例中,处理器1801可以根据光学传感器1815采集的环境光强度,控制触摸显示屏1805的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1805的显示亮度;当环境光强度较低时,调低触摸显示屏1805的显示亮度。在另一个实施例中,处理器1801 还可以根据光学传感器1815采集的环境光强度,动态调整摄像头组件1806的拍摄参数。
接近传感器1816,也称距离传感器,通常设置在终端1800的前面板。接近传感器1816用于采集用户与终端1800的正面之间的距离。在一个实施例中,当接近传感器1816检测到用户与终端1800的正面之间的距离逐渐变小时,由处理器1801控制触摸显示屏1805从亮屏状态切换为息屏状态;当接近传感器 1816检测到用户与终端1800的正面之间的距离逐渐变大时,由处理器1801控制触摸显示屏1805从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图18中示出的结构并不构成对终端1800的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
图19示出了本申请一个示例性实施例提供的计算机设备的结构示意图。示意性的,计算机设备1900包括中央处理单元(Central Processing Unit,CPU) 1901、包括随机存取存储器(Random Access Memory,RAM)1902和只读存储器(Read-Only Memory,ROM)1903的系统存储器1904,以及连接系统存储器 1904和中央处理单元1901的系统总线1905。所述计算机设备1900还包括帮助计算机内的各个器件之间传输信息的基本输入/输出系统(I/O系统)1906,和用于存储操作系统1913、客户端1914和其他程序模块1915的大容量存储设备 1907。
所述基本输入/输出系统1906包括有用于显示信息的显示器1908和用于用户输入信息的诸如鼠标、键盘之类的输入设备1909。其中所述显示器1908和输入设备1909都通过连接到系统总线1905的输入/输出控制器1190连接到中央处理单元1901。所述基本输入/输出系统1906还可以包括输入/输出控制器1190以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入/输出控制器1190还提供输出到显示屏、打印机或其他类型的输出设备。
所述大容量存储设备1907通过连接到系统总线1905的大容量存储控制器 (未示出)连接到中央处理单元1901。所述大容量存储设备1907及其相关联的计算机可读介质为计算机设备1900提供非易失性存储。也就是说,所述大容量存储设备1907可以包括诸如硬盘或者只读光盘(Compact Disc Read-Only Memory,简称:CD-ROM)驱动器之类的计算机可读介质(未示出)。
不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、可擦除可编程只读存储器(erasable programmable read-only memory,简称:EPROM)、电可擦除可编程只读存储器 (electrically erasable programmable read-onlymemory,简称:EEPROM)、闪存或其他固态存储其技术,CD-ROM、数字通用光盘(DigitalVersatile Disc,简称: DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器1904和大容量存储设备1907可以统称为存储器。
根据本申请的各种实施例,所述计算机设备1900还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即计算机设备1900可以通过连接在所述系统总线1905上的网络接口单元1911连接到网络1912,或者说,也可以使用网络接口单元1911来连接到其他类型的网络或远程计算机系统(未示出)。
本申请实施例还提供一种计算机设备,该计算机设备包括存储器和处理器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并实现上述各个方法实施例提供的虚拟环境中第二区域生成方法,或,上述各个方法实施例提供的虚拟环境中第一区域生成方法,或,上述各个方法实施例提供的虚拟环境中的地图区域显示方法。
本申请实施例还提供一种计算机可读存储介质,该可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述各个方法实施例提供的虚拟环境中第二区域生成方法,或,上述各个方法实施例提供的虚拟环境中第一区域生成方法,或,上述各个方法实施例提供的虚拟环境中的地图区域显示方法。
本申请还提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行上述各个方法实施例提供的虚拟环境中第二区域生成方法,或,上述各个方法实施例提供的虚拟环境中第一区域生成方法,或上述各个方法实施例提供的虚拟环境中的地图区域显示方法。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,该计算机可读存储介质可以是上述实施例中的存储器中所包含的计算机可读存储介质;也可以是单独存在,未装配入终端中的计算机可读存储介质。该计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行上述各个方法实施例提供的虚拟环境中第二区域生成方法,或,上述各个方法实施例提供的虚拟环境中第一区域生成方法。
可选地,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、固态硬盘(SSD, Solid State Drives)或光盘等。其中,随机存取记忆体可以包括电阻式随机存取记忆体(ReRAM,ResistanceRandom Access Memory)和动态随机存取存储器 (DRAM,Dynamic Random AccessMemory)。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (10)
1.一种虚拟环境中的地图区域生成方法,其特征在于,所述方法包括:
在地图中随机选择出第N个第一区域的中心点,所述地图包括若干个地图单位;
以所述中心点为中心,选择出Kn个地图单位作为所述第N个第一区域;
以所述第N个第一区域为中心,增加选择出Kn-1个地图单位作为第N-1个第一区域,所述第N-1个第一区域包含所述第N个第一区域;
当第i-1个第一区域不是第1个第一区域时,将所述第i-1个第一区域确定为第i个第一区域,再次以所述第N个第一区域为中心,增加选择出所述Kn-1个地图单位作为所述第N-1个第一区域;
当所述第i-1个第一区域是第1个第一区域时,生成所述地图上的N个第一区域的区域信息,其中N和i均为正整数,i的初始值为N。
2.根据权利要求1所述的方法,其特征在于,所述在地图中随机选择出第N个第一区域的中心点,包括:
在所述地图中位于中央区域且属性为陆地的地图单位中,随机选择出一个地图单位作为所述第N个第一区域的中心点。
3.根据权利要求1所述的方法,其特征在于,所述以所述中心点为中心,选择出Kn个地图单位作为所述第N个第一区域,包括:
以所述中心点为中心向四周扩散,按照已转变为第二区域的相邻地图单位的数量由高到低的顺序,随机选择出所述Kn个地图单位作为所述第N个第一区域。
4.根据权利要求1所述的方法,其特征在于,所述以所述第N个第一区域为中心,增加选择出Kn-1个地图单位作为第N-1个第一区域,所述第N-1个第一区域包含所述第N个第一区域,包括:
计算所述地图中未被选择的地图单位与所述中心点之间的距离;
按照所述距离由近到远的顺序,随机将所述未被选择的地图单位中的所述Kn-1个地图单位确定为目标地图单位;
将所述目标地图单位和所述第N个第一区域中的地图单位,确定为所述第N-1个第一区域的地图单位。
5.一种虚拟环境中的地图区域生成装置,其特征在于,所述装置包括:
中心点选择模块,用于在地图中随机选择出第N个第一区域的中心点,所述地图包括若干个地图单位;
第一区域选择模块,用于以所述中心点为中心,选择出Kn个地图单位作为所述第N个第一区域;
所述第一区域选择模块,还用于以所述第N个第一区域为中心,增加选择出Kn-1个地图单位作为第N-1个第一区域,所述第N-1个第一区域包含所述第N个第一区域;
所述第一区域选择模块,还用于当第i-1个第一区域不是第1个第一区域时,将所述第i-1个第一区域确定为第i个第一区域,再次以所述第N个第一区域为中心,增加选择出所述Kn-1个地图单位作为所述第N-1个第一区域;
信息生成模块,用于当所述第i-1个第一区域是第1个第一区域时,生成所述地图上的N个第一区域的区域信息,其中N和i均为正整数,i的初始值为N。
6.根据权利要求5所述的装置,其特征在于,所述中心点选择模块,用于在所述地图中位于中央区域且属性为陆地的地图单位中,随机选择出一个地图单位作为所述第N个第一区域的中心点。
7.根据权利要求5所述的装置,其特征在于,所述第一区域选择模块,用于以所述中心点为中心向四周扩散,按照已转变为第二区域的相邻地图单位的数量由高到低的顺序,随机选择出所述Kn个地图单位作为所述第N个第一区域。
8.根据权利要求5所述的装置,其特征在于,所述第一区域选择模块,用于计算所述地图中未被选择的地图单位与所述中心点之间的距离;按照所述距离由近到远的顺序,随机将所述未被选择的地图单位中的所述Kn-1个地图单位确定为目标地图单位;将所述目标地图单位和所述第N个第一区域中的地图单位,确定为所述第N-1个第一区域的地图单位。
9.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至4任一所述的虚拟环境中的地图区域生成方法。
10.一种计算机可读存储介质,其特征在于,所述可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至4任一所述的虚拟环境中的地图区域生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910760859.5A CN110478900B (zh) | 2019-08-16 | 2019-08-16 | 虚拟环境中的地图区域生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910760859.5A CN110478900B (zh) | 2019-08-16 | 2019-08-16 | 虚拟环境中的地图区域生成方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110478900A CN110478900A (zh) | 2019-11-22 |
CN110478900B true CN110478900B (zh) | 2020-09-01 |
Family
ID=68551897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910760859.5A Active CN110478900B (zh) | 2019-08-16 | 2019-08-16 | 虚拟环境中的地图区域生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110478900B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111185009B (zh) * | 2020-01-02 | 2021-03-26 | 腾讯科技(深圳)有限公司 | 地图生成方法和装置 |
CN112076468B (zh) * | 2020-09-17 | 2022-07-22 | 腾讯科技(深圳)有限公司 | 虚拟环境画面的显示方法、装置、设备及存储介质 |
CN111921195B (zh) * | 2020-09-24 | 2020-12-29 | 成都完美天智游科技有限公司 | 三维场景的生成方法和装置、存储介质和电子装置 |
CN118142173A (zh) * | 2022-12-07 | 2024-06-07 | 腾讯科技(深圳)有限公司 | 虚拟投掷物的控制方法、装置、设备、介质及程序产品 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106110655A (zh) * | 2016-06-22 | 2016-11-16 | 广州多益网络股份有限公司 | 一种随机地图生成方法、及其客户端、服务端和系统 |
CN108710525A (zh) * | 2018-05-18 | 2018-10-26 | 腾讯科技(深圳)有限公司 | 虚拟场景中的地图展示方法、装置、设备及存储介质 |
CN108888950A (zh) * | 2018-06-15 | 2018-11-27 | 腾讯科技(深圳)有限公司 | 终端中的对局界面显示方法、装置、设备及存储介质 |
-
2019
- 2019-08-16 CN CN201910760859.5A patent/CN110478900B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106110655A (zh) * | 2016-06-22 | 2016-11-16 | 广州多益网络股份有限公司 | 一种随机地图生成方法、及其客户端、服务端和系统 |
CN108710525A (zh) * | 2018-05-18 | 2018-10-26 | 腾讯科技(深圳)有限公司 | 虚拟场景中的地图展示方法、装置、设备及存储介质 |
CN108888950A (zh) * | 2018-06-15 | 2018-11-27 | 腾讯科技(深圳)有限公司 | 终端中的对局界面显示方法、装置、设备及存储介质 |
Non-Patent Citations (4)
Title |
---|
17173游戏网.史上最任性的吃鸡游戏!玩家死后成为上帝,可以控制游戏报仇雪恨.《https://baijiahao.baidu.com/s?id=1606319478441225813&wfr=spider&for=pc》.2018,第1-4页. * |
未知.《绝地求生》毒圈刷新规律分析.《https://ol.3dmgame.com/gl/14338.html》.2018,第1-2页. * |
著名神经哥.恐惧狼群:最硬核的大逃杀游戏,刚上市就鬼服,如今17块没人玩!.《https://haokan.baidu.com/v?vid=7496987148338683101&pd=bjh&fr=bjhauthor&type=video》.2019,视频第0分第0秒-第5分第48秒,以及视频截图第1-4页. * |
行走的盒子精.绝地求生:毒圈机制大改!网友请求出正方形、三角形、五角星毒圈!.《https://sports.eastday.com/a/180122172040594000000.html》.2018,第1-5页. * |
Also Published As
Publication number | Publication date |
---|---|
CN110478900A (zh) | 2019-11-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110433488B (zh) | 基于虚拟角色的对战控制方法、装置、设备及介质 | |
US12036474B2 (en) | Virtual object control method and apparatus, device, and readable storage medium | |
CN110478900B (zh) | 虚拟环境中的地图区域生成方法、装置、设备及存储介质 | |
CN111282274B (zh) | 虚拟对象的布局方法、装置、终端及存储介质 | |
CN111589128B (zh) | 基于虚拟场景的操作控件显示方法及装置 | |
CN111035918B (zh) | 基于虚拟环境的侦察界面显示方法、装置及可读存储介质 | |
CN110433493B (zh) | 虚拟对象的位置标记方法、装置、终端及存储介质 | |
CN110465083B (zh) | 虚拟环境中的地图区域控制方法、装置、设备及介质 | |
CN110478904B (zh) | 虚拟环境中的虚拟对象控制方法、装置、设备及存储介质 | |
CN111467802B (zh) | 虚拟环境的画面显示方法、装置、设备及介质 | |
CN111596838B (zh) | 业务处理方法、装置、计算机设备及计算机可读存储介质 | |
CN110448905B (zh) | 虚拟环境中的虚拟对象控制方法、装置、设备及存储介质 | |
CN110801628B (zh) | 控制虚拟对象恢复生命值的方法、装置、设备及介质 | |
WO2021147468A9 (zh) | 虚拟环境中的虚拟角色控制方法、装置、设备及介质 | |
CN111589136B (zh) | 虚拟对象控制方法、装置、计算机设备及存储介质 | |
CN111589140A (zh) | 虚拟对象的控制方法、装置、终端及存储介质 | |
CN111338534A (zh) | 虚拟对象的对局方法、装置、设备及介质 | |
CN113509714B (zh) | 虚拟道具合成预览方法、装置、终端及存储介质 | |
CN112891931A (zh) | 虚拟角色的选择方法、装置、设备及存储介质 | |
CN110465090B (zh) | 虚拟对象的控制方法、装置、终端及存储介质 | |
CN113680060B (zh) | 虚拟画面显示方法、装置、设备、介质及计算机程序产品 | |
CN113559495B (zh) | 虚拟对象释放技能的方法、装置、设备及存储介质 | |
CN111672102A (zh) | 虚拟场景中的虚拟对象控制方法、装置、设备及存储介质 | |
US20230285855A1 (en) | Virtual scene display method and apparatus, terminal, and storage medium | |
CN113289331A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |