在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Android/ OpenGL ES 管道(Pipeline)
繪制線段 Line Segment
投影變換 Projection
繪制迷你太陽(yáng)系
繪制一個(gè)球體
繪制三角形 Triangle
OpenGL 光照模型
三維坐標(biāo)系及坐標(biāo)變換初步
定義 3D 模型的前面和后面
繪制一個(gè) 20 面體
顏色 Color
Depth Buffer
材質(zhì)及光照示例
基本幾何圖形定義
關(guān)于EGL
導(dǎo)言
Viewing 和 Modeling(MODELVIEW) 變換
FrameBuffer
設(shè)置光照效果 Set Lighting
Viewport 變換
階段小結(jié)
繪制點(diǎn) Point
OpenGL ES API 命名習(xí)慣
通用的矩陣變換指令
關(guān)于 OpenGL ES
創(chuàng)建實(shí)例應(yīng)用 OpenGLDemos 程序框架
OpenGL ES 管道(Pipeline)
GLSurfaceView

OpenGL ES 管道(Pipeline)

大部分圖形系統(tǒng)都可以比作工廠中的裝配線(Assemble line)或者稱為管道(Pipeline)。前一道的輸出作為下道工序的輸入。主 CPU 發(fā)出一個(gè)繪圖指令,然后可能由硬件部件完成坐標(biāo)變換,裁剪,添加顏色或是材質(zhì),最后在屏幕上顯示出來(lái)。

OpenGL ES 1.x 的工序是固定的,稱為 Fix-Function Pipeline,可以想象一個(gè)帶有很多控制開(kāi)關(guān)的機(jī)器,盡管加工的工序是固定的,但是可以通過(guò)打開(kāi)或關(guān)閉開(kāi)關(guān)來(lái)設(shè)置參數(shù)或者打開(kāi)關(guān)閉某些功能。

OpenGL ES 2.0 允許提供編程來(lái)控制一些重要的工序,一些“繁瑣”的工序比如柵格化等仍然是固定的。

下圖顯示了 OpenGL ES 1.x 固定管道的結(jié)構(gòu)圖:

http://wiki.jikexueyuan.com/project/opengl-es-guide/images/42.png" alt="" />

  • 管道“工序”大致可以分為 Transformation Stage 和 Rasterization Stage 兩大步。
  • OpenGL ES 支持的基本圖形為 點(diǎn) Point, 線 Line, 和三角形 Triangle ,其它所有復(fù)制圖形都是通過(guò)這幾種基本幾何圖形組合而成。
  • 在發(fā)出繪圖指令后,會(huì)對(duì)頂點(diǎn)(Vertices)數(shù)組進(jìn)行指定的坐標(biāo)變換或光照處理。
  • 頂點(diǎn)處理完成后,通過(guò) Rasterizer 來(lái)生成像素信息,稱為”Fragments“ 。
  • 對(duì)于 Fragment 在經(jīng)過(guò) Texture Processing, Color Sum ,Fog 等處理并將最終處理結(jié)果存放在內(nèi)存中(稱為FrameBuffer)。
  • OpenGL 2.0可以通過(guò)編程來(lái)修改藍(lán)色的步驟,稱為 Programmable Shader.

以上管道中工序可以通過(guò)設(shè)置來(lái)打開(kāi)或關(guān)閉某些功能(比如無(wú)需霧化 Fog 處理),并可以為某個(gè)工序設(shè)置參數(shù),比如設(shè)置 Vertext Array。

本教程主要介紹 OpenGL ES 1.1 編程,支持 OpenGL ES 2.0 的設(shè)備一般會(huì)同時(shí)支持 OpenGL ES 1.1。