>
首页 » 技术文章 » 崛起中的移动图形

崛起中的移动图形

作者:■ 诺基亚公司 Kari Pulli  时间:2005-04-27 00:14  来源:本站原创

在过去的几年里,我们看到了如何把通信和计算能力封装在一个小到可以放入口袋的设备中的巨大变化。同时,这些设备的可视能力也有了很大发展:人们可以使用它拍摄像片和视频,并且更为重要的是对于图形来说,显示屏能够以交互的速率放映高质量的彩色图像。
在采用微处理器对电池消耗和电池性能进行管理,以及移动设备的图形能力这两个方面都取得巨大进步的同时,桌面计算机继续在带给终端用户多媒体体验方面领先一步。尽管如此,在未来的几年里,这种情况将会发生改变。

移动图形应用
在移动设备中,哪一种图形应用更合适?在桌面计算机中,游戏、娱乐和计算机辅助设计推动着图形的发展。因为效能和功率的限制,在不远的将来设计出能够在移动设备上运行的新的赛车游戏是不太可能的。尽管如此,交互式的娱乐内容,比如游戏、卡通动画和诸如此类的东西将可能推动移动设备图形的发展,这和桌面的情况是一样的。尽管单靠图形本身不能完全表达游戏的许多引人注目的特性,但是它们能够润色游戏,使本来有趣和好玩的游戏变得更具吸引力和令人陶醉。
能量是根本的障碍
虽然有很大的进步,移动终端的能力在很多方面仍然无法和桌面计算机相比。它们的运行速度较低,显示屏的尺寸较小,显示分辨率较低,运行和存储程序的内存较小,并且只能短时间使用这个设备,因为电池最终要耗尽。造成这些差异的根本原因是能量:桌面计算机的能量来自于电源插座,而移动设备只能使用电池供给能量。
尽管如此,移动设备也在发展。摩尔定律将使移动设备具有更大的处理能力,更大的内存和存储空间。虽然电池技术的进步没有遵从摩尔定律(每年大约只提高10%),Gene Frantz定律表明,集成电路的功耗呈指数下降,从而使电池的持续时间也随之延长。
无论如何,移动终端已经在很多方面等同或优于10或15年前的家庭电脑。特别值得一提的是,在移动设备上实现一些计算机图形能力是可以做到的,尽管现在仍处于起步阶段。

演变过程中的启示
为了适应移动设备,传统的图形硬件需要改进提高,但是根本的性能提高不会太大。图形工作站已经存在至少20年了,工程师已经花费了很多时间学习和研究相关技术。因此,在这方面已经没有太大的必要像探索未知领域一样进行创造性的工作。适合桌面计算机的很多东西并不适合于移动设备,因为桌面计算机体积太大、价格太贵、耗电太多。但是,桌面系统的一些方法可以通过改进变成一个可用于移动设备的简化版本。另外,桌面系统中高质量的图形效果,已经提高了用户对图形质量的期望值,无形中也提高了用户对体验移动设备图形质量的期望值。
在软件方面,工业领域所作的工作可以用非常神奇来形容,它们即使在慢速的桌面设备上,也知道通过如何挖掘图形硬件的一点一滴性能来创建满意的图形效果。尽管如此,为保证图形软件和硬件引擎、图形内容和图形应用的快速发展,针对图形开发的图形标准是十分必要的。容易得到的、易学易用的、可接受的图形标准将会促进移动应用的开发。

制定标准
在现有的开发中,有几个适合移动图形的标准。其中一些是应用程序接口(API),一些是表示多边形、图像和动画内容的文件格式,还有一些是两者的组合。
可变矢量图形(SVG)是一个表示2D分层动画的文件格式标准。SVG支持高质量的2D几何原始形状,比如Bezier曲线、构成那些曲线的任意多边形、各种属性和风格的线段,还有后加工和过滤处理。原始的SVG对于移动设备来说太庞大,因此创建了它的子集。SVG Tiny 是一个针对像移动电话等受限设备的紧凑子集,而SVG Basic是一个针对灵巧电话和PDA的稍微大一点的子集。在3GPP修订版本5中,SVG Tiny已经被选定作为MMS(多媒体信息系统)的一部分。因此,将最终能够在移动电话中发送和接收2D动画的矢量图形信息。
OpenGL是一个流行的跨平台的3D图形编程API,我们在图形工作站和PC机上非常熟悉。在过去的10年里,OpenGL发生了一些变化,但仍保留了它的所有基本特性,其中的一些现在看来是多余的。还有很多特性实际当中很少使用。包括Nokia 和 ARM在内的许多公司正在同Khronos合作开发OpenGL ES,一个针对嵌入式系统的子集。目标是删除API中不必要的和很少使用的组件,修改它使其更多的考虑移动设备的实际情况,比如缺少专用的浮点硬件(对使用ARM矢量浮点协处理器内核的硬件是个例外)和有限的内存容量(包括RAM和ROM)。有一个针对移动设备的低级直接模式的API标准,对于移动图形硬件的开发也是有好处的,因为它提供了一个硬件和软件驱动都应该支持的最小化功能集合。
低级图形API允许开发者更低层地接近硬件,在诸如交互式游戏的开发中获得更高的性能。然而,对于第三方的开发者要想利用这些API,必须开放移动设备的操作系统,允许用户开发和安装新的应用。尽管形势正在快速的变化之中,但是传统的诸如移动电话等嵌入式设备在这一点上是不开放的,因为Symbian OS和Java ME(Micro Edition)等开放式应用平台获得了很大发展。除了致力于OpenGL ES的开发,它是一个特别适合于Symbian OS平台上运行的图形API;诺基亚正在领导着针对Java ME平台的3D API 规范JSR-184的开发。
如果移动设备是资源受限的,运行在Java ME平台上的程序使用的资源是较少的。Java ME程序能够比所谓的原始程序(C 、C++ 和汇编语言)使用更少的内存,无论是在动态的运行情况还是在存储程序的静态情况。同时,Java程序需要较多的运行开销。因此,需要大量的附加功能,比如一个情景图表表示了对象的结构,它们的外观和观看这个情景的快照,还有激活对象的机制和它们的属性。更高层次的API意味着较少的功能调用,因此,执行时间的很大部分将耗费在临界速度的内部循环上,它是以C、汇编或专用硬件实现的图形驱动。同时,更高层次的库函数具有更多的功能,这些功能不同的应用可以重复使用,这些应用本身也变得很小。JSR-184是OpenGL ES的补充:它们的描述模式是兼容的,因此,针对OpenGL ES的专用图形加速硬件,同样也可以加速JSR-184。
SVG是文件格式和针对动画的,OpenGL ES是一个低级的编程API,JSR-184可以认为是两者的组合。必须承认这样的事实,大多数的图形内容不是由编程者创造出来,而是由图形艺术家完成的。JSR-184标准定义了它自己的二进制(因此变得紧凑)文件格式,这种格式的文件很容易被调入,从而产生情景图表。简单的内容几乎不需要编程,但是因为Java是一个完全的编程语言,它的API调用提供了访问情景图表组件的方法,可以编写任意复杂的程序来操纵从文件中装载的图形对象。

移动性带来的好处
在计算性能方面,移动设备和桌面计算机相比处于劣势,但移动设备也有一些重要的优点。很明显,移动设备能够伴随你旅行,这意味着它总是可以得到的,而不是像桌面计算机那样必须放在办公室或手提箱里,很不方便。也可以随时使用移动设备玩游戏打发时间,或网上冲浪等等。移动设备可以使人们在需要的时候获取信息。例如,导航功能能够产生所在地周围环境的3D画面,并指示方向。当想要和朋友开始一个特别的游戏比赛,对抗另外一支远方的队伍,而这时你正在酒吧休闲,这时移动平台会帮你大忙。
在未来,移动设备在一些图形应用方面会变成一个更好更便利的平台。在现实中,通过增加或变换人体周围物体的外观,一个人的感觉(特别是视觉)将被扩大。如果扩大的现实真的能够实现,提供这种功能的移动设备必须时刻伴随在你的身边,而不是被迫进入到扩大的现实。其中核心的部件,如照相机、计算单元和显示部分已经能够在一个紧凑的移动设备中得到。大约10年以后,我们中的一些人将能够手里拿着自己的个人“全息驾驶舱” 漫步,这并不是不可想象的事情。■ (于永学译)

相关推荐

Lumia 820也被提前拆解了

2012-11-01

无线充电的秘密 Lumia 920拆机图曝光

2012-11-01

诺基亚秘密研发Android手机?

诺基亚  Android  2013-12-27

诺基亚与HTC版权之争持续升温

诺基亚  HTC  2013-12-25

微软收购诺基亚:专利大棒挥向中国手机商?

微软  诺基亚  2013-12-25

诺基亚东莞工厂出现罢工 抗议出售给微软

诺基亚  手机  2013-11-20
在线研讨会
焦点