77范文网 - 专业文章范例文档资料分享平台

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

来源:网络收集 时间:2019-06-11 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

virtual void removeExpiredSubgraphs(const 只是作出选择,由哪种方式进行删除

osg::FrameStamp &frameStamp)

virtual void 超过数量删除模式

capped_removeExpiredSubgraphs(const

osg::FrameStamp &frameStamp)

virtual void

过期删除模式

expiry_removeExpiredSubgraphs(const

osg::FrameStamp &frameStamp)

osg::ref_ptr 文件需求队列 19

丨-:!制工程硕士学位论文 基于OGRE的海量三维模型动态调度技术的研究与实现

fileRequestQueue;

osg::ref_ptr 待合并数据列表

dataToMergeList;

double expiry Delay;

过期延迟(过期时间)

int expiryFrames; 过期喊数

表3-3 DatabasePager中与PagedLOD相关的部分

Table 3-3 DatabasePager In Part With PagedLOD

virtual void registerPagedLODs(

在一个子图中寻找所有 PagedLOD 节点,

osgxNode* subgraph, int frameNumber = 0) 并且用 DatabasePager 注册它们,所以它

能追踪到过期的节点 注意,必须从更新线程里调用

void setT^etMaximumNumberOfPageLOD( 设定/奔询数据线程可同时调度的分页 unsigned int target)

LOD 节点的数目

{ _targetMaximumNumberOfPageLOD = target;} 注意,如果超过目标数,多余的活动 .. PagedLOD将会终止。但是一且低于0标

erOfPageLODO const数目’?卿dLOD将会继续加賴0标值

{ return taj^etMaximumNumbcrOfPageLOD; }

★ virtual void updateSceneGraph( 更新场景图

忍nst osg::FrameStainp& frameStamp)

{ reTnoveExpiredSubgraphs(frameStanip); 、 . 、一、..

addLoadedDataToSceneGraph(franieStamp); }〗、移除过期子树 2、添加取数据到场 m

typedef std::list

PagedLOD 节点列表,列表类型

< osg::ref ptr> PagedLODList

class MarlcPagedLODsVisitor 标记 PagedLOD 的访问器

class FindPagedLODsVisitor

寻找 PagedLOD 的访问器

friend class FindPagedLODsVisitor

virtual void removeExpiredSubgraphs( 移除过期子图

constosg::FrameStamp &frameStamp) 注意,只能在更新线程中调用

PagedLODList activePagedLODList

活动/不活动的 PagedLOD 节点列表

PagedLODList inactivePagedLODLi st

unsigned int targetMaximumNumberOfPageLOD PagedLOD 的目标最大数量

3.1.5 DatabasePager独立测试程序

为了将动态数据库DatabasePager运用到OGRE当中,首先要独立使用DatabasePager

来进行前期的测试,看看需要什么参数和返回值。自己编写的独立测试程序

DynamicManage 1完成了这个功能,用自己写的main函数来直接使用DatabasePager的

对象,没有场景树,没有這染环境等其他无关的东西,只有与动态数据库相关的部分。

这样就先掌握了 DatabasePager的参数、返回值、使用方法等原理,后面才能很好的运

用到OGRE当中去。由于使用中会用到帕的概念,所以该程序手动设置第一巾贞、第二中贞

等等,共设置了五顿,本论文仍然用PagedLOD节点为例来进行说明。 20

程硕士学位论文 基于OGRE的海量三维模型动态调度技术的研究与实现

中贞 PagedLOD DatabasePager

声明喊标记 声明分页 声明DatabasePager

指针 节点 对象指针 准 P 备 i |K>.

creat ()生成 : 添加子节

点信息 7

_声明数据库

需求指针

丁- T

V — —---

设为第一桢 设定容量,时

间延迟’帧延 迟 ; ,

? 添加文件请

用 f 阶 m

加入活动 & 分页节点 “I~

S — T图

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库基于OGRE的海量三维模型动态调度技术的研究与实现 - 李雷(8)在线全文阅读。

基于OGRE的海量三维模型动态调度技术的研究与实现 - 李雷(8).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/655749.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: