动态3D导航系统开发

  • 格式:doc
  • 大小:3.91 MB
  • 文档页数:4

动态3D导航系统开发
1、实施3D开发的意义
我们生活在一个充满三维物体的三维世界中,为了使计算机能精确地再现这些物体,我们必须能在三维空间描绘这些物体。

我们又生活在一个充满信息的世界中,能否尽快地理解并运用这些信息将直接影响事业的成败,所以我们需要用一种最直接的形式来表示这些信息。

最近几年计算机图形学的发展使得三维表现技术得以形成,这些三维表现技术使我们能够再现三维世界中的物体,能够用三维形体来表示复杂的信息,这种技术就是可视化(Visualization)技术。

可视化技术使人能够在三维图形世界中直接对具有形体的信息进行操作,和计算机直接交流。

这种技术已经把人和机器的力量以一种直觉而自然的方式加以统一,这种革命性的变化无疑将极大地提高人们的工作效率。

可视化技术赋予人们一种仿真的、三维的并且具有实时交互的能力,这样人们可以在三维图形世界中用以前不可想象的手段来获取信息或发挥自己创造性的思维。

机械工程师可以从二维平面图中得以解放直接进入三维世界,从而很快得到自己设计的三维机械零件模型。

医生可以从病人的三维扫描图象分析病人的病灶。

军事指挥员可以面对用三维图形技术生成的战场地形,指挥具有真实感的三维飞机、军舰、坦克向目标开进并分析战斗方案的效果。

当然对于汽车导航中的意义也非同一般,相对与2D平面导航,3D导航能使人们随时感受周围环境的立体空间,甚至连地面高低起伏都能感受的到,从而更好的规划行走路线等。

更令人惊奇的是目前正在发展的虚拟现实技术,它能使人们进入一个三维的、多媒体的虚拟世界,人们可以游历远古时代的城堡,也可以遨游浩翰的太空。

所有这些都依赖于计算机图形学、计算机可视化技术的发展。

人们对计算机可视化技术的研究已经历了一个很长的历程,而且形成了许多可视化工具。

其中MBX就是由IMG公司提供的3D图形机。

PowerVR是由IMG公司发明的一项3D技术。

PowerVR使用头标处理的方法显示列表刷图。

和传统刷图的最大不同是像素直接刷新到屏幕上,而传统刷图是将需要显示的任何图形都显示在屏上,最终显示的结果是通过Z-Buffer<垂直缓冲或顶层>来匹配的。

PowerVR决定最上层的图象是否显示并只将必须显示的刷到屏上。

这种独创性的方法能节省大量存储空间,也使得现代大型游戏能够在内存和功耗有限的环境下以及其优秀的性能运行。

提高图像刷新速度、减少内存使用、
2、WinCE平台支持
<1>、3D开发的硬件平台
MCIMX31CVMN4C
(1)、组件加速
◆ 数据流输入分析器
◆ 图形区域生成器
◆ 图形数据选择器
◆ 指针Cache
◆ 可选VGP R-S 组件
顶点填充
VGP R-S
图形剪辑
视频端口及屏显传输
(2)、HSR -Hidden Surface Removal Engine(隐藏面消除器)
(3)、文本图形阴影单元
◆ 迭代R
◆ 迭代G
◆ 迭代B
◆ 迭代A

◆ 迭代U
◆ 迭代V
◆ 迭代1/W
(4)、像素合成
◆ 累加单元
◆ 合成单元
(5)、显示列表分析器
◆ HSR---FPU
◆ 文本图形阴影FPU
◆ 参数抓取
<2>、3D开发的驱动支持
预留24MB的内存供MBX使用,800×480的MBX OS必须在DDR中运行
<3>、3D开发的软件平台支持
在PB环境下
(1)、"Catalog=>Core OS=>Windows CE devices=>Graphics and MultiMedia Technologies=>Graphics"
加组件"Direct3D Mobile"及"DirectDraw"到OS中;
(2)、"Catalog=>BSPs=>Freescale Mx31 : ARMV4I=>Device Drivers=>MBX"下三组件加入OS中;
(3)、发行SDK
3、软件开发流程
<1>、AP首先为TA和3D内核处理创建一个多边形数据、创建并加载相关文本图形并准备场景数据
<2>、TA读取3D参数并在帧缓冲存储器中创建带头标的图形
<3>、图象合成处理器(ISP)按次序读取带头标图形的头标。

对于每个头标,ISP读相应的3D对象的集合数
据并执行HSR
<4>、对于多边形的所有可视部分,ISP将标签传送给文本图形阴影处理器TSP。

TSP读取3D对象数据和相
关文本图形,随后合成中间层像素。

解析后的像素在最终像素写入帧缓存前将存储到累加缓存中以备
图层将其添加到相应对象上。

4、开发3D介绍
<1>、Direct3D Mobile
微软提供
<2>、OpenGL1.X
D:\PDF\OpenGL
OpenGL®ES 是免授权费的,跨平台的,功能完善的2D和3D图形应用程序接口API,它针对多种嵌入式系统专门设计-包括控制台、移动电话、手持设备、家电设备和汽车。

它由精心定义的桌面OpenGL子集组成,创造了软件与图形加速间灵活强大的底层交互接口。

OpenGLES 1.X 面向功能固定的硬件所设计并提供加速支持、图形质量及性能标准。

OpenGLES 2.X 则提供包括遮盖器技术在内的全可编程3D图形算法。

请参考/apis/index.shtml。