計(jì)算機(jī)游戲程序設(shè)計(jì)(提高篇)(第3版)
定 價(jià):56 元
叢書名:高等學(xué)校計(jì)算機(jī)基礎(chǔ)教育教材精選
- 作者:耿衛(wèi)東
- 出版時(shí)間:2018/8/1
- ISBN:9787121319389
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP317.61
- 頁碼:360
- 紙張:
- 版次:01
- 開本:16開
本書為“十二五”普通高等教育本科國家級(jí)規(guī)劃教材。 本書著重介紹計(jì)算機(jī)游戲程序設(shè)計(jì)所需的專業(yè)領(lǐng)域知識(shí),包括二維圖形圖像技術(shù)、三維圖形學(xué)基礎(chǔ)、高級(jí)圖形學(xué)編程、計(jì)算機(jī)動(dòng)畫技術(shù)、人工智能技術(shù)、音頻處理技術(shù)和網(wǎng)絡(luò)技術(shù)、VR/AR游戲開發(fā)等,基本涵蓋了計(jì)算機(jī)游戲編程的各個(gè)主要方面。全書共12章,取材于國內(nèi)外的最新資料,強(qiáng)調(diào)理論與實(shí)踐相結(jié)合,通過游戲?qū)嵗齺韱l(fā)性地說明游戲編程的各種原理和方法。 本書教學(xué)資源包括三部分內(nèi)容:示例代碼、集成示例和繪制引擎(讀者可以通過掃描二維碼進(jìn)行下載)。 本書面向的讀者對(duì)象是那些已掌握基本的程序設(shè)計(jì)技能,但立志于從事計(jì)算機(jī)游戲軟件開發(fā)的程序員和游戲開發(fā)愛好者。本書既可作為計(jì)算機(jī)、數(shù)字媒體技術(shù)和游戲?qū)I(yè)的本科生(研究生)的教材,也可用于游戲?qū)W院和各類游戲編程人員培訓(xùn)班的參考資料,對(duì)正在從事游戲開發(fā)和制作的相關(guān)人員也具有重要參考價(jià)值。
耿衛(wèi)東,男,浙江大學(xué)計(jì)算機(jī)學(xué)院教授,計(jì)算機(jī)應(yīng)用技術(shù)與數(shù)字化藝術(shù)博士生導(dǎo)師。ACM SIGGRAPH會(huì)員,中國圖像圖形學(xué)會(huì)計(jì)算機(jī)動(dòng)畫與數(shù)字娛樂專業(yè)委員會(huì)委員,數(shù)碼藝術(shù)專業(yè)委員會(huì)委員,中國動(dòng)畫學(xué)會(huì)會(huì)員,杭州國家動(dòng)漫基地特聘專家。
目 錄
第1章 三維游戲引擎技術(shù)簡(jiǎn)介 1
1.1 三維游戲的基礎(chǔ)架構(gòu) 1
1.1.1 硬件層 2
1.1.2 基礎(chǔ)層(驅(qū)動(dòng)、操作系統(tǒng)及API) 3
1.1.3 游戲引擎 3
1.2 三維游戲引擎發(fā)展簡(jiǎn)史 4
1.3 常用三維游戲引擎 10
1.3.1 虛幻引擎UNREAL 10
1.3.2 CryEngine引擎 11
1.3.3 Unity3D引擎 10
1.3.4 Ogre3D引擎 11
1.3.5 寒霜引擎Frostbite Engine 12
1.3.6 id Tech引擎 13
小結(jié) 14
習(xí)題1 14
參考文獻(xiàn) 15
第2章 三維數(shù)學(xué)基礎(chǔ) 16
2.1 坐標(biāo)系 16
2.2 向量及其運(yùn)算 17
2.3 矩陣、變換及其運(yùn)算 18
2.4 旋轉(zhuǎn) 22
2.4.1 四元數(shù) 22
2.4.2 歐拉角 23
2.4.3 旋轉(zhuǎn)變換的不同表達(dá)形式之間的轉(zhuǎn)換 24
2.5 常用的立體幾何算法 25
2.5.1 常用幾何體的表達(dá)與生成 26
2.5.2 常用幾何體之間的距離與求交 27
2.5.3 常用幾何體的屬性計(jì)算 28
小結(jié) 30
習(xí)題2 30
參考文獻(xiàn) 30
第3章 三維游戲場(chǎng)景的表示和組織 32
3.1 三維場(chǎng)景的表示 32
3.1.1 三角網(wǎng)格模型 33
3.1.2 三維對(duì)象參數(shù)表示 35
3.1.3 三類常用參數(shù)曲面 36
3.2 三維場(chǎng)景的組織和管理 39
3.2.1 基于場(chǎng)景圖的表達(dá)和管理 40
3.2.2 基于繪制狀態(tài)的場(chǎng)景管理 44
3.2.3 基于景物包圍體的場(chǎng)景組織 45
3.2.4 優(yōu)化場(chǎng)景繪制的幾何剖分技術(shù) 46
3.2.5 景物包圍體與場(chǎng)景剖分技術(shù)比較 48
3.3 三維場(chǎng)景的存儲(chǔ) 50
3.3.1 OBJ模型 50
3.3.2 FBX 50
3.3.3 COLLADA 51
3.4 游戲場(chǎng)景的幾何優(yōu)化 52
3.4.1 層次細(xì)節(jié)技術(shù) 52
3.4.2 漸進(jìn)網(wǎng)格和連續(xù)多分辨率繪制技術(shù) 53
小結(jié) 55
習(xí)題3 55
參考文獻(xiàn) 55
第4章 高級(jí)圖形繪制技術(shù) 57
4.1 高級(jí)紋理映射技術(shù) 57
4.1.1 凹凸紋理映射 57
4.1.2 位移映射 61
4.1.3 環(huán)境映射 62
4.1.4 基于光照映射的快速繪制 64
4.1.5 高級(jí)紋理映射技術(shù)總結(jié) 67
4.2 基于圖像的繪制 68
4.2.1 Billboard技術(shù) 68
4.2.2 Impostor技術(shù) 71
4.2.3 精靈圖元繪制 73
4.3 表面材質(zhì)繪制 74
4.3.1 基于物理的表面材質(zhì)模型 75
4.3.2 基于測(cè)量的表面材質(zhì)模型 77
4.3.3 表面材質(zhì)模型的真實(shí)感繪制 77
4.3.4 表面材質(zhì)模型的快速繪制 79
4.4 圖像反走樣 83
小結(jié) 85
習(xí)題4 85
參考文獻(xiàn) 86
第5章 三維特效圖形繪制 87
5.1 過程式建模和繪制技術(shù) 87
5.1.1 粒子系統(tǒng) 87
5.1.2 爆炸與火焰 89
5.1.3 L-系統(tǒng)與植被的模擬 90
5.1.4 云的過程式紋理生成 92
5.2 陰影計(jì)算 92
5.2.1 平面投影法 93
5.2.2 陰影體 94
5.2.3 陰影圖 99
5.2.4 軟影生成 100
5.2.5 Ambient Occlusion 101
5.3 鏡頭特效模擬 102
5.3.1 透鏡光暈 102
5.3.2 運(yùn)動(dòng)模糊和域深 104
5.3.3 色調(diào)映射 104
5.4 相互輝映計(jì)算與全局光照明 107
5.4.1 預(yù)計(jì)算輻射傳輸方法 108
5.4.2 基于屏幕空間的相互輝映計(jì)算方法 110
小結(jié) 111
習(xí)題5 111
參考文獻(xiàn) 111
第6章 三維碰撞檢測(cè)與動(dòng)力學(xué)計(jì)算 113
6.1 動(dòng)力學(xué)基礎(chǔ) 113
6.2 質(zhì)點(diǎn)動(dòng)力學(xué) 114
6.2.1 力方程 115
6.2.2 動(dòng)量與速度 116
6.2.3 彈簧質(zhì)點(diǎn)運(yùn)動(dòng) 118
6.3 剛體動(dòng)力學(xué) 119
6.3.1 剛體旋轉(zhuǎn) 120
6.3.2 角速度、角動(dòng)量、扭矩和旋轉(zhuǎn)慣量 120
6.3.3 力方程與積分 122
6.4 碰撞檢測(cè) 122
6.4.1 碰撞檢測(cè)的基本原理 124
6.4.2 求交算法 124
6.4.3 基于空間剖分結(jié)構(gòu)的碰撞檢測(cè)算法 126
6.4.4 層次包圍體樹法 130
6.4.5 基于圖像空間的碰撞檢測(cè)算法 135
小結(jié) 137
習(xí)題6 137
參考文獻(xiàn) 137
第7章 角色動(dòng)畫基本編程技術(shù) 139
7.1 三維角色動(dòng)畫概述 139
7.2 關(guān)鍵幀動(dòng)畫技術(shù) 140
7.2.1 關(guān)鍵幀的指定 141
7.2.2 “蒙皮”模型的變形 143
7.2.3 中間幀的插值技術(shù) 144
7.3 基于動(dòng)作捕捉的動(dòng)畫技術(shù) 149
7.3.1 動(dòng)作捕捉系統(tǒng)簡(jiǎn)介 150
7.3.2 動(dòng)作捕捉數(shù)據(jù)的文件格式及其解析 152
7.3.3 動(dòng)作捕捉數(shù)據(jù)的編輯和重用 166
7.3.4 在游戲中的應(yīng)用 168
7.4 角色動(dòng)畫的壓縮 170
7.4.1 基于關(guān)鍵幀提取的壓縮 170
7.4.2 基于幀內(nèi)容的壓縮 170
7.5 腳本驅(qū)動(dòng)的動(dòng)畫技術(shù) 171
7.5.1 腳本語言的設(shè)計(jì)及分類 172
7.5.2 腳本語言在游戲中的應(yīng)用 174
小結(jié) 175
習(xí)題7 175
參考文獻(xiàn) 176
第8章 三維音效編程技術(shù) 177
8.1 聲音基礎(chǔ) 177
8.1.1 聲音的表示和存儲(chǔ) 177
8.1.2 聲音的合成 179
8.2 三維音效生成 179
8.2.1 聽覺理論 180
8.2.2 三維音效模擬 180
8.3 基于OpenAL的三維音效實(shí)現(xiàn) 182
8.3.1 OpanAL編程概述 182
8.3.2 OpanAL的三維音效編程 184
8.4 基于DirectX Audio的三維音效實(shí)現(xiàn) 186
8.4.1 DirectX Audio概述 186
8.4.2 DirectSound編程概述 187
8.4.3 DirectMusic播放MIDI背景音樂 193
8.4.4 DirectSound的三維音效編程 193
8.5 XAudio2編程概述 194
小結(jié) 197
習(xí)題8 197
參考文獻(xiàn) 198
第9章 三維交互編程技術(shù) 199
9.1 三維交互開發(fā)平臺(tái) 199
9.2 任天堂Wiimote應(yīng)用開發(fā) 201
9.2.1 Wiimote編程接口API說明 202
9.2.2 基于Wiimote獲取運(yùn)動(dòng)傳感數(shù)據(jù)的示例代碼 204
9.3 移動(dòng)平臺(tái)應(yīng)用開發(fā) 205
9.3.1 Unity編程接口API說明 206
9.3.2 Unity使用加速度傳感器的示例代碼 206
9.4 微軟Kinect應(yīng)用開發(fā) 207
9.4.1 Kinect SDK編程接口API說明 209
9.4.2 Kinect獲取彩色圖像和骨架數(shù)據(jù)的示例代碼 212
9.5 Leap Motion應(yīng)用開發(fā) 214
9.5.1 Leap Motion編程接口API說明 216
9.5.2 Leap Motion獲取體感數(shù)據(jù)的示例代碼 218
小結(jié) 220
習(xí)題9 220
參考文獻(xiàn) 220
第10章 AI編程進(jìn)階 221
10.1 游戲AI簡(jiǎn)介 221
10.2 常見的游戲AI技術(shù) 223
10.2.1 有限狀態(tài)機(jī) 223
10.2.2 基于腳本語言的行為建模 225
10.2.3 模糊邏輯 225
10.2.4 多智能體技術(shù)與人工生命 226
10.2.5 決策樹 227
10.2.6 人工神經(jīng)元網(wǎng)絡(luò) 228
10.2.7 遺傳算法 229
10.2.8 群體行為的模擬 230
10.3 跟蹤與追逐行為的模擬 232
10.4 有限狀態(tài)機(jī)和模糊有限狀態(tài)機(jī)的實(shí)現(xiàn) 236
10.4.1 有限狀態(tài)機(jī)的實(shí)現(xiàn) 236
10.4.2 模糊有限狀態(tài)機(jī)的實(shí)現(xiàn) 244
10.5 A*算法和路徑尋找技術(shù) 249
10.5.1 搜索技術(shù)及A*算法 249
10.5.2 路徑尋找技術(shù) 258
10.6 游戲AI的設(shè)計(jì)和實(shí)現(xiàn)原則 262
10.7 展望 266
小結(jié) 268
習(xí)題10 269
參考文獻(xiàn) 269
第11章 網(wǎng)絡(luò)游戲編程技術(shù) 270
11.1 網(wǎng)絡(luò)游戲的基本架構(gòu) 270
11.2 Winsock編程基礎(chǔ) 272
11.2.1 TCP/UDP簡(jiǎn)介 272
11.2.2 Socket和Winsocket簡(jiǎn)介 273
11.2.3 Winsock編程結(jié)構(gòu) 274
11.2.4 Winsock地址處理 275
11.2.5 Winsock函數(shù)介紹 276
11.2.6 Winsock綜合示例 281
11.3 網(wǎng)絡(luò)游戲通信協(xié)議 284
11.4 網(wǎng)絡(luò)游戲多線程編程 285
11.5 小型網(wǎng)絡(luò)游戲設(shè)計(jì)與實(shí)現(xiàn) 286
11.6 大型多人網(wǎng)絡(luò)游戲設(shè)計(jì)策略 288
11.7 網(wǎng)絡(luò)傳輸?shù)膬?yōu)化 291
小結(jié) 293
習(xí)題11 293
參考文獻(xiàn) 293
第12章 虛擬現(xiàn)實(shí)/增強(qiáng)現(xiàn)實(shí)游戲開發(fā) 294
12.1 虛擬現(xiàn)實(shí)與增強(qiáng)現(xiàn)實(shí)概述 294
12.1.1 虛擬現(xiàn)實(shí) 294
12.1.2 增強(qiáng)現(xiàn)實(shí) 297
12.2 深度感知與三維顯示 298
12.2.1 深度感知 298
12.2.2 基于立體眼鏡的三維顯示 300
12.3 VR游戲開發(fā) 301
12.3.1 視角控制 302
12.3.2 三維自然交互 303
12.3.3 性能優(yōu)化 307
12.4 AR游戲開發(fā) 311
12.4.1 AR游戲中的三維注冊(cè)與實(shí)時(shí)交互 311
12.4.2 代表性AR游戲 313
小結(jié) 316
習(xí)題12 316
參考文獻(xiàn) 317
附錄A 三維圖形繪制基礎(chǔ) 318
A.1 坐標(biāo)系概述 318
A.2 顏色空間與模型 319
A.3 圖形繪制流程 323
A.3.1 固定流水線 324
A.3.2 定制流水線與Shaders 325
A.4 照相機(jī)模型與投影矩陣 326
A.4.1 照相機(jī)模型 326
A.4.2 投影矩陣 327
A.5 頂點(diǎn)與幾何變換 329
A.6 像素計(jì)算 330
A.6.1 像素顏色計(jì)算 330
A.6.2 片段剔除 332
A.6.3 反走樣 332
A.7 光照明計(jì)算 333
A.8 紋理映射 339
A.9 推遲渲染 344
A.10 繪制編程接口 346
參考文獻(xiàn) 348
劉宇廣 (2018/9/25 17:08:00):我愛你湖南科技職業(yè)學(xué)院我會(huì)愛你一生一世永遠(yuǎn)不分離