-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

Lua游戲AI開發指南

( 簡體 字)
作者:[美] David Young 楊類別:1. -> 遊戲 -> 遊戲程式
譯者:
出版社:人民郵電出版社Lua游戲AI開發指南 3dWoo書號: 46031
詢問書籍請說出此書號!

缺書
NT售價: 345

出版日:1/1/2017
頁數:304
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787115439475
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

內容簡介:

  游戲人工智能(游戲AI)是游戲開發的一個重要方面,在很大程度上決定了游戲產品的逼真程度和對玩家的吸引力,由此也得到游戲開發工程師越來越多的重視。
本書秉承把動畫和運動系統直接集成到AI系統的方法,詳細介紹了如何使用Lua語言及相關的技術和工具,編寫和實現高質量的游戲AI。全書共9章,分別介紹了沙箱基礎、創建和移動智能體、角色動畫、意識控制、導航、決策制定、知識表達、感知和策略等主題。
本書適合于游戲開發工程師,特別是想要詳細了解游戲AI開發的程序員閱讀參考。
目錄:

第1章 從構建沙箱開始 1
1 AI沙箱簡介 1
1.1 理解沙箱 2
1.2 項目文件組織 2
1.3 預先做好的構建 4
1.4 使用Visual Studio 2008/2010/2012/2013編譯沙箱項目 5
1.5 開源庫 5
1.6 開源工具 6
1.7 Lua IDE-Decoda 6
1.8 在Decoda中運行AI沙箱 6
1.9 創建一個新的Decoda項目 7
1.10 調試Lua腳本 8
1.11 Decoda的Watch窗口 9
1.12 Decoda的Call Stack窗口 9
1.13 Decoda的Virtual Machines窗口 9
1.14 同時調試Lua與C\++代碼 10
1.15 Visual Studio-附加到進程 10
1.16 Decoda-附加到進程 11
1.17 Decoda-附加到系統調試器 11
1.18 關聯Lua腳本代碼到Decoda 12
1.19 Lua虛擬機 12
1.20 Lua堆棧 13
1.21 Lua基礎類型 13
1.22 元表 14
1.23 元方法 14
1.24 自定義類型 15
1.25 C/C++調用Lua函數 15
1.26 Lua調用C/C++函數 16
1.27 創建自定義數據類型 18
1.28 Demo框架 20
2 小結 24
第2章 創建并移動智能體 25
1 新建一個沙箱項目 25
2 創建文件結構 26
3 擴展SandboxApplication類 26
4 首次運行你的沙箱 28
5 新建一個Decoda項目 29
6 配置Decoda運行的可執行程序 29
7 創建一個沙箱Lua腳本 30
7.1 創建地板 31
7.2 添加光源 31
7.3 添加天空盒 32
7.4 在沙箱中添加網格 33
7.5 創建沙箱對象 34
8 發射方塊 35
9 創建智能體Lua腳本 37
9.1 創建視覺表象 38
9.2 更新智能體的位置 39
9.3 更新智能體的朝向 39
10 智能體的屬性 40
10.1 朝向 40
10.2 定位 40
10.3 大小 41
10.4 物理 41
10.5 知識 42
10.6 智能體的移動 43
10.7 智能體轉向力 44
10.8 規避 56
10.9 規避障礙物和其他智能體 57
10.10 群組移動 59
10.11 創建一群追隨者 59
10.12 轉向力合計 63
11 小結 64
第3章 角色動畫 65
1 骨骼和網格 65
1.1 網格骨骼 66
1.2 加載一個動畫網格 66
1.3 顯示骨骼 66
2 附加網格到骨骼上 67
給戰士附加武器 67
3 動畫片段 69
3.1 播放戰士動畫 69
3.2 戰士動畫 70
4 戰士的姿勢 72
武器姿勢 74
5 操作動畫 75
5.1 啟用和禁用動畫 75
5.2 循環動畫 75
5.3 動畫的長度 76
5.4 動畫時間 76
5.5 歸一化時間 76
5.6 重新開始動畫 76
5.7 播放非循環動畫 77
5.8 動畫速率 78
6 動畫混合 78
6.1 動畫權重 79
6.2 混合窗口 79
6.3 混合曲線 79
6.4 線性混合 79
6.5 處理混合權重 80
7 動畫狀態機(ASM) 83
7.1 狀態 83
7.2 轉換 84
7.3 創建動畫狀態機 84
7.4 創建輔助函數 85
7.5 添加狀態 86
7.6 添加轉換 86
7.7 添加外部輔助函數 87
7.8 強制設置狀態 88
7.9 請求狀態 89
7.10 更新動畫狀態機 89
7.11 處理狀態轉換和狀態請求 89
7.12 更新運行中的動畫 91
7.13 動畫狀態機實例 92
8 構造一個武器動畫狀態機 92
9 構建戰士的動畫狀態機 95
10 更新動畫狀態機 97
11 處理狀態 98
12 小結 100
第4章 意識體控制 101
1 創建身體 101
1.1 創建戰士 102
1.2 附加動畫網格到智能體 104
1.3 創建障礙訓練場 105
2 為動畫狀態機添加回調 107
2.1 處理回調 108
2.2 為ASM添加回調 108
2.3 更新ASM以調用回調函數 109
3 讓戰士射擊 111
3.1 骨骼位置 111
3.2 骨骼旋轉 111
3.3 創建粒子效果 111
3.4 粒子方向 112
3.5 對象刪除 112
3.6 碰撞效果回調 112
3.7 發生子彈 113
3.8 處理子彈碰撞效果 113
3.9 射擊 114
4 讓戰士奔跑 116
4.1 設置穿越障礙訓練場的路線 116
4.2 跑過障礙訓練場 117
5 創建大腦 118
實現意識體控制的方法 118
6 直接動畫控制 119
6.1 死亡狀態 119
6.2 空閑狀態 121
6.3 下落狀態 122
6.4 移動狀態 123
6.5 射擊狀態 124
7 一個簡單的有限狀態機 125
7.1 初始化智能體 126
7.2 智能體FSM狀態處理 127
8 間接動畫控制 128
8.1 動畫控制器 129
8.2 命令 129
8.3 命令隊列 130
8.4 操作命令 131
8.5 姿勢改變命令 131
8.6 死亡命令 132
8.7 下落命令 133
8.8 空閑命令 134
8.9 移動命令 136
8.10 射擊命令 137
8.11 賦值成員函數 139
8.12 初始化控制器 139
8.13 添加命令處理函數 140
8.14 更新控制器 141
9 運行障礙訓練場 142
9.1 創建直接控制智能體 143
9.2 創建間接控制智能體 144
9.3 間接控制智能體初始化 145
9.4 間接控制智能體更新 145
9.5 間接控制智能體的控制 146
9.6 產生一個間接控制的智能體 146
10 動作延遲 147
11 小結 148
第5章 導航 149
1 尋路 149
2 創建導航網格 149
2.1 配置導航網格 150
2.2 可通行高度 151
2.3 可通行半徑 152
2.4 可通行的攀爬高度 153
2.5 可通行的斜坡角度 154
2.6 最小區域面積 154
2.7 構建導航網格 156
2.8 繪制導航網格 156
3 在導航網格中尋路 157
3.1 路徑查詢 157
3.2 查詢結果 157
3.3 隨機導航路點 158
4 路徑信息 158
5 為戰士添加隨機尋路 158
5.1 更新智能體的路徑 159
5.2 繪制路徑 160
5.3 初始化導航網格 160
5.4 隨意移動的智能體 162
6 創建更多的導航網格 163
7 小結 163
第6章 決策制定 164
1 創建自定義類型 164
2 智能體動作 165
2.1 添加數據成員 166
2.2 動作初始化 167
2.3 動作更新 167
2.4 動作清理 168
2.5 動作的成員函數 168
3 創建動作 169
3.1 空閑動作 169
3.2 死亡動作 170
3.3 換彈藥動作 171
3.4 射擊動作 172
3.5 隨機移動動作 174
3.6 移動動作 175
3.7 逃跑動作 178
3.8 追逐動作 181
4 求值器 184
5 創建求值器 184
5.1 常數求值器 185
5.2 是否擁有彈藥求值器 185
5.3 是否有生命危險求值器 185
5.4 是否有敵人求值器 186
5.5 是否移動求值器 187
5.6 是否存活求值器 187
5.7 能否射擊敵人求值器 188
5.8 50比50機會求值器 188
6 決策結構 189
7 決策樹 189
7.1 分枝 190
7.2 決策葉節點 191
7.3 分枝求值 191
8 構造一棵決策樹 192
創建分枝 193
9 創建一個決策樹智能體 196
9.1 決策樹的優點 198
9.2 決策樹的缺點 198
10 有限狀態機 198
10.1 狀態 198
10.2 轉換 199
10.3 有限狀態機結構 199
10.4 輔助函數 200
10.5 添加狀態和轉換 201
10.6 更新有限狀態機 202
10.7 添加實例函數 203
11 構造有限狀態機 204
11.1 空閑狀態 204
11.2 移動狀態 205
11.3 隨機移動狀態 206
11.4 射擊狀態 207
11.5 逃跑狀態 208
11.6 死亡狀態 209
11.7 追逐狀態 209
11.8 換子彈狀態 210
12 創建一個有限狀態機智能體 211
13 有限狀態機的優點 212
14 有限狀態機的缺點 212
15 行為樹 212
15.1 行為樹結點 213
15.2 輔助函數 213
15.3 更新行為樹結點 214
16 動作 215
17 條件 215
18 選擇器 216
19 序列 216
20 創建行為樹對象 216
20.1 行為樹輔助函數 217
20.2 選擇器計算 217
20.3 序列計算 219
20.4 結點計算 221
20.5 繼續行為樹計算 221
20.6 行為樹的更新循環 222
20.7 更新行為樹 223
21 構造一顆行為樹 224
21.1 死亡行為 225
21.2 逃跑行為 226
21.3 戰斗行為 226
21.4 換子彈行為 227
21.5 射擊行為 228
21.6 追逐行為 228
21.7 移動行為 229
21.8 隨機移動行為 230
21.9 空閑行為 230
22 創建行為樹智能體 231
23 行為樹的優點 232
24 行為樹的缺點 232
25 小結 232
第7章 知識表達 233
1 知識源 233
1.1 創建知識源 233
1.2 知識源求值 234
2 黑板 235
2.1 創建黑板 235
2.2 添加和刪除知識源 235
2.3 知識源求值 236
2.4 設置和返回黑板屬性 237
2.5 黑板的成員函數 237
3 創建戰士的知識源 238
3.1 選擇敵人 238
3.2 選擇逃離位置 239
4 構造戰士的黑板 240
5 更新決策求值器 242
6 更新行為動作 243
6.1 死亡動作 243
6.2 逃離動作 243
6.3 空閑動作 244
6.4 移動動作 245
6.5 追逐動作 246
6.6 換子彈動作 246
6.7 射擊動作 247
7 小結 247
第8章 感知 248
1 事件 248
1.1 屬性 248
1.2 發送事件 249
1.3 接收事件 249
2 管理事件 250
2.1 分配智能體團隊 250
2.2 處理智能體通訊 251
2.3 事件類型 253
3 創建智能體的官能 253
3.1 初始化官能 253
3.2 更新官能 253
4 智能體可見性 254
檢測其他可見智能體 255
5 智能體視覺事件 257
5.1 看到新敵人的事件 257
5.2 看到新的敵人死尸事件 257
5.3 看到新的死亡隊友事件 258
6 處理新看到的智能體 259
6.1 間歇性可見的智能體 260
6.2 限制智能體可視性的更新 261
6.3 創建事件處理 261
6.4 添加事件處理函數 263
7 智能體的聽覺 263
8 聽覺事件 264
8.1 子彈發射事件 264
8.2 子彈碰撞事件 264
9 處理聽覺事件 265
10 清理黑板中的事件 266
11 清理聽覺事件 267
12 團隊交流 268
12.1 選擇敵人事件 268
12.2 位置更新事件 269
12.3 撤退位置事件 269
13 更新智能體行為 270
13.1 選擇敵人 270
13.2 評估危險位置 272
13.3 計算最佳逃離位置 275
14 小結 276
第9章 策略 277
1 影響力地圖 277
1.1 單元格高度 278
1.2 單元格寬度 279
2 構造影響力地圖 281
2.1 配置 281
2.2 導航網格的立體像素化 282
3 繪制影響力地圖 283
4 訪問影響力 284
4.1 設置影響力 284
4.2 獲取影響力 285
5 清除影響力 285
6 傳播影響力 286
6.1 單元格慣性 287
6.2 單元格衰減 289
7 影響力地圖的圖層 290
8 更新影響力地圖 292
9 戰士的策略 293
初始化和更新策略 294
10 團隊影響力評分 295
10.1 初始化團隊影響力 295
10.2 更新團隊影響力 296
10.3 配置團隊影響力 297
11 危險區域評分 298
11.1 利用智能體事件 298
11.2 添加事件處理器 300
11.3 初始化危險影響力 300
11.4 更新危險影響力 301
11.5 配置團隊影響力 302
12 小結 303
后記 305



序: