《基于网页的虚拟现实及其关键技术.pptx》由会员分享,可在线阅读,更多相关《基于网页的虚拟现实及其关键技术.pptx(44页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第 二二 章章 基于网页的虚拟现实基于网页的虚拟现实(WebVR)及其关键技术及其关键技术主讲教师:贾金原主讲教师:贾金原助助 教:杨寒冰教:杨寒冰 联系方式:联系方式:13816142387,13816142387,QQ:605360422QQ:605360422 email email:同济大学软件学院同济大学软件学院 图形图像研究中心图形图像研究中心2.1 基于网页的虚拟现实(基于网页的虚拟现实(WebVR)简介)简介2.2 现有现有WebVR技术现状技术现状2.3 WebVR的关键技术的关键技术2.4 VRML/X3D技术简介技术简介2.5 WebVR的轻量化建模技术的轻量化建模技术
2、2.6 WebVR的光影效果增强的光影效果增强2.7 WebVR的轻量化脚本编程技术的轻量化脚本编程技术2.8 WebVR场景的渐进式下载机制场景的渐进式下载机制2.9 WebVR的前景展望与机遇的前景展望与机遇提提 纲纲2.1 2.1 WebVR系统开发系统开发VRMLVRML篇篇VRML是第二代是第二代Web语言的基础语言的基础以网页为中心的模式转换到一个令人激动的三维世界以网页为中心的模式转换到一个令人激动的三维世界1997年,年,VRML被被ISO和国际电子工业协会和国际电子工业协会IEC定为国际标准,定为国际标准,简称简称VRML97特点特点文本格式编码,文件小,压缩比高文本格式编码
3、,文件小,压缩比高Vrmlscript脚本语言简单、易用脚本语言简单、易用最直观的面向对象编程思想最直观的面向对象编程思想开源、良性可持续发展、资源丰富开源、良性可持续发展、资源丰富开发效率高、周期短、开发成本低开发效率高、周期短、开发成本低2.1 WebVR系统开发系统开发X3D篇篇X3D(Extensible 3D Specification)基于基于XML的的VRML有机扩展,有机扩展,2003年,年,ISO又制定了又制定了X3D作为作为新的新的Web3D国际标准国际标准特点特点基于基于XML的编码格式的编码格式更易于网页集成,更易于与下一代更易于网页集成,更易于与下一代Web Serv
4、ices技术有机融合技术有机融合基于组件的结构基于组件的结构使之具有更好的兼容性与可扩展性使之具有更好的兼容性与可扩展性轻量化的内核轻量化的内核硬件上,适用于图形工作站、硬件上,适用于图形工作站、PC机、机、PDA、数字机顶盒、手机等、数字机顶盒、手机等软件上,美国著名的海军研究院(软件上,美国著名的海军研究院(Navy Postgraduate School,NPS)拟拟将将X3D技术应用与技术应用与NPSNET-V中中2.2 WebVR的若干关键技术的若干关键技术轻量化的虚拟场景建模技术轻量化的虚拟场景建模技术轻量化轻量化的的WebVR互动程序设计技术互动程序设计技术轻量化的轻量化的Web
5、VR引擎引擎大规模大规模WebVR虚拟场景的快速下载机制虚拟场景的快速下载机制高效的高效的WebVR的体系支撑架构的体系支撑架构面向面向WebVR的软件工程的软件工程方法方法2.3 2.3 目前主流目前主流WebVR浏览器浏览器(引擎引擎)的比较:的比较:VRMLVRPPV3DUnity3DQuest3DVirtools效果效果性能性能可交互性可交互性场景压缩比场景压缩比引擎轻量性引擎轻量性可编程性可编程性2.4 WebVR引擎的初步分析引擎的初步分析对于对于小小规模规模WebVR场景,要求场景,要求较强的网页级互动性较强的网页级互动性,即时响应的浏览速度即时响应的浏览速度,建议采用免插件安装
6、的,建议采用免插件安装的P(aperVision)3D技术最合适。技术最合适。对于对于中中规模规模WebVR场景,要求场景,要求较强的网页级互动性较强的网页级互动性,较频繁的场景更新较频繁的场景更新,较高的文件压缩比较高的文件压缩比,建议采用,建议采用VRML/X3D技术较为合适。技术较为合适。对于对于大大规模虚拟场景,要求规模虚拟场景,要求较强的网页级互动性较强的网页级互动性,重,重复访问频率低(往往是复访问频率低(往往是一次性的访问一次性的访问),对于),对于文件压文件压缩比和引擎大小缩比和引擎大小的要求较高,建议采用的要求较高,建议采用U3D技术较为合技术较为合适。适。2.4 2.4 目
7、前目前VRML应用中存在的误区应用中存在的误区过分依赖压缩比,不考虑模型的数据量与制作方法的联系过分依赖压缩比,不考虑模型的数据量与制作方法的联系轻量化模型制作的重要性轻量化模型制作的重要性光影效果表现差强人意光影效果表现差强人意对对VRML的理解不深入,缺乏面向对象编程思路的理解不深入,缺乏面向对象编程思路对许多的扩展节点缺乏了解与深入认研究对许多的扩展节点缺乏了解与深入认研究VRML效率低,缺乏面向效率低,缺乏面向VRML的高效图形算法的高效图形算法表现手法单一,缺少与多媒体的有机结合表现手法单一,缺少与多媒体的有机结合仅注重单纯的浏览漫游,缺乏软件工程体系思想,无后台,仅注重单纯的浏览漫
8、游,缺乏软件工程体系思想,无后台,无数据库,无通讯无数据库,无通讯漫游模式单调,几乎完全依赖浏览器所提供的几种漫游模漫游模式单调,几乎完全依赖浏览器所提供的几种漫游模式式我们的对策以及我们的对策以及 开发开发WebVR的技术路线的技术路线WebVR的轻量化建模的轻量化建模静态虚拟场景的轻量化建模静态虚拟场景的轻量化建模动态虚拟场景的轻量化建模动态虚拟场景的轻量化建模WebVR的轻量化虚拟互动程序设计的轻量化虚拟互动程序设计尽量减小尽量减小VRML/X3D的程序代码量的程序代码量提高提高VRML/X3D代码的运行效率代码的运行效率WebVR的后台体系架构的后台体系架构数据库、数据库、J2EE、A
9、jax、SOA等的集成等的集成面向面向WebVR的软件工程的软件工程参照游戏与参照游戏与GIS的软件工程思想与模式的软件工程思想与模式2.5 WebVR的轻量化建模技术的轻量化建模技术原则原则尽可能地减少模型的三角网格面片数量尽可能地减少模型的三角网格面片数量尽可能地缩小贴图的尺寸尽可能地缩小贴图的尺寸大小大小尽可能地重复使用纹理尽可能地重复使用纹理材质材质贴图贴图单体模型的重用单体模型的重用尽量保证几何精度与光影效果尽量保证几何精度与光影效果影响建模精度的几个因素影响建模精度的几个因素画面表现度画面表现度重用度重用度交互度交互度2.5 WebVR的轻量化建模实例的轻量化建模实例静态轻量化建模
10、的实例静态轻量化建模的实例虚拟校园虚拟校园虚拟商城外景虚拟商城外景前景与背景的和谐融合前景与背景的和谐融合动态轻量化建模的实例动态轻量化建模的实例瀑布瀑布河流河流树木与森林树木与森林例例1 1:瀑布轻量化的动态建模瀑布轻量化的动态建模非轻量化建模粒子系统非轻量化建模粒子系统传输效率较高传输效率较高运行效率太低运行效率太低基于位置插播器的建模基于位置插播器的建模传输效率较高传输效率较高运行效率更高运行效率更高效果甚佳效果甚佳虚拟树木的轻量化建模方法虚拟树木的轻量化建模方法(一)(一)基于几何的树木建模方法基于几何的树木建模方法制作方法:制作方法:3Dmax直接生成直接生成面数:面数:9758显示
11、效果:较好显示效果:较好显示效率:差显示效率:差未经压缩代码量:未经压缩代码量:1.10M经压缩后代码量:经压缩后代码量:320KB贴图容量:贴图容量:9.6KB虚拟树木的轻量化建模方法(二)虚拟树木的轻量化建模方法(二)基于基于BillboardBillboard的树木建模方法的树木建模方法制作方法:广告牌制作方法:广告牌Billboard面数:面数:1显示效果:差显示效果:差显示效率:高显示效率:高未经压缩代码量:未经压缩代码量:227字节字节经压缩后代码量:经压缩后代码量:176字节字节贴图容量:贴图容量:206KB虚拟树木的轻量化建模方法虚拟树木的轻量化建模方法(三)(三)基于模型与基
12、于模型与Billboard的混合方法的混合方法制作方法:模型制作方法:模型+广告牌相结合广告牌相结合面数:面数:157显示效果:动态效果显示效果:动态效果好好显示效率:高显示效率:高未经压缩代码量:未经压缩代码量:25.4KB经压缩后代码量:经压缩后代码量:7.39KB贴图容量:贴图容量:106KB虚拟树木的轻量化建模方虚拟树木的轻量化建模方法(四)法(四)基于规则的树木轻量化建模方法基于规则的树木轻量化建模方法制作方法:基于制作方法:基于L-System规则规则面数:面数:1个圆台面个圆台面显示效果:动态生长过程显示效果:动态生长过程极好极好显示效率:高显示效率:高未经压缩代码量:未经压缩代
13、码量:1.6KB经压缩后代码量:经压缩后代码量:0.69KB贴图容量:贴图容量:10KB虚拟森林生成系统虚拟森林生成系统快速地生成虚拟森林快速地生成虚拟森林效果比效果比Billboard更加动态逼真更加动态逼真树木数量庞大,但渲染速度快树木数量庞大,但渲染速度快文件小,便于网络传输文件小,便于网络传输基于基于VRML的虚拟森林编辑器的虚拟森林编辑器WebVR中光影效果的轻量化实现中光影效果的轻量化实现 烘焙技术的应用烘焙技术的应用采用采用VRay渲染器对场景物体进行光影烘焙渲染器对场景物体进行光影烘焙用多重纹理贴图表现光影用多重纹理贴图表现光影影视级虚拟现实效果表现影视级虚拟现实效果表现避免了
14、光源计算带来的显示复杂度,加快了实时浏览避免了光源计算带来的显示复杂度,加快了实时浏览速度速度2.6 2.6 WebVR的轻量化互动脚本程序设计的轻量化互动脚本程序设计基于基于OOP的的UI扩展节点库扩展节点库基于探针的轻量化碰撞检测算法基于探针的轻量化碰撞检测算法WebVR的轻量化虚拟导航算法的轻量化虚拟导航算法基于基于Cohen-Sutherland编码的飞行物的轻编码的飞行物的轻量化交互操纵算法量化交互操纵算法基于基于VRML的全景漫游功能的实现的全景漫游功能的实现VRML中的视频在线播放系统中的视频在线播放系统基于基于OOP的的VRML的的UI扩展节点库的开发扩展节点库的开发PROTO
15、扩展机制带来良性、自增长的软件理念。扩展机制带来良性、自增长的软件理念。自主研发大量的自主研发大量的PROTO扩展节点库扩展节点库为为WebVR系统的开发提供了工具集系统的开发提供了工具集PROTOTYPE 作用作用UIMenu快速生成随界面尺寸变化的菜单栏快速生成随界面尺寸变化的菜单栏UIDialog快速设置生成完整功能的对话框快速设置生成完整功能的对话框button按钮按钮map2D快速生成二维导航地图快速生成二维导航地图其它其它基于基于H-Anim的的VRML角色互动设计角色互动设计基于探针的轻量化基于探针的轻量化 VRML碰撞碰撞检测算法(检测算法(1)前进障碍物检测前进障碍物检测基于
16、探针的轻量化基于探针的轻量化 VRML碰碰撞检测算法(撞检测算法(2)前进地形检测:前进地形检测:基于探针的轻量化基于探针的轻量化 VRML碰碰撞检测算法(撞检测算法(3)高度障碍物检测高度障碍物检测基于探针的轻量化基于探针的轻量化 VRML碰碰撞检测算法(撞检测算法(4)前进行为条件成立前进行为条件成立VRML虚拟世界的轻量化导航算法(一)虚拟世界的轻量化导航算法(一)大规模大规模VRML环境的浏览问题环境的浏览问题面积规模广大,布局结构复杂面积规模广大,布局结构复杂缺乏有效的导航信息缺乏有效的导航信息用户将会迷失方向用户将会迷失方向在虚拟世界中毫无意义地徘徊在虚拟世界中毫无意义地徘徊无法找
17、到预期的目标无法找到预期的目标从而失去继续浏览、观看的信心和兴趣从而失去继续浏览、观看的信心和兴趣VRML虚拟世界的轻量化导航算法(二)虚拟世界的轻量化导航算法(二)高效的大规模高效的大规模VRML世界的虚拟导航算法世界的虚拟导航算法优化的道路导航算法优化的道路导航算法可回溯的盲人爬山算法可回溯的盲人爬山算法近似最优,精度达到了近似最优,精度达到了95以上以上其准确度也能达到虚拟漫游的需要其准确度也能达到虚拟漫游的需要随着节点数的增加,精度也随之增加,并最终收敛至随着节点数的增加,精度也随之增加,并最终收敛至100用用VRMLscript实现实现直接与直接与VRML耦合在一起耦合在一起高效并易
18、于实现高效并易于实现没有采用没有采用Java EAIVRML中的在线视频播放技术中的在线视频播放技术虚拟家居装修与科普影院虚拟家居装修与科普影院在虚拟空间中在线观看科普视频在虚拟空间中在线观看科普视频基于基于RSTP流媒体协议传输流媒体协议传输2.7 2.7 WebVR的体系支撑架构的体系支撑架构过去的过去的VRML系统系统无后台无后台无数据库无数据库而今而今基于基于J2EE的后台管理系统的后台管理系统数据库数据库基于基于AJAX的高效通讯模式的高效通讯模式大规模大规模WebVR场景的渐进下载模式场景的渐进下载模式WebVR的体系支撑架构的体系支撑架构 Web通讯模式的新应用(通讯模式的新应用
19、(1)传统传统Web应用的通讯模式应用的通讯模式请求等待响应再请求的循环请求等待响应再请求的循环用户体验是割裂的用户体验是割裂的BrowserUser interfaceWeb ServerJSP/ASP/DB/File SystemResponseRequestClientServerTimeUser activityServer processingDataDataDataDataWebVR的体系支撑架构的体系支撑架构 Web通讯模式的新应用(通讯模式的新应用(2)Ajax异步通讯模式异步通讯模式无需忙等待无需忙等待采用局部刷新采用局部刷新连贯的用户体验连贯的用户体验BrowserUser
20、 interfaceServerWeb/XML DB/File SystemResponseRequestClientServerTimeUser activityServer processingAjax engineJavaScript callDOM/CSSAjax ProcessDataDataDataDataDataInputInputInputDisplayDisplayDisplayVRML与与Ajax的结合(的结合(1)结合的方式结合的方式以以XML为载体为载体通过通过Ajax技术实现技术实现VRML虚拟场景数据的按需动态请求与虚拟场景数据的按需动态请求与下载下载结合的意义结合
21、的意义减轻服务器传输大规模场景数据的负载与带宽消耗减轻服务器传输大规模场景数据的负载与带宽消耗避免客户端一次性渲染大规模场景而导致漫游速度缓慢避免客户端一次性渲染大规模场景而导致漫游速度缓慢通过把复杂算法嫁接到服务器端,实现灵活的人机交互应通过把复杂算法嫁接到服务器端,实现灵活的人机交互应用用VRML与与Ajax的结合(的结合(2 2)VRML 与与Ajax交互模式示意图交互模式示意图VRML场景场景Script节点节点Ajax引擎引擎事件触发事件触发事件响应事件响应后台后台请求数据请求数据返回数据返回数据J2EEJ2EE与与AjaxAjax的结合(的结合(2 2)J2EE与与Ajax交互模式
22、示意图交互模式示意图J2EEJ2EE服务器组件服务器组件客服端浏览器客服端浏览器Ajax引擎引擎Connection PoolJavaBeansJSP/Servlet发送请求发送请求返回结果返回结果2.8 2.8 大规模大规模WebVRWebVR的网上渐进式下载机制的网上渐进式下载机制基于基于AOI(Area of Interests)的思想的思想渐进式渐进式AOI的的VRML下载策略下载策略与多线程下载策略相结合与多线程下载策略相结合正在进行中的研发工作正在进行中的研发工作 (1)(1)光影效果方面光影效果方面程序化(程序化(Shader)着色器在)着色器在VRML上的应用上的应用体系支撑架
23、构方面体系支撑架构方面采用采用DWR(Direct Web Remoting,WEB远程调用)框架远程调用)框架客户端无需再处理客户端无需再处理XMLHttpRequest对象以及服务器的响应对象以及服务器的响应后台无需编写后台无需编写Servlet把请求转化为对把请求转化为对JavaBeans的调用的调用更为灵活的多人在线交互模式更为灵活的多人在线交互模式更为高效的多路组播通讯技术更为高效的多路组播通讯技术正在进行中的研发工作正在进行中的研发工作 (2)(2)WebVR场景的轻量化方面场景的轻量化方面虚拟场景的参数化存储与生成虚拟场景的参数化存储与生成基于函数的基于函数的VRML/X3D的扩
24、展节点库的扩展节点库面向面向WebVR的软件工程的软件工程WebVR的项目开发模式有很多独特性的项目开发模式有很多独特性需求分析需求分析成本估算成本估算项目管理项目管理团队组建团队组建文档管理文档管理正在进行中的研究课题(正在进行中的研究课题(1 1)WebVR的轻量化建模的轻量化建模研究目标研究目标高效、通用、低成本的轻量化建模高效、通用、低成本的轻量化建模基于图像的轻量化基于图像的轻量化3D模型重建模型重建除了传统的网格面片精简技术之外除了传统的网格面片精简技术之外如何提取最小尺寸的可重用纹理贴图如何提取最小尺寸的可重用纹理贴图基于多张图像的树木植物基于多张图像的树木植物L-System重
25、建重建与与Autodesk中国研究院合作中国研究院合作基于多张图片的树木植物的参数化建模基于多张图片的树木植物的参数化建模中科院自动化所与法国中科院自动化所与法国INRIA合作合作基于基于AMAP的树木植物的轻量化建模的树木植物的轻量化建模正在进行中的研究课题(正在进行中的研究课题(2 2)扫描性扫描性3D模型的精简模型的精简基于数字几何特征的模型精简基于数字几何特征的模型精简轻量化的轻量化的WebVR模型数据库模型数据库构建本地构建本地3D模型库模型库基于文本、草图与图像的综合智能搜索基于文本、草图与图像的综合智能搜索网上网上3D模型资源的智能挖掘模型资源的智能挖掘基于视频的轻量化的基于视频
26、的轻量化的WebVR行为数据库行为数据库虚拟行为仿真计算虚拟行为仿真计算虚拟情感分析与计算虚拟情感分析与计算正在进行中的研究课题(正在进行中的研究课题(3 3)开发轻量化的开发轻量化的WebVR引擎引擎(超)大规模的虚拟场景的网上实时漫游(超)大规模的虚拟场景的网上实时漫游高效的高效的WebVR物理引擎物理引擎大规模虚拟群体的行为仿真(含实时碰撞算法)大规模虚拟群体的行为仿真(含实时碰撞算法)更高端的更高端的WebVR的体系支撑架构的体系支撑架构SOA,Oracle Spatial等等对这些海量的空间数据进行更为有效的调度与管理对这些海量的空间数据进行更为有效的调度与管理(超)大规模(超)大规
27、模WebVR场景的网上流式渐进下载机制场景的网上流式渐进下载机制基于基于EAOI (Extended AOI)P2P网格计算网格计算/普适计算在普适计算在WebVR上的上的 应用应用实验室所承担的实验室所承担的WebVRWebVR课题课题中国数字科技馆体验馆二级子课题中国数字科技馆体验馆二级子课题网上虚拟车展系统网上虚拟车展系统国际合作项目国际合作项目法国农业研究中心,法国农业研究中心,INRIA数字植物实验室数字植物实验室崇明岛生态环境虚拟仿真系统崇明岛生态环境虚拟仿真系统上海市重点科技攻关基金项目上海市重点科技攻关基金项目网上大规模虚拟展示的若干关键技术的研究网上大规模虚拟展示的若干关键技
28、术的研究两个虚拟旅游项目两个虚拟旅游项目湛江虚拟旅游与珠海虚拟旅游系统湛江虚拟旅游与珠海虚拟旅游系统.2.9 WebVR2.9 WebVR的辉煌前景与潜在机遇!的辉煌前景与潜在机遇!WebVR掀起了一场互联网行业的革命浪潮掀起了一场互联网行业的革命浪潮由由2D到到3D由静态到动态由静态到动态有数字到虚拟有数字到虚拟已经悄然成为一个产业!已经悄然成为一个产业!虚拟城市规划演示虚拟城市规划演示 虚拟家居漫游系统虚拟家居漫游系统虚拟文物遗产(文化遗产的数字化保护)虚拟文物遗产(文化遗产的数字化保护)虚拟城市虚拟城市虚拟实验教学虚拟实验教学虚拟博物馆虚拟博物馆/虚拟科技馆虚拟科技馆 WebVR平台架构
29、和开发流程平台架构和开发流程素材l场景图场景图l资源包资源包l脚本脚本游戏游戏集成化编辑器集成化编辑器混合式引擎核心混合式引擎核心 素材素材素材WebWeb游戏游戏3D3D模型模型素素材库材库轻量化模型轻量化模型纹理纹理LightmapLightmap材质材质命令脚本命令脚本音频音频视频视频动画动画ShaderShader脚本脚本.游戏开发流程游戏开发流程游戏程序运行时,按游戏程序运行时,按AOIAOI划分渐进式地从划分渐进式地从周围的服务器周围的服务器(P2PP2P)上进行流式)上进行流式下载下载图片图片图片图片以图片作为输以图片作为输入在素材库中入在素材库中搜索合适模型搜索合适模型轻量化建
30、模轻量化建模基于图像的模型搜索基于图像的模型搜索基于基于重用重用机制机制的轻的轻量化量化建模建模基于规则的建模基于规则的建模轻轻量量化化3D3D模模型型基于图像的基于图像的3D3D模型重建模型重建注册注册挖掘挖掘搜索搜索 分类分类增加增加删除删除修改修改.基于草图的建模基于草图的建模一些粗浅的科研人生的思考一些粗浅的科研人生的思考 互动与探讨互动与探讨研究方向的选择与确立研究方向的选择与确立执着强烈的创新意识执着强烈的创新意识超越大胆的开拓意识超越大胆的开拓意识研究态度研究态度认真求实,脚踏实地,切忌急功近利。认真求实,脚踏实地,切忌急功近利。以解决问题为目的,而不是以发表论文为目的。以解决问题为目的,而不是以发表论文为目的。要谦卑,要和谐,不迷信权威要谦卑,要和谐,不迷信权威研究精神研究精神低调做事低调做事厚积薄发厚积薄发锲而不舍,感谢失败,充满信心,充满盼望!锲而不舍,感谢失败,充满信心,充满盼望!