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

一种基于三维场景显示的控制方法与流程

2022-02-25 23:56:29 来源:中国专利 TAG:


1.本发明涉及一种基于三维场景显示的控制方法。


背景技术:

2.当前3d场景在游戏、地图等的应用变得越来越普遍,为了流畅的运行游戏或者地图,对计算机硬件水平要求较高,特别是对显卡的要求,但是相应的用户群体具备的电脑硬件是参差不齐的,为了能够适应更多的用户群体流畅的加载3d场景,合理的设计场景加载的方法十分重要。
3.传统的场景加载根据主相机(即用户视角)的视觉位置的变化,通过计算机计算确定需要加载的资源到显存,将不需要显示的资源从显存中删除,计算机根据显存的信息在显示器显示相应的图形。由于视觉位置的不断改变,计算机需要频繁的执行大量的计算,使得需要占用大量的内存和显存空间的数据传输,影响显示的效率,而且需要不同显示区域的频繁切换,显示速度较慢,还容易出现卡帧、掉帧,用户体验不佳。为了解决上述问题,通常采用以下两种方法:方法1、对场景进行分块,根据主相机位置显示相应区块的模型,隐藏其他区块的模型,这种方法减少了计算机的计算量,但隐藏区块的图像计算机不显示导致显示效果不佳。
4.方法2、全场景加载,根据模型距离主相机的位置和重要度进行lod(多细节层次)处理,降低模型的面数,从而获得高效率的渲染运算,该方法的渲染效果较方法1要好,但运算量较方法1仍然较大,运行时仍然容易出现卡帧、掉帧现象。


技术实现要素:

5.基于此,本发明提供一种三维场景显示的控制方法,能够快速切换场景的同时,提高显示效果。
6.为实现上述目的,发明采用如下的技术方案:一种基于三维场景显示的控制方法,其特征在于:构成所述场景的边界为矩形,包括以下步骤:步骤1:将场景等分为n个区块,n为自然数;步骤2:将每个所述区块分别等分为9个区域,建立每个区域、区块模块、全景视图的对应关系;并存储在数据库中;所述区块模型包括该区块的地形和位于该地形上的物体模型;步骤3:根据主相机视觉位置所处区块的所述区域,从数据库中确定与该区域所对应的区块模型和全景视图;步骤4:显示所述确定的区块模型和全景视图。
7.在本发明的一技术方案中,所述步骤2具体包括:步骤2.1:将每个所述区块分别等分为9个区域,该区域包括中心区域、边界区域和
交点区域;步骤2.2:在每个所述区块中分别设置位于该区块中心区域、边界区域和交点区域的全景相机,分别渲染对应的全景视图;所述全景视图包括对应于所述中心区域的中心视图、对应于所述边界区域的边界视图和对应于所述交点区域的交点视图;建立每个所述区块的中心区域、边界区域、交点区域与相应的区块模型、全景视图的对应关系,并存储在数据库中。
8.在本发明的一技术方案中,所述步骤2.2具体包括以下步骤:步骤2.2.1:渲染每个所述区块的所述中心视图;具体包括以下步骤:1)设置位于每个所述区块中心区域的全景相机,该全景相机优选设置为位于所述区块的中心位置上,所述中心位置指该区块形心位置的竖直高度上,该中心区域全景相机的竖直高度设置为处于其所属区块的边界线所形成的表面的最高高度以上的任意高度;2)渲染中心视图:依次将每个所述区块的区块模型隐藏,利用位于该隐藏区块的中心区域的全景相机渲染出该区块的全景视图,该全景视图即为中心视图;3)将中心区域与隐藏的所述区块模型、相应的中心视图关联,并存储;步骤2.2.2:渲染边界视图;具体包括以下步骤:1)设置位于边界区域的全景相机,该全景相机优选的设置在每个区块边界中点的竖直高度上;该边界区域全景相机的竖直高度设置为处于该边界所属区块的地形最高点以上的任意高度;2)渲染边界视图:依次将边界所属区块的区块模型隐藏,利用位于该边界上的全景相机渲染出相应的全景视图并存储备用;该全景视图即为边界视图;3)将边界区域与隐藏的区块模型、相应的边界视图关联,并存储;步骤2.2.3:渲染交点视图;具体步骤如下:1)设置交点区域的全景相机,该全景相机优选的位于交点位置,所述交点位置是两条或两条以上边界的交点;该交点区域全景相机的竖直高度设置为处于该交点所属区块的地形最高点以上的任意高度;2)渲染交点视图:依次将交点所属区块的区块模型隐藏,利用位于该交点的全景相机渲染出全景视图并存储备用;该全景视图即为交点视图;3)将所述交点区域、隐藏的区块模型与相应的所述交点视图关联,并存储。
9.在本发明的一技术方案中,所述步骤3具体包括:步骤3.1:当主相机位于所述中心区域时,则显示该区块的区块模型,其他区块模型不显示;同时,显示与所述中心区域、显示的所述区块模型对应的中心视图,其他全景视图不显示;步骤3.2:当主相机位于边界区域时,则显示共有该边界的区块的区块模型,其他区块模型不显示;同时显示与所述边界区域、显示的所述共有该边界的区块的区块模型所对应的边界视图,其他全景视图不显示;步骤3.3:当主相机位于交点区域时,则显示共有该交点的所有区块的区块模型,其他区块模型不显示;同时显示与该交点区域、显示的所述共有该交点的所有区块的区块模型所对应的交点视图,其他全景视图不显示。
10.有益技术效果
本发明采用区块模型结合全景视图的显示方式,将场景等分为多个区块,将每个区块等分为9个区域,在每个区域中布置一个全景相机,分别渲染相应的全景视图,建立每个区域、区块模块、全景视图的对应关系;根据主相机视觉位置所处的区块和在区块中的区域,根据上述对应关系确定所需显示的区块模型和全景视图。本发明通过显示视觉位置的区块模型,其他区块模型不显示,减少了对计算机硬件的要求,提高了渲染运算的效率,而且通过全景视图配合区块模型显示方式,保证了显示效果,优化了用户的视觉体验。
附图说明
11.图1为场景划分区块后局部的俯视图;图2为渲染中心视图示意图;图3为渲染边界视图示意图;图4为渲染交点视图示意图;图5(a)为现有技术场景显示图;图5(b)为本发明实施例得到的场景显示图。
具体实施方式
12.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施方式,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。
13.一种三维场景显示的控制方法,场景是矩形场景,包括以下步骤:步骤1:将场景等分为n个区块,n为自然数;步骤2:将每个所述区块分别等分为9个区域,建立每个区域、区块模块、全景视图的对应关系;并存储在数据库中;所述区块模型包括该区块的地形和位于该地形上的物体模型;步骤3:根据主相机视觉位置所处区块的所述区域,从数据库中确定与该区域所对应的区块模型和全景视图;步骤4:显示所述确定的区块模型和全景视图。
14.如图1中所示,步骤1中将矩形场景划分为n个区块;步骤2中,步骤2.1:将每个区块分别划分为9个区域,如图1中所示,分别为中心区域

、边界区域

和交点区域

;步骤2.2:在每个区块中分别设置位于中心区域

、边界区域

和交点区域

的全景相机,分别渲染全景视图;所述全景视图包括对应于所述中心区域的中心视图、对应于所述边界区域的边界视图、对应于所述交点区域的交点视图;步骤2.3:建立每个区块的中心区域

、边界区域

、交点区域

与相应的区块模型、全景视图的对应关系,并存储在数据中。
15.在本发明的一具体实施例中,步骤2.2中具体包括:步骤2.2.1:渲染中心视图;具体包括以下步骤:1)设置位于每个区块的中心区域

的全景相机,该全景相机a(如图2中所示)优选设置为位于区块中心位置上,如图1中所示符号
ꢀ“ꢀ”
所处位置;所述中心位置位于该区
块形心位置的竖直高度上,全景相机a距所述形心位置的竖直高度设置为处于其所属区块的边界线所形成的表面的最高高度以上的任意高度;2)渲染中心视图:依次将每个所述区块的区块模型隐藏,利用位于该隐藏区块的中心区域的全景相机渲染出对应该区块的区块模型的全景视图,该全景视图即为中心视图,如图2所示;3)将中心区域与隐藏的所述区块模型、对应的中心视图关联,并存储。
16.如图2中所示,以区块1为例,渲染区块1的中心视图时,设置位于区块1中心区域的全景相机a,将区块1的区块模型隐藏,利用全景相机a渲染出全景视图,该全景视图对应于区块1的中心区域

、区块1的区块模型,并进行存储;利用位于每个区块中心区域的全景相机进行如此操作。
17.步骤2.2.2:渲染边界视图;具体包括以下步骤:1)设置位于边界区域的全景相机,该全景相机优选的设置在每个区块边界中点的竖直高度上;如图1中所示符号
“▲”
所处位置,该边界区域全景相机的竖直高度设置为处于该边界所属区块的地形最高点以上的任意高度;2)渲染边界视图:依次将边界所属区块的区块模型隐藏,利用位于该边界上的全景相机渲染出相应的全景视图,如图3所示,并存储备用;该全景视图即为边界视图,与边界区域、该隐藏的区块模型一一对应;3)将边界区域与隐藏的区块模型、相应的边界视图关联,并存储。
18.如图3中所示,以区块1为例,渲染其中一个边界视图时,设置位于区块1其中边界中点的全景相机b,将该边界所属的区块1和区块2的区块模型均隐藏,利用该边界上的全景相机b渲染出全景视图,该全景视图对应于区块1具有该边界的边界区域、区块1和区块2的区块模型;同理,该全景视图也对应于区块2具有该边界的边界区域、区块1和区块2的区块模型,进行存储;利用每个位于边界区域的相机进行如此操作。
19.步骤2.2.3:渲染交点视图;具体步骤如下:1)设置交点区域的全景相机,该全景相机优选的位于交点位置的竖直高度上,所述交点位置是两条或两条以上边界的交点;如图1中所示符号
“●”
所处位置,该全景相机的竖直高度设置为处于该交点所属区块的地形最高点以上的任意高度;2)渲染交点视图:依次将交点所属区块的区块模型隐藏,利用位于该交点的全景相机渲染出全景视图,如图4所示,并存储备用;该全景视图即为交点视图,与交点区域、该隐藏的区块模型一一对应;3)将所述交点区域、隐藏的区块模型与相应的所述交点视图关联,并存储。
20.如图4中所示,以区块1为例,渲染其中一个交点视图时,设置位于图4中所示交点上的全景相机c,将该交点所属的区块1-4的区块模型均隐藏,利用位于交点的全景相机c渲染出全景视图,该全景视图对应于区块1-4具有该交点的交点区域、区块1-4的区块模型,进行存储;利用每个位于交点位置的相机进行如此操作。
21.在场景的边界区块中,利用位于组成场景边界的边界上的全景相机或是该边界形成的交点上的全景相机,将对应的边界模块进行隐藏,分别利用上述全景相机得到对应于该边界区块的边界区域或是交点区域、区块模型的全景视图;边界区域是构成场景边界的边界区域,交点区域指具有构成场景边界形成的交点的交点区域。其中,边界区块是指组成
该区块的边界中至少有一条边界是场景的边界的区块。
22.在本发明的一具体实施例中,所述步骤3根据主相机视觉位置所处区块的所述区域,从数据库中确定与该区域所对应的区块模型和全景视图;具体包括:步骤3.1:当主相机位于所述中心区域时,读取数据库中对应于该中心区域的区块模型和全景视图,具体的,显示该区块的区块模型,其他区块模型不显示;同时,显示与该所述中心区域、所述区块模型对应的中心视图,其他全景视图不显示;如图2中所示,当主相机视觉位置位于区块1中的中心区域

时,同时显示区块1的区块模型、全景相机a渲染得到的中心视图。
23.步骤3.2:当主相机位于边界区域时,读取数据库中对应于该边界区域的区块模型和全景视图,具体的,显示具有该边界的区块的区块模型,其他区块模型不显示;同时显示与所述边界区域、所述具有该边界的区块的区块模型所对应的边界视图,其他全景视图不显示;如图3中所示,当主相机视觉位置位于区块1或区块2具有全景相机b的边界区域时,同时显示区块1和区块2的区块模型、全景相机b渲染得到的边界视图。
24.步骤3.3:当主相机位于交点区域时,读取数据库中对应于该交点区域的区块模型和全景视图,具体的,显示共有该交点的所有区块的区块模型,其他区块模型不显示;同时显示与该交点区域、所述共有该交点的所有区块的区块模型所对应的交点视图,其他全景视图不显示;如图4中所示,当主相机视觉位置位于区块1-4任一区块中具有全景相机c的交点区域时,同时显示区块1-4的区块模型、全景相机c渲染得到的交点视图。
25.图5(a)所示为现有技术场景显示图、图5(b) 所示为本发明实施例得到的场景显示图。从两图对比可明显看出,采用区块模型结合全景视图的方式,可明显提高显示效果,改善用户视觉体验。
26.以上所述实施方式仅表达了本发明的实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附的权利要求书为准。
再多了解一些

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

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

相关文献