The invention relates to a massive model loading method based on the scene resolution of the display window, which belongs to the technical field of computer graphics, including the following steps: S1: obtaining the field of view of the current perspective by using perspective projection method; S2: calculating the minimum resolution: constructing a model's enclosure ball, calculating the model size occupied by a single pixel point is the minimum resolution; S3: loading the model most Small resolution; S4: loading model: including pre-processing stage and real-time loading stage; in the pre-processing stage, the model data block is numbered according to the resolution of the model, and the bounding sphere is constructed according to the lowest resolution model, the model is organized into LOD entity according to the data structure, and then loaded in real time. The model is loaded based on the scene resolution of the display window, and the model scene with different precision is loaded adaptively according to the different scene resolution of the display window.
【技术实现步骤摘要】
一种基于显示窗口的场景分辨率的海量模型加载方法
本专利技术属于计算机图形
,涉及一种基于显示窗口的场景分辨率的海量模型加载方法。
技术介绍
海量模型加载技术一直是三维大场景加载里的热点问题之一。海量模型加载的主要问题是模型加载次序的问题。模型三维场景的实时快速显示是虚拟现实的基础内容,也是关键的核心环节之一,在一般硬件条件下如何实现实时动态显示一直是一个重点研究领域,细节层次模型(levelofdetail,LOD)就是其中的典型代表算法。LOD技术是指物体细节随着改物体与观察者的距离的增加而降低,该算法能通过减少构成物体的多边形面熟从而显著提升渲染速度。在现实世界重人们观察物体时,遵循近大远小的规律,越远的物体其细节程度应当越低,当物体距离人眼达到一定距离时,其在人眼中呈现出的印象可能仅仅是一个点,此时若是采用大量资源去精确描绘该物体的纹理细节显然是不合理的。对于远距离的物体仅仅使用一个点来进行描绘与使用大量资源去精确描绘物体对于观察者来说是没有区别的。LOD算法分为静态LOD和动态LOD,静态LOD为预先构造模型的多级细节层次表示,在加载时根据所需的细节表示进行调用,但由于存放了多个细节层次表示,因此占据了大量的存储空间。动态LOD根据视点的变化实时动态生成细节层次模型,但生成模型带来的时间开销很大,加载效率较低。在每次加载前,我们都动态的更新模型LOD,只加载我们需要的模型。离观察者越远,细节越少,模型越粗糙;离观察者近,细节越多,模型越精确。由于传统动态LOD算法加载模型
【技术保护点】
1.一种基于显示窗口的场景分辨率的海量模型加载方法,其特征在于:包括以下步骤:/nS1:利用透视投影法获取当前视角的视场范围;/nS2:计算最小分辨率:构造一个模型的包围球,计算单个像素点所占的模型大小即为最小分辨率;/nS3:加载模型最小分辨率:建立LOD评价函数,根据模型在原点,视线与模型垂直,视点与模型距离为1的状态计算出来的LOD评价函数值为最小阈值参照,依次按照一定的倍数递增得到若干个阈值,对得到的所有LOD评价函数值进行判断属于哪个阈值区间,并卸载或加载模型对应LOD实体中的高低LOD模型;/nS4:加载模型:包括预处理阶段和实时加载阶段;在预处理阶段对模型数据块根据模型分辨率的高低进行分层编号,并根据最低分辨率模型构造包围球,将模型根据该数据结构组织到LOD实体中,然后进行实时加载。/n
【技术特征摘要】
1.一种基于显示窗口的场景分辨率的海量模型加载方法,其特征在于:包括以下步骤:
S1:利用透视投影法获取当前视角的视场范围;
S2:计算最小分辨率:构造一个模型的包围球,计算单个像素点所占的模型大小即为最小分辨率;
S3:加载模型最小分辨率:建立LOD评价函数,根据模型在原点,视线与模型垂直,视点与模型距离为1的状态计算出来的LOD评价函数值为最小阈值参照,依次按照一定的倍数递增得到若干个阈值,对得到的所有LOD评价函数值进行判断属于哪个阈值区间,并卸载或加载模型对应LOD实体中的高低LOD模型;
S4:加载模型:包括预处理阶段和实时加载阶段;在预处理阶段对模型数据块根据模型分辨率的高低进行分层编号,并根据最低分辨率模型构造包围球,将模型根据该数据结构组织到LOD实体中,然后进行实时加载。
2.根据权利要求1所述的基于显示窗口的场景分辨率的海量模型加载方法,其特征在于:步骤S1具体包括:利用透视投影法获取该当前视角的视场范围,设视点位置为P,视点到该模型最远投影面的垂直距离是D,视场角为α,计算出最远投影面的高度H=2D·tan(α/2),H即为所计算的视场范围。
3.根据权利要求2所述的基于显示窗口的场景分辨率的海量模型加载方法,其特征在于:步骤S2具体包括:
S...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。