“Molehill” 是即將在Adobe® Flash® 平台出現的支持顯卡加速的3D底層API。 這組底層API會讓3D開發者利用GPU性能得到驚人的效率提升。 這是什麼概念呢? 今天, Adobe Flash Player 10.1可以在大約30Hz下渲染幾千個非Z緩衝三角形,而利用全新的3D API,可以在60Hz左右的高分辨率顯示器下全屏渲染近百萬的Z緩衝三角形。 利用新的3D API,Flash Player和AIR可以在差不多所有的計算機和聯機設備中提供高水平的3D體驗。
大家所熟知的ActionScript 3D第三方框架如Alternativa3D, Away3s, Flare3D, Sophie3D以及Yogurt3D也將完美整合這組最新的3D API。
下面是關於Molehill的一些焦點問題:
Molehill API提供什麼樣的3D功能?
技術上講,“Molehill” 是一組可編程的基於shader著色器的3D API, 包括諸如z軸緩衝、模具顏色緩衝、碎片和角頂點著色器、立方體紋理以及更多的特性。 ”Molehill” 將允許開發者在任何可能的情況下調用GPU,同時也提供當GPU不兼容的情況下使用CPU來做備用處理器的方案。
這個新的3D API和Flash Player 10介紹過的3D功能有什麼不同?
在Flash Player 10, 我們介紹了一組可供ActionScript開發者和設計師針對2D物體製作3D特效的API。 那些3D特效允許開發者對物體添加透視,也就是我們常說的2.5D或者“空間裡的明信片”。 另外,這些利用軟件渲染的3D特效無法在復雜度極高的場景中用在大量的物體中。
Adobe為什麼要在Flash Player裡增加3D功能?
3D已經成為我們客戶中最普遍的要求。 在Flash Player中增加真實的3D體驗,兌現了Adobe關於創新和提供一個更完整的Flash平台的承諾。 Adobe曾經利用視頻促進了網頁的發展,現在我們要利用3D促使網頁的再一次進化。 從交互的站點,電子商務平台到遊戲市場,3D將在任何地方與每一個人見面。
是不是說在Flash Player10中介紹過的3D API就不再被推薦使用了呢?
不是的,起初在Flash Player 10中介紹過的3D API 會繼續為設計師,交互設計師和開發人員提供一個簡單的方法來給2D的內容增加3D效果。 此次的底層3D API面向的是高級開發人員,用GPU加速來搭建複雜的3D體驗。 到底使用哪種3D API還是需要根據實際的需要和內容的種類來決定。
硬件有什麼要求?
我們正在致力於使3D的內容在各種環境和硬件配置下都能保證最佳的運行效率。 3D API在Windows操作系統下依賴DirectX 9,在Mac和Linux下依賴於OpenGL 1.3。 對於移動平台,Flash Player會依賴於OpenGL ES 2.0。 對於那些不兼容的顯卡,其備用的解決方案是,Flash Player會使用一個叫做SwiftShader的軟件來進行光柵渲染,這是一項由TransGaming提供的專利技術。
如何對比3D API和HTML5 WebGL?
從設計角度上說,我們的目的和WebGL非常相似。 然而,我們提供一個統一的跨瀏覽器的方案,使在幾乎每一台計算機和聯網設備上都能享受3D的體驗。 另外,Flash Player中的GPU加速3D功能是建立在當前Adobe Flash Player的所有具有豐富表現力的功能之上。
開發者什麼時候可以使用這組新的3D API?
我們會在將來的一個新版的Adobe Flash Player中介紹這組API,我們計劃在2011年上半年發布一個公測的Beta版本,屆時開發者便可以使用這組API並向我們提供寶貴的建議。
這組3D API也會同時面向Adobe AIR麼?
是的,我們計劃將在發布Flash Player版本的同時將這組API集成在Adobe AIR裡面。
設計師和開發者什麼時候可以使用Molehill來開發3D內容? 使用什麼工具?
開發者可以在2011上半年的新版Flash Player中使用。 在Beta階段,開發者可以使用Adobe Flash Builder或者Adobe Flex SDK(更新的SWC將包含所需的API)。
移動設備中的Flash Player也將支持3D麼? 什麼時候?
是的,我們也將在移動平台上支持這組3D API,如Android和Linux Mobile。 我們會與合作者一起通過Open Screen Project計劃,在設備中的Flash Player 和AIR上啟用3D。
資料來源: http://jamesli.cn/blog/?p=371