注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)圖形圖像、多媒體、網(wǎng)頁(yè)制作DirectorDirectX 9.0 3D游戲開(kāi)發(fā)編程基礎(chǔ)

DirectX 9.0 3D游戲開(kāi)發(fā)編程基礎(chǔ)

DirectX 9.0 3D游戲開(kāi)發(fā)編程基礎(chǔ)

定 價(jià):¥46.00

作 者: (美)Frank D.Luna 著,(美)Rod Lopez 技術(shù)審校,段菲 譯
出版社: 清華大學(xué)出版社
叢編項(xiàng):
標(biāo) 簽: Director

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


ISBN: 9787302130253 出版時(shí)間: 2007-04-01 包裝: 膠版紙
開(kāi)本: 185*230 頁(yè)數(shù): 373 字?jǐn)?shù):  

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

  本書(shū)主要介紹如何使用DirectX 9.0開(kāi)發(fā)交互式3D圖形程序,重點(diǎn)是游戲開(kāi)發(fā)。全書(shū)首先介紹了必要的數(shù)學(xué)工具,然后講解了相關(guān)的3D概念。其他主題幾乎涵蓋了Direct3D中的所有基本運(yùn)算,例如圖元的繪制、光照、紋理、Alpha融合、模板,以及如何使用Direct3D實(shí)現(xiàn)游戲中所需的技術(shù)。介紹頂定點(diǎn)著色器和像素著色器的章節(jié)(包含了效果框架和新的高級(jí)著色語(yǔ)言的內(nèi)容)對(duì)這些關(guān)鍵運(yùn)算進(jìn)行了較為集中的討論。本書(shū)內(nèi)容深入淺出,內(nèi)容廣泛,可供從事3D游戲程序設(shè)計(jì)、可視化系統(tǒng)設(shè)計(jì)或其他圖形應(yīng)用程序開(kāi)發(fā)的開(kāi)發(fā)人員和大中專(zhuān)院校學(xué)生參考,也極適合各種游戲開(kāi)發(fā)培訓(xùn)機(jī)構(gòu)作為Direct3D編程的培訓(xùn)教程。

作者簡(jiǎn)介

  Prank Luna是Hero lnteractive的程序員,從事交互式3D圖形編程已有八年多。他最早接觸DirectX可以追溯到DirectX5發(fā)布之時(shí),目前居住在加州的洛杉磯市。

圖書(shū)目錄

第Ⅰ部分  基礎(chǔ)知識(shí)

必備的數(shù)學(xué)知識(shí)    3
3D空間中的向量    3
向量相等    7
計(jì)算向量的長(zhǎng)度    7
向量的規(guī)范化    8
向量加法    9
向量減法    9
數(shù)乘    10
點(diǎn)積    11
叉積    11
矩陣        12
矩陣相等、矩陣數(shù)乘和矩陣加法    13
矩陣乘法    14
單位矩陣    15
逆矩陣        15
矩陣的轉(zhuǎn)置    16
D3DX矩陣    16
基本變換    19
平移矩陣    20
旋轉(zhuǎn)矩陣    21
比例變換矩陣    23
幾何變換的組合    24
向量變換的一些函數(shù)    25
平面(選讀)    26
D3DXPLANE    27
點(diǎn)和平面的空間關(guān)系    27
平面的創(chuàng)建    28
平面的規(guī)范化    29
平面的變換    29
平面中到某一點(diǎn)的最近點(diǎn)    30
射線(選讀)    31
射線    31
射線與平面的相交    32
小結(jié)        32
  

第Ⅱ部分  Direct3D基礎(chǔ)

第1章  初始化Direct3D    37
1.1  Direct3D概述    37
1.1.1  REF設(shè)備    38
1.1.2  D3DDEVTYPE    38
1.2  COM(組件對(duì)象模型)    38
1.3  預(yù)備知識(shí)    39
1.3.1  表面    39
1.3.2  多重采樣    41
1.3.3  像素格式    42
1.3.4  內(nèi)存池    42
1.3.5  交換鏈和頁(yè)面置換    43
1.3.6  深度緩存    44
1.3.7  頂點(diǎn)運(yùn)算    45
1.3.8  設(shè)備性能    45
1.4  Direct3D的初始化    46
1.4.1  獲取接口IDirect3D9的指針    47
1.4.2  校驗(yàn)硬件頂點(diǎn)運(yùn)算    47
1.4.3  填充D3DPRESENT_
PARAMETER結(jié)構(gòu)    48
1.4.4  創(chuàng)建IDirect3DDevice9
接口    50
1.5  例程:Direct3D的初始化    51
1.5.1  d3dUtility.h/cpp    52
1.5.2  例程框架    53
1.5.3  例程:D3D初始化    54
1.6  小結(jié)    56
第2章  繪制流水線    58
2.1  模型表示    59
2.1.1  頂點(diǎn)格式    60
2.1.2  三角形單元    60
2.1.3  索引    61
2.2  虛擬攝像機(jī)    62
2.3  繪制流水線    63
2.3.1  局部坐標(biāo)系    64
2.3.2  世界坐標(biāo)系    64
2.3.3  觀察坐標(biāo)系    65
2.3.4  背面消隱    67
2.3.5  光照    68
2.3.6  裁剪    68
2.3.7  投影    69
2.3.8  視口變換    70
2.3.9  光柵化    72
2.4  小結(jié)    72
第3章  Direct3D中的繪制    73
3.1  頂點(diǎn)緩存與索引緩存    73
3.1.1  創(chuàng)建頂點(diǎn)緩存和索引緩存    73
3.1.2  訪問(wèn)緩存內(nèi)容    76
3.1.3  獲取頂點(diǎn)緩存和
索引緩存的信息    77
3.2  繪制狀態(tài)    78
3.3  繪制的準(zhǔn)備工作    78
3.4  使用頂點(diǎn)緩存和索引緩存進(jìn)行繪制    79
3.4.1  IDirect3DDevice9::
DrawPrimitive    79
3.4.2  IDirect3DDevice9::
DrawIndexedPrimitive    80
3.4.3  Begin/End Scene    81
3.5  D3DX幾何體    81
3.6  例程:三角形、立方體、
茶壺、D3DXCreate*    83
3.7  小結(jié)    87
第4章  顏色    89
4.1  顏色表示    89
4.2  頂點(diǎn)顏色    92
4.3  著色    92
4.4  例程:具有顏色的三角形    93
4.5  小結(jié)    95
第5章  光照    97
5.1  光照的組成    97
5.2  材質(zhì)    98
5.3  頂點(diǎn)法線    100
5.4  光源    102
5.5  例程:光照    105
5.6  一些附加例程    108
5.7  小結(jié)    108
第6章  紋理映射    109
6.1  紋理坐標(biāo)    110
6.2  創(chuàng)建并啟用紋理    111
6.3  紋理過(guò)濾器    112
6.4  多級(jí)漸進(jìn)紋理    113
6.4.1  多級(jí)漸進(jìn)紋理過(guò)濾器    114
6.4.2  使用多級(jí)漸進(jìn)紋理    114
6.5  尋址模式    114
6.6  例程:紋理四邊形    116
6.7  小結(jié)    118
第7章  融合技術(shù)    119
7.1  融合方程    119
7.2  融合因子    121
7.3  透明度    122
7.3.1  Alpha通道    122
7.3.2  指定Alpha來(lái)源    123
7.4  用DirectX Texture Tool
創(chuàng)建Alpha通道    123
7.5  例程:透明效果    125
7.6  小結(jié)    127
第8章  模板    128
8.1  模板緩存的使用    129
8.1.1  模板緩存格式的查詢(xún)    129
8.1.2  模板測(cè)試    130
8.1.3  模板測(cè)試的控制    130
8.1.4  模板緩存的更新    132
8.1.5  模板寫(xiě)掩碼    132
8.2  例程:鏡面效果    133
8.2.1  成像中的數(shù)學(xué)問(wèn)題    133
8.2.2  鏡面效果實(shí)現(xiàn)概述    134
8.2.3  代碼解析    135
8.3  例程:Planer Shadows    139
8.3.1  平行光陰影    139
8.3.2  點(diǎn)光源產(chǎn)生的陰影    140
8.3.3  陰影矩陣    141
8.3.4  使用模板緩存
防止二次融合    142
8.3.5  代碼解析    143
8.4  小結(jié)    144

第Ⅲ部分  Direct3D的應(yīng)用

第9章  字體    149
9.1  ID3DXFont接口    149
9.1.1  創(chuàng)建一個(gè)ID3DXFont
接口對(duì)象    149
9.1.2  繪制文本    150
9.1.3  計(jì)算每秒繪制的幀數(shù)    151
9.2  CD3DFont    152
9.2.1  創(chuàng)建CD3DFont類(lèi)的實(shí)例    152
9.2.2  繪制文本    152
9.2.3  清理    153
9.3  D3DXCreateText函數(shù)    153
9.4  小結(jié)    155
第10章  網(wǎng)格(一)    156
10.1  幾何信息    156
10.2  子集和屬性緩存    157
10.3  繪制    159
10.4  網(wǎng)格優(yōu)化    159
10.5  屬性表    161
10.6  鄰接信息    163
10.7  克隆    164
10.8  創(chuàng)建網(wǎng)格(D3DXCreateMeshFVF)    165
10.9  例程:網(wǎng)格的創(chuàng)建與繪制    167
10.10  小結(jié)    172
第11章  網(wǎng)格(二)    174
11.1  ID3DXBuffer    174
11.2  XFile    175
11.2.1  加載XFile文件    175
11.2.2  XFile材質(zhì)    176
11.2.3  例程:XFile    177
11.2.4  生成頂點(diǎn)法線    180
11.3  漸進(jìn)網(wǎng)格    181
11.3.1  生成漸進(jìn)網(wǎng)格    182
11.3.2  頂點(diǎn)屬性權(quán)值    183
11.3.3  ID3DXPMesh接口方法    183
11.3.4  例程:Progressive Mesh    184
11.4  外接體    187
11.4.1  一些新的特殊常量    189
11.4.2  外接體的類(lèi)型    189
11.4.3  例程:Bounding Volumes    190
11.5  小結(jié)    192
第12章  設(shè)計(jì)一個(gè)靈活的
          Camera類(lèi)    193
12.1  Camera類(lèi)的設(shè)計(jì)    193
12.2  實(shí)現(xiàn)細(xì)節(jié)    195
12.2.1  觀察矩陣(取景變換矩陣,
View Matrix)的計(jì)算    195
12.2.2  繞任意軸的旋轉(zhuǎn)    198
12.2.3  俯仰、偏航和滾動(dòng)    199
12.2.4  行走、掃視和升降    201
12.3  例程:Camera    202
12.4  小結(jié)    205
第13章  地形繪制基礎(chǔ)    206
13.1  高度圖    207
13.1.1  創(chuàng)建高度圖    207
13.1.2  加載RAW文件    208
13.1.3  訪問(wèn)和修改高度圖    209
13.2  創(chuàng)建地形幾何信息    210
13.2.1  頂點(diǎn)的計(jì)算    212
13.2.2  索引的計(jì)算    214
13.3  紋理映射    216
13.4  光照    219
13.4.1  概述    219
13.4.2  坐標(biāo)方格的明暗度計(jì)算    220
13.4.3  對(duì)地形進(jìn)行著色    222
13.5  在地形中“行走”    222
13.6  例程:Terrain    226
13.7  一些改進(jìn)    228
13.8  小結(jié)    229
第14章  粒子系統(tǒng)    230
14.1  粒子和點(diǎn)精靈    230
14.1.1  結(jié)構(gòu)格式    230
14.1.2  點(diǎn)精靈的繪制狀態(tài)    231
14.1.3  粒子及其屬性    233
14.2  粒子系統(tǒng)的組成    234
14.2.1  繪制一個(gè)粒子系統(tǒng)    238
14.2.2  隨機(jī)性    243
14.3  具體的粒子系統(tǒng)    243
14.3.1  例程:Snow System    244
14.3.2  例程:Firework    246
14.3.3  例程:Particle Gun    248
14.4  小結(jié)    250
第15章  拾取    251
15.1  屏幕到投影窗口的變換    253
15.2  拾取射線的計(jì)算    254
15.3  對(duì)射線進(jìn)行變換    255
15.4  射線/物體相交判定    256
15.5  例程:Picking    258
15.6  小結(jié)    259

第Ⅳ部分  著色器和效果

第16章  高級(jí)著色語(yǔ)言(HLSL)入門(mén)    263
16.1  HLSL著色器程序的編制    264
16.1.1  全局變量    266
16.1.2  輸入和輸出結(jié)構(gòu)    266
16.1.3  入口函數(shù)    267
16.2  HLSL著色器程序的編譯    268
16.2.1  常量表    268
16.2.2  HLSL著色器程序的編譯    272
16.3  變量類(lèi)型    274
16.3.1  標(biāo)量類(lèi)型    274
16.3.2  向量類(lèi)型    274
16.3.3  矩陣類(lèi)型    275
16.3.4  數(shù)組    277
16.3.5  結(jié)構(gòu)體    277
16.3.6  關(guān)鍵字typedef    277
16.3.7  變量的前綴    278
16.4  關(guān)鍵字、語(yǔ)句及類(lèi)型轉(zhuǎn)換    279
16.4.1  關(guān)鍵字    279
16.4.2  基本程序流程    279
16.4.3  類(lèi)型轉(zhuǎn)換    280
16.5  運(yùn)算符    281
16.6  用戶(hù)自定義函數(shù)    282
16.7  內(nèi)置函數(shù)    284
16.8  小結(jié)    286
第17章  頂點(diǎn)著色器入門(mén)    287
17.1  頂點(diǎn)聲明    288
17.1.1  頂點(diǎn)聲明的描述    288
17.1.2  頂點(diǎn)聲明的創(chuàng)建    291
17.1.3  頂點(diǎn)聲明的啟用    291
17.2  頂點(diǎn)數(shù)據(jù)的使用    291
17.3  使用頂點(diǎn)著色器的步驟    293
17.3.1  頂點(diǎn)著色器的編寫(xiě)與編譯    294
17.3.2  頂點(diǎn)著色器的創(chuàng)建    294
17.3.3  頂點(diǎn)著色器的設(shè)置    294
17.3.4  頂點(diǎn)著色器的銷(xiāo)毀    295
17.4  例程:Diffuse Lighting    295
17.5  例程:Cartoon Rendering    302
17.5.1  卡通著色    303
17.5.2  卡通著色的頂點(diǎn)
著色器代碼    304
17.5.3  輪廓的勾勒    307
17.5.4  實(shí)現(xiàn)輪廓勾勒的
頂點(diǎn)著色器代碼    310
17.6  小結(jié)    312
第18章  像素著色器入門(mén)    313
18.1  多重紋理概述    313
18.1.1  啟用多重紋理    315
18.1.2  多重紋理坐標(biāo)    316
18.2  像素著色器的輸入和輸出    317
18.3  使用像素著色器的步驟    318
18.3.1  像素著色器的編寫(xiě)和編譯    318
18.3.2  像素著色器的創(chuàng)建    318
18.3.3  像素著色器的設(shè)置    319
18.3.4  像素著色器的銷(xiāo)毀    319
18.4  HLSL采樣器對(duì)象    319
18.5  例程:像素著色器中的多重紋理    321
18.6  小結(jié)    329
第19章  效果框架    331
19.1  手法與路徑    331
19.2  更多HLSL的內(nèi)置對(duì)象    333
19.2.1  紋理對(duì)象    333
19.2.2  采樣器對(duì)象與采樣器狀態(tài)    333
19.2.3  頂點(diǎn)著色器對(duì)象和
像素著色器對(duì)象    334
19.2.4  字符串    335
19.2.5  注釋    335
19.3  效果文件中的設(shè)備狀態(tài)    336
19.4  創(chuàng)建一種效果    337
19.5  常量的設(shè)置    338
19.6  使用一種效果    340
19.6.1  效果句柄的獲取    341
19.6.2  效果的激活    341
19.6.3  效果的啟用    341
19.6.4  當(dāng)前繪制路徑的設(shè)置    342
19.6.5  效果的終止    342
19.6.6  一個(gè)例子    342
19.7  例程:效果文件中的光照和紋理    343
19.8  例程:霧效    349
19.9  例程:卡通效果    352
19.10  EffectEdit    353
19.11  小結(jié)    354
附錄  Windows編程入門(mén)    355
參考文獻(xiàn)    372

本目錄推薦

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