基于WebGL三维虚拟博物馆碰撞检测.doc

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于WebGL三维虚拟博物馆碰撞检测

基于WebGL三维虚拟博物馆碰撞检测   摘要摘要:三维虚拟博物馆是通过计算机对现实生活中博物馆的一个模拟,在各大主流浏览器上提供虚拟博物馆漫游功能,让广大用户不必亲临现场就可以在网上身临其境地了解博物馆藏品信息。在分析虚拟博物馆实际应用的基础上,针对虚拟场景中的碰撞检测,提出了一种基于WebGL的适用于虚拟博物馆的碰撞检测算法。算法首先使用XML构建虚拟场景,并通过树的筛选方式对空间进行筛选,然后使用优化的AABB包围盒进行碰撞检测,使用户在使用第一人称漫游博物馆场景时,能与静态物品产生真实的碰撞效果。实验结果表明,该算法的运用可以实时反映连续碰撞效果 关键词关键词:WebGL;虚拟博物馆;碰撞检测;AABB DOIDOI:10.11907/rjdk.171092 中图分类号:TP319 文献标识码:A文章编号文章编号2017 0引言 虚拟现实技术的成熟和网络技术的普及使得3D虚拟博物馆的实现成为可能。3D虚拟博物馆依据现实中的博物馆,利用计算机构建一个虚拟的三维世界,通过网络处理技术将现实博物馆逼真地展现给用户。3D虚拟博物馆的实现不仅打破了传统展馆在时间和空间上的局限性,还为使用者提供了关于听觉和视觉的模拟,让用户能自由地观察三维空间中的展品,给用户一种沉浸式的体验[1] 对于虚拟博物馆,人们关注的是其实时性和真实感,而其真实性和实时感主要体现于第一人称视角在虚拟场景中的使用。要使用户以第一人称漫游场景时能如同在现实世界中浏览场景时一样,碰撞检测成为三维虚拟博物馆系统实现中的重要一环 对于碰撞检测的研究,至今为止已经形成了一个相对完整的体系,网页版虚拟技术实现的“Flash3D”、“Java3D”、“Unity3D”等技术都有自身的一些碰撞检测机制,然而这些技术在网页端的实现都需要安装一些特定的插件,因此存在很大的局限性。而场景模型的针对性、应用领域的专业性和场景要求的特殊性,对碰撞检测的效果提出了不同要求:对于虚拟维修[2],主要追求碰撞检测效率,因而王崴等[3]采用动态分裂平面法加速OBB包??盒构建的过程来进行碰撞检测;对于游戏场景,由于场景模型多且复杂,为了游戏场景的真实性和实时性,刘翼等[3]提出了结合使用空间剖分法和层次包围盒法对其进行检测。WebGL[4]是2010年公开发布的Web端3D绘图标准,它无需安装插件且具有跨平台性[56],因此受到人们的关注,然而对WebGL碰撞检测方面的研究并不是很多,因此亟需寻找一种方法对WebGL进行碰撞检测。本文提出了一种基于AABB包围盒的碰撞检测算法实现在WebGL环境下适用于虚拟现实博物馆进行的碰撞检测 1相关工作 Sang Z,Wang T Y,Zou X X[7]提出了一种适用于数控机床的在线碰撞检测算法。基于数控机床的特点,综合分析了八叉树算法和网格分割的碰撞检测算法优缺点,提出了一种长方体碰撞检测结合分离轴碰撞检测的算法来优化传统机床的碰撞检测算法。该算法准确性好且精度较高,但是效率较低 Hung W H,Kang S C J[8]针对虚拟环境中的仿真施工现场,在2014年提出了一种快速的碰撞检测算法,称为传播聚类方法。该方法采用K均值进行聚类迭代,将对象分为多个组,定义一个质量指标进行结果评估,符合质量要求时,该组对象采用AABB包围盒进行替换,还建立了一个分散对象场景、一个施工现场场景、一个散乱的普通遗址场景进行测试。该算法对虚拟建筑场景快速有效,但是碰撞检测紧密型较差 2015年,王磊[9]提出了一个基于混合型包围盒的碰撞检测方法,称为HBBCD算法。算法首先将待检测物体转化成二叉树,在根节点处构建包围球,上层结构构建AABB包围盒,下层结构构建OBB包围盒。然后在相交测试阶段,使用队列标记已检测的物体,优先遍历深层次节点。王磊[9]将该算法集成到Unity3D中完成了一个基于Web3D的武警总队警史馆系统,该算法很好地满足了碰撞检测的准确性和实时性,但是复杂度高,计算比较麻烦 2016年,郑华和刘家[10]提出了基于WebGL的面向Web的建筑模型碰撞检测算法,先对导入的模型进行拆解,然后将拆解后的子模型进行碰撞检测。该方法运算简单,但运算步骤较多,对规则的类长方体模型有较好的碰撞检测结果,但考虑的情况比较单一 2碰撞检测 碰撞检测是为了提高虚拟场景的真实感而提出的关键技术,其主要目的在于避免模型在运动过程中出现与其它模型发生交叉或者直接穿越的现象,避免用户在使用虚拟场景时产生违和感[1112]。碰撞检测主要分为3个阶段:确认碰撞模型阶段、模型相交测试阶段和碰撞响应阶段。确认碰撞模型阶段就是检测运动物体与静态物体是否发生碰撞,如果发生碰撞

文档评论(0)

docman126 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档