網絡多人遊戲架構與編程
作 者: (美)格雷澤(Joshua Glazer),(美)馬達夫(Sanjay Madhav) 著;王曉慧,張國鑫 譯 著作
定 價: 109
出?版?社: 人民郵電出版社
出版日期: 2017年10月01日
頁 數: 344
裝 幀: 平裝
ISBN: 9787115457790
●章網絡遊戲概述1
1.1多人遊戲的簡要歷程1
1.1.1本地多人遊戲1
1.1.2早期網絡多人遊戲1
1.1.3多用戶網絡遊戲2
1.1.4局域網遊戲3
1.1.5在線遊戲3
1.1.6大規模多人在線遊戲4
1.1.7移動網絡遊戲4
1.2星際圍攻:部落5
1.2.1平臺數據包模塊7
1.2.2連接管理器7
1.2.3流管理器8
1.2.4事件管理器8
1.2.5ghost管理器8
1.2.6移動管理器9
1.2.7其他繫統9
1.3帝國時代10
1.3.1輪班計時器11
1.3.2同步12
1.4總結13
1.5復習題13
1.6延伸的閱讀資料14
第2章互聯網15
2.1起源:分組交換15
2.2TCP/IP模型17
2.3物理層18
2.4鏈路層18
2.5網絡層22
2.5.1IPv423
2.5.2IPv636
2.6傳輸層37
2.6.1UDP38
2.6.2TCP39
2.7應用層48
2.7.1DHCP49
2.7.2DNS49
2.8NAT50
2.9總結56
2.10復習題57
2.11延伸的閱讀資料58
第3章伯克利套接字61
3.1創建Socket61
3.2API操作繫統差異63
3.3socket地址66
3.3.1類型安全68
3.3.2用字符串初始化sockaddr70
3.3.3綁定socket73
3.4UDP Socket74
3.5TCP Socket79
3.5.1通過連接的socket實現發送和接收80
3.5.2類型安全的TCP Socket82
3.6阻塞和非阻塞I/O84
3.6.1多線程85
3.6.2非阻塞I/O86
3.6.3Select88
3.7其他Socket選項92
3.8總結94
3.9復習題94
3.10延伸的閱讀資料95
第4章對像序列化97
4.1序列化的需求97
4.2流100
4.2.1內存流101
4.2.2字節存儲次序的兼容性105
4.2.3比特流109
4.3引用數據115
4.3.1內聯或嵌入116
4.3.2鏈接117
4.4壓縮119
4.4.1稀疏數組壓縮120
4.4.2熵編碼121
4.4.3定點123
4.4.4幾何壓縮125
4.5可維護性127
4.5.1抽像序列化方向127
4.5.2數據驅動的序列化129
4.6總結132
4.7復習題133
4.8延伸的閱讀資料134
第5章對像復制135
5.1世界狀態135
5.2復制對像135
5.2.1對像創建注冊表139
5.2.2一個數據包中的多個對像143
5.3樸素的世界狀態復制方法144
5.4世界狀態中的變化148
5.5RPC作為序列化對像155
5.6自定義解決方案158
5.7總結159
5.8復習題160
5.9延伸的閱讀資料160
第6章網絡拓撲和遊戲案例161
6.1網絡拓撲161
6.1.1客戶端-服務器161
6.1.2對等網絡163
6.2客戶端-服務器的實現165
6.2.1服務器和客戶端的代碼分離166
6.2.2網絡管理器和歡迎新客戶端167
6.2.3輸入共享和客戶端代理172
6.3對等網絡的實現177
6.3.1歡迎新對等體和開始遊戲179
6.3.2命令共享和鎖步回合制181
6.3.3保持同步187
6.4總結192
6.5復習題192
6.6延伸的閱讀資料193
第7章延遲、抖動和可靠性195
7.1延遲195
7.1.1非網絡延遲195
7.1.2網絡延遲198
7.2抖動199
7.3數據包丟失201
7.4可靠性:TCP還是UDP202
7.5數據包傳遞通知204
7.5.1標記傳出的數據包205
7.5.2接收數據包並發送確認206
7.5.3接收確認並傳遞狀態211
7.6對像復制可靠性216
7.7模擬真實世界的條件224
7.8總結226
7.9復習題227
7.10延伸的閱讀資料228
第8章改進的延遲處理229
8.1沉默的客戶終端229
8.2客戶端插值231
8.3客戶端預測233
8.3.1航位推測法236
8.3.2客戶端移動預測和重放238
8.3.3通過技巧和優化隱藏延遲243
8.4服務器端回退244
8.5總結245
8.6復習題246
8.7延伸的閱讀資料246
第9章可擴展性247
9.1對像範圍和相關性247
9.1.1靜態區域248
9.1.2使用視錐249
9.1.3其他可見性技術250
9.1.4不可見時的相關性252
9.2服務器分區253
9.3實例化255
9.4優先級和頻率255
9.5總結256
9.6復習題257
9.7延伸的閱讀資料257
0章安全性259
10.1數據包嗅探259
10.1.1中間人攻擊259
10.1.2在主機上的數據包嗅探262
10.2輸入驗證263
10.3軟件作弊檢測264
10.3.1維爾福反作弊繫統265
10.3.2典獄長反作弊繫統266
10.4保護服務器267
10.4.1分布式拒絕服務攻擊267
10.4.2壞數據267
10.4.3時序攻擊268
10.4.4入侵269
10.5總結270
10.6復習題271
10.7延伸的閱讀資料271
1章真實世界的引擎273
11.1虛幻引擎4273
11.1.1套接字和基本的網絡體繫273
11.1.2遊戲對像和拓撲274
11.1.3Actor復制275
11.1.4遠程過程調用276
11.2Unity277
11.2.1傳輸層API278
11.2.2遊戲對像和拓撲278
11.2.3生成對像和復制279
11.2.4遠程過程調用279
11.2.5比賽安排280
11.3總結280
11.4復習題281
11.5延伸的閱讀資料281
2章玩家服務283
12.1選擇一種玩家服務283
12.2基本設置283
12.2.1初始化、運行和關閉285
12.2.2用戶ID和名稱286
12.3遊戲大廳和比賽安排287
12.4網絡291
12.5玩家統計294
12.6玩家成就299
12.7排行榜300
12.8其他服務302
12.9總結303
12.10復習題303
12.11延伸的閱讀資料304
3章雲托管專用服務器305
13.1托管或不托管305
13.2行業工具306
13.2.1REST307
13.2.2JSON307
13.2.3Node.JS308
13.3概述和術語308
13.3.1服務器遊戲實例309
13.3.2遊戲服務器進程309
13.3.3遊戲服務器310
13.3.4硬件311
13.4本地服務器進程管理器311
13.5虛擬機管理器318
13.6總結327
13.7復習題328
13.8延伸的閱讀資料328
附錄A現代C++基礎329
內容簡介
網絡多人遊戲已經成為遊戲產業的重要組成部分,本書是一本深入探討關於網絡多人遊戲編程的圖書。
全書分為13章,從網絡遊戲的基本概念、互聯網、伯克利套接字、對像序列化、對像復制、網絡拓撲和遊戲案例、延遲、抖動和可靠性、改進的延遲處理、可擴展性、安全性、真實世界的引擎、玩家服務、雲托管專用服務器等方面深入介紹了網絡多人遊戲開發的知識,既全面又詳盡地剖析了眾多核心概念。
本書的多數示例基於C++編寫,適合對C++有一定了解的讀者閱讀。本書既可以作為大學計算機相關專業的指導教程,也可以作為普通讀者學習網絡遊戲編程的參考指南。
(美)格雷澤(Joshua Glazer),(美)馬達夫(Sanjay Madhav) 著;王曉慧,張國鑫 譯 著作
Joshua Glazer是Naked Sky Entertainment的CTO和創始人之一。Naked Sky Entertainment是一個遊戲開發工作室,開發了很多遊戲,如RoboBlitz、MicroBot、Twister Mania和手機端遊戲Max Axe、Scrap Force。他為許多項目提供咨詢,包括Epic Games公司的《虛幻引擎》(Unreal Engine)、Riot Games公司的《英雄聯盟》(League of Legends)、THQ公司《毀滅全人類》(Destroy All Humans),還包括藝電(Electronic Arts)、Midway、微......
"