第2卷第64期20年n月03
微
计算机应用
MICR(COMPUTERAP3PLICAT10NS
Vo.124.o.N6No,03v.20
JvD创建虚拟现实世界探析aa3
鲍彦如
(津大学计算机系天津天307)002
摘要:aa3JvD是继OpnL之后的基于场景图结构的新一代的图形AP,同时它继承了JveGIaa语言的许多优良特性。本文对JvD的编程模式,及其创建虚拟现实场景中遇到的一些
问题进aa3
行了分析和研究。
关键词:JvDAP场景图aa3I
虚拟现实
JvD是一个高层的基于图形的应用
程序接口。JvD使得程序员较容易的开发出集aa3aa3
三维图形、视频、音频和图形处理于一体的应用程序。JvD底层通过DicX或Opnaa3rteeGL实现3D硬件加速,这使得它能够开发复杂的三维图形应用程序。JvD已被广泛应用于aa3虚拟现实、网站、仿真、游戏和CD
软件设计中。A
JvD应用程序接口提供了一套基于Jv语言的面向对象的接口,从而加强了Jvaa3aaaa的功能。利用JvD,程序员可以在Jvaa3aa应用程序或Aplt加入高质量、独立于平台的三pe中
维图形,从而把Jvaa语言的平台无关性扩展到了三维图形应用程序中。
1JvD在虚拟现实应用中的优点aa3
在开发虚拟现实应用程序中,JvD具有以下优点:aa3()JvD提供了高层的面向对象的三维图形描述方法。通过使用基于场景图的三维1aa3
图形模型,程序员不必花费时间来设计具体的几何形体和编写描述代码,只需集中精力于场景图中的对象和组件。不同于Opn,从没开发过图形或多媒体软件的程序员也能使用eGL
JvD构造复杂的虚拟现实世界。aa3
()JvD使用已有硬件加速技术实现了速度的最优化。JvD底层通过DicX或2aa3aa3rteOpneGL实现3D硬件加速,并且使用了视锥体消除法处理技术,同时采用多线程,实现了速度的最优化。这个特点使得JvD更适合于开发交互式图形应用程序,例如:游戏、仿aa3真等程序。()aa3基于Jv3JvDaa技术,适于开发网上的可视化应用程序。JvD继承了Jv语言aa3aa的平台无关性,并且采用了几何形体压缩技术,即使非常大的三维模型也能很快的从网上下
载观看,避免了带宽瓶颈。()JvD支持许多种在虚拟现实中使用的外部设备。虚拟现实应用中需要用户的六4aa3
个自由度的定位信息值,而不同的追踪设备与计算机有不同的交互方式。JvD并没有对aa3不同的设备一一提供支持,而是定义了一个IpteinuDvce接口,设备制造商或程序员可以利用这个接口对某一特定的设备提供支持。
本文于2003—05—08收到。
第6期
微计箅机应用
397
2JvD构造三维世界aa3
21JvD基本编程模式.aa3
JvD是基于“景图结构”技术的,场景图是一个具有方向性的不对称的树状层次aa3场模型。这个灵活的树型结构类似于描述
列表,它包含了有关场景中的对象以及如何渲染它们的全部信息。JvD的场景图树由两个分支组成,这两个分支是:内容(otn)分支和aa3cnet
视图分支(iw)ve。视图分支含有复杂的JvD视图模型的所有细节。视图分支由相关的两aa3
部分组成:代表虚拟世界中视点的ViwPafr对象和代表物理世界中观察者位置的Vieltmoew对象。通过ViwPafr和Viw对象,建立了两个世界位置坐标的相关。内容分支描述了eltmoe用户将在场景中看到什么。它包含所有图形对象(体、立方体或更复杂的几何对象)和球它们的颜色、纹理、相互间的位置和交互;场景中的光照、烟雾;以及用来移动它们的转
换、行为等等。与视图分支相比,内容分支要复杂的多,我们的大多数
工作将集中在内容分