一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于虚拟场景网格化的模型渲染方法、装置和计算机设备与流程

2022-06-08 13:08:47 来源:中国专利 TAG:


1.本技术涉及计算机技术领域,特别是涉及一种基于虚拟场景网格化的模型调度渲染方法、装置、计算机设备、存储介质和计算机程序产品。


背景技术:

2.虚拟场景是指计算机通过数字通讯技术勾勒出的数字化场景,而通过渲染技术,可以营造出更具真实感的虚拟场景。
3.传统技术中,在对虚拟场景中的网格模型进行渲染时,往往需要对网格模型进行轻量级处理,然而,这种渲染方式需要进行大量的数据处理工作,导致会消耗很多的内存和显存资源,渲染速度慢,无法在虚拟场景中呈现出高质量的渲染效果。
4.因此,传统技术中的虚拟场景存在模型渲染效果差的问题。


技术实现要素:

5.基于此,有必要针对上述技术问题,提供一种能够在虚拟场景中提升模型渲染效果的基于虚拟场景网格化的模型渲染方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
6.第一方面,本技术提供了一种基于虚拟场景网格化的模型渲染方法。所述方法包括:
7.获取目标虚拟场景中的至少两个虚拟模型对应的网格区域数据;所述网格区域数据用于表征所述虚拟模型在网格化的所述目标虚拟场景中所处的网格区域;
8.获取虚拟摄像机在所述目标虚拟场景中的位姿数据,并根据所述网格区域数据和所述位姿数据,确定各所述虚拟模型与所述虚拟摄像机间的相对位置信息;
9.根据各所述相对位置信息,确定各所述虚拟模型对应的网格渲染权重;
10.按照各所述虚拟模型对应的网格渲染权重,对各所述虚拟模型进行渲染。
11.在其中一个实施例中,所述位姿数据包括所述虚拟摄像机的视角数据;所述根据所述网格区域数据和所述位姿数据,确定各所述虚拟模型与所述虚拟摄像机间的相对位置信息,包括:根据所述网格区域数据与所述视角数据,确定各所述虚拟模型与所述虚拟摄像机的视角中心间的第一距离;所述根据各所述相对位置信息,确定各所述虚拟模型对应的网格渲染权重,包括:根据各所述第一距离,确定各所述虚拟模型对应的网格渲染权重;其中,所述第一距离与所述网格渲染权重呈负相关关系。
12.在其中一个实施例中,所述位姿数据还包括所述虚拟摄像机的位置数据;若存在所述第一距离相等的至少两个虚拟模型,所述根据各所述相对位置信息,确定各所述虚拟模型对应的网格渲染权重,包括:根据各所述网格区域数据与所述位置数据,分别确定所述第一距离相等的至少两个虚拟模型与所述虚拟摄像机的拍摄位置间的第二距离;根据各所述第二距离,分别确定所述第一距离相等的至少两个虚拟模型对应的网格渲染权重;其中,所述第一距离相等的至少两个虚拟模型对应的第二距离与对应的网格渲染权重呈负相关
关系。
13.在其中一个实施例中,所述按照各所述虚拟模型对应的网格渲染权重,对各所述虚拟模型进行渲染,包括:按照各所述虚拟模型对应的网格渲染权重,确定各所述虚拟模型对应的渲染优先级;其中,所述网格渲染权重与所述渲染优先级呈正相关关系;根据所述渲染优先级,对各所述虚拟模型进行渲染。
14.在其中一个实施例中,若存在所述网格渲染权重相等的至少两个虚拟模型,所述方法还包括:分别确定所述网格渲染权重相等的至少两个虚拟模型对应的网格调度层级;根据各所述网格调度层级,分别确定所述网格渲染权重相等的至少两个虚拟模型对应的渲染优先级;其中,所述网格渲染权重相等的至少两个虚拟模型对应的网格调度层级与对应的渲染优先级呈正相关关系;根据各所述渲染优先级,对所述网格渲染权重相等的至少两个虚拟模型进行渲染。
15.在其中一个实施例中,所述分别确定所述网格渲染权重相等的至少两个虚拟模型对应的网格调度层级,包括:分别获取所述网格渲染权重相等的至少两个虚拟模型对应的几何属性;所述几何属性用于确定对应的虚拟模型在所述目标虚拟场景中所占据的网格数量和体积;根据各所述网格数量,分别确定所述网格渲染权重相等的至少两个虚拟模型对应的网格调度层级;其中,所述网格渲染权重相等的至少两个虚拟模型所占据的网格数量与对应的网格调度层级呈正相关关系;若存在所述网格数量相等的至少两个虚拟模型,则根据所述网格数量相等的至少两个虚拟模型所占据的体积,分别确定所述网格数量相等的至少两个虚拟模型对应的网格调度层级;其中,所述网格数量相等的至少两个虚拟模型所占据的体积与对应的网格调度层级呈正相关关系。
16.第二方面,本技术还提供了一种基于虚拟场景网格化的模型渲染装置。所述装置包括:
17.第一获取模块,用于获取目标虚拟场景中的至少两个虚拟模型对应的网格区域数据;所述网格区域数据用于表征所述虚拟模型在网格化的所述目标虚拟场景中所处的网格区域;
18.第二获取模块,用于获取虚拟摄像机在所述目标虚拟场景中的位姿数据,并根据所述网格区域数据和所述位姿数据,确定各所述虚拟模型与所述虚拟摄像机间的相对位置信息;
19.确定模块,用于根据各所述相对位置信息,确定各所述虚拟模型对应的网格渲染权重;
20.渲染模块,用于按照各所述虚拟模型对应的网格渲染权重,对各所述虚拟模型进行渲染。
21.第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
22.获取目标虚拟场景中的至少两个虚拟模型对应的网格区域数据;所述网格区域数据用于表征所述虚拟模型在网格化的所述目标虚拟场景中所处的网格区域;
23.获取虚拟摄像机在所述目标虚拟场景中的位姿数据,并根据所述网格区域数据和所述位姿数据,确定各所述虚拟模型与所述虚拟摄像机间的相对位置信息;
24.根据各所述相对位置信息,确定各所述虚拟模型对应的网格渲染权重;
25.按照各所述虚拟模型对应的网格渲染权重,对各所述虚拟模型进行渲染。
26.第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
27.获取目标虚拟场景中的至少两个虚拟模型对应的网格区域数据;所述网格区域数据用于表征所述虚拟模型在网格化的所述目标虚拟场景中所处的网格区域;
28.获取虚拟摄像机在所述目标虚拟场景中的位姿数据,并根据所述网格区域数据和所述位姿数据,确定各所述虚拟模型与所述虚拟摄像机间的相对位置信息;
29.根据各所述相对位置信息,确定各所述虚拟模型对应的网格渲染权重;
30.按照各所述虚拟模型对应的网格渲染权重,对各所述虚拟模型进行渲染。
31.第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
32.获取目标虚拟场景中的至少两个虚拟模型对应的网格区域数据;所述网格区域数据用于表征所述虚拟模型在网格化的所述目标虚拟场景中所处的网格区域;
33.获取虚拟摄像机在所述目标虚拟场景中的位姿数据,并根据所述网格区域数据和所述位姿数据,确定各所述虚拟模型与所述虚拟摄像机间的相对位置信息;
34.根据各所述相对位置信息,确定各所述虚拟模型对应的网格渲染权重;
35.按照各所述虚拟模型对应的网格渲染权重,对各所述虚拟模型进行渲染。
36.上述基于虚拟场景网格化的模型渲染方法、装置、计算机设备、存储介质和计算机程序产品,通过获取目标虚拟场景中的至少两个虚拟模型对应的网格区域数据,可以确定虚拟模型在网格化的目标虚拟场景中所处的网格区域;如此,通过将目标虚拟场景网格化,可以不需对虚拟模型进行轻量化处理,避免了出现模型变形、破面等问题,提高了模型渲染效果;然后,获取虚拟摄像机在目标虚拟场景中的位姿数据,并根据网格区域数据和位姿数据,确定各虚拟模型与虚拟摄像机间的相对位置信息;之后,根据各相对位置信息,确定各虚拟模型对应的网格渲染权重;最后,按照各虚拟模型对应的网格渲染权重,对各虚拟模型进行渲染;从而可以直接获取虚拟模型对应的网格区域数据,不需实时构建网格区域数据以应用网格区域数据实现模型渲染,实现了网格区域数据的构建与应用的分离,提高了虚拟场景中的模型渲染效率;同时避免了因计算量过大消耗cpu((central processing unit,中央处理器))性能导致运次卡顿的情况发生,保证了虚拟摄像机镜头的移动流畅性,可以及时显示高精度虚拟模型,进一步提升了虚拟场景中的模型渲染效果。
附图说明
37.图1为一个实施例中一种基于虚拟场景网格化的模型渲染方法的流程示意图;
38.图2为一个实施例中一种基于虚拟场景网格化的模型渲染方法的应用环境图;
39.图3为另一个实施例中一种基于虚拟场景网格化的模型渲染方法的流程示意图;
40.图4为一个实施例中一种基于虚拟场景网格化的模型渲染装置的结构框图;
41.图5为一个实施例中计算机设备的内部结构图。
具体实施方式
42.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对
本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
43.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
44.在一个实施例中,如图1所示,提供了一种基于虚拟场景网格化的模型渲染方法,可以应用于计算机设备,计算机设备可以是终端,也可以是独立的服务器或者是多个服务器组成的服务器集群,所述方法包括:
45.步骤s110,获取目标虚拟场景中的至少两个虚拟模型对应的网格区域数据。
46.其中,网格区域数据用于表征虚拟模型在网格化的目标虚拟场景中所处的网格区域。
47.其中,网格区域数据可以存储于本地,也可以存储其他存储设备中,如服务器存储设备。
48.其中,可以通过在多维信息空间上创建一个虚拟信息环境,模拟出一个可交互的、虚幻的空间场景,以得到目标虚拟场景。
49.具体实现中,计算机设备可以预先构建计算目标虚拟场景中的至少两个虚拟模型对应的网格区域数据,并将网格区域数据存储于本地,直接从本地获取目标虚拟场景中的至少两个虚拟模型对应的网格区域数据;或者通过网格数据计算设备构建计算上述网格区域数据,并将网格区域数据存储于其他存储设备中,如服务器存储设备,在此不作限制,因此计算机设备可以从其他存储设备中获取上述网格区域数据,并通过网格区域数据可以确定各虚拟模型在网格化的目标虚拟场景中所处的网格区域。如此,实现了网格区域数据的构建与应用的分离。
50.实际应用中,网格区域数据的构建及计算可以基于创造引擎、开发工具的可视窗口,如unity 3d可视窗口,通过获取用户设置的网格参数对目标虚拟场景进行网格化管理;其中,网格参数用于确定将目标虚拟场景进行网格划分的网格数量,如将目标虚拟场景划分为5
×
5或10
×
10的网格空间;并通过获取各虚拟模型,可以确定各虚拟模型在网格化的目标虚拟场景中所处的网格区域,得到各虚拟模型对应的网格区域数据。
51.步骤s120,获取虚拟摄像机在目标虚拟场景中的位姿数据,并根据网格区域数据和位姿数据,确定各虚拟模型与虚拟摄像机间的相对位置信息。
52.其中,在目标虚拟场景所处的世界空间坐标系下,图形用户界面所呈现的内容,如虚拟场景、编辑界面等,均是以虚拟摄像机为视角获取的。
53.其中,位姿数据包括目标虚拟摄像机的位置数据和姿态数据,可以用于确定虚拟摄像机在网格化的目标虚拟场景中所处的网格区域。
54.其中,相对位置信息可以为虚拟模型与虚拟摄像机间的距离信息。
55.具体实现中,计算机设备可以获取虚拟摄像机在目标虚拟场景中的位姿数据,即位置数据和姿态数据,并根据各虚拟模型的网格区域数据和上述位姿数据,确定各虚拟模
型在网格化的目标虚拟场景中所处的网格区域以及确定虚拟摄像机在网格化的目标虚拟场景中所处的网格区域,从而可以确定各虚拟模型与虚拟摄像机间的相对位置信息,如各虚拟模型与虚拟摄像机间的距离信息。
56.步骤s130,根据各相对位置信息,确定各虚拟模型对应的网格渲染权重。
57.具体实现中,计算机设备可以根据各虚拟模型与虚拟摄像机间的相对位置信息,确定各虚拟模型对应的网格渲染权重,并根据各虚拟模型对应的网格渲染权重确定一个渲染列表,渲染列表中记载的各网格渲染权重按各虚拟模型对应的网格渲染权重的大小进行排序。
58.具体地,当通过各虚拟模型与虚拟摄像机间的相对位置信息,确定了各虚拟模型与虚拟摄像机间的距离信息后,虚拟模型与虚拟摄像机间的距离越近,则该虚拟模型对应的网格渲染权重越大。
59.步骤s140,按照各虚拟模型对应的网格渲染权重,对各虚拟模型进行渲染。
60.具体实现中,计算机设备可以根据各虚拟模型对应的网格渲染权重,确定各虚拟模型对应的渲染优先级,根据各虚拟模型对应的渲染优先级对各虚拟模型进行渲染,以实现对各虚拟模型的可视化加载,如在计算机设备的前端页面进行各虚拟模型的渲染加载;其中,虚拟模型对应的网格渲染权重越大,对应的渲染优先级越高。
61.上述基于虚拟场景网格化的模型渲染方法中,通过获取目标虚拟场景中的至少两个虚拟模型对应的网格区域数据,可以确定虚拟模型在网格化的目标虚拟场景中所处的网格区域;如此,通过将目标虚拟场景网格化,可以不需对虚拟模型进行轻量化处理,避免了出现模型变形、破面等问题,提高了模型渲染效果;然后,获取虚拟摄像机在目标虚拟场景中的位姿数据,并根据网格区域数据和位姿数据,确定各虚拟模型与虚拟摄像机间的相对位置信息;之后,根据各相对位置信息,确定各虚拟模型对应的网格渲染权重;最后,按照各虚拟模型对应的网格渲染权重,对各虚拟模型进行渲染;从而可以直接获取虚拟模型对应的网格区域数据,不需实时构建网格区域数据以应用网格区域数据实现模型渲染,实现了网格区域数据的构建与应用的分离,提高了虚拟场景中的模型渲染效率;同时避免了因计算量过大消耗cpu(central processing unit,中央处理器)性能导致运次卡顿的情况发生,保证了虚拟摄像机镜头的移动流畅性,可以及时显示高精度虚拟模型,进一步提升了虚拟场景中的模型渲染效果。
62.在一个实施例中,根据网格区域数据和位姿数据,确定各虚拟模型与虚拟摄像机间的相对位置信息,包括:根据网格区域数据与视角数据,确定各虚拟模型与虚拟摄像机的视角中心间的第一距离;根据各相对位置信息,确定各虚拟模型对应的网格渲染权重,包括:根据各第一距离,确定各虚拟模型对应的网格渲染权重。
63.其中,虚拟摄像机的位姿数据可以为位置数据和姿态数据,该姿态数据可以为视角数据,该视角数据可以用于确定虚拟摄像机的视角中心。
64.其中,第一距离与网格渲染权重呈负相关关系。
65.具体实现中,计算机设备在根据网格区域数据和位姿数据,确定各虚拟模型与虚拟摄像机间的相对位置信息的过程中,计算机设备可以根据虚拟摄像机的姿态数据,得到虚拟摄像机的视角数据,从而可以确定虚拟摄像机的视角中心,并根据该虚拟摄像机的视角中心在目标虚拟场景中的所处的区域与各虚拟模型对应的网格区域数据,确定各虚拟模
型与该视角中心间的距离,得到第一距离。
66.并且,计算机设备在根据网格区域数据和位姿数据,确定各虚拟模型与虚拟摄像机间的相对位置信息的过程中,计算机设备可以根据各虚拟模型对应的第一距离,即各虚拟模型与虚拟摄像机的视角中心间的第一距离,确定各虚拟模型对应的网格渲染权重;其中,各虚拟模型对应的第一距离与对应的网格渲染权重呈负相关关系,即虚拟模型与虚拟摄像机间的第一距离越近,则虚拟模型对应的网格渲染权重越大。
67.本实施例的技术方案,通过根据虚拟模型对应的网格区域数据与虚拟摄像机的视角数据,确定各虚拟模型与虚拟摄像机的视角中心间的第一距离;根据各第一距离,确定各虚拟模型对应的网格渲染权重;其中,虚拟模型对应的第一距离与对应的网格渲染权重呈负相关关系;如此,通过各虚拟模型与虚拟摄像机的视角中心的距离远近,赋予各虚拟模型对应的网格渲染权重,使得与虚拟摄像机间的第一距离越近的虚拟模型对应的网格渲染权重越大,从而可以基于虚拟模型对应的网格渲染权重,准确确定虚拟模型对应的渲染顺序。
68.在一个实施例中,若存在第一距离相等的至少两个虚拟模型,根据各相对位置信息,确定各虚拟模型对应的网格渲染权重,包括:根据各网格区域数据与位置数据,分别确定第一距离相等的至少两个虚拟模型与虚拟摄像机的拍摄位置间的第二距离;根据各第二距离,分别确定第一距离相等的至少两个虚拟模型对应的网格渲染权重。
69.其中,虚拟摄像机的位姿数据可以为位置数据和姿态数据,该位置数据可以用于确定虚拟摄像机的拍摄位置。
70.其中,第一距离相等的至少两个虚拟模型对应的第二距离与对应的网格渲染权重呈负相关关系。
71.具体实现中,计算机设备在根据各虚拟模型与虚拟摄像机间的相对位置信息,确定虚拟模型对应的网格渲染权重的过程中,若存在与虚拟摄像机的视角中心间的第一距离相等的至少两个虚拟模型,则根据第一距离相等的至少两个虚拟模型对应的网格区域数据,确定上述至少两个虚拟模型在网格化的目标虚拟场景中的网格区域;并根据虚拟摄像机的位置数据,确定摄像机的拍摄位置在网格化的目标虚拟场景中的网格区域;如此,可以根据上述至少两个虚拟模型在网格化的目标虚拟场景中的网格区域,以及摄像机的拍摄位置在网格化的目标虚拟场景中的网格区域,分别确定上述至少两个虚拟模型与虚拟摄像机的拍摄位置间的距离,作为上述至少两个虚拟模型对应的第二距离;并根据各第二距离,分别确定第一距离相等的至少两个虚拟模型对应的网格渲染权重;其中,上述第一距离相等的至少两个虚拟模型对应的第二距离与对应的网格渲染权重呈负相关关系,即当虚拟模型对应的第一距离相等时,虚拟模型与虚拟摄像机间的第二距离越近,则虚拟模型对应的网格渲染权重越大。
72.如此,计算机设备可以确定目标虚拟场景中各虚拟模型对应的网格渲染权重,并根据各虚拟模型对应的网格渲染权重确定一个渲染列表,渲染列表中记载的各网格渲染权重按各虚拟模型对应的网格渲染权重的大小进行排序。
73.本实施例的技术方案,若存在第一距离相等的至少两个虚拟模型,在根据各虚拟模型对应的相对位置信息,确定各虚拟模型对应的网格渲染权重的过程中,通过根据各网格区域数据与位置数据,分别确定第一距离相等的至少两个虚拟模型与虚拟摄像机的拍摄位置间的第二距离;根据各第二距离,分别确定第一距离相等的至少两个虚拟模型对应的
网格渲染权重;如此,当存在与虚拟摄像机间的第一距离相等的至少两个虚拟模型时,可以通过虚拟模型与虚拟摄像机的拍摄位置间的距离远近,赋予第一距离相等的至少两个虚拟模型对应的网格渲染权重,从而可以保障对目标虚拟场景中的各虚拟模型赋予的网格渲染权重为准确的。
74.在一个实施例中,按照各虚拟模型对应的网格渲染权重,对各虚拟模型进行渲染,包括:按照各虚拟模型对应的网格渲染权重,确定各虚拟模型对应的渲染优先级;根据渲染优先级,对各虚拟模型进行渲染。
75.其中,网格渲染权重与渲染优先级呈正相关关系。
76.具体实现中,计算机设备在按照各虚拟模型对应的网格渲染权重,对各虚拟模型进行渲染的过程中,计算机设备可以按照各虚拟模型对应的网格渲染权重,确定各虚拟模型对应的渲染优先级;其中,各虚拟模型对应的网格渲染权重与对应的渲染优先级呈正相关关系,即虚拟模型对应的网格渲染权重越大,则虚拟模型对应的渲染优先级越高;然后,计算机设备可以根据各虚拟模型对应的渲染优先级,确定虚拟模型的渲染顺序,并根据该渲染顺序对各虚拟模型进行渲染,以实现对各虚拟模型的可视化加载,使得对应的网格渲染权重越大的虚拟模型,即与虚拟摄像机间的距离越近的虚拟模型优先渲染加载。
77.实际应用中,在计算机设备根据与网格渲染权重呈正相关关系的渲染优先级,对各虚拟模型进行渲染的过程中;由于虚拟模型对应的网格渲染权重与虚拟模型和虚拟摄像机间的距离呈负相关关系,因此,在对各虚拟模型进行渲染时,可以使得距离虚拟摄像机越近的虚拟模型越优先进行渲染,实现了对与虚拟摄像机存在不同距离的各虚拟模型进行距离由近至远地渲染和加载。
78.本实施例的技术方案,通过按照各虚拟模型对应的网格渲染权重,确定各虚拟模型对应的渲染优先级;根据渲染优先级,对各虚拟模型进行渲染;其中,网格渲染权重与渲染优先级呈正相关关系;如此,由于虚拟模型对应的网格渲染权重与虚拟模型与虚拟摄像机间的距离呈负相关关系,使得距离虚拟摄像机越近的虚拟模型,对应的渲染优先级越高,越优先进行渲染,实现根据与虚拟摄像机间的距离远近,对各虚拟模型由近至远进行渲染,防止对距离虚拟摄像机较远而被遮挡的虚拟模型进行无效渲染,节省了内存消耗,提高了模型渲染效率。
79.在一个实施例中,若存在网格渲染权重相等的至少两个虚拟模型,方法还包括:分别确定网格渲染权重相等的至少两个虚拟模型对应的网格调度层级;根据各网格调度层级,分别确定网格渲染权重相等的至少两个虚拟模型对应的渲染优先级;根据各渲染优先级,对网格渲染权重相等的至少两个虚拟模型进行渲染。
80.其中,网格渲染权重相等的至少两个虚拟模型对应的网格调度层级与对应的渲染优先级呈正相关关系。
81.具体实现中,计算机设备根据各虚拟模型对应的网格渲染权重确定各虚拟模型对应的渲染优先级的过程中,若存在网格渲染权重相等的至少两个虚拟模型,例如若不同模型处于同一网格中,则具有相同的网格渲染权重,则计算机设备可以分别确定上述网格渲染权重相等的至少两个虚拟模型对应的网格调度层级,根据对应的网格调度层级,分别确定上述至少两个虚拟模型对应的渲染优先级;其中,网格渲染权重相等的至少两个虚拟模型对应的网格调度层级与对应的渲染优先级呈正相关关系,即当虚拟模型对应的网格渲染
权重相等时,虚拟模型对应的网格调度层级越高,则对应的渲染优先级越高。
82.实际应用中,计算机设备可以获取网格渲染权重阈值和网格调度层级阈值,若存在对应的网格渲染权重小于上述网格渲染权重阈值,并且对应的网格调度层级小于上述网格调度层级阈值的虚拟模型,则将该虚拟模型剔除出渲染加载列表,不对该虚拟模型进行渲染;其中,网格渲染权重阈值和网格调度层级阈值可以根据计算机设备的性能进行设置,自动调节网格渲染权重阈值参数和网格调度层级阈值参数,从而可以在高性能配置计算机设备和低性能配置计算机设备中进行模型渲染,兼顾了高性能配置计算机设备和低性能配置计算机设备。
83.本实施例的技术方案,若存在网格渲染权重相等的至少两个虚拟模型,则通过分别确定网格渲染权重相等的至少两个虚拟模型对应的网格调度层级;根据各网格调度层级,分别确定网格渲染权重相等的至少两个虚拟模型对应的渲染优先级;根据各渲染优先级,对网格渲染权重相等的至少两个虚拟模型进行渲染;其中,网格渲染权重相等的至少两个虚拟模型对应的网格调度层级与对应的渲染优先级呈正相关关系;如此,在确定根据网格渲染权重确定各虚拟模型对应的渲染优先级的过程中,若存在网格渲染权重相等的至少两个虚拟模型,依然可以根据对应的网格调度层级,确定网格渲染权重相等的至少两个虚拟模型对应的渲染优先级,从而可以更加准确地确定目标虚拟场景中各虚拟模型对应的渲染优先级。
84.在一个实施例中,分别确定网格渲染权重相等的至少两个虚拟模型对应的网格调度层级,包括:分别获取网格渲染权重相等的至少两个虚拟模型对应的几何属性;根据各网格数量,分别确定网格渲染权重相等的至少两个虚拟模型对应的网格调度层级;若存在网格数量相等的至少两个虚拟模型,则根据网格数量相等的至少两个虚拟模型所占据的体积,分别确定网格数量相等的至少两个虚拟模型对应的网格调度层级。
85.其中,几何属性用于确定对应的虚拟模型在目标虚拟场景中所占据的网格数量和体积;实际应用中,该几何属性也可以命名为包围盒属性。
86.其中,网格渲染权重相等的至少两个虚拟模型所占据的网格数量与对应的网格调度层级呈正相关关系。
87.其中,网格数量相等的至少两个虚拟模型所占据的体积与对应的网格调度层级呈正相关关系。
88.具体实现中,计算机设备在分别确定网格渲染权重相等的至少两个虚拟模型对应的网格调度层级过程中,计算机设备可以先分别获取网格渲染权重相等的至少两个虚拟模型对应的包围盒属性,根据该包围盒属性可以确定虚拟模型对应的包围盒,并通过虚拟模型对应的包围盒顶点位置确定在该目标虚拟场景的网格中是否包含对应的虚拟模型,从而可以确定上述至少两个虚拟模型在目标虚拟场景中所占据的网格数量和体积。
89.其中,网格渲染权重相等的至少两个虚拟模型所占据的网格数量与对应的网格调度层级呈正相关关系,根据上述至少两个虚拟模型对应的网格数量,可以分别确定对应的网格调度层级,即虚拟模型所占据的网格数量越大,表明该虚拟模型在视图截面的投影越大,对应的网格调度层级越高。
90.若存在在目标虚拟场景中所占据的网格数量相等的至少两个虚拟模型,则可以根据上述网格数量相等的至少两个虚拟模型在目标虚拟场景中所占据的体积,分别确定对应
的网格调度层级;其中,网格数量相等的至少两个虚拟模型所占据的体积与对应的网格调度层级呈正相关关系,即当虚拟模型在目标虚拟场景中所占据的网格数量相等时,虚拟模型在目标虚拟场景中所占据的体积越大,则对应的网格调度层级越高。
91.实际应用中,用户可以对虚拟模型设置预设的网格调度层级,因此,计算机设备在确定网格渲染权重相等的至少两个虚拟模型对应的网格调度层级过程中,计算机设备需先判断虚拟模型是否有预设的网格调度层级;若网格渲染权重相等的至少两个虚拟模型中,存在有预设的网格调度层级的虚拟模型,则该具有预设的网格调度层级的虚拟模型,所对应的网格调度层级为优先调度层级,即用户设置的预设的网格调度层级为最高层级;若不存在有预设的网格调度层级的虚拟模型,则根据虚拟模型的包围盒属性确定对应的网格调度层级。
92.除此之外,目标虚拟场景中各虚拟模型对应的网格调度层级可以通过网格数据计算设备构建计算,网格数据计算设备可以根据各虚拟模型是否有预设的网格调度层级以及对应的包围盒属性,确定各虚拟模型对应的网格调度层级,即网格数据计算设备先判断各虚拟模型中是否存在有预设的网格调度层级,若是,则将具有预设的网格调度层级的虚拟模型,所对应的网格调度层级确定为优先调度层级;若否,则根据包围盒属性确定虚拟模型在目标虚拟场景中所占据的网格数量,并根据网格数量确定虚拟模型对应的网格调度层级;其中,虚拟模型所占据的网格数量与对应的网格调度层级呈正相关关系;若存在网格数量相等的至少两个虚拟模型,则根据包围盒属性确定虚拟模型在目标虚拟场景中所占据的体积,并根据体积确定虚拟模型对应的网格调度层级;其中,虚拟模型所占据的体积与对应的网格调度层级呈正相关关系;如此,网格数据计算设备可以计算确定目标虚拟场景中各虚拟模型所对应的网格调度层级,并将各虚拟模型所对应的网格调度层级发送至存储于其他存储设备中,如服务器存储设备,在此不做限制。可以理解的是,计算机设备也可以通过上述网格调度层级确定方法,预先计算确定各虚拟模型对应的网格调度层级,并将各虚拟模型对应的网格调度层级存储于本地。
93.因此,计算机设备在分别确定网格渲染权重相等的至少两个虚拟模型对应的网格调度层级过程中,不需要实时计算虚拟模型对应的网格调度层级,可以直接从其他存储设备中获取网格渲染权重相等的至少两个虚拟模型对应的网格调度层级;也可以直接从本地获取上述至少两个虚拟模型对应的网格调度层级;实现了网格调度层级的构建与应用的分离,有利于减少数据计算量,可以提高模型渲染效率。
94.为了便于本领域技术人员,图2提供了一个实施例中的应用场景图。其中,网格数据计算设备202通过网络与存储设备204进行通信;存储设备204通过网络与计算机设备206进行通行。数据存储系统可以存储存储设备204需要处理的数据。数据存储系统可以集成在存储设备204上,也可以放在云上或其他网络服务器上。其中,网格数据计算设备202可以为服务器,也可以是另一计算机设备;存储设备204可以是服务器;计算机设备206可以但不限于是个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备、增强现实和虚拟现实设备等终端;其中,服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
95.如图2所示,网格数据计算设备202用于构建计算各虚拟模型对应的网格区域数据和网格调度层级,并将各虚拟模型对应的网格区域数据和网格调度层级发送至存储设备204,以将网格区域数据和网格调度层级存储至数据存储系统中,从而使得计算机设备206
可以通过存储设备204获取各虚拟模型对应的网格区域数据和网格调度层级。
96.本实施例的技术方案,通过分别获取网格渲染权重相等的至少两个虚拟模型对应的几何属性;其中,几何属性用于确定对应的虚拟模型在目标虚拟场景中所占据的网格数量和体积;根据各网格数量,分别确定网格渲染权重相等的至少两个虚拟模型对应的网格调度层级;其中,网格渲染权重相等的至少两个虚拟模型所占据的网格数量与对应的网格调度层级呈正相关关系;若存在网格数量相等的至少两个虚拟模型,则根据网格数量相等的至少两个虚拟模型所占据的体积,分别确定网格数量相等的至少两个虚拟模型对应的网格调度层级;其中,网格数量相等的至少两个虚拟模型所占据的体积与对应的网格调度层级呈正相关关系;如此,在根据虚拟模型所占据的网格数量确定虚拟模型对应的网格调度层级,以确定虚拟模型对应的渲染优先级的过程中,即使存在网格数量相等的至少两个虚拟模型,依然可以根据虚拟模型所占据的体积大小,确定网格数量相等的至少两个虚拟模型所对应的网格调度层级,实现了在目标虚拟场景中准确确定虚拟模型对应的网格调度层级,从而可以基于网格调度层级准确确定虚拟模型对应的渲染优先级。
97.在另一个实施例中,如图3所示,提供了一种基于虚拟场景网格化的模型渲染方法,以该方法应用于计算机设备为例进行说明,包括以下步骤:步骤s302,获取目标虚拟场景中的至少两个虚拟模型对应的网格区域数据,以及,虚拟摄像机在目标虚拟场景中的位姿数据。步骤s304,根据网格区域数据和位姿数据,确定各虚拟模型与虚拟摄像机的视角中心间的第一距离,以及虚拟模型与虚拟摄像机的拍摄位置间的第二距离。步骤306,根据第一距离以及第二距离,确定各虚拟模型对应的网格渲染权重。步骤s308,获取各虚拟模型对应的网格调度层级,根据网格调度层级和网格渲染权重,确定各虚拟模型对应的渲染优先级。步骤s310,按照各渲染优先级,对各虚拟模型进行渲染。
98.需要说明的是,上述步骤的具体限定可以参见上文对一种基于虚拟场景网格化的模型渲染方法的具体限定。
99.应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
100.基于同样的发明构思,本技术实施例还提供了一种用于实现上述所涉及的基于虚拟场景网格化的模型渲染方法的基于虚拟场景网格化的模型渲染装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个基于虚拟场景网格化的模型渲染装置实施例中的具体限定可以参见上文中对于一种基于虚拟场景网格化的模型渲染方法的限定,在此不再赘述。
101.在一个实施例中,如图4所示,提供了一种基于虚拟场景网格化的模型渲染装置,包括:第一获取模块410、第二获取模块420、确定模块430和渲染模块440,其中:
102.第一获取模块410,用于获取目标虚拟场景中的至少两个虚拟模型对应的网格区域数据;所述网格区域数据用于表征所述虚拟模型在网格化的所述目标虚拟场景中所处的
网格区域。
103.第二获取模块420,用于获取虚拟摄像机在所述目标虚拟场景中的位姿数据,并根据所述网格区域数据和所述位姿数据,确定各所述虚拟模型与所述虚拟摄像机间的相对位置信息。
104.确定模块430,用于根据各所述相对位置信息,确定各所述虚拟模型对应的网格渲染权重。
105.渲染模块440,用于按照各所述虚拟模型对应的网格渲染权重,对各所述虚拟模型进行渲染。
106.在其中一个实施例中,所述位姿数据包括所述虚拟摄像机的视角数据;第二获取模块420,具体用于根据所述网格区域数据与所述视角数据,确定各所述虚拟模型与所述虚拟摄像机的视角中心间的第一距离;所述确定模块430,具体用于根据各所述第一距离,确定各所述虚拟模型对应的网格渲染权重;其中,所述第一距离与所述网格渲染权重呈负相关关系。
107.在其中一个实施例中,所述位姿数据还包括所述虚拟摄像机的位置数据;若存在所述第一距离相等的至少两个虚拟模型,所述确定模块430,具体用于根据各所述网格区域数据与所述位置数据,分别确定所述第一距离相等的至少两个虚拟模型与所述虚拟摄像机的拍摄位置间的第二距离;根据各所述第二距离,分别确定所述第一距离相等的至少两个虚拟模型对应的网格渲染权重;其中,所述第一距离相等的至少两个虚拟模型对应的第二距离与对应的网格渲染权重呈负相关关系。
108.在其中一个实施例中,所述渲染模块440,具体用于按照各所述虚拟模型对应的网格渲染权重,确定各所述虚拟模型对应的渲染优先级;其中,所述网格渲染权重与所述渲染优先级呈正相关关系;根据所述渲染优先级,对各所述虚拟模型进行渲染。
109.在其中一个实施例中,若存在所述网格渲染权重相等的至少两个虚拟模型,所述装置还包括:调度层级确定模块,用于分别确定所述网格渲染权重相等的至少两个虚拟模型对应的网格调度层级;优先级确定模块,用于根据各所述网格调度层级,分别确定所述网格渲染权重相等的至少两个虚拟模型对应的渲染优先级;其中,所述网格渲染权重相等的至少两个虚拟模型对应的网格调度层级与对应的渲染优先级呈正相关关系;渲染子模块,用于根据各所述渲染优先级,对所述网格渲染权重相等的至少两个虚拟模型进行渲染。
110.在其中一个实施例中,所述调度层级确定模块,具体用于分别获取所述网格渲染权重相等的至少两个虚拟模型对应的几何属性;所述几何属性用于确定对应的虚拟模型在所述目标虚拟场景中所占据的网格数量和体积;根据各所述网格数量,分别确定所述网格渲染权重相等的至少两个虚拟模型对应的网格调度层级;其中,所述网格渲染权重相等的至少两个虚拟模型所占据的网格数量与对应的网格调度层级呈正相关关系;若存在所述网格数量相等的至少两个虚拟模型,则根据所述网格数量相等的至少两个虚拟模型所占据的体积,分别确定所述网格数量相等的至少两个虚拟模型对应的网格调度层级;其中,所述网格数量相等的至少两个虚拟模型所占据的体积与对应的网格调度层级呈正相关关系。
111.上述基于虚拟场景网格化的模型渲染装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个
模块对应的操作。
112.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、移动蜂窝网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种基于虚拟场景网格化的模型渲染方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
113.本领域技术人员可以理解,图5中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
114.在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
115.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
116.在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
117.需要说明的是,本技术所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
118.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(reram)、磁变存储器(magnetoresistive random access memory,mram)、铁电存储器(ferroelectric random access memory,fram)、相变存储器(phase change memory,pcm)、石墨烯存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器等。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。本技术所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本技术所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
119.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例
中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
120.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献