注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網(wǎng)絡軟件與程序設計多人在線游戲架構實戰(zhàn):基于C++的分布式游戲編程

多人在線游戲架構實戰(zhàn):基于C++的分布式游戲編程

多人在線游戲架構實戰(zhàn):基于C++的分布式游戲編程

定 價:¥109.00

作 者: 彭放 著
出版社: 機械工業(yè)出版社
叢編項:
標 簽: 暫缺

ISBN: 9787111667926 出版時間: 2021-01-01 包裝: 平裝
開本: 16開 頁數(shù): 398 字數(shù):  

內容簡介

  《多人在線游戲架構實戰(zhàn):基于C++的分布式游戲編程》主要講述大型多人在線游戲開發(fā)的框架與編程實踐,以實際例子來介紹從無到有地制作網(wǎng)絡游戲框架的完整過程,讓讀者了解網(wǎng)絡游戲制作中的所有細節(jié)。全書共12章,從網(wǎng)絡游戲的底層網(wǎng)絡編程開始,逐步引導讀者學習網(wǎng)絡游戲開發(fā)的各個步驟?!抖嗳嗽诰€游戲架構實戰(zhàn):基于C++的分布式游戲編程》通過近50個真實示例、近80個流程圖,以直觀的方式闡述和還原游戲制作的全過程,涵蓋了網(wǎng)絡游戲設計的核心概念和實現(xiàn),包括游戲主循環(huán)、線程、Actor模式、定時器、對象池、組件編碼、架構層的解耦等?!抖嗳嗽诰€游戲架構實戰(zhàn):基于C++的分布式游戲編程》既可以作為大學計算機相關專業(yè)網(wǎng)絡游戲開發(fā)課程的參考書,叉可以作為網(wǎng)絡游戲行業(yè)從業(yè)人員的編程指南。

作者簡介

暫缺《多人在線游戲架構實戰(zhàn):基于C++的分布式游戲編程》作者簡介

圖書目錄

前言
第1章 網(wǎng)絡編程基礎1
1.1 單機游戲與網(wǎng)絡游戲的區(qū)別1
1.2 理解IP地址4
1.3 理解TCP/IP5
1.4 阻塞式網(wǎng)絡編程7
1.4.1 工程源代碼7
1.4.2 服務端代碼分析9
1.4.3 客戶端代碼分析13
1.4.4 系統(tǒng)差異14
1.4.5 網(wǎng)絡底層函數(shù)說明14
1.4.6 小結17
1.5 非阻塞網(wǎng)絡編程17
1.5.1 工程源代碼18
1.5.2 服務端代碼分析19
1.5.3 客戶端代碼分析21
1.5.4 小結23
1.6 總結24
第2章 網(wǎng)絡IO多路復用25
2.1 Select網(wǎng)絡模型25
2.1.1 ::select函數(shù)說明25
2.1.2 工程源代碼27
2.1.3 網(wǎng)絡基類:Network29
2.1.4 NetworkListen分析31
2.1.5 Server流程詳解35
2.1.6 NetworkConnector分析37
2.1.7 測試流程詳解39
2.1.8 ConnectObj分析41
2.1.9 Buffer分析42
2.1.10 RecvNetworkBuffer分析44
2.1.11 SendNetworkBuffer分析48
2.1.12 Packet分析50
2.1.13 小結55
2.2 Epoll網(wǎng)絡模型55
2.2.1 函數(shù)說明56
2.2.2 源代碼分析57
2.2.3 小結60
2.3 網(wǎng)絡協(xié)議:protobuf61
2.3.1 在Windows下編譯使用protobuf62
2.3.2 在Linux下編譯使用protobuf64
2.3.3 使用protobuf定義協(xié)議66
2.4 總結69
第3章 線程、進程以及Actor模型70
3.1 游戲架構概述70
3.1.1 無服務端游戲70
3.1.2 單進程CS架構71
3.1.3 多進程CS架構71
3.2 框架瓶頸72
3.2.1 滾服游戲72
3.2.2 副本游戲73
3.2.3 大圖分割空間游戲73
3.3 設計游戲框架74
3.4 游戲主循環(huán)76
3.5 理解進程和線程77
3.5.1 進程是什么77
3.5.2 線程是什么78
3.5.3 C++標準線程庫79
3.6 Actor模型82
3.7 游戲框架中的線程84
3.7.1 包裹類ThreadObject85
3.7.2 線程類Thread85
3.7.3 線程管理類ThreadMgr86
3.7.4 libserver庫與游戲邏輯88
3.8 Actor對象之間的消息處理機制92
3.8.1 消息定義原則93
3.8.2 消息隊列機制94
3.9 總結99
第4章 賬號登錄與驗證100
4.1 登錄流程圖100
4.2 制作一個簡單的驗證接口101
4.2.1 Nginx參考配置102
4.2.2 php-fpm參考配置103
4.3 導入PHP登錄接口104
4.3.1 修改PHP中的數(shù)據(jù)庫配置104
4.3.2 導入測試賬號105
4.3.3 批量生成賬號105
4.4 編碼中用到的第三方庫106
4.4.1 庫libcurl106
4.4.2 庫libjsoncpp107
4.5 賬號驗證代碼分析108
4.5.1 定義登錄協(xié)議號108
4.5.2 處理協(xié)議的Account類110
4.5.3 Account類如何放置到線程中110
4.5.4 處理驗證的HttpRequestAccount類112
4.6 結果測試115
4.7 消息過濾機制116
4.8 測試機器人118
4.8.1 狀態(tài)機119
4.8.2 狀態(tài)機基類120
4.8.3 狀態(tài)機管理類120
4.8.4 Robot類中的狀態(tài)機122
4.9 批量登錄測試125
4.10 總結126
第5章 性能優(yōu)化與對象池127
5.1 Visual Studio性能工具127
5.2 內存中的數(shù)據(jù)結構131
5.2.1 交換型數(shù)據(jù)結構131
5.2.2 刷新型數(shù)據(jù)結構135
5.3 gprof137
5.3.1 gprof調用堆棧圖138
5.3.2 讓進程安全退出139
5.3.3 用gprof工具查看框架141
5.4 valgrind145
5.5 對象池150
5.5.1 對象池代碼分析150
5.5.2 使用cmd命令查看對象池154
5.6 總結155
第6章 搭建ECS框架156
6.1 一個簡單的ECS工程156
6.1.1 組件類Component157
6.1.2 實體類Entity158
6.1.3 系統(tǒng)類System158
6.1.4 管理類EntitySystem159
6.1.5 測試161
6.2 基于ECS框架的libserver162
6.2.1 通過字符串動態(tài)創(chuàng)建類163
6.2.2 提供多參變量來創(chuàng)建實例168
6.2.3 EntitySystem的工作原理171
6.3 基于ECS框架的login和robots工程177
6.3.1 Account類177
6.3.2 動態(tài)創(chuàng)建組件或實例178
6.3.3 ECS框架下的網(wǎng)絡通信185
6.3.4 執(zhí)行效率188
6.4 YAML文件189
6.4.1 YAML編譯安裝189
6.4.2 讀取YAML配置文件191
6.4.3 合并線程195
6.5 log4cplus日志197
6.5.1 log4cplus的編譯安裝197
6.5.2 配置文件198
6.5.3

本目錄推薦

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