opengl超級(jí)寶典第五版是由Richard.Wright,Jr.Nicholas Haemel和Graham Sellers Benjamin Lipchak所編著的一本OpenGL及3D圖形編程最好的入門指南書籍,涵蓋了使用最新版本的OpenGL進(jìn)行編程所需要的主要知識(shí)。這本書非常適合想要入門opengl的程序員,也可以幫助經(jīng)驗(yàn)豐富的OpenGL程序員學(xué)習(xí)如何移植自己的應(yīng)用程序,里面介紹了如何使用opengl的程序,怎樣設(shè)置3D渲染環(huán)境。
第一部分是OpenGL/3D圖形基本教程,第二部分涵蓋了更加深入的OpenGL編程主題,第三部分則涵蓋了一些操作系統(tǒng)特定性質(zhì),幫助讀者讀者在選定平臺(tái)對(duì)OpenGL進(jìn)行充分的利用。這3部分之后是3個(gè)附錄,包含了其它OpenGL優(yōu)秀參考資源和教程的匯總、一個(gè)簡(jiǎn)短的術(shù)語表,以及OpenGL核心框架的完整參考。內(nèi)容豐富,有需要的朋友可以下載閱讀。
內(nèi)容簡(jiǎn)介
《OpenGL超級(jí)寶典(第5版)》是OpenGL及3D圖形編程的入門指南,涵蓋了使用版本的OpenGL進(jìn)行編程所需要的主要知識(shí)。全書分三部分,共16章,另有3個(gè)附錄。部分包括第1章到第7章,介紹如何構(gòu)建一個(gè)使用OpenGL的程序、如何設(shè)置3D渲染環(huán)境,以及如何創(chuàng)建基本對(duì)象和光線并對(duì)他們進(jìn)行著色。然后深入研究如何使用OpenGL,并向讀者介紹GLSL,以及如何創(chuàng)建自己的著色器。第二部分包括第8章到第12章,將進(jìn)行更深入的研究,而懂得如何應(yīng)用這些高級(jí)特性將使讀者業(yè)余3D玩家的水平。這一部分不僅能夠使我們掌握更多的可視化效果,同時(shí)也考慮了性能表現(xiàn)。第三部分包括第13章到第16章,著重介紹OpenGL如何支持和連接Windows、MacOSX、Linux和掌上設(shè)備。附錄部分給出了更多閱讀建議、術(shù)語表和API參考介紹。
目錄
第一部分 基本概念
第1章 3D圖形和OpenGL簡(jiǎn)介
1.1 計(jì)算機(jī)圖形的簡(jiǎn)單歷史回顧
1.1.1 進(jìn)入電子時(shí)代
1.1.2 走向3D
1.2 3D圖形技術(shù)和術(shù)語
1.2.1 變換(Transformation)和投影(Projection)
1.2.2 光柵化(Rasterization)
1.2.3 著色
1.2.4 紋理貼圖
1.2.5 混合
1.2.6 將點(diǎn)連接起來
1.3 3D圖形的常見用途
1.3.1 實(shí)時(shí)3D
1.3.2 非實(shí)時(shí)3D
1.3.3 著色器
1.4 3D編程的基本原則
1.4.1 并非工具包
1.4.2 坐標(biāo)系統(tǒng)
1.4.3 投影:從3D到2D
1.5 總結(jié)
第2章 入門指南
2.1 什么是OpenGL?
2.1.1 標(biāo)準(zhǔn)的演化
2.1.2 OpenGL的未來
2.2 使用OpenG
L2.2.1 支持陣容
2.2.2 OpenGL API特性
2.2.3 OpenGL錯(cuò)誤
2.2.4 確認(rèn)版本
2.2.5 使用glHint獲取線索
2.2.6 OpenGL狀態(tài)機(jī)
2.3 建立Windows項(xiàng)目
2.3.1 包含路徑
2.3.2 創(chuàng)建項(xiàng)目
2.3.3 添加文件
2.4 建立Mac OS X項(xiàng)目
2.4.1 自定義創(chuàng)建設(shè)置
2.4.2 創(chuàng)建新項(xiàng)目
2.4.3 框架、頭文件和庫
2.5 第一個(gè)三角形
2.5.1 要包含什么
2.5.2 啟動(dòng)GLUT
2.5.3 坐標(biāo)系基礎(chǔ)
2.5.4 完成設(shè)置
2.5.5 言歸正傳
2.6 加點(diǎn)兒活力!
2.6.1 特殊按鍵
2.6.2 刷新顯示
2.6.3 簡(jiǎn)單的動(dòng)畫片
2.7 總結(jié)
第3章 基礎(chǔ)渲染
3.1 基礎(chǔ)圖形管線
3.1.1 客戶機(jī)-服務(wù)器
3.1.2 著色器
3.2 創(chuàng)建坐標(biāo)系
3.2.1 正投影
3.2.2 透視投影
3.3 使用存儲(chǔ)著色器
3.3.1 屬性
3.3.2 Uniform值
3.4 將點(diǎn)連接起來
3.4.1 點(diǎn)和線
3.4.2 繪制3D三角形
3.4.3 單獨(dú)的三角形
3.4.4 一個(gè)簡(jiǎn)單批次容器
3.4.5 不希望出現(xiàn)的幾何圖形
3.4.6 多邊形偏移
3.4.7 裁剪
3.5 混合
3.5.1 組合顏色
3.5.2 改變混合方程式
3.5.3 抗鋸齒
3.5.4 多重采樣
3.6 小結(jié)
第4章 基礎(chǔ)變換:初識(shí)向量/矩陣
4.1 本章是令人生畏的數(shù)學(xué)課嗎
4.2 3D圖形數(shù)學(xué)速成課
4.2.1 向量
4.2.2 矩陣
4.3 理解變換
4.3.1 視覺坐標(biāo)
4.3.2 視圖變換
4.3.3 模型變換
4.3.4 模型視圖的二元性
4.3.5 投影變換
4.3.6 視口變換
4.4 模型視圖矩陣
4.4.1 矩陣構(gòu)造
4.4.2 運(yùn)用模型視圖矩陣
4.5 更多對(duì)象
4.5.1 使用三角形批次類
4.5.2 創(chuàng)建一個(gè)球體
4.5.3 創(chuàng)建一個(gè)花托
4.5.4 創(chuàng)建一個(gè)圓柱或圓錐
4.5.5 創(chuàng)建一個(gè)圓盤
4.6 投影矩陣
4.6.1 正投影
4.6.2 透視投影
4.6.3 模型視圖投影矩陣
4.7 變換管線
4.7.1 使用矩陣堆棧
4.7.2 管理管線
4.7.3 加點(diǎn)調(diào)料
4.8 使用照相機(jī)和角色進(jìn)行移動(dòng)
4.8.1 角色幀
4.8.2 歐拉角:“盧克!請(qǐng)使用幀”
4.8.3 照相機(jī)管理
4.8.4 添加更多角色
4.8.5 關(guān)于光線
4.9 小結(jié)
第5章 基礎(chǔ)紋理
5.1 原始圖像數(shù)據(jù)
5.1.1 像素包裝
5.1.2 像素圖
5.1.3 包裝的像素格式
5.1.4 保存像素
5.1.5 讀取像素
5.2 載入紋理
5.2.1 使用顏色緩沖區(qū)
5.2.2 更新紋理
5.2.3 紋理對(duì)象
5.3 紋理應(yīng)用
5.3.1 紋理坐標(biāo)
5.3.2 紋理參數(shù)
5.3.3 綜合運(yùn)用
5.4 Mip貼圖
5.4.1 Mip貼圖過濾
5.4.2 生成Mip層
5.4.3 活動(dòng)的Mip貼圖
5.5 各向異性過濾
5.6 紋理壓縮
5.6.1 壓縮紋理
5.6.2 加載壓縮紋理
5.6.3 最后一個(gè)示例
5.7 小結(jié)
第6章 跳出“盒子”:非存儲(chǔ)著色器
6.1 初識(shí)OpenGL著色語言
6.1.1 變量和數(shù)據(jù)類型
6.1.2 存儲(chǔ)限定符
6.1.3 真正的著色器
6.1.4 編譯、綁定和連接
6.1.5 使用著色器
6.1.6 Provoking Vertex
6.2 著色器統(tǒng)一值
6.2.1 尋找統(tǒng)一值
6.2.2 設(shè)置標(biāo)量和向量統(tǒng)一值
6.2.3 設(shè)置統(tǒng)一數(shù)組
6.2.4 設(shè)置統(tǒng)一矩陣
6.2.5 平面著色器
6.3 內(nèi)建函數(shù)
6.3.1 三角函數(shù)
6.3.2 指數(shù)函數(shù)
6.3.3 幾何函數(shù)
6.3.4 矩陣函數(shù)
6.3.5 向量相關(guān)函數(shù)
6.3.6 常用函數(shù)
6.4 模擬光線
6.4.1 簡(jiǎn)單漫射光
6.4.2 點(diǎn)光源漫反射著色器
6.4.3 ADS光照模型
6.4.4 Phong著色
6.5 訪問紋理
6.5.1 只有紋理單元
6.5.2 照亮紋理單元
6.5.3 丟棄片段
6.5.4 卡通著色(Cell Shading)--將紋理單元作為光線
6.6 小結(jié)
第7章 紋理高級(jí)知識(shí)
7.1 矩形紋理
7.1.1 加載矩形紋理
7.1.2 使用矩形紋理
7.2 立方體貼圖
7.2.1 加載立方體貼圖
7.2.2 創(chuàng)建天空盒
7.2.3 創(chuàng)建反射
7.3 多重紋理
7.3.1 多重紋理坐標(biāo)
7.3.2 多重紋理示例
7.4 點(diǎn)精靈(點(diǎn)塊紋理)
7.4.1 使用點(diǎn)
7.4.2 點(diǎn)大小
7.4.3 綜合運(yùn)用
7.4.4 點(diǎn)參數(shù)
7.4.5 異形點(diǎn)
7.4.6 點(diǎn)的旋轉(zhuǎn)
7.5 紋理數(shù)組
7.5.1 加載2D紋理數(shù)組
7.5.2 紋理數(shù)組索引
7.5.3 訪問紋理數(shù)組
7.6 紋理代理
7.7 小結(jié)
第二部分 深入探索
第8章 緩沖區(qū)對(duì)象:存儲(chǔ)盡在掌握
8.1 緩沖區(qū)
8.1.1 創(chuàng)建自己的緩沖區(qū)
8.1.2 填充緩沖區(qū)
8.1.3 像素緩沖區(qū)對(duì)象
8.1.4 緩沖區(qū)對(duì)象
8.2 幀緩沖區(qū)對(duì)象,擺脫窗口的限制
8.2.1 如何使用FBO
8.2.2 渲染緩沖區(qū)對(duì)象
8.2.3 繪制緩沖區(qū)
8.2.4 幀緩沖區(qū)的完整性
8.2.5 在幀緩沖區(qū)中復(fù)制數(shù)據(jù)
8.2.6 FBO綜合運(yùn)用
8.3 渲染到紋理
8.4 小結(jié)
第9章 高級(jí)緩沖區(qū):超越基礎(chǔ)水平
9.1 獲得數(shù)據(jù)
9.1.1 映射緩沖區(qū)
9.1.2 復(fù)制緩沖區(qū)
9.2 控制像素著色器表現(xiàn),映射片段輸出
9.3 新一代硬件的新格式
9.3.1 浮點(diǎn)--最終的真正精確
9.3.2 多重采樣
9.3.3 整數(shù)
9.3.4 sRGB
9.3.5 紋理壓縮
9.4 小結(jié)
第10章 片段操作:管線的終點(diǎn)
10.1 裁剪--將幾何圖形剪切到希望的大小
10.2 多重采樣
10.2.1 樣本覆蓋
10.2.2 樣本遮罩
10.2.3 綜合運(yùn)用
10.3 模板操作
10.4 深度測(cè)試
10.4.1 深度截取
10.5 進(jìn)行混合
10.5.1 混合方程式
10.5.2 混合函數(shù)
10.5.3 綜合運(yùn)用
10.6 抖動(dòng)
10.7 邏輯操作
10.8 遮罩輸出
10.8.1 顏色
10.8.2 深度
10.8.3 模板
10.8.4 用途
10.9 小結(jié)
第11章 高級(jí)著色器應(yīng)用
11.1 高級(jí)頂點(diǎn)著色器
11.1.1 在頂點(diǎn)著色器中進(jìn)行物理模擬
11.2 幾何著色器
11.2.1 直通幾何著色器
11.2.2 在應(yīng)用程序中使用幾何著色器
11.2.3 在幾何著色器中丟棄幾何圖形
11.2.4 在幾何著色器中修改幾何圖形
11.2.5 在幾何著色器中生成幾何圖形
11.2.6 在幾何著色器中改變圖元類型
11.2.7 由幾何著色器引入的新圖元類型
11.3 高級(jí)片段著色器
11.3.1 片段著色器中的后期處理--顏色校正
11.3.2 片段著色器中的后期處理--卷積
11.3.3 在片段著色器中生成圖像數(shù)據(jù)
11.3.4 在片段著色器中丟棄工作
11.3.5 逐片段控制深度
11.4 更高級(jí)的著色器函數(shù)
11.4.1 插值和存儲(chǔ)限定符
11.4.2 高級(jí)內(nèi)建函數(shù)
11.5 統(tǒng)一緩沖區(qū)對(duì)象
11.5.1 建立統(tǒng)一塊
11.6 小結(jié)
第12章 高級(jí)幾何圖形管理
12.1 查詢功能--收集OpenGL管線相關(guān)信息
12.1.1 準(zhǔn)備查詢
12.1.2 發(fā)出查詢
12.1.3 取回查詢結(jié)果
12.1.4 使用查詢結(jié)果
12.1.5 讓OpenGL決定
12.1.6 測(cè)量執(zhí)行命令所需時(shí)間
12.2 在GPU內(nèi)存中存儲(chǔ)數(shù)據(jù)
12.2.1 使用緩沖區(qū)存儲(chǔ)頂點(diǎn)數(shù)據(jù)
12.2.2 在緩沖區(qū)中保存頂點(diǎn)索引
12.3 使用頂點(diǎn)數(shù)組對(duì)象來組織緩沖區(qū)
12.4 高效地繪制大量幾何圖形
12.4.1 組合繪制函數(shù)
12.4.2 使用圖元重啟對(duì)幾何圖形進(jìn)行組合
12.4.3 實(shí)例渲染
12.4.4 自動(dòng)獲得數(shù)據(jù)
12.5 存儲(chǔ)變換的頂點(diǎn)--變換反饋
12.5.1 變換反饋
12.5.2 關(guān)閉光柵化
12.5.3 使用圖元查詢對(duì)頂點(diǎn)進(jìn)行計(jì)數(shù)
12.5.4 使用圖元查詢的結(jié)果
12.5.5 變換反饋的應(yīng)用實(shí)例
12.6 裁剪并確定繪制內(nèi)容
12.6.1 裁剪距離--自定義裁剪空間
12.7 在OpenGL開始繪制時(shí)進(jìn)行同步
12.8 小結(jié)
第三部分 特定平臺(tái)應(yīng)用
第13章 Windows上的OpenGL
13.1 Windows中的OpenGL實(shí)現(xiàn)
13.1.1 微軟的OpenGL
13.1.2 現(xiàn)代圖形驅(qū)動(dòng)程序
13.1.3 擴(kuò)展OpenGL
13.1.4 WGL擴(kuò)展
13.2 基本窗口渲染
13.2.1 GDI設(shè)備環(huán)境
13.2.2 像素格式
13.2.3 OpenGL渲染環(huán)境
13.3 綜合運(yùn)用
13.3.1 創(chuàng)建窗口
13.4 全屏渲染
13.5 雙重緩沖
13.5.1 消除視覺撕裂
13.6 小結(jié)
第14章 OS X上的OpenGL
14.1 OpenGL在Mac上的4種接口
14.2 在OpenGL中使用Cocoa
14.2.1 創(chuàng)建一個(gè)Cocoa程序
14.2.2 綜合運(yùn)用
14.2.3 雙緩沖還是單緩沖
14.2.4 球體世界
14.3 全屏渲染
14.3.1 在Cocoa中進(jìn)行全屏顯示
14.4 CGL
14.4.1 同步幀速率
14.4.2 提高填充性能
14.4.3 多線程OpenGL
14.5 小結(jié)
第15章 Linux上的OpenGL
15.1 基礎(chǔ)知識(shí)
15.1.1 簡(jiǎn)史
15.1.2 什么是X Window
15.2 入門講解
15.2.1 檢查OpenGL
15.2.2 設(shè)置Mesa
15.2.3 設(shè)置Mesa硬件驅(qū)動(dòng)程序
15.2.4 設(shè)置GLUT 和 GLEW
15.2.5 創(chuàng)建OpenGL應(yīng)用程序
15.3 GLX--X Window的接口
15.3.1 顯示和X Window
15.3.2 配置管理和顯示效果
15.3.3 窗口和渲染表面
15.3.4 OpenGL和GLX擴(kuò)展
15.3.5 環(huán)境管理
15.3.6 同步
15.3.7 GLX查詢
15.3.8 綜合運(yùn)用
15.4 小結(jié)
第16章 OpenGL ES:移動(dòng)設(shè)備上的OpenGL
16.1 精簡(jiǎn)的OpenGL
16.1.1 ES指什么
16.1.2 歷史概述
16.2 版本選擇
16.2.1 ES 2.0
16.3 ES環(huán)境
16.3.1 應(yīng)用程序設(shè)計(jì)的注意事項(xiàng)
16.3.2 有限環(huán)境的處理
16.3.3 定點(diǎn)數(shù)學(xué)
16.4 EGL: 新的窗口環(huán)境
16.4.1 EGL顯示
16.4.2 創(chuàng)建窗口
16.4.3 環(huán)境管理
16.4.4 呈現(xiàn)緩沖區(qū)和渲染同步
16.4.5 更多關(guān)于EGL的內(nèi)容
16.5 處理嵌入式環(huán)境
16.5.1 流行的操作系統(tǒng)
16.5.2 供應(yīng)商特定擴(kuò)展
16.5.3 個(gè)人玩家
16.6 蘋果掌上平臺(tái)
16.6.1 設(shè)置iPhone項(xiàng)目
16.6.2 移植到iPhone
16.7 小結(jié)
附錄A 更多閱讀建議
附錄B 詞匯表
附錄C (核心)OpenGL 3.3參考
使用說明
1、下載并解壓,得出pdf文件
2、如果打不開本文件,請(qǐng)務(wù)必下載pdf閱讀器
3、安裝后,在打開解壓得出的pdf文件
4、雙擊進(jìn)行閱讀
- 下載地址
發(fā)表評(píng)論
0條評(píng)論軟件排行榜
熱門推薦
- 南方Plus電腦版 v11.8.027.22M / 簡(jiǎn)體中文
- 有柿電腦版 v11.5.684.06M / 簡(jiǎn)體中文
- 瀟湘書院電腦版 v2.3.11.888官方版49.65M / 簡(jiǎn)體中文
- 數(shù)據(jù)挖掘?qū)д?官方版61.61M / 簡(jiǎn)體中文
- 吉利博瑞用戶手冊(cè) pdf高清版57.89M / 簡(jiǎn)體中文
- 開源閱讀電腦版 v3.2517.96M / 簡(jiǎn)體中文
- 京東讀書電腦版 v1.13.4官方版1.98M / 簡(jiǎn)體中文
- cnki全球?qū)W術(shù)快報(bào)電腦版 v0.2.3495.79M / 簡(jiǎn)體中文
- 未公開的Oracle數(shù)據(jù)庫秘密 迪貝斯pdf掃描版34.69M / 簡(jiǎn)體中文
- PHP語言精粹電子書 pdf掃描版25.72M / 簡(jiǎn)體中文