
虚拟现实技术之VR的计算体系结构(共33页).ppt
33页虚拟现实技术讲课老师: 王洪群whq_1第四章 VR的计算体系结构绘制流水线基于PC的图形体系结构基于工作站的体系结构分布式VR体系结构2一、“VR引擎”在VR中所处位置对象的建模:几何结构、表面纹理、智能行为、以及硬度、惯性、表现塑性等物理建模开发平台,编程软件包:例如:WorldToolKit和Java 3DVR引擎“VR引擎” :是任何VR系统的关键部分,它从输入设备中读取数据,访问与任务相关的数据库,执行任务要求的实时计算,从而实时更新虚拟世界的状态,并把结果反馈给输出显示设备这个术语是一种抽象,从单个计算机到支持给定仿真的通过网络互联在一起的多个计算机3绘制流水线“绘制”一般是指把组成的虚拟世界展示出来例如:把三维几何模型转变成二维场景,也包括其它模态,如触觉反馈绘制流水线:指的是把绘制过程划分成几个阶段,并把它们指派给不同的硬件资源图形绘制流水线触觉绘制流水线OpenGL图形绘制流水线的三个阶段GEGeometry EnginesRURasterizer Units4(1)应用程序阶段:由CPU通过软件方法完成目的:读取虚拟世界几何数据库和来自鼠标、跟踪球、跟踪器或传感手套的用户输入。
响应用户的输入和任务2)几何处理阶段:通过软件和硬件两种渠道来实现模型变换光照变换场景投影剪裁映射(3)光栅化阶段:通常由硬件方法完成目的:把几何处理阶段输出的顶点信息(例如颜色和纹理)转换成视频显示器需要的象素信息通过应用软件所产生的图像被分成为两大类,即矢量图形和位图图像光栅化是将一个图元转变为一个二维图像的过程二维图像上每个点都包含了颜色、深度和纹理数据将该点和相关信息叫做一个片元(fragment)确定最佳逼近图形的象素集合,并用指定的颜色和灰度设置象素的过程称为图形的扫描转换或光栅化 5反走样 (antialiasing)在光栅显示器上显示图形时,直线段或图形边界或多或少会呈锯齿状原因是图形信号是连续的,而在光栅显示系统中,用来表示图形的却是一个个离散的象素这种用离散量表示连续量引起的失真现象称之为走样(aliasing);用于减少或消除这种效果的技术称为反走样(antialiasing)光栅图形的走样现象除了阶梯状的边界外,还有图形细节失真(图形中的那些比象素更窄的细节变宽),狭小图形遗失等现象常用的反走样方法主要有:提高分辨率、区域采样和加权区域采样反走样处理后的图象质量效果对比6绘制流水线举例HP Visualize fx卡流水线体系结构浮点数据整数数据象素格式7理想流水线的输出与真实流水线输出关于场景复杂度的函数对比理想流水线输出HP 9000 流水线的输出流水线瓶颈CPU限制变换限制填充限制由于应用程序阶段出现的瓶颈瓶颈出现在几何处理阶段瓶颈出现在光栅化阶段8图形流水线的优化当出现瓶颈后,需要采取某种措施减少重复处理过程中的瓶颈,这些措施就称为流水线优化。
CPU限制(1)高速CPU取代低速CPU(2)降低场景复杂度,例如减少多边形数目,采用低分辨率模型(3)优化仿真软件,如通过编程技巧,用低精度的变量,减少除法数目13万个多边形1000个多边形9图形流水线的优化变换限制(1)减少仿真中虚拟光源的数目(2)采用简单的明暗处理模式Phone 光照模型反射光表面向量(单点光源)环境光的光强度物体表面对环境光的慢反射系数观察者看到的波长为的光强度对象的慢反射颜色大气衰减因子波长为的点光源强度(多点光源)对点光源的漫反射系数镜面反射系数镜面反射颜色(3)采用简单的表面多边形类型10图形流水线的优化变换限制(1)减少仿真中虚拟光源的数目(2)采用简单的明暗处理模式Gouraud 明暗处理模型双线性光强插值是由Gouraud于1971年提出的,又被称为Gouraud明暗处理,它先计算物体表面多边形各顶点的光强,然后用双线性插值,求出多边形内部区域中各点的光强 它的基本算法描述如下:a)计算多边形顶点的平均法向b)用Phong光照明模型计算顶点的平均光强c)插值计算离散边上的各点光强d)插值计算多边形内域中各点的光强双线性光强插值的公式(3)采用简单的表面多边形类型11图形流水线的优化面片明暗处理人的腿骨模型变换限制(1)减少仿真中虚拟光源的数目(2)采用简单的明暗处理模式面片明暗处理Gouraud明暗处理(3)采用简单的表面多边形类型12图形流水线的优化填充限制(1)减少显示窗口的尺寸(2)减少显示窗口的分辨率碰撞阶段触觉绘制流水线CPU1CPUn计算力力平滑力映射触觉纹理用户输入触觉接口力计算阶段触觉计算阶段主要是从数据库中加载三维对象的物理特性,包括表面柔性、光滑度、重量和表面温度等,执行碰撞检测基于各种物理仿真模型计算触点压力。
还有力平滑和力映射绘制触觉纹理,主要是绘制仿真过程的接触反馈分量13二、基于PC的图形体系结构PC机的VR引擎14VR Teaching Laboratory使用的基于PC的VR引擎15PC图形加速卡IBM GT1000几何处理芯片IBM RC1000光栅处理芯片活动眼睛同步器、数字显示、模拟RGB视频ATI Fire GL2最大16个光源27M无纹理Gouraud明暗处理多边形每秒410M个象素200M个纹理象素12801024下100Hz的刷新率ATI Fire GL2Elsa Gloria IIIxBox16PC图形加速卡ATI Fire GL2Elsa Gloria IIIxBoxElsa Gloria IIIGPUgeometry processor unit31M无纹理Gouraud明暗处理多边形每秒1000M个象素2000M个纹理象素12801024下120Hz的刷新率NVIDIA 250MHz的GE Force217PC图形加速卡ATI Fire GL2Elsa Gloria IIIxBoxxBox游戏平台可编程的流水线125M纹理Gouraud明暗处理多边形每秒1000M个象素NVIDIA 300MHz的GE Force3UMAunified memory architechture18图形基准测试非营利性组织标准性能评定公司(Standard Performance Evaluation .Co,简称SPEC)开发了基准测试程序:viewperf。
Viewperf有标准的虚拟世界或应用程序组成Viewperf 6.1.2版提供了六个虚拟世界或应用程序viewset,测试:(1)Advanced Visualizer:动画应用程序,包含11个测试;(2)Design Review:三维计算机模型检查软件包,5个测试;(3)Data Explore:可视化应用程序,10个测试;(4)Lightscape:辐射度可视化应用程序,包含4个测试;(5)Mechanical CAD:MCAD设计应用程序,12测试;(6)Pro/Designer:ProCDRS工业设计应用程序,包含10个测试研究令人信服的基准测试程序也是一种研究方向19四、基于工作站的体系结构世界主流工作站制造商Sun Microsystems公司HewlettPackard公司Silicon Graphics公司(SGI)工作站多处理器体系结构Sun Blade 1000 工作站Ultra Port Architecture,简称UPAViewperf基准测试得分比PC图形卡低20SGI Infinite Reality 体系结构每秒可绘制860,000个Gouraud明暗处理纹理多边形HIPHost Interface ProcessorDMA直接存储器存取方式图象被分片并行绘制显示列表高速缓存对Infinite Reality 绘制能力的影响速度提高6倍21四、分布式VR体系结构“分布式VR引擎” :是指使用两个或多个绘制流水线的VR引擎。
这些流水线可以执行图形或触觉计算,可以位于一台计算机中,也可以位于多台协作的计算机中,或者位于集成在一个仿真系统中的多台远程计算机中22多流水线的同步需要同步的原因若缺少垂直扫描方式上的同步,由于磁场干扰,导致图象闪烁对于减少系统延时、建立一致的刷新率,从而减少仿真病同步的方法(1)软件同步法,在并行流水线的应用程序阶段,让其都开始新的一帧2)帧缓冲器交换同步3)帧视频同步23多流水线的同步软件软件和帧缓冲器交换软件、帧缓冲器和视频24多流水线的同步Genlock 和 multiview同步交换同步Genlock可以重置PC机的内部视频电路25图形和触觉流水线的同步联合定位绘制流水线“联合定位绘制流水线系统” :是由一台带有多流水线图形加速卡的计算机,或者并排放置的计算机(每台指定一个不同的绘制流水线),或者是它们的任意组合多流水线图形卡 Wildcat II 511026联合定位绘制流水线双流水线体系结构不需要genlock(同步锁相)和外部multiview电缆图形卡中最快的27PC集群使用一台PC机的问题PC机的AGP插槽有限,wildcat占两个插槽共享AGP 总线时,总线阻塞,吞吐量变小32台绘制服务器4台控制服务器用于平铺视觉显示的Chromium PC集群控制服务器,对OpenGL命令进行8位编码分块划分查表解码28PC集群WireGL通信模式与广播通讯模式下帧刷新率与集群PC数目的关系比较只有绘制服务器状态与网络缓冲区中的数据不同时,控制服务器才给其发送29四、分布式虚拟环境“分布式虚拟环境” :是指它驻留在两台或两台以上的网络计算机上,这些计算机共享整个仿真的计算负荷。
分布式虚拟环境使得远程计算机能够访问和参与仿真,两个或多个用户共享一个分布式VR,用户之间可以合作和协作的合作的(collaborate)” :是指他们依次执行给定的仿真任务,在某一时刻只有一个用户与给定的虚拟对象交互协作的(cooperate)” :是指他们同时与给定的虚拟对象交互确定分布式虚拟环境的网络类型应该考虑的主要因素:(1)用户的行为;(2)交互的多模态(图形、语音和触觉);(3)用户数目;(4)出现通讯故障时仿真的抗毁性;(5)能忍受的延迟级别;(6)通信的可靠性和可量测性等设计分布式虚拟环境的两个重要问题就是:网络类型和带宽30两个用户共享的虚拟环境31多用户共享的虚拟环境的网路拓扑TCP/IP单播包的形式中心服务器,执行压缩和爆发式传送的平滑多用户虚拟环境的逻辑连接副本副本副本单服务器多服务器环形网32多用户共享的虚拟环境的网路拓扑单播包的形式多用户虚拟环境的逻辑连接多播包的形式UDP通讯模式多播包的形式UDP通讯模式点到点LAN通过路由器到WAN33。












