2016-09-06 70 views
0

多年來,我一直聽到各種圖形術語,通過其他人在工作中進行對話,但每次我嘗試獲得基本的理解時,我發現它很困難,因爲它似乎有很多術語過載在不同的背景下意味着不同的事物。我一直試圖從Linux/Android的角度來理解這件事情。我真的很想了解Android圖形體系結構,但是通過閱讀大量我正在圈圈的材料,因爲下面的條款。澄清過載的圖形術語

渲染 - 維基百科定義是指創建3D場景的2D柵格表示的圖形管線。我還聽說渲染這個術語用來指在屏幕上顯示某些東西,即「渲染到屏幕上」。

紋理 - 我擡頭看OpenGL的定義,但我似乎聽到人們有時會互換使用曲面和紋理,這兩者我都不明白。

表面 - 我見過一個Android定義,表示一個表面是一個物體,它將像素合成到屏幕上。不過,我認爲在圖形/ OpenGL的說法,這意味着不同的東西。

Framebuffer - 我熟悉Linux內核framebuffer抽象,但OpenGL的定義看起來不一樣。令人困惑的是我發現的OpenGL「default framebuffer」定義似乎與Linux內核framebuffer的定義接近,但我不認爲它們指的是同樣的東西。

+0

你問關於「Android圖形體系結構」還是OpenGL?因爲這兩個答案不一定是相同的。 –

+0

我想了解使用OpenGL ES進行構圖和渲染的Android圖形體系結構。我希望一旦我澄清了OpenGL術語,事情就會變得更有意義。 –

回答

0

渲染:車削抽象數據轉換成具體的圖片

紋理的過程:兩組A和B之間的surjective映射,通過以規則的網格的一組離散的樣本所定義的集合B.座標A〜值真的,這是抽象的。在實踐中,紋理是具有在m維空間中的像素值的基於n維像素的圖像。 n和m的典型值爲4.

表面:在計算機圖形學術語中,「表面」可以從中交換地讀取和寫入圖像數據。

幀緩衝區:一般而言,內存區域和邏輯描述的組合可以將此內存解釋爲n維圖像。在Linux中,framebuffer抽象爲您提供了一個顯示輸出的內存區域,並將它與內存佈局的信息組合在一起以形成曲面。在OpenGL中,幀緩衝區也是佈局信息的內存區域。有一個默認的幀緩衝區,OpenGL確實不是而是自己管理,但由操作系統傳遞。然後,您可以通過使用OpenGL圖像對象(渲染緩衝區,紋理)來創建自定義幀緩衝區,並使其成爲幀緩衝區的內存。