《Cocos2d-x 3.x實戰:卡牌手遊開發指南》是2016年電子工業出版社出版的圖書,作者是朱先忠、高嗣慧。
基本介紹
- 中文名:Cocos2d-x 3.x實戰:卡牌手遊開發指南
- 作者:朱先忠、高嗣慧
- 出版時間:2016年
- 出版社: 電子工業出版社
- 頁數:500 頁
- ISBN:9787121292729
- 定價:79 元
- 開本:16 開
內容簡介,圖書目錄,作者簡介,
內容簡介
本書使用Cocos2d-x引擎(3.9版本)技術,帶領讀者從零開始逐步進行“拇指接龍”手遊(手機遊戲)的開發。此遊戲基於Windows平台知名撲克牌遊戲“空當接龍”開發而成,其中融入了世界聞名童話故事《拇指姑娘》一書的主要情節。讀者可以通過學習這個遊戲的開發過程,全面掌握Cocos2d-x C++遊戲跨平台實戰開發的主要方法和技巧。本書遵循理論和實踐相結合的編寫原則,並儘量按照軟體工程指導思想,循序漸進地介紹“拇指接龍”遊戲項目的開發過程。通過一款完整的跨平台(Android & iOS)實戰型手遊的開發學習,讀者能夠從中領悟Cocos2d-x引擎的神奇魅力,從而更加深入地理解和掌握該引擎。本書共分為3篇,17章。在第1篇中,我們簡要介紹進行Cocos2d-x編程所必需的基礎知識。在第2篇中,我們正式轉入“拇指接龍”遊戲的實戰開發,在這一部分知識的編寫中,我們儘量遵循軟體工程開發思路展開介紹,適當穿插Cocos2d-x實戰技巧的講解。在第3篇中,我們轉而關注基於Cocos2d-x實戰手遊跨平台開發、移植和第三方市場SDK嵌入乃至弱聯網相關技術的探討。通過這3篇內容的漸進性學習,力圖使讀者以最快的速度掌握基於Cocos2d-x引擎進行跨平台手遊開發的關鍵技術。本書適合具有一定C/C++開發經驗的著眼於Cocos2d-x引擎的遊戲開發初學者、遊戲設計人員閱讀,也適合作為高等院校和培訓學校相關專業師生的教學參考用書。
圖書目錄
目錄
基礎篇
第章Cocos2d-x開發環境搭建
11選擇Cocos2d-x 3x的理由
12C++ 11主要新特性
121nullptr
122auto
123lambda函式
124std::function類型
125C++11多執行緒std::thread
13Windows 7平台開發環境搭建
131Win32版本開發環境搭建
132安裝Cocos Studio 233
133Android版本開發環境搭建
14Mac平台開發環境搭建
141安裝Cocos2d-x 39開發環境與創建示例工程
142運行官方示例工程cpp-tests
143安裝Mac版本的Cocos Studio
144Android開發環境搭建
15小結
第章Photoshop與Flash——獨立手遊開發者的必修課
21Photoshop CS 6鼠繪技巧與示例
22與手遊UI製作密切相關的Photoshop技術
221GIF幀動畫製作
222由GIF動畫檔案導出一組PNG圖像檔案
223GIF時間軸動畫
23Flash CS 6鼠繪技巧與示例
24與手遊UI製作密切相關的Flash技術
241生成Sprite表單
242儘量不把舞台元件實例集合導出到精靈表單
243導出庫元件集到精靈表單時的注意事項
244Flash動畫簡介
245Flash+DragonBone聯合製作heart_ani動畫
25小結
第章手遊輔助開發利器——TexturePacker和ParticleEditor
31圖片切片工具TexturePacker
311為什麼要用TexturePacker
312TexturePacker的基本用法
313Retina支持——AutoSD
314TextureSettings面板其他參數說明
315空當接龍遊戲使用的碎圖打包技術
316TexturePacker與XCode集成簡介
32Windows平台免費開源的粒子編輯器ParticleEditor
321粒子系統屬性講解
322官方示例工程cpp-tests中粒子系統使用小結
323讓粒子系統沿著指定軌跡運動
324SplashScreen場景粒子系統套用回顧
33小結
實踐篇
第章拇指接龍手遊整體策劃與設計
41拇指接龍遊戲創意構思及快照欣賞
411遊戲構思
412傳統拇指接龍遊戲算法(玩法)回顧
413傳統空當接龍遊戲特點分析
414目前市場同類遊戲簡單分析
415舊瓶裝新釀的可能性
416快照預覽
42拇指接龍遊戲整體數據策劃與存儲方案
421數據策劃與總體算法分析
422數據存儲方案分析
43模組及功能圖設計
431系統總體模組及關係圖
432遊戲主場景MainScene流程圖
44小結
第章Splash場景設計與多解析度螢幕適配方案
51Splash UI設計
511設計場景圖層檔案
512設計場景中的動畫檔案
52後台代碼分析
521SplashScene頭檔案定義
522SplashScene實現檔案分析
53多解析度適配方案
531單例類SmartRes頭檔案定義
532單例類SmartRes實現代碼
54小結
第章拇指接龍遊戲導航場景設計
61使用場景編輯器構建場景FirstScene
611用Cocos Studio 233創建幀動畫
612用Cocos Studio 233創建骨骼動畫
613Cocos Studio 233導出資源套用於編程
62遊戲導航場景編碼設計
621遊戲導航場景功能分析
622遊戲導航場景編碼設計
63全局變數及SQLite開發技術分析
631系統中的全局變數
632兩種本地檔案存儲方案——UserDefault和SQLite資料庫
64小結
第章遊戲幫助系統設計
71FaqScene場景設計
711FaqScene場景UI設計
712FaqScene場景編碼分析
713多語言內容顯示方案
72TutorialScene場景設計
721概述
722TutorialScene場景UI設計
723TutorialScene場景頭檔案設計
724TutorialScene場景動畫設計
725TutorialScene場景的雙擊式移動撲克牌編程
726TutorialScene場景中拖放式移動撲克牌
727撲克牌自動飛動的硬編碼方式
728無須撲克牌匹配判定與恢復棧創建
73小結
第章拇指接龍遊戲關卡及回合設計
81大關卡設計的模擬憤怒的小鳥界面
811大關卡選擇場景UI設計
812圖層內置動畫與ImageView_Title控制項
813關於藝術數字控制項TextAtlas
814大關卡選擇編碼的頭檔案設計
815大關卡選擇編碼的實現檔案編程
82小關卡設計的模擬“RuneMasterPuzzle”界面
821小關卡選擇場景UI設計
822小關卡選擇設計的編碼實現
83遊戲回合選擇設計
831UI設計
832後台編碼
84小結
第章創建通用場景切換類
91LoadingSceneh定義
92LoadingScene成員函式分析
93小結
第章拇指接龍遊戲道具商店設計
101了解遊戲道具
1011道具定義
1012遊戲道具獲取方式
1013遊戲道具資料庫設計
102拇指接龍遊戲道具數據策劃
1021操作撤銷道具——undo
1022列重洗牌道具——fan
1023列移動道具——worm
1024wildcard道具——wand
1025Joker道具——net
1026道具——owl
103模擬“進擊的小怪物”設計道具商店
1031道具商店主界面設計
1032道具購買場景設計
1033誘導玩家安裝套用賺積分場景設計
104遊戲道具商店編碼實現
1041由遊戲導航場景切換到道具商店系統
1042道具商店系統StoreSceneh分析
1043道具數值定義
1044載入場景資源檔案
1045觸發道具購買行為編程
1046進行購買道具活動相關編程
1047積分牆相關編程
105小結
第章拇指接龍遊戲主場景開發
111遊戲主場景開發的功能設計
1111道具子系統
1112發牌子系統
1113玩牌子系統
1114獎勵子系統
112遊戲主場景開發的界面設計
1121遊戲主場景界面設計
1122主場景工具列(即遊戲場景HUD)設計
1123獎勵信息提示圖層設計
1124道具使用說明圖層設計
1125遊戲暫停圖層設計
1126遊戲繼續操作圖層設計
1127遊戲回合結束小結圖層設計
113遊戲主場景開發的數據結構設計
1131創建撲克牌類——Card
1132定義雙擊或拖放撲克牌的有關變數
1133定義用於存儲撲克牌的數據結構
114遊戲主場景開發的總體流程設計
115Undo道具開發與STL函式
1151Undo道具功能回顧
1152Undo道具有關數據結構與操作
1153使用與定義stackTidying函式
1154使用Undo道具編程
116Fan和Worm道具編程
1161Fan道具
1162Worm道具
117Wand、Net和Owl道具編程
1171Wand道具
1172Net道具
1173Owl道具
118獎勵機制編程
1181拇指接龍遊戲獎勵子系統功能模組
1182獎勵定義
1183獎勵相關編程分析
1184獎勵系統監控與執行
119撲克牌拖放與單擊事件編程
1191onTouchBegan函式總體執行流程示意圖
1192螢幕單擊事件編程
1193onTouchMoved函式總體執行流程示意圖
1194onTouchEnded函式總體執行流程示意圖
1110遊戲進程監控編程
11101遊戲系統時間監控
11102獎品監控
11103遊戲全程監控機制
11104缺憾
1111遊戲暫停編程
11111功能模組圖
11112暫停模組編程
1112雙擊式移動撲克牌編程
1113拖放單張撲克牌編程
1114拖放多張撲克牌編程
11141onTouchBegan函式主要功能總結
11142onTouchMoved函式主要功能總結
11143onTouchEnded函式內系列撲克牌執行流程示意圖
1115小結
高級擴展篇
第章iOS移植的Objective-C編程知識必備
121必須了解的Objective-C 20編程知識
1211Objective-C語言特性的Block
1212委託和協定
1213Objective-C=編譯器+運行時
122iOS應用程式資料夾架構
1221檔案mainm的作用
1222UIApplicationMain函式
1223應用程式委託
1224視圖控制器
1225Infoplist檔案
1226圖示和默認圖像
1227沙盒機制
1228MVC編程規範
123iOS應用程式生命周期分析
1231應用程式的狀態
1232各個程式運行狀態時代理的回調
1233載入應用程式進入前台
1234載入應用程式進入後台
1235基於警告式回響中斷
1236進入後台運行
1237返回前台運行
1238程式終止
1239The Main Run Loop主運行循環
124iOS應用程式MVC架構
1241MVC框架結構
1242深入理解UIViewController類
125Cocos2d-x框架下iOS版本的AppController
126Objective-C反射技術回顧
1261獲取Class
1262確定繼承關係
1263方法的動態調用
127C++與Objective-C混合編程
1271Objective-C和C++混編支持
1272結構成員與類成員
1273關於命名空間
1274關於C++模板
1275關於異常處理
128EasyNDK的iOS版深入剖析
1281實現原理圖展示
1282EasyNDK-for-cocos2dx-master下載Demo套用全面剖析
1283總結EasyNDK的使用套路
129參考資料
第章Android移植的Java&NDK編程知識必備
131Android應用程式體系架構
132Android應用程式基本組件
1321Activity與View
1322Service與Activity
1323Intent類和IntentFilter類
1324Android應用程式生命周期
133了解Android套用UI設計
1331豐富的可視化控制項
1332關聯後台代碼與前台UI
134Android事件處理機制
1341組件間訊息傳遞——Intent
1342執行緒間訊息傳遞——Message
135EasyNDK的Android版深入剖析
1351實現原理圖
1352EasyNDK-for-cocos2dx-master下載Demo套用全面分析
1353Classes資料夾下子資料夾jansson和NDKHelper
1354EasyNDK\projandroid\src\com\easyndk資料夾下內容解析
1355Classes下檔案HelloWorldScenecpp分析
1356總結EasyNDK的使用套路
136小結
第章拇指接龍集成社交分享ShareSDK for iOS
141下載ShareSDK iOS版本
142下載ShareSDK iOS版本的Cocos2d-x外掛程式
143添加必需的依賴庫
144Cocos2d-x外掛程式部分有關編程
1441選擇需要的平台SDK和Cocos2d-x環境
1442修改AppDelegatecpp檔案——初始化
145ShareSDK接口的調用
146截圖欣賞
147小結
第章拇指接龍集成社交分享ShareSDK for Android
151通用部分集成步驟
1511下載ShareSDK For COCOS2D-X
1512初始化ShareSDK並配置社交平台信息
1513分享內容、用戶授權及獲取用戶資料
152Android部分集成步驟
153其他說明
1531ShareSDKxml配置檔案說明
1532java層代碼解釋
154效果圖展示
155小結
第章拇指接龍遊戲集成有米積分牆的Android版
161積分牆概述
1611計費方式
1612展現方式
162有米積分牆的基本配置
1621導入SDK
1622許可權配置
1623廣告組件配置
1624初始化
1625混淆配置
1626打包
1627設定渠道號(推薦)
163集成有米積分牆代碼
1631初始化
1632展示全螢幕積分牆
1633展示懸浮半屏積分牆
1634積分管理接口
164積分牆高級功能
1641積分餘額變動通知
1642客戶端SDK獲取訂單信息
1643伺服器獲取訂單信息
1644驗證積分牆配置是否正確
1645配置積分牆SDK的積分到賬提醒
165使用EasyNDK簡化有米積分牆集成
1651C++端調用Java端
1652Java端調用C++端
1653下載並解壓EasyNDK for Cocos2d-x
1654Classes資料夾下的複製
1655projandroid中src資料夾下的複製
1656ThumbelinaCelljava代碼修改
1657修改Androidmk檔案
1658修改StoreScenecpp檔案
166軟體截圖欣賞
1661提示玩家積分交換
1662積分牆界面
167遊戲中積分牆相關數據算法
1671集成有米積分牆時的典型問題
1672有米廣告過濾列表中顯示的數據形式
1673由道具價格推算積分牆顯示數據
1674我們的算法推算
168小結
第章弱聯網手遊開發的雲存儲技術
171Firebase(國外)
172AppWarp(國外)
173野狗(國內)
174LeanCloud(國內)
1741數據存儲服務
1742訊息推送服務
1743實時通信服務
1744iOS/OSX數據存儲開發
175關於Pomelo和Firefly等
176小結
作者簡介
1992年畢業於山東師範大學計算機系,本科學歷,畢業後一直工作于山東畜牧獸醫職業學院,擔任計算機基礎課教學,後轉至經貿系電子商務教研室擔任《電子商務概論》、《電子商務資料庫技術》及《網路行銷》等專業課教學。業餘時間,先後主持過《運動會管理系統》、《計算機一級考試系統》等軟體開發,並撰寫過《開發者突擊:精通ASP.NET AJAX網路程式開發》(電子工業出版社,2008-07)和《ASP.NET3.5前沿技術與實戰案例精粹》(中國鐵道出版社,2010年06月01日)兩部專業圖書,同時在國內外諸多IT網站發表各類軟體開發技術文章上百篇。近五年時間,出於業務需要和個人興趣,集中鑽研三大類手機(Android,iPhone和Windows Phone)開發伺服器端及客戶端相關技術。