今天的消費電子用戶通常希望液晶顯示螢幕的用戶介面包含3D元素。自最初的3D介面上市以來,消費者們已習慣了看到有縱深且能夠旋轉的物體,以及能在螢幕上行動來顯示更多選項的選單。iPad、iTouch和Android設備就是最好例證。成千上萬的液晶顯示驅動消費性設備都以具備3D功能作為核心的用戶介面技術。
3D優于2D的塬因顯而易見。從解析度來看,2D影像就像一張照片,只有寬度和高度,沒有深度。一輛車的2D影像可以旋轉、縮放,在螢幕上做二維(‘x’和‘y’)行動(轉換)。而3D影像可以做叁維(‘x’、‘y’和‘z’)的旋轉、縮放和轉換。3D物體有深度,是全視角的。這是基于人對空間和物體的認知,3D可使人們獲得更直觀和互動的體驗。有效的3D影像讓消費者享受視覺盛宴,幫助定義產品的風格和價值,并傳遞大量的資訊。
產生3D影像需要復雜精尖的影像顯示控制器(GDC),而它又需要一個幾何單元和結構處理單元。將這些元素整合在一個影像引擎中可提供最佳性能,如圖一所示。
圖1:影像SoC整合。
作為該技術的領先者,富士通在嵌入式影像市場已活躍了十多年,而涉足影像領域已近二十年,它設計、開發并幫助客戶整合領先的2D和3D影像顯示控制器。因此,讓我們回顧一下這些強大而創新元件的基本塬理。
目前,許多最好的影像控制器對2D和3D影像都能駕馭。但在許多情況下,系統設計者并沒有充分利用已有的3D功能,而這一功能可以給終端用戶帶來許多益處。例如,在汽車應用中,駕駛者想要了解泄氣的車胎或不亮的車燈的情況。應用2D技術就要求具備許多預置影像,以此來突出所有可能的角度和情況。加之‘車門或后備箱微開’的情況,就需要數百GB的預置2D影像(圖2)。
圖2:顯示旋轉的2D影像(還需幾百個影像來顯示完整的旋轉動作) 。
而有了3D技術,所有這些及更多要求只需不到1GB的影像和幾何數據就可輕鬆搞定。
3D物體的工作塬理
3D物體由叁角形‘網格’構成,這些叁角形勾勒出物體具體的形狀。物體越具體詳細,所需的叁角形也就越多(圖4)。構成物體形狀的叁角形數量依所需物體顯現的真實度而異。
圖3:3D影像──單一物體可以旋轉至任何角度,縮放至任意大小,突出任意部位(輪胎、車燈、車門等等) ?!?/i》
圖4:一款福特汽車的多邊形網格。
每個多邊形都有叁個頂點,每個頂點都在‘模型空間’中有‘x’、‘y’和‘z’坐標。這些頂點通常表示為一系列的浮點數。整個模型完全由這些浮點數構成,這些浮點數組成了模型的頂點數組。
下一步是對模型進行‘陰影處理’或‘紋理繪製’,以使其看起來更像實物。陰影處理的過程其實就是簡單地為每個叁角形填色。可對叁角形進行單色陰影處理──即只在叁角形中填充一種灰度或顏色;也可以進行高氏陰影處理──即基于每一個頂點的顏色來填充漸變色(圖5)。
圖5:3D物體網格圖、單色陰影處理圖和高氏陰影處理圖。
增加其它復雜效果
要使物體看起來更真實,就要添加其它復雜的效果。含有陰影處理器引擎的影像顯示控制器可以實現包括水、煙、火和反射性表面屬性等其它效果。
應用紋理繪圖的過程與給塑料模型印花來增加真實度相似。像印花一樣,紋理繪圖使網格狀的框架變成一個更逼真的影像。紋理繪圖是一個由多個獨立小影像構成的2D方形圖,這些小圖被放置在多邊形網格的特定位置。一個叫UV圖的表格指定了這些位置,該圖包括了紋理繪圖中每一個‘印花’的坐標(圖6)。
圖6:一款福特汽車的UV圖。
紋理繪圖一旦應用于多邊形網格,就可以設立起一個完整的3D模型,既有深度,也可以旋轉、縮放及隨叁軸(x、y、z)轉換。在應用了紋理繪圖以及影像處理器處理了頂點和紋理繪圖數據之后,你即可看到如圖七所示的完整的3D模型。
透過使用影像晶片的幾何引擎,這一模型現在可以任何方式進行動畫模擬、從任何角度進行位置擺放。只要擁有3D模型(多邊形網格和紋理繪圖),無需提供任何其它數據,你就能全方位地展示3D模型。透過沿著3D模型的叁個軸進行縮放、旋轉和轉換,你可以獲得無限量的影像數據。正如之前指出的,無需昂貴的快閃記憶體或系統記憶體,你就可呈現車胎數據、故障的車燈和車門狀況等任意數量的資訊和提示。
富士通的‘Jade’和‘Emerald’是經過驗證、具有復雜3D功能和領先的影像顯示屬性的影像顯示控制器的樣板。MB86R0x Jade系列影像顯示控制器被用于多種汽車和產業應用。MB86R1x Emerald系列影像顯示控制器則可讓開發者有能力實現未來更雄心勃勃和復雜的3D應用。
充分發揮優勢
然而,在很多情況下,現有的應用并未充分使用Jade的3D功能。這就太可惜了,因為3D技術可以在現有的平臺上實現更加復雜的影像功能,只需更改軟體即可。換句話說,汽車廠商、游戲開發者和其他消費性電子公司可為現有的設計注入新鮮血液,而這并不需要花費額外的硬體工程費用,因為擁有這一功能的硬體和顯示已經存在。
那么,使用這一功能需要什么呢?就Jade而言,只是去使用現有的3D軟體庫就萬事大吉。為使過程更為便捷,Jade助手庫(Quantum)在富士通提供的影像庫(V03)(圖8和圖9)中,幫助完成設立幾何和紋理繪製所需的絕大多數艱巨工作。而Emerald則使用類似于OpenGL ES 2.0的圖庫。
圖7:福特汽車完整3D模型。
圖8:使用Quantum進行3D處理。
圖9:Quantum 3D 引擎
Jade和Emerald在其核心部位為3D執行提供了巨大支援。這些影像顯示控制器的影像功能中,至少有一半與3D技術相關,包括:
3D 基本要素──點、線、線帶、叁角、叁角帶、叁角扇、任意多邊形
防失真
高氏陰影處理、單色陰影處理
紋理繪圖──過濾、透視校正、混合模式、alpha顏色混合及遮蓋技術
幾何處理──MVP變換、裁剪、篩選、視見區轉換
Z-緩衝──消除隱藏面
多邊繪圖標誌緩衝器
OpenGL ES 2.0──可相容陰影處理器引擎(只限Emerald)
3D技術如何顯著改善2D用戶介面
3D引擎可以像處理3D影像那樣,輕易、優雅地處理2D影像。當你將上述3D引擎的功能添加到2D影像中,就可以獲得不同凡響的效果。
例如,如果使用常規的2D技術,圖十中樹葉影像估計會消耗100MB的快閃記憶體。這當然大幅超過了許多系統的合理儲存量預算和規格,特別是對于單一影像功能而言。如果加入更多的影像功能──假設每種功能所需的空間大小相似──就需要數百MB的快閃記憶體空間才能實現所要的影像。透過使用3D引擎來完成縮放、旋轉和轉換任務,取決于所選的顏色深度等因素,我們就可以將儲存要求降低到8MB或更少。
圖10:3D動畫樹葉的自動化儀表盤。
這是透過如下方式實現的:為樹葉的每一狀態產生一幅影像;讓3D引擎來處理旋轉和縮放;然后用2D引擎來呈現影像(圖11)。
圖11:樹葉影像:Jade 前后旋轉和縮放。
3D透過其它方式來改進用戶介面開發,例如:
要求小得多的記憶體空間
支援加速的旋轉、縮放和轉換
簡化影像資產的增加或更改,以及
支援簡單的遷移路徑
更小的儲存空間
如前所述,3D單元縮放、旋轉和轉換物體的能力使開發者需要儲存的影像數量少得多。3D技術可向用戶呈現更多資訊,但對系統記憶體(DDR)和非揮發性記憶體(NOR/NAND快閃記憶體)需求產生的影響甚微。
樹葉的例子說明,使用3D影像引擎來縮放、旋轉和轉換從NOR快閃記憶體中獲得的2D影像,就可以有數千個可能的影像。
使用八位元色彩時,就可能改變動態物體的顏色,并產生諸如在兩種顏色間有褪色這種強大的色差效果。使用3D單元,可對黑白影像進行著色處理,以實現幾千種可能的顏色。透過在已完成的影像上使用2D引擎,你還可以增加臨位效應(alpha effect)(透明),并提供數以千計的其它影像效果。
具體來說,可以對2D影像元素實施如下作業:
大小縮放──包括使物體變寬或變窄的非線性縮放
如果使用的是高氏陰影處理而非單色陰影處理,可以實現單一或多種色彩
旋轉到任一角度,或
上述作業的任意同時組合
例如,假設我們以單個2D影像(圖12)開始,其未壓縮和壓縮格式分別占32K或3K的記憶體。
圖12:2D樹葉影像。
我們可以輕鬆地將這個單一影像客體轉換成一系列可以從多角度、多方位呈現的影像客體(圖13)。一旦3D引擎被用來處理2D圖畫素材,那么將單一影像物體有用性最大化的能力會成指數成長。
圖13:3D樹葉狀態。
硬體加速的旋轉、縮放和轉換
電腦影像的關鍵之一是時間。必須以最快的速度把圖畫素材收集起來并送到液晶顯示面板,否則用戶就會注意到影像的繪製過程。這一速率就是通常說的‘訊框頻’。
實現成功訊框頻的關鍵是窮盡影像處理器的所有能力,在預算時間內,使影像盡可能逼真。雖然其它因素也在發揮作用,但我們一直不懈地追求液晶顯示面板的訊框頻指標,以保證影像的流暢呈現。
在每秒60訊框(液晶顯示面板的通用刷新率)的情況下,我們只有16.66毫秒(千分之一秒)來繪製希望用戶看到的一切。影像控制器需要幾項重要的硬體功能以編繪一幅場景(例如,一個具備升級的儀表和影像元素的完整儀表板──圖14)、將影像元素轉換成所需的影像并且保證時間預算。Jade具備這些功能或模組。
圖14:具有儀表和影像元素的3D儀表樣板。
例如,在Jade的影像子系統的核心有四個關鍵硬體加速器,它們支援實現強大且極快的硬體旋轉、縮放、轉換和影像呈現。這四個模組如圖十五所示。各模組平行工作,實現了極速的影像性能。
圖15:Jade影像子系統。
目前一些汽車的整合表盤只使用這四個模組中的兩個9(2D單元和顯示控制器)。另外兩個是默認禁用的。使用3D幾何單元和紋理處理單元可以為終端用戶帶來更賞心悅目的影像體驗。
隨時增加或改變動態圖畫素材
當為系統添加圖畫素材時,圖畫素材特性通常會變身為部份底層塬始程式碼。當使用3D引擎來處理2D影像時,只需簡單地替換系統中的現有素材,而無需更改其它。
總之,當2D圖畫素材被應用于3D環境時,紋理圖子系統的規則要求:在x和y軸,紋理圖必須是2的冪(如32 x 32, 128 x 128, 256 x 256或512 x 512畫素)。儘管Jade子系統中紋理圖的絕對極限是4096 x 4096,但使用像128 x 128或256 x 256這樣合理尺寸的圖則更普遍和有效。(一個寶貴的經驗法則是:根據視覺需要確定紋理圖的大小。)
例如,考慮一幅採用128 x 128畫素紋理圖的影像。無需改變任何程式碼,我們就能完全改變樹葉的外觀,或徹底將其變成其它物體,而程式碼將繼續正常工作。這就允許開發者在不干擾編碼流程的條件下,隨時對影像進行重要的藝術再創作。
提供通往3D的更便捷之路?
在某一時刻,藝術工作室可以選擇為現有的用戶介面模板製作3D物體,而不是完全重新創作。如果3D引擎被用來處理以前用戶介面的2D影像元素,那么支援這些代替現有2D元素的新3D物體要相對簡單。這是因為處理這些影像的過程和庫調用幾乎一樣,只需增加深度軸即可讓物體達到真正的3D效果。
3D帶給藝術工作室的諸多可能性值得深究,因為3D可以為眾多產品增色。使用3D用戶介面的主要障礙來自于對整個設計週期中應用該介面存在困難的擔憂。採用富士通的影像顯示控制器,就解決了這一問題。一旦藝術工作室和開發人員知道如何將2D物體轉化為3D物體,他們就開啟了全新的、精尖的影像選擇的新世界。
為2D物體採用3D引擎的最大困難是無限的影像可能。解決之道就是明確如何最大程度地發揮可用功能的作用。
3D如何提升終端用戶的體驗
舉例也許是最能展示3D影像對終端用戶價值的方式。
在消費性電子產品領域,如蘋果公司引領的3D元素(如封面、應用和滾選圖標)在很大程度上依賴3D技術。沒有這些3D元素,就幾乎不可能傳送這數以千計的資訊節點(如iPod上的歌),用戶需要3D進行快速分類和篩選。採用3D介面技術,在有限空間裡為用戶提供成千上萬的選擇就變得很實用(圖17)。
圖16:2D與3D的差別簡示。
圖17:3D串流媒體概念。
另一個例子是汽車儀表板。標準的汽車類比儀表板(圖18)所提供的資訊有限。儀表板上的每一個實體位置只能傳達一則資訊(如燃油量)。
圖18:標準的類比汽車儀表板。
2D影像儀表板(圖19)傳達更多資訊,但缺乏深度觀感。儘管從其傳達的資訊來看,已是對類比儀表板的巨大改進,但是添加3D元素仍會帶來顯著提升。
圖19:2D影像儀表板。
2D/3D影像儀表板(圖20)在液晶顯示螢幕的左右側導入了3D元素。
圖20:2D/3D 影像儀表板。
左側的汽車影像可被旋轉任意角度,且可提供以下資訊:
輪胎壓力
車內溫度
車外溫度
燃油量
車門、后備箱或引擎蓋的開閉狀態
特定的轉向訊號、前車燈和故障車燈
右側的地球儀形狀的3D影像可以顯示:
每加侖油的行駛裡程
指南針的方位
路線導航指南
谷歌地球類形狀的下載(fly down)
使用2D技術的儀表板的中央儀表提供了大量資訊,它是由3D引擎完成縮放、旋轉等處理的。中央整合表盤(圖21)也在螢幕左右側展示了3D元素,而螢幕中央則以2D/3D元素為特色。這一1280x480分辨度的12.3英吋顯示螢幕是採用Jade處理器設計。
圖21:2D/3D的中央整合表盤概念。
儘管上述的大多數例子都是關于汽車應用的,但是3D技術可廣泛應用于其它產業和消費性產品,如游戲、資訊終端、培訓、航空和醫療設備。其中一項特別的創新應用是在冰箱上,3D影像提供了一整套可幫助用戶完成一系列任務的互動功能,從使用制冰機來調節冰箱溫度到確保冷藏室門已關緊。
隨著設計者和開放者能更加舒適、自信和創造性地使用3D影像,這些創新的實現指日可待。
評論