根據OVUM評估,2006年手持裝置的娛樂產值將高達四十億到一百五十億美金之間。所有相關的研發廠商都看中這塊肥美的產業大餅,對這未來的產業投注下許多心力。如果讀者不太清楚天天使用的手機中,有了什麼樣的新發展,希望下文能提供您一些新知。
3D技術的硬體限制
3D裝置向來給人高耗能、高硬體要求的感覺,因為在PC上的3D相關裝置的確如此。吃電猛、溫度高不說,一片高階的顯示卡還需要特別裝個風扇來吹,如此才不會因為過熱而損壞或無法動作。這樣的東西要是放到了PDA或手機裏面,就算供電充足,讀者也很難拿著一個攝氏50度以上的熱源,開心地享受高級的遊戲畫面。假如再把電池使用時間考慮進去,玩不到二分鐘就要換電池或充電的感覺,絕不是件愉快的事。
3D技術的軟體規格
考慮以上種種問題後,手持裝置的作業系統一開始都不把3D功能列入考量,更不要說支援了。隨著硬體的演進、系統的耗能降低、運算速度增加,以及使用時間卻變長,複雜的3D遊戲才總算有在手持裝置上實作的可能。
作業系統不支援,又沒有專用3D硬體,所以早期手持裝置上的3D是採用軟體程式庫的方式構成,靠著CPU的運算能力來繪製3D畫面。遊戲開發廠商採用這些程式庫,就可以很容易的在手持裝置平台上設計出3D遊戲,而往後也可以透過同樣的程式庫介面來支援新的3D加速硬體。如Superscape、Hi Corp和Fathammer等公司都是這種程式庫介面的代表性廠商。
Nokia所發表的機型N – Gage就是一個支援3D遊戲的例子,PC上的動作遊戲「古墓奇兵」就有N – Gage的版本,如(圖一)。
類似的產品還有另一家手機公司Sony Ericsson的P800,它可以執行Vasara公司的3D遊戲MIB II – Alien Pursuit,如(圖二)
![《圖二 Sony Ericsson P800的MIB II – Alien Pursuit》](/art/2004/05/261203237587/p2.gif)
《圖二 Sony Ericsson P800的MIB II – Alien Pursuit》 |
|
目前這樣的市場需求已經很明顯了,而手持裝置的作業系統自然不能再視而不見,於是作業系統的廠商在這個領域裡,紛紛投入大量的人力研究,並發表新的規格。這些廠商包括在PDA上著力的Windows CE、Palm OS等、手機的作業系統Smartphones、Symbian等,以及還有一個想要一統江湖的Sun Java。
Direct3Dm
在手持設備的作業系統中,Windows CE/PocketPC和Smartphones都屬於微軟的陣營;不過一直在PC市場稱霸的為微軟自然也不會想放過這個市場,是它們於把在PC作業系統上的成功經驗,拿到手持設備的市場上應用。在3D方面,微軟在軟體上最成功的經驗就是Direct3D。將Direct3D精簡後,以染色器(Shader)為主幹,構成了手持裝置平台的Direct3Dm,而m所指的就是Mobile。
和Direct3D一樣,Direct3Dm也是採用COM的架構來設計。熟悉Direct3D的遊戲開發商,應能很輕易地把遊戲移植到Direct3Dm上。當然除了容易移植外,完善的開發平台也是這些遊戲廠商中意的一點。因為微軟提供的.Net平台,可以讓這些遊戲在PC上完成開發及部份測試,不需要在浪費時間在實機上Debug。
Direct3Dm是這個市場的生面孔,詳細確定的規格仍在準備中。不過靠著微軟的名號,目前已經有硬體廠商配合開發晶片了。這些廠商也是微軟在PC上的合作伙伴,其中包括nVidia和ATI。nVidia發表的AR10宣稱已經支援Direct3Dm,過些時日應可見到產品的展示。
OpenGL ES
OpenGL向來是專業3D繪圖函式庫的標準界面,雖然在PC遊戲市場聲勢不如Direct3D,但在PC以外的繪圖市場仍是許多廠商的最愛。也因為OpenGL過於專業,提供的函式既多且亂,實作起來相當複雜,較不適合手持裝置這樣容量精巧、運算能力有限的平台使用。
Knronos Group針對這樣的需求,把OpenGL 1.3版的內容再簡化,推出了OpenGL for Embedded System(OpenGL ES)1.0版。OpenGL ES推出的時間比Direct3Dm早,基本介面又和OpenGL相差無幾,所以許多手持裝置遊戲程式庫和硬體晶片多半都支援這個規格,且在相容性上會比一些新規格更有保障。Khronos Group的目標,不只是把OpenGL帶到手持裝置的世界,他們更希望能讓OpenGL ES成為手持裝置的顯示標準。
為了達成這個目標,OpenGL ES除了基本的3D繪圖函式,還有圖形、影像等多媒體處理能力。而按照這個規格設計的軟體,都能整合在一個平台上使用,且具有平台間的移植能力。OpenGL目前已往版本2.0發展,而OpenGL ES仍是1.3延伸出來的產品,但隨著OpenGL的進展,會將發展中新增的特色一一附加到OpenGL ES上。不過確保這些新功能的支援要素,還是要靠硬體能力的增加。
J2ME
Sun Java最早推出的訴求,就是能夠在不同作業平台上執行一致的Java程式,且不需要再經過重新編譯等過程,就可以達到跨平台的要求。然而遇上手持裝置這樣的小平台,Java體積略大的函式庫及執行環境就成為一種負擔了;此外,手持裝置需要經常在網路上傳輸資料或下載程式執行,和一般作業平台又有所不同。為此,Sun在2002年發表了Jave 2 Micro Edition(J2ME),這是專門針對行動裝置設計的語言,再加上Mobile Information Device Profile(MIDP)的功能,使得J2ME的程式能透過MIDP,來支援手持裝置上的各種輸出入界面;當然也支援圖形、網路等功能。
J2ME的程式又稱為Java MIDlet,和我們常見的Applet不一樣。它的體積非常地小,也和Java Applet同樣能在所有支援J2ME的平台上執行。MIDP之所以擁有這樣跨平台支援硬體的特性,是因為MIDP是架構在Connected Limit Devices Configuration(CLDC)之上。CLDC解決了不同硬體的相容問題,並提供界面給MIDP使用,所以使用MIDP的MIDlet,就有了跨平台執行的能力。
這樣為手持平台打造的語言,又有跨平台的功能,使得J2ME推出後大受歡迎,各式手機和PDA幾乎都支援J2ME。也因為本身具有多媒體的處理功能,用J2ME來設計遊戲可以省去開發不同平台版本的成本,所以一開始吸引了不少廠商和研發人員投入。
儘管J2ME有著崇高的理想,但在最初規格訂定上卻略嫌短視。MIDP 1.0的圖形處理功能上不盡理想,在3D支援上更是薄弱,並不能滿足開發人員的要求,以至於許多廠商開始開發自己的MIDP版本,以求支援更多的圖形及3D功能。例如Aromasoft致力於將OpenGL ES帶到J2ME的世界中,以及日本NTT DoCoMo也發展了DoCoMo Java(DoJa)加強多媒體特效,而DoJa 2.0版則連3D也納入了。
身為Java主要大廠的Sun也從善如流地加強了MIDP,並訂出2.0版的規格,加入了稱為Game Package的多媒體函式庫,以加強遊戲開發方面的功能。不過最後,3D功能還是納入J2ME的懷抱,成為Mobile 3D Graphics API for J2ME(JSR184)的規格。以上討論的種種並不是什麼秘而不宣的事,任何有興趣的研發人員,都可以到Sun的官方網站下載MIDP的SDK回來使用。
3D技術在硬體上的改進
要在行動裝置上使用3D,硬體就是一個門檻,沒有強力硬體的支援,即時3D功能形同空口白話。基於這點,目前很多公司針對3D的效能改善紛紛有了動作。如發展XScale系列的Intel公司,已經發表了工程代號Bulverde的PX27x晶片,時脈最高可達624Mhz,還有內建的Wireless MMX技術。這樣的能力比起早期一些Pentium PC還要強大的多,當然也能執行一些3D運算。
有了硬體,Intel於2004年2月和Superscape公司合作,針對Superscape的Sweve Mobile 3D Graphics API最佳化,加強軟體面的配合。以筆者個人經驗,400 Mhz的XScale在執行簡單3D Game的能力已經十分出色,解析度為320x240時不會有停頓等情況。不過在640x480的解析度下使用624Mhz XScale,並配合Wireless MMX的效果會如何呢?十分讓人期待。
在顯示晶片方面,PC繪圖晶片的大廠nVidia推出的是GoForce系列,支援圖形及影像的壓縮及解壓縮,並主打行動裝置的視訊會議等功能;在3D方面則推出AR10,強調支援OpenGL ES及Direct3Dm。
不過nVidia的對手公司ATI,早已在行動裝置上推出代號為Imageon的一系列晶片,功能與nVidia的GoForce相仿。其中Imageon 23xx系列,更是擁有處理3D能力的強大晶片。從這裏可以看出,PC上繪圖晶片的兩大龍頭,對手持裝置市場抱持著十分積極的態度,當然也希望他們的競爭能給消費者帶來更物美價廉的產品。
其他PC上的繪圖晶片設計公司如XGI圖誠或威盛的S3等,目前仍沒有對外放出消息,據了解應該也是在籌劃中。若這兩家公司加入戰局,可以期待全3D化的手持裝置時代將會很快地來臨。
原先就在手持市場發展的Motorola和TI等公司也沒在3D上缺席,去年底Morotola就發表了i.MX21處理器,能加強影像及繪圖顯示的效能,支援OpenGL ES、Superscape、Hi Corp和Fathammer等繪圖函式庫;TI則在今年初,針對3G手機發表了OMAP 2晶片,加強多媒體效能和每秒可處理200萬個2D/3D的多邊形繪圖加速器。
行動3D的未來與趨勢
手持裝置的3D發展談了這麼多,也有相當的成果,但實際上卻很少見到有人在這些小螢幕上玩起3D電玩,這也難免會讓人質疑手持裝置上的3D遊戲是否真有市場。的確,即使是現在PDA 320x240的解析,對大部份的人來說仍是十分粗糙;而支援640x480解析度又有3D功能的手持裝置,更是難以負擔的天價品,成本要壓低和普及都是件很難的事。最讓人質疑的是小小手持裝置,要3D何用?了不起是台高級的小型電動玩具。
沒錯,手持裝置的3D功能,目前主打多為娛樂市場,但放大眼光來看,其實手持裝置的晶片,如Intel、Motorola等,都已經開始可以外接的顯示裝置,解析度也很高。這表示以後做簡報或有任何相關需求,使用者可以帶著手持裝置,再找個大螢幕就能使用,比筆記型電腦更具機動性。
回到娛樂的領域來說,手持裝置的遊戲仍在發展階段;目前有很多規格仍在發展中,像Direct3Dm就是其中之一。不過一旦Direct3Dm等發展後,就能大量的移植PC的遊戲到手持裝置上;接下來再配合手持裝置的便利性,線上遊戲等也有機會出現在手持平台上,其帶來的產值十分驚人!
手持裝置雖小,研發其中技術要投入的人力物力卻十分地高,而省電和高效率的要求,更是一般PC晶片的數倍。在末來發展的方向中,應用方式是所有軟硬體廠商正在摸索的事。如果讀者還沒有機會接觸3D的手持裝置,別心急,那只是時間還沒到罷了。
對筆者來說,手機真的純粹只是講話用,記事功能則委任給筆者的PDA處理,因其畫面大又方便,不過對別人來說就不一定了。在手機螢幕變大和色彩豐富後,這個手機使用的需求將會顯得更明顯。
根據統計,日本、韓國在手機娛樂市場的開發最為先進,其產值也最高。而這個風潮也漸漸地影響到歐洲、美洲等地。但行動3D技術的需求太高,價格也很難平易近人,再說手機目前的解析和螢幕大小,讓3D遊戲沒有太大的發揮空間;所以目前要推廣和普及化,實在有一定的困難度。
(資料來源:資訊工業策進會多媒體技術實驗室及Wireless playing to Win:OVUM歐洲首席電訊IT產業顧問公司於2002年發表)
<作者為電子產業研發工程師>
|
![](/images/arrow.gif) |
PC繪圖晶片市場打的火熱的ATi與nVIDIA,看好移動裝置市場的無限潛力,早已將戰線
拉至移動裝置市場,推出可攜式裝置專用的媒體處理器(Media Processor)及3D加速器(3D
Accelerator),讓手機廠商加入這類晶片,以提升繪圖效能,成為媲美掌上遊戲機的萬能手機。相關介紹請見「下一代手機遊戲平臺ATi領跑」一文。 |
![](/images/arrow.gif) |
不久前,幾個不同的開發者團體私下研擬了兩個規格草案,一個是OpenGL
ES(嵌入式系統),另一個是Java行動3D API;這兩種規格一起作業時,可為手機業界提供一種軟體圖形標準。你可在「OpenGL
ES與Java行動3D API的趨勢與分析」一文中得到進一步的介紹。 |
![](/images/arrow.gif) |
過去,在小小的手機上執行3D遊戲是個不可能的任務,不過這幾年來已經有多家軟硬體
大廠開發出Mobile 3D技術,讓行動3D遊戲可以實現。在相關標準部分,目前有個Knronos
Group正在定義適合行動終端設備上的3D繪圖函式庫標準界面 – OpenGL ES,而在Java部分則有Mobile 3D
Graphics API for J2ME (JSR 184)的標準正在審定中。在「行動遊戲平台發展趨勢」一文為你做了相關的評析。 |
|
|
![](file:///E|/易立達/hopenet-mag/images/misc_spacer.gif) |