基于OGRE的海量三维模型动态调度技术的研究与实现李雷.docx

上传人:b****6 文档编号:6163971 上传时间:2023-01-04 格式:DOCX 页数:65 大小:52.65KB
下载 相关 举报
基于OGRE的海量三维模型动态调度技术的研究与实现李雷.docx_第1页
第1页 / 共65页
基于OGRE的海量三维模型动态调度技术的研究与实现李雷.docx_第2页
第2页 / 共65页
基于OGRE的海量三维模型动态调度技术的研究与实现李雷.docx_第3页
第3页 / 共65页
基于OGRE的海量三维模型动态调度技术的研究与实现李雷.docx_第4页
第4页 / 共65页
基于OGRE的海量三维模型动态调度技术的研究与实现李雷.docx_第5页
第5页 / 共65页
点击查看更多>>
下载资源
资源描述

基于OGRE的海量三维模型动态调度技术的研究与实现李雷.docx

《基于OGRE的海量三维模型动态调度技术的研究与实现李雷.docx》由会员分享,可在线阅读,更多相关《基于OGRE的海量三维模型动态调度技术的研究与实现李雷.docx(65页珍藏版)》请在冰豆网上搜索。

基于OGRE的海量三维模型动态调度技术的研究与实现李雷.docx

基于OGRE的海量三维模型动态调度技术的研究与实现李雷

基于OGRE的海量三维模型动态调度

技术的研究与实现

全日制工程硕士学位论文

基于OGRE的海量三维模型动态调度技术的研究与实现

李雷

工程领域计算机技术

指导教师欧元汉副教授

论文答辩日期2012.05.27学位授予日期2012.06.28

答辩委员会主席陈友初高级工程师

论文评阅人

喻昕王挺

GRE的海量三维模型动态调度技术的研究与实现

摘要

虚拟现实(VR)是一个新兴的计算机技术,广泛运用于各个行业,为人

们的生活带来了极大的改变和方便。

在运用VR技术的时候,如果遇到大规

模场景,海量的三维模型显示导致计算机的运算速度大大下降,对硬件提

出了极高的要求。

OGRE(Object-OrientedGraphicsRenderingEngine)是一

个面向对象的三维渲染引擎,同时支持Direct3D和OpenGL,主要面向游

戏场景。

但是OGRE中对于海量三维模型的管理能力显得较为不足,不能很好

的实现海量三维模型的动态调度。

OGRE在管理场景的时候,是以资源组

的方式统一加载卸载,不能以单个模型作为加载卸载的单位,这样第一不

能很好的把离开当前窗口的物体从内存卸载掉,第二会把当前区域所有细

节层次的模型数据全部放于内存中,使得内存不堪重负。

所以本论文重点

解决这些问题,首先实现以单个模型为单位的动态加载卸载,并且实现了

预加载,解决了模型“突现”的问题,然后能对离幵窗口的模型进行判断,

过期的模型进行删除,对于采用多个细节层次的情况,没有用到的细节层

次模型也会从内存卸载。

DatabasePager是动态数据库技术,用来缓解内存压力,能够自动加载

卸载需要的数据。

LOD技术能缓解渲染压力。

PagedLOD技术是结合LOD

和DatabasePager技术,能同时缓解渲染和内存的压力。

能够根据距离选择

不同细节层次的模型,然后也能判断出没有用到的细节层次模型和当前窗

口外的模型,通知DatabasePager进行卸载判断。

文重点研究DatabasePager、PagedLOD等动态管理技术,将其实现

到了OGRE当中。

最终实验采用了大量的三维模型,实现了海量三维模型

的动态调度。

关键词:

虚拟现实大规模场景海量三维模型动态调度OGRE

DatabasePagerPagedLOD

ii

ndImplementationOfDynamicSchedulingTechniqueOf

MassiveThree-DimensionalModelsBasedOnOGRE

ABSTRACT

Virtualreality(VR)isanemergingcomputertechnology,widelyusedin

variousindustries,andpeople'sliveschangeddramaticallyandconvenience.If

youencounteralarge-scalescenes,theuseofVRtechnology,themassive

three-dimensionalmodelofthecomputer'sprocessingspeedisgreatlydecreased

andraisedextremedemandsonthehardware.OGRE(Object-OrientedGraphics

Rendering,Engine)isanobject-oriented3Drenderingenginethatsupportsboth

Direct3DandOpenGL,mainlyforthegamescene.

ButOGREmassmanagementcapabilitiesofthree-dimensionalmodelseems

toberatherinadequate,cannotrealizethethree-dimensionalmodelofthe

dynamicschedulingwell.WhenOGREmanagingscene,theresourcegroupis

theloadingandunloadingunit,notasinglemodel,sothatfirstlyitcannot

unloadtheoutsidecurrentwindowobjectsfrommemorywellandsecondlythe

detailsoftheregion-levelmodelofdataisallloadinthememory,makingthe

memoryoverwhelmed.Thisthesisisfocusedonsolvingtheseproblems,first

realizationismakingasinglemodelasthedynamicloadingandunloadingunit,

anditcanpreload.Itsolvedtheproblemof"suddenlyshow".Whenthemodel

leavesthewindow,itcanbejudged,itcanbedeletedwhenitisexpired.Forthe

caseofmultiplelevelsofdetail,thelevelofdetailmodelnotusingwillbe

in

广西大学学位论文原创性和使用授权声明

本人声明所呈交的论文,是本人在导师的指导下独立进行研究所取得

的研究成果。

除已特别加以标注和致谢的地方外,论文不包含任何其他个

人或集体己经发表或撰写的研究成果,也不包含本人或他人为获得广西大

学或其它单位的学位而使用过的材料。

与我一同工作的同事对本论文的研

究工作所做的贡献均已在论文中作了明确说明。

本人在导师指导下所完成的学位论文及相关的职务作品,知识产权归

属广西大学。

本人授权广西大学拥有学位论文的部分使用权,即:

学校有

权保存并向国家有关部门或机构送交学位论文的复印件和电子版,允许论

文被查阅和借阅,可以将学位论文的全部或部分内容编入有关数据库进行

检索和传播,可以采用影印、缩印或其它复制手段保存、汇编学位论文。

本学位论文属于:

口保密,在年解密后适用授权。

密。

(请在以上相应方框内打“V”)

论文作者签名:

曰期:

指导教师签名:

日期

作者联系电话:

电子邮箱:

dfrommemory.

DatabasePagerisadynamicdatabasetechnologywhichusedtoalleviatethe

memorypressure,itcanloadorunloaddataautomatically.LODtechnologycan

easetherenderingpressure.PagedLODtechnologyisacombinationofLOD

andDatabasepager,itcanbothrelievethepressureoftherenderingandmemory.

WithPagedLODtechnology,modelsofdifferentlevelsofdetailcanbeselected

accordingtothedistance,anditcanalsodeterminethelevelofdetailmodels

thatnotusing,themodelsoutsidethewindow,thenitnotifyDatabasePagerto

beginunloadjudgment.

ThispaperfocusesonDatabasePager,PagedLODdynamicmanagement

techniques,appliedtotheOGRE.Thefinaltestusingalargenumberof

three-dimensionalmodels,itcandynamicschedulethemassive

three-dimensionalmodels.

KEYWORDS:

VirtualReality;Large-scalescenes;Massivethree-dimensional

model;Dynamicscheduling;OGRE;DatabasePager;PagedLOD

硕士学位论文

基于OGRE的海量三维模型动态调度技术的研究Lj实现

第一章绪言

虚拟现实(VR)是一个新兴的计算机技术,广泛运用于各个行业,为人们的生活带

来了极大的改变和方便。

它通过计算机的高速计算和存储能力来模拟现实中的场景,具

有高效、便利、低成本等等优点。

在运用VR技术的时候,如果遇到大规模场景,海量

的三维模型显示导致计算机的运算速度大大下降,对硬件提出了极高的要求。

OGRE(Object-OrientedGraphicsRenderingEngine)是一个面向对象的三维值染引

擎,同时支持Direct3D和OpenGL,主要面向游戏场景。

OGRE在文档一致性、资源管

理模式、完善的动画系统以及阴影系统等方面具有一定的优势。

但是OGRE中对于海量三维模型的管理能力显得较为不足,不能很好的实现海量三

维模型的动态调度。

OGRE在管理场景的时候,是以资源组的方式统一加载卸载,不能

以单个模型作为加载卸载的单位,这样第一不能很好的把离开当前窗口的物体从内存卸

载掉,第二会把当前区域所有细节层次的模型数据全部放于内存中,使得内存不堪重负。

所以本论文重点解决这些问题,首先实现以单个模型为单位的动态加载卸载,并且实现

了预加载,解决了模型“突现”的问题,然后能对离幵窗口的模型进行判断,过期的模

型进行删除,对于采用多个细节层次的情况,没有用到的细节层次模型也会从内存卸载。

DatabasePager是动态数据库技术,能够自动加载卸载需要的数据。

PagedLOD技术

是结合LOD和DatabasePager技术,能够根据距离选择不同细节层次的模型,然后也能

判断出没有用到的细节层次模型和当前窗口外的模型,通知DatabasePager进行卸载判

断。

本文重点研究DatabasePager、PagedLOD等动态管理技术,将其实现到OGRE当中。

1■1研究意义

1)城市规划部门的应用需要

城市规划部门在进行规划的同时,希望能用软件来辅助进行规划,尤其是虚拟

现实的软件,虚拟现实技术将很好的把图形、模型显示在计算机上,并且能进行方

便、快速的处理,非常的直观,而且改动起来也非常的方便。

以前人们只能用笔和

1

tabasePager原理

3.1.1DatabasePager动态数据库简介

3.1.2DatabasePager的主要工作

3.1.3DatabasePager中的删除数据的判断原理......

3.1.4DatabasePager的基本结构

3.1.5DatabasePager独立测试程序

3.2动态调度技术在OGRE中的实现

3.2.1准备工作

3.2.2DatabasePager在OGRE里的实现

3.2.3线程在OgreDatabasePager里的实现

3.2.4模型进入场景预加载功能的实现

3.2.5工作原理图

3.2.6核心功能测试程序

第四章基于OGRE的PagedLOD技术的研究与实现

4.1弓丨言

4.2LOD基本原理

4.3PagedLOD基本原理

4.3.1PagedLOD简介

4.3.2PagedLOD类结构

4.3.3PagedLOD用法

4.4PagedLOD技术在OGRE中的实现

4.4.1添加PagedLOD节点

4.4.2PagedLOD中LOD技术的实现

4.4.3PagedLOD与DatabasePager的结合

4.4.4PagedLOD的实现

4.5实验结果对比

第五章总结与展望

参考文献

am

攻读硕士学位期间参加的科研项目

日制工程硕士学位论文

基于OGRE的海量三维模型动态调度技术的研究与实现

纸,画起来不方便,修改起来麻烦,效率也很低下,并且是静态的,不能动态的进

行处理。

在展示的时候不能很直观的展示给客户。

如果用了虚拟现实技术,将能很

好的解决这些问题,能动态的展示规划效果,更加直观,更加詢丽。

如果只用OGRE,

虽然在這染效果和文档一致性上能够发挥OGRE的优点,可惜遇到大场景的时候,

OGRE的处理能力略显不足,无法高效管理海量的三维模型。

如果能弥补OGRE的

这个缺陷,把其他地方现有的动态管理技术运用到OGRE中去,那么将具有重要的

现实意义。

2)三维地图展示与应用的需要

随着计算机的发展,使人们在电脑上观赏和使用三维地图成为可能。

但是三维

地图相比于原始的二维平面地图来说,数据量巨大,普通的计算机无法承载,或许

能装下一个小区,但是一个城市、一个省、一个国家、甚至一个地球的时候将手足

无措。

所以还是需要应用数学方法,提高软件效率来解决此类问题。

OGRE的处理

能力较为不足,只能以资源组的方式统一加载卸载资源,不能以单个模型为加载卸

载的对象,不能很流畅的在巨大的三维场景中漫游,所以要想办法把更加先进的动

态调度技术应用到OGRE当中。

3)游戏开发部门的应用需要

游戏作为新兴产业,自出现起就吸引了全世界的眼球,尤其是青少年,它的娱

乐性、直观性、高效性、方便性让人欲罢不能,逐渐成为人们的主要娱乐休闲活动。

OGRE引擎对于游戏的幵发还是非常有用的,有很多游戏中会用到的实用技术。

是游戏不乏有大型场景,比如说模拟飞行游戏,驾驶飞机在高空飞行的时候,视野

是很幵阔的,如果用OGRE,显示不了视野内的全部场景,你将会看到地图的边界,

这非常影响视觉效果,并且会把场景中所有细节层次的模型全都加载进内存。

如果

能把先进的动态管理技术运用到OGRE当中来,既能处理海量模型,又能发挥OGRE

针对游戏的长处,将具有很重要的现实意义。

4)电子竞技运动项目的需要

来源于电脑游戏而又高于游戏的电子竞技运动,是新时代产生的一种新兴的体

2

程硕士学位论文

基于OGRE的海量三维模型动态调度技术的研究与实现

育运动,已经被国家体育局列为第99个运动项目,孕育而生一系列的电子竞技比赛、

联赛,专业的电子竞技运动员等等。

这种运动主要是通过电脑软件硬件来进行比赛,

尤其是虚拟现实的软件,比如虚拟足球比赛、虚拟赛车比赛,运动员通过操作电脑

来模拟进行踢球、赛车等等,相对于传统的体育项目来说,电子竞技更强调智慧、

思维、心里素质等能力。

OGRE比较适合开发电子竞技项目的软件,如果能提升

OGRE处理大场景的能力,将更好的提高这类软件的效率。

5)动画制作部门的应用需要

各种经典的3D动画深深地感动着每一个欣赏中的观众。

计算机的出现让动画制

作显得方便了很多,以前的动画是画师一笔一笔的画,效率非常低下,计算机的快

速处理能力能产生连续的动作效果,能只用构建场景一次就能多次多角度使用。

大场景对计算机的硬件要求比较高,毕竟硬件的处理能力是有限的,如果能用软件

思想来解决大场景的管理,解决海量三维模型的动态调度,显得更加有意义。

1.2选题依据

目前计算机图形技术被广泛用于各个领域,给工业生产、城市规划、游戏动画等等

带来了极大的方便,近几年的高速发展使越来越多的人感受到虚拟现实的魅力。

OGRE

作为一个JT?

放图形引擎为开发工作者提供了很多帮助,被应用做出各种优美、华丽的场

景,OGRE尤其在场景值染和文档一致性方面具有很大的优势,并且能支持OpenGL或

者DirectX。

但是,OGRE在处理海量三维模型时,在处理大场景时,劣势突显出来。

OGRE不

能很有效的管理超大场景,通常只能一次性的把全部数据加载进来,所有细节层次的模

型都加载进内存,无法进行动态管理,这对计算机的处理能力提出了极高的要求。

如果

能把别的引擎、别的地方的动态管理技术应用到OGRE中,那么将具有很大的优势。

1.3国内外发展现状

1976年,Clark和他的研究小组第一个提出了levelofdetail(LOD)模型概念。

这个

关于LOD的基本想法是当物体只覆盖很小区域的屏幕时,可以使用比较粗糖的物体模

3

目录

m^I

ABSTRACTIll

第一章mm1

1.1研究意义1

1.2选题依据3

1.3国内外发展现状

3

1.4研究思路4

1.5研究内容和论文结构

5

1.5.1研究内容5

1.5.2论文结构5

1.6应用程序幵发的软硬件环境

6

第二章虚拟现实以及相关引擎

7

2.1虚拟现实简介

7

2.1.1概念和由来

7

2.1.2基本特征和构成

7

2.1.3如何开发一个VR应用

8

2.1.4场景和对象

8

2.1.5行为动作8

2.1.6交互9

2.1.7雜9

2.2OGRE三维引擎简介

9

2.2.1OGRE环境搭建

9

2.2.2OGRE场景结构

10

2.2.3OGRE运行时的启动流程

11

2.2.4OGRE的资源管理模式

11

2.3OSG三维引擎简介

12

2.3.1OSG的代码结构

12

2.3.2OSG的场景结构

12

2.3.3OSG中关于动态调度的功能

13

2.3.4OSG的资源管理模式

13

第三章基于OGRE的DatabasePager技术的研究与实现

14

V

硕士学位论文

基于OGRE的海量三维模型动态调度技术的研究与实现

中,在OGRE中实现海量三维模型的动态管理。

这其中还要对OGRE引擎进行深入学

习,了解其中的机制和原理,这样才能运用自如,才能将这些技术很好的应用到OGRE

中。

1.5研究内容和论文结构

1.5.1研究内容

管理海量三维模型是当前虚拟现实研究的热点,有很多实用的技术。

在总结和了解

有关论文和成果的基础上,着重研究一下几个方面:

(1)DatabasePager技术

DatabasePager动态数据库技术是OSG中动态调度技术的核心,能够对数据进行有效

的管理,对不用的数据进行必要的卸载。

本论文重点研究如何把DatabasePager的原理

运用到OGRE环境中。

(2)LOD技术

LOD技术可以概括为物体在远处和近处可以采用不同的细节层次。

(3)PagedLOD技术

所有的模型都按照统一的方式管理,这不是一个明智的选择。

PagedLOD技术运用分

页管理大大的提高了运行效率。

本论文研究如何把PagedLOD技术应用到OGRE环境当

中。

(4)OGRE环境极其应用

OGRE是一个幵放的3D图形引擎,具有很多优点。

本文研究如何把动态管理的先

进技术应用到OGRE环境当中。

1.5.2论文结构

本文共分为五章,具体编排如下:

第一章是绪言,介绍选题依据、研究意义等内容。

第二章是虚拟现实简介,介绍虚拟现实的发展概况和各种特点,并简单介绍了三维

引擎OGRE和OSG。

第三章是基于OGRE的DatabasePager技术的研究与实现,DatabasePager的技术原

5

日制工程硕士学位论文

基于OGRE的海量三维模型动态调度技术的研究与实现

型[2]。

通俗的讲就是如果离观察者近,就调用精细的模型,如果离观察者远,就调用粗

糙的模型。

在文献[1]中,作者写道LOD细节层次技术是对同一个物体在不同的时间带来不同的

表现的实践,当物体距离远时调用低层次细节表现,当距离观察者近时调用高层次细节

表现。

LOD转换使分离的物体的模拟变的非常简单,因为整个物体能被瞬间替换,地形

的LOD转换还是有很多问题的,因为地形需要表现一个连续的景象,表面不能有断痕,

需要大量不同的细节在这个表面上,距离观察者近的地面是高细节层次的,远离观察者

的地面是低细节层次的。

建筑的LOD转换同样是个障碍,因为会有突变的现象,这会降

低虚拟体验。

为了解决这个问题,同样的建筑模型需要创建不同的细节版本或者用交融

方法去解决突变的问题。

在文献[2]中,作者写道由于大量的模型不能同时被转进内存,所以需要仿照电脑操

作系统分页存储空间的方法来进行分页调度,我们把它叫做PagedLOD分页形式管理。

通俗讲就是只调用用户能看见的区域和将可能看见的区域,也就是可见区域和预可见区

域,不可见区域暂时不调用。

OSG三维引擎提供的DatabasePager动态数据库技术能够实现海量地形数据的动态

调度。

DatabasePager是实现PagedLOD分页调度的关键,为进入视野的数据添加请求,

长期不使用的数据送入删除队列,需要预编译的数据还能提前进行预编译。

DatabasePager能对不在视野内的数据进行卸载,并且有时PagedLOD节点虽然在视野

内,但是显示的只是一个细节层次的模型,其他细节层次的子节点数据长期不使用,

DatabasePager也能对其进行卸载。

在处理海量模型数据和海量地形的大场景时非常有

效。

在DatabasePager的类中内置了相关的线程,通过不断的循环对数据进行加载卸载。

并且判断过期节点有两种方法,一是超过数量模式,设定一个目标的PagedLOD节点数

量,未达到数量的话不会进行删除,超过数量再进行判断;二是过期模式,在这种模式

下,PagedLOD的细节层次子节点超过设定的时间没使用,就会进行卸载。

1.4研究思路

在现有的软硬件环境基础上,先学习掌握更为先进的动态管理技术,比如LOD、

PagedLOD、DatabasePager等,研究他们动态调度海量三维模型的实现方法和原理。

后建立OGRE环境,载入超大场景和海量三维模型,把这些技术实现到OGRE环境当

4

丨:

j制工程硕士学位论文

基于OGRE的海量三维模型动态调度技术的研究与实现

理以及在OGRE中的实现。

第四章是基于OGRE的PagedLOD技术的研究与实现,PagedLOD的技术原理以及

在OGRE中的实现。

第五章是总结与展望,说明本文的工作、创新点、以及以后的工作。

1.6应用程序开发的软硬件环境

本人用C/C++

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 表格模板 > 合同协议

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1