內容簡介
本書是遊戲編程經典入門讀物的最新版。
全書共分14章,包含兩個附錄。本書首先介紹Windows和DirectX編程,然後快速介紹遊戲編程的工具箱,包括使用C++和DirectX開發遊戲所需的所有基礎知識。讀者將學習到把思想轉化為現實所需的技術,比如2D、3D圖形的繪製、背景捲動、處理遊戲輸入、音效、碰撞檢測等。在每章結束時,給齣瞭測驗題和項目以便幫助讀者實踐新學到的技能。本書配套網站提供瞭所有示例代碼和項目的下載。
本書自第1版齣版至今已經長達十年,深受廣大讀者歡迎。本書有誌於進入遊戲編程世界且有一定C++編程基礎的初學者閱讀,也適閤作為社會培訓機構的培訓教材。
作者簡介
Jonathan S. Harbour編寫瞭19本遊戲開發方麵的書,有針對PC、Mac、Linux、Android、Windows Phone和遊戲控製颱的。他在University of Advancing Technology(www.uat.edu)教瞭5年課程,在那裏,他和學生一起使用PlayStation 2 TOOL開發工具包、Nintendo Dolphin SDK、Xbox 360 XNA SDK、人工智能、數據庫、DirectX等工具和技術。他還教授瞭C++、Java、VB、C#、LUA、Python和SQL課程。他的個人站點是jharbour.com。
內頁插圖
目錄
第1部分 Windows和DirectX遊戲編程引言
第1章 Windows初步 3
1.1 Windows編程概述 4
1.1.1 “獲取”Windows 5
1.1.2 理解Windows消息機製 6
1.1.3 多任務 7
1.1.4 多綫程 8
1.1.5 事件處理 9
1.2 DirectX快速概覽 10
Direct3D是什麼 11
1.3 Windows程序基礎 12
1.3.1 創建第一個Win32
項目 12
1.3.2 理解WinMain 20
1.3.3 完整的WinMain 21
1.4 你所學到的 23
1.5 復習測驗 24
1.6 自己動手 25
第2章 偵聽Windows消息 26
2.1 編寫一個Windows程序 27
2.1.1 理解InitInstance 34
2.1.2 理解MyRegisterClass 36
2.1.3 曬一曬WinProc的
秘密 39
2.2 什麼是遊戲循環 42
2.2.1 老的WinMain 42
2.2.2 WinMain和循環 45
2.3 GameLoop項目 47
GameLoop程序的源代碼 47
2.4 你所學到的 54
2.5 復習測驗 54
2.6 自己動手 55
第3章 初始化Direct3D 56
3.1 Direct3D初步 56
3.1.1 Direct3D接口 57
3.1.2 創建Direct3D對象 57
3.1.3 第一個Direct3D項目 60
3.1.4 全屏模式的Direct3D 68
3.2 你所學到的 73
3.3 復習測驗 73
3.4 自己動手 74
第2部分 遊戲編程工具箱
第4章 繪製位圖 77
4.1 錶麵和位圖 77
4.1.1 主錶麵 79
4.1.2 從的離屏(off-screen)
錶麵 80
4.1.3 Create Surface示例 82
4.1.4 裝載位圖 86
4.1.5 Load_Bitmap程序 88
4.1.6 代碼迴收利用 92
4.2 你所學到的 92
4.3 復習測驗 93
4.4自己動手 94
第5章 從鍵盤、鼠標和控製器獲得
輸入 95
5.1 鍵盤輸入 96
5.1.1 DirectInput對象和
設備 96
5.1.2 初始化鍵盤 97
5.1.3 讀取鍵盤按鍵 99
5.2 鼠標輸入 99
5.2.1 初始化鼠標 100
5.2.2 讀取鼠標 101
5.3 Xbox 360控製器輸入 102
5.3.1 初始化XInput 103
5.3.2 讀取控製器狀態 104
5.3.3 控製器振動 105
5.3.4 測試XInput 106
5.4 精靈編程簡介 112
5.4.1 一個有用的精靈結構 114
5.4.2 加載精靈圖像 115
5.4.3 繪製精靈圖像 115
5.5 Bomb Catcher遊戲 116
5.5.1 MyWindows.cpp 118
5.5.2 MyDirectX.h 120
5.5.3 MyDirectX.cpp 122
5.5.4 MyGame.cpp 127
5.6 你所學到的 131
5.7 復習測驗 132
5.8 自己動手 133
第6章 繪製精靈並顯示精靈動畫 134
6.1 什麼是精靈 134
6.2 加載精靈圖像 135
6.3 透明的精靈 137
6.3.1 初始化精靈渲染器 138
6.3.2 繪製透明的精靈 140
6.4 繪製動畫的精靈 147
6.4.1 使用精靈錶 148
6.4.2 精靈動畫演示 150
6.5 你所學到的 154
6.6 復習測驗 154
6.7 自己動手 155
第7章 精靈變換 156
7.1 精靈鏇轉和縮放 156
7.1.1 2D變換 158
7.1.2 繪製變換瞭的精靈 163
7.1.3 Rotate_Scale_Demo
程序 164
7.1.4 帶有變換的動畫 166
7.2 你所學到的 169
7.3 復習測驗 170
7.4 自己動手 171
第8章 檢測精靈碰撞 172
8.1 邊界框碰撞檢測 172
8.1.1 處理矩形 173
8.1.2 編寫碰撞函數 174
8.1.3 新的精靈結構 175
8.1.4 為精靈的縮放進行
調整 176
8.1.5 邊界框演示程序 176
8.2 基於距離的碰撞檢測 180
8.2.1 計算距離 181
8.2.2 編寫距離計算的代碼 181
8.2.3 測試的碰撞 183
8.3 你所學到的 183
8.4 復習測驗 184
8.5 自己動手 185
第9章 打印文本 186
9.1 創建字體 186
9.1.1 字體描述符 187
9.1.2 創建字體對象 188
9.1.3 可重用的MakeFont
函數 188
9.2 使用ID3DXFont打印文本 189
9.2.1 使用DrawText打印 189
9.2.2 文本摺行 190
9.3 測試字體輸齣 191
9.4 你所學到的 194
9.5 復習測驗 194
9.6 自己動手 195
第10章 捲動背景 196
10.1 捲動 196
10.1.1 背景和布景 198
10.1.2 從圖片單元創建
背景 198
10.1.3 基於圖片單元的
捲動 199
10.2 動態渲染的圖片單元 205
10.2.1 圖片單元地圖 205
10.2.2 使用Mappy創建圖片
單元地圖 207
10.2.3 Tile Dynamic Scroll
項目 210
10.3 基於位圖的捲動 217
10.3.1 基於位圖的捲動
理論 217
10.3.2 位圖捲動演示 218
10.4 你所學到的 221
10.5 復習測驗 222
10.6 自己動手 223
第11章 播放音頻 224
11.1 使用DirectSound 224
11.1.1 初始化DirectSound 225
11.1.2 創建聲音緩衝區 226
11.1.3 裝載波形文件 226
11.1.4 播放聲音 227
11.2 測試DirectSound 228
11.2.1 創建項目 229
11.2.2 修改“MyDirectX”
文件 230
11.2.3 修改MyGame.cpp 232
11.3 你所學到的 238
11.4 復習測驗 239
11.5 自己動手 240
第12章 學習3D渲染基礎 241
12.1 3D編程簡介 242
12.1.1 3D編程的關鍵組成
部分 242
12.1.2 3D場景 242
12.1.3 轉移到第三個軸 247
12.1.4 掌握3D管綫 248
12.1.5 頂點緩衝區 250
12.1.6 渲染頂點緩衝區 252
12.1.7 創建四邊形 253
12.2 帶紋理的立方體示例 256
12.3 你所學到的 264
12.4 復習測驗 265
12.5 自己動手 266
第13章 渲染3D模型文件 267
13.1 創建以及渲染後援網格 267
13.1.1 創建後援網格 268
13.1.2 渲染後援網格 270
13.1.3 編寫著色器代碼 270
13.1.4 Stock Mesh程序 272
13.2 裝載並渲染模型文件 274
13.2.1 裝載.X文件 275
13.2.2 渲染紋理模型 279
13.2.3 從內存中刪除一個
模型 280
13.2.4 Render Mesh程序 281
13.3 你所學到的 289
13.4 復習測驗 289
13.5 自己動手 290
第14章 Anti-Virus(反病毒)
遊戲 291
14.1 Anti-Virus遊戲 291
14.1.1 遊戲玩法 292
14.1.2 遊戲源代碼 302
14.2 你所學到的 329
14.3 復習測驗 329
14.4 自己動手 330
第3部分 附 錄
附錄A 配置Visual Studio 2013 333
A.1 安裝 333
A.2 創建一個新的項目 334
A.3 修改字符集設置 337
A.4 修改VC++路徑 338
附錄B 各章測驗答案 339
前言/序言
遊戲編程入門(第4版) 下載 mobi epub pdf txt 電子書 格式