3dwoo大學簡體電腦書店
游戲開發實戰寶典
( 簡體 字)
作者:媛之家類別:1. -> 遊戲 -> 遊戲程式
出版社:機械工業出版社游戲開發實戰寶典 3dWoo書號: 54980
詢問書籍請說出此書號!
有庫存
NT售價: 495
出版日:8/1/2021
頁數:252
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 字 )
ISBN:9787111685210 加入購物車加到我的最愛 (請先登入會員)
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證, 繁體書的下載亦請直接連絡出版社)
第1部分 梗概/1
第1章 直擊問題關鍵及本書概要/2
1.1 軟件開發的關鍵/2
1.2 游戲開發從業者的層次和挑戰/3
1.3 本書的目標/3
1.4 本章小結/4

第2部分 Egret編程指南/5
第2章 Egret Engine編程基礎/6
2.1 Egret引擎簡介/6
2.2 引擎的安裝、配置與發布/6
2.2.1 安裝Egret啟動器/6
2.2.2 啟動Egret啟動器并安裝引擎和編輯器/8
2.2.3 創建默認項目/10
2.2.4 通過默認項目講解項目配置/14
2.2.5 第三方擴展庫/16
2.2.6 發布項目/18
2.3 顯示對象和顯示容器/19
2.3.1 舞臺/19
2.3.2 坐標系統以及基本屬性/20
2.3.3 添加與刪除顯示對象/21
2.3.4 深度管理/25
2.4 矢量繪圖/26
2.4.1 繪制圓形/26
2.4.2 繪制直線/27
2.4.3 繪制曲線/28
2.4.4 繪制圓弧/29
2.5 遮罩/31
2.6 碰撞檢測/31
2.6.1 邊框級別的碰撞檢測/31
2.6.2 像素級別的碰撞檢測/32
2.7 文本/33
2.7.1 三種文本類型/33
2.7.2 文本樣式/34
2.8 事件機制/41
2.8.1 Egret事件處理機制/41
2.8.2 Egret的觸摸事件/43
2.9 網絡/44
2.9.1 發送HTTP請求/44
2.9.2 發送帶參數的請求/45
2.10 本章小結/45
第3章 Egret Engine高級開發/46
3.1 位圖紋理/46
3.1.1 基本知識/46
3.1.2 九宮格/48
3.1.3 紋理的填充方式/49
3.1.4 紋理集/50
3.2 顏色效果/51
3.2.1 混合模式/51
3.2.2 濾鏡/53
3.3 時間控制/58
3.3.1 計時器/58
3.3.2 心跳/59
3.3.3 幀事件/60
3.4 多媒體/61
3.4.1 音頻/61
3.4.2 視頻/61
3.5 屏幕適配/62
3.5.1 縮放模式/62
3.5.2 旋轉模式/67
3.6 調試/70
3.7 本章小結/71
第4章 Egret擴展庫編程指南/72
4.1 RES資源加載/72
4.1.1 資源加載配置文件/72
4.1.2 加載資源配置文件及資源組/73
4.2 EUI庫/74
4.2.1 基本組件/74
4.2.2 組件容器/82
4.2.3 皮膚/88
4.3 Tween緩動庫/89
4.3.1 基本功能/89
4.3.2 緩動對象的其他方法/90
4.4 WebSocket庫/91
4.5 P2物理系統庫/93
4.6 本章小結/96
第5章 sparrow-egret游戲前端框架/97
5.1 MVC架構模式/97
5.1.1 PureMVC簡明教程/97
5.1.2 PureMVC在sparrow-egret里的應用/100
5.2 sparrow-egret功能介紹/101
5.2.1 程序入口/101
5.2.2 監聽資源的加載/102
5.2.3 場景堆棧/104
5.2.4 代理服務器/106
5.2.5 請求、響應、推送以及處理響應和推送/107
5.3 本章小結/110

第3部分 Netty編程指南/111
第6章 Netty快速入門/112
6.1 搭建開發環境/112
6.1.1 安裝JDK/112
6.1.2 安裝IDE/112
6.1.3 安裝Gradle/112
6.2 第一個Netty應用程序/113
6.2.1 創建EchoServer/113
6.2.2 創建EchoClient/120
6.3 Channel/122
6.4 ByteBuf/124
6.4.1 ByteBuf的模式/124
6.4.2 讀寫操作/125
6.4.3 生成ByteBuf實例/127
6.5 ChannelHandler和ChannelPipeline/128
6.5.1 ChannelHandler/128
6.5.2 ChannelPipeline/129
6.5.3 ChannelHandlerContext/130
6.5.4 異常處理/131
6.6 編解碼器/131
6.6.1 解碼器/131
6.6.2 編碼器/132
6.7 WebSocket幀處理器/133
6.7.1 實現HTTP連接/133
6.7.2 處理WebSocket幀/134
6.7.3 定義ChannelInitializer/135
6.8 SSL處理器/136
6.9 本章小結/136
第7章 JCommon和nest編程指南/137
7.1 PPA編程模型/137
7.2 JCommon和nest的組件概述/138
7.2.1 Server服務器類/138
7.2.2 Lobby大廳的基類/139
7.2.3 NestRoot根類/141
7.2.4 BaseConfiguration配置的基類/142
7.2.5 ProxyPlayerEnteringRoom代理玩家的基類/142
7.2.6 Request請求的基類/143
7.2.7 Response響應的基類/144
7.2.8 Push推送的基類/145
7.2.9 Action動作的基類/145
7.2.10 Room房間的基類/146
7.2.11 Table桌面的基類/146
7.2.12 ClassScanner類掃描器/149
7.3 本章小結/150
第8章 前端后臺實戰項目—游戲聊天室/151
8.1 游戲聊天室功能/151
8.2 前端程序的實現/151
8.2.1 引入第三方庫/151
8.2.2 請求、響應以及推送協議的設計/152
8.2.3 場景、推送處理器以及對話框的設計/153
8.2.4 實現資源加載監聽器/156
8.2.5 實現入口類—Main/157
8.2.6 小結/158
8.3 后臺程序的實現/158
8.3.1 修改gradle構建腳本/158
8.3.2 代理玩家的實現/158
8.3.3 大廳的實現/159
8.3.4 請求、響應以及推送/159
8.3.5 動作的實現/159
8.3.6 配置類的實現/159
8.3.7 程序啟動類/160
8.4 連接前端與后臺/160
8.4.1 啟動后臺程序/160
8.4.2 啟動前端程序/161
8.5 本章小結/162

第4部分 綜合實戰/163
第9章 實戰項目—貪吃蛇/164
9.1 貪吃蛇項目的設計/164
9.2 代碼解析/165
9.2.1 GameScene游戲場景類/165
9.2.2 Snake蛇類/170
9.2.3 SnakeHead蛇頭類/174
9.2.4 SnakeBody蛇身類/175
9.2.5 Driver控制器類/175
9.2.6 Direction方向類/177
9.3 本章小結/178
第10章 綜合實戰項目—國際象棋/179
10.1 前端與后臺的輔助工具—TreeBranch/179
10.1.1 安裝protobuf命令行程序和庫/179
10.1.2 編寫協議配置文件/180
10.1.3 在Python執行環境下安裝TreeBranch/182
10.1.4 用TreeBranch編寫前端和后臺項目的代碼自動生成
腳本/182
10.1.5 小結/186
10.2 sparrow-egret-games-chess項目詳解/186
10.2.1 SquareComponent棋盤格組件/187
10.2.2 PieceComponent棋子組件/188
10.2.3 ChessBoardViewComponent棋盤組件/188
10.2.4 ChessBoardState棋盤狀態/191
10.2.5 通知處理器/192
10.2.6 對話框/194
10.3 nest-games-chess項目詳解/195
10.3.1 ChessRoom象棋房間/196
10.3.2 ChessTable象棋桌面/196
10.3.3 ChessBoard象棋棋盤/197
10.3.4 Piece棋子/198
10.3.5 QueryingLegalMovesAction查詢合法走法的動作/200
10.3.6 QueryResult合法走法查詢的結果/200
10.3.7 QueryStrategy查詢策略與QueryStrategyCondition查詢
策略的條件/201
10.3.8 MovingPieceAction移動棋子的動作/202
10.3.9 ExpressionGenerator表達式生成器與ExpressionGenerator
Condition表達式生成器的條件/202
10.3.10 ManualExpressionExecutor棋譜表達式執行器/204
10.3.11 ManualExpression棋譜表達式/205
10.3.12 BoutExpression回合表達式/205
10.3.13 StepExpression步表達式與StepExpressionCondition
步表達式的條件/205
10.3.14 Command玩家的行動命令/207
10.3.15 ProxyPlayerPlayingChess國際象棋游戲的代理玩家/208
10.3.16 ExchangingPawnTouchingDownForAction達陣兌換棋子
的動作/208
10.3.17 UndoAction悔棋動作/208
10.4 本章小結/209
第11章 游戲開發模塊整合/210
11.1 整合前端/210
11.1.1 LoadingScene加載場景/210
11.1.2 LobbyScene大廳場景/213
11.1.3 ChessTableScene棋盤桌面游戲場景/218
11.2 整合后臺/225
11.2.1 NestConfiguration游戲后臺配置/225
11.2.2 AaronsChessLobby游戲的大廳/226
11.2.3 ProxyPlayer游戲的代理玩家/226
11.2.4 Main游戲的啟動主類/226
11.3 連接前端與后臺/227
11.4 本章小結/230
第12章 設計原則與模式/231
12.1 依賴倒置原則/232
12.2 開放封閉原則與去除switch語句和if語句的職責鏈
模式/232
12.3 工廠模式和使用接口和抽象類編程原則/235
12.4 命令模式/236
12.5 解釋器模式/236
12.6 狀態模式/237
12.7 本章小結/237
附錄 本書附帶的資源/238
本書講解了游戲開發中用到的相關技術,主要包括前端和后端兩部分內容,并結合前端與后端技術給出了幾個實戰項目的設計及實現方法。

本書分4部分,共12章。第壹部分(第1章)為梗概,介紹了軟件開發的關鍵、游戲開發從業者的層次和挑戰以及本書的目標。

第 2 部分(第2~5章)先介紹了Egret Engine編程技術,包括編程基礎、高級開發和擴展庫編程。隨后講解了sparrow-egret游戲前端框架的編程技術,包括MVC架構模式以及sparrow-egret游戲前端框架的主要功能。

第 3 部分(第6~8章)先介紹了Netty的主要功能,然后給出了作者開發的基于JCommon和nest的游戲組件的使用方法。*后給出了一個基于前端和后臺功能相結合的實戰項目—游戲聊天室。

第 4 部分(第9~12章)則比較詳細地講解了作者基于先前框架所開發的游戲實戰項目—貪吃蛇和網絡對戰國際象棋。同時,介紹了一款可以和先前框架配合使用的自動生成代碼的腳本工具—TreeBranch。在本書的*后兩章,還講解了功能框架以及實戰項目里所涉及的游戲開發模塊整合以及設計原則與模式,并展示了筆者的設計思路。

本書實例部分及章節源碼解讀難點部分均配有二維碼講解視頻,方便讀者自學時觀看使用。

本書適用于游戲編程初、中級開發人員,游戲開發高手也可以通過閱讀本書擴展自己的設計思路。
pagetop