歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> OpenGL超級寶典學習筆記——Using OpenGL(一)

OpenGL超級寶典學習筆記——Using OpenGL(一)

日期:2017/3/1 9:32:31   编辑:Linux編程

OpenGL超級寶典 第4版 中文版PDF+英文版+源代碼 見 http://www.linuxidc.com/Linux/2013-10/91413.htm

第二章 使用OpenGL

(一)OpenGL 的工作原理

OpenGL是過程式的而非描述性的圖形API。開發人員只須規定必要的步驟去實現顯示的效果。這些步驟包含了許多OpenGL的命令。這些命令用於繪制許多的幾何圖元,例如點,線,多邊形。OpenGL支持光照和陰影,紋理映射,混合,透明效果,動畫,還有許多特殊的效果。

(二)通用實現

通用實現是指軟件實現,軟件實現的好處是跨硬件。但是性能不佳,沒有硬件加速。

軟件通用實現的OpenGL API所處的位置如下圖:

其首先用軟件實現去光柵化繪制3D圖像,然後傳給GDI,GDI負責與顯示設備交互顯示圖像。

(三)硬件實現

OpenGL API調用直接傳給硬件驅動。硬件驅動不會把圖形傳給Windows GDI進行顯示。而是直接與圖形顯示設備交互。

(四)圖形管線

管線是用於描述一系列的處理流程。下圖是一個簡化版本的圖形管線

一個應用程序調用了許多OpenGL的API,這些命令被傳送到Commond Buffer

這個buffer填充著許多命令,頂點數據,紋理數據等等,當緩沖區的數據被刷新時,命令和數據就被傳遞給管線的下一階段。

頂點數據首先會進行變換和光照。這個階段完成之後,數據被傳輸到管線的光柵化部分。最後圖像被放入到幀緩沖區。

早期的OpenGL硬件加速器只是對光柵化階段進行了加速。然而現在的硬件加速器都提供了變換和光照階段。

OpenGL編程指南(原書第7版)中文掃描版PDF 下載 http://www.linuxidc.com/Linux/2012-08/67925.htm

OpenGL 渲染篇 http://www.linuxidc.com/Linux/2011-10/45756.htm

Ubuntu 13.04 安裝 OpenGL http://www.linuxidc.com/Linux/2013-05/84815.htm

OpenGL三維球體數據生成與繪制【附源碼】 http://www.linuxidc.com/Linux/2013-04/83235.htm

Ubuntu下OpenGL編程基礎解析 http://www.linuxidc.com/Linux/2013-03/81675.htm

如何在Ubuntu使用eclipse for c++配置OpenGL http://www.linuxidc.com/Linux/2012-11/74191.htm

更多《OpenGL超級寶典學習筆記》相關知識 見 http://www.linuxidc.com/search.aspx?where=nkey&keyword=34581

Copyright © Linux教程網 All Rights Reserved