解密圖像顯示控制器的3D功能一
如今, 消費(fèi)電子用戶通常希望液晶顯示屏的用戶界面包含3D元素。自最初的3D界面上市以來(lái),消費(fèi)者們已習(xí)慣了看到有縱深且能夠旋轉(zhuǎn)的物體,以及能在屏幕上移動(dòng)來(lái)顯示更多選項(xiàng)的菜單。iPad、iTouch和Android設(shè)備就是最好例證。成千上萬(wàn)的液晶顯示驅(qū)動(dòng)消費(fèi)類設(shè)備都以具備3D功能作為核心的用戶界面技術(shù)。
3D優(yōu)于2D的原因顯而易見。從清晰度來(lái)看,2D圖像就像一張照片,只有寬度和高度,沒有深度。一輛車的2D圖像可以旋轉(zhuǎn)、縮放,在屏幕上做二維(‘x’和‘y’)移動(dòng)(轉(zhuǎn)換)。而3D圖像可以做三維(‘x’、‘y’和 ‘z’)的旋轉(zhuǎn)、縮放和轉(zhuǎn)換。3D物體有深度,是全視角的。這是基于人對(duì)空間和物體的認(rèn)知,3D可使人們獲得更直觀和互動(dòng)的體驗(yàn)。有效的3D圖像讓消費(fèi)者享受視覺盛宴,幫助定義產(chǎn)品的風(fēng)格和價(jià)值,并傳遞大量的信息。
生成3D圖像需要復(fù)雜精尖的圖像顯示控制器(GDC),而它又需要一個(gè)幾何單元和結(jié)構(gòu)處理單元。將這些元素整合到一個(gè)圖像引擎中可提供最佳性能,如圖一所示。
作為該技術(shù)的領(lǐng)先者,富士通在嵌入式圖像市場(chǎng)已活躍了十多年,而涉足圖像領(lǐng)域已近二十年,它設(shè)計(jì)、開發(fā)并幫助客戶集成領(lǐng)先的2D和3D 圖像顯示控制器。因此,讓我們回顧一下這些強(qiáng)大而創(chuàng)新器件的基本原理。
當(dāng)前,許多最好的圖像控制器對(duì)2D和3D圖像都能駕馭。但在許多情況下,系統(tǒng)設(shè)計(jì)者并沒有充分利用已有的3D功能,而這一功能可以給終端用戶帶來(lái)許多益處。例如,在汽車應(yīng)用中,駕駛者想要了解泄氣的車胎或不亮的車燈的情況。應(yīng)用2D技術(shù)就要求具備許多預(yù)置圖像,以此來(lái)突出所有可能的角度和情況。加之“車門或后備箱微開”的情況,就需要數(shù)百兆字節(jié)的預(yù)置2D圖像(圖2)。
而有了3D技術(shù),所有這些及更多要求只需不到一兆字節(jié)的圖像和幾何數(shù)據(jù)就可輕松搞定。
3D物體的工作原理
3D物體由三角形“網(wǎng)格”構(gòu)成,這些三角形勾勒出物體具體的形狀。物體越具體詳細(xì),所需的三角形也就越多(圖4)。構(gòu)成物體形狀的三角形數(shù)量依所需物體顯現(xiàn)的真實(shí)度而異。
每個(gè)多邊形都有三個(gè)頂點(diǎn),每個(gè)頂點(diǎn)都在“模型空間”中有“x”、“ y” 和“ z”坐標(biāo)。這些頂點(diǎn)通常表示為一系列的浮點(diǎn)數(shù)。整個(gè)模型完全由這些浮點(diǎn)數(shù)構(gòu)成,這些浮點(diǎn)數(shù)組成了模型的頂點(diǎn)數(shù)組。
下一步是對(duì)模型進(jìn)行“陰影處理”或“紋理繪制”,以使其看起來(lái)更像實(shí)物。陰影處理的過(guò)程其實(shí)就是簡(jiǎn)單地為每個(gè)三角形填色??蓪?duì)三角形進(jìn)行單色陰影處理——即只在三角形中填充一種灰度或顏色;也可以進(jìn)行高氏陰影處理——即基于每一個(gè)頂點(diǎn)的顏色來(lái)填充漸變色(圖5)。
要使物體看起來(lái)更真實(shí),就要添加其它復(fù)雜的效果。含有陰影處理器引擎的圖像顯示控制器可以實(shí)現(xiàn)包括水、煙、火和反射性表面屬性等其它效果。
應(yīng)用紋理繪圖的過(guò)程與給塑料模型印花來(lái)增加真實(shí)度相似。像印花一樣,紋理繪圖使網(wǎng)格狀的框架變成一個(gè)更逼真的圖像。紋理繪圖是一個(gè)由多個(gè)獨(dú)立小圖像構(gòu)成的2D方形圖,這些小圖被放置在多邊形網(wǎng)格的特定位置。一個(gè)叫UV圖的表格指定了這些位置,該圖包括了紋理繪圖中每一個(gè)“印花”的坐標(biāo)(圖6)。
紋理繪圖一旦應(yīng)用于多邊形網(wǎng)格,就可以建立起一個(gè)完整的3D模型,既有深度,也可以旋轉(zhuǎn)、縮放及隨三軸(x、y、z)轉(zhuǎn)換。在應(yīng)用了紋理繪圖以及圖像處理器處理了頂點(diǎn)和紋理繪圖數(shù)據(jù)之后,你即可看到如圖七所示的完整的3D模型。
通過(guò)使用圖像芯片的幾何引擎,這一模型現(xiàn)在可以任何方式進(jìn)行動(dòng)畫模擬、從任何角度進(jìn)行位置擺放。只要擁有3D模型(多邊形網(wǎng)格和紋理繪圖),無(wú)需提供任何其它數(shù)據(jù),你就能全方位地展示3D模型。通過(guò)沿著3D模型的三個(gè)軸進(jìn)行縮放、旋轉(zhuǎn)和轉(zhuǎn)換,你可以獲得無(wú)限量的圖像數(shù)據(jù)。正如之前指出的,無(wú)需昂貴的閃存或系統(tǒng)存儲(chǔ)器,你就可呈現(xiàn)車胎數(shù)據(jù)、故障的車燈和車門狀況等任意數(shù)量的信息和提示。
富士通的“Jade”和“Emerald”是經(jīng)過(guò)驗(yàn)證、具有復(fù)雜3D功能和領(lǐng)先的圖像顯示屬性的圖像顯示控制器的樣板。MB86R0x Jade系列圖像顯示控制器被用于多種汽車和工業(yè)應(yīng)用。MB86R1x Emerald系列圖像顯示控制器則可讓開發(fā)者有能力實(shí)現(xiàn)未來(lái)更雄心勃勃和復(fù)雜的3D應(yīng)用。
充分發(fā)揮優(yōu)勢(shì)
然而,在很多情況下,現(xiàn)有的應(yīng)用并未充分使用Jade的3D功能。這就太可惜了,因?yàn)?D技術(shù)可以在現(xiàn)有的平臺(tái)上實(shí)現(xiàn)更加復(fù)雜的圖像功能,只需更改軟件即可。換句話說(shuō),汽車廠商、游戲開發(fā)者和其他消費(fèi)類電子公司可為現(xiàn)有的設(shè)計(jì)注入新鮮血液,而這并不需要花費(fèi)額外的硬件工程費(fèi)用,因?yàn)閾碛羞@一功能的硬件和顯示已經(jīng)存在。
那么,使用這一功能需要什么呢?就Jade而言,只是去使用現(xiàn)有的3D軟件庫(kù)就萬(wàn)事大吉。為使過(guò)程更為便捷,Jade助手庫(kù)(Quantum)在富士通提供的圖像庫(kù)(V03)(圖8和圖9)中,幫助完成建立幾何和紋理繪制所需的絕大多數(shù)艱巨工作。而Emerald則使用類似于OpenGL ES 2.0的圖庫(kù)。
Jade和Emerald在其核心部位為3D運(yùn)行提供了巨大支持。這些圖像顯示控制器的圖像功能中,至少有一半與3D技術(shù)相關(guān),包括:
3D 基本要素—— 點(diǎn)、線、線帶、三角、三角帶、三角扇、任意多邊形
防失真
高氏陰影處理、單色陰影處理
紋理繪圖——過(guò)濾、透視校正、混合模式、alpha顏色混合及遮蓋技術(shù)
幾何處理——MVP變換、裁剪、篩選、視見區(qū)轉(zhuǎn)換
Z-緩沖——消除隱藏面
多邊繪圖標(biāo)志緩沖器
OpenGL ES 2.0——可兼容陰影處理器引擎(只限Emerald)
評(píng)論