虚拟场景的路径生成方法、装置、计算机设备及存储介质与流程

文档序号:33382405发布日期:2023-03-08 06:28阅读:40来源:国知局
虚拟场景的路径生成方法、装置、计算机设备及存储介质与流程

1.本技术涉及计算机技术领域,具体涉及一种虚拟场景的路径生成方法、装置、计算机设备及计算机可读存储介质。


背景技术:

2.为了使游戏表现的更加真实,游戏中的场景需要与现实世界更加接近,比如,游戏中常见的道路场景等。在游戏场景的地形制作过程中,需要针对场景中的各种道路进行规划。其中,在对游戏场景中的道路进行规划时,需要结合游戏场景地形,不同的地形对应有不同的道路制作。
3.相关技术中,在对游戏场景中山丘地带的道路规划过程中,制作人员通常会在平面上绘制一条路线的线段,之后将这条线投射在山丘上,从而完成路线的规划。然而,基于人工绘制线段生成道路的方式,需要人工确定每一条虚拟道路的走向,制作效率较低。


技术实现要素:

4.本技术实施例提供一种虚拟场景的路径生成方法、装置、计算机设备及计算机可读存储介质,可以提高虚拟场景中的路径生成效率。
5.本技术实施例提供了一种虚拟场景的路径生成方法,包括:
6.获取虚拟场景高度图,以及所述虚拟场景高度图中需要生成的目标路径的起始点与结束点;
7.将所述起始点作为所述目标路径的当前路径节点,确定所述虚拟场景高度图中所述当前路径节点的至少一个相邻点;
8.根据所述当前路径节点与每一相邻点在所述虚拟场景高度图中的高度信息,确定所述当前路径节点与每一相邻点之间的坡度值;
9.基于所述坡度值,以及每一相邻点与所述当前路径节点以及所述结束点之间的距离值,确定由所述当前路径节点经过每一相邻点到达所述结束点产生的移动消耗值;
10.基于所述移动消耗值从所述至少一个相邻点中确定出所述目标路径中所述当前路径节点的在后路径节点;
11.将所述在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到所述在后路径节点与所述结束点重合,得到所述目标路径。
12.相应的,本技术实施例还提供了一种虚拟场景的路径生成装置,包括:
13.第一获取单元,用于获取虚拟场景高度图,以及所述虚拟场景高度图中需要生成的目标路径的起始点与结束点;
14.第一确定单元,用于将所述起始点作为所述目标路径的当前路径节点,确定所述虚拟场景高度图中所述当前路径节点的至少一个相邻点;
15.第二确定单元,用于根据所述当前路径节点与每一相邻点在所述虚拟场景高度图中的高度信息,确定所述当前路径节点与每一相邻点之间的坡度值;
16.第三确定单元,用于基于所述坡度值,以及每一相邻点与所述当前路径节点以及所述结束点之间的距离值,确定由所述当前路径节点经过每一相邻点到达所述结束点产生的移动消耗值;
17.第四确定单元,用于基于所述移动消耗值从所述至少一个相邻点中确定出所述目标路径中所述当前路径节点的在后路径节点;
18.第五确定单元,用于将所述在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到所述在后路径节点与所述结束点重合,得到所述目标路径。
19.相应的,本技术实施例还提供了一种计算机设备,包括存储器,处理器及存储在储存器上并可在处理器上运行的计算机程序,其中,处理器执行本技术实施例任一提供的虚拟场景的路径生成方法。
20.相应的,本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有多条指令,指令适于处理器进行加载,以执行如上的虚拟场景的路径生成方法。
21.本技术实施例通过在虚拟场景高度图中选择起始点与结束点,将起始点作为路径节点,根据虚拟场景高度图中路径节点与每一相邻点的高度信息,确定路径节点与每一相邻点之间的坡度值,根据坡度值,以及每一相邻点与路径节点以及结束点之间的距离值,确定由路径节点经过每一相邻点到达结束点产生的移动消耗值,基于移动消耗值从至少一个相邻点中确定路径节点的后一路径节点,将后一路径节点作为新的路径节点,重新确定出新的路径节点的后一路径节点,直到后一路径节点与结束点重合,得到目标路径。以此,可以提高虚拟场景中的路径生成效率。
附图说明
22.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
23.图1为本技术实施例提供的一种虚拟场景的路径生成系统的场景示意图。
24.图2为本技术实施例提供的一种虚拟场景的路径生成方法的流程示意图。
25.图3为本技术实施例提供的一种虚拟场景的高度图示意图。
26.图4为本技术实施例提供的一种用于生成虚拟场景的路径图形用户界面示意图。
27.图5为本技术实施例提供的另一种用于生成虚拟场景的路径图形用户界面示意图。
28.图6为本技术实施例提供的一种虚拟场景的路径生成的应用场景示意图。
29.图7为本技术实施例提供的一种虚拟场景的路径生成的应用场景示意图。
30.图8为本技术实施例提供的另一种虚拟场景的路径生成的应用场景示意图。
31.图9为本技术实施例提供的另一种虚拟场景的路径生成的应用场景示意图。
32.图10为本技术实施例提供的一种虚拟场景的路径生成装置的结构框图。
33.图11为本技术实施例提供的计算机设备的结构示意图。
具体实施方式
34.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
35.本技术实施例提供一种虚拟场景的路径生成方法、装置、计算机可读存储介质及计算机设备。具体地,本技术实施例的虚拟场景的路径生成方法可以由计算机设备执行,其中,该计算机设备可以为终端或者服务器等设备。该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、个人计算机(pc,personal computer)、个人数字助理(personal digital assistant,pda)等终端设备。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。
36.例如,当该虚拟场景的路径生成方法运行于终端时,终端设备存储有游戏应用程序并用于呈现游戏画面中的虚拟场景。终端设备用于通过图形用户界面与用户进行交互,例如通过终端设备下载安装游戏应用程序并运行。该终端设备将图形用户界面提供给用户的方式可以包括多种,例如,可以渲染显示在终端设备的显示屏上,或者,通过全息投影呈现图形用户界面。例如,终端设备可以包括触控显示屏和处理器,该触控显示屏用于呈现图形用户界面以及接收用户作用于图形用户界面产生的操作指令,该图形用户界面包括游戏画面,该处理器用于运行该游戏、生成图形用户界面、响应操作指令以及控制图形用户界面在触控显示屏上的显示。
37.例如,当该虚拟场景的路径生成方法运行于服务器时,可以为云游戏。云游戏是指以云计算为基础的游戏方式。在云游戏的运行模式下,游戏应用程序的运行主体和游戏画面呈现主体是分离的,道具的使用方法的储存与运行是在云游戏服务器上完成的。而游戏画面呈现是在云游戏的客户端完成的,云游戏客户端主要用于游戏数据的接收、发送以及游戏画面的呈现,例如,云游戏客户端可以是靠近用户侧的具有数据传输功能的显示设备,如,移动终端、电视机、计算机、掌上电脑、个人数字助理等,但是进行游戏数据处理的终端设备为云端的云游戏服务器。在进行游戏时,用户操作云游戏客户端向云游戏服务器发送操作指令,云游戏服务器根据操作指令运行游戏,将游戏画面等数据进行编码压缩,通过网络返回云游戏客户端,最后,通过云游戏客户端进行解码并输出游戏画面。
38.请参阅图1,图1为本技术实施例提供的一种虚拟场景的路径生成系统的场景示意图。该系统可以包括至少一个终端,至少一个服务器,至少一个数据库,以及网络。用户持有的终端可以通过网络连接到不同游戏的服务器。终端是具有计算硬件的任何设备,该计算硬件能够支持和执行与游戏对应的软件产品。另外,终端具有用于感测和获得用户通过在一个或者多个触控显示屏的多个点执行的触摸或者滑动操作的输入的一个或者多个多触敏屏幕。另外,当系统包括多个终端、多个服务器、多个网络时,不同的终端可以通过不同的网络、通过不同的服务器相互连接。网络可以是无线网络或者有线网络,比如无线网络为无线局域网(wlan)、局域网(lan)、蜂窝网络、2g网络、3g网络、4g网络、5g网络等。另外,不同的终端之间也可以使用自身的蓝牙网络或者热点网络连接到其他终端或者连接到服务器等。
例如,多个用户可以通过不同的终端在线从而通过适当网络连接并且相互同步,以支持多玩家游戏。另外,该系统可以包括多个数据库,多个数据库耦合到不同的服务器,并且可以将与游戏环境有关的信息在不同用户在线进行多玩家游戏时连续地存储于数据库中。
39.本技术实施例提供了一种虚拟场景的路径生成方法,该方法可以由终端或服务器执行。本技术实施例以道具的使用方法由终端执行为例来进行说明。其中,该终端包括触控显示屏和处理器,该触控显示屏用于呈现图形用户界面以及接收用户作用于图形用户界面产生的操作指令。用户通过触控显示屏对图形用户界面进行操作时,该图形用户界面可以通过响应于接收到的操作指令控制终端本地的内容,也可以通过响应于接收到的操作指令控制对端服务器的内容。例如,用户作用于图形用户界面产生的操作指令包括用于启动游戏应用程序的指令,处理器被配置为在接收到用户提供的启动游戏应用程序的指令之后启动游戏应用程序。此外,处理器被配置为在触控显示屏上渲染和绘制与游戏相关联的图形用户界面。触控显示屏是能够感测屏幕上的多个点同时执行的触摸或者滑动操作的多触敏屏幕。用户在使用手指在图形用户界面上执行触控操作,图形用户界面在检测到触控操作时,控制游戏的图形用户界面中的不同虚拟对象执行与触控操作对应的动作。例如,该游戏可以为休闲游戏、动作游戏、角色扮演游戏、策略游戏、体育游戏、益智游戏等游戏中的任一种。其中,游戏可以包括在图形用户界面上绘制的游戏的虚拟场景。此外,游戏的虚拟场景中可以包括由用户(或玩家)控制的一个或多个虚拟对象,诸如虚拟角色。另外,游戏的虚拟场景中还可以包括一个或多个障碍物,诸如栏杆、沟壑、墙壁等,以限制虚拟对象的移动,例如将一个或多个对象的移动限制到虚拟场景内的特定区域。可选地,游戏的虚拟场景还包括一个或多个元素,诸如技能、分值、角色健康状态、能量等,以向玩家提供帮助、提供虚拟服务、增加与玩家表现相关的分值等。此外,图形用户界面还可以呈现一个或多个指示器,以向玩家提供指示信息。例如,游戏可以包括玩家控制的虚拟对象和一个或多个其他虚拟对象(诸如敌方角色)。在一个实施例中,一个或多个其他虚拟对象由游戏的其他玩家控制。例如,一个或多个其他虚拟对象可以由计算机控制,诸如使用人工智能(ai)算法的机器人,实现人机对战模式。例如,虚拟对象拥有游戏玩家用来实现目标的各种技能或能力。例如虚拟对象拥有可用于从游戏中消除其他对象的一种或多种武器、道具、工具等。这样的技能或能力可由游戏的玩家使用与终端的触控显示屏的多个预设触控操作之一来激活。处理器可以被配置为响应于用户的触控操作产生的操作指令来呈现对应的游戏画面。
40.需要说明的是,图1所示的虚拟场景的路径生成系统的场景示意图仅仅是一个示例,本技术实施例描述的图像处理系统以及场景是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域普通技术人员可知,随着虚拟场景的路径生成系统的演变和新业务场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
41.基于上述问题,本技术实施例提供第一种虚拟场景的路径生成方法、装置、计算机设备及计算机可读存储介质,可以提高虚拟场景中的路径生成效率。以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
42.本技术实施例提供一种虚拟场景的路径生成方法,该方法可以由终端或服务器执行,本技术实施例以虚拟场景的路径生成方法由服务器执行为例来进行说明。
43.请参阅图2,图2为本技术实施例提供的一种虚拟场景的路径生成方法的流程示意
图。该虚拟场景的路径生成方法的具体流程可以如下:
44.101、获取虚拟场景高度图,以及虚拟场景高度图中需要生成的目标路径的起始点与结束点。
45.在本技术实施例中,虚拟场景可以为游戏场景,虚拟场景可以由场景地形,以及设置于场景地形上的场景元素构成。其中,场景地形可以包多种,比如,场景地形可以包括平原、高原、丘陵、盆地、山地等多种类型。
46.其中,虚拟场景高度图也即虚拟场景的高度图,高度图作为一种常见的保存高度信息的方式,可以用于各种自然景观的场景的地形制作流程。
47.具体的,虚拟场景的地形可以为一系列高度不同的网格,而高度图为一个2维数组,数组中每个元素的索引值可以用来定位不同的网格(x,y),而每个元素存储的值就是网格的高度(z)。在虚拟场景的地形生成过程中可以使用高度图作为输入数据。
48.在本技术实施例中,高度图的表现形式可以包括多种,比如灰度图等,也即由高度图中每个点的灰度值表示该点的高度信息。其中,灰度值的取值范围可以为0~255,灰度值为0表示为黑色,灰度值为255表示为白色,其中白色代表最高点,黑色代表最低点。
49.例如,请参阅图3,图3为本技术实施例提供的一种虚拟场景的高度图示意图。图3示出了构成虚拟场景地形的高度图,在该高度图中,通过灰度信息表示各点的高度值。具体的,在虚拟场景的地形中海拔越高的点,相应的该点在图中的亮度就越大,反之,海拔越低,则亮度就越暗。
50.其中,目标路径指的是根据虚拟场景设计者在虚拟场景中指定的起始点与结束点,需要在虚拟场景中生成的道路,可以用于虚拟场景中的虚拟角色或者虚拟交通工具通行。
51.在一些实施例中,为了方便虚拟场景设计者针对虚拟场景的路径生成操作,通过终端设备提供了图形用户界面,使得虚拟场景设计者可以通过图形用户界面进行路径生成操作,则步骤“获取虚拟场景高度图”,可以包括以下操作:
52.响应于针对高度图显示区域的虚拟场景高度图的上传操作,获取虚拟场景高度图,并在高度图显示区域显示虚拟场景高度图。
53.在本技术实施例中,为了方便虚拟场景设计者快速生成路径,本方案设计了一个路径生成插件,图形用户界面可以为该路径生成插件的操作界面。具体的,图形用户界面至少可以包括高度图显示区域和路径生成控件。其中,高度图显示区域可以显示需要生成路径的虚拟场景的高度图,路径生成控件可以用于触发自动生成路径的指令,具体的,可以由后端执行生成路径的指令。
54.例如,请参阅图4,图4为本技术实施例提供的一种用于生成虚拟场景的路径图形用户界面示意图。在图4所示的图形用户界面中,至少包括有高度图显示区域和路径生成控件,高度图显示区域可以用于加载显示虚拟场景的高度图,路径生成控件可以触发生成虚拟场景的路径。
55.其中,针对高度图显示区域的虚拟场景高度图的上传操作可以包括多种,比如,用户点击高度图显示区域,触发在图形用户界面显示本地的高度图列表,用户可以从高度图列表中选择任一高度图,则可以确定上传操作确定的虚拟场景高度图,然后,可以将虚拟场景高度图显示在高度图显示区域。
56.或者,用户可以点击高度图显示区域,触发在图形用户界面显示网络中的高度图,可以从网络中获取高度图,并将高度图显示在高度图显示区域。
57.例如,请参阅图5,图5为本技术实施例提供的另一种用于生成虚拟场景的路径图形用户界面示意图。当完成对高度图显示区域的虚拟场景高度图的上传操作后,将获取到的虚拟场景高度图可以在高度图显示区域进行显示。
58.在一些实施例中,为了方便虚拟场景设计者制作虚拟场景中的路径,图形用户界面还可以包括:路径点选择控件,路径点选择控件可以用于指定起始点与结束点。
59.例如,请继续参阅图5,在图5所示的图形用户界面中,路径点选择控件包括:起点输入框和终点输入框,起点输入框可以用于输入需要生成的目标路径的起始点的坐标,如(x1,y1),终点输入框可以用于输入结束点的坐标,如(x2,y2)。
60.102、将起始点作为目标路径的当前路径节点,确定虚拟场景高度图中当前路径节点的至少一个相邻点。
61.其中,当前路径节点指的是生成目标路径的路径节点,在本技术实施例中,由起始点开始,通过本方案设计的路径生成方法依次确定多个路径节点,直至路径节点与结束点重合,将确定的多个路径节点连接,生成目标路径。
62.在一些实施例中,为了减少生成目标路径的计算量,在步骤“确定虚拟场景高度图中当前路径节点的至少一个相邻点”之前,该方法还可以包括以下步骤:
63.基于预设的采样参数对虚拟场景高度图中的像素点进行重采样处理,得到处理后虚拟场景高度图。
64.其中,采样参数指的是从虚拟场景高度图中对原始像素点进行采样,生成新的像素点采样比例。比如,采样参数可以为1:16、1:32等,重采样处理也即基于采样参数重新调整虚拟场景高度图的大小。
65.例如,采样参数为1:16时,重采样处理可以为将虚拟场景高度图中的原始16个像素点融合成1个新的像素点,根据融合得到的所有新的像素点得到处理后虚拟场景高度图;或者采样参数为1:32时,重采样处理可以为将虚拟场景高度图中的原始32个像素融合成一个新的像素点,根据融合得到的所有新的像素点得到处理后虚拟场景高度图。在本技术实施例中,根据不同的采样参数可以生成不同大小的处理后虚拟场景高度图,以满足虚拟场景设计者对虚拟场景高度图不同的采样需求。
66.在一些实施例中,步骤“确定虚拟场景高度图中当前路径节点的至少一个相邻点”,可以包括以下操作:
67.从处理后虚拟场景高度图中确定当前路径节点的至少一个相邻点。
68.其中,当前路径节点可以对应虚拟场景高度图中的一个像素点,相邻点指的是虚拟场景高度图中与当前路径节点对应的像素点位置相邻的像素点。
69.在一些实施例中,根据采样参数对像素点采取均值融合的方式容易造成像素点的数据精度下降。为了保证重采样处理时像素点的数据精度,步骤“基于预设的采样参数对虚拟场景高度图中的像素点进行重采样处理,得到处理后虚拟场景高度图”,可以包括以下操作:
70.根据预设的采样参数确定虚拟场景高度图中进行融合的多个像素点集合;
71.基于预设的像素值权重,对每一像素点集合中像素值处于第一像素值区间或第二
像素值区间的像素点的像素值进行加权处理,得到像素点集合中加权处理后的像素点;
72.将各像素点集合中加权处理后的像素点进行融合,得到各像素点集合对应的新的像素点;
73.基于所有新的像素点,得到处理后虚拟场景高度图。
74.其中,每一像素点集合中包括了需要进行融合的多个像素点。
75.例如,虚拟场景高度图中的原始像素点的数量可以为1000个,采样参数可以为1:16,则可以将原始像素点划分为63个像素点集合,其中,第63个像素点集合中的像素点的数量可以为8个,其他像素点集合中的像素点的数量可以为16个。
76.其中,像素值权重用于对像素点的像素值也即表示高度的灰度值进行加权处理。
77.在本技术实施例中,为了保证采样处理过程中避免降低像素点的数据精度,在像素点融合过程中设定最大值区间与最小值区间的加权,选择10%的最大区间加权0.8,选择10%的最小区间加权0.8,更多的保留图像中的最亮与最暗区域,舍弃了部分中间区域的值。
78.其中,第一像素值区间可以为最大值区间,也即较大像素值区间,比如200~255的像素值区间;第二像素值可以为最小值区间,也即较小像素值区间,比如0~50的像素值区间等。第一像素值区间的像素值权重与第二像素值区间的像素值权重可以相同,比如像素值权重可以为0.8。
79.例如,在将各个像素点集合中像素点进行融合之前,将每一像素结合中第一像素值区间的亮部像素与第一像素值区间的暗部像素的像素值乘以权重0.8,以使得将像素点集合中像素点进行融合之后的新的像素点的数值会更偏向这两部分的数值。
80.具体的,在对像素点集合中的亮部像素点与暗部像素点的像素值进行加权处理后,将每一像素点集合中的多个像素再进行融合,从而可以得到各像素点集合对应的新的像素点,也即各像素点集合中的像素点融合生成的新的像素点,最后,将所有新的像素点组合,可以得到处理后虚拟场景高度图。
81.例如,请参阅图6,图6为本技术实施例提供的一种虚拟场景的路径生成的应用场景示意图。图6左侧为原始虚拟场景高度图,像素为16x12。选择采样参数可以为1:12,然后对原始虚拟场景高度图中的原始像素点进行重采样处理,将每12个原始像素点基于上述方式进行融合,生成一个新的融合后像素点,也即图6右侧生成的处理后虚拟场景高度图。
82.在一些实施例中,在一个采样范围内,也即一个像素点集合中,可能会同时存在处于第一像素值区间以及第二像素值区间的像素,则会导致该像素集合的像素点在融合之后,存在数值溢出的情况,也即给像素值增加了额外权重之后,有可能最终计算的像素值超出最大像素值。则步骤“基于预设的像素值权重,对每一像素点集合中像素值处于第一像素值区间或第二像素值区间的像素点的像素值进行加权处理”,可以包括以下步骤:
83.基于预设的第一像素值权重对像素点集合中像素值处于第一像素值区间的像素点的像素值进行加权处理、基于预设的第二像素值权重对像素点集合中像素值处于第二像素值区间的像素点的像素值进行加权处理;
84.基于第一像素值权重与第二像素值权重确定第三像素值权重,并基于第三像素值权重对像素点集合中像素值未处于第一像素值区间和第二像素值区间的像素点的像素值进行加权处理。
85.具体的,本方案在对同一像素点集合中的像素点基于像素值权重进行融合的计算公式可以如下:
[0086][0087]
其中,vmax指的是第一像素值区间(最大像素值区间)的像素值,vmin指的是第二像素值区间(最小像素值区间)的像素值,vnor指的是其他像素值区间(未处于第一像素值区间和第二像素值区间的像素)的像素值。
[0088]
其中,wmax为设定的最大像素值区间的权重值,wmin为设定的最小像素值区间的权重值,wsum为当前三个区间(若存在)的总权重值。vp(value of pixel)指的是融合得到的新像素点的像素值。
[0089]
在一些实施例中,图形用户界面还可以包括采样参数选择控件。该采样参数选择控件可以用于选择对虚拟场景高度图进行重采样的采样参数。
[0090]
例如,请继续参阅图5,图形用户界面可以包括采样参数选择控件,采样参数选择控件可以包括:第一选择子控件,用于选择采样参数1/2,第二选择子控件,用于选择采样参数1/4,第三选择子控件,用于选择采样参数1/16,第四选择子控件,用于选择采样参数1/32,等。本方案不限定上述采样参数,还可以用户设定为其他采样参数。
[0091]
103、根据当前路径节点与每一相邻点在虚拟场景高度图中的高度信息,确定当前路径节点与每一相邻点之间的坡度值。
[0092]
在本技术实施例中,在基于虚拟场景高度图中确定的起始点与结束点计算路径前,可以将虚拟场景高度图转化为数组矩阵,表示高度数据。
[0093]
例如,请参阅图7,图7为本技术实施例提供的另一种虚拟场景的路径生成的应用场景示意图。图7示出了虚拟场景高度图的部分高度数据的数组矩阵,其中,每一小格可以表示一个像素点,每一小格中的数据可以表示该像素点的高度数据也即高度值。
[0094]
在一些实施例中,为了根据虚拟场景的地形信息生成准确的路径,步骤“根据当前路径节点与每一相邻点在虚拟场景高度图中的高度信息,确定当前路径节点与每一相邻点之间的坡度值”,可以包括以下操作:
[0095]
从虚拟场景高度图中获取当前路径节点的第一高度值,以及每一相邻点的第二高度值;
[0096]
计算当前路径节点与每一相邻点之间的距离值;
[0097]
基于第一高度值、第二高度值以及距离值,计算当前路径节点与相邻点之间的坡度值。
[0098]
例如,请参阅图8,图8为本技术实施例提供的另一种虚拟场景的路径生成的应用场景示意图。在图8中,当前路径节点可以为:高度值为74的点,与该像素点相邻的相邻点可以包括:第一相邻点,第二相邻点,第三相邻点,第四相邻点,第五相邻点,第六相邻点,第七
相邻点以及第八相邻点。
[0099]
其中,当前路径节点的第一高度值为:74,第一相邻点的第二高度值为:91,第二相邻点的第二高度值为:84,第三相邻点的第二高度值为:79,第四相邻点的第二高度值为55,第五相邻点的第二高度值为:56,第六相邻点的第二高度值为:40,第七相邻点的第二高度值为:43,第八相邻点的第二高度值为:80。
[0100]
其中,距离值指的是当前路径节点移动到各相邻点的移动距离。在本技术实施例中,假设各像素点为边长为1的正方形,则当前路径节点74移动至相邻点55的移动距离可以为1,也即当前路径节点74与相邻点55之间的距离值可以为1;当前路径节点74移动至相邻点79的移动距离可以为,也即当前路径节点74与相邻点55之间的距离值可以为√2。基于此,可以计算出当前路径节点与每一相邻点之间的距离值。
[0101]
在一些实施例中,步骤“基于第一高度值、第二高度值以及距离值,计算当前路径节点与相邻点之间的坡度值”,可以包括以下操作:
[0102]
基于第一高度值与第二高度值,计算当前路径节点与相邻点的高度差值;
[0103]
计算高度差值与距离值的比值,得到坡度值。
[0104]
在本技术实施例中,设计坡度值的计算公式可以为:
[0105]
s=(h2-h1)/l;
[0106]
其中,h2表示相邻点的第二高度值,h1表示当前路径节点的第一高度值,l表示相邻点与当前路径节点之间的距离值,s表示坡度值。
[0107]
例如,当前路径节点74与相邻点91之间的坡度值s=(91-74)/√2=17/√2,约可以为12,根据上述坡度值的计算公式可以计算出当前路径节点与每一相邻点之间的坡度值。
[0108]
104、基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值。
[0109]
在本技术实施例中,在生成虚拟场景中的路径时,考虑到虚拟场景的地形的影响因素,为了使得生成的路径更符合场景的地形,将地形因素结合至寻路算法中进行路径计算,则步骤“基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值”,可以包括以下操作:
[0110]
计算每一相邻点与当前路径节点之间的第一距离值,以及计算每一相邻点与结束点之间的第二距离值;
[0111]
基于第一距离值与第二距离值确定每一相邻点对应的初始移动消耗值;
[0112]
基于坡度值与初始移动消耗值,计算由当前路径节点经过每一相邻点到达结束点产生的移动消耗值。
[0113]
其中,移动消耗,也即cost,移动消耗可以作为是否移动到该点的依据。cost最小点可以作为最优路径的选择点。
[0114]
在本技术实施例中,设计移动消耗值的计算公式可以为:
[0115]
cost=l+s+f;
[0116]
其中,l表示相邻点与当前路径节点之间的距离值,f表示结束点与当前路径节点之间的距离值,s也即坡度值。
[0117]
例如,当前路径节点74移动至相邻点91产生的移动消耗cost=17+12+√13,约可
以为33。根据上述移动消耗值的计算公式可以计算出当前路径节点移动至每一相邻点产生的移动消耗值。
[0118]
在一些实施例中,考虑到不同坡度值对生成路径的通行影响程度,为了生成更加合理的目标路径,在步骤“基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值”之前,还可以包括以下步骤:
[0119]
从预设的多个坡度值范围中确定坡度值对应的目标坡度值范围;
[0120]
获取目标坡度值范围对应的坡度权重;
[0121]
基于坡度权重对坡度值进行加权处理,得到加权处理后坡度值。
[0122]
在本技术实施例中,为了更合理的使用坡度值,根据《城市道路设计规范》纵断面设计以及《城市道路坡度和车速对机动车排放的影响》,选取了4个典型坡度类型对应的坡度值,如下表所示:
[0123][0124][0125]
具体的,根据上表的坡度类型与坡度值设定多个坡度值范围可以为:第一坡度值范围(<2),第二坡度值范围(≥2,或≤5),第三坡度值范围(>5,或≤10),第四坡度值范围(>10,或≤20),第五坡度值范围(>20)。
[0126]
进一步的,为每一预设的坡度值范围分别对应设置不同的坡度权重。例如,<2的坡度权重可以为:0,即小于2的坡度认为与平路情况相同;2~5的坡度权重可以为:1.5;5~10的坡度权重可以为:3;10~20的坡度权重可以为:6;当坡度值》20,视为障碍,可以直接绕行。在一些实施例中,当坡度值为负值的时候也会相应减少移动消耗cost。
[0127]
例如,上述计算出的当前路径节点74与相邻点91之间的坡度值s可以为12,确定坡度值为12时对应第四坡度值范围,获取第四坡度值范围对应的破独权中可以为6,则可以基于坡度权重值6对坡度值s进行加权处理,得到加权处理后坡度值可以为:12x6=72。
[0128]
在一些实施例中,则步骤“基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值”,可以包括以下操作:
[0129]
基于加权处理后坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值。
[0130]
例如,通过对坡度值s进行加权处理,得到当前路径节点74移动至相邻点91产生的最终的移动消耗为:cost=17+72+√13,约可以为:93。
[0131]
通过上述坡度值计算公式以及移动消耗值计算公式可以计算出当前路径节点移动至每一相邻点所产生的移动消耗值。
[0132]
在本技术实施例中,引入坡度值权重后,在生成目标路径时,当周围都是高坡度的情况,会沿着山谷中的路线前进;当坡有缓坡的情况,可以选择跨越缓坡。
[0133]
在一些实施例中,为了方便虚拟场景设计者设置不同的坡度权重,图形用户界面还可以包括有坡度范围权重设置控件。
[0134]
例如,请继续参阅图5,在图5所示的图形用户界面中,还可以包括坡度范围权重设置控件,其中,坡度范围权重设置控件包括:第一权重设置子控件,第二权重设置子控件,第三权重设置子控件以及第四权重设置子控件。其中,第一权重设置子控件可以用于设置第一坡度值范围对应的坡度权重,可以为:0;第二权重设置子控件可以用于设置第二坡度值范围对应的坡度权重,可以为:1.5;第三权重设置子控件可以用于设置第三坡度值范围对应的坡度权重,可以为:3;第四权重设置子控件可以用于设置第四坡度值范围对应的坡度权重,可以为:6。
[0135]
105、基于移动消耗值从至少一个相邻点中确定出目标路径中当前路径节点的在后路径节点。
[0136]
在本技术实施例中,移动消耗值越小,表示将相邻点选取为目标路径的路径点的可能性越大。
[0137]
在一些实施例中,则步骤“基于移动消耗值从至少一个相邻点中确定出目标路径中当前路径节点的在后路径节点”,可以包括以下操作:
[0138]
从至少一个相邻点中确定移动消耗最小的相邻点,作为目标路径中当前路径节点的在后路径节点。
[0139]
例如,与当前路径点相邻的相邻点可以包括:第一相邻点,第二相邻点,第三相邻点,第四相邻点,第五相邻点,第六相邻点,第七相邻点以及第八相邻点。其中,当前路径点移动至第一相邻点产生的移动消耗值可以为:70,当前路径点移动至第二相邻点产生的移动消耗值可以为:67,当前路径点移动至第三相邻点产生的移动消耗值可以为:20,当前路径点移动至第四相邻点产生的移动消耗值可以为:34,当前路径点移动至第五相邻点产生的移动消耗值可以为:56,当前路径点移动至第六相邻点产生的移动消耗值可以为:66,当前路径点移动至第七相邻点产生的移动消耗值可以为:48,当前路径点移动至第八相邻点产生的移动消耗值可以为:28。从多个相邻点中选取移动消耗值最小的相邻点可以为:第三相邻点,进一步的,可以将第三相邻点作为当前路径节点的在后路径节点,也即选取作为生成目标路径中的一个点。
[0140]
106、将在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到在后路径节点与结束点重合,得到目标路径。
[0141]
在一些实施例中,步骤“将在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到在后路径节点与结束点重合,得到目标路径”,可以包括以下操作:
[0142]
将在后路径节点作为新的当前路径节点,返回执行确定虚拟场景高度图中当前路径节点的至少一个相邻点的步骤,直到在后路径节点与结束点重合,得到目标路径。
[0143]
具体的,在根据当前路径节点确定出当前路径节点的在后路径节点后,可以将确定出的在后路径节点重新作为新的当前路径节点,然后继续执行步骤:确定虚拟场景高度图中当前路径节点的至少一个相邻点;根据当前路径节点与每一相邻点在虚拟场景高度图中的高度信息,确定当前路径节点与每一相邻点之间的坡度值;基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值;基于移动消耗值从至少一个相邻点中确定出目标路径中当前路径节点的在后路径节点。依次循环执行,直至在后路径节点与结束点重合,表示寻路完成,生
成由起始点至结束点的目标路径。
[0144]
在一些实施例中,为了方便虚拟场景设计人员查看生成的目标路径。在步骤“将在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到在后路径节点与结束点重合,得到目标路径”之后,还可以包括以下步骤:
[0145]
在高度图显示区域显示虚拟场景高度图以及目标路径。
[0146]
例如,请参阅图9,图9为本技术实施例提供的另一种虚拟场景的路径生成的应用场景示意图。在图9中,虚拟场景制作者在高度显示区域显示的虚拟场景高度图中选择起始点a,以及结束点b。然后点击路径生成控件,触发后台根据本方案设计的路径计算方法计算路径点,根据路径点确定目标路径,然后在高度图显示区域显示的虚拟场景高度图中显示由起始点a至结束点b之间的目标路径。
[0147]
在一些实施例中,为了方便虚拟场景设计者的路径制作,图形用户界面还可以包括重设控件,该重设控件可以用于重新设置各种参数,比如:采样参数,坡度范围权重,起点和终点等。
[0148]
在一些实施例中,为了将生成的目标路径应用到虚拟场景的制作中,图形用户界面还可以包括输出路径数据控件,该输出路径数据控件可以用于输出生成的目标路径的路径节点数据。
[0149]
例如,请继续参阅图9,对于图9的图形用户界面显示的目标路径ab,当点击输出路径数据控件,可以生成目标路径ab的路径节点数据,如下:
[0150]
{'index':0,'location':(851,250)}
[0151]
{'index':1,'location':(852,250)}
[0152]
{'index':2,'location':(853,250)}
[0153]
{'index':3,'location':(854,250)}
[0154]
{'index':4,'location':(855,250)}
[0155]
{'index':5,'location':(856,250)}
[0156]
{'index':6,'location':(857,250)}
[0157]
{'index':7,'location':(858,250)}
[0158]
{'index':8,'location':(858,251)}
[0159]
{"index':9,'location':(858,252)}
[0160]
其中,index表示目标路径中路径点的点序,location表示路径点在虚拟场景中的坐标。具体的,可以将目标路径ab的路径节点数据生成json文件,将该json文件保存至虚拟场景高度图的文件目录下,以方便虚拟场景制作者进行后续使用。
[0161]
本技术实施例公开了一种虚拟场景的路径生成方法,该方法包括:获取虚拟场景高度图,以及虚拟场景高度图中需要生成的目标路径的起始点与结束点;将起始点作为目标路径的当前路径节点,确定虚拟场景高度图中当前路径节点的至少一个相邻点;根据当前路径节点与每一相邻点在虚拟场景高度图中的高度信息,确定当前路径节点与每一相邻点之间的坡度值;基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值;基于移动消耗值从至少一个相邻点中确定出目标路径中当前路径节点的在后路径节点;将在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到在后路径节点与结
束点重合,得到目标路径,以此,可以提高虚拟场景中的路径生成效率。
[0162]
为便于更好的实施本技术实施例提供的虚拟场景的路径生成方法,本技术实施例还提供一种基于上述虚拟场景的路径生成方法的虚拟场景的路径生成装置。其中名词的含义与上述虚拟场景的路径生成方法中相同,具体实现细节可以参考方法实施例中的说明。
[0163]
请参阅图10,图10为本技术实施例提供的一种虚拟场景的路径生成装置的结构框图,该装置包括:
[0164]
第一获取单元301,用于获取虚拟场景高度图,以及所述虚拟场景高度图中需要生成的目标路径的起始点与结束点;
[0165]
第一确定单元302,用于将所述起始点作为所述目标路径的当前路径节点,确定所述虚拟场景高度图中所述当前路径节点的至少一个相邻点;
[0166]
第二确定单元303,用于根据所述当前路径节点与每一相邻点在所述虚拟场景高度图中的高度信息,确定所述当前路径节点与每一相邻点之间的坡度值;
[0167]
第三确定单元304,用于基于所述坡度值,以及每一相邻点与所述当前路径节点以及所述结束点之间的距离值,确定由所述当前路径节点经过每一相邻点到达所述结束点产生的移动消耗值;
[0168]
第四确定单元305,用于基于所述移动消耗值从所述至少一个相邻点中确定出所述目标路径中所述当前路径节点的在后路径节点;
[0169]
第五确定单元306,用于将所述在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到所述在后路径节点与所述结束点重合,得到所述目标路径。
[0170]
在一些实施例中,第二确定单元303可以包括:
[0171]
第一获取子单元,用于从所述虚拟场景高度图中获取所述当前路径节点的第一高度值,以及每一相邻点的第二高度值;
[0172]
第一计算子单元,用于计算所述当前路径节点与每一相邻点之间的距离值;
[0173]
第二计算子单元,用于基于所述第一高度值、所述第二高度值以及所述距离值,计算所述当前路径节点与所述相邻点之间的坡度值。
[0174]
在一些实施例中,第二计算子单元具体可以用于:
[0175]
基于所述第一高度值与所述第二高度值,计算所述当前路径节点与所述相邻点的高度差值;
[0176]
计算所述高度差值与所述距离值的比值,得到所述坡度值。
[0177]
在一些实施例中,该装置还将可以包括:
[0178]
第六确定单元,用于从预设的多个坡度值范围中确定所述坡度值对应的目标坡度值范围;
[0179]
第二获取单元,用于获取所述目标坡度值范围对应的坡度权重;
[0180]
第一处理单元,用于基于所述坡度权重对所述坡度值进行加权处理,得到加权处理后坡度值。
[0181]
在一些实施例中,第三确定单元304可以包括:
[0182]
第一确定子单元,用于基于所述加权处理后坡度值,以及每一相邻点与所述当前路径节点以及所述结束点之间的距离值,确定由所述当前路径节点经过每一相邻点到达所
述结束点产生的移动消耗值。
[0183]
在一些实施例中,第三确定单元304可以包括:
[0184]
第三计算子单元,用于计算每一相邻点与所述当前路径节点之间的第一距离值,以及计算每一相邻点与所述结束点之间的第二距离值;
[0185]
第二确定子单元,用于基于所述第一距离值与所述第二距离值确定每一相邻点对应的初始移动消耗值;
[0186]
第四计算子单元,用于基于所述坡度值与所述初始移动消耗值,计算由所述当前路径节点经过每一相邻点到达所述结束点产生的移动消耗值。
[0187]
在一些实施例中,第四确定单元305可以包括:
[0188]
第三确定子单元,用于从所述至少一个相邻点中确定移动消耗最小的相邻点,作为所述目标路径中所述当前路径节点的在后路径节点。
[0189]
在一些实施例中,该装置还可以包括以下步骤:
[0190]
第二处理单元,用于基于预设的采样参数对所述虚拟场景高度图中的像素点进行重采样处理,得到处理后虚拟场景高度图。
[0191]
在一些实施例中,第四确定单元305可以包括:
[0192]
第四确定子单元,用于从所述处理后虚拟场景高度图中确定所述当前路径节点的至少一个相邻点。
[0193]
在一些实施例中,第二处理单元可以包括:
[0194]
第五确定子单元,用于根据所述预设的采样参数确定所述虚拟场景高度图中进行融合的多个像素点集合;
[0195]
处理子单元,用于基于预设的像素值权重,对每一像素点集合中像素值处于第一像素值区间或第二像素值区间的像素点的像素值进行加权处理,得到像素点集合中加权处理后的像素点;
[0196]
融合子单元,用于将各像素点集合中加权处理后的像素点进行融合,得到各像素点集合对应的新的像素点;
[0197]
第六确定子单元,用于基于所有新的像素点,得到所述处理后虚拟场景高度图。
[0198]
在一些实施例中,处理子单元具体可以用于:
[0199]
基于预设的第一像素值权重对所述像素点集合中像素值处于第一像素值区间的像素点的像素值进行加权处理、基于预设的第二像素值权重对所述像素点集合中像素值处于第二像素值区间的像素点的像素值进行加权处理;
[0200]
基于所述第一像素值权重与所述第二像素值权重确定第三像素值权重,并基于所述第三像素值权重对所述像素点集合中像素值未处于所述第一像素值区间和所述第二像素值区间的像素点的像素值进行加权处理。
[0201]
在一些实施例中,第五确定单元306可以包括:
[0202]
执行子单元,用于将所述在后路径节点作为新的当前路径节点,返回执行确定所述虚拟场景高度图中所述当前路径节点的至少一个相邻点的步骤,直到所述在后路径节点与所述结束点重合,得到所述目标路径。
[0203]
在一些实施例中,第一获取单元301可以包括:
[0204]
显示子单元,用于响应于针对所述高度图显示区域的虚拟场景高度图的上传操
作,获取所述虚拟场景高度图,并在所述高度图显示区域显示所述虚拟场景高度图。
[0205]
在一些实施例中,该装置还可以包括:
[0206]
显示单元,用于在所述高度图显示区域显示所述虚拟场景高度图以及所述目标路径。
[0207]
本技术实施例公开了一种虚拟场景的路径生成装置,通过第一获取单元301获取虚拟场景高度图,以及所述虚拟场景高度图中需要生成的目标路径的起始点与结束点;第一确定单元302将所述起始点作为所述目标路径的当前路径节点,确定所述虚拟场景高度图中所述当前路径节点的至少一个相邻点;第二确定单元303根据所述当前路径节点与每一相邻点在所述虚拟场景高度图中的高度信息,确定所述当前路径节点与每一相邻点之间的坡度值;第三确定单元304基于所述坡度值,以及每一相邻点与所述当前路径节点以及所述结束点之间的距离值,确定由所述当前路径节点经过每一相邻点到达所述结束点产生的移动消耗值;第四确定单元305基于所述移动消耗值从所述至少一个相邻点中确定出所述目标路径中所述当前路径节点的在后路径节点;第五确定单元306将所述在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到所述在后路径节点与所述结束点重合,得到所述目标路径。以此,可以提高虚拟场景中的路径生成效率。
[0208]
相应的,本技术实施例还提供一种计算机设备,该计算机设备可以为终端。如图11所示,图11为本技术实施例提供的计算机设备的结构示意图。该计算机设备500包括有一个或者一个以上处理核心的处理器501、有一个或一个以上计算机可读存储介质的存储器502及存储在存储器502上并可在处理器上运行的计算机程序。其中,处理器501与存储器502电性连接。本领域技术人员可以理解,图中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0209]
处理器501是计算机设备500的控制中心,利用各种接口和线路连接整个计算机设备500的各个部分,通过运行或加载存储在存储器502内的软件程序和/或模块,以及调用存储在存储器502内的数据,执行计算机设备500的各种功能和处理数据,从而对计算机设备500进行整体监控。
[0210]
在本技术实施例中,计算机设备500中的处理器501会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器502中,并由处理器501来运行存储在存储器502中的应用程序,从而实现各种功能:
[0211]
获取虚拟场景高度图,以及虚拟场景高度图中需要生成的目标路径的起始点与结束点;
[0212]
将起始点作为目标路径的当前路径节点,确定虚拟场景高度图中当前路径节点的至少一个相邻点;
[0213]
根据当前路径节点与每一相邻点在虚拟场景高度图中的高度信息,确定当前路径节点与每一相邻点之间的坡度值;
[0214]
基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值;
[0215]
基于移动消耗值从至少一个相邻点中确定出目标路径中当前路径节点的在后路径节点;
[0216]
将在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路
径节点,直到在后路径节点与结束点重合,得到目标路径。
[0217]
在一些实施例中,根据当前路径节点与每一相邻点在虚拟场景高度图中的高度信息,确定当前路径节点与每一相邻点之间的坡度值,包括:
[0218]
从虚拟场景高度图中获取当前路径节点的第一高度值,以及每一相邻点的第二高度值;
[0219]
计算当前路径节点与每一相邻点之间的距离值;
[0220]
基于第一高度值、第二高度值以及距离值,计算当前路径节点与相邻点之间的坡度值。
[0221]
在一些实施例中,基于第一高度值、第二高度值以及距离值,计算当前路径节点与相邻点之间的坡度值,包括:
[0222]
基于第一高度值与第二高度值,计算当前路径节点与相邻点的高度差值;
[0223]
计算高度差值与距离值的比值,得到坡度值。
[0224]
在一些实施例中,在基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值之前,方法还包括:
[0225]
从预设的多个坡度值范围中确定坡度值对应的目标坡度值范围;
[0226]
获取目标坡度值范围对应的坡度权重;
[0227]
基于坡度权重对坡度值进行加权处理,得到加权处理后坡度值;
[0228]
基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值,包括:
[0229]
基于加权处理后坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值。
[0230]
在一些实施例中,基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值,包括:
[0231]
计算每一相邻点与当前路径节点之间的第一距离值,以及计算每一相邻点与结束点之间的第二距离值;
[0232]
基于第一距离值与第二距离值确定每一相邻点对应的初始移动消耗值;
[0233]
基于坡度值与初始移动消耗值,计算由当前路径节点经过每一相邻点到达结束点产生的移动消耗值。
[0234]
在一些实施例中,基于移动消耗值从至少一个相邻点中确定出目标路径中当前路径节点的在后路径节点,包括:
[0235]
从至少一个相邻点中确定移动消耗最小的相邻点,作为目标路径中当前路径节点的在后路径节点。
[0236]
在一些实施例中,在确定虚拟场景高度图中当前路径节点的至少一个相邻点之前,方法还包括:
[0237]
基于预设的采样参数对虚拟场景高度图中的像素点进行重采样处理,得到处理后虚拟场景高度图;
[0238]
确定虚拟场景高度图中当前路径节点的至少一个相邻点,包括:
[0239]
从处理后虚拟场景高度图中确定当前路径节点的至少一个相邻点。
[0240]
在一些实施例中,基于预设的采样参数对虚拟场景高度图中的像素点进行重采样处理,得到处理后虚拟场景高度图,包括:
[0241]
根据预设的采样参数确定虚拟场景高度图中进行融合的多个像素点集合;
[0242]
基于预设的像素值权重,对每一像素点集合中像素值处于第一像素值区间或第二像素值区间的像素点的像素值进行加权处理,得到像素点集合中加权处理后的像素点;
[0243]
将各像素点集合中加权处理后的像素点进行融合,得到各像素点集合对应的新的像素点;
[0244]
基于所有新的像素点,得到处理后虚拟场景高度图。
[0245]
在一些实施例中,基于预设的像素值权重,对每一像素点集合中像素值处于第一像素值区间或第二像素值区间的像素点的像素值进行加权处理,包括:
[0246]
基于预设的第一像素值权重对像素点集合中像素值处于第一像素值区间的像素点的像素值进行加权处理、基于预设的第二像素值权重对像素点集合中像素值处于第二像素值区间的像素点的像素值进行加权处理;
[0247]
基于第一像素值权重与第二像素值权重确定第三像素值权重,并基于第三像素值权重对像素点集合中像素值未处于第一像素值区间和第二像素值区间的像素点的像素值进行加权处理。
[0248]
在一些实施例中,将在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到在后路径节点与结束点重合,得到目标路径,包括:
[0249]
将在后路径节点作为新的当前路径节点,返回执行确定虚拟场景高度图中当前路径节点的至少一个相邻点的步骤,直到在后路径节点与结束点重合,得到目标路径。
[0250]
在一些实施例中,通过终端设备提供图形用户界面,图形用户界面至少包括高度图显示区域和路径生成控件;
[0251]
获取虚拟场景高度图,包括:
[0252]
响应于针对高度图显示区域的虚拟场景高度图的上传操作,获取虚拟场景高度图,并在高度图显示区域显示虚拟场景高度图。
[0253]
在一些实施例中,在将在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到在后路径节点与结束点重合,得到目标路径之后,方法还包括:
[0254]
在高度图显示区域显示虚拟场景高度图以及目标路径。
[0255]
本技术实施例通过在虚拟场景高度图中选择起始点与结束点,将起始点作为路径节点,根据虚拟场景高度图中路径节点与每一相邻点的高度信息,确定路径节点与每一相邻点之间的坡度值,根据坡度值,以及每一相邻点与路径节点以及结束点之间的距离值,确定由路径节点经过每一相邻点到达结束点产生的移动消耗值,基于移动消耗值从至少一个相邻点中确定路径节点的后一路径节点,将后一路径节点作为新的路径节点,重新确定出新的路径节点的后一路径节点,直到后一路径节点与结束点重合,得到目标路径。以此,可以提高虚拟场景中的路径生成效率。
[0256]
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
[0257]
可选的,如图11所示,计算机设备500还包括:触控显示屏503、射频电路504、音频电路505、输入单元506以及电源507。其中,处理器501分别与触控显示屏503、射频电路504、
音频电路505、输入单元506以及电源507电性连接。本领域技术人员可以理解,图11中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0258]
触控显示屏503可用于显示图形用户界面以及接收用户作用于图形用户界面产生的操作指令。触控显示屏503可以包括显示面板和触控面板。其中,显示面板可用于显示由用户输入的信息或提供给用户的信息以及计算机设备的各种图形用户接口,这些图形用户接口可以由图形、引导信息、图标、视频和其任意组合来构成。可选的,可以采用液晶显示器(lcd,liquid crystal display)、有机发光二极管(oled,organic light-emitting diode)等形式来配置显示面板。触控面板可用于收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并生成相应的操作指令,且操作指令执行对应程序。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器501,并能接收处理器501发来的命令并加以执行。触控面板可覆盖显示面板,当触控面板检测到在其上或附近的触摸操作后,传送给处理器501以确定触摸事件的类型,随后处理器501根据触摸事件的类型在显示面板上提供相应的视觉输出。在本技术实施例中,可以将触控面板与显示面板集成到触控显示屏503而实现输入和输出功能。但是在某些实施例中,触控面板与触控面板可以作为两个独立的部件来实现输入和输出功能。即触控显示屏503也可以作为输入单元506的一部分实现输入功能。
[0259]
射频电路504可用于收发射频信号,以通过无线通信与网络设备或其他计算机设备建立无线通讯,与网络设备或其他计算机设备之间收发信号。
[0260]
音频电路505可以用于通过扬声器、传声器提供用户与计算机设备之间的音频接口。音频电路505可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路505接收后转换为音频数据,再将音频数据输出处理器501处理后,经射频电路504以发送给比如另一计算机设备,或者将音频数据输出至存储器502以便进一步处理。音频电路505还可能包括耳塞插孔,以提供外设耳机与计算机设备的通信。
[0261]
输入单元506可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
[0262]
电源507用于给计算机设备500的各个部件供电。可选的,电源507可以通过电源管理系统与处理器501逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源507还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0263]
尽管图11中未示出,计算机设备500还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。
[0264]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0265]
由上可知,本实施例提供的计算机设备,获取虚拟场景高度图,以及虚拟场景高度
图中需要生成的目标路径的起始点与结束点;将起始点作为目标路径的当前路径节点,确定虚拟场景高度图中当前路径节点的至少一个相邻点;根据当前路径节点与每一相邻点在虚拟场景高度图中的高度信息,确定当前路径节点与每一相邻点之间的坡度值;基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值;基于移动消耗值从至少一个相邻点中确定出目标路径中当前路径节点的在后路径节点;将在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到在后路径节点与结束点重合,得到目标路径。
[0266]
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
[0267]
为此,本技术实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本技术实施例所提供的任一种虚拟场景的路径生成方法中的步骤。例如,该计算机程序可以执行如下步骤:
[0268]
获取虚拟场景高度图,以及虚拟场景高度图中需要生成的目标路径的起始点与结束点;
[0269]
将起始点作为目标路径的当前路径节点,确定虚拟场景高度图中当前路径节点的至少一个相邻点;
[0270]
根据当前路径节点与每一相邻点在虚拟场景高度图中的高度信息,确定当前路径节点与每一相邻点之间的坡度值;
[0271]
基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值;
[0272]
基于移动消耗值从至少一个相邻点中确定出目标路径中当前路径节点的在后路径节点;
[0273]
将在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到在后路径节点与结束点重合,得到目标路径。
[0274]
在一些实施例中,根据当前路径节点与每一相邻点在虚拟场景高度图中的高度信息,确定当前路径节点与每一相邻点之间的坡度值,包括:
[0275]
从虚拟场景高度图中获取当前路径节点的第一高度值,以及每一相邻点的第二高度值;
[0276]
计算当前路径节点与每一相邻点之间的距离值;
[0277]
基于第一高度值、第二高度值以及距离值,计算当前路径节点与相邻点之间的坡度值。
[0278]
在一些实施例中,基于第一高度值、第二高度值以及距离值,计算当前路径节点与相邻点之间的坡度值,包括:
[0279]
基于第一高度值与第二高度值,计算当前路径节点与相邻点的高度差值;
[0280]
计算高度差值与距离值的比值,得到坡度值。
[0281]
在一些实施例中,在基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值之前,方法还包括:
[0282]
从预设的多个坡度值范围中确定坡度值对应的目标坡度值范围;
[0283]
获取目标坡度值范围对应的坡度权重;
[0284]
基于坡度权重对坡度值进行加权处理,得到加权处理后坡度值;
[0285]
基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值,包括:
[0286]
基于加权处理后坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值。
[0287]
在一些实施例中,基于坡度值,以及每一相邻点与当前路径节点以及结束点之间的距离值,确定由当前路径节点经过每一相邻点到达结束点产生的移动消耗值,包括:
[0288]
计算每一相邻点与当前路径节点之间的第一距离值,以及计算每一相邻点与结束点之间的第二距离值;
[0289]
基于第一距离值与第二距离值确定每一相邻点对应的初始移动消耗值;
[0290]
基于坡度值与初始移动消耗值,计算由当前路径节点经过每一相邻点到达结束点产生的移动消耗值。
[0291]
在一些实施例中,基于移动消耗值从至少一个相邻点中确定出目标路径中当前路径节点的在后路径节点,包括:
[0292]
从至少一个相邻点中确定移动消耗最小的相邻点,作为目标路径中当前路径节点的在后路径节点。
[0293]
在一些实施例中,在确定虚拟场景高度图中当前路径节点的至少一个相邻点之前,方法还包括:
[0294]
基于预设的采样参数对虚拟场景高度图中的像素点进行重采样处理,得到处理后虚拟场景高度图;
[0295]
确定虚拟场景高度图中当前路径节点的至少一个相邻点,包括:
[0296]
从处理后虚拟场景高度图中确定当前路径节点的至少一个相邻点。
[0297]
在一些实施例中,基于预设的采样参数对虚拟场景高度图中的像素点进行重采样处理,得到处理后虚拟场景高度图,包括:
[0298]
根据预设的采样参数确定虚拟场景高度图中进行融合的多个像素点集合;
[0299]
基于预设的像素值权重,对每一像素点集合中像素值处于第一像素值区间或第二像素值区间的像素点的像素值进行加权处理,得到像素点集合中加权处理后的像素点;
[0300]
将各像素点集合中加权处理后的像素点进行融合,得到各像素点集合对应的新的像素点;
[0301]
基于所有新的像素点,得到处理后虚拟场景高度图。
[0302]
在一些实施例中,基于预设的像素值权重,对每一像素点集合中像素值处于第一像素值区间或第二像素值区间的像素点的像素值进行加权处理,包括:
[0303]
基于预设的第一像素值权重对像素点集合中像素值处于第一像素值区间的像素点的像素值进行加权处理、基于预设的第二像素值权重对像素点集合中像素值处于第二像素值区间的像素点的像素值进行加权处理;
[0304]
基于第一像素值权重与第二像素值权重确定第三像素值权重,并基于第三像素值权重对像素点集合中像素值未处于第一像素值区间和第二像素值区间的像素点的像素值
进行加权处理。
[0305]
在一些实施例中,将在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到在后路径节点与结束点重合,得到目标路径,包括:
[0306]
将在后路径节点作为新的当前路径节点,返回执行确定虚拟场景高度图中当前路径节点的至少一个相邻点的步骤,直到在后路径节点与结束点重合,得到目标路径。
[0307]
在一些实施例中,通过终端设备提供图形用户界面,图形用户界面至少包括高度图显示区域和路径生成控件;
[0308]
获取虚拟场景高度图,包括:
[0309]
响应于针对高度图显示区域的虚拟场景高度图的上传操作,获取虚拟场景高度图,并在高度图显示区域显示虚拟场景高度图。
[0310]
在一些实施例中,在将在后路径节点作为新的当前路径节点,重新确定出新的当前路径节点的在后路径节点,直到在后路径节点与结束点重合,得到目标路径之后,方法还包括:
[0311]
在高度图显示区域显示虚拟场景高度图以及目标路径。
[0312]
本技术实施例通过在虚拟场景高度图中选择起始点与结束点,将起始点作为路径节点,根据虚拟场景高度图中路径节点与每一相邻点的高度信息,确定路径节点与每一相邻点之间的坡度值,根据坡度值,以及每一相邻点与路径节点以及结束点之间的距离值,确定由路径节点经过每一相邻点到达结束点产生的移动消耗值,基于移动消耗值从至少一个相邻点中确定路径节点的后一路径节点,将后一路径节点作为新的路径节点,重新确定出新的路径节点的后一路径节点,直到后一路径节点与结束点重合,得到目标路径。以此,可以提高虚拟场景中的路径生成效率。
[0313]
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
[0314]
其中,该计算机可读存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、磁盘或光盘等。
[0315]
由于该计算机可读存储介质中所存储的计算机程序,可以执行本技术实施例所提供的任一种虚拟场景的路径生成方法中的步骤,因此,可以实现本技术实施例所提供的任一种虚拟场景的路径生成方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
[0316]
以上对本技术实施例所提供的一种虚拟场景的路径生成方法、装置、计算机可读存储介质及计算机设备进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1