注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)計(jì)算機(jī)圖形學(xué)編程 使用OpenGL和C++

計(jì)算機(jī)圖形學(xué)編程 使用OpenGL和C++

計(jì)算機(jī)圖形學(xué)編程 使用OpenGL和C++

定 價(jià):¥69.00

作 者: [美] V.斯科特·戈登,約翰·克萊維吉 著,魏廣程,沈瞳 譯
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: 暫缺

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787115521286 出版時(shí)間: 2020-02-01 包裝: 平裝
開(kāi)本: 16開(kāi) 頁(yè)數(shù): 252 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)以C++和OpenGL 作為工具,教授計(jì)算機(jī)圖形學(xué)編程。全書(shū)共14 章和3 個(gè)附錄。首先從圖形編程的基礎(chǔ)和準(zhǔn)備工作開(kāi)始,依次介紹了OpenGL 圖像管線、圖形編程數(shù)學(xué)基礎(chǔ)、管理3D 圖形數(shù)據(jù)、紋理貼圖、3D 模型、光照、陰影、天空和背景、增強(qiáng)表面細(xì)節(jié)、參數(shù)曲面、曲面細(xì)分、幾何著色器,以及其他相關(guān)的圖形編程技術(shù)。附錄分別介紹了Windows、macOS 平臺(tái)上的安裝設(shè)置,以及Nsight 圖形調(diào)試器的應(yīng)用。本書(shū)每章最后配備了不同形式的習(xí)題,供讀者鞏固所學(xué)知識(shí)。本書(shū)適合作為高等院校計(jì)算機(jī)科學(xué)專業(yè)的計(jì)算機(jī)圖形編程課程的教材或輔導(dǎo)書(shū),也適合對(duì)計(jì)算機(jī)圖形編程感興趣的讀者自學(xué)。

作者簡(jiǎn)介

  V.斯科特·戈登(V. Scott Gordon) 加州州立大學(xué)薩克拉門(mén)托分校教授,教授高級(jí)圖形和游戲工程課程。他撰寫(xiě)及合著了30多部出版物,涉及人工智能、神經(jīng)網(wǎng)絡(luò)、進(jìn)化計(jì)算、軟件工程、視頻和策略游戲編程,以及計(jì)算機(jī)科學(xué)教育等多個(gè)領(lǐng)域。戈登博士在科羅拉多州立大學(xué)獲得博士學(xué)位。約翰·克萊維吉(John Clevenger)加州州立大學(xué)薩克拉門(mén)托分校教授,擁有40多年的教學(xué)經(jīng)驗(yàn),教學(xué)內(nèi)容包括高級(jí)圖形、游戲架構(gòu)、操作系統(tǒng)、VLSI芯片設(shè)計(jì)、系統(tǒng)仿真和其他主題。他參與了多個(gè)用于圖形和游戲架構(gòu)教學(xué)的軟件框架和工具的開(kāi)發(fā),其中包括本書(shū)Java版第一版中用到的graphicslib3D庫(kù)。他是國(guó)際大學(xué)生程序設(shè)計(jì)競(jìng)賽(ICPC)的技術(shù)總監(jiān),負(fù)責(zé)監(jiān)督PC2的持續(xù)開(kāi)發(fā),PC2是目前世界上使用較為廣泛的編程競(jìng)賽支持系統(tǒng)??巳R維吉博士在加州大學(xué)戴維斯分校獲得博士學(xué)位。

圖書(shū)目錄

第 1 章 入門(mén).1
1.1 語(yǔ)言和庫(kù).1
1.1.1 C++2
1.1.2 OpenGL / GLSL 2
1.1.3 窗口管理.2
1.1.4 擴(kuò)展庫(kù).3
1.1.5 數(shù)學(xué)庫(kù).3
1.1.6 紋理管理.3
1.1.7 可選庫(kù).4
1.2 安裝和配置.4
參考資料4
第 2 章 OpenGL 圖像管線.5
2.1 OpenGL 管線5
2.1.1 C++/OpenGL 應(yīng)用程序.6
2.1.2 頂點(diǎn)著色器和片段著色器.9
2.1.3 曲面細(xì)分著色器.12
2.1.4 幾何著色器.13
2.1.5 光柵化.14
2.1.6 片段著色器.15
2.1.7 像素操作.16
2.2 檢測(cè)OpenGL 和GLSL錯(cuò)誤.17
2.3 從文件讀取GLSL 源代碼.19
2.4 從頂點(diǎn)構(gòu)建對(duì)象.20
2.5 場(chǎng)景動(dòng)畫(huà).21
2.6 C++代碼文件結(jié)構(gòu)23
補(bǔ)充說(shuō)明.24
習(xí)題24
參考資料25
第3 章 數(shù)學(xué)基礎(chǔ). 26
3.1 3D 坐標(biāo)系統(tǒng). 26
3.2 點(diǎn) 26
3.3 矩陣 27
3.4 變換矩陣 29
3.4.1 平移矩陣. 29
3.4.2 縮放矩陣. 29
3.4.3 旋轉(zhuǎn)矩陣. 30
3.5 向量 31
3.5.1 點(diǎn)積的應(yīng)用. 32
3.5.2 叉積的應(yīng)用. 33
3.6 局部和世界空間 33
3.7 視覺(jué)空間和合成相機(jī) 34
3.8 投影矩陣 36
3.8.1 透視投影矩陣. 36
3.8.2 正射投影矩陣. 37
3.9 LookAt 矩陣. 38
3.10 用來(lái)構(gòu)建矩陣變換的GLSL函數(shù). 39
補(bǔ)充說(shuō)明 40
習(xí)題. 40
參考資料. 41
第4 章 管理3D 圖形數(shù)據(jù). 42
4.1 緩沖區(qū)和頂點(diǎn)屬性 42
4.2 統(tǒng)一變量 44
4.3 頂點(diǎn)屬性插值 45
4.4 模型-視圖和透視矩陣. 46
4.5 我們的第 一個(gè)3D 程序—— 一個(gè)3D 立方體 47
4.6 渲染一個(gè)對(duì)象的多個(gè)副本. 53
4.7 在同一個(gè)場(chǎng)景中渲染多個(gè)不同模型.57
4.8 矩陣堆棧.59
4.9 應(yīng)對(duì)“Z 沖突”偽影64
4.10 圖元的其他選項(xiàng).65
4.11 性能優(yōu)先的編程方法.66
4.11.1 盡量減少動(dòng)態(tài)內(nèi)存空間分配66
4.11.2 預(yù)先計(jì)算透視矩陣.67
4.11.3 背面剔除.68
補(bǔ)充說(shuō)明.69
習(xí)題70
參考資料70
第5 章 紋理貼圖71
5.1 加載紋理圖像文件.71
5.2 紋理坐標(biāo).72
5.3 創(chuàng)建紋理對(duì)象.74
5.4 構(gòu)建紋理坐標(biāo).74
5.5 將紋理坐標(biāo)載入緩沖區(qū).75
5.6 在著色器中使用紋理:采樣器變量和紋理單元.76
5.7 紋理貼圖:示例程序.77
5.8 多級(jí)漸遠(yuǎn)紋理貼圖.79
5.9 各向異性過(guò)濾.83
5.10 環(huán)繞和平鋪.84
5.11 透視變形.85
5.12 材質(zhì)——更多OpenGL 細(xì)節(jié).86
補(bǔ)充說(shuō)明.86
習(xí)題87
參考資料87
第6 章 3D 模型88
6.1 程序構(gòu)建模型——構(gòu)建一個(gè)球體.88
6.2 OpenGL 索引——構(gòu)建一個(gè)環(huán)面.94
6.2.1 環(huán)面.94
6.2.2 OpenGL 中的索引95
6.3 加載外部構(gòu)建的模型.99
補(bǔ)充說(shuō)明. 106
習(xí)題. 107
參考資料. 107
第7 章 光照 108
7.1 光照模型 108
7.2 光源 109
7.3 材質(zhì).111
7.4 ADS 光照計(jì)算. 112
7.5 實(shí)現(xiàn)ADS 光照 114
7.5.1 Gouraud 著色(雙線性光強(qiáng)插值法) 115
7.5.2 Phong 著色. 120
7.6 結(jié)合光照與紋理 124
補(bǔ)充說(shuō)明. 126
歷史記錄. 126
習(xí)題. 126
參考資料. 127
第8 章 陰影 128
8.1 陰影的重要性 128
8.2 投影陰影 129
8.3 陰影體 129
8.4 陰影貼圖 130
8.4.1 陰影貼圖(第 1 輪)——從光源位置“繪制”物體 131
8.4.2 陰影貼圖(中間步驟)——將Z 緩沖區(qū)復(fù)制到紋理 132
8.4.3 陰影貼圖(第 2 輪)——渲染帶陰影的場(chǎng)景 132
8.5 陰影貼圖示例 135
8.6 陰影貼圖的偽影 139
8.7 柔和陰影 142
8.7.1 現(xiàn)實(shí)世界中的柔和陰影 142
8.7.2 生成柔和陰影——百分比鄰近濾波(PCF) . 143
8.7.3 柔和陰影/PCF 程序146
補(bǔ)充說(shuō)明.148
習(xí)題148
參考資料149
第9 章 天空和背景.150
9.1 天空盒.150
9.2 天空穹頂.152
9.3 實(shí)現(xiàn)天空盒.153
9.3.1 從頭開(kāi)始構(gòu)建天空盒.153
9.3.2 使用OpenGL 立方體貼圖.156
9.4 環(huán)境貼圖.158
補(bǔ)充說(shuō)明.161
習(xí)題162
參考資料163
第 10 章 增強(qiáng)表面細(xì)節(jié).164
10.1 凹凸貼圖.164
10.2 法線貼圖.166
10.3 高度貼圖.172
補(bǔ)充說(shuō)明.174
習(xí)題175
參考資料175
第 11 章 參數(shù)曲面.176
11.1 二次貝塞爾曲線.176
11.2 三次貝塞爾曲線.177
11.3 二次貝塞爾曲面.180
11.4 三次貝塞爾曲面.181
補(bǔ)充說(shuō)明.183
習(xí)題183
參考資料183
第 12 章 曲面細(xì)分.184
12.1 OpenGL 中的曲面細(xì)分184
12.2 貝塞爾曲面細(xì)分.188
12.3 地形、高度圖的細(xì)分.193
12.4 控制細(xì)節(jié)級(jí)別(LOD).198
補(bǔ)充說(shuō)明. 200
習(xí)題. 201
參考資料. 201
第 13 章 幾何著色器 202
13.1 OpenGL 中的逐個(gè)圖元處理. 202
13.2 修改圖元 203
13.3 刪除圖元 206
13.4 添加圖元 207
13.5 更改圖元類型 209
補(bǔ)充說(shuō)明. 211
習(xí)題. 211
參考資料. 211
第 14 章 其他技術(shù) 212
14.1 霧 212
14.2 復(fù)合、混合、透明度. 213
14.3 用戶定義剪裁平面 218
14.4 3D 紋理 219
14.5 噪聲 223
14.6 噪聲應(yīng)用——大理石. 227
14.7 噪聲應(yīng)用——木材. 230
14.8 噪聲應(yīng)用——云. 233
14.9 噪聲應(yīng)用——特殊效果. 236
補(bǔ)充說(shuō)明. 238
習(xí)題. 238
參考資料. 239
附錄A PC(Windows)上的安裝與設(shè)置 240
A.1 安裝庫(kù)和開(kāi)發(fā)環(huán)境 240
A.1.1 安裝開(kāi)發(fā)環(huán)境. 240
A.1.2 安裝OpenGL /
GLSL. 240
A.1.3 準(zhǔn)備GLFW 240
A.1.4 準(zhǔn)備GLEW 241
A.1.5 準(zhǔn)備GLM. 241
A.1.6 準(zhǔn)備SOIL2. 241
A.1.7 準(zhǔn)備共享的“l(fā)ib”和“include”文件夾241
A.2 在MS Visual Studio 中開(kāi)發(fā)和部署OpenGL 項(xiàng)目242
參考資料243
附錄B Macintosh(macOS)平臺(tái)上的安裝與設(shè)置.244
B.1 安裝庫(kù)和開(kāi)發(fā)環(huán)境244
B.1.1 準(zhǔn)備并安裝依賴庫(kù).244
B.1.2 準(zhǔn)備開(kāi)發(fā)環(huán)境.245
B.2 修改Mac 的C++ / OpenGL /GLSL 應(yīng)用程序代碼.246
B.2.1 修改C++代碼 247
B.2.2 修改GLSL 代碼. 247
B.2.3 補(bǔ)充說(shuō)明. 248
參考資料. 248
附錄C 使用Nsight 圖形調(diào)試器. 249
C.1 關(guān)于NVIDIANsight 249
C.2 設(shè)置Nsight 249
C.3 在Nsight 中運(yùn)行C++/OpenGL應(yīng)用程序. 250
參考資料. 252

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)