Tegra 2 GeForce處理內核相關介紹
Tegra 2之所以強大除了采用兩顆頻率高達1Ghz的Cortex-A9處理器之外,另外一個非常重要的原因就是它在手持設備中引入了強大的Geforce處理器,借助于Geforce處理器的強大性能,可以為Tegra 2提升3D圖形性能以及加速網頁瀏覽等諸多功能。下面我們就來說說Tegra 2里面非常重要也非常強大的Geforce處理器。
八個核心構成GeForce處理器
Tegra 2的GeForce內核實現了功能強勁的管線頂點和像素處理架構,可通過各種特性降低功耗和提高圖形質量,支持下一代移動 3D 游戲、流暢的高清視頻播放、在線 Flash 游戲性能和高度響應的移動 GPU 加速用戶界面,而不會影響 移動電源 預算。
OpenGL ES 2.0 圖形處理管線
OpenGL ES 是一個標準的應用程序編程接口 (API),開發人員可使用它為智能電話、平板設備和便攜式游戲設備等移動設備編寫圖形應用程序。OpenGL ES API是桌面OpenGL API 規范的一個子集,并且在圖形應用程序和 GPU 硬件之間定義了一個靈活而強大的低級接口。最新的 OpenGL ES 2.x 規范針對完全可編程的 現代 GPU 管線,并將 API 的所有固定函數元素替換為可編程著色。大多數移動 GPU 架構均采用OpenGL ES API 標準,并且主要根據OpenGL ES API 的定義來實現邏輯處理管線。
OpenGL ES 2.0 邏輯圖形處理管線
為了顯示游戲或圖形應用程序中定義的場景,應用程序開發人員必須先使用3D建模軟件創建各種3D對象和角色模型。每個對象和角色都可以由數百、數千甚至數百萬個相互連接的三角形網格構成,具體取決于所需的幾何真實水平。
三維圖像上的三角網格
接下來3D游戲軟件或其他3D應用程序可以使用這些模型,并將它們置于模擬的3D場景或“3D世界”中。3D世界通過XYZ坐標系定義,并且3D對象或角色將放置在3D世界的特定位置上。對象中的每個三角形都由它的三個頂點定義,并且每個頂點都由代表其屬性的一組數值構成,這些屬性包括在3D世界中的XYZ位置、顏色值 (RGB)、阿爾法透明度、紋理坐標、法線等。隨后,定義對象特定部分的頂點集將分組到一個頂點緩沖區中,后者類似于原始頂點流。
3D軟件會向GPU驅動程序發起一個OpenGL ES調用,指向共享系統內存中的頂點緩沖區位置,從而允許 GPU 直接訪問和處理數據。OpenGL管線的原型處理階段發生在GPU中,并且會將傳入頂點數據轉換為可供GPU使用的格式和組織。隨后,頂點會傳遞至Vertex著色器;這時,頂點著色器程序可以運行各種矩陣轉換和光照計算,以便將頂點移至新的X、Y和Z位置,或者改變燈光值等屬性。
轉換后的頂點將被組裝為原型, 然后光柵化階段會將原型轉換為像素片段,為像素著色器階段做準備,F在,像素片段處于2D屏幕空間格式。像素著色階段將運行像素著色器程序來處理每一個像素,并且可能會應用新的照明或顏色值、應用紋理或者執行各種其他操作來計算應用于像素的最終顏色值。
在典型的OpenGL管線中,隨后會對各個像素運行Z緩沖測試,以確定是否比幀緩沖區中的相同屏幕位置中的已有像素更加接近觀眾的眼睛。如果確定新像素更加接近觀眾,它會取代幀緩沖區中的已有像素值,但如果它在已有像素后面,則會被丟棄。(注意:幀緩沖區可能位于與CPU共享的系統內存空間中,或者可能位于專用內存中,比如大多數獨立 顯卡 所使用的內存)。
如果可見像素的 Alpha 值指示它是部分透明的,那么它將與相同屏幕位置的幀緩沖區中的已有像素相混合。如果啟用了抗鋸齒,那么可以通過修改像素的顏色值來創建更加平滑的邊緣,以便在寫入幀緩沖區中之前減少鋸齒效果。