OpenGL ES Programming Guide for iOS 第一章

來源:互聯網
上載者:User

關於OpenGL ES

Open Graphics Library(OpenGL)用於二維及三維資料的可視化。它是一種多用途的開放標準圖形庫,支援二維和三維數位內容創作,機械和建築設計,虛擬樣,飛行類比,遊戲,以及更多的應用。OpenGL允許應用程式開發人員配置3D圖形管線,並提交資料。頂點是可轉換及照明,組裝原函數,建立2維映像。OpenGL被設計為翻譯函數呼叫為圖形命令並送至底層圖形裝置硬體。

因為底層硬體專門處理圖形命令,所以OpenGL繪圖非常快。

OpenGL for Embedded Systems (OpenGL ES)是OpenGL的一個簡化版本,消除冗餘的功能並提供一個庫,既容易學習也容易實踐在移動裝置上。

 

一覽

Apple 提供OpenGL ES 1.1 與 OpenGL ES 2.0:

●OpenGL ES 1.1實踐了一個明確的固定功能的管線。它實踐傳統照明及陰影模式並允許在每個階段配置以執行特殊任務或關閉不需要的功能。

●OpenGL ES 2.0 與OpenGL ES 1.1有很多相同通用功能,但移除了所有關於固定頂點及流水線階段的功能。相反的,它提供了存取通用著色器(shader)管線的新功能。著色器允許你自定頂點及片段功能,並直接在圖形硬體上執行。使用著色器,你的應用可以更清楚的自定每一個頂點跟片段的管線輸入及計算。

 

OpenGLES 是基於C語言,
與平台無關的應用程式介面

因為OpenGLES是基於C的應用程式介面,所以非常容易移植及廣泛支援。作為C應用程式介面,可與基於Objective-C的CocoaTouch應用程式無縫整合。OpenGLES規範中並沒有聲明視窗層,主作業系統需提供功能建立OpenGLES宣染內文(renderingcontext),用以接受命令及建立偵緩衝(framebuffer)用來繪製命令結果。

相關章節“OpenGL ES on iOS”
(13頁),
“Configuring OpenGL ES Contexts”
(20頁)

OpenGLES 被整合進 Core Animation

Core Animation是iOS圖形基礎,包含了應用程式顯示在螢幕上的OpenGL ES內容。 當你開發OpenGL ES應用程式,OpenGL ES內容會被繪製在一個特殊的Core Animation層,這個層被稱為CAEAGLLayer對象。用OpenGLES繪製的圖片會被儲存在CAEAGLLayer中。CoreAnimation組合其它層的圖形內容並顯示最後結果在螢幕上。

相關章節 “Drawing With OpenGL ES”
(28頁)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.